JavaFX - Rectangle de formes 2D

En général, un rectangle est un polygone à quatre côtés qui a deux paires de côtés parallèles et simultanés avec tous les angles intérieurs comme angles droits.

Il est décrit par deux paramètres à savoir -

  • height - La longueur verticale du rectangle est appelée hauteur.

  • width - La longueur horizontale du rectangle est appelée largeur.

Dans JavaFX, un Rectangle est représenté par une classe nommée Rectangle. Cette classe appartient au packagejavafx.scene.shape.

En instanciant cette classe, vous pouvez créer un nœud Rectangle dans JavaFX.

Cette classe a 4 propriétés du double type de données à savoir -

  • X - La coordonnée x du point de départ (en haut à gauche) du rectangle.

  • Y - La coordonnée y du point de départ (en haut à gauche) du rectangle.

  • Width - La largeur du rectangle.

  • height - La hauteur du rectangle.

Pour dessiner un rectangle, vous devez passer des valeurs à ces propriétés, soit en les passant au constructeur de cette classe, dans le même ordre, au moment de l'instanciation, comme indiqué ci-dessous -

Rectangle rectangle = new Rectangle(x, y, width, height);

Ou, en utilisant leurs méthodes de setter respectives, comme indiqué dans le bloc de code suivant -

setX(value); 
setY(value); 
setWidth(value); 
setHeight(value);

Étapes pour dessiner un rectangle

Vous devez suivre les étapes ci-dessous pour dessiner un rectangle 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 indiqué ci-dessous.

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

Étape 2: création d'un rectangle

Vous pouvez créer un rectangle dans JavaFX en instanciant la classe nommée Rectangle qui appartient à un package javafx.scene.shape, instanciez cette classe comme suit.

//Creating a rectangle object         
Rectangle rectangle = new Rectangle();

Étape 3: Définition des propriétés du rectangle

Spécifiez les coordonnées x, y du point de départ (en haut à gauche), la hauteur et la largeur du rectangle à dessiner. Vous pouvez le faire en définissant les propriétés x, y, hauteur et largeur, à l'aide de leurs méthodes de définition respectives, comme indiqué dans le bloc de code suivant.

line.setStartX(100.0); 
line.setStartY(150.0); 
line.setEndX(500.0); 
line.setEndY(150.0);

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

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

Passez l'objet Rectangle (node), créé à l'étape précédente, comme paramètre au constructeur de la classe Group, afin de l'ajouter au groupe comme suit -

Group root = new Group(rectangle);

É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 de scène, 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 en utilisant la méthode 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 suit.

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

Exemple

Voici le programme qui génère un rectangle JavaFX. Enregistrez ce code dans un fichier avec le nomRectangleExample.java.

import javafx.application.Application; 
import javafx.scene.Group; 
import javafx.scene.Scene; 
import javafx.stage.Stage; 
import javafx.scene.shape.Rectangle;

public class RectangleExample extends Application { 
   @Override 
   public void start(Stage stage) { 
      //Drawing a Rectangle 
      Rectangle rectangle = new Rectangle();  
      
      //Setting the properties of the rectangle 
      rectangle.setX(150.0f); 
      rectangle.setY(75.0f); 
      rectangle.setWidth(300.0f); 
      rectangle.setHeight(150.0f);      
         
      //Creating a Group object  
      Group root = new Group(rectangle); 
         
      //Creating a scene object 
      Scene scene = new Scene(root, 600, 300);  
      
      //Setting title to the Stage 
      stage.setTitle("Drawing a Rectangle"); 
         
      //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 RectangleExample.java 
java RectangleExample

Lors de l'exécution, le programme ci-dessus génère une fenêtre JavaFX affichant un rectangle comme illustré dans la capture d'écran suivante.