JavaFX - Sphère de forme 3D

Une sphère est un objet géométrique parfaitement rond dans un espace tridimensionnel qui est la surface d'une boule de forme complètement ronde.

Une sphère est définie comme l'ensemble de points qui sont tous à la même distance r d'un point donné dans un espace 3D. Cette distancer est le radius de la sphère et le point donné est le centre de la sphère.

Dans JavaFX, une sphère est représentée par une classe nommée Sphere. Cette classe appartient au packagejavafx.scene.shape. En instanciant cette classe, vous pouvez créer un nœud de sphère dans JavaFX.

Cette classe a une propriété nommée radiusde double type de données. Il représente le rayon d'une sphère. Pour dessiner une sphère, vous devez définir des valeurs pour cette propriété en la passant au constructeur de cette classe au moment de l'instanciation comme suit -

Sphere sphere = new Sphere(radius);

Ou, en utilisant une méthode nommée setRadius() comme suit -

setRadius(value);

Étapes pour dessiner une sphère 3D

Suivez les étapes ci-dessous pour dessiner une sphère (3D) dans JavaFX.

Étape 1: Créer une classe

Créez une classe Java et héritez du Application classe du package javafx.application et mettre en œuvre le start() méthode de cette classe comme suit.

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

Étape 2: Créer une sphère

Vous pouvez créer une sphère dans JavaFX en instanciant la classe nommée Sphere, qui appartient à un package javafx.scene.shape. Vous pouvez instancier cette classe comme suit.

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

Étape 3: Définition des propriétés de la sphère

Définissez le rayon de la sphère à l'aide de la méthode nommée setRadius() comme indiqué ci-dessous.

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

Étape 4: Création d'un objet de groupe

dans le start() , créez un objet de groupe en instanciant la classe nommée Group, qui appartient au package javafx.scene.

Passez l'objet Sphère (nœud), créé à l'étape précédente, en tant que paramètre au constructeur de la classe Group. Cela devrait être fait afin de l'ajouter au groupe comme indiqué ci-dessous -

Group root = new Group(sphere);

Étape 5: Création d'un objet de scène

Créez une scène en instanciant la classe nommée Scene, qui appartient au package javafx.scene. À cette classe, transmettez l'objet Group (root) créé à l'étape précédente.

En plus de l'objet racine, vous pouvez également transmettre deux doubles paramètres représentant la hauteur et la largeur de l'écran avec l'objet de la classe Group comme suit.

Scene scene = new Scene(group ,600, 300);

Étape 6: Définition du titre de la scène

Vous pouvez définir le titre de la scène à l'aide du setTitle() méthode de la Stageclasse. leprimaryStage est un objet Stage, qui est passé à la méthode start de la classe Scene en tant que paramètre.

En utilisant le primaryStage objet, définissez le titre de la scène comme Sample Application comme suit.

primaryStage.setTitle("Sample Application");

Étape 7: Ajouter une scène à la scène

Vous pouvez ajouter un objet Scene à la scène en utilisant la méthode setScene() de la classe nommée Stage. Ajoutez l'objet Scene préparé aux étapes précédentes à l'aide de cette méthode comme indiqué ci-dessous.

primaryStage.setScene(scene);

Étape 8: Affichage du contenu de la scène

Affichez le contenu de la scène en utilisant la méthode nommée show() du Stage classe comme suit.

primaryStage.show();

Étape 9: Lancement de l'application

Lancez l'application JavaFX en appelant la méthode statique launch() du Application classe de la méthode principale comme indiqué ci-dessous.

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

Exemple

Le programme suivant montre comment générer une sphère à l'aide de JavaFX. Enregistrez ce code dans un fichier avec le nomSphereExample.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); 
   } 
}

Compilez et exécutez le fichier java enregistré à partir de l'invite de commande à l'aide des commandes suivantes.

javac SphereExample.java 
java SphereExample

Lors de l'exécution, le programme ci-dessus génère une fenêtre JavaFX affichant une sphère comme illustré ci-dessous.