Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   как точку вращения мувиклипа изменить? (http://www.flasher.ru/forum/showthread.php?t=129612)

AQUAFRESH 06.09.2009 00:51

как точку вращения мувиклипа изменить?
 
Код AS3:

                        var matrix:Matrix; = Hero.transform.matrix;
                        matrix.translate(Hero.width / 2, Hero.height / 2);
                        Hero.transform.matrix = matrix;

пробывал так, но чтото немогу понять почему то не работает, это оно координаты принимает относительно stage или относительно мувиклипа ???

Obi 06.09.2009 00:54

У програмно созданного объекта изначально точка 0,0 находится в левом верхнем углу. От этого и надо исходить. Например чтобы точка была в центре, надо сдвинуть содержимое на половину влево и на половину вверх.

AQUAFRESH 06.09.2009 02:07

тогда получаеться что я всё написал правильно, но почемуто то он всеровно не вращаеться по центру....

switcher! 06.09.2009 02:39

" matrix:Matrix; = "
?

AQUAFRESH 06.09.2009 02:45

та то я нечайно вставил так


Код AS3:

 
matrix.transformPoint(new Point(20, 20));

вотето даже пробывал всеровно не работает.... Всё время вращаеться вокруг точки регистрации что не напишу

wvxvw 06.09.2009 09:59

Вам нужно сначала посчитать угол поворота а потом транслировать координаты. Т.е.
Код AS3:

var m:Matrix = new Matrix();
m.rotate(....);
m.translate(hero.widht * -0.5, hero.height * 0.5);
hero.transform.matrix = m;


AQUAFRESH 06.09.2009 14:19

странно, всеровно почему то не работает... хм... наверное я ламер )))

Вообщем получилось, но только код немного переделал.

Код AS3:

                        var tMatrix:Matrix = Hero.transform.matrix;
                        MatrixTransformer.rotateAroundExternalPoint(tMatrix,300,300,- 1);
                        Hero.transform.matrix = tMatrix;


murz 06.09.2009 14:37

http://www.flasher.ru/forum/showthre...8%EF%E0&page=2

AQUAFRESH 06.09.2009 17:49

да чётко то что нада ))) Работает ровно ))


Часовой пояс GMT +4, время: 04:13.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.