Polygon เป็นรูปปิดที่ประกอบด้วยเส้น n เส้นอยู่ในระนาบเดียวกัน ใน JavaFX polygon แทนด้วยคลาส javafx.scene.shape.Polygon
ขั้นตอนสร้าง polygon:
- สร้างอินสแตนซ์คลาส
- ส่งจุดเริ่มต้นและจุดสิ้นสุดของแต่ละเส้นเพื่อวาด polygon ให้คลาส โดยส่งเป็นอาร์กิวเมนต์ให้คอนสตรัคเตอร์ หรือใช้เมธอด getPoints() ดังนี้:
polygon.getPoints().addAll(new Double[]{ รายการพิกัด XY คั่นด้วยคอมมา });
- เพิ่มโหนด (shape) ที่สร้างเข้าไปใน Group object
ตัวอย่าง
import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.paint.Color;
import javafx.stage.Stage;
import javafx.scene.shape.Polygon;
public class DrawingPolygon extends Application {
public void start(Stage stage) {
// วาด polygon แรก
Polygon polygon1 = new Polygon();
polygon1.getPoints().addAll(new Double[]{
250.0, 50.0, 175.0, 150.0,
175.0, 250.0, 200.0, 250.0,
350.0, 150.0
});
polygon1.setFill(Color.DARKCYAN);
polygon1.setStrokeWidth(8.0);
polygon1.setStroke(Color.DARKSLATEGREY);
// วาด polygon ที่สอง
Polygon polygon2 = new Polygon();
polygon2.getPoints().addAll(new Double[]{
410.0, 160.0, 430.0, 130.0, 470.0, 130.0,
490.0, 160.0, 470.0, 200.0, 430.0, 200.0
});
polygon2.setFill(Color.CHOCOLATE);
polygon2.setStrokeWidth(8.0);
polygon2.setStroke(Color.BROWN);
// ตั้งค่า Scene
Group root = new Group(polygon1, polygon2);
Scene scene = new Scene(root, 595, 300, Color.BEIGE);
stage.setTitle("Drawing Polygon");
stage.setScene(scene);
stage.show();
}
public static void main(String args[]){
launch(args);
}
}
ผลลัพธ์
