次のコードを実行すると、「-2」がトレースされ、その理由を理解しようとして頭が混乱しています。
var bmd:BitmapData = new BitmapData(1,1,true,0xFFFFFFFF);
bmd.setPixel32(0,0, 0x32FF6B45);
trace(0x32FF6B45-bmd.getPixel32(0,0));
私が知る限り、0 をトレースする必要があります。0x32FF6B45 は、座標 0,0 のピクセルに最初に割り当てられます。その値は bmd.getPixel32(0,0) で返される必要があり、0x32FF6B45 から減算すると、結果は 0 になるはずです。どうして -2 になるのでしょうか?
編集:
値を個別にトレースしましたが、0x32FF6B45 をトレースすると 855599941 になり、bmd.getPixel32(0,0) をトレースすると 855599943 になるため、上記のトレースの操作が -2 になるのは理にかなっています。一体、それらの値は異なりますか?bmd.getPixel32(0,0) も 855599941 をトレースしませんか?