c# – 从角度A移动到B,找到最短的方向
发布时间:2020-12-16 01:46:59 所属栏目:百科 来源:网络整理
导读:我有一个角度A和一个目标角度B. 角度范围是-180到180 我希望角度A朝向角度B移动X度 我面临的问题是如果A是170并且B是-170,那么增加到180并且跳到-180显然会更快,但是在比较角度时我总是得到负X.因此,不是采取最快的方式,它将采取最长的方式. 我希望有人能理
我有一个角度A和一个目标角度B.
角度范围是-180到180 我希望角度A朝向角度B移动X度 我面临的问题是如果A是170并且B是-170,那么增加到180并且跳到-180显然会更快,但是在比较角度时我总是得到负X.因此,不是采取最快的方式,它将采取最长的方式. 我希望有人能理解我制定的问题:) A = A + ((A-B) / Math.Abs(A-B)) * speed * -1; 编辑:添加代码 解决方法
计算两个角度之间的差异.如果得到的角度x大于180度,则使用该角度沿另一个方向行走:360-x.
如果使用0到360的范围,则可以更轻松地计算差异. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |