PDA

Просмотр полной версии : Cмещенный рисунок в спрайте


sltt
18.04.2010, 22:19
Есть необходимость в спрайте нарисовать рисунок и вращать его вокруг центра.
Применяя смещение матрицы, точка вращения переходит в центр рисунка.
Но. Cмещение спрайта становятся довольно странными.

Вопрос,
1. как можно нарисовать рисунок с точкой вращения в центре
2. чтоб размеры и положения спрайта и рисунка в нем совпадали

//Половина размера рисунка
const imgR = 50;

//Матрица сдвига, для перенесения RegistrationPoint в центр рисунка
var matr:Matrix = new Matrix();
matr.identity();
matr.translate(-imgR, -imgR);

//Инит спрайта
var c2:Sprite = new Sprite();
addChild(c2);
c2.x = 200;
c2.y = 200;

//Рисунок
c2.graphics.beginBitmapFill(new myIMG(0, 0), matr, false, true);
c2.graphics.drawRect(-imgR, -imgR, imgR*2, imgR*2);
c2.graphics.endFill();

//Заливка спрайта
c2.graphics.beginFill(0x55ff55, 0.35);
c2.graphics.drawRect(0,0,c2.width,c2.height);
c2.graphics.endFill();

//Поворот
c2.rotation += 23;