我试图在C ++中实现一个确定任何给定多边形和金字塔切割的函数。
实际上,这实际上比我想象的要简单得多。首先对于金字塔的每个边缘,测试线 - 平面交点(给定的多边形是一个平面,由3个点组成)。这将导致切割平面上的新顶点。
其次,由于多边形不是无限平面,因此需要测试多边形边(三个)和每个边之间的线 - 线交点。
答案 0 :(得分:0)
确实,这不是一个简单的问题。为简单起见,我们假设没有平行线段。
首先确定凸多边形所在的平面。然后检测该平面与金字塔的交点。这导致第二个凸多边形。
现在你应该找到两个凸多边形的交点。如何做到这一点,您可以找到here。