JavaFX - Retângulo arredondado de formas 2D

No JavaFX, você pode desenhar um retângulo com bordas agudas ou com bordas arqueadas, conforme mostrado no diagrama a seguir.

Aquele com bordas arqueadas é conhecido como um retângulo arredondado e tem duas propriedades adicionais, a saber -

  • arcHeight - O diâmetro vertical do arco, nos cantos de um retângulo arredondado.

  • arcWidth - O diâmetro horizontal do arco nos cantos de um retângulo arredondado.

Por padrão, o JavaFX cria um retângulo com bordas afiadas, a menos que você defina a altura e a largura do arco para + ve valores (0 <) usando seus respectivos métodos de definição setArcHeight() e setArcWidth().

Exemplo

A seguir está um programa que gera um retângulo arredondado usando JavaFX. Salve este código em um arquivo com o nomeRoundedRectangle.java.

import javafx.application.Application; 
import javafx.scene.Group; 
import javafx.scene.Scene; 
import javafx.stage.Stage; 
import javafx.scene.shape.Rectangle; 
         
public class RoundedRectangle 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); 
       
      //Setting the height and width of the arc 
      rectangle.setArcWidth(30.0); 
      rectangle.setArcHeight(20.0);  
         
      //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 e execute o arquivo java salvo no prompt de comando usando os comandos a seguir.

javac RoundedRectangle.java 
java RoundedRectangle

Ao ser executado, o programa acima gera uma janela JavaFX exibindo um retângulo arredondado conforme mostrado abaixo.