我在3D世界中有两个共面三角形,我需要找到一个多边形,这是它们之间的交点。 但是,三角形并不总是沿着轴,但它们将始终是共面的。 我可以使用什么算法来查找该多边形?我正在努力寻找一种可以得到这个的资源。C++首选。
如果它们是共面的,它们都在 3D 平面上,如下所示:
p = p0 + p1*s + p2*t
这个平面上的所有三角形顶点都可以表示为 s 和 t。您可以选择 p0 作为三角形顶点之一,将 p1 和 p2 作为三角形的边。然后求解每个三角形顶点的 p 的 s 和 t。然后用 s,t 坐标在 2d 中解决问题。完成后,您只需使用结果 s 和 t 坐标返回 3d。