Effets JavaFX - Entrée d'image

L'effet d'entrée d'image dans JavaFX incorpore simplement une image à l'écran JavaFX. Tout comme dans l'effet Entrée couleur, il est utilisé pour transmettre la région rectangulaire colorée spécifiée comme entrée d'un autre effet. Un effet d'entrée d'image est utilisé pour transmettre l'image spécifiée en tant qu'entrée à un autre effet.

Lors de l'application de cet effet, l'image spécifiée ne sera pas modifiée. Cet effet est appliqué à n'importe quel nœud.

La classe nommée ImageInput du forfait javafx.scene.effect représente l'effet d'entrée d'image, cette classe contient trois propriétés, qui sont -

  • x- Cette propriété est de type Double; il représente la coordonnée x de la position de l'image source.

  • y- Cette propriété est de type Double; il représente la coordonnée y de la position de l'image source.

  • source- sa propriété est de type Image; il représente l'image qui doit être utilisée comme source à cet effet. (Passé comme entrée)

Exemple

Le programme suivant est un exemple illustrant l'effet d'entrée d'image. Ici, nous créons une entrée d'image à la position 150, 100 et prenons l'image suivante (logo tutorialspoint) comme source pour cet effet.

Nous créons un rectangle et lui appliquons cet effet. Enregistrez ce code dans un fichier avec le nomImageInputEffectExample.java.

import javafx.application.Application; 
import javafx.scene.Group; 
import javafx.scene.Scene; 
import javafx.scene.effect.ImageInput; 
import javafx.scene.image.Image; 
import javafx.scene.shape.Rectangle; 
import javafx.stage.Stage; 
         
public class ImageInputEffectExample extends Application { 
   @Override  
   public void start(Stage stage) {       
      //Creating an image 
      Image image = new Image("http://www.tutorialspoint.com/green/images/logo.png"); 
             
      //Instantiating the Rectangle class 
      Rectangle rectangle = new Rectangle(); 
     
      //Instantiating the ImageInput class 
      ImageInput imageInput = new ImageInput(); 
      
      //Setting the position of the image
      imageInput.setX(150); 
      imageInput.setY(100);       
      
      //Setting source for image input  
      imageInput.setSource(image); 
       
      //Applying image input effect to the rectangle node 
      rectangle.setEffect(imageInput);    
         
      //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("Sample Application"); 
         
      //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 ImageInputEffectExample.java 
java ImageInputEffectExample

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