判断两个二维向量夹角及是顺时针还是逆时针旋转方向
2024-01-07 21:26:51
1.求两个向量的夹角
由公式
v1*v2=|v1||v2|cos(θ)
可得
θ=acos((v1*v2)/(|v1||v2|)
这样求得的角度范围为[0~180],无法得到顺时针还是逆时针旋转方向。
2.求两个向量的旋转方向
可通过向量的叉乘的正负来判断旋转方向
注意,这里仅适用于二维向量,三维向量的叉量是向量,无法直接判断正负。
v3=v1×v2
3.两者结合,可得夹角的取值范围为[-180,180]
伪代码
angle = angle(v1, v2);//夹角
cross = cross(v2,v2);//叉乘
angle = cross>0?-angle:angle;//判断正负
文章来源:https://blog.csdn.net/zouxin_88/article/details/135437013
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!