我需要将纬度经度值转换为像素位置以及相反。我发现很多解决方案都是从lat/lng-> pixel,但是却找不到相反的东西。将像素位置转换为经度和纬度
有两点要注意:
- 的地图大小是固定的,没有变焦,没有砖。
- 我不需要任何超级准确的东西,它并不重要。
- 最好是墨卡托投影,但不是必需的。我实际上并没有显示结果。 (任何2D投影)
- 我不能依赖于任何基于Web的API的,即:没有谷歌地图
一个在几乎任何编程语言的解决办法是罚款,只要它不依赖于任何平台特定的API。
这是从拉丁语去一个例子/ lng->像素:
var y = Math.round(((-1 * lat) + 90) * (this.MAP_HEIGHT/180));
var x = Math.round((lng + 180) * (this.MAP_WIDTH/360));
您需要知道计算必须为哪个映射投影。您的问题中的示例计算将不适用于墨卡托地图;它假设一个[equirectangular projection](http://en.wikipedia.org/wiki/Equirectangular_projection)。 –
我开放给任何2D投影,equirectangular将完全满足我的需求。我没有看到结果,所以我没有被绑定到特定的预测。 –
如果你没有显示任何东西,那么你首先使用像素是什么(!)? –