Java - 绘制动态形状轮廓

时间:2012-05-20 23:54:06

标签: java swing graphics shape graphics2d

我希望通过将对象(带有绘图功能)添加到沿着形状周边的屏幕上的适当位置,为Shape(AWT)创建动态轮廓。我希望每个物体之间的距离大致均匀。 (对同样影响的另一种方法是没问题的。)

我如何获取这些物体的位置?我知道形状有一个路径迭代器,但我不知道如何使用它。

2 个答案:

答案 0 :(得分:2)

您可能会查看一个库,例如A Shape Diagram Editor中描述的库。

如果你想进行实验,GraphPanel是一个简单的对象绘图程序,它具有由边连接的可移动,可调整大小的彩色节点。如果节点稍微小一些,那么它们就是Shape上的可移动点,可以Polygon显示here进行迭代。

附录:我希望每个物体之间的距离大致均匀。

class Node公开了许多在List<Node>上运行的静态方法,例如selected。例如,现有实现用于将多个选择转换或调整为一个单元。 AlignDistribute的功能可以类似地实现。我会以LayoutManger作为后者的例子。

答案 1 :(得分:2)

使用FlatteningPathIterator获取Shape's路径的分数。

您也可以使用BasicStroke's方法

public Shape createStrokedShape(Shape s)

获得需要宽度的Shape's轮廓。