Cubic curve เป็นฟังก์ชันพหุนามดีกรี 3 ของตัวแปรสองตัว
ใน JavaFX cubic curve แทนด้วยคลาส javafx.scene.shape.CubicCurve คลาสนี้มี 8 คุณสมบัติ:
- startX - พิกัด x จุดเริ่มต้น ตั้งค่าด้วย setStartX()
- startY - พิกัด y จุดเริ่มต้น ตั้งค่าด้วย setStartY()
- controlX1 - พิกัด x จุดควบคุมแรก ตั้งค่าด้วย setControlX1()
- controlY1 - พิกัด y จุดควบคุมแรก ตั้งค่าด้วย setControlY1()
- controlX2 - พิกัด x จุดควบคุมที่สอง ตั้งค่าด้วย setControlX2()
- controlY2 - พิกัด y จุดควบคุมที่สอง ตั้งค่าด้วย setControlY2()
- endX - พิกัด x จุดสิ้นสุด ตั้งค่าด้วย setEndX()
- endY - พิกัด y จุดสิ้นสุด ตั้งค่าด้วย setEndY()
ขั้นตอนสร้างวงกลม (CubicCurve):
- สร้างอินสแตนซ์คลาส
- ตั้งค่าคุณสมบัติที่ต้องการ ใช้ 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.CubicCurve;
public class DrawingCubicCurve extends Application {
@Override
public void start(Stage stage) {
// วาด cubic curve
CubicCurve cubicCurve = new CubicCurve();
// ตั้งค่าคุณสมบัติ
cubicCurve.setStartX(75.0f);
cubicCurve.setStartY(75.0f);
cubicCurve.setControlX2(250.0f);
cubicCurve.setControlY2(250.0f);
cubicCurve.setControlX1(400.0f);
cubicCurve.setControlY1(40.0f);
cubicCurve.setEndX(500.0f);
cubicCurve.setEndY(260.0f);
// ตั้งค่าอื่นๆ
cubicCurve.setFill(Color.CHOCOLATE);
cubicCurve.setStrokeWidth(8.0);
cubicCurve.setStroke(Color.BROWN);
// ตั้งค่า Scene
Group root = new Group(cubicCurve);
Scene scene = new Scene(root, 600, 300);
stage.setTitle("Drawing a cubic curve");
stage.setScene(scene);
stage.show();
}
public static void main(String args[]){
launch(args);
}
}
ผลลัพธ์
