基于AutoCAD二次開發(fā)的高斯投影轉(zhuǎn)等積割圓錐投影

2014-11-30 余代俊 成都理工大學(xué)

  目前測(cè)制地形圖使用的高斯坐標(biāo)是等角投影,存在面積變形,而在利用地形圖進(jìn)行大面積土地量算時(shí)要求應(yīng)用等積投影地形圖。本文針對(duì)如何在CASS 成圖軟件中實(shí)現(xiàn)高斯投影轉(zhuǎn)換為等積割圓錐投影進(jìn)行闡述,開發(fā)了投影轉(zhuǎn)換功能菜單并進(jìn)行了轉(zhuǎn)換有效性驗(yàn)證,擯棄了傳統(tǒng)的借助其他GIS 軟件進(jìn)行投影轉(zhuǎn)換再求積的工作程序。

一、引言

  在土地開發(fā)整理項(xiàng)目中,地形圖是基于高斯等角投影坐標(biāo)系測(cè)制的,為了編制專題地圖,在提交項(xiàng)目成果時(shí)往往又需要提交用等積割圓錐投影制作的測(cè)區(qū)地形圖。將CASS 成圖軟件測(cè)制的高斯投影地形圖轉(zhuǎn)換成等積割圓錐投影地形圖可以借助現(xiàn)有的各種GIS 軟件來(lái)實(shí)現(xiàn),但這涉及兩個(gè)以上的應(yīng)用軟件及不同的圖形格式轉(zhuǎn)換問(wèn)題。為了簡(jiǎn)化地圖投影轉(zhuǎn)換工作程序,避免轉(zhuǎn)換圖形數(shù)據(jù)差錯(cuò),提高制圖效率,本文在AutoCAD 平臺(tái)上進(jìn)行二次開發(fā),設(shè)計(jì)了投影轉(zhuǎn)換程序作為CASS 軟件的一項(xiàng)功能,功能同時(shí)包括對(duì)不同分類地塊的面積統(tǒng)計(jì),并對(duì)其轉(zhuǎn)換結(jié)果進(jìn)行了比較驗(yàn)證。

二、投影轉(zhuǎn)換模型

  1、高斯-克呂格投影

  高斯-克呂格投影簡(jiǎn)稱高斯投影,是一種等角橫切橢圓柱投影,由高斯于19 世紀(jì)20 年代擬定,后經(jīng)克呂格進(jìn)行修改補(bǔ)充得到的一種投影。除1∶ 100萬(wàn)國(guó)際地圖外,我國(guó)的基本比例尺地形圖和各種大比例尺工程地形圖均采用高斯投影坐標(biāo)系統(tǒng)測(cè)制成圖。高斯投影沒(méi)有角度變形,長(zhǎng)度和面積變形也較小,中央經(jīng)線無(wú)變形,自中央經(jīng)線向投影帶邊緣變形逐漸變擴(kuò)大。高斯投影的圖形保持了相似性和某點(diǎn)在各方向上長(zhǎng)度比的同一性,同時(shí)采用分帶法則,使得各帶之間能夠使用相同的方式進(jìn)行坐標(biāo)計(jì)算,這使得高斯投影在世界各國(guó)得到了廣泛應(yīng)用。

  由高斯平面坐標(biāo)( x,y) 計(jì)算地理坐標(biāo)( φ,λ) 可用高斯投影反算公式實(shí)現(xiàn)。

  2、等積割圓錐投影

  正軸等積割圓錐投影( 即Albers 投影) [2]是一種具有雙標(biāo)準(zhǔn)緯線的等積投影,該投影能夠保證面積不變,緯線投影后為同心圓圓弧,經(jīng)線投影后為圓弧的半徑,經(jīng)線之間的夾角和經(jīng)差成正比。正軸等積圓錐投影是按照等積條件函數(shù)ρ = f( φ) 的形式所確定的一種圓錐投影,它要求投影之后各個(gè)制圖區(qū)域的面積大小保持不變,即面積比等于1( P = a·b = 1) ,其一般公式如下

基于AutoCAD二次開發(fā)的高斯投影轉(zhuǎn)等積割圓錐投影

  式中,ρ 為緯線投影半徑; λ 為地球橢球上兩條經(jīng)線的夾角; δ 為兩條經(jīng)線夾角在平面上的投影; m、n 中數(shù)字大者為a; α、C 為投影常數(shù); F 為經(jīng)差1 弧度從赤道至緯度φ 的橢球面上的梯形面積,單位為km2。

  3、地圖投影變換方法

  地圖投影變換的實(shí)質(zhì)是建立兩個(gè)面場(chǎng)中各個(gè)點(diǎn)之間的一一對(duì)應(yīng)關(guān)系。常用的投影變換有3種:解析變換法、數(shù)值變換法和數(shù)值解析變換法。

  1) 解析變換法是找出兩個(gè)投影間坐標(biāo)變換的公式,分為正解變換法和反解變換法。正解變換法是不需要反解出原地圖投影點(diǎn)的地理坐標(biāo)而直接求出兩種坐標(biāo)系下投影點(diǎn)的直角坐標(biāo)關(guān)系式的方法; 而反解變換法則需要先反解出地理坐標(biāo)。

  2) 數(shù)值變換法是用于計(jì)算原投影點(diǎn)的坐標(biāo)解析式未知,或不易求出兩投影之間的直接關(guān)系而采用的一種多項(xiàng)式逼近方法。

  3) 數(shù)值解析變換法是當(dāng)已知新投影的公式,但不知道原投影的公式時(shí)所采用的一種組合辦法。其先利用數(shù)值變換求出原地圖投影點(diǎn)的地理坐標(biāo),然后利用解析變換法求出新投影點(diǎn)的坐標(biāo)。

  本文采用將高斯-克呂格投影平面直角坐標(biāo)( x,y) 轉(zhuǎn)換為地理坐標(biāo)( φ,λ) ,然后再利用該地理坐標(biāo)轉(zhuǎn)換為等積割圓錐投影下的平面直角坐標(biāo)( X,Y) 的方法進(jìn)行這兩種投影之間的轉(zhuǎn)換,即解析變換法。

三、地圖投影轉(zhuǎn)換實(shí)現(xiàn)

  目前,大多數(shù)土地整理及地籍測(cè)量的地形圖普遍采用CASS 軟件進(jìn)行繪制,而CASS 軟件是基于AutoCAD 平臺(tái)的二次開發(fā)程序。本文采用C#語(yǔ)言對(duì)AutoCAD 進(jìn)行二次開發(fā)實(shí)現(xiàn)高斯投影到等積割圓錐投影的轉(zhuǎn)換,利用AutoCAD 本身的相關(guān)特性,可方便地將DWG 格式的地形圖從高斯投影轉(zhuǎn)換為等積割圓錐投影下的地形圖,以便于面積的量算和統(tǒng)計(jì),免去了利用其他軟件進(jìn)行轉(zhuǎn)換而需要諸多的數(shù)據(jù)格式轉(zhuǎn)換及繁瑣的程序操作。

  該算法的實(shí)現(xiàn)采用Visual Studio 2010 編譯器,結(jié)合AutoCAD 2006,使用C#語(yǔ)言開發(fā)出托管DLL文件。在AutoCAD 中,利用netload 命令加載該DLL文件,即可輸入C#開發(fā)的AutoCAD 命令來(lái)實(shí)現(xiàn)相關(guān)的功能。

  本文使用的投影轉(zhuǎn)換程序設(shè)計(jì)框圖如圖1所示。

  數(shù)據(jù)圖形轉(zhuǎn)換過(guò)程中需保持各圖元的屬性不變,以便繼續(xù)用CASS 軟件編輯等積圖形。轉(zhuǎn)換模型中考慮了因測(cè)區(qū)高程不同而引起的圖塊面積變化因素,并依據(jù)膨脹橢球法原理采用輸入測(cè)區(qū)高程的方法予以修正計(jì)算。另外,設(shè)計(jì)了投影轉(zhuǎn)換前后各分類面積統(tǒng)計(jì)算法和統(tǒng)計(jì)報(bào)表的輸出。

基于AutoCAD二次開發(fā)的高斯投影轉(zhuǎn)等積割圓錐投影

圖1 AutoCAD 二次開發(fā)實(shí)現(xiàn)投影轉(zhuǎn)換流程圖

五、結(jié)束語(yǔ)

  本文所述基于AutoCAD 二次開發(fā)的高斯投影轉(zhuǎn)等積割圓錐投影軟件功能,能夠在最常用的CASS測(cè)圖軟件中直接進(jìn)行圖形投影轉(zhuǎn)換,彌補(bǔ)了CASS軟件的不足,減少了以往需借助其他GIS 軟件進(jìn)行投影轉(zhuǎn)換帶來(lái)的不便和數(shù)據(jù)丟失,提高了工作效率,轉(zhuǎn)換精度可靠,可提高大面積土地面積量算的準(zhǔn)確度。實(shí)踐證明,通過(guò)該方法進(jìn)行轉(zhuǎn)換和利用程序?qū)崿F(xiàn)的結(jié)果能夠滿足實(shí)際生產(chǎn)的需要。