AS3 - функция масштабирования с видеоклипом - PullRequest
0 голосов
/ 01 августа 2011

Может ли любое тело сказать, как увеличить фрагмент ролика следующим образом: http://www.backspace.com/mapapp/

На первой странице карты можно увеличить конкретный регион, перетаскивая рамку вокруг него.

Существуют ли учебники или ссылки, в которых объясняется эта функция.

Заранее спасибо.

Ответы [ 3 ]

0 голосов
/ 01 августа 2011

Функция масштабирования может быть достигнута с помощью свойства scale MovieClip.

Рисование прямоугольника может быть выполнено с событиями MouseEvent.MOUSE_DOWN и MouseEvent.MOUSE_UP.

Воточень полезная ссылка для функции перетаскивания и рисования: http://www.flashandmath.com/basic/dragdroptour/dd_tour2.html

Вы можете нарисовать прямоугольник при перемещении мыши и при отпускании мыши вы масштабируете мувиклип, чтобы соответствовать размеру блока и изменить его положение с помощьюсвойства x и y.

0 голосов
/ 01 августа 2011

Скажем, у нас есть map размером 100x100. У нас также есть округ с именем A размером 20x10 в положении 50x10.

Чтобы рассчитать, сколько нужно увеличить, мывозьмите большую ось A (20) и ту же ось карты (100).100 / 20 = 5. Карта должна быть увеличена в 5 раз.

mapMC.scaleX = mapMC.scaleY = 5;

Однако теперь нам также нужно переместить карту в правильное положение.Размер карты теперь в 5 раз больше (500х500).Теперь мы рассчитываем положение A на новой карте с измененным размером.

5 * 50 = 250
5 * 10 = 50

Теперь вы перемещаете карту в положение -250, -50.Нам нужно переместить его в отрицательном направлении.

mapMC.x = -250;
mapMC.y = -50
0 голосов
/ 01 августа 2011

просто измените масштаб векторной графики и переместите ее в соответствии с mouseX / mouseY экранного объекта или localX / localY события мыши. это действительно просто. используйте движок Tween (например, Tweener) для анимации перехода.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...