admin管理员组

文章数量:1327308

I'd like to be able to tell what ol.layer.Group(s) a layer is part of during a user interaction, without going through all the groups on the map top-down.

Is there a way to do this? I'm currently using ol3 v3.10.2.

I'd like to be able to tell what ol.layer.Group(s) a layer is part of during a user interaction, without going through all the groups on the map top-down.

Is there a way to do this? I'm currently using ol3 v3.10.2.

Share Improve this question asked Oct 21, 2015 at 18:04 ryansstackryansstack 1,4761 gold badge18 silver badges33 bronze badges
Add a ment  | 

2 Answers 2

Reset to default 6

During initialising of your layers asign an attribute, on each layer, to verify the group this layer belongs to. like so:

var vector = new ol.layer.Vector({
  GROUP : 'group1',
  source: vectorSource,
  style: new ol.style.Style({
        image: new ol.style.Circle({
            radius: 5,
            fill: new ol.style.Fill({color: '#FFFFFF'}),
            stroke: new ol.style.Stroke({
                color: '#000000',
                width: 3
            })
        })
    })
});

and then you may get the group like so:

layer.get('GROUP');

Looking at the ol.layer.Group, ol.collection and goog.array, none of these set an backwards reference to the layer. So you'll have to dig down trough all the groups, as far as I can see.

本文标签: javascriptHow to find layer group from layer in Openlayers 3Stack Overflow