【发布时间】:2011-10-17 11:06:33
【问题描述】:
任何人都可以告诉如何像这样缩放影片剪辑:http://www.backspace.com/mapapp/
该页面上的 Fist 地图,您可以通过在其周围拖动一个框来缩放特定区域。
是否有任何解释此功能的教程或链接。
提前谢谢你。
【问题讨论】:
标签: flash actionscript-3
任何人都可以告诉如何像这样缩放影片剪辑:http://www.backspace.com/mapapp/
该页面上的 Fist 地图,您可以通过在其周围拖动一个框来缩放特定区域。
是否有任何解释此功能的教程或链接。
提前谢谢你。
【问题讨论】:
标签: flash actionscript-3
假设我们有一个map,大小为100x100.
我们还有一个县叫A,大小为20x10,位置为50x10.
为了计算需要缩放多少,我们采用 A 的较大轴 (20) 和地图的同一轴 (100)。
100 / 20 = 5.
地图需要放大5倍。
mapMC.scaleX = mapMC.scaleY = 5;
但是现在我们还需要将地图移动到正确的位置。 地图大小现在是 5 倍 (500x500)。我们现在计算 A 在新调整大小的地图上的位置。
5 * 50 = 250
5 * 10 = 50
现在您将地图移动到位置 -250、-50。我们需要把它往负方向移动。
mapMC.x = -250;
mapMC.y = -50
【讨论】:
只需重新缩放矢量图形并根据显示对象的 mouseX/mouseY 或鼠标事件的 localX/localY 重新定位它。这真的很简单。使用 Tween 引擎(如 Tweener)为过渡设置动画。
【讨论】:
可以通过MovieClip的scale属性实现缩放功能。
可以使用MouseEvent.MOUSE_DOWN 和MouseEvent.MOUSE_UP 事件制作方框图。
这是一个非常有用的拖放和绘图功能链接: http://www.flashandmath.com/basic/dragdroptour/dd_tour2.html
您可以在移动鼠标的过程中绘制一个框,当您释放鼠标时,您可以重新缩放 MovieClip 以匹配框的大小,并使用 x 和 y 属性重新定位它的位置。
【讨论】: