【李婷的回答(8票)】: 首先要確定地圖是不是高斯-克呂格投影。我國1:50萬和更大比例尺地形圖,都采用高斯-克呂格投影,而Google Maps采用的就不是,所以對于Google Maps公里網就沒有意義。感覺公里網只在讀紙地圖的時候估距離和面積有用,電子地圖的量算中好像很少使用它。假設您本來就用的是高斯-克呂格投影的地圖,的確有與公里網相互的需要,那么就用專業(yè)軟件來做好了。ArcGIS就可以實現,操作如下: 1.若地圖圖像沒有經過配準(圖像上點位沒有與地圖坐標系建立對應關系),那么先用ArcGIS配準,大概就是選幾個圖像上已知坐標的點,把它們的坐標輸進去,選擇地圖的投影,ArcGIS就會按照該投影和幾個點的已知坐標,計算圖像上所有點在該投影下的坐標值。ArcGIS提供豐富的投影系統,對于高斯-克呂格投影,需根據地圖所在的投影帶[1]選擇對應的投影。例如北京54坐標系下19分度帶的投影,在ArcGIS中的名稱為Beijing 1954 GK Zone 19。 2.對于本身已在高斯-克呂格投影系統中配準的地圖,ArcGIS本身就提供經緯度坐標和公里網坐標兩種坐標,所以其實已經完成了轉換。 可能這個方法沒有完全解決問題,因為還是沒給出轉換的公式。我認為,做粗轉換的話利用公里網的定義和地球的基本數據是可以將經緯網轉換為公里網,但要精確些,公式還是相當復雜的,畢竟地球嚴格來說不是圓的,所以最好還是依賴經過實踐檢驗的專業(yè)軟件。不知這種功能有沒有API。。 注: [1]關于高斯-克呂格投影、投影帶和公里網的概念,可參考這篇文章:http://iask.sina.com.cn/b/10976212.html 參考: ArcGIS幫助文檔 Georeferencing(配準):http://webhelp.esri.com/arcgisdesktop/9.3/index.cfm?id=3153&pid=3144&topicname=Georeferencing_a_raster_dataset Define Projection:http://webhelp.esri.com/arcgisdesktop/9.3/index.cfm?TopicName=Define_Projection_(Coverage) Transform:http://webhelp.esri.com/arcgisdesktop/9.3/index.cfm?TopicName=Transform_(Coverage) ArcMap Projection Tutorial http://www.gsd.harvard.edu/gis/manual/projections/index.htm#arcgis 【陽鋒的回答(4票)】: 這個問題的表達有些問題,可能提問者對相關內容很不了解。經緯度是地理坐標系(叫經緯度坐標系可能容易理解些)下的坐標,應該對應所謂投影坐標系下的坐標;公里網是投影坐標系下按坐標值間隔劃分的網格,對應經緯度坐標系下的經緯網。我就當提問者要問經緯度和投影坐標如何轉換。 每種投影坐標系下都有公里網,包括我國常用的北京54、西安80等投影坐標系。北京54和西安80本身也定義了經緯度坐標系,這個地理坐標系下的坐標通過李婷所說的高斯-克呂格投影,得到對應的投影坐標系下的坐標。 GoogleMap也有公里網,它用的是所謂Web墨卡托投影投影,只不過對于使用GoogleMap服務的人來說,看到的是經緯度。其實,只要是用平面來顯示地圖的,都肯定是投影過的(地球是球狀,要在平面上表達出其表面,必然要投影),投影過就有公里網。 具體的轉換,每種投影坐標系都定義了其對應的經緯度坐標系和投影方法,有一套公式和參數,利用這套公式可以做正算和反算,所以問題中所說怎么轉換要看是什么坐標系。如果要跨坐標系(其實按標準術語來說,跨基準面做坐標轉換),比如由北京54的投影坐標計算WGS84經緯度,就牽涉到另一個坐標轉換,常用的有布爾莎7參數、Molodensky7參數、Molodensky5參數等方法,公式是簡單,但轉換參數卻跟區(qū)域相關,且屬于保密數據或要自己去測。 當然,很多軟件提供了坐標轉換功能,要看你具體的需要。如果是單純的坐標點轉換,網上有一個軟件叫Coord MG,功能比較強。如果你要跨基準面轉,還需要你有轉換參數。 【李棟的回答(1票)】: 定義好地圖的投影坐標系,這樣就能轉換經緯度和公里網了 【陳子昂的回答(0票)】: 利用mapgis把經緯度轉公里網,百度上查的,希望幫到你 【許劍森的回答(0票)】: 是不是有個換算公式,但是不準確 |
|