打著IMAX 3D噱頭的《阿凡達》在全球瘋狂掠走了20億美元的票房。然而,一切還未結束。在國內,馮小剛以同樣的3D作品《唐山大地震》三天票房就輕松過億,IMAX版本一票難求,其氣勢比《阿凡達》有過之而無不及。人們為什么對這些電影趨之若鶩呢?說到底還是無法阻擋3D技術帶來的震撼和沖擊,是真正的“眼球經濟”、全新的“用戶體驗”。而在一日千里的軟件行當,我們的3D技術雖然在游戲、工程制圖等領域已經普及,但是在大多日常領域卻并不多見。而在更嚴肅一點的電信網絡管理監控類的軟件中則更是難得一見。那么,如果在你的界面上呈現一個自由旋轉、可交互的3D的機房監控界面(如下圖),用戶的感覺又會如何呢?不必驚訝。看完這篇文章你就會知道,用TWaver做這類界面,只是分分鐘的事。
什么是TWaver® 3D機房管理軟件
TWaver® 3D機房管理軟件(以下簡稱“3D機房”)是用于管理電信運營商機房資源的軟件平臺,是賽瓦軟件TWaver®產品家族中的一員。3D機房通過集成設計環境(IDE)對電信行業各種機房資源進行設計、建模、存儲,并以三維技術進行呈現和展示。3D機房既是一個完善的電信機房資源管理工具,也是一個電信資源管理的二次開發平臺和組件。
產品結構
TWaver3D機房是一個C/S(客戶端/服務器)結構的桌面應用程序,包括應用程序和數據庫兩部分。功能包括2D機房設計器、3D機房呈現試圖、數據轉換與存儲模塊。通過3D機房,用戶可以方便快速的創建電信機房環境,并對各種機房資源進行管理和存儲。這些機房數據通過XML格式進行轉換并存儲在數據庫中,可以為其他OSS軟件系統(如網管系統、資源管理系統等)共享使用。
目標用戶
TWaver3D機房可以為廣大電信運營商、設備制造商、軟件開發商所使用。尤其在以下幾種情況下,TWaver3D機房將會帶來更大的作用:
- 電信網管軟件開發者:將TWaver3D機房作為二次開發平臺,開發符合自身需要的機房資源管理軟件系統;
- 系統集成商:可將TWaver3D機房與現有軟件系統整合,提供完整的機房資源管理能力;
- TWaver開發者:將TWaver3D機房作為呈現組件,對各種機房資源進行三維展示;
- 電信運營商:直接使用TWaver3D機房,管理現有機房資源;
使用編輯器
TWaver3D機房提供了一個可視化的編輯工具,用來在一個IDE環境下對機房進行創建、建模、貼圖、布置、保存等工作。要使用編輯器,首先需要安裝MySQL數據庫。這個過程對我們來說非常簡單,過程忽略。
MySQL安裝結束后,創建一個數據庫,并將TWaver3D機房中提供的SQL數據庫腳本導入。
mysqldump –u root –p twaver_platform < c:\database.sql
然后就可以雙擊TWaver3D中的run.bat,啟動編輯工具了。接下來要對編輯工具進行初始化。啟動TWaver3D機房后,進入程序主頁面,如下圖:

點擊主菜單Tools——Options,打開系統設置界面:
確保設置以下數值:
- Database Server:數據庫服務器地址。輸入localhost(本機);
- Database Port:數據庫服務器端口。輸入MySQL默認端口3306;
- Database Name:數據庫名稱。輸入twaver_platform;
- Database User Name:數據庫用戶名。輸入root;
- Database Password:數據庫密碼。輸入public;
點擊OK保存設置。至此,TWaver3D機房已經安裝設置完畢,可以使用。
常用操作
創建機房
在TWaver3D機房中,點擊System——New菜單:
在對話框中選擇“Room“,點擊OK按鈕,創建新的機房對象。

機房集成編輯環境如下圖所示。
其中各個面板作用如下:
- 機房環境參數設置。包括房間大小、填充顏色等;
- 機房2D設計視圖。可以在這里創建對象、移動對象、縮放、參數設置等;
- 對象屬性表。可以對選中對象進行各種參數設置;
- 3D設計視圖。對2D設計視圖中的數據進行3D視圖自動轉換和呈現。
保存機房
在TWaver3D機房中,點擊2D設計視圖中工具條的“Save“按鈕,可以將當前機房保存到數據庫中:
打開機房
一旦機房被保存到數據庫,即可在任意時間打開機房數據進行修改。點擊主菜單中的System——Open Room菜單項:

在彈出的對話框的列表中,選中要編輯的機房,點擊“確定”按鈕即可打開機房:
創建機房物體
點擊工具欄的“New”按鈕,可以創建一個新的3D機房物體。

新建的機房物體會在2D和3D視圖中顯示出來。同時,新建的物體也會自動被選中,其相關屬性會在右側的屬性表中羅列出來。

3D機房環境中,每個物體的主要屬性如下圖所示:

3D機房環境還提供了不同角度的旋轉、縮放等,圖解如下:
在3D機房中,物體的呈現遵循以下原則:
- 每一個物體都是立方體。3D機房不支持其他形狀的物體,例如球體、圓柱體等;
- 每一個物體在水平、垂直兩個方向上旋轉角度不超過90度。也就是說,每個物體只能呈現其左、右、頂三個面;
- 每個物體必須接觸在水平面上,而不能懸空;
3D機房物體的主要屬性和含義在下表中羅列:
屬性 |
描述 |
舉例 |
AlarmState |
告警狀態,包含當前物體上的所有告警信息。 |
帶有告警信息的3D物體
|
Location |
物體的坐標位置 |
|
Height |
物體的3D高度 |
具有不同高度的物體
|
Left Visible |
物體的左側立面否可見 |
左側立面不可見的物體
|
Left Image |
物體的左側立面貼圖圖片 |
設置左側立面貼圖的物體
|
Left Image Bounds |
物體的左側立面貼圖的具體邊界 |
左側貼圖設置邊界為[10,10,30,30],開始坐標為10,10,寬高分別為30和30
|
Left Image Texture |
物體左側立面貼圖是否使用紋理模式 |
設置金屬拉絲紋理圖片
|
Left Image Texture Scale |
物體左側立面貼圖是否使用紋理的放大系數 |
問題放大系數設置為3和10的區別
|
Right Visible |
物體的右側立面否可見 |
同上 |
Right Image |
物體的右側立面貼圖圖片 |
同上 |
Right Image Bounds |
物體的右側立面貼圖的具體邊界 |
同上 |
Right Image Texture |
物體右側立面貼圖是否使用紋理模式 |
同上 |
Right Image Texture Scale |
物體右側立面貼圖是否使用紋理的放大系數 |
同上 |
Top Image |
物體頂面貼圖圖片 |
設置頂面圖片的物體
|
Top Visible |
物體頂面是否可見 |
頂面不可見的物體
|
設置機房環境參數
機房環境參數包括機房名稱以及機房地平面參數。在左側編輯面板上可以直接進行編輯:
具體參數含義如下:
參數 |
描述 |
Room Name |
機房名稱 |
Floor Grid Unit |
地平面網格單位。也就是地平面每個方塊的尺寸有多少個最小單位數量。默認值是3 |
Floor Grid Row Count |
地平面方塊行數量 |
Floor Grid Column Count |
地平面方塊列數量 |
Floor Grid Color 1 |
地平面方塊顏色一 |
Floor Grid Color 2 |
地平面方塊顏色二 |
3D Floor Left Side Color |
地平面左側立面顏色 |
3D Floor Right Side Color |
地平面右側立面顏色 |
Floor Grid Color |
地平面網格線顏色 |
Floor Grid Stroke |
地平面網格線寬度,默認為0,單像素寬 |
Floor Deep |
地平面的厚度(高度),默認為1個單位 |
常用編輯操作
編輯環境中,2D視圖和3D視圖直接聯動。2D視圖中可以控制尺寸、位置等操作,3D視圖中可以進行縮放、旋轉、選擇等操作。
2D視圖常用操作方法如下:
操作 |
描述 |
選擇 |
通過鼠標可以直接在2D視圖上點擊物體進行選擇。被選中的物體會顯示8個小方塊。同時,屬性表也會列出選中物體的所有屬性。

|
修改尺寸 |
選中物體后,通過鼠標對8個小方塊可以直接對物體的尺寸進行修改。
此外,也可以用鼠標選中物體后,按Shift+方向鍵來修改物體的尺寸。

|
移動物體 |
用鼠標選擇物體后,對物體進行拖拽,可以顯示出要移動的新位置;松開鼠標,可以將物體移動到虛線顯示的位置。

此外,也可以用鼠標選中物體后,點擊方向鍵對物體進行移動。
|
放大視圖 |
點擊工具欄的放大按鈕,可以對整個視圖進行放大。

|
縮小視圖 |
點擊工具欄的縮小按鈕,可以對整個視圖進行縮小。

|
縮放回退 |
點擊工具欄的Zoom Back按鈕,可以回退到上次縮放比例。

|
充滿縮放 |
點擊工具欄的Zoom To Overview按鈕,可以將視圖拉伸縮放充滿當前整個可見區域。

|
矩形縮放 |
點擊工具欄的按鈕,可以在視圖上拖拽一個矩形區域,并將其放大至整個畫布

|
縮放重置 |
點擊工具欄的“Zoom Reset”按鈕,可以將當前視圖縮放重置為1:1。

|
鷹眼視圖 |
點擊工具欄的“Overview Window”按鈕,可以顯示或隱藏鷹眼視圖

|
全屏顯示 |
點擊工具欄的“Full Screen”按鈕,可以進入或退出全屏模式。

|
導出圖片 |
點擊工具欄的“Export Image”按鈕,可以把視圖導出到位圖圖片中。

在彈出對話框中,可以指定圖片導出的區域。

|
導出SVG |
點擊工具欄的“Export SVG”按鈕,可以把視圖導出到一個SVG文件中。SVG是一個W3C標準的矢量圖形文件格式。

|
拷貝粘貼 |
選中物體后,按Control+C組合鍵進行物體拷貝,按Control+V組合鍵進行物體粘貼。 |
刪除對象 |
拖動鼠標選擇要刪除的對象,點擊“Del”鍵可以刪除所選中的對象。在確認對話框中選擇“是”。

|
3D視圖常用操作方法如下:
操作 |
描述 |
視圖縮放 |
在3D視圖上,用鼠標滑動滾輪,可以對視圖進行縮放。鼠標指向的位置,會在縮放過程中,始終保持在鼠標的位置 |
視圖平移 |
用鼠標在3D視圖上進行拖拽,可以直接對視圖進行上下左右平移。 |
物體選擇 |
點擊鼠標可以選擇鼠標所在位置的物體。如果多個物體重疊,則最上面的物體會被選中。 |
視圖旋轉 |
按住Control鍵的同時,用鼠標拖拽視圖,可以對視圖進行水平、垂直兩個方向旋轉。
注意:水平旋轉和垂直旋轉最大角度為90度。
|
重置縮放 |
雙擊3D視圖可以回到1:1的原始縮放比例。 |
一個完整的例子
本節通過編輯一個完整的例子來展示如何創建一個完整的3D機房。
第一步:創建房間墻體布局
點擊New按鈕創建節點,通過Shift+箭頭調整節點尺寸,形成一個單位的墻體厚度,并首尾相接,拼湊成如下形狀的布局。

第二步:設置墻體紋理圖片
準備一張自己喜歡的墻體紋理作為素材,存放在磁盤上(如下圖)。

在2D視圖上按鍵Control+A選擇所有物體。

在右側屬性表中,設置其左側立面的圖片為該紋理圖片。

同時將左側里面設置為紋理模式,將紋理放大系數設置為5。

對右側里面設置同樣圖片、紋理以及紋理放大視圖。最終3D效果如下圖:

第三步:創建空調對象
選中所有墻體(Control+A)并在屬性表中設置高度為150。在底部墻位置放置一個新對象,高度120并設置其top、left立面設置金屬拉絲紋理圖片,右側立面設置一個空調面板圖片。顯示效果如下圖:

在2D視圖上,選中空調對象,按Control+C后連續按Control+V快捷鍵,創建更多空調對象,并放置在合適的位置:

第四步:創建窗戶和掛畫
要在現有墻體上創建窗戶、門、掛畫等對象,可以創建一個物體并設置其厚度為0,然后設置其側面貼圖,并強制指定貼圖的邊界區域,最后將對象靠在墻體表面的位置即可。

創建物體,調整厚度為0

設置左側圖片,并指定其邊界為(10,10,100,100)

設定物體填充色為透明(修改顏色最后兩位數字為00即可)

移動物體到墻體位置
重復以上步驟,設置門、掛畫等物體,進一步美化機房環境。
第五步:創建電信設備
在房間空白處放置新物體,并設置其左右面板為設備面板圖。創建更多設備并調整其位置。

可以在屬性表中設置設備的告警狀態。
添加墻角物體,設置填充色為暗紅色,設置圖片為滅火器消防栓。

一個簡單的機房環境就基本完成了。可以雙擊2D或3D視圖的標題條進行最大化顯示:
第六步:保存機房
在機房環境變量編輯面板上設置機房名稱等信息。

點擊工具條上的Save按鈕保存當前機房:
可以在主菜單中再次打開機房,進行進一步編輯修改。
通過以上步驟可以看到,TWaver3D機房可以很方便的通過可視化的方式創建機房環境并用3D方式進行呈現。