• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于Visual Lisp的矢量地圖柵格化技術(shù)研究與實現(xiàn)

      2014-07-01 17:28:23黎慕韓沈飛飛尹志永
      城市勘測 2014年5期
      關(guān)鍵詞:柵格切片矢量

      黎慕韓,沈飛飛,趙 言,尹志永

      (天津市測繪院,天津 300381)

      基于Visual Lisp的矢量地圖柵格化技術(shù)研究與實現(xiàn)

      黎慕韓?,沈飛飛,趙 言,尹志永

      (天津市測繪院,天津 300381)

      矢量地圖柵格化是移動終端設(shè)備GIS應(yīng)用程序開發(fā)的關(guān)鍵模塊,本文通過對矢量地圖柵格化技術(shù)方法的研究,提出了一種基于Visual Lisp的矢量地圖快速柵格化方法,開發(fā)了矢量地圖快速柵格化工具,實現(xiàn)了矢量地圖數(shù)據(jù)在移動終端設(shè)備上的展示和共享。

      AutoCAD;Visual Lisp;矢量地圖;柵格化;移動終端

      1 引 言

      隨著移動計算機和圖形軟件技術(shù)的快速發(fā)展,高性能的智能移動終端越來越普及,像基于iOS系統(tǒng)的iPad系列平板電腦以及更多的基于Android系統(tǒng)的平板電腦以及智能手機等等,它們有一個共同的特點:易攜帶、屏幕大、顯示效果精細(xì)、觸摸式互交操作;同時它還集成了網(wǎng)絡(luò)、照相、定位等等模塊。因此,本文提出并實現(xiàn)了一種基于Visual Lisp的矢量地圖柵格化方法,將地圖數(shù)據(jù)與智能移動終端高效結(jié)合,在移動終端顯示、操作、編輯、使用地形圖數(shù)據(jù),為移動終端應(yīng)用程序開發(fā)提供服務(wù)。

      2 矢量地圖柵格化技術(shù)

      2.1 移動終端調(diào)問地圖策略的選擇

      目前,矢量地圖數(shù)據(jù)格式種類繁多,如本文將要研究的Dwg格式的地形圖數(shù)據(jù)文件,其數(shù)據(jù)結(jié)構(gòu)屬于Autodesk公司的商業(yè)秘密,目前并未向iOS和Android等移動平臺提供Dwg數(shù)據(jù)的API訪問接口,一些處理CAD圖形的專業(yè)人士往往能直接對dwg文件進行讀寫操作,但這種方法需要從底層實現(xiàn),非常復(fù)雜,往往得不償失。

      通過對ArcGIS 10中動態(tài)調(diào)用松散型地圖切片模式的研究,可將矢量格式的Dwg地形圖按照ArcGIS松散型地圖切片格式打包,然后利用ArcGIS開放的API函數(shù),在移動終端中編程,變相實現(xiàn)對Dwg地形圖數(shù)據(jù)的調(diào)用。

      2.2 組織切片文件

      在GIS中,切片文件是以層的概念來組織的,如L00、L01、L02……。不同的層,表示矢量地圖數(shù)據(jù)在不同的地圖比例尺時所輸出的柵格圖片的集合,對應(yīng)在地圖上,一層切片就是一張完整的地圖。在同一層內(nèi),按照預(yù)先設(shè)置好的切片間隔、切圖比例以及像素大小,將矢量數(shù)據(jù)劃分為若干個區(qū)域分別輸出柵格圖片,柵格圖片按照所在行位置的不同建立文件夾,如R00000000、R00000001、R00000002等,然后按照每張柵格圖片按照所在列的不同命名,如C00000000.jpg、C00000001.jpg、C00000002.jpg等,具體文件組織形式如圖1所示:

      圖1 輸出柵格圖片格式

      圖1 中,conf.xml和conf.cdi為切片配置文件,它定義了柵格數(shù)據(jù)包的層級結(jié)構(gòu)、切圖范圍以及不同層的切片間隔、切圖比例以及像素大小。

      2.3 制作切片數(shù)據(jù)

      那么針對一張矢量地圖,這里采用AutoCAD自帶的二次開發(fā)工具Visual Lisp作為開發(fā)工具,它提供了一個完整的集成開發(fā)環(huán)境(IDE),包括編譯器、調(diào)試器和其他工具。部分編程思路及代碼如下:

      對于一張DWG地圖,首先必須明確幾個關(guān)鍵參數(shù):

      (setq Pixel 256);;設(shè)置輸出圖片的像素

      (setq Level 7);;設(shè)置切圖的級別

      (setq Resolution 200) ;;設(shè)置像素的分辨率參數(shù)

      (setq Scale 500) ;;設(shè)置地圖比例尺;;確定坐標(biāo)范圍:

      (setq extmin(getvar"extmin"))

      (setq extmax(getvar"extmax"))

      根據(jù)這些參數(shù),計算出各個級別要輸出的圖片數(shù)量以及每一張圖片對應(yīng)的左下角、右上角坐標(biāo)范圍,所在級別以及行列位置,然后輸出到相對應(yīng)的文件夾下。

      一般來說,從AutoCAD輸出圖片有4種方法,一是調(diào)用Windows API直接拷屏,然后根據(jù)地圖視圖的位置在拷屏獲得的圖片上去截取,這種方法涉及對圖片的處理,用Lisp來處理有難度,而且速度上不占優(yōu)勢。二是利用AutoCAD自有的虛擬打印技術(shù),它的優(yōu)點是不需要待輸出的對象在視圖中顯示出來,可以自定義輸出坐標(biāo)范圍、像素,但是缺點是速度慢。三是用Export方法來輸出,格式單一,一般只能輸出BMP格式,圖片占儲存空間較大。最后一種方法,就是直接利用AutoCAD內(nèi)建的命令Jpgout來輸出制定坐標(biāo)范圍的地圖,先設(shè)置好視口的像素大小,然后讓當(dāng)前視口顯示到地圖中要輸出的坐標(biāo)范圍,然后指定輸出路徑和名稱,整體速度非??臁?/p>

      調(diào)整視口到指定像素:

      (defun ChangeScreenSize(Width height doc/oldsize ori_w ori_h dw dh)

      (setq oldsize(getvar"SCREENSIZE"))

      (setq ori_h(vla-get-height doc))

      (setq ori_w(vla-get-width doc))

      (setq dw(-ori_w(car oldsize)))

      (setq dh(-ori_h(cadr oldsize)))

      (vla-put-width doc(+dw width))

      (vla-put-height doc(+dh height)))

      Jpg圖片輸出:

      (defun jpg_out(lst acadobj/i x len lenstr)

      (setq i 0)

      (setq len(length lst))

      (repeat len

      (setq x(nth i lst))

      (vla-ZoomWindow acadobj

      (vlax-3d-point(nth 0 x))

      (vlax-3d-point(nth 1 x)))

      (vl-cmdf"jpgout"(nth 2 x)"")

      (setq i(1+i))))

      采用這種方法,柵格化處理的效率非常高,經(jīng)過實驗驗證,一張5 km2的1∶500地形圖,當(dāng)切圖級別為5級,輸出圖片的像素為512×512像素時,柵格化切片的時間是5 min,共計輸出有效圖片6 990張,并且柵格化地形圖在移動終端中的顯示效果清晰流暢。

      3 應(yīng)用實例

      在傳統(tǒng)的地形圖外業(yè)檢查模式中,前期準(zhǔn)備必須先將地圖數(shù)據(jù)進行分幅,然后按照一定的比例尺噴繪成紙質(zhì)地圖作為外業(yè)檢查依據(jù),檢查過程中靠手工書寫記錄錯誤位置以及錯誤情況,最后逐條進行后期數(shù)據(jù)錄入工作,這樣的作業(yè)模式工作量大且容易出錯。

      基于以上矢量地圖快速柵格化的方法,利用自主開發(fā)的矢量地圖快速柵格化工具進行切片,只需將待檢查的整片地形圖數(shù)據(jù)切片打包,然后就可以移動終端上進行地圖數(shù)據(jù)的查看、瀏覽,實時記錄檢查過程中位置、范圍以及屬性信息,自動化輸出檢查成果。采用這一平臺之后,檢查工作更加系統(tǒng)化、條理化,提高效率的同時,減少了人為錯誤的產(chǎn)生。具體顯示效果如圖2所示:

      圖2 iPad調(diào)用切片數(shù)據(jù)截圖

      4 結(jié) 論

      通過對矢量地圖柵格化技術(shù)的研究,本文在Visual Lisp開發(fā)平臺下實現(xiàn)矢量數(shù)據(jù)柵格化處理,在各種移動終端提供圖形發(fā)布調(diào)用,既保證了數(shù)據(jù)的安全性又有效解決了AutoCAD格式矢量數(shù)據(jù)的展示和共享。

      參考文獻

      [1] 李長勛.AutoCAD ActiveX二次開發(fā)技術(shù)[M].北京:國防工業(yè)出版社,2005.

      [2] 江雪松.AutoCAD 2000二次開發(fā)指南[M].北京:國防工業(yè)出版社,

      [3] Autodesk.AutoCAD VBA Developers′Guide.AutodeskInc [R].2009.

      [4] Esri中國信息技術(shù)有限公司.ArcGIS 10高級地圖緩存策略[R].2012.

      The Research and Implement on Vector Map Rasterizing Technology Based on Visual Lisp

      Li Muhan,Shen Feifei,Zhao Yan,Yin Zhiyong
      (Tianjin Institute of Surveying and Mapping,Tianjin 300381,China)

      Vector map rasterizing is the key module to the mobile terminal equipment of GIS application development.Through to the research of vector map rasterizing method,this paper proposed a quick vector map rasterizing method based on Visual Lisp,and a quick vector map raterizing tool was deleloped,the vector map data showing and sharing on mobile devices was realized.

      AutoCAD;Visual Lisp;vector map;rasterize;mobile terminal

      2014—03—12

      黎慕韓(1978—),男,高級工程師,主要從事城市測量技術(shù)工作。

      猜你喜歡
      柵格切片矢量
      基于鄰域柵格篩選的點云邊緣點提取方法*
      矢量三角形法的應(yīng)用
      基于SDN與NFV的網(wǎng)絡(luò)切片架構(gòu)
      基于矢量最優(yōu)估計的穩(wěn)健測向方法
      三角形法則在動態(tài)平衡問題中的應(yīng)用
      腎穿刺組織冷凍切片技術(shù)的改進方法
      不同剖面形狀的柵格壁對柵格翼氣動特性的影響
      冰凍切片、快速石蠟切片在中樞神經(jīng)系統(tǒng)腫瘤診斷中的應(yīng)用價值比較
      基于CVT排布的非周期柵格密度加權(quán)陣設(shè)計
      動態(tài)柵格劃分的光線追蹤場景繪制
      邵阳县| 安义县| 灌云县| 剑河县| 广灵县| 阿城市| 镇赉县| 禄劝| 开封市| 杭锦旗| 仁化县| 寻乌县| 徐州市| 宿松县| 远安县| 兰州市| 东乌| 栾川县| 寻甸| 新干县| 甘泉县| 长岛县| 韶关市| 锡林浩特市| 北票市| 溧水县| 八宿县| 洪洞县| 陈巴尔虎旗| 湄潭县| 拉萨市| 堆龙德庆县| 汾阳市| 静海县| 山丹县| 沧州市| 定结县| 黑河市| 岗巴县| 荣成市| 武邑县|