How to Control Junctions in Sessions

From TrainzOnline
(Difference between revisions)
Jump to: navigation, search
m
 
(43 intermediate revisions by one user not shown)
Line 1: Line 1:
The screenshots shown below give examples of how junction settings can be used to control the operation of a session.
+
The information in this Wiki Page applies to '''TANE''', '''TRS19''', '''Trainz Plus''' and '''TRS22'''. It gives examples of how junctions can be controlled using Session Rules.
 
+
<table>
 +
<tr valign="top">
 +
<td>
 +
__TOC__
 +
</td>
 +
<td>
 +
<table bgcolor="lightcyan" cellpadding=2>
 +
<tr valign="top">
 +
<td width=10>[[image:BlueDot10x10.png|link=]]</td>
 +
<td>Junctions can be controlled by Session Rules during the running of a Session</td>
 +
</tr>
 +
<tr valign="top">
 +
<td>[[image:BlueDot10x10.png|link=]]</td>
 +
<td>The level of control includes:-
 +
<table>
 +
<tr valign="top">
 +
<td with=10>[[image:BlackDot10x10.png|link=]]</td>
 +
<td>locking junctions (all or some) against user control</td>
 +
</tr>
 +
<tr valign="top">
 +
<td>[[image:BlackDot10x10.png|link=]]</td>
 +
<td>setting junctions according to decisions made by users</td>
 +
</tr>
 +
<tr valign="top">
 +
<td>[[image:BlackDot10x10.png|link=]]</td>
 +
<td>checking to see if users have set junctions correctly</td>
 +
</tr>
 +
</table>
 +
</td>
 +
</tr>
 +
</table>
 +
</td>
 +
</tr>
 +
</table>
 +
<br>
 +
The following applications give examples of using Session Rules to control junctions.
 +
<br>
 +
<table width=1000> <!-- BEGIN Nav Buttons Table NO SKIPS -->
 +
<tr valign="top">
 +
<td width=629><span id="stepApp1"></span>
 
='''Application 1: Presetting Junctions'''=
 
='''Application 1: Presetting Junctions'''=
 +
</td>
 +
<td width=50>&#160;</td> <!-- Skip Down -->
 +
<td width=50>&#160;</td> <!-- Skip Up -->
 +
<td width=46>[[image:BackToTop.png|link=#top|alt=Top|Top]]</td>
 +
<td width=75>&nbsp;</td>
 +
<td width=75>[[file:NextDown.png|link=#stepApp2|alt=Next Down|Next Down]]</td>
 +
<td width=75>[[image:BackToBottom.png|link=#bottom|alt=Bottom|Bottom]]</td>
 +
</tr>
 +
</table> <!-- END Nav Buttons Table -->
  
==The Scenario==
+
<table width=1000 cellpadding=2 bgcolor=#ffffff>
 
+
<tr valign="top">
When a consist reaches a trigger, the junctions ahead are set and locked into position.
+
<td width=60 rowspan=2>[[image:magnifier.png|link=]]</td>
 +
<td><span style="font-weight: 700; font-size: 17px;">The Scenario:</span></td>
 +
</tr>
 +
<tr valign="top">
 +
<!-- <td>&#160;</td> -->
 +
<td>When a consist reaches a trigger, the junctions ahead are set and configured (e.g. locked/unlocked, AI control allowed/disallowed)</td>
 +
</tr>
 +
</table>
  
==Rules Used==
+
<table width=1000 cellpadding=2 bgcolor=#ffffff>
 
+
<tr valign="top">
*'''[[Session_Rule_List_with_Parameters#Trigger_Check_Rule|Trigger Check Rule]]''' to trigger the event.
+
<td width=60 rowspan=2>[[image:RulesWiki.PNG|link=]]</td>
*'''[[Session_Rule_List_with_Parameters#Set_Junctions_Rule|Set Junctions Rule]]''' to set junctions.
+
<td><span style="font-size: 17px;">'''Rules Used:'''</span></td>
 
+
</tr>
==Session Rules Screenshot==
+
<tr valign="top">
 +
<!-- <td>&#160;</td> -->
 +
<td>
 
<table>
 
<table>
<tr>
+
<tr valign="top">
<td>[[file:SetJunctions.JPG]]</td>
+
<td width=25>[[image:DotPoint.JPG|10px|link=]]</td>
 +
<td>'''[[Session_Rule_List_with_Parameters#Trigger_Check_Rule|Trigger Check Rule]]''' to trigger the event</td>
 +
</tr>
 +
<tr valign="top">
 +
<td>[[image:DotPoint.JPG|10px|link=]]</td>
 +
<td>'''[[Session_Rule_List_with_Parameters#Set_Junctions_Rule|Set Junctions Rule]]''' to set junctions</td>
 +
</tr>
 +
</table>
 +
</td>
 
</tr>
 
</tr>
 
</table>
 
</table>
  
==Example Explanation==
+
<table width=1000 cellpadding=2 bgcolor=#ffffff>
 +
<tr valign="top">
 +
<td width=60 rowspan=2>[[image:screenshot.PNG|link=]]</td>
 +
<td><span style="font-size: 17px;">'''Session Editor Screenshot:'''</span></td>
 +
</tr>
 +
<tr valign="top">
 +
<!-- <td>&#160;</td> -->
 +
<td>[[file:SetJunctions.JPG|link=]]</td>
 +
</tr>
 +
</table>
  
*'''Line 1: Trigger Check''' The event is triggered when the consist reaches a trigger. This executes the following rule.
+
<table width=1000 cellpadding=2 bgcolor=#ffffff>
**'''Line 2: Set Junctions''' Sets selected junctions to set directions and specifies the level of control by the users and AI.
+
<tr valign="top">
 +
<td width=60 rowspan=2>[[image:explanation.PNG|link=]]</td>
 +
<td><span style="font-size: 17px;">'''Description:'''</span></td>
 +
</tr>
 +
<tr valign="top">
 +
<!-- <td>&#160;</td> -->
 +
<td>'''Line''' <span style="font-weight: 700; font-size: 15px; color: white; background-color: black;">&#160;1&#160;</span>''': Trigger Check''' The event is '''triggered''' when the consist reaches a trigger. This executes the following rule:-
 
<table>
 
<table>
<tr>
+
<tr valign="top">
<td>[[file:SetJunctionsList.JPG]]</td>
+
<td>
 +
:'''Line''' <span style="font-weight: 700; font-size: 15px; color: white; background-color: black;">&#160;2&#160;</span>''': Set Junctions''' Sets selected junctions to set directions and specifies the level of control by the users and AI</td>
 
</tr>
 
</tr>
 
</table>
 
</table>
 
+
For example:-<br>
 +
[[file:SetJunctionsList.JPG|link=]]</td>
 +
</tr>
 +
</table>
 +
<br>
 +
<table width=1000> <!-- BEGIN Nav Buttons Table NO SKIPS -->
 +
<tr valign="top">
 +
<td width=629><span id="stepApp2"></span>
 
='''Application 2: Asking the User to Set Junctions'''=
 
='''Application 2: Asking the User to Set Junctions'''=
 +
</td>
 +
<td width=50>&#160;</td> <!-- Skip Down -->
 +
<td width=50>&#160;</td> <!-- Skip Up -->
 +
<td width=46>[[file:BackToTop.png|link=#top|alt=Top|Top]]</td>
 +
<td width=75>[[file:NextUp.png|link=#stepApp1|alt=Next Up|Top]]</td>
 +
<td width=75>&nbsp;</td>
 +
<td width=75>[[file:BackToBottom.png|link=#bottom|alt=Bottom|Bottom]]</td>
 +
</tr>
 +
</table> <!-- END Nav Buttons Table -->
  
==The Scenario==
+
<table width=1000 cellpadding=2 bgcolor=#ffffff>
 +
<tr valign="top">
 +
<td width=60 rowspan=2>[[image:magnifier.png|link=]]</td>
 +
<td><span style="font-weight: 700; font-size: 17px;">The Scenario:</span></td>
 +
</tr>
 +
<tr valign="top">
 +
<!-- <td>&#160;</td> -->
 +
<td>A consist has been halted at a trigger placed in front of a junction. The user will be asked to set that junction and the following junction before the consist can proceed</td>
 +
</tr>
 +
</table>
  
A consist has been halted at a trigger placed in front of a junction. The user will be asked to set that junction and the following junction before the consist can proceed.
+
<table width=1000 cellpadding=2 bgcolor=#ffffff>
 
+
<tr valign="top">
==Preconditions==
+
<td width=60 rowspan=2>[[image:conditions.PNG|link=]]</td>
*'''[[Session_Rule_List_with_Parameters#Navigation_Display_Rule|Navigation Display Rule]]''' to create a navigation point set.
+
<td colspan=2><span style="font-size: 17px;">'''Preconditions:'''</span></td>
 
+
</tr>
==Rules Used==
+
<tr valign="top">
 
+
<!-- <td>&#160;</td> -->
*'''[[Session_Rule_List_with_Parameters#Wait_on_Navigation_Point_Rule|Wait on Navigation Point Rule]]''' to trigger the event.
+
<td>[[image:DotPoint.JPG|10px|link=]]</td>
*'''[[Session_Rule_List_with_Parameters#Message_Popup_Rule|Message Popup Rule]]''' to open a message window on the screen.
+
<td>'''[[Session_Rule_List_with_Parameters#Navigation_Display_Rule|Navigation Display Rule]]''' to create a navigation point set</td>
*'''[[Session_Rule_List_with_Parameters#Multiple_Junction_Alignment_Check_Rule|Multiple Junction Alignment Check Rule]]''' to test if specified junctions are set correctly.
+
</tr>
 +
</table>
  
==Session Rules Screenshot==
+
<table width=1000 cellpadding=2 bgcolor=#ffffff>
 +
<tr valign="top">
 +
<td width=60 rowspan=2>[[image:RulesWiki.PNG|link=]]</td>
 +
<td><span style="font-size: 17px;">'''Rules Used:'''</span></td>
 +
</tr>
 +
<tr valign="top">
 +
<!-- <td>&#160;</td> -->
 +
<td>
 
<table>
 
<table>
<tr>
+
<tr valign="top">
<td>[[file:TestJunctions.JPG]]</td>
+
<td width=10>[[image:DotPoint.JPG|10px|link=]]</td>
 +
<td>'''[[Session_Rule_List_with_Parameters#Navigation_Display_Rule|Navigation Display Rule]]''' to create a navigation point set (in '''Preconditions''' above)</td>
 +
</tr>
 +
<tr valign="top">
 +
<td>[[image:DotPoint.JPG|10px|link=]]</td>
 +
<td>'''[[Session_Rule_List_with_Parameters#Wait_on_Navigation_Point_Rule|Wait on Navigation Point Rule]]''' to trigger the event</td>
 +
</tr>
 +
<tr valign="top">
 +
<td>[[image:DotPoint.JPG|10px|link=]]</td>
 +
<td>'''[[Session_Rule_List_with_Parameters#Message_Popup_Rule|Message Popup Rule]]''' to open a message window on the screen</td>
 +
</tr>
 +
<tr valign="top">
 +
<td>[[image:DotPoint.JPG|10px|link=]]</td>
 +
<td>'''[[Session_Rule_List_with_Parameters#Multiple_Junction_Alignment_Check_Rule|Multiple Junction Alignment Check Rule]]''' to test if specified junctions are set correctly</td>
 +
</tr>
 +
</table>
 +
</td>
 
</tr>
 
</tr>
 
</table>
 
</table>
  
==Example Explanation==
+
<table width=1000 cellpadding=2 bgcolor=#ffffff>
 
+
<tr valign="top">
*'''Line 1: Wait on Navigation Point''' The event is triggered when the consist halts at the navigation point assigned to the trigger. This executes the following rules simultaneously  
+
<td width=60 rowspan=2>[[image:screenshot.PNG|link=]]</td>
**'''Line 2: Message Popup''' Displays a message window asking that the next two junctions be manually set.
+
<td><span style="font-size: 17px;">'''Session Editor Screenshot:'''</span></td>
**'''Line 3: Multiple Junction Alignment Check''' tests the switch directions of the next two junctions and waits until they are aligned as specified.
+
</tr>
 +
<tr valign="top">
 +
<!-- <td>&#160;</td> -->
 +
<td>[[file:TestJunctions.JPG|link=]]</td>
 +
</tr>
 +
</table>
 +
<br>
 +
<table width=1000 cellpadding=2 bgcolor=#ffffff>
 +
<tr valign="top">
 +
<td width=60 rowspan=2>[[image:explanation.PNG|link=]]</td>
 +
<td><span style="font-size: 17px;">'''Description:'''</span></td>
 +
</tr>
 +
<tr valign="top">
 +
<!-- <td>&#160;</td> -->
 +
<td>'''Line''' <span style="font-weight: 700; font-size: 15px; color: white; background-color: black;">&#160;1&#160;</span>''': Wait on Navigation Point''' The event is triggered when the consist halts at the navigation point assigned to the trigger. This executes the following rules simultaneously:-
 
<table>
 
<table>
<tr>
+
<tr valign="top">
<td>[[file:JunctionSettings.JPG]]</td>
+
<td>
 +
:'''Line''' <span style="font-weight: 700; font-size: 15px; color: white; background-color: black;">&#160;2&#160;</span>''': Message Popup''' Displays a message window asking that the next two junctions be manually set</td>
 +
</tr>
 +
<tr valign="top">
 +
<td>
 +
:'''Line''' <span style="font-weight: 700; font-size: 15px; color: white; background-color: black;">&#160;3&#160;</span>''': Multiple Junction Alignment Check''' tests the switch directions of the next two junctions and waits until they are aligned as specified<br>
 +
[[file:JunctionSettings.JPG|link=]]</td>
 
</tr>
 
</tr>
 
<tr>
 
<tr>
<td>Checking junction switch settings</td>
+
<td>The following line is executed only if the junctions are set correctly<br>
 +
::'''Line''' <span style="font-weight: 700; font-size: 15px; color: white; background-color: black;">&#160;4&#160;</span>''': Message Popup''' Displays a message window stating that the junctions are now correctly set</td>
 
</tr>
 
</tr>
 
</table>
 
</table>
 
+
</td>
The following line is executed only if the junctions are set correctly
+
</tr>
***'''Line 4: Message Popup''' Displays a message window stating that the junctions are now correctly set.
+
</table>
 
+
<br>
='''Trainz Creation Tutorials:'''=
+
<table> <!-- BEGIN Nav Buttons Table -->
 +
<tr valign="top">
 +
<td width=729><span id="bottom"></span>&nbsp;</td>
 +
<td width=46>[[file:BackToTop.png|link=#top|alt=Top|Top]]</td>
 +
<td width=75>[[file:NextUp.png|link=#stepApp2|alt=Next Up|Top]]</td>
 +
<td width=75>&nbsp;</td>
 +
<td width=75>&nbsp;</td>
 +
</tr>
 +
</table> <!-- END Nav Buttons Table -->
 +
----
 +
----
 +
='''Trainz Wiki'''=
 +
<table width=1000>
 +
<tr valign="top">
 +
<td>
 +
<table width=500 cellpadding=2 bgcolor=#ffffff>
 +
<tr valign="top">
 +
<td width=80>[[image:TrainzWiki.png|link=]]</td>
 +
<td>
 +
<span style="font-size: 17px;">'''More Tutorials and Guides to Using Trainz'''</span><br>
 
*'''<span class="plainlinks">[http://online.ts2009.com/mediaWiki/index.php/HowTo How to Guides]</span>'''
 
*'''<span class="plainlinks">[http://online.ts2009.com/mediaWiki/index.php/HowTo How to Guides]</span>'''
<font size="3">'''Route Creation Tutorials:'''</font>
+
*'''[[Driver Commands List]]'''
<div style="column-count:2;-moz-column-count:2;-webkit-column-count:2">
+
*'''[[Session Rule List with Parameters|Session Rules List (Alphabetical) with Parameters]]'''
*'''[[Using layers|Using Layers]]'''
+
*'''[[Session Rules By Categories With Properties|Session Rules List (Categories) With Parameters]]'''
</div>
+
</td>
<font size="3">'''Session Creation Tutorials:'''</font>
+
</tr>
<div style="column-count:2;-moz-column-count:2;-webkit-column-count:2">
+
</table>
*'''[[Creating a HTML Asset]]'''
+
</td>
*'''[[Controlling Signals in Sessions]]'''
+
<td>
*'''[[Message Popup Rule Applications]]'''
+
<table width=500 cellpadding=4 bgcolor="aquamarine">
*'''[[Message Popup Example|Message Popup Rule Examples]]'''
+
<tr valign="top">
*'''[[Navigation Point Applications]]'''
+
<td width=50>[[image:LinkWiki.PNG|link=]]</td>
*'''[[Navigation Point Rules Examples]]'''
+
<td>
*'''[[Parent and Child Rules]]'''
+
<span style="font-size: 17px;">'''Related Links'''</span><br>
**'''[[Parent Rule List]]'''
+
*'''[[How to Control Signals in Sessions|How to Control Signals in Sessions]]'''
*'''[[Trigger Basics]]'''
+
</td>
*'''[[Using Variables in Sessions - Examples]]'''
+
</tr>
</div>
+
</table>
 +
</td>
 +
</tr>
 +
</table>
 +
----
 +
This page was created by Trainz user '''<span class="plainlinks">[http://online.ts2009.com/mediaWiki/index.php/User:Pware pware]</span>''' in May 2018 and was last updated as shown below.
 +
----
 +
[[Category:How-to guides]]

Latest revision as of 22:01, 23 November 2023

The information in this Wiki Page applies to TANE, TRS19, Trainz Plus and TRS22. It gives examples of how junctions can be controlled using Session Rules.

Contents

BlueDot10x10.png Junctions can be controlled by Session Rules during the running of a Session
BlueDot10x10.png The level of control includes:-
BlackDot10x10.png locking junctions (all or some) against user control
BlackDot10x10.png setting junctions according to decisions made by users
BlackDot10x10.png checking to see if users have set junctions correctly


The following applications give examples of using Session Rules to control junctions.

[edit] Application 1: Presetting Junctions

    Top   Next Down Bottom
Magnifier.png The Scenario:
When a consist reaches a trigger, the junctions ahead are set and configured (e.g. locked/unlocked, AI control allowed/disallowed)
RulesWiki.PNG Rules Used:
DotPoint.JPG Trigger Check Rule to trigger the event
DotPoint.JPG Set Junctions Rule to set junctions
Screenshot.PNG Session Editor Screenshot:
SetJunctions.JPG
Explanation.PNG Description:
Line  1 : Trigger Check The event is triggered when the consist reaches a trigger. This executes the following rule:-
Line  2 : Set Junctions Sets selected junctions to set directions and specifies the level of control by the users and AI

For example:-

SetJunctionsList.JPG


[edit] Application 2: Asking the User to Set Junctions

    Top Next Up   Bottom
Magnifier.png The Scenario:
A consist has been halted at a trigger placed in front of a junction. The user will be asked to set that junction and the following junction before the consist can proceed
Conditions.PNG Preconditions:
DotPoint.JPG Navigation Display Rule to create a navigation point set
RulesWiki.PNG Rules Used:
DotPoint.JPG Navigation Display Rule to create a navigation point set (in Preconditions above)
DotPoint.JPG Wait on Navigation Point Rule to trigger the event
DotPoint.JPG Message Popup Rule to open a message window on the screen
DotPoint.JPG Multiple Junction Alignment Check Rule to test if specified junctions are set correctly
Screenshot.PNG Session Editor Screenshot:
TestJunctions.JPG


Explanation.PNG Description:
Line  1 : Wait on Navigation Point The event is triggered when the consist halts at the navigation point assigned to the trigger. This executes the following rules simultaneously:-
Line  2 : Message Popup Displays a message window asking that the next two junctions be manually set
Line  3 : Multiple Junction Alignment Check tests the switch directions of the next two junctions and waits until they are aligned as specified
JunctionSettings.JPG
The following line is executed only if the junctions are set correctly
Line  4 : Message Popup Displays a message window stating that the junctions are now correctly set


  Top Next Up    


[edit] Trainz Wiki

TrainzWiki.png

More Tutorials and Guides to Using Trainz

LinkWiki.PNG

Related Links


This page was created by Trainz user pware in May 2018 and was last updated as shown below.


Personal tools