在as3中旋转文本字段

时间:2010-10-02 09:14:07

标签: flash actionscript-3

我正在开发一个Flash项目,我必须在其中旋转文本字段。我正在使用此函数旋转文本字段---

**function rotateAroundCenter(ob:*, angleDegrees)
{

    var m:Matrix = ob.transform.matrix;
    m.tx -=  point.x;
    m.ty -=  point.y;
    m.rotate(angleDegrees*(Math.PI/180));
    m.tx +=  point.x;
    m.ty +=  point.y;
    ob.transform.matrix = m;
}**

var point:Point = new Point(mc.x + mc.width / 2,mc.y + mc.height / 2);


我正在使用上述方法计算包含文本字段的mc的中心点。

我还提供了拖动功能,以便可以拖动文本字段。  问题是当我旋转文本字段说45度然后我将其拖动到其他位置现在如果我再次旋转文本字段它不会围绕其中心或原点旋转,它会围绕由其计算的其他点旋转方法 --- mc.x + mc.width / 2,mc.y + mc.height / 2 ---

如何在任何旋转角度计算文本字段的完美原点。

2 个答案:

答案 0 :(得分:1)

你在转动mc还是文本字段?如果您正在旋转文本字段,那么您必须从中获取宽度。 旋转文本字段并拖动mc最适合性能。

rotateAroundCenter(textField, 45);
var point:Point = new Point(textField.width / 2, textField.height / 2);

答案 1 :(得分:0)

使用搜索,man ... here是旋转效果的示例。你可以从那里调整数学。