You are not logged in.

Announcement

*** NOTICE: forum.openstreetmap.org is being retired. Please request a category for your community in the new ones as soon as possible using this process, which will allow you to propose your community moderators.
Please create new topics on the new site at community.openstreetmap.org. We expect the migration of data will take a few weeks, you can follow its progress here.***

#1 2015-09-04 17:08:36

viw
Member
Registered: 2010-05-15
Posts: 2,623

Karte nur mit der Landmasse von Deutschland und Bundesländer

Hallo,

ich will eine Karte die nichts anders als die Landmasse von Deutschland und die Ländergrenzen darstellt. Das würde ich gerne mit openlayers oder leaflet darstellen.

Gibt es dazu zweckdienliche Ideen? Ansonsten würde ich bei der Boundaries map die Sachen als Shapfile exportieren und dann vielleicht wie hier einbinden:
https://indicatrix.wordpress.com/2011/1 … penlayers/

Aber vielleicht geht das auch einfacher.

Offline

#2 2015-09-04 18:25:56

maxbe
Member
Registered: 2010-01-19
Posts: 3,255
Website

Re: Karte nur mit der Landmasse von Deutschland und Bundesländer

viw wrote:

Karte die nichts anders als die Landmasse von Deutschland und die Ländergrenzen darstellt

Da gabs mal nützliche Bespiele: http://forum.openstreetmap.org/viewtopic.php?id=20767

Offline

#3 2015-09-04 18:41:37

wambacher
Member
From: Schlangenbad/Wambach, Germany
Registered: 2009-12-16
Posts: 16,769
Website

Re: Karte nur mit der Landmasse von Deutschland und Bundesländer

viw wrote:

ich will eine Karte die nichts anders als die Landmasse von Deutschland und die Ländergrenzen darstellt.

Dein Problem wird werden, dass unsere AL4 (Bundesländergrenzen) bis ins Meer hinausgehen, was ja formal auch richtig ist.

tn_al4.png

Und wie ich hier geschrieben habe, kann ich nichts dagegen machen, solange nicht das Tagging der "Land-Areas" geändert wird. Leider wurde das bisher kommentarlos ignoriert hingenommen. sad

Gruss
walter

Offline

#4 2015-09-04 18:53:44

ikonor
Member
Registered: 2010-11-08
Posts: 637
Website

Re: Karte nur mit der Landmasse von Deutschland und Bundesländer

Hier Tutorials für Leaflet und GeoJSON:

http://leafletjs.com/examples/geojson.html
http://leafletjs.com/examples/choropleth.html

Der Trick dort ist, in der GeoJSON Datei ein

var geojsonFeature = 

voranzustellen, damit wird es JavaScript und kann einfach per script Tag eingebunden werden.

Ansonsten muss man sich bei Leaflet um das Laden von Daten-Dateien selbst kümmern: http://lyzidiamond.com/posts/external-g … other-way/

Offline

#5 2015-09-04 19:04:42

ikonor
Member
Registered: 2010-11-08
Posts: 637
Website

Re: Karte nur mit der Landmasse von Deutschland und Bundesländer

Zum Ausblenden des Kartenbereichs außerhalb eines Polygons per Masken-Overlay, wie im von maxbe erwähnten Faden, gibt es für Leaflet ein Plugin:
https://github.com/ebrelsford/Leaflet.snogylop

Offline

#6 2015-09-04 20:30:57

brogo
Member
From: 54,11 +-1°
Registered: 2009-06-02
Posts: 553

Re: Karte nur mit der Landmasse von Deutschland und Bundesländer

viw wrote:

ich will eine Karte die nichts anders als die Landmasse von Deutschland und die Ländergrenzen darstellt. Das würde ich gerne mit openlayers oder leaflet darstellen.

Früher gab es doch mal zwei Relationen. Eine mit den politischen Grenzen und eine mit der Landmasse. War zwar etwas unübersichtlich, hätte Dir aber genau das gebracht.

Ich glaube die Landmassen-Relationen wurden dann gelöscht, weil man die Infos auch über die Boundaries und Coastlines generieren könnte.

Da sieht man mal wieder: Redudanz in der Datenbank, könnte es einem Auswerter in so manchen Fällen einfacher machen.

Christian

Offline

#7 2015-09-04 20:39:42

Gehrke
Member
From: Bremen, DE
Registered: 2013-10-19
Posts: 1,894
Website

Re: Karte nur mit der Landmasse von Deutschland und Bundesländer

brogo wrote:

Früher gab es doch mal zwei Relationen. Eine mit den politischen Grenzen und eine mit der Landmasse. War zwar etwas unübersichtlich, hätte Dir aber genau das gebracht.

Ich glaube die Landmassen-Relationen wurden dann gelöscht, weil man die Infos auch über die Boundaries und Coastlines generieren könnte.

Nö, die gibt es immernoch. type=land_area, land_area=administrative für alle BLs und fast alle Küstenkreise. Dieses Tagging sollte wohl auch Konflikte mit lazy-Auswerten von boundary=administrative vermeiden.

So einfach ist das automatsiche Generieren mit den Coastlines übrigens nicht. Ich bezweifle sogar, dass es überhaupt in allen Fällen geht.

Offline

#8 2015-09-04 20:40:01

wambacher
Member
From: Schlangenbad/Wambach, Germany
Registered: 2009-12-16
Posts: 16,769
Website

Re: Karte nur mit der Landmasse von Deutschland und Bundesländer

brogo wrote:

Ich glaube die Landmassen-Relationen wurden dann gelöscht, weil man die Infos auch über die Boundaries und Coastlines generieren könnte.

Glauben heist nicht Wissen: https://www.openstreetmap.org/relation/ … .486/7.225

Die sind selbstverständlich noch da - nur mit type=land_area und somit für mich nicht verwend- und darstellbar. Ich hab das zwar schon mehrfach beschrieben aber wer es nicht selber versucht, kann das eben nicht nachvollziehen.

gruss
walter

ps: ich glaube, ich werde die einfach duplizieren und vernünftig taggen müssen.

Last edited by wambacher (2015-09-04 20:40:31)

Offline

#9 2015-09-04 20:43:15

Gehrke
Member
From: Bremen, DE
Registered: 2013-10-19
Posts: 1,894
Website

Re: Karte nur mit der Landmasse von Deutschland und Bundesländer

wambacher wrote:

ich glaube, ich werde die einfach duplizieren und vernünftig taggen müssen.

Ich baue mir die Multipolygone ja alle mit PostGIS selbst und habe daher keine Probleme mit dem aktuellen Tagging, aber wir beide könnten uns da sicher auf etwas einigen.

Wer "verlangt" denn den Bestand des aktuellen land_area-Taggings?

Offline

#10 2015-09-04 22:15:01

wambacher
Member
From: Schlangenbad/Wambach, Germany
Registered: 2009-12-16
Posts: 16,769
Website

Re: Karte nur mit der Landmasse von Deutschland und Bundesländer

Gehrke wrote:

Ich baue mir die Multipolygone ja alle mit PostGIS selbst und habe daher keine Probleme mit dem aktuellen Tagging, aber wir beide könnten uns da sicher auf etwas einigen.

Hab ich früher auch so gemacht. War und ist  mir zu fehleranfällig. Ich nehme jetzt halt das, was mit der Standard-Konverter/ -Importer osm2pgsql "liefert" und sonst nichts.

Wer "verlangt" denn den Bestand des aktuellen land_area-Taggings?

soweit ich weiss bzw ahne: niemand. Ich habe jedenfalls noch nie im OSM-Umfeld entsprechende Karten gesehen.

ich suche mal nach den Land_area-Relationen und dann wissen wir zumindest, wo die erfasst wurden. Ist nicht einfach für mich, da ich ja die Geometrien nicht in der DB habe aber die Ways als Member sollten reichen.

1. Teilergebnis: es sind 44 Stück
2. Liste:
das sollte doch machbar sein, oder? Dafür brauche ich jetzt auch keine Grafik.

Liste gelöscht

Von den 44 sind 32 in DEU, 5 Blödsinn, da sie nur den Küstenabschnitt aber nicht die ganze Landmasse beschreiben.
tn_la_quatsch.png

dazu ist Slovenien Blödsinn, da das "land Area"  gleich der normalen Grenze incl Adria ist
tn_slv_la_put.png

7 ausländische LA sind formal ok und beschreiben wirklich das ganze Gebiet.
Polen, Belgien, Estland, Litauen?, Kathar, Norfolk island und ein Kreis in Polen.

Und nur um die müssen wir uns ein wenig kümmern.

Gruss
walter

Last edited by wambacher (2015-09-06 22:16:15)

Offline

#11 2015-09-06 22:13:24

wambacher
Member
From: Schlangenbad/Wambach, Germany
Registered: 2009-12-16
Posts: 16,769
Website

Re: Karte nur mit der Landmasse von Deutschland und Bundesländer

Hi,

nachdem mein obiger Vorschlag ein unheimliches interesse verbunden mit einer unvorstellbaren Akzeptanz gefunden hat, hab ich mich zu einer anderen Lösung entschlossen. wink

Nee, im Ernst: Selbst wenn wir die paar Rels ändern würden, wäre das keine weltweite Lösung geworden. Ganz einfach, da es in den anderen Gegenden überhaupt nichts derartiges gibt. Und was nicht da ist, kann man nicht anpassen - höchstens neu erfassen.

Meine Lösung basiert darauf, die bereits vollständig erfassten Coastlines zu verwenden und mit deren Hilfe die Grenz-Polygone auf die Landflächen zu reduzieren. Das sieht dann für DEU so aus:
tn_landareas1.png

Die Berechnungen für alle davon betroffenen Grenzen kann einige Zeit dauern (DEU braucht etwa 5 Minuten, Bremen nur 5 Sekunden) und die Integration in die Boundaries Map wird auch noch etwas brauchen. Aber ich meine, dass ich dieses Problem, das mich schon ca 1 Jahr quält, endlich hinbekommen habe.

Gruss
walter

@viw: Wenn du die "wasserfreien" Shapes von Norddeutschland noch braucht, sag Bescheid. Die BM kann das halt noch nicht exportieren.

Offline

#12 2015-09-08 06:25:27

viw
Member
Registered: 2010-05-15
Posts: 2,623

Re: Karte nur mit der Landmasse von Deutschland und Bundesländer

wambacher wrote:

Hi,

nachdem mein obiger Vorschlag ein unheimliches interesse verbunden mit einer unvorstellbaren Akzeptanz gefunden hat, hab ich mich zu einer anderen Lösung entschlossen. wink

Nee, im Ernst: Selbst wenn wir die paar Rels ändern würden, wäre das keine weltweite Lösung geworden. Ganz einfach, da es in den anderen Gegenden überhaupt nichts derartiges gibt. Und was nicht da ist, kann man nicht anpassen - höchstens neu erfassen.

Meine Lösung basiert darauf, die bereits vollständig erfassten Coastlines zu verwenden und mit deren Hilfe die Grenz-Polygone auf die Landflächen zu reduzieren. Das sieht dann für DEU so aus:
https://osm.wno-edv-service.de/images/osm/thumbs/tn_landareas1.png

Die Berechnungen für alle davon betroffenen Grenzen kann einige Zeit dauern (DEU braucht etwa 5 Minuten, Bremen nur 5 Sekunden) und die Integration in die Boundaries Map wird auch noch etwas brauchen. Aber ich meine, dass ich dieses Problem, das mich schon ca 1 Jahr quält, endlich hinbekommen habe.

Gruss
walter

@viw: Wenn du die "wasserfreien" Shapes von Norddeutschland noch braucht, sag Bescheid. Die BM kann das halt noch nicht exportieren.

Wow!!! Da ist man mal zwei Tage offline und dann... Ich bin beeindrukt. Wenn du mir die Shapes schicken könntest, würde ich damit sehr gerne weiter experimentieren. bzw. für Leaflet wäre wahrscheinlich json besser, da man das nicht erst umwandeln muss.
Eigentlich möchte ich nur eine Karte mit den Grenzen haben, in einer Zoomstufe, damit ich darin Marker setzen kann.

Offline

#13 2015-09-08 08:00:37

wambacher
Member
From: Schlangenbad/Wambach, Germany
Registered: 2009-12-16
Posts: 16,769
Website

Re: Karte nur mit der Landmasse von Deutschland und Bundesländer

viw wrote:

Wow!!! Da ist man mal zwei Tage offline und dann... Ich bin beeindrukt.

Schau mal hier:
tn_landareas.png

Wenn du mir die Shapes schicken könntest, würde ich damit sehr gerne weiter experimentieren. bzw. für Leaflet wäre wahrscheinlich json besser, da man das nicht erst umwandeln muss.

Shapes sind derzeit einfacher für mich (pgsql2shp macht das gerne). Du könntest ja mal mit https://github.com/calvinmetcalf/leaflet.shapefile experimentieren.

Eigentlich möchte ich nur eine Karte mit den Grenzen haben, in einer Zoomstufe, damit ich darin Marker setzen kann.

Tja, "Kleine Lösungen" sind schwieriger wink

Wird ein wenig dauern aber heute schick ich die Shapes rüber.

Gruss
walter

Last edited by wambacher (2015-09-08 10:13:27)

Offline

#14 2015-09-08 10:07:51

wambacher
Member
From: Schlangenbad/Wambach, Germany
Registered: 2009-12-16
Posts: 16,769
Website

Re: Karte nur mit der Landmasse von Deutschland und Bundesländer

Offline

#15 2015-09-08 17:14:10

viw
Member
Registered: 2010-05-15
Posts: 2,623

Re: Karte nur mit der Landmasse von Deutschland und Bundesländer

Vielen Dank!

Offline

#16 2015-09-08 19:27:37

Swen Wacker
Member
From: Lüneburg
Registered: 2014-07-25
Posts: 339

Re: Karte nur mit der Landmasse von Deutschland und Bundesländer

wambacher wrote:

Meine Lösung basiert darauf, die bereits vollständig erfassten Coastlines zu verwenden und mit deren Hilfe die Grenz-Polygone auf die Landflächen zu reduzieren. Das sieht dann für DEU so aus:
tn_landareas1.png

Genial. Vielen Dank!

Offline

#17 2015-09-13 06:56:20

viw
Member
Registered: 2010-05-15
Posts: 2,623

Re: Karte nur mit der Landmasse von Deutschland und Bundesländer

wambacher wrote:
viw wrote:

Wow!!! Da ist man mal zwei Tage offline und dann... Ich bin beeindrukt.

Schau mal hier:
https://osm.wno-edv-service.de/images/osm/thumbs/tn_landareas.png

Wenn du mir die Shapes schicken könntest, würde ich damit sehr gerne weiter experimentieren. bzw. für Leaflet wäre wahrscheinlich json besser, da man das nicht erst umwandeln muss.

Shapes sind derzeit einfacher für mich (pgsql2shp macht das gerne). Du könntest ja mal mit https://github.com/calvinmetcalf/leaflet.shapefile experimentieren.

Also damit kommt man recht schnell zu einem Ergebnis. Allerdings habe ich keine Ahnung wie und wo ich danach suchen muss, damit ich die Farben und Strichstärken anpassen kann.

Offline

#18 2015-09-13 10:03:17

wambacher
Member
From: Schlangenbad/Wambach, Germany
Registered: 2009-12-16
Posts: 16,769
Website

Re: Karte nur mit der Landmasse von Deutschland und Bundesländer

viw wrote:

Also damit kommt man recht schnell zu einem Ergebnis. Allerdings habe ich keine Ahnung wie und wo ich danach suchen muss, damit ich die Farben und Strichstärken anpassen kann.

Kommt auf die Anwendung an. In QGIS klassifiziere ich nach der ID. Das ist die Relations-Nummer. Ansonsten sind alle Tags von OSM drin.

Gruss
walter

Offline

#19 2015-09-13 13:35:12

ikonor
Member
Registered: 2010-11-08
Posts: 637
Website

Re: Karte nur mit der Landmasse von Deutschland und Bundesländer

viw wrote:
wambacher wrote:

Shapes sind derzeit einfacher für mich (pgsql2shp macht das gerne). Du könntest ja mal mit https://github.com/calvinmetcalf/leaflet.shapefile experimentieren.

Also damit kommt man recht schnell zu einem Ergebnis. Allerdings habe ich keine Ahnung wie und wo ich danach suchen muss, damit ich die Farben und Strichstärken anpassen kann.

Oder meinst Du Leaflet bzw. speziell leaflet.shapefile?

Offline

#20 2015-09-13 13:39:28

wambacher
Member
From: Schlangenbad/Wambach, Germany
Registered: 2009-12-16
Posts: 16,769
Website

Re: Karte nur mit der Landmasse von Deutschland und Bundesländer

ikonor wrote:

Oder meinst Du Leaflet bzw. speziell leaflet.shapefile?

In meinen Shapes ist das das Feld ID. Da sollte man mit Leaflet wohl herankommen.

Gruss
walter

Last edited by wambacher (2015-09-13 13:42:46)

Offline

#21 2015-09-13 14:37:16

viw
Member
Registered: 2010-05-15
Posts: 2,623

Re: Karte nur mit der Landmasse von Deutschland und Bundesländer

ikonor wrote:
viw wrote:
wambacher wrote:

Shapes sind derzeit einfacher für mich (pgsql2shp macht das gerne). Du könntest ja mal mit https://github.com/calvinmetcalf/leaflet.shapefile experimentieren.

Also damit kommt man recht schnell zu einem Ergebnis. Allerdings habe ich keine Ahnung wie und wo ich danach suchen muss, damit ich die Farben und Strichstärken anpassen kann.

Oder meinst Du Leaflet bzw. speziell leaflet.shapefile?

Naja ich hatte jetzt die Shapes von Wambacher so in das Beispiel eingebunden wie dort die Countries drin waren.
Das Ergebnis ist natürlich das die Flächen einen leichten Blauton haben und die Rändern mit einem 5 pixel straßen dunkelblauen Rand versehen sind.
Ich hätte jetzt gerne stattdessen einen Grauton und die Grenze mit einem Pixel schwarz/dunkelgrau. Die Frage ist natürlich wo muss ich da ran? Ist das in der leafletdatei oder reicht es wenn ich beim Layer irgendwelche Werte mitgebe.

Offline

#22 2015-09-13 15:25:47

ikonor
Member
Registered: 2010-11-08
Posts: 637
Website

Re: Karte nur mit der Landmasse von Deutschland und Bundesländer

Laut README.md:

L.shapefile(arrayBuffer or url[,options][,importUrl]);

Options are passed to L.Geojson as is.

kann man das mit den "options" mitgeben, analog zum L.Geojson Layer, Beispiel aus dem Tutorial:

var myStyle = {
    "color": "#ff7800",
    "weight": 5,
    "opacity": 0.65
};

L.geoJson(myLines, {
    style: myStyle
}).addTo(map);

Statt "L.geoJson" müsste das dann "L.shapefile" heißen.

Offline

#23 2015-09-13 17:41:43

wambacher
Member
From: Schlangenbad/Wambach, Germany
Registered: 2009-12-16
Posts: 16,769
Website

Re: Karte nur mit der Landmasse von Deutschland und Bundesländer

viw wrote:

Die Frage ist natürlich wo muss ich da ran? Ist das in der leafletdatei oder reicht es wenn ich beim Layer irgendwelche Werte mitgebe.

Wie Ikonor schon schrieb, ist das das Styling. Wenn du die optische Erscheinung von irgendwas ändern willst, was du auf die Karte bringst, musst du den Style ändern.
Das ganze kannst du dann abhängig von den in den Objekten enthaltenen Parametern machen (z.B. alle AL2 Pink ohne Füllung, ohne Namen und alle AL4 grau transparent mit schwarzem Rand und Namen). Ziemlich kompliziert wird das dann zoom-abhängig - aber es geht.

Bei OpenLayers ist das ganz genau so.

Gruss
walter

Last edited by wambacher (2015-09-13 17:42:24)

Offline

#24 2015-09-13 18:15:26

viw
Member
Registered: 2010-05-15
Posts: 2,623

Re: Karte nur mit der Landmasse von Deutschland und Bundesländer

ikonor wrote:

Laut README.md:

L.shapefile(arrayBuffer or url[,options][,importUrl]);

Options are passed to L.Geojson as is.

kann man das mit den "options" mitgeben, analog zum L.Geojson Layer, Beispiel aus dem Tutorial:

var myStyle = {
    "color": "#ff7800",
    "weight": 5,
    "opacity": 0.65
};

L.geoJson(myLines, {
    style: myStyle
}).addTo(map);

Statt "L.geoJson" müsste das dann "L.shapefile" heißen.

Die Richtung stimmt schon. Aber ganz zufrieden bin ich noch nicht.

                var m = L.map('map').setView([53.396,11.140], 7);
		var myStyle = {
                "color": "#000000",
	        "fillColor": "#000000",
                "weight": 1,
                "opacity": 1
};

		var shpfile = new L.Shapefile('landareas_deu_al4.zip', {style: myStyle
			
		});
		shpfile.addTo(m);
		shpfile.once("data:loaded", function() {
			console.log("finished loaded shapefile");
		});

allerdings ist die Flächenfarbe nicht schwarz, sondern grau.

Offline

#25 2015-09-13 19:06:07

wambacher
Member
From: Schlangenbad/Wambach, Germany
Registered: 2009-12-16
Posts: 16,769
Website

Re: Karte nur mit der Landmasse von Deutschland und Bundesländer

viw wrote:

allerdings ist die Flächenfarbe nicht schwarz, sondern grau.

nur geraten: l.shapefile ruft laut doku l.geojson auf.

http://leafletjs.com/reference.html#geojson

und l.geojson braucht eine funktion, die die gewünschte farbe zurückgibt. ich würde eine basteln, die halt immer "schwarz" zurückgibt. oder das grau, was du ja eigentlich haben willst.

Eventuell liegt das daran?

Gruss
walter

Offline

Board footer

Powered by FluxBB