一種交互式隧道及圍巖體三維模型快速構建方法
2023-04-30 14:10:36 2
專利名稱:一種交互式隧道及圍巖體三維模型快速構建方法
技術領域:
本發明涉及隧道及圍巖體模型三維可視化領域,更具體涉及一種交互式隧道及圍 巖體三維模型快速構建方法,適用於隧道仿真或隧道數位化設計領域中隧道及圍巖精確模 型的快速重構。
背景技術:
一般工程建設投資大、周期長、風險高,尤其涉及到隧道,因其本身依存的地質環 境的複雜性與預測的高誤差性,而且在使用期內具有永久性特徵,一旦建成就不可修改。在 設計階段準確掌握隧道所在的三維地層信息可以提出更優化的隧道設計方案,降低工程難 度,節約工程成本。因此對隧道本身以及所依存的圍巖進行虛擬仿真就顯得尤為重要。仿 真與數位化設計作為智能交通系統(ITS)的一項重要內容,隨著我國經濟的持續健康發展 以及ITS各相關技術的不斷進步,目前已成為國內外各相關研究機構爭相研究的熱點領域 之一。精確建模作為隧道仿真與數位化設計的前提,是目前急待解決的關鍵技術問題,也是 當前研究的熱點。目前,隧道仿真與數位化設計中涉及到的隧道及其圍巖體等模型一般採用人工建 模的方式,建模周期長、模型精度難以保證。在隧道設計方案發生變化時,涉及到的隧道及 圍巖模型要重新構建,人工建模方式不能滿足隧道仿真與數位化設計的實時性要求。在圍 巖建模上一般只使用地質鑽孔數據,對地層剖面信息不能有效利用,難以準確描述圍巖結 構,不能滿足隧道仿真與數位化設計的精度要求。目前隧道仿真與數位化設計領域存在建 模工作周期長、精度低、人工編輯量大、隧道穿越圍巖的高效交互等技術問題。
發明內容
本發明的目的是在於提供了一種交互式隧道及圍巖體三維模型快速構建方法,該 方法極大地提高了隧道仿真與數位化設計的建模效率與精度,有效減少了建模的人工編輯 量,實現了隧道穿越圍巖及任意垂直剖面的實時切割顯示,同時對隧道設計方案的變更可 實現了模型快速重構。本發明採用如下技術措施隧道線位信息建庫、地質勘探數據建庫、三維地層剖面約束信息建庫、三維地層邊 界約束信息建庫、真三維隧道模型構建、真三維圍巖模型構建、基於圍巖模型體元的隧道開 挖與剖面實時切割顯示七個部分實現,一種交互式隧道及圍巖體三維模型快速構建方法, 步驟如下A、隧道線位信息建庫整理得到隧道設計方案中的線位數據,得到線位中樁點樁號以及三維地理空間X、 Y、Z坐標。對行人橫洞與行車橫洞得到橫洞首尾兩端與各線位的交點樁號,最後記錄隧道 線位類型及行人橫洞、行車橫洞信息並將上述線位信息存入隧道線位信息數據表,方便方 案管理、變更及調用;
B、地質勘探數據建庫地質勘探數據包括鑽孔數據及經專家解譯得到若干剖面數據。對於鑽孔數據在數 據庫中建立鑽孔數據表及地層數據表。鑽孔數據表存儲鑽孔編號、三維地理空間X、Y坐標 以及孔口標高。地層數據表存儲該地層所屬的鑽孔編號、地層編號、層底標高等信息,將所 有真實鑽孔數據入庫;C、三維地層剖面約束信息建庫對於剖面數據採取在剖面數據基礎上採樣並生成虛擬鑽孔的方式建立虛擬鑽孔 資料庫,以此生成剖面約束鑽孔,資料庫表結構同真實鑽孔資料庫。地質剖面採樣及剖面約 束鑽孔生成方法如下1)地質剖面定位完成三維地層剖面定位,使圖紙平面坐標系中的任意點坐標可 以換算出其三維地理空間坐標系下的坐標;2)鑽孔孔口採樣在三維地層剖面內採集鑽孔孔口的圖紙平面坐標,並計算出其 在三維地理空間坐標系下的坐標;3)地層採樣在三維地層剖面內採集2)中鑽孔孔口對應的地層層底點的圖紙平 面坐標,並計算出其在三維地理空間坐標系下的坐標;4)虛擬鑽孔生成及入庫根據2)及3)生成的鑽孔孔口與地層的坐標信息生成地 質剖面約束虛擬鑽孔並存入資料庫。D、三維地層邊界約束信息建庫建模邊界為首尾相接的一系列點構成的閉合多邊形。三維地層邊界約束信息是根 據真實鑽孔信息、三維地層剖面約束信息在建模邊界加密時生成的一類虛擬鑽孔,以此作 為約束提高地層邊界處模型的精度。邊界約束信息建庫方法如下1)邊界加密讀取邊界信息並以一定的長度劃分邊界以加密邊界,得到一列加密佔.
^ \\\ 2)虛擬鑽孔生成根據真實鑽孔資料庫、三維地層剖面約束信息資料庫中的信息 在上述1)生成的邊界加密點以及邊界點處生成邊界虛擬鑽孔;3)邊界約束信息入庫將上述2)中生成的三維地層邊界虛擬鑽孔存入資料庫。E、真三維隧道模型構建真三維隧道模型的構建是基於隧道線位信息以及隧道斷面信息完成。其中隧道線 位信息用於構建隧道線位曲線。隧道斷面分為內斷面與外斷面。將圖紙平面空間中的斷面 變換到與隧道線位曲線垂直的閉合斷面後沿隧道線位拉伸得到隧道實體。根據隧道實體的 內外關係及相互貫穿關係進行切割生成隧道模型。真三維隧道模型構建方法如下1)三維地理空間隧道線位曲線構建讀取隧道線位資料庫中的中樁點並依次根 據其中樁點三維地理空間X、Y、Z坐標構建隧道線位曲線;2)隧道斷面實體拾取及斷面實體空間變換在隧道斷面圖紙平面坐標系中拾取 隧道斷面並處理為閉合斷面,同時拾取圖紙平面坐標系中的斷面測量基點坐標。根據測量 基點以及隧道線位曲線,得到從圖紙平面到三維地理空間中的隧道斷面變換矩陣,並進行 斷面變換得到垂直於隧道線位的新斷面;3)隧道體建模利用1)得到的隧道線位曲線以及2)得到的隧道新斷面生成隧道 體並根據隧道體的內外關係及相互貫穿關係進行切割生成隧道模型。
8
F、真三維圍巖模型構建根據地質勘探的分層情況對約束邊界內的真實鑽孔、剖面約束虛擬鑽孔、邊界約 束虛擬鑽孔生成標準化鑽孔。在標準化鑽孔基礎上生成生成圍巖模型體元。方法如下1)得到所有鑽孔並對其進行標準化處理根據地質勘探的分層情況得到標準化 地層。根據標準化地層處理真實鑽孔、剖面約束虛擬鑽孔、邊界約束虛擬鑽孔生成標準化鑽 孔;2)得到約束邊界內的鑽孔在上述1)中得到的標準化鑽孔基礎上,根據建模邊界 選擇建模範圍內的鑽孔;3)以同一地層層底點及鑽孔孔口點為基礎,在三維地理空間坐標系下建立地層分 層面狄洛尼三角網(以下簡稱Delaunay三角網)與鑽孔孔口 Delaunay三角網;4)以鑽孔孔口 Delaunay三角網為基礎生成三稜柱實體以上述3)中得到的鑽孔 孔口 Delaunay三角網為基礎在三維地理空間坐標系中生成垂直於三維地理空間XY平面的 三稜柱實體;5)分離出不同地層利用3)得到的地層分層面Delaunay三角網對4)中得到的 三稜柱實體進行分離得到不同地層的隧道圍巖模型體元。G、基於圍巖模型體元的隧道開挖與剖面實時切割顯示遍歷真三維圍巖模型體元,將其與所有隧道模型進行實體布爾相減得到開挖隧道 後的圍巖模型。步驟如下1)遍歷上述第(F)步驟得到的隧道圍巖模型體元。對每一圍巖模型體元,用第(E) 步驟中第3)小步中的隧道實體進行切割(切割中用到的布爾函數由ObjectsARX庫提供) 得到隧道穿越後的圍巖模型體元;2)基於上述1)中得到的圍巖模型體元,同時加入由第(E)步驟得到的真三維隧道 模型,結合實體斷面切割函數(切割函數由ObjectsARX庫提供)即可切割得到任意垂直剖 面處的圍巖以及隧道斷面;本發明與現有技術相比,具有以下優點第一,隧道設計方案變更時模型重構速度快隧道設計方案、地質勘探鑽孔及地層 信息、建模邊界及剖面約束信息都直接以資料庫系統進行管理,系統快速檢索調用相關數 據進行建模。隧道設計方案變更時僅改變隧道設計方案資料庫中的相應信息,模型重構可 瞬間完成,並自動完成隧道貫穿開挖,克服了以往隧道方案變更時重新建模費時、費力的缺 點ο第二,建模精度高隧道斷面及線位信息直接採用設計圖中的數據。系統自動計算 隧道斷面與線位垂直時的三維平移、縮放、旋轉參數並沿線位展開斷面生成隧道模型,隧道 建模精度高;隧道圍巖模型構建利用三稜柱及分層面切割體元方式建模,有效利用地質勘 探鑽孔數據,並加入了地質專業人員解譯得到的剖面數據,作為圍巖建模的強制性約束以 此修正模型體元的位置,大大提高了圍巖建模的精度。第三,基於隧道及圍巖模型可快速實現隧道穿越開挖及任意剖面切割顯示在真 三維隧道及圍巖建模基礎上可快速實現隧道開挖。開挖後的圍巖模型直觀、精準的展現了 隧道穿越巖體的情況,同時基於隧道及圍巖可實現任意剖面切割顯示。第四,模型可直接應用於隧道仿真與數位化設計使用該方法構建的隧道及圍巖三維模型滿足隧道仿真與數位化設計的實時性、高精度要求,模型可直接應用於相關領域。
圖1為一種交互式隧道及圍巖體三維模型快速構建方法框圖;圖2為一種地層剖面約束採樣方法平面示意圖;圖3為一種隧道斷面平面示意圖;圖4為一種真三維圍巖模型構建框圖。
具體實施例方式下面結合附圖對本發明的實施例做詳細說明。本實施例以本發明的技術方案為指 導下進行實施,給出了詳細的實施方案和過程,但本發明的保護範圍不限於下述的實施例。 本實施例總體流程如圖1所示,隧道線位信息建庫1與地質勘探數據建庫2無先後順序;三 維地層剖面約束信息建庫3在隧道線位信息建庫1的基礎上完成;三維地層邊界約束信息 建庫4在地質勘探數據建庫2與三維地層剖面約束信息建庫3的基礎上完成;真三維圍巖 模型構建6在地質勘探數據建庫2、三維地層剖面約束信息建庫3、三維地層邊界約束信息 建庫4基礎上完成;真三維隧道模型構建5在隧道線位信息建庫1基礎上完成;基於圍巖模 型體元的隧道開挖與剖面實時切割顯示7在真三維隧道模型構建5、真三維圍巖模型構建6 基礎上完成。模塊間數據流走向如圖中實線箭頭所示,但模塊間部分數據流有先後次序,一 種交互式隧道及圍巖體三維模型快速構建方法,具體步驟如下。第一步,隧道線位信息建庫1 整理得到隧道設計方案中的線位數據,得到線位中樁點樁號以及三維地理空間X、 Y、Z坐標。對行人橫洞與行車橫洞則得到的是橫洞首尾兩端與各線位的交點樁號。記錄隧 道線位類型及行人橫洞、行車橫洞信息。將上述線位信息存入隧道線位信息數據表。第二步,地質勘探數據建庫2 地質勘探數據包括鑽孔數據及經專家解譯得到若干剖面數據。對於鑽孔數據在數 據庫中建立鑽孔數據表及地層數據表。鑽孔數據表存儲鑽孔編號、X坐標、Y坐標、孔口標 高,地層數據表存儲該地層所屬的鑽孔編號、地層編號、層底標高等信息。將所有真實鑽孔 數據入庫。第三步,三維地層剖面約束信息建庫3 對於剖面數據採取在剖面數據基礎上採樣並生成虛擬鑽孔的方式建立虛擬鑽孔 資料庫,以此生成三維地層剖面約束鑽孔併入庫。地質剖面採樣及剖面約束鑽孔生成方法 如下1)地質剖面定位a)如圖2所示,分別在圖紙平面內拾取A樁號3_2、B樁號3_3處樁號信息記為 StaU Sta2,同時拾取相應的標示線任意一端端點記為Ptl、Pt2 ;b)讀取隧道線位信息資料庫中各線位中樁點坐標,並依次根據其三維地理空間 X、Y、Z坐標構建曲線,各線位曲線分別記為Linel,Line2. . . Linen ;c)根據下述方法得到Stal與Sta2所表示點的三維地理空間坐標,點記為 PtReall、PtReal2
i.在b)中所得的線位曲線中找到Stal與Sta2所代表的點所在的線位曲線及其 在此線位曲線中的線段區間; 解析Stal與Sta2的公裡數與米數,並根據公裡數與米數以及其所處的線段 區間端點的公裡數與米數得出Stal與Sta2樁號所代表的點PtReal 1、PtReal2 ;d)將c)中得到的點PtReall、PtReal2的三維地理空間Z坐標賦為零,得到經過 PtReal 1、PtReal2的直線LineReal。則LineReal表示此地質剖面與三維地理空間坐標系 中高度為零的XY平面的交線;e)地質剖面圖紙平面內任意點在三維地理空間坐標系中Z坐標的計算方法如下i.在零刻度3-1處拾取圖紙平面內剖面定位的零刻度點PtOrient ;ii.量取零刻度點到任意刻度η處在圖紙平面內y方向上的距離DistY,根據下述 公式算出比例因子Fscale Fscale = n/DistYiii.根據零刻度點PtOrient與地質剖面內任意點在圖紙平面內y方向的距離 delt及全局比例因子Fscale得到待求點在三維地理空間坐標系下的Z值Z = FscaleXdelt2)鑽孔孔口採樣地質剖面採樣位置選擇在地層線變化劇烈的地方。在地質剖面圖中最上層位置 拾取地質剖面圖紙平面中的點PtSampleDrill。利用1)中所述的Ptl、Pt2、PtOrient、 PtReall、PtReal2、LineReal、Fscale計算出圖紙平面採樣點PtSampleDrill的三維地理空 間坐標PtRealDrill,具體計算方法如下a)由 PtSampleDrill、Ptl、Pt2 的圖紙平面 χ 坐標信息得出 PtSampleDrill 與 Ptl 在圖紙平面χ方向上的相對位置與距離DeltX,PtSampleDrill與Ptl的真實距離DeltReal 由下述方法計算得到DeltReal = DeltXXFscale ;b)LineReal表示經過PtReall與PtReal2的直線。結合a)中得到的Ptl與 PtSampleDrill的相對位置,計算出直線LineReal上從點PtReall開始距離為DeltReal處 的點的三維地理空間坐標,此坐標即PtRealDrill的平面坐標;c) PtSampleDrill與PtOrient在圖紙平面χ方向上的坐標差記為DeltY,鑽孔孔 口高程即PtRealDrill的Z坐標。計算方法如下Z = DeltYXFscale3)地層採樣在地質剖面圖中與鑽孔孔口採樣點對應的地層即為此鑽孔的地層,採樣的地層只 記錄其層底標高,採樣及計算過程如下a)在地質剖面圖的鑽孔採樣點處保持鑽孔採樣點在圖紙平面中的χ坐標不變,從 最上層地層開始依次拾取地層層底點,得到地質剖面圖上的點PtStratuml、PtStratum2直 到PtStratumn,對於塵滅的地層也要進行採樣,且確保採樣點圖紙平面y坐標與緊鄰的上 一地層採樣點圖紙平面y坐標相同;b) PtStratuml、PtStratum2. . . PtStratumn的圖紙平面χ坐標相同,各點圖紙平面 y坐標與PtOrient點y坐標的差值乘以Fscale即為此鑽孔各地層分界點三維地理空間Z坐
11標(即標高),地層分界點分別記為 PtStratumlHigh、PtStratum2High. . . PtStratumnHigh, 其計算方法如下PtStratumlHigh = (PtStratuml. y-PtOrient. y) XFscalePtStratum2High = (PtStratum2. y-PtOrient. y) XFscalePtStratumnHigh = (PtStratumn. y-PtOrient. y) XFscale4)虛擬鑽孔生成及入庫由上述2)及3)生成鑽孔與相應的地層信息即構成 孔數據表記錄存儲如下所示(其中ID為系統自動生成的唯-
鑽孔編號X坐標
IDPtRealDrill. χ 對應的地層信息為多條記錄。
鑽孔編號地層編號
ID1
ID2
IDη
Y坐標
PtRealDrill.y 虛擬地層數據表記錄存儲如下所示 層底標高 PtStratumlHigh PtStratum2High
-個完整的虛擬鑽孔。虛擬鑽 標識號) 孔口標高 PtRealDrill. ζ。
ηPtStratumnHigh
以上記錄涉及到的坐標信息均為三維地理空間坐標系下的坐標;第四步,三維地 層邊界約束信息建庫4 建模邊界為首尾相接的一系列點構成的閉合多邊形。三維地層邊界約束信息是根 據真實鑽孔信息、三維地層剖面約束信息在建模邊界加密時生成的一類虛擬鑽孔,以此做 為約束提高地層邊界處模型的精度。三維地層邊界約束信息建庫方法如下1)邊界加密設構成邊界的點依次為PtRangel、PtRange2. · · PtRangen,前後相鄰兩點構 成的線段以及最後一點PtRangen與第一點PtRange 1構成的線段依次為LineRange 1、 LineRange2. . . LineRangen。假定力卩密距離為 Dist ;a)遍歷所有邊界線段得到線段兩端點PtTempl、PtTemp2並求得線段長度(記為 LineLength);b)記intPointNum為加密點個數,計算方法如下intPointNum = [LineLength/Dist](式中[]為取整操作)c)記DistDelt為當前線段的加密長度,計算方法如下DistDelt = LineLength/(intPointNum+1)d)以長度DistDelt平分以PtTempl、PtTemp2為端點的線段;e)重複上述b)到d)的步驟,得到所有線段的平分點。2)虛擬鑽孔生成a)遍歷上述1)得到的所有平分點,記當前線段平分點為PtCurrent ;b)遍歷地質勘探鑽孔資料庫、三維地層剖面約束信息資料庫中的鑽孔位置信息。 求得距離PtCurrent最近的鑽孔,同時得到其地層信息;c)複製上述b)得到的鑽孔及地層信息,同時將鑽孔的三維地理空間X坐標改為 PtCurrent. X,Y坐標改為PtCurrent. Y,相應的地層信息保持不變,以此生成加密點處的虛
12擬鑽孔及地層信息;d)重複上述 b)到 c)的步驟,得到所有 LineRangel、LineRange2. . . LineRangen 線 段加密點處的邊界約束虛擬鑽孔及地層信息;e)求得PtRange 1、PtRange2. . . PtRangen各點對應的虛擬鑽孔及地層信息。3)邊界約束信息入庫使用第二步驟中地質勘探資料庫中鑽孔與地層表結構建立邊界約束點 虛擬鑽孔資料庫,並將上述2)得到的加密點邊界約束虛擬鑽孔以及PtRangel、 PtRange2. . . PtRangen各點處虛擬鑽孔存入資料庫。第五步,真三維隧道模型構建5 真三維隧道模型的構建是基於隧道線位信息以及隧道斷面信息完成。其中隧道線 位信息用於構建隧道線位曲線。如圖3所示(圖3為圖1中真三維隧道模型構建5的細分 圖),隧道斷面分為外斷面5-1、內斷面5-2、隧道路面斷面5-3,其中x、y表示隧道斷面所在 的圖紙平面坐標系。1)三維地理空間隧道線位曲線構建a)依次讀取隧道線位資料庫各中樁點坐標。b)根據隧道線位構建主洞或各行人橫洞或行車橫洞線位曲線。2)隧道斷面實體拾取及斷面實體空間變換a)根據隧道設計文件斷面數據形成完整閉合斷面。b)遍歷隧道線位及斷面,設原始斷面分別為SectionOrtl、 Section0rt2. . . SectionOrtn。拾取隧道斷面內中樁的測量基點,記為PtSectionOrient。c)計算從隧道線位第一點PtStart到第二點PtEnd構成的矢量VectorChunnel,計算方法如下VectorChunnel = PtEnd-PtStartd)設圖紙平面坐標系中隧道斷面法向量VectorSection為圖紙平面坐 標系中的-ζ方向。計算出VectorSection到VectorChunnel的變換矩陣,同時加 入PtSectionOrient到PtStart的平移量。最終得到所有斷面各自的變換矩陣記為 RtransformK Rtransform2. . . Rtransformn0e)利用d)所得到的斷面變換矩陣可對隧道斷面進行空間變換得到一組新斷 面。新斷面的測量基點位於線位起始點且斷面垂直於線位。新斷面記為SectionNewl、 SectionNew2. · · SectionNewn0 空間變換方法如下SectionNewl = SectionOrtlX [Rtransforml]SectionNew2 = Section0rt2X [Rtransform2]SectionNewn = SectionOrtnX [Rtransformn]3)隧道體建模a)上述 2)得到的 SectionNewl、SectionNew2. . . SectionNewn 分別沿隧道線位進 行拉伸即可得到隧道三維實體(拉伸函數由ObjectsARX庫提供)。b)山上述a)過程得到的是所有斷面的三維實體。三維實體分外部實體(由外斷 面生成)與內部實體(內斷面生成)。要經過一系列切割操作生成隧道襯砌環實體。符號 定義如下(實際情況可能不包括車行橫洞及人行橫洞,但運算方法不變。此處以最複雜的情況實施)EntityChunOut 主隧道外部實體EntityChunln 主隧道內部實體EntityChunEnd 主隧道襯砌環實體EntityCarOut 車行橫洞外部體體EntityCarln 車行橫洞內部實體EntityCarEnd 車行橫洞襯砌環實體EntityPeopleOut 人 亍橫洞外部實體EntityPeopleln 人行橫洞內部實體EntityPeopleEnd 人行橫洞襯砌環實體切割中用到的布爾運算由ObjectsARX庫提供,切割過程如下iv.EntityCarEnd = Ent i tyCarOut-Ent i tyCarIn-Ent i tyChunInv.EntityPeopleEnd = Ent i tyPeop1eOu-Ent i tyPeop1eIn-Ent i tyChunInvi. EntityChunEnd = EntityChunOut-EntityChunIn-EntityCarIn-EntityPeop1 elnc)最終隧道體由 EntityChunEnd、EntityCarEnd、EntityPeopleEnd 相加組成。存 儲 EntityChunOut、EntityCarOut、EntityPeopleOut 備用。第六步,真三維圍巖模型構建6 :如圖4所示(圖4為圖1中步驟6的細分圖),根據地質勘探的分層情況將約束 邊界內真實鑽孔6-1、剖面約束虛擬鑽孔6-2、邊界約束虛擬鑽孔6-3生成標準化鑽孔6-4。 在標準化鑽孔6-4基礎上生成鑽孔孔口 Delaunay三角網6-6與地層分層面Delaunay三角 網6-5,根據鑽孔孔口 Delaunay三角網6-6中的三角面生成三稜柱6_7,再利用地層分層面 Delaunay三角網6_5對其進行分離生成圍巖模型體元6_8。具體步驟如下1)得到所有鑽孔並對其進行標準化處理,具體過程如下a)根據地質勘探鑽孔資料庫得到真實鑽孔6-1 ;b)根據三維地層剖面約束信息資料庫得到剖面約束虛擬鑽孔6-2 ;c)根據三維地層邊界約束信息資料庫得到邊界約束虛擬鑽孔6-3 ;d)根據地質勘探數據對作業區地層進行分類,得到標準地層;e)對鑽孔數據標準化處理,具體過程如下i.遍歷鑽孔以及每一鑽孔對應的地層;ii.以上述d)中得到的標準地層為依據對地層進行標準化處理。地層與標準地 層比較,如果缺少某一地層則根據標準地層的順序在分類地層中找出合適的插入點加入新 層。新層的層底標高為緊鄰的上一地層的標高,即插入零厚度地層,由此標準化所有地層最 終得到標準化鑽孔6-4.2)在上述1)中得到的標準化鑽孔6-4基礎上,根據建模邊界選擇建模範圍內的鑽 孑L PointsMod ;3)以同一地層層底點基礎,在三維地理空間坐標系下建立地層分層面Delaunay 三角網6-5。同時以鑽孔孔口點為基礎建立鑽孔孔口 Delaunay三角網6_6 ;a)獲取PointsMod內所有鑽孔孔口點,根據Delaunay三角網構網法則建立鑽孔孔口 Delaunay 三角網 6—6 ;b)獲取PointsMod內同一地層點集,根據Delaunay三角網構網法則建立地層分層 M Delaunay H^ 網 6-5 ;4)以鑽孔孔口三角網6-6為基礎生成三稜住實體6-7 ;a)遍歷所有鑽孔及地層,求得鑽孔孔口及地層標高的最大值與最小值,分別記為 HeightMax、HeightMin ;b)以上述3)中a)中得到的鑽孔孔口 Delaunay三角網6-6為基礎,根據三角網中 的三角面建立新三角面,新三角面三頂點的高程值設為HeightMin,三維地理空間X、Y坐標 保持不變;c)以上述b)方法得到的三角面沿三維地理空間坐標系Z軸正向拉伸(拉伸函數 由ObjectsARX庫提供),拉伸到HeightMax,以此生成Delaunay三角網內每個三角面對應 的三稜柱。5)分離出不同地層,得到隧道圍巖模型體元6-8 a)讀取上述4)中生成的三稜柱,同時遍歷地層分層面Delaunay三角網[6_5],得 到三稜柱對應的一系列三角面,記為Trianglel、Trianglel. . . Trianglen ;b)從三稜柱最底部開始,依次用三角面Trianglen、Trianglen-l. . . Trianglel去 分離不同地層。每次分離得到的下半部分賦以相應地層的顏色,上半部分則繼續參與地層 分離,直到最頂層;c)對b)得到的三稜柱上半部分利用鑽孔孔口 Delaunay三角網6-6對應的三角面 分離出下半部分實體,賦以相應的地層顏色,同時丟棄孔口以上部分;d)由上述b)與C)分離過程得到的實體體元是以真實地理坐標表示的。所有體元 則自動構成真三維圍巖。第七步,基於圍巖模型體元的隧道開挖與剖面實時切割顯示7 遍歷真三維圍巖模型體元,將其與所有隧道模型進行實體布爾相減得到開挖隧道 後的圍巖模型。步驟如下1)遍歷上述第六步驟得到的隧道圍巖模型體元。對每一圍巖模型體元,用第五步 驟中第3)步驟中的EntityChunOut、EntityCarOut、EntityPeopIeOut實體進行切割(切割 中用到的布爾函數由ObjectsARX庫提供)。記任一模型體元為Mod,新的體元為ModNew。 切割方法如下ModNew = Mod-Ent i tyChunOut-Ent i tyCarOut-Ent i tyPeop1eOut根據上述方法對所有圍巖模型體元進行切割即可完成圍巖的隧道穿越;2)基於上述1)中得到的圍巖模型體元,同時加入由第五步得到的真三維隧道模 型,結合實體斷面切割函數(由ObjectsARX庫提供)即可切割得到任意垂直剖面處的圍巖 以及隧道斷面。
1權利要求
一種交互式隧道及圍巖體三維模型快速構建方法,其步驟是A、隧道線位信息建庫(1)整理得到隧道設計方案中的線位數據,得到線位中樁點樁號以及三維地理空間X、Y、Z坐標,對行人橫洞與行車橫洞得到橫洞首尾兩端與各線位的交點樁號,最後記錄隧道線位類型及行人橫洞、行車橫洞信息並將上述線位信息存入隧道線位信息數據表;B、地質勘探數據建庫(2)地質勘探數據包括鑽孔數據及剖面數據,對於鑽孔數據在資料庫中建立鑽孔數據表及地層數據表,鑽孔數據表存儲鑽孔編號、三維地理空間X、Y坐標以及孔口標高,地層數據表存儲該地層所屬的鑽孔編號、地層編號、層底標高等信息,將所有真實鑽孔數據入庫;C、三維地層剖面約束信息建庫(3)在三維地層剖面圖紙平面上採樣並生成剖面約束虛擬鑽孔,並將剖面約束虛擬鑽孔入庫,三維地層剖面採樣及剖面約束鑽孔生成方法如下1)地質剖面定位a)分別在圖紙平面內拾取A樁號(3-2)、B樁號(3-3)處樁號信息記為Sta1、Sta2,同時拾取相應的標示線任意一端端點記為Pt1、Pt2;b)讀取隧道線位信息資料庫中各線位中樁點坐標,並依次根據其三維地理空間X、Y、Z坐標構建曲線,各線位曲線分別記為Line1,Line2直到Linen;c)根據下述方法得到Sta1與Sta2所表示點的三維地理空間坐標,點記為PtReal1、PtReal2i.在b)中所得的線位曲線中找到Sta1與Sta2所代表的點所在的線位曲線及其在此線位曲線中的線段區間;ii.解析Sta1與Sta2的公裡數與米數,並根據公裡數與米數以及其所處的線段區間端點的公裡數與米數得出Sta1與Sta2樁號所代表的點PtReal1、PtReal2;d)將c)中得到的點PtReal1、PtReal2的三維地理空間Z坐標賦為零,得到經過PtReal1、PtReal2的直線LineReal。則LineReal表示此地質剖面與三維地理空間坐標系中高度為零的XY平面的交線;e)地質剖面圖紙平面內任意點在三維地理空間坐標系中Z坐標的計算方法如下i.在零刻度3-1處拾取圖紙平面內剖面定位的零刻度點PtOrient;ii.量取零刻度點到任意刻度n處在圖紙平面內y方向上的距離DistY,根據下述公式算出比例因子FscaleFscale=n/DistY;iii.根據零刻度點PtOrient與地質剖面內任意點在圖紙平面內y方向的距離delt及全局比例因子Fscale得到待求點在三維地理空間坐標系下的Z值,計算方法如下Z=Fscale×delt;2)鑽孔孔口採樣地質剖面採樣位置選擇在地層線變化劇烈的地方,在地質剖面圖中最上層位置拾取地質剖面圖紙平面中的點PtSampleDrill,利用1)中所述的Pt1、Pt2、PtOrient、PtReal1、PtReal2、LineReal、Fscale計算出圖紙平面採樣點PtSampleDrill的三維地理空間坐標PtRealDrill,具體計算方法如下a)由PtSampleDrill、Pt1、Pt2的圖紙平面x坐標信息得出PtSampleDrill與Pt1在圖紙平面x方向上的相對位置與距離DeltX,PtSampleDrill與Pt1的真實距離DeltReal由下述方法計算得到DeltReal=DeltX×Fscale;b)LineReal表示經過PtReal1與PtReal2的直線。結合a)中得到的Pt1與PtSampleDrill的相對位置,計算出直線LineReal上從點PtReal1開始距離為DeltReal處的點的三維地理空間坐標,此坐標即PtRealDrill的平面坐標;c)PtSampleDrill與PtOrient在圖紙平面x方向上的坐標差記為DeltY,鑽孔孔口高程即PtRealDrill的Z坐標為Z=DeltY×Fscale;3)地層採樣在地質剖面圖中與鑽孔孔口採樣點對應的地層即為此鑽孔的地層,採樣的地層只記錄其層底標高,採樣及計算過程如下a)在地質剖面圖的鑽孔採樣點處保持鑽孔採樣點在圖紙平面中的x坐標不變,從最上層地層開始依次拾取地層層底點,得到地質剖面圖上的點PtStratum1、PtStratum2直到PtStratumn,對於塵滅的地層也要進行採樣,且確保採樣點圖紙平面y坐標與緊鄰的上一地層採樣點圖紙平面y坐標相同;b)PtStratum1、PtStratum2直到PtStratumn的圖紙平面x坐標相同,各點圖紙平面y坐標與PtOrient點y坐標的差值乘以Fscale即為此鑽孔各地層分界點三維地理空間Z坐標,地層分界點分別記為PtStratum1High、PtStratum2High直到PtStratumnHigh;4)虛擬鑽孔生成及入庫由上述2)及3)生成鑽孔孔口與相應的地層信息即構成一個完整的虛擬鑽孔,虛擬鑽孔數據表的記錄存儲結構如下所示鑽孔編號 X坐標Y坐標孔口標高對應的地層信息為多條記錄,地層記錄存儲結構如下所示鑽孔編號地層編號層底標高;D、三維地層邊界約束信息建庫(4)建模邊界為首尾相接的點構成的閉合多邊形,三維地層邊界信息是根據真實鑽孔信息、三維地層剖面約束信息在建模邊界加密時生成的一類虛擬鑽孔,作為約束提高地層邊界處模型的精度,三維地層邊界約束信息建庫方法如下1)邊界加密設構成邊界的點依次為PtRange1、PtRange2直到PtRangen,前後相鄰兩點構成的線段以及最後一點PtRangen與第一點PtRange1構成的線段依次為LineRange1、LineRange2直到LineRangen,加密距離為Dist;a)遍歷所有邊界線段得到線段兩端點PtTemp1、PtTemp2並求得線段長度;b)記intPointNum為加密點個數,計算方法如下intPointNum=LineLength/Dist,並對intPointNum取整數;c)記DistDelt為當前線段的加密長度,計算方法如下DistDelt=LineLength/(intPointNum+1)d)以長度DistDelt平分以PtTemp1、PtTemp2為端點的線段;e)重複上述b)到d)的步驟,得到所有線段的平分點;2)虛擬鑽孔生成a)遍歷上述1)得到的所有平分點,記當前線段平分點為PtCurrent;b)遍歷地質勘探鑽孔資料庫、三維地層剖面約束信息資料庫中的鑽孔位置信息,得到距離PtCurrent最近的鑽孔,同時得到其地層信息;c)複製上述b)得到的鑽孔及地層信息,同時將鑽孔的三維地理空間X坐標改為PtCurrent.X,Y坐標改為PtCurrent.Y,相應的地層信息保持不變,以此生成加密點處的虛擬鑽孔及地層信息;d)重複上述b)、c)步驟,得到所有LineRange1、LineRange2直到LineRangen線段的加密點處的邊界約束虛擬鑽孔及地層信息;e)求得PtRange1、PtRange2直到PtRangen各點對應的虛擬鑽孔及地層信息;3)邊界約束信息入庫使用B步驟中地質勘探資料庫中鑽孔與地層表結構建立邊界約束點虛擬鑽孔資料庫,並將上述2)得到的邊界約束虛擬鑽孔以及PtRange1、PtRange2直到PtRangen各點處虛擬鑽孔存入資料庫;E、真三維隧道模型構建(5)基於隧道線位信息以及隧道斷面信息完成真三維隧道模型的構建,其中隧道線位信息用於構建隧道線位曲線,隧道斷面分為外斷面(5-1)、內斷面(5-2)、隧道路面斷面(5-3),其o、x、y表示隧道斷面所在的圖紙平面坐標系,真三維隧道模型構建方法如下1)三維地理空間隧道線位曲線構建a)依次讀取隧道線位資料庫各中樁點三維地理空間坐標;b)根據隧道線位中樁點三維地理空間坐標構建主洞或各行人橫洞或行車橫洞線位曲線;2)隧道斷面實體拾取及斷面實體空間變換a)根據隧道設計文件斷面數據形成完整閉合斷面;b)遍歷隧道線位及斷面,設原始斷面分別為SectionOrt1、SectionOrt2直到SectionOrtn,拾取隧道斷面內中樁的測量基點,記為PtSectionOrient;c)計算從隧道線位第一點PtStart到第二點PtEnd構成的矢量VectorChunnel,計算方法如下VectorChunnel=PtEnd-PtStart;d)設圖紙平面坐標系中隧道斷面法向量VectorSection為圖紙平面坐標系中的-z方向,得到VectorSection到VectorChunnel的變換矩陣,同時在變換矩陣中加入PtSectionOrient到PtStart的平移量,得到所有斷面各自的變換矩陣記為Rtransform1、Rtransform2直到Rtransformn;e)利用d)所得到的斷面變換矩陣對隧道斷面進行空間變換得到一組新斷面,記為SectionNew1、SectionNew2直到SectionNewn;3)隧道體建模a)上述2)得到的SectionNew1、SectionNew2直到SectionNewn分別沿隧道線位進行拉伸得到隧道三維實體,拉伸用到的函數由ObjectsARX庫提供;b)由上述a)過程得到的是所有斷面的三維實體,要經過一系列切割操作生成隧道襯砌環實體,切割中用到的布爾運算由ObjectsARX庫提供,切割過程如下i.EntityCarEnd=EntityCarOut-EntityCarln-EntityChunln;ii.EntityPeopleEnd=EntityPeopleOu-EntityPeopleln-EntityChunln;iii.EntityChunEnd=EntityChunOut-EntityChunln-EntityCarln-EntityPeopleln;c)最終隧道體由EntityChunEnd、EntityCarEnd、EntityPeopleEnd相加組成,存儲EntityChunOut、EntityCarOut、EntityPeopleOut備用;F、真三維圍巖模型構建(6)根據地質勘探的分層情況將約束邊界內真實鑽孔(6-1)、剖面約束虛擬鑽孔(6-2)、邊界約束虛擬鑽孔(6-3)生成標準化鑽孔(6-4),在標準化鑽孔(6-4)基礎上生成鑽孔孔口Delaunay三角網(6-6)與地層分層面Delaunay三角網(6-5),根據鑽孔孔口Delaunay三角網(6-6)中的三角面生成三稜柱(6-7),再利用地層分層面Delaunay三角網(6-5)對其進行分離生成圍巖模型體元(6-8),具體步驟如下1)得到所有鑽孔並對其進行標準化處理,具體過程是a)根據地質勘探鑽孔資料庫得到真實鑽孔(6-1);b)根據三維地層剖面約束信息資料庫得到剖面約束虛擬鑽孔(6-2);c)根據三維地層邊界約束信息資料庫得到邊界約束虛擬鑽孔(6-3);d)根據地質勘探數據對作業區地層進行分類,得到標準地層;e)對鑽孔數據標準化處理,具體過程如下i.遍歷鑽孔以及每一鑽孔對應的地層;ii.以上述d)中得到的標準地層為依據對地層進行標準化處理。地層與標準地層比較,根據標準地層的順序在分類地層中找出合插入點加入新層,新層的層底標高為緊鄰的上一地層的標高,即插入零厚度地層,由此標準化所有地層最終得到標準化鑽孔(6-4);2)在上述1)中得到的標準化鑽孔(6-4)上,根據建模邊界選擇建模範圍內的鑽孔PointsMod;3)以同一地層層底點基礎,在三維地理空間坐標系下建立地層分層面Delaunay三角網(6-5),同時以鑽孔孔口點為基礎建立鑽孔孔口Delaunay三角網(6-6);a)獲取PointsMod內所有鑽孔孔口點,根據Delaunay三角網構網法則建立鑽孔孔口Delaunay三角網(6-6);b)獲取PointsMod內同一地層點集,根據Delaunay三角網構網法則建立地層分層面Delaunay三角網(6-5);4)以鑽孔孔口三角網(6-6)為基礎生成三稜住實體(6-7)a)遍歷所有鑽孔及地層,求得鑽孔孔口及地層標高的最大值與最小值,分別記為HeightMax、HeightMin;b)以上述3)中a)中得到的鑽孔孔口Delaunay三角網(6-6)為基礎,根據三角網中的三角面建立新三角面,新三角面三頂點的高程值設為HeightMin,三維地理空間X、Y坐標保持不變;c)以上述b)方法得到的三角面沿三維地理空間坐標系Z軸正向拉伸,拉伸到HeightMax,以此生成Delaunay三角網內每個三角面對應的三稜柱;5)分離出不同地層,得到隧道圍巖模型體元(6-8)a)讀取上述4)中生成的三稜柱,同時遍歷地層分層面Delaunay三角網(6-5),得到三稜柱對應的三角面,記為Triangle1、Triangle1直到Trianglen;b)從三稜柱最底部開始,依次用三角面Trianglen、Trianglen-1直到Triangle1去分離不同地層,每次分離得到的下半部分賦以相應地層的顏色,上半部分則繼續參與地層分離,直到最頂層;c)對b)得到的三稜柱上半部分利用鑽孔孔口Delaunay三角網(6-6)對應的三角面分離出下半部分實體,賦以相應的地層顏色,同時丟棄孔口以上部分實體;d)由上述b)與c)分離過程得到的實體體元是以真實地理坐標表示的,所有體元則自動構成真三維圍巖;G、基於圍巖模型體元的隧道開挖與剖面實時切割顯示(7)遍歷真三維圍巖模型體元,將其與所有隧道模型進行實體布爾相減得到開挖隧道後的圍巖模型,步驟如下1)遍歷上述第(F)步驟得到的隧道圍巖模型體元,對每一圍巖模型體元,用第(E)步驟中第3)步驟中的EntityChunOut、EntityCarOut、EntityPeopleOut實體進行切割,記任一模型體元為Mod,新的體元為ModNew,切割方法如下ModNew=Mod-EntityChunOut-EntityCarOut-EntityPeopleOut;2)基於上述1)中得到的圍巖模型體元,同時加入由第(E)步得到的真三維隧道模型,結合實體斷面切割函數切割得到任意垂直剖面處的圍巖以及隧道斷面。
全文摘要
本發明公開了一種交互式隧道及圍巖體三維模型快速構建方法,其步驟是A、隧道線位信息建庫採集隧道線位信息並建立線位信息庫;B、地質勘探數據建庫對地質勘探得到的鑽孔數據進行標準化處理;C、三維地層剖面約束信息建庫採集三維地層剖面約束信息;D、三維地層邊界約束信息建庫採集自定義的建模邊界;E、真三維隧道模型構建根據隧道線位、隧道洞體外斷面、內斷面信息精確構建隧道三維模型;F、真三維圍巖模型構建根據鑽孔與地層信息構建圍巖模型;G、基於圍巖模型體元的隧道開挖與剖面實時切割顯示。提高了隧道仿真與數位化設計的建模效率與精度,實現了隧道穿越圍巖及任意垂直剖面的實時切割顯示,實現了模型快速重構。
文檔編號E21D9/14GK101882171SQ20101018496
公開日2010年11月10日 申請日期2010年5月21日 優先權日2010年5月21日
發明者餘紹淮, 張霄, 明洋, 梁誠, 王麗園, 陳楚江 申請人:中交第二公路勘察設計研究院有限公司