傅 霆 喬 科 汪 軍
(四川省公路規(guī)劃勘察設(shè)計(jì)研究院有限公司,成都 610041)
近年來,BIM技術(shù)在交通基礎(chǔ)設(shè)施領(lǐng)域廣泛應(yīng)用[1],涵蓋道路、隧道、橋梁等多個(gè)專業(yè),并在可視化、VR、編碼技術(shù)和施工運(yùn)維管理[2]等多個(gè)方面均呈現(xiàn)出蓬勃發(fā)展的勢(shì)頭。交通標(biāo)志是公路運(yùn)輸最重要的信息,反映了公路項(xiàng)目與公路路網(wǎng)、交通、社會(huì)環(huán)境和自然環(huán)境的相互作用,是公路BIM項(xiàng)目中十分重要的環(huán)節(jié)。隨著BIM與GIS技術(shù)相結(jié)合[3]后,無論是項(xiàng)目展示還是后期應(yīng)用,都要求完善交通標(biāo)志BIM模型設(shè)計(jì),為實(shí)景狀態(tài)提供地理信息指示。然而目前主流軟件中[4-5]還沒有成熟的交通標(biāo)志BIM應(yīng)用軟件,促使我們開發(fā)專用軟件提高交通標(biāo)志的建模效率。
BIM核心建模軟件主要有奔特力(Bentley)、歐特克(Autodesk)、達(dá)索公司和圖軟(Graphisoft)等四種[6],分別向用戶提供了一整套基于 BIM 理念的解決方案。在基礎(chǔ)設(shè)施領(lǐng)域,奔特力(Bentley)系列軟件具有明顯的優(yōu)勢(shì),主要因?yàn)?Bentley平臺(tái)的各種專業(yè)軟件,其底層圖形引擎都采用MicroStation,軟件兼容性強(qiáng),處理大體量模型速度更快,適用于大型基礎(chǔ)設(shè)施。公路工程為線狀工程,項(xiàng)目體量一般都比較大,長(zhǎng)達(dá)幾十乃至上百公里,對(duì)BIM平臺(tái)要求較高,因此Bentley平臺(tái)在公路行業(yè)有比較成功的應(yīng)用。
Bentley ORD(OpenRoads Designer CONNECT Edition)是Bentley專業(yè)道路設(shè)計(jì)軟件,在道路BIM模型設(shè)計(jì)中應(yīng)用較廣。而Bentley CE(CONNECT Edition)是Bentley平臺(tái)上基礎(chǔ)的二維/三維結(jié)構(gòu)處理軟件,在CE上開發(fā)的軟件通用性比較好,能在很好運(yùn)用到ORD上,因此選擇CE作為軟件開發(fā)平臺(tái)。
基于MicroStation,Bentley提供了幾種開發(fā)手段,主要有早期的MDL(MicroStation Development Language/Library)、MVBA(MicroStation Visual Basic for Application)、Addins等。使用這些技術(shù),胡小端[7]等用MVBA技術(shù)編制收費(fèi)島BIM設(shè)計(jì)軟件,崔振宇[8]利用 C#開發(fā)鐵路箱涵設(shè)計(jì)軟件。Bentley還提供圖形化開發(fā)技術(shù)GC,胡正揚(yáng)[9]使用該技術(shù)實(shí)現(xiàn)橋梁快速建模。
Addins是MicroStation新的開發(fā)方式,Addins是基于.NET 框架,可以使用C#、C++/CLI或VB.NET語言來開發(fā)Addins應(yīng)用程序。相比較于MVBA,Addins支持命令表、可以編譯成DLL; 相比較于MicroStation早期的MDL,Addins可以用 WinForm來設(shè)計(jì)界面; 此外,Addins可以直接訪問MicroStation底層圖形引擎,開發(fā)出來的軟件速度快,專業(yè)性強(qiáng),具有強(qiáng)大的開發(fā)潛力。因此,本次開發(fā)使用C++/CLI語言,采用MicroStation Addins方式和WinForm界面進(jìn)行開發(fā)。
圖1 交通標(biāo)志建模軟件流程圖
軟件設(shè)計(jì)框圖見圖1左,軟件由三個(gè)模塊構(gòu)成:標(biāo)志模板設(shè)計(jì)模塊、標(biāo)志布設(shè)模式設(shè)計(jì)模塊、標(biāo)志布設(shè)模式應(yīng)用模塊; 軟件包含了兩個(gè)數(shù)據(jù)庫:標(biāo)志模板數(shù)據(jù)庫和標(biāo)志布設(shè)模式數(shù)據(jù)庫。通過窗體界面進(jìn)行數(shù)據(jù)交互,實(shí)現(xiàn)標(biāo)志數(shù)據(jù)庫和標(biāo)志布設(shè)模式的存儲(chǔ)和管理,在Bentley平臺(tái)上快速布設(shè)交通標(biāo)志,提高交通標(biāo)志BIM建模效率。
軟件主要完成三個(gè)方面的工作,構(gòu)成軟件的三個(gè)模塊,圖1右顯示軟件的初始界面,該界面實(shí)現(xiàn)對(duì)三種工作模塊的選擇:
(1)標(biāo)志的模板設(shè)計(jì)模塊:實(shí)現(xiàn)標(biāo)志模板的快速設(shè)計(jì),并建立標(biāo)志模板樣式的數(shù)據(jù)庫;
(2)標(biāo)志的布設(shè)設(shè)計(jì)模塊:應(yīng)用標(biāo)志模板樣式數(shù)據(jù)庫,結(jié)合標(biāo)志支撐方式,建立標(biāo)志的布設(shè)模式,并形成標(biāo)志布設(shè)模式庫;
(3)標(biāo)志的快速布設(shè)模塊:應(yīng)用布設(shè)模式進(jìn)行標(biāo)志的快速布設(shè)。
通過研究交通標(biāo)志規(guī)范,分析標(biāo)志模板設(shè)計(jì)和標(biāo)志布設(shè)設(shè)計(jì)的規(guī)律(具體分析見后兩節(jié)),總結(jié)軟件開發(fā)的主要技術(shù)需求包括:
(1)設(shè)計(jì)標(biāo)志數(shù)據(jù)庫和標(biāo)志布設(shè)模式數(shù)據(jù)庫兩個(gè)數(shù)據(jù)庫,確定數(shù)據(jù)庫文件的格式、讀取原則和索引方式等;
(2)對(duì)數(shù)據(jù)庫文件的添加、刪除、修改、定位、讀取等操作接口軟件設(shè)計(jì);
(3)界面設(shè)計(jì)以及輸入數(shù)據(jù)核查等;
(4)建立交通標(biāo)志常用圖形數(shù)據(jù)庫,比如方向箭頭、警告禁令等的圖形樣式,便于應(yīng)用;
(5)應(yīng)用數(shù)據(jù)庫中的數(shù)據(jù),在Bentley CE上對(duì)文本、形狀和實(shí)體的創(chuàng)建來實(shí)現(xiàn)標(biāo)志、支撐等構(gòu)件,以及對(duì)構(gòu)件的定位、布置等來實(shí)現(xiàn)標(biāo)志的布設(shè)。
按照我國交通標(biāo)志的規(guī)范規(guī)定[10-11],交通標(biāo)志主要分為指示標(biāo)志、指路標(biāo)志、警告和禁令標(biāo)志。交通標(biāo)志由4個(gè)要素組成,分別是版面、邊框、文字和圖形,通過控制這4個(gè)要素的形狀、大小、位置、內(nèi)容和顏色等屬性,組成各種類型的標(biāo)志。
常用的標(biāo)志版面和邊框形狀主要有三角形,圓形和方形(長(zhǎng)方形或正方形)。
標(biāo)志模板軟件基本流程參見圖2左,圖2右是模板設(shè)計(jì)軟件的界面。軟件實(shí)現(xiàn)標(biāo)志的版面、邊框、文字和圖形等4個(gè)要素的大小、位置、內(nèi)容和顏色的設(shè)計(jì),每種要素設(shè)計(jì)由有三個(gè)按鈕,“添加版面”按鈕和“全部刪除”實(shí)現(xiàn)添加或刪除該要素的內(nèi)容,“顯示XX列表”作用實(shí)現(xiàn)列表方式錄入和修改數(shù)據(jù)操作。
圖2 交通標(biāo)志模板設(shè)計(jì)流程與界面
系統(tǒng)設(shè)計(jì)了5種標(biāo)志數(shù)據(jù)庫,通過“選擇標(biāo)志類型”下拉框選擇。標(biāo)志圖形樣式也通過下拉框選擇,目前圖形庫中實(shí)現(xiàn)常用的24種圖形,包括方向箭頭、互通樣式、服務(wù)區(qū)、收費(fèi)站、警告等,圖形樣式還需要再繼續(xù)豐富。
標(biāo)志設(shè)計(jì)模板完成后,在Bentley CE平臺(tái)中顯示當(dāng)前標(biāo)志設(shè)計(jì)樣式,查看標(biāo)志版面設(shè)計(jì)是否正確。正確的標(biāo)志模板錄入到選中的數(shù)據(jù)庫中。雙擊界面右側(cè)的標(biāo)志模板列表,可以調(diào)出設(shè)計(jì)好的標(biāo)志模板,重新編輯并生成新的模板。
圖3顯示設(shè)計(jì)好的標(biāo)志模板樣式,包括服務(wù)區(qū)、收費(fèi)站、指示標(biāo)志和警告禁令標(biāo)志等,可能看出使用該軟件可以快速設(shè)計(jì)出不同類型的交通標(biāo)志。通過交通標(biāo)志模板設(shè)計(jì),將各種標(biāo)志模板數(shù)據(jù)化,建立標(biāo)志數(shù)據(jù)庫,為標(biāo)志布設(shè)提供數(shù)據(jù)支撐。
圖3 交通標(biāo)志模板樣式
交通標(biāo)志布設(shè)主要研究?jī)蓚€(gè)方面的內(nèi)容:標(biāo)志布設(shè)規(guī)律和標(biāo)志的支撐方式。
標(biāo)志的布設(shè)主要是根據(jù)公路的出入口、功能構(gòu)造物、特殊路段等因素進(jìn)行布置,為司乘人員提供位置、方向、駕駛要求和警示等信息。這些設(shè)計(jì)要素會(huì)導(dǎo)致標(biāo)志模板反復(fù)應(yīng)用,反映標(biāo)志設(shè)計(jì)布設(shè)規(guī)律。如果軟件能夠保存這種布設(shè)規(guī)律,就可能實(shí)現(xiàn)標(biāo)志的快速布設(shè)。我們將這種在單一道路設(shè)計(jì)線上規(guī)律性標(biāo)志布置簡(jiǎn)稱為標(biāo)志布設(shè)模式,此軟件的重要功能是能幫助建模人員建立標(biāo)志布設(shè)模式。
把標(biāo)志布設(shè)模式中有規(guī)律地替換的文字內(nèi)容稱為“通用詞”,單個(gè)布設(shè)模式中所有的“通用詞”構(gòu)成該模式的通用詞表。“通用詞”包括通用詞名稱和通用詞內(nèi)容,通用詞內(nèi)容表示可替換的內(nèi)容。比如圖5(b)中服務(wù)區(qū)入口的布設(shè)模式中,通用詞名稱為“服務(wù)區(qū)名稱”,通用詞內(nèi)容為“花園”。在應(yīng)用服務(wù)區(qū)入口布設(shè)模式時(shí),只需要將“花園”替換為項(xiàng)目的服務(wù)區(qū)名稱,即可應(yīng)用該模式快速布設(shè)該服務(wù)區(qū)標(biāo)志的BIM模型。
交通標(biāo)志的支撐方式分為立柱式、懸臂式、門架式和附著式。其中立柱式又可分為單立柱和雙立柱,懸臂式又分為單懸臂和雙懸臂。同一支撐結(jié)構(gòu)上可以附著多個(gè)標(biāo)志,。
交通標(biāo)志布設(shè)的流程圖和界面如圖4所示。此部分軟件實(shí)現(xiàn)交通標(biāo)志預(yù)設(shè)位置設(shè)置、支撐方式選擇和布置,標(biāo)志內(nèi)容是否與通用詞表的內(nèi)容對(duì)應(yīng),標(biāo)志布置加入到所選的布設(shè)模式中。
標(biāo)志的支撐采用下拉菜單選取,并輸入設(shè)計(jì)參數(shù)。支撐樣式的基點(diǎn)在右立柱中心線與路面交點(diǎn),這個(gè)基點(diǎn)是該布設(shè)位置的參照點(diǎn),該位置上的每個(gè)標(biāo)志都需要參照這個(gè)定位點(diǎn)進(jìn)行定位。
圖5 交通布設(shè)模式布設(shè)效果圖
每個(gè)標(biāo)志模板用輪詢方式(圖4設(shè)計(jì)界面中“變更內(nèi)容”按鈕),依次決定是否將模板內(nèi)的內(nèi)容替換為通用詞名稱,或者替換為項(xiàng)目所需的內(nèi)容。今后在該模式下,標(biāo)志相關(guān)內(nèi)容都會(huì)被對(duì)應(yīng)的通用詞內(nèi)容所替換,通過這種方式,提高標(biāo)志模板的適用性。
軟件的設(shè)計(jì)目標(biāo)是在應(yīng)用過程中不斷添加標(biāo)志布設(shè)模式,形成豐富的設(shè)計(jì)資源,從而簡(jiǎn)化標(biāo)志的BIM設(shè)計(jì)。軟件有以下兩種優(yōu)點(diǎn):一是可將每次標(biāo)志設(shè)計(jì)成果保存下來,為以后的標(biāo)志布設(shè)提供幫助; 二是可以幫助設(shè)計(jì)人員將標(biāo)志布設(shè)過程按照設(shè)計(jì)規(guī)律分類,建立布設(shè)模式,從而規(guī)范標(biāo)志布設(shè),以提高效率。比如對(duì)于單喇叭互通的標(biāo)志設(shè)計(jì),一般可以分為三個(gè)布設(shè)模式:主線出口預(yù)告與指示、匝道出口指示、匝道入口預(yù)告與指示。
應(yīng)用設(shè)計(jì)好的標(biāo)志布設(shè)模式,選擇道路設(shè)計(jì)線,點(diǎn)擊“布設(shè)標(biāo)志”按鈕即可展示設(shè)計(jì)效果。圖5中(a-c)分別顯示了主線樞紐互通出口布設(shè)模式,服務(wù)區(qū)入口指示模式和主線互通出口布設(shè)模式。為了演示效果,布設(shè)間距適當(dāng)靠近。
圖6 交通標(biāo)志BIM模型布設(shè)界面與布設(shè)示意
通常交通標(biāo)志是沿道路設(shè)計(jì)線線性布置,這種依靠單條設(shè)計(jì)線規(guī)律性布置的標(biāo)志均可建立標(biāo)志布設(shè)模式。選擇布設(shè)模式后,選中設(shè)計(jì)線,修改通用詞、樁號(hào)、路邊距等參數(shù)后,實(shí)現(xiàn)一組關(guān)聯(lián)的標(biāo)志組合的快速布設(shè)。設(shè)計(jì)人員可按照個(gè)人的習(xí)慣和項(xiàng)目的特點(diǎn)建立自己的模式。
圖6中顯示應(yīng)用標(biāo)志布設(shè)模式的界面和設(shè)計(jì)效果,圖中顯示了互通出口匝道標(biāo)志布設(shè),在該模式下,軟件一次性地完成出口指示、匝道限速等標(biāo)志的布設(shè)。
(1)基于Bentley 平臺(tái)開發(fā)交通標(biāo)志BIM軟件,軟件開發(fā)采用Microstation的Addins技術(shù),直接訪問MicroStation底層圖形引擎,使用C++/CLI語言,采用WinForm界面進(jìn)行開發(fā),軟件速度快,界面清晰,使用方便。
(2)研究我國交通標(biāo)志設(shè)計(jì)的相關(guān)規(guī)范并結(jié)合標(biāo)志設(shè)計(jì)的特點(diǎn)和規(guī)律,分析標(biāo)志模板設(shè)計(jì)構(gòu)件要素,使得軟件可以簡(jiǎn)化標(biāo)志設(shè)計(jì),快速構(gòu)建標(biāo)志模板庫。
(3)提出“通用詞”方法來建立標(biāo)志布設(shè)模式,有效地應(yīng)用了交通標(biāo)志布設(shè)規(guī)律,靈活高效地布設(shè)交通標(biāo)志BIM模型。
(4)在交通標(biāo)志BIM輔助軟件的幫助下,用戶可逐步完善自有的標(biāo)志庫和標(biāo)志布設(shè)模式,加快標(biāo)志BIM模型的構(gòu)建和布設(shè),促進(jìn)公路BIM模型的豐富和完善。
(5)將交通標(biāo)志模板和標(biāo)志布設(shè)模式數(shù)據(jù)化,把常用的標(biāo)志設(shè)計(jì)流程固化,減少重復(fù)勞動(dòng),簡(jiǎn)化標(biāo)志BIM設(shè)計(jì)和布設(shè)的工作。