JavaFX | PointLight con ejemplos

PointLight es una parte de JavaFX. PointLight define una fuente de luz puntual. PointLight es una fuente de luz fija en el espacio que irradia luz en todas las direcciones.

Los constructores de la clase son:

  1. PointLight() : Crea una nueva instancia de pointlight
  2. PointLight (Color c) : crea una nueva instancia de punto de luz de un color específico

Métodos comúnmente utilizados:

Método Explicación
obtenerColor() devuelve el color de la luz
esLightOn() devuelve si la luz está encendida o no
setColor(valor de color) establece el color de la luz
setLightOn(valor booleano) Establece el valor de la propiedad lightOn.

Los siguientes programas ilustran la clase PointLight:

  1. Programa Java para crear un punto de luz de color predeterminado: Este programa crea una Esfera indicada por el nombre esfera (el radio se pasa como argumento). Se crea un PointLight llamado pointlight que es una fuente de luz puntual e irradia luz en todas las direcciones. La Esfera se creará dentro de una escena, que a su vez se alojará dentro de un escenario. La función setTitle() se utiliza para proporcionar título al escenario. Luego se crea un Grupo y se adjuntan la esfera y el punto de luz. El grupo se adjunta a la escena. Finalmente, se llama al método show() para mostrar los resultados finales. Se creará una cámara en perspectiva y se agregará a la escena para renderizar el cilindro en 3D.

    // Java program to create a point light of default color
    import javafx.application.Application;
    import javafx.scene.Scene;
    import javafx.scene.shape.DrawMode;
    import javafx.scene.layout.*;
    import javafx.event.ActionEvent;
    import javafx.scene.PointLight;
    import javafx.scene.shape.Sphere;
    import javafx.scene.control.*;
    import javafx.stage.Stage;
    import javafx.scene.Group;
    import javafx.scene.PerspectiveCamera;
    import javafx.scene.paint.Color;
      
    public class pointlight_2 extends Application {
      
        // launch the application
        public void start(Stage stage)
        {
              
            // set title for the stage
            stage.setTitle("creating sphere");
      
            // create a sphere
            Sphere sphere = new Sphere(80.0f);
      
            // create a point light
            PointLight pointlight = new PointLight();
      
            // create a Group
            Group group = new Group(sphere, pointlight);
      
            // translate the sphere to a position
            sphere.setTranslateX(100);
            sphere.setTranslateY(100);
      
            // translate point light
            pointlight.setTranslateZ(-1000);
            pointlight.setTranslateX(+1000);
            pointlight.setTranslateY(+10);
      
            // create a perspective camera
            PerspectiveCamera camera = new PerspectiveCamera(false);
            camera.setTranslateX(0);
            camera.setTranslateY(0);
            camera.setTranslateZ(0);
      
            // create a scene
            Scene scene = new Scene(group, 500, 300);
      
            scene.setCamera(camera);
      
            // set the scene
            stage.setScene(scene);
      
            stage.show();
        }
          
        // Main Method
        public static void main(String args[])
        {
              
            // launch the application
            launch(args);
        }
    }

    Producción:

  2. Programa Java para crear un punto de luz de un color específico (por ejemplo, ROJO): Este programa crea una Esfera indicada por el nombre esfera (el radio se pasa como argumento). Se crea un PointLight llamado pointlight (con un color específico pasado como argumento que es una fuente de luz puntual e irradia luz en todas las direcciones. La Esfera se creará dentro de una escena, que a su vez se alojará dentro de un escenario. La función setTitle() se utiliza para dar título al escenario. Luego se crea un grupo y se adjuntan la esfera y el punto de luz. El grupo se adjunta a la escena. Finalmente, se llama al método show() para mostrar los resultados finales. Una perspectiva Se creará una cámara y se agregará a la escena para renderizar el cilindro en 3D.

    // Java program to create a point light
    // of specified color(eg RED)
    import javafx.application.Application;
    import javafx.scene.Scene;
    import javafx.scene.shape.DrawMode;
    import javafx.scene.layout.*;
    import javafx.event.ActionEvent;
    import javafx.scene.PointLight;
    import javafx.scene.shape.Sphere;
    import javafx.scene.control.*;
    import javafx.stage.Stage;
    import javafx.scene.Group;
    import javafx.scene.PerspectiveCamera;
    import javafx.scene.paint.Color;
      
    public class sphere_1 extends Application {
      
        // launch the application
        public void start(Stage stage)
        {
              
            // set title for the stage
            stage.setTitle("creating sphere");
      
            // create a sphere
            Sphere sphere = new Sphere(80.0f);
      
            // create a point light
            PointLight pointlight = new PointLight(Color.RED);
      
            // create a Group
            Group group = new Group(sphere, pointlight);
      
            // translate the sphere to a position
            sphere.setTranslateX(100);
            sphere.setTranslateY(100);
      
            // translate point light
            pointlight.setTranslateZ(-1000);
            pointlight.setTranslateX(+1000);
            pointlight.setTranslateY(+10);
      
            // create a perspective camera
            PerspectiveCamera camera = new PerspectiveCamera(false);
            camera.setTranslateX(0);
            camera.setTranslateY(0);
            camera.setTranslateZ(0);
      
            // create a scene
            Scene scene = new Scene(group, 500, 300);
      
            scene.setCamera(camera);
      
            // set the scene
            stage.setScene(scene);
      
            stage.show();
        }
          
        // Main Method
        public static void main(String args[])
        {
              
            // launch the application
            launch(args);
        }
    }

    Producción:

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/PointLight.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 *