La clase Light.Spot es parte de JavaFX. La clase Light.Spot se utiliza para crear un punto de luz con valores configurables de vector de dirección de luz, enfoque y color en el espacio 3D. La clase Light.Spot hereda la clase Light.Point .
Constructores de la clase:
- Spot() : crea una luz puntual con valores predeterminados
- Punto (doble x, doble y, doble z, doble s, Color c) : crea un punto de luz con valores específicos de x, y, z, exponente especular y color de luz
Métodos comúnmente utilizados:
Métodos | Explicación |
---|---|
obtenerPuntosEnX() | Devuelve la coordenada x del vector de dirección de la luz. |
obtenerPuntosEnY() | Devuelve la coordenada y del vector de dirección de la luz. |
obtenerPuntosEnZ() | Devuelve la coordenada z del vector de dirección de la luz. |
obtenerExponenteespecular() | Devuelve el valor de specularExponent. |
setPointsAtX(doble v) | Establece el valor de la coordenada x del vector de dirección de la luz. |
setPointsAtY(doble v) | Establece el valor de la coordenada y del vector de dirección de la luz. |
setPointsAtZ(doble v) | Establece el valor de la coordenada z del vector de dirección de la luz. |
setSpecularExponent(doble v) | Establece el valor de specularExponent. |
Los siguientes programas ilustran el uso de la clase Light.Spot:
- Programa Java para crear un Foco y agregarlo a un rectángulo: En este programa crearemos un Rectángulo llamado rectángulo con altura y ancho especificados. También crearemos un objeto Light.Spot llamado light . Estableceremos los valores x, y, z usando las funciones setX() , setY() y setZ() . Ahora crea un objeto de iluminación y agrega el objeto de luz a la iluminación usando la función setLight() . Estableceremos el efecto de Iluminación en el Rectángulo y lo agregaremos a la escena y agregaremos la escena al escenario y llamaremos a la función show para mostrar los resultados.
// Java Program to create a Spot light
// and add it to a rectangle
import
javafx.application.Application;
import
javafx.scene.Scene;
import
javafx.scene.shape.Rectangle;
import
javafx.scene.control.*;
import
javafx.stage.Stage;
import
javafx.scene.Group;
import
javafx.scene.effect.Light.*;
import
javafx.scene.effect.*;
import
javafx.scene.paint.Color;
public
class
Spot_1
extends
Application {
// launch the application
public
void
start(Stage stage)
{
// set title for the stage
stage.setTitle(
"creating Light.Spot"
);
// create Spot Light object
Light.Spot light =
new
Light.Spot();
// set coordinates
light.setX(
100
);
light.setY(
100
);
light.setZ(
100
);
// create a lighting
Lighting lighting =
new
Lighting();
// set Light of lighting
lighting.setLight(light);
// create a rectangle
Rectangle rect =
new
Rectangle(
250
,
250
);
// set fill
rect.setFill(Color.WHITE);
// set effect
rect.setEffect(lighting);
// create a Group
Group group =
new
Group(rect);
// create a scene
Scene scene =
new
Scene(group,
500
,
300
);
// set the scene
stage.setScene(scene);
stage.show();
}
// Main Method
public
static
void
main(String args[])
{
// launch the application
launch(args);
}
}
Producción:
- Programa Java para crear un Spotlight y agregarlo a un rectángulo y establecer las coordenadas del vector de dirección de la luz y el color de la luz: En este programa crearemos un Rectángulo llamado rectángulo con altura y ancho especificados. También crearemos un objeto Light.Spot llamado light . Estableceremos los valores x, y, z usando las funciones setX() , setY() y setZ() . La coordenada del vector de dirección de la luz se establece usando setPointsAtX() , setPointsAtY() y setPointsAtX() , y especifica el valor del color usando setColor()función Ahora cree un objeto de iluminación y agregue el objeto de luz a la iluminación usando la función setLight() . Estableceremos el efecto de Iluminación en el Rectángulo y lo agregaremos a la escena y agregaremos la escena al escenario y llamaremos a la función show para mostrar los resultados.
// Java Program to create a Spot light
// and add it to a rectangle and set the
// coordinates of direction vector of
// light and color of light
import
javafx.application.Application;
import
javafx.scene.Scene;
import
javafx.scene.shape.Rectangle;
import
javafx.scene.control.*;
import
javafx.stage.Stage;
import
javafx.scene.Group;
import
javafx.scene.effect.Light.*;
import
javafx.scene.effect.*;
import
javafx.scene.paint.Color;
public
class
Spot_2
extends
Application {
// launch the application
public
void
start(Stage stage)
{
// set title for the stage
stage.setTitle(
"creating Light.Spot"
);
// create Spot Light object
Light.Spot light =
new
Light.Spot();
// set coordinate of direction
// the vector of this light
light.setPointsAtX(
0
);
light.setPointsAtY(
0
);
light.setPointsAtZ(-
60
);
// set specular exponent
light.setSpecularExponent(
2
);
// set color of light
light.setColor(Color.RED);
// set coordinates
light.setX(
100
);
light.setY(
100
);
light.setZ(
200
);
// create a lighting
Lighting lighting =
new
Lighting();
// set Light of lighting
lighting.setLight(light);
// create a rectangle
Rectangle rect =
new
Rectangle(
250
,
250
);
// set fill
rect.setFill(Color.WHITE);
// set effect
rect.setEffect(lighting);
// create a Group
Group group =
new
Group(rect);
// create a scene
Scene scene =
new
Scene(group,
500
,
300
);
// 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/effect/Light.Spot.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