如果形状不在画布中,请移动画布

时间:2018-12-14 22:03:58

标签: canvas javafx graphics shapes

所以我有一小段代码:

@FXML
private Canvas konj;

@Override
public void initialize(URL url, ResourceBundle rb) {
    GraphicsContext gc = konj.getGraphicsContext2D();
    drawShapes(gc);
}

private void drawShapes(GraphicsContext gc) {
    gc.setFill(Color.GREEN);
    gc.setStroke(Color.BLUE);
    gc.strokeRoundRect(160, 60, 30, 30, 10, 10);
    gc.fillArc(-30, 110, 30, 30, 45, 240, ArcType.OPEN); //outside canvas!
    gc.fillArc(60, 110, 30, 30, 45, 240, ArcType.CHORD);
    gc.fillArc(110, 110, 30, 30, 45, 240, ArcType.ROUND);

}

结果是:

image

如您所见,尽管我有四个形状,但只有三个形状可见。由于其中之一的x值为负(-30),因此不会显示。因此,我为画布添加了一个滚动窗格,但结果仍然相同。

0 个答案:

没有答案