【发布时间】:2015-05-27 05:35:21
【问题描述】:
据我所知,找到 3D 点到三角形之间距离的方法是检查该点是否位于三角形平面内,因此该距离将是与三角形平面最近的距离,否则如果该点位于三角形之外,则该距离将是最接近三角形边缘之一的距离。
上述方法只有一个问题是我不知道如何检测一个点是否位于三角形平面内。
或者有没有其他更好的方法来计算距离?
如果你有一些代码示例会更有帮助。
【问题讨论】:
据我所知,找到 3D 点到三角形之间距离的方法是检查该点是否位于三角形平面内,因此该距离将是与三角形平面最近的距离,否则如果该点位于三角形之外,则该距离将是最接近三角形边缘之一的距离。
上述方法只有一个问题是我不知道如何检测一个点是否位于三角形平面内。
或者有没有其他更好的方法来计算距离?
如果你有一些代码示例会更有帮助。
【问题讨论】:
你可以遵循这个非常简单的方法:作为输入,你有三角形的 3 个顶点 A、B 和 C 以及一个点 P。得到平面 n 的法向量:
n = (A - B) x (C - B)
那么要检查P是否属于平面,你只需检查向量是否
m = (P - B) x (P - C)
与 n 成正比。
【讨论】: