[OSM-Devserver] Hilfe bei DB-Abfrage

Tobias Wendorff tobias.wendorff at uni-dortmund.de
Fr Jun 18 20:24:45 CEST 2010


Alexander Matheisen schrieb:
> Folgende Frage wäre noch:
> 
> Wie frage ich Ways ab?
> Nehme ich dazu planet_line, planet_roads, oder planet_ways?

planet_line ist korrekt. Ich glaube, planet_roads ist für die
Darstellung im kleineren Maßstab, also Zoomstufe 8 oder so.

Positive IDs sind normale Objekte, negative IDs sind Relationen.
Sowohl in den Wegen, als auch in den Polygonen.

SELECT ST_Line_Interpolate_Point(way, 0.50)
FROM planet_line
WHERE highway = 'tertiary'
LIMIT 1;
=> 010100002031BF0D00E903770E9B5864C1A71D195AE3415341

Oder, damit man es besser debuggen kann:
SELECT ST_AsText(ST_Line_Interpolate_Point(way, 0.50))
FROM planet_line
WHERE highway = 'tertiary'
LIMIT 1;
=> POINT(-10667224.4520282 5048205.40778295)

Wie Du dort siehst, liegen die Koordinaten in der Merkatorprojektion
vor. Du brauchst für Dein Tool aber höchstwahrscheinlich WGS84.
Also müssen wir das jetzt rückprojizieren:

SELECT ST_AsText(ST_Transform(ST_Line_Interpolate_Point(way, 0.50), 4326))
FROM planet_line
WHERE highway = 'tertiary'
LIMIT 1;
=> POINT(-95.8253076439045 41.2426957517652)