gpt4 book ai didi

math - 数学/物理负责人的最近方法问题

转载 作者:行者123 更新时间:2023-12-04 12:14:36 29 4
gpt4 key购买 nike

我正在使用 Segment to Segment 最接近方法,该方法将输出两个长度段之间的最近距离。每个段对应一个球体对象的起点和终点。速度只是从一个点到另一个点。

即使没有真正的碰撞,最近的方法也可以成功。因此,我目前正在使用 10 步法并计算两个球体沿两个线段移动时的距离。所以,基本上每段的长度就是物体在物理步骤中的遍历,半径就是物体的半径。通过步进,我可以知道它们在哪里发生碰撞,以及它们是否发生碰撞(对于大多数部分来说,排序)。

我觉得可能会有更好的东西。虽然我有点相信第一个最接近的方法调用是必需的,但我认为紧随其后的方法是 TAD 弱点。谁能帮我吗?如果需要,我可以说明这一点。

非常感谢!
alt text
(来源:yfrog.com)

最佳答案

(我不知道如何发布图形;请耐心等待。)

好的,我们有两个半径为 r1 和 r2 的球体,从位置 X1 和 X2 开始,以速度 V1 和 V2(X 和 V 是矢量)移动。

从球体 2 看球体 1 的速度为

V = V1-V2

它的方向是
v = V/|V|

球体 1 必须行进(在球体 2 的框架中)到最近的方法的距离是
s = Xv

如果 X 是初始间隔,则最近接近的距离为
h = |X - Xv|

这是图形可以提供帮助的地方。如果 h > r1+r2,则不会发生碰撞。假设 h < r1+r2。碰撞时,两个球心和最接近的点会形成一个直角三角形。从球体 1 的中心到最近点的距离是
u = sqrt((r1 + r2)^2 - h^2)

所以球体 1 走过的距离是
s - u

现在看看球体 1 是否在给定的间隔内行进那么远。如果是这样,那么您就知道球体的确切时间和位置(您必须从球体 2 的框架移回,但这很容易)。如果没有,就没有碰撞。

关于math - 数学/物理负责人的最近方法问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2568914/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com