JavaFX - Rectángulo de formas 2D

En general, un rectángulo es un polígono de cuatro lados que tiene dos pares de lados paralelos y concurrentes con todos los ángulos interiores como ángulos rectos.

Se describe mediante dos parámetros, a saber:

  • height - La longitud vertical del rectángulo se conoce como altura.

  • width - La longitud horizontal del rectángulo se conoce como ancho.

En JavaFX, un rectángulo está representado por una clase llamada Rectangle. Esta clase pertenece al paquetejavafx.scene.shape.

Al crear una instancia de esta clase, puede crear un nodo Rectangle en JavaFX.

Esta clase tiene 4 propiedades del tipo de datos doble, a saber:

  • X - La coordenada x del punto de inicio (superior izquierda) del rectángulo.

  • Y - La coordenada y del punto de inicio (superior izquierda) del rectángulo.

  • Width - El ancho del rectángulo.

  • height - La altura del rectángulo.

Para dibujar un rectángulo, debe pasar valores a estas propiedades, ya sea pasándolos al constructor de esta clase, en el mismo orden, en el momento de la instanciación, como se muestra a continuación:

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

O, usando sus respectivos métodos de establecimiento como se muestra en el siguiente bloque de código:

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

Pasos para dibujar un rectángulo

Debe seguir los pasos que se indican a continuación para dibujar un rectángulo en JavaFX.

Paso 1: crear una clase

Cree una clase Java y herede la Application clase del paquete javafx.application e implementar el start() método de esta clase como se muestra a continuación.

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

Paso 2: crear un rectángulo

Puede crear un rectángulo en JavaFX creando una instancia de la clase llamada Rectangle que pertenece a un paquete javafx.scene.shape, instancia esta clase de la siguiente manera.

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

Paso 3: Establecer propiedades en el rectángulo

Especifique las coordenadas x, y del punto de inicio (arriba a la izquierda), la altura y el ancho del rectángulo que se necesita dibujar. Puede hacer esto configurando las propiedades x, y, alto y ancho, usando sus respectivos métodos de establecimiento como se muestra en el siguiente bloque de código.

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

Paso 4: crear un objeto de grupo

En el start() método, cree un objeto de grupo creando una instancia de la clase llamada Grupo, que pertenece al paquete javafx.scene.

Pase el objeto Rectangle (nodo), creado en el paso anterior, como parámetro al constructor de la clase Group, para agregarlo al grupo de la siguiente manera:

Group root = new Group(rectangle);

Paso 5: creación de un objeto de escena

Cree una escena creando una instancia de la clase llamada Scene que pertenece al paquete javafx.scene. A esta clase, pase el objeto Grupo (root), creado en el paso anterior.

Además del objeto raíz, también puede pasar dos parámetros dobles que representan la altura y el ancho de la pantalla junto con el objeto de la clase Group de la siguiente manera.

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

Paso 6: Establecer el título del escenario

Puede establecer el título del escenario utilizando el setTitle() método del Stageclase. losprimaryStage es un objeto Stage, que se pasa al método de inicio de la clase de escena, como parámetro.

Utilizando el primaryStage objeto, establezca el título de la escena como Sample Application como sigue.

primaryStage.setTitle("Sample Application");

Paso 7: agregar escena al escenario

Puede agregar un objeto de escena al escenario usando el método setScene() de la clase nombrada Stage. Agregue el objeto Scene preparado en los pasos anteriores utilizando el método que se muestra a continuación.

primaryStage.setScene(scene)

Paso 8: Visualización del contenido del escenario

Muestre el contenido de la escena usando el método llamado show() del Stage clase de la siguiente manera.

primaryStage.show()

Paso 9: lanzamiento de la aplicación

Inicie la aplicación JavaFX llamando al método estático launch() del Application class del método principal de la siguiente manera.

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

Ejemplo

A continuación se muestra el programa que genera un rectángulo JavaFX. Guarde este código en un archivo con el nombreRectangleExample.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); 
   } 
}

Compile y ejecute el archivo java guardado desde el símbolo del sistema utilizando los siguientes comandos.

javac RectangleExample.java 
java RectangleExample

Al ejecutarse, el programa anterior genera una ventana JavaFX que muestra un rectángulo como se muestra en la siguiente captura de pantalla.