999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于arcengine10的dem數(shù)據(jù)自動(dòng)接邊檢查實(shí)現(xiàn)

2012-04-29 00:00:00彭珊鸰李軍廖明肖田
科技資訊 2012年18期

摘 要:實(shí)際生產(chǎn)數(shù)據(jù)管理中,DEM數(shù)據(jù)的接邊不一致非常普遍。然而DEM數(shù)據(jù)接邊檢查卻是一項(xiàng)繁重的任務(wù)。本文基于arcengine10新增的柵格數(shù)據(jù)接口實(shí)現(xiàn)DEM數(shù)據(jù)自動(dòng)接邊檢查,并運(yùn)到到實(shí)際生產(chǎn)過(guò)程中。極大的提高了工作效率。

關(guān)鍵詞:dem 數(shù)據(jù)接邊 arcengine10

中圖分類號(hào):P2文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):1672-3791(2012)06(c)-0009-02

實(shí)際生產(chǎn)中,圖幅接邊是其中重要的一環(huán)。而dem(數(shù)字高程模型)數(shù)據(jù)與常用的點(diǎn)、線、面矢量數(shù)據(jù)不同,其采用柵格矩形格網(wǎng)形式表達(dá)。格網(wǎng)DEM的一個(gè)缺點(diǎn)是數(shù)據(jù)量過(guò)大,給數(shù)據(jù)管理帶來(lái)了不方便。日常管理中發(fā)現(xiàn),DEM數(shù)據(jù)接邊處不一樣問(wèn)題很普遍。DEM接邊要求很嚴(yán)格,必須嚴(yán)格吻合既相同格網(wǎng)高程值必須一樣,不允許有限差,而且柵格格網(wǎng)個(gè)數(shù)特別多。這就使得在日常生產(chǎn)管理中,DEM數(shù)據(jù)的接邊及接邊檢查非常繁重。

1 ArcEngine10新增操作柵格數(shù)據(jù)接口

DEM數(shù)據(jù)為矩形格網(wǎng),其兩者相交區(qū)域也必然為矩形格網(wǎng)。要實(shí)現(xiàn)DEM數(shù)據(jù)的接邊檢查,就要查看2個(gè)相鄰DEM重疊格網(wǎng)信息,就要對(duì)重疊格網(wǎng)每一個(gè)單元進(jìn)行讀取操作。在arcEngine10之前的版本中,對(duì)柵格數(shù)據(jù)的操作采用的是光標(biāo)法(rastercursor),其方法是將柵格數(shù)據(jù)自動(dòng)分成幾個(gè)光標(biāo)塊,再將光標(biāo)塊當(dāng)成像素塊(PixelBlock)的集合,再操作像素塊集合從而操作每一個(gè)像素塊(也就的單元格網(wǎng))。該方法通過(guò)操作柵格數(shù)據(jù)中光標(biāo)塊內(nèi)部單元格網(wǎng),對(duì)其進(jìn)行讀取、修改等操作,但是卻不能對(duì)指定單元格網(wǎng)(具體的某一個(gè))進(jìn)行讀取、修改等操作,其只能對(duì)某個(gè)光標(biāo)塊中的單元格網(wǎng)進(jìn)行操作,而光標(biāo)塊大小在整個(gè)柵格中的具體位置很難判斷。從而得到不到某個(gè)單元格網(wǎng)的具體坐標(biāo)位置。在ArcGis10版本中新增加一個(gè)RawBlocks對(duì)象,并且實(shí)現(xiàn)IRawBlock接口,通過(guò)該接口可以得到某個(gè)單元格網(wǎng)(像素塊)的具體坐標(biāo)位置。該RawBlocks對(duì)象實(shí)現(xiàn)不通過(guò)以上光標(biāo)法對(duì)柵格數(shù)據(jù)進(jìn)行操作,而是通過(guò)瓦片(tiling)方法進(jìn)行操作。IRawBlocks接口實(shí)現(xiàn)5個(gè)成員如表1所示。

而RasterInfo方法得到一個(gè)RasterInfo對(duì)象,該對(duì)象同樣為arcengine10新增類。其主要用處為:獲得柵格數(shù)據(jù)的坐標(biāo)原點(diǎn),柵格數(shù)據(jù)坐標(biāo)范圍,單元格網(wǎng)大小(x,y軸大小數(shù)值),單元格網(wǎng)的行數(shù)(BlockHeight),列數(shù)(BlockWidth)等。RawBlocks對(duì)象操作柵格數(shù)據(jù)的具體用法如以下幾點(diǎn)。

(1)將單波段柵格數(shù)據(jù)直接賦予Raw-Blocks對(duì)象,多波段的數(shù)據(jù)分波段賦予RawBlocks對(duì)象。(2)通過(guò)RasterInfo方法得到RasterInfo對(duì)象,得到各個(gè)具體瓦片。(3)在每個(gè)瓦片中,得到具體的單元格網(wǎng),從而對(duì)柵格格網(wǎng)進(jìn)行操作。(4)通過(guò)瓦片坐標(biāo),瓦片中單元格網(wǎng)的位置,得到單元格網(wǎng)的具體坐標(biāo)。

2 Dem數(shù)據(jù)接邊檢查

分幅的DEM數(shù)據(jù)必須進(jìn)行接邊。因?yàn)镈EM數(shù)據(jù)是用柵格格網(wǎng)表達(dá),對(duì)其進(jìn)行接邊就是要講兩兩相鄰數(shù)據(jù)重疊處的每個(gè)格網(wǎng)進(jìn)行高程值的一致性處理。因?yàn)闁鸥窀窬W(wǎng)個(gè)數(shù)特別多,其接邊首先要進(jìn)行接邊處檢查,判斷具體格網(wǎng)高程值是否需要修改。對(duì)等待接邊檢查的DEM數(shù)據(jù)2幅DEM數(shù)據(jù)進(jìn)行接邊檢查,其流程可以概括如圖1。

3 實(shí)驗(yàn)

在vs2010環(huán)境,基于C#+ArcEngine10編程實(shí)現(xiàn)DEM數(shù)據(jù)自動(dòng)接邊檢查程序。兩DEM數(shù)據(jù)相減后得到相交區(qū)域的矩形格網(wǎng)后,如果接邊一致,那么其單元格網(wǎng)應(yīng)該為0值。對(duì)格網(wǎng)內(nèi)部單元格網(wǎng)進(jìn)行0值檢查為程序核心。程序核心操作為:對(duì)柵格數(shù)據(jù)由系統(tǒng)分得的瓦片逐一檢查,然后將瓦片中的具體格網(wǎng)的值進(jìn)行非0判斷,為非0則記錄該格網(wǎng)的中心坐標(biāo)等信息。

部分的代碼如下:

for (int pbYcursor = startY; pbYcursor < endY; pbYcursor++)

{

for (int pbXcursor = startX; pbXcursor < endX; pbXcursor++)

{

rawBlocks.ReadBlock(pbXcursor, pbYcursor, 0, pb);

System.Array safeArray = (System.Array)pb.get_SafeArray(0);

for (int safeArrayHeight = 0; safeArrayHeight < pb.Height; safeArrayHeight++)

{

for (int safeArrayWidth = 0; safeArrayWidth < pb.Width; safeArrayWidth++)

{

object value = safeArray.GetValue(safeArrayWidth, safeArrayHeight);

double dVal = Convert.ToDouble(value);

if (!Math.Equals(dVal, 0.0) !Math.Equals(dVal, -3.4028234663852886E+38))

{

IPoint p_val = new ESRI.ArcGIS.Geometry.Point ();

p_val.X = rasInfo.Origin.X + (pbXcursor * rasInfo.BlockWidth + safeArrayWidth + 0.5) * rasInfo.CellSize.X;

p_val.Y = rasInfo.Origin.Y - ( rasInfo.BlockHeight * pbYcursor+safeArrayHeight + 0.5) * rasInfo.CellSize.Y;

}

}

}

}

}

我們對(duì)實(shí)際DEM數(shù)據(jù)進(jìn)行了自動(dòng)接邊檢查實(shí)驗(yàn)。對(duì)同一度帶下1∶1萬(wàn)的DEM數(shù)據(jù)共932幅進(jìn)行接邊檢查,其中有兩兩相交后產(chǎn)生的新數(shù)據(jù)共3081個(gè)。有接邊問(wèn)題的相交區(qū)域共204個(gè),檢查出有非0值的高程不一致的格網(wǎng)個(gè)數(shù)共111282個(gè),需要修改。運(yùn)行耗時(shí)3小時(shí)07分鐘。

4 結(jié)語(yǔ)

本文介紹了arcengine10新增柵格數(shù)據(jù)操作對(duì)象RawBlocks對(duì)象及其IRawBlock接口,提出了對(duì)DEM數(shù)據(jù)自動(dòng)接邊檢查流程,最后實(shí)現(xiàn)了DEM數(shù)據(jù)自動(dòng)接邊檢查并運(yùn)用到實(shí)際生產(chǎn)當(dāng)中。DEM數(shù)據(jù)接邊檢查任務(wù)繁雜,細(xì)致,通過(guò)基于arcengine的自動(dòng)接邊檢查程序,提高了生產(chǎn)效率。今后的研究中將著力解決程序運(yùn)行速度問(wèn)題,將程序進(jìn)行優(yōu)化,縮短運(yùn)行時(shí)間,從而使得生產(chǎn)效率更高效。

參考文獻(xiàn)

[1]塢倫.地理信息系統(tǒng)原理、方法和應(yīng)用[M].科學(xué)出版社,2000.

[2]胡鵬,黃杏元,華一新,地理信息系統(tǒng)教程[M].武漢大學(xué)出版社,2002,2.

主站蜘蛛池模板: 国内精品久久久久久久久久影视 | 国产xxxxx免费视频| 曰韩免费无码AV一区二区| 熟妇丰满人妻| 亚洲人网站| 午夜啪啪网| 亚洲天堂免费观看| 凹凸国产分类在线观看| 色综合a怡红院怡红院首页| 中文字幕久久精品波多野结| 国产精品一区二区在线播放| 亚洲视频黄| 久久综合成人| 久久免费精品琪琪| 精品综合久久久久久97| 少妇精品在线| 中文字幕亚洲电影| 亚洲色成人www在线观看| 高清无码手机在线观看| 国产在线自在拍91精品黑人| 色AV色 综合网站| 国产亚洲精品资源在线26u| 人妻精品久久无码区| 国产精品香蕉在线| 人妻精品久久无码区| 国产精品视频a| 高清欧美性猛交XXXX黑人猛交| 欧洲高清无码在线| 四虎永久免费地址| 国产在线拍偷自揄拍精品| 麻豆AV网站免费进入| 国产成人亚洲精品无码电影| 国产一区二区免费播放| 天堂网亚洲系列亚洲系列| 欧美日韩动态图| 亚洲国产精品不卡在线| 久久大香香蕉国产免费网站| 99九九成人免费视频精品| 天天综合网亚洲网站| 91欧美在线| 国产成人高精品免费视频| 欧美日韩第三页| 久久6免费视频| 国产成人精品在线| 日韩av高清无码一区二区三区| 国产成人精品一区二区三区| 成人综合久久综合| 亚洲婷婷六月| 亚洲人成网站色7799在线播放| 午夜视频www| 国产视频资源在线观看| 亚洲精品卡2卡3卡4卡5卡区| 国内黄色精品| 国产女人在线观看| 黄色片中文字幕| 四虎永久免费地址| 乱人伦视频中文字幕在线| 欧美激情视频一区二区三区免费| 有专无码视频| 国产浮力第一页永久地址| 久久久久无码精品| 婷五月综合| 欧美啪啪一区| 丁香综合在线| 67194亚洲无码| 日韩毛片基地| www.精品视频| 六月婷婷激情综合| 欧美在线天堂| 国产97视频在线观看| 一本一道波多野结衣一区二区| 日韩天堂视频| 欧美日本一区二区三区免费| 久久99国产综合精品1| 欧美激情综合一区二区| 国产精品第5页| 国产呦视频免费视频在线观看| 丁香婷婷久久| 日韩美毛片| 亚洲五月激情网| 亚洲第一视频网| 成人日韩视频|