Ich muss eine Karte eines öffentlichen Busverkehrsnetzes zeichnen und habe ein Problem in den Alleen, an denen viele Linien vorbeifahren. Mein Ziel ist es, eine visuelle Karte zu erstellen, bei der die Linien in diesen Alleen parallel zueinander und ohne Zwischenraum sind, um sie alle gleichzeitig zu sehen, unabhängig vom Maßstab.
Ich habe versucht, Optionen zu fangen und parallel zu zeichnen (CAD-Werkzeuge), aber das Problem ist, dass sich der Abstand zwischen den Linien ändert, wenn ich den Maßstab ändere und sie kollidieren oder sich voneinander trennen, wodurch alles durcheinander gebracht wird.
Meine Frage lautet also:
- Gibt es eine Möglichkeit, benachbarte Linien zu zeichnen, die unabhängig vom Maßstab der Visualisierung benachbart bleiben?
Hinweis: Ich weiß nicht, ob benachbart für das verwendet wird, was ich meine. Deshalb kopiere ich hier ein Beispiel für das, wonach ich suche:
Das passiert, wenn ich zoome:
Und wenn ich verkleinere:
EDIT: Hier teile ich eine Situation, warum die vorgeschlagene Lösung für mich nicht funktionieren würde. Drei Linien teilen sich eine Weile die gleiche Straße, teilen sich dann aber in drei verschiedene Straßen.
Ich kann keine einzelne Linie mit mehreren Symbolen verwenden, da sich die Linien im gesamten Netzwerk teilen und wieder verbinden (es gibt mehr als 15 Buslinien).
Die in den Attributdaten enthaltenen Daten helfen mir nicht, da es sich nur um eine Schicht voller Zeilen handelt, die nur einige Netzwerkinformationen enthält (Anzahl der Busse / Stunde, Passagier / Stunde usw.). (QGIS 2.8.6 funktioniert unter Windows 7)
Antworten:
Sie sind sich nicht sicher, ob Sie das wirklich wollen, aber Sie können eine einzelne Linie mit einer anderen Symbolisierung verwenden, um das Erscheinungsbild von zwei parallelen Linien zu erzeugen.
Beginnend mit einer 1,1 km langen Linie in CRS 3857 (metrisch, Pseudo-Mercator gemäß Google und anderen Webdiensten):
Fügen Sie in den Eigenschaften eine weitere Symbolebene hinzu (so dass Sie zwei Linien sehen).
Stellen Sie die Breite jeder Linie in Karteneinheiten ein - in diesem Fall sind die Einheiten Meter, und ich habe eine Breite von 50 Metern ausgewählt und den Versatz jeder Linie auf die Hälfte ihrer Breite festgelegt, wobei eine von ihnen gleich, aber negativ ist Offset:
So sehen Sie aus, nach dem Sie suchen:
... und es bleibt in verschiedenen Maßstäben bestehen:
quelle
Wenn mit "Fangoption" gemeint ist, dass Sie die Geometrie der Polylinien nicht ändern können und Sie nur deren Symbologie ändern können, ist das, was Sie beschrieben haben, fast unmöglich.
Aus Ihren Beispielen scheinen Sie Polylinien so zu rendern, dass sich die parallelen Abschnitte ohne Überlappung berühren, z. B. indem die Grenze zwischen den beiden parallelen Linien ihren Abstand gleichmäßig aufteilt. Wenn wir die Polyliniendarstellungen als ihre Puffer betrachten , können Sie Fälle finden (ähnlich wie in Abb. 4), in denen dieselbe Linie an verschiedenen Stellen unterschiedliche "Puffer" -Breiten haben sollte (diktiert durch die nächsten Nachbarlinien). Mit anderen Worten, Ihre Pufferbreite hängt von anderen Polylinien ab und kann in verschiedenen Segmenten der Polylinien variieren. Bei der Symbolisierung werden jedoch normalerweise nur Informationen / Attribute des Features selbst verwendet.
Natürlich können Sie immer einen festen Radius "Puffer" um die Linien verwenden und die Scheitelpunkte manuell bearbeiten (oder die Puffer bearbeiten), sodass die Grenzen aneinander ausgerichtet werden. Dann würden die Puffer beim Vergrößern / Verkleinern "eingerastet" bleiben, obwohl dies viel Handarbeit bedeutet und eine Anpassung erforderlich sein kann, wenn neue Zeilen hinzugefügt werden.
quelle