1

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

多边形 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?),然后能够引用这两个矩形。

谢谢你。

4

1 回答 1

1

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

它们也应该Area在从Polygon.

它有效吗?

于 2012-11-19T11:38:57.387 回答