在OpenLayers 3中在地图上叠加多个图像

时间:2015-11-30 23:23:59

标签: openlayers-3

我有一个服务,它返回一个图像数组,每个图像有4个坐标(左上角,右上角,左下角,右下角)。

有没有办法在地图上显示这些图像?到目前为止,这是我的样式函数,但只显示笔划:

function(feature) {
    var EO = feature.get('source');

    return [new ol.style.Style({
        image: new ol.style.Icon({
            src: EO.image,
            rotateWithView: true,
        }),
        stroke: new ol.style.Stroke({
            color: '#00F',
            width: 1
        })
    })]
}

这是我的虚拟对象数组:

var dummy = [
    {
        coords: [
            [-9.223774, 38.755317],
            [-9.124210, 38.707109],
            [-9.158542, 38.664230],
            [-9.258964, 38.711396]
        ],
        image: 'dummy/eo/eo1.jpg'
    }
];

这是将我的假人变成特征的循环:

dummy.forEach(function(EO) {
    var projectedCoords = EO.coords.map(function(coord) {
        return ol.proj.fromLonLat(coord, 'EPSG:3395');
    });

    var EOFeature = new ol.Feature(new ol.geom.Polygon([projectedCoords]));

    EOFeature.set('source', {
        image: EO.image
    });

    EOFeature.set('type', 'EO');

    features.push(EOFeature);
});

0 个答案:

没有答案