From 8e6df4566b1f5fba5e0466d96a291c958d091502 Mon Sep 17 00:00:00 2001 From: kaat0 Date: Tue, 26 Feb 2019 14:46:51 +0100 Subject: [PATCH] Updated Symbols -added symbols for vehicles -added MainTrack and Sidetrack as Style -divided library files --- .../block_clearing_point_backward.tikz | 2 +- .../block_clearing_point_forward.tikz | 2 +- .../snippets/block_end_marker_backward.tikz | 2 +- .../snippets/block_end_marker_forward.tikz | 2 +- examples/snippets/block_signal_backward.tikz | 2 +- examples/snippets/block_signal_forward.tikz | 2 +- examples/snippets/bridge.tikz | 2 +- examples/snippets/bridge_track_beneath.tikz | 4 +- examples/snippets/bufferstop_backward.tikz | 2 +- examples/snippets/bufferstop_forward.tikz | 2 +- examples/snippets/clearing_point.tikz | 2 +- examples/snippets/derailer_left_backward.tikz | 2 +- examples/snippets/derailer_left_forward.tikz | 2 +- .../snippets/derailer_right_backward.tikz | 2 +- examples/snippets/derailer_right_forward.tikz | 2 +- examples/snippets/diamond_crossing_left.tikz | 4 +- examples/snippets/diamond_crossing_right.tikz | 4 +- .../snippets/distant_signal_backward.tikz | 2 +- examples/snippets/distant_signal_forward.tikz | 2 +- .../distant_speed_signal_backward.tikz | 2 +- .../distant_speed_signal_forward.tikz | 2 +- .../snippets/double-slip_turnout_left.tikz | 4 +- .../snippets/double-slip_turnout_right.tikz | 4 +- ...kz => ghost_train_direction_backward.tikz} | 4 +- ...ikz => ghost_train_direction_forward.tikz} | 4 +- examples/snippets/level_crossing_double.tikz | 4 +- .../level_crossing_double_full_closure.tikz | 4 +- examples/snippets/level_crossing_single.tikz | 2 +- examples/snippets/main_line.tikz | 4 +- examples/snippets/main_track.tikz | 2 +- examples/snippets/platform_left.tikz | 2 +- examples/snippets/platform_middle.tikz | 4 +- examples/snippets/platform_right.tikz | 2 +- .../route_clearing_point_backward.tikz | 2 +- .../route_clearing_point_forward.tikz | 2 +- examples/snippets/route_signal_backward.tikz | 2 +- examples/snippets/route_signal_forward.tikz | 2 +- examples/snippets/short_train.tikz | 2 +- examples/snippets/shunt_limit_backward.tikz | 2 +- examples/snippets/shunt_limit_forward.tikz | 2 +- examples/snippets/shunt_signal_backward.tikz | 2 +- examples/snippets/shunt_signal_forward.tikz | 2 +- examples/snippets/side_track.tikz | 2 +- examples/snippets/speed_signal_backward.tikz | 2 +- examples/snippets/speed_signal_forward.tikz | 2 +- examples/snippets/train.tikz | 2 +- examples/snippets/train_berth.tikz | 2 +- examples/snippets/train_berth_shape.tikz | 2 +- .../train_berth_shape_bidirectional.tikz | 2 +- .../snippets/train_berth_sign_backward.tikz | 2 +- .../snippets/train_berth_sign_forward.tikz | 2 +- .../snippets/train_direction_backward.tikz | 8 + .../snippets/train_direction_forward.tikz | 8 + examples/snippets/train_drive_automatic.tikz | 9 + examples/snippets/train_drive_human.tikz | 9 + examples/snippets/train_moving_backward.tikz | 2 +- examples/snippets/train_moving_forward.tikz | 2 +- examples/snippets/transmitter.tikz | 2 +- examples/snippets/transmitter_backward.tikz | 2 +- .../transmitter_below_with_signal.tikz | 2 +- .../snippets/transmitter_bidirectional.tikz | 2 +- examples/snippets/transmitter_forward.tikz | 2 +- examples/snippets/turnout_left_backward.tikz | 4 +- examples/snippets/turnout_left_forward.tikz | 4 +- examples/snippets/turnout_right_backward.tikz | 4 +- examples/snippets/turnout_right_forward.tikz | 4 +- .../turnout_with_fouling_left_backward.tikz | 4 +- .../turnout_with_fouling_left_forward.tikz | 4 +- .../turnout_with_fouling_right_backward.tikz | 4 +- .../turnout_with_fouling_right_forward.tikz | 4 +- examples/snippets/view_point_backward.tikz | 2 +- examples/snippets/view_point_forward.tikz | 2 +- examples/station_berg.tex | 10 +- examples/station_rebenau.tex | 203 +----------------- overview.pdf | Bin 75166 -> 65212 bytes overview.tex | 27 ++- src/layoutSymbols_DE.tikz | 26 ++- src/timeDistanceDiagram_test.tikz | 59 +++++ src/topology.tikz | 3 + src/vehicles.tikz | 50 ++++- 80 files changed, 276 insertions(+), 310 deletions(-) rename examples/snippets/{ghost_train_moving_forward.tikz => ghost_train_direction_backward.tikz} (78%) rename examples/snippets/{ghost_train_moving_backward.tikz => ghost_train_direction_forward.tikz} (78%) create mode 100644 examples/snippets/train_direction_backward.tikz create mode 100644 examples/snippets/train_direction_forward.tikz create mode 100644 examples/snippets/train_drive_automatic.tikz create mode 100644 examples/snippets/train_drive_human.tikz create mode 100644 src/timeDistanceDiagram_test.tikz diff --git a/examples/snippets/block_clearing_point_backward.tikz b/examples/snippets/block_clearing_point_backward.tikz index ba146d2..397345a 100644 --- a/examples/snippets/block_clearing_point_backward.tikz +++ b/examples/snippets/block_clearing_point_backward.tikz @@ -4,5 +4,5 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=2pt] (-2.5,0) -- ++(5,0); +\draw[MainTrack] (-2.5,0) -- ++(5,0); \pic at (0,0) {block_clearing_point_backward}; \ No newline at end of file diff --git a/examples/snippets/block_clearing_point_forward.tikz b/examples/snippets/block_clearing_point_forward.tikz index 80059e5..d8c25da 100644 --- a/examples/snippets/block_clearing_point_forward.tikz +++ b/examples/snippets/block_clearing_point_forward.tikz @@ -4,5 +4,5 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=2pt] (-2.5,0) -- ++(5,0); +\draw[MainTrack] (-2.5,0) -- ++(5,0); \pic at (0,0) {block_clearing_point_forward}; \ No newline at end of file diff --git a/examples/snippets/block_end_marker_backward.tikz b/examples/snippets/block_end_marker_backward.tikz index f314bae..41a7b67 100644 --- a/examples/snippets/block_end_marker_backward.tikz +++ b/examples/snippets/block_end_marker_backward.tikz @@ -4,5 +4,5 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=2pt] (-2.5,0) -- ++(5,0); +\draw[MainTrack] (-2.5,0) -- ++(5,0); \pic at (0,0) {block_end_marker_backward}; \ No newline at end of file diff --git a/examples/snippets/block_end_marker_forward.tikz b/examples/snippets/block_end_marker_forward.tikz index 287a4b2..e9bb754 100644 --- a/examples/snippets/block_end_marker_forward.tikz +++ b/examples/snippets/block_end_marker_forward.tikz @@ -4,5 +4,5 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=2pt] (-2.5,0) -- ++(5,0); +\draw[MainTrack] (-2.5,0) -- ++(5,0); \pic at (0,0) {block_end_marker_forward}; \ No newline at end of file diff --git a/examples/snippets/block_signal_backward.tikz b/examples/snippets/block_signal_backward.tikz index acf6a31..31b59c8 100644 --- a/examples/snippets/block_signal_backward.tikz +++ b/examples/snippets/block_signal_backward.tikz @@ -4,6 +4,6 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=2pt] (-2.5,0) -- ++(5,0); +\draw[MainTrack] (-2.5,0) -- ++(5,0); \pic at (0,0) {block_signal_backward=S}; % replace the S with desired speed or remove \ No newline at end of file diff --git a/examples/snippets/block_signal_forward.tikz b/examples/snippets/block_signal_forward.tikz index 05fe1af..2310213 100644 --- a/examples/snippets/block_signal_forward.tikz +++ b/examples/snippets/block_signal_forward.tikz @@ -4,6 +4,6 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=2pt] (-2.5,0) -- ++(5,0); +\draw[MainTrack] (-2.5,0) -- ++(5,0); \pic at (0,0) {block_signal_forward=S}; % replace the S with desired speed or remove \ No newline at end of file diff --git a/examples/snippets/bridge.tikz b/examples/snippets/bridge.tikz index 9b2b6a4..7c5f1b9 100644 --- a/examples/snippets/bridge.tikz +++ b/examples/snippets/bridge.tikz @@ -4,6 +4,6 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=2pt] (-2.5,0) -- ++(5,0); +\draw[MainTrack] (-2.5,0) -- ++(5,0); \pic at (-2,0) {bridge_left=4}; \pic at (-2,0) {bridge_right=4}; \ No newline at end of file diff --git a/examples/snippets/bridge_track_beneath.tikz b/examples/snippets/bridge_track_beneath.tikz index dcdd21b..8f0d990 100644 --- a/examples/snippets/bridge_track_beneath.tikz +++ b/examples/snippets/bridge_track_beneath.tikz @@ -4,8 +4,8 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=2pt] (-1,-1) -- ++(2,2); +\draw[MainTrack] (-1,-1) -- ++(2,2); \fill[white] (-1,-0.4) rectangle (1,0.4); -\draw[line width=2pt] (-2.5,0) -- ++(5,0); +\draw[MainTrack] (-2.5,0) -- ++(5,0); \pic at (-1,0) {bridge_left=3}; \pic at (-2,0) {bridge_right=3}; \ No newline at end of file diff --git a/examples/snippets/bufferstop_backward.tikz b/examples/snippets/bufferstop_backward.tikz index da633d9..ec0c45e 100644 --- a/examples/snippets/bufferstop_backward.tikz +++ b/examples/snippets/bufferstop_backward.tikz @@ -4,5 +4,5 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=2pt] (0,0) -- ++(2.5,0); +\draw[MainTrack] (0,0) -- ++(2.5,0); \pic at (0,0) {bufferstop_backward}; \ No newline at end of file diff --git a/examples/snippets/bufferstop_forward.tikz b/examples/snippets/bufferstop_forward.tikz index 9281c1f..62a1c2c 100644 --- a/examples/snippets/bufferstop_forward.tikz +++ b/examples/snippets/bufferstop_forward.tikz @@ -4,5 +4,5 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=2pt] (-2.5,0) -- ++(2.5,0); +\draw[MainTrack] (-2.5,0) -- ++(2.5,0); \pic at (0,0) {bufferstop_forward}; \ No newline at end of file diff --git a/examples/snippets/clearing_point.tikz b/examples/snippets/clearing_point.tikz index e5f1703..b1f83ec 100644 --- a/examples/snippets/clearing_point.tikz +++ b/examples/snippets/clearing_point.tikz @@ -4,5 +4,5 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=2pt] (-2.5,0) -- ++(5,0); +\draw[MainTrack] (-2.5,0) -- ++(5,0); \pic at (0,0) {clearing_point}; \ No newline at end of file diff --git a/examples/snippets/derailer_left_backward.tikz b/examples/snippets/derailer_left_backward.tikz index 5974659..ddff6df 100644 --- a/examples/snippets/derailer_left_backward.tikz +++ b/examples/snippets/derailer_left_backward.tikz @@ -4,5 +4,5 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=1pt] (-2.5,0) -- ++(5,0); +\draw[SideTrack] (-2.5,0) -- ++(5,0); \pic at (0,0) {derailer_left_backward}; \ No newline at end of file diff --git a/examples/snippets/derailer_left_forward.tikz b/examples/snippets/derailer_left_forward.tikz index 5c3768f..a677e27 100644 --- a/examples/snippets/derailer_left_forward.tikz +++ b/examples/snippets/derailer_left_forward.tikz @@ -4,5 +4,5 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=1pt] (-2.5,0) -- ++(5,0); +\draw[SideTrack] (-2.5,0) -- ++(5,0); \pic at (0,0) {derailer_left_forward}; \ No newline at end of file diff --git a/examples/snippets/derailer_right_backward.tikz b/examples/snippets/derailer_right_backward.tikz index bbea0ae..2013cb6 100644 --- a/examples/snippets/derailer_right_backward.tikz +++ b/examples/snippets/derailer_right_backward.tikz @@ -4,5 +4,5 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=1pt] (-2.5,0) -- ++(5,0); +\draw[SideTrack] (-2.5,0) -- ++(5,0); \pic at (0,0) {derailer_right_backward}; \ No newline at end of file diff --git a/examples/snippets/derailer_right_forward.tikz b/examples/snippets/derailer_right_forward.tikz index 0c8d6ef..4f48540 100644 --- a/examples/snippets/derailer_right_forward.tikz +++ b/examples/snippets/derailer_right_forward.tikz @@ -4,5 +4,5 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=1pt] (-2.5,0) -- ++(5,0); +\draw[SideTrack] (-2.5,0) -- ++(5,0); \pic at (0,0) {derailer_right_forward}; \ No newline at end of file diff --git a/examples/snippets/diamond_crossing_left.tikz b/examples/snippets/diamond_crossing_left.tikz index a3eb289..4655973 100644 --- a/examples/snippets/diamond_crossing_left.tikz +++ b/examples/snippets/diamond_crossing_left.tikz @@ -4,7 +4,7 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=2pt] (-2.5, 0) -- ++(5,0); -\draw[line width=2pt] (-1 ,-1) -- ++(2,2); +\draw[MainTrack] (-2.5, 0) -- ++(5,0); +\draw[MainTrack] (-1 ,-1) -- ++(2,2); \pic at (0,0) {turnout_left_forward=none}; \pic at (0,0) {turnout_left_backward=none}; \ No newline at end of file diff --git a/examples/snippets/diamond_crossing_right.tikz b/examples/snippets/diamond_crossing_right.tikz index 473bf4d..4bee29c 100644 --- a/examples/snippets/diamond_crossing_right.tikz +++ b/examples/snippets/diamond_crossing_right.tikz @@ -4,7 +4,7 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=2pt] (-2.5,0) -- ++(5, 0); -\draw[line width=2pt] (-1 ,1) -- ++(2,-2); +\draw[MainTrack] (-2.5,0) -- ++(5, 0); +\draw[MainTrack] (-1 ,1) -- ++(2,-2); \pic at (0,0) {turnout_right_forward=none}; \pic at (0,0) {turnout_right_backward=none}; \ No newline at end of file diff --git a/examples/snippets/distant_signal_backward.tikz b/examples/snippets/distant_signal_backward.tikz index eff4a3c..dff77aa 100644 --- a/examples/snippets/distant_signal_backward.tikz +++ b/examples/snippets/distant_signal_backward.tikz @@ -4,5 +4,5 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=2pt] (-2.5,0) -- ++(5,0); +\draw[MainTrack] (-2.5,0) -- ++(5,0); \pic at (0,0) {distant_signal_backward}; \ No newline at end of file diff --git a/examples/snippets/distant_signal_forward.tikz b/examples/snippets/distant_signal_forward.tikz index 047c380..b329556 100644 --- a/examples/snippets/distant_signal_forward.tikz +++ b/examples/snippets/distant_signal_forward.tikz @@ -4,5 +4,5 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=2pt] (-2.5,0) -- ++(5,0); +\draw[MainTrack] (-2.5,0) -- ++(5,0); \pic at (0,0) {distant_signal_forward}; \ No newline at end of file diff --git a/examples/snippets/distant_speed_signal_backward.tikz b/examples/snippets/distant_speed_signal_backward.tikz index 03a9bdf..fc22f69 100644 --- a/examples/snippets/distant_speed_signal_backward.tikz +++ b/examples/snippets/distant_speed_signal_backward.tikz @@ -4,6 +4,6 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=2pt] (-2.5,0) -- ++(5,0); +\draw[MainTrack] (-2.5,0) -- ++(5,0); \pic at (0,0) {distant_signal_backward=S}; % replace the S with desired speed or remove \ No newline at end of file diff --git a/examples/snippets/distant_speed_signal_forward.tikz b/examples/snippets/distant_speed_signal_forward.tikz index e85cb9c..9ed0a5a 100644 --- a/examples/snippets/distant_speed_signal_forward.tikz +++ b/examples/snippets/distant_speed_signal_forward.tikz @@ -4,6 +4,6 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=2pt] (-2.5,0) -- ++(5,0); +\draw[MainTrack] (-2.5,0) -- ++(5,0); \pic at (0,0) {distant_signal_forward=S}; % replace the S with desired speed or remove \ No newline at end of file diff --git a/examples/snippets/double-slip_turnout_left.tikz b/examples/snippets/double-slip_turnout_left.tikz index d296e24..11317bd 100644 --- a/examples/snippets/double-slip_turnout_left.tikz +++ b/examples/snippets/double-slip_turnout_left.tikz @@ -4,8 +4,8 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=2pt] (-2.5, 0) -- ++(5,0); -\draw[line width=2pt] (-1 ,-1) -- ++(2,2); +\draw[MainTrack] (-2.5, 0) -- ++(5,0); +\draw[MainTrack] (-1 ,-1) -- ++(2,2); \pic at (0,0) {turnout_left_forward}; \pic at (0,0) {turnout_left_backward}; \pic at (0,0) {slip_left_forward}; diff --git a/examples/snippets/double-slip_turnout_right.tikz b/examples/snippets/double-slip_turnout_right.tikz index f62dfd2..27d713c 100644 --- a/examples/snippets/double-slip_turnout_right.tikz +++ b/examples/snippets/double-slip_turnout_right.tikz @@ -4,8 +4,8 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=2pt] (-2.5,0) -- ++(5, 0); -\draw[line width=2pt] (-1 ,1) -- ++(2,-2); +\draw[MainTrack] (-2.5,0) -- ++(5, 0); +\draw[MainTrack] (-1 ,1) -- ++(2,-2); \pic at (0,0) {turnout_right_forward}; \pic at (0,0) {turnout_right_backward}; \pic at (0,0) {slip_right_forward}; diff --git a/examples/snippets/ghost_train_moving_forward.tikz b/examples/snippets/ghost_train_direction_backward.tikz similarity index 78% rename from examples/snippets/ghost_train_moving_forward.tikz rename to examples/snippets/ghost_train_direction_backward.tikz index 6513261..b8f4c9a 100644 --- a/examples/snippets/ghost_train_moving_forward.tikz +++ b/examples/snippets/ghost_train_direction_backward.tikz @@ -4,5 +4,5 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=2pt] (-2.5,0) -- ++(5,0); -\pic at (2,0) {ghost_train_moving_forward}; \ No newline at end of file +\draw[MainTrack] (-2.5,0) -- ++(5,0); +\pic at (-2,0) {ghost_train_direction_backward}; \ No newline at end of file diff --git a/examples/snippets/ghost_train_moving_backward.tikz b/examples/snippets/ghost_train_direction_forward.tikz similarity index 78% rename from examples/snippets/ghost_train_moving_backward.tikz rename to examples/snippets/ghost_train_direction_forward.tikz index 54e3c40..3ca275c 100644 --- a/examples/snippets/ghost_train_moving_backward.tikz +++ b/examples/snippets/ghost_train_direction_forward.tikz @@ -4,5 +4,5 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=2pt] (-2.5,0) -- ++(5,0); -\pic at (-2,0) {ghost_train_moving_backward}; \ No newline at end of file +\draw[MainTrack] (-2.5,0) -- ++(5,0); +\pic at (2,0) {ghost_train_direction_forward}; \ No newline at end of file diff --git a/examples/snippets/level_crossing_double.tikz b/examples/snippets/level_crossing_double.tikz index 378e66e..86680a0 100644 --- a/examples/snippets/level_crossing_double.tikz +++ b/examples/snippets/level_crossing_double.tikz @@ -4,8 +4,8 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=2pt] (-2.5,-0.5) -- ++(5,0); -\draw[line width=2pt] (-2.5, 0.5) -- ++(5,0); +\draw[MainTrack] (-2.5,-0.5) -- ++(5,0); +\draw[MainTrack] (-2.5, 0.5) -- ++(5,0); \pic at (0, 0.5) {level_crossing_barrier_left}; \pic at (0, 0.5) {level_crossing}; \pic at (0,-0.5) {level_crossing_barrier_right}; \ No newline at end of file diff --git a/examples/snippets/level_crossing_double_full_closure.tikz b/examples/snippets/level_crossing_double_full_closure.tikz index 7c1b2ec..580b49a 100644 --- a/examples/snippets/level_crossing_double_full_closure.tikz +++ b/examples/snippets/level_crossing_double_full_closure.tikz @@ -4,8 +4,8 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=2pt] (-2.5,-0.5) -- ++(5,0); -\draw[line width=2pt] (-2.5, 0.5) -- ++(5,0); +\draw[MainTrack] (-2.5,-0.5) -- ++(5,0); +\draw[MainTrack] (-2.5, 0.5) -- ++(5,0); \pic at (0, 1.5) {level_crossing_barrier_right}; \pic at (0, 0.5) {level_crossing_barrier_left}; \pic at (0, 0.5) {level_crossing}; diff --git a/examples/snippets/level_crossing_single.tikz b/examples/snippets/level_crossing_single.tikz index b191814..96e7090 100644 --- a/examples/snippets/level_crossing_single.tikz +++ b/examples/snippets/level_crossing_single.tikz @@ -4,6 +4,6 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=2pt] (-2.5,0) -- ++(5,0); +\draw[MainTrack] (-2.5,0) -- ++(5,0); \pic at (0,0) {level_crossing_barrier_left}; \pic at (0,0) {level_crossing_barrier_right}; \ No newline at end of file diff --git a/examples/snippets/main_line.tikz b/examples/snippets/main_line.tikz index 1b86dfa..2f49a34 100644 --- a/examples/snippets/main_line.tikz +++ b/examples/snippets/main_line.tikz @@ -4,5 +4,5 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=2pt] (-2.5, 0.5) -- ++(5,0); -\draw[line width=2pt] (-2.5,-0.5) -- ++(5,0); \ No newline at end of file +\draw[MainTrack] (-2.5, 0.5) -- ++(5,0); +\draw[MainTrack] (-2.5,-0.5) -- ++(5,0); \ No newline at end of file diff --git a/examples/snippets/main_track.tikz b/examples/snippets/main_track.tikz index 5dbfc3e..8714069 100644 --- a/examples/snippets/main_track.tikz +++ b/examples/snippets/main_track.tikz @@ -4,4 +4,4 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=2pt] (-2.5,0) -- ++(5,0); \ No newline at end of file +\draw[MainTrack] (-2.5,0) -- ++(5,0); \ No newline at end of file diff --git a/examples/snippets/platform_left.tikz b/examples/snippets/platform_left.tikz index ea20877..1946c36 100644 --- a/examples/snippets/platform_left.tikz +++ b/examples/snippets/platform_left.tikz @@ -4,6 +4,6 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=2pt] (-2.5,0) -- ++(5,0); +\draw[MainTrack] (-2.5,0) -- ++(5,0); \pic at (-2,0) {platform_left=4}; % change the 4 to desired length \ No newline at end of file diff --git a/examples/snippets/platform_middle.tikz b/examples/snippets/platform_middle.tikz index c906d4d..3a617ff 100644 --- a/examples/snippets/platform_middle.tikz +++ b/examples/snippets/platform_middle.tikz @@ -4,7 +4,7 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=2pt] (-2.5, 0.5) -- ++(5,0); -\draw[line width=2pt] (-2.5,-0.5) -- ++(5,0); +\draw[MainTrack] (-2.5, 0.5) -- ++(5,0); +\draw[MainTrack] (-2.5,-0.5) -- ++(5,0); \pic at (-2, 0.5) {platform_right}; \pic at (-2,-0.5) {platform_left}; \ No newline at end of file diff --git a/examples/snippets/platform_right.tikz b/examples/snippets/platform_right.tikz index 8312001..2fe0e53 100644 --- a/examples/snippets/platform_right.tikz +++ b/examples/snippets/platform_right.tikz @@ -4,6 +4,6 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=2pt] (-2.5,0) -- ++(5,0); +\draw[MainTrack] (-2.5,0) -- ++(5,0); \pic at (-2,0) {platform_right=4}; % change the 4 to desired length \ No newline at end of file diff --git a/examples/snippets/route_clearing_point_backward.tikz b/examples/snippets/route_clearing_point_backward.tikz index 4840824..49dc122 100644 --- a/examples/snippets/route_clearing_point_backward.tikz +++ b/examples/snippets/route_clearing_point_backward.tikz @@ -4,5 +4,5 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=2pt] (-2.5,0) -- ++(5,0); +\draw[MainTrack] (-2.5,0) -- ++(5,0); \pic at (0,0) {route_clearing_point_backward}; \ No newline at end of file diff --git a/examples/snippets/route_clearing_point_forward.tikz b/examples/snippets/route_clearing_point_forward.tikz index 31c80bd..356b770 100644 --- a/examples/snippets/route_clearing_point_forward.tikz +++ b/examples/snippets/route_clearing_point_forward.tikz @@ -4,5 +4,5 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=2pt] (-2.5,0) -- ++(5,0); +\draw[MainTrack] (-2.5,0) -- ++(5,0); \pic at (0,0) {route_clearing_point_forward}; \ No newline at end of file diff --git a/examples/snippets/route_signal_backward.tikz b/examples/snippets/route_signal_backward.tikz index b2779fa..9893645 100644 --- a/examples/snippets/route_signal_backward.tikz +++ b/examples/snippets/route_signal_backward.tikz @@ -4,6 +4,6 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=2pt] (-2.5,0) -- ++(5,0); +\draw[MainTrack] (-2.5,0) -- ++(5,0); \pic at (0,0) {route_signal_backward=S}; % replace the S with desired speed or remove \ No newline at end of file diff --git a/examples/snippets/route_signal_forward.tikz b/examples/snippets/route_signal_forward.tikz index b5bbe4d..50f2437 100644 --- a/examples/snippets/route_signal_forward.tikz +++ b/examples/snippets/route_signal_forward.tikz @@ -4,6 +4,6 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=2pt] (-2.5,0) -- ++(5,0); +\draw[MainTrack] (-2.5,0) -- ++(5,0); \pic at (0,0) {route_signal_forward=S}; % replace the S with desired speed or remove \ No newline at end of file diff --git a/examples/snippets/short_train.tikz b/examples/snippets/short_train.tikz index 1c256c5..cd29b37 100644 --- a/examples/snippets/short_train.tikz +++ b/examples/snippets/short_train.tikz @@ -4,6 +4,6 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=2pt] (-2.5,0) -- ++(5,0); +\draw[MainTrack] (-2.5,0) -- ++(5,0); \pic at (-0.5,0) {train=1}; % change the 1 to desired length \ No newline at end of file diff --git a/examples/snippets/shunt_limit_backward.tikz b/examples/snippets/shunt_limit_backward.tikz index 97c7e54..8a77b7c 100644 --- a/examples/snippets/shunt_limit_backward.tikz +++ b/examples/snippets/shunt_limit_backward.tikz @@ -4,5 +4,5 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=2pt] (-2.5,0) -- ++(5,0); +\draw[MainTrack] (-2.5,0) -- ++(5,0); \pic at (0,0) {shunt_limit_backward}; \ No newline at end of file diff --git a/examples/snippets/shunt_limit_forward.tikz b/examples/snippets/shunt_limit_forward.tikz index 8f277a5..3a838b5 100644 --- a/examples/snippets/shunt_limit_forward.tikz +++ b/examples/snippets/shunt_limit_forward.tikz @@ -4,5 +4,5 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=2pt] (-2.5,0) -- ++(5,0); +\draw[MainTrack] (-2.5,0) -- ++(5,0); \pic at (0,0) {shunt_limit_forward}; \ No newline at end of file diff --git a/examples/snippets/shunt_signal_backward.tikz b/examples/snippets/shunt_signal_backward.tikz index 39fc826..f74c690 100644 --- a/examples/snippets/shunt_signal_backward.tikz +++ b/examples/snippets/shunt_signal_backward.tikz @@ -4,5 +4,5 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=2pt] (-2.5,0) -- ++(5,0); +\draw[MainTrack] (-2.5,0) -- ++(5,0); \pic at (0,0) {shunt_signal_backward}; \ No newline at end of file diff --git a/examples/snippets/shunt_signal_forward.tikz b/examples/snippets/shunt_signal_forward.tikz index ea5c976..3924771 100644 --- a/examples/snippets/shunt_signal_forward.tikz +++ b/examples/snippets/shunt_signal_forward.tikz @@ -4,5 +4,5 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=2pt] (-2.5,0) -- ++(5,0); +\draw[MainTrack] (-2.5,0) -- ++(5,0); \pic at (0,0) {shunt_signal_forward}; \ No newline at end of file diff --git a/examples/snippets/side_track.tikz b/examples/snippets/side_track.tikz index 8239084..5bc152e 100644 --- a/examples/snippets/side_track.tikz +++ b/examples/snippets/side_track.tikz @@ -4,4 +4,4 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=1pt] (-2.5,0) -- ++(5,0); \ No newline at end of file +\draw[SideTrack] (-2.5,0) -- ++(5,0); \ No newline at end of file diff --git a/examples/snippets/speed_signal_backward.tikz b/examples/snippets/speed_signal_backward.tikz index b57eb83..efdd071 100644 --- a/examples/snippets/speed_signal_backward.tikz +++ b/examples/snippets/speed_signal_backward.tikz @@ -4,6 +4,6 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=2pt] (-2.5,0) -- ++(5,0); +\draw[MainTrack] (-2.5,0) -- ++(5,0); \pic at (0,0) {speed_signal_backward=S}; % replace the S with desired speed or remove \ No newline at end of file diff --git a/examples/snippets/speed_signal_forward.tikz b/examples/snippets/speed_signal_forward.tikz index f710f18..436c689 100644 --- a/examples/snippets/speed_signal_forward.tikz +++ b/examples/snippets/speed_signal_forward.tikz @@ -4,6 +4,6 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=2pt] (-2.5,0) -- ++(5,0); +\draw[MainTrack] (-2.5,0) -- ++(5,0); \pic at (0,0) {speed_signal_forward=S}; % replace the S with desired speed or remove \ No newline at end of file diff --git a/examples/snippets/train.tikz b/examples/snippets/train.tikz index 2aff6d8..85587f6 100644 --- a/examples/snippets/train.tikz +++ b/examples/snippets/train.tikz @@ -4,6 +4,6 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=2pt] (-2.5,0) -- ++(5,0); +\draw[MainTrack] (-2.5,0) -- ++(5,0); \pic at (-2,0) {train}; \node[font=\sffamily] at (0,0) {label}; \ No newline at end of file diff --git a/examples/snippets/train_berth.tikz b/examples/snippets/train_berth.tikz index 6c88913..6d480cd 100644 --- a/examples/snippets/train_berth.tikz +++ b/examples/snippets/train_berth.tikz @@ -4,7 +4,7 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=2pt] (-2.5,0) -- ++(5,0); +\draw[MainTrack] (-2.5,0) -- ++(5,0); \pic at (-2,0) {train_berth_sign_backward}; \pic at (-2,0) {train_berth_shape}; \pic at ( 2,0) {train_berth_sign_forward}; \ No newline at end of file diff --git a/examples/snippets/train_berth_shape.tikz b/examples/snippets/train_berth_shape.tikz index 2803917..8531fe7 100644 --- a/examples/snippets/train_berth_shape.tikz +++ b/examples/snippets/train_berth_shape.tikz @@ -4,6 +4,6 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=2pt] (-2.5,0) -- ++(5,0); +\draw[MainTrack] (-2.5,0) -- ++(5,0); \pic at (-2,0) {train_berth_shape_forward=4}; \pic at (-1,0) {train_berth_shape_backward=3}; \ No newline at end of file diff --git a/examples/snippets/train_berth_shape_bidirectional.tikz b/examples/snippets/train_berth_shape_bidirectional.tikz index 840fcf1..3f2b392 100644 --- a/examples/snippets/train_berth_shape_bidirectional.tikz +++ b/examples/snippets/train_berth_shape_bidirectional.tikz @@ -4,6 +4,6 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=2pt] (-2.5,0) -- ++(5,0); +\draw[MainTrack] (-2.5,0) -- ++(5,0); \pic at (-2,0) {train_berth_shape=4}; % change the 4 to desired length \ No newline at end of file diff --git a/examples/snippets/train_berth_sign_backward.tikz b/examples/snippets/train_berth_sign_backward.tikz index 1df89a8..3b18d12 100644 --- a/examples/snippets/train_berth_sign_backward.tikz +++ b/examples/snippets/train_berth_sign_backward.tikz @@ -4,5 +4,5 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=2pt] (-2.5,0) -- ++(5,0); +\draw[MainTrack] (-2.5,0) -- ++(5,0); \pic at (0,0) {train_berth_sign_backward}; \ No newline at end of file diff --git a/examples/snippets/train_berth_sign_forward.tikz b/examples/snippets/train_berth_sign_forward.tikz index a592db6..f266e14 100644 --- a/examples/snippets/train_berth_sign_forward.tikz +++ b/examples/snippets/train_berth_sign_forward.tikz @@ -4,5 +4,5 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=2pt] (-2.5,0) -- ++(5,0); +\draw[MainTrack] (-2.5,0) -- ++(5,0); \pic at (0,0) {train_berth_sign_forward}; \ No newline at end of file diff --git a/examples/snippets/train_direction_backward.tikz b/examples/snippets/train_direction_backward.tikz new file mode 100644 index 0000000..8d03e03 --- /dev/null +++ b/examples/snippets/train_direction_backward.tikz @@ -0,0 +1,8 @@ +%!TEX TS-program = pdflatexmk +%!TEX root = ../../overview.tex + +% Copyright 2018 Martin Scheidt (ISC license) +% Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. + +\draw[MainTrack] (-2.5,0) -- ++(5,0); +\pic at (-2,0) {train_direction_backward}; \ No newline at end of file diff --git a/examples/snippets/train_direction_forward.tikz b/examples/snippets/train_direction_forward.tikz new file mode 100644 index 0000000..ccb6feb --- /dev/null +++ b/examples/snippets/train_direction_forward.tikz @@ -0,0 +1,8 @@ +%!TEX TS-program = pdflatexmk +%!TEX root = ../../overview.tex + +% Copyright 2018 Martin Scheidt (ISC license) +% Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. + +\draw[MainTrack] (-2.5,0) -- ++(5,0); +\pic at (2,0) {train_direction_forward}; \ No newline at end of file diff --git a/examples/snippets/train_drive_automatic.tikz b/examples/snippets/train_drive_automatic.tikz new file mode 100644 index 0000000..5b18fba --- /dev/null +++ b/examples/snippets/train_drive_automatic.tikz @@ -0,0 +1,9 @@ +%!TEX TS-program = pdflatexmk +%!TEX root = ../../overview.tex + +% Copyright 2018 Martin Scheidt (ISC license) +% Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. + +\draw[MainTrack] (-2.5,0) -- ++(5,0); +\pic at (2,0) {train_direction_forward}; % train +\pic at (2,0) {train_automatic_forward}; % triangle \ No newline at end of file diff --git a/examples/snippets/train_drive_human.tikz b/examples/snippets/train_drive_human.tikz new file mode 100644 index 0000000..e33b884 --- /dev/null +++ b/examples/snippets/train_drive_human.tikz @@ -0,0 +1,9 @@ +%!TEX TS-program = pdflatexmk +%!TEX root = ../../overview.tex + +% Copyright 2018 Martin Scheidt (ISC license) +% Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. + +\draw[MainTrack] (-2.5,0) -- ++(5,0); +\pic at (2,0) {train_direction_forward}; % train +\pic at (2,0) {train_human_forward}; % dot \ No newline at end of file diff --git a/examples/snippets/train_moving_backward.tikz b/examples/snippets/train_moving_backward.tikz index 1015e57..197b6b5 100644 --- a/examples/snippets/train_moving_backward.tikz +++ b/examples/snippets/train_moving_backward.tikz @@ -4,5 +4,5 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=2pt] (-2.5,0) -- ++(5,0); +\draw[MainTrack] (-2.5,0) -- ++(5,0); \pic at (-2,0) {train_moving_backward}; \ No newline at end of file diff --git a/examples/snippets/train_moving_forward.tikz b/examples/snippets/train_moving_forward.tikz index b67dbf5..f8f57c4 100644 --- a/examples/snippets/train_moving_forward.tikz +++ b/examples/snippets/train_moving_forward.tikz @@ -4,5 +4,5 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=2pt] (-2.5,0) -- ++(5,0); +\draw[MainTrack] (-2.5,0) -- ++(5,0); \pic at (2,0) {train_moving_forward}; \ No newline at end of file diff --git a/examples/snippets/transmitter.tikz b/examples/snippets/transmitter.tikz index 480edb9..f4831c1 100644 --- a/examples/snippets/transmitter.tikz +++ b/examples/snippets/transmitter.tikz @@ -4,6 +4,6 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=2pt] (-2.5,0) -- ++(5,0); +\draw[MainTrack] (-2.5,0) -- ++(5,0); \pic at (-1,0) {transmitter_below}; \pic at ( 1,0) {transmitter_above}; \ No newline at end of file diff --git a/examples/snippets/transmitter_backward.tikz b/examples/snippets/transmitter_backward.tikz index cd2d72a..696703d 100644 --- a/examples/snippets/transmitter_backward.tikz +++ b/examples/snippets/transmitter_backward.tikz @@ -4,6 +4,6 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=2pt] (-2.5,0) -- ++(5,0); +\draw[MainTrack] (-2.5,0) -- ++(5,0); \pic at (-1,0) {transmitter_below_backward}; \pic at ( 1,0) {transmitter_above_backward}; \ No newline at end of file diff --git a/examples/snippets/transmitter_below_with_signal.tikz b/examples/snippets/transmitter_below_with_signal.tikz index f58b799..9847bcf 100644 --- a/examples/snippets/transmitter_below_with_signal.tikz +++ b/examples/snippets/transmitter_below_with_signal.tikz @@ -4,6 +4,6 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=2pt] (-2.5,0) -- ++(5,0); +\draw[MainTrack] (-2.5,0) -- ++(5,0); \pic at (0,0) {route_signal_forward}; \pic at (0,0) {transmitter_below}; \ No newline at end of file diff --git a/examples/snippets/transmitter_bidirectional.tikz b/examples/snippets/transmitter_bidirectional.tikz index 533ef23..260554c 100644 --- a/examples/snippets/transmitter_bidirectional.tikz +++ b/examples/snippets/transmitter_bidirectional.tikz @@ -4,6 +4,6 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=2pt] (-2.5,0) -- ++(5,0); +\draw[MainTrack] (-2.5,0) -- ++(5,0); \pic at (-1,0) {transmitter_below_bidirectional}; \pic at ( 1,0) {transmitter_above_bidirectional}; \ No newline at end of file diff --git a/examples/snippets/transmitter_forward.tikz b/examples/snippets/transmitter_forward.tikz index ad7a7f2..196b182 100644 --- a/examples/snippets/transmitter_forward.tikz +++ b/examples/snippets/transmitter_forward.tikz @@ -4,6 +4,6 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=2pt] (-2.5,0) -- ++(5,0); +\draw[MainTrack] (-2.5,0) -- ++(5,0); \pic at (-1,0) {transmitter_below_forward}; \pic at ( 1,0) {transmitter_above_forward}; \ No newline at end of file diff --git a/examples/snippets/turnout_left_backward.tikz b/examples/snippets/turnout_left_backward.tikz index 3f3b23c..3a9253a 100644 --- a/examples/snippets/turnout_left_backward.tikz +++ b/examples/snippets/turnout_left_backward.tikz @@ -4,6 +4,6 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=2pt] (-2.5,0) -- ++( 5, 0); -\draw[line width=2pt] ( 0,0) -- ++(-1,-1); +\draw[MainTrack] (-2.5,0) -- ++( 5, 0); +\draw[MainTrack] ( 0,0) -- ++(-1,-1); \pic at (0,0) {turnout_left_backward}; \ No newline at end of file diff --git a/examples/snippets/turnout_left_forward.tikz b/examples/snippets/turnout_left_forward.tikz index 5f77403..7cc1fcd 100644 --- a/examples/snippets/turnout_left_forward.tikz +++ b/examples/snippets/turnout_left_forward.tikz @@ -4,6 +4,6 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=2pt] (-2.5,0) -- ++(5,0); -\draw[line width=2pt] ( 0,0) -- ++(1,1); +\draw[MainTrack] (-2.5,0) -- ++(5,0); +\draw[MainTrack] ( 0,0) -- ++(1,1); \pic at (0,0) {turnout_left_forward}; \ No newline at end of file diff --git a/examples/snippets/turnout_right_backward.tikz b/examples/snippets/turnout_right_backward.tikz index 67384e1..7579b30 100644 --- a/examples/snippets/turnout_right_backward.tikz +++ b/examples/snippets/turnout_right_backward.tikz @@ -4,6 +4,6 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=2pt] (-2.5,0) -- ++( 5,0); -\draw[line width=2pt] ( 0,0) -- ++(-1,1); +\draw[MainTrack] (-2.5,0) -- ++( 5,0); +\draw[MainTrack] ( 0,0) -- ++(-1,1); \pic at (0,0) {turnout_right_backward}; \ No newline at end of file diff --git a/examples/snippets/turnout_right_forward.tikz b/examples/snippets/turnout_right_forward.tikz index 72e7ad5..5bdb73d 100644 --- a/examples/snippets/turnout_right_forward.tikz +++ b/examples/snippets/turnout_right_forward.tikz @@ -4,6 +4,6 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=2pt] (-2.5,0) -- ++(5, 0); -\draw[line width=2pt] ( 0,0) -- ++(1,-1); +\draw[MainTrack] (-2.5,0) -- ++(5, 0); +\draw[MainTrack] ( 0,0) -- ++(1,-1); \pic at (0,0) {turnout_right_forward}; \ No newline at end of file diff --git a/examples/snippets/turnout_with_fouling_left_backward.tikz b/examples/snippets/turnout_with_fouling_left_backward.tikz index 00563bf..1f40e43 100644 --- a/examples/snippets/turnout_with_fouling_left_backward.tikz +++ b/examples/snippets/turnout_with_fouling_left_backward.tikz @@ -4,7 +4,7 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=2pt] (-2.5,0) -- ++( 5, 0); -\draw[line width=2pt] ( 0,0) -- ++(-1,-1); +\draw[MainTrack] (-2.5,0) -- ++( 5, 0); +\draw[MainTrack] ( 0,0) -- ++(-1,-1); \pic at (0,0) {turnout_left_backward}; \pic at (0,0) {fouling_point_left_backward}; \ No newline at end of file diff --git a/examples/snippets/turnout_with_fouling_left_forward.tikz b/examples/snippets/turnout_with_fouling_left_forward.tikz index c500716..e35da2c 100644 --- a/examples/snippets/turnout_with_fouling_left_forward.tikz +++ b/examples/snippets/turnout_with_fouling_left_forward.tikz @@ -4,7 +4,7 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=2pt] (-2.5,0) -- ++(5,0); -\draw[line width=2pt] ( 0,0) -- ++(1,1); +\draw[MainTrack] (-2.5,0) -- ++(5,0); +\draw[MainTrack] ( 0,0) -- ++(1,1); \pic at (0,0) {turnout_left_forward}; \pic at (0,0) {fouling_point_left_forward}; \ No newline at end of file diff --git a/examples/snippets/turnout_with_fouling_right_backward.tikz b/examples/snippets/turnout_with_fouling_right_backward.tikz index 59f6a17..1beeb54 100644 --- a/examples/snippets/turnout_with_fouling_right_backward.tikz +++ b/examples/snippets/turnout_with_fouling_right_backward.tikz @@ -4,7 +4,7 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=2pt] (-2.5,0) -- ++( 5,0); -\draw[line width=2pt] ( 0,0) -- ++(-1,1); +\draw[MainTrack] (-2.5,0) -- ++( 5,0); +\draw[MainTrack] ( 0,0) -- ++(-1,1); \pic at (0,0) {turnout_right_backward}; \pic at (0,0) {fouling_point_right_backward}; \ No newline at end of file diff --git a/examples/snippets/turnout_with_fouling_right_forward.tikz b/examples/snippets/turnout_with_fouling_right_forward.tikz index e9f59a1..376e8ca 100644 --- a/examples/snippets/turnout_with_fouling_right_forward.tikz +++ b/examples/snippets/turnout_with_fouling_right_forward.tikz @@ -4,7 +4,7 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=2pt] (-2.5,0) -- ++(5, 0); -\draw[line width=2pt] ( 0,0) -- ++(1,-1); +\draw[MainTrack] (-2.5,0) -- ++(5, 0); +\draw[MainTrack] ( 0,0) -- ++(1,-1); \pic at (0,0) {turnout_right_forward}; \pic at (0,0) {fouling_point_right_forward}; \ No newline at end of file diff --git a/examples/snippets/view_point_backward.tikz b/examples/snippets/view_point_backward.tikz index e11dcde..3a41c4a 100644 --- a/examples/snippets/view_point_backward.tikz +++ b/examples/snippets/view_point_backward.tikz @@ -4,5 +4,5 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=2pt] (-2.5,0) -- ++(5,0); +\draw[MainTrack] (-2.5,0) -- ++(5,0); \pic at (0,0) {view_point_backward}; \ No newline at end of file diff --git a/examples/snippets/view_point_forward.tikz b/examples/snippets/view_point_forward.tikz index 1b782a2..a7bca53 100644 --- a/examples/snippets/view_point_forward.tikz +++ b/examples/snippets/view_point_forward.tikz @@ -4,5 +4,5 @@ % Copyright 2018 Martin Scheidt (ISC license) % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. -\draw[line width=2pt] (-2.5,0) -- ++(5,0); +\draw[MainTrack] (-2.5,0) -- ++(5,0); \pic at (0,0) {view_point_forward}; \ No newline at end of file diff --git a/examples/station_berg.tex b/examples/station_berg.tex index 4cb967b..230f0d4 100644 --- a/examples/station_berg.tex +++ b/examples/station_berg.tex @@ -25,11 +25,11 @@ \node[left,align=right] at (38,1.3) {to and from\\ Chamstadt}; } { % tracks - \draw[line width=2pt] ( 1.5, 0) -- ++(37,0); - \draw[line width=2pt] (15 , 0) -- ++( 1,1) -- ++(10,0) -- ++(1,-1); - \draw[line width=1pt] (11 ,-1) -- ++( 2,0) -- ++( 1,1); - \draw[line width=1pt] ( 9 , 1) -- ++( 7,0); - \draw[line width=1pt] (14 , 1) -- ++( 1,1) -- ++(10,0); + \draw[MainTrack] ( 1.5, 0) -- ++(37,0); + \draw[MainTrack] (15 , 0) -- ++( 1,1) -- ++(10,0) -- ++(1,-1); + \draw[SideTrack] (11 ,-1) -- ++( 2,0) -- ++( 1,1); + \draw[SideTrack] ( 9 , 1) -- ++( 7,0); + \draw[SideTrack] (14 , 1) -- ++( 1,1) -- ++(10,0); % track numbers \node[fill=white] at (11.7, 1) {12}; \node[fill=white] at (11.7,-1) {10}; diff --git a/examples/station_rebenau.tex b/examples/station_rebenau.tex index f91d5e4..74969bc 100644 --- a/examples/station_rebenau.tex +++ b/examples/station_rebenau.tex @@ -16,207 +16,6 @@ \begin{document} \begin{tikzpicture}[font=\sffamily] - { % stations - \tikzset{every node/.style={base00}}; - \node[right,align=left] at ( 0,2) {to and from\\ Wenden}; - \node[left,align=right] at ( 8,4.0) {Sidings}; - \node at (22.5,6.3) {{\LARGE Rebenau}}; - \node[left,align=right] at (42,2) {to and from\\ Okerbach}; - \node[left,align=right] at (42,5) {to and from\\ Pockelsdorf}; - } - { % tracks - \draw[line width=2pt] ( 0, 0) -- ++(42, 0); % track 1 - \draw[line width=2pt] ( 5, 0) -- ++( 1, 1); - \draw[line width=2pt] ( 0, 1) -- ++( 8, 0) -- ++(2,2) -- ++(26,0) -- ++(2,-2) -- ++(4,0); % track 3 - \draw[line width=1pt] ( 9, 1) -- ++( 6, 0); % track 21 - \draw[line width=1pt] ( 8, 4) -- ++( 7, 0); % track 41 - \draw[line width=1pt] (12, 4) -- ++( 1,-1); - \draw[line width=2pt] (14, 3) -- (15, 4) -- ++(27,0); % track 4 - \draw[line width=2pt] (14, 0) -- ++( 1, 1) -- ++(18, 0); % track 2 - \draw[line width=2pt] (15, 3) -- ++( 2,-2); - \draw[line width=2pt] (16, 4) -- (17, 5) -- (29, 5) -- ++(5,-5); % track 5 - \draw[line width=2pt] (28, 1) -- ++( 1, 1) -- ++(5,0) -- ++ (2,2); - \draw[line width=1pt] (26, 5) -- ++( 1, 1) -- ++(3,0); % track 51 - - % track numbers - \node[fill=white] at ( 9.0, 4) {41}; - \node[fill=white] at (10.0, 1) {21}; - \node[fill=white] at (22.5, 0) { 1}; - \node[fill=white] at (22.5, 1) { 2}; - \node[fill=white] at (22.5, 3) { 3}; - \node[fill=white] at (22.5, 4) { 4}; - \node[fill=white] at (22.5, 5) { 5}; - \node[fill=white] at (29.0, 6) {51}; - % % bufferstops - \pic at ( 9, 1) {bufferstop_backward}; - \pic at (30, 6) {bufferstop_forward}; - % turnouts - \pic at ( 5,0) {turnout_left_forward}; - \node at ( 5,-0.2) {\footnotesize W1}; - % \pic at ( 5,0) {fouling_point_left_forward}; - \pic at ( 6,1) {turnout_left_backward}; - \node at ( 6,1.2) {\footnotesize W2}; - % \pic at ( 6,1) {fouling_point_left_backward}; - \pic at (11,4) {derailer_left_forward}; - \node[left,align=right] at (11.1,4.2) {\footnotesize Gs41}; - \pic at (12,4) {turnout_right_forward}; - \node at (12,4.2) {\footnotesize W3}; - % \pic at (12,4) {fouling_point_right_forward}; - \pic at (13,3) {turnout_right_backward}; - \node at (13,2.8) {\footnotesize W4}; - % \pic at (13,3) {fouling_point_right_backward}; - \pic at (14,3) {turnout_left_forward}; - \node at (14,2.8) {\footnotesize W5}; - % \pic at (14,3) {fouling_point_left_forward}; - \pic at (15,4) {turnout_left_backward}; - \node at (15,4.2) {\footnotesize W6}; - % \pic at (15,4) {fouling_point_left_backward}; - \pic at (14,0) {turnout_left_forward}; - \node at (14,-0.2) {\footnotesize W10}; - % \pic at (14.0,0) {fouling_point_left_forward}; - \pic at (15,1) {turnout_left_backward}; - \node at (15,1.2) {\footnotesize W11}; - % \pic at (15,1) {fouling_point_left_backward}; - \pic at (14,1) {derailer_left_forward}; - \node[left,align=right] at (14.1,1.2) {\footnotesize Gs21}; - \pic at (15,3) {turnout_right_forward}; - \node at (15,3.2) {\footnotesize W8}; - % \pic at (15,3) {fouling_point_right_forward}; - \pic at (16,4) {turnout_left_forward}; - \node at (16,3.8) {\footnotesize W7}; - % \pic at (16,4) {fouling_point_left_forward}; - \pic at (17,1) {turnout_right_backward}; - \node at (17,0.8) {\footnotesize W9}; - % \pic at (17,1) {fouling_point_right_backward}; - - \pic at (28,1) {turnout_left_forward}; - \node at (28,0.8) {\footnotesize W15}; - % \pic at (28,1) {fouling_point_left_forward}; - \pic at (26,5) {turnout_left_forward}; - \node at (26,4.8) {\footnotesize W12}; - % \pic at (28,5) {fouling_point_right_forward}; - \pic [rotate=45] at (26.7,5.7) {derailer_right_backward}; - \node[right,align=left] at (26.8,5.6) {\footnotesize Gs51}; - \pic at (30,4) {turnout_right_forward}; - \pic at (30,4) {turnout_right_backward}; - \pic at (30,4) {slip_right_forward}; - \pic at (30,4) {slip_right_backward}; - \node[left,align=right] at (29.7,4.2) {\footnotesize W13ab}; - \node[right,align=left] at (30.3,3.8) {\footnotesize W13cd}; - % \pic at (30,4) {fouling_point_right_backward}; - % \pic at (30,4) {fouling_point_right_forward}; - \pic at (31,3) {turnout_right_forward}; - \pic at (31,3) {turnout_right_backward}; - \pic at (31,3) {slip_right_forward}; - \pic at (31,3) {slip_right_backward}; - \node[left,align=right] at (30.7,3.2) {\footnotesize W14ab}; - \node[right,align=left] at (31.3,2.8) {\footnotesize W14cd}; - % \pic at (31,3) {fouling_point_right_backward}; - % \pic at (31,3) {fouling_point_right_forward}; - \pic at (32,2) {turnout_right_forward=none}; - \pic at (32,2) {turnout_right_backward=none}; - \node[right,align=left] at (31.9,2.2) {\footnotesize K16}; - % \pic at (32,2) {fouling_point_right_backward}; - % \pic at (32,2) {fouling_point_right_forward}; - \pic at (33,1) {turnout_right_backward}; - \node[right,align=left] at (32.9,1.2) {\footnotesize W17}; - % \pic at (33,1) {fouling_point_right_backward}; - \pic at (34,0) {turnout_right_backward}; - \node at (34,-0.2) {\footnotesize W18}; - % \pic at (34,0) {fouling_point_right_backward}; - \pic at (35,3) {turnout_left_forward}; - \pic at (35,3) {turnout_left_backward}; - \pic at (35,3) {slip_left_forward}; - \pic at (35,3) {slip_left_backward}; - \node[left,align=right] at (34.7,2.8) {\footnotesize W19ab}; - \node[right,align=left] at (35.3,3.2) {\footnotesize W19cd}; - % \pic at (35,3) {fouling_point_left_backward}; - % \pic at (35,3) {fouling_point_left_forward}; - \pic at (36,4) {turnout_left_backward}; - \node at (36,4.2) {\footnotesize W20}; - % \pic at (36,4) {fouling_point_left_backward}; - - % % platforms - \pic at (19.5,0) {platform_right=6}; - \pic at (19.5,1) {platform_left=6}; - \pic at (19.5,3) {platform_right=6}; - } - { % signals - \pic at ( 1,0) {route_signal_forward}; - \node[left] at (1,-0.4) {A}; - \pic at ( 1,1) {route_signal_forward}; - \node[left] at (1, 0.6) {AA}; - \pic at ( 3,0) {shunt_limit_backward}; - \pic at ( 4,0) {shunt_signal_forward}; - \node[left] at ( 4,-0.4) {W1X}; - \pic at ( 7,1) {shunt_signal_backward}; - \node[right] at ( 7, 1.4) {W2Y}; - \pic at ( 7,0) {shunt_signal_backward}; - \node[right] at ( 7, 0.4) {W1Y}; - \pic at (11,3) {shunt_signal_forward}; - \node[left] at (11, 2.6) {W4X}; - \pic at (10,4) {shunt_signal_forward}; - \node[left] at (10, 3.6) {41X}; - \pic at (13,0) {shunt_signal_forward}; - \node[left] at (13,-0.4) {W10X}; - \pic at (13,1) {shunt_signal_forward}; - \node[left] at (13, 0.6) {21X}; - \pic at (18.5,0) {route_signal_backward}; - \node[right] at (18.5, 0.4) {P1}; - \pic at (18.5,1) {route_signal_backward}; - \node[right] at (18.5, 1.4) {P2}; - \pic at (18.5,3) {route_signal_backward}; - \node[right] at (18.5, 3.4) {P3}; - \pic at (18.5,4) {route_signal_backward}; - \node[right] at (18.5, 4.4) {P4}; - \pic at (18.5,5) {route_signal_backward}; - \node[right] at (18.5, 5.4) {P5}; - - \pic at (24.5,5) {route_signal_forward}; - \node[left] at (24.5, 4.6) {N5}; - \pic at (26.5,1) {route_signal_forward}; - \node[left] at (26.5, 0.6) {N2}; - \pic at (26.5,3) {route_signal_forward}; - \node[left] at (26.5, 2.6) {N3}; - \pic at (26.5,4) {route_signal_forward}; - \node[left] at (26.5, 3.6) {N4}; - \pic at (27.5,6) {shunt_signal_backward}; - \node[right] at ( 27.5, 6.4) {51Y}; - \pic at (30.0,0) {route_signal_forward}; - \node[left] at (30.0,-0.4) {N1}; - \pic at (35.0,0) {shunt_signal_backward}; - \node[right] at ( 35, 0.4) {W18Y}; - \pic[rotate=-45] at (36.8,2.2) {shunt_signal_backward}; - \node[right,rotate=-45] at ( 37.0, 2.5) {W19Y}; - \pic at (37.0,4) {shunt_signal_backward}; - \node[right] at ( 37, 4.4) {W20Y}; - \pic at (39.0,1) {shunt_limit_forward}; - \pic at (39.0,4) {shunt_limit_forward}; - \pic at (41.0,0) {route_signal_backward}; - \node[right] at (41.0, 0.4) {FF}; - \pic at (41.0,1) {route_signal_backward}; - \node[right] at (41.0, 1.4) {F}; - \pic at (41.0,4) {route_signal_backward}; - \node[right] at (41.0, 4.4) {G}; - } - { % hectometer posts - \tikzset{every node/.style={base00,rotate=-90},every path/.style={base00,dashed}}; - \draw (01.0,-0.85) -- ++(0,-0.7) node [right,align= left] {15.000}; - \draw (14.5,-0.85) -- ++(0,-0.7) node [right,align= left] {15.800}; - \draw (14.5, 4.35) -- ++(0, 1.2) node [ left,align=right] {15.800}; - \draw (15.8,-0.35) -- ++(0,-1.2) node [right,align= left] {15.900}; - \draw (15.8, 4.35) -- ++(0, 1.2) node [ left,align=right] {15.900}; - \draw (18.5,-0.35) -- ++(0,-1.2) node [right,align= left] {16.000}; - \draw (22.5,-0.85) -- ++(0,-0.7) node [right,align= left] {16.300}; - \draw (24.5, 5.35) -- ++(0, 0.7) node [ left,align=right] {16.400}; - \draw (26.5,-0.35) -- ++(0,-1.2) node [right,align= left] {16.500}; - \draw (30.0,-0.85) -- ++(0,-0.7) node [right,align= left] {16.600}; - \draw (30.0, 6.35) -- ++(0, 0.3) node [ left,align=right] {16.600}; - \draw (30.0, 4.75) -- ++(0, 0.7); - \draw (31.5,-0.85) -- ++(0,-0.7) node [right,align= left] {16.700}; - \draw (31.5, 4.35) -- ++(0, 0.7) node [ left,align=right] {16.700}; - \draw (33.3,-0.35) -- ++(0,-1.2) node [right,align= left] {16.800}; - \draw (41.0,-0.35) -- ++(0,-1.2) node [right,align= left] {17.200}; - } + \input{station_rebenau.tikz} \end{tikzpicture} \end{document} \ No newline at end of file diff --git a/overview.pdf b/overview.pdf index ee1084432d5bc78d4cd40c38604b3a322e7aa541..36a71b8d2713de6b1839b4b4f041644a300f2180 100644 GIT binary patch delta 33621 zcmZ^~W0dA<*S1@>U0t?qblJ9TTV3e8Y}>YN+w8J!+q>6#$2<1k-}8L=btNMsm`Sc< zo@eIFo&f9o1dSyDWnp7VAS$5*Y^K}Vud^eKY`-ht6h(>Q=13Y|b60}H*a#r^NC)(W zC8&fN7i9$YSV0kqGgz5L z8%s1crfmO}siT9^7-*e?)W^$qQq*~mY+1&b0QaPR;(hlj!VWi-UdD$5aNrm!OI#X! ze?3S+gec-vWwiSp64=MBY9MJO$Cb`7H}o)rJ41h*L*6rEO^+TaX$qI3wWrdMJTbI? zStmctsTMrsFb>_P!jY8?0Aw<;bY+v>q}4=!!p0l*yC(7~he4xH0sWqkUX~vDlQgGs zPpMybgi^dE^%7!pcvG$nNUbd<>EyOnX2#Rm?qjDMp zlOjQ>L@U`vv?4UE=Z&-QkDA{pspT(=hN6j4w{VIk&zb0PefAC942KYltfynjI#Yothsx?_Q?48u~}ec|1HNB$Ep*T#||db zQ`+R93X7B>DVih!SSmY%LZ~XoK|n0mGd*87l20sZnartCXW?!tp&rXP71oT*s((hT zr}N5#cOfeyb!fKC<`0J$YS zbXJ9D%Ykd;g;OM%*a#~X%R>}N>;X{xNM!EwfNtt*>h~812%^ntP-aMMg_S}fxQCYW ze9&lbA=vSL7;_RMk!eVLQTstnYBHf#-6|OFaEfe#A`sUt(HZ6ld&+NmL{`GJl%F>- zDJ*_{Wmy^V>csW2Lj_72mHxoDu5AiK+blI#0{+p3E0~p)Dxu>B# zs}Z6O1pt}O%1(-AzsrsVkkLQG3N<0L6}2HYr64BZYz(#G zybwQVx(w0_f38>OIwdg5NRV-+T_6}8Gl3j6!J@Jzc@~g4OO@G*PG~xCb&gLX7TnFO ze0pa1-DQF^GZ~mo)|fKV{UCUii7gLC{)mx)HSuoDE8F zS#y{QAZsOZ$01~@eE@=;WA$?xB$mxht?LlT>}|w-P{w07{|w$!+TNr+3>##!HmFwX z$kSI6yK`yCf>u64ii2w8F-24`#)?tAd`fmacq=$=e!C|?L7|g4(Fxh6_kk@+P->iO zsb9_iirlnSSb98oU|HgqE#@cW-aOAJJ3W;;K%v}z&M5ktv4Abru(PtLIwM8JmjtDz zkJr!|J1xanYa%Y+8Ki-#!>{+@=^894(3bK-$X39Q1vMb0`~^Hrw%}B+9?s3&5;~@G zZ_0kd-?YO)zy5OB>OuFbbA0J}u}}H&JjX^iz`j|}j3dIf`&9GgA(?FdzccVOhXo%OKXP!M2FqeFu)H$Brf8CoPe*18 zz&dJFk-ITOhXP?;0rbxV+^&%~ae9rMt*h&u{o$#Yuc9z4MUbdvRG}H=bX&`JWD;p? znu@3-2UXlI#r=KDXl&-m0=r}1$aRD{Xw=`7^1B!XmAV}Lg-ohcJ-V2tpzcU7Si>1w zw#M~k#9`lH5#vYYDG)%-+-A)!G-W@d|3!GVNlh3Vi)8JO2X+kMU<=YLVRG{(yZEz5 zKW{r(pTB8V7huh{pyZQwCsUr|eEmR1rUyyV%*C@oV>&f^i+`lAb){;DJ<1wNMQ~{Z zdfd77J6&i)Og_WGD@BjDco)ZRe-GQKRX1p2h;OZFvTRFs3K_tOu7DyYE)Y5|($`Id zG$Bu^I4KE23{2Jy&u`&x%G`$h&-C4kx-UOZ(;t5hpFTNv(5XlIrT)a(i0YgN$DNrt zQOFNMhR*UBKO2*YBS1UNez>j)&PQr+>?%RWS|IsZHY8S?4?YyNccD-=V4nek?>QTu ziUF?UOI`{r3_v=?THvcixcPjG<4 zN;W4A>pjpzDjadYjyI5txx#~XkdVXb($G@?=QpaD^F{P2k@Y_K*3_dvpYJa;9cy2GL&Gx?%vvY5+5Qw-&|G@y6#@E;z9jx zhklv928K*RWd~q)=U~6RJ-6WcTvwOiuMas_2`Lf?;l6ez^9bODHl zdTkNN>z*eP5-l+5p?VG}Qt|}ss_!e6SmVsbQsP&^=P!fFi<JcO5a9vuqV=;)6!6M!HA;M@7t;wC;Wd+9Tr(~_MZiL^4w^Blf4;I+v^ ze`o6Bgm{zuAv8Xomz)iWL@>lWkUDi)2lg$LQmrTZMn$q*B^gGtoIrDcTY2K=WlF%Kn@45 z(;uAd`P@bbK{+I1&q;O0vJNlyk-pb6lWp?Etj0f z$tDB79lLkrXDTZ0w*2{Iur@sP0Lj78>023FWJNlWYWsCakp@yeQ0;}O;W{&__uYRi zx<5d-QMRqRv;#99ryu=l_SdU|v&y>Jc)sv4mA~?fQ~uOe6!Vy>7!}bjIQG3TkJe0p zON-JY2P~E|eK>SVd8nZ)E&-wRc*sSwx`((_K<4Y^K7{&Tq;6LyM{wxw0hAo)B?`xS z^HRwEKvbtPVW^3wN@4ee%tQ-j;#-4So5|!+S!ixR*K23&?S7Do!#k}opQ3E$JFB?H zDgzKQhXf`@dSmAs+Q(-G7TarrV(ZQyz1KMPI9xXHv02kLbLNwaotLNLx-Uj(j7r7d z%k!#p9_?On(&GaK|DhDw{{bxa{{}3klw3SuYC!t-|EPse^&3-xNI6_UI9hPGiv}#( ziZ9`>zj~qWa3$2JB)TIP=dI_NGK`r_xtXd=lLJkHI2`3#8vmM)Z;a>!0r|mBWPE=F zIfz6M4LX=jHdcmnDLwym;N&bl7hA_G2I?qGZ00o!QDO{>Wh^%A+0KeW@?P? zr%Dmjg9-Qzijo3ybtc&pjw>P#X}dOLil3MFC79Dfm}zysWbS~b-}6g3yFE>-lT&`P z^}*kVO8r(bBS=};dm3{yk8geYs{7?)taJjweEfyYd?amG|JK?p&JU39AoG}Fg5kpe zn|nmtt|nMseY;}WqQCy;6Ie3vVL%t1&#CmWg#zxwK@>F46QHhhS*miu7pN0JHCNtKc!UxF?oquXv3SPvuWPsAGH~~7!>453u1?T?;f?8H}^7T zCXb!OOIVja((=raI088MFd$2AMJ@m5ZC zmn{;!T__|W>+z0)UiYG5Vb<&?y0p+TnmxY{VPZ)J#ma#HJfO+{7w%lcRBARJsPoN1 zy1~(oMqhLQHVTEIl4q|C@UPgh*y40pAXU&wgp`cT>fnokcUHMEy-X+Eg=s2!PBj%a z&c_jxHkf@C*E+d!&QO(>oTGc<-1fvcy!{Q>GOfZKn6kfd#Kk&AOzmdJqUBc<76_*b zhpvmwuZsO40H_O8k)1;<>vU5oS&H6Owk8gzvfDxRr+iNHgscb%gn?Ai=Xu zY|_Kx%$?Oey4)sEz=2RUj;%c@kSYj@At4=~uHT}|+tVJwu;4CEO>BT2tit1tE{VO| ztxtbd&vD3;Asc?3yih3ywK8o*^JAd*>DBIS@j@SLaO&`vpp51h)KZJWg$lV?W$+%a zeRpHOH=rrINd5lN>U}Nq=hSgRi0RYo8`h5D%segFDPGx*c>6?9&-{>6dXc<%EPnO1 zC>7?X>=7YwLQTke;i#zeWY zA6DfxF!BKOC2YeNyTRkmBCrRRbmc|QZ>G7g_}UgdNn!OG#qDXr`r`G&_P{+{htwWA z6##`d0F}Fo9BDV-Z#Ck!mRe(CSID>=H7`c3DXxXGI#_%YdiC0NZ`$wDchXq$lgIl( zC6q(8*VQv?g^Hw;*4cSaBoVyg9g5fmDKOpc6~<{Imf=4&6Eo9)Ll8SFVFGap1>i7U z`!9shMz%kx9+(LQ#iO5L-bkh?{OwlUxAREH6J@yC7ooWc zLrKzkzlHBIxAO{P57>#u-l3`ZdgLg*;{(b6N+w%kx{={oljh7!{a6!(Z667!qb1T9 z%^B1DqJA0Xmv{PC*4LK+8?10PfO3e9fPHvXVo(@|dBXNq+MrQ|!N#gAG2D`xA6XdJ z;n*rK7yqkslsv;UpUiK5SW@)JIwv?uy1KQZBf z6)XFtA*%ccN6=?TF3(9Y^Iry8-u-2e;cAdCbe;E=41374gDAmP-kuwata?eP^Y6Pf z31)eY2xqK!k=l=a%p_8cPAiD?Pp)CQ!LmA*Im*goClK<&?x zVjYrZBL3*haQw9)$zy;@V9URHD0lxt{*I=<{=CEFjw;Rjp&(Ndt2Ff zjn)tYRAqQxS3n3kNxaW|e8`){hxZ#af7ga3%cqS~G=7Yh90@RRryhUlwG^!I^?H`{ z-u!ab6ajq$ir%K4{z;Q{xLLA3YhrPeLkq<)vC`2A0*Ozw^fgtPyf_UQcKpM@Pixe#r?iC1+m`&a95A#6{h23Ii!r{rL+=Kd0>?ze!`q6}}L zgen--@z{EQ>m%edbjsXcN-JShm z6)^AsPXO*MA{_5|b1HTdm3z{MN!<*woy4=5)?CtYwFS7Eivj68Xjr(`Fz+VWvu~+| zyb;GP-ZRa7-TOFqzB^A7b_5F6{Db1V`B<={=*`&)u}%n)EEokOFl{LK%Tanph6N~u z1_P*)5~8JPqNxMmBeARI=Gp;jcuu14j(9%1U)%1Fcbohq5z@i26(OMS)LOwBn*<|m zmE>?YZv+^Fb11p#z6kIxagfSm3X9s22_8lp*vVlkV%j#}*5J7s7uDU#Me&ymI=Ct+sp5WcNCnsdeCQT3 z+E35C2dv`fS)T1eM1-2$*-i3)$C#s^}`O-46%Y+C`}o~`g_|e zla2q3pi&*JO@X1*@f9GgXWtz0@y6Gs`}k{XdvVHh&YwZIk4tRI2`^mmYT%GQm+5_Z zB&>!rX?W#6TUY$~ZW{z4MV^g%60nP*!xa%}Skz==MH_M)WZ&~#zn6%SK3DkzwUU#_ zNS!N>ghWG%+O{ZDOnks6lB`;*FI!;>7+NqR&&C9F%2{ef7_)Nn^8xy!SRY5#~kt4p`0Ipc9tnE|)`4QaoUku6I>S3mO` z=u}t8`oExy^*_l7|OO1<;nZUl&8_K3Bg{A`~0H>?WXelAQh5>GN@h6OKF3 zs5RlLM=GFu+vd@6A}CCbm!u9y0EUahy_$w|H}AG@mEOOQ4sJjs(ZTD9hQf6eW0s2} zCr1q?s*+^ajIOSBWDoKpV2MnfTWzpyn@o%ig@HMaxG-}0%5t&rM@s^9xCmJLMi@?5bi__eoE-@jPE`TH7R4bS znOJR>mBNls$M2^cz(Q8#@VtG#i#$`$nQ?m2rE9))wm~vGBixq(>knMU^Ju9rE(sG) z(IOf`U>*vG_IMcf?a2W!pr|GJL8=voESlJ)Z&E*vaQMB36nOCIe9NOJ zFDT}AAZl)(1tG@y5Quz)WHy*Ty9@_(Eo`P}Z;}Kxs}#D6cr*`CFa&SwmyiZ`gZV7D zgHiVC8WqD_J=u7qRuK}HgawF+29zs1`ra7ItONZx`~f`)T?O4$EFo?Im1hiB5Y)UW z6qc$arNxp+T$X5o{B}jyCEcXAl&PenXp}{aB?*L;&6N@46CQ^og2kZI_=q8a1-Ah0 zEQA(Ns6Ra4wV4ID)pEDrl=cC9KP!~q3mSSby=YDonulH>tG2;b@P^Z55Q-Gm#)7UH zXcmuB^uM_L{N4SAs&we|GkZfn=g=P}1A|L+Pu(V=Z~U&4xBIv5MwQ*C9x2RAoOHRHv>0n(qz}A1un|}VTcyts;V({HuqW8N}O&kp=k`4P`Q{Qct)tv06)W09tecYI;W!qnsqw49_jPJWVfnl@KF<>-=FvMCh4Bun} z#SY$(gLUE#ba=%L%F%}GUn}6jK?pVk7;vijav%T(L}`Kvdh-WvR`wP#5VMe zHcfWg7I834`DcU9 zrA_VY4kbzmRY7EhW_3XsC{pyFUDOs{Wwoz+YaOj;8cIp#UOH80O>%6i{6ca|DzZ{n z3d*ie#F`Tdyq)+z$^-fdv0Ovb!>Rol-Pn?>s>%=y>dMQkFnXrUXG|qkyFaRP`~3j} zyHEL1l~?%e=XB*7ijsJ?Bs2_}$eC@MmErM`WH3N9mZjye4Ag8pO}6@%!HbEq z$)Y5{Ou<3bxBMgM%tC-TU^Qm4pG@fC@)W5iB+DydU&wCyzay&SiCUs0|TuYVaFL7_40@#>t?ZmX1F)L7C2PZ`FBN0n1Qmrx%h;Lv4NU7 zo0p||m|SG*vkIx@6BLV@WIZeQvIW0;VS zqVX3lEYg_FMiR(J1VET@Y#eoI?;rN5oHDG8x}}`r&8xxEM7_}q{qS^S=#=2SJ4HJe z>&6z~tz-~~G1!95klE~%^Gg6ty*_$AB2iRg59WUQ8RRi?QAEJ*3M9!A5y}O_eB1pG zU`wnV!?SB)IDbE&1JdD;`!xf+R3agSz9`1;P=}GI;w+pH?aJ0VGe>T~TBI>Its41o zL_9rD7n_@V?O1pql?c`+at{B}5+mw08XZl>AmLOQ8BH&{FQ=V;M6qaN4Er`i#VZpXcrG1 z6;B59)sXzWXM=8QioAqq%j%L4z)Pewq0~WG1~vvV_5vDA0)c4yArrm+%m=w%af5Lp zCbZa&YKI#4#`{drsFDL{K+{)5U%n4H^=96xT;ge#>EPZTG-}n{IgzKN&%>g&5q%?a z1QJGIU<}d?1BNa5iGlrXF0)u_rTk?s1Mh0k{b{m@lM=cW=ym<}I_DNAbki8nC5zzL zuJL_jbQ}_!|3q})`P7OfpRO;Yml(nv*U}y2?U~u8JbEBC<@6|FyJW~wiYY=yMGi4! z=Ow7?BLU2_oYk7g#rX|-P`pa_U-Ai#|I8qidQv43r^Qg@b%j7En%rd%CveJX<1wY0Tk(nIj#`>>jDz+k{spC zZdr%dS2m)XFy(lsaMm&9IF>>-$&!kLH&8kAo6Qb1lH~J;Ijw3XGSYni{#)iQ8T#%7 zMA_JUfKv`)EjcA-zRT^o>fHiP))8fj!{(ywIGa)%m^=tm|9pj}r_a;Kk1Rl|XUd1$ zVNjxjEd4N48Q3_wZBS*b|i0(hxgjkx<5SU9B+m1Z|V?sbBNjL)!;V~|^NJO{ud{<|PxXZ+P45v1)4TZZ|o$UcF_e+RjkboEj>q&GkR!x<*-0H%95ZkVgQ< zl74m*7!o@4L8h;SJve2rZkdD$);0%q>=cK*Lh_tJtVGN-L=E;x%MOS5O72^28ujdi z$O8#ynAA!gGk-fyX6jhNMpm{0Lzckp$VAPK z?Ne%7c-06L%%=5uYqgFp2^@ZRQF_24I9E$BcEF<40rGu%Ti8@*T9b4_Xe^B5%CQDU z#Qjf0@8&dKy>C9v4P9IEg>}T^wA_CB$w=Z`lIDrIW>d}Ezw-ID`QyyIK}Fey$A&b| z$*U(7<0!%Q66O8ti>`V2$+(V$uV1XyClLN7=dq1t)G&(IZh>7)3?w=UI1tcd+mbOh zHD&bX>C>`VnPSn=`e`0xCT5QOhbJ3xc`}cW6Ek$2$t8sb>aTV!%4+8k8dP#`D-JFH ztjE!)iix;P5sD_bqDwr!*L3V|&7dnzxb$488o6CYf+n71uIqFe*ia2*^#t4PeJ=E^=u!%mOrG6Xh2~5!A^> zKgoVgd4fJamw$ip@%7+kBlY@uU}T%{ahLB`B2qRLi9!;3FSc$dh*>Ud2cl@arLy|C zA(@IN)D=kbDq@X5NkCXd?BWZD`0YhXWqk5lVskjwgAPy(N_Kfa?F3qgoJj5rj<*Md zt(tw(BA4{W8x_P1q5$;6^EFU%L=^_eaHjqG_-e&)WBO2rodz{u8zb-SlHp=B>I;$U zV#uES;eHPPikR?oVnD3 zh#`oEv;{UL40$2X7lg**h4><*4n2U%c9c99%iAxXB5CO-13Iu2nMC!(jLDWdl z7pcVDY0N@{@l;WvImtus#e1s488jOeiUVwkuEol;f}J8&y45DFBMgoCAN76KDs54@v@aGk zuC2Foa+JlREx-BY=Q~J5Cdnc#RAF$oC@>XY1R+$SQh*`zA4oqzByTiALyg99 zU`aO+%fL_siQj|5zG%;8ynJ(b)P}9%$q%ovS!bW)y&Ozk*XGo-fooa{YfM+Z^U;-v z)Cr7}bOE5L#31ekc&18*hmmjNg~hI@QalnqLX?XW_5j30s3t_4ZrH?wTLn)^)A_h~ zjN*6(D@B#?8Da_0;Sf~QTEs~tB4Y(;HGJX?MM+m>OOL^Lsi@G5$DH-o-ZM(RCiW00 z;Rq(I{0x+7QPtXyYwiC=3c zP~tjA4gh6+o(gloG|s zU+YB~8G!>ThK?{pndoV)MpvX?@4FIH@J0=J?T#yv)5N|s;ZDqGzXp7Iv3ggc1!SoV z6!2JGpWn;-Zl%oLZl4HQs((jJS4YXd%oAQ8ssQZKalBc+DTm%3B!!Td5>dxKRzXq&2yMDyV7>=?(ZXeDW)Zcspbbw`WXw^#xOEgS0OWX zdmCD?#U@WKs!Q9({?**yH4W|!2^95t&`K%*w^iRYFl-_zR0etTp01@dK{26@g^5V( z!bmXbzm%+Bh`6{osiEWka(Hul8nHZ362c)Vb|?d54rkYy=9qZr`S2>V z!?-+VI>z~>LwEamrcN-mO!8k!)5bYbiMI z?tn~|;TSvh9J?dycYYqv81U|mtE-Fs*DH|j_~@Zo9ua##WCS`x4Xy(Ws@Z!k(DAM@ zm_Ji6Bp{V5MlXKQtSV^WfPV$|@5;}#_h8FgpRB1Z(+1S-@$|sp_%#o+W}(&5-v_a* zk*CDAW`C1KDvhcn2<shaK*~1&&>p30DBR;DPVMn9tXNA_)4ayhykUu7-b+HqbTnK4!=3=4#IU z;?${Kck7o!CMjwS8zw+-|I_?O|3Ik%4hFPmO(n>X&dT*sN=n60#pTrR7Tto+ zv$t&o%I9ceXcfC*;a`>T)8P3|FtyI$)iPX}e~Wp1Kw`*NtnmqepYC7#`MQ4NZoZGK z7V@Y=D1Pdm;2ZNIx&WZAe&uR{HSor=X<`ATL2f{Vt33gX){gL76uVHW<+`;yM;W3a#9Y;`Rlo1~5aPsp)Xe2! zZoP}g4N@oX&+#rn1PIRBpmZ98)82VdRC(m|7L0gZF!?<{S~aX8t~5W#+~BYHDQn^O zHg~Pv^ECo&5!rw(elTj-%#ooaO6Z}3DEK8Nu5MN`VXdi=6~U_6rTUcNDVGUo`!nst zGo}u`KPVj3zD0snnUx3R1`_uphUSWzA+F*h>UdlJ9-gSdFM@tZLN$rQjin2Fze#d%>uuz?qn4nFPDhWfMv zTlA~fSWsNmff=n$w&sqE~rLd-{TJ4=?x!C)0L+b6TZkyz1 z@MUo!|Lh{s-ycj&wB^tc*n%RcQfpF|Pr{DUETmik76U^DrVO6z(o{x2&QFx;U}gas zQh}YNu7M=<@UacdYMqd3=^}E%agRUzVT%-dI@?6lH}&{_GT(X!uDY-7o?-L6+6i6c z6=#xucdVF1OGh*ZooJXPuXl@$t1fV&f&WX&bz+tRg_Vlsq5epw*J1SM=x)3IkN-|QAxG9 zITGW#;c4I=?be9qAE1Tw5-pR1TBe{?{xE!pR=cJ|5fY3eG9EJPgvSEKT8Dm+g27T@ zP_O@-H)-rqssb9^*aqYC(-=djv)bx$+30$>v{kO%$wSY`5v>8KHtvGasX0|ueGHkc zAgoax@kbEfgjs|*TWozVpk7y7J1p1u9a66LC|zi|t%=Z)_am^QP-n>Z(w%>iBREmQ zVN=>XJ>Z^yGaXs*|JQ?r=K- zq5Hf27ys)ed2Ax%NGKC&l7QG;ut{Bd3){b74gS~6#_am?a+Q1>+B8M@=9p;a8-Xw^ z78_$hhCwi z^6J6(Og+6}ejz*lEW`-cALbCUAN=2=0@X-MNsia(v*Ne z3lW-f31(7Wfl-MnQME2|34;`Bo_g9-BLO(`%I^TS!la=V#HLg50a9cr=j|B*mJ?Hp zwY}L#OIE?&+ceVZxdxqP$+kLcTr0-~UJPl3V z&^eSMPJ=hTVXafD6PkXom-DpDAp_7VY#WO`T4)hvlslGxCTkyh|D@sQQmylG@iM3# z+Olt+ajRUJ{($(g4YL4hXBVV{E%IpDEM%=9ThG81D1c^M%uZ7a*=sS(cA@Z3@?%lm zZOnRe2ElduX9D}ZNC*1YCtMPa0+84&1~(`=Pz zq@23iu$wPgbiE|bph{B2!l%^r5?`4)QXBM4%l7>x9&T?N(DGQu= zw!R}1(+(~NvVqDEmbtxGEN(bDQef=Yv!Tq$r$J%1{?a(eyWvkVNQ#F1J9{uN-A6{$ zZ02_a3Cl$*sY$UovS^aY0Kk!B1#&6Wm2rg~muycie zDM#9lug}%BPP3AZ#Qo=V#%UZ!-5B9{W;Q}bw&U02Y1pFQbU@V6qjAyu@Kx`z4J%4& z$4F>G=$P;ih#^8a2&&6r!hO?;9w-P?M7X!{P9J~IjYlrtCz}FFXn=K8qFDa{Wj1)^m1y4TS2MHW|Si1tJ-c%ZXy;O_>; zfu5=cMghaEW)IH8Fh&V;4j8ILxWzMXxj=ZdCoc3Sn?g!h>#D@T{s+o@I3+3gqZI`L zuz123O4>mM(eZ{@fLpx-nCMKuf@8<4H3uMWz`(PY?#<9Iu+ZEG>!IgQWjbWnFqSvy z@Z^^-X<_WgP6s(_5O^c)U2#k&87sVeK8)fpuoI+wbnl|P$vdKQMoX~Zgt*LUUe_He z%7+4qI8^lRdI=}2f5+30UB>l>_kAG5cYf%dQ$>-!u@{FI0K$_WHn9nuuP_l||Ic1c zj@}R&HJ}w%A^M^A)U`C zc4&QkbDbNh_=+ADRgW$!2v)f`>w$ghrk>p^SI#$As}G8H%WHg5>tl){9+GiH!f8Ak zkOx3cJRr?Q0N+AStNW{vx`0P&ix5wu(lpQ}dci8-Kb!LE%EFfMSoB)q*;JujuIIN_ z0xgGB1ey5ri&M1fWafUA+?Db8iBHtGl==O{@?J9OKZN1nbSUbI(lWn+iFlFs{tJoz z!wChqAY^7{{hz{A?e*w&F_gb86gQ@R*n^wv&#)Np@k8VSzF>^J_R)r;@n)nNKgfRk ziZY1#BU~Q9jxdX`1VQAx~i+HtLJcwD$;t5YCP>nCe`%JaCX*5noB8+_!M^) zPT$(pWpw$B)RTEXDG!%E(7${CXq%{HSFr%TZduJ(JvW~R>~c2s!=3uhWqMXgqi=6d zeSHN?@IFEuZEl*6E1tt!%&R!1ZPGQgaP(Z9UUqckn0nRsGrv^yqi zagAYUml>V{vV6a5S0O635Mi4?U@H1H9tNnVk2yjqL(JY!lkia45I*4=)0ZWFk*h)Dgqr&+M+Xy@;zA&_`8QKyEFr%8q0RgM+@0AuPg z_ch};qmanRO0<}bkJv?IABXipL7FIK!MHehGao_+pq8B5vU?>=>8Uq3CH9)ePunBrSV&k*IPVz|QpY2yDNUp&LAeXa zpz)U}r$j|NQf79*<9?0}-AW3%R;ORQWBmSjI(|L6y<*h&_I8(UoGqCo^gmO-NW`JQ zCK@^ixNjfkBolm+%;4MvB!<+gy|0@o!sQUuNmbtTsIqs@B;4ej)g&S9zJ$^=vHU5hb-2&u2ka_M4v0iH^`~N4{W*~*PuJ?!(Z4QgV8_5 z$d3$^3^{_@pE%y%&Hz71yAg-#jK_%g)Nv;Q=2cRukW@4o4{5;I6v483jly#2B7DGp z+Tbt!dgTKxIQ?=lRMC_VdY@;M>gSXa%EiXeLntB*EIO$0rGjz8l}Tbj1A1HsS>Pp@ z$t!!Ux9~jFgv+-)XD!aPY)2JDGdANziC!ckf{>H*FP;P;Rk5%tu;BI^f|0Eo;!D2* zuumMivB4FcPCw)(f})&N2ONQDbjJLNE{L%A!p_hqc zf}m)Z6yl4kz#}7)mmFL)r^l2Pf=`46exH0PI?Qi1QPJ0C4_-__PB#Xp+Hopj{7kA$ z5czW`E1Y*(PwYY#7!-j7QI|-ZcqM`a_=v*Q7Z5u)h^96prxfz_RvD|OV58Ry9M-0d zP?*?rd(6q~scHU&uEY^B@O5f=|1$fh@WZNux;n-o(JrX#)uUL1tYeK%5v9L!u%X@u zQPB~+FgcY9jBUwEvDc020@%vS$->UX>h~G2bKka_HZTq;XNn>bqgvduq%TMnU>6HG z*J?&5_)k*2sGYC^eQTpdYOb1fO&vWcwN0|JbXg!L3*oqg_HEjb8qJ)g-KFl&T0Nnv zsurcxw&wfv7Vf>PGiE&E`W6IE7z;^^x{twAUHh;HOTPu=Boh1~VOQ()bE{ z9yILFL}YtTBQC;vG3Y@KYRQO0)`4>30GGx5akGd+DCwp+{03aZULppji84{TTT?2Pg;)IT|HZKvPAKBrW8oR&`Jp&jfOGfW7ocvEH6AV7!@+;=mh@+YqkV)g>ZYd?_t_P@> za*Asiley(CMkWnUwJy9FG{N+Lh;-&l--}x8L+>r)brvAH=^tm|jpGrnqG{-_r&P@B zH5x-}J65@uEH&b&;J1%HH#+$&u`P1y0KB8r$PVi*#le2-=dL#!GBS-`~vhcCsQeObsMX4crVvTEnz8mc}ZmLQj(GZtKDt z68FR8N!p9wrm%p4@|~JOfB8dHT-XF#4J_5uS~ zeFdv(UGI9y9%5lELRHjf%Zo!q2CZ^K&}fSmNM@c~`tP4&dFyDrER_a!8IN7>8zpp> zzV%iGz;Sle7Lw=Qqt@Q4jK)?XWCrlO5`>e+`^yJTR0*{#*& zgL^0*Q}e0b{U^*h|=)U8MBwC8@|jnji zJQ?6WCImtf!!H`NxMh976X_r_WH)YVhGn5frxwnO0OwVh&ShQFsBN@LfuDl-?RA^WQ3fT=EU-}WikxO#ExYNXIt`8N*-%9|a$;D-Z|yNZ ztP!hlc@HuO>+w&s4xjg5U0l`NKd@D!rU$GXGcjkX)Qn#$oCcG&&t-MMe>K94Ls#U= zl=-XsS-!l|1a48WF)juOyw2H~d`c? zfM;+8+?6G8nEk6O)~hQN*47U262IXemK#|+KX@geuCA`+Y6ArbTeS%}dCjgi(%QDa z)w|SH1Zys>bGl|MPfGtZt&mprVhCu~q6S7qWGQ12R^?Ys4MFc592g!S9Ejx=EI

;g0;IzXm~YU*2#0I}-A=(VT(E{qR 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 bthgkxsHCDOHI2*6#KO>+OI6j?-;E0Z{>mOG delta 43435 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
    i{@ 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ℑ)7>|;@gm8NP+5@ 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 diff --git a/overview.tex b/overview.tex index a40bbe3..fd5d355 100644 --- a/overview.tex +++ b/overview.tex @@ -5,7 +5,8 @@ \documentclass[a4paper,landscape]{article} -\usepackage{fullpage} +\usepackage[margin=0pt]{geometry} +\pagestyle{empty} \usepackage{longtable} \usepackage{tikz} \usepackage{listings} @@ -47,11 +48,11 @@ No. & Name & Symbol & Code & File \\ \endhead \hline - \No & main track & \symbol{main_track.tikz} & \code{main_track.tikz} & \emph{none} \\ + \No & main track & \symbol{main_track.tikz} & \code{main_track.tikz} & \texttt{topology.tikz} \\ \hline - \No & main line (double track) & \symbol{main_line.tikz} & \code{main_line.tikz} & \emph{none} \\ + \No & main line (double track) & \symbol{main_line.tikz} & \code{main_line.tikz} & \texttt{topology.tikz} \\ \hline - \No & side track & \symbol{side_track.tikz} & \code{side_track.tikz} & \emph{none} \\ + \No & side track & \symbol{side_track.tikz} & \code{side_track.tikz} & \texttt{topology.tikz} \\ \hline \No & turnout left (forward) & \symbol{turnout_left_forward.tikz} & \code{turnout_left_forward.tikz} & \texttt{topology.tikz} \\ \hline @@ -93,17 +94,27 @@ \hline \No & bufferstop (backward) & \symbol{bufferstop_backward.tikz} & \code{bufferstop_backward.tikz} & \texttt{topology.tikz} \\ \hline - \No & train (not moving) & \symbol{train.tikz} & \code{train.tikz} & \texttt{vehicles.tikz} \\ + \No & train (parked) & \symbol{train.tikz} & \code{train.tikz} & \texttt{vehicles.tikz} \\ \hline - \No & short train (not moving) & \symbol{short_train.tikz} & \code{short_train.tikz} & \texttt{vehicles.tikz} \\ + \No & short train (parked) & \symbol{short_train.tikz} & \code{short_train.tikz} & \texttt{vehicles.tikz} \\ + \hline + \No & train (direction forward) & \symbol{train_direction_forward.tikz} & \code{train_direction_forward.tikz} & \texttt{vehicles.tikz} \\ + \hline + \No & train (direction backward) & \symbol{train_direction_backward.tikz} & \code{train_direction_backward.tikz} & \texttt{vehicles.tikz} \\ + \hline + \No & ghost train (direction forward) & \symbol{ghost_train_direction_forward.tikz} & \code{ghost_train_direction_forward.tikz} & \texttt{vehicles.tikz} \\ + \hline + \No & ghost train (direction backward)& \symbol{ghost_train_direction_backward.tikz} & \code{ghost_train_direction_backward.tikz} & \texttt{vehicles.tikz} \\ \hline \No & train moving (forward) & \symbol{train_moving_forward.tikz} & \code{train_moving_forward.tikz} & \texttt{vehicles.tikz} \\ \hline \No & train moving (backward) & \symbol{train_moving_backward.tikz} & \code{train_moving_backward.tikz} & \texttt{vehicles.tikz} \\ \hline - \No & ghost train moving (forward) & \symbol{ghost_train_moving_forward.tikz} & \code{ghost_train_moving_forward.tikz} & \texttt{vehicles.tikz} \\ + \No & \parbox[c]{4cm}{train drives automatic\\(direction forward)} + & \symbol{train_drive_automatic.tikz} & \code{train_drive_automatic.tikz} & \texttt{vehicles.tikz} \\ \hline - \No & ghost train moving (backward) & \symbol{ghost_train_moving_backward.tikz} & \code{ghost_train_moving_backward.tikz} & \texttt{vehicles.tikz} \\ + \No & \parbox[c]{4cm}{train drives by human\\(direction forward)} + & \symbol{train_drive_human.tikz} & \code{train_drive_human.tikz} & \texttt{vehicles.tikz} \\ \hline \No & train berth sign (forward) & \symbol{train_berth_sign_forward.tikz} & \code{train_berth_sign_forward.tikz} & \texttt{trafficControl.tikz} \\ \hline diff --git a/src/layoutSymbols_DE.tikz b/src/layoutSymbols_DE.tikz index 5f0d3ba..f1f104a 100644 --- a/src/layoutSymbols_DE.tikz +++ b/src/layoutSymbols_DE.tikz @@ -55,13 +55,25 @@ }; } \tikzset{ - route_forward/.pic={ - \fill (0,-0.15) -- ++(0,0.3) -- ++ (0.35,-0.15) -- cycle; + route_passanger_forward/.pic={ + \fill (-0.175,-0.15) -- ++(0,0.3) -- ++ (0.35,-0.15) -- cycle; }; } \tikzset{ - route_backward/.pic={ - \fill (0,-0.15) -- ++(0,0.3) -- ++ (-0.35,-0.15) -- cycle; + route_passanger_backward/.pic={ + \fill (0.175,-0.15) -- ++(0,0.3) -- ++ (-0.35,-0.15) -- cycle; + }; +} +\tikzset{ + route_freight_forward/.pic={ + \fill (-0.35,-0.15) -- ++(0,0.3) -- ++ (0.35,-0.15) -- cycle; + \fill ( 0 ,-0.15) -- ++(0,0.3) -- ++ (0.35,-0.15) -- cycle; + }; +} +\tikzset{ + route_freight_backward/.pic={ + \fill (0.35,-0.15) -- ++(0,0.3) -- ++ (-0.35,-0.15) -- cycle; + \fill (0 ,-0.15) -- ++(0,0.3) -- ++ (-0.35,-0.15) -- cycle; }; } % \tikzset{ @@ -108,3 +120,9 @@ \path[draw,->,>=latex,line width=1pt] (-0.2,0.2) -- (0.4,-0.4); % derailer marker }; } +\tikzset{ + derailer_left_forward/.pic={ + \fill (-0.1,0.2) -- ++(0,-0.4) -- ++(0.2,0) -- ++(0,0.4) -- cycle; % signal pole + \path[draw,->,>=latex,line width=1pt] (-0.2,-0.2) -- (0.4,0.4); % derailer marker + }; +} diff --git a/src/timeDistanceDiagram_test.tikz b/src/timeDistanceDiagram_test.tikz new file mode 100644 index 0000000..d1a7c0f --- /dev/null +++ b/src/timeDistanceDiagram_test.tikz @@ -0,0 +1,59 @@ +%!TEX TS-program = pdflatexmk +%!TEX root = timeDistanceDiagram_test.tex + +% Copyright 2018 Martin Scheidt (ISC license) +% Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. + +% infrastructure +\def\BkOne{7.5} +\def\BkTwo{12} +\def\BkTre{16.5} +% +% space-time-grid +% visual and layout +\def\Blocks{\BkOne,\BkTwo,\BkTre} +\def\timetableHeight{14.5} +\setcounter{stationNum}{0} +\setcounter{blockNum}{9} +% infrastructure +\def\SightingDistance{2} +\def\ApproachDistance{3} +\def\ClearingDistance{2} +\def\InterlockingTime{0.5} +\def\Latency{0.5} + +\begin{scope}[shift={(0,0)}] + % + \toggletrue{DEBUG} + \toggletrue{blockingTimeParts} + % \togglefalse{blockingTimeFill} + \def\Segments{\BkOne/\BkTwo/\mCoast,\BkTwo/\BkTre/\mCoast} + \pic at (0,-0.0) {train_path}; + \def\Segments{\BkOne/\BkTwo/\mAcc,\BkTwo/\BkTre/\mDec} + \pic at (0,-6.5) {train_path}; + % + \foreach \BKx in \Blocks { + \node [above=0.25cm] at (\BKx, 0) {\tiny \BlockNum}; + \draw (\BKx, 0) -- ++(0,-\timetableHeight); + \pic [above=0.2cm] at (\BKx, 0) {block}; + } + % +\end{scope} + +\begin{scope}[shift={(12,0)}] + % + \toggletrue{DEBUG} + \toggletrue{blockingTimeParts} + % \togglefalse{blockingTimeFill} + \def\Segments{\BkTre/\BkTwo/\mCoast, \BkTwo/\BkOne/\mCoast} + \pic at (0, -6.0) {train_path}; + \def\Segments{\BkTre/\BkTwo/\mAcc,\BkTwo/\BkOne/\mDec} + \pic at (0,-12.5) {train_path}; + % + \foreach \BKx in \Blocks { + \node [above=0.25cm] at (\BKx, 0) {\tiny \BlockNum}; + \draw (\BKx, 0) -- ++(0,-\timetableHeight); + \pic [above=0.2cm] at (\BKx, 0) {block}; + } + % +\end{scope} \ No newline at end of file diff --git a/src/topology.tikz b/src/topology.tikz index 91c6376..dc6ff6b 100644 --- a/src/topology.tikz +++ b/src/topology.tikz @@ -4,6 +4,9 @@ % Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. +\tikzset{MainTrack/.style={line width=2pt}} +\tikzset{SideTrack/.style={line width=1pt}} + \tikzset{ pics/turnout_left_forward/.style args={#1}{ code={ diff --git a/src/vehicles.tikz b/src/vehicles.tikz index 6d073ae..c01d5d5 100644 --- a/src/vehicles.tikz +++ b/src/vehicles.tikz @@ -17,6 +17,8 @@ pics/train_moving_forward/.style args={#1}{ code={ \path[draw, line width=1pt, fill=white] (0,0) -- +(-0.3,0.3) -- +(-#1,0.3) -- +(-#1,-0.3) -- +(-0.3,-0.3) -- cycle; % train shape + \path[draw, line width=1pt] (-0.13,0.23) -- (0.1,0) -- (-0.13,-0.23); % arrow shape part 1 + \path[draw, line width=1pt] (-0.03,0.23) -- (0.2,0) -- (-0.03,-0.23); % arrow shape part 2 % \node at (-2,0) {\emph{#2}}; %label of train } }, @@ -26,26 +28,66 @@ pics/train_moving_backward/.style args={#1}{ code={ \path[draw, line width=1pt, fill=white] (0,0) -- +(0.3,-0.3) -- +(#1,-0.3) -- +(#1,0.3) -- +(0.3,0.3) -- cycle; % train shape + \path[draw, line width=1pt] (0.13,0.23) -- (-0.1,0) -- (0.13,-0.23); % arrow shape part 1 + \path[draw, line width=1pt] (0.03,0.23) -- (-0.2,0) -- (0.03,-0.23); % arrow shape part 2 % \node at (-2,0) {\emph{#2}}; %label of train } }, pics/train_moving_backward/.default=4, } \tikzset{ - pics/ghost_train_moving_forward/.style args={#1}{ + pics/train_direction_forward/.style args={#1}{ + code={ + \path[draw, line width=1pt, fill=white] (0,0) -- +(-0.3,0.3) -- +(-#1,0.3) -- +(-#1,-0.3) -- +(-0.3,-0.3) -- cycle; % train shape + % \node at (-2,0) {\emph{#2}}; %label of train + } + }, + pics/train_direction_forward/.default=4, +} +\tikzset{ + pics/train_direction_backward/.style args={#1}{ + code={ + \path[draw, line width=1pt, fill=white] (0,0) -- +(0.3,-0.3) -- +(#1,-0.3) -- +(#1,0.3) -- +(0.3,0.3) -- cycle; % train shape + % \node at (-2,0) {\emph{#2}}; %label of train + } + }, + pics/train_direction_backward/.default=4, +} +\tikzset{ + pics/ghost_train_direction_forward/.style args={#1}{ code={ \path[draw, line width=1pt, dashed] (0,0) -- +(-0.3,0.3) -- +(-#1,0.3) -- +(-#1,-0.3) -- +(-0.3,-0.3) -- cycle; % train shape % \node at (-2,0) {\emph{#2}}; %label of train } }, - pics/ghost_train_moving_forward/.default=4, + pics/ghost_train_direction_forward/.default=4, } \tikzset{ - pics/ghost_train_moving_backward/.style args={#1}{ + pics/ghost_train_direction_backward/.style args={#1}{ code={ \path[draw, line width=1pt, dashed] (0,0) -- +(0.3,-0.3) -- +(#1,-0.3) -- +(#1,0.3) -- +(0.3,0.3) -- cycle; % train shape % \node at (-2,0) {\emph{#2}}; %label of train } }, - pics/ghost_train_moving_backward/.default=4, + pics/ghost_train_direction_backward/.default=4, +} +\tikzset{ + train_automatic_forward/.pic={ + \path[draw, fill=black] (-0.15,0) -- ++(-0.15,0.15) -- ++(0,-0.3) -- cycle; % triangle + }; +} +\tikzset{ + train_automatic_backward/.pic={ + \path[draw, fill=black] (0.15,0) -- ++(0.15,0.15) -- ++(0,-0.3) -- cycle; % triangle + }; +} +\tikzset{ + train_human_forward/.pic={ + \path[draw, fill=black] (-0.4,0) circle (0.15); % dot + }; +} +\tikzset{ + train_human_backward/.pic={ + \path[draw, fill=black] (0.4,0) circle (0.15); % dot + }; } \ No newline at end of file