Actionscript 3 AS3围绕空间中的点旋转三维对象

Actionscript 3 AS3围绕空间中的点旋转三维对象,actionscript-3,flash,apache-flex,air,stage3d,Actionscript 3,Flash,Apache Flex,Air,Stage3d,我用 围绕对象中心旋转对象的步骤。很好 当我希望对象围绕场景中心旋转时,我使用 appendRotation(_Y, Vector3D.Y_AXIS); 很好 但如果我想像这样围绕空间中的某个点旋转对象: prependRotation( _Y, Vector3D.Y_AXIS , new Vector3D( 0, 0, 0 ) ); 它不工作,对象完全扭曲,有人能给我一个提示吗,我做错了什么?可以通过将对象添加到父容器中来解决。然后 将对象移动到适当的位置:appendTranslatio

我用

围绕对象中心旋转对象的步骤。很好

当我希望对象围绕场景中心旋转时,我使用

appendRotation(_Y, Vector3D.Y_AXIS);
很好

但如果我想像这样围绕空间中的某个点旋转对象:

prependRotation( _Y, Vector3D.Y_AXIS , new Vector3D( 0, 0, 0 ) );

它不工作,对象完全扭曲,有人能给我一个提示吗,我做错了什么?

可以通过将对象添加到父容器中来解决。然后
将对象移动到适当的位置:appendTranslation(10,10,10),然后将旋转应用到父容器:appendRotation(_Y,Vector3D.Y_轴)。

我就是这样做的,以避免出现问题,但为什么它不能按应有的方式工作?我无法给出确切的解释。我的感觉是,当我们尝试将位置和旋转变换应用于对象矩阵3d时,问题就出现了。
prependRotation( _Y, Vector3D.Y_AXIS , new Vector3D( 10, 10, 10 ) );