วงกลมเป็นเส้นปิดที่ทุกจุดห่างจากจุดกลางเท่ากัน วงกลมถูกกำหนดโดยจุดกลางและรัศมี: ระยะจากจุดกลางถึงจุดใดจุดหนึ่งบนวงกลม
ใน JavaFX ellipse แทนด้วยคลาส javafx.scene.shape.Ellipse คลาสนี้มี 4 คุณสมบัติ:
- centerX - พิกัด x จุดกลาง ellipse ตั้งค่าด้วย setCenterX()
- centerY - พิกัด y จุดกลาง ellipse ตั้งค่าด้วย setCenterY()
- radiusX - ความกว้างของ ellipse ในพิกเซล ตั้งค่าด้วย setRadiusX()
- radiusY - ความสูงของ ellipse ในพิกเซล ตั้งค่าด้วย setRadiusY()
ขั้นตอนสร้างวงกลม (Ellipse):
- สร้างอินสแตนซ์คลาส
- ตั้งค่าคุณสมบัติที่ต้องการ ใช้ setter หรือส่งให้คอนสตรัคเตอร์
- เพิ่มโหนด (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.Ellipse;
public class DrawingEllipse extends Application {
public void start(Stage stage) {
// วาด Ellipse แรก
Ellipse ellipse1 = new Ellipse();
ellipse1.setCenterX(200.0);
ellipse1.setCenterY(150.0);
ellipse1.setRadiusX(100);
ellipse1.setRadiusY(50);
ellipse1.setFill(Color.DARKCYAN);
ellipse1.setStrokeWidth(8.0);
ellipse1.setStroke(Color.DARKSLATEGREY);
// วาด Ellipse ที่สอง
Ellipse ellipse2 = new Ellipse();
ellipse2.setCenterX(450.0);
ellipse2.setCenterY(150.0);
ellipse2.setRadiusX(35);
ellipse2.setRadiusY(100);
ellipse2.setFill(Color.CHOCOLATE);
ellipse2.setStrokeWidth(8.0);
ellipse2.setStroke(Color.BROWN);
// ตั้งค่า Scene
Group root = new Group(ellipse1, ellipse2);
Scene scene = new Scene(root, 595, 300, Color.BEIGE);
stage.setTitle("Drawing an Ellipse");
stage.setScene(scene);
stage.show();
}
public static void main(String args[]){
launch(args);
}
}
ผลลัพธ์
