[AS3]围绕其中心旋转角色



我需要一些特定问题的帮助。我看了看一些答案,但没有我需要的那么具体。

我正在使用flashdevelop,而现在,我的矩形(是一个弹簧)之后是我的鼠标光标(居中)。我想在滚动鼠标车轮时在旋转上进行旋转,但是我需要旋转才能在其中心上涂抹,并且我需要该物体同时保持鼠标光标的中心。而且我还需要将旋转应用于弧度,而不是在程度上。

现在我得到了这个:

var mod:Number;
if (e.delta <= 0) {
    mod = -0.1;
}else {
    mod = 0.1;
}

有人可以帮我吗?在我看到的东西之后,似乎我已经使用了矩阵和复杂的数学,但是我不知道该如何做我想做的事情。

您只需要在矩形的中心保留精灵的注册点即可将其旋转到其中心。当您从(0,0)绘制一个精灵时,注册点是左上角,而不是中心。这是您将其设置为中心的方式:

var rectangleSprite:Sprite = new Sprite();
rectangleSprite.graphics.lineStyle(3,0x00ff00);
rectangleSprite.graphics.beginFill(0x0000FF);
//please note that i am not drawing the sprite from (0,0), 
//instead i start from (-width/2,-height/2)
rectangleSprite.graphics.drawRect(-150,-75,300,150);
rectangleSprite.graphics.endFill();

,要获得Radian转换的学位,您只需要在应用旋转之前将您的价值乘以(180/Math.pi)。

var rotationInDegrees = rotationInRadians*(180/Math.PI);

最新更新