On Wed, Jan 06, 2010 at 04:46:23PM +0100, Tobias Knerr wrote:
[Innerorts über spezielles Tag an jedem Weg markieren]
Ja! Vorverarbeitung ist sowieso nötig (zumindest wenn man in mehr als nur ein paar Städten routen will) und LineString-in-LinearRing lässt sich z.B. mit GEOS einfach _und_ schnell überprüfen (insbesondere wenn man die Grenzen in einen RTree packt). Für BaWü (Stand: 20091212) braucht die Vorverarbeitung bei bereits beschäftigtem Rechner (Software bauen) insgesamt nur 70.5s, davon der Innerorts-Check ganz 16.3s.Möchtest du lieber Bounding-Polygone auswerten?
Gesamtlaufzeit: 70.5s Grenzen suchen / indizieren (836 gefunden): <0.4s Innerorts-Check für alle 1058369 Kanten: 15.9sFür den kompletten Planet dauerts natürlich länger (mehrere Stunden), aber die Vorverarbeitung (Binärdatenbank mit OSM-Objekten -> Binärdatenbank mit vollständigem Routing-Graph) war bisher selbst bei kaltem Cache immer deutlich schneller als der initiale Import (OSM-BZ2-Datei -> Binärdatenbank mit OSM-Objekten; bzcat läuft auf 2. Core): Der Import dauerte für BaWü 189.5s.
Ich programmiere lieber einen Polygon-Check als ein Tool, was falsch gesetzte innerorts=yes/no erkennt.
CU Sascha -- http://sascha.silbe.org/ http://www.infra-silbe.de/
signature.asc
Description: Digital signature
_______________________________________________ Talk-de mailing list Talk-de@openstreetmap.org http://lists.openstreetmap.org/listinfo/talk-de