[OSM-talk-nl] Wandelroutes op tile.openstreetmap.nl

Ben Laenen benlaenen at gmail.com
Wed Apr 15 10:36:15 UTC 2009


On Tuesday 14 April 2009, Ldp wrote:
> Ben Laenen wrote:
> > wel, ik was alleszins niet degene die het upstream heeft gebracht.
> > Ik heb de code naar een paar mensen gestuurd, maar weet niet wie de
> > schuldige is. Niet dat ik het erg vind hoor, maar 'k had het liever
> > wat opgekuist eerst :-)
>
> Als opencyclemap.org dit stuk niet gebruikt, kunnen we dan wellicht
> iets beters maken, en er een zaak van maken binnen de
> OSM-gemeenschap? Of het huidige blijven ondersteunen, maar ook nieuwe
> functionaliteit toevoegen.
>
> > De opencyclemap werkt anders, die gebruikt een paar extra sql
> > queries onafhankelijk van osm2psql die na het invoeren uitgevoerd
> > worden.
>
> Inside info, of is dit ook ergens gedocumenteerd?
>
> Zo heb ik me bijvoorbeeld afgevraagd waar hij zijn oneway-informatie
> vandaan haalt.

't Werkt anders, maar de details (de exacte sql query) ken ik niet. 't 
Komt erop neer dat bij de opencyclemap voor alle way members van een 
route relatie ofwel een nieuwe kopie maakt van de way met tags van de 
relatie, ofwel extra tags zet op die way (ik denk het eerste, anders 
botsing van tags bij meerdere routes op een way). Dus weet hij ook op 
elk stukje in welke richting de query gaat.

Hoe het in osm2psql gebeurd is dat het de route bekijkt en opdeelt in zo 
groot mogelijke stukken. Een lusroute wordt dan vertaald in één 
gesloten way bijvoorbeeld.

De reden waarom men voor het tweede zou kiezen is dat voor transparante 
routerendering mapnik aangepast moet worden (anders heb je op elk 
kruispunt van ways een extra donkere "blob"). De opencyclemap had zijn 
eigen versie van mapnik, en ik weet niet of dat feature ooit upstream 
is gegaan. Hoe dan ook is dat wel iets dat best opgelost wordt want met 
de osm2psql-methode heb je ook die blobs, zij het dan wel op de 
kruispunten van routes enkel, of waar meerdere routes samenlopen.

Maar een groter probleem met optie 1 leek me dat je misschien de naam 
wil renderen langsheen de route, en daar sta je voor een probleem die 
de osm2psql niet heeft: de stukjes way zijn uitgezoomd vaak veel te 
kort om de volledige naam te zetten (mapnik kan niet de aparte stukjes 
way aan elkaar plakken en zien dat ze dezelfde naam hebben en ze dan 
maar samennemen om de naam te renderen. Met de osm2psql-methode is de 
route één way, dus meestal plaats genoeg om de naam te renderen.

Beide hebben dus een voordeel, en ik denk dat de oplossing als een 
combinatie van de twee moet gezien worden. Extra sql-query op het eind 
heeft als voordeel dat je de forward/backward roles kan interpreteren, 
of renderings kan maken waarbij onverharde paden een ander kleurtje 
krijgen dan verharde paden. De osm2psql-methode is dan nuttig om de 
algemene informatie te tonen, als daar zijn referentienummers, en 
routenamen.

Hoe dan ook moet eerst eens gezocht worden naar de mapnik-aanpassingen 
voor transparante lijnen.

Ben




More information about the Talk-nl mailing list