![]() |
|
||||||||||
|
|||||
|
Регистрация: Jan 2010
Сообщений: 44
|
Всем привет. Делаю масштабирование карты Украины с помощью курсора мышки. Карту создал из спрайтов где каждая область это свой отдельный спрайт.
Для масштабирования мне необходимо получить значение mouse["localX"] для мышки. Проблема в том что при попытки получить mouse["localX"] я получаю mouse["localX"] того спрайта на который наведена мышка, а не основного спрайта в котором лежат все остальные спрайты. Если вместо спрайтов с областями использовать одну картинку или область, то масштабирование работает нормально, но тогда я не могу повесить события на нужные мне области карты. Основной код для маcштабирования карты: public function _zoom(mouse:MouseEvent):void { var _xs:Number = mouse["stageX"]; var _ys:Number = mouse["stageY"]; var _xm:Number = mouse["localX"]; var _ym:Number = mouse["localY"]; object.scaleX += mouse.delta / 20; object.scaleY += mouse.delta / 20; object.x = _xs - _xm * object.scaleX; object.y = _ys - _ym * object.scaleY; } Последний раз редактировалось ageent; 03.09.2010 в 21:25. |
|
|||||
|
Нуб нубам
модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
|
У меня Ваш файл вешает программу, скажу по коду - не берите localX/localY из события, просто спрашивайте mouseX/mouseY у контейнера, в котором лежат области.
__________________
Reality.getBounds(this); |
|
|||||
|
Регистрация: Jan 2010
Сообщений: 44
|
вот я баран. большое спасибо
Последний раз редактировалось ageent; 04.09.2010 в 03:05. |
![]() |
![]() |
Часовой пояс GMT +4, время: 06:46. |
|
|
« Предыдущая тема | Следующая тема » |
| Теги |
| маштабирование |
|
|