先看以下幾個(gè)現(xiàn)象: 1. 通過(guò)GPS模塊獲取的坐標(biāo)數(shù)據(jù)在Google地圖標(biāo)記,,發(fā)現(xiàn)與真實(shí)位置相差甚遠(yuǎn) 2. 通過(guò)Google地球軟件獲取的坐標(biāo)數(shù)據(jù)在Google地圖標(biāo)記,也與真實(shí)位置相差甚遠(yuǎn),;因?yàn)镚oogle地球反饋的坐標(biāo)信息也是通過(guò)衛(wèi)星GPS獲取的,。 3. 通過(guò)Google地圖(網(wǎng)頁(yè)版,右鍵“這是什么”即可查看)獲取的坐標(biāo)數(shù)據(jù)在Google地圖標(biāo)記,,可以精確的標(biāo)記到Google地圖上,。 然后了解幾個(gè)術(shù)語(yǔ): 1. 火星坐標(biāo)系:天朝有關(guān)部門(mén)規(guī)定,為了保證國(guó)家安全,,所有的地圖公司提供的地圖必須對(duì)實(shí)際的GPS坐標(biāo)進(jìn)行一定的偏移,,偏移后的GPS坐標(biāo)系俗稱火星坐標(biāo)系,而這個(gè)偏移是不固定的,,具體的算法是國(guó)家機(jī)密,。 2. WGS84:國(guó)際通行的坐標(biāo)體系標(biāo)準(zhǔn),而GPS模塊獲取到的坐標(biāo)正是WGS84坐標(biāo)系 3. 北京54坐標(biāo)系/西安80坐標(biāo)系:天朝通用的經(jīng)過(guò)偏移后的坐標(biāo)系標(biāo)準(zhǔn)(而民航使用的是國(guó)際標(biāo)準(zhǔn)WGS84,,否則國(guó)際航班沒(méi)法正常飛行) 網(wǎng)上牛人給的解決方法: 1. 網(wǎng)頁(yè)在線版:http://map./gps.html,,其中第一個(gè)GPS原始數(shù)據(jù)轉(zhuǎn)換結(jié)果還比較準(zhǔn)確 2. C語(yǔ)言實(shí)現(xiàn)版:http:///131.html (需要加載一個(gè)78M的數(shù)據(jù)文件,普通手持設(shè)備可能比較吃力) 3. C#版:基于C語(yǔ)言而來(lái),,http://freshflower./blog/1606960 4. 通過(guò)百度API轉(zhuǎn)換:http://blog.csdn.net/gengye304/article/details/7942219 后來(lái)又找到一個(gè)比較簡(jiǎn)單的換算方法:比如給出一個(gè)DMS座標(biāo)例如W87°43'41 ",,它是瑣細(xì)的轉(zhuǎn)換它成一定數(shù)量的小數(shù)程度運(yùn)用以下方法: - 計(jì)算秒鐘, 43 ' 41的總數(shù)" = (43*60 + 41) = 2621秒,。
- 分?jǐn)?shù)部分是3600除的秒鐘的總數(shù),。 2621/3600 = 0.728056
- 增加分?jǐn)?shù)程度到整體程度導(dǎo)致決賽成績(jī): 87 + 0.728056 = 87.728056
- 因?yàn)樗俏鞑拷?jīng)度座標(biāo),結(jié)果應(yīng)該以負(fù)數(shù)表示:-87.728056
轉(zhuǎn)換從小數(shù)程度嚮DMS 給出一個(gè)小數(shù)縱向座標(biāo)例如-87.728055它瑣細(xì)的轉(zhuǎn)換它成DMS形式,。 知道將是必要的它是否是一個(gè)緯度或縱向座標(biāo)為了充分地轉(zhuǎn)換它,。 方法是如下: - 減去座標(biāo)的整數(shù)部分,離開(kāi)分?jǐn)?shù)part,。 整數(shù)是程度的數(shù)量,。 87.728055 = 87度。
- 乘剩餘的分?jǐn)?shù)部分以60,。 這在整數(shù)部分將導(dǎo)致一定數(shù)量的分鐘,。 0.728055 x 60 = 43.6833 = 43分鐘。
- 乘分鐘的數(shù)量的分?jǐn)?shù)部分以60,,導(dǎo)致一定數(shù)量的秒鐘,。 0.6833 x 60 = 40.998 = 41秒,。 算作是此40秒,削小數(shù),,圓它到41是可能的,,或者保留整個(gè)數(shù)字,。
|