Effets JavaFX - Ombre

Cet effet crée un double du nœud spécifié avec des bords flous.

La classe nommée Shadow du forfait javafx.scene.effectreprésente l'effet de ton sépia. Cette classe contient six propriétés, qui sont -

  • color - Cette propriété est de type Couleur représente la couleur de l'ombre.

  • blur type - Cette propriété est du type BlurType et représente le type d'effet de flou utilisé pour brouiller l'ombre.

  • radius - Cette propriété est du type double et représente le rayon du noyau de flou d'ombre.

  • width - Cette propriété est du type double et représente la largeur du noyau de flou d'ombre.

  • height - Cette propriété est du type double et représente la hauteur du noyau de flou d'ombre.

  • input - Cette propriété est du type Effet et représente une entrée pour l'effet d'ombre.

Exemple

Le programme suivant est un exemple illustrant l'effet d'ombre de JavaFX. Ici, nous dessinons le texte «Welcome to Tutorialspoint», et un cercle dans une scène.

Nous appliquons l'effet d'ombre avec le type de flou gaussien avec la couleur brun rosé et la hauteur, la largeur, le rayon comme 5.

Enregistrez ce code dans un fichier avec le nom 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); 
   } 
}

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

javac ShadowEffectExample.java 
java ShadowEffectExample

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