[OSM-Devserver] Hilfe bei DB-Abfrage

Tobias Wendorff tobias.wendorff at uni-dortmund.de
Fr Jun 18 19:55:00 CEST 2010


Alexander Matheisen schrieb:
> Wie frage ich Ways ab?
> Nehme ich planet_line, planet_roads, oder planet_ways?
> Und deren Mittelpunkt wird dann auch mit st_centroid(..) bestimmt?

Ich mache es derzeit so:
- Linestring: ST_Line_Interpolate_Point(way, 0.50))
- Polygon: ST_PointOnSurface(way)

Bei Polygonen solltest Du aber vorher noch ST_IsValid(way) abfragen
und mit einem && verkünpfen. Die alte PostGIS-Version mag leider
keine kaputten Polygone und stürzt sogar manchmal ab.

Wenn man richtige Straßenmittelpunkte will, muss man die Stücke,
die zusammengehören vorher zusammenfügen. Ich habe irgendwann mal
einen Code dafür geschrieben, aber Du brauchst das ja eher für
kurze Bereiche.