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 2017-03-29 11:21:04

karstenhl
Member
Registered: 2017-01-10
Posts: 47

Landesgrenzen finden?

Hallo,

ich habe einen laufenden Server mit Mapnik, Overpass, postgresql und Nominatim.

Ich möchte die Admingrenzen ( wenns geht alle Stufen ) aus den OSM Daten extrahieren. Ein Wenig habe ich schon geschafft nur mein Problem sind die See und Landrenzen der Länder.

Wie finde ich die Landgrenzen bis jetzt sieht Deutschland unnmöglich aus weil nur die Seegrenzen zu sehen sind.

https://nominatim.openstreetmap.org/sea … 1&viewbox=

Oder Chile:

https://nominatim.openstreetmap.org/sea … 1&viewbox=

Oder Kanada:

https://nominatim.openstreetmap.org/sea … 1&viewbox=


Gibt es vielleicht ein Script das das bewältigen kann?

Danke

Offline

#2 2017-03-29 12:20:29

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

Re: Landesgrenzen finden?

karstenhl wrote:

Hallo,

ich habe einen laufenden Server mit Mapnik, Overpass, postgresql und Nominatim.

Ich möchte die Admingrenzen ( wenns geht alle Stufen ) aus den OSM Daten extrahieren. Ein Wenig habe ich schon geschafft nur mein Problem sind die See und Landrenzen der Länder.

Wie finde ich die Landgrenzen bis jetzt sieht Deutschland unnmöglich aus weil nur die Seegrenzen zu sehen sind.

Bei mir natürlich wink
tn_land.png

tn_bodensee.png

tn_peru.png

Allerdings war das nicht mit einem Script getan. Ich clippe in PostGIS alle Admingrenzen gegen die Wasserpolygone von Jochen Topf. Dazu habe ich noch Wasserpolygone von grossen Seen verwendet, die in OSM kein natural=coastline besitzen. Der Aufwand ist teilweise wahnsinnig: Canada braucht als extremstes Beispiel ca 15 Stunden Berechnungszeit.

Nicht einfach, nicht portierbar - aber machbar.

Gruss
walter

Last edited by wambacher (2017-03-29 19:10:01)

Offline

#3 2017-03-29 12:26:37

karstenhl
Member
Registered: 2017-01-10
Posts: 47

Re: Landesgrenzen finden?

Hallo Wambacher,

wie genau gehe ich da vor? Kann Kanada nach den 15h einfach mit den Landesgrenzen geladen werden?

Danke smile

Offline

#4 2017-03-29 12:36:56

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

Re: Landesgrenzen finden?

karstenhl wrote:

Hallo Wambacher,

wie genau gehe ich da vor? Kann Kanada nach den 15h einfach mit den Landesgrenzen geladen werden?

Danke smile

wie meinst du das? Downloaden oder selber berechnen?

Offline

#5 2017-03-29 12:46:38

karstenhl
Member
Registered: 2017-01-10
Posts: 47

Re: Landesgrenzen finden?

Hallo Wambacher,

selber berechnen. wie hast du genau die Landmasse gegen die Wasserpolygone berechnet? Wird das Ergebnis in der Datenbank abgelegt.

Bietest du das Ergebnis vielleicht als Download an, zum Importieren in meine postgresql Datenbank?

Danke Dir

Last edited by karstenhl (2017-03-29 12:47:09)

Offline

#6 2017-03-29 13:02:13

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

Re: Landesgrenzen finden?

karstenhl wrote:

Hallo Wambacher,

selber berechnen. wie hast du genau die Landmasse gegen die Wasserpolygone berechnet? Wird das Ergebnis in der Datenbank abgelegt.

so

select into tGeom st_multi(st_difference(way, st_union(geom)))
                   from collected_admin_boundaries,
                        water_polygons 
                  where id = aId
                    and (ST_Touches(cab,geom) or ST_Intersects(cab,geom)) 
                  group by way;
karstenhl wrote:

Bietest du das Ergebnis vielleicht als Download an, zum Importieren in meine postgresql Datenbank?

Ja, aber nicht weltweit mit ALLEN Admin-Levels. Das sprengt meine Kapazitäten. Und (noch) nur als Shp bzw GeoJson.

siehe unten Boundaries Map.

Last edited by wambacher (2017-03-29 13:03:16)

Offline

#7 2017-03-29 13:24:52

karstenhl
Member
Registered: 2017-01-10
Posts: 47

Re: Landesgrenzen finden?

Danke dir. Das hilft bestimmt weiter.

Ich habe mal versucht Kanada auf deiner Seite zu laden. Dauert ein wenig. Kann man den Detailgrad der Admingrenzen definieren damit die Karte nicht so viele Megabyte hat?

Und, kann das:

select into tGeom st_multi(st_difference(way, st_union(geom)))
                   from collected_admin_boundaries,
                        water_polygons
                  where id = aId
                    and (ST_Touches(cab,geom) or ST_Intersects(cab,geom))
                  group by way;

für den kompletten Planeten in einem Rutsch ( Tage, Wochen etc. smile ) erledigt werden? Oder muss ich für jedes Land einzeln mit der Berechnung starten?

Danke

Last edited by karstenhl (2017-03-29 14:09:33)

Offline

#8 2017-03-29 15:33:07

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

Re: Landesgrenzen finden?

karstenhl wrote:

Danke dir. Das hilft bestimmt weiter.

Ich habe mal versucht Kanada auf deiner Seite zu laden. Dauert ein wenig. Kann man den Detailgrad der Admingrenzen definieren damit die Karte nicht so viele Megabyte hat?

Noch nicht. Ich bastel da schon seit Monaten dran rum (nicht nur wink), aber das ist ein sehr komplexes Thema:

https://spatialdbadvisor.com/oracle_spa … -in-oracle
Bild1:  Ausgangslage, Bild2: einfache aber falsche Lösung, Bild3: richtige aber komplexe Lösung.

Und, kann das:

select into tGeom st_multi(st_difference(way, st_union(geom)))
                   from collected_admin_boundaries,
                        water_polygons
                  where id = aId
                    and (ST_Touches(cab,geom) or ST_Intersects(cab,geom))
                  group by way;

für den kompletten Planeten in einem Rutsch ( Tage, Wochen etc. smile ) erledigt werden? Oder muss ich für jedes Land einzeln mit der Berechnung starten?

Danke

naja, kommt auf die "Tiefe" an. für al2,3,4 dürften einige Tage reichen. Planet: Wochen.

Was willst du eigentlich machen? Und für wen? Privat, Eig. Firma?, Kunde?

Last edited by wambacher (2017-03-29 15:34:50)

Offline

#9 2017-03-29 15:48:48

karstenhl
Member
Registered: 2017-01-10
Posts: 47

Re: Landesgrenzen finden?

Also dann starte ich den Job und warte Wochen bis alles durch ist.

vielen Dank Dir Wambacher

Offline

#10 2017-03-29 19:14:13

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

Re: Landesgrenzen finden?

karstenhl wrote:

Also dann starte ich den Job und warte Wochen bis alles durch ist.

das wars? na denn mal viel Glück.

Offline

#11 2017-03-29 20:02:56

karstenhl
Member
Registered: 2017-01-10
Posts: 47

Re: Landesgrenzen finden?

Hallo Wachmacher,

was meinst du? ich habe noch keine Ahnung was mich nun genau erwartet und ob das die Lösung ist die ich benötige. Aber du hast mich schon einige Schritte vorran gebracht.
Danke dir nochmal dafür.

Last edited by karstenhl (2017-03-29 20:03:37)

Offline

Board footer

Powered by FluxBB