โดยทั่วไป เส้นโค้งมน (Arc) เป็นส่วนเล็กๆ ของโค้ง ใน JavaFX แทนด้วยคลาส javafx.scene.shape.Arc คลาสนี้มี 6 คุณสมบัติ ดังนี้:
- centerX - พิกัด x ของจุดศูนย์กลางของโค้งมน กำหนดค่าได้ด้วย setCenterX()
- centerY - พิกัด y ของจุดศูนย์กลางของโค้งมน กำหนดค่าได้ด้วย setCenterY()
- radiusX - ความกว้างของวงรีเต็มรูปที่โค้งมนเป็นส่วนหนึ่ง กำหนดค่าได้ด้วย setRadiusX()
- radiusY - ความสูงของวงรีเต็มรูปที่โค้งมนเป็นส่วนหนึ่ง กำหนดค่าได้ด้วย setRadiusY()
- startAngle - มุมเริ่มต้นของโค้งมน (องศา) กำหนดค่าได้ด้วย setStartAngle()
- length - ขอบเขตมุมของโค้งมน (องศา) กำหนดค่าได้ด้วย setLength()
เพื่อสร้างโค้งมน ต้อง:
- สร้างอินสแตนซ์ของคลาสนี้
- กำหนดคุณสมบัติที่ต้องการโดยใช้เมธอด setter หรือส่งผ่านเป็นอาร์กิวเมนต์ให้คอนสตรักเตอร์
- เพิ่มโหนด (shape) ที่สร้างขึ้นเข้าไปในอ็อบเจ็กต์ Group
ตัวอย่างโค้ด
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.Arc;
import javafx.scene.shape.ArcType;
public class DrawingArc extends Application {
@Override
public void start(Stage stage) {
// วาดโค้งกำลังสาม
Arc arc = new Arc();
// กำหนดคุณสมบัติ
arc.setCenterX(280);
arc.setCenterY(230);
arc.setRadiusX(100);
arc.setRadiusY(180);
arc.setStartAngle(45);
arc.setLength(100);
arc.setType(ArcType.ROUND);
// กำหนดคุณสมบัติอื่นๆ
arc.setFill(Color.CHOCOLATE);
arc.setStrokeWidth(8.0);
arc.setStroke(Color.BROWN);
// ตั้งค่า Scene
Group root = new Group(arc);
Scene scene = new Scene(root, 595, 300, Color.BEIGE);
stage.setTitle("การวาดโค้งมน");
stage.setScene(scene);
stage.show();
}
public static void main(String[] args) {
launch(args);
}
}
ผลลัพธ์
