三角函数 弧度角度转换

public static moveDirection(oldPos: egret.Point,newPos: egret.Point,lastDirection = null):number{//返回方向
            //计算角度、方向   Math.atan2根据两点坐标计算到oldPos的弧度
            var angleSpeed: number = Math.atan2(newPos.y - oldPos.y,newPos.x - oldPos.x);
            //弧度转化为角度 角度= 弧度*180/π
            var N = angleSpeed * 180 / Math.PI;
            if(oldPos.y == newPos.y && oldPos.x == newPos.x) {
                if(lastDirection == null){
                    return EnumManager.DIRECTION_ENUM.DIR_UP_RIGHT;
                }
                return lastDirection;
            } else {
                if(N <= 20 && N >= -20) {
                    return EnumManager.DIRECTION_ENUM.DIR_RIGHT;
                } else if(N <= 110 && N >= 70) {
                    return EnumManager.DIRECTION_ENUM.DIR_DOWN;
                } else if(N <= -160 || N >= 160) {
                    return EnumManager.DIRECTION_ENUM.DIR_LEFT;
                } else if(N <= -70 && N >= -110) {
                    return EnumManager.DIRECTION_ENUM.DIR_UP;
                } else if(N < 70 && N > 20) {
                    return EnumManager.DIRECTION_ENUM.DIR_DOWN_RIGHT;
                } else if(N < 160 && N > 110) {
                    return EnumManager.DIRECTION_ENUM.DIR_DOWN_LEFT;
                } else if(N < -110 && N > -160) {
                    return EnumManager.DIRECTION_ENUM.DIR_UP_LEFT;
                } else if(N < -20 && N > -70) {
                    return EnumManager.DIRECTION_ENUM.DIR_UP_RIGHT;
                }
                return EnumManager.DIRECTION_ENUM.DIR_DOWN;
            } 
        }
 //弧度转化为角度 角度= 弧度*180/π
 //角度转弧度 弧度=角度*π/180
 从某种意义上来说,π就相当于180°,哈哈,又回到高数了,还是熟悉的味道


版权声明:本文为W_han__原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。