Lớp QuadCurveTo trong JavaFX đại diện cho phần tử đường cong bậc hai (quadratic curve). Nó cho phép vẽ một đường cong bậc hai từ tọa độ hiện tại đến tọa độ mới được chỉ định.
Các bước tạo đường cong bậc hai
Khởi tạo lớp QuadCurveTo.
Thiết lập giá trị cho các thuộc tính của lớp này thông qua phương thức setter hoặc truyền trực tiếp vào constructor.
Khởi tạo lớp Path.
Lấy danh sách quan sát (observable list) của Path bằng phương thức getElements().
Thêm đối tượng QuadCurveTo vừa tạo vào danh sách quan sát bằng phương thức add().
Cuối cùng, thêm Path vào đối tượng Group.
Ví dụ minh họa
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.LineTo;
import javafx.scene.shape.MoveTo;
import javafx.scene.shape.Path;
import javafx.scene.shape.QuadCurveTo;
import javafx.scene.shape.VLineTo;
public class QuadraticCurveToExample extends Application {
@Override
public void start(Stage stage) {
// Tạo các đối tượng PathElement
MoveTo moveTo = new MoveTo(15, 15);
LineTo line1 = new LineTo(100, 150);
// Khởi tạo lớp QuadCurveTo
QuadCurveTo quadCurveTo = new QuadCurveTo();
// Thiết lập thuộc tính
quadCurveTo.setX(500.0f);
quadCurveTo.setY(220.0f);
quadCurveTo.setControlX(250.0f);
quadCurveTo.setControlY(0.0f);
// Tạo đối tượng VLineTo
VLineTo vLine = new VLineTo();
vLine.setY(80);
// Tạo Path
Path path = new Path();
path.getElements().addAll(moveTo, line1, quadCurveTo, vLine);
// Thiết lập các thuộc tính khác
path.setStrokeWidth(8.0);
path.setStroke(Color.DARKSLATEGREY);
// Chuẩn bị Stage
Group root = new Group(path);
Scene scene = new Scene(root, 595, 300, Color.BEIGE);
stage.setTitle("Ví dụ JavaFX - Đường cong bậc hai");
stage.setScene(scene);
stage.show();
}
public static void main(String[] args) {
launch(args);
}
}
Kết quả đầu ra
