Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Java

จะสร้างรูปหลายเหลี่ยมโดยใช้ JavaFX ได้อย่างไร?


รูปหลายเหลี่ยมเป็นรูปปิดที่เกิดขึ้นโดยใช้จำนวน n เส้นที่มีอยู่ในระนาบเดียวกัน ใน JavaFX รูปหลายเหลี่ยมจะแสดงโดย javafx.scene.shape.Polygon ชั้นเรียน

ในการสร้างรูปหลายเหลี่ยม คุณต้อง -

  • ยกตัวอย่างคลาสนี้

  • ส่งผ่านจุดเริ่มต้นและจุดสิ้นสุดของส่วนของเส้นตรงเพื่อวาดรูปหลายเหลี่ยมไปยังคลาสโดยส่งผ่านเป็นอาร์กิวเมนต์ไปยังตัวสร้างหรือโดยใช้เมธอด getPoints() เป็น -

polygon.getPoints().addAll(new Double[]{ List of XY coordinates separated by
commas });
  • เพิ่มโหนดที่สร้าง (รูปร่าง) ให้กับวัตถุกลุ่ม

ตัวอย่าง

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) {
      //Drawing a polygon
      Polygon polygon1 = new Polygon();
      //Setting the properties of the ellipse
      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
      });
      //Setting other properties
      polygon1.setFill(Color.DARKCYAN);
      polygon1.setStrokeWidth(8.0);
      polygon1.setStroke(Color.DARKSLATEGREY);
      //Drawing a polygon
      Polygon polygon2 = new Polygon();
      //Setting the properties of the ellipse
      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
      });
      //Setting other properties
      polygon2.setFill(Color.CHOCOLATE);
      polygon2.setStrokeWidth(8.0);
      polygon2.setStroke(Color.BROWN);
      //Setting the 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);
   }
}

ผลลัพธ์

จะสร้างรูปหลายเหลี่ยมโดยใช้ JavaFX ได้อย่างไร?