Hallo Markus,

Am 09.05.2015 um 20:38 schrieb Markus:

Nun suche ich dort noch das Howto zum Ausführen einer Overpass-Abfrage
und Einbinden der Ergebnisse in die Karte.

Ich habe auch nach so etwas gesucht, aber für OpenLayers kein HowTo gefunden. Anhand diversen Einzelinformationen habe ich es dann doch geschafft. Entscheidend war, dass die Daten nicht als JSON sondern im OSM-XML-Format abgerufen werden. Den OL-Layer erzeuge ich so:

var layer = new OpenLayers.Layer.Vector(layername, {
    protocol: new OpenLayers.Protocol.HTTP({
url: 'http://overpass-api.de/api/interpreter?data=[timeout:25];(node["amenity"="bicycle_parking](42.327,1.72,42.942,3.26););out body;>;out skel qt;',
        format: new OpenLayers.Format.OSM({ignoreExtraDims: true}),
        projection: new OpenLayers.Projection("EPSG:4326")

    }),
    strategies: [new OpenLayers.Strategy.Fixed()],
    projection:  map.displayProjection,
    extractAttributes: true,
    styleMap: new OpenLayers.StyleMap({
        "default": new OpenLayers.Style({
            externalGraphic: icon,
            graphicWidth:21,
            graphicHeight:25,
            graphicXOffset:-10,
            graphicYOffset:-25  ,
            graphicZIndex: 1
        },
        OpenLayers.Feature.Vector.style["default"])
    }),
});

Ich halte allerdings auch die von Benjamin angesprochene Lösung mit Cron für sinnvoll. In diesem Fall ersetzt man den Url der Overpass-Abfrage mit dem Url der per Cron erzeugten Datei.

Grüße
Rainer


_______________________________________________
Talk-de mailing list
Talk-de@openstreetmap.org
https://lists.openstreetmap.org/listinfo/talk-de

Antwort per Email an