加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 两个碰撞的圆圈,无法将公式转换为代码

发布时间:2020-12-15 21:29:18 所属栏目:百科 来源:网络整理
导读:我处于可以检测刚体2D物理程序中圆圈碰撞的水平. 这些圆圈具有随机的x,y速度. 当他们中的任何一个击中他们中的任何一个时,我可以告诉他们相互碰撞然后!这一步就是问题所在. 我试图获取速度的X和Y值并根据碰撞点的轴转换它,我的意思是法向力的轴和另一个与法
我处于可以检测刚体2D物理程序中圆圈碰撞的水平.
这些圆圈具有随机的x,y速度.
当他们中的任何一个击中他们中的任何一个时,我可以告诉他们相互碰撞然后!这一步就是问题所在.
我试图获取速度的X和Y值并根据碰撞点的轴转换它,我的意思是法向力的轴和另一个与法向力轴相比的轴. perpandacular轴称为切线轴……对吗?

我使用sin cos tan,但问题是因为s??in cos tan只返回一个始终是右侧的角度,所以我的对象永远不会移动到左侧….所以所有碰撞对象的X轴动量是固定在右侧.
这导致了很多问题,我无法找到解决方法.
我会非常感激甚至很少的建议.
谢谢.

解决方法

你不应该使用三角函数(sin,cos,tan等).

您希望在碰撞方向上对物体施加脉冲,即脉冲是碰撞方向矢量的某个倍数.计算物体的动量,然后简单地添加脉冲.

如果你正在进行简单的弹性碰撞,那么动量和能量就会得到保留.鉴于这些限制,您可以计算出冲动. This wikipedia article有详细信息.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读