cocoscreater 旋转角度计算


getVectorRadians( x1,  y1,  x2,  y2)
    {
        
        let len_y = y2 - y1;
        let len_x = x2 - x1;

        let tan_yx = Math.abs(len_y)/Math.abs(len_x);
        let angle = 0;
        if(len_y > 0 && len_x < 0) {
        angle = Math.atan(tan_yx)*180/Math.PI - 90;
        } else if (len_y > 0 && len_x > 0) {
        angle = 90 - Math.atan(tan_yx)*180/Math.PI;
        } else if(len_y < 0 && len_x < 0) {
        angle = -Math.atan(tan_yx)*180/Math.PI - 90;
        } else if(len_y < 0 && len_x > 0) {
        angle = Math.atan(tan_yx)*180/Math.PI + 90;
        }
        return angle;
    },


//另一种计算方式

rotationTarget(startPos,endPos){
        let direction = endPos.sub(startPos).normalize(); 
var radian = direction.signAngle(cc.v2(1,0)); //将弧度转换为欧拉角 var angle = radian / Math.PI * 180 + 90; //赋值给节点 return angle; }

  


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM