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

一種大規(guī)模數(shù)據(jù)的快速渲染方法與流程

文檔序號:12604431閱讀:440來源:國知局
一種大規(guī)模數(shù)據(jù)的快速渲染方法與流程

本發(fā)明涉及地質(zhì)勘探技術(shù)領(lǐng)域,具體地說,涉及一種大規(guī)模數(shù)據(jù)的快速渲染方法。



背景技術(shù):

地質(zhì)數(shù)據(jù)體的三維可視化是目前地質(zhì)建模領(lǐng)域的重要部分,三維數(shù)據(jù)體的快速顯示也是評價(jià)相關(guān)軟件易用性的關(guān)鍵點(diǎn)。而三維可視化的關(guān)鍵點(diǎn)集中在數(shù)據(jù)的預(yù)處理與可視化渲染方法,良好的數(shù)據(jù)調(diào)度和高效的圖形渲染是大規(guī)模油膜數(shù)據(jù)渲染速度和精度的根本保證。

地質(zhì)建模的數(shù)據(jù)體中,幾何結(jié)構(gòu)數(shù)據(jù)體積最為龐大,占據(jù)整個模型三維數(shù)據(jù)體數(shù)據(jù)的三分之二以上,對于千萬網(wǎng)格,其占用空間約為2G(二進(jìn)制存儲)。如果是美國標(biāo)準(zhǔn)信息交換代碼(American Standard Code for Information Interchange,簡稱ASCII),占用空間則約為3.2G。此數(shù)據(jù)量幾乎達(dá)到了當(dāng)前通行的32位系統(tǒng)的極限,因此,如何快速組織調(diào)度并高速渲染這類大規(guī)模數(shù)據(jù)是一個非常重要的問題。



技術(shù)實(shí)現(xiàn)要素:

本發(fā)明的目的在于提供一種大規(guī)模數(shù)據(jù)的快速渲染方法,以解決如何快速組織調(diào)度并高速渲染大規(guī)模數(shù)據(jù)的技術(shù)問題。

本發(fā)明提供了一種大規(guī)模數(shù)據(jù)的快速渲染方法,該方法包括:

獲取用戶的渲染要求,所述渲染要求包括所述大規(guī)模數(shù)據(jù)中所需渲染的部分;

根據(jù)所述大規(guī)模數(shù)據(jù)中所需渲染的部分,獲取預(yù)存儲的對應(yīng)所述渲染的部分的表面的多個六面體,六面體為根據(jù)所述大規(guī)模數(shù)據(jù)渲染的整體結(jié)構(gòu)的部分;

基于所獲取的多個六面體,根據(jù)各六面體的位置、各面的顏色值,組合所獲取的多個六面體,形成所述渲染要求對應(yīng)的所需渲染的部分。

其中,在所述獲取用戶的渲染要求之前,還包括:

獲取所述大規(guī)模數(shù)據(jù)進(jìn)行首次渲染;

獲取所述大規(guī)模數(shù)據(jù)所渲染的整體結(jié)構(gòu),將所述整體結(jié)構(gòu)劃分為多個六面體;

獲取并存儲各六面體的端點(diǎn)坐標(biāo)值和各面的顏色值。

其中,獲取并存儲各六面體的端點(diǎn)坐標(biāo)值和各面的顏色值包括:

獲取部分六面體作為基礎(chǔ)塊,非基礎(chǔ)塊緊挨基礎(chǔ)塊;

存儲各基礎(chǔ)塊的端點(diǎn)坐標(biāo)值,記錄非基礎(chǔ)塊與基礎(chǔ)塊的相對位置;

獲取并存儲各基礎(chǔ)塊的各面的顏色值。

其中,基礎(chǔ)塊的各邊長相等。

其中,基于所獲取的多個六面體,根據(jù)各六面體的位置、各面的顏色值,組合各六面體形成所述渲染要求對應(yīng)的所需渲染的部分包括:

根據(jù)所獲取的多個六面體中的基礎(chǔ)塊的端點(diǎn)坐標(biāo)值、非基礎(chǔ)塊與基礎(chǔ)塊的相對位置,確定基礎(chǔ)塊以及與其緊挨的非基礎(chǔ)塊的位置;

根據(jù)所確定的基礎(chǔ)塊以及與其緊挨的非基礎(chǔ)塊的位置,組合各六面體形成所需渲染的部分;

根據(jù)各基礎(chǔ)塊的各面的顏色值,渲染所需渲染的部分的表面。

其中,各面的顏色值包括各面的紅色值、藍(lán)色值和綠色值。

其中,各面的顏色值包括各面的灰度值。

本發(fā)明帶來了以下有益效果:本發(fā)明實(shí)施例提供了一種大規(guī)模數(shù)據(jù)的快速渲染方法,該方法預(yù)先將大規(guī)模數(shù)據(jù)的整體結(jié)構(gòu)細(xì)化、分解為多個六面體,記錄并存儲各六面體的位置和各面的顏色值,當(dāng)用戶需要渲染時,調(diào)用六面體、根據(jù)各六面體的位置進(jìn)行組合,得到快速且準(zhǔn)確的渲染效果。

本發(fā)明的其它特征和優(yōu)點(diǎn)將在隨后的說明書中闡述,并且,部分地從說明書中變得顯而易見,或者通過實(shí)施本發(fā)明而了解。本發(fā)明的目的和其他優(yōu)點(diǎn)可通過在說明書、權(quán)利要求書以及附圖中所特別指出的結(jié)構(gòu)來實(shí)現(xiàn)和獲得。

附圖說明

為了更清楚地說明本發(fā)明實(shí)施例中的技術(shù)方案,下面將對實(shí)施例描述中所需要的附圖做簡單的介紹:

圖1是本發(fā)明實(shí)施例中的大規(guī)模數(shù)據(jù)的預(yù)處理方法的流程圖一;

圖2是本發(fā)明實(shí)施例中的大規(guī)模數(shù)據(jù)的預(yù)處理方法的流程圖二;

圖3是本發(fā)明實(shí)施例中的大規(guī)模數(shù)據(jù)的快速渲染方法的流程圖。

具體實(shí)施方式

以下將結(jié)合附圖及實(shí)施例來詳細(xì)說明本發(fā)明的實(shí)施方式,借此對本發(fā)明如何應(yīng)用技術(shù)手段來解決技術(shù)問題,并達(dá)成技術(shù)效果的實(shí)現(xiàn)過程能充分理解并據(jù)以實(shí)施。需要說明的是,只要不構(gòu)成沖突,本發(fā)明中的各個實(shí)施例以及各實(shí)施例中的各個特征可以相互結(jié)合,所形成的技術(shù)方案均在本發(fā)明的保護(hù)范圍之內(nèi)。

本發(fā)明實(shí)施例提供了一種大規(guī)模數(shù)據(jù)的快速渲染方法,該方法可提高大規(guī)模數(shù)據(jù)的渲染速度,減少渲染時的系統(tǒng)資源占用率。

在執(zhí)行該快速渲染方法之前,需要根據(jù)大規(guī)模數(shù)據(jù)進(jìn)行精密渲染,之后對精密渲染得到的整體結(jié)構(gòu)進(jìn)行微分、細(xì)化,之后可以利用微分、細(xì)化得到的各個部分來渲染大規(guī)模數(shù)據(jù)。如圖1所示,在執(zhí)行該快速渲染方法之前需要執(zhí)行如下步驟:

步驟S101、獲取大規(guī)模數(shù)據(jù)進(jìn)行首次渲染。

合理高效的數(shù)據(jù)保存和調(diào)度方式是提高處理效率的關(guān)鍵,龐大的大規(guī)模數(shù)據(jù)存在存儲裝置(例如磁盤)中,處理大規(guī)模數(shù)據(jù)將會占用處理裝置(例如計(jì)算機(jī))大量的存儲空間以及渲染帶寬。首次渲染時,處理裝置會根據(jù)工程人員實(shí)際測得的大規(guī)模數(shù)據(jù)逐個進(jìn)行描點(diǎn)、渲染,此時處理裝置需要調(diào)用、訪問該龐大的大規(guī)模數(shù)據(jù),可能需要持續(xù)較長的渲染時間。

步驟S102、獲取大規(guī)模數(shù)據(jù)所渲染的整體結(jié)構(gòu),將整體結(jié)構(gòu)劃分為多個六面體。

首次渲染大規(guī)模數(shù)據(jù)之后,可得到這一大規(guī)模數(shù)據(jù)的整體結(jié)構(gòu)。一般的,所渲染得到的整體結(jié)構(gòu)近似于一立方體的形狀。本發(fā)明實(shí)施例中,可對該整體結(jié)構(gòu)進(jìn)行微分、細(xì)化,把一個大的整體結(jié)構(gòu)細(xì)化為多個比較小的六面體。對整體結(jié)構(gòu)進(jìn)行細(xì)化的程度,決定了本發(fā)明實(shí)施例中,對大規(guī)模數(shù)據(jù)進(jìn)行快速渲染時的渲染精度。

因此,根據(jù)存儲各六面體所占用的存儲空間,可對整體結(jié)構(gòu)進(jìn)行盡可能的細(xì)化,以提高快速渲染的精細(xì)程度。

具體的,可基于渲染大規(guī)模數(shù)據(jù)時,采用的網(wǎng)格大小來劃分各六面體,這樣的處理可以保證基于六面體來渲染大規(guī)模數(shù)據(jù)時,得到的所需渲染的部分的精細(xì)程度基本符合用戶的要求。

步驟S103、獲取并存儲各六面體的端點(diǎn)坐標(biāo)值和各面的顏色值。

由于本發(fā)明實(shí)施例中需要基于細(xì)化的六面體,來對大規(guī)模數(shù)據(jù)進(jìn)行快速渲染,因此,需要記錄下并存儲各六面體的端點(diǎn)坐標(biāo)值和各面的顏色值,以便在快速渲染時,就好像拼拼圖一樣,直接根據(jù)各六面體的端點(diǎn)坐標(biāo)值確定各六面體的位置,將每一六面體放置在其應(yīng)當(dāng)對應(yīng)的位置上并對六面體進(jìn)行渲染,實(shí)現(xiàn)對大規(guī)模數(shù)據(jù)的快速渲染。

其中,若大規(guī)模數(shù)據(jù)的渲染得到的整體結(jié)構(gòu)是彩色的,每一六面體的顏色也是彩色的。因而存儲六面體各面的顏色值時,需要存儲各面的紅色值、藍(lán)色值和綠色值,在重新根據(jù)各六面體的位置和顏色值快速渲染大規(guī)模數(shù)據(jù)時,處理設(shè)備會根據(jù)各面的紅色值、藍(lán)色值和綠色值,渲染六面體各面的顏色。

另外,若大規(guī)模數(shù)據(jù)的渲染得到的整體結(jié)構(gòu)是灰色的(大多數(shù)情況下),存儲各面的顏色值時,則需存儲各面的灰度值。一般來說,若存儲的顏色值是灰度值,六面體的顏色值所占的存儲空間較小。

將大規(guī)模數(shù)據(jù)劃分為多個六面體進(jìn)行存儲,每一六面體對應(yīng)大規(guī)模數(shù)據(jù)渲染得到的整體結(jié)構(gòu)的一部分,且每一六面體僅需存儲端點(diǎn)坐標(biāo)值和各面的顏色值,可大大減小渲染時需調(diào)用、訪問的數(shù)據(jù)的存儲空間,提高渲染、調(diào)取大規(guī)模數(shù)據(jù)的速度。

其中,為了進(jìn)一步減小存儲各六面體所需的存儲空間,對于各六面體而言,可以將其中一些比較規(guī)整的六面體作為基礎(chǔ)塊,以基礎(chǔ)塊的位置為參考系,記錄與該基礎(chǔ)塊距離較近的非基礎(chǔ)塊與該基礎(chǔ)塊的相對位置,根據(jù)基礎(chǔ)塊的位置推算得到非基礎(chǔ)塊的位置,以此減少存儲各六面體的位置所需的存儲空間。

具體的,如圖2所示,步驟S103包括:

子步驟S1031、獲取部分六面體作為基礎(chǔ)塊,非基礎(chǔ)塊緊挨基礎(chǔ)塊。

一般的,每一大規(guī)模數(shù)據(jù)的整體結(jié)構(gòu)都會被細(xì)化為成千上萬個六面體,其中,部分六面體的各邊長基本相等、近似為立方體,其他部分六面體的形狀可能會比較不規(guī)則,且由于近似為立方體的六面體的個數(shù)較多,基本每一個不規(guī)則的六面體的旁邊都有一個近似為立方體的六面體。因此,本發(fā)明實(shí)施例中,可以將近似 為立方體的六面體作為基礎(chǔ)塊,其余六面體作為非基礎(chǔ)塊,非基礎(chǔ)塊緊挨基礎(chǔ)塊。很容易基于基礎(chǔ)塊的位置得到非基礎(chǔ)塊的位置。

子步驟S1032、存儲各基礎(chǔ)塊的端點(diǎn)坐標(biāo)值,記錄非基礎(chǔ)塊與基礎(chǔ)塊的相對位置。

在確定基礎(chǔ)塊后,記錄并存儲各基礎(chǔ)塊的端點(diǎn)坐標(biāo)值,并且記錄非基礎(chǔ)塊與基礎(chǔ)塊的相對位置。例如,對應(yīng)某一基礎(chǔ)塊而言,可記錄下某一與其緊挨的非基礎(chǔ)塊位于該基礎(chǔ)塊的上方,則該基礎(chǔ)塊的頂面與非基礎(chǔ)塊的底面重合,大小相等、顏色相同,則該基礎(chǔ)塊的頂面的各端點(diǎn)坐標(biāo)值即為該非基礎(chǔ)塊的底面的各端點(diǎn)坐標(biāo)值。由于非基礎(chǔ)塊通常緊挨基礎(chǔ)塊設(shè)置,因此只要得知非基礎(chǔ)塊位于基礎(chǔ)塊的哪一側(cè),即可得到非基礎(chǔ)塊的位置等信息。

子步驟S1033、獲取并存儲各基礎(chǔ)塊的各面的顏色值。

類似的,由于非基礎(chǔ)塊通常緊挨基礎(chǔ)塊設(shè)置,因此只要得知非基礎(chǔ)塊位于基礎(chǔ)塊的哪一側(cè),同樣可以根據(jù)基礎(chǔ)塊的各面的顏色得到非基礎(chǔ)塊的各面的顏色,因此本發(fā)明實(shí)施例中,僅需要存儲各基礎(chǔ)塊的各面的顏色值,即可得到非基礎(chǔ)塊的各面的顏色值。

因此,本發(fā)明實(shí)施例中,對于眾多六面體,從中提取出近似為立方體的六面體作為基礎(chǔ)塊,將基礎(chǔ)塊的各端點(diǎn)坐標(biāo)值和各面的顏色值存儲下來。對于非基礎(chǔ)塊,僅需要存儲其與緊挨的基礎(chǔ)塊的相對位置,即可減少各六面體所占的存儲空間,提高渲染時調(diào)取數(shù)據(jù)的速度。

在本發(fā)明實(shí)施例中,基于大規(guī)模數(shù)據(jù)的首次渲染進(jìn)行了預(yù)處理之后,在后來用戶需要對大規(guī)模數(shù)據(jù)進(jìn)行渲染時,可直接獲取經(jīng)過預(yù)處理得到的各六面體,進(jìn)行快速渲染。

具體的,如圖3所示,對大規(guī)模數(shù)據(jù)進(jìn)行快速渲染的過程如下:

步驟S201、獲取用戶的渲染要求,渲染要求包括大規(guī)模數(shù)據(jù)中所需渲染的部分。

其中,用戶的渲染要求不僅包括大規(guī)模數(shù)據(jù)中所需渲染的部分,還具體包括用戶的觀察角度等涉及具體渲染過程的信息。

步驟S202、根據(jù)大規(guī)模數(shù)據(jù)中所需渲染的部分,獲取預(yù)存儲的對應(yīng)渲染的部分的表面的多個六面體,六面體為根據(jù)大規(guī)模數(shù)據(jù)渲染的整體結(jié)構(gòu)的部分。

了解到用戶所需渲染的部分后,基于這部分,調(diào)取對應(yīng)的多個六面體。六面 體如前文所述,是經(jīng)過預(yù)處理過程后獲得的。

步驟S203、基于所獲取的多個六面體,根據(jù)各六面體的位置、各面的顏色值,組合所獲取的多個六面體,形成所述渲染要求對應(yīng)的所需渲染的部分。

具體的,由于僅預(yù)先存儲了各基礎(chǔ)塊的端點(diǎn)坐標(biāo)值,同時存儲各非基礎(chǔ)塊與基礎(chǔ)塊的相對位置。首先可根據(jù)基礎(chǔ)塊的端點(diǎn)坐標(biāo)值、非基礎(chǔ)塊與基礎(chǔ)塊的相對位置,確定基礎(chǔ)塊以及與其緊挨的非基礎(chǔ)塊的位置。之后,根據(jù)所確定的基礎(chǔ)塊以及與其緊挨的非基礎(chǔ)塊的位置,組合各六面體形成所需渲染的部分。最后,根據(jù)各基礎(chǔ)塊的各面的顏色值,渲染所需渲染的部分的表面。

其中,對于所需渲染的部分,僅需將該部分的表面對應(yīng)的六面體獲取并組合起來即可,該部分的內(nèi)部結(jié)構(gòu)不需要進(jìn)行處理,否則會增大渲染的數(shù)據(jù)調(diào)取量,降低渲染的速度。

當(dāng)用戶基于所展示的渲染的部分通過操作鼠標(biāo)、鍵盤等移動、轉(zhuǎn)動時,相當(dāng)于重新提供了渲染要求,處理裝置根據(jù)用戶新的渲染要求,重新進(jìn)行渲染。本發(fā)明實(shí)施例提供的快速渲染方法的渲染速度很快,不會給用戶帶來卡頓、臨時的撕裂效果等不良體驗(yàn)。

綜上,本發(fā)明實(shí)施例提供了一種大規(guī)模數(shù)據(jù)的快速渲染方法,該方法預(yù)先將大規(guī)模數(shù)據(jù)的整體結(jié)構(gòu)細(xì)化、分解為多個六面體,記錄并存儲各六面體的位置和各面的顏色值,當(dāng)用戶需要渲染時,調(diào)用六面體、根據(jù)各六面體的位置進(jìn)行組合,得到快速且準(zhǔn)確的渲染效果。

雖然本發(fā)明所公開的實(shí)施方式如上,但所述的內(nèi)容只是為了便于理解本發(fā)明而采用的實(shí)施方式,并非用以限定本發(fā)明。任何本發(fā)明所屬技術(shù)領(lǐng)域內(nèi)的技術(shù)人員,在不脫離本發(fā)明所公開的精神和范圍的前提下,可以在實(shí)施的形式上及細(xì)節(jié)上作任何的修改與變化,但本發(fā)明的專利保護(hù)范圍,仍須以所附的權(quán)利要求書所界定的范圍為準(zhǔn)。

當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1
泸水县| 盘山县| 铜梁县| 布尔津县| 黄山市| 淮安市| 常山县| 肃南| 南丰县| 贵定县| 北碚区| 溆浦县| 平阴县| 花垣县| 普兰店市| 定州市| 西安市| 富锦市| 静安区| 成都市| 德江县| 定州市| 泊头市| 南开区| 望奎县| 鲁甸县| 叙永县| 双峰县| 武邑县| 宜春市| 丰县| 布拖县| 内黄县| 辽阳市| 南涧| 中卫市| 景泰县| 米脂县| 巴中市| 徐汇区| 陆良县|