gpt4 book ai didi

actionscript-3 - AS3 围绕其中心点旋转对象

转载 作者:行者123 更新时间:2023-12-04 02:40:53 25 4
gpt4 key购买 nike

我希望这个对象围绕它的中心而不是左上角旋转。
代码如下所示:

        switch (event.keyCode)
{
case 37:
car.rotation = -90;
car.x -= 5;
break;

所以当我按下左键时,汽车向左转,但现在它跳起来了一点,因为它绕着顶角旋转。

谢谢

最佳答案

以下将围绕 center 旋转:

public function rotateAroundCenter(object:DisplayObject, angleDegrees:Number):void {
if (object.rotation == angleDegrees) {
return;
}

var matrix:Matrix = object.transform.matrix;
var rect:Rectangle = object.getBounds(object.parent);
var centerX = rect.left + (rect.width / 2);
var centerY = rect.top + (rect.height / 2);
matrix.translate(-centerX, -centerY);
matrix.rotate((angleDegrees / 180) * Math.PI);
matrix.translate(centerX, centerY);
object.transform.matrix = matrix;

object.rotation = Math.round(object.rotation);
}

它将对象的中心平移到 0,0,然后旋转它,然后将其平移回来。

关于actionscript-3 - AS3 围绕其中心点旋转对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15789168/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com