论坛交流
首页办公自动化| 网页制作| 平面设计| 动画制作| 数据库开发| 程序设计| 全部视频教程
应用视频: Windows | Word2007 | Excel2007 | PowerPoint2007 | Dreamweaver 8 | Fireworks 8 | Flash 8 | Photoshop cs | CorelDraw 12
编程视频: C语言视频教程 | HTML | Div+Css布局 | Javascript | Access数据库 | Asp | Sql Server数据库Asp.net  | Flash AS
当前位置 > 文字教程 > Flash教程
Tag:flash cs,flash 8,鼠绘,as,手绘,工具,文字,loading,入门,初学,mc,影片剪辑,声音,mtv,游戏,引导,遮罩,菜单,补间,广告条,时钟,视频教程

浅谈atan在FLASH中的应用之鼠标跟随

文章类别:Flash | 发表日期:2008-9-21 19:21:10

  不久前,看了番茄老师的“浅谈sin,cos”,真是让人受益非浅,经过这两天的研究, 悟出了------Math.atan函数在FLASH中的应用“鼠标跟随
好了,我们先看Math.atan的语法规则:
可用性
Flash Player 5。在 Flash Player 4 中,Math 对象的方法和属性是使用近似值模拟的,可能不如 Flash Player 5 支持的非模拟数学函数那样精确。
用法
Math.atan(x)
参数
x 一个数字。
返回
一个数字。
说明
方法;计算并返回参数 x 中指定的数字的反正切值。返回值介于负二分之 pi 与正二分之 pi 之间。
懂了吗?好,再看效果:
点击浏览该文件
这就是Math.atan的妙用,,下面我来仔细给大家分析一下程序~
如图:
按此在新窗口浏览图片

要害代码如下:

function RtoD(rad){//FLASH中的三件函数使用的单位是“弧度”,所以用RtoD函数将角度转化为弧度
return rad*180/Math.PI;
}
bug.onMouseMove=function(){
mcx=(_root._xmouse-bug._x);获得鼠标与MCX轴的距离,并用于下面的计算
mcy=(_root._ymouse-bug._y);同上
if(mcx<0 and mcy<0){//判定,假如MC在坐标轴的第三象限;
dRad=Math.PI ;//附正值
}else if(mcx<0 and mcy>0){//判定,假如MC在坐标轴的第二象限;
dRad= -Math.PI;//附负值

}
else{dRad=0;//其他象限不要变
}
angle=Math.atan(mcy/mcx)+dRad;//加“dRad的目的是因为:数学上与FLASH中所定义的坐标轴在Y轴方向是相反的~,所以,当鼠标经过第2象限就加一个PI()
当鼠标经过第3象限就减一个PI()

bug._rotation=RtoD(angle+Math.PI/2);这里的再次用RtoD函数,将“弧度”转换为“角度”,因为MC的头指向上方,而X轴的正方向以逆时针算起,加个PI()/2(90度)做为补偿,就刚才套上鼠标的位置~
};

原文件
点击浏览该文件
好好学吧,这个东西很有用的,高手指导,菜鸟学习
//转载请与本人联系

上一篇:{应用}鼠标悬停信息提示 人气:3003
下一篇:{应用}动感火焰 人气:2480
视频教程列表
文章教程搜索
 
Flash推荐教程
Flash热门教程
看全部视频教程
购买方式/价格
购买视频教程: 咨询客服
tel:15972130058