Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我需要知道最接近 AABB 的线段上的点。我知道这条线绝对不会与盒子相交。
作为一种可能的简化,盒子的一个尺寸是零(大部分时间),所以我只需要找到线段上离一个面最近的点。(我可以扩展它以检查边缘情况下 AABB 的所有 6 个面)
只是为了确认
我找到了一个可能的解决方案。我在盒子的 12 个边缘中的每一个上找到最近的点(假设是完整的 3D 盒子),我还将线段的每一端夹在盒子上并评估与线段的距离。然后我从这 14 个点中选择最接近的,这似乎有效。增加 2 个夹点的原因是当线段被限制在盒子的 2 个维度内时,例如,想想棒棒糖,在本例中,最近的点不在其中一个边上。