Hinweise zur Kartenqualität
Die Darstellung einer Karte ist ein sehr komplexer Vorgang. Iwan ermöglicht eine große Auswahl an Optionen zur Beeinflussung der Qualität und/oder Geschwindigkeit. Dabei können alle Varianten beliebig kombiniert werden, um somit einen vernüftigen Kompromiss zwischen Darstellungsqualität und Performance über einen breiten Maßstabsbereich zu erreichen.
Das Problem liegt oft in dem angesprochenen großen Maßstabsbereich, der durch interaktive Anwendungen abgedeckt werden muss.
Im Gegensatz dazu stellt eine "gedruckte" Karte weniger Anforderungen an den Bearbeiter, da die Ausgabegröße und damit der Karteninhalt im Voraus festgelegt sind. Auf dieser Seite werden einige der üblichen Probleme angesprochen.
Antialias
Dieses Verfahren verringert die "Treppenstufen" bei Liniendarstellungen. Dabei werden Pixel mit einem Alpha- (Transparenz) Wert zur eigentlichen Linie hinzugefügt. Natürlich ist diese Verbesserung nicht ohne "Kosten". Der Aufwand für die Bildberechnung kann je nach Linienstärke bis um den Faktor 7 größer sein.
Iwan verwendet die Antigrain Bibliothek für Darstellungen dieser Art. Diese arbeitet mit einem Subpixel-Antialiasing Verfahren und erzielt damit besondes gute Ergebnisse bei der Ausgabequalität.
Das folgende Beispiel stammt aus dem Themenstadtplan von Dresden und soll den Effekt verdeutlichen:
 |
 |
|
mit Anti-Alias |
ohne Anti-Alias |
In der detailierten Darstellung ist der Effekt recht gut zu erkennen:
 |
 |
|
mit anti-Alias |
ohne anti-Alias |
Der Laie nimmt diese Verbesserungen oft nur im direkten Vergleich war.
Mehrschichtige Liniensymbole
Zur Abbildung von Linienelementen, die aus kombinierten Symbolen bestehen, stehen zwei grundsätzliche Möglichkeiten zur Verfügung.
Zum einen die objektweise Schichtung der Geometrieabschnitte, zum anderen die ebenenweise Überlagerung. Für Ersteres steht der Befehl MakeSymbolGroup zur Verfügung. Die zweite Variante kann in einer Legendendatei (ILF) definiert werden.
Die meisten Systeme untersützen nur die objektweise Symbolüberlagerung. Dabei wird jeder einzelne Linienabschnitt durch mehrfaches Zeichnen mit verschiedenen Symbolen auf der Karte dargestellt.
In Iwan steht dafür die Symboleigenschaft MakeSymbolGroup zur Verfügung. Dabei wird für jedes Symbol definiert, wieviele weitere Darstellungsebenen für ein Geometrieobjekt existieren.
Am Beispiel einer Straße soll dies verdeutlicht werden. Die Darstellungsübergänge der einzelnen Segmente sind dabei durch unschöne Brüche sichtbar.
|