常用的一些数学三角函数
基本三角函数的计算:
角的正弦值 = 对边 / 斜边
角的余弦值 = 邻边 / 斜边
角的正切值 = 对边 / 邻边
角度制与弧度制的相互转换:
弧度 = 角度 * Math.PI / 180
角度 = 弧度 * 180 / Math.PI
补充:
(这边解释下弧度和角度之间的区别很多人会问这样的问题,1弧度等于57.2958度。一个圆360度计算出等于6.2832弧度,PI(圆周率)=3.1416,6.2832等于2 PI)
向鼠标旋转(或向某点旋转):
AS3代码
- dx = mouseX - sprite.x; dy = mouseY - sprite.y;
- sprite.rotation = Math.atan2(dy, dx) * 180 / Math.PI;
创建波形:
AS3代码
- public function onEnterFrame(event:Event){
- value = center + Math.sin(angle) * range; angle += speed;
- }
创建圆形:
AS3代码
- public function onEnterFrame(event:Event){
- xposition = centerX + Math.cos(angle) * radius;
- yposition = centerY + Math.sin(angle) * radius; angle += speed;
- }
创建椭圆:
AS3代码
- public function onEnterFrame(event:Event){
- xposition = centerX + Math.cos(angle) * radiusX; yposition = centerY + Math.sin(angle) * radiusY;
- angle += speed;
- }
计算两点间距离:
AS3代码
- dx = x2 – x1; dy = y2 – y1; dist = Math.sqrt(dx*dx + dy*dy);
向已知坐标移动:
AS3代码
- var dx=p2_mc.x-p1_mc.x;
- var dy=p2_mc.y-p1_mc.y;
- var angle=Math.atan2(dy,dx);
- stage.addEventListener ("enterFrame",onEnterFrameMove);
- function onEnterFrameMove (e:Event) {
- p1_mc.x+=Math.cos(angle); p1_mc.y+=Math.sin(angle);
- }
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。