如何在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();
}
两个问题:
- 您没有将多边形添加到容器中
- 您没有定义多边形的点
你的代码应该是这样的:
@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 网站。
我正在尝试使用 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();
}
两个问题:
- 您没有将多边形添加到容器中
- 您没有定义多边形的点
你的代码应该是这样的:
@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 网站。