蔡 強(qiáng),許 杰,李海生,李 楠,曹 健
1.北京工商大學(xué) 食品安全大數(shù)據(jù)技術(shù)北京市重點(diǎn)實(shí)驗(yàn)室,北京 100048 2.北京工商大學(xué) 材料與機(jī)械工程學(xué)院,北京 100048
面向移動(dòng)終端的三維CAD模型面片生成方法*
蔡 強(qiáng)1+,許 杰1,李海生1,李 楠2,曹 健1
1.北京工商大學(xué) 食品安全大數(shù)據(jù)技術(shù)北京市重點(diǎn)實(shí)驗(yàn)室,北京 100048 2.北京工商大學(xué) 材料與機(jī)械工程學(xué)院,北京 100048
CAI Qiang,XU Jie,LI Haisheng,et al.3D CAD model patch generation method in mobile terminal.Journal of Frontiers of Computer Science and Technology,2017,11(6):972-979.
移動(dòng)終端;三維CAD模型;面片生成;分類樹;規(guī)模系數(shù)
隨著計(jì)算機(jī)技術(shù)的快速發(fā)展,智能手機(jī)、平板電腦和可穿戴設(shè)備等移動(dòng)終端成為一種重要的計(jì)算載體,其便于攜帶和適于多種工作環(huán)境的優(yōu)點(diǎn)在很多行業(yè)得到了應(yīng)用。同時(shí),人們對(duì)移動(dòng)終端的圖形交互體驗(yàn)有了更多的需求,三維場(chǎng)景的廣泛應(yīng)用由PC端開始轉(zhuǎn)向移動(dòng)終端設(shè)備。尤其在工業(yè)設(shè)計(jì)領(lǐng)域,一個(gè)復(fù)雜的三維場(chǎng)景包含的對(duì)象體不僅范圍廣泛,種類繁多,大部分還具有復(fù)雜的幾何結(jié)構(gòu)和形態(tài)描述,因此構(gòu)建的模型數(shù)據(jù)量不但巨大,而且還占用很多的內(nèi)存空間,這就影響了視覺效果和計(jì)算機(jī)處理速度[1]。而且與高端的圖形工作站和桌面PC相比,移動(dòng)終端的各種資源極為有限,如CPU的主頻低且大多數(shù)浮點(diǎn)計(jì)算能力差,存儲(chǔ)小等,三維模型的高效繪制在移動(dòng)終端上的研究面臨更多的難點(diǎn)[2]。因此基于移動(dòng)終端的三維模型面片生成技術(shù)用于提高移動(dòng)終端三維模型顯示效率,已成為近年來計(jì)算機(jī)輔助設(shè)計(jì)與制造領(lǐng)域一個(gè)新的研究熱點(diǎn)。
表示三維模型的最基本單位稱為頂點(diǎn),它代表三維空間中的一個(gè)點(diǎn)。兩個(gè)頂點(diǎn)連接成線段,3個(gè)不在同一條直線的頂點(diǎn)構(gòu)成一個(gè)三角形,也就能表示一個(gè)面。因此,通過頂點(diǎn)數(shù)組定義點(diǎn)、線段、三角形或四邊形,可以構(gòu)建簡(jiǎn)單的二維圖形,而不同的二維圖形則可以構(gòu)成復(fù)雜的三維立體模型[3]。在圖形顯示系統(tǒng)中一般采用三角面片[4]表示圖形,通過面片的集合來表示物體表面,能夠簡(jiǎn)單有效地用于顯示系統(tǒng)。因此本文使用基于三角面片的模型生成方法。
基于此,本文針對(duì)移動(dòng)終端的特點(diǎn),在利用CAD模型中的層次類型和圖形表達(dá)信息[5]的基礎(chǔ)上,提出了基于規(guī)模估算的三維模型面片生成方法。該方法以CAD模型的層次類型和圖形表達(dá)的關(guān)系數(shù)據(jù)為信息輸入源,首先根據(jù)數(shù)據(jù)中的圖形、拓?fù)浜头诸愋畔?gòu)建包含整個(gè)模型圖形信息的圖形分類樹[6],葉子節(jié)點(diǎn)就是表示模型最小單元的體元,每個(gè)體元包含生成三角面片所需的參數(shù)信息;其次,在移動(dòng)終端實(shí)現(xiàn)交互方法,以便選取所要顯示的模型節(jié)點(diǎn),計(jì)算出模型規(guī)模系數(shù);最后,根據(jù)規(guī)模系數(shù),生成所要顯示模型的三角面片集來實(shí)現(xiàn)三維模型的面片構(gòu)建。
2.1 基本概念
本文充分利用三維CAD模型對(duì)象的層次類型和圖形表達(dá)數(shù)據(jù)來進(jìn)行三維面片的生成,模型對(duì)象按其工程意義可分為若干大類,每個(gè)大類又可細(xì)分為若干子類,子類還可以繼續(xù)劃分子類,從而形成一個(gè)樹形層次分類結(jié)構(gòu)。
定義1類型層次關(guān)系RC。類型層次關(guān)系為三元關(guān)系,屬性CID是其唯一ID,屬性Name是該分類的名稱,屬性ParentCID是其父分類的ID。表示如下:
定義2模型對(duì)象關(guān)系RO。模型對(duì)象關(guān)系為二元關(guān)系,屬性O(shè)ID表示其唯一ID,屬性CID表示其所屬的分類ID。表示如下:
定義3圖形描述關(guān)系RG。圖形描述關(guān)系為二元關(guān)系,屬性O(shè)ID是對(duì)象ID,屬性Data是對(duì)象包含的所有體元信息。表示如下:
一個(gè)模型對(duì)象的三維圖形由若干體元組成,體元之間沒有布爾運(yùn)算,只是簡(jiǎn)單堆積。定義G為基本體元集[7],G={Cylinder(圓柱),Scylinder(斜截圓柱),Prism(多棱柱),Econe(偏心圓臺(tái)),Concone(同心圓臺(tái)),Squcir(天圓地方),Squcone(矩形斷面臺(tái)),Box(長(zhǎng)方體),Torus(圓形斷面圓環(huán)),Squtorus(矩形斷面圓環(huán)),Sphere(球),Wedge(直角楔形體),Saddle(馬鞍形),Oval(橢球封頭)};每個(gè)體元包含生成三角面片所需的參數(shù)信息[7-8],以Sphere為例,該體元圖形描述為Sphere:〈Center(圓心)〉,〈Radius(半徑)〉。
2.2 方法概述
針對(duì)移動(dòng)終端的三維模型顯示存在的問題,首先以CAD模型的3種關(guān)系數(shù)據(jù)RC、RO和RG為信息輸入源,根據(jù)數(shù)據(jù)中的圖形、拓?fù)浜头诸愋畔9]構(gòu)建包含整個(gè)模型圖形信息的圖形分類樹,葉子節(jié)點(diǎn)就是表示模型最小單元的體元,每個(gè)體元包含生成三角面片所需的參數(shù)信息;在移動(dòng)終端實(shí)現(xiàn)交互方法,以便選取所要顯示的模型節(jié)點(diǎn),計(jì)算出模型規(guī)模系數(shù);然后,根據(jù)規(guī)模系數(shù),生成所要顯示模型的三角面片集來實(shí)現(xiàn)三維模型面片的生成。具體步驟如下。
步驟1解析CAD模型文件,構(gòu)建模型圖形信息分類樹。依據(jù)類型層次關(guān)系RC建立類型層次結(jié)構(gòu);依據(jù)模型對(duì)象關(guān)系RO將對(duì)象分類;依據(jù)圖形描述關(guān)系RG將體元信息作為葉子結(jié)構(gòu)。
步驟2在移動(dòng)終端構(gòu)建良好的交互界面,交互地選取所要瀏覽的模型節(jié)點(diǎn),估算所要顯示的模型節(jié)點(diǎn)的規(guī)模系數(shù)。
步驟3根據(jù)模型規(guī)模系數(shù),選擇不同體元的三角面片生成策略,生成頂點(diǎn)數(shù)組。
3.1 類型層次結(jié)構(gòu)
CAD模型通常包含多種類型信息,具有層次結(jié)構(gòu)。以CAD模型的3種關(guān)系數(shù)據(jù)RC、RO和RG為輸入源,通過對(duì)其中類型層次關(guān)系RC的解析能夠建立一種樹形結(jié)構(gòu)來表示這種層次結(jié)構(gòu)。根據(jù)RC的定義,按如下步驟生成一些中間關(guān)系來體現(xiàn)類型層次結(jié)構(gòu)。
步驟1求根節(jié)點(diǎn)關(guān)系。在類型層次關(guān)系RC中,父類型編號(hào)等于類型編號(hào)的元組變量,即為圖形分類樹的根節(jié)點(diǎn)。
式中,Rroot為根節(jié)點(diǎn)關(guān)系;t[1]表示元組變量t的屬性CID;t[3]表示元組變量t的屬性ParentCID。因?yàn)楦?jié)點(diǎn)的唯一性,所以Rroot度數(shù)為1。
步驟2求一級(jí)類型節(jié)點(diǎn)關(guān)系。在RC中,父類型編號(hào)等于根節(jié)點(diǎn)類型編號(hào)的元組變量為根節(jié)點(diǎn)的子節(jié)點(diǎn),即一級(jí)類型節(jié)點(diǎn)。
步驟3求二級(jí)類型節(jié)點(diǎn)關(guān)系。在RC中,父類型編號(hào)等于一級(jí)類型節(jié)點(diǎn)編號(hào)的元組變量為一級(jí)類型節(jié)點(diǎn)的子節(jié)點(diǎn),即二級(jí)類型節(jié)點(diǎn)。
式中,RC2i為ti一級(jí)類型節(jié)點(diǎn)的二級(jí)類型關(guān)系。
基于上述步驟,可以構(gòu)建圖形分類樹的類型層次節(jié)點(diǎn)。其中,根節(jié)點(diǎn)root為Rroot唯一的元組變量;一級(jí)類型節(jié)點(diǎn)的所有元組變量;一級(jí)類型節(jié)點(diǎn)Ci對(duì)應(yīng)的二級(jí)類型節(jié)點(diǎn)的所有元組變量。
表1中的示例數(shù)據(jù)采取上述算法構(gòu)建的樹如圖1所示。
Table 1 Type hierarchy sample data表1 類型層次示例數(shù)據(jù)
Fig.1 Type hierarchy structure tree of sample data圖1 示例數(shù)據(jù)類型層級(jí)結(jié)構(gòu)樹
3.2 模型對(duì)象分類
CAD模型中各類型節(jié)點(diǎn)又包含了若干模型對(duì)象[10],本文基于上面構(gòu)建的樹來將模型對(duì)象分類,進(jìn)一步構(gòu)建圖形分類樹。根據(jù)模型對(duì)象關(guān)系RO的定義,依次對(duì)二級(jí)類型層次關(guān)系值為的度)進(jìn)行對(duì)象分類:
式中,ROi,j表示中每一個(gè)元組變量tj的對(duì)象關(guān)系。t[2]為RO的元組變量t的屬性CID。
基于此,就可以構(gòu)建圖形分類樹的對(duì)象節(jié)點(diǎn),即二級(jí)類型節(jié)點(diǎn)Ci,j的對(duì)象節(jié)點(diǎn)Oi,j,k為ROi,j的所有元組變量。
3.3 圖形信息解析
對(duì)象為在CAD模型設(shè)計(jì)中,對(duì)于工程而言有意義的最小單位[11],如一段管子、一個(gè)設(shè)備、一個(gè)元件等。一個(gè)模型對(duì)象的三維圖形由若干體元組成,體元之間沒有布爾運(yùn)算,只是簡(jiǎn)單堆積。
根據(jù)圖形描述關(guān)系RG的定義,依次對(duì)模型對(duì)象關(guān)系
根據(jù)上述算法,構(gòu)建了如圖2所示的圖形分類樹。
Fig.2 Structure of shape classification tree圖2 圖形分類樹結(jié)構(gòu)圖
4.1 交互選取模型節(jié)點(diǎn)
為了解決大規(guī)模三維模型在移動(dòng)終端顯示存在的難點(diǎn),本文特地對(duì)CAD模型構(gòu)建了圖形分類樹,在移動(dòng)終端可視化該圖形分類樹,可視化方式是實(shí)現(xiàn)4個(gè)列表,分別是一級(jí)層次類型列表、二級(jí)層次類型列表、模型對(duì)象列表和體元列表。其中,一級(jí)層次類型列表列舉圖形分類樹的一級(jí)層次類型節(jié)點(diǎn)Ci;構(gòu)建了良好的交互方式[12]來選取任意節(jié)點(diǎn),當(dāng)選取任意Ci之后,二級(jí)層次類型列表列舉所選取的Ci節(jié)點(diǎn)的所有子節(jié)點(diǎn)Ci,j;當(dāng)選取任意Ci,j之后,模型對(duì)象列表列舉所選取的Ci,j節(jié)點(diǎn)的所有子節(jié)點(diǎn)Oi,j,k;當(dāng)選取任意Oi,j,k之后,最后的體元列表列舉所選取的Oi,j,k節(jié)點(diǎn)的所有體元信息。
根據(jù)上述的移動(dòng)終端模型節(jié)點(diǎn)選取方式,能夠高效地選取需要顯示的局部三維模型(細(xì)節(jié)),并從圖形分類樹中獲取該節(jié)點(diǎn)所有子節(jié)點(diǎn)的圖形信息,這樣便能構(gòu)建表示三維模型所需的三角面片,使注意力集中在模型的細(xì)節(jié)上。
4.2 規(guī)模系數(shù)計(jì)算
不同體元在相同顯示精度的情況下,構(gòu)成體元的三角面片數(shù)量差別很大,如長(zhǎng)方體體元在任意顯示精度下都可以使用12個(gè)三角面片來表示;在圓顯示精度為圓周16等分時(shí),圓柱體元需要64個(gè)三角面片,球體元需要240個(gè)三角面片。而且,當(dāng)顯示精度越高,不同體元的三角面片數(shù)量差異會(huì)越來越大。因此,根據(jù)構(gòu)建體元面片的實(shí)際情況,使用對(duì)不同體元加權(quán)的方式來計(jì)算出模型的體元總量:
其中,k表示不同體元,如設(shè)k=1表示圓柱,k=2表示斜截圓柱,以此類推,n=14;num(Ok)表示所選對(duì)象節(jié)點(diǎn)Ok所包含的體元k的數(shù)量;wk為體元k的體元權(quán)重。
至此,可以用N來表示所選模型節(jié)點(diǎn)的體元總量。對(duì)于在移動(dòng)終端三角面片顯示存在的效率問題,并不能隨意地對(duì)任意體元總量實(shí)現(xiàn)高精度的顯示,因此引入模型規(guī)模系數(shù)來衡量模型節(jié)點(diǎn)的面片規(guī)模,從而判斷實(shí)際顯示所需的精度級(jí)別。面片規(guī)模越大,顯示精度越低;面片規(guī)模越小,顯示精度越高。采用如下公式計(jì)算規(guī)模系數(shù):
其中,N是所選取模型節(jié)點(diǎn)的體元總量,在交互選擇需要瀏覽的對(duì)象時(shí)計(jì)算出N;nMin為可以顯示的模型最少體元總量,這里取1;nMax為整個(gè)模型包含的體元總量,在構(gòu)建圖形分類樹時(shí)得到;λ為調(diào)整指數(shù),因?yàn)橥ㄟ^前面的標(biāo)準(zhǔn)化可以得到一個(gè)區(qū)間在(0,1)之間的實(shí)數(shù),但是當(dāng)面片數(shù)很小時(shí),面片的緩慢增加對(duì)顯示性能影響不大,而當(dāng)面片數(shù)很大時(shí),面片的增加對(duì)顯示性能的影響就明顯增大,因此引入λ調(diào)整規(guī)模系數(shù),使它滿足這種特性。
這樣,規(guī)模系數(shù)的范圍在(0,1)之間,用來度量模型節(jié)點(diǎn)的規(guī)模,規(guī)模系數(shù)越大,模型規(guī)模越大。
三維模型的主流表示方法就是用三角面片來表示三維空間的面,三角面片用3個(gè)三維空間的點(diǎn)依據(jù)規(guī)定好的順序(逆時(shí)針或順時(shí)針)來表示的。前文在移動(dòng)終端中選取了所要顯示的模型節(jié)點(diǎn),并依上述算法得到了模型規(guī)模系數(shù),據(jù)此動(dòng)態(tài)地計(jì)算所需顯示的三角面片。本文使用頂點(diǎn)數(shù)組[13]的方式來構(gòu)建三角面片,每3個(gè)頂點(diǎn)以逆時(shí)針的方式表示一個(gè)三角面片。
如圖3所示,圓周上分為8個(gè)頂點(diǎn),其中頂點(diǎn)V1、V2、V3和V4組成了面片F(xiàn)1和F2。PX、PY、PZ、NX、NY、NZ、R、G、B、A分別表示頂點(diǎn)三維空間坐標(biāo)、頂點(diǎn)法向量和頂點(diǎn)顏色,坐標(biāo)用來確定三維空間位置,法向量和顏色用來添加環(huán)境光照,這樣顯示的效果會(huì)接近自然環(huán)境。
Fig.3 Structure of triangular patch vertex array圖3 三角面片頂點(diǎn)數(shù)組結(jié)構(gòu)
得到所選模型節(jié)點(diǎn)的體元信息后,據(jù)此還需要判斷顯示精度來計(jì)算如圖3的頂點(diǎn)數(shù)組。不同體元在不同顯示精度的情況下構(gòu)建面片的策略都略有不同,其中最主要的是包含圓的情況,如圓柱、斜截圓柱、偏心圓臺(tái)、同心圓臺(tái)、天圓地方、圓形斷面圓環(huán)、矩形斷面圓環(huán)、球、橢球封頭這幾種體元都包含圓形。因此,以圓為例,不同的顯示精度本質(zhì)就是圓周需要用多少面片來表示,圓周需要的面片數(shù)計(jì)算如下:
其中,s為規(guī)模系數(shù);cMax為顯示最細(xì)致的情況圓上頂點(diǎn)數(shù),根據(jù)實(shí)際情況,取值36(即將圓36等分)。
在根據(jù)規(guī)模系數(shù)計(jì)算出模型的頂點(diǎn)數(shù)組之后,需要在移動(dòng)終端借助三維圖形接口顯示出模型,并添加交互方式實(shí)現(xiàn)模型的旋轉(zhuǎn)、縮放和平移,將模型進(jìn)行實(shí)用。
Table 2 Patches number of some model nodes表2 部分模型節(jié)點(diǎn)面片數(shù)
上述基于分類樹的三維模型面片生成方法,用于提高在移動(dòng)終端顯示三維模型的效率,能夠有效地將注意力集中在關(guān)注的模型細(xì)節(jié)上。根據(jù)某公司對(duì)旗下三維模型產(chǎn)品移動(dòng)化的需求,筆者自主設(shè)計(jì)并開發(fā)了“基于分類樹的三維模型顯示系統(tǒng)”。開發(fā)所用移動(dòng)設(shè)備是Apple的iPad mini2,A7 CPU,1 GB內(nèi)存;使用的3D引擎是OpenGL ES[14]。因?yàn)樵赑C領(lǐng)域?qū)I(yè)的圖形程序接口有兩種標(biāo)準(zhǔn)的3D API:OpenGL和DirectX。一般主流的游戲和顯卡都支持這兩種渲染方式,DirectX在Windows平臺(tái)上有很大的優(yōu)勢(shì),但是OpenGL具有更好的跨平臺(tái)性。為了滿足嵌入式設(shè)備對(duì)3D繪圖的要求,Khronos公司對(duì)標(biāo)準(zhǔn)的OpenGL系統(tǒng)進(jìn)行了維護(hù)和改動(dòng),形成一套為手持和嵌入式系統(tǒng)設(shè)計(jì)的3D引擎API,即OpenGL ES。
以文獻(xiàn)[2]中的某流程工廠模型(本質(zhì)是關(guān)系型數(shù)據(jù)庫(kù)文件[15],三維CAD模型所包含的圖形、拓?fù)浜头诸愋畔⒁詳?shù)據(jù)表的形式儲(chǔ)存)為例,對(duì)本文基于分類樹的三維CAD模型面片生成方法在上訴系統(tǒng)進(jìn)行實(shí)驗(yàn)。為了進(jìn)行比較,選取不同模型節(jié)點(diǎn),采用上訴算法進(jìn)行繪制,得到的三角面片數(shù)量如表2所示,其中原面片數(shù)指模型以普通精度構(gòu)建所需面片數(shù)。
從表2中可以看出,對(duì)于模型規(guī)模較大時(shí),本文方法大大降低了模型面片數(shù)量,以實(shí)現(xiàn)其在移動(dòng)終端的高效顯示;當(dāng)模型規(guī)模較小時(shí),對(duì)移動(dòng)終端的渲染壓力較少,因此增加面片的數(shù)量以提高顯示精度。
同時(shí),在相同的漫游路徑下,采用不同方法對(duì)該模型進(jìn)行繪制,得到的繪制幀速如圖4所示??梢詮膱D中看出,本文方法雖然在模型規(guī)模較小時(shí),繪制幀速低于文獻(xiàn)[7],但在規(guī)模較大時(shí),繪制的幀速滿足瀏覽的實(shí)時(shí)性。重要的是,本文方法占用內(nèi)存空間較其他方法少很多,充分考慮了移動(dòng)終端內(nèi)存小的特性,而文獻(xiàn)[7]是使用多分辨率的繪制方法,極大地增加了內(nèi)存的占用。
Fig.4 Drawing frame of different methods圖4 不同方法的繪制幀速
在該系統(tǒng)中,用戶可以輕松地選取如圖5所示的圖形分類樹的模型節(jié)點(diǎn),并查看模型的圖形信息和工程信息,同時(shí)可以進(jìn)行交互瀏覽。其中,圖5(a)所示的運(yùn)行界面是本文集加載解析文件和可視化圖形分類樹功能的主界面,用戶可清楚明了地查看模型組成結(jié)構(gòu),包括一級(jí)類型節(jié)點(diǎn)、二級(jí)類型節(jié)點(diǎn)、對(duì)象節(jié)點(diǎn)和體元節(jié)點(diǎn);圖5(b)所示為模型二級(jí)類型節(jié)點(diǎn)“管線-13S-9003-H”的顯示界面。
Fig.5 Screenshots of running system圖5 系統(tǒng)運(yùn)行截圖
本文提出了一種基于分類樹的移動(dòng)終端三維CAD模型面片生成方法。依據(jù)模型包含的層次類型和圖形表達(dá)信息,根據(jù)數(shù)據(jù)中的圖形、拓?fù)浜头诸愋畔?gòu)建包含整個(gè)模型圖形信息的圖形分類樹。圖形分類樹能夠較好地體現(xiàn)CAD模型的層次結(jié)構(gòu)以及構(gòu)成層次結(jié)構(gòu)的圖形對(duì)象信息,這些圖形信息存儲(chǔ)在作為葉子節(jié)點(diǎn)的體元中;在移動(dòng)終端實(shí)現(xiàn)三維模型顯示時(shí),通過友好的交互方式選取所要顯示的模型節(jié)點(diǎn),計(jì)算出模型規(guī)模系數(shù);最后,通過規(guī)模系數(shù),選擇不同體元三角面片生成策略來實(shí)現(xiàn)三維模型面片的生成。實(shí)現(xiàn)的顯示效果表明,本文方法較好地解決了由于三維模型信息量巨大,信息結(jié)構(gòu)復(fù)雜的特點(diǎn)導(dǎo)致的移動(dòng)終端三維模型瀏覽效果不理想的問題,使用戶關(guān)注于模型的具體細(xì)節(jié)。
下一步工作將針對(duì)模型二義性進(jìn)行模型結(jié)構(gòu)的優(yōu)化。二義性是指某個(gè)模型可由多種方法堆積而成,比如長(zhǎng)方體,可由一個(gè)長(zhǎng)方體體元構(gòu)造,也可由兩個(gè)小的長(zhǎng)方體體元構(gòu)造。以此達(dá)到減少圖元數(shù)目的目的,從另一個(gè)角度實(shí)現(xiàn)對(duì)模型顯示精度的控制。
[1]Olatunji O A,Sher W.Estimating in geometric 3D CAD[J]. Journal of Financial Management of Property and Construction,2015,20(1):24-49.
[2]Su Zhiyong,Tang Weiqing,Li Weiqing,et al.A fast approach for constructing hierarchical levels of details of dy-namic process plant model[J].Journal of Computer-Aided Design &Computer Graphics,2008,20(8):1038-1046.
[3]Huang Xiaofeng,Song Jinyu,Yu Chenghai.Three-dimensional model drawing in mobile platform based on OpenGL ES[J]. Industrial Control Computer,2013,26(1):60-62.
[4]Yue Liting,Yu Ming,Yu Yang,et al.3D reconstruction algorithm based on facet[J].Computer Engineering,2012,38 (14):199-202.
[5]Su Zhiyong,Xia Ming,Li Weiqing,et al.Design review oriented model simplification for collaborative process plant CAD[C]//Proceedings of the 7th International Conference on Virtual-Reality Continuum and Its Applications in Industry,Singapore,Dec 8-9,2008.New York:ACM,2008:1-6.
[6]Minne L,Eslami S,Keizer N D,et al.Statistical process control for validating a classification tree model for predicting mortality—a novel approach towards temporal validation[J].Journal of Biomedical Informatics,2012,45(1): 37-44.
[7]Zhou Jian,Tang Weiqing,Zhu Yaoqin,et al.Multi-resolution rendering approach of large-scale process plant models based on programmable graphics pipeline[J].Journal of Image and Graphics,2012,17(3):426-434.
[8]Wen Rui,Tang Weiqing,Su Zhiyong,et al.Edit distance based partial retrieval algorithm for large scale process plant models[J].Computer Integrated Manufacturing Systems,2015,21(12):3349-3355.
[9]Nyamsuren P,Lee S H,Kim S.A Web-based revision control framework for 3D CAD model data[J].International Journal of Precision Engineering&Manufacturing,2013, 14(10):1797-1803.
[10]Nie Weizhi,Li Xixi,Liu Anan,et al.3D object retrieval based on Spatial+LDA model[J].Multimedia Tools&Applications,2015:1-14.
[11]Bosché F.Automated recognition of 3D CAD model objects in laser scans and calculation of as-built dimensions for dimensional compliance control in construction[J].Advanced Engineering Informatics,2010,24(1):107-118.
[12]Lee J,Kim T,Lee T,et al.Bouncing animation of a lock mode screen in a mobile communication terminal:US,US20110028186[P].2011.
[13]Shreiner D.OpenGL?programming guide:the official guide to learning OpenGL?,Versions 3.0 and 3.1[M].[S.l.]: Addison-Wesley Professional,2009.
[14]Sellers G,Wright R S,Haemel N.OpenGL SuperBible[M]. Amsterdam:Addison-Wesley Longman,2013.
[15]Zhu Longxian.The analysis and design of SQLite database encryption[J].Electronic Design Engineering,2014,22 (16):191-193.
附中文參考文獻(xiàn):
[2]蘇智勇,唐衛(wèi)清,李蔚清,等.面向動(dòng)態(tài)流程工廠模型的快速分層層次細(xì)節(jié)法[J].計(jì)算機(jī)輔助設(shè)計(jì)與圖形學(xué)報(bào),2008, 20(8):1038-1046.
[3]黃小鳳,宋瑾鈺,俞成海.基于OpenGL ES的移動(dòng)平臺(tái)的三維模型繪制[J].工業(yè)控制計(jì)算機(jī),2013,26(1):60-62.
[4]岳立廷,于明,于洋,等.一種基于面片的三維重建算法[J].計(jì)算機(jī)工程,2012,38(14):199-202.
[7]周劍,唐衛(wèi)清,朱耀琴,等.基于可編程圖形管線的大規(guī)模流程工廠模型多分辨率繪制方法[J].中國(guó)圖象圖形學(xué)報(bào), 2012,17(3):426-434.
[8]溫蕊,唐衛(wèi)清,蘇智勇.基于編輯距離的大規(guī)模流程工廠模型局部檢索算法[J].計(jì)算機(jī)集成制造系統(tǒng),2015,21(12): 3349-3355.
[15]褚龍現(xiàn).SQLite數(shù)據(jù)庫(kù)加密的分析與設(shè)計(jì)[J].電子設(shè)計(jì)工程,2014,22(16):191-193.
蔡強(qiáng)(1969—),男,重慶永川人,2003年于北京航空航天大學(xué)計(jì)算機(jī)圖形學(xué)專業(yè)獲得博士學(xué)位,現(xiàn)為北京工商大學(xué)計(jì)算機(jī)與信息工程學(xué)院教授、碩士生導(dǎo)師,CCF高級(jí)會(huì)員,主要研究領(lǐng)域?yàn)橛?jì)算幾何,可視化等。
XU Jie was born in 1991.He is an M.S.candidate at Beijing Technology and Business University.His research interest is computer graphics.
許杰(1991—),男,四川汶川人,北京工商大學(xué)碩士研究生,主要研究領(lǐng)域?yàn)橛?jì)算機(jī)圖形學(xué)。
LI Haisheng was born in 1974.He received the Ph.D.degree in computer graphics from Beihang University in 2002.Now he is a professor and M.S.supervisor at Beijing Technology and Business University,and the senior member of CCF.His research interests include computer graphics and scientific visualization,etc.
李海生(1974—),男,山東寧津人,2002年于北京航空航天大學(xué)計(jì)算機(jī)圖形學(xué)專業(yè)獲得博士學(xué)位,現(xiàn)為北京工商大學(xué)計(jì)算機(jī)與信息工程學(xué)院教授、碩士生導(dǎo)師,CCF高級(jí)會(huì)員,主要研究領(lǐng)域?yàn)橛?jì)算機(jī)圖形學(xué),可視化等。
LI Nan was born in 1979.He received the Ph.D.degree in mechanical design and theory from Beijing Jiaotong University in 2010.Now he is an associate professor at School of Materials Science and Mechanical Engineering,Beijing Technology and Business University.His research interests include design methodology,digital design and manufacturing,etc.
李楠(1979—),男,北京人,2010年于北京交通大學(xué)獲得博士學(xué)位,現(xiàn)為北京工商大學(xué)材料與機(jī)械工程學(xué)院副教授,主要研究領(lǐng)域?yàn)樵O(shè)計(jì)方法學(xué),數(shù)字化設(shè)計(jì)與制造等。
CAO Jian was born in 1982.He received the Ph.D.degree from Beijing Institute of Technology in 2010.Now he is an associate professor at School of Computer and Information Engineering,Beijing Technology and Business University,and the member of CCF.His research interests include image processing and pattern recognition,etc.
曹健(1982—),男,山東臨沂人,2010年于北京理工大學(xué)獲得博士學(xué)位,現(xiàn)為北京工商大學(xué)計(jì)算機(jī)與信息工程學(xué)院副教授,CCF會(huì)員,主要研究領(lǐng)域?yàn)閳D像處理,模式識(shí)別等。
3D CAD Model Patch Generation Method in Mobile Terminal*
CAI Qiang1+,XU Jie1,LI Haisheng1,LI Nan2,CAO Jian1
1.Beijing Key Laboratory of Big Data Technology for Food Safety,Beijing Technology and Business University, Beijing 100048,China
2.School of Materials Science and Mechanical Engineering,Beijing Technology and Business University,Beijing 100048,China
+Corresponding author:E-mail:caiq@th.btbu.edu.cn
To improve the display efficiency in the mobile terminal and the display accuracy of model detail,this paper proposes a novel algorithm for 3D CAD model patch generation based on type hierarchy and object graph element. By extracting the database information such as the type and shape attributes of models,3D CAD models are represented by shape classification tree.The scale coefficient is estimated by 0-1 normalization method for classification tree node of interactive selection.After estimating the scale coefficient,the display accuracy of the model is confirmed and 3D CAD model patch is generated.Finally,this paper proposes a 3D CAD model display system in mobile terminal,and carries out the experiments on 3D CAD model patch generation.The experimental results prove the feasibility and effectiveness of this 3D CAD model patch generation method.
mobile terminal;3D CAD model;patch generation;classification tree;scale coefficient
was born in 1969.He
the Ph.D.degree in computer graphics from Beihang University in 2003. Now he is a professor and M.S.supervisor at Beijing Technology and Business University,and the senior member of CCF.His research interests include computational geometry and scientific visualization,etc.
A
TP391
*The National Natural Science Foundation of China under Grant No.51405005(國(guó)家自然科學(xué)基金);the Natural Science Foundation of Beijing under Grant No.4162019(北京市自然科學(xué)基金);the General Project of Science and Technology Development Plans of Beijing Municipal Education Commission under Grant No.SQKM201610011010(北京市教委科研計(jì)劃一般項(xiàng)目).
Received 2016-04,Accepted 2016-06.
CNKI網(wǎng)絡(luò)優(yōu)先出版:2016-06-02,http://www.cnki.net/kcms/detail/11.5602.TP.20160602.1144.008.html
摘要:為提高三維CAD模型在移動(dòng)終端的顯示效率,提高模型細(xì)節(jié)的顯示精度,提出了一種基于類型層次結(jié)構(gòu)及對(duì)象體元的三維CAD模型面片生成方法。依據(jù)模型的數(shù)據(jù)庫(kù)表示形式,抽取其必要的類型和圖形信息,將三維CAD模型用圖形分類樹表示;對(duì)交互選擇的分類樹節(jié)點(diǎn),使用基于離差標(biāo)準(zhǔn)化的方法估算所選節(jié)點(diǎn)的模型規(guī)模系數(shù);依據(jù)規(guī)模系數(shù)確定模型的顯示精度,以此進(jìn)行三維CAD模型面片的生成。在移動(dòng)終端開發(fā)了三維CAD顯示系統(tǒng)并進(jìn)行了三維CAD模型面片生成實(shí)驗(yàn),通過實(shí)驗(yàn)證明了所提三維CAD模型面片生成方法的可行性和有效性。