计算3D网格表面两点之间最短路径的算法

我正在寻找一种算法来计算以下内容:

我有:

  1. 3D三角形网格。三角形不一定位于一个平面上。两个相邻三角形的范数矢量之间的角度小于90度。

  2. 两点。这两个点位于三角形网格的边缘或网格的三角形内部。

我需要计算折线,该折线表示网格上两点之间的路径" title="最短路径">最短路径。

这样做的最简单和/或最有效的策略是什么?

回答:

就目前而言,您的问题还没有得到很好的定义。取决于将线段“投影”到网格上的方向,可以有很多解决方案。

一旦选择了投影方向,就将网格展平到垂直于投影方向的平面上。此时,您的网格是2d边(线段)的集合;只需确定每个边与目标线段的交点(如果有)。


现在,更新的问题已得到很好的定义。由于我对原始问题的回答(上面)已被标记为已接受,所以大概意味着这意味着以下评论中给出的信息实际上是对更新问题真正“接受”的信息。我总结一下:

  • 谷歌搜索“ 3d网格上的最短距离”会显示一些相关信息,例如“三角网格上的最短路径近似”

以上是 计算3D网格表面两点之间最短路径的算法 的全部内容, 来源链接: utcz.com/qa/397684.html

回到顶部