如何在Java中绘制Bézier路径的控制点?

时间:2010-03-28 16:19:52

标签: java drawing vector-graphics bezier java-2d

我创建了一条Bézier曲线路径,它可以很好地绘制路径。但我不知道如何将控制点与Path一起绘制。这是可能的还是我必须在另一个数据结构中跟踪它们?

更新:我想绘制控制点的原因是,我会让用户使用控制点上的句柄编辑曲线。

我正在创建路径:

Path2D.Double path = new Path2D.Double();
path.moveTo(0,0);
path.curveTo(5, 6, 23, 12, 45, 54);
path.curveTo(34, 23, 12, 34, 2, 3);

用它绘制:

g2.draw(path);

我已经使用 PathIterator 作为 trashgod 进行了测试,但如果我希望用户能够编辑控制点,则很难管理曲线

1 个答案:

答案 0 :(得分:2)

您可以获取PathIterator来引用Shape中每个点的坐标数组。您可以使用它们在编辑时沿曲线绘制调整大小手柄和控制点。这是使用自定义曲线实现的example编辑。