JavaFX - Sfera di forma 3D

Una sfera è un oggetto geometrico perfettamente rotondo in uno spazio tridimensionale che è la superficie di una palla di forma completamente rotonda.

Una sfera è definita come l'insieme di punti che sono tutti alla stessa distanza r da un dato punto in uno spazio 3D. Questa distanzar è il radius della sfera e il punto dato è il centro della sfera.

In JavaFX, una sfera è rappresentata da una classe denominata Sphere. Questa classe appartiene al pacchettojavafx.scene.shape. Istanziando questa classe, è possibile creare un nodo sfera in JavaFX.

Questa classe ha una proprietà denominata radiusdi doppio tipo di dati. Rappresenta il raggio di una Sfera. Per disegnare una sfera, è necessario impostare i valori per questa proprietà passandola al costruttore di questa classe al momento dell'istanziazione come segue:

Sphere sphere = new Sphere(radius);

Oppure, utilizzando un metodo denominato setRadius() come segue -

setRadius(value);

Passaggi per disegnare una sfera 3D

Segui i passaggi indicati di seguito per disegnare una sfera (3D) in JavaFX.

Passaggio 1: creazione di una classe

Crea una classe Java ed eredita il file Application classe del pacchetto javafx.application e implementare il start() metodo di questa classe come segue.

public class ClassName extends Application { 
  @Override     
   public void start(Stage primaryStage) throws Exception {     
   }    
}

Passaggio 2: creazione di una sfera

Puoi creare una sfera in JavaFX istanziando la classe denominata Sphere, che appartiene a un pacchetto javafx.scene.shape. È possibile creare un'istanza di questa classe come segue.

//Creating an object of the class Sphere 
Sphere sphere = new Sphere();

Passaggio 3: impostazione delle proprietà sulla sfera

Imposta il raggio della Sfera usando il metodo denominato setRadius() come mostrato di seguito.

//Setting the radius of the Sphere 
sphere.setRadius(300.0);

Passaggio 4: creazione di un oggetto gruppo

Nel start() metodo, creare un oggetto gruppo istanziando la classe denominata Group, che appartiene al pacchetto javafx.scene.

Passa l'oggetto Sphere (nodo), creato nel passaggio precedente, come parametro al costruttore della classe Group. Questo dovrebbe essere fatto per aggiungerlo al gruppo come mostrato di seguito -

Group root = new Group(sphere);

Passaggio 5: 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 6: 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 7: aggiunta della 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 8: visualizzazione dei contenuti dello stage

Visualizza il contenuto della scena utilizzando il metodo denominato show() del Stage classe come segue.

primaryStage.show();

Passaggio 9: avvio dell'applicazione

Avvia l'applicazione JavaFX chiamando il metodo statico launch() del Application class dal metodo principale come mostrato di seguito.

public static void main(String args[]){   
   launch(args);      
}

Esempio

Il seguente programma mostra come generare una sfera utilizzando JavaFX. Salva questo codice in un file con il nomeSphereExample.java.

import javafx.application.Application; 
import javafx.scene.Group; 
import javafx.scene.Scene; 
import javafx.stage.Stage; 
import javafx.scene.shape.Sphere; 
         
public class SphereExample extends Application { 
   @Override 
   public void start(Stage stage) { 
      //Drawing a Sphere  
      Sphere sphere = new Sphere();  
      
      //Setting the properties of the Sphere 
      sphere.setRadius(50.0);   
       
      sphere.setTranslateX(200); 
      sphere.setTranslateY(150);      
       
      //Creating a Group object  
      Group root = new Group(sphere); 
         
      //Creating a scene object 
      Scene scene = new Scene(root, 600, 300);  
      
      //Setting title to the Stage 
      stage.setTitle("Drawing a Sphere - draw fill");
      
      //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 SphereExample.java 
java SphereExample

All'esecuzione, il programma precedente genera una finestra JavaFX che mostra una sfera come mostrato di seguito.