から継承されたクラスを作成し、Sprite
その中心から回転するための次の関数を追加しました。
private function rotate(angle:Number):void
{
trace(width);
var tmpWidth:Number = width;
var rect:Rectangle = getBounds(parent);
var matrix:Matrix = transform.matrix;
matrix.translate(-(rect.left + rect.width/2), -(rect.top + rect.height/2) );
matrix.rotate((angle/180)*Math.PI);
matrix.translate((rect.left + rect.width/2), (rect.top + rect.height/2) );
transform.matrix = matrix;
trace(width);
}
私の問題は、回転後にオブジェクトのサイズが変化することです。たとえば、変換前の幅の値は、変換後の幅よりも小さくなります。私は何を間違っていますか?