大家好,我正在用raphael.js开发一张地图,就像他们在这里一样:http://raphaeljs.com/world/
问题是我使用的是自定义svg世界地图,因此它们的函数getXY()显然不会返回lat,lng的正确x,y。
我如何计算给定纬度/经度的x和y知道地图宽度/高度以及融洽点和他的坐标(x:1104.73 = lng:42.998604)(y:559.25 = lat:9.424553)。
他们使用此代码:
cx: lon * 2.6938 + 465.4
y: lat * -2.6938 + 227.066
但我无法弄清楚什么是2.6938和其他两个数字。 我在这里也使用了这个数学:
int x = (int) ((MAP_WIDTH/360.0) * (180 + lon));
int y = (int) ((MAP_HEIGHT/180.0) * (90 - lat));
但我不能让它有效,anibody可以帮助我吗?
答案 0 :(得分:0)
使用的公式取决于地图使用的投影(Equirectangular,Robinson,Miller,Lambert,Mercator或其他)。有关此处预测的更多信息http://en.wikipedia.org/wiki/Map_projection
如果您不知道“自定义svg世界地图”的投影是什么,您将找不到任何帮助
干杯