La clase AmbientLight es parte de JavaFX. Esta clase define un objeto de luz ambiental. La clase AmbientLight crea una fuente de luz que parece provenir de todas las direcciones.
Los constructores de la clase son:
- AmbientLight() : crea una fuente de luz ambiental con color blanco predeterminado
- AmbientLight(Color c) : Crea una fuente de luz ambiental con el color especificado
Los siguientes métodos se heredan de LightBase:
Métodos | 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 ilustrarán el uso de la clase AmbientLight:
- Programa Java para crear una luz ambiental de color predeterminado: Este programa crea una Esfera indicada por el nombre esfera (el radio se pasa como argumento). Se crea una AmbientLight denominada ambient_light de color blanco predeterminado. Se creará un botón llamado Botón que se usará para encender o apagar la luz ambiental. 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 adjunta la esfera, el botón y la luz ambiental. El grupo se adjunta a la escena. Finalmente, se llama al método show() para mostrar los resultados finales.
// Java program to create a ambient 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.AmbientLight;
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;
import
javafx.event.ActionEvent;
import
javafx.event.EventHandler;
public
class
ambient_light_1
extends
Application {
// launch the application
public
void
start(Stage stage)
{
// set title for the stage
stage.setTitle(
"creating ambient_light"
);
// create a sphere
Sphere sphere =
new
Sphere(
80
.0f);
// create a ambient light
AmbientLight ambient_light =
new
AmbientLight();
// create a button
Button button =
new
Button(
"light"
);
// create a Group
Group group =
new
Group(sphere, ambient_light, button);
// translate the sphere to a position
sphere.setTranslateX(
100
);
sphere.setTranslateY(
100
);
// action event
EventHandler<ActionEvent> event =
new
EventHandler<ActionEvent>() {
public
void
handle(ActionEvent e)
{
ambient_light.setLightOn(!ambient_light.isLightOn());
}
};
// set on action
button.setOnAction(event);
// 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 una luz ambiental de un color específico: Este programa crea una Esfera indicada por el nombre esfera (el radio se pasa como argumento). Se crea una AmbientLight llamada ambient_light de un color específico (RED). Se creará un botón llamado Botón que se usará para encender o apagar la luz ambiental. 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 adjunta la esfera, el botón y la luz ambiental. El grupo se adjunta a la escena. Finalmente, se llama al método show() para mostrar los resultados finales.
// Java program to create a ambient light
// of a specified 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.AmbientLight;
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;
import
javafx.event.ActionEvent;
import
javafx.event.EventHandler;
public
class
ambient_light_2
extends
Application {
// launch the application
public
void
start(Stage stage)
{
// set title for the stage
stage.setTitle(
"creating ambient_light"
);
// create a sphere
Sphere sphere =
new
Sphere(
80
.0f);
// create a ambient light
AmbientLight ambient_light =
new
AmbientLight(Color.RED);
// create a button
Button button =
new
Button(
"light"
);
// create a Group
Group group =
new
Group(sphere, ambient_light, button);
// translate the sphere to a position
sphere.setTranslateX(
100
);
sphere.setTranslateY(
100
);
// action event
EventHandler<ActionEvent> event =
new
EventHandler<ActionEvent>() {
public
void
handle(ActionEvent e)
{
ambient_light.setLightOn(!ambient_light.isLightOn());
}
};
// set on action
button.setOnAction(event);
// 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/AmbientLight.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