2010-09-17 126 views
5

我想弄清楚如何在位圖上繪製WGS84緯度/經度點,但無法找出將經緯度點轉換爲可繪製座標所需的數學運算。任何人都可以給我一些指導或例子如何做到這一點?如何繪製屏幕上的緯度/經度座標?

感謝

科林

+8

您使用哪個[projection](http://en.wikipedia.org/wiki/Map_projection)?如果你不知道那個問題的含義,那麼考慮「瞭解地圖投影」是你的第一個指針。 – 2010-09-17 21:45:38

+0

此外,當你說你不能「算出」數學,這是否意味着你已經找到了轉換公式,不知道如何將它們應用到你的程序中,或者這是否意味着你不知道什麼是公式是? – 2010-09-17 21:52:18

+0

我正在討論如何將緯度/經度轉換爲XY來繪製位圖 – colin 2010-09-17 22:17:22

回答

5

車削經緯度到的x,y用於繪圖像上的位圖的平坦2D表面是一個龐大而複雜的課題。

有關此的一般信息,請參閱維基百科上的map Projections

在一般的網站,如谷歌地圖和冰通過使用一個完美的球體上的墨卡託投影解決了這個問題,它可以很容易地覆蓋大部分地球(除了南/北極)並且對大多數目的來說是'夠用'的。但是,這些都是很大的假設,這取決於您的照片需要的準確程度以及他們需要保留的內容。

不幸的是,我不知道delpi是否足夠提供源代碼,但墨卡託投影的數學方法已有詳細記錄here

如果精度完全不是問題,而你的觀點是「靠近在一起」的話,最簡單的方法就是簡單地使用常數因子和偏移量將緯度/經度轉換爲適合你的位圖的x和y值。

這可能會使您的照片在北/南方向略微擠壓,但通常會產生非常像墨卡託一樣的圖像,而沒有自然對數和正弦/正切調用。

0

正如已經MerickOWA提到的,沒有正確答案的問題,因爲它依賴於規模的你正在努力工作,以及您需要的準確性。這主要取決於您正在討論的.bmp上的內容。如果它是墨卡託投影中的全球地圖,那麼格雷格的答案會給你一些指示。如果它是一張本地地圖,那麼它將取決於地圖所使用的數據,並且使用的投影(和數據將主要由所涉國家的國家當局確定)。儘管如此,如果你想要做的只是將GPS提供的Lat Lon(GS84基準)投影到覆蓋緯度區域<的局部地圖上,那麼你可能做得比投影WGS84 Lat Lon更糟WGS84 UTM投影,然後縮放(可能)旋轉地圖以適應2個已知座標。

這裏的鏈接應該給予一定的幫助http://www.uwgb.edu/dutchs/usefuldata/utmformulas.htm

+0

當我說出一個位圖時,我真的想要用空白位圖來處理Timage,我不希望將這些座標疊加在地圖或圖像上讓他們在相對位置上畫在屏幕上。它更多如何採取經緯度並轉換爲XY而不是疊加在圖像上 – colin 2010-09-18 18:28:23