JavaFx Canvas Eraser Tool

时间:2014-09-12 10:37:17

标签: java javafx

我对JavaFx中的Canvas有一个非常令人尴尬的简单问题。

我需要实现琐碎的绘画/擦除工具,并且我已经使用了绘画工具,但我无法使用该工具。

我已经尝试了clip()clearRect(),但在我的案例中没有做任何事情......不确定我在那里做错了什么。

但是,理想情况下,我希望擦除工具的工作方式与绘图工具相同(只需要更大的笔划),而不是clearRect() - 方法。我可以通过混合模式或其他方式实现这一目标吗?

这是我目前的代码:

canvas.setOnMousePressed(e -> {
            if (e.getButton() == MouseButton.PRIMARY) {

                if (erasing) {

                } else {
                    gfx.beginPath();
                    gfx.moveTo(e.getX(), e.getY());
                    gfx.stroke();
                }

                e.consume();
            }
        });

canvas.setOnMouseDragged(e -> {
            if (e.getButton() == MouseButton.PRIMARY) {
                if (erasing) {

                } else {
                    gfx.lineTo(e.getX(), e.getY());
                    gfx.stroke();
                }
                e.consume();
            }
        });

0 个答案:

没有答案