我从MaxMind整理了一个城市数据库,其中包含数据库中每个城市的经纬度值。我还制作了一张北美地图,希望在地图上基于城市数据库记录的经纬度坐标,在相应的x/y坐标上显示一个图标。
据我所知,首先需要找到地图的左侧/顶部边界(经纬度-> x / y),然后将其作为任何北美城市x / y坐标之间线性关系的差异。最后,根据地图的大小,只需进行几个简单的除法和减法运算即可确定放置点的位置。
然而,我似乎无法弄清楚如何执行以下操作:
据我所知,首先需要找到地图的左侧/顶部边界(经纬度-> x / y),然后将其作为任何北美城市x / y坐标之间线性关系的差异。最后,根据地图的大小,只需进行几个简单的除法和减法运算即可确定放置点的位置。
然而,我似乎无法弄清楚如何执行以下操作:
- 我不确定什么是纬度/经度映射系统。我该如何找到这个信息?
- 使用JavaScript库,如何将纬度/经度转换为0,0坐标和每个城市坐标的像素。我已经尝试了Proj4js,但他们要求您指定您的坐标映射类型等。这里有一个类似的问题。 在给定图片上将经纬度转换为像素x / y
有任何想法吗?
--编辑--
输出地图(北美)是一个连续的圆柱体:“米勒圆柱投影”。 http://en.wikipedia.org/wiki/Miller_cylindrical_projection