Java:将非奇异的Java.awt.geom.area分割为不同的奇异区域
为谷歌编辑:我找到了答案。我无法编写明确的代码,但步骤如下:Java:将非奇异的Java.awt.geom.area分割为不同的奇异区域,java,swing,geometry,awt,Java,Swing,Geometry,Awt,为谷歌编辑:我找到了答案。我无法编写明确的代码,但步骤如下: 创建大的非奇异区域(例如,减分或相交的结果) 如果是单数,则执行普通代码 其他: 创建一个ArrayList,将所有节放置到 创建路径迭代器(iter) 创建路径2D(路径) 而不是iter isDone(在循环结束时使用iter.next()) 创建双[2](coordsArray)数组以放置坐标 创建int(coords),当前段或iter。coordsArray永远是arg 如果是开关, 当iter类型为SEG_MOVE
- 创建大的非奇异区域(例如,减分或相交的结果)
- 如果是单数,则执行普通代码
- 其他:
- 创建一个ArrayList,将所有节放置到
- 创建路径迭代器(iter)
- 创建路径2D(路径)
- 而不是iter isDone(在循环结束时使用iter.next())
- 创建双[2](coordsArray)数组以放置坐标
- 创建int(coords),当前段或iter。coordsArray永远是arg
- 如果是开关,
- 当iter类型为SEG_MOVETO时,将路径移动到存储在coordsArray索引0,1中的坐标(x,y)
- 当类型为SEG_CLOSE时,创建新区域,路径为arg,添加到节数组中,然后是path.reset
- 否则,您的路径必须行到coordsArray中的coords存储,而不是moveTo
基本上,当[].[]==bigArea时,我想做[],[]=smallArea1,smallArea2。我不清楚你的问题。在分割区域后,你具体在努力解决什么问题?在主要帖子中增加了澄清。问题是我一开始无法分割这些区域。我得到一个单区域对象,由多个不接触的部分组成,因为有减法(相交)。我希望每个部分都成为自己的领域。这个问题没有简单的答案。您可能想查看openCV,看看这是否有助于您标记此JavaFX的原因是什么?Swing和JavaFX是不同的API。