Re: [Talk-de] Wie kann ich 'way' bzw. 'area'?in?Punkt?umwandeln?(xml)?
Martin Mainzer wrote: > Das einzige was merklich dauert, ist die Selektion mittels osmosis. In > der Datenbank liegen dann nur relativ wenige Daten, sodass alle > Operationen in der Datenbank sehr schnell ausgeführt werden. IMO brauchst Du die Vorselektion nicht wirklich. Passe doch einfach den osm2pgsql style so an, dass er nur das importiert was dich wirklich interessiert. Wenn Du alle Tags eines Polygons haben möchtest kannst Du den hstore support verwenden, den ich in osm2pgsql eingebaut habe. Wenn Du zum Beispiel alle Gebäude haben möchtest dann mach einfach einen Import mit folgendem Style: node,way building text phstore Das ergibt dann eine dreispaltige Tabelle: id, way, tags Gruss Sven -- "We just typed make" (Stephen Lambrigh, Director of Server Product Marketing at Informix about porting their Database to Linux) /me is gig...@ircnet, http://sven.gegg.us/ on the Web ___ Talk-de mailing list Talk-de@openstreetmap.org http://lists.openstreetmap.org/listinfo/talk-de
Re: [Talk-de] Wie kann ich 'way' bzw. 'area' in Punkt umwandeln?(xml)?
Martin Mainzer schrieb: > Sven Geggus schrieb am 25.04.2010 14:02: > >> "Alexander (AddisMap.com)" wrote: >> >> >> >>> Also die unfertige Holzhammer Methode ist: >>> >>> - XML in PostGre Datenbank Importieren (osm2pgsql) >>> - Dann die ST_Centroid Funktion welche in PostGIS enthalten ist [1] auf >>> die Geometrien der Wege / Flächen anwenden >>> - dass dann irgendwie ggf. wieder in xml exportieren --- keine Ahnung >>> wie das geht. >>> >>> >> Da war es wieder das ungelöste Problem mit der POI API :( >> >> Eventuell hilft auch mein hstore patch der inzwischen in osm2pgsql >> drin ist. Dann braucht man nicht für jeden POI-typ eine eigene >> Spalte. >> >> Gruss >> >> Sven >> >> > > Danke für die Tipps, werde mich also die Tage mal mit osm2pgsql > beschäftigen. > > Viele Grüße, > Martin > > Ich habe mich nun mittlerweile etwas eingehender mit osm2pgsql und PostGis beschäftigt. Damit habe ich nun auch mein Ziel so gut wie erreicht. Ich habe mich für folgendes Vorgehen entschieden: - Daten mit osmosis vorselektiert, und dann die relevanten Daten mittels osm2pgsql in eine PostGre-Datenbank mit PostGis Erweiterung importiert. - Durch Anwendung der Centroid Funktion habe ich die Flächen in Punkte umgewandelt. - Zuletzt dann die Daten (Punkte und Centroide) als csv exportiert, da ich ja sowieso eine csv-Datei haben wollte. Das einzige was merklich dauert, ist die Selektion mittels osmosis. In der Datenbank liegen dann nur relativ wenige Daten, sodass alle Operationen in der Datenbank sehr schnell ausgeführt werden. Die Ergebnisse werde ich demnächst auf meine OSM user-site (http://wiki.openstreetmap.org/wiki/User:Marmai) stellen. Viele Dank für die Hilfe! Gruß, Martin ___ Talk-de mailing list Talk-de@openstreetmap.org http://lists.openstreetmap.org/listinfo/talk-de
Re: [Talk-de] Wie kann ich 'way' bzw. 'area' in Punkt umwandeln?(xml)?
Sven Geggus schrieb am 25.04.2010 14:02: > "Alexander (AddisMap.com)" wrote: > > >> Also die unfertige Holzhammer Methode ist: >> >> - XML in PostGre Datenbank Importieren (osm2pgsql) >> - Dann die ST_Centroid Funktion welche in PostGIS enthalten ist [1] auf >> die Geometrien der Wege / Flächen anwenden >> - dass dann irgendwie ggf. wieder in xml exportieren --- keine Ahnung >> wie das geht. >> > > Da war es wieder das ungelöste Problem mit der POI API :( > > Eventuell hilft auch mein hstore patch der inzwischen in osm2pgsql > drin ist. Dann braucht man nicht für jeden POI-typ eine eigene > Spalte. > > Gruss > > Sven > Danke für die Tipps, werde mich also die Tage mal mit osm2pgsql beschäftigen. Viele Grüße, Martin ___ Talk-de mailing list Talk-de@openstreetmap.org http://lists.openstreetmap.org/listinfo/talk-de
Re: [Talk-de] Wie kann ich 'way' bzw. 'area' in Punkt umwandeln?(xml)?
"Alexander (AddisMap.com)" wrote: > Also die unfertige Holzhammer Methode ist: > > - XML in PostGre Datenbank Importieren (osm2pgsql) > - Dann die ST_Centroid Funktion welche in PostGIS enthalten ist [1] auf > die Geometrien der Wege / Flächen anwenden > - dass dann irgendwie ggf. wieder in xml exportieren --- keine Ahnung > wie das geht. Da war es wieder das ungelöste Problem mit der POI API :( Eventuell hilft auch mein hstore patch der inzwischen in osm2pgsql drin ist. Dann braucht man nicht für jeden POI-typ eine eigene Spalte. Gruss Sven -- If you can spend five minutes on the Internet and do not run Linux, you're a genius. (Dirk Hohndel) /me is gig...@ircnet, http://sven.gegg.us/ on the Web ___ Talk-de mailing list Talk-de@openstreetmap.org http://lists.openstreetmap.org/listinfo/talk-de
Re: [Talk-de] Wie kann ich 'way' bzw. 'area' in Punkt umwandeln (xml)?
Hallo Martin, Martin Mainzer wrote: > Ich suche also etwas vergleichbares wie --add-poi-to-area in mkgmap nur > für xml-Dateien, und bin für jeden Hinweis dankbar. Also die unfertige Holzhammer Methode ist: - XML in PostGre Datenbank Importieren (osm2pgsql) - Dann die ST_Centroid Funktion welche in PostGIS enthalten ist [1] auf die Geometrien der Wege / Flächen anwenden - dass dann irgendwie ggf. wieder in xml exportieren --- keine Ahnung wie das geht. Anleitungen um eine PostGIS DB aufzusetzen gibt es im Wiki (z.B. für Mapnik) Grüße, Alexander [1] http://postgis.refractions.net/documentation/manual-svn/ST_Centroid.html ___ Talk-de mailing list Talk-de@openstreetmap.org http://lists.openstreetmap.org/listinfo/talk-de
Re: [Talk-de] Wie kann ich 'way' bzw. 'area' in Punkt umwandeln (xml)?
Am 22.04.2010 21:29, schrieb Martin Mainzer: > Hallo, > > ich versuche POI-Dateien von Wohnmobil-Stellplätzen (tag > caravan_site)für verschiedene Navis zu erstellen. Mit den 'nodes' die > als caravan_site getaggt sind, klappt das auch prima: Aus der osm-Datei > mittels Osmosis die relevanten nodes extrahieren, dann mit 'osm2csv' die > xml-Daten in csv-Daten umwandeln. Aus der csv-Datei lassen sich dann für > diverse Navis (Garmin, TomTom, ...) POI-Dateien erstellen. > Nun aber das Problem mit den areas die als caravan_site getaggt wurden. > Am liebsten würde ich diese Flächen auch in Punkte umwandeln (am > liebsten Schwerpunkte der Flächen), sodass ich dann eine osm-Datei mit > Punkten und Schwerpunkten habe, die ich dann in csv umwandeln kann. Geht > das? Hat irgendwer eine Idee wie man das realisieren könnte? Falls > Schwerpunkte nicht klappen, wäre ich auch schon damit zufrieden, einfach > einen Punkt des ways der die area bildet als Vertreter für die area zu > nehmen. > Ich suche also etwas vergleichbares wie --add-poi-to-area in mkgmap nur > für xml-Dateien, und bin für jeden Hinweis dankbar. > > Gruß, > Martin Moin, ich habe mir dazu eine eigene Routine gebastelt (da ich auf meiner Karte die Infos auch jeweils mittig anzeigen lassen will). Erstmal schau ich mir den way an, ob der Anfangspunkt gleich dem Endpunkt ist. Dann wird er als Fläche behandelt. Ansonsten als Weg. *Fläche:* (der einfachste Algorithmus ;-)): Ich nehme den höchsten und den geringsten Breiten- und Längengrad und berechne jeweils den Mittelpunkt. Ist zwar nicht sonderlich genau, aber tut's erstmal... *Weg:* Ich berechne erst die exakte Länge (in Metern) des Weges. Dann gehe ich den Weg bis zur Hälfte und hole mir den entsprechenden Punkt. Für ersteres kann ich den PHP-Algorithmus und für zweiteres sowohl einen Perl-, als auch PHP-Algorithmus zur Verfügung stellen. Die Routine drum rum müsstest du dir selbst basteln. MfG Andreas -- Diese Nachricht wurde maschinell erstellt und ist daher ohne Unterschrift gültig. signature.asc Description: OpenPGP digital signature ___ Talk-de mailing list Talk-de@openstreetmap.org http://lists.openstreetmap.org/listinfo/talk-de
[Talk-de] Wie kann ich 'way' bzw. 'area' in Punkt umwandeln (xml)?
Hallo, ich versuche POI-Dateien von Wohnmobil-Stellplätzen (tag caravan_site)für verschiedene Navis zu erstellen. Mit den 'nodes' die als caravan_site getaggt sind, klappt das auch prima: Aus der osm-Datei mittels Osmosis die relevanten nodes extrahieren, dann mit 'osm2csv' die xml-Daten in csv-Daten umwandeln. Aus der csv-Datei lassen sich dann für diverse Navis (Garmin, TomTom, ...) POI-Dateien erstellen. Nun aber das Problem mit den areas die als caravan_site getaggt wurden. Am liebsten würde ich diese Flächen auch in Punkte umwandeln (am liebsten Schwerpunkte der Flächen), sodass ich dann eine osm-Datei mit Punkten und Schwerpunkten habe, die ich dann in csv umwandeln kann. Geht das? Hat irgendwer eine Idee wie man das realisieren könnte? Falls Schwerpunkte nicht klappen, wäre ich auch schon damit zufrieden, einfach einen Punkt des ways der die area bildet als Vertreter für die area zu nehmen. Ich suche also etwas vergleichbares wie --add-poi-to-area in mkgmap nur für xml-Dateien, und bin für jeden Hinweis dankbar. Gruß, Martin ___ Talk-de mailing list Talk-de@openstreetmap.org http://lists.openstreetmap.org/listinfo/talk-de