Efectos JavaFX - Entrada de imagen
El efecto de entrada de imagen en JavaFX simplemente incrusta una imagen en la pantalla de JavaFX. Al igual que en el efecto Entrada de color, se utiliza para pasar la región rectangular coloreada especificada como entrada a otro efecto. Un efecto de entrada de imagen se utiliza para pasar la imagen especificada como entrada a otro efecto.
Al aplicar este efecto, la imagen especificada no se modificará. Este efecto se aplica a cualquier nodo.
La clase nombrada ImageInput del paquete javafx.scene.effect representa el efecto de entrada de imagen, esta clase contiene tres propiedades, que son:
x- Esta propiedad es de tipo Double; representa la coordenada x de la posición de la imagen de origen.
y- Esta propiedad es de tipo Double; representa la coordenada y de la posición de la imagen de origen.
source- su propiedad es de tipo Imagen; representa una imagen que se utilizará como fuente a tal efecto. (Pasado como entrada)
Ejemplo
El siguiente programa es un ejemplo que demuestra el efecto de entrada de imagen. Aquí, estamos creando una entrada de imagen en la posición 150, 100 y tomando la siguiente imagen (logo de tutorialspoint) como fuente para este efecto.
Estamos creando un rectángulo y aplicándole este efecto. Guarde este código en un archivo con el nombreImageInputEffectExample.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);
}
}
Compile y ejecute el archivo java guardado desde el símbolo del sistema utilizando los siguientes comandos.
javac ImageInputEffectExample.java
java ImageInputEffectExample
Al ejecutarse, el programa anterior genera una ventana JavaFX como se muestra a continuación.