當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。