AS3 atan与atan2函数区别

AS3里,反正切atan2函数比反正切atan函数(即角的对边比邻边)更为有用,它可以让我们做出对物体正确的旋转.请记住Flash里的y轴 坐标与数学的是颠倒的.(上面演示所示),Flash是以弧度来计算的!坐标上的刻度值位置不太准,没校对大家就大概移到相应的点的位置上就可以验证下面 的列表值

atan(val:Number) atan2(y:Number,x:Number)

弧度角度换算公式:

弧度转为角度
degree = radians * 180 / PI

角度转为弧度
radians = degree * PI / 180

当用atan函数时(注意是近似值):[弧度度]

Math.atan(1/2)≈0.4636476090008061≈26.56505117707799°
Math.atan(-1/2)≈-0.4636476090008061≈-26.56505117707799°
Math.atan(-1/-2)≈0.4636476090008061≈26.56505117707799°
Math.atan(1/-2)≈-0.4636476090008061≈-26.56505117707799°

当用atan2函数时(注意是近似值):[弧度度]

Math.atan2(1,2)≈0.4636476090008061≈26.56505117707799°
Math.atan2(-1,2)≈-0.4636476090008061≈-26.56505117707799°
Math.atan2(-1,-2)≈-2.677945044588987≈-153.43494882292202°
Math.atan2(1,-2)≈2.677945044588987≈153.43494882292202°

时间: 2024-10-24 18:20:49

AS3 atan与atan2函数区别的相关文章

关于c#中的消息处理函数和vc中的消息处理函数区别

函数|区别 从vc入门编程的,相信大家都很熟悉PreTranslateMessage和WindowProc两个函数,前者是预处理windows发给控件的消息,后者是处理剩余的控件消息.对于PreTranslateMessage函数,一般来说,我们是这样处理控件消息的: BOOL test::PreTranslateMessage(MSG* pMsg) {if(pMsg->hwnd==GetSafeHwnd()){ if(pMsg->message==WM_MOUSEMOVE){m_toolti

php程序中mt_rand与rand函数区别与实例

mt_rand与rand函数区别与实例 下面我们来看看mt_rand函数的实例吧. function roll () { return mt_rand(1,6); } echo roll(); function roll ($sides) { return mt_rand(1,$sides); } echo roll(6); // roll a six-sided die echo roll(10); // roll a ten-sided die echo roll(20); // roll

php mt_rand与rand函数区别与实例

mt_rand与rand函数区别与实例 下面我们来看看mt_rand函数的实例吧. function roll () { return mt_rand(1,6); } echo roll(); function roll ($sides) { return mt_rand(1,$sides); } echo roll(6); // roll a six-sided die echo roll(10); // roll a ten-sided die echo roll(20); // roll

php explode split str_split函数区别与实例

三个函数都是把一个字符串分割成一个数组,但各有各的用法,下面我们就一一来看关于php explode split str_split函数区别与实例吧. */ $str ="id_99_cn.html"; $array = explode('_',$str); print_r($array); /* array (     [0] => id     [1] => 99     [2] => cn.html ) */ //函数原型:array split (string

as2与as3中对待空字符的区别

在as2中 var a:String = ""; trace(Number(a));//输出:NaN trace(isNaN(a));//输出:true 说明变量a不是数字. 在as3中 var a:String = ""; trace(Number(a));//输出:0 trace(isNaN(Number(a)));//输出:false 说明变量a是数字. as2与as3中空字符的区别太大了,在as2的算法转换到as3时,特别是在一些判断字符是否是数字的时候,一

Mysql存储过程和函数区别介绍

存储过程是用户定义的一系列sql语句的集合,涉及特定表或其它对象的任务,用户可以调用存储过程,而函数通常是数据库已定义的方法,它接收参数并返回某种类型的值并且不涉及特定用户表. 存储过程和函数存在以下几个区别: 1)一般来说,存储过程实现的功能要复杂一点,而函数的实现的功能针对性比较强.存储过程,功能强大,可以执行包括修改表等一系列数据库操作:用户定义函数不能用于执行一组修改全局数据库状态的操作. 2)对于存储过程来说可以返回参数,如记录集,而函数只能返回值或者表对象.函数只能返回一个变量:而存

php echo()和print()、require()和include()函数区别说明_php技巧

1.echo和print的区别 PHP中echo和print的功能基本相同(输出),但是两者之间还是有细微差别的.echo输出后没有返回值,但print有返回值,当其执行失败时返回flase.因此可以作为一个普通函数来使用,例如执行下面的代码后变量$r的值将为1. $r = print "Hello World";   这意味着print可用在一些复杂的表达式中,而echo则不行.但是,因为echo语句不要求返回任何数值,所已在代码中echo语句的运行效率要略微快于print语句. 2

C++中宏定义和内联函数区别

一.宏定义和内联函数的区别 1. 宏定义不是函数,但是使用起来像函数.预处理器用复制宏代码的方式代替函数的调用,省去了函数压栈退栈过程,提高了效率.     内联函数本质上是一个函数,内联函数一般用于函数体的代码比较简单的函数,不能包含复杂的控制语句,while.switch,并且内联函数本身不能直接调用自身.如果内联函数的函数体过大,编译器会自动的把这个内联函数变成普通函数. 2. 宏定义是在预编译的时候把所有的宏名用宏体来替换,简单的说就是字符串替换     内联函数则是在编译的时候进行代码

PHP isset()函数与empty()函数区别

empty 判断一个变量是否为"空",isset 判断一个变量是否已经设置.正是这种所谓的"顾名思义",令我开始时走了些弯路:当一个变量值等于0时,empty()也会成立(true),因而会发生一些意外.原来,empty 和 isset 虽然都是变量处理函数,它们都用来判断变量是否已经配置,它们却是有一定的区别:empty还会检测变量是否为空.为零.当一个变量值为0,empty 认为这个变量同等于空,即相当于没有设置. 比如检测 $id 变量,当 $id=0 时,用