999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

鐵路橋梁BIM程序的設計與實現

2019-07-03 01:11:28張興華
鐵路計算機應用 2019年6期
關鍵詞:程序橋梁模型

張興華

(中國鐵路設計集團有限公司 橋梁工程設計研究院,天津 300142)

近年來,隨著計算機3D建模技術的快速發展,基于建筑信息模型(BIM)概念的設計模式已經在我國的鐵路設計建設領域進行了實質性應用[1]。鐵路橋梁建設因為其自身結構特點,設計與施工對周邊地物信息準確性的要求較高,而BIM恰好滿足了橋涵精細化設計與施工的相關要求。目前,國內鐵路設計行業采用的軟件平臺多為引進國外商業化平臺,如revit、bently、達索等,在橋梁場景建模、施工仿真模擬,以及特殊橋梁單體結構的空間設計方面取得了良好效果[2-3]。

商業化平臺技術成熟、模型渲染美觀,特別是在空間幾何計算方面的優勢非常突出,但同時也存在一些問題:(1)專業性設計功能完全需要二次開發;(2)不掌握核心代碼,無法修改其核心用戶界面(UI)以及固有的操作模式,為操作帶來不便;(3)純英文的開發接口程序庫,為二次開發帶來極大困難。因此,如果僅僅是進行三維仿真建模的話尚且可行,但如果要利用其開發長大橋梁的正向設計功能,將無法繞開上述問題,另外,商業化平臺的前期購買以及后期升級維護成本較高。相反,如果自主開發橋梁BIM設計程序,因為涉及到空間幾何計算、坐標系統、劃網建模、3D渲染、長大場景調度等前沿性技術,在開發難度、開發成本、開發周期方面都有較大風險和阻力。但優勢在于掌握核心代碼,其設計模式及顯示界面均可根據使用者需求量身定制,并且程序升級改造靈活、維護成本低。本文從OpenGL圖形渲染的底層功能著手,自主研發BIM建模平臺,介紹一款兼具二維交互設計和三維顯示功能的鐵路橋梁BIM程序。并從鐵路橋梁設計的專業角度出發,在程序的開發思路、設計模式比選,以及在視圖顯示的關鍵性技術方面做出探索。

1 程序設計模式

1.1 三維橋梁設計程序的特點

(1)在橋梁設計計算方面,需要結合梁縫計算、結構計算等自身的專業性軟件,進行協同設計。

(2)在圖形類型方面,橋梁工程相對于路基、站場等專業,以及對空間曲面建模方面有更多需求。

(3)在建模方式方面,鐵路橋涵設計除了需要建立標準圖庫來滿足標準化結構部件建模以外,橋址范圍內的邊坡防護、涵洞順溝等,還需要根據設計參數及三維地形,進行自動化的自適應性建模。

(4)特大型鐵路橋梁在國內高速鐵路橋梁設計中非常普及,單座橋梁長度突破幾百公里以上的情況已形成常態,而橋梁孔跨布置是由精密計算而來,對BIM中任意一處孔跨的更改,都將牽動整座橋數百公里梁跨的重新設計和圖形重構。因此,BIM設計程序不僅要求高性能的計算機硬件,對程序數據結構的合理性及算法的高效性也都有較高要求。

1.2 二維、三維視圖并存的設計模式

目前,國內鐵路項目采用的主要BIM設計平臺,如:revit、bently、達索等,都是在純三維模式下開展設計,顛覆性地取締了傳統二維設計方法,設計成果也為純三維鐵路模型,仿真程度高;但鐵路橋涵因其自身特點,在設計過程中,對里程、高程、凈空、梁縫等外部數據,以及梁、墩臺、基礎的結構尺寸等內部數據的依賴程度很高,純三維設計模式無法直接將這些數據展現在設計者眼前,設計者若想查看,必須先經過三維成果向二維成果轉換或手動調出數據窗口才可以得到上述數據。因此對于BIM橋梁設計,不宜完全摒棄二維設計方法。BIM鐵路橋梁程序開發能夠兼備三維理念和傳統二維設計方法,同步生成二維設計成果以及進行三維建模展示或成為更加合理的設計模式。

另外,從程序開發角度來講,BIM程序若能涵蓋二維設計模式,可以更方便地與傳統二維設計軟件進行銜接,減少BIM程序開發工作量及開發難度。而且二維、三維結合的設計模式,也可以使設計人員在新型的BIM設計環境下,能夠利用自己熟悉的傳統設計思路來迅速適應程序,從而提高程序應用效率,否則純三維模式在鐵路橋梁勘察設計領域的推廣阻力和成本將會較大。本程序采用了二維視圖交互設計,及三維視圖顯示的設計模式,如圖1所示。

圖1 程序主界面

2 程序框架

2.1 MVC框架模式概述

程序以C++ MFC為開發工具,以MVC框架模式開發基于OpenGL的二維、三維視圖顯示功能。模型-視圖-控制(MVC,Model-View-Controller)框架是圖形用戶界面(GUI,Graphic User Interface)程序的一種普遍的設計框架。采用MVC框架模式的優勢是使得OpenGL渲染函數的調用從普遍的消息路由中完全脫離開來。

2.2 模型層

模型層是應用程序的核心部分,所有應用程序中的數據和定義應用程序行為的實現都被包含在內。最重要的是,任何指向視圖層和控制層功能都沒有被模型層引用,這意味著模型層是完全獨立的。它完全無須關心視圖層和控制層的行為,從而它只是簡單地對視圖層和控制層的請求進行加工操作。本程序中模型層負責全部的OpenGL頂點數據管理、頂點緩沖區對象(VBO,Vertex Buffer Object)繪圖和圖形更新。

2.3 視圖層

視圖層負責根據窗口設備環境創建渲染設備環境,最后將可視化的內容渲染到屏幕之上。視圖層不含有指向控制層的引用(與控制層獨立)。只有當控制層發送更新請求時,它才會執行渲染操作。然而,視圖層需要有指向模型層的引用,因為它需要從模型層得到頂點、法向量、顏色等數據,這樣才能將數據渲染到屏幕上。

2.4 控制層

控制層負責創建獨立渲染線程,并對用戶事件作出最直接的響應,它接受和處理所有的用戶在窗體或視口中的操作,如鼠標和鍵盤輸入等。為了處理用戶事件,控制層需要訪問具體的模型層組件和視圖層組件。控制層組件通知模型層處理數據,同時告訴視圖層更新顯示的數據。另外,在本程序中,控制層還負責對用戶事件相關的圖元數據,如點、線、面、文字等,向OpenGL渲染數據進行轉換。

3 顯示功能關鍵技術

3.1 二維視圖開發

3.1.1 十字靶標相對鼠標的同步定位

交互式設計視圖開發中,如何將鼠標在屏幕窗體中的像素坐標(V)轉換為視圖中的世界坐標(W),是開發圖形定位、圖形選擇的前提。轉換公式的關鍵為計算窗體尺寸與視口所代表的世界坐標尺寸的比例vscale,當渲染視口與窗體邊緣完全重合時,當前鼠標所在的視圖世界坐標計算公式為:V = W ·vscale,當視口與窗體不重合時,還要計入視口相對窗體的起點偏移量(d),則視圖世界坐標計算公式為:V = d + W · vscale。

3.1.2 基于VBO的圖形渲染

任何一個3D應用程序開發的最大的目標之一就是渲染速度,需要自始至終的將實際渲染圖形的數量限制在最小范圍內。除此之外,想簡單提高多邊形的提交速度的話,通常可以利用OpenGL提供的優化方法,頂點數組是一個比較好的方法。加上VBO的擴展,提高了渲染效率。使用頂點數組可以減少函數調用的次數和共享頂點的冗余使用,但其缺點是頂點數組中的函數位于客戶端并且數組中的數據在它每次被引用時都需要發送到服務器端一次。而VBO在服務器端的高性能內存中為頂點屬性創造了一個“緩沖區對象”,也就是說,VBO能夠把數據加載到顯卡的高性能顯存中。因此當用戶對橋梁方案編輯時,只要不改變頂點數量,如修改墩高、拉伸或縮短結構尺寸等,便可降低渲染時間。

3.1.3 CAD式的圖形拾取效果

OpenGL提供了豐富的圖形交互操作功能,可利用選擇模式完成圖形的拾取操作。對于拾取后如何標記顯示,進而通知用戶當前被選中圖形的拾取狀態,在程序開發中嘗試了2種方法:(1)采用CAD的方式,將備選中圖形顯示成點狀線狀態;(2)采用達索系統的CATIA程序的方式,將被選中圖形顯示成高亮狀態。經過實際開發對比,前者可以非常好的利用VBO可提取并編輯頂點坐標的特點,只需要根據備選圖形的VBO名稱提取出相關頂點數組,之后無需跳出VBO模式渲染,直接以視口背景顏色按點狀線樣式重繪一次,即可達到與CAD完全一樣的選中顯示狀態。而后者因為需要修改材質和光照狀態,必須脫離VBO模式渲染,而且不易實現僅針對備選圖形的OpenGL狀態修改,所以程序選擇了CAD式的點狀線圖形拾取處理方法。

3.2 三維場景空間索引

三維場景包括三維地形、橋梁結構、橋梁附屬設施等模型,鐵路三維地形為大型條帶狀模型,要求有比較高的交互性幀率來保證交互瀏覽操作時的渲染流暢性。因此,在渲染每一幀屏幕前,都需要對當前視景體所包含模型數據進行篩選,而且還要對無限視野下的模型數據進行分級簡化,所以,只有采用合適的空間索引數據結構,才能提高渲染效率。本程序采用的是比較適合于呈片狀均布數據的四叉樹空間索引[8]。四叉樹索引的基本思想是對空間數據遞歸劃分為樹結構,具體流程是,將當前空間數據等分成4個子空間,之后每個子空間遞歸劃分下去,直到樹的層次達到一定深度或者滿足某種要求后停止分割。4叉樹索引比較簡單,但是存在以下不足:(1)當空間數據對象分布不均勻時,會生成嚴重不平衡樹,導致索引深度增加;(2)同一數據有可能被重復存儲到樹中多個不同節點之中,浪費存儲空間。

因此,對四叉樹模型做出以下改進:(1)規定空間數據僅保存在完全包含它的最小分割節點中,并且每個數據只能在樹中存儲一次,避免存儲空間的浪費;(2)在創建樹時,首先生成滿四叉樹,并限制四叉樹深度,從而避免分配數據時臨時插入節點而導致的內存重新分配損耗;(3)一次性將樹的空節點所占內存釋放掉。經過以上改進便可生成較為平衡的四叉樹,改進后的四叉樹模型,如圖2所示。

圖2 改進后的四叉樹模型示意圖

4 橋梁設計系統

4.1 通用圖管理

鐵路橋梁工點一般是基于通用圖開展設計的,如何建立界面操作簡潔、錄入及讀寫方便的圖庫管理系統,是鐵路橋梁設計程序開發的重要環節。本程序的圖庫系統以C++語言對Excel文件的讀取操作,以及對ACCESS文件的寫入操作為主要技術手段,開發獨立的顯示操作窗口,如圖3所示。提供使用者在開展BIM橋梁設計前,預先對鐵路項目所用的結構通用圖及其對應工程數量進行錄入管理。主要功能為:(1)梁、墩、臺、基礎的Excel通用圖數據文件錄入;(2)各通用圖的匹配使用原則錄入;(3)圖庫界面中的排序、篩選顯示;(4)橋梁工點設計時,根據跨度、墩高等信息的圖庫自動匹配。

圖3 通用圖庫管理窗口

4.2 上下序資料管理

上下序資料獲得類型,按照“獲取提供” 方式分為3種。(1)在程序內部利用開發專業之間的接口函數,自動傳遞上下序數據,如:鉆孔地層、地質縱斷、路基斷面、線位資料和地模坐標;(2)利用圖形瀏覽窗口,手動調用瀏覽,如:路基斷面圖、地質柱狀圖;(3)利用資料互提菜單,在程序中手動點擊并以文件形式獲取,如:線路資料表、隧道表、橋涵表和墩臺里程表等。管理界面,如圖4所示。

圖4 上序資料管理窗口

4.3 橋梁設計功能

(1)利用GridCtrl控件制作基于橋梁孔跨布置的表格式設計窗口,表格中以橋梁單位孔跨為單位按行排列。每行顯示其做代表孔跨的小里程側墩臺里程、跨度、梁縫、墩高、相關高程以及本跨度內所采用的結構通用圖信息,從而通過編輯表格的方式完成全橋孔跨設計,如圖5所示;

圖5 孔跨設計窗口

(2)基于橋梁彎道計算,完成整橋平移、孔跨調整、梁型變換等編輯操作后的,實時計算曲線段落內的梁縫增值,更新全橋墩臺里程;

(3)根據墩臺里程,截取地模數據,更新地面高程后重新計算墩身高度,并根據墩身高度更新匹配橋墩、橋臺、基礎通用圖;

(4)提取墩臺中心里程處的地層數據檢算基礎;

(5)設計文件輸出:DWG圖紙文件,包括:橋址平面圖、全橋布置圖、橫斷面布置圖、彎道布置圖;EXCEL算單、工程量清單文件;基礎檢算結果文件。

5 結束語

本程序從核心UI及視圖顯示層面自主開發,具備可根據用戶使用習慣量身定制、專業融合性強等優勢。但在開發過程中,需要在空間幾何模型計算、三維場景數據調度、圖像渲染美觀性等方面加大技術投入,才能縮小與國外商業化BIM平臺的差距。本程序通過保留二維橋梁設計視圖,使用戶在BIM設計模式下,可以沿用傳統設計流程及操作習慣,并且三維場景直觀生動。經過鐵路設計項目應用,表明該程序具備三維環境下進行鐵路橋梁方案設計的功能,相比傳統設計模式,該程序突破了二維圖紙視覺局限,能夠更好地幫助決策合理方案,具有深入開發及推廣價值。

猜你喜歡
程序橋梁模型
一半模型
重要模型『一線三等角』
重尾非線性自回歸模型自加權M-估計的漸近分布
試論我國未決羈押程序的立法完善
人大建設(2019年12期)2019-05-21 02:55:44
手拉手 共搭愛的橋梁
句子也需要橋梁
“程序猿”的生活什么樣
英國與歐盟正式啟動“離婚”程序程序
環球時報(2017-03-30)2017-03-30 06:44:45
高性能砼在橋梁中的應用
3D打印中的模型分割與打包
主站蜘蛛池模板: 欧美一级黄片一区2区| 欧美a在线视频| 内射人妻无套中出无码| 国产综合欧美| 国产一区二区三区在线无码| 伊人天堂网| 亚洲第一区在线| 最新国产午夜精品视频成人| 亚洲天堂久久久| 婷婷色中文| 国产乱子伦精品视频| 国产亚洲精| 中美日韩在线网免费毛片视频 | 囯产av无码片毛片一级| 青青青国产视频手机| 国产91透明丝袜美腿在线| 欧美国产日韩另类| 国产美女免费| 欧美日韩专区| 精品小视频在线观看| 香蕉久久国产超碰青草| 色有码无码视频| 亚洲AⅤ永久无码精品毛片| 亚洲AV电影不卡在线观看| 成年片色大黄全免费网站久久| 欧美精品一区二区三区中文字幕| 三上悠亚精品二区在线观看| 精品久久久久无码| 亚洲va精品中文字幕| 四虎精品免费久久| 伊人久热这里只有精品视频99| 久久人妻xunleige无码| 国产精品刺激对白在线| 99精品国产自在现线观看| 国产精品亚洲片在线va| 欧美在线一级片| 亚洲精品桃花岛av在线| 免费又爽又刺激高潮网址 | 欧美成人日韩| 亚洲无码久久久久| 国产区成人精品视频| 国产尤物视频网址导航| 热99re99首页精品亚洲五月天| 91久久偷偷做嫩草影院免费看| 久久综合亚洲色一区二区三区| 污网站免费在线观看| 亚洲国产成人无码AV在线影院L | 欧美国产日产一区二区| 国产精品成人观看视频国产| a毛片在线免费观看| 草草影院国产第一页| 91网站国产| 亚洲天堂视频在线观看免费| 在线一级毛片| 午夜少妇精品视频小电影| 一级毛片基地| 国产精品综合色区在线观看| 色综合天天综合| 伊人久久青草青青综合| 久久久久九九精品影院| 91麻豆精品国产高清在线| 人人艹人人爽| 亚洲欧洲日韩综合| 国产一级二级三级毛片| 欧美不卡二区| a级毛片免费在线观看| 国产精品免费露脸视频| 欧美日韩动态图| 亚洲一级毛片| 久久综合亚洲色一区二区三区| 欧美亚洲香蕉| 亚洲国产无码有码| 亚洲综合色婷婷| 2018日日摸夜夜添狠狠躁| 国产成人禁片在线观看| 亚洲开心婷婷中文字幕| 2021国产乱人伦在线播放| 国产免费久久精品99re不卡 | 国产综合精品日本亚洲777| 欧美精品H在线播放| 无码aⅴ精品一区二区三区| 国内精品视频在线|