
- JavaFX 教程
- JavaFX - 首頁
- JavaFX - 概述
- JavaFX 安裝和架構
- JavaFX - 環境
- JavaFX - 使用 Netbeans 安裝
- JavaFX - 使用 Eclipse 安裝
- JavaFX - 使用 Visual Studio Code 安裝
- JavaFX - 架構
- JavaFX - 應用程式
- JavaFX 二維圖形
- JavaFX - 二維圖形
- JavaFX - 繪製直線
- JavaFX - 繪製矩形
- JavaFX - 繪製圓角矩形
- JavaFX - 繪製圓形
- JavaFX - 繪製橢圓
- JavaFX - 繪製多邊形
- JavaFX - 繪製折線
- JavaFX - 繪製三次貝塞爾曲線
- JavaFX - 繪製二次貝塞爾曲線
- JavaFX - 繪製圓弧
- JavaFX - 繪製 SVG 路徑
- JavaFX 二維物件的屬性
- JavaFX - 描邊型別屬性
- JavaFX - 描邊寬度屬性
- JavaFX - 描邊填充屬性
- JavaFX - 描邊屬性
- JavaFX - 描邊連線屬性
- JavaFX - 描邊斜接限制屬性
- JavaFX - 描邊端點屬性
- JavaFX - 平滑屬性
- JavaFX 路徑物件
- JavaFX - 路徑物件
- JavaFX - LineTo 路徑物件
- JavaFX - HLineTo 路徑物件
- JavaFX - VLineTo 路徑物件
- JavaFX - QuadCurveTo 路徑物件
- JavaFX - CubicCurveTo 路徑物件
- JavaFX - ArcTo 路徑物件
- JavaFX 顏色和紋理
- JavaFX - 顏色
- JavaFX - 線性漸變圖案
- JavaFX - 徑向漸變圖案
- JavaFX 文字
- JavaFX - 文字
- JavaFX 效果
- JavaFX - 效果
- JavaFX - 顏色調整效果
- JavaFX - 顏色輸入效果
- JavaFX - 圖片輸入效果
- JavaFX - 混合效果
- JavaFX - 輝光效果
- JavaFX - 泛光效果
- JavaFX - 方框模糊效果
- JavaFX - 高斯模糊效果
- JavaFX - 運動模糊效果
- JavaFX - 反射效果
- JavaFX - 棕褐色效果
- JavaFX - 陰影效果
- JavaFX - 投影陰影效果
- JavaFX - 內陰影效果
- JavaFX - 光照效果
- JavaFX - 遠光源效果
- JavaFX - 聚光燈效果
- JavaFX - 點光源效果
- JavaFX - 位移貼圖
- JavaFX - 透視變換
- JavaFX 動畫
- JavaFX - 動畫
- JavaFX - 旋轉動畫
- JavaFX - 縮放動畫
- JavaFX - 平移動畫
- JavaFX - 淡入淡出動畫
- JavaFX - 填充動畫
- JavaFX - 描邊動畫
- JavaFX - 順序動畫
- JavaFX - 並行動畫
- JavaFX - 暫停動畫
- JavaFX - 路徑動畫
- JavaFX 圖片
- JavaFX - 圖片
- JavaFX 三維圖形
- JavaFX - 三維圖形
- JavaFX - 建立長方體
- JavaFX - 建立圓柱體
- JavaFX - 建立球體
- JavaFX 事件處理
- JavaFX - 事件處理
- JavaFX - 使用便捷方法
- JavaFX - 事件過濾器
- JavaFX - 事件處理器
- JavaFX UI 控制元件
- JavaFX - UI 控制元件
- JavaFX - 列表檢視
- JavaFX - 手風琴
- JavaFX - 按鈕欄
- JavaFX - 選擇框
- JavaFX - HTML 編輯器
- JavaFX - 選單欄
- JavaFX - 分頁
- JavaFX - 進度指示器
- JavaFX - 滾動窗格
- JavaFX - 分隔符
- JavaFX - 滑塊
- JavaFX - 微調器
- JavaFX - 分割窗格
- JavaFX - 表格檢視
- JavaFX - 標籤頁窗格
- JavaFX - 工具欄
- JavaFX - 樹檢視
- JavaFX - 標籤
- JavaFX - 複選框
- JavaFX - 單選按鈕
- JavaFX - 文字欄位
- JavaFX - 密碼欄位
- JavaFX - 檔案選擇器
- JavaFX - 超連結
- JavaFX - 工具提示
- JavaFX - 警報
- JavaFX - 日期選擇器
- JavaFX - 文字區域
- JavaFX 圖表
- JavaFX - 圖表
- JavaFX - 建立餅圖
- JavaFX - 建立折線圖
- JavaFX - 建立面積圖
- JavaFX - 建立條形圖
- JavaFX - 建立氣泡圖
- JavaFX - 建立散點圖
- JavaFX - 建立堆疊面積圖
- JavaFX - 建立堆疊條形圖
- JavaFX 佈局面板
- JavaFX - 佈局面板
- JavaFX - HBox 佈局
- JavaFX - VBox 佈局
- JavaFX - BorderPane 佈局
- JavaFX - StackPane 佈局
- JavaFX - TextFlow 佈局
- JavaFX - AnchorPane 佈局
- JavaFX - TilePane 佈局
- JavaFX - GridPane 佈局
- JavaFX - FlowPane 佈局
- JavaFX CSS
- JavaFX - CSS
- JavaFX 多媒體
- JavaFX - 處理多媒體
- JavaFX - 播放影片
- JavaFX 有用資源
- JavaFX - 快速指南
- JavaFX - 有用資源
- JavaFX - 討論
JavaFX - 建立長方體
長方體是一種三維立體形狀。長方體由6個矩形組成,這些矩形以直角放置。如果長方體使用正方形面,則為立方體;如果面為矩形,則非立方體,看起來像鞋盒。
長方體是一個三維形狀,具有長(深度)、寬和高,如下面的圖表所示:

在 JavaFX 中,這種三維形狀被稱為長方體;根據形狀的尺寸,它可以是長方體或立方體。
JavaFX 中的長方體
在 JavaFX 中,三維長方體由名為Box的類表示。此類屬於包javafx.scene.shape。
透過例項化此類,您可以在 JavaFX 中建立一個 Box 節點。
此類具有3個雙精度資料型別的屬性,它們是:
width - 長方體的寬度。
height - 長方體的高度。
depth - 長方體的深度。
要繪製三次貝塞爾曲線,您需要透過將它們傳遞給此類的建構函式來為這些屬性傳遞值。這必須在例項化時按相同的順序進行;或者,使用它們各自的 setter 方法。
繪製三維長方體的步驟
要在 JavaFX 中繪製三維長方體,請按照以下步驟操作。
步驟 1:建立長方體
您可以透過例項化名為Box的類在 JavaFX 中建立一個長方體,該類屬於包javafx.scene.shape。您可以在Application類的start()方法中例項化此類,如下所示。
public class ClassName extends Application { @Override public void start(Stage primaryStage) throws Exception { //Creating an object of the class Box Box box = new Box(); } }
步驟 2:設定長方體的屬性
使用各自的 setter 方法設定三維長方體的屬性寬度、高度和深度,如下面的程式碼塊所示。
//Setting the properties of the Box box.setWidth(200.0); box.setHeight(400.0); box.setDepth(200.0);
步驟 3:建立 Group 物件
在start()方法中,透過例項化名為Group的類(屬於包javafx.scene)來建立一個 group 物件。
將前面步驟中建立的 Box(節點)物件作為引數傳遞給 Group 類的建構函式。這樣做是為了將其新增到組中,如下所示:
Group root = new Group(box);
步驟 4:啟動應用程式
建立三維物件後,請按照以下步驟啟動 JavaFX 應用程式:
透過將 Group 物件作為引數值傳遞給其建構函式來例項化名為Scene的類。您還可以將應用程式螢幕的尺寸作為可選引數傳遞給建構函式。
使用Stage類的setTitle()方法設定舞臺的標題。
使用名為Stage的類的setScene()方法將場景物件新增到舞臺。
使用名為show()的方法顯示場景的內容。
最後,應用程式在 Application 類中使用launch()方法啟動。
示例
以下程式使用 JavaFX 生成一個三維長方體。將此程式碼儲存在名為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 --module-path %PATH_TO_FX% --add-modules javafx.controls BoxExample.java java --module-path %PATH_TO_FX% --add-modules javafx.controls BoxExample
輸出
執行上述程式後,會生成一個 JavaFX 視窗,其中顯示一個如下所示的三維長方體:

示例
在前面的示例中,我們沒有指定繪製長方體的起始和結束座標。但是,使用動畫類的translateX和translateY屬性,我們可以重新定位 JavaFX 應用程式上的長方體。讓我們看看下面的示例,並將其儲存在名為TranslateBoxExample.java的檔案中。
import javafx.application.Application; import javafx.scene.Group; import javafx.scene.Scene; import javafx.scene.shape.Box; import javafx.scene.paint.Color; import javafx.scene.transform.Translate; import javafx.stage.Stage; public class TranslateBoxExample 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(200.0); box.setDepth(200.0); Translate translate = new Translate(); translate.setX(200); translate.setY(150); translate.setZ(25); box.getTransforms().addAll(translate); //Creating a Group object Group root = new Group(box); //Creating a scene object Scene scene = new Scene(root, 400, 300); scene.setFill(Color.web("#81c483")); //Setting title to the Stage stage.setTitle("Translate 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 --module-path %PATH_TO_FX% --add-modules javafx.controls TranslateBoxExample.java java --module-path %PATH_TO_FX% --add-modules javafx.controls TranslateBoxExample
輸出
執行上述程式後,會生成一個 JavaFX 視窗,其中顯示一個如下所示的三維長方體。我們對場景進行了著色,以便區分長方體平移後的位置。
