Actionscript 3 AS3电影剪辑中心旋转和左上角X、Y点

Actionscript 3 AS3电影剪辑中心旋转和左上角X、Y点,actionscript-3,flash,actionscript,Actionscript 3,Flash,Actionscript,我正在创建一个flash图像裁剪器。我可以调整和移动包含我的图像的movieclip。这个电影唇也可以旋转 我遇到的问题是,为了正确地裁剪图像,我需要图像处于0度的点处的原始X,Y坐标。这就是我说的可移动的电影唇 我是否可以获取旋转度和当前左上角的X,Y,并获得0度的原点 感谢您的帮助好吧,您可以让DisplayObject帮您完成工作: var tempRotation:Number = displayObject.rotation; displayObject.rotation = 0; v

我正在创建一个flash图像裁剪器。我可以调整和移动包含我的图像的movieclip。这个电影唇也可以旋转

我遇到的问题是,为了正确地裁剪图像,我需要图像处于0度的点处的原始X,Y坐标。这就是我说的可移动的电影唇

我是否可以获取旋转度和当前左上角的X,Y,并获得0度的原点


感谢您的帮助

好吧,您可以让DisplayObject帮您完成工作:

var tempRotation:Number = displayObject.rotation;
displayObject.rotation = 0;
var referencePoint:Point = new Point(displayObject.x, displayObject.y);
displayObject.rotation = tempRotation;
为什么你不能:

  • 将其旋转到0度

  • 得到新的x,y

  • 将其向后旋转一个角度


顺便说一句,它总是最好的旋转中心。所以你必须应用类似的东西

  • 向后平移一半宽度和一半高度

  • 旋转它的角度

  • 翻译回


实际上没有任何代码可显示。我在舞台上有一个电影剪辑,我从MC的中心旋转,旋转时左上角的X,Y发生变化。我需要在旋转(0度)之前计算出原始的左上角点,那么你是如何旋转的呢?您是在设置旋转、变换矩阵还是什么?看到为什么显示代码更容易了吗?我使用的是第三方转换管理器,因此为什么没有代码。我认为这行不通。我知道你要去哪里,但我实际上是从一个显示对象的中心旋转。据我所知,它使用了左上角的点。我又看了一眼,它按预期工作。非常感谢。啊,很高兴你试过了。正如您所意识到的,这很可能取决于容器层次结构,以及这些精灵相对于其父对象的位置。当然有一个简单的(虽然有点冗长)纯数学方法来获得更一般的解决方案。我是从中心来做的。我只是不知道计算原点的公式。我不能只是暂时将其旋转到0度,因为在舞台上可以看到显示对象。