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

วิธาสร้าง Path Element Cubic Curve ใน JavaFX

คลาสนี้แทน Path Element cubic curve ช่วยวาด cubic curve จากพิกัดปัจจุบันไปยังพิกัดใหม่ที่ระบุ

ขั้นตอนสร้าง line path element:

  • สร้างอินสแตนซ์คลาส CubicCurveTo
  • ตั้งค่าคุณสมบัติด้วย setter หรือส่งให้คอนสตรัคเตอร์
  • สร้างอินสแตนซ์คลาส Path
  • ดึง observable list ของ Path ด้วย getElements()
  • เพิ่ม CubicCurveTo object เข้า observable list ด้วย add()
  • เพิ่ม path เข้า 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.CubicCurveTo;
import javafx.scene.shape.LineTo;
import javafx.scene.shape.MoveTo;
import javafx.scene.shape.Path;
import javafx.scene.shape.VLineTo;

public class CubicCurveExample extends Application {
    public void start(Stage stage) {
        // สร้าง PathElement objects
        MoveTo moveTo = new MoveTo(15, 15);
        LineTo line1 = new LineTo(100, 150);
        // สร้าง CubicCurveTo
        CubicCurveTo cubicCurveTo = new CubicCurveTo();
        cubicCurveTo.setControlX1(400.0f);
        cubicCurveTo.setControlY1(40.0f);
        cubicCurveTo.setControlX2(175.0f);
        cubicCurveTo.setControlY2(250.0f);
        cubicCurveTo.setX(500.0f);
        cubicCurveTo.setY(150.0f);
        // สร้าง VLineTo
        VLineTo vLine = new VLineTo();
        vLine.setY(80);
        // สร้าง Path
        Path path = new Path();
        path.getElements().addAll(moveTo, line1, cubicCurveTo, vLine);
        // ตั้งค่าอื่นๆ
        path.setStrokeWidth(8.0);
        path.setStroke(Color.DARKSLATEGREY);
        // เตรียม Stage
        Group root = new Group(path);
        Scene scene = new Scene(root, 595, 300, Color.BEIGE);
        stage.setTitle("JavaFX Example");
        stage.setScene(scene);
        stage.show();
    }
    public static void main(String args[]){
        launch(args);
    }
}

ผลลัพธ์

วิธาสร้าง Path Element Cubic Curve ใน JavaFX