Zu dem Thema Beschriftung einer Karte gibt es eine interessante Master Arbeit:

leider nicht wirklich öffentlich, hab nur einen Vortrag gehört.

seine lösung war:
ich erkläre das mal bildlich, lässt sich aber gut in einen Algorithmus packen

- für jede Beschriftung einen Score speichern.
(- der Score gibt indirekt die Größe der Beschriftung vor.)
- auf der untersten zoomstufe werden alle Beschriftungen dargestellt.
- jede beschriftng hat eine (virtuelle) auf-dem-Kopf-stehende Pyramide
  über sich
- die Höhe der Pyramide wird durch den Score bestimmt.
- der öffunungswinkel der Pyramiden ist die skalierung der schrift auf
  der karte
        - dazu kann man einen festen Rand addieren das wird dann ein
           Paraboloid
- die zoomstufen sind ebenen Schnitte durch diesen "Pyramidenwald":

Zoomstufe
 |
 0           ________
 1           \      /   ______
 2            \    /___ \    /
 3             \  /\  /  \  /
 4              \/  \/    \/

Namen:       Name1 Name2 Name3

- wenn sich Pyramiden überschneiden wird die angezeigt, die den größten
  score hat. (Pyramide von Name2 wird abgeschnitten)

- als zusätzliche Erweiterung kann noch die Position der Beschriftung
  angepasst werden (bezogen auf den Punkt: mittig drüber oder drunter,
  rechts, links usw)
- anschließend werden Überschneidungen gezählt und über über lernende
  Algorithmen (zb ameisen) die positionierung verbessert werden.

so viel ich weiß wird dieses verfahren professionell eingesetzt.
Harmann Becker (bzw deren frühere Tochter Inovativ Systems) benutzen das.

ich hoffe ich hab mich verständlich ausgedrückt...


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

Reply via email to