李 夢,劉立峰,李爾康,孫 陽
(中國電建集團西北勘測設計研究院有限公司,西安 710065)
BIM技術的應用每年都在發生變化,隨著工程應用實踐的不斷深入和應用價值的不斷顯現,BIM應用也從單純的技術應用走向項目管理、企業管理、甚至應用到項目建設的全鏈條應用。在項目應用過程中,為了展示三維模型的內部細節,增強三維可視化瀏覽的直觀性與準確性,需要對三維模型剖切處理,有利于觀察模型內細部結構。當前,研究者已經提出了多種基于三維模型剖切的方法,比如:秦緒佳等[1]提出了采用平面及多面體對重構模型剖切的立體剪裁算法;陳俊智等[2]提出利用OpenGL中的附加裁剪面實現平面切割;周翠英等[3]和郭圣文[4]實現了對三維模型任意方向的平面切割,但不能任意方式切割;王成龍等[5]和陳學工[6]等提出了基于三維模型任意角度剖切算法,實現了基于平面的任意角度剖切;代欣位等[7]提出基于動態四叉樹索引的三維地質模型組合剖切算法;曹麗[8]等對四面體、六面體數據結構模型分別進行剖切算法設計和功能實現;崔兆東[9]等提出1種基于地質橫剖面輪廓線的歸一化三維地質體模型重構方法,對基于隧道橫斷面的三維建模及隧道與地質模型合并過程中的模型切割、分層。以上研究者提出的方法大多基于多面體、平面,對于模型結構復雜、布置走向非正南正北等不能快速有效找到合適的多面體、平面對模型進行剖切,很難高效得到預期的模型剖切面。
目前,市場上主流BIM設計軟件及應用平臺都是通過平面(XY、XZ、YZ)、六面體剖切盒等方式來對BIM三維模型進行剖切,基本上都是基于選定平面生成剖切面來對三維模型進行剖切,并且默認的平面與大地坐標系的X、Y、Z方向一致,大土木工程行業模型布置走向基本均為非正南正北布置(方向與大地坐標系X、Y方向一致),采用當前已有的基于平面的剖切方法,需要對剖切面進行反復調整,才能達到預期效果,滿足工程實際應用需要。本文以三維模型中的構件外輪廓線為基礎,提出1種基于直線的三維模型剖切方法,該方法適用于任意布置走向的三維模型剖切,可高效、精準達到預期剖切效果,并以某工程擋水建筑物為例,詳細介紹具體實現過程,與傳統剖切方法進行對比分析,展示本方法的優越性。
當前BIM相關工程應用主流技術基本都是基于Web端實現,因此,進入Web端系統的模型數據必須是經過模型輕量化轉換工具處理后的輕量化三維設計模型數據信息,需要開發模型輕量化轉換工具,將三維設計軟件設計成果數據轉換為統一的輕量化數據格式,并且可以將模型的幾何型體數據、非幾何數據信息、模型組織結構等信息一并轉換到輕量化模型中,筆者已開發了支持當前主流的三維設計軟件平臺模型輕量化轉換工具1套,支持達索的CATIA、歐特克的Revit系列、奔特利的MicroStation,AVEVA的PDMS、西門子的UG等數據格式模型輕量化轉換,模型輕量化轉換工具見圖1。利用模型輕量化工具將三維設計模型轉換為輕量化數據格式,上傳到Web端系統,在Web端系統中可瀏覽查看模型組織結構以及模型屬性信息,在模型結構樹上選擇或者在模型構件上選擇,均能瀏覽該模型構件的屬性信息以及與該模型構件關聯的文檔信息,并且支持文檔在線打開瀏覽,有助于進一步了解該部位模型相關的數據信息,利用開發的模型輕量化轉換工具將某工程擋水建筑物三維設計模型轉換輕量化格式,并上傳Web端系統,見圖2。

圖1 模型輕量化轉換工具圖

圖2 某工程擋水建筑物輕量化模型圖
筆者在React框架下,采用WebGL技術在HTML5頁面上開發了基于輕量化模型的直線剖切方法,建成了Web端系統平臺。
剖切方法設計的邏輯鏈條較長,且環環相扣,其邏輯關系見圖3,剖切方法執行以下主要步驟:

圖3 剖切方法流程圖
(1) 三維設計模型輕量化轉換,將利用三維設計軟件制作的三維設計模型,利用本文開發的模型輕量化轉換工具對三維設計模型進行輕量化轉換,可以將不同三維設計軟件制作的三維設計成果轉換為統一的數據格式,實現多數據格式設計成果的集成融合應用。
(2) 將轉換后的三維輕量化模型上傳到本文開發Web端系統平臺。
(3) 在Web端系統平臺中打開三維輕量化模型,在模型上移動鼠標,Web端系統根據預設算法,自動計算鼠標與模型中輪廓直線之間的距離,即鼠標距模型中直線中心點之間的距離。
(4) 設定閾值,Web系統設置的閾值為顯示器分辨率×0.02×0.5像素,系統自動捕捉選定鼠標與模型中直線之間的距離小于閾值的任意一條直線,來生成法平面對輕量化模型進行剖切。
(5) 根據選定直線的法向量和選定直線的中心點創建法平面,Web系統選定的任一條直線后,將沿選定直線重新繪制一條與選定直線相同的直線,以繪制的直線創建直線的法平面。
(6) Web系統根據法平面對輕量化模型進行剖切,剖切后系統自動隱藏法平面,得到輕量化模型的內部結構剖切面,實現對三維模型的剖切。
以某工程擋水建筑物為例對傳統剖切方法與本文提出的剖切方法效果進行對比分析,擋水建筑物軸線布置方向為南偏西22.02°,工程應用中經常會用到沿擋水建筑物軸線生成的剖切面,進一步分析擋水建筑物內部結構。目前,市場上主流BIM設計軟件及應用平臺的剖切效果見圖4,傳統的剖切方法是基于平面生成剖切面,在水電工程建筑物造型復雜情況下,很難找到與擋水建筑物軸線相垂直的平面來生成剖切面,并且傳統BIM設計軟件及應用平臺所生成的剖切面、剖切盒自動與大地坐標系的正南正北方向相平行或相垂直。因此,需要反復調整剖切面的角度來實現預期剖切效果,并且也不一定精準實現與擋水建筑物軸線相垂直的剖切面來剖切擋水建筑物。運用本文提出的基于直線的三維模型剖切方法見圖5,在擋水建筑物三維模型中很容易找到與擋水建筑物軸線相平行的輪廓線來生成與之垂直的法平面對三維模型進行剖切,可以一次性高效、精準地生成與擋水建筑物軸線相垂直的平面對擋水建筑物進行剖切。在大型土木工程行業,類似于水電工程擋水建筑物布置非正南正北(采用大地坐標系)的建筑比比皆是,采用本文提出的基于直線法平面的三維模型剖切方法,有效解決了現有三維模型剖切技術對于模型布置非正南正北的模型剖切需要反復調整的問題,同時適用于任意模型布置走向的剖切應用,提高了模型剖切效率和準確率,同時提升,BIM技術應用工作的便捷性。

圖4 傳統的剖切效果圖

圖5 基于直線的三維模型剖切圖
本文針對三維輕量化模型,提出了1種基于直線的三維模型剖切方法。該方法不僅實現了基于三維模型任意直線法平面的剖切,同時實現了對三維模型進行多個剖切面的聯合剖切,適用于任意布置走向的三維模型剖切,增強了工程實際應用的實用性和靈活性;該方法不僅簡單、高效、精準、適用性強,而且精準地描述了模型的剖切面。通過實際工程項目驗證了該方法的有效性、便捷性。