![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Регистрация: Feb 2011
Адрес: тут и там
Сообщений: 7
|
создай спрайт mc1 и расположи его в нужной точке (точка А допустим). Положи в mc1 объект, который надо увеличивать (допустим mc2).
Увеличивай или уменьшай mc1, а не mc2. При этом начальная координата mc1 будет являться тем местом на экране, куда как бы увеличивается или уменьшается объект. А чтобы поменять центр увеличения или уменьшения у самого объекта передвигай mc2. Вроде всё просто, а объяснить тяжело ![]() |
|
|||||
|
Регистрация: Oct 2006
Сообщений: 2,282
|
Цитата:
Цитата:
UPD: сорри, перечитал последний пост. Если неподвижная точка не известна сразу то можно её получить когда юзер кликнет по мувику. Надо только пересчитать координаты клика. Делается конечно без панели пропертиес, но с помощью тех-же методов localToGlobal и globalToLocal. Или как вариант можно взять mc.tansform.matrix у кликнутого мувика и умножить её на Point(mouseX,mouseY). По идеи результат должен быть одинаковым. Последний раз редактировалось undefined; 28.02.2011 в 01:15. |
|
|||||
|
Регистрация: Feb 2011
Адрес: тут и там
Сообщений: 7
|
Ааа....догнал, что ты хочешь.
Вот простой пример просмотра изображений в винде. Здесь только увеличение, уменьшение по тому же принципу. Последний раз редактировалось alexniks; 28.02.2011 в 01:28. |
|
|||||
|
Цитата:
. Сейчас я расчитываю смещение мувика относительно сцены, а в вашем варианте, мне нужно будет расчитывать смещение мувика относительно спрайта. |
|
|||||
|
Регистрация: Feb 2011
Адрес: тут и там
Сообщений: 7
|
тогда используй матрицу
import flash.geom.Matrix; import flash.geom.Transform; var scale:Number = 1; mc1.addEventListener(MouseEvent.CLICK,clickevent); function clickevent(e:MouseEvent):void{ scale += 0.2; var mat:Matrix = new Matrix(); mat.scale(scale,scale); mat.translate(-mc1.mouseX * scale +stage.stageWidth/2,-mc1.mouseY * scale + stage.stageHeight/2); mc1.transform.matrix = mat; } Последний раз редактировалось alexniks; 28.02.2011 в 02:26. |
|
|||||
|
Не подходит. Работает также как и мой алгоритм с центробежным смещением сцены...
![]() Добавлено через 23 минуты Спасибо всем! Так я и не поборол эту штуку! Но нашёл костыль... Работает как надо. Добавлено через 4 часа 1 минуту Дошло до меня. Растягиваем и смещаем мувик. Это мы учитываем. Не учитываем то, что изображение в нем тоже растягивается а значит точка растет и смещается к центру. Здесь надо подбирать каэффициент этого растяжения. Не стал, так как, как уже писал, решил через костыль. |
![]() |
![]() |
Часовой пояс GMT +4, время: 01:25. |
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | |
| Опции просмотра | |
|
|