📜  JavaFX | QuadCurve 示例

📅  最后修改于: 2022-05-13 01:55:07.008000             🧑  作者: Mango

JavaFX | QuadCurve 示例


QuadCurve 是 JavaFX 的一部分。 Quadcurve 类在 (x, y) 坐标空间中定义了一个二次贝塞尔参数曲线段。曲线经过起点和终点,也经过控制点。指定的控制点用作贝塞尔控制点。

该类的构造函数是:

  1. QuadCurve() : 创建一个空的四边形曲线实例
  2. QuadCurve(double sX, double sY, double cX, double cY, double eX, double eY) :创建具有指定起点、终点和控制点的四边形曲线的新实例。

常用方法

MethodExplanation
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