Hallo zusammen,

aufgrund einer Anfrage auf der mapnik-de Mailingliste habe ich mal
das sehr rudimentäre Lokalisierungskonzept des deutschen Kartenstils
überdacht und deutlich verbessert.

Für den Anwender kommt dabei raus, dass folgende name-Tags in etwa
dieser Priorität auf der Karte gerendert werden:

name:de
name
int_name
name:en

Das Ganze geht natürlich nur, wenn man zusätzliche Annahmen trifft:

Es wäre zu Aufwendig, die Tatsache, dass sich ein Name im
deutschsprachigen Raum befindet mit einzubeziehen, stattdessen
schaut man einfach, ob der "name" Tag einen lateinischen Zeichensatz
hat und nur wenn das nicht der Fall ist wird ggf. int_name
oder name:en gerendert.

Getestet habe ich das Ganze mal in Chiang Mai wo die Karte jetzt
deutlich lesbarer geworden ist:
http://openstreetmap.de/karte.html?lat=18.79&lon=98.98907&zoom=13

Für die technisch interessierten:

Das Ganze ist über eine stored Procedure in PL/pgSQL gelöst:
http://svn.openstreetmap.org/applications/rendering/mapnik-german/views/get_germanified_name.sql

Das sieht beim Aufruf der Funktion dann so aus:

osm=> select
get_germanified_name('Köln',NULL,'Col_int_ogne','Cologne') as name;
 name 
------
 Köln
(1 Zeile)

osm=> select get_germanified_name('เชียงใหม่',NULL,'Chiang Mai',NULL);
 get_germanified_name 
----------------------
 Chiang Mai
(1 Zeile)

Aufrufsemantik ist
get_germanified_name(name text, name_de text, int_name text, name_en text)

Jetzt bräuchte man nur noch eine passende Transliteration für
diverse große nicht-lateinische Alphabete z.B. für russisch.

Gruss

Sven

P.S.: Kann natürlich einen Moment dauern, bis alles aktualisiert ist.
Zum Neurendern einzelner tiles hilft der übliche "/dirty" Trick.

-- 
Das allgemeine Persönlichkeitsrecht (Art. 2 Abs.1 i.V.m. Art.1 Abs. 1GG)
umfasst das Grundrecht auf Gewährleistung der Vertraulichkeit und Integrität
informationstechnischer Systeme. (BVerfG, 1BvR 370/07)
/me is giggls@ircnet, http://sven.gegg.us/ on the Web

_______________________________________________
Talk-de mailing list
Talk-de@openstreetmap.org
http://lists.openstreetmap.org/listinfo/talk-de

Antwort per Email an