2010-06-19 37 views
2

http://wiki.openstreetmap.org/wiki/Mercator墨卡託投影和縮放

有了上面的鏈接的C#示例中,我能夠投射經/緯度爲x/y座標。但是,我遇到縮放問題。我想知道投影后每個像素有多少長度(以英里爲單位?)。我想在渲染之前將地圖縮放爲每英里500像素或類似的東西。

夥計們,真的沒人回答這個問題嗎?這是很長時間沒有答案。

+2

http://msdn.microsoft.com/en-us/library/bb259689.aspx這一個解釋我需要知道的一切。 ;) – VOX 2010-06-19 16:26:21

回答

1

像素長度不一樣,這取決於你投射的地球的哪個區域。 mercator保留角度,而不是長度。

http://en.wikipedia.org/wiki/Mercator_projection

看地圖 - 周圍的兩極區域被放大相比,赤道。根據你想要做什麼,你最好使用標準化的投影,比如UTM。你應該檢查在你的地圖所在世界的哪個地方使用了哪個投影。

另一種方法是將反向投影應用於兩個像素以獲取地理座標並測量它們之間的大圓距。維基百科有更多的信息,但通常涉及一些數學。

+0

橫軸墨卡託繼承了墨卡託的相同屬性。但是,如果你堅持一個小區域(每英里500像素,你可能就是!),並使用適當的UTM區域,那麼在整個地圖上的比例將會接近足夠。 – MarkJ 2010-06-23 13:55:53