flash中一个快速简便的方法来确定鼠标的角度
有许多方法来确定鼠标角,目前在使用中的主要的方法,涉及使用相当复杂的寻找循环的正弦查找表和意见。我们要的是一个快速简便的方法来确定鼠标的角度。这种方法近似于角度。一颗子弹从原点到鼠标的运动也被计算,然而,这是确切的。
术语表
原产地 - 点鼠标角度是相对的。
正常化 - 两个值之和为1,同时保持它们的相对比例。
象限 - 鼠标角的方向,在本教程中,它们分别是:
向上和向左
向上和向右
下和左
向下和向右
理论
如果你想跳过此...
基本概念是,鼠标的角度将下降到1 4象限,它们分别是:
0 - 90(上下)+ X + Y
90 - 180(向左和向下) - x + y的
180 - 270(左和上升)的x-y
270 - 360(及以上)+ X-Y
“鼠标坐标”是“协调的鼠标坐标的原点”减去“”
IE浏览器。如果原产地(10,10)和鼠标(20,-20),然后将鼠标的坐标为(10,-30)。这是正确的,或+ X-Y。
近似的角度,然后用一个简单的算法。该算法将不会被解释为近似从来没有真正让“感觉” - 只是看看代码。一颗子弹从原点到鼠标移动精确计算。因此,游戏的目的通常是确定的。
码
第一步是获得的对象的位置:
点评:得到的原点位置
设置变量:“origin_x”的getProperty(“/来源”,_x)
设置变量:“origin_y”的getProperty(“/来源”,_y)
设置变量:“mouse_x”的getProperty(/ mouse_clip“,_x)
点评:得到鼠标的位置
设置变量:“mouse_y”的getProperty(“/ mouse_clip”,_y)
设置变量:“dist_x”= mouse_x - origin_x
设置变量:“dist_y”= mouse_y - origin_y
第二个步骤是归一化因子的测定,这是从原点的距离的绝对值(x和y)的鼠标的总和:
点评:设置归一化因子
如果(dist_x <0)
设置变量:“规范化”= -1 * dist_x
其他
设置变量:“规范化”= dist_x
结束如果
如果(dist_y <0)
设置变量“正常化”=正常化+(-1 dist_y本)
其他
设置变量:“规范化”=正常化+ dist_y
结束如果
(责任编辑:卓想动画http://www.zxgzs.com)