我想使用Path2D类创建钢笔工具。我的问题是何时需要绘制形状,我们可以在每个交叉点看到一个点(请参阅所附图像)。

http://i.imgur.com/rCLLa.png

这是我的代码:

public void mouseDragged( MouseEvent e ) {
    path2D.reset();
    path2D.moveTo(last_x, last_y);
    path2D.lineTo( mouse_x, mouse_y );

    BasicStroke bs = new BasicStroke( 10, BasicStroke.CAP_ROUND, BasicStroke.JOIN_ROUND );

    // g is a Graphic2D object
    g.setStroke( bs );
    g.setColor( new Color( 0.0f, 0.0f, 0.0f, 0.3f) );
    g.draw( path2D );

    repaint()
}


我了解这是由透明性引起的,并且它不是绘制的唯一路径。仅尝试使用一个Path2D实例,但是在每次重绘时都会反复绘制路径,并且透明度消失。

任何解决方案??

提前致谢 !

最佳答案

答案是使用三重缓冲技术。

10-05 23:11