JavaFX - 3D 图形 方体

  • 简述

    长方体是三维或立体形状。长方体由 6 个以直角放置的矩形组成。使用方形面的长方体是立方体,如果面是矩形,而不是立方体,则它看起来像一个鞋盒。
    长方体是一个三维形状 length (深度), width, 和 height 如下图所示 -
    长方体
    在 JavaFX 中,一个 3 维框由一个名为的类表示 Box. 这个类属于包javafx.scene.shape.
    通过实例化此类,您可以在 JavaFX 中创建一个 Box 节点。
    此类具有 double 数据类型的 3 个属性,它们是 -
    • width - 盒子的宽度。
    • height - 盒子的高度。
    • depth - 盒子的深度。
    要绘制三次曲线,您需要通过将值传递给此类的构造函数来将值传递给这些属性。这必须在实例化时以相同的顺序完成,如下所示 -
    
    Box box = new Box(width, height, depth); 
    
    或者,通过使用它们各自的 setter 方法如下 -
    
    setWidth(value);
    setHeight(value); 
    setDepth(value); 
    
  • 绘制 3D 框的步骤

    要在 JavaFX 中绘制 3D 框,请按照以下步骤操作。

    第 1 步:创建一个类

    创建一个Java类并继承 Application 包的类别 javafx.application 并实施 start() 此类的方法如下 -
    
    public class ClassName extends Application {  
       @Override     
       public void start(Stage primaryStage) throws Exception {      
       }    
    }
    

    第 2 步:创建一个盒子

    您可以通过实例化名为的类在 JavaFX 中创建一个 Box BOX,属于一个包 javafx.scene.shape. 您可以按如下方式实例化此类。
    
    //Creating an object of the class Box 
    Box box = new Box();
    

    步骤 3:为框设置属性

    设置3D框的属性, Width, HeightDepth,使用它们各自的 setter 方法,如下面的代码块所示。
    
    //Setting the properties of the Box 
    box.setWidth(200.0); 
    box.setHeight(400.0);   
    box.setDepth(200.0);
    

    步骤 4:创建组对象

    在里面 start() 方法,通过实例化名为的类创建一个组对象 Group,属于包 javafx.scene.
    将在上一步中创建的 Box(节点)对象作为参数传递给 Group 类的构造函数。这样做是为了将其添加到组中,如下所示 -
    
    Group root = new Group(box);
    

    步骤 5:创建场景对象

    通过实例化名为的类来创建场景 Scene,属于包 javafx.scene. 向这个类传递 Group 对象 (root),在上一步中创建。
    除了根对象,您还可以传递两个表示屏幕高度和宽度的双参数以及 Group 类的对象,如下所示 -
    
    Scene scene = new Scene(group ,600, 300);
    

    第 6 步:设置舞台的标题

    您可以使用 setTitle() 的方法 Stage班级。这primaryStage 是一个Stage对象,作为参数传递给场景类的start方法。
    使用 primaryStage 对象,将场景的标题设置为 Sample Application 如下。
    
    primaryStage.setTitle("Sample Application");
    

    第 7 步:将场景添加到舞台

    您可以使用方法将 Scene 对象添加到舞台 setScene() 类名为 Stage. 使用以下方法添加在前面步骤中准备的 Scene 对象 -
    
    primaryStage.setScene(scene); 
    

    步骤 8:显示舞台内容

    使用 Stage 类的名为 show() 的方法显示场景的内容,如下所示。
    
    primaryStage.show(); 
    

    第 9 步:启动应用程序

    通过从主方法调用 Application 类的静态方法 launch() 来启动 JavaFX 应用程序,如下所示 -
    
    public static void main(String args[]){   
       launch(args);      
    }     
    

    例子

    以下是使用 JavaFX 生成 3D 框的程序。将此代码保存在名称为的文件中BoxExample.java.
    
    import javafx.application.Application; 
    import javafx.scene.Group; 
    import javafx.scene.Scene; 
    import javafx.scene.shape.Box; 
    import javafx.stage.Stage; 
             
    public class BoxExample extends Application { 
       @Override 
       public void start(Stage stage) { 
          //Drawing a Box 
          Box box = new Box();  
          
          //Setting the properties of the Box 
          box.setWidth(200.0); 
          box.setHeight(400.0);   
          box.setDepth(200.0); 
             
          //Creating a Group object  
          Group root = new Group(box); 
             
          //Creating a scene object 
          Scene scene = new Scene(root, 600, 300);   
          
          //Setting title to the Stage 
          stage.setTitle("Drawing a Box"); 
             
          //Adding scene to the stage 
          stage.setScene(scene); 
             
          //Displaying the contents of the stage 
          stage.show(); 
       }
       public static void main(String args[]){ 
          launch(args); 
       } 
    }
    
    使用以下命令从命令提示符编译并执行保存的 java 文件。
    
    javac BoxExample.java 
    java BoxExample
    
    执行时,上面的程序会生成一个 JavaFX 窗口,显示一个 3D 框,如下所示 -
    绘制 3dBox