Benutzer-Werkzeuge

Webseiten-Werkzeuge


de:traffic:timetable:positions

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen gezeigt.

Link zu der Vergleichsansicht

Nächste Überarbeitung
Vorherige Überarbeitung
de:traffic:timetable:positions [2018/09/15 12:34]
127.0.0.1 Externe Bearbeitung
de:traffic:timetable:positions [2019/01/29 22:31] (aktuell)
marting
Zeile 1: Zeile 1:
-====== Positionen ​======+===== Positionen =====
  
 Im [[de:​traffic:​timetable:​start|Fahrplan]] des [[de:​traffic:​start|Traffic Screensaver]] werden Positionsangaben verwendet, um einem Zug oder Zugteil mitzuteilen,​ wo er halten soll. Diese Angaben werden in der [[de:​traffic:​timetable:​motion:​start|Fahrzeugbewegung]] entweder direkt oder als [[de:​traffic:​timetable:​additional_parameters|Zusätzlicher Parameter]] angefügt. Bestimmte [[de:​traffic:​timetable:​motion:​motiontypes:​start|Bewegungsarten]] haben mehrere Positionen, andere gar keine, weil keine Züge halten. Im [[de:​traffic:​timetable:​start|Fahrplan]] des [[de:​traffic:​start|Traffic Screensaver]] werden Positionsangaben verwendet, um einem Zug oder Zugteil mitzuteilen,​ wo er halten soll. Diese Angaben werden in der [[de:​traffic:​timetable:​motion:​start|Fahrzeugbewegung]] entweder direkt oder als [[de:​traffic:​timetable:​additional_parameters|Zusätzlicher Parameter]] angefügt. Bestimmte [[de:​traffic:​timetable:​motion:​motiontypes:​start|Bewegungsarten]] haben mehrere Positionen, andere gar keine, weil keine Züge halten.
  
 +Außerdem dienen diese Positionsangaben als [[de:​traffic:​timetable:​coordinates|X-Koordinaten]] bei der Positionierung von [[de:​traffic:​timetable:​foreground_background|Vorder- und Hintergrundbildern]].
  
-Außerdem dienen diese Positionsangaben als [[de:​traffic:​timetable:​coordinates|X-Koordinaten]] bei der Positionierung von [[de:​traffic:​foreground_background_images:​start|Vorder- und Hintergrundbildern]]. +==== Positionsangabe relativ zum Bildschirm ====
- +
- +
-===== Positionsangabe relativ zum Bildschirm ====+
- +
-Normalerweise wird die Position relativ zum Bildschirm bzw. zum in einer [[traffic:​timetable:​section|SECTION]] definierten Bildausschnitt angegeben. Hier gibt es grundsätzlich zwei Angaben. Die erste ist ein __prozentualer Wert__, der den Abstand vom linken Rand angibt. Hierbei entspricht 0 dem linken Rand, 100 dem rechten Rand. Die zweite Angabe bezieht sich auf die erste und gibt an, wieviele __Pixel__ die eigentliche Position von dieser Prozentangabe entfernt ist. Dieser Wert wird tatsächlich in Pixeln angegeben, wirkt sich also um so geringer aus, je größer der Bildschirm bzw. der Ausschnitt ist.+
  
 +Normalerweise wird die Position relativ zum Bildschirm bzw. zum in einer [[traffic:​timetable:​section|SECTION]] definierten Bildausschnitt angegeben. Hier gibt es grundsätzlich zwei Angaben. Die erste ist ein __prozentualer Wert__, der den Abstand vom linken Rand angibt. Hierbei entspricht ''​0''​ dem linken Rand, ''​100''​ dem rechten Rand. Die zweite Angabe bezieht sich auf die erste und gibt an, wieviele __Pixel__ die eigentliche Position von dieser Prozentangabe entfernt ist. Dieser Wert wird tatsächlich in Pixeln angegeben, wirkt sich also um so geringer aus, je größer der Bildschirm bzw. der Ausschnitt ist.
  
 Der erste Wert, der Prozentwert wird immer verwendet. Der erste Wert, der Prozentwert wird immer verwendet.
Zeile 17: Zeile 14:
  
 Bei diesem Beispiel ist die Position genau in der Mitte des angezeigten Laufwegs, also auf 50% der Länge. Bei diesem Beispiel ist die Position genau in der Mitte des angezeigten Laufwegs, also auf 50% der Länge.
- 
  
 Der zweite Wert wird zum ersten addiert bzw. davon abgezogen. Der zweite Wert wird zum ersten addiert bzw. davon abgezogen.
Zeile 27: Zeile 23:
 <​code>​P=50-120</​code>​ <​code>​P=50-120</​code>​
  
-Und diese Position ist 120 Pixel links davon. Im unwahrscheinlichen Fall, daß der Laufweg, begrenzt durch die SECTION oder die Bildschirmgröße,​ insgesamt nur 240 Pixel lang ist, wäre das der linke Bildschirmrand,​ während es auf einem High-Definition-Bildschirm mit 1920 Pixeln in der Breite sich nur wenig auswirkt. +Und diese Position ist 120 Pixel links davon. Im unwahrscheinlichen Fall, daß der Laufweg, begrenzt durch die $SECTION oder die Bildschirmgröße,​ insgesamt nur 240 Pixel lang ist, wäre das der linke Bildschirmrand,​ während es auf einem High-Definition-Bildschirm mit 1920 Pixeln in der Breite sich nur wenig auswirkt.
  
 Eine interessante Anwendung ist die Entfernung vom Rand. Je größer der Bildschirm wird, desto mehr Platz wird bei einer reinen Prozentangabe verschenkt, weil mit der Bildschirmbreite bzw. der Breite des Ausschnitts auch der absolute Abstand wächst. Wenn man nun den Abstand vom Rand nicht in Prozent, sondern in Pixeln angibt, bleibt er konstant. Eine interessante Anwendung ist die Entfernung vom Rand. Je größer der Bildschirm wird, desto mehr Platz wird bei einer reinen Prozentangabe verschenkt, weil mit der Bildschirmbreite bzw. der Breite des Ausschnitts auch der absolute Abstand wächst. Wenn man nun den Abstand vom Rand nicht in Prozent, sondern in Pixeln angibt, bleibt er konstant.
Zeile 39: Zeile 34:
  
 immer 30 vom rechten Rand. immer 30 vom rechten Rand.
- 
  
 Beide Werte können auch zufällig gewählt werden. Beim Prozentwert muß allerdings eine zusätzliche Maßnahme ergriffen werden, ein Pluszeichen muß angehängt werden, um eine Verwechslung mit einem subtrahierten Pixelwert auszuschließen. Beide Werte können auch zufällig gewählt werden. Beim Prozentwert muß allerdings eine zusätzliche Maßnahme ergriffen werden, ein Pluszeichen muß angehängt werden, um eine Verwechslung mit einem subtrahierten Pixelwert auszuschließen.
Zeile 50: Zeile 44:
  
 würde dagegen bedeuten, daß sich die Position 60 Pixel links von der 40%-Marke befindet. würde dagegen bedeuten, daß sich die Position 60 Pixel links von der 40%-Marke befindet.
- 
  
 Ein zufällig gewählter Pixelwert sollte in Klammern gesetzt werden. Ein zufällig gewählter Pixelwert sollte in Klammern gesetzt werden.
Zeile 56: Zeile 49:
 <​code>​P=100-(10-40)</​code>​ <​code>​P=100-(10-40)</​code>​
  
- +Zusätzlich kann angegeben werden, ob sich die Position auf das linke Ende, die Mitte oder das rechte Ende des Zuges/​Zugteils bzw. des Bildes bezieht. ​''​<'' ​steht für das linke Ende, ''​*'' ​für die Mitte bzw. bei einigen Bewegungsarten die Stelle, an der zwei Zugteile gekuppelt sind, und ''​>'' ​steht für das rechte Ende. Das Zeichen wird jeweils an den Anfang der Positionsangabe gestellt.
-Zusätzlich kann angegeben werden, ob sich die Position auf das linke Ende, die Mitte oder das rechte Ende des Zuges/​Zugteils bzw. des Bildes bezieht. < steht für das linke Ende, * für die Mitte bzw. bei einigen Bewegungsarten die Stelle, an der zwei Zugteile gekuppelt sind, und > steht für das rechte Ende. Das Zeichen wird jeweils an den Anfang der Positionsangabe gestellt.+
  
 <​code>​P=*50</​code>​ <​code>​P=*50</​code>​
Zeile 63: Zeile 55:
 Bei Zügen bzw. Zugteilen ist übrigens die Zugspitze Standard, wenn nichts angegeben wird, bei Vorder- und Hintergrundbildern die Mitte. Bei Zügen bzw. Zugteilen ist übrigens die Zugspitze Standard, wenn nichts angegeben wird, bei Vorder- und Hintergrundbildern die Mitte.
  
- +==== Positionsangabe relativ zur Fahrtrichtung ====
-===== Positionsangabe relativ zur Fahrtrichtung ​=====+
  
 Wenn Züge auf dem Bildschirm halten oder rangieren, die zufällig aus beiden Richtungen kommen können, ist es nicht immer sinnvoll, die Position auf den Bildschirm zu beziehen, also als Nullpunkt den linken Bildschirmrand zu wählen. Man möchte vielleicht den Abstand der Zugspitze vom Bildschirmrand angeben. Wenn man nun so ein Konstrukt verwendet: Wenn Züge auf dem Bildschirm halten oder rangieren, die zufällig aus beiden Richtungen kommen können, ist es nicht immer sinnvoll, die Position auf den Bildschirm zu beziehen, also als Nullpunkt den linken Bildschirmrand zu wählen. Man möchte vielleicht den Abstand der Zugspitze vom Bildschirmrand angeben. Wenn man nun so ein Konstrukt verwendet:
Zeile 72: Zeile 63:
 funktioniert dies wunderbar, wenn der Zug von rechts kommt; die Spitze des Zuges hält 10% der Laufwegslänge vom linken Rand entfernt. Allerdings tut sie das auch, wenn der Zug von links kommt, und dann ist kaum mehr als die Spitze des Zuges in einem ansonsten leeren Laufweg zu sehen. funktioniert dies wunderbar, wenn der Zug von rechts kommt; die Spitze des Zuges hält 10% der Laufwegslänge vom linken Rand entfernt. Allerdings tut sie das auch, wenn der Zug von links kommt, und dann ist kaum mehr als die Spitze des Zuges in einem ansonsten leeren Laufweg zu sehen.
  
- +Die Position kann aber auch von der [[de:​traffic:​ridedirection|Fahrtrichtung]] abhängig gemacht werden, indem nicht der Abstand vom linken Rand gemessen wird, sondern der vom Zug auf dem Bildschirm zurückgelegte Weg. Fährt der Zug von links nach rechts, bleibt alles beim alten; fährt er von rechts nach links, wird vom rechten Rand aus gemessen, und die Pixelwerte drehen sich auch um, d. h. Minuswerte gehen nach rechts. Mit ''​@+'' ​wird an der Spitze des Zuges gemessen, mit ''​@*'' ​an der Mitte/​Kupplungsposition,​ und mit ''​@-'' ​am Zugschluß.
-Die Position kann aber auch von der [[de:​traffic:​ridedirection|Fahrtrichtung]] abhängig gemacht werden, indem nicht der Abstand vom linken Rand gemessen wird, sondern der vom Zug auf dem Bildschirm zurückgelegte Weg. Fährt der Zug von links nach rechts, bleibt alles beim alten; fährt er von rechts nach links, wird vom rechten Rand aus gemessen, und die Pixelwerte drehen sich auch um, d. h. Minuswerte gehen nach rechts. Mit @+ wird an der Spitze des Zuges gemessen, mit @* an der Mitte/​Kupplungsposition,​ und mit @- am Zugschluß.+
  
 <​code>​P=@+90</​code>​ <​code>​P=@+90</​code>​
Zeile 83: Zeile 73:
 läßt den Zugschluß 30 Pixel von der Seite stoppen, von der der Zug gekommen ist. läßt den Zugschluß 30 Pixel von der Seite stoppen, von der der Zug gekommen ist.
  
 +==== Abhängigkeit von Vorder- und Hintergrundbildern erzeugen ====
  
-===== Abhängigkeit von Vorder- und Hintergrundbildern erzeugen ===== +Eine Position, z. B. die Halteposition eines Zuges, kann auch bezogen werden auf eine Position, die durch Vorder- oder Hintergrundbilder in einer Variablen definiert ist (siehe auch [[de:​traffic:​timetable:foreground_background|dort]]. So kann man zum Beispiel einen Zug direkt vor einem Empfangsgebäude halten lassen, wo auch immer dies steht.
- +
-Eine Position, z. B. die Halteposition eines Zuges, kann auch bezogen werden auf eine Position, die durch Vorder- oder Hintergrundbilder in einer Variablen definiert ist (siehe auch [[de:​traffic:​foreground_background_images:start|dort]]. So kann man zum Beispiel einen Zug direkt vor einem Empfangsgebäude halten lassen, wo auch immer dies steht.+
  
 <​code>​BG=M_STATION1:​20-80=Bahnhof <​code>​BG=M_STATION1:​20-80=Bahnhof
Zeile 92: Zeile 81:
 M=STOP;​P=*Bahnhof</​code>​ M=STOP;​P=*Bahnhof</​code>​
  
-Hier wird das ungarische Bahnhofsgebäude irgendwo auf 20 bis 80% des Bildschirms positioniert,​ und die Zugmitte hält immer genau davor, weil die Mitte des Zuges (//P=*Bahnhof//) immer an der Mitte des Bahnhofsbildes (//20-80=Bahnhof//) gestoppt wird. +Hier wird das ungarische Bahnhofsgebäude irgendwo auf 20 bis 80% des Bildschirms positioniert,​ und die Zugmitte hält immer genau davor, weil die Mitte des Zuges (''​P=*Bahnhof''​) immer an der Mitte des Bahnhofsbildes (''​20-80=Bahnhof''​) gestoppt wird.
  
 Oder man kann einen Prellbock aufs Gleis setzen: Oder man kann einen Prellbock aufs Gleis setzen:
  
-<​code>​FG=BOCK1,<​0+20=>​Prellbock</​code>​+<​code>​FG=BOCK1,<​0+20= >​Prellbock</​code>​
  
 und einen Zug kurz davor halten und umkehren lassen. und einen Zug kurz davor halten und umkehren lassen.
Zeile 103: Zeile 91:
 <​code>​M=BACK;​D=L;​P=<​Prellbock+20</​code>​ <​code>​M=BACK;​D=L;​P=<​Prellbock+20</​code>​
  
-In diesem konkreten Beispiel wird der Prellbock mit seinem linken Ende 20 Pixel vom linken Bildschirmrand positioniert (//<0+20//), sein rechtes Ende als Positionsvariable "​Prellbock"​ gespeichert (//= >​Prellbock//) und diese dann bei der Angabe der Halteposition des linken Zugendes, 20 Pixel vom Prellbock entfernt, verwendet (//P=<​Prellbock+20//). +In diesem konkreten Beispiel wird der Prellbock mit seinem linken Ende 20 Pixel vom linken Bildschirmrand positioniert (''​<0+20''​), sein rechtes Ende als Positionsvariable "​Prellbock"​ gespeichert (''​= >​Prellbock''​) und diese dann bei der Angabe der Halteposition des linken Zugendes, 20 Pixel vom Prellbock entfernt, verwendet (''​P=<​Prellbock+20''​).
  
 Selbstverständlich lassen sich Haltepositionen nur von der X-Koordinate eines Vorder- oder Hintergrundbildes abhängig machen. Selbstverständlich lassen sich Haltepositionen nur von der X-Koordinate eines Vorder- oder Hintergrundbildes abhängig machen.
- 
de/traffic/timetable/positions.1537007680.txt.gz · Zuletzt geändert: 2018/09/15 12:34 von 127.0.0.1