Curva cubica dell'elemento del percorso delle forme 2D
La curva cubica dell'elemento percorso viene utilizzata per disegnare un file cubic curve a un punto nelle coordinate specificate dalla posizione corrente.
È rappresentato da una classe denominata CubicCurveTo. Questa classe appartiene al pacchettojavafx.scene.shape.
Questa classe ha 6 proprietà del doppio tipo di dati, ovvero:
setX - La coordinata x del punto in cui deve essere tracciata una curva dalla posizione corrente.
setX - La coordinata y del punto in cui deve essere disegnata una curva dalla posizione corrente.
controlX1- La coordinata x del 1 ° punto di controllo della curva.
controlY1- La coordinata y del 1 ° punto di controllo della curva.
controlX2- La coordinata x del 2 ° punto di controllo della curva.
controlY2- La coordinata y del 2 ° punto di controllo della curva.
Per disegnare una curva cubica, è necessario passare valori a queste proprietà. Questo può essere fatto passandoli al costruttore di questa classe. Questi dovrebbero essere nello stesso ordine in cui erano al momento dell'istanziazione come mostrato di seguito:
CubicCurveTo cubiccurve = new CubicCurveTo(
X, Y, controlX1, controlY1, controlX2, controlY2);
Oppure, utilizzando i rispettivi metodi setter come mostrato di seguito -
setX(value);
setY(value);
setControlX1(value);
setControlY1(value);
setControlX2(value);
setControlY2(value);
Passaggi per disegnare la curva cubica PathElement
Per disegnare una curva cubica in un punto specificato dalla posizione corrente in JavaFX, seguire i passaggi indicati di seguito.
Passaggio 1: creazione di una classe
Crea una classe Java ed eredita il file Application classe del pacchetto javafx.application. Quindi puoi implementare il filestart() metodo di questa classe come mostrato di seguito.
public class ClassName extends Application {
@Override
public void start(Stage primaryStage) throws Exception {
}
}
Passaggio 2: creare l'oggetto della classe del percorso
Creare l'oggetto della classe Path come mostrato nel seguente blocco di codice.
//Creating a Path object
Path path = new Path();
Passaggio 3: crea un percorso
Crea il file MoveToelemento del percorso e impostare le coordinate XY sul punto iniziale della linea alle coordinate (100, 150). Questo può essere fatto usando i metodisetX() e setY() della classe MoveTo come mostrato di seguito.
//Moving to the starting point
MoveTo moveTo = new MoveTo();
moveTo.setX(100.0f);
moveTo.setY(150.0f);
Passaggio 4: creazione di un oggetto della classe CubicCurveTo
Creare la curva quadratica dell'elemento del percorso istanziando la classe denominata CubicCurveTo, che appartiene al pacchetto javafx.scene.shape come mostrato di seguito -
//Creating an object of the class CubicCurveTo
CubicCurveTo cubicCurveTo= new CubicCurveTo ();
Passaggio 5: impostazione delle proprietà per l'elemento curva cubica
Specificare le coordinate del punto in cui deve essere disegnata una curva cubica dalla posizione corrente. Quindi dovresti impostare le proprietà x, y, controlX1, controlY1, controlX2, controlY2 e le coordinate del punto di controllo con i loro metodi setter come mostrato di seguito.
//Setting properties of the class CubicCurve
cubicCurveTo.setControlX1(400.0f);
cubicCurveTo.setControlY1(40.0f);
cubicCurveTo.setControlX2(175.0f);
cubicCurveTo.setControlY2(250.0f);
cubicCurveTo.setX(500.0f);
cubicCurveTo.setY(150.0f);
Passaggio 6: aggiunta di elementi all'elenco osservabile della classe di percorsi
Aggiungi gli elementi del percorso → MoveTo e CubicCurveTo, creato nei passaggi precedenti all'elenco osservabile del file Path classe come segue -
//Adding the path elements to Observable list of the Path class
path.getElements().add(moveTo);
path.getElements().add(cubicCurveTo);
Passaggio 7: creazione di un oggetto gruppo
Crea un oggetto gruppo istanziando la classe denominata Group, che appartiene al pacchetto javafx.scene.
Passare l'oggetto Line (nodo) creato nel passaggio precedente come parametro al costruttore della classe Group. Questo può essere fatto per aggiungerlo al gruppo come mostrato di seguito -
Group root = new Group(line);
Passaggio 8: creazione di un oggetto scena
Crea una scena istanziando la classe denominata Scene che appartiene al pacchetto javafx.scene. A questa classe, passa l'oggetto Group(root) creato nel passaggio precedente.
Oltre all'oggetto radice, puoi anche passare due parametri doppi che rappresentano l'altezza e la larghezza dello schermo insieme all'oggetto della classe Group come segue:
Scene scene = new Scene(group ,600, 300);
Passaggio 9: impostazione del titolo dello stage
Puoi impostare il titolo dello stage utilizzando il file setTitle() metodo del Stageclasse. IlprimaryStage è un oggetto Stage che viene passato al metodo di avvio della classe scene come parametro.
Usando il primaryStage oggetto, imposta il titolo della scena come Sample Application come segue.
primaryStage.setTitle("Sample Application");
Passaggio 10: aggiunta di una scena allo stage
Puoi aggiungere un oggetto Scene allo stage utilizzando il metodo setScene() della classe denominata Stage. Aggiungi l'oggetto Scene preparato nei passaggi precedenti utilizzando questo metodo come mostrato di seguito:
primaryStage.setScene(scene);
Passaggio 11: visualizzazione dei contenuti dello stage
Visualizza il contenuto della scena utilizzando il metodo denominato show() del Stage classe come segue.
primaryStage.show();
Passaggio 12: avvio dell'applicazione
Avvia l'applicazione JavaFX chiamando il metodo statico launch() del Application class dal metodo principale come segue.
public static void main(String args[]){
launch(args);
}
Esempio
Di seguito è riportato il programma che disegna una curva cubica dal punto corrente a una posizione specificata utilizzando la classe denominata Pathdi JavaFX. Salva questo codice in un file con il nomeCubicCurveToExample.java.
import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.stage.Stage;
import javafx.scene.shape.CubicCurveTo;
import javafx.scene.shape.MoveTo;
import javafx.scene.shape.Path;
public class CubicCurveToExample extends Application {
@Override
public void start(Stage stage) {
//Creating an object of the class named Path
Path path = new Path();
//Moving to the starting point
MoveTo moveTo = new MoveTo();
moveTo.setX(100.0);
moveTo.setY(150.0);
//Instantiating the class CubicCurve
CubicCurveTo cubicCurveTo = new CubicCurveTo();
//Setting properties of the class CubicCurve
cubicCurveTo.setControlX1(400.0f);
cubicCurveTo.setControlY1(40.0f);
cubicCurveTo.setControlX2(175.0f);
cubicCurveTo.setControlY2(250.0f);
cubicCurveTo.setX(500.0f);
cubicCurveTo.setY(150.0f);
//Adding the path elements to Observable list of the Path class
path.getElements().add(moveTo);
path.getElements().add(cubicCurveTo);
//Creating a Group object
Group root = new Group(path);
//Creating a scene object
Scene scene = new Scene(root, 600, 300);
//Setting title to the Stage
stage.setTitle("Drawing a cubic through a specified path");
//Adding scene to the stage
stage.setScene(scene);
//Displaying the contents of the stage
stage.show();
}
public static void main(String args[]){
launch(args);
}
}
Compilare ed eseguire il file java salvato dal prompt dei comandi utilizzando i seguenti comandi.
javac CubicCurveToExample.java
java CubicCurveToExample
All'esecuzione, il programma di cui sopra genera una finestra JavaFX che mostra una curva cubica. Viene tracciato dalla posizione corrente al punto specificato come mostrato di seguito.