Java绘图程序

时间:2013-06-19 18:49:39

标签: java swing paint graphics2d

我已经启动了一个似乎工作正常的Java Paint程序......只有一个问题。在我的程序中,我设置它,以便使用MouseListener方法重绘()的椭圆并覆盖paintComponent(Graphics g)。问题是,当我将鼠标移动到快速时,它开始分离我的椭圆,而不是在拖动鼠标时制作一条平滑线。有没有办法解决这个问题。

P.S。请记住,我更倾向于使用fillOval方法而不是drawLine,因为我仍然想设置笔画。

提前致谢

2 个答案:

答案 0 :(得分:2)

有关绘画的两种常用方法,请参阅Custom Painting Approaches。当鼠标移动时,该示例绘制一个没有问题的矩形。

答案 1 :(得分:1)

您仍然可以设置用于在两点之间绘制线条的笔触。您应该存储上一个鼠标位置并在最后一个位置和当前位置之间进行插值以创建Line2D形状。然后创建一个具有所需椭圆宽度的笔划,并将该笔划应用于图形上下文,然后绘制线条。 This link有关于笔画和形状的更多信息。

如果你真的想继续绘制椭圆,你可以沿着起点/终点之间的线插值并在循环中绘制多个椭圆。