Tengo un mapa básico con openlayers 6.8. Muestro marcadores de geojson.
Ejemplo de un geojson:
const geoMoscow = new ol.layer.Vector({ source: new ol.source.Vector({ url: './assets/moscow.geojson', format: new ol.format.GeoJSON() }), visible: true, title: 'geojson', style: new ol.style.Style({ fill: fillStyle, stroke: strokeStyle, image: new ol.style.Circle({ fill: new ol.style.Fill({ color: [245, 49, 5, 1] }), radius: 10, }), }) })Quiero obtener estas coordenadas geojson para su uso posterior. He estado leyendo muchos ejemplos de código que usan geojson.getSource().getFeatures() que permite acceder al método getCoordinates() desde cada característica.
Desafortunadamente geoMoscow.getSource().getFeatures() da una matriz vacía.
Obviamente me estoy perdiendo algo sobre la lógica de capas abiertas. Parece totalmente factible porque mi geojson contiene un objeto de función con las coordenadas, pero no puedo acceder a él.
TLDR: cómo acceder a información como coordenadas de este geojson Vector.
Debe esperar hasta que la fuente se cargue y analice
geoMoscow.getSource().on('featuresloadend', function(){ console.log(geoMoscow.getSource().getFeatures()); });La fuente no se cargará hasta que se agregue a un mapa.