关于球体碰撞的问题
来源:2-8 算法可视化中的MVC
seeme0726
2017-10-20
首先第一个要解决的就是怎么判断球体有没有发生了碰撞,现在我在这里难住了, 根据我们已知的条件 (1)所有小球的数组, (2)每个小球的半径, (3)每个小球的圆心坐标, 我们要根据这三个条件来判断小球是否发生了碰撞,因为圆跟圆的碰撞,碰撞点可能是圆周上的任意一点,所以根据坐标点计算,好像是不太行了,有没有哪位同学知道比较好点的办法,分享一下。谢谢了
写回答
1回答
-
其实这个问题我本来计划单独拿出一章进行介绍的,但是最后由于时间原因,没有作介绍。
简单来说,你给出的条件落了一个非常重要的条件,我们还知道每一个小球的速度(方向和大小)。所以,每两个小球之间发生碰撞(如果发生的话)的位置是可以计算的:)
但即使加上这个条件,完成这个任务依然不容易。需要一定的物理知识。与此同时,这个问题有很多优化方案,可以深度结合数据结构的使用。如果感兴趣的话,可以查询一下和“碰撞检测”这个领域相关的资料:)
142022-08-05
相似问题