Я делаю простой поворот на спрайте, но есть странное поведение, когда спрайт не вращается вокруг своей верхней левой части.Я думаю, что я вращаюсь вдоль левого верхнего угла тестового класса вместо дочернего спрайта.Я хотел бы повернуть прямоугольник вокруг его верхнего левого угла (вроде стрелки часов).Код довольно короткий, поэтому я позволю коду + рисункам объяснить мою проблему:
package
{
import flash.display.Sprite;
public class test extends Sprite
{
public function test()
{
var mySprite:Sprite = new Sprite();
mySprite.graphics.beginFill(0x000000);
mySprite.graphics.drawRect(100,100,6,120);
mySprite.graphics.endFill();
this.addChild(mySprite);
mySprite.rotation = 45;
}
}
}
Кажется, слишком просто облажаться, вот результаты.Красная линия находится над ключом дома для справки.Сначала я установил mySprite.rotation=0
, а второй - код, показанный выше:
Я много чего читал о вращении вокруг фиксированной точки, яя попробовал сделать это с мувиклипами вместо спрайтов, я даже скопировал и вставил учебник по вращению , и ничего не работает.Почему такое поведение происходит и как я могу это исправить?
Редактировать: Спасибо всем, все ваши предложения помогли мне по-разному, и все они были правильными, так что +1, я просто выберу решение, которое я выбралиспользовать в моем коде.