Estoy tratando de limitar las características devueltas cuando hago clic en el mapa a sólo los de la capa endPoint:
endPoint = new ol.layer.Vector({
source: new ol.source.Vector({
features: endPoints //add an array of features
}),
});
map.addLayer(endPoint)
Lamentablemente, antes de que esta capa se inicialice, al hacer clic en las características de otras capas se registran en la consola. Creo que estoy utilizando la sintaxis correcta para limitar las características a sólo los de la capa endPoint ( forEachFeatureAtPixel(pixel, callback, opt_this, opt_layerFilter, opt_this2)
), pero debo de estar haciendo algo mal: si intento devolver capa en lugar de característica, me da un valor nulo.
¿Se trata de que tengo que dar algún nombre a la capa?
map.on('click', function(evt) {
var pixel = map.getEventPixel(evt.originalEvent);
var mapFeature = map.forEachFeatureAtPixel(pixel, function(feature, layer) {
return feature;
}, null, function(layer) {
return layer === endPoint;
});
console.log(mapFeature)
})