经由JSFL闪存穿越 - 矩阵是对我意味着:(

我必须写上我的Flash场景创建一个文本JSFL脚本,并用任意角度旋转。 想象一下,我想创建和旋转一个“Hello World!”在45度,我的代码看起来像这样:



rotateAngle = 45;

//creates my new text at x:0, y:0 coordinates
fl.getDocumentDOM().addNewText({left:0, top:0, right:10, bottom:10});
fl.getDocumentDOM().setTextString('Hello World!');

var mat = fl.getDocumentDOM().selection[0].matrix; //get the current matrix

// set rotation
mat.a = Math.cos( rotateAngle );
mat.b = Math.sin( rotateAngle);
mat.c = - Math.sin(rotateAngle);
mat.d = Math.cos( rotateAngle );

fl.getDocumentDOM().selection[0].matrix = mat; //apply new matrix


问题是:施加到我的文本的旋转是58.3,而不是45

我不得不承认,我是那种用矩阵小白......所以我用了“旋转矩阵变换”此处的 http://www.senocular.com/flash/tutorials/transformmatrix/

想法?

感谢您。

有帮助吗?

解决方案

你有没有试着用弧度而不是度?

其他提示

我敢肯定,你也可以只使用下面的,而不是去通矩阵为简单起见。

var element = fl.getDocumentDOM().selection[0];
element.rotation = 45;

不必转换为弧度,以及因为它需要度作为输入值这避免了。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top