Hallo, Florian Lohoff wrote: > Woa - Hat sichmal jemand "Fig. 7" angesehen und mal ueberlegt wie man > das automatisiert zusammenbauen soll? IMHO gibt es ausser zufaelliges wuerfeln > und gucken welches der inner und outer in welches andere wohl reinpasst > keine systematische loesung.
Wieso das? Am Fusse der Seite habe ich sogar einen Algorithmus verlinkt, der das korrekt macht. > Hat jemand schoenes SQL das via postgis dafuer flaechen rauswirft? Man kann diesen Algorithmus vermutlich in SQL bauen, aber ich wuerde davon abraten. "schoen" wird das bestimmt nicht. > Bisher (das thema inner outer ignorierend) habe ich die flaechen so > zusammengebaut: > > select ST_BuildArea(ST_Collect(linestring)) as geom Ich hatte fuer meinen C-Code zunaechst in der GEOS-Library den PolygonBuilder benutzt, auf dem auch das ST_BuildArea aufsetzt, aber der fuehrt nicht in allen Faellen zu korrekten Resultaten, besonders dort, wo zwei "inner"-Flaechen sich beruehren. > Und bevor hier wieder jemand schlaue Sprueche bringt - SQL das funktioniert > bitte ... Wie gesagt, ich sehe nicht, wie das in SQL gehen soll. Bestimmt kann man eine Stored Procedure machen, die das kann, aber das ist nicht mein Spezialgebiet. Oder Du laedst Dir unter http://download.geofabrik.de/polygon/polygon.tar.bz2 einen fertigen, weltweiten SQL-Dump mit allen Polygonen (simple+advanced) runter. Das ist noch nicht so richtig dokumentiert, weil wir noch ein paar Unklarheiten bezgl. des Taggings haben (wann und in welchem Umfang uebernimmt ein Multipolygon die Tags seiner Member?), aber der Plan ist, daraus einen regelmaessigen Service zu machen. Bye Frederik -- Frederik Ramm ## eMail [email protected] ## N49°00'09" E008°23'33" _______________________________________________ Talk-de mailing list [email protected] http://lists.openstreetmap.org/listinfo/talk-de

