我已经构建了一个本地图块服务器来服务于本地 javascript 应用程序,并且我通过 openlayers 作为 Layer.XYZ 接收地图图块。
我从 thinkgeo 获得了马萨诸塞州的原始数据。它在正确的坐标上注册,因为它与 tilemill 的内置国家地图对齐。
我通过 mapnik 从 tilemill 导出地图(也通过 mbtiles 以极大的尺寸减小),并配置 tilestache 以使用相关的输出文件。它似乎服务正确,因为当我加载我的 javascript 时,国家地图被成功拉出,当我找到马萨诸塞州时,道路按我想要的方式突出显示。
所以,问题来了:
当我设置缩放并将中心设置为波士顿的经度/纬度时,它在我之前起草的在线版本的 Layer.OSM 上正常工作,它给了我格陵兰西北部的海洋。事实上,我必须将纬度设置为 -lat 才能进入马萨诸塞州的范围内,但这仍然没有让我进入波士顿。
我已将 TileStache 配置设置为使用 WGS84,并将 OpenLayers 导入设置为使用 EPSG:4326,所有文档都表明它们是相同的。因此,我想知道 OL 的 XYZ 层是否有什么让这变得更加困难?
如果有人对我正在使用的其他软件有任何其他建议,我会全力以赴。