亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于C#的國家基本比例尺地形圖分幅與新舊編號查詢實(shí)現(xiàn)

        2013-08-13 09:38:34張宏宇曲苑婷楊金玲曹先革
        關(guān)鍵詞:圖幅行列數(shù)組

        張宏宇,曲苑婷,楊金玲,曹先革

        (1.黑龍江工程學(xué)院 測繪工程學(xué)院,黑龍江 哈爾濱150050;2.東北林業(yè)大學(xué) 林學(xué)院,黑龍江 哈爾濱150040)

        我國幅員遼闊,以至產(chǎn)生的各種比例尺地形圖數(shù)量非常大。為了便于測繪、拼接、管理,防止漏測、重測,將地形按一定的面積、大小進(jìn)行劃分,統(tǒng)一編號十分有必要。同時(shí)地形圖的圖幅編碼有新舊兩種規(guī)則,在生產(chǎn)工作中,存在著新舊圖幅轉(zhuǎn)換的問題,故開發(fā)一個(gè)能自動進(jìn)行新舊圖幅編號轉(zhuǎn)換的程序就有了需求。國家基本比例尺地形圖系列包括1∶100萬、1∶50萬、1∶25萬、1∶10萬、1∶5萬、1∶2.5萬、1∶1萬、1∶5 000。本文利用.net體系下的C#語言實(shí)現(xiàn)了在不同比例尺下地圖新舊編碼的查詢[1-2]。

        1 分幅及新舊編號規(guī)則

        地圖分幅有按經(jīng)緯線的梯形分幅和按平面直角坐標(biāo)網(wǎng)格線的矩形分幅兩種[3]。本文采用梯形分幅。

        新舊圖幅編碼中1∶100萬地形圖的分幅和編號相同,采用國際分幅標(biāo)準(zhǔn)。經(jīng)差6°、緯差4°。但在緯度60°~76°之間為經(jīng)差12°、緯差4°;緯度76°~88°之間為經(jīng)差24°、緯差4°,緯度為88°以上單獨(dú)為1幅來劃分。從地球的赤道起算,分別向南北極每4°為一行,至88°共22行,依次以A,B…V編號。從180°經(jīng)線起,自西向東,每6°為一列,共60列。依次以1,2…60編號[4-5]。

        1)新圖幅編碼。其余比例尺地形圖以百萬圖為基礎(chǔ),按各自經(jīng)差、緯差分幅,行從上到下,列從左到右依次以阿拉伯?dāng)?shù)字編碼,表示行列號。編碼位數(shù)為三位,不足三位前面補(bǔ)0。形成編碼方式為:在1∶100萬圖幅編號之后接代表各比例尺的代碼B~H,再接其行列號,例如:H-51-G-078-024。

        2)舊圖幅編碼。1∶50萬地形圖將1:100萬圖分為2行2列,共4幅,分別以A~D以自然順序編碼,例如H-51-A。1∶25萬圖將百萬圖分為4行4列,共16幅,以1~16編碼,例如 H-51-16。1∶10萬圖將百萬圖分為12行12列,共144幅,以1~144編碼,例如H-51-134。1∶5萬和1∶1萬圖是在1∶10萬圖基礎(chǔ)上,分別分1∶10萬圖為2行2列,共4幅,和8行8列,共64幅。分別以A~D、1~64編碼,例如 H-51-136-A、H-51-136-23。1∶2.5萬圖將1∶5萬圖分為2行2列,分別以1~4編碼,例如H-51-136-A-2。1∶5 000圖分1∶1萬圖為2行2列,以a~d編碼,例如 H-51-136-23-a。

        2 設(shè)計(jì)思路

        本程序可完成兩個(gè)功能:1)根據(jù)已知圖幅編號(包括新圖幅編號和舊圖幅編號)查詢圖幅范圍。2)根據(jù)已知點(diǎn)經(jīng)緯坐標(biāo),確定已知點(diǎn)在不同國家標(biāo)準(zhǔn)比例尺下所屬圖幅的新舊圖幅編號。

        首先對新舊編碼的編碼規(guī)則比較,發(fā)現(xiàn)新編碼更易于編程實(shí)現(xiàn)。通過總結(jié)編碼規(guī)則,發(fā)現(xiàn)舊編碼和新編碼之間存在轉(zhuǎn)換關(guān)系。故將舊編碼轉(zhuǎn)換為新編碼統(tǒng)一運(yùn)算。

        對于功能1),需要確定地圖邊界。而地圖邊界的確定只需確定邊界最大和最小經(jīng)緯度值即可。新編碼的編碼形式為× × × × ×,前兩位為百萬圖幅行列編號,第三位為比例尺,后兩位為在相應(yīng)比例尺中的行列編號。故首先對百萬圖幅按分幅規(guī)則進(jìn)行劃分,利用一個(gè)22行60列二維數(shù)組存放其邊界最大和最小經(jīng)緯度,以數(shù)組下標(biāo)表示行列編碼,即新圖幅編碼中前兩位。對于其他比例尺地形圖,再利用一個(gè)二維數(shù)組,依據(jù)相應(yīng)的分幅規(guī)則對百萬圖進(jìn)行劃分,同樣以數(shù)組下標(biāo)表示行列編碼即舊圖幅編碼的后兩位。在使用功能1)時(shí),只需根據(jù)新編碼第三位確定比例尺大小,依據(jù)相應(yīng)規(guī)則劃分由新編碼前兩位所確定的百萬圖數(shù)組,再根據(jù)最后兩位的值取相應(yīng)的數(shù)組中存儲的經(jīng)緯值即得到該編碼所代表地圖的范圍。

        對于功能2),先劃分百萬圖,通過與數(shù)組內(nèi)存儲的最大最小經(jīng)緯值比較,確定所屬百萬數(shù)組,根據(jù)數(shù)組下標(biāo)即得所屬百萬圖行列編號。再依照所欲查詢的比例尺對百萬圖幅進(jìn)行劃分,做相同比較,確定相應(yīng)比例尺的行列號,得到新圖幅編碼[6]。

        3 程序?qū)崿F(xiàn)及核心算法

        1)運(yùn)行界面如圖1、圖2所示。

        2)將新圖幅編碼轉(zhuǎn)換為舊圖幅編碼算法。通過對新舊編碼的編號規(guī)則的比對,可以發(fā)現(xiàn)新舊編碼之間存在以下函數(shù)關(guān)系:

        (%表示取余ceil()表示向上取整)

        新編碼為:× ×k i j

        舊編碼為:× ×x

        1∶50萬:

        x=2* (i-1)+j

        (例:新編碼為J50B002002,舊編碼為J50D即i=2 j=2代入得x=4對應(yīng)舊編碼格式4即為D)

        1∶25萬:

        x=4* (i-1)+j

        (例:新編碼為J50C004004,舊編碼為J50016即i=4 j=4代入得x=16)

        1∶10萬:

        x=12* (i-1)+j

        (例:新編碼為J50D012012,舊編碼為J50144即i=12 j=12代入得x=144)

        舊編碼為:× ×x y

        1∶5萬:

        x =12* (ceil(i/2)-1)+ceil(j/2)

        y=2*((i-1)%2)+ (j-1)%2+1

        (例:新編碼為J50E024024,舊編碼為J50144D即i=24 j=24代入得x=144 y=4對應(yīng)舊編碼格式4即為D)

        1∶1萬:

        x =12* (ceil(i/8)-1)+ceil(j/8)

        y=8*((i-1)%8)+ (j-1)%8+1

        (例:新編碼為J50G096096,舊編碼為J50144064即i=96 j=96代入得x=144 y=64)

        舊編碼為:× ×x y z

        1∶2.5萬:

        x =12* (ceil(i/4)-1)+ceil(j/4)

        y =2*((ceil(i/2)-1)%2)+((ceil(j/2)-1)%2)+1

        z=2*((i-1)%2)+ ((j-1)%2)+1

        (例:新編碼為J50F048048,舊編碼為J50144D004即i=48 j=48代入得x=144 y=4對應(yīng)舊編碼格式4即為Dz=4)

        3)圖幅劃分。按照新編碼規(guī)則,首先劃分百萬圖幅,代碼如下:

        k= MapCode.code_3-65;

        for(i=0;i<22;i++)

        for(j=0;j<60;j++)

        MapRangeValue mapRangeValue=new MapRangeValue();

        mapRangeValue.rangeValue[0]= 180-6*j;

        mapRangeValue.rangeValue[1]= 174-6*j;

        mapRangeValue.rangeValue[2]=4+4*i;

        mapRangeValue.rangeValue[3]=0+4*i;

        million[i,j]= mapRangeValue;

        4)根據(jù)不同比例尺,按以下方法劃分圖幅。①劃分1:50萬、1:25萬比例尺圖幅:

        millionBase= million[MapCode.code_1 - 65,MapCode.code_2-1];

        for(i=0;i< (2*k);i++)

        for(j=0;j< (2*k);j++)

        MapRangeValue mapRangeValue=new MapRangeValue();

        mapRangeValue.rangeValue[1]= million-Base.rangeValue[1]+ (6.0/(2*k))*j;

        mapRangeValue.rangeValue[0]= mapRangeValue.rangeValue[1]+ (6.0/(2*k));

        mapRangeValue.rangeValue[2]= million-Base.rangeValue[2]- (4.0/(2*k))*i;

        mapRangeValue.rangeValue[3]= mapRangeValue.rangeValue[2]- (4.0/(2*k));

        million[i,j]= mapRangeValue;

        ②劃分其他比例尺地形圖:

        for(i=0;i< (12* Math.Pow(2,k-3));i++)

        for(j=0;j< (12* Math.Pow(2,k-3));j++)

        MapRangeValue mapRangeValue=new MapRangeValue();

        mapRangeValue.rangeValue[1]= million-Base.rangeValue[1]+ (6.0/ (12* Math.Pow(2,k-3)))*j;

        mapRangeValue.rangeValue[0]= mapRangeValue.rangeValue[1] + (6.0 / (12 *Math.Pow(2,k-3)));

        mapRangeValue.rangeValue[2]= million-Base.rangeValue[2]- (4.0/ (12* Math.Pow(2,k-3)))*i;

        mapRangeValue.rangeValue[3]= mapRangeValue.rangeValue[2] - (4.0 / (12 *Math.Pow(2,k-3)));

        million[i,j]= mapRangeValue;

        5)實(shí)現(xiàn)搜索功能。由于數(shù)組中存放著地圖范圍經(jīng)緯度的最大值和最小值,故只需將已知的經(jīng)緯度和數(shù)組中的最值進(jìn)行比較便可確認(rèn)已知點(diǎn)所屬數(shù)組,即可確定行列號,得到新圖幅編碼,再由新編碼進(jìn)行轉(zhuǎn)換得到舊編碼[7-8],流程如圖3所示。

        圖3 工作流程

        實(shí)現(xiàn)確定行列號代碼:

        if(longitude<= mapRangeValue.rangeValue[0] && longitude > = mapRangeValue.rangeValue[1]&&latitude < = mapRangeValue.rangeValue[2]&&latitude > = mapRangeValue.rangeValue[3])

        4 結(jié)束語

        通過計(jì)算機(jī)實(shí)現(xiàn)地形圖分幅編碼查詢,直觀,利于識別,大大方便了地形圖的管理。同時(shí)實(shí)現(xiàn)了新舊編碼的轉(zhuǎn)換,滿足了現(xiàn)實(shí)生產(chǎn)工作中的需要,具有一定的實(shí)用價(jià)值。通過進(jìn)一步完善,本程序可作為地理信息系統(tǒng)存取地形圖的組件,用以組成功能強(qiáng)大、完善的GIS系統(tǒng)。

        [1]項(xiàng)仲貞,許承權(quán),方子巖.中大比例尺地形圖標(biāo)準(zhǔn)分幅與編號查詢系統(tǒng)的實(shí)現(xiàn)[J].鐵道勘察,2008(1):24-26.

        [2]畢旭東,李永樹.AE環(huán)境下宗地圖自動生成模塊的設(shè)計(jì)與實(shí)現(xiàn)[J].測繪工程,2009(1):42-44.

        [3]馬俊海,王文福,祁向前.現(xiàn)代地圖學(xué)理論與技術(shù)[M].哈爾濱:哈爾濱地圖出版社,2008:89-95.

        [4]羅勝,郭海濤,張保明.矢量地圖圖幅裁剪技術(shù)研究[J].測繪工程,2007,16(4):56-59.

        [5]杜軍和.王英.大比例尺地形圖圖幅號查詢的可視化實(shí)現(xiàn)[J].城市勘測,2007(5):67-70.

        [6]李學(xué)民,田耀永,鄧麗霞.國家基本比例尺地形圖的分幅與編號及新舊圖號的轉(zhuǎn)換[J].河南測繪,2007(3):25-26.

        [7]頡耀文.GIS中地圖投影的應(yīng)用[J].黑龍江工程學(xué)院學(xué)報(bào):自然科學(xué)版,2001,5(3):22-25.

        [8]王俊,張文詩,王建濤.多圖幅海量數(shù)據(jù)電子地圖快速顯示的研究與實(shí)現(xiàn)[J].測繪工程,2003,2(3):18-20.

        猜你喜歡
        圖幅行列數(shù)組
        JAVA稀疏矩陣算法
        用“行列排除法”解四宮數(shù)獨(dú)(2)
        用“行列排除法”解四宮數(shù)獨(dú)(1)
        JAVA玩轉(zhuǎn)數(shù)學(xué)之二維數(shù)組排序
        單層小波分解下圖像行列壓縮感知選擇算法
        基于EXCEL的地形圖圖幅號轉(zhuǎn)換查詢方法
        尋找勾股數(shù)組的歷程
        基于ArcMap的圖幅接合表快速生成方法研究
        地形圖圖幅編號規(guī)則及實(shí)現(xiàn)
        城市勘測(2014年4期)2014-06-24 14:33:27
        基于Bing Maps的地形圖圖幅編號的網(wǎng)絡(luò)可視化查詢
        色噜噜狠狠色综合中文字幕| 亚洲av综合av国产av中文| 国产精品你懂的在线播放| 亚洲欧美国产日韩字幕| 人妻少妇精品系列一区二区| 在线观看视频免费播放| 伊人色综合久久天天五月婷| 久久人人97超碰超国产| 产精品无码久久_亚洲国产精| 三级国产高清在线观看| 三级做a全过程在线观看| 97久久精品人人做人人爽| 天天澡天天揉揉AV无码人妻斩 | 日本一区二区三区人妻| 永久黄网站免费视频性色| 欧美国产小视频| 天堂av一区一区一区| 日韩熟女系列中文字幕| 麻豆久久久9性大片| 色噜噜狠狠色综合中文字幕| 国产精品丝袜美女久久| 亚洲av成人无码一二三在线观看| 国模无码人体一区二区| 亚洲成a人片77777kkkkk| 国模91九色精品二三四| 末成年女a∨片一区二区| 97色在线视频| 亚洲中文字幕乱码免费看| 极品少妇xxxx精品少妇偷拍| 高中生粉嫩无套第一次| 欧美成人a视频免费专区| 日本人妻精品有码字幕| 国产精品亚洲αv天堂无码| 日本成人一区二区三区| 亚洲精品综合久久国产二区| 久久人妻av一区二区软件| 亚洲一区二区三区国产精华液 | 亚洲日韩精品一区二区三区无码 | 成年视频国产免费观看| 一区二区三区国产偷拍| 国产精品久久久天天影视|