オブジェクトをスケーリングして元の位置に保つためにネットで見つけたこの関数があります。
function scaleAroundPoint(target:DisplayObject, point:Point, scaleFactor:Number):void
{
var m:Matrix = target.transform.matrix;
m.translate( -point.x, -point.y );
m.scale( scaleFactor, scaleFactor);
m.translate( point.x, point.y );
target.transform.matrix = m;
}
最初に次のように呼び出すと:
scaleArountPoint(obj, p, 0.9);
オブジェクトは縮小しますが、元のサイズに戻したい場合、明らかにこれは機能しません。
scaleArountPoint(obj, p, 1);
1 はオブジェクトの現在の縮尺率であるためです。
では、元の比率に戻すにはどうすればよいでしょうか。ありがとう