Re: [Talk-de] Eigene OSM-Karte mit Overpass

2015-05-18 Diskussionsfäden Markus

Liebe OL- und Overpass-Spezialisten,

gibt es hier jemanden, der das HowTo ergänzen kann?
oder ist das Forum die bessere Anlaufstelle?


Vielleicht können wir ja zusammen das OL-HowTo
http://wiki.openstreetmap.org/wiki/DE:Karte_in_Webseite_einbinden
so ergänzen, dass der Benutzer mit einer Overpass-Abfrage einen
individuellen Layer hinzufügen kann :-)


Die Idee ist gut,
aber das sollte jemand machen, der sich gut mit Openlayers auskennt.


Wir könnten ja auch schrittweise vorgehen:
einer schreibt, wie man die Daten aus Overpass holt und speichert,
einer erklärt, wie man sie mit OL anzeigt,
und gemeinsam schreiben wir alles ins Wiki...

Mit herzlichem Gruss,
Markus


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


Re: [Talk-de] Eigene OSM-Karte mit Overpass

2015-05-11 Diskussionsfäden Harald Hartmann

Hallo Markus,


http://lau-net.de/baerlocher/osm/vvh-baenke/vvh-baenke.html


Was soll man da sehen? Also ich sehe dort keine Bänke, Kreise oder  
irgendwas außer der normalen Karte?!

Firebug zeigt mir weder Fehler noch irgendwelche Requests an.

Für die Gemeinde Schleusegrund und Wanderwege habe ich testweise mal  
was ähnliches gebaut [1], läuft aber unter leaflet und hole die Daten  
live per Overpass und hatte bisher noch nicht ein Quota.


[1]: http://osm.haraldhartmann.de/schleusegrund/

Viele Grüße,
Harald Hartmann



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


Re: [Talk-de] Eigene OSM-Karte mit Overpass

2015-05-11 Diskussionsfäden rainerU

Am 10.05.2015 um 14:06 schrieb Markus:

Vielleicht können wir ja zusammen das OL-HowTo
http://wiki.openstreetmap.org/wiki/DE:Karte_in_Webseite_einbinden
so ergänzen, dass der Benutzer mit einer Overpass-Abfrage einen
individuellen Layer hinzufügen kann :-)


Die Idee ist gut, aber das sollte jemand machen, der sich gut mit 
Openlayers auskennt. Ich habe mir meine Layer-Definition aus 
verschiedenen Beispielen zusammen gestöpselt ohne alles zu verstehen, 
nach dem Motto Hauptsache es funktioniert.



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


Re: [Talk-de] Eigene OSM-Karte mit Overpass

2015-05-11 Diskussionsfäden Markus

Hallo Rainer,


Vielleicht können wir ja zusammen das OL-HowTo
http://wiki.openstreetmap.org/wiki/DE:Karte_in_Webseite_einbinden
so ergänzen, dass der Benutzer mit einer Overpass-Abfrage einen
individuellen Layer hinzufügen kann :-)


Die Idee ist gut,
aber das sollte jemand machen, der sich gut mit Openlayers auskennt.


Ja, so eine Anleitung wäre für viele sicher sehr hilfreich.

@ Harald:
Der Link zeigt den aktuellen Stand laut Wiki-Anleitung.
Jetzt müssten wir noch ein HowTo für die Einbindung von Overpass-Daten 
schreiben...


Mit herzlichem Gruss,
Markus


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


Re: [Talk-de] Eigene OSM-Karte mit Overpass

2015-05-11 Diskussionsfäden Harald Hartmann
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Hallo Robert,

danke für deine generelle Maßnahmen, werde davon sicherlich einige
noch auf meiner Recycling-Map [1] einbauen, in der ich jetzt wie wild
umeinander herscrollen musste um einen 429er zu provozieren.

Ich glaube ich baue zusätzlich auch noch ein, dass man während eine
Abfrage mit Sanduhr bis zum Timeout läuft auch das wegscrollen
verbietet.

Habe aber noch eine Frage: Was verstehst du unter
 - Requests serialisieren

[1] http://osm.haraldhartmann.de/recycling

Viele Grüße,
Harald Hartmann
-BEGIN PGP SIGNATURE-
Version: GnuPG v1

iQEcBAEBAgAGBQJVUP3IAAoJEIuLcq40+VqtpxIIAMfteBvfJidPLX+YUWvK38ck
uNsOE5F4iRY8Ul3Yfhy6AEQmQrtKNb4QoZEpMfZPmFtDIclZVrj0BezwWvyvqig6
xGpF4XmWI3xuvzjC4ynWi5tvDmsS0V+9Ti4lwrlaLyvljIQG3SiIRQrdH+tFE4eO
DCbXlMZoODuMskSP/iS1NJxE8WhKgZUnyA8g7ENJSzQLNNh/TQwg+lFhZzuuIfK3
211vnA5TOMe2XzDYACQrTDUZw6DGDDEdPR6LcSq9G6PwFQwh6cbM25yebki4yuAC
7VKG2GBl4HjIDrTUqGA2tkhA3mxzlH+QOyCQt1N1Q6WSBZNPkJ/BxsO0DWtJoQg=
=dENm
-END PGP SIGNATURE-

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


Re: [Talk-de] Eigene OSM-Karte mit Overpass

2015-05-11 Diskussionsfäden mmd
Hallo Roland, Harald,

Am 11.05.2015 um 19:01 schrieb Roland Olbricht:
 Es sieht eher danach aus, als wenn Briefkästen dann nicht gefunden 
 werden. Es scheint mir beim Drüberschauen vielleicht doch ein
 Problem der briefkastenkarte.de zu sein, weil das Problem auf der
 Beispielseite des Leaflet-Plugins nicht auftritt.

Ich meine mich zu erinnern, dass diese Leaflet-Beispielseite noch auf
die rambler.ru-Instanz zugreift und dort diese Limitierung (noch)
nicht greift.


Am 11.05.2015 um 21:06 schrieb Harald Hartmann:
 danke für deine generelle Maßnahmen, werde davon sicherlich
 einige noch auf meiner Recycling-Map [1] einbauen, in der ich jetzt
 wie wild umeinander herscrollen musste um einen 429er zu
 provozieren.

Am einfachsten lässt sich der Unterschied z.B. mit Firebug in Firefox
(oder auch den Entwicklertools in Chrome) nachvollziehen: Während
deine Recycling-Karte für die BBox genau eine Abfrage absetzt, teilt
die Briefkastenkarte die BBox in viele kleine Unterabschnitte auf und
setzt für jeden dieser Abschnitte einen eigenen Request ab. Das meinte
ich eingangs mit fluten. Serialisieren würde hier bedeuten, immer
nur genau einen Request gleichzeitig abzusetzen.

 Ich glaube ich baue zusätzlich auch noch ein, dass man während
 eine Abfrage mit Sanduhr bis zum Timeout läuft auch das
 wegscrollen verbietet.

Alternativ wäre auch ein /api/kill_my_queries beim Scrollen der Seite
machbar. Dadurch werden noch ausstehende Queries auf dem Server
einfach abgebrochen.

Gruß,
mmd

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


Re: [Talk-de] Eigene OSM-Karte mit Overpass

2015-05-11 Diskussionsfäden Roland Olbricht

Hallo,


ist vielleicht die Briefkastenkarte sowas was du suchst:
http://briefkastenkarte.de/


erst einmal freut es mich, dass jemand die Seite herausgesucht hat. Ich 
finde sie von der Idee her sehr gut. Man sollte da technische Details 
nicht zu hoch hängen.



Im Blog dazu gibt es auch eine gute Anleitung wie sie gemacht wurde:
http://blog.briefkastenkarte.de/


Mit der neuen Quota-Regel für die Overpass API [2] werden inzwischen
auch etliche Abfragen mit einem Fehler abgewiesen (429 Too Many
Requests). Ob dadurch Briefkästen nicht angezeigt werden oder einfach
eine neue Abfrage abgesetzt wird, habe ich mir allerdings nicht mehr
genau angesehen.


Es sieht eher danach aus, als wenn Briefkästen dann nicht gefunden 
werden. Es scheint mir beim Drüberschauen vielleicht doch ein Problem 
der briefkastenkarte.de zu sein, weil das Problem auf der Beispielseite 
des Leaflet-Plugins nicht auftritt.


Falls auch OpenLayers geht, was meistens der Fall ist, möchte ich gerne 
auch auf die Seiten

http://overpass-api.de/open_layers_mashup.html
und speziell
http://overpass-api.de/open_layers_multilayer.html
hinweisen. Das sieht zwar nicht schön aus, aber zeigt die Abfragemechanik.

Das wesentliche Detail ist hier der sehr kurze Timeout. Dies verringert 
das Risiko von 429ern, weil die Abfragen nicht noch auf dem Server 
nachlaufen, wenn der Benutzer schon weggescrollt hat. 5 Sekunden wären 
vermutlich auch OK, aber 180 Sekunden sind für diesem Einsatzzweck 
definitiv zuviel.


Generell würde ich die folgenden Maßnahmen empfehlen:
- max. 5 Sekunden Timeout
- Anzeige einer unaufdringlichen Sanduhr, solange Requests laufen oder 
dafür pausiert wird, damit der Endnutzer noch keine Daten von leeres 
Suchergebnis unterscheiden kann

- mit 429 zurückkehrende Requests nach 15 Sekunden wiederholen
- Requests serialisieren

Viele Grüße,

Roland


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


Re: [Talk-de] Eigene OSM-Karte mit Overpass

2015-05-10 Diskussionsfäden Markus

Hallo Rainer,


Ich habe auch nach so etwas gesucht, aber für OpenLayers kein HowTo
gefunden. Anhand diversen Einzelinformationen habe ich es dann doch
geschafft.


Vielleicht können wir ja zusammen das OL-HowTo
http://wiki.openstreetmap.org/wiki/DE:Karte_in_Webseite_einbinden
so ergänzen, dass der Benutzer mit einer Overpass-Abfrage einen 
individuellen Layer hinzufügen kann :-)


Vielleicht einfach ein weiterer Tab 2. Layer?

Dort könnte man folgendes darstellen:
1. wie erstelle ich eine passende Overpass-Abfrage
2. wo speichere ich die Ergebnisse? in welchem Format
3. wie zeige ich die Ergebnisse als Layer
   (Code für Copy und Paste)

Beispiel:
- Grenze einer bestimmten Gemeinde
- alle Trinkwasserbrunnen, Sitzbänke, Restaurants, ...
- alle Wanderwege

Ich teste das grad mit der Gemeinde Simmelsdorf [1]
und den Sitzbänken [2]

Unklar ist mir, wie man das alles nun in ein layer.js schreibt,
das Popup hübsch gestaltet,
und alles in das HTML einbaut.

Vielleicht können wir das als Beispiel
im Tab 2. Layer detailliert beschreiben.

Wir könnten auch Dein Beispiel nehmen:


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])
 }),
});


Wenn ich das richtig verstanden habe, gibt es vier Möglichkeiten:
a) Daten bei jedem Laden der Karte neu holen
b) Daten einmal holen und speichern,
   und beim Laden der Karte nur den Speicherinhalt anzeigen
c) Daten per Cron täglich holen
   und beim Laden der Karte den aktualisierten Speicherinhalt anzeigen
d) beim Laden der Karte den aktualisierten Speicherinhalt anzeigen
   plus ein Button zum händischen aktualisieren der Daten


die von Benjamin angesprochene Lösung mit Cron sinnvoll.
In diesem Fall ersetzt man den Url der Overpass-Abfrage
mit dem Url der per Cron erzeugten Datei.


Mit herzlichem Gruss,
Markus

[1] Simmelsdorf:
http://lau-net.de/baerlocher/osm/vvh-baenke/vvh-baenke.html

[2] Overpass-Turbo:
/*
This has been generated by the overpass-turbo wizard.
The original search was:
“amenity= bench in Simmelsdorf”
*/
[out:json][timeout:25];
// fetch area “Simmelsdorf” to search in
{{geocodeArea:Simmelsdorf}}-.searchArea;
// gather results
(
// query part for: “boundary=administrative and name=Simmelsdorf”
  relation[boundary=administrative][name=Simmelsdorf];
  // query part for: “amenity=bench”
  node[amenity=bench](area.searchArea);
  way[amenity=bench](area.searchArea);
  relation[amenity=bench](area.searchArea);
);
// print results
out body;
;
out skel qt;


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


Re: [Talk-de] Eigene OSM-Karte mit Overpass

2015-05-10 Diskussionsfäden rainerU

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


Re: [Talk-de] Eigene OSM-Karte mit Overpass

2015-05-09 Diskussionsfäden Benjamin Grimm-Lebsanft
Hallo Markus,

ist vielleicht die Briefkastenkarte sowas was du suchst:
http://briefkastenkarte.de/

Im Blog dazu gibt es auch eine gute Anleitung wie sie gemacht wurde:
http://blog.briefkastenkarte.de/

Liebe Grüße
Benjamin

On 09.05.2015 20:38, Markus wrote:
 Liebe Spezialisten,
 
 mich fragte jemand, wie man eine OSM-Karte als Slippymap mit OL in die
 eigene Website einbinden, und darauf die Ergebnisse einer
 Overpass-Abfrage anzeigen kann.
 
 Dachte, ich schicke ihm einfach einen Link :-)
 
 Gefunden habe ich:
 http://wiki.openstreetmap.org/wiki/DE:Karte_in_Webseite_einbinden
 Funktioniert soweit.
 
 Nun suche ich dort noch das Howto zum Ausführen einer Overpass-Abfrage
 und Einbinden der Ergebnisse in die Karte.
 
 Wer kann helfen?
 
 Gruss, Markus
 
 
 ___
 Talk-de mailing list
 Talk-de@openstreetmap.org
 https://lists.openstreetmap.org/listinfo/talk-de



signature.asc
Description: OpenPGP digital signature
___
Talk-de mailing list
Talk-de@openstreetmap.org
https://lists.openstreetmap.org/listinfo/talk-de


Re: [Talk-de] Eigene OSM-Karte mit Overpass

2015-05-09 Diskussionsfäden Benjamin Grimm-Lebsanft
Hallo mmd,

 leider kann ich diese Karte zur Zeit nur eingeschränkt weiterempfehlen,
 da sie die Overpass API regelrecht mit Anfragen flutet.
 
 Mit der neuen Quota-Regel für die Overpass API [2] werden inzwischen
 auch etliche Abfragen mit einem Fehler abgewiesen (429 Too Many
 Requests). Ob dadurch Briefkästen nicht angezeigt werden oder einfach
 eine neue Abfrage abgesetzt wird, habe ich mir allerdings nicht mehr
 genau angesehen.

bei meiner eigenen Karte www.veggiekarte.de, hole ich per cronjob nur
jede Stunde einmal neue Daten via overpass und selbst da bekomme ich ab
und zu die too many requests-Meldung. Aber kommt nur ganz selten vor.
Finde ich persönlich aber angenehmer als bei briefkastenkarte.de, weil
der Browser so die Daten nur einmal rendern muss.

Liebe Grüße
Benjamin



signature.asc
Description: OpenPGP digital signature
___
Talk-de mailing list
Talk-de@openstreetmap.org
https://lists.openstreetmap.org/listinfo/talk-de


Re: [Talk-de] Eigene OSM-Karte mit Overpass

2015-05-09 Diskussionsfäden Jo
Versuche auch mal mit umap.openstreetmap.fr:

http://umap.openstreetmap.fr/nl/map/1001-bomen-voor-leuven_30815#13/50.8788/4.7076

http://overpass-api.de/api/interpreter?data=[out:json][timeout:25];(node[natural=tree]({south},{west},{north},{east}););out
meta qt;

http://umap.openstreetmap.fr/nl/map/openbaar-vervoer-rond-leuven_30737#13/50.8767/4.7128

http://overpass-api.de/api/interpreter?data=[out:json][timeout:25];(relation[route=bus][ref=1]({south},{west},{north},{east}););out
body;;out meta qt;

Grüsse,

Polyglot



2015-05-09 20:38 GMT+02:00 Markus liste12a4...@gmx.de:

 Liebe Spezialisten,

 mich fragte jemand, wie man eine OSM-Karte als Slippymap mit OL in die
 eigene Website einbinden, und darauf die Ergebnisse einer Overpass-Abfrage
 anzeigen kann.

 Dachte, ich schicke ihm einfach einen Link :-)

 Gefunden habe ich:
 http://wiki.openstreetmap.org/wiki/DE:Karte_in_Webseite_einbinden
 Funktioniert soweit.

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

 Wer kann helfen?

 Gruss, Markus


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

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


Re: [Talk-de] Eigene OSM-Karte mit Overpass

2015-05-09 Diskussionsfäden mmd
Hallo,

Am 09.05.2015 um 22:13 schrieb Benjamin Grimm-Lebsanft:
 Hallo Markus,
 
 ist vielleicht die Briefkastenkarte sowas was du suchst:
 http://briefkastenkarte.de/
 
 Im Blog dazu gibt es auch eine gute Anleitung wie sie gemacht wurde:
 http://blog.briefkastenkarte.de/

leider kann ich diese Karte zur Zeit nur eingeschränkt weiterempfehlen,
da sie die Overpass API regelrecht mit Anfragen flutet.

Mit der neuen Quota-Regel für die Overpass API [2] werden inzwischen
auch etliche Abfragen mit einem Fehler abgewiesen (429 Too Many
Requests). Ob dadurch Briefkästen nicht angezeigt werden oder einfach
eine neue Abfrage abgesetzt wird, habe ich mir allerdings nicht mehr
genau angesehen.

Ich kann mir gut vorstellen, dass die Karte selbst unschuldig ist und
leaflet-layer-overpass [3] im Hintergrund für die vielen Abfragen sorgt.
Das müsste sich vielleicht jemand mal in Ruhe im Gesamtkontext zu Gemüte
führen. Ein Github-Ticket findet sich übrigens unter [1].

Ansonsten würde ich mir auch mal uMap ansehen, die lässt sich bestimmt
auch gut in andere Seiten einbetten.

Gruß,
mmd


[1] https://github.com/dbretschneider/briefkastenkarte.de/issues/8
[2] https://lists.openstreetmap.org/pipermail/talk/2015-April/072661.html
[3] https://github.com/kartenkarsten/leaflet-layer-overpass

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


Re: [Talk-de] Eigene OSM-Karte mit Overpass

2015-05-09 Diskussionsfäden malenki
On Sat, 09 May 2015 20:38:57 +0200,
Markus wrote:

 Liebe Spezialisten,
 
 mich fragte jemand, wie man eine OSM-Karte als Slippymap mit OL in
 die eigene Website einbinden, und darauf die Ergebnisse einer 
 Overpass-Abfrage anzeigen kann.
 
 Dachte, ich schicke ihm einfach einen Link :-)

Weil es meine erste Wahl für deinen Fall gewesen wäre und auch andere
umap schon erwähnt haben:
http://www.mappa-mercia.org/2014/09/creating-an-always-up-to-date-map.html

hth
Thomas



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


[Talk-de] Eigene OSM-Karte mit Overpass

2015-05-09 Diskussionsfäden Markus

Liebe Spezialisten,

mich fragte jemand, wie man eine OSM-Karte als Slippymap mit OL in die 
eigene Website einbinden, und darauf die Ergebnisse einer 
Overpass-Abfrage anzeigen kann.


Dachte, ich schicke ihm einfach einen Link :-)

Gefunden habe ich:
http://wiki.openstreetmap.org/wiki/DE:Karte_in_Webseite_einbinden
Funktioniert soweit.

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


Wer kann helfen?

Gruss, Markus


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