Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/323.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java-绘制动态形状轮廓_Java_Swing_Graphics_Shape_Graphics2d - Fatal编程技术网

Java-绘制动态形状轮廓

Java-绘制动态形状轮廓,java,swing,graphics,shape,graphics2d,Java,Swing,Graphics,Shape,Graphics2d,我希望通过在屏幕上沿形状周长的适当位置添加对象(具有绘图功能),为形状(AWT)创建动态轮廓。我希望每个物体之间的距离大致相等。(对于相同的影响,可以采用其他方法。) 如何获取这些对象的位置?我知道形状有一个路径迭代器,但我不知道如何使用它 您可以查看中所述的库 如果您想进行实验,这是一个简单的对象绘制程序,它具有可移动、可调整大小、由边连接的彩色节点。如果节点稍微小一点,它们将是形状上的可移动点,可以迭代,如多边形所示 附录:我希望每个物体之间的距离大致相等 类节点公开了许多在列表上操作的静态

我希望通过在屏幕上沿形状周长的适当位置添加对象(具有绘图功能),为
形状
(AWT)创建动态轮廓。我希望每个物体之间的距离大致相等。(对于相同的影响,可以采用其他方法。)


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

您可以查看中所述的库

如果您想进行实验,这是一个简单的对象绘制程序,它具有可移动、可调整大小、由边连接的彩色节点。如果节点稍微小一点,它们将是
形状
上的可移动点,可以迭代,如
多边形
所示

附录:我希望每个物体之间的距离大致相等


类节点
公开了许多在
列表
上操作的静态方法,例如
所选
。例如,现有的实现可以将多个选择作为一个单元进行转换或调整大小。
Align
Distribute
的功能可以类似地实现。我将以
layoutmanager
作为后者的示例。

您可以查看中描述的库

如果您想进行实验,这是一个简单的对象绘制程序,它具有可移动、可调整大小、由边连接的彩色节点。如果节点稍微小一点,它们将是
形状
上的可移动点,可以迭代,如
多边形
所示

附录:我希望每个物体之间的距离大致相等


类节点
公开了许多在
列表
上操作的静态方法,例如
所选
。例如,现有的实现可以将多个选择作为一个单元进行转换或调整大小。
Align
Distribute
的功能可以类似地实现。我将把
layoutmanager
作为后者的一个例子。

使用
flattingPathIterator
获取
形状的路径的点

您还可以使用
BasicStroke的
方法

public Shape createStrokedShape(Shape s)

要获取具有所需宽度的
形状
轮廓。

使用
展平路径迭代器
获取
形状
路径的点

您还可以使用
BasicStroke的
方法

public Shape createStrokedShape(Shape s)


获取具有所需宽度的
形状的
轮廓。

…问题是什么?如何获取这些对象的位置?我知道形状有一个路径迭代器,但我不知道如何使用它。如果添加3个点来形成一个三角形形状,那么路径迭代器中只会返回这3个点。那么圆呢?那会退还多少分?2.在这种情况下,我将如何沿其周长创建20个均匀分布的对象?这就是我在这里想要的…问题是什么?我怎样才能获得这些物体的位置?我知道形状有一个路径迭代器,但我不知道如何使用它。如果添加3个点来形成一个三角形形状,那么路径迭代器中只会返回这3个点。那么圆呢?那会退还多少分?2.在这种情况下,我将如何沿其周长创建20个均匀分布的对象?“这就是我在这里追求的东西。”安德烈·霍姆普森:说得好;我忽略了问题的那个方面。以上更多。我看不出这有什么帮助。问题是沿形状周长找到均匀分布的点数。也许我对此不是很清楚。这取决于
形状
;这是一个依赖于圆的参数方程的。它可以用椭圆的参数方程来概括。因此,没有简单的方法可以在任何形状上获得均匀分布的点?我在界面中没有看到这样的方法,但您可以创建自己的子界面,并委托给您打算支持的现有实现。@AndrewThompson:好的观点;我忽略了问题的那个方面。以上更多。我看不出这有什么帮助。问题是沿形状周长找到均匀分布的点数。也许我对此不是很清楚。这取决于
形状
;这是一个依赖于圆的参数方程的。它可以用椭圆的参数方程来推广。因此,没有简单的方法可以在任何形状上获得均匀分布的点?我在接口中没有看到这样的方法,但您可以创建自己的子接口,并委托给您打算支持的现有实现。