问题:
确定哪个象限包含4-gon的大部分区域。
输入:包含多边形的无序顶点的4(x,y)对的列表。
输出:一个值,指示多边形的大部分区域落入四个象限中的哪一个。
4-gon大致看起来像是矩形。"具体而言,它是一个由3D投影矩阵转换的矩形。
这些点标记为0,1,2和3.还绘制了与轴的交点。在这种情况下,答案将是第一象限(右上角)。
我目前的解决方案是按顺时针顺序排列点数。然后,识别通过x和y轴切割较大多边形而创建的(最多4个)多边形的顶点。在此之后,我使用鞋带公式计算每个的面积,然后返回最大的象限。在所有边缘情况下,它比我想要的有点混乱和慢。该函数用于实时应用程序的内部循环。谁有更好的东西?
我使用的是NumPy / Python / etc,但欢迎使用其他语言的解决方案。
谢谢!