Benutzer-Werkzeuge

Webseiten-Werkzeuge


de:traffic:timetable:coordinates

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen gezeigt.

Link zu der Vergleichsansicht

Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung
Nächste Überarbeitung
Vorherige Überarbeitung
de:traffic:timetable:coordinates [2018/12/16 16:30]
marting [Beispiel] Experimentelle Farbangabe vergessen zu entfernen
de:traffic:timetable:coordinates [2019/01/27 19:13] (aktuell)
marting [Speichern und Wiederaufrufen von X-Koordinaten]
Zeile 5: Zeile 5:
 Grundsätzlich wird dabei immer die X-Koordinate (horizontal nach rechts) zuerst angegeben, dann die Y-Koordinate (vertikal nach oben). Die Werte werden dabei per Komma getrennt. Grundsätzlich wird dabei immer die X-Koordinate (horizontal nach rechts) zuerst angegeben, dann die Y-Koordinate (vertikal nach oben). Die Werte werden dabei per Komma getrennt.
  
-<​code>​<X>,<Y></​code>​+<​code>​X,​Y</​code>​
  
 ===== Horizontale Koordinate (X) ===== ===== Horizontale Koordinate (X) =====
Zeile 11: Zeile 11:
 ==== Referenzpunkt am Bild ==== ==== Referenzpunkt am Bild ====
  
-Die angegebene Koordinate bezieht sich immer auf eine X-Position im Bild selbst. Standardmäßig,​ wenn nichts weiter angegeben wird, ist diese ganz links im Bild, ebenso bei vorangehendem Kleiner-Zeichen (<).+Die angegebene Koordinate bezieht sich immer auf eine X-Position im Bild selbst. Standardmäßig,​ wenn nichts weiter angegeben wird, ist diese ganz links im Bild, ebenso bei vorangehendem Kleiner-Zeichen (''​<''​).
  
-<​code>​<X></​code>​+<​code>​X</​code>​
  
-<​code>​<<X></​code>​+<​code><​X</​code>​
  
-Wenn sich die Koordinate auf die Mitte des Bildes (bzw. bei Bildern mit gerader Anzahl an Pixeln in horizontaler Richtung die Pixelspalte links von der Mitte) beziehen soll, wird ein Asterisk (*) vorangestellt.+Wenn sich die Koordinate auf die Mitte des Bildes (bzw. bei Bildern mit gerader Anzahl an Pixeln in horizontaler Richtung die Pixelspalte links von der Mitte) beziehen soll, wird ein Asterisk (''​*''​) vorangestellt.
  
-<​code>​*<X></​code>​+<​code>​*X</​code>​
  
-Soll sie sich auf den rechten Bildrand beziehen, wird ein Größer-Zeichen vorangestellt.+Soll sie sich auf den rechten Bildrand beziehen, wird ein Größer-Zeichen ​(''>''​) ​vorangestellt.
  
-<​code>>​<X></​code>​+<​code>>​X</​code>​
  
 In den meisten Fällen erspart man sich damit das Herumhantieren mit der Länge einzusetzender Bilder. In den meisten Fällen erspart man sich damit das Herumhantieren mit der Länge einzusetzender Bilder.
Zeile 31: Zeile 31:
 Die grundlegendste Positionierungsmethode in horizontaler Richtung ist relativ zur Länge der Trasse. Ein X-Wert in Form einer einzelnen angegebenen Zahl ist ein prozentualer Anteil der Trassenlänge,​ gemessen von links. Die grundlegendste Positionierungsmethode in horizontaler Richtung ist relativ zur Länge der Trasse. Ein X-Wert in Form einer einzelnen angegebenen Zahl ist ein prozentualer Anteil der Trassenlänge,​ gemessen von links.
  
-<​code>​<Relativwert></​code>​+<​code>​Relativwert</​code>​
  
 0 ist also das linke Ende der Trasse, 100 das rechte. Ist der Wert negativ oder größer als 100, liegt die Position außerhalb des sichtbaren Bereichs der Trasse. 0 ist also das linke Ende der Trasse, 100 das rechte. Ist der Wert negativ oder größer als 100, liegt die Position außerhalb des sichtbaren Bereichs der Trasse.
Zeile 41: Zeile 41:
 Die X-Koordinate kann auch in absoluten Pixelzahlen angegeben werden, die von der Trassenlänge unabhängig sind. Diese müssen sich aber immer auf eine relative Position beziehen und werden zu dieser addiert oder von dieser subtrahiert. Die X-Koordinate kann auch in absoluten Pixelzahlen angegeben werden, die von der Trassenlänge unabhängig sind. Diese müssen sich aber immer auf eine relative Position beziehen und werden zu dieser addiert oder von dieser subtrahiert.
  
-<​code>​<Relativwert>+<Pixelzahl></​code>​+<​code>​Relativwert+Pixelzahl</​code>​
  
-<​code>​<Relativwert>-<Pixelzahl></​code>​+<​code>​Relativwert-Pixelzahl</​code>​
  
 Wenn also beispielsweise vom linken Bildrand aus gezählt werden soll, wird die Pixelzahl zu 0 addiert. Wenn also beispielsweise vom linken Bildrand aus gezählt werden soll, wird die Pixelzahl zu 0 addiert.
  
-<​code>​0+<Pixelzahl></​code>​+<​code>​0+Pixelzahl</​code>​
  
 Wenn vom rechten Bildrand aus gezählt werden soll, wird nach links gezählt, daher muß die Pixelzahl von 100 subtrahiert werden. Wenn vom rechten Bildrand aus gezählt werden soll, wird nach links gezählt, daher muß die Pixelzahl von 100 subtrahiert werden.
  
-<​code>​100-<Pixelzahl></​code>​+<​code>​100-Pixelzahl</​code>​
  
 ==== Zufallswerte ==== ==== Zufallswerte ====
  
-Statt starrer Zahlen kann man auch Zahlenbereiche angeben, innerhalb derer die tatsächlich verwendete Zahl zufällig gewählt wird. An sich funktioniert diese Zufallsauswahl wie überall sonst in Traffic (<von>-<bis>); im Fall von relativen X-Koordinaten im Fahrplan aber bestünde Verwechslungsgefahr mit der Subtraktion von Pixelzahlen von Relativzahlen. Um dies zu umgehen, hängt man noch ein Pluszeichen an:+Statt starrer Zahlen kann man auch Zahlenbereiche angeben, innerhalb derer die tatsächlich verwendete Zahl zufällig gewählt wird. An sich funktioniert diese Zufallsauswahl wie überall sonst in Traffic (''​von-bis''​); im Fall von relativen X-Koordinaten im Fahrplan aber bestünde Verwechslungsgefahr mit der Subtraktion von Pixelzahlen von Relativzahlen. Um dies zu umgehen, hängt man noch ein Pluszeichen ​(''​+''​) ​an:
  
-<​code>​<von>-<bis>+</​code>​+<​code>​von-bis+</​code>​
  
 Auch die Pixelzahlen können auf die gleiche Weise zufallsgesteuert werden. Hier sollte allerdings mit Klammern gearbeitet werden. Auch die Pixelzahlen können auf die gleiche Weise zufallsgesteuert werden. Hier sollte allerdings mit Klammern gearbeitet werden.
  
-<​code>​<Relativposition>+(<von>-<bis>)</​code>​+<​code>​Relativposition+(von-bis)</​code>​
  
-<​code>​<Relativposition>-(<von>-<bis>)</​code>​+<​code>​Relativposition-(von-bis)</​code>​
  
 Zufällige Positionierung beiderseits einer Relativposition ist allerdings aufwendiger zu realisieren,​ weil die Pixelzahlen keine negativen Werte annehmen. Zufällige Positionierung beiderseits einer Relativposition ist allerdings aufwendiger zu realisieren,​ weil die Pixelzahlen keine negativen Werte annehmen.
  
-<​code>​(<Relativposition>-(0-<maximal links>))|(<Relativposition>+(0-<maximal rechts))</​code>​+<​code>​(Relativposition-(0-maximal links))|(Relativposition+(0-maximal rechts))</​code>​
  
 Wer mag, kann auch beide Werte per Zufall steuern, auch wenn das recht wenig Sinn ergeben dürfte. Wer mag, kann auch beide Werte per Zufall steuern, auch wenn das recht wenig Sinn ergeben dürfte.
  
-<​code>​<Prozent von>-<Prozent bis>+(<Pixel von>-<Pixel bis>)</​code>​+<​code>​Prozent von-Prozent bis+(Pixel von-Pixel bis)</​code>​
  
 ==== Auffüllen bis zum Trassenrand ==== ==== Auffüllen bis zum Trassenrand ====
  
-Ein Bild oder eine Reihe von Bildern kann mit einfachen Mitteln, also ohne Wiederholung in der Bilderangabe,​ bis zum Rand der Trasse aufgefüllt werden. Dafür werden zwei Punkte (..) verwendet. Das ist sinnvoll beispielsweise bei Gleiskörpern,​ Fahrleitungen,​ Bahnsteigen oder sich wiederholenden Himmelssegmenten.+Ein Bild oder eine Reihe von Bildern kann mit einfachen Mitteln, also ohne Wiederholung in der Bilderangabe,​ bis zum Rand der Trasse aufgefüllt werden. Dafür werden zwei Punkte (''​..''​) verwendet. Das ist sinnvoll beispielsweise bei Gleiskörpern,​ Fahrleitungen,​ Bahnsteigen oder sich wiederholenden Himmelssegmenten.
  
 Wenn die Punkte vor der X-Position stehen, wird von der X-Position nach links aufgefüllt. Wenn die Punkte vor der X-Position stehen, wird von der X-Position nach links aufgefüllt.
  
-<​code>​..<X></​code>​+<​code>​..X</​code>​
  
 Beim Auffüllen nach links ist es übrigens sinnvoll, die X-Koordinate sich auf den rechten Rand des einzufügenden Bildes beziehen zu lassen, damit die Bilderkette auch wirklich an dieser Koordinate endet. Beim Auffüllen nach links ist es übrigens sinnvoll, die X-Koordinate sich auf den rechten Rand des einzufügenden Bildes beziehen zu lassen, damit die Bilderkette auch wirklich an dieser Koordinate endet.
  
-<​code>​..><X></​code>​+<code>>​..X</​code>​
  
 Stehen sie hinter der X-Position, wird von dieser nach rechts aufgefüllt. Stehen sie hinter der X-Position, wird von dieser nach rechts aufgefüllt.
  
-<​code>​<X>..</​code>​+<​code>​X..</​code>​
  
 Wenn nur diese Punkte eingetragen werden, wird über die gesamte Trassenlänge aufgefüllt. Wenn nur diese Punkte eingetragen werden, wird über die gesamte Trassenlänge aufgefüllt.
Zeile 95: Zeile 95:
 In diesem Fall wird die genaue X-Position (sozusagen die Phasenlage) der sich wiederholenden Bilder mit einem dritten Wert gewählt, der nach der Y-Koordinate eingetragen wird, um z. B. bei Oberleitungen oder Telegrafenleitungen trotzdem die Kontrolle über die Position der Masten zu haben. In diesem Fall wird die genaue X-Position (sozusagen die Phasenlage) der sich wiederholenden Bilder mit einem dritten Wert gewählt, der nach der Y-Koordinate eingetragen wird, um z. B. bei Oberleitungen oder Telegrafenleitungen trotzdem die Kontrolle über die Position der Masten zu haben.
  
-<​code>​..,​<Y>,<Phasenlage></​code>​+<​code>​..,​Y,​Phasenlage</​code>​
  
 Sinnvollerweise ist dieser Wert zu wählen zwischen null und der Länge des sich wiederholenden Bilderkonstrukts. Sinnvollerweise ist dieser Wert zu wählen zwischen null und der Länge des sich wiederholenden Bilderkonstrukts.
  
-Um dann auch noch diese Phasenlage zufällig zu machen, damit sie sich bei mehrfach generierten Trassen nicht wiederholt, wird statt der Phasenlage eine Raute eingetragen.+Um dann auch noch diese Phasenlage zufällig zu machen, damit sie sich bei mehrfach generierten Trassen nicht wiederholt, wird statt der Phasenlage eine Raute (''#''​) ​eingetragen.
  
-<​code>​..,​<Y>,#</​code>​+<​code>​..,​Y,#</​code>​
  
 ==== Speichern und Wiederaufrufen von X-Koordinaten ==== ==== Speichern und Wiederaufrufen von X-Koordinaten ====
Zeile 113: Zeile 113:
 === Speichern === === Speichern ===
  
-Gespeichert werden X-Koordinaten mit einem Gleichheitszeichen (=) und einem Namen. Beides wird hinter die Angabe der X-Koordinate gestellt, also noch vor die Y-Koordinate. Der Name unterliegt dabei denselben Konventionen wie Makronamen.+Gespeichert werden X-Koordinaten mit einem Gleichheitszeichen (''​=''​) und einem Namen. Beides wird hinter die Angabe der X-Koordinate gestellt, also noch vor die Y-Koordinate. Der Name unterliegt dabei denselben Konventionen wie Makronamen.
  
-<​code>​<X>=<Name>,<Y></​code>​+<​code>​X=Name,​Y</​code>​
  
-Dabei wird standardmäßig der Punkt am Bild oder an der Bilderreihe abgefragt, mit dem das Bild oder die Bilderreihe positioniert wird. Das kann aber überschrieben werden mit einem entsprechenden Zeichen (<, *, >), das dem Gleichheitszeichen vorangestellt wird.+Dabei wird standardmäßig der Punkt am Bild oder an der Bilderreihe abgefragt, mit dem das Bild oder die Bilderreihe positioniert wird. Das kann aber überschrieben werden mit einem entsprechenden Zeichen (''​<''​''​*''​''​>''​), das dem Gleichheitszeichen vorangestellt wird.
  
-<​code><​X><=<Name></​code> ​fragt die Position der äußersten linken Pixelspalte des Bildes oder der Bilderreihe ab.+''​X=<Name'' ​fragt die Position der äußersten linken Pixelspalte des Bildes oder der Bilderreihe ab.
  
-<​code><​X>*=<Name></​code> ​fragt die Position der Mitte ab.+''​X=*Name'' ​fragt die Position der Mitte ab.
  
-<​code><​X>>=<Name></​code> ​fragt die Position der äußersten rechten Pixelspalte ab.+''​X>Name'' ​fragt die Position der äußersten rechten Pixelspalte ab.
  
 Man kann auch mehrere gespeicherte Positionen auf einmal ableiten. Diese werden einfach hintereinandergereiht. Man kann auch mehrere gespeicherte Positionen auf einmal ableiten. Diese werden einfach hintereinandergereiht.
  
-<​code>​<X><=<Name links>*=<Name Mitte>>=<Name rechts></​code>​+<​code>​X=<​Name links=*Name Mitte>Name rechts</​code>​
  
 === Aufrufen === === Aufrufen ===
Zeile 133: Zeile 133:
 Zum Wiederaufrufen einer gespeicherten X-Position wird einfach der Name angegeben, unter dem die Position gespeichert ist. Dabei wird die wiederaufgerufene Position genauso gehandhabt wie eine relative Positionsangabe. Das heißt, Pixelzahlen können zu ihr addiert und von ihr subtrahiert werden, um etwa einen Abstand oder eine Überlappung zu erzeugen. Zum Wiederaufrufen einer gespeicherten X-Position wird einfach der Name angegeben, unter dem die Position gespeichert ist. Dabei wird die wiederaufgerufene Position genauso gehandhabt wie eine relative Positionsangabe. Das heißt, Pixelzahlen können zu ihr addiert und von ihr subtrahiert werden, um etwa einen Abstand oder eine Überlappung zu erzeugen.
  
-Ebenso kann auch eine aufgerufene X-Position wahlweise auf das linke Ende (<), die Mitte (*) oder das rechte Ende (>) eines Bildes oder einer Bilderreihe angewendet werden.+Ebenso kann auch eine aufgerufene X-Position wahlweise auf das linke Ende (''​<''​), die Mitte (''​*''​) oder das rechte Ende (''​>''​) eines Bildes oder einer Bilderreihe angewendet werden.
  
 ==== Beispiel ==== ==== Beispiel ====
Zeile 151: Zeile 151:
 An das linke Ende soll in einem weiteren Schritt noch etwas angesetzt werden. Also wird diese Position gespeichert:​ An das linke Ende soll in einem weiteren Schritt noch etwas angesetzt werden. Also wird diese Position gespeichert:​
  
-<​code>>​100-(10-60)<=LinksVomBahnhof</​code>​+<​code>>​100-(10-60)=<LinksVomBahnhof</​code>​
  
  
Zeile 185: Zeile 185:
 Ohne zusätzliche Angaben wird dabei der untere Rand des Bildes relativ zum unteren Rand der Trasse angeordnet. Dieser ergibt sich aus [[de:​traffic:​timetable:​tracksize|der Größe des Bereichs, den die Trasse unterhalb des eigentlichen Fahrwegs hat]]. Ohne zusätzliche Angaben wird dabei der untere Rand des Bildes relativ zum unteren Rand der Trasse angeordnet. Dieser ergibt sich aus [[de:​traffic:​timetable:​tracksize|der Größe des Bereichs, den die Trasse unterhalb des eigentlichen Fahrwegs hat]].
  
-<​code>​<X>,<Y></​code>​+<​code>​X,​Y</​code>​
  
 ==== Position relativ zum Fahrweg ==== ==== Position relativ zum Fahrweg ====
Zeile 191: Zeile 191:
 Häufiger will man aber Bilder in der Höhe relativ zum Fahrweg positionieren,​ etwa Gleiskörper oder Bahnsteige. Dann müßte man eigentlich anfangen zu rechnen auf der Grundlage, wie hoch das einzufügende Bild und wie groß der Abstand des Fahrwegs zum unteren Trassenrand ist. Und jedes Mal, wenn man den unteren Trassenrand neu einstellt, muß man die Bilder neu positionieren. Häufiger will man aber Bilder in der Höhe relativ zum Fahrweg positionieren,​ etwa Gleiskörper oder Bahnsteige. Dann müßte man eigentlich anfangen zu rechnen auf der Grundlage, wie hoch das einzufügende Bild und wie groß der Abstand des Fahrwegs zum unteren Trassenrand ist. Und jedes Mal, wenn man den unteren Trassenrand neu einstellt, muß man die Bilder neu positionieren.
  
-Das kann man sich aber erleichtern,​ indem vor der Y-Koordinate ein Circumflex (^) eingesetzt wird. Dieser bewirkt, daß der obere Rand des Bildes relativ zum Fahrweg positioniert wird.+Das kann man sich aber erleichtern,​ indem vor der Y-Koordinate ein Circumflex (''​^''​) eingesetzt wird. Dieser bewirkt, daß der obere Rand des Bildes relativ zum Fahrweg positioniert wird.
  
-<​code>​<X>,^<Y></​code>​+<​code>​X,​^Y</​code>​
  
-Dabei schließt der Wert ^0 genau bündig mit dem Fahrweg ab, was die korrekte Position für Gleiskörperbilder ist.+Dabei schließt der Wert ''​^0'' ​genau bündig mit dem Fahrweg ab, was die korrekte Position für Gleiskörperbilder ist.
  
 ==== Position relativ zur Oberleitung ==== ==== Position relativ zur Oberleitung ====
Zeile 201: Zeile 201:
 Seit Traffic 4.14 ist es auch möglich, Bilder relativ zur Höhe der Oberleitung zu positionieren. Das funktioniert allerdings nur, wenn es eine Oberleitungshöhe gibt, die durch die Fahrzeuge definiert ist, wenn also beim Erstellen der Trasse schon bekannt ist, was für Fahrzeuge darüber fahren. In $SCENEs funktioniert es also nicht, in $GROUPS nur, wenn die Vorder- und Hintergrundbilder innerhalb der Trassen definiert sind und nicht in der $GROUP. Seit Traffic 4.14 ist es auch möglich, Bilder relativ zur Höhe der Oberleitung zu positionieren. Das funktioniert allerdings nur, wenn es eine Oberleitungshöhe gibt, die durch die Fahrzeuge definiert ist, wenn also beim Erstellen der Trasse schon bekannt ist, was für Fahrzeuge darüber fahren. In $SCENEs funktioniert es also nicht, in $GROUPS nur, wenn die Vorder- und Hintergrundbilder innerhalb der Trassen definiert sind und nicht in der $GROUP.
  
-Für diese Art der Positionierung wird eine Raute (#) vorangestellt. Die eigentliche Position bezieht sich weiterhin auf den unteren Rand des einzufügenden Bildes (wie standardmäßig,​ aber im Gegensatz zur Positionierung relativ zum Fahrweg). Gemessen wird sie von der Oberleitungshöhe aus, was normalerweise 58 Pixel über dem Fahrweg ist.+Für diese Art der Positionierung wird eine Raute (''​#''​) vorangestellt. Die eigentliche Position bezieht sich weiterhin auf den unteren Rand des einzufügenden Bildes (wie standardmäßig,​ aber im Gegensatz zur Positionierung relativ zum Fahrweg). Gemessen wird sie von der Oberleitungshöhe aus, was normalerweise 58 Pixel über dem Fahrweg ist.
  
-<​code>​<X>,#<Y></​code>​+<​code>​X,#​Y</​code>​
  
 Eine durchgehende Oberleitung,​ deren Mastsockel normalerweise bündig mit dem Fahrweg abschließen,​ also 58 Pixel unterhalb des Fahrdrahts enden, würde also so positioniert:​ Eine durchgehende Oberleitung,​ deren Mastsockel normalerweise bündig mit dem Fahrweg abschließen,​ also 58 Pixel unterhalb des Fahrdrahts enden, würde also so positioniert:​
Zeile 215: Zeile 215:
 Auch in Y-Richtung kann ein Zufallswert angegeben werden, sofern das sinnvoll ist. Auch in Y-Richtung kann ein Zufallswert angegeben werden, sofern das sinnvoll ist.
  
-<​code>​<X>,<von>-<bis></​code>​+<​code>​X,​von-bis</​code>​
de/traffic/timetable/coordinates.1544974259.txt.gz · Zuletzt geändert: 2018/12/16 16:30 von marting