欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

基于自適應(yīng)r-樹(shù)的大數(shù)據(jù)量鐵路三維設(shè)計(jì)模型渲染方法

文檔序號(hào):6506158閱讀:209來(lái)源:國(guó)知局
基于自適應(yīng)r-樹(shù)的大數(shù)據(jù)量鐵路三維設(shè)計(jì)模型渲染方法
【專(zhuān)利摘要】本發(fā)明公開(kāi)一種基于自適應(yīng)R-樹(shù)的大數(shù)據(jù)量鐵路三維設(shè)計(jì)模型渲染方法,按下列步驟進(jìn)行:在鐵路三維設(shè)計(jì)軟件中生成鐵路線(xiàn)路、站場(chǎng)、路基、橋梁和隧道等專(zhuān)業(yè)的設(shè)計(jì)方案;生成鐵路各專(zhuān)業(yè)設(shè)計(jì)方案對(duì)應(yīng)的三維模型,統(tǒng)稱(chēng)為鐵路三維設(shè)計(jì)模型;實(shí)現(xiàn)適應(yīng)設(shè)計(jì)方案頻繁調(diào)整并匹配三維設(shè)計(jì)模型空間分布形態(tài)的自適應(yīng)R-樹(shù);使用自適應(yīng)R-樹(shù)存儲(chǔ)鐵路三維設(shè)計(jì)模型;在鐵路各專(zhuān)業(yè)設(shè)計(jì)方案優(yōu)化調(diào)整過(guò)程中更新自適應(yīng)R-樹(shù);在鐵路三維設(shè)計(jì)軟件的場(chǎng)景渲染過(guò)程中使用基于自適應(yīng)R-樹(shù)和緩沖區(qū)的模型濾除方法。有益效果是:在普通顯卡條件下大幅度提高了大數(shù)據(jù)量鐵路三維設(shè)計(jì)模型的渲染速度,使得鐵路三維設(shè)計(jì)軟件能夠在廣大鐵路設(shè)計(jì)人員的普通PC中流暢運(yùn)行,擺脫了對(duì)高性能圖形工作站的依賴(lài)。
【專(zhuān)利說(shuō)明】基于自適應(yīng)R-樹(shù)的大數(shù)據(jù)量鐵路三維設(shè)計(jì)模型渲染方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及地理信息系統(tǒng)和鐵路設(shè)計(jì)【技術(shù)領(lǐng)域】,具體的說(shuō)是一種基于自適應(yīng)R-樹(shù)的大數(shù)據(jù)量鐵路三維設(shè)計(jì)模型渲染方法,該方法可用于鐵路三維設(shè)計(jì)軟件的開(kāi)發(fā)實(shí)現(xiàn)。
【背景技術(shù)】
[0002]隨著計(jì)算機(jī)軟、硬件技術(shù)的發(fā)展,鐵路三維設(shè)計(jì)技術(shù)逐漸走向成熟。鐵路系統(tǒng)比較復(fù)雜,涉及線(xiàn)路、站場(chǎng)、路基、橋梁和隧道等數(shù)十個(gè)設(shè)計(jì)專(zhuān)業(yè),并且經(jīng)過(guò)的省、市地域廣,空間跨度大,這決定了鐵路三維設(shè)計(jì)模型的數(shù)據(jù)量相當(dāng)巨大。采用一般的渲染方法直接繪制大數(shù)據(jù)量的鐵路三維設(shè)計(jì)模型,對(duì)計(jì)算機(jī)顯卡的繪圖性能要求非常高,需要高性能圖形工作站才能夠正常顯示出圖形效果。如果不解決普通顯卡條件下的大數(shù)據(jù)量鐵路三維設(shè)計(jì)模型渲染速度慢的問(wèn)題,鐵路三維設(shè)計(jì)軟件也就無(wú)法在廣大鐵路設(shè)計(jì)人員的普通PC機(jī)中推廣使用。
[0003]普通顯卡條件下的大數(shù)據(jù)量三維模型渲染的核心思想是:在場(chǎng)景渲染階段使用基于空間索引的模型濾除方法,對(duì)無(wú)需繪制的三維模型進(jìn)行快速濾除,減少顯卡的繪圖數(shù)據(jù)量,從而提高渲染速度。其中,濾除的速度主要由空間索引的檢索效率決定。不同的空間索引適合不同分布形態(tài)的三維模型,合適的空間索引匹配合適的空間分布形態(tài),才能產(chǎn)生最高的檢索效率,才能最大程度的提高渲染速度。
[0004]傳統(tǒng)的大數(shù)據(jù)量三維模型渲染方法主要使用格網(wǎng)、BSP樹(shù)、四叉樹(shù)和八叉樹(shù)等規(guī)則型空間索引技術(shù),適合于在空間各個(gè)方向分布較為均勻的三維模型。鐵路空間跨度大,并且沿線(xiàn)設(shè)施集中于線(xiàn)路附近,這決定了鐵路三維設(shè)計(jì)模型的空間分布形態(tài)為大范圍、狹長(zhǎng)條帶狀、不規(guī)則空間分布,顯然與傳統(tǒng)方法的空間索引不匹配。相對(duì)而言,R-樹(shù)更適合鐵路三維設(shè)計(jì)模型的空間分布形態(tài),但是各專(zhuān)業(yè)設(shè)計(jì)方案不斷進(jìn)行優(yōu)化調(diào)整的過(guò)程中,可能會(huì)頻繁觸發(fā)比較費(fèi)時(shí)的R-樹(shù)節(jié)點(diǎn)分裂或結(jié)構(gòu)緊湊操作,從而影響鐵路設(shè)計(jì)的工作效率,還可能使R-樹(shù)的深度和廣度比例失衡,導(dǎo)致R-樹(shù)的檢索效率降低。

【發(fā)明內(nèi)容】

[0005]本發(fā)明的目的在于克服上述已有技術(shù)的缺點(diǎn),提出一種普通顯卡條件下的大數(shù)據(jù)量鐵路三維設(shè)計(jì)模型快速渲染方法,使鐵路三維設(shè)計(jì)軟件能夠在廣大鐵路設(shè)計(jì)人員的普通PC機(jī)中較為流暢的運(yùn)行,擺脫對(duì)高性能圖形工作站的依賴(lài)。
[0006]本發(fā)明的技術(shù)方案是:一種基于自適應(yīng)R-樹(shù)的鐵路三維設(shè)計(jì)模型渲染方法,具體包括以下步驟:
[0007](I)在鐵路三維設(shè)計(jì)軟件中生成鐵路線(xiàn)路、站場(chǎng)、路基、橋梁和隧道專(zhuān)業(yè)的設(shè)計(jì)方案;
[0008](2)生成上述鐵路各專(zhuān)業(yè)設(shè)計(jì)方案對(duì)應(yīng)的三維模型,統(tǒng)稱(chēng)為鐵路三維設(shè)計(jì)模型;
[0009]步驟(I)和(2)已有成熟技術(shù)。[0010](3)實(shí)現(xiàn)適應(yīng)設(shè)計(jì)方案頻繁調(diào)整并匹配三維設(shè)計(jì)模型空間分布形態(tài)的自適應(yīng)R-樹(shù):
[0011]3-1)自適應(yīng)R-樹(shù)數(shù)據(jù)結(jié)構(gòu):
[0012]3-1-a)將自適應(yīng)R-樹(shù)的數(shù)據(jù)結(jié)構(gòu)派生于Guttman R-樹(shù)數(shù)據(jù)結(jié)構(gòu),繼承GuttmanR-樹(shù)的所有特征;
[0013]步驟3_l_a)已有成熟技術(shù)。
[0014]3-1-b)將自適應(yīng)R-樹(shù)的葉子節(jié)點(diǎn)中存儲(chǔ)的空間對(duì)象分為有效對(duì)象和無(wú)效對(duì)象;
[0015]3-1-c)在自適應(yīng)R-樹(shù)的數(shù)據(jù)結(jié)構(gòu)內(nèi)設(shè)一個(gè)有效對(duì)象數(shù)組,用于存儲(chǔ)所有葉子節(jié)點(diǎn)中的有效對(duì)象;同時(shí)內(nèi)設(shè)一個(gè)計(jì)數(shù)變量統(tǒng)計(jì)葉子節(jié)點(diǎn)中存儲(chǔ)的無(wú)效對(duì)象的個(gè)數(shù);
[0016]3-2)自適應(yīng)R-樹(shù)的插入方法:
[0017]3-2-a)使用Guttman選擇葉子節(jié)點(diǎn)方法,在自適應(yīng)R-樹(shù)中選中待插入的有效對(duì)象應(yīng)該存入的葉子節(jié)點(diǎn);
[0018]3-2-b)在步驟3-2-a)選中的葉子節(jié)點(diǎn)中查找第一個(gè)無(wú)效對(duì)象,如果找到,則將待插入的有效對(duì)象存儲(chǔ)到第一個(gè)無(wú)效對(duì)象所占用的存儲(chǔ)位置,然后自底向上更新自適應(yīng)R-樹(shù)的各層節(jié)點(diǎn)的包圍盒,從而避免觸發(fā)費(fèi)時(shí)的自適應(yīng)R-樹(shù)的節(jié)點(diǎn)分裂操作;如果沒(méi)有找至IJ,則執(zhí)行步驟3-2-c);
[0019]3-2-c)使用與Guttman插入方法插入當(dāng)前處理的有效對(duì)象;插入成功之后,判斷自適應(yīng)R-樹(shù)的深度是否超過(guò)單個(gè)葉子節(jié)點(diǎn)的最大存儲(chǔ)空間對(duì)象個(gè)數(shù)M ;如果超過(guò),則銷(xiāo)毀自適應(yīng)R-樹(shù)的所有節(jié)點(diǎn),計(jì)算合適的M值,然后對(duì)有效對(duì)象數(shù)組中的空間對(duì)象使用Guttman插入方法重新生成各層節(jié)點(diǎn),從而優(yōu)化R-樹(shù)的深度和廣度比例;
[0020]3-2-d) M值通過(guò)枚舉逼近法求解以下方程得到:
[0021]M(m+1)〈=N,
[0022]式中:M為單個(gè)葉子節(jié)點(diǎn)的最大存儲(chǔ)空間對(duì)象個(gè)數(shù),N為有效對(duì)象數(shù)組中的元素個(gè)數(shù);
[0023]3-3)自適應(yīng)R-樹(shù)的刪除方法:
[0024]3-3-a)使用與Guttman查找葉子節(jié)點(diǎn)方法,找到當(dāng)前處理的有效對(duì)象所在的葉子節(jié)點(diǎn);
[0025]3-3-b)在步驟3-3-a)中找到的葉子節(jié)點(diǎn)中,將待刪除的有效對(duì)象所在的存儲(chǔ)位置用無(wú)效對(duì)象代替,并從有效對(duì)象數(shù)組中刪除待刪除的有效對(duì)象,從而避免觸發(fā)費(fèi)時(shí)的R-樹(shù)的結(jié)構(gòu)緊湊操作,同時(shí)無(wú)效對(duì)象計(jì)數(shù)增加I ;
[0026]3-3-c)判斷無(wú)效對(duì)象個(gè)數(shù)是否超過(guò)有效對(duì)象的個(gè)數(shù),如果超過(guò),則銷(xiāo)毀自適應(yīng)R-樹(shù)的所有節(jié)點(diǎn),計(jì)算合適的M值,然后對(duì)有效對(duì)象數(shù)組中的空間對(duì)象使用Guttman插入方法重新生成各層節(jié)點(diǎn),優(yōu)化自適應(yīng)R-樹(shù)的深度和廣度比例;
[0027]3-3-d) M值通過(guò)枚舉逼近法求解以下方程得到:
[0028]M(m+1)〈=N,
[0029]式中:M為單個(gè)葉子節(jié)點(diǎn)的最大存儲(chǔ)空間對(duì)象個(gè)數(shù),N為有效對(duì)象數(shù)組中的元素個(gè)數(shù);
[0030]( 4 )使用自適應(yīng)R-樹(shù)存儲(chǔ)鐵路三維設(shè)計(jì)模型:
[0031]4-1)將鐵路三維設(shè)計(jì)模型類(lèi)派生于步驟3-1-a)的有效對(duì)象類(lèi),從而保證自適應(yīng)R-樹(shù)的葉子節(jié)點(diǎn)能夠存儲(chǔ)鐵路三維設(shè)計(jì)模型;
[0032]步驟4-1)已有成熟技術(shù)。
[0033]4-2)使用步驟3-2)的自適應(yīng)R-樹(shù)的插入方法將鐵路線(xiàn)路、站場(chǎng)、路基、橋梁和隧道專(zhuān)業(yè)的三維設(shè)計(jì)模型插入到自適應(yīng)R-樹(shù)中;
[0034](5)在鐵路各專(zhuān)業(yè)設(shè)計(jì)方案優(yōu)化調(diào)整過(guò)程中更新自適應(yīng)R-樹(shù):
[0035]5-1)優(yōu)化調(diào)整鐵路線(xiàn)路、站場(chǎng)、路基、橋梁和隧道專(zhuān)業(yè)的某一個(gè)設(shè)計(jì)方案,形成新的設(shè)計(jì)方案;
[0036]5-2)使用步驟3-3)的自適應(yīng)R-樹(shù)的刪除方法將步驟5_1)中優(yōu)化調(diào)整的設(shè)計(jì)方案對(duì)應(yīng)的三維設(shè)計(jì)模型刪除,然后將上述三維設(shè)計(jì)模型從計(jì)算機(jī)內(nèi)存中刪除;
[0037]5-3)對(duì)步驟5-1)中新的設(shè)計(jì)方案,生成新的三維設(shè)計(jì)模型,然后使用步驟3-2)的自適應(yīng)R-樹(shù)的插入方法將上述新的三維設(shè)計(jì)模型插入到自適應(yīng)R-樹(shù)中;
[0038](6)在鐵路三維設(shè)計(jì)軟件的場(chǎng)景渲染過(guò)程中使用基于自適應(yīng)R-樹(shù)和緩沖區(qū)的模型濾除方法:
[0039]6-1)提供輸入接口,允許用戶(hù)在輸入兩個(gè)緩沖區(qū)參數(shù)閥值,分別為可視空間范圍包圍盒在X軸和Y軸方向的變化值,目的在于避免不必要的重復(fù)檢索自適應(yīng)R-樹(shù);
[0040]6-2)進(jìn)行第一次場(chǎng)景渲染時(shí),以當(dāng)前可視空間范圍的包圍盒在X和Y軸方向外擴(kuò)給定閥值后的包圍盒為輸入條件,檢索自適應(yīng)R-樹(shù),獲得樹(shù)中所有與上述外擴(kuò)后的包圍盒存在空間范圍重疊的鐵路三維設(shè)計(jì)模型,送達(dá)顯卡進(jìn)行渲染,從而不重疊的三維設(shè)計(jì)模型被濾除,減少了顯卡的繪圖數(shù)據(jù)量;
[0041]6-3)實(shí)時(shí)監(jiān)測(cè)當(dāng)前可視空間范圍是否發(fā)生變化;如果當(dāng)前可視空間范圍沒(méi)有發(fā)生變化,則不斷執(zhí)行步驟6-3);如果當(dāng)前可視空間范圍發(fā)生變化,則判斷當(dāng)前可視空間范圍的包圍盒相對(duì)上一次場(chǎng)景渲染時(shí)可視空間范圍的包圍盒的變化幅度是否超出給定的閥值,并按以下步驟處理:
[0042]6-3-a)如果X軸和Y軸兩個(gè)方向都未超出閥值,則顯卡仍然繪制將上一次場(chǎng)景渲染時(shí)的數(shù)據(jù),從而避免了不必要的重復(fù)檢索自適應(yīng)R-樹(shù);
[0043]6-3-b)如果X軸和Y軸任意一個(gè)方向超出閥值,則執(zhí)行與步驟6-2)中第一次場(chǎng)景渲染時(shí)相同的處理,然后執(zhí)行步驟6-3 )。
[0044]本發(fā)明的顯著效果是:在普通顯卡條件下大幅度提高了大數(shù)據(jù)量鐵路三維設(shè)計(jì)模型的渲染速度,在相關(guān)對(duì)比測(cè)試中發(fā)現(xiàn)提速幅度達(dá)170%?210%,使得鐵路三維設(shè)計(jì)軟件能夠在廣大鐵路設(shè)計(jì)人員的普通PC中流暢運(yùn)行,擺脫了對(duì)高性能圖形工作站的依賴(lài),促進(jìn)了鐵路三維設(shè)計(jì)軟件的推廣和使用。
【專(zhuān)利附圖】

【附圖說(shuō)明】
[0045]圖1為本發(fā)明的流程步驟圖;
[0046]圖2為本發(fā)明的自適應(yīng)R-樹(shù)的插入方法的工作流程圖;
[0047]圖3為本發(fā)明的自適應(yīng)R-樹(shù)的刪除方法的工作流程圖;
[0048]圖4為本發(fā)明基于自適應(yīng)R-樹(shù)和緩沖區(qū)的模型濾除方法的工作流程圖;
[0049]圖5為本發(fā)明的可視空間范圍包圍盒的變化緩沖區(qū)概念示意圖;
[0050]圖6 Ca)為本發(fā)明用于效果驗(yàn)證的鐵路線(xiàn)路、路基和橋梁三維設(shè)計(jì)模型;[0051]圖6 (b)為本發(fā)明用于效果驗(yàn)證的鐵路線(xiàn)路、路基和隧道三維設(shè)計(jì)模型;
[0052]圖6 (c)為本發(fā)明用于效果驗(yàn)證的鐵路線(xiàn)路、路基和站場(chǎng)三維設(shè)計(jì)模型;
[0053]圖7為使用本發(fā)明技術(shù)前后的大數(shù)據(jù)量鐵路三維設(shè)計(jì)模型渲染速度對(duì)比圖;
[0054]圖8為使用本發(fā)明技術(shù)后大數(shù)據(jù)量鐵路三維設(shè)計(jì)模型渲染速度增幅示意圖。
【具體實(shí)施方式】
[0055]如圖1所示,以C++程序設(shè)計(jì)語(yǔ)言和OpenGL繪圖環(huán)境為例,基于自適應(yīng)R-樹(shù)的大數(shù)據(jù)量鐵路三維設(shè)計(jì)模型渲染方法按照以下步驟實(shí)施:
[0056](I)在鐵路三維設(shè)計(jì)軟件中生成鐵路線(xiàn)路、站場(chǎng)、路基、橋梁和隧道等專(zhuān)業(yè)的設(shè)計(jì)方案。
[0057](2)生成鐵路各專(zhuān)業(yè)設(shè)計(jì)方案對(duì)應(yīng)的三維模型,統(tǒng)稱(chēng)為鐵路三維設(shè)計(jì)模型。
[0058]步驟(I)和(2 )已有成熟技術(shù)。
[0059](3)實(shí)現(xiàn)適應(yīng)設(shè)計(jì)方案頻繁調(diào)整并匹配三維設(shè)計(jì)模型空間分布形態(tài)的自適應(yīng)R-樹(shù):
[0060]3-1)改進(jìn)Guttman R-樹(shù)的數(shù)據(jù)結(jié)構(gòu),形成自適應(yīng)R-樹(shù)數(shù)據(jù)結(jié)構(gòu):
[0061]3-1-a)將自適應(yīng)R-樹(shù)的數(shù)據(jù)結(jié)構(gòu)派生于Guttman R-樹(shù)數(shù)據(jù)結(jié)構(gòu),繼承GuttmanR-樹(shù)的所有特征;
[0062]步驟3_l_a)已有成熟技術(shù)。
[0063]3-1-b)將自適應(yīng)R-樹(shù)的葉子節(jié)點(diǎn)中存儲(chǔ)的空間對(duì)象分為有效對(duì)象和無(wú)效對(duì)象;實(shí)現(xiàn)一個(gè)空間對(duì)象類(lèi)、一個(gè)有效對(duì)象類(lèi)和一個(gè)無(wú)效對(duì)象類(lèi),其中有效對(duì)象類(lèi)和無(wú)效對(duì)象類(lèi)都從空間對(duì)象類(lèi)派生;所有插入自適應(yīng)R-樹(shù)的空間對(duì)象都是有效對(duì)象,當(dāng)一個(gè)對(duì)象從自適應(yīng)R-樹(shù)中刪除后,在上述刪除對(duì)象所在葉子節(jié)點(diǎn)中的存儲(chǔ)位置用一個(gè)無(wú)效對(duì)象代替刪除前的對(duì)象,無(wú)效對(duì)象與刪除前的有效對(duì)象具有相同的包圍盒數(shù)據(jù),但是沒(méi)有圖形數(shù)據(jù);
[0064]3-1-c)在自適應(yīng)R-樹(shù)的數(shù)據(jù)結(jié)構(gòu)內(nèi)設(shè)一個(gè)有效對(duì)象數(shù)組,用于存儲(chǔ)所有葉子節(jié)點(diǎn)中的有效對(duì)象;同時(shí)內(nèi)設(shè)一個(gè)計(jì)數(shù)變量N1統(tǒng)計(jì)葉子節(jié)點(diǎn)中存儲(chǔ)的無(wú)效對(duì)象的個(gè)數(shù);
[0065]3-2)如圖2所示,改進(jìn)Guttman R-樹(shù)的插入方法,降低鐵路各專(zhuān)業(yè)設(shè)計(jì)方案頻繁調(diào)整時(shí)觸發(fā)R-樹(shù)節(jié)點(diǎn)分裂操作的概率,并自動(dòng)優(yōu)化R-樹(shù)的深度和廣度比例,形成自適應(yīng)R-樹(shù)的插入方法:
[0066]3-2-a)使用Guttman選擇葉子節(jié)點(diǎn)方法,在自適應(yīng)R-樹(shù)中選中待插入的空間對(duì)象O1應(yīng)該存入的葉子節(jié)點(diǎn)L1 ;
[0067]3-2-b)在葉子節(jié)點(diǎn)L1中查找第一個(gè)無(wú)效對(duì)象;如果找到,則將O1存儲(chǔ)到第一個(gè)無(wú)效對(duì)象所占用的存儲(chǔ)位置,然后自底向上更新自適應(yīng)R-樹(shù)的各層節(jié)點(diǎn)的包圍盒;如果沒(méi)有找到,則執(zhí)行下一步;
[0068]3-2-c)使用與Guttman插入方法,將O1存儲(chǔ)到L1中,然后判斷自適應(yīng)R-樹(shù)的深度h是否超過(guò)單個(gè)葉子節(jié)點(diǎn)的最大存儲(chǔ)空間對(duì)象個(gè)數(shù)M ;如果超過(guò),則銷(xiāo)毀自適應(yīng)R-樹(shù)的所有節(jié)點(diǎn),計(jì)算合適的M值,然后對(duì)自適應(yīng)R-樹(shù)中的有效對(duì)象使用Guttman插入方法重新生成各層節(jié)點(diǎn),優(yōu)化R-樹(shù)的深度和廣度比例;
[0069]3-2-d) M值通過(guò)枚舉逼近法求解以下方程得到:
[0070]M(m+1)<=N,[0071]式中:M為最大存儲(chǔ)空間對(duì)象個(gè)數(shù),N為自適應(yīng)R-樹(shù)中的所有有效空間對(duì)象個(gè)數(shù);
[0072]3-3)如圖3所示,改進(jìn)Guttman R-樹(shù)的刪除方法,降低鐵路各專(zhuān)業(yè)設(shè)計(jì)方案頻繁調(diào)整時(shí)觸發(fā)R-樹(shù)結(jié)構(gòu)緊湊操作的概率,并自動(dòng)優(yōu)化R-樹(shù)的深度和廣度比例,形成自適應(yīng)R-數(shù)的刪除方法:
[0073]3-3-a)使用Guttman查找葉子節(jié)點(diǎn)方法,找到待刪除的空間對(duì)象O2所在的葉子節(jié)
1.[0074]3-3-b)在刪除葉子節(jié)點(diǎn)L2中的空間對(duì)象O2時(shí),將O2所在的存儲(chǔ)位置用無(wú)效對(duì)象代替,無(wú)效對(duì)象個(gè)數(shù)N1增加I,并從有效對(duì)象數(shù)組中刪除O2 ;
[0075]3-3-c)判斷無(wú)效對(duì)象個(gè)數(shù)N1是否超過(guò)有效對(duì)象的個(gè)數(shù)N2 ;如果超過(guò),則銷(xiāo)毀自適應(yīng)R-樹(shù)的所有節(jié)點(diǎn),計(jì)算合適的M值,然后對(duì)自適應(yīng)R-樹(shù)中的有效對(duì)象使用Guttman插入方法重新生成各層節(jié)點(diǎn),優(yōu)化R-樹(shù)的深度和廣度比例;
[0076]3-3-d) M值通過(guò)枚舉逼近法求解以下方程得到:
[0077]M(m+1)<=N,
[0078]式中:M為最大存儲(chǔ)空間對(duì)象個(gè)數(shù),N為自適應(yīng)R-樹(shù)中的所有有效空間對(duì)象個(gè)數(shù);
[0079]( 4 )使用自適應(yīng)R-樹(shù)存儲(chǔ)鐵路三維設(shè)計(jì)模型:
[0080]4-1)將鐵路三維設(shè)計(jì)模型類(lèi)派生于步驟3-1-a)的有效對(duì)象類(lèi),從而保證自適應(yīng)R-樹(shù)的葉子節(jié)點(diǎn)能夠存儲(chǔ)鐵路三維設(shè)計(jì)模型;
[0081]步驟4-1)已有成熟技術(shù)。
[0082]4-2)使用步驟3-2)的自適應(yīng)R-樹(shù)的插入方法將鐵路線(xiàn)路、站場(chǎng)、路基、橋梁和隧道專(zhuān)業(yè)的三維設(shè)計(jì)模型插入到自適應(yīng)R-樹(shù)中;
[0083](5)在鐵路各專(zhuān)業(yè)設(shè)計(jì)方案優(yōu)化調(diào)整過(guò)程中更新自適應(yīng)R-樹(shù):
[0084]5-1)優(yōu)化調(diào)整鐵路線(xiàn)路、站場(chǎng)、路基、橋梁和隧道專(zhuān)業(yè)的某一個(gè)設(shè)計(jì)方案,形成新的設(shè)計(jì)方案;
[0085]5-2)使用步驟3-3)的自適應(yīng)R-樹(shù)的刪除方法將步驟5_1)中優(yōu)化調(diào)整的設(shè)計(jì)方案對(duì)應(yīng)的三維設(shè)計(jì)模型刪除,然后將上述三維設(shè)計(jì)模型從計(jì)算機(jī)內(nèi)存中刪除;
[0086]5-3)對(duì)步驟5-1)中新的設(shè)計(jì)方案,生成新的三維設(shè)計(jì)模型,然后使用步驟3-2)的自適應(yīng)R-樹(shù)的插入方法將上述新的三維設(shè)計(jì)模型插入到自適應(yīng)R-樹(shù)中;
[0087](6)如圖4所示,在鐵路三維設(shè)計(jì)軟件的場(chǎng)景渲染過(guò)程中使用基于自適應(yīng)R-樹(shù)和緩沖區(qū)的模型濾除方法:
[0088]6-1)提供輸入接口,允許用戶(hù)在輸入兩個(gè)緩沖區(qū)參數(shù)閥值dX和dY,如圖5所示,分別為可視空間范圍包圍盒在X軸和Y軸方向的變化值,目的在于避免不必要的重復(fù)檢索自適應(yīng)R-樹(shù);在OpenGL繪圖環(huán)境中,可視空間范圍是OpenGL中的視景體范圍;
[0089]6-2)場(chǎng)景渲染是計(jì)算機(jī)顯卡不斷重繪鐵路三維設(shè)計(jì)模型的過(guò)程;進(jìn)行第一次場(chǎng)景渲染時(shí),以當(dāng)前可視空間范圍的包圍盒E1在X和Y軸方向外擴(kuò)給定閥值后的包圍盒E2為輸入條件,檢索自適應(yīng)R-樹(shù),獲得樹(shù)中所有與E2存在空間范圍重疊的鐵路三維設(shè)計(jì)模型,送達(dá)顯卡進(jìn)行渲染,從而不重疊的三維設(shè)計(jì)模型被濾除,減少了顯卡的繪圖數(shù)據(jù)量;
[0090]6-3)實(shí)時(shí)監(jiān)測(cè)當(dāng)前可視空間范圍是否發(fā)生變化;如果當(dāng)前可視空間范圍沒(méi)有發(fā)生變化,則不斷執(zhí)行步驟6-3);如果當(dāng)前可視空間范圍發(fā)生變化,則判斷當(dāng)前可視空間范圍的包圍盒E1相對(duì)上一次場(chǎng)景渲染時(shí)可視空間范圍的包圍盒Etl的變化幅度是否超出給定的閥值dX和dY,并按以下步驟處理:
[0091]6-3-a)如果X軸和Y軸兩個(gè)方向都未超出閥值,則顯卡仍然繪制將上一次場(chǎng)景渲染時(shí)的數(shù)據(jù),從而避免了不必要的重復(fù)檢索自適應(yīng)R-樹(shù);
[0092]6-3-b)如果X軸和Y軸任意一個(gè)方向超出閥值,則執(zhí)行與步驟6-2)中第一次場(chǎng)景渲染時(shí)相同的處理,然后執(zhí)行步驟6-3);
[0093]本發(fā)明基于自適應(yīng)R-樹(shù)的大數(shù)據(jù)量鐵路三維設(shè)計(jì)模型渲染方法的效果通過(guò)以下實(shí)驗(yàn)數(shù)據(jù)體現(xiàn):
[0094]1.實(shí)驗(yàn)條件
[0095]實(shí)驗(yàn)采用的PC機(jī)CPU型號(hào)為Intel Core i5CPU650i3.2GHZ,內(nèi)存為DDR3類(lèi)型
3.5GB容量,顯卡型號(hào)為NVIDIA GeForce405。實(shí)驗(yàn)采用一個(gè)自主研發(fā)的鐵路三維設(shè)計(jì)軟件,數(shù)據(jù)為大飯鋪至馬柵鐵路可行性研究階段的鐵路三維設(shè)計(jì)模型,包括線(xiàn)路、站場(chǎng)、路基、橋梁和隧道等專(zhuān)業(yè)三維設(shè)計(jì)模型共計(jì)約7000個(gè),三維場(chǎng)景的局部渲染效果如圖6 (a)、圖6(b)和圖6 (c)所示。在鐵路三維設(shè)計(jì)軟件中,預(yù)先設(shè)定自適應(yīng)R-樹(shù)的葉子節(jié)點(diǎn)的最大存儲(chǔ)空間對(duì)象個(gè)數(shù)M值為6,經(jīng)過(guò)自適應(yīng)R-樹(shù)插入操作,最終建立的自適應(yīng)R-樹(shù)深度為5,葉子節(jié)點(diǎn)的最大存儲(chǔ)空間對(duì)象數(shù)M值仍然為6,R-樹(shù)的深度和廣度比例比較平衡。
[0096]2.試驗(yàn)結(jié)果
[0097]幀率是反映渲染速度的一個(gè)重要指標(biāo),含義為場(chǎng)景不斷刷新時(shí),顯卡每秒鐘所繪制場(chǎng)景數(shù)中鐵路三維設(shè)計(jì)模型的次數(shù)。幀率的值越大,代表渲染速度越快。在同樣顯卡配置條件下,渲染速度越快,則表明鐵路三維設(shè)計(jì)軟件對(duì)硬件配置要求越低。幀率可以采用多次繪制取平均的方法進(jìn)行計(jì)算,計(jì)算公式如下:
[0098]
【權(quán)利要求】
1.一種基于自適應(yīng)R-樹(shù)的大數(shù)據(jù)量鐵路三維設(shè)計(jì)模型渲染方法,該方法在鐵路三維設(shè)計(jì)軟件的實(shí)現(xiàn)過(guò)程中使用,運(yùn)行于配備普通顯卡的PC機(jī)的內(nèi)存之中,包括以下步驟: (1)在所述鐵路三維設(shè)計(jì)軟件中生成鐵路線(xiàn)路、站場(chǎng)、路基、橋梁和隧道專(zhuān)業(yè)的設(shè)計(jì)方案; (2)生成上述鐵路各專(zhuān)業(yè)設(shè)計(jì)方案對(duì)應(yīng)的三維模型,統(tǒng)稱(chēng)為鐵路三維設(shè)計(jì)模型; (3)實(shí)現(xiàn)適應(yīng)設(shè)計(jì)方案頻繁調(diào)整并匹配三維設(shè)計(jì)模型空間分布形態(tài)的自適應(yīng)R-樹(shù): 3-1)自適應(yīng)R-樹(shù)數(shù)據(jù)結(jié)構(gòu): 3-1-a)將自適應(yīng)R-樹(shù)的數(shù)據(jù)結(jié)構(gòu)派生于Guttman R-樹(shù)數(shù)據(jù)結(jié)構(gòu),繼承Guttman R-樹(shù)的所有特征; 3-1-b)將自適應(yīng)R-樹(shù)的葉子節(jié)點(diǎn)中存儲(chǔ)的空間對(duì)象分為有效對(duì)象和無(wú)效對(duì)象;3-1-c)在自適應(yīng)R-樹(shù)的數(shù)據(jù)結(jié)構(gòu)內(nèi)設(shè)一個(gè)有效對(duì)象數(shù)組,用于存儲(chǔ)所有葉子節(jié)點(diǎn)中的有效對(duì)象;同時(shí)內(nèi)設(shè)一個(gè)計(jì)數(shù)變量統(tǒng)計(jì)葉子節(jié)點(diǎn)中存儲(chǔ)的無(wú)效對(duì)象的個(gè)數(shù); 3-2)自適應(yīng)R-樹(shù)的插入方法: 3-2-a)使用Guttman選擇葉子節(jié)點(diǎn)方法,在自適應(yīng)R-樹(shù)中選中待插入的有效對(duì)象應(yīng)該存入的葉子節(jié)點(diǎn); 3-2-b)在步驟3-2-a)選中的葉子節(jié)點(diǎn)中查找第一個(gè)無(wú)效對(duì)象,如果找到,則將待插入的有效對(duì)象存儲(chǔ)到第一個(gè)無(wú)效對(duì)象所占用的存儲(chǔ)位置,然后自底向上更新自適應(yīng)R-樹(shù)的各層節(jié)點(diǎn)的包圍盒,從而避免觸發(fā)費(fèi)時(shí)的自適應(yīng)R-樹(shù)的節(jié)點(diǎn)分裂操作;如果沒(méi)有找到,則執(zhí)行步驟3_2_c);· 3-2-c)使用與Guttman插入方法插入當(dāng)前處理的有效對(duì)象;插入成功之后,判斷自適應(yīng)R-樹(shù)的深度是否超過(guò)單個(gè)葉子節(jié)點(diǎn)的最大存儲(chǔ)空間對(duì)象個(gè)數(shù)M ;如果超過(guò),則銷(xiāo)毀自適應(yīng)R-樹(shù)的所有節(jié)點(diǎn),計(jì)算合適的M值,然后對(duì)有效對(duì)象數(shù)組中的空間對(duì)象使用Guttman插入方法重新生成各層節(jié)點(diǎn),從而優(yōu)化R-樹(shù)的深度和廣度比例; 3-2-d) M值通過(guò)枚舉逼近法求解以下方程得到:
M(m+1)〈=N, 式中:M為單個(gè)葉子節(jié)點(diǎn)的最大存儲(chǔ)空間對(duì)象個(gè)數(shù),N為有效對(duì)象數(shù)組中的元素個(gè)數(shù); 3-3)自適應(yīng)R-樹(shù)的刪除方法: 3-3-a)使用與Guttman查找葉子節(jié)點(diǎn)方法,找到當(dāng)前處理的有效對(duì)象所在的葉子節(jié)占.3-3-b)在步驟3-3-a)中找到的葉子節(jié)點(diǎn)中,將待刪除的有效對(duì)象所在的存儲(chǔ)位置用無(wú)效對(duì)象代替,并從有效對(duì)象數(shù)組中刪除待刪除的有效對(duì)象,從而避免觸發(fā)費(fèi)時(shí)的R-樹(shù)的結(jié)構(gòu)緊湊操作,同時(shí)無(wú)效對(duì)象計(jì)數(shù)增加I ; 3-3-c)判斷無(wú)效對(duì)象個(gè)數(shù)是否超過(guò)有效對(duì)象的個(gè)數(shù),如果超過(guò),則銷(xiāo)毀自適應(yīng)R-樹(shù)的所有節(jié)點(diǎn),計(jì)算合適的M值,然后對(duì)有效對(duì)象數(shù)組中的空間對(duì)象使用Guttman插入方法重新生成各層節(jié)點(diǎn),優(yōu)化自適應(yīng)R-樹(shù)的深度和廣度比例; 3-3-d) M值通過(guò)枚舉逼近法求解以下方程得到:
M(m+1)〈=N, 式中:M為單個(gè)葉子節(jié)點(diǎn)的最大存儲(chǔ)空間對(duì)象個(gè)數(shù),N為有效對(duì)象數(shù)組中的元素個(gè)數(shù); (4)使用自適應(yīng)R-樹(shù)存儲(chǔ)鐵路三維設(shè)計(jì)模型:4-1)將鐵路三維設(shè)計(jì)模型類(lèi)派生于步驟3-1-a)的有效對(duì)象類(lèi),從而保證自適應(yīng)R-樹(shù)的葉子節(jié)點(diǎn)能夠存儲(chǔ)鐵路三維設(shè)計(jì)模型; 4-2)使用步驟3-2)的自適應(yīng)R-樹(shù)的插入方法將鐵路線(xiàn)路、站場(chǎng)、路基、橋梁和隧道專(zhuān)業(yè)的三維設(shè)計(jì)模型插入到自適應(yīng)R-樹(shù)中; (5)在鐵路各專(zhuān)業(yè)設(shè)計(jì)方案優(yōu)化調(diào)整過(guò)程中更新自適應(yīng)R-樹(shù): 5-1)優(yōu)化調(diào)整鐵路線(xiàn)路、站場(chǎng)、路基、橋梁和隧道專(zhuān)業(yè)的某一個(gè)設(shè)計(jì)方案,形成新的設(shè)計(jì)方案; 5-2)使用步驟3-3)的自適應(yīng)R-樹(shù)的刪除方法將步驟5-1)中優(yōu)化調(diào)整的設(shè)計(jì)方案對(duì)應(yīng)的三維設(shè)計(jì)模型刪除,然后將上述三維設(shè)計(jì)模型從計(jì)算機(jī)內(nèi)存中刪除; 5-3)對(duì)步驟5-1)中新的設(shè)計(jì)方案,生成新的三維設(shè)計(jì)模型,然后使用步驟3-2)的自適應(yīng)R-樹(shù)的插入方法將上述新的三維設(shè)計(jì)模型插入到自適應(yīng)R-樹(shù)中; (6)在鐵路三維設(shè)計(jì)軟件的場(chǎng)景渲染過(guò)程中使用基于自適應(yīng)R-樹(shù)和緩沖區(qū)的模型濾除方法: 6-1)提供輸入接口,允許用戶(hù)在輸入兩個(gè)緩沖區(qū)參數(shù)閥值,分別為可視空間范圍包圍盒在X軸和Y軸方向的變化值,目的在于避免不必要的重復(fù)檢索自適應(yīng)R-樹(shù); 6-2)進(jìn)行第一次場(chǎng)景渲染時(shí),以當(dāng)前可視空間范圍的包圍盒在X和Y軸方向外擴(kuò)給定閥值后的包圍盒為輸入條件,檢索自適應(yīng)R-樹(shù),獲得樹(shù)中所有與上述外擴(kuò)后的包圍盒存在空間范圍重疊的鐵路三維設(shè)計(jì)模型,送達(dá)顯卡進(jìn)行渲染,從而不重疊的三維設(shè)計(jì)模型被濾除,減少了顯卡的繪圖數(shù)據(jù)量; 6-3)實(shí)時(shí)監(jiān)測(cè)當(dāng)前可視空間范圍`是否發(fā)生變化;如果當(dāng)前可視空間范圍沒(méi)有發(fā)生變化,則不斷執(zhí)行步驟6-3);如果當(dāng)前可視空間范圍發(fā)生變化,則判斷當(dāng)前可視空間范圍的包圍盒相對(duì)上一次場(chǎng)景渲染時(shí)可視空間范圍的包圍盒的變化幅度是否超出給定的閥值,并按以下步驟處理: 6-3-a)如果X軸和Y軸兩個(gè)方向都未超出閥值,則顯卡仍然繪制將上一次場(chǎng)景渲染時(shí)的數(shù)據(jù),從而避免了不必要的重復(fù)檢索自適應(yīng)R-樹(shù); 6-3-b)如果X軸和Y軸任意一個(gè)方向超出閥值,則執(zhí)行與步驟6-2)中第一次場(chǎng)景渲染時(shí)相同的處理,然后執(zhí)行步驟6-3 )。
2.根據(jù)權(quán)利I要求所述的基于自適應(yīng)R-樹(shù)的大數(shù)據(jù)量鐵路三維設(shè)計(jì)模型渲染方法,其特征是:步驟(3)所述自適應(yīng)R-樹(shù)的插入方法是一種降低鐵路各專(zhuān)業(yè)設(shè)計(jì)方案頻繁調(diào)整時(shí)觸發(fā)自適應(yīng)R-樹(shù)節(jié)點(diǎn)分裂操作的概率,并自動(dòng)優(yōu)化R-樹(shù)的深度和廣度比例的方法。
3.根據(jù)權(quán)利I要求所述的基于自適應(yīng)R-樹(shù)的大數(shù)據(jù)量鐵路三維設(shè)計(jì)模型渲染方法,其特征是:步驟(3)所述自適應(yīng)R-樹(shù)的刪除方法是一種降低鐵路各專(zhuān)業(yè)設(shè)計(jì)方案頻繁調(diào)整時(shí)觸發(fā)自適應(yīng)R-樹(shù)結(jié)構(gòu)緊湊操作的概率,并自動(dòng)優(yōu)化R-樹(shù)的深度和廣度比例的方法。
4.根據(jù)權(quán)利I要求所述的基于自適應(yīng)R-樹(shù)的大數(shù)據(jù)量鐵路三維設(shè)計(jì)模型渲染方法,其特征是:步驟(6)所述的一種基于自適應(yīng)R-樹(shù)和緩沖區(qū)的模型濾除方法,是一種在鐵路三維設(shè)計(jì)軟件的場(chǎng)景渲染過(guò)程中,使用自適應(yīng)R-樹(shù)快速濾除不可視的鐵路三維設(shè)計(jì)模型,提升渲染速度的方法。
【文檔編號(hào)】G06T15/00GK103714192SQ201310305534
【公開(kāi)日】2014年4月9日 申請(qǐng)日期:2013年7月18日 優(yōu)先權(quán)日:2013年7月18日
【發(fā)明者】楊緖坤, 劉義勤, 王召祜 申請(qǐng)人:鐵道第三勘察設(shè)計(jì)院集團(tuán)有限公司
網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
永昌县| 台中市| 定州市| 峨眉山市| 上蔡县| 宁津县| 施甸县| 光山县| 合山市| 柘城县| 常德市| 新营市| 合川市| 蒙山县| 阿鲁科尔沁旗| 崇明县| 苍南县| 班玛县| 韩城市| 扎赉特旗| 咸阳市| 遂昌县| 行唐县| 深圳市| 阳新县| 郯城县| 贵阳市| 康乐县| 吉隆县| 湘阴县| 寿宁县| 达拉特旗| 综艺| 辉南县| 师宗县| 隆德县| 浠水县| 浦县| 三门峡市| 章丘市| 仙游县|