1.角的两种单位
“弧度”和“度”是度量角的大小的两种不同单位。就像“米”和“市尺”是度量长度大小的两种不同单位一样。
在Flash中规定:在旋转角度(rotation)里的角,以“度”为单位;而在三角函数里的角要以“弧度”为单位。例如:
rotation2: 是旋转2度;
sin(π/2): 是大小为"π/2弧度"的角的正弦
2.弧度的定义:
- "度"的定义是: 两条射线从圆心向圆周射出,形成一个夹角和夹角正对的一段弧.当这段弧长正好等于圆周长的360分之一的时候,两条射线的夹角为1度
- "弧度"的定义: 两条射线从圆心想圆周射出,形成一个夹角和夹角正对的一段弧.当这段弧长正好等于园的半径时,两条射线的夹角大小为1弧度.
比较一下,度和弧度的两个定义非常相似.它们的区别,仅在于角所对的弧长大小不同.度的是等于圆周长的360分之一,而弧度的是等于半径.
角所对应的弧长是半径的几倍,那么角的大小就是几弧度。它们的关系可用下式表示和计算:
角(弧度) = 弧长/半径
园的周长是半径的2π倍,所以一个周角(360度)就是2π弧度
半圆的长度是半径的π倍,所以一个平角(180度)是π弧度。
3.度与弧度之间的转换:
首先由上所指,一个平角是π弧度,即180度 = π弧度
那么: 1度 = (π/180) 弧度(约等于0.017453弧度)
因此: 弧度 = 度×π/180;
处理弧度角度和三角函数的Function:
function angleToRadian(angle:Number):Number{ return angle*(Math.PI/180); } function radianToAngle(radian:Number):Number{ return radian*(180/Math.PI); } function sinD(angle:Number):Number{ return Math.sin(angleToRadian(angle)); } function cosD(angle:Number):Number{ return Math.cos(angleToRadian(angle)); } function atan2D(y:Number,x:Number):Number{ return radianToAngle(Math.atan2(y,x)) }