摘要:隨著計(jì)算機(jī)技術(shù)的發(fā)展,計(jì)算機(jī)輔助制圖技術(shù)在地質(zhì)圖件編繪方面已有廣泛應(yīng)用。在三維設(shè)計(jì)手段日益普遍的今天,為了實(shí)現(xiàn)內(nèi)容豐富、質(zhì)量好、效率高的地質(zhì)剖面圖,該文研究了一種基于MicroStation軟件平臺(tái)的地質(zhì)剖面圖自動(dòng)繪制方法及關(guān)鍵技術(shù)的實(shí)現(xiàn)。通過在多個(gè)水電站工程中的應(yīng)用充分驗(yàn)證了該文方法的有效性,大幅提高了繪制地質(zhì)剖面圖的效率和質(zhì)量。
關(guān)鍵詞:MicroStation;地質(zhì)剖面圖;地質(zhì)三維建模;EC Framework
中圖分類號(hào):TP311 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2017)32-0239-02
地質(zhì)剖面圖是沿地表某一水平直線或折線,以假想的豎直面與地層相切所得的斷面圖,表示地質(zhì)剖面上的地質(zhì)現(xiàn)象及其相互關(guān)系的圖件。它是地層在垂向上最直觀最有效的表達(dá)方式,形象直觀地表達(dá)了地層的結(jié)構(gòu)構(gòu)造和地層的沉積規(guī)律,是系統(tǒng)分析區(qū)域或局部的地質(zhì)條件、正確指導(dǎo)地下資源的開發(fā)利用以及工程的實(shí)施和建設(shè)的依據(jù)之一。
90年代以來,隨著計(jì)算機(jī)輔助制圖技術(shù)的發(fā)展,已有較多文獻(xiàn)研究了地質(zhì)剖面圖自動(dòng)繪制技術(shù),主要有兩種方式:基于CAD技術(shù)和基于GIS組件開發(fā)技術(shù)[1]。這些技術(shù)研究了基于鉆孔數(shù)據(jù)繪制地層界限、地層填充、斷層的表達(dá)等內(nèi)容,但也存在不足之處:1)缺少屬性數(shù)據(jù)表達(dá),進(jìn)而缺少智能化的地質(zhì)對(duì)象標(biāo)注;2)缺少系統(tǒng)的符號(hào)化方案,如線型、點(diǎn)符號(hào)、填充符號(hào)等;3)內(nèi)容單一,僅有鉆孔數(shù)據(jù)。
近年來三維建模技術(shù)在地質(zhì)和設(shè)計(jì)領(lǐng)域發(fā)展迅猛,也為地質(zhì)圖件的自動(dòng)編繪帶來了新的思路。Bentley軟件公司的產(chǎn)品MicroStation是一個(gè)二維+三維工程設(shè)計(jì)平臺(tái),具有統(tǒng)一的圖形平臺(tái)、統(tǒng)一的文件格式、統(tǒng)一的數(shù)據(jù)架構(gòu)的技術(shù)優(yōu)勢,提供強(qiáng)大的圖形處理能力,且文件格式統(tǒng)一,數(shù)據(jù)表達(dá)方式一致,共享效率高。本文基于MicroStation軟件平臺(tái),研究了一種融合三維建模流程、具有多種數(shù)據(jù)源的地質(zhì)剖面圖自動(dòng)繪制方法,對(duì)CAD和GIS技術(shù)進(jìn)行有效集成,彌補(bǔ)了以往地質(zhì)剖面圖繪制方法的不足。
1 地質(zhì)剖面圖相關(guān)的關(guān)鍵技術(shù)
1.1 融合地質(zhì)三維建模流程
三維地質(zhì)建模是一個(gè)基于數(shù)據(jù)分析、合成的學(xué)科,建立的地質(zhì)模型匯總了各種信息和解釋結(jié)果,解譯成果是否合理是決定三維地質(zhì)模型質(zhì)量高低的關(guān)鍵。當(dāng)前國內(nèi)外地質(zhì)建模的總體思路和方法基本上是一致的,即在廣泛收集地質(zhì)、地震及鉆孔資料的基礎(chǔ)上,利用計(jì)算機(jī)來動(dòng)態(tài)地模擬地層的空間變化特征。三維建模一般遵循從點(diǎn)——線——面——體的步驟,即首先將勘探數(shù)據(jù)(鉆孔、平洞等及其一維揭露點(diǎn)數(shù)據(jù))投影到附近的剖面上,其次在剖面上通過人工解譯,編錄各類地質(zhì)界線,并返回到三維模型,經(jīng)過多個(gè)方向的豎直剖面及解譯編錄,建立工程范圍內(nèi)的線框模型,然后將同一地質(zhì)類型、屬于同一地質(zhì)界面的地質(zhì)線條擬合出地質(zhì)界面,最后地質(zhì)界面通過拉伸、裁剪等布爾運(yùn)算得到地質(zhì)體,如圖1所示。
建模流程里的二維剖面還不是正式的地質(zhì)剖面圖,此處重點(diǎn)表達(dá)地質(zhì)解譯和已編錄的線條,沒有圖框、圖簽和圖例等圖件輔助要素。同時(shí)這些內(nèi)容其實(shí)也是地質(zhì)剖面圖的一部分。通過反復(fù)在剖面上編錄、編輯校正地質(zhì)線條,可以不斷提高線框模型的精度和可靠性[2]。另一方面,地質(zhì)剖面圖的繪制又需要從三維模型中提取線框模型,以及剖面與地質(zhì)面、體模型的交線和交面,因此地質(zhì)剖面圖的繪制過程融合了地質(zhì)三維建模的流程,可以充分利用地質(zhì)三維建模的成果。
1.2 多源數(shù)據(jù)獲取與繪制
本文將地質(zhì)剖面圖上的數(shù)據(jù)分為三類:錄入地質(zhì)數(shù)據(jù)庫的勘探孔洞、地質(zhì)三維模型和地質(zhì)符號(hào)庫[3],如圖2所示。
1) 存儲(chǔ)在地質(zhì)數(shù)據(jù)庫中的勘探孔洞
勘探孔洞包括鉆孔、平洞、探井、探坑、探槽等??碧娇锥吹目臻g屬性(幾何特征)數(shù)據(jù)和地質(zhì)屬性(專業(yè)特征)數(shù)據(jù)存儲(chǔ)在網(wǎng)絡(luò)服務(wù)器的地質(zhì)數(shù)據(jù)庫中,出圖時(shí)通過數(shù)據(jù)服務(wù)從數(shù)據(jù)庫中實(shí)時(shí)提取這些數(shù)據(jù),保證了地質(zhì)圖件數(shù)據(jù)的安全性、準(zhǔn)確性和有效性。
2) 地質(zhì)三維模型
地質(zhì)三維模型為地質(zhì)剖面圖提供的數(shù)據(jù)包括兩個(gè)部分:一是剖面與三維模型元素的交點(diǎn)、交線和交面,例如勘探線交點(diǎn)、地形線、地層面,需要通過布爾剪切計(jì)算得到;二是剖面解譯階段編錄的各類地質(zhì)線條,從線框模型直接獲取。從模型中提取圖形數(shù)據(jù),使地質(zhì)圖件繼承了地質(zhì)建模解譯的最新成果,確保了成果圖件與校審模型的數(shù)據(jù)一致性,解決了設(shè)計(jì)生產(chǎn)過程中三維建模與二維出圖出現(xiàn)兩張皮的問題。
3) 從地質(zhì)符號(hào)庫中提取的繪圖資源數(shù)據(jù)
地質(zhì)符號(hào)庫內(nèi)容包括地質(zhì)點(diǎn)符號(hào)、線型符號(hào)和巖性花紋符號(hào)。地質(zhì)符號(hào)庫可以基于不同CAD平臺(tái)和不同行業(yè)標(biāo)準(zhǔn)開發(fā)制作。地質(zhì)三維系統(tǒng)圖件編繪模塊可通過辨識(shí)工程類型屬性,自動(dòng)加載地質(zhì)符號(hào)庫資源,從而滿足不同行業(yè)的地質(zhì)圖自動(dòng)編繪要求。
1.3 地質(zhì)對(duì)象特征化處理
地質(zhì)三維模型和剖面圖上的圖形元素只有具備地質(zhì)屬性之后才能發(fā)揮強(qiáng)大的使用價(jià)值,不僅方便圖形元素的管理,支持屬性查詢,還為實(shí)現(xiàn)剖面圖上的自動(dòng)標(biāo)注對(duì)象、自動(dòng)圖例布置提供技術(shù)基礎(chǔ)。
本文使用EC Framework(EC,Engineering Content的縮寫)技術(shù)表達(dá)并存儲(chǔ)各類地質(zhì)對(duì)象的屬性。EC Framework技術(shù)是Bentley公司為提高不同軟件和系統(tǒng)的可互操作性而提出的技術(shù)框架[4],規(guī)定了一系列接口,以實(shí)現(xiàn)對(duì)不同數(shù)據(jù)源的支持,提高系統(tǒng)的互操作性,實(shí)現(xiàn)“統(tǒng)一的數(shù)據(jù)架構(gòu)”。
EC Framework中提供了一些數(shù)據(jù)相關(guān)的基本概念,EC Class表示對(duì)象類型,每個(gè)對(duì)象類型包括一組屬性(EC Property),使用對(duì)象類型可以創(chuàng)建對(duì)象實(shí)例(EC Instance)。同時(shí)EC Framework還提供了向圖形元素讀寫EC Instance數(shù)據(jù)的方法。EC Class與面向?qū)ο箝_發(fā)語言中的Class非常相似(EC Property和EC Instance也是如此),但EC Class是用XML文本來定義和描述的。比如具有“員工編號(hào)”和“姓名”屬性的“員工”類可以用XML描述如下:endprint
地質(zhì)模型中涉及的對(duì)象分類眾多,如表1所示。
程序開發(fā)過程中,為了實(shí)現(xiàn)開發(fā)語言中的Class(以下稱.NET Class)和EC Class在概念上的統(tǒng)一,本文使用.NET Reflection技術(shù),將.NET Class 和對(duì)應(yīng)的EC Class互相映射,將.NET Instance 和 EC Instance也互相映射,使得EC Framework的使用更加簡便,如圖4所示。
1.4 自動(dòng)標(biāo)注
地質(zhì)剖面圖中的屬性標(biāo)注要滿足地質(zhì)行業(yè)制圖規(guī)范要求。不同類型的對(duì)象的標(biāo)注方式不盡相同,部分對(duì)象只需要標(biāo)注其編號(hào),但也有幾種類型對(duì)象對(duì)標(biāo)注的格式、位置有特殊要求,如勘探孔洞既要標(biāo)注屬性編號(hào)又要標(biāo)注孔(洞)口的高程、孔(洞)深度等數(shù)據(jù);構(gòu)造對(duì)象除了在遠(yuǎn)離地形線一端標(biāo)注屬性編號(hào),還要在線條中間標(biāo)注其產(chǎn)狀。因此,需要根據(jù)具體地質(zhì)類型的標(biāo)注規(guī)則,以及通過EC Framework技術(shù)寫到圖形元素上的屬性數(shù)據(jù),開發(fā)對(duì)應(yīng)的自動(dòng)標(biāo)注方法。
為了盡量減少標(biāo)注壓蓋,減輕后期修圖的工作壓力,本文使用了記錄每個(gè)標(biāo)注所占用范圍的緩存。當(dāng)新標(biāo)注一個(gè)對(duì)象時(shí),當(dāng)標(biāo)注內(nèi)容與緩存中的范圍無相交時(shí),則在默認(rèn)位置繪制該標(biāo)注,否則按照一定規(guī)則移動(dòng)該標(biāo)注位置,直到與緩存中的范圍無相交為止。
1.5 自動(dòng)排列圖例
圖例是剖面圖上重要的圖件輔助要素。圖中出現(xiàn)的每一種地質(zhì)類型都應(yīng)有對(duì)應(yīng)的圖例,并且要用圖中對(duì)象的真實(shí)屬性進(jìn)行圖例標(biāo)注。剖面圖中元素上的EC數(shù)據(jù)是自動(dòng)排列圖例的基礎(chǔ)。繪制圖例的過程可以分為以下幾步:
1) 遍歷圖件內(nèi)容,提取各種類型的對(duì)象,并根據(jù)圖件的范圍確定第一個(gè)圖例的位置;
2) 按照預(yù)先配置好的各類地質(zhì)對(duì)象繪制圖例的先后順序,依次遍歷提取到的對(duì)象,如果有某種類型的對(duì)象,則進(jìn)入第3步繪制該類型的圖例,記為第n個(gè)圖例;
3) 根據(jù)設(shè)置的圖例列數(shù)、圖例序號(hào)n和圖件高度,計(jì)算第n個(gè)圖例的位置;
4) 在計(jì)算出來的位置繪制圖例,必要時(shí)可根據(jù)對(duì)象的編號(hào)屬性從數(shù)據(jù)庫提取需要的詳細(xì)屬性數(shù)據(jù)。
轉(zhuǎn)入步驟2遍歷下一種類型,直到結(jié)束。
2 結(jié)論
本文介紹了基于MicroStation的地質(zhì)剖面自動(dòng)繪制方法已應(yīng)用于白鶴灘、錦屏二級(jí)、龍開口等15個(gè)大型水電水利工程。該方法具有一鍵自動(dòng)標(biāo)準(zhǔn)化出圖、融合三維建模流程、支持?jǐn)?shù)據(jù)庫和三維模型等多源數(shù)據(jù)、出圖對(duì)象特征化、自動(dòng)標(biāo)注、圖例自動(dòng)排列等功能特點(diǎn)。通過在多個(gè)大型水利水電工程項(xiàng)目中的實(shí)際應(yīng)用,充分驗(yàn)證了這種地質(zhì)剖面圖的實(shí)際效果,大幅提高了計(jì)算機(jī)輔助出圖效率,減少了人工工作量,避免了一些人為差錯(cuò),提高了地質(zhì)剖面圖產(chǎn)品的質(zhì)量。
參考文獻(xiàn):
[1] 朱瑩, 劉學(xué)軍, 陳鎖忠. 基于GIS的地質(zhì)剖面圖自動(dòng)繪制軟件的研究[J]. 南京師范大學(xué)報(bào):自然科學(xué)版, 2007, 30(4).
[2] 劉志鋒. 基于GeoView三維平臺(tái)的任意剖面圖生成技術(shù)研究與應(yīng)用[D]. 中國地質(zhì)大學(xué), 2008.
[3] 王國光, 李成翔. GeoStation地質(zhì)三維系統(tǒng)圖件自動(dòng)編繪方法研究[J]. 工程建設(shè)與設(shè)計(jì), 2015(7).
[4] Bentley Systems Incorporated. ECFramework Programmer's Guide[CP/OL]. http://communities.bentley.com/, 2008.