亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

基于符號結(jié)構(gòu)的線型地圖符號反走樣繪制方法

文檔序號:9922505閱讀:657來源:國知局
基于符號結(jié)構(gòu)的線型地圖符號反走樣繪制方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明設(shè)及GIS領(lǐng)域和數(shù)字地圖領(lǐng)域的一種符號化擅染技術(shù),給出了一種基于符 號結(jié)構(gòu)的線型地圖符號反走樣繪制方法,利用GPU(GraphiCS Processing Unit)可編程流 水線和化ader語言實現(xiàn)了基于該方法矢量線要素的高質(zhì)量繪制。設(shè)計了顏色結(jié)構(gòu)表來對線 型地圖符號進行有效映射和表達(dá),提高了矢量線要素的繪制效率和符號化的靈活性。
【背景技術(shù)】
[0002] 矢量數(shù)據(jù)是對空間實體抽象表達(dá)的一種重要形式,而利用不同的顏色、尺寸、形狀 等參數(shù)來對矢量數(shù)據(jù)進行符號化呈現(xiàn)是將空間實體信息利用地圖傳遞給用戶的重要手段。 由于符號化顯示的結(jié)果最終是在一個個離散的像素上顯示的,原始數(shù)據(jù)的數(shù)學(xué)連續(xù)特性無 法直接映射到運些像素坐標(biāo)中,即形成了銀齒化的效果。為了更加清晰的表達(dá)空間信息,對 于矢量要素的反走樣繪制一直都是GIS領(lǐng)域和數(shù)字地圖制圖領(lǐng)域的研究熱點。
[0003] 相比于點符號和面符號,線型符號由于需要沿線繪制運一關(guān)鍵特性,其繪制過程 往往比較復(fù)雜。如何進行線段的反走樣繪制,隨著計算機可視化技術(shù)的發(fā)展,諸多方法被研 究和發(fā)展。但運些方法要么是利用純軟件方法進行反走樣計算(桂麗娟,申國春.《基于亞像 素精度的任意寬度直線反走樣算法》.《計算機仿真》,2013,30(9) :244-247),如GDI+,AGG, 化iro等圖形繪制方法庫,要么采用全屏反走樣和繪制后處理來對線的邊界實現(xiàn)反走樣(如 果多重紋理采樣方法MSAA,快速近似抗銀齒FXAA,增強型子像素形態(tài)學(xué)反銀齒SMAA等方 法)。運兩大類方法,前者不能適應(yīng)于現(xiàn)代硬件加速繪制的技術(shù)體系,繪制效率低下;后者需 要另外構(gòu)建獨立的顯存來進行多重采樣和過濾繪制(屬于全屏后處理反走樣),對于線的反 走樣繪制只能在邊界處理,所W要求將一個矢量要素按照符號結(jié)構(gòu)多次繪制,同樣會引起 整體效率問題。論文《基于邊界反走樣算法的地圖可視化研究》(梅洋,李霖,賀彪.《武漢大 學(xué)學(xué)報?信息科學(xué)版》,2008,7:759-761)給出了一種基于Wu反走算法的地圖符號反走樣繪 制方法,但運種仍然只關(guān)注于線邊界的反走樣,對矢量線內(nèi)部的反走樣并沒有考慮。而利用 GPU的可編程流水線和化ader來進行線狀要素的繪制能夠?qū)⒃拘枰啻卫L制的矢量線要 素,用化ader編程的方式一次性繪制。名稱為"基于GPU的地圖線形符號繪制方法及系統(tǒng)", 申請?zhí)?01310125110.6的中國專利,在分析地圖線形符號繪制的難點的基礎(chǔ)上,公開了一 種在化ader程序里面定制線型地圖符號的繪制方法。但運種方法嚴(yán)格依賴于化ader編程, 不同的線型符號需要在化ader里面大量的編程才能實現(xiàn)繪制;對于如何將各種各樣的復(fù)雜 線型地圖符號映射到GPU像素計算的方面并沒有給出方法,對于如何進行矢量線要素的反 走樣繪制亦沒有給出方法。
[0004] 因而,如何對符號化的矢量線要素進行反走樣繪制是計算機地圖繪制中的一個亟 待解決的問題。運種反走樣繪制需要適應(yīng)于多種線型地圖符號,且不僅僅是在線的邊界反 走樣,對于線要素的內(nèi)部也需要進行反走樣,從而實現(xiàn)線要素的清晰表達(dá)。

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

[0005] 本發(fā)明的目的是在GPU可編程流水線和著色器技術(shù)的基礎(chǔ)上,針對矢量線要素的 反走樣繪制問題,突破傳統(tǒng)的軟件反走樣和全屏后處理的方式,實現(xiàn)基于符號結(jié)構(gòu)的矢量 線要素的邊界與符號內(nèi)部一致的反走樣繪制。
[0006] 本發(fā)明的技術(shù)方案是:
[0007] 基于符號結(jié)構(gòu)的線型地圖符號反走樣繪制方法,包括下列步驟:
[0008] 步驟1初始化需要繪制的線狀要素的點集序列,根據(jù)線寬生成需要繪制的S角形 幾何=角網(wǎng):確定需要繪制的矢量線要素的線寬參數(shù),遍歷線要素中的每一個頂點,按照半 個最大線寬向兩邊擴展,同時生成相應(yīng)的=角形集合,并為每個=角形的每個頂點賦予沿 線走向的長度值U值和垂直于線走向的長度值V值,即U-V值;最終得到最后一個頂點的U值 作為整條線最大的U值MaxU;
[0009] 步驟2確定需要沿線重復(fù)填充的符號單元的顏色結(jié)構(gòu)表:將需要填充的符號單元 按照縱向-橫向的結(jié)構(gòu)進行分解,用列優(yōu)先的二維數(shù)組和相應(yīng)的符號單元屬性來結(jié)構(gòu)化映 射一個符號單元;
[0010] 步驟3在著色器中根據(jù)符號顏色結(jié)構(gòu)表確定當(dāng)前像素的位置信息:在著色器中基 于傳遞到著色器里面的頂點U-V值,動態(tài)確定每個像素的U-V值,即像素在水平方向上到線 起點的距離U'值和像素在垂直方向上到線的上邊界的距離V'值,由此確定每一個像素在符 號顏色結(jié)構(gòu)表中屬于哪一個單元;根據(jù)所屬單元的行列值,得到一個像素在沿線走向上占 單元的比例u_Pe;rce;rnt和在垂直于線走向上占單元的比例v_Pe;rce;rnt;
[0011]步驟4首先判斷步驟3確定的比例u_Pe;rce;rnt是否在反走樣闊值范圍內(nèi),如果在范 圍內(nèi)則進行當(dāng)前單元的左單元和右單元的顏色混合;再對比例¥_?日1^日1111:判斷是否在反走 樣闊值范圍內(nèi),如果在范圍內(nèi)則進行當(dāng)前單元的上單元和下單元的顏色混合;最后利用計 算得到的顏色對線要素進行逐像素繪制。
[0012] 所述步驟1中,將V值從0至最大線寬的范圍內(nèi)歸一化到0至1的范圍內(nèi),U值通過每 個頂點距離起始點的距離除W最大線寬得到。
[0013] 所述步驟2中,A.符號的顏色結(jié)構(gòu)表:將符號單元按照其結(jié)構(gòu)分解為幾個列,每一 列都包含其相應(yīng)的行,每一行都包含其相應(yīng)的四個角的顏色值,由此形成一系列的顏色單 元來映射特定的符號;B.顏色結(jié)構(gòu)表的單元屬性:對于一個符號的顏色結(jié)構(gòu)表,其每一列都 包含相應(yīng)的寬度屬性和所包含的行數(shù)屬性,每一行都包含相應(yīng)的高度屬性,每一列都包含 一個布爾值來指明該列是否為背景列,整個顏色結(jié)構(gòu)表包含總列數(shù)、總寬度和總高度屬性。
[0014] 所述步驟3中確定當(dāng)前像素的位置信息,具體步驟為:在著色器中根據(jù)當(dāng)前像素的 U'值,利用公式U(p)=u'-SLX[u'/化],計算其在符號顏色結(jié)構(gòu)表中的位置,其中U(p)表示 在顏色結(jié)構(gòu)表中的U值,化表達(dá)符號的總寬度,[u'/SL]表示對U V化的結(jié)果進行取整得到小 于U'值的化的整數(shù)倍;然后根據(jù)當(dāng)前像素的V'值,迭代判斷其在顏色結(jié)構(gòu)表中所處的具體 行,并結(jié)合U(P)值確定該像素在符號顏色結(jié)構(gòu)表中所處的具體列;根據(jù)得到的具體行和列 即可確定當(dāng)前像素所處的單元;所述比例口_?日1'。日1'111:的計算公式為:u_Pe;rcent = U(P)/ ColumnWidth,其中ColumnWidth為像素所在單元的寬度;所述比例¥_?日1^日1'111:的計算公式 為:v_Pe;rcent = v'/RowHei曲t,其中RowHeight為像素所在單元的高度。
[0015] 所述步驟4中,判斷比例u_Pe;rce;rnt是否在反走樣闊值范圍內(nèi)的具體步驟為:設(shè)傳 到著色器里面的反走樣闊值為aa_Buffe;r,如果比例11_?日1^日]11:小于闊值aa_Buffe;r或者1- u_Pe;r cent的值大于闊值aa_Buf f er,則將當(dāng)前像素所在的單元的左右單元的顏色進行混 合;判斷比是否在反走樣闊值范圍內(nèi)的具體步驟:如果比例v_Pe;rcent小于闊 值aa_Buffe;r或者l-v_Pe;rcent的值大于闊值aa_Buffe;r,則將當(dāng)前像素所在的單元的上下 單元的顏色進行混合。
[0016] 本發(fā)明的方法可W利用GPU可編程流水線和著色器中像素著色器能夠遍歷每一個 像素的特點,按照符號自身的結(jié)構(gòu)信息,在線要素繪制的邊界上進行反走樣處理,同時在線 要素所繪制的符號內(nèi)部也進行反走樣處理,形成內(nèi)外一致的線要素反走樣處理方法,有效 提高空間數(shù)據(jù)可視化的效率和效果。
【附圖說明】
[0017] 圖1是本發(fā)明方法的流程示意圖。
[0018] 圖2是矢量線要素的邊界反走樣和內(nèi)部反走樣。
[0019] 圖3是基于符號結(jié)構(gòu)的線型符號反走樣方法原理。
[0020] 圖4是采用本發(fā)明方法繪制的矢量
當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1