当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


JavaFX 类 CubicCurve用法及代码示例



CubicCurve是JavaFX的一部分。CubiCurve类在(x,y)坐标空间中定义了三次Bézier参数曲线段。三次曲线穿过起点和终点,还穿过两个控制点。控制点被指定为贝塞尔控制点。

该类的构造函数是:

  1. CubicCurve():创建三次曲线的新实例
  2. CubicCurve(double startX, double startY, double controlX1, double controlY1, double controlX2, double controlY2, double endX, double endY):创建具有指定起点和终点以及两个控制点的三次曲线实例。

常用方法

方法 说明
getControlX1() 返回第一个控制点的x坐标
getControlY1() 返回第一个控制点的y坐标
getControlX2() 返回第二个控制点的x坐标
getControlY2() 返回第二个控制点的y坐标
getEndX() 返回终点的x坐标
getEndY() 返回终点的y坐标
getStartX() 返回起点的x坐标
getStartY() 返回起点的y坐标
setControlX1(double value) 设置第一个控制点的x坐标
setControlY1(double value) 设置第一个控制点的y坐标
setControlX2(double value) 设置第二个控制点的x坐标
setControlY2(double value) 设置第二个控制点的y坐标
setEndX(double value) 设置终点的x坐标
setEndY(double value) 设置终点的y坐标
setStartX(double value) 设置起点的x坐标
setStartY(double value) 设置起点的y坐标


Java程序创建三次曲线

该程序创建一个以名称cubic_curve表示的CubicCurve(两个控制点s,起点和终点作为参数传递)。 CubicCurve将在场景内创建,而场景又将在场景内托管。函数setTitle()用于为舞台提供标题。然后创建一个组,并将cubic_curve附加到该组。最后,调用show()方法以显示最终结果。


// Java program to create a cubic 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.CubicCurve; 
import javafx.scene.control.*; 
import javafx.stage.Stage; 
import javafx.scene.Group; 
public class cubic_curve_0 extends Application { 
  
    // launch the application 
    public void start(Stage stage) 
    { 
        // set title for the stage 
        stage.setTitle("creating cubic_curve"); 
  
        // create a cubic_curve 
        CubicCurve cubic_curve = new CubicCurve(10.0f, 10.0f, 200.0f, 140.0f, 120.0f, 240.0f, 160.0f, 70.0f); 
  
        // create a Group 
        Group group = new Group(cubic_curve); 
  
        // translate the cubic_curve to a position 
        cubic_curve.setTranslateX(100); 
        cubic_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程序创建三次曲线并为三次曲线设置填充

该程序创建一个由名称cubic_curve表示的CubicCurve(使用setControlX1(),setControlY1(),setControlX2(),setControlY2(),setStartX(),setStartY(),setEndX()设置两个控制点,起点和终点) ,以及setEndY()函数)。 CubicCurve将在场景内创建,而场景又将在场景内托管。 setTitle()函数用于为舞台提供标题。然后创建一个组,并附加了三次曲线。该组被附加到场景中。最后,调用show()方法以显示最终结果.setFill()函数用于设置三次曲线的填充。

// Java program to create a cubic curve and set a fill for cubic 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.CubicCurve; 
import javafx.scene.control.*; 
import javafx.stage.Stage; 
import javafx.scene.Group; 
import javafx.scene.paint.Color; 
public class cubic_curve_1 extends Application { 
  
    // launch the application 
    public void start(Stage stage) 
    { 
        // set title for the stage 
        stage.setTitle("creating cubic_curve"); 
  
        // create a cubic_curve 
        CubicCurve cubic_curve = new CubicCurve(); 
  
        // set start 
        cubic_curve.setStartX(10.0f); 
        cubic_curve.setStartY(10.0f); 
  
        // set control coordinates 
        cubic_curve.setControlX1(200.0f); 
        cubic_curve.setControlY1(140.0f); 
        cubic_curve.setControlX2(120.0f); 
        cubic_curve.setControlY2(240.0f); 
  
        // set end coordinates 
        cubic_curve.setEndX(160.0f); 
        cubic_curve.setEndY(70.0f); 
  
        // create a Group 
        Group group = new Group(cubic_curve); 
  
        // translate the cubic_curve to a position 
        cubic_curve.setTranslateX(100); 
        cubic_curve.setTranslateY(100); 
  
        // set fill for the cubic curve 
        cubic_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/CubicCurve.html



相关用法


注:本文由纯净天空筛选整理自andrew1234大神的英文原创作品 JavaFX | CubicCurve with examples。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。