我已经构建了一个本地瓦片服务器来为本地javascript应用程序提供服务,并且我通过openlayers作为Layer.XYZ接收地图瓦片。
我从thinkgeo那里获得了马萨诸塞州的原始数据。它在正确的坐标上注册,因为它与tilemill内置的国家地图对齐。
我通过mapnik从tilemill导出地图(也是通过mbtile以最大的尺寸缩小),并将tilestache配置为使用相关的输出文件。它似乎是正确的,因为当我加载我的javascript时,国家地图被成功地拉出,当我找到马萨诸塞州时,道路按照我想要的那样突出显示。
所以,问题是:
当我设置缩放并将中心设置为波士顿的经纬度时,这在我之前起草的在线版本的Layer.OSM上运行正常,它给我提供了格陵兰岛西北部的海洋。事实上,我必须将纬度设置为-lat才能到达马萨诸塞州的范围,但它仍然不会将我放在波士顿。
我已经将TileStache配置设置为使用WGS84,并将OpenLayers导入设置为使用EPSG:4326,所有文档都表明这两个配置是相同的。因此,我想知道是否有一些关于OL的XYZ层的东西使这变得更加困难?
如果任何人有任何其他建议,与我正在使用的其他软件相关,我洗耳恭听。
发布于 2013-06-17 22:34:20
我只是使用sphericalMercator并将我所有的计算转换为米(这...实际上简化了事情,但我已经完成了这些事情的代码)。我仍然不知道为什么lon/lat坏了,但是嘿,如果电表能用的话...
https://stackoverflow.com/questions/17111136
复制相似问题