我实现了以下代码,需要在地图上放置一层我使用QGIS制作的代码。但是坐标不能正常工作,该怎么办?问题出在坐标错误,还是有一种方法可以使用叠加层在地图中正确放置图层?
...
error_log("DebugQ: ".print_r($this->getSql(),1).", ".print_r($this->getParameterContainer()->getNamedArray(),1));
try {
$this->resource->execute();
}
...
答案 0 :(得分:1)
边界框的坐标工作正常;问题出在投影上。
您的QGIS项目和您的输出图像正在使用EPSG:4326。 Leaflet使用EPSG:3857(球形墨卡托)进行显示。如果尝试将拉伸的EPSG:4326图像叠加在EPSG:3957图像上,则顶部和底部边缘将适合,但您会遇到垂直偏移。
通过在带有国家边界的EPSG:4326中创建更大的图像,可以更清楚地看到这一点。我鼓励您尝试。
请阅读https://docs.qgis.org/2.18/en/docs/user_manual/working_with_projections/working_with_projections.html和相关文档,以将您的QGIS项目配置为使用其他CRS。