我创建了一个自定义SVG国家/地区地图,并使用jVectorMap绘制它。 现在我尝试在此地图上使用lat / long插入标记,但我不明白" bbox" x; y系统工作。
我想我必须对地图的最大和最小纬度/长度进行反投影,但即使查看下面的阿拉斯加示例,我也不了解x; y是如何获得的。 我尝试使用proj.js中的inv_aea而没有认识到任何相关内容。
projection: {
centralMeridian: -100,
type: "aea"
}
insets: [{
"left": 0
"top": 440,
"width": 220,
"height": 147
"bbox":[{
"y": -8441281.712315228,
"x": -5263934.893342895
},{
"y": -6227992.545028123,
"x": -1949631.2950683108
}
}]
答案 0 :(得分:0)
插图的宽度和高度必须等于地图的宽度和高度。
答案 1 :(得分:-1)
老实说,我并不完全明白你要做什么,但如果你想用图像作为地图插入标记,你必须考虑使用<表示你的源坐标(纬度/对数对) strong> WGS84 (EPSG:4326)标准(椭圆体上的一个点),而您的意思是在平面上表示它们。 您应该做的是使用全局球形墨卡托投影(参见http://spatialreference.org/ref/epsg/3785/)来表示以米为单位的坐标(EPSG:3785)。 一旦你完成了这个转换(我建议你使用这个库或类似的:proj4js),你可以进行简单的计算和比例,以便在普通地图上表示你的点。
我使用两年前开始上大学之前的一个例子设置了一个工作的jsfiddle,我是编程的初学者,所以请原谅不良的代码格式化。
you can check the live demo by clicking the link above