一種廣義三棱柱空間數(shù)據(jù)模型的三維剖切方法
【專利摘要】本發(fā)明公開了一種廣義三棱柱(Generalized Tri-Prism)GTP空間數(shù)據(jù)模型的三維空間剖切方法。該方法通過分析GTP體元數(shù)據(jù)結(jié)構(gòu)及其與切平面拓?fù)潢P(guān)系類型,構(gòu)建剖切類型2級分類體系,針對每種剖切類型設(shè)計了可支持GTP任意切面多重剖切操作的“剖切后剩余多面圖空間剖分方式”,并在多重剖切的基礎(chǔ)上進(jìn)一步實現(xiàn)空間開挖算法。本發(fā)明的方法適用于任何基于GTP空間數(shù)據(jù)模型構(gòu)建的三維地質(zhì)模型,可廣泛應(yīng)用于水文、工程、地礦、油藏勘探等領(lǐng)域的三維地質(zhì)建模工作中。
【專利說明】一種廣義三棱柱空間數(shù)據(jù)模型的三維剖切方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及一種針對廣義三棱柱(GeneralizedTri_Prism)GTP數(shù)據(jù)模型的三維 空間剖切方法,能夠支持基于GTP構(gòu)建的三維地質(zhì)模型多重、任意切面的三維剖切以及空 間開挖操作,屬于三維地理信息系統(tǒng)的空間分析技術(shù)、三維地質(zhì)建模【技術(shù)領(lǐng)域】。
【背景技術(shù)】
[0002] 目前,各類空間數(shù)據(jù)模型,尤其是三維空間數(shù)據(jù)模型的研究正趨于熱化,近年來也 涌現(xiàn)出了很多形式的空間數(shù)據(jù)模型及其構(gòu)模方法。其中較為具有代表性的有張煜、白世 偉等提出的直三棱柱(ATP)空間數(shù)據(jù)模型及其構(gòu)模方法(張煜,白世偉.一種基于三棱 柱體體元的三維地層建模方法及應(yīng)用[J].中國圖象圖形學(xué)報,2001,6A(3) :285-290.); 程朋根、文紅等提出的類三棱柱(QTP)空間數(shù)據(jù)模型及其構(gòu)模與剖切算法(程朋根,文 紅.三維空間數(shù)據(jù)建模及算法[M].北京:國防工業(yè)出版社,2011.);以及吳立新等提出并 發(fā)展的廣義三棱柱(GTP)空間數(shù)據(jù)模型(WuLixin.Topologicalrelationsembodied inageneralizedtri-prism(GTP)modelfora3Dgeo-sciencemodelingsystem[J]. Computers&Geosciences,2005,30(4) :405-418.)等。其中,廣義三棱柱空間數(shù)據(jù)模型 (GTP)由于其"對側(cè)面不要求為平面"、"上下三角面不要求平行"以及"可退化為四面體和 四棱錐空間數(shù)據(jù)模型"等顯著特征,可以有效地模擬尖滅、斷層、透鏡體等復(fù)雜的地質(zhì)結(jié)構(gòu), 因而在實際工作中被廣泛應(yīng)用于各類復(fù)雜地質(zhì)現(xiàn)象建模中。
[0003] 在三維地質(zhì)建模研究與應(yīng)用領(lǐng)域,三維空間剖切是反映地質(zhì)體內(nèi)部空間與屬性特 征的重要手段;同時它也是進(jìn)行空間開挖模擬、空間地質(zhì)對象布爾運算等常用空間分析操 作的基礎(chǔ)。隨著基于GTP空間數(shù)據(jù)模型在三維地質(zhì)建模領(lǐng)域中應(yīng)用的逐步深入與發(fā)展,對 于一個具有較強(qiáng)適用性的、可支持多重任意切面剖切GTP地質(zhì)模型空間剖切方法的需求也 日趨迫切。然而,現(xiàn)有對地質(zhì)模型的空間剖切的方法一般根據(jù)某種空間數(shù)據(jù)模型的幾何形 態(tài)特征而設(shè)計,僅能滿足單次剖切的要求。由于在歷經(jīng)一次剖切操作后,GTP空間數(shù)據(jù)模型 的幾何形態(tài)特征會發(fā)生顯著的改變。對于一個標(biāo)準(zhǔn)的GTP體元,經(jīng)過兩次任意平面的剖切 后,將出現(xiàn)側(cè)面非平面的形態(tài)特征,或退化為四棱錐、四面體等體元,這就導(dǎo)致在進(jìn)行多重 剖切時原有的剖切算法無法繼續(xù)適用,難以準(zhǔn)確、有效支撐三維地質(zhì)模型的多重剖切操作。
【發(fā)明內(nèi)容】
[0004] 現(xiàn)有基于GTP構(gòu)建的三維地質(zhì)模型剖切方法,可以適用于堅直切面多次剖切。但 當(dāng)切面為非堅直切面時(即任意姿態(tài)的切平面),在現(xiàn)有方法下,GTP體元被剖切后會出現(xiàn) 大量的形態(tài)特征不定的幾何體,從而使得任何面對特定形態(tài)特征的空間剖切算法失去適用 性。解決多重剖切問題的一個有效思路是在剖切的基礎(chǔ)上對這些保留下來形態(tài)特征不定的 幾何體進(jìn)行剖分,將一個形態(tài)特征不定的幾何體劃分為若干形態(tài)特征明確的GTP體元,從 而使得空間剖切算法可以繼續(xù)適用。目前剖切方法已有遵循該思路的先例,但大多針對直 三棱柱(TP)空間數(shù)據(jù)模型或者規(guī)則空間數(shù)據(jù)模型而設(shè)計,不能適用于基于GTP構(gòu)建的地質(zhì) 模型的任意多重剖切。本發(fā)明的目的是提出一種對GTP體元形態(tài)特征不敏感的、基于GTP體元數(shù)據(jù)結(jié)構(gòu)的空間剖切方法,以解決現(xiàn)有空間剖切算法無法支持GTP地質(zhì)模型多重任意 切面空間剖切的問題。
[0005] 為了實現(xiàn)上述發(fā)明目的,本發(fā)明采用的技術(shù)方案如下:
[0006] -種廣義三棱柱空間數(shù)據(jù)模型的三維剖切方法,包括如下幾個步驟:
[0007] 1)設(shè)計廣義三棱柱空間數(shù)據(jù)模型GTP體元的通用數(shù)據(jù)結(jié)構(gòu),將具有任意形態(tài)一個 GTP體元,統(tǒng)一描述成一個六維向量(p0,pl,p2,p3,p4,p5),其中p0、pi、p2代表GTP體元 上三角面的三個頂點,P3、p4、p5表示下三角面的三個頂點;
[0008] 2)利用方程⑴定義一個切平面,
[0009] Ax+By+Cz+D = 0 (1)
[0010] 其中:A、B、C分別是該平面的法向量在X,y,z軸的分量,D=A*x0+B*y0+C*z0, x0,y0,z0表示位于該平面上的任意一點的三維坐標(biāo),由此任意一個切平面方程可由一個四 維向量(A,B,C,D)表示;
[0011] 3)判斷GTP體元位于剖切平面上的位置,如果切剖部分位于切平面上半部分,此 時,將所有位于切平面上半部分的GTP體元從地質(zhì)模型的體元集合中刪除;
[0012] 4)對于與切平面有交點的GTP體元:分析GTP體元數(shù)據(jù)結(jié)構(gòu)特征,基于切平面與 GTP體元之間的拓?fù)潢P(guān)系,構(gòu)建GTP體元與切平面空間位置關(guān)系種類的2級分類體系;
[0013] 5)依據(jù)以上分類體系,根據(jù)輸入切平面的方程與GTP體元頂點坐標(biāo),可得出當(dāng)前 剖切類型,并由各交點所處棱邊兩端點的三維坐標(biāo),計算出切平面與GTP體元各交點P的三 維坐標(biāo)x、y、z,其計算公式為:
[0014]
【權(quán)利要求】
1. 一種廣義三棱柱空間數(shù)據(jù)模型的三維剖切方法,包括如下幾個步驟: 1) 設(shè)計廣義三棱柱空間數(shù)據(jù)模型GTP體元的通用數(shù)據(jù)結(jié)構(gòu),將具有任意形態(tài)一個GTP 體元,統(tǒng)一描述成一個六維向量(P〇, pl,p2, p3, p4, p5),其中p0、pl、p2代表GTP體元上三 角面的三個頂點,p3、p4、p5表示下三角面的三個頂點; 2) 利用方程(1)定義一個切平面, Ax+By+Cz+D = 0 (1) 其中:A、B、C分別是該平面的法向量在X,y,z軸的分量,D = A*xO+B*yO+C*zO, xO, yO, z〇表示位于該平面上的任意一點的三維坐標(biāo),由此任意一個切平面方程可由一個四維向量 (A, B,C,D)表示; 3) 判斷GTP體元位于剖切平面上的位置,如果切剖部分位于切平面上半部分,此時,將 所有位于切平面上半部分的GTP體元從地質(zhì)模型的體元集合中刪除; 4) 對于與切平面有交點的GTP體元:分析GTP體元數(shù)據(jù)結(jié)構(gòu)特征,基于切平面與GTP體 元之間的拓?fù)潢P(guān)系,構(gòu)建GTP體元與切平面空間位置關(guān)系種類的2級分類體系; 5) 依據(jù)以上分類體系,根據(jù)輸入切平面的方程與GTP體元頂點坐標(biāo),可得出當(dāng)前剖切 類型,并由各交點所處棱邊兩端點的三維坐標(biāo),計算出切平面與GTP體元各交點P的三維坐 標(biāo)x、y、z,其計算公式為: .D -10 λ-^.ν〇 + (.ν1-χ〇)^- MOl V= v() + (vl-ν〇)*° -/〇 2 ......... MOl ,,. D-/Q z = z0 + (z\ -zO)^- MOl 式中,D = A*pxO+B*pyO+OpzO, pxO, pyO, pzO表示位于該平面上的任意一點的三維坐 標(biāo),(x0, y0, z0)、(xl,yl,zl)表示棱邊兩端點的三維坐標(biāo)值,IO = A*x0+B*y0+C*z0, MOl =A(xl-χΟ)+B(yl-y0)+C (zl-zO); 6) 對經(jīng)步驟5)剖切操作完成后GTP體元剩余部分所形成的多面體進(jìn)行剖分,以維持空 間數(shù)據(jù)模型一致性;針對每種剖切類型,將形態(tài)不定的剖切后剩余多面體剖分成若干四面 體形態(tài)的GTP體元,再按照步驟3)中的分類體系再一次重復(fù)步驟4)和5)進(jìn)行剖分操作; 7) 將多次單剖分操作進(jìn)行組合,可實現(xiàn)空間開挖操作,其具體步驟為:構(gòu)建組成復(fù)合 切剖多面體一系列面片所屬切剖平面的數(shù)組集合w ;判斷每一個平面方程與待復(fù)合剖切內(nèi) 部空間的位置關(guān)系;遍歷w中的每一個切剖平面,針對每一個平面,根據(jù)其與待剖切空間的 位置關(guān)系,分別對地質(zhì)體模型進(jìn)行兩次保留部分不同的剖切操作,第一次剖切得到的結(jié)果 作為下一個平面的剖切對象,第二次剖切得到的結(jié)果,則保存起來作為最后的開挖結(jié)果; 8) 判斷當(dāng)前GTP體元形態(tài)是否為體對象,為不影響可視化效果,將形態(tài)退化為三角面 或者三維線段的GTP體元從地質(zhì)模型的體元集合中刪除; 9) 遍歷GTP類型的三維地質(zhì)模型中的每一個GTP體元,對每個體元均按照上述步驟1) 至8)進(jìn)行處理,即可得到最終的地質(zhì)剖切結(jié)果。
2. 根據(jù)權(quán)利要求1所述的一種廣義三棱柱空間數(shù)據(jù)模型的三維剖切方法,其特征在 于,所述步驟6)的剖分原則為:必須使用切平面剖切時形成的交點P(x,y,z)以及GTP原 有頂點對來構(gòu)建多面體的剖分結(jié)果,不可額外增加任何新的輔助頂點,以屏蔽GTP體元形 態(tài)變化的影響。
【文檔編號】G06T19/00GK104318618SQ201410560115
【公開日】2015年1月28日 申請日期:2014年10月20日 優(yōu)先權(quán)日:2014年10月20日
【發(fā)明者】馬鈞霆, 陳鎖忠, 何志超 申請人:南京師范大學(xué)