我需要用一条线分割多边形,类似于:How can I split a Polygon by a Line? ,但我实际上并不关心生成的多边形,我只想知道直线每一侧的面积。
我知道我可以进行拆分并计算每个结果部分的面积,但我想知道如果我只需要面积,是否有更有效的算法。
例如,在下图中,黄色形状显示了一个原始多边形,穿过它的线显示了我想要如何分割它。请注意,分割线总是在顶点之间,但不一定穿过整个多边形。 (注意:切割线似乎穿过第三个顶点的事实只是一个意外:情况可能是这样,但不一定如此)。
红色和绿色的形状显示了分割结果,我感兴趣的是红色多边形(或绿色多边形)的总面积
最佳答案
如果您可以确定分割的交点,那么您可以计算第一个的面积,然后从总面积中减去它来确定第二个的面积。
关于algorithm - 计算分割多边形的面积,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18598136/