|
|
|||||
Регистрация: Mar 2011
Сообщений: 53
|
bitmapdata положение точки поворота
можно ли указать в bitmapdata место положение точки относительно которой объект поворачивает и позиционируется на сцене ?
|
|
|||||
Нуб нубам
модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
|
BitmapData это массив чисел. Он как бы не позиционируется на сцене, поскольку не может на ней оказаться.
С "объект поворачивает" и "место положение точки" в подразумеваемом Вами контексте ситуация аналогичная. Массив это не визуальный объект.
__________________
Reality.getBounds(this); |
|
|||||
Регистрация: Mar 2011
Сообщений: 53
|
эмм ну я же могу задавать этому мосиву чисел при draw позиционирование, я чевот походу не догоняю)
|
|
|||||
Чевот не догоняете , Можно изменить точку регистрации (а это так называется ) у DisplayObject-а (Sprite, MovieClip, Shape, Bitmap etc.) переопределив, например, акцессоры (get и set) x,y этого объекта.
Еще может быть полезно (если это как-то связанно с вращением) будет вот это почитать: http://www.flasher.ru/forum/blog.php?b=378. |
|
|||||
Регистрация: Mar 2011
Сообщений: 53
|
fish_r, спасибо за ссылку на статью но пишу на as3 и так понимаю там нет метода rotateAroundInternalPoint
ну либо я совсем дибил =) проблема именна с врашением, точнее координатами обьект при вращении, имеется обект ось(точка регистрации) находится грубо говоря в центре обьекта, и создается bitmap у которого данная точка становится в 0,0 обьекта, позиционирование и поворот дублируется из первого обьекта, и при повороте копия смешается, потому появилась потребность сместить данную точку так же как в первом обьекте |
|
|||||
Нуб нубам
модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
|
Сделайте пустой спрайт, положите туда битмап и сдвиньте его в спрайте на половину ширины и половину высоты влево вверх (в отрицательные координаты) – чтобы центр битмапа приходился на (0, 0) спрайта. И дальше обращайтесь со спрайтом так, как будто у него точка регистрации в центре. Задать ТР программно в том же смысле, как "руками" в ИДЕ не получится. Только так или тригонометрическими рассчетами, смещая битмап после поворота. Сто раз обсуждалось.
__________________
Reality.getBounds(this); |
|
|||||
Регистрация: Mar 2011
Сообщений: 53
|
прикрепил пример того что натворил, может кто тыкнет носом де я лох,
а по поводу сто раз обсуждалось можно линку если не сложно |
|
|||||
Кстати, тригонометрический расчет - это костыльный способ? Можно им пользоваться желающим стать труфлешерами?
__________________
Мой профиль на фрилансе |
|
|||||
Нуб нубам
модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
|
Костыльный – это дополнительный контейнер. Вот он да, именно костыль. А тригонометрические рассчеты это единственный вариант решения, будете Вы использовать Матрицы или двигать "ручками" х и у – синусы и косинусы все-равно считать.
__________________
Reality.getBounds(this); |
Часовой пояс GMT +4, время: 22:30. |
|
« Предыдущая тема | Следующая тема » |
|
|