[Talk-de] Strassen und Koordinaten
Florian Lohoff
flo at rfc822.org
Mi Mai 20 19:48:49 UTC 2009
On Tue, May 19, 2009 at 11:00:24AM +0200, Michael Buege wrote:
> Subject: [Talk-de] Strassen und Koordinaten
>
> Moin
> Fuer eine kleine Testanwendung[1] suche ich einen eleganten Weg, aus
> OSM-Daten eine Liste von Strassen mit den dazu gehoerige Koordinaten zu
> extrahieren. Das Ganze erst mal fuer einen ueberschaubaren Bereich, also
> eine Gemeinde, einen Stadtteil usw.
> Gibt es sowas schon irgendwo?
Ich habe mir mit osmosis ein Deutschland export (geht auch nur ein Bundesland)
in eine postgres gepackt - Dann mache ich tolle liste so:
select distinct wt1.v, ST_AsText(ST_Centroid(ways.linestring))
from ways,way_tags wt1,way_tags wt2, (
select ST_BuildArea(ST_Collect(linestring)) as geom
from (
select linestring
from ways
where id in (
select member_id
from relation_members
where member_type = 'W'
and relation_id = ?
order by member_id
)
) as waylines
) as border
where ways.id = wt1.way_id
and wt1.k = 'name'
and ways.id = wt2.way_id
and wt2.k = 'highway'
and ST_Intersects(ways.linestring, border.geom)
Das tolle sql statement baut aus einer admin boundary relation ein polygon
und matched dann aus alle strassen die "Intersecten" d.h. in oder durch das
polygon laufen und wirft fuer diese zum einen den namen aus wie auch
den "Mittelpunkt" - Was im moment doof ist weil der Mittelpunkt der Straße
nicht zwangsweise auf der Straße liegen muss.
Den Mittelpunkt nutze ich um dann einen link zu bauen der mir einen Marker
dahin setzt wo ich die Straße vermute.
Ich nutze das um z.b. fuer jede Gemeinde im Kreis Gütersloh (Und ein paar
anderer Gemeinden) anhand der Wahlbezirkszuordnung den Status zu ermitteln -
d.h. 2 mal am Tag fuer jede Gemeinde die existierenden und fehlenden Straßen.
http://osm.gt.owl.de/Strassenliste/
Flo
--
Florian Lohoff flo at rfc822.org +49-171-2280134
Those who would give up a little freedom to get a little
security shall soon have neither - Benjamin Franklin
-------------- nächster Teil --------------
Ein Dateianhang mit Binärdaten wurde abgetrennt...
Dateiname : signature.asc
Dateityp : application/pgp-signature
Dateigröße : 189 bytes
Beschreibung: Digital signature
URL : <http://lists.openstreetmap.org/pipermail/talk-de/attachments/20090520/9a8361cb/attachment.sig>
Mehr Informationen über die Mailingliste Talk-de