js实现向量偏移角度

需求是这样的,给出一个向量(x,y) 然后逆时针旋转45度,然后得到对应的x, y值


var xx = 0;
var yy = 0;
var tha = Math.PI/4;
var params = [xx,yy,tha];

function changeAngle(param){
	if(param[0] !== 0 && param[1] !== 0){

		var x = param[0];
		var y = param[1];
		var tha1 = param[2];

		var value = Math.sqrt(x*x + y*y);

		var cos1 = x / value;
		var sin1 = y / value;

		var cos2 = Math.cos(tha1);
		var sin2 = Math.sin(tha1);

		var cos3 = cos1*cos2 - sin1*sin2;
		var sin3 = sin1*cos2 + cos1*sin2;
		param[0] = (value * cos3).toFixed(2);
		param[1] = (value * sin3).toFixed(2);
	}
}
changeAngle(params);
console.log(params);


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值