3D 对象属性2024 年 8 月 29 日 | 5 分钟阅读 JavaFX 允许我们设置 3D 对象的各种属性。 JavaFX 中为每个属性定义了特殊的类。 在本教程的这一部分中,我们将讨论可以应用于 3D 对象以获得更好外观的属性类型。 剔除面剔除可以简单地定义为移除 3D 对象在视图区域中不可见的部分的过程。 在 JavaFX 中,3D 形状包含 CullFace 类型的属性。 可以使用以下实例方法将此属性设置为适当的值,该方法需要在 3D 形状类对象上调用。 setCullFace(CullFace value) CullFace 类中定义了三种类型的笔画,分别是
示例在以下示例中,我们创建了三个球体,并为每个球体设置了三个剔除面。 ![]() 3D 对象材质JavaFX 提供了各种可以应用于 3D 形状表面的材质。 包 javafx.scene.paint 的类 Material 提供了处理 3D 形状材质的所有类。 类 PhongMaterial 是类 Material 的子类。 我们只需要实例化这个类来创建所需的材质。 此类提供了各种类型的材质作为此类属性,可以通过使用 setter 方法将这些属性设置为特定值。 但是,可以使用以下方法将材质应用于形状。 性质类 javafx.scene.paint.PhongMaterial 的属性及其 setter 方法如下表所述。
示例![]() 绘图模式JavaFX 提供了各种绘图模式来绘制 3D 形状。 此属性是 DrawMode 类型。 类中定义了以下类型的 DrawMode。
使用以下 setter 方法为 3D 形状设置绘图模式。 示例在以下示例中,我们创建了两个框,一个使用 DrawMode Fill,另一个使用 DrawMode Line。 ![]() JavaFX 摄像机在 JavaFX 中,摄像机被视为一个对象,可以在 3D 布局中移动并相应地更改场景的视图。 类 javafx.scene.Camera 表示摄像机。 但是,它与 2D 空间不同,在 2D 空间中我们不需要在屏幕上移动摄像机。 在 JavaFX 摄像机坐标系中,X 坐标指向右侧,Y 坐标指向下方,Z 坐标指向远离观看者或进入屏幕的方向。 为了创建摄像机并将其添加到场景中,我们必须使用以下代码行。 // 创建 javafx.scene.Camera 的实例 // 将摄像机设置为在右侧 X 方向上 50 camera.setTranslateX(50); // 将摄像机设置为进入屏幕 20 // 将摄像机添加到场景 JavaFX 子场景子场景节点可以定义为容器,该容器可以容纳场景的某些节点,需要为这些节点指定摄像机角度。 它用于场景分离。 如果我们需要为场景的某一部分设置不同的摄像机,我们可以使用子场景节点。 子场景可以在以下情况之一中使用。
使用以下语法实例化子场景。 下一主题JavaFX Box |
我们请求您订阅我们的新闻通讯以获取最新更新。