卡住了......我正在将 png 图像作为静态图像层加载到 OpenStreetMap 上。当我将地图从例如 3857 重新投影到 32661 时,图像也会自动重新投影(这是我想要的),但是当我更新静态图像的源时,图像层会再次转换。转换后的图像再次像原始图像一样具有矩形形状......令人沮丧......
如何让图像不再变换,而只显示更新的源(与原始源具有相同的尺寸,但根据新投影进行变换)。
我有一个带有源“IMG_LYRStaticSource”的图像层“IMG_LYR”:
IMG_LYRbounds = [45.3, 30.9, -14.6, 72.6]; // LON/LAT
url = "http://localhost/img/myupdatedimg.png";
IMG_LYR = new ol.layer.Image({
source: IMG_LYRStaticSource
});
IMG_LYRStaticSource = new ol.source.ImageStatic({
url: url,
projection: map.getView().getProjection().getCode(),
imageExtent: ol.extent.applyTransform(IMG_LYRbounds, ol.proj.getTransform("EPSG:4326", map.getView().getProjection().getCode()))
});
当我在检查控制台中显示“投影”时,确认它是“32661”。我究竟做错了什么??
顺便说一句:我也使用 Proj4 defs!当设置新的投影 32661 时,原始图像和基础地图转换时确认了该工作。