![]() |
Перевод из локальных в глобальные
Здравствуйте! У меня пролема: у меня есть мувик A, внутри которого есть мувик B. Как мне получить координаты мувика B в Stage (в глобальных координатах)? Причем с учетом того что тот мувик A, может быть повернут на любой угол.
|
http://novemberain.com/livedocs/Help.../00001521.html
Смени кодировку страницы на utf-8 |
О, пасиб :) А я сначала подумал что он просто прибавляет к координатам передаваемой точки свои и сумму возвращает.
|
Все, понял смысл параметров метода :) Торможу... )
|
Продолжаем :)
Тааак... Долблюсь дальше... Теперь проблема возникла другая:
(_x, _y) указывает на ноль в системе координат мувика (доп., прямоугольник. Центр координат в любом месте прямоугольника) Мне надо 1) найти середину правой границы и прочертить линию из этой точки в точку, удаленную на половину ширины прямоугольника в право. Таким образом как ни верти мувик, линия всегда будет перпендикулярна стороне пр-ка и равна половине его ширины (нормальной ширины, а не той что getBounds(_root) выдает) Проблему решил очень криво: Туда, откуда должна исходить линия, поставил невидимый кружочек с именем axe. B далее делаю localToGlobal от этого кружка, тем самым получая координаты этой точки. Но вот допустим localToGlobal не от самого кружка. а от точки чуть правее уже не дает нормального результата. Нормально получается если _rotation прямоугльника на нуле. Если же на 180, то полученная прямая не поворачивается, а смотрит в том же направлении, несмотря на то что axe находится внутри прямоугольника (внутри мувика), а прямоугольник повернут. Код ниже. src, dst - два мувика, в которых на правой стороне расположены мувики axe (жирная точка). Функция compare рисует линию таким образом: сначала перпендикулярно одному пр-ку, потом до второго (не доходя) и потом перпендикулярно второму. Код:
function compare(src, dst) {Я бы поставил второй кружочек, но при этом изменится ширина мувика, а это оч не желательно |
Устал читать :) И не понятно.
Может лучше исходник? |
Код:
-----------------А исходник полный к сож не имею права выкладывать... :( |
Что то типа этого?
Код:
this.createEmptyMovieClip ("mc", 0); |
Да, правльно, только 0 у mc заранее не известно где находится. Т.е. не обязательно в центре.
|
Ну сам то ты с этим разберешься?:)
|
| Часовой пояс GMT +4, время: 15:59. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.