JavaFX | Clase de brillo

La clase Glow es parte de JavaFX. Resplandor es un efecto de alto nivel que hace que la imagen de entrada parezca brillar utilizando un umbral configurable. La clase Glow hereda la clase Effect .

Constructores de la clase:

  1. Resplandor() : crea un nuevo objeto de brillo con parámetros predeterminados.
  2. Resplandor (doble l) : crea una nueva instancia de Resplandor con el nivel especificado.

Métodos comúnmente utilizados:

Método Explicación
obtenerEntrada() Devuelve el valor de la entrada de la propiedad.
setInput(Efecto v) Establece el valor de la propiedad de entrada
setLevel(doble v) Establecer el valor del nivel del objeto de brillo
obtenerNivel() Devuelve el valor del nivel del objeto iluminado.

Los siguientes programas ilustran el uso de la clase Glow:

  1. Programa Java para agregar una imagen y agregarle un efecto de brillo: en este programa se crea un FileInputStream y se toma una imagen como entrada de un archivo. La imagen denominada imagen se crea utilizando la entrada del flujo de entrada del archivo. A partir de la imagen , se crea un objeto de vista de imagen y se agrega al VBox . Luego se agrega el VBox a la escena y la escena se agrega al escenario . Se crea un efecto de Resplandor con un nivel específico pasado como parámetros y el efecto se establece en la vista de la imagen mediante la función setEffect() .

    // Java Program to add a image and 
    // add Glow effect to it.
    import javafx.application.Application;
    import javafx.scene.Scene;
    import javafx.scene.control.*;
    import javafx.scene.layout.*;
    import javafx.stage.Stage;
    import javafx.scene.image.*;
    import javafx.scene.effect.*;
    import java.io.*;
    import javafx.event.ActionEvent;
    import javafx.event.EventHandler;
    import javafx.scene.Group;
       
    public class glow_1 extends Application {
       
        // launch the application
        public void start(Stage stage) throws Exception
        {
       
            // set title for the stage
            stage.setTitle("Glow Example");
       
            // create a input stream
            FileInputStream input = new FileInputStream("D:\\GFG.png");
       
            // create a image
            Image image = new Image(input);
       
            // create a image View
            ImageView imageview = new ImageView(image);
       
            // create a glow effect
            Glow glow = new Glow(0.5);
       
            // set effect
            imageview.setEffect(glow);
       
            // create a VBox
            VBox vbox = new VBox(imageview);
       
            // create a scene
            Scene scene = new Scene(vbox, 200, 200);
       
            // set the scene
            stage.setScene(scene);
       
            stage.show();
        }
       
        // Main Method
        public static void main(String args[])
        {
       
            // launch the application
            launch(args);
        }
    }

    Imagen de entrada:

    Producción:

  2. Programa Java para agregar una imagen y agregarle un efecto de brillo, y también agregar un botón para cambiar el nivel de brillo: en este programa, se crea un FileInputStream y se toma una imagen como entrada de un archivo. La imagen denominada imagen se crea utilizando la entrada del flujo de entrada del archivo. A partir de la imagen, se crea un objeto de vista de imagen y se agrega al VBox . Luego se agrega el VBox a la escena y la escena se agrega al escenario. Se crea un efecto de Resplandor con un nivel específico pasado como parámetros y el efecto se establece en la vista de la imagen mediante la función setEffect() . Se crea un botón llamado Botón que se utiliza para aumentar el brillo de la imagen. El botón también se agrega a laCaja V. El brillo de la imagen aumenta con la función setLevel() . Los eventos relacionados con el botón se manejan mediante EventHandler .

    // Java Program to add a image and
    // add Glow effect to it, and also
    // add a button to change the glow level
    import javafx.application.Application;
    import javafx.scene.Scene;
    import javafx.scene.control.*;
    import javafx.scene.layout.*;
    import javafx.stage.Stage;
    import javafx.scene.image.*;
    import javafx.scene.effect.*;
    import java.io.*;
    import javafx.event.ActionEvent;
    import javafx.event.EventHandler;
    import javafx.scene.Group;
       
    public class glow_2 extends Application {
       
        double level = 0.1;
       
        // launch the application
        public void start(Stage stage) throws Exception
        {
       
            // set title for the stage
            stage.setTitle("Glow Example");
       
            // create a input stream
            FileInputStream input = new FileInputStream("D:\\GFG.png");
       
            // create a image
            Image image = new Image(input);
       
            // create a image View
            ImageView imageview = new ImageView(image);
       
            // create a glow effect
            Glow glow = new Glow(level);
       
            // create a button
            Button button = new Button("Glow");
       
            // action event
            EventHandler<ActionEvent> event = new EventHandler<ActionEvent>() {
       
                public void handle(ActionEvent e)
                {
       
                    // increase the level
                    level += 0.1;
                    if (level > 1)
                        level = 0.0;
       
                    // set Level gor glow
                    glow.setLevel(level);
                }
            };
       
            // set on action of button
            button.setOnAction(event);
       
            // set effect
            imageview.setEffect(glow);
       
            // create a VBox
            VBox vbox = new VBox(imageview, button);
       
            // create a scene
            Scene scene = new Scene(vbox, 200, 200);
       
            // set the scene
            stage.setScene(scene);
       
            stage.show();
        }
       
        // Main Method
        public static void main(String args[])
        {
       
            // launch the application
            launch(args);
        }
    }

    Imagen de entrada:

    Imagen de salida:

Nota: Es posible que los programas anteriores no se ejecuten en un IDE en línea. Utilice un compilador fuera de línea.

Referencia: https://docs.oracle.com/javase/8/javafx/api/javafx/scene/effect/Glow.html

Publicación traducida automáticamente

Artículo escrito por andrew1234 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *