Actionscript 3 如何将二维矩阵转换为变换
我正在使用Flash AS3。 如果我有一组变换数据(x,y,scaleX,scaleY,skewX,skewY),我可以将其转换为矩阵:Actionscript 3 如何将二维矩阵转换为变换,actionscript-3,flash,matrix,2d,graphic,Actionscript 3,Flash,Matrix,2d,Graphic,我正在使用Flash AS3。 如果我有一组变换数据(x,y,scaleX,scaleY,skewX,skewY),我可以将其转换为矩阵: matrix.a = transform.scaleX * Math.cos(transform.skewY) matrix.b = transform.scaleX * Math.sin(transform.skewY) matrix.c = -transform.scaleY * Math.sin(transform.skewX); matrix.d =
matrix.a = transform.scaleX * Math.cos(transform.skewY)
matrix.b = transform.scaleX * Math.sin(transform.skewY)
matrix.c = -transform.scaleY * Math.sin(transform.skewX);
matrix.d = transform.scaleY * Math.cos(transform.skewX);
matrix.tx = transform.x;
matrix.ty = transform.y;
我的问题是现在我有了一个矩阵,我怎么能把它转换成变换?是否有任何库或框架提供了此类功能?来自变换对象:
应用二维变换:创建矩阵对象,设置矩阵的二维变换,然后将显示对象的transform.Matrix属性指定给新矩阵对象。
因此,编辑对象现有变换矩阵的过程应如下所示:
var newMatrix:Matrix = aDisplayObject.transform.matrix
newMatrix.a = 123
aDisplayObject.transform.matrix = newMatrix
另一个问题是:我有两个带有变换的2D显示对象(x,y,scaleX,scaleY,skewX,skewY)。一个DisplayObject是另一个的子对象。如何计算与全局相关的子DisplayObject的变换?从另一边。我想计算变换concat(乘法)。谢谢通过阅读有关transform的文档,我怀疑第二个问题的答案可能是使用了。如果您需要更多信息,我建议您发布第二个单独的问题。