100% found this document useful (1 vote)
47 views77 pages

jTrainGraph_Manual

The jTrainGraph Manual provides comprehensive guidance on using the jTrainGraph application, including installation, system prerequisites, and detailed features of the current version 3.4.1. It covers topics such as creating timetables, live timetables, and additional functions like importing/exporting data. The manual also includes a change log, terms and conditions, and FAQs for user support.

Uploaded by

arkar72
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
100% found this document useful (1 vote)
47 views77 pages

jTrainGraph_Manual

The jTrainGraph Manual provides comprehensive guidance on using the jTrainGraph application, including installation, system prerequisites, and detailed features of the current version 3.4.1. It covers topics such as creating timetables, live timetables, and additional functions like importing/exporting data. The manual also includes a change log, terms and conditions, and FAQs for user support.

Uploaded by

arkar72
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 77

jTrainGraph Manual

Author Moritz Scherzinger


Contact info@jTrainGraph.de
Current version 3.4.1
Last update 20.02.2021
Table of contents

1 Terms and conditions.......................................................................................................................5

2 System prerequisites and installation...............................................................................................6

3 Current version ................................................................................................................................7


3.1 Change log................................................................................................................................7
3.1.1 New in version 3.4.1.........................................................................................................7
3.1.2 New in version 3.4............................................................................................................7
3.1.3 New in version 3.3.1 – 3.3.2.............................................................................................7
3.1.4 New in version 3.3............................................................................................................7
3.1.5 New in version 3.2.1.........................................................................................................7
3.1.6 New in version 3.2............................................................................................................7
3.1.7 New in version 3.1.1.........................................................................................................8
3.1.8 New in version 3.1............................................................................................................8
3.1.9 New in version 3.01 - 3.03................................................................................................8
3.1.10 New in version 3.0..........................................................................................................8
3.2 Version log..............................................................................................................................10

4 General usage.................................................................................................................................12

5 Create own timetables and train graphs..........................................................................................14


5.1 Quick start...............................................................................................................................14
5.2 Enter stations...........................................................................................................................14
5.3 Enter train numbers (names) and days of operation...............................................................16
5.4 Enter the timetable..................................................................................................................18
5.4.1 Sort trains........................................................................................................................19
5.4.2 Copy and link trains........................................................................................................20
5.4.3 Automatically calculate a timetable................................................................................22
5.4.4 Shift times.......................................................................................................................22
5.5 Show the train graph...............................................................................................................23
5.5.1 Settings for the train graph..............................................................................................24
5.5.2 Toolbar............................................................................................................................31
5.5.3 Train graph......................................................................................................................31
5.5.4 Create and move trains directly in the train graph..........................................................32
5.5.5 Export the train graph to an image file............................................................................32
5.5.6 Print the train graph.........................................................................................................33
5.5.7 Design of stations ...........................................................................................................34
5.5.8 Different line styles.........................................................................................................34
5.5.9 Show and hide train names (numbers)............................................................................35
5.5.10 Individual design of trains.............................................................................................36
5.6 Change trains..........................................................................................................................36
5.6.1 Connect trains.................................................................................................................37
5.6.2 Choose tracks..................................................................................................................37
5.6.3 Shunting..........................................................................................................................37
5.7 Connect trains / create train transitions...................................................................................39
5.7.1 Simple train transitions...................................................................................................40
5.7.2 Complex train transitions................................................................................................40
5.7.3 Example..........................................................................................................................42
5.8 Create tours and vehicles........................................................................................................42
5.8.1 Daily tours.......................................................................................................................43
5.8.2 Vehicles and weekly tours..............................................................................................44

6 Live timetables...............................................................................................................................46
6.1 Display own timetables live ...................................................................................................46
6.2 Train graph in live mode ........................................................................................................46
6.2.1 Display............................................................................................................................46
6.2.2 Delays..............................................................................................................................47
6.2.3 Save the live timetable....................................................................................................49
6.3 Display Stellwerksim-timetables............................................................................................50
6.3.1 Prerequisites....................................................................................................................50
6.3.2 Quick start.......................................................................................................................50
6.3.3 Connect...........................................................................................................................50
6.3.4 Define or extend the configuration manually..................................................................52
6.3.5 Save configurations.........................................................................................................56
6.3.6 Upload configuration for others......................................................................................56
6.3.7 Close the connection ......................................................................................................57

7 Additional functions.......................................................................................................................58
7.1 Import and export to Excel / csv.............................................................................................58
7.1.1 Export..............................................................................................................................58
7.1.2 Import..............................................................................................................................60
7.1.3 Templates........................................................................................................................61
7.2 Checks.....................................................................................................................................64
7.3 Show trains using rules...........................................................................................................68
7.4 Update functionality...............................................................................................................69
7.5 Settings....................................................................................................................................70
7.5.1 Change settings...............................................................................................................70
7.5.2 Manage additional colors................................................................................................72
7.5.3 Change color sortation....................................................................................................73
7.5.4 Restore default settings...................................................................................................74

8 Shortcuts.........................................................................................................................................75

9 FAQ................................................................................................................................................76
9.1 General....................................................................................................................................76
9.1.1 How to report errors?......................................................................................................76
9.2 Stellwerksim mode.................................................................................................................76
9.2.1 Why are not all trains shown in the train graph?............................................................76
9.3 jTrainGraph Pro......................................................................................................................76
9.3.1 I purchased jTrainGraph Pro. Why am I not able to download it?.................................76
1 Terms and conditions
The application jTrainGraph was developed by Moritz Scherzinger, all right are reserved. For
possible damages caused by using the application, there is no liability of the author.

By using jTrainGraph, these terms and conditions are accepted by the user.

jTrainGraph must only be used for non-commercial purposes, if there is no separate permission.
This is valid not only for the user interface of jTrainGraph, but also for all files that are created.
That means, that the train graphs (e.g. pdf or png), timetable files, Excel/csv files and others
must not be used for commercial applications.

Users have to contact the author before using the application for commercial uses and before
embedding the application, it's parts or it's concepts (like user interfaces) into other applications.

jTrainGraph in it's free version must only be handed over to other users for free and on non-
public platforms. The rules for passing the application to other users might be more restricted by
the author.

The non-free version jTrainGraph Pro must not be handed over to other users in general.

5
2 System prerequisites and installation
jTrainGraph is a platform-independent Java application, therefore it runs on all operating
systems, where a Java runtime environment exists. The Java runtime environment has to be
downloaded and locally installed. Most common runtime environment is the one of Oracle:

http://www.java.com/download/

Other Java environments are available e.g. as OpenJDK. jTrainGraph should work will all of
them.

If you use the executable exe-file on a windows computer, the application automatically checks
if Java is installed. Otherwise, your browser will be opened to download Java.

On any other operating systems, use the jar-file to open the application. Ensure, that .jar-files are
correctly linked to the Java runtime environment (search online for „open jar file on [operating
system]“).

JTrainGraph is compatible from Java 8 Update 101 onwards (in earlier versions, the SSL
certificate for the update functionality won't work).

6
3 Current version

3.1 Change log


3.1.1 New in version 3.4.1
Bugfixes

3.1.2 New in version 3.4


• Performance improvement for plan validation
• New features for live train graph (see 5.5.1.7)
• Provide Stellwerksim configuration to others (see 6.3.6)
3.1.3 New in version 3.3.1 – 3.3.2
Bugfixes

3.1.4 New in version 3.3


• Possibility for timetables with precision of seconds
• Feature to have train graphs with time on x-axis on top of the existing feature to have
train graphs with time on y-axis.
• Bugfixes
3.1.5 New in version 3.2.1
Bugfixes and improvements of sortation function (5.4.1)

3.1.6 New in version 3.2


• Enhanced train transitions:
Split and join trains, restrict train transitions to special operation days
Details in chapter 5.7
• Create daily and weekly tours (jTrainGraph Pro): Details in chapter 5.8
◦ Show tours per day, based on train transitions
◦ Define vehicles / locomotives with first train per day per vehicle, change to next
vehicle after operation day
◦ By using this function, also weekly tours can be displayed – for one or more vehicles
• Additional checks (chapter 7.2)
• Improved navigation in Edit-menu: Create trains, search trains
• Create multiple trains by separating the names with semicolon (5.3)
• Change train link to copy (5.4.2)

7
• New export template for table including tracks (7.1.3)
• Bugfixes
3.1.7 New in version 3.1.1
• Several bugfixes, e.g.:
◦ Delete shunting movements and stations when editor is open
◦ Delete last track of station
◦ Enter trains before stations: Fixed bug in checks
◦ Delete trains with several train connections
◦ Display stopping trains with several columns and trains over midnight
◦ Edit linked trains in train graph
Thanks to all, that reported errors in version 3.1!

3.1.8 New in version 3.1


• Timetables with multiple tracks
◦ Define tracks per station (with default track per direction) - 5.2
◦ Enter tracks for each train stop (if it's not on the default track) - 5.6.2
◦ Show tracks in train graph (optionally) - 5.5.1.1
◦ Enter shunting movements (jTrainGraph Pro) - 5.6.3
• Checks: Chapter 7.2
◦ Checks for consistency
◦ Check occupation of parts of the route (beta-version in jTrainGraph Pro)
◦ Check occupation of tracks in stations (beta-version in jTrainGraph Pro)
• Extended possibilities to define rules for train styles (regular expressions in 7.3)
• Better error messages during Excel-import of timetables
• Enter hostname in Stellwerksim-mode in case the instance runs on another machine (see
7.5.1)
• Manual is now also available in English
3.1.9 New in version 3.01 - 3.03
Several bugfixes.

3.1.10 New in version 3.0


• Redesign of application with completely new concept for using it more comfortable
◦ New: Unlimited number of opened windows

8
◦ New: Undo/Redo functionality
◦ New: Select trains by clicking on the train graph
◦ New: Change times directly in train graph
• Introduction of jTrainGraph Pro with this extended functionality:
◦ No message stating the train graph was created with the free version of jTrainGraph
in the header / footer of the train graph
◦ Link trains (instead of copying) to automatically apply timetable changes later on to
all linked trains
◦ Import and export of timetables to Excel and to csv file format
◦ Connect trains to their successors at the final stop.
◦ Some comfort functions, like copy times, modify multiple train times at once
• Live mode:
◦ Show live train graph jumping to the current time
◦ Enter and visualize delays
◦ Manually set delays or define delays based on rules (e.g. when a train has to wait on
another one)

9
3.2 Version log

Version Status Release date


3.4.1 Full version 20.02.21
3.4 Full version 29.12.20
3.3.2 Full version 13.12.20
3.3.1 Full version 29.11.20
3.3 Full version 27.11.20
3.2.1 Full version 12.07.20
3.2 Full version 11.06.20
3.1.1 Full version 27.12.19
3.1 Full version 04.03.19
3.03 Full version 01.11.18
3.02 Full version 11.05.18
3.01 Full version 02.04.18
3.00 Full version 29.03.18
2.03 Full version 26.02.17
2.02 Full version 22.01.17
2.01 Full version 20.09.16
2.0 Full version 11.01.14
1.25 Full version 29.08.13
1.21 Full version 28.04.13
1.2 Full version 13.04.13
1.1 Full version 13.07.12
1.0 Full version 01.06.12
0.5 Beta 16.05.12
0.41 Beta 20.04.12
0.4 Beta 07.04.12
0.3 Beta 28.02.12
0.21 Beta 26.07.11
0.2 Beta 22.07.11
0.11 Beta 28.04.11
0.1 Alpha 25.04.11
0.02 Alpha 24.04.11

10
Version Status Release date
0.01 Alpha 20.04.11

11
4 General usage
The application starts in the mode of creating own timetables by default. In order to show
timetables live (own timetables or timetables of interfaces, e.g. Stellwerksim), change the mode
in the menu on File → Live view.

When you open the application, there is the main window that consists of a toolbar and a text
are, that shows different messages during the usage of jTrainGraph.
At startup time, there are these tabs beside the log:

• Stations
• Trains and days of operation
• Timetable
• Train graph
• Checks

You can shift the tabs to another position using the arrows beside the titles. Using the +-sign on
the right, you can show these tabs additionally:

• Styles of stations
• Styles of trains
• Display rules
• Settings

Other windows can be shown using the menus Views and Windows or using the symbols in the
upper part of the main view. Changes can be applied in every windows and every tab, all others
will automatically be updated. Using the items Undo and Redo in Edit menu, changes can be
withdrawn.

Trains are shown according to their individual style (defined in Styles of trains view). On top,
rules can be defined, e.g. to show all trains of the train type IC in red.

The timetables and all relevant settings are stored in timetable files (.fpl). These files are
compatible with other applications like FPLEdit.

There are some settings to customize jTrainGraph. These settings are stored in the file
preferences.xml, that will be created in the folder where jTrainGraph is started. If you delete this
file, jTrainGraph will start with default settings.

To get an overview of the jTrainGraph functionality, you might want to use the quick guides in
chapters 5.1 or 6.3.2.

12
A general notice on this manual: The screenshots were created on the operating system Mac OS
X. Depending on the platform where jTrainGraph is started, other Java designs are available so
jTrainGraph will look slightly different – but this does not impact the number and position of the
user interface components.

13
5 Create own timetables and train graphs
To create a train graph, most importantly stations and trains have to be entered. Stations are
entered in the view Stations (see 5.2), trains can be created using these means:

• View Trains and days of operation


• View Timetable
• View Train graph when the timetable is entered directly into the train graph
• using the menu Edit → Add train

After that, many different settings exists to fine-tune the train graph (see chapter 7). Tracks can
be entered optionally (see 5.2 and 5.6.2).

The train graph can be shown directly (see 5.5), can be exported as an image file (see 5.5.5) or be
printed (see 5.5.6).

Based on the timetable that was defined, a tour can be displayed and shown in a separate window
(see chapter 5.8). Tours do not have impact on the train graph.

5.1 Quick start


To get a first impression on jTrainGraph, you can stick to the toolbar (pictures on top) of the
main window, or to the different tabs of the main window.

You might want to open example timetables (see downloaded folder) and view the different
tabs / windows. The windows should be mostly self-explaining and are already filled with
information, if you opened a timetable.

5.2 Enter stations


The view Stations looks like that:

14
You can create new stations by entering the position of the station (in kilometres) and the name
and a push on the enter key (or choose Add station button). You can double click on the cells in
the table of stations in order to change positions or names. If you click on Delete station, all
selected stations will be deleted. Currently there has to be a continuous mileage (that means
“jumps” are not supported), negative values are permitted.

You can automatically create stations using the stations of another timetable file. Just click on
Load stations of timetable file. Stations and their styles will be loaded, but no trains will be
loaded.

In the lower part of the window, all stations are shown. You can click on a station to select it.
The lower part also shows the tracks that are defined for stations. The position depends on the
default tracks that are chosen.

15
To enter tracks, select a station in the table or the route overview and click on Open details. You
can also enter the tracks in the same window, if you select the checkbox Show details in this
window that causes the last selected station to be shown in details.

Details for stations consist of these information (note that all details are optional – you only have
to enter tracks, if you want to show them in train graph or use checks for station tracks):

Here you can enter a track name and push on the enter key. You can delete tracks, edit the names
by double clicking on them or change the sortation with Move up and Move down buttons. The
order of the tracks is relevant if you want to show them in train graph. The most upper track of
the list is the leftmost track in train graph.

Default tracks define, where trains stop by default – if no specific track is chosen for a train. See
also chapter 5.6.2.

Track names have to be distinct and must not start with “-”.

5.3 Enter train numbers (names) and days of operation


The following image shows the view trains and days of operation:

16
For each direction there is a table with trains and the days of operation of each train. Using the
checkboxes you can define the days, the train departs (arrives) at it's first station.

New trains can be added by entering the name/number in the field right to the table of the desired
direction. Several trains can be added at once, when the names are separated with semicolons (;).
Keep in mind, that also other means exists (see e.g. chapter 5.4.2 Copy and link trains).

The buttons for setting days of operation, the buttons for opening details and deleting trains have
an impact on all selected trains of the particular table.

Using the checkbox on the lower part of the window, another column is shown stating the first
departure station and time of each train. You can edit the train name and comment by double
clicking on the value in the table. The comments for trains can be shown on the train graph
(optionally) and will be used as mouse-over in timetable view (when mouse is on title of table).

17
5.4 Enter the timetable
The timetable can be entered e.g. in the view Timetable:

There is one table containing timetables for each direction. For each table there are buttons to
edit times in the specific table. New trains can be added and the trains can be sorted (see 5.4.1
Sort trains). For all selected trains details can be shown, trains can be copied (see 5.4.2 Copy and
link trains), the timetable can be filled or shifted automatically (see 5.4.3 Automatically calculate
a timetable) and the selected trains can be deleted.

If you enter a time when a cell is selected, you can overwrite the old value with a new one. If you
double click on a cell, you can modify the existing value.

The following time formats are supported (the separation sign is arbitrary, as long as it is no

18
number – in the examples it is a colon):

hhmm e.g. 0900 oder 900 (leading 0 can be omitted)


hh:mm e.g. 09:00
h:mm e.g. 9:00
hh:mm:ss e.g. 09:00:30 (seconds entered exactly)
hhmm:ss e.g. 900:30
hh:mm,ss e.g. 09:00,5 (seconds entered decimally)
hhmm,ss e.g. 900,5
m e.g. 3 => 00:03 (also possible with leading colon)
mm e.g. 33 => 00:33 (also possible with leading colon)
hh: e.g. 3: => 03:00 (leading 0 can be omitted)
hh:m e.g. 12:3 => 12:03 (leading 0 can be omitted)

Seconds can be entered either exactly (e.g. 30 seconds) or decimally (e.g. ,5 or ,75). If there are
no seconds, none need to be entered. Seconds will be shown in the train graph in the way they
were entered.

You don't have to enter times for all stations. Stations without times will be leaped and a line to
the next station with an arrival time will be drawn.
If there is only a departure time at a station (no arrival time) and it is not the first station of a
train, the departure time is interpreted as a drive through time and no arrival time will be
displayed in the train graph.

If a departure time is defined at the last stop of a train or a arrival time is defined at the first stop
of a train, this is interpreted as exit of the train graph and a train line is drawn on half of the
distance to the next station. You can use this feature e.g. if the train has to use “your” tracks to
get out of the last station. Note that this arrival/departure time is not taken into account when
route occupation is calculated and checked.

5.4.1 Sort trains


You can open the sort train view in the Timetable window for one of the two directions. One or
more criterions can be defined to sort the trains. You can see them here:

19
The selection in tab Priority 1 is the most influential. More tabs can be added using the +-Button
on the right and can be removed using the button Remove this tab. Sort for name is based on an
alphabetical compare, Sort for numbers extracts all digits in a train name and does a
mathematical comparison. Below that, the times at a specific stop can be taken into account or
the times of all stations. The top-most priority has the time

• at the first station of the direction in case of bottom-up

• at the last station of this direction in case of top-down.

Trains without times added to their timetables are sorted to the very right / bottom, when bottom-
up or top-down is chosen.

5.4.2 Copy and link trains


Using the Button Copy e.g. in the timetable view, a train can be carried forward with a specific
pulse. The copy window opens like this:

20
The explanation of the window is from top of the window to the bottom part. On top the
selection is made, whether the train has to be copied or linked. When a train is copied, all current
values are deep-copied (e.g. timetable) and later changes to one of the trains do not impact the
others. When a train is linked, there is a reference to the basic train and all later changes are
applied to all linked trains. This link functionality is only available in jTrainGraph Pro.

For live mode of own timetables, the links are released and all trains can be edited individually
(as not all will have the same delay e.g.).

Starting in version 3.2, links can be changed later to copies. In this case all trains are created as
individual trains. Existing train transitions are changed.

In this example, the train RE 3205 is copied, its train number is increased by 2 for each copied
train and 20 minutes are added to the timetable. For all three copied trains the style, the
comments and the train transitions at the last station are copied (train transitions only in
jTrainGraph Pro). The impact on the timetable is as follows:

21
5.4.3 Automatically calculate a timetable
In the view Timetable for a selected train this view can be opened using the button Fill timetable:

The reference time fiels are pre-filled with the currently selected row of the timetable. Using the
reference time, the timetable is calculated based on the timetable of another train, of the trains of
a specific type (e.g. all trains containing GZ in their name), the mean value of all trains or based
on a mean velocity and a specific time for each stopover.

If the mean velocity option is selected, the precision of the times can be chosen. E.g. when
minutes are used (see screenshot), each time is rounded mathematically to the closest minute
value after the calculation of all times.

5.4.4 Shift times


When one or more rectangular areas in the table of the Timetable view are selected, the affected
times can be shifted:

22
After clicking on the button Move times there is this dialog, where a number of minutes (negative
or positive) can be entered to shift all selected times:

Only those times are impacted, that are already set (non-empty cells).

5.5 Show the train graph


This view Train graph is split in three areas: On the upper part, there is an area with settings of
the train graph. This panel either can be shown or can be made invisible. Below there is a toolbar
for a fast access to functions impacting the train graph. In the lower part of the view the train
graph itself is shown. By default, the edit mode is automatically selected that opens details for a
train when clicking on it.

23
5.5.1 Settings for the train graph

The area of settings is divided in some tabs, where train graph can be customized. Most of the
settings are saved to the timetable file (.fpl), a few of it are saved in the settings of the
application instance (preferences.xml).
In the following chapters, each tab is explained shortly.

5.5.1.1 General settings

24
In the tab General the title line can be configured. It is shown above the train graph. Changes to
the title are applied as soon as the enter key is pressed (or the textfield looses focus).

One of two train graph visualizations can be chosen:

• Line and stations on the x-axis, time on the y-axis


This visualization is most common e.g. in Germany and is therefore available since the
first jTrainGraph version:

• Time on the x-axis, line with stations on the y-axis


This is the most common visualization outside of Germany:

25
The station names left to or above the train graph can be shown vertically or horizontally, so they
need more or less space.

For stopping trains, either no (see left), linear (see middle) or cubical lines (see right) can be
shown:

Show tracks of stations leads to all tracks getting displayed for station with at least one track
defined. Note that this requires much more space than a train graph without tracks – therefore
choose the width accordingly. Also refer to chapter 5.6.2 for multi-track information.
Depending on the line style that is chosen for lines shown for stopping trains (see above), the
stops at stations with tracks looks different:

With no lines shown for stopping With linear or cubic lines, they are shown at the right track from
trains, there is a small circle for arrival till departure.
every arrival or departure or
drive through of a train.
The background color can be chosen out of all preconfigured colors (see also 7.5.2 Manage
additional colors).

Show comments leads to comments being shown below the train graph for all trains, that are
displayed in the relevant plan / column.

5.5.1.2 Helpline settings


In the tab Helplines two types of helplines are configured:

26
The upper part of the view is about helplines that span across the whole width of the train graph.
They are shown in an user-defined interval, a specific color and with a specific line style (see
also 5.5.7). There are two line sizes for these kind of helplines – for lines at full hours another
line size can be defined.

In the lower part of the view an interval for smaller “minute lines” can be defined. They are
shown as short lines at each station and track.

The example below shows those helplines that are defined in the example of this chapter:

5.5.1.3 Times / days of operation

27
The start and end times shown by default are automatically calculated based on the trains that are
shown. If there is a train that drives across midnight, the whole time between midnight and next
midnight is shown. If the checkbox Calculate times automatically is deselected, the times can be
entered manually. They are taken into account as soon as the field looses focus or the enter key is
pressed. Also times after midnight can be entered in the field End time, e.g. start time 06:00
o'clock and end time 03:00 o'clock.
Caution: The times might be rounded up or down if Times are rounded to helpline intervals is
selected in tab 5.5.1.4 Pages and columns.

Below the days of operation of the trains that have to be shown in the train graph can be selected.
They define the days for the start of the train graph (in case of train graphs across midnight). If a
train drives at least at one of the selected days (in a specific part of the route), it is shown.

5.5.1.4 Pages and columns


The train graph can be spread on more than one column, what is desirable especially for export
and printing of train graphs. Show more than one column per page is appropriate for short routes
with few stations.

The number of pages can be entered directly (first combobox), or the number of hours per page
can be entered (second combobox).

The title line is shown only on the first page by default. By selecting Title line on every page it is
also shown on all other pages. Also comments are shown below each column by default, but
there can also be one big comment block below the whole train graph.

28
Times are rounded when Times are rounded to helpline intervals is chosen.

Below, a train graph with more three columns is shown:

5.5.1.5 Fonts
Fonts for stations, trains, times and helpline-descriptions can be chosen out of five platform-
independent fonts. If you select Use free text for font type, you can choose any other font that is
available on your system – but the font might not be available on other systems. On the right, an
example for each font is shown.

5.5.1.6 Route
The part of the route that is shown in the train graph can be restricted in this tab. By default, the
whole route is shown:

29
When show kilometres is selected, the station names are shown together with the position values,
e.g. [14,3] Sasbach.

5.5.1.7 Display/usage
These settings are not stored to the timetable file, but they only impact the way the train graph is
shown in an application instance and how the interface of jTrainGraph behaves.

Show stations when scrolling down has the impact, that the bar with all station names (and track
names) is always shown, even if the user scrolls down the train graph. Using this function, the
times and lines can be better assigned to the station names, but this requires some height of the
view, so less train graph area can be shown.

The next fields define the next train number for trains created on click in the train graph (see
5.5.4) and the increasing number for each train.

Automatically scroll to current time for live plans leads to the train graph aligning to the current
time for live plans, as soon as the time changes (each minute). Position for automatical scroll
defines, where the current time is positioned on the time axis. 0 leads to current time being at the
top / left of the train graph, 50 leads to the current time being in the middle of the train graph.

Deviating color for current time helpline can be used to have a different color for the current
time, compared to other helplines.

30
5.5.2 Toolbar

On the left of the toolbar, the size of the train graph is changed. If you click on the left button (+)
or the right button (-), the size is increased or decreased in both dimensions. If you press the alt-
key, only the height of the train graph is changed (increased/decreased), if you press the ctrl-key
(Mac: cmd-key), only the width of the train graph is changed.

Using the button in the middle of this two keys (A), the pixel-size of the train graph can be
entered precisely.

There are two buttons in the Export-panel, that start the export of the train graph to an image file
or start printing the train graph.

On the left, there are three buttons to choose the edit mode of the train graph view, see 5.5.4
Create and move trains directly in the train graph. On the right, the next action is shown. This
action will be executed as soon as there is a click in the train graph.

5.5.3 Train graph


The train graph is shown according to the settings that were entered. By clicking to the train
graph, the actions described in 5.5.4 are executed.

31
5.5.4 Create and move trains directly in the train graph
There are three modi to process clicks to the train graph. They are selected in the toolbar.

5.5.4.1 Choose train


Right above the train graph it is shown, which trains are near the current mouse cursor position.
When clicking on the train graph, the train detail view of the chosen train is opened. If more than
one train is next to the mouse cursor, the train has to be chosen in a list view. You can navigate
with the cursor keys or your mouse in this view and open the details for the selected train by
pressing on the enter-key.

5.5.4.2 Move train


If you click on move train in the toolbar, the mode is changed. By clicking on a train, it is
selected. Afterwards, all the times of the train can be shifted by moving the mouse cursor up or
down, till the number of minutes (shown right above the train graph) has the desired value.
When another click to the train graph is made, the timetable shift is performed. Now, the next
train can be selected.

If the ctrl-key is pressed, only specific times of the train are shifted. Which time is again shown
right above the train graph, there is also the number of minutes for the shift.
The train is selected in the same way, afterwards an unlimited number of specific time changes
can be performed. To change the times of another train, click again on the mode Move train.

5.5.4.3 Create train


Choose the mode Create train. Click on one timetable point after another. You are free to define
arrival or departure (drive through) times . Note that the train might not be shown (correctly)
when the first time is defined, as in most cases two times are necessary to find out the direction
of the train. Just keep selecting one time after another.

To create the next train, click on Create train again.

5.5.5 Export the train graph to an image file


Exporting the train graph can be started directly in an train graph view by clicking this symbol in
the toolbar:

There is the alternative to use the menu of the main frame: File → Export → Image
In this case, a new view is opened. The export can be started by clicking on Export image file(s)

32
on the bottom of the view.

In both cases, a small window opens afterwards. There, the pixel-sizes of the images are shown
(and might be adjusted). The image file format has to be chosen amongst jpg, gif and png.

After a click on Export image file(s) the target file can be entered. If the train graph is split
across multiple pages, one file per page will be created. In this case, the page number is
appended to the file name (e.g. _1 for page 1).

5.5.6 Print the train graph


Printing the train graph is started in the same way, exporting an image file is started (see 5.5.5).
For printing, this windows is opened:

When the resolution of a printout or printed pdf-file is too high or too low, in this window the
resolution can be adjusted. When you click on Printer settings, the default system dialog to
change printout settings is shown. In this window there is the setting for portrait or landscape
format.

When Print is clicked, the printer has to be chosen. This can either be a real printer, or a so-

33
called PDF printer to create a pdf file.

5.5.7 Design of stations


In the view Design of stations the style of each station can be defined separately. The view is
opened using the menu of the main frame: View → Change station design

The line style of each station can be adjusted (see Different line styles). When Apply design to
all is executed, the style of the currently selected station is applied to all stations.

For stations that are not printed, no train times are shown in the train graph.

5.5.8 Different line styles


For lines (e.g. stations in 5.5.7 and trains in 5.5.10), the color, the size and the style can be
defined. This picture shows the six different line styles and two examples for colored lines with
sizes of 3 and 6 pixels:

34
5.5.9 Show and hide train names (numbers)
In order to hide the train names (numbers) in the train graph on specific parts of the route, you
can open the view View → Change route design. For each part of the route, the user can choose
for which train direction(s) the train names should be displayed.

35
For a train that drives through a station without having a departure time there, the train number is
shown, if it should be shown in at least one part of the route.

5.5.10 Individual design of trains


For the individual train design there is a view similar to the design view of stations (see Design
of stations ). The view can be opened using the menu View → Change individual train design.

If you want to define the train design according to rules (e.g. all trains of the train type ICE are
red), please refer to chapter 7.3 Show trains using rules. When you activate the rule-based design
for trains, then the settings of the individual train design view are only applied, if no rule
matches a train (including the default rule).

5.6 Change trains


When you click on a train in the train graph (see 5.5.4.1) a window pops up, where the most
important settings for the train can be adjusted:

36
Parts of the window are only activated in jTrainGraph Pro, e.g. the functions Next train (see
5.7.1), shunting (see 5.6.3) or train links (see 5.4.2).

5.6.1 Connect trains


The function next train is explained in chapter 5.7.1.
Using the buttons below next train, jTrainGraph can open automatically the view for the next
train, for a detailed list of train transitions (see 5.7.2) or for the vehicles that run on this train.

5.6.2 Choose tracks


Right beneath the timetable, the individual tracks for a train can be chosen. When no tracks are
chosen, in brackets the tracks automatically calculated by jTrainGraph are shown. They are
calculated like this:

• When neither for arrival, nor for departure a track is chosen, the default track is used (like
it is defined in 5.2 Enter stations).
In general: When the train arrives at a station and has a train transition (see 5.7), then the
departure of the next train is taken into account. When the next train also has other train
transitions (split, join), also for them it is checked whether they have tracks explicitly set.
When no track is selected for both, then the default track for arrival is relevant.
When the other trains have different tracks set, then fallback goes again to the default

37
track.

• When an arrival or a departure track is chosen, it is used for both arrival and departure.

• When both arrival and departure track are chosen, both are valid. The train has to change
the track in this case automatically or manually (see 5.6.3).

5.6.3 Shunting
On the right part of the window, shunting movements are defined. Each shunting movement is
entered with four information: time, source track, target track and a flag, if the track is empty
afterwards.

To define shunting movements, first the right station has to be selected in the table on the left of
the frame.

For source and target track, also None can be selected. In this case, the train enters
(source=None) or leaves (target=None) the plan. Two small lines are shown like this (example of
a train that arrives it's departure track 10 minutes before departure):

This is the example of the train, that does a shunting movement to the departure track 10 minutes
before departure:

38
The second example is a combined example, first the locomotive of the train shunts on the other
side of the train (leaving the train at track 4 and shunting on the other side using track 2), then
the whole train leaves the plan:

In a train graph with tracks shown for all stations, this will look like this:

There are three types of shunting movements that are automatically calculated:

1. When no arrival shunting is defined at the first station and no connection from another
train is defined, the train automatically shunts to the departure track by default 10
minutes before departure. This time can be changed using Edit → Change default time
for track occupancies (also in the free version of jTrainGraph).

2. Same situation, if no time for leaving the final track at the final station is defined and
there is no connection to another train.

3. When arrival and departure track are different, and no shunting movement is defined
manually, there will be a automatic shunting from arrival to departure track after half of
the time.

For departures at a station it is calculated automatically, whether or not the track is cleared by the
departure (based on the fact, if afterwards shunting movements start in this track).

39
5.7 Connect trains / create train transitions
Trains can be connected with the following trains. In this manual, they are called train
transitions. The transitions are shown like this in the train graph, if Display of stopping trains is
activated:

Train transitions are also used to show tours (chapter 5.8).

Connections are copied if possible, when linked trains (see lower right part of the view) are
defined. Using this feature, for a route with only one commuting train composition in only two
clicks all connections are defined for the whole day.

5.7.1 Simple train transitions


Using the view for a train (chapter 5.6) the next train can be chosen. The train transition that is
created using this function is valid for

• the last station of the first train


• all operational days, where both first train and next train are running
• for all vehicles running on first train
If one or more of these attributes should be restricted, or if you want to add more than one train
transition (e.g. one transition on work days, another one on Sundays), you can do this using the
detailed list view (chapter 5.7.2).
5.7.2 Complex train transitions
Using Windows → Edit train transitions a detailed list of train transitions is shown:

The train transitions can be sorted (on the top of the window) and can be filtered. As soon as text
is entered in the textfield next to Filter, only these rows are shown, that contain this text. Also,

40
specific columns can be filtered using e.g. From train=<Name of train>

In the first three columns of the table, the affected trains and the affected station are shown.
Trains can have a transition to another train before the last station, if the train splits up. To
define, which part of the splitted train continues with which other train, there is the column
Vehicles. If <all> vehicles are chosen, then all vehicles of the first train use the train transition –
in case there is no other train transition that explicitely lists them.

In the column Tour, based on the tours that are defined (chapter 5.8), for a specific operational
day it is shown, which tour uses a specific train transition. The operational day is chosen above
next to Tour reference day.

There are three more columns:

• (last)
Defines if the station is automatically set to the last station of the first train. This leads to
the behaviour, that even after timetable changes the transition will still work the same
way.

• (calc.)
Shows, if this transition is calculated for linked trains. If it is modified, all calculated
train transitions of this train link (see 5.4.2) are released and will no longer be calculated
– but also no longer linked to the train link.

• Days of operation
Shows on which days (related to the arrival of the first train) this transition is valid. These
are the Actual arrive days – see next picture.

Per row a detailed view can be opened. New train transitions can be added using the button Add –
in both cases this view opens:

41
First train, station and next train can be chosen. It is shown, at which days the first train arrives at
this station and at which days the second train departs here. These are the possible days. The
actual days can be restricted, e.g. to have transition for trains that both drive daily to be valid
only on Sundays – if there are trains in between on work days.

Actual arrive and depart days are always modified both ways. The differ by one day, if the
arrival is before midnight and the departure is after midnight.

5.7.3 Example
One example for the application of the new train transitions functionalities (since 3.2): Below
you find the train graph of a branch line. Monday to Friday there is the train RE 1 running with
four motor coaches from Neuffen to Nürtingen. The train then splits up: Two motor coaches are
running back to Nürtingen right away (with Lr 815). The other two ones are running back with
RE 2.

But on Saturday and Sunday, RE 1 and Lr 815 are not running. Therefore, train transition is from
RE 3 to RE 2 – with all vehicles:

42
5.8 Create tours and vehicles
Since version 3.2 it is possible to show daily tours of trains. This is based on the train transitions
that were entered (chapter 5.7). This is always possible – as far as jTrainGraph Pro is used.

Optionally, also vehicles can be defined. The advantages are:

• For daily tours: Split of trains is supported, that means trains that are split so some
vehicles continue their tour with one day and other vehicles continue with other trains.

• Weekly tours can be built

5.8.1 Daily tours


With Windows → Show daily tours a window will all tours per day can be shown. On the top of
the window, the border of the operational day is shown. While for all trains and transitions
always the actual day of the week is entered (trains before midnight are e.g. marked with

43
Monday, trains after midnight with Tuesday), this is about the operational day that is also 24h
long, but does not always change at midnight (default time: 03:00 am).

That means, tours are calculated till the border of the operational day. Trains that start before this
border are covered by the tour of the last operational day. All train transitions that start with
these cross-border trains are not evaluated for the last operational day, but they are valid for the
next day (even if the cross-border train is not listed again at the next train).

It is best to choose a border time, where no train is running (or the last trains of the operational
day are running, but do no longer have train transitions).

There are several tabs, to show all (daily) or only the tours for specific sets of days. Tours are
numbered as far as no vehicles are booked on the tour. Otherwise, the vehicles per day are shown
(chapter 5.8.2).

Format for tours that are shown is:


<Start station> <Departure time> - <Train number> - <Arrival time> <End station>

5.8.2 Vehicles and weekly tours


Using Windows → Show vehicles / locomotives and weekly tours this window is opened:

44
Vehicles are created, deleted and renamed (by double clicking on the name) in the upper left part
of the window. There is no limitation what a vehicle is: It can be locomotives, motor coaches,
train sets or even single coaches.

On the upper right part the selected vehicle is shown. In a table you can choose, per operational
day:

• With which train the vehicles starts on that operational day (further trains are calculated
with train transitions)

• Which vehicle this one becomes after this operational day

This pass over function can be used for a better comfort: In the example above there are e.g. two
vehicles ODEG-RS1-1 and ODEG-RS1-2. They take each others turns: One of them stays
overnight in Rottweil, the other one in Trossingen. Now you could choose the first train
alternating for them – so every second day in Trossingen or Rottweil. Instead, the first train is
always the same for both and the pass over is adjusted respectively: ODEG-RS1-1 passes over to
ODEG-RS1-2 and vice versa. This matches, as ODEG-RS1-1 starts in Trossingen and ODEG-
RS1-2 ends in Rottweil – and vice versa.

Only one vehicle per day is allowed to pass over to the same other vehicle – if there are two
vehicles on the same day that pass over to the same other vehicle on the next day, there is a error
message (chapter 7.2).

On the lower part of the window, the multi-day tours are shown. Vehicles pass over from tour

45
day n on operational day m to tour day n+1 on operational day m+1. From Sunday to Monday,
other changeovers can apply (as n+1 might not match).

More information about reading tours are available here (unfortunately, only in German):

https://www.drehscheibe-online.de/ds_cms/show.php?page=ULP&ret=Fragen

On top, the mean distance that is traveled by the affected vehicles is shown: This is the sum of
all distances divided by the number of vehicles.

46
6 Live timetables

6.1 Display own timetables live


In order to show an own timetable live, choose File → Live view → Timetable file. A new tab
within the main frame is opened:

To start the live display of a timetable, first choose the timetable file using the button Open. By
default, the current system time is used as current time in the train graph. You can choose
another time when you click on Set time. There is also a field for the Speed-up factor of time to
move the time forward more quick. Changes are applied, as soon as the enter key is pressed or
the field looses focus. If you e.g. choose factor 30, every 2 seconds the minute is increased. In
the lower part of the timetable, the day of operation for the timetable is chosen.

The live display is started, when the button Connect in the upper part of the view is pressed. The
train graph is automatically selected.

6.2 Train graph in live mode


6.2.1 Display
There are these differences for a live train graph compared to the normal version:

• Delays are shown per part of the route behind the train name
• The current time is shown, if help lines are activated
• When you click on a train, a frame to change it's delay is shown instead of the detail
view.

47
6.2.2 Delays
Delays are changed in the live mode, when the train is selected in the train graph (click on the
train). There is this window:

48
In the upper part the timetable is shown with the actual delays. If the check box Man. Is selected,
the delay for the arrival or departure time can be set completely manual, when the values in the
columns Delay are changed.

All non-manually entered delays are automatically calculated according to the system delay (if
applicable – only if timetable is read over an online interface) and the rules that are entered in the
lower part of the view.

The delay rules in the upper part are impacting the delays at specific points of the plan, either
arrivals or departures. The delay can be impacted in these ways:

• exact; the delay has exactly this value


• more; this value will be added to the delay
• less; this value will be subtracted from the delay
• at least; if the delay is smaller, then this value will be set as the new delay
• at most; if the delay is greater, then this value will be set as the new delay
On top, delay rules can be set based on other trains in the timetable. Therefore there is another
area in the lower part to enter crossings or take-overs. Example: Train 317 has a delay rule, that
it has 10 minutes delay from it's start station onwards. Therefore, the crossing with train 318 is
moved from Intragna to Corcapolo. Train 318 has to wait there, till train 317 has passed:

To reach this, a delay rules is defined for train 318. A crossing with train 317 in Corcapolo is
entered and train 318 can leave one minute after train 317 has arrived (so there is time to e.g.
release the train route):

Due to that, train 318 gets a delay of one minute:

49
6.2.3 Save the live timetable
Using File → Save live state the current timetable is saved to a timetable file. It can be modified
manually afterwards.

The delay values are lost during this save action, so the current times are took-over as normal
times. E.g. in the example of chapter 6.2.2 train 318 would get the departure 14:30 o'clock at
Corcapolo.

6.3 Display Stellwerksim-timetables


6.3.1 Prerequisites
To use jTrainGraph, the plugin interface of the Stellwerksim simulation has to be activated:
http://doku.stellwerksim.de/doku.php?id=stellwerksim:plugins

6.3.2 Quick start


To start quickly, when Stellwerksim is already running you click on File → Live view →
Stellwerksim in the main frame. jTrainGraph tries to connect to the Stellwerksim instance and
checks, if there is already a file with the definition, which stations are lined up in the train graph.
If yes, the train graph is directly opened. If not, jTrainGraph asks the user for a model train that
defines, which stations are shown in the train graph. In this case, it's best to choose a train with
many stops to show as much points of the timetable as possible.

6.3.3 Connect
By default (you can disable this in the settings), jTrainGraph tries to reach the Stellwerksim
instance automatically, if jTrainGraph was closed in Stellwerksim live mode last time. In every
case the tab in the main frame is opened:

50
To connect manually, click on the Connect button in the upper part of the view.

When the connection is established, a configuration is needed. From Stellwerksim, all stations
are obtained, but the sequence of the stations is unknown to the Stellwerksim interface. The
configurations can be calculated half-automated and later be modified manually. The
configuration can be saved in a file with the file-ending .stsconfig, so it does not need to be
entered each time.

The configuration contains a list of drives (drive ins/drive outs) and platforms, to assign a train
stop to a station in the train graph. All trains are shown, that touch at least two stations (thats the
only way to determine the direction).

jTrainGraph automatically searches for configurations in this order:

1. Offline: In subfolders of the folder, where jTrainGraph is currently executed, it searches


for configuration files, that match the currently chosen Stellwerksim interlocking
(according to the Stellwerksim-ID).
If exactly one configuration file is found, it is directly loaded. If more than one file is
found, the user has to choose the right file.

2. Online: jTrainGraph searches online for a configuration. The internet address is defined

51
in the settings (default: jTrainGraph-website). Same as in step 1 – if one file is found, it is
directly loaded, otherwise the user chooses one of the files.

3. When neither online nor offline a configuration is available, it can be calculated half-
automated based on one or two trains. The procedure is like that:

1. The train graph will start on the left with the drive in, where the first train comes
from.

2. For each timetable stop, a new station is created with the platform, where the train
stops and all neighbor platforms plus platforms, that have a similar name (e.g. will
RSEE 6 be added, when the train stops at RSEE 1, even when they are not
neighbors).

3. The train graph will end at the drive out, where the last train leaves the interlocking.

To obtain as much timetable data as possible, select trains that have a long ride through
the interlocking and serve as much platforms as possible.
If a train ends early in the interlocking, another train can be chosen to continue the half-
automated calculation. This is appropriate, where two lines of e.g. local trains meet at a
common station in the middle of the interlocking.
The frame to choose the trains looks like this:

52
You can modify the loaded configuration manually in any case. The procedure is explained in
the following chapter. In the lower part of the window, a schematic view of the route is shown:

6.3.4 Define or extend the configuration manually


Entering the configuration can be performed fully manual, or an existing configuration can be
manually optimized. The input is splitted in three columns:

In the left column the configuration itself is shown: There are all stations and stops, that are
shown in the train graph. One the one hand, there are stations defined by the platforms they
contain. On the other hand there are drives, that relate to Stellwerksim-Drives or junctions,
where the train reaches a platform after using the junction (but not the arrival at the station is
relevant, but the time the train leaves the train graph).

Stations and drives are added with the buttons Add station and Add drive and they are deleted
with the button Delete. The order can be changed with Move up and Move down, positions can
be entered manually (e.g. using the Wikipedia-article to a route) or they are calculated
automatically, when the checkbox Set kilometre values automatically is deselected (click on
Distribute kilometres to force this). The column in the middle shows the platforms or
Stellwerksim-drives that are configured for the station that is currently selected in the left
column. Also, the type of the station can be changed to a drive and vice versa. For drives, it can
be set, if the drive is defined by a Stellwerksim-drive or by platforms (see example below). For
drives, also the direction is provided, from where the drive can be reached (from left, from right
or both directions).

53
In the right column the available Stellwerksim-platforms and drives are listed. When you click
on << add all selected platforms/Stellwerksim-drives are added. If you click on << add with
neighbor platforms, also all neighbor platforms are added (based on the neighbors that are
defined in Stellwerksim).

Not all Stellwerksim-drives are transmitted on the interface to jTrainGraph, therefore


Stellwerksim-drives can be entered manually by the user, when the text field on the right (behind
Add missing drive) is used. Please enter the name and click on Add.

As this explanation was theoretically, here is an example. The example is about the interlocking
Höllentalbahn. The route from Freiburg to Donaueschingen has to be shown with the junction to
Seebrugg. Here is overview on the route: http://www.stellwerksim.de/shot/see_864.jpeg

First the drive in Freiburg is entered:

• Click on Add drive

• Enter the name Freiburg the the second column of the table on the left

• Optionally, you can enter that the drive is reachable from the right (as the train graph
continues on the right)

• Choose Freiburg Hbf in the right column and click in << add.

After that, all stations are entered by doing this:

• Click on Add station

54
• Enter the name in the second column of the new row in the table on the left

• Select all platforms in the right column and click on << add with neighbor platforms

Afterwards, the view looks like this:

The drive on the right – Donaueschingen - was created in the same way as Freiburg Hbf. Only
difference is, that it can be reached from the left side.

In Titisee there is the junction to Seebrugg. The whole route is modeled in the interlocking.
Therefore, the trains do not leave the interlocking using a Stellwerksim-drive (like Freiburg
Hbf). Therefore, the type of the drive is platforms and the platform names of the next station
Feldberg-Bärental are added.
All trains that run on the line configured in the train graph and come from or leave to the
platforms of Feldberg-Bärental will be displayed from/till the junction Seebrugg.

The configuration of Seebrugg-drive looks like this:

55
The configuration that was just entered will lead to this train graph:

6.3.5 Save configurations


In order to enter the configuration not every time from scratch, the currently used configuration
can be saved using File → Save configuration. In order to be usable on every platform, advice is
to avoid umlaute and other additional signs.

Instead of saving the configuration locally, it can be directly uploaded so it is available to others
(see 6.3.6).

56
6.3.6 Upload configuration for others
For Stellwerksim-Interlockings that do not yet have an online configuration and where the user
defined a configuration, the user is automatically asked after 2 minutes, if the configuration can
be uploaded to the community.

This step can also be triggered manually using File → Upload configuration.

In both cases, this windows is opened:

In this window, the name of a configuration can be entered. A standard name using this schema
is proposed:

Interlockingname_SourceTarget_comment.stsconfig

The example in chapter 6.3.4 would be named


Hoellentalbahn_FreiburgDonaueschingen_WithSeebruggJunction.stsconfig

You can use camel case to provide a distinction of words, e.g. for BadSalzungen.

When the name of the author is entered, the name is stored in the file and will be shown to other
users that use this file. The field can be either left empty, filled with a real name or filled with the
Stellwerksim user name.

If a configuration for the same interlocking with the same configuration name already exists, the
new configuration will be renamed by appending underscores. If you want to overwrite an
existing configuration instead, e.g. as it is no longer up to date, use the option Overwrite existing
configuration.

6.3.7 Close the connection


In most of the times, jTrainGraph will detect if the connection to Stellwerksim was lost. The

57
connection will be cleanly closed in this case and can be manually restarted.

If a lost of connection wasn't detected automatically, you can click on Close in the live tab of the
main frame.

58
7 Additional functions

7.1 Import and export to Excel / csv


In jTrainGraph Pro timetables can be exported to and imported from Excel files. Templates
define, how the timetable has to look when it is exported and how jTrainGraph tries to interpret
imported tables. Look to chapter 7.1.3 for further details.
Timetables can be distributed on several table sheets (csv: several files).

To ensure an optimal re-import of exported table files, the name of the table sheets or files
should keep untouched.

7.1.1 Export
Export is started in the menu of the main frame using File → Export → Tabular timetable
(Excel/csv). This window is opened:

59
In the upper part the template is selected (7.1.3). Below, the user can define, if both directions
should be contained in the same sheet of the table, or if there has to be one separate sheet for
each direction.

In the next section states the days of operation, that should be taken into account for the specific
tablesheets (or tablesheet-pairs). A train is contained in a sheet, when it drives at least at one of
the specified days.
By clicking on the +-button, additional tablesheets with other days of operation can be added.

Below, the output file is defined. If an export to csv is performed, per tablesheet one file is
created with the name of the sheet appended to the filename. The target file format can be
changed here, if necessary. For csv-files, the separation sign can be defined (default: comma).

In the panel Start that is bordered in black, warnings and error messages are shown. In the

60
example screenshot there is a warning, as two trains with the name 327 are contained in the
timetable. For trains with the same name, the connection to former or next trains can't be restored
when the timetable is imported again. The export might be started even when there are warnings,
as soon as Start Export is pressed.

In the lower part, a preview of the exported tables are shown.

7.1.2 Import
You can open the view for import at File → Import → Excel/csv-timetable file:

Also in this view the template (7.1.3) and the input files are shown. For Excel imports, one file is
possible, for csv-imports one or more files are possible. As soon as the file is chosen (using the
button Choose file) it is imported in the background and the log shows potential errors during
import. In the bottom part of the view, a preview of the imported timetable is shown (stations,
trains, timetable).

The timetable data are used in all views and frames of jTrainGraph, as soon as Apply timetable
data is clicked.

61
7.1.3 Templates
There are four default templates for import and export. Also own templates can be defined in
Excel or csv (with user-defined formatting).

These are the default templates:

• Stations in 2 rows, trains in columns


Stations are written top down and the departure and arrival times are shown in separate
rows. Per train there is one column, where the name (number) of the train, the days of
operation, comments, predecessor and times are shown. Times are listed just like in the
timetable view.

• 1 row per station, trains in columns


Just like template 1, with the difference, that for each station only one row is filled.
Arrival and departure times are shown side by side, that means, a train ranges over two
columns:

62
• Stations in columns, trains in rows
Vice versa to template 1: Per station there are two columns with arrival and departure
times. Each train is shown in a row and the timetable has to be read from the left to the
right:

• Stations in 2 rows, trains in columns, with tracks


Just like template 1, but with arrival and departure tracks.

You can create own templates by writing some parameters in an Excel or a csv file. jTrainGraph
parses the parameters and fills them with information (for export) respectively reads information
at this position (for import).

Therefore in tables, where the stations are shown in rows (see templates 1 and 2), all columns
with information about trains are copied to the right so all trains are contained. All information
that is on the right of these columns is shifted respectively. Stations are expanded top down.

63
For timetables with trains in rows (see template 3) the same applies vice versa.

The function for own templates is recommended for advanced users. Only in special cases,
support can be provided.

There are these parameters:

Parameter Meaning Restrictions


%CONSTANT_STATIONS_RIGHT% Removed when applied Insert this at a random place in
the table to show, that stations
have to be expanded to the right
(stations in columns)
Not needed, when
STA_NAME_RIGHT is used
%CONSTANT_TRAINNAME% Is replaced by the static
text Name of train
%CONSTANT_DAYS% Is replaced by the static
text Days of operation
%CONSTANT_COMMENT% Is replaced by the static
text Comment
%CONSTANT_PREDECESSOR% Is replaced by the static
text Predecessor
%CONSTANT_SUCCESSOR% Is replaced by the static
text Successor
%TITLE% Replaced by the title of
the plan
%STA_POS% For a station: Position
%STA_NAME% For a station: Name
%STA_NAME_RIGHT% For a station: Name Automatically shows, that
stations have to be expanded to
the right (see template 3)
%STA_COLUMN% Is replaced by the static Automatically shows, that per
text Arrival resp. station two rows/columns have
Departure to be written
%STA_COL% Is replaced by the static
text arr. resp. dep.
%TRAIN_NAME% For a train: name
%TRAIN_DAYS% For a train: days of
operation (e.g. daily,
Mo-Fr; Mo, Sa-Sun)
%TRAIN_COMMENT% For a train: comment

64
%TRAIN_PREDECESSOR% For a train: predecessor
train (according to
connected train, 5.6.1)
%TRAIN_SUCCESSOR% For a train: successor
train (according to
connected train, 5.6.1)
%TRAIN_TIME% For a train at a station: Automatically shows, that there
time are two rows resp. columns per
train
%TRAIN_TIME_ARRIVE% For a train at a station: Used when there is only one
arrival time row/column per train
%TRAIN_TIME_DEPART% For a train at a station: Used when there is only one
departure time row/column per train
%TRAIN_TIME_DTLINE% For a train at a station: Used when there is only one
arrival time, | when row/column per train
train drives through
%TRAIN_TRACK% For a train at a station: Only works in combination
track with %TRAIN_TIME%, not
the other parameters
For predecessor trains and successor trains, only trains at the first station respectively last station
are taken into account. If there is a split or merge event during the run, this is currently not
evaluated.

For example, the Excel template for the default template 1 looks like this:

7.2 Checks
Since version 3.1 some checks can be applied to the timetable. In version 3.2, additional checks
were added.

65
Keep in mind that the checks (as the whole program) have no safety relevance: Too many or too
less validation errors can be displayed.

There is tab in the main window, the checks can be also shown in an own window using
Windows → Show checks:

In the upper part of the view the rulesets to be applied to the timetable can be chosen. By default,
all are selected. In the free version of jTrainGraph only consistency checks can be applied.

The rules are rechecked whenever a change occures in the timetable. The results are shown in the
table. When a row is selected, its details are shown in the text fiels on the bottom.

Above the table there is a textfield to filter the table entries. When a text is entered, all rows are
shown that contain this text at any position in any column. The filter can be applied more precise

66
by using the name of the column, e.g. “Number=130”. More than one column can be assigned,
so e.g. “Number=130;Context=Intragna” will find all messages with number 130, where the
context contains Intragna.

On the right of this textfield there is a button to export the current content of the table to an
Excel- or csv-file (in jTrainGraph Pro).

These are the possible error messages:

Number Rule set Description


101 Consistency Two stations are at the same position. This will cause errors in
train graph.
102 Consistency Default track is not in station.
103 Consistency Track name is invalid, as it starts with -.
104 Consistency Two tracks in this station have the same name. This will cause
errors.
110 Consistency Train transition invalid, as train(s) are no longer contained in plan.
111 Consistency Train has times after last arrival.
112 Consistency Train transition is invalid (Details are listed in the context section)
120 Station track Train arrives in occupied track.
occupation
130 Route track Trains meet on route part with only one track.
occupation
131 Route track Train passes by on route part with only one track.
occupation
132 Route track Train passes by on route part with two tracks. No free track found.
occupation
140 Vehicles and Vehicles are not set for train transitions and therefore can't be
tours assigned distinctively to tours.
141 Vehicles and The same vehicle passes over to multiple trains on the same day
tours after this base train.
142 Vehicles and Train transition is located before first station of one of the affected
tours trains.
143 Vehicles and Train transition is located after last station of one of the affected
tours trains.
144 Vehicles and Train transition is located at station, where one of the affected
tours trains does only drive through.
145 Vehicles and Tour not consistent, as there is no train connection between the
tours stations of two consecutive train transitions.

67
Number Rule set Description
146 Vehicles and Location of standstill can't be calculated: Ends at station before
tours standstill, but starts next operation after standstill at another
station.
147 Vehicles and Weekly tour not consistent, as vehicle ends at a station but starts
tours next operation on day after at another station.
148 Vehicles and Operation days are overlapping: Last train on operation day ends
tours after first train of next operation day should have started.
149 Vehicles and More than one vehicle transforms to same vehicle on next day of
tours operation.
150 Vehicles and The train that is set as first train on operation day is not running on
tours this day.

These are possible warnings:

Number Rule set Description


401 Station track Multiple shunting movements from different trains are in this
occupation track at the same time.
410 Vehicles and On the named operation day, the following tours are not equiped
tours with vehicles.
411 Vehicles and Train transition can't be used by all assigned vehicles.
tours
412 Vehicles and There are several train transitions from source to target train, that
tours affect all vehicles and are valid on the same days.

These are possible information messages:

Number Rule set Description


701 Route track These trains drive through stations without departure times. Times
occupation are automatically calculated.
Note that this will be done on the safe side – arrival is rounded
up, departure time is rounded down. Therefore the safe arrival
time can be one minute later than the safe departure time.
702 Station track These trains drive through stations without departure times. No
occupation tracks are blocked for drive through at these stations.
703 Station track Shunting is automatically calculated.
occupation
704 Station track Track change is calculated automatically (different arrival, than
occupation departure track).

68
Number Rule set Description
705 Route track For a route part with more than 3 tracks, no check of track
occupation occupation is performed.
710 Route track Train passes by another train in route part with 2 tracks. No
occupation conflicting trains found.
720 Vehicles and Split of train was found. As no vehicles are created, the resulting
tours tours might be wrong or redundant.
721 Vehicles and The listed train transitions are not evaluated for tours, as they
tours reach over break time between operational days.
722 Vehicles and Train runs for more than 24 hours. This is not yet supported by
tours tour / weekly tour calculation.

7.3 Show trains using rules


In order to show the trains in the train graph using rules, first this functionality has to be
activated in the main view: View → Display trains according to rules. Afterwards the rules are
configured: View → Configure train display rules and this view is opened:

Every row represents a rule. There is a default rule that applies to all trains (column 1 says
Default). Rules are added, removed and reordered using the buttons on the right. Rules that are
displayed on top have a higher priority than the ones on the bottom of the view. When more than
one rule applies for a train, the rule with the higher priority defines the train style in case of
conflicts.

The second column defines the criterion to apply to the train name / train number:

1. Name of train contains

2. Name of train is

69
3. Name of train starts with / ends with

4. Train number is smaller / greater than

5. Train number is even / odd

6. Train name matches regular expression

In column 3, for criterions 1-4 and 6 the search text / the number is defined, that has to be
compared to the train name or number. For criterions 4 and 5 all digits in the train name are
taken into account (e.g. S1 3845 will be evaluated to number 13845).

The columns 4 to 7 define the style of all trains the rule applies to. Four different aspects of the
style can remain untouched or be defined explicitly.

Example based on the image above:

• All trains are shown, as this is the default rule. This means, that also trains that are
individually defined as not shown are still shown in the train graph (see 5.5.10 Individual
design of trains).

• All trains with even train numbers are shown with pointed lines, all trains with odd
numbers are shown with longly dashed lines.

• All trains with names that start with ICE, are shown in red.

• All trains whose names end with -D are shown in black with 3 pixels line size.
Exception: All trains with names starting with ICE and ending with -D are shown in red
(as the ICE-rule has a higher priority) with 3 pixels line size.

Rule sets can be saved using Save rules to file and reloaded using Load rules from file. They are
saved to plain xml files with ending .xml.

7.4 Update functionality


The update function of jTrainGraph is started explicitly using Help → Search for update in the
main window. Is searches for new versions of the application and, if the user wants, starts
downloading this new version (or opens jTrainGraph-website so the user can).

By default, the update function is executed every time the application is started. This behaviour

70
can be deselected in the preferences. If a new version is available, a dialog is shown to the user,
otherwise there is a message in the log of the main window.

For statistical purposes and to get the best possible proposal for a new version, the following
information is transmitted to the update server:

• Currently used jTrainGraph-version

Zu Statistikzwecken sowie zur Ermittlung des benötigten Updates werden folgende Angaben
verwendet und an den Updateserver übermittelt:

• Currently used jTrainGraph-version


• Operating system
• Selected language
• User name and serial number / activation code, when the Pro-functionality is used
• Flag which mode is currently executed (Stellwerksim-mode or not)
• Flag if the update function is executed automatically at application start

7.5 Settings
7.5.1 Change settings
Using Settings → Settings some parameters can be modified in order to better align the
application to the user needs.
Some special parameters are described here briefly:

71
Language:
Changes to this parameter will be applied at next start of the application.

Send failures of application without providing information / Never send application failures:
If an unexpected failure occurs in jTrainGraph, a window is opened where the error can be
reported. In this window, a description of the actions leading to this error can be entered. If this
windows does not have to be shown, but the error should be automatically reported, the upper
checkbox has to be selected. If errors should never be reported, the lower checkbox has to be
selected. It is not recommended to change the default settings, as errors can't be fixed in this case
(or it's more difficult to do so).

When the error is reported, no user settings are transmitted. Only the description, an optionally to
be entered e-mail address and the crash message of the application (strack trace) is sent.

Author of configurations: For newly created or automatically created configurations the user
name entered here will be filled into the configuration file. When the file is provided to other
users, they will see the name entered here in their application log.

Hostname to connect: Applies when Stellwerksim runs on another machine within the same
network. This hostname will be directly used for startup of Stellwerksim interface the next time a
connection is established.

URL for online-configurations:


To this web-address the question for online-configurations is transmitted. For the moment, only

72
the address that is entered by default is possible, but there might be other providers later.

Show platforms in train graph: Below every train name / train number, the Stellwerksim
platforms will be shown.

Only show numbers: Only the numbers of Stellwerksim platforms are shown
(e.g. for Stellwerksim-platform RHIZ 1 only “1” will be
shown)

Show the first/last x characters: Only the first/last x characters of the Stellwerksim-platforms will
be shown. Any number can be entered. For value -1, the whole name is shown. For values
greater than 0, this number of characters will be shown in the way, that e.g. for first x characters
= 2 and last x characters = 1 the Stellwerksim-platform will be shown as RH1. When 0 is
entered, only the other parameter applies, so e.g. first x characters = 2 and last x characters = 0
resolves to RH for Stellwerksim-platform RHIZ 1.

The settings chosen in this frame will be stored in the file preferences.xml in the folder, where
the jTrainGraph jar- or exe-file is. In this file also some additional, invisible settings are stored,
e.g. if jTrainGraph was in Stellwerksim mode when it was executed last time (in this case it will
be started in this mode also the next time).

7.5.2 Manage additional colors


The existing colors can be extended by additional colors. To do this, in the main window
Settings → Manage additional colors has to be selected in order to show this window:

Using Add color a new color can be entered. In the first column (from the left), the name of the
color is shown. In the second column, the color is shown. The color can be entered in three ways:

73
1. Enter decimal values for red, green and blue component of the color (0 - 255)

2. Enter the hexadecimal value for RGB-value in the rightmost column

3. Select the color and click on Edit selected color on the right in order to define the color
using the default frame of the operating system.

Using Load unnamed colors all colors are loaded, that are used for trains, stations and helplines,
but are not listed in the additional colors table and are also no default color. This can be caused
when timetable files of other users are loaded without applying their color settings.

When the checkbox For changes to colors, change every usage to new color is selected, changes
are directly applied to all existing trains, stations and helplines.

The colors are also stored in preferences.xml file.

7.5.3 Change color sortation


For a quicker selection of colors, the order of default and additional colors can be modified. This
is started using Settings → Change sequence of colors in the main window. There is a table with
all colors and the sortation can be changed by selecting a color and using the buttons on the
right:

74
Colors no longer present will be removed at next startup of jTrainGraph, newly created
additional colors are appended at the end of the list.

7.5.4 Restore default settings

In order to load default settings after changes by the user, Settings → Restore default settings has
to be chosen. In this window, several options define which parts of the settings are reset and
which are not.

75
8 Shortcuts
Windows are closed using Ctrl/Cmd + W or Ctrl/Cmd + S. In the main windows, these
additional shortcuts apply:

Shortcut Action
Ctrl + N Create new file
Ctrl + O Open file
Ctrl + S Save file
Ctrl + Shift + S Save file to
Ctrl + Z Undo
Ctrl + Shift + Z Redo
Ctrl + Q Close application (not on Mac OS)
Ctrl + E Export train graph to image file
Ctrl + P Print train graph
Ctrl + T Switch between mode to create own timetables and
mode to show Stellwerksim-live data
Ctrl + B Open new windows to edit stations
Ctrl + K Open new window to edit trains and days of operation
Ctrl + Z Open new window to edit timetable
Ctrl + R Open new windows to show train graph
Ctrl + , Open new window with application settings

On Mac OS, the cmd-key is used instead of the ctrl-key.

76
9 FAQ

9.1 General
9.1.1 How to report errors?
Errors can't be completely avoided during development, therefore it is important to localize and
fix bugs. To be able to do this, I need a description of the failure and all steps that are necessary
to reproduce it – and if possible and applicable the files needed to reproduce it.

When the problem only occures on a specific operation system / platform, I also need the version
of the operation system and the version of the installed Java version(s).

9.2 Stellwerksim mode


9.2.1 Why are not all trains shown in the train graph?
Trains are only shown, when they stop at least at one platform that is added to a jTrainGraph
station and

• have their source or destination at a drive defined in jTrainGraph


• stop at a second platform defined in a jTrainGraph station
Therefore the first platforms right beneath the start of the interlocking area should be contained
in the configuration (see 6.3.4).
In order to use meaningful slopes for trains, at least two platforms for each train should be
defined in jTrainGraph.

9.3 jTrainGraph Pro


9.3.1 I purchased jTrainGraph Pro. Why am I not able to download it?
After ordering jTrainGraph Pro you first get an unlock code. This code can be entered in the free
version of jTrainGraph using Help → Unlock pro functionality. It is valid for 2 weeks.

After paying the bill, a serial number is sent to you. With this serial number you will be able to
download jTrainGraph Pro online – for permanent offline use.

77

You might also like