通过Dot和Cross获取a到b的夹角
//获取a到b的夹角,b到a的夹角 public void DotAndCross() { a = CubeA.transform.position; b = CubeB.transform.position; Vector3 c = Vector3.Cross(a, b);//通过叉积求的A,B的法向量 float angle = Vector3.Angle(a, b);//求得a,b的夹角(绝对值) //a到b的夹角 //获取正负号 float sign = Mathf.Sign(Vector3.Dot(c.normalized, Vector3.Cross(a.normalized, b.normalized))); float sign_angle = sign * angle; Debug.Log("a到b的夹角是" + sign_angle); //b到a的夹角 //获取正负号 sign = Mathf.Sign(Vector3.Dot(c.normalized, Vector3.Cross(b.normalized, a.normalized))); sign_angle = sign * angle; Debug.Log("b到a的夹角是" + sign_angle); }
本文来自博客园,作者:星空探险家,转载请注明原文链接:https://www.cnblogs.com/PuppetLazy/p/17840906.html
分类:
Unity / 数学
标签:
Unity
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了