如何在JavaFX中绘制等边三角形?

How to draw an equilateral triangle in JavaFX?

我正在尝试使用 JavaFX 创建等边三角形。据说使用Polygon和setLayoutX()setLayoutY()。那么该怎么做呢?这是我试过的代码:

@Override public void start(Stage stage) throws Exception {
    stage.setTitle("Board");
    StackPane root = new StackPane();
    Scene scene = new Scene(root, 600, 519);
    stage.setScene(scene);
    Polygon triangle = new Polygon();
    stage.show();
}

两个问题:

  1. 您没有将多边形添加到容器中
  2. 您没有定义多边形的点

你的代码应该是这样的:

@Override
public void start (Stage stage) throws Exception {
    stage.setTitle("Board");
    Polygon triangle = new Polygon();
    //triangle.setLayoutX(100);
    //triangle.setLayoutY(400);
    triangle.getPoints()
        .addAll(new Double[] {300.0, 50.0, 250.0, 100.0, 350.0, 100.0,});
    Group root = new Group(triangle); // You can replace with StackPane for center alignment
    Scene scene = new Scene(root, 600, 519);
    stage.setScene(scene);
    stage.show();
}

完成后,您应该会看到如下图所示的内容。您需要计算出三角形的 (x,y) 坐标。

当我取消注释 setLayoutX()setLayoutY() 行时,结果如下图所示。

如果您需要 Java FX 教程中的绘图,请查看 this 网站。