遲小羽 鄭國勤 王 琳 于貴友
(中國建筑科學研究院建研科技股份有限公司,北京100013)
計算機輔助設計(Computer Aided Design)和計算機輔助工程(Computer Aided Engineering)領域至今經歷了數十年的發展,從最開始的簡單造型表達如貝塞爾曲線,到后來的參數化建模和三維實體加工技術,再到最近非常流行的直接建模、PLM、BIM等技術和概念。底層的數據表達處理、幾何描述、交互手段這些核心技術點上的創新一直為推動CAD行業發展提供源源不斷的動力。
從CAD行業發展之初至今,無論是在工業領域,還是在建筑領域,都是以輔助設計、生產、施工等工作,并在這些環節中提高生產率為主要目的。尤其是在設計和加工流程和各環節,都需要對工作所涉及的實物進行詳細的表達、描述和運算等,CAD、CAE軟件將原來用圖紙進行的工作,逐步轉換到計算機上進行自動化的設計、加工、生產等。而這個過程中CAD類軟件本身也經歷了由二維到三維的轉變。尤其是在20世紀70年代到80年代期間,一系列基于三維的幾何內核(如Romulus、Parasolid、ACIS)的產生以及一些基于參數化造型設計的設計軟件(如 Solidworks、Pro/E、CATIA)的推出,奠定了近二三十年CAD軟件行業的基本形態和工作方式。這些幾何內核(Geometry Kernel)其最重要的功能是進行復雜模型的幾何造型,因此它們同時也被稱為幾何造型器(Geometry Modeler)。
本文即主要研究和分析在CAD軟件領域中,尤其是建筑和BIM軟件中三維幾何內核的應用,以及這些應用所帶來的生產力提高及對整個CAD行業發展的推動。
眾所周知,任何工業產品,無論是建筑還是機械零件在加工生產出來之前都需要使用圖紙進行設計、表達和描述。而設計師、工程師和工人們通過閱讀這些二維圖紙,并根據規則將其翻譯成為三維實體的描述進行加工生產。計算機很難直接對二維的圖紙和表達進行直接生產加工。從上世紀70、80年代開始,隨著計算機運算能力的提升,通過計算機內部的數據結構描述和表達現實世界中三維部件、三維實體,并由這些數據表達和描述驅動數控加工設備(如數控機床)進行全自動化的實物加工和生產才成為了可能。
也正是在70年代末、80年代初,以英國劍橋為中心的一些科研人員們先后推出了Parasolid和ACIS這兩個現今使用最為普遍的幾何內核。而現今我們熟悉的機械及建筑類的CAD、CAE軟件的底層幾何描述,幾乎都是基于這兩款幾何內核之上。從名稱不難看出,Parasolid之命名就有參數化(parametric)設計及實體(solid)建模的意義。
從80年代后期開始,建筑類CAD軟件也緊隨著機械CAD軟件行業之后開始應用三維幾何造型內核以輔助建筑的參數化造型、設計,以及部件的生產和加工等工作。雖然與全自動加工生產沒有機械行業那么緊密,但幾何造型內核仍能在很多方面給予建筑領域CAD軟件在設計和表達描述上很大的提升和幫助。
可以說沒有三維幾何內核,就沒有最近三十年的工業化生產,現在人們日常生活中使用的產品,小到手表、圓珠筆、手機,大到汽車、飛機、體育場、核電站,都離不開CAD、CAE類軟件,而絕大部分CAD、CAE軟件背后的三維幾何表達都無一例外的依靠著三維幾何內核。毫不夸張地說,人類今天的生活正嚴重依賴著CAD軟件中的幾何內核。幾何內核是所有CAD、CAE軟件的最核心技術之一。
如前所述,現在工業領域的CAD、CAE軟件幾乎無一例外地使用幾何內核作為三維的設計、表達、運算工具。而現在的幾何內核主要分為三大產品。他們分別是達索系統(Dassault System)旗下的ACIS,西門子工業仿真(Siemens PLM)旗下的Parasolid,以及Matra Datavision旗下的開源內核Open-CASCADE。其中Parasolid和ACIS是性能優秀且使用廣泛的商業內核,而OpenCASCADE雖然性能稍遜,但是由于其開源和免費,也擁有眾多的用戶。
(1)Parasolid由于開發較早(1986年始),且性能最快(大部分數據結構使用C代碼編寫),同時又在后來被UG、Siemens PLM等大集團收購,其擁有眾多大型CAD軟件作為用戶,如Solidworks、Autodesk Inventor、UG Solid Edge、Nemetschek VectorWorks、Bentley MicroStation、Tekla、ANSYS 等,這些企業都是規模較大,年軟件銷售額在2億美元以上的企業。
(2)ACIS由于推出的略晚于Parasolid,由幾乎相同的初創團隊進行開發,并進行了面向對象的封裝,雖然其在速度和效率上有所不及,但是功能性、易用性和售后支持在其2003年被達索系統收購之后都有了很大提升,現今眾多主流的CAD軟件也在使用ACIS作為幾何內核,如AutoDesk AutoCAD、Dassault Catia、Pro/E、Solid Modeler、TurboCAD、達索Abaques、Ansys Fluent、Intergraph 系列產品等。
(3)OpenCASCADE在1999年開源,雖然其在布爾運算的速度和穩定性上明顯遜色于前兩款商業幾何內核,但仍擁有眾多使用者,如4M Inteli-CAD、Smamtech、Midas Civil(后改用 ACIS)、Any-Works、FreeCAD 等。
類似于80、90年代的機械加工業CAD軟件的三維化和參數化造型化,最近幾年,隨著建筑行業對工程規模、質量等方面的需求越來越高,精確的三維幾何造型、三維表達、三維部件加工已經越來越多地應用在眾多建筑工程之中,而BIM的概念也類似于當年制造業中PLM(Product Lifecycle Management)概念的推廣和普及,慢慢地在建筑行業被人們所接受和熟悉。如今建筑領域知名的大型CAD軟件,都無一例外地使用了幾何內核。
據稱,Autodesk公司由于在2001年前后永久買斷了ACIS的代碼使用權,其產品AutoCAD,以及后來收購的Revit都使用ACIS作為幾何內核,可以高效地進行三維幾何形體的參數化建模和編輯,并能導出擁有拓撲信息和體數據的“.sat”、“.sab”體模型文件和“.dwg”系列體模型文件。
Bentley的Microstation一直以來都使用Parasolid作為幾何內核,并在此基礎上支持各種三維建模、編輯、運算和操作。
Nemetschek的Vectorworks產品通過使用Parasolid作為幾何內核,提高了三維表達能力和運算速度。
Dassault的CATIA軟件也是基于ACIS幾何內核的產品,由于其積累了大量大型工業項目和產品的設計經驗(如大飛機、核電站等),最近CATIA也進入了建筑BIM市場,并參與了鳥巢、銀河soho、上海中心的一系列項目。這些復雜形體的設計、建模與加工建設,都離不開其使用的ACIS內核。
特別是在結構及仿真領域,通用仿真軟件ANSYS和鋼結構軟件Tekla都使用Parasolid作為幾何內核表達和運算工具,這樣不僅能夠很容易地導入其他CAD軟件設計的含有三維實體信息的模型進行運算,在本軟件進行仿真模擬運算之后的結果也可以直接輸出進行制造和加工。在建筑部件越來越多地被工廠化加工和生產的未來,這幾乎成為BIM或建筑類CAD軟件所必須具備的能力。
與國際上主流的建筑類CAD和BIM軟件深度使用幾何內核形成鮮明對比的是,國內同行業的企業們還處在相對初級的階段。除了主要面向機械制造領域的CAXA使用了Parasolid和ACIS雙內核之外,幾何內核的使用在國內則主要停留在科研和一些項目層面,很少有國內CAD類軟件直接使用三維幾何內核。如一些廠商的產品主要定位是出平面施工圖;以工程預算和造價為主要產品的企業,其造價和算量軟件產品也是基于二維圖紙信息;國內相當數量的CAD軟件公司更是直接把自己的軟件產品做在AutoCAD或者Revit平臺之上。從現在的市場和技術情況分析,國內一些機械制造領域CAD廠商在開發和使用幾何內核,而建筑領域CAD廠商仍然需要一段時間來適應建筑類CAD軟件的BIM化和三維化。
BIM的概念是最近幾年建筑及CAD軟件行業提出的最重要的概念,其影響力和重要程度不亞于二十余年前甩開繪圖板的“無紙化設計”,被稱為又一次建筑設計行業的革命。由于其所代表的技術先進性和能夠提供巨大的便利和生產力革命,BIM是未來十年內建筑行業和CAD軟件行業唯一可以用革命二字形容,且最具商業價值的方向和增長點。最近十年建筑領域最為火熱的概念即BIM,通過BIM功能的實現,在整個建筑的規劃、設計、施工建設、使用維護的整個過程中,各種數信息、數據流和狀態等,能夠被有效地組織、傳達和管理起來。而作為建筑BIM應用中最重要的幾個專業領域,如建筑設計、結構、設備MEP等,都能從對幾何內核的應用中得到極大的能力提升和效率提升。以下我們會一一闡明。
建筑專業,尤其是建筑設計師需要對建筑的外形和基本結構進行建模,高精度幾何模型、復雜的曲面建模和曲面表示都是建筑行業所需要的。同時建筑行業對幾何模型的規模需求較大,很多建筑設計的細節都需要能夠顯示出來,可視化的三維交互編輯對建筑設計師設計滿意的建筑是有很大的幫助的。以上的一些實際應用需要BIM產品的圖形平臺有很強的幾何建模能力(復雜曲面建模)和大規模復雜場景運算、顯示能力。

同時,建筑行業在進行建模的過程中需要涉及到大量的幾何布爾求交運算,如在墻上打孔安裝窗戶等類似的建模和編輯過程中,需要正確的布爾運算。同時,如果涉及到在圓弧或者復雜曲面上的模型(見圖1),對運算的效率和正確性都有很大的要求。現在很多建筑專業此類功能開發時,底層函數是由專業人員寫的,算法的深度、廣度都有局限性,如果能使用商業幾何內核,直接調用其API,能大大提高BIM產品的開發效率和開發出軟件產品的功能和穩定性。
近幾年為提高設計效率而來的族庫(Family)也能夠對建筑設計專業提升工作效率提供非常大的幫助,用有限的功能去實現用戶無限的需求,見圖2中各式各樣的凸窗,用參數描述復雜且有限。而族庫概念是建立在參數化造型設計和三維幾何內核應用的前提之上的,是可以發揮和擴展的。
BIM概念的作用在建筑后期的運營維護階段會更凸顯出來,運營階段對設備專業的設備管理將會占很大比例,所以設備專業模型信息的建立、表達、描述就變得很重要。
各設備專業需要大量的三維模型圖庫以解放設計師,畢竟建筑設備工程師們不是設備廠商的設計師,直接調用這些圖庫或者模型庫,省去不必要的建模工作,能夠大量節省他們的工作量和勞動量,為BIM軟件用戶提供更高的工作效率。
現在流行的建筑行業族庫,主要使用參數化模型描述,即通過一個基礎模型和對此基礎模型的一系列參數化編輯,能夠生成一系列的模型組件。這樣,平臺軟件內不需要存儲大量的幾何建模結果,同時又能讓設計師用最短的時間獲得他們想要的部件模型。而對于族庫的應用,需要三維底層幾何描述有強大的參數化模型描述和建模能力,以及正確高效的布爾運算能力。
同時,在進行設備布局和建筑設備設計的時候,尤其是MEP專業中,會涉及到布局和管線走線等工作。從技術角度上需要使用幾何模型的碰撞檢測和一定的路徑規劃來處理此類問題,這也是幾何內核與其配套的約束求解器的主要功能之一(見圖3)。

圖3 幾何約束求解器路徑規劃和碰撞檢測功能
作為對于建筑建造和安全最為重要的領域,結構計算是BIM中非常重要,但又非常難于整合實現的一個專業性極強的工作,尤其是結構計算在有限元網格劃分和模型計算的時候有一套自身獨特的優化規律和規則。也正是由于這些特殊性,導致至今為止的BIM系統都不能把結構計算性能做到最極致。
作為結構領域知名軟件之一,MIDAS在模型數據模型讀取和轉換上購買了Dassault Spatial的InterOP產品,可以處理和轉換各種國際上處理的結構計算文件格式。同時,其幾何內核使用了OpenCASCADE進行三維幾何建模描述工作(后改用ACIS),能夠進行一定的曲面造型,建造曲面網架,并進行布爾運算。相應地,鋼結構的Tekla使用了Parasolid作為幾何內核。
未來平臺需要有一定的曲面造型能力,才能構造曲面網架,并進行曲面網架的構建運算等,同時對更為復雜的建筑進行結構模擬和運算。
同時,對于比較復雜的結構模型,BIM產品需要足夠的幾何曲面造型能力和表達能力,才能生成真正符合復雜建筑物結構的結構模型,而這對幾何內核的性能提出了較高的要求(見圖4)。
同一套BIM系統之下,數據平臺需要在各個專業之間傳輸數據,并進行統一的管理,需要統一的幾何表達和描述格式。同時,由于BIM產品系統平臺開放性的需求,需要未來在用戶處(主要是各個設計單位)需要能夠讀入各廠商軟件格式的設計數據,如 SAT、DGN、DWG、JT、IGES、CATIA(V5/V6)、X_T、STEP等,而這些格式的文件中有可能含有復雜曲面建模的和CSG體表達的數據等。

圖4 復雜三位結構表達需求示意圖
為能夠讀取和處理這些國際上通用的CAD標準文件,BIM產品需要有足夠的幾何描述表達能力讀取和處理B-rep幾何表達的文件,并需要讓經過其處理的結果能夠存儲成為這些國際上主要流形文件格式,以便在各種用戶處達到很好地兼容性。只有擁有幾何內核作為三維描述、處理和運算的基礎,能夠兼容各種三維數據格式,BIM系統才不是一個孤立的封閉系統,便于用戶的使用擴展以及與各種行業標準軟件兼容。
通過以上幾點分析不難看出,未來的BIM系統對于建筑領域各個專業的應用都需要通過幾何內核的支持才能實現。同時,BIM所需要的可視化、協調性、優化性、模擬性、可出圖性這五大基本特征,其中除了模擬性和可出圖性在之前數十年的CAD行業軟件中有大量的積累(也是前一代“無紙化”革命的成果)。其它如可視化、協調性、優化性是BIM技術革命的主要新技術點大都需要依賴于三維幾何內核才能夠實現。
同時,作為與機械制造業區別最大的一點,BIM系統需要處理大規模海量的模型數據,對于大型建筑或規劃建筑群,往往需要在一個場景中同時處理幾十萬甚至是上百萬數量級別的構件。而這種量級的數據處理和表達,對幾何內核提出了很高的要求,需要其擁有諸如LOD(Level of Detail)、數據簡化、大規模數據存儲調度等一系列技術作為支撐。我們也不難看出最近幾年,原本作為制造業領域的CAD軟件CATIA,由于其在飛機制造、核電站及水利設施設計等方面擁有良好的技術積累,在進入建筑領域后取得了一系列大型項目的成功。幾何內核的應用已經成了BIM的一個必要需求。
通過前面部分的研究,我們可以初步了解,在近幾年蓬勃發展的BIM產品中,不能缺少對三維幾何內核及造型器的使用。尤其是建筑各個專業之間的信息描述、表達和溝通,對三維幾何內核有嚴重的依賴。但是,使用何種內核更適合BIM應用,并且能夠很好地支持各種信息的交互和協同?同時,如何才能更好地使用這些幾何內核?這不僅需要參照主流BIM 軟件如Revit、Micro Station、CATIA等的幾何內核使用情況和實際應用效果,更需要在對各種幾何內核實際開發和應用之后,以相應的實驗數據和結果作為評估以及應用指導。
下面我們結合實際開發工作中的一些實驗結果和測試評估報告,對現今主流的三款幾何內核進行實際性能的對比分析和應用研究。
在對比測試實驗中,除了最基本的三維造型能力,如各種拉伸、旋轉、掃掠、放樣等基本的幾何造型操作,以及基本的三位布爾運算(交、并、差)之外,我們還會模擬實際BIM類軟件在建筑規劃、設計、計算等應用中的實際對相對大體量模型的處理和計算。同時,也會對于設計、結構、場景瀏覽等經常用到的剖切、可見性判斷、隱藏線剔除等應用進行一系列的用例進行測試。最后,作為BIM軟件開發的基本構成和工具,我們會測試各款幾何內核的易用性、可調試性、穩定性、技術支持力度等對于軟件開發非常重要的產品特性。測試評估項目列表如下:
測試評估項目1:復雜幾何形體造型(測試復雜幾何造型能力);
測試評估項目2:齒輪形狀實體造型(測試幾何造型及布爾運算能力);
測試評估項目3:簡單立方體墻體造型運算(7塊墻體,簡單布爾運算應用);
測試評估項目4:雙體結構主樓簡易模型建模及繪制(較大規模建模應用);
測試評估項目5:雙體結構主樓建議模型隱藏線計算和剔除(較大規模建模及布爾運算應用);
測試評估項目6:系統整合及應用測試(實際測試應用)。
與測試同時,我們將三款幾何內核封裝并實現到我們的BIM系統之中,通過各專業實際使用和反饋,來評價應用中幾何內核的表現情況。



三款幾何內核都能進行復雜的三維實體建模,同時支持拉伸、掃掠、旋轉、對稱、圓角等功能,支持Nurbs等復雜曲線、曲面描述表達,以及各種布爾運算,見圖5。
各內核都可以建立復雜三維實體組合并進行布爾運算及可見線消隱和剔除,圖6是“測試評估項目2”的用例圖。
各內核都可以順利進行雙體主樓模型建模并進行部分布爾并運算,圖7是“測試評估項目4”的用例圖。
各幾何內核都可以進行可見性計算和隱藏線剔除,圖8是“測試評估項目5”的用例圖,但是對于過于復雜的模型Parasolid不能正確計算隱藏線。


5.2.1 Parasolid
作為底層大部分使用面向過程C風格代碼實現的幾何內核,同時擁有內部原生支持多線程,Parasolid擁有最快速的幾何造型和布爾運算速度。平均要比ACIS快一倍左右,在某些布爾運算甚至要比Open-CASCADE快兩個數量級。同時,由于其擁有MicroStation、VectorWorks、SolidWorks 等一系列影響力很大的建筑及工業CAD軟件作為客戶將其應用,以及其母公司Siemens PLM對營銷的重視,Parasolid無論是性能還是影響力,都是作為BIM軟件開發時候幾何內核的首選,即使其在某些方面,如易用性、封裝安全性、本土售后支持等方面存在一些不足。
但是由于其價格較高、用戶較少,在國內使用Parasolid開發軟件的用戶屈指可數。只有擁有一定實力的企業才建議使用。
5.2.2 ACIS
作為晚于Parasolid一段時間推出的ACIS內核,由于其采用了面向對象技術封裝,因此,在安全性和易用性上都優于Parasolid。同時,在Dassault旗下營銷策略的支撐之下,ACIS在中國本土有相應的產品經理和客戶經理進行銷售和技術支持,每年還會定期推出技術更新,以便滿足客戶隨時可能變化的需求。同時,主流的CAD軟件及BIM軟件如Pro/E、AutoCAD、Revit、CATIA 等其內核有很大一部分使用的是ACIS內核,其行業影響力也不可小覷,作為國內用戶數量最多的建筑繪圖軟件,AutoCAD使用ACIS作為三維內核進行三維體建模和表達,圖9是AutoCAD平臺顯示的模型。
由于使用ACIS作為內核的軟件有很多是大眾化的CAD軟件,有相當多的用戶數量,在加上Dassault國內銷售人員的努力推廣,ACIS在國內軟件開發行業擁有一定數量的用戶群和影響力,用戶數目要多于Parasolid。
5.2.3 OpenCASCADE
作為三款內核中唯一一款開源并免費的幾何內核,OpenCASCADE的確在布爾運算、技術支持等一系列性能和產品特性上落后于前面兩款商業內核。但是正是由于其開源和免費的緣故,在高校和科研領域以及中小企業中間有相當大的影響力。為節省開發成本,眾多中小企業都選擇使用Open-CASCADE作為底層幾何內核實現,并整合到他們的產品和系統中。
但是,作為非商業內核,OpenCASCADE在性能、效率、穩定性上的劣勢,在軟件規模逐漸加大的時候會嚴重影響軟件品質和性能,因此,對產品品質有嚴格要求的企業會更加傾向于Parasolid或者ACIS這類商業內核。僅建議初次接觸三維幾何內核的中小企業使用OpenCASCADE作為內核進行開發,并在軟件構架及接口設計時保留未來轉換到Parasolid或ACIS內核的可能。
從本文的分析中不難看出,雖然大部分CAD、CAE軟件的實際使用者——設計師和工程師并沒有關注,但實際上,現今任何一款成功的商業CAD、CAE軟件,無論機械制造業CAD軟件還是建筑領域的BIM軟件,都離不開幾何內核的應用和支持,無論是使用 Parasolid,還是 ACIS,或是 OpenCASCADE作為三維幾何內核和造型器。使用三維幾何內核已經成為CAD軟件成功的必備條件。
未來若干年必將繼續蓬勃發展的BIM,也因其自身對于三維圖形顯示、協調、模擬等方面的技術需求,將會更加依賴以幾何內核為代表的底層核心技術。無論是自主開發還是通過購買商業授權庫,都需要大量持久的人員和研發工作投入,才能做好BIM軟件底層基礎,以支撐起上層的應用。希望通過本文的研究結果和應用指導,能夠幫助BIM軟件廠商選擇適合的底層技術和產品組建,開發出性能更好的BIM類軟件產品。
[1]百度文庫.ACIS內核和parasolid內核的來龍去脈與比較,http://wenku.baidu.com/
[2]鄧雪原.CAD、BIM與協同研究[J].土木建筑工程信息技術,2013,5(5):20-24.
[3]何波.BIM軟件與BIM應用環境和方法研究[J].土木建筑工程信息技術,2013,5(5):1-10.
[4]何關培.《BIM總論》,中國建筑工業出版社,2011
[5]孫家廣,胡事民.《計算機圖形學基礎教程》,清華大學出版社,2009
[6]張雷,姜立,于貴有,鄭國勤.PKPM3D圖形平臺的未來發展方向[C].《BIM與工程建設信息化——第三屆工程建設計算機應用創新論壇論文集》,2011
[7]鄭國勤,邱奎寧.BIM國內外標準綜述[J].土木建筑工程信息技術,2012,1(1):32-34.
[8] Eastman Charles,Fisher David,Lafue Gilles and others,An Outline of the Building Description System:Institute of Physical Planning,Carnegie-Mellon University,1974
[9] OpenCASCADE Technology,OpenCASCADEOverView,2013
[10] Siemens PLM,D-Cubed DCM Overview,2013
[11] Siemens PLM,Parasolid and D-Cubed for AEC software White Paper,2013