本發(fā)明涉及數(shù)據(jù)處理領域,尤其涉及一種導航電子地圖數(shù)據(jù)存儲方法及裝置。
背景技術(shù):
:目前,導航電子地圖行業(yè)存儲DTM(DigitalTerrainModel,數(shù)字地面模型)數(shù)據(jù)時,采用的是存儲低精度或者高精度的DTM像素圖的方法,具體包括:以像素為單位將DTM像素圖切分為一系列規(guī)則網(wǎng)格,每個網(wǎng)格單元對應一個經(jīng)緯度坐標和高程值。在存儲DTM像素圖時,既要存儲DTM像素圖中每一個網(wǎng)格單元的高程值,還要存儲DTM像素圖中每一個網(wǎng)格單元的經(jīng)緯度坐標。當以像素為單位將全國各個城市的DTM像素圖切分為一系列規(guī)則網(wǎng)格時,會產(chǎn)生大量的網(wǎng)格單元,這需要很大的存儲空間存儲所有網(wǎng)格單元的高程值和經(jīng)緯度坐標,因此,現(xiàn)有技術(shù)存儲DTM像素圖存在占用存儲空間過大的問題。例如,以分辨率為90m*90m存儲全國各個城市的DTM像素圖時,需要占用的存儲空間約為10G,即使對DTM像素圖壓縮后再進行存儲,較大的存儲空間占用量仍會對終端設備造成較大的負擔。技術(shù)實現(xiàn)要素:本發(fā)明實施例提供一種導航電子地圖數(shù)據(jù)存儲方法及裝置,用以解決目前DTM像素圖占用存儲空間大的問題。本發(fā)明實施例提供的具體技術(shù)方案如下:一種導航電子地圖數(shù)據(jù)存儲方法,包括:根據(jù)預設的網(wǎng)格范圍,將數(shù)字地面模型DTM像素圖切分為正方形網(wǎng)格;采用三角形二叉樹方法,對所述正方形網(wǎng)格進行三角形切分,得到三角形子網(wǎng)格以及所述三角形子網(wǎng)格的頂點坐標;根據(jù)每一個三角形子網(wǎng)格所在正方形網(wǎng)格中心點的經(jīng)緯度坐標,分別對所述每一個三角形子網(wǎng)格的頂點坐標進行轉(zhuǎn)換,得到所述每一個三角形子網(wǎng)格相對于所述三角形子網(wǎng)格所在正方形網(wǎng)格中心點的相對頂點坐標;根據(jù)所述每一個三角形子網(wǎng)格各個頂點所對應的像素點的高程值,獲取所述每一個三角形子網(wǎng)格的各個頂點的高程值,并獲取所述每一個三角形子網(wǎng)格的頂點序列;將所述三角形子網(wǎng)格的相對頂點坐標,所述三角形子網(wǎng)格的各個頂點的高程值,以及所述三角形子網(wǎng)格的頂點序列存儲至所述三角形子網(wǎng)格對應的三角形條帶中。一種導航電子地圖數(shù)據(jù)存儲裝置,包括:正方形網(wǎng)格切分單元,用于根據(jù)預設的網(wǎng)格范圍,將數(shù)字地面模型DTM像素圖切分為正方形網(wǎng)格;三角形子網(wǎng)格獲取單元,用于采用三角形二叉樹方法,對所述正方形網(wǎng)格進行三角形切分,得到三角形子網(wǎng)格以及所述三角形子網(wǎng)格的頂點坐標;相對頂點坐標獲取單元,用于根據(jù)每一個三角形子網(wǎng)格所在正方形網(wǎng)格中心點的經(jīng)緯度坐標,分別對所述每一個三角形子網(wǎng)格的頂點坐標進行轉(zhuǎn)換,得到所述每一個三角形子網(wǎng)格相對于所述三角形子網(wǎng)格所在正方形網(wǎng)格中心點的相對頂點坐標;高程值和頂點序列獲取單元,用于根據(jù)所述每一個三角形子網(wǎng)格各個頂點所對應的像素點的高程值,獲取所述每一個三角形子網(wǎng)格的各個頂點的高程值,并獲取所述每一個三角形子網(wǎng)格的頂點序列;存儲單元,用于將所述三角形子網(wǎng)格的相對頂點坐標,所述三角形子網(wǎng)格的各個頂點的高程值,以及所述三角形子網(wǎng)格的頂點序列存儲至所述三角形子網(wǎng)格對應的三角形條帶中。本發(fā)明實施例中,根據(jù)預設的網(wǎng)格范圍,將DTM像素圖切分為正方形網(wǎng)格;對正方形網(wǎng)格進行三角形切分,并對生成的三角形子網(wǎng)格的頂點坐標進行坐標轉(zhuǎn)換,生成三角形子網(wǎng)格的相對頂點坐標;根據(jù)三角形子網(wǎng)格各個頂點所對應的像素點的高程值,獲取三角形子網(wǎng)格的各個頂點的高程值;對上述獲取的三角形子網(wǎng)格的相對頂點坐標、三角形子網(wǎng)格的各個頂點的高程值,以及三角形子網(wǎng)格的頂點序列進行存儲。由于本發(fā)明技術(shù)方案是根據(jù)預設的網(wǎng)格范圍,將DTM像素圖切分為正方形網(wǎng)格,再對正方形網(wǎng)格進行三角形切分得到三角形子網(wǎng)格,這樣得到的每一個三角形子網(wǎng)格會包含多個像素點,因此,相對現(xiàn)有技術(shù)采用本發(fā)明減少了網(wǎng)格的個數(shù),同時,本發(fā)明對導航電子地圖數(shù)據(jù)進行存儲時無須存儲每一個像素點的相關信息,僅需要對三角形子網(wǎng)格的相對頂點坐標、各個頂點的高程值以及頂點序列的存儲,由此可見,本發(fā)明相較于現(xiàn)有技術(shù),導航電子地圖數(shù)據(jù)所占用存儲空間較小,從而減輕了導航設備存儲導航電子地圖數(shù)據(jù)的負擔。附圖說明圖1為本發(fā)明實施例中導航電子地圖數(shù)據(jù)存儲流程圖;圖2為本發(fā)明實施例中對DTM像素圖切分后的正方形網(wǎng)格示意圖;圖3為本發(fā)明實施例中進行預處理的相鄰兩個正方形網(wǎng)格示意圖;圖4a和圖4b為本發(fā)明實施例中將正方形網(wǎng)格進行三角形切分后生成的初始等腰直角三角形網(wǎng)格示意圖;圖5a和圖5b為本發(fā)明實施例中對初始等腰直角三角形網(wǎng)格進行切分后的示意圖;圖6為本發(fā)明實施例中對存在裂縫邊的相鄰三角形進行切分后的示意圖;圖7為本發(fā)明實施例中導航電子地圖數(shù)據(jù)存儲裝置示意圖;圖8為本發(fā)明實施例中高程值更新單元結(jié)構(gòu)示意圖;圖9為本發(fā)明實施例中三角形子網(wǎng)格獲取單元結(jié)構(gòu)示意圖;圖10為本發(fā)明實施例中相對頂點坐標獲取單元結(jié)構(gòu)示意圖。具體實施方式為了解決目前在對DTM模型存儲過程中,存在DTM數(shù)據(jù)占用存儲空間大的問題。本發(fā)明實施例中,根據(jù)預設的網(wǎng)格范圍,將DTM像素圖切分為正方形網(wǎng)格;對正方形網(wǎng)格進行三角形切分,并對生成的三角形子網(wǎng)格的頂點坐標進行坐標轉(zhuǎn)換,生成三角形子網(wǎng)格的相對頂點坐標;根據(jù)三角形子網(wǎng)格各個頂點所對應的像素點的高程值,獲取三角形子網(wǎng)格的各個頂點的高程值;對上述獲取的三角形子網(wǎng)格的相對頂點坐標、三角形子網(wǎng)格的各個頂點的高程值,以及三角形子網(wǎng)格的頂點序列進行存儲。由于本發(fā)明技術(shù)方案,是根據(jù)預設的網(wǎng)格范圍,將DTM像素圖切分為正方形網(wǎng)格,再對正方形網(wǎng)格進行三角形切分得到三角形子網(wǎng)格,這樣得到的每一個三角形子網(wǎng)格中會包含多個像素點,因此,相對于現(xiàn)有技術(shù)采用本發(fā)明減少了網(wǎng)格的個數(shù),同時,本發(fā)明對導航電子地圖數(shù)據(jù)進行存儲時無須存儲每一個像素點的相關信息,僅需要對三角形子網(wǎng)格的相對頂點坐標、各個頂點的高程值以及頂點序列的存儲,由此可見,本發(fā)明相較于現(xiàn)有技術(shù),導航電子地圖數(shù)據(jù)所占用存儲空間較小,從而減輕了導航設備存儲導航電子地圖數(shù)據(jù)的負擔。下面結(jié)合附圖對本發(fā)明優(yōu)選的實施方式進行詳細說明。參閱圖1所示,為本發(fā)明實施例中,存儲導航電子地圖數(shù)據(jù)的過程為:步驟100:根據(jù)預設的網(wǎng)格范圍,將DTM像素圖切分為正方形網(wǎng)格。本發(fā)明實施例中,DTM像素圖所表征的地理范圍較大,需要根據(jù)預設的網(wǎng)格范圍,對上述DTM像素圖進行切分,生成至少一個正方形網(wǎng)格,該生成的正方形網(wǎng)格中包含多個像素點,且正方形網(wǎng)格中每一個邊上所對應的像素點數(shù)目相同,參閱圖2所示為本發(fā)明實施例中對DTM像素圖切分后生成的正方形網(wǎng)格示意圖;其中,上述網(wǎng)格范圍大于一個像素點所對應的范圍,且可以根據(jù)具體應用場景預先設置??蛇x的,參閱表1所示,在本地生成DTM表格,用于保存對DTM像素圖進行切分后,生成的各個正方形網(wǎng)格標識以及正方形網(wǎng)格的網(wǎng)格信息。表1ID(主鍵)BLOB(DTM像素圖)網(wǎng)格信息1……A在上述表1中,BLOB表示正方形網(wǎng)格中包含的所有像素點的集合,該像素點集合中包含每一個像素點的經(jīng)緯度坐標以及高程值;網(wǎng)格信息即為正方形網(wǎng)格對應的索引標識。步驟110:采用三角形二叉樹方法,對正方形網(wǎng)格進行三角形切分,得到三角形子網(wǎng)格以及該三角形子網(wǎng)格的頂點坐標。本發(fā)明實施例中,終端針對每一個正方形網(wǎng)格,均采用三角形二叉樹方法,對該正方形網(wǎng)格進行三角形切分,生成多個三角形子網(wǎng)格,并獲取每一個生成的三角形子網(wǎng)格的頂點坐標。由于切分后的所有正方形網(wǎng)格中每相鄰兩個正方形網(wǎng)格的相鄰邊中,可能存在位于最相鄰位置的像素點的高程值不同的情況,在導航電子地圖中,當相鄰兩個正方形網(wǎng)格的相鄰邊中位于最相鄰位置的像素點的高程值不同時,將導致生成的導航電子地圖存在不連續(xù)的問題;因此,為了保證切分后的每相鄰兩個正方形網(wǎng)格邊緣的連續(xù)性,較佳的,在對正方形網(wǎng)格進行三角形切分之前,還需要對切分后的正方形網(wǎng)格進行預處理,該預處理過程即為根據(jù)切分得到的正方形網(wǎng)格中每相鄰兩個正方形網(wǎng)格的每一對相鄰邊上的像素點的高程值,更新每一對相鄰邊上的像素點的高程值。可選的,對切分后的正方形網(wǎng)格進行預處理的過程,具體包括:針對切分后的所有正方形網(wǎng)格中的每相鄰兩個正方形網(wǎng)格,均執(zhí)行如下操作,獲取該相鄰兩個正方形網(wǎng)格的相鄰邊;根據(jù)相鄰邊上的像素點的位置坐標,獲取該相鄰邊中一個相鄰邊上的像素點到另一個相鄰邊上的像素點的距離以及另一相鄰邊上的像素點到上述一個相鄰邊上的像素點的距離;根據(jù)獲取的像素點之間的 距離,獲取距離上述一個相鄰邊上的像素點最近的另一個相鄰邊上的像素點,以及距離另一相鄰邊上的像素點的距離最近的上述一個相鄰邊上的像素點;將上述一個相鄰邊上的像素點的高程值更新為與距離該一個相鄰邊上的像素點最近的另一個相鄰邊上的像素點的高程值和值的平均值;將另一相鄰邊上的像素點的高程值更新與距離該另一邊上的像素點最近的上述一個相鄰邊上的像素點的高程值和值的平均值。例如,參閱圖3所示,正方形網(wǎng)格ABCD和正方形網(wǎng)格C’D’EF為兩個相鄰的正方形網(wǎng)格,其中,針對正方形網(wǎng)格ABCD,其與正方形網(wǎng)格C’D’EF的相鄰邊為CD,針對正方形C’D’EF,其與正方形ABCD的相鄰邊為與C’D’,相鄰邊CD對應的像素點為像素點a、像素點b和像素點c,相鄰邊C’D’對應的像素點分別為像素點a’、像素點b’和像素點c’,像素點a的高程值為a1,像素點b的高程值為b1,像素點c的高程值為c1,像素點a’的高程值為a2,像素點b’的高程值為b2,像素點c’的高程值為c2,在相鄰邊C’D’的所有像素點中與像素點a距離最近的像素點為像素點a’,在相鄰邊C’D’的所有像素點中與像素點b距離最近的像素點為像素點b’,在相鄰邊C’D’的所有像素點中與像素點c距離最近的像素點為像素點c’,因此,上述相鄰邊CD的像素點a的高程值為(a1+a2)÷2,像素點b的高程值為(b1+b2)÷2,像素點c的高程值為(c1+c2)÷2。同理可以得到:相鄰邊C’D’的像素點a’的高程值為(a1+a2)÷2,像素點b’的高程值為(b1+b2)÷2,像素點c’的高程值為(c1+c2)÷2。采用上述技術(shù)方案,對切分后的正方形網(wǎng)格進行預處理,使每相鄰兩個正方形網(wǎng)格的相鄰邊上位于最相鄰位置的像素點高程值相同,從而保證了切分后的正方形網(wǎng)格邊緣位置的連續(xù)性,進而保證了最終生成的導航電子地圖的連續(xù)性。本發(fā)明實施例中,針對上述預處理后的正方形網(wǎng)格,采用三角形二叉樹方法進行切分,生成三角形子網(wǎng)格??蛇x的,針對預處理后的每一個正方形網(wǎng)格(如圖3中的正方形網(wǎng)格 ABCD),均執(zhí)行如下操作:對正方形網(wǎng)格進行三角形切分,生成2k個大小相等的初始等腰直角三角形網(wǎng)格,k為預設的切分層級;當判定初始等腰直角三角形網(wǎng)格滿足預設的切分條件時,將該初始等腰直角三角形網(wǎng)格三個頂點的經(jīng)緯度坐標作為三角形子網(wǎng)格的頂點坐標;當切分后的初始等腰直角三角形網(wǎng)格不滿足預設的切分條件時,對該初始等腰直角三角形網(wǎng)格繼續(xù)進行三角形切分,直至切分得到的三角形網(wǎng)格滿足上述預設的切分條件時,將切分得到的三角形網(wǎng)格確定為生成的三角形子網(wǎng)格,將切分得到的三角形網(wǎng)格的三個頂點的經(jīng)緯度坐標確定為三角形子網(wǎng)格的頂點坐標。其中,上述預設的切分條件即為切分得到的三角形網(wǎng)格中包含的所有像素點高程值中最大高程值與最小高程值之差未達到預設閾值,或者上述預設的切分條件為切分得到的三角形網(wǎng)格任意一腰邊上的像素點數(shù)目滿足預設數(shù)目,其中,該預設數(shù)目可以設置為2。在上述對正方形網(wǎng)格進行三角形切分的過程中,預設層級的數(shù)目可以根據(jù)具體應用預先設置,且第k個層級對應的初始等腰直角三角形網(wǎng)格的數(shù)目為第k-1個層級對應的初始等腰直角三角形網(wǎng)格的數(shù)目的二倍;例如,參閱圖4a所示,在正方形網(wǎng)格ABCD中做出任意一條對角線(如AC),將正方形網(wǎng)格ABCD切分為兩個初始等腰直角三角形網(wǎng)格;以及參閱圖4b所示,針對正方形網(wǎng)格ABCD,做出任意一條對角線(如AC),然后在該正方形網(wǎng)格ABCD中做出另一條對角線(如BD),通過兩條對角線對正方形網(wǎng)格ABCD依次進行兩次三角形切分,生成四個大小相等的初始等腰直角三角形網(wǎng)格;在上述過程中,切分后的2個初始等腰直角三角形網(wǎng)格對應第一層級,切分后的4個初始等腰直角三角形網(wǎng)格對應第二層級,且第一層級位于第二層級之上。進一步的,根據(jù)具體應用需求,還可以對上述正方形網(wǎng)格再次進行切分,生成更多層級的初始等腰直角三角形網(wǎng)格,最上層級切分后得到的初始等腰直角三角形網(wǎng)格數(shù)目最少,最下層級切分后得到的初始等腰直角三角形網(wǎng)格數(shù)目最多;下一層級的初始等腰直角三角形網(wǎng)格數(shù)目為上一層級的初始等腰直角三角形網(wǎng)格數(shù)目的二倍?;谏鲜鲱A設的切分條件,可選的,在上述對正方形網(wǎng)格進行切分得到三角形子網(wǎng)格后,當判定初始等腰直角三角形網(wǎng)格滿足預設的切分條件時,將該初始等腰直角三角形網(wǎng)格三個頂點的經(jīng)緯度坐標作為三角形子網(wǎng)格的頂點坐標,具體包括:獲取初始等腰直角三角形網(wǎng)格所包含的所有像素點的高程值中的最大高程值和最小高程值;當最大高程值和最小高程值之差未達到預設閾值時,將初始等腰直角三角形網(wǎng)格作為三角形子網(wǎng)格,并將該初始等腰直角三角形網(wǎng)格三個頂點的經(jīng)緯度坐標作為三角形子網(wǎng)格的頂點坐標;例如,參閱圖4b所示,將正方形網(wǎng)格ABCD進行三角形切分后,生成四個初始等腰直角三角形網(wǎng)格,分別為△AED、△AEB、△BEC、△CED,針對上述四個初始等腰直角三角形網(wǎng)格中的任意一個初始等腰直角三角形網(wǎng)格(如△AED),獲取該△AED包含的所有像素點的高程值,若高程值最大的像素點的高程值與高程值最小的像素點的高程值的差值未達到預設閾值(如90米),則將△AED確定為三角形子網(wǎng)格,并將△AED三個頂點A、E、D的經(jīng)緯度坐標確定為三角形子網(wǎng)格的頂點坐標?;蛘?,獲取初始等腰直角三角形網(wǎng)格任意一腰邊上的像素點數(shù)目;當任意一腰邊上像素點數(shù)目為預設數(shù)目時,將初始等腰直角三角形網(wǎng)格作為三角形子網(wǎng)格,并將該初始等腰直角三角形網(wǎng)格三個頂點的經(jīng)緯度坐標作為三角形子網(wǎng)格的頂點坐標;例如,參閱圖4b所示,針對上述四個初始等腰直角三角形網(wǎng)格中的任意一個初始等腰直角三角形網(wǎng)格(如△AEB),獲取該△AEB任意一腰邊AE上包含的像素點數(shù)目,若AE上包含的像素點數(shù)目等于預設數(shù)目,則將△AEB確定為三角形子網(wǎng)格,并將△AEB三個頂點A、E、B的經(jīng)緯度坐標確定為三角形子網(wǎng)格的頂點坐標??蛇x的,當存在任意一初始等腰直角三角形網(wǎng)格不滿足預設的切分條件時,將該任意一初始等腰直角三角形網(wǎng)格再次進行三角形切分,具體包括:若該任意一初始等腰直角三角形網(wǎng)格任意一腰邊上的像素點數(shù)目為大于預設數(shù)目的奇數(shù),則連接該任意一初始等腰直角三角形網(wǎng)格底邊中點與該任意一初始等腰直角三角形網(wǎng)格底邊對應的頂點,進而將該任意一初始等腰直角三角形網(wǎng) 格切分為兩個三角形網(wǎng)格,并再次判斷切分后的三角形網(wǎng)格是否滿足預設的切分條件,若不滿足,則應進行進一步切分,若滿足,則將網(wǎng)格作為三角形子網(wǎng)格,并獲取該三角形子網(wǎng)格的頂點坐標;例如,參閱圖5a所示,若判定需要對△CED進行進一步切分,統(tǒng)計該△CED任意一腰邊上的像素點的數(shù)目,當△CED任意一腰邊上的像素點的數(shù)目為5時,連接頂點E與底邊CD上的中點F,將△CED切分為兩個三角形網(wǎng)格;若該任意一初始等腰直角三角形網(wǎng)格任意一腰邊上的像素點數(shù)目為大于預設數(shù)目的偶數(shù),則在該任意一初始等腰直角三角形網(wǎng)格底邊上插入一內(nèi)插點,該內(nèi)插點位于該任意一初始等腰直角三角形網(wǎng)格底邊的中點,且該內(nèi)插點的高程值等于在該任意一初始等腰直角三角形網(wǎng)格底邊上與該內(nèi)插點相鄰的兩個像素點的平均值,連接內(nèi)插點與底邊對應的頂點,將該任意一初始等腰直角三角形網(wǎng)格切分為兩個三角形網(wǎng)格,并再次判斷切分后的三角形網(wǎng)格是否滿足預設的切分條件,若不滿足,則應進行進一步切分,若滿足,則將最終生成的三角形網(wǎng)格作為三角形子網(wǎng)格,并獲取該三角形子網(wǎng)格的頂點坐標,例如,參閱圖5b所示,若判定需要對△CED進行進一步切分,統(tǒng)計該△CED任意一腰邊上的像素點的數(shù)目,當△CED任意一腰邊上的像素點的數(shù)目為4時,由于該像素點數(shù)目大于預設數(shù)目,因此,在△CED底邊中加入內(nèi)插點F,連接頂點E與底邊CD上的中點F,將△CED切分為兩個三角形網(wǎng)格??蛇x的,可以根據(jù)每一個三角形子網(wǎng)格的頂點坐標可以根據(jù)每一個頂點所對應的像素點的經(jīng)緯度坐標獲得??蛇x的,上述預設閾值為根據(jù)具體應用場景預先設置的值,并且,該預設閾值隨著最終生成的BDAM中的LOD(多層次顯示)層級的不同而不同,即不同層級的預設閾值均不相同,精確層級的預設閾值小,粗糙層級的預設閾值大。例如,針對切分后生成兩個初始等腰直角三角形網(wǎng)格的情況,該兩個初始等腰直角三角形網(wǎng)格即對應粗糙層級,針對切分后生成四個初始等腰直角三角形網(wǎng)格的情況,該四個初始等腰直角三角形網(wǎng)格對應精確層級,則兩個初始等 腰直角三角形網(wǎng)格對應層級的預設閾值大于四個初始等腰直角三角形網(wǎng)格對應層級的預設閾值。進一步的,在對上述不滿足預設的切分條件的初始等腰直角三角形網(wǎng)格或者三角形網(wǎng)格進行切分的過程中,每生成一個新的三角形網(wǎng)格,均要檢測與新生三角形網(wǎng)格相鄰的三角形網(wǎng)格是否是存在粗糙邊的三角形網(wǎng)格,若是,則確定上述新生三角形網(wǎng)格與相鄰三角形網(wǎng)格之間包含存在裂縫的邊,此時,應將該裂縫的邊所在的三角形網(wǎng)格強制分裂為兩個三角形網(wǎng)格,即連接新生三角形網(wǎng)格中的奇異點與粗糙邊的三角形網(wǎng)格的所有頂點中與該奇異點對應的頂點,將上述存在粗糙邊的三角形網(wǎng)格切分為兩個三角形網(wǎng)格;當判定切分后的每一個三角形網(wǎng)格滿足預設的切分條件時,將切分后的三角形網(wǎng)格確定為三角形子網(wǎng)格,并獲取該三角形子網(wǎng)格的三個頂點的坐標;其中,上述奇異點為新生三角形網(wǎng)格的頂點,且奇異點與上述包含粗糙邊的三角形網(wǎng)格的一條邊相鄰。例如,參閱圖6所示,正方形網(wǎng)格ABCD包含初始等腰直角三角形網(wǎng)格△OCD,對△OCD進行兩次切分后生成△OCM和△OMD,由于△OCM不滿足預設的切分條件,因此,對△OCM進行切分后生成滿足上述預設的切分條件的△OEF,與該△OEF相鄰的三角形網(wǎng)格為△OMD,在△OEF中包含F(xiàn),由于該點F可能位于OM邊上方,如果M點的高程值與OM邊的高度不相等,則OM邊出現(xiàn)OF與OM之間的裂縫,因此,將點F作為奇異點,由于點F在OM邊上方,因此,在△OMD中與點F相對的頂點即為OM邊對應的頂點D,連接點D和點F,將△OMD切分為兩個三角形網(wǎng)格。采用上述技術(shù)方案,針對每一個新生成的三角形網(wǎng)格均進行是否存在裂縫的邊的判斷,避免了三角形網(wǎng)格切分過程中造成的裂縫,保證了最終確定的三角形子網(wǎng)格與相鄰三角形子網(wǎng)格之間的連續(xù)性??蛇x的,對上述任意一初始等腰直角三角形網(wǎng)格進行切分后,還可以將生成的三角形子網(wǎng)格的頂點序列存儲至相應的三角形條帶中,并根據(jù)三角形子網(wǎng)格以及三角形子網(wǎng)格對應的三角形條帶生成BDAM(BatchedDynamicAdaptive Meshes,動態(tài)自適應網(wǎng)格)像素圖,保存至本地預先設置的BDAMTIN表中;其中,一個三角形條帶對應一個初始等腰直角三角形網(wǎng)格,用于保存該初始等腰直角三角形網(wǎng)格中包含的每一個三角形子網(wǎng)格的描述信息,該描述信息為三角形子網(wǎng)格的頂點序列等信息,例如,參閱表2所示,為存儲△OCD對應的三角形條帶的BDAMTIN。表2ID(主鍵)BDAMTINID三角形子網(wǎng)格網(wǎng)格信息11(O,M,D)A21(M,E,C)A31(E,F,M)A41(E,F,O)A在表2中,BDAMTINID表示生成的三角形條帶標識;三角形子網(wǎng)格表示該三角形條帶中包含的三角形子網(wǎng)格的頂點序列;網(wǎng)格信息表示正方形網(wǎng)格對應的索引標識。步驟120:根據(jù)每一個三角形子網(wǎng)格所在正方形網(wǎng)格中心點的經(jīng)緯度坐標,分別對每一個三角形子網(wǎng)格的頂點坐標進行轉(zhuǎn)換,得到該每一個三角形子網(wǎng)格相對于所述三角形子網(wǎng)格所在正方形網(wǎng)格中心點的相對頂點坐標。本發(fā)明實施例中,分別獲取每一個三角形子網(wǎng)格的頂點坐標,每一個三角形子網(wǎng)格所在正方形網(wǎng)格中心點的經(jīng)緯度坐標,以及預設的精度單位;針對每一個三角形子網(wǎng)格,均執(zhí)行如下操作:分別根據(jù)三角形子網(wǎng)格的頂點坐標,三角形子網(wǎng)格所在正方形網(wǎng)格中心點的經(jīng)緯度坐標,以及預設的精度單位,分別獲取三角形子網(wǎng)格的每一個頂點相對于所在正方形網(wǎng)格中心點的經(jīng)緯度坐標;將三角形子網(wǎng)格的每一個頂點相對于正方形網(wǎng)格中心點的經(jīng)緯度坐標,作為三角形子網(wǎng)格相對于所述三角形子網(wǎng)格所在正方形網(wǎng)格中心點的相對頂點坐標??蛇x的,上述三角形子網(wǎng)格的相對頂點坐標(即三角形子網(wǎng)格相對于正方形網(wǎng)格中心點的經(jīng)緯度坐標)可以采用如下公式計算:三角形子網(wǎng)格的相對頂點坐標=【(三角形子網(wǎng)格第一個頂點與該三角形子網(wǎng)格所在正方形網(wǎng)格中心點的距離)/精度單位,(三角形子網(wǎng)格第二個頂點與該三角形子網(wǎng)格所在正方形網(wǎng)格中心點的距離)/精度單位,(三角形子網(wǎng)格第三個頂點與該三角形子網(wǎng)格所在正方形網(wǎng)格中心點的距離)/精度單位】其中,三角形子網(wǎng)格的三個頂點的經(jīng)緯度可以從本地存儲的DTM數(shù)據(jù)中獲?。痪葐挝粸楦鶕?jù)具體應用場景預先設置的值,如該值可以設置為30米的距離。可選的,存儲三角形子網(wǎng)格的相對頂點坐標所需要的存儲空間,可以設置為〒2int,其中,該int值根據(jù)正方形網(wǎng)格包含的像素點數(shù)目確定,一般設置為11,并且,正負值表示以正方形網(wǎng)格為中心的笛卡爾坐標系。步驟130:根據(jù)每一個三角形子網(wǎng)格各個頂點所對應的像素點的高程值,獲取每一個三角形子網(wǎng)格的各個頂點的高程值,并獲取該每一個三角形子網(wǎng)格的頂點序列。本發(fā)明實施例中,一個三角形子網(wǎng)格中包含多個像素點,針對三角形子網(wǎng)格的任意一頂點,確定該任意一頂點所對應的像素點,將確定的像素點的高程值作為該任意一頂點的高程值。步驟140:將三角形子網(wǎng)格的相對頂點坐標,三角形子網(wǎng)格的各個頂點的高程值,以及三角形子網(wǎng)格的頂點序列存儲至該三角形子網(wǎng)格對應的三角形條帶中??蛇x的,存儲所有三角形條帶中分別包含的三角形子網(wǎng)格的相對頂點坐標,三角形子網(wǎng)格的高程值,以及三角形子網(wǎng)格的頂點序列;其中,上述三角形子網(wǎng)格為內(nèi)部所包含像素點的高程值滿足預設閾值且不存在裂縫的邊,或者任意一腰邊上包含的像素點數(shù)目等于預設數(shù)目且不存在裂縫的邊。表3ID(主鍵)BDAMTINID網(wǎng)格信息11A22A33A44A最終存儲的不規(guī)則三角形子網(wǎng)格如表3所示。在上述表3中,BDAMTINID表示生成的三角形條帶標識,該三角形條帶標識對應的三角形條帶中包含三角形子網(wǎng)格的頂點標識以及三角形子網(wǎng)格的相對頂點坐標、頂點高程值和頂點序列;網(wǎng)格信息表示正方形網(wǎng)格對應的索引標識??蛇x的,在上述三角形條帶中還可以包含初始等腰直角三角形網(wǎng)格的相對頂點坐標,以滿足在不同精度等級下的圖像呈現(xiàn)。進一步的,將上述所有三角形子網(wǎng)格及其對應的三角形條帶存儲為動態(tài)自適應網(wǎng)格(BDAM)。采用上述技術(shù)方案,采用批量動態(tài)自適應網(wǎng)格的方式對DTM數(shù)據(jù)進行處理,保留了DTM像素圖的地形特征,使得生成的動態(tài)自適應網(wǎng)格的精度與DTM像素圖相比,精度損失肉眼難以覺察;并且,由于采用網(wǎng)格內(nèi)定位的方法生成三角形子網(wǎng)格的相對頂點坐標,極大地降低了導航電子地圖數(shù)據(jù)所占用的存儲空間的大小,導航電子地圖數(shù)據(jù)壓縮率達到98.5%左右。此外,由于將生成的導航電子地圖數(shù)據(jù)存儲為動態(tài)自適應網(wǎng)格(BDAM),更利于OPENGL等渲染軟件的繪制,從而使渲染效率和顯示效果遠遠高于網(wǎng)格式DTM像素圖?;谏鲜黾夹g(shù)方案,參閱圖7所示,本發(fā)明實施例還提供一種導航電子地圖數(shù)據(jù)存儲裝置,包括正方形網(wǎng)格切分單元70,三角形子網(wǎng)格獲取單元71,相對頂點坐標獲取單元72,高程值和頂點序列獲取單元73,以及存儲單元74,其中:正方形網(wǎng)格切分單元70,用于根據(jù)預設的網(wǎng)格范圍,將數(shù)字地面模型DTM像素圖切分為正方形網(wǎng)格;三角形子網(wǎng)格獲取單元71,用于采用三角形二叉樹方法,對所述正方形網(wǎng) 格進行三角形切分,得到三角形子網(wǎng)格以及所述三角形子網(wǎng)格的頂點坐標;相對頂點坐標獲取單元72,用于根據(jù)每一個三角形子網(wǎng)格所在正方形網(wǎng)格中心點的經(jīng)緯度坐標,分別對所述每一個三角形子網(wǎng)格的頂點坐標進行轉(zhuǎn)換,得到所述每一個三角形子網(wǎng)格相對于所述三角形子網(wǎng)格所在正方形網(wǎng)格中心點的相對頂點坐標;高程值和頂點序列獲取單元73,用于根據(jù)所述每一個三角形子網(wǎng)格各個頂點所對應的像素點的高程值,獲取所述每一個三角形子網(wǎng)格的各個頂點的高程值,并獲取所述每一個三角形子網(wǎng)格的頂點序列;存儲單元74,用于將所述三角形子網(wǎng)格的相對頂點坐標,所述三角形子網(wǎng)格的各個頂點的高程值,以及所述三角形子網(wǎng)格的頂點序列存儲至所述三角形子網(wǎng)格對應的三角形條帶中。進一步的,上述裝置還包括高程值更新單元75,用于:采用三角形二叉樹方法,分別對所述正方形網(wǎng)格進行三角形切分之前,根據(jù)切分得到的正方形網(wǎng)格中每相鄰兩個正方形網(wǎng)格的每一對相鄰邊上的像素點的高程值,更新每一對相鄰邊上的像素點的高程值??蛇x的,參閱圖8所示,所述高程值更新單元75還包括相鄰邊獲取子單元750、距離獲取子單元751、像素點獲取子單元752、第一更新子單元753和第二更新子單元754,其中:相鄰邊獲取子單元750,用于獲取生成的正方形網(wǎng)格中每相鄰兩個正方形網(wǎng)格的每一對相鄰邊;距離獲取子單元751,用于根據(jù)每一對相鄰邊上的像素點的位置坐標,獲取每一對相鄰邊中一個相鄰邊上的像素點到另一個相鄰邊上的像素點的距離以及所述另一相鄰邊上的像素點到所述一個相鄰邊上的像素點的距離;像素點獲取子單元752,用于根據(jù)所述像素點之間的距離,獲取距離所述一個相鄰邊上的像素點最近的所述另一個相鄰邊上的像素點以及距離所述另一相鄰邊上的像素點的距離最近的所述一個相鄰邊上的像素點;第一更新子單元753,用于將所述一個相鄰邊上的像素點的高程值更新為其與距離其最近的所述另一個相鄰邊上的像素點的高程值和值的平均值;第二更新子單元754,用于將所述另一相鄰邊上的像素點的高程值更新其與距離其最近的所述一個相鄰邊上的像素點的高程值和值的平均值??蛇x的,參閱圖9所示,所述三角形子網(wǎng)格獲取單元71還包括初始等腰直角三角形網(wǎng)格生成子單元710和確定子單元711,其中:初始等腰直角三角形網(wǎng)格生成子單元710,用于對所述正方形網(wǎng)格進行三角形切分,生成2k個大小相等的初始等腰直角三角形網(wǎng)格,k為預設的切分層級;確定子單元711,用于判斷所述初始等腰直角三角形網(wǎng)格是否滿足預設的切分條件,若是,則將所述初始等腰直角三角形網(wǎng)格確定為生成的三角形子網(wǎng)格,并將所述初始等腰直角三角形網(wǎng)格三個頂點的經(jīng)緯度坐標確定為三角形子網(wǎng)格的頂點坐標,若否,則對所述初始等腰直角三角形網(wǎng)格繼續(xù)進行三角形切分,直至切分得到的三角形網(wǎng)格滿足所述預設的切分條件時,將切分得到的三角形網(wǎng)格確定為生成的三角形子網(wǎng)格,將切分得到的三角形網(wǎng)格的三個頂點的經(jīng)緯度坐標確定為三角形子網(wǎng)格的頂點坐標??蛇x的,所述確定子單元711,具體用于:獲取所述初始等腰直角三角形網(wǎng)格所包含的所有像素點的高程值中的最大高程值和最小高程值;當所述最大高程值和所述最小高程值之差未達到預設閾值時,將所述初始等腰直角三角形網(wǎng)格確定為生成的三角形子網(wǎng)格,并將所述初始等腰直角三角形網(wǎng)格三個頂點的經(jīng)緯度坐標確定為三角形子網(wǎng)格的頂點坐標;或者,獲取所述初始等腰直角三角形網(wǎng)格任意一腰邊上的像素點數(shù)目;當所述任意一腰邊上像素點數(shù)目為預設數(shù)目時,將所述初始等腰直角三角形網(wǎng)格確定為生成的三角形子網(wǎng)格,并將所述初始等腰直角三角形網(wǎng)格三個頂點的經(jīng)緯度坐標確定為三角形子網(wǎng)格的頂點坐標??蛇x的,參閱圖10所示,所述相對頂點坐標獲取單元72還包括三角形子 網(wǎng)格信息獲取子單元720和相對頂點坐標獲取子單元721,其中:三角形子網(wǎng)格信息獲取子單元720,用于分別獲取每一個三角形子網(wǎng)格的頂點坐標,每一個三角形子網(wǎng)格所在正方形網(wǎng)格中心點的經(jīng)緯度坐標,以及預設的精度單位;相對頂點坐標獲取子單元721,用于針對每一個三角形子網(wǎng)格,均執(zhí)行如下操作:根據(jù)所述三角形子網(wǎng)格的頂點坐標,所述三角形子網(wǎng)格所在正方形網(wǎng)格中心點的經(jīng)緯度坐標,以及預設的精度單位,分別獲取所述三角形子網(wǎng)格的每一個頂點相對于所在正方形網(wǎng)格中心點的經(jīng)緯度坐標;將所述三角形子網(wǎng)格的每一個頂點相對于所在正方形網(wǎng)格中心點的經(jīng)緯度坐標,作為所述三角形子網(wǎng)格相對于所在正方形網(wǎng)格中心點的相對頂點坐標。綜上所述,本發(fā)明實施例中,根據(jù)預設的網(wǎng)格范圍,將DTM像素圖切分為正方形網(wǎng)格;采用三角形二叉樹方法,對正方形網(wǎng)格進行三角形切分,得到三角形子網(wǎng)格以及該三角形子網(wǎng)格的頂點坐標;根據(jù)每一個三角形子網(wǎng)格所在正方形網(wǎng)格中心點的經(jīng)緯度坐標,分別對每一個三角形子網(wǎng)格的頂點坐標進行轉(zhuǎn)換,得到該每一個三角形子網(wǎng)格相對于所述三角形子網(wǎng)格所在正方形網(wǎng)格中心點的相對頂點坐標;根據(jù)每一個三角形子網(wǎng)格各個頂點所對應的像素點的高程值,獲取每一個三角形子網(wǎng)格的各個頂點的高程值,并獲取該每一個三角形子網(wǎng)格的頂點序列;將三角形子網(wǎng)格的相對頂點坐標,三角形子網(wǎng)格的各個頂點的高程值,以及三角形子網(wǎng)格的頂點序列存儲至該三角形子網(wǎng)格對應的三角形條帶中。由于本發(fā)明技術(shù)方案是根據(jù)預設的網(wǎng)格范圍,將DTM像素圖切分為正方形網(wǎng)格,再對正方形網(wǎng)格進行三角形切分得到三角形子網(wǎng)格,這樣得到的每一個三角形子網(wǎng)格會包含多個像素點,因此,相對現(xiàn)有技術(shù)采用本發(fā)明減少了網(wǎng)格的個數(shù),同時,本發(fā)明對導航電子地圖數(shù)據(jù)進行存儲時無須存儲每一個像素點的相關信息,僅需要對三角形子網(wǎng)格的相對頂點坐標、各個頂點的高程值以及頂點序列的存儲,由此可見,本發(fā)明相較于現(xiàn)有技術(shù),導航電子地圖數(shù)據(jù)所占用存儲空間較小,從而減輕了導航設備存儲導航電子地圖數(shù)據(jù)的負 擔。本領域內(nèi)的技術(shù)人員應明白,本發(fā)明的實施例可提供為方法、系統(tǒng)、或計算機程序產(chǎn)品。因此,本發(fā)明可采用完全硬件實施例、完全軟件實施例、或結(jié)合軟件和硬件方面的實施例的形式。而且,本發(fā)明可采用在一個或多個其中包含有計算機可用程序代碼的計算機可用存儲介質(zhì)(包括但不限于磁盤存儲器、CD-ROM、光學存儲器等)上實施的計算機程序產(chǎn)品的形式。本發(fā)明是參照根據(jù)本發(fā)明實施例的方法、設備(系統(tǒng))、和計算機程序產(chǎn)品的流程圖和/或方框圖來描述的。應理解可由計算機程序指令實現(xiàn)流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結(jié)合??商峁┻@些計算機程序指令到通用計算機、專用計算機、嵌入式處理機或其他可編程數(shù)據(jù)處理設備的處理器以產(chǎn)生一個機器,使得通過計算機或其他可編程數(shù)據(jù)處理設備的處理器執(zhí)行的指令產(chǎn)生用于實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的裝置。這些計算機程序指令也可存儲在能引導計算機或其他可編程數(shù)據(jù)處理設備以特定方式工作的計算機可讀存儲器中,使得存儲在該計算機可讀存儲器中的指令產(chǎn)生包括指令裝置的制造品,該指令裝置實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能。這些計算機程序指令也可裝載到計算機或其他可編程數(shù)據(jù)處理設備上,使得在計算機或其他可編程設備上執(zhí)行一系列操作步驟以產(chǎn)生計算機實現(xiàn)的處理,從而在計算機或其他可編程設備上執(zhí)行的指令提供用于實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的步驟。盡管已描述了本發(fā)明的優(yōu)選實施例,但本領域內(nèi)的技術(shù)人員一旦得知了基本創(chuàng)造性概念,則可對這些實施例作出另外的變更和修改。所以,所附權(quán)利要求意欲解釋為包括優(yōu)選實施例以及落入本發(fā)明范圍的所有變更和修改。顯然,本領域的技術(shù)人員可以對本發(fā)明實施例進行各種改動和變型而不脫離本發(fā)明實施例的精神和范圍。這樣,倘若本發(fā)明實施例的這些修改和變型屬 于本發(fā)明權(quán)利要求及其等同技術(shù)的范圍之內(nèi),則本發(fā)明也意圖包含這些改動和變型在內(nèi)。當前第1頁1 2 3