JavaFX | QuadCurve 示例
QuadCurve 是 JavaFX 的一部分。 Quadcurve 类在 (x, y) 坐标空间中定义了一个二次贝塞尔参数曲线段。曲线经过起点和终点,也经过控制点。指定的控制点用作贝塞尔控制点。
该类的构造函数是:
- QuadCurve() : 创建一个空的四边形曲线实例
- QuadCurve(double sX, double sY, double cX, double cY, double eX, double eY) :创建具有指定起点、终点和控制点的四边形曲线的新实例。
常用方法
Method | Explanation |
---|---|
getControlX() | returns the x coordinate for the control point |
getControlY() | returns the y coordinate for the control point |
getEndX() | returns the x coordinate for the end point |
getEndY() | returns the y coordinate for the end point |
getStartX() | returns the x coordinate for the start point |
getStartY() | returns the y coordinate for the start point |
setControlX(double value) | sets the x coordinate for the control point |
setControlY(double value) | sets the y coordinate for the control point |
setEndX(double value) | sets the x coordinate for the end point |
setEndY(double value) | sets the y coordinate for the end point |
setStartX(double value) | sets the x coordinate for the start point |
setStartY(double value) | sets the y coordinate for the start point |
以下程序将说明 QuadCurve 的使用
用于创建四边形曲线的Java程序
该程序创建一个名为 quad_curve 的 QuadCurve(控制点、起点和终点作为参数传递)。
QuadCurve 将在场景内创建,而场景又将托管在舞台内。函数setTitle() 用于为舞台提供标题。然后创建一个组,并附加 quad_curve。该组已连接到现场。最后调用 show() 方法显示最终结果。
// Java program to create a quad curve
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.shape.DrawMode;
import javafx.scene.layout.*;
import javafx.event.ActionEvent;
import javafx.scene.shape.QuadCurve;
import javafx.scene.control.*;
import javafx.stage.Stage;
import javafx.scene.Group;
public class quad_curve_0 extends Application {
// launch the application
public void start(Stage stage)
{
// set title for the stage
stage.setTitle("creating quad_curve");
// create a quad_curve
QuadCurve quad_curve = new QuadCurve(10.0f, 10.0f, 120.0f, 240.0f, 160.0f, 70.0f);
// create a Group
Group group = new Group(quad_curve);
// translate the quad_curve to a position
quad_curve.setTranslateX(100);
quad_curve.setTranslateY(100);
// create a scene
Scene scene = new Scene(group, 500, 300);
// set the scene
stage.setScene(scene);
stage.show();
}
public static void main(String args[])
{
// launch the application
launch(args);
}
}
输出
:
用于创建四边形曲线并为四边形曲线设置填充的Java程序
该程序创建一个名为 quad_curve 的 QuadCurve(控制点、起点和终点是使用 setControlX()、setControlY()、setStartX()、setStartY()、setEndX() 和 setEndY() 函数设置的)。 QuadCurve 将在场景内创建,而场景又将托管在舞台内。函数setTitle() 用于为舞台提供标题。然后创建一个组,并附加 quad_curve。该组附加到场景中。最后调用 show() 方法显示最终结果。函数setFill() 用于设置四边形曲线的填充。
// Java program to create a quad curve
// and set a fill for quad curve
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.shape.DrawMode;
import javafx.scene.layout.*;
import javafx.event.ActionEvent;
import javafx.scene.shape.QuadCurve;
import javafx.scene.control.*;
import javafx.stage.Stage;
import javafx.scene.Group;
import javafx.scene.paint.Color;
public class quad_curve_1 extends Application {
// launch the application
public void start(Stage stage)
{
// set title for the stage
stage.setTitle("creating quad_curve");
// create a quad_curve
QuadCurve quad_curve = new QuadCurve();
// set start
quad_curve.setStartX(10.0f);
quad_curve.setStartY(10.0f);
// set control coordinates
quad_curve.setControlX(120.0f);
quad_curve.setControlY(240.0f);
// set end coordinates
quad_curve.setEndX(160.0f);
quad_curve.setEndY(70.0f);
// create a Group
Group group = new Group(quad_curve);
// translate the quad_curve to a position
quad_curve.setTranslateX(100);
quad_curve.setTranslateY(100);
// set fill for the quad curve
quad_curve.setFill(Color.BLUE);
// create a scene
Scene scene = new Scene(group, 500, 300);
// set the scene
stage.setScene(scene);
stage.show();
}
public static void main(String args[])
{
// launch the application
launch(args);
}
}
输出:
注意:以上程序可能无法在在线 IDE 中运行,请使用离线编译器
参考:
https://docs.oracle.com/javase/8/javafx/api/javafx/scene/shape/QuadCurve.html