|
|
1
7
我认为值得记住的是,并非所有平面地图都是墨卡托投影。不知道地图的更多细节,很难确定。你可能会发现世界上大多数小区域的地图更可能是 圆锥形的 类型投影,其中地图上的感兴趣区域比全球墨卡托投影上的“更平坦”。这一点尤其重要,因为你离赤道越远(英国也足够远了,这一点很重要)。 你可以通过你正在尝试的计算得到“足够接近”的结果,但是为了达到最佳的准确度,你可能需要使用一个定义良好的投影的地图,或者创建你自己的地图。 |
|
|
2
39
我写了一个函数,它可以完全满足您的需求。我知道有点晚了,但也许还有其他人感兴趣。
你需要一张墨卡托投影的地图,你需要知道你的地图的纬度/经度位置。 您可以从 tilemill which is a free software from mapbox 获得具有完美匹配lat/lon位置的伟大自定义Mercator地图! 我正在使用这个脚本,并用谷歌地球的一些位置测试它。它在像素级上工作得很好。实际上,我没有在不同或更大的地图上测试这个。希望对你有帮助! 拉斐尔;)
|
|
|
3
10
除了Raphael Wichmann发布的内容(顺便说一下,谢谢!), 以下是actionscript中的反向函数:
|
|
|
4
9
我已经将Raphael提供的PHP代码转换成了javascript,并可以确认它是有效的,这个代码也可以自己运行。一切归功于拉斐尔。
|
|
|
5
4
我知道不久前有人问过这个问题,但是proj4js库非常适合在javascript中转换不同的地图投影。 英国地图倾向于使用基于横向墨卡托投影的OSGB国家网格。也就是说,像传统的墨卡托望远镜一样,转了90度,使“赤道”变成了子午线。 |
|
|
6
4
这是另一个JavaScript实现。这是对@rob willet上述解决方案的简化。它不需要计算值作为函数的参数,只需要基本值并从中计算所有内容:
|
|
|
7
3
@Javascript中的xarinko actionscript片段(带有一些测试值)
|
|
8
0
如果你想避免项目4JS固有的lat/lng投影的一些更混乱的方面,你可以使用d3,它提供了许多烘焙投影,并且渲染得很漂亮。这里有一个 interactive example 有几种方位投影。我更喜欢美国地图的阿尔伯斯。 如果d3不是最终用户选项——比如,您需要支持ie 7/8——您可以在d3中渲染,然后从d3生成的结果svg文件中获取xy坐标。然后可以在拉斐尔中渲染这些xy坐标。 |
|
|
9
0
这个函数对我很有用,因为我想根据我要绘制的地图定义地图高度。我正在生成PDF地图。我所要做的就是通过地图的max lat,min lon,它将地图的像素大小返回为[高度,宽度]。 ConvertgeTopIxel(最大纬度,最大经度) 在设置$Y的最后一步中,注意不要从地图高度中减去计算结果,如果坐标系“xy”从底部/左侧开始,就像使用pdfs一样,这将反转地图。
|
|
10
0
C实施:
|
|
|
Homer · Quarkus-Panache投影到实体中的集合 2 年前 |