Efectos JavaFX - Sombra

Este efecto crea un duplicado del nodo especificado con bordes borrosos.

La clase nombrada Shadow del paquete javafx.scene.effectrepresenta el efecto de tono sepia. Esta clase contiene seis propiedades, que son:

  • color - Esta propiedad es de tipo Color que representa el color de la sombra.

  • blur type - Esta propiedad es de BlurType y representa el tipo de efecto de desenfoque utilizado para desenfocar la sombra.

  • radius - Esta propiedad es del tipo double y representa el radio del kernel de difuminado de sombras.

  • width - Esta propiedad es del tipo double y representa el ancho del kernel de desenfoque de sombra.

  • height - Esta propiedad es del tipo double y representa la altura del kernel de difuminado de sombras.

  • input - Esta propiedad es del tipo Efecto y representa una entrada al efecto de sombra.

Ejemplo

El siguiente programa es un ejemplo que demuestra el efecto de sombra de JavaFX. Aquí, estamos dibujando el texto "Bienvenido a Tutorialspoint" y un círculo en una escena.

Estamos aplicando el efecto de sombra con el tipo de desenfoque Gaussiano con el color Rosy Brown y la altura, el ancho y el radio como 5.

Guarde este código en un archivo con el nombre ShadowEffectExample.java.

import javafx.application.Application; 
import javafx.scene.Group; 
import javafx.scene.Scene; 
import javafx.scene.effect.BlurType; 
import javafx.scene.effect.Shadow; 
import javafx.scene.paint.Color; 
import javafx.scene.shape.Circle; 
import javafx.stage.Stage; 
import javafx.scene.text.Font; 
import javafx.scene.text.FontWeight; 
import javafx.scene.text.Text; 
         
public class ShadowEffectExample extends Application { 
   @Override 
   public void start(Stage stage) {       
      //Creating a Text object 
      Text text = new Text();       
      
      //Setting font to the text 
      text.setFont(Font.font(null, FontWeight.BOLD, 40));        
      
      //setting the position of the text 
      text.setX(60);  
      text.setY(50); 
      
      //Setting the text to be embedded. 
      text.setText("Welcome to Tutorialspoint");       
      
      //Setting the color of the text 
      text.setFill(Color.DARKSEAGREEN);
      
      //Drawing a Circle 
      Circle circle = new Circle();         
      
      //Setting the center of the circle 
      circle.setCenterX(300.0f); 
      circle.setCenterY(160.0f); 
      
      //Setting the radius of the circle 
      circle.setRadius(100.0f); 
       
      //Instantiating the Shadow class 
      Shadow shadow = new Shadow(); 
      
      //setting the type of blur for the shadow 
      shadow.setBlurType(BlurType.GAUSSIAN); 
      
      //Setting color of the shadow 
      shadow.setColor(Color.ROSYBROWN); 
      
      //Setting the height of the shadow 
      shadow.setHeight(5); 
      
      //Setting the width of the shadow 
      shadow.setWidth(5); 
      
      //Setting the radius of the shadow 
      shadow.setRadius(5);  
      
      //Applying shadow effect to the text 
      text.setEffect(shadow);      
      
      //Applying shadow effect to the circle 
      circle.setEffect(shadow); 
         
      //Creating a Group object    
      Group root = new Group(circle, text);   
               
      //Creating a scene object 
      Scene scene = new Scene(root, 600, 300);  
      
      //Setting title to the Stage 
      stage.setTitle("Bloom effect example");
      
      //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 ShadowEffectExample.java 
java ShadowEffectExample

Al ejecutarse, el programa anterior genera una ventana JavaFX como se muestra a continuación.