通过旋转炮塔使计算机实现360度= 0度

通过旋转炮塔使计算机实现360度= 0度,第1张

通过旋转炮塔使计算机实现360度= 0度

如果您需要在一个方向上旋转180度以上以对准转塔,那么在另一个方向上旋转会更快。

我只是检查一下,然后朝适当的方向旋转

if (objdeg != gundeg){    if ((gundeg - objdeg) > 180)       gundeg++;    else       gundeg--;}
编辑:新解决方案

我已根据评论中的反馈改进了解决方案。这确定目标是在炮塔的“左”还是“右”,并确定转弯的方向。如果目标距离超过180度,它将反转该方向。

if (objdeg != gundeg){  int change = 0;  int diff = (gundeg - objdeg)%360;  if (diff < 0)     change = 1;  else     change = -1;  if (Math.Abs(diff) > 180)     change = 0 - change;  gundeg += change; }


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5652384.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存