OL:使用LONLAT边界覆盖的静态图片(使用proj4 defs)覆盖-结果放置错误(已移位)

时间:2019-02-17 08:26:02

标签: openlayers openlayers-5

我有一个来自weathermodel输出的图像。这是透明的(静态)图像,我需要将其叠加在(开放层)地图上。图像本身基于polair立体投影(EPSG:32661)。我将proj4.defs用于32661。我从制作png的人那里获得了imgExtent(所以我认为这些范围没有问题)。

静态IMG:

var imgExtent = [0,49,10,55]; // LONLAT bounds


IMGlyr = new ol.layer.Image({
    name: 'myIMG',
    source: new ol.source.ImageStatic({
        url: 'http://www.kambeel.nl/data/img_orig.png',
        projection: "EPSG:3857",
        imageExtent: ol.extent.applyTransform(imgExtent, ol.proj.getTransform("EPSG:4326", "EPSG:32661"))
    })
});

但是,当我覆盖图像时,结果是偏移的图像.......我要监视什么?不再知道.....

结果(偏移的图像):http://www.kambeel.nl/data/result.png

1 个答案:

答案 0 :(得分:0)

这将使图像完全符合坐标。但是,每个边缘上都有几个像素的透明边距,需要删除这些边距才能正常工作。

source: new ol.source.ImageStatic({
    url: 'http://www.kambeel.nl/data/img_orig.png',
    projection: "EPSG:32661",
    imageExtent: ol.extent.boundingExtent([ ol.proj.transform([0,49], "EPSG:4326", "EPSG:32661"),
                                            ol.proj.transform([10,55], "EPSG:4326", "EPSG:32661") ])
})