AmbientLight类是JavaFX的一部分。此类定义环境光对象。 AmbientLight类创建一个似乎来自各个方向的光源。
该类的构造函数是:
- AmbientLight():创建具有默认白色的环境光源
- AmbientLight(Color c):创建具有指定颜色的环境光源
以下方法是从LightBase继承的:
方法 | 说明 |
---|---|
getColor() | 返回灯光的颜色 |
isLightOn() | 返回指示灯是否点亮 |
setColor(Color value) | 设置灯光的颜色 |
setLightOn(boolean value) | 设置属性lightOn的值。 |
下面的程序将说明AmbientLight类的用法:
- Java程序创建默认颜色的环境光:该程序创建一个以sphere命名的Sphere(半径作为参数传递)。将创建一个名为ambient_light的AmbientLight,其默认为白色。将创建一个名为button的按钮,该按钮将用于打开或关闭环境光。 Sphere将在场景内创建,而场景又将在舞台内托管。函数setTitle()用于为舞台提供标题。然后创建一个组,并附加了球体,按钮和环境光。该组已附加到场景中。最后,调用show()方法以显示最终结果。
// 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); } }
输出:
- Java程序创建指定颜色的环境光:该程序创建一个以sphere命名的Sphere(半径作为参数传递)。创建一个名为ambient_light的AmbientLight,它具有指定的颜色(红色)。将创建一个名为button的按钮,该按钮将用于打开或关闭环境光。 Sphere将在场景内创建,而场景又将在舞台内托管。函数setTitle()用于为舞台提供标题。然后创建一个组,并附加了球体,按钮和环境光。该组已附加到场景中。最后,调用show()方法以显示最终结果。
// 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); } }
输出:
注意:以上程序可能无法在在线IDE中运行。请使用离线编译器。
参考:https://docs.oracle.com/javase/8/javafx/api/javafx/scene/AmbientLight.html
相关用法
- JavaFX 类 Pos用法及代码示例
- JavaFX 类 Tab用法及代码示例
- JavaFX 类 FileChooser用法及代码示例
- JavaFX 类 DirectoryChooser用法及代码示例
- JavaFX 类 TextFlow用法及代码示例
- JavaFX 类 TextAlignment用法及代码示例
- JavaFX 类 FontWeight用法及代码示例
- JavaFX 类 ClosePath用法及代码示例
- JavaFX 类 Popup用法及代码示例
- JavaFX 类 TitledPane用法及代码示例
- JavaFX 类 SplitPane用法及代码示例
- JavaFX 类 LineTo用法及代码示例
- JavaFX 类 StackPane用法及代码示例
- JavaFX 类 Font用法及代码示例
- JavaFX 类 VLineTo用法及代码示例
注:本文由纯净天空筛选整理自andrew1234大神的英文原创作品 JavaFX | AmbientLight Class。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。