来自破碎的直线多边形的参考矩形

时间:2012-11-19 11:11:54

标签: java polygon

有人可以指导我如何在java中实现以下内容:我需要在从任何直线多边形分割成两个或多个部分之后引用两个矩形。

Polygon http://img853.imageshack.us/img853/2475/picture1eu.jpg

我的算法:

ArrayList coordinates;
for (int a = 0; a < coordinates.size(); a++)
{
    if (coordinates[a] at point of concave)
    {
        Draw intersecting line North Or South from coordinates[a] depending on 
        which direction remains inside the polygon.
    }
}

在这个特定的图表中,两个凹边位于同一个x轴上,但情况并非总是如此。

我猜我需要使用Shape和Area类?我想我最挣扎的是我用什么来进行分割(常规.drawLine?)然后能够引用两个矩形。

谢谢。

1 个答案:

答案 0 :(得分:1)

您可以获取可能的矩形列表,找到4个顶点的所有可能组合。然后只留下矩形(检查邻居顶点的x和y)。然后检查它们是否相互交叉。

此外,它们应位于Area创建的Polygon的主要Shape(使用contains())方法中。

有效吗?