Karte mit Puffer um Hydranten herum erstellen [gelöst]

Hallo, ich habe mal wieder ein besonderes Problem:

Ich will für meine Feuerwehr eine Karte machen, auf der ersichtlich ist, ob das bebaute Stadtgebiet vollständig mit Hydranten abgedeckt ist. Das bedeutet, dass die Hydranten in der Regel nicht weiter als 150 Meter auseinander sein sollen, also ich um jeden Hydranten einen Kreis von 75 m Durchmesser ziehen will. Es muss keine Karte im Browser sein, da diese “nur” für einen sogenannten Brandschutzbedarfsplan in gedruckter Form gebraucht wird.

In Erinnerung an ein Semester Geoinformationssysteme als Wahlpflichtfach in meinem Studium fiel mir ein, dass man sowas mit Puffern macht. Ich hab also gleich QGIS installiert (ich nutze Ubuntu) und versucht, so eine Karte zu bauen. Also Mapnik für den Hintergrund als WMS eingebunden und die Hydranten-Nodes aus einem Overpass-Export extrahiert. Hat in der Theorie auch geklappt, allerdings mit WGS84 so dermaßen gestaucht, dass von Kreisen um Hydranten keine Rede sein kann, und der Mapnik-Hintergrund war natürlich auch gestaucht.

Ich habe mich also weiter erinnert und mir fiel wieder ein, dass es auch wichtig ist ein Koordinatenbezugssystem festzulegen. Ich habe dann EPSG:25832 genommen (der Ort liegt in Rheinland-Pfalz).
Problem: selbst nachdem ich sowohl als Projekt-KBS, als auch die KBS für Mapnik, die Hydranten und die Umkreise explizit EPSG:25832 festgelegt hatte, waren die Puffer-Kreise immer noch ellipsenförmig.

Dann dachte ich mir: na gut, fängst du nochmal von vorne an, und da wurde es noch kurioser: trotz dass wieder alles auf EPSG:25832 eingestellt war, war nun der Mapnik-Hintergrund und die Hydranten gestaucht, aber dafür jetzt die Kreise rund. Ich war der Verzweiflung nahe.

Dann wollte ich nachschauen, ob man es vielleicht doch mit einer Karte im Browser bewerkstelligen kann. Evtl. eine CSV-Datei mit den Koordinaten der Hydranten auf den Webspace laden, und dann mittels Openlayers- bzw. Leaflet-Plugin den Puffer um die Punkte ziehen.

Schön wäre, wenn man die Puffer-Kreise halbtransparent machen könnte, damit man sehen kann was darunter liegt. Und die Fläche aller Kreise zu einer einzigen großen Fläche vereinigen, damit sich nicht die ganzen Kreisränder gegenseitig überdecken.

Hat jemand einen Tipp für mich? Bin für alle Vorschläge offen (QGIS, Leaflet, oder was man sich sonst noch vorstellen könnte), nur kosten sollte es wie so oft nichts. :smiley:

Viele Grüße und einen schönen Sonntag,

Christoph

PS: Es geht um etwa 800 Hydranten, also mittels Bildbearbeitung um jeden einzelnen per Hand einen Kreis ziehen fällt aus…

Wie macht es denn:

http://www.osmhydrant.org/de/#zoom=18&lat=50.840637&lon=13.658551

Hatten (glaube ich) auch einmal Kreise um einen Hydrant.

Vielen Dank!

Genau so soll es aussehen. Hab mal wieder den Wald vor lauter Bäumen nicht gesehen. Wenn ich das so hin bekomme wäre das genau das was ich brauche, ich müsste lediglich den Radius von 200 auf 75 Meter heruntersetzen…

Viele Grüße,
Christoph

Einfach auf das Zahnrad gehen und auf den Text “Abdeckungs-Radius setzen” klicken:

Das sind doch Hydranten, nur der Kreis ist - mir - echt zu groß.

Wenn Du schon in Qgis Ellipsen hinbekommen hast und nicht noch Alternativen suchen willst: Bleib bei Qgis, stell die Projektion auf epsg 3857 und mach dem Puffer 75/cos(Breitengrad) gross. Für einen Landkreis oder so reichts sicher völlig, cos(breitengrad) der Mitte zu nehmen und nicht für jeden Punkt auszurechnen.

Das war der entscheidende Hinweis! Vielen Dank! Ist dann im Prinzip für mich eine fertige Lösung.

Das hört sich interessant an. Vielleicht probiere ich das - rein aus Interesse - auch mal noch aus. Und nehme dann das was besser aussieht.

Vielen Dank an alle die geholfen haben. Das ging ja echt super schnell.

Viele Grüße,

Christoph

mit der “QuickOSM” erweiterung kann man übrigens direkt osm daten ins qgis laden. dann den punkten nur noch die größe 150 (karteneinheiten) geben und fertig. ich konnte das mit den ellipsen nicht nachvollziehen. beim projekt ist EPSG:25832 und der layer 4326, alles rund.

Dann probiere ich das auch noch einmal aus, Danke!

Hallo,
auch wenn es mittlerweile gelöst ist, wollte ich meine Lösung noch posten.

Jedenfalls hier meine Variante mit Leaflet:

Die Karte wurde mit var mymap = L.Map… initialisiert.


<script>
		//Radius in Meter
		var radius = 75;

		geojson = JSON.parse(geoJsonString);
		var gjsonLayer = L.geoJSON(geojson, {
			pointToLayer: function(feature, latlng) {
				return new L.circle(latlng, radius, {
					color: 'red',
					fillColor: '#f03',
					fillOpacity: 0.35
				});
			}
		}).addTo(mymap); //mymap = L.Map... die Variable deiner Karte
		
		</script>

Dazu habe ich mir von overpass-turbo.eu eine GeoJSON-Datei geben lassen, diese daten dann mit

var geoJsonString = '

und

';

umschlossen und als

<script src="export.geojson"></script>

im header eingebunden - fertig. Nein, nicht fertig, davor müssen die Daten alle in eine Zeile! Ist aber natürlich dann auch kein Problem mehr, das ganze mit jquery direkt über die overpass-api abzufragen.

Danke auch für diesen Ansatz. Wenn ich ein bisschen Zeit habe werde ich nochmal ein bisschen herum probieren was am schönsten aussieht!