Ich stehe grad vor der Aufgabe, die Punkte in einem Multipolygon mit PostGIS herausfiltern zu wollen, aber da bin ich noch nicht fit genug. Sollte ganz einfach sein, vielleicht hat das jemand sofort präsent wie man das machen muss.
Ganz Deutschland habe ich in PostGIS mit osm2pgsql ohne hstore eingespielt.
Ich habe hier das Multipolygon als Relation: http://www.openstreetmap.org/browse/relation/55752
Und ich habe diese Abfrage:
$query = “SELECT name, lat, lon
FROM (
SELECT name,
x(transform(way, 4326)) AS lon,
y(transform(way, 4326)) AS lat
FROM planet_osm_point
WHERE $k=‘$v’
UNION
SELECT name,
x(centroid(transform(way, 4326))) AS lon,
y(centroid(transform(way, 4326))) AS lat
FROM planet_osm_polygon
WHERE $k=‘$v’
) AS u1”;
Meinem Verständnis nach muss da noch ein WHERE dahinter, aber mit einer räumlichen Bedingung, dass die Punkt in dem Gebiet liegen sollen. Wie muss die wohl aussehen?