first commit of basic conept for a railway topology library in tikz

master v0.1
Martin Scheidt 2018-09-14 21:04:15 +02:00
parent 59bf596a6f
commit 47037c6d02
77 changed files with 1811 additions and 28 deletions

33
.gitignore vendored
View File

@ -124,7 +124,6 @@ acs-*.bib
# knitr
*-concordance.tex
# TODO Comment the next line if you want to keep your tikz graphics files
*.tikz
*-tikzDictionary
# listings
@ -240,3 +239,35 @@ TSWLatexianTemp*
# generated if using elsarticle.cls
*.spl
# LaTeXing & Sublime Text
Output
## -- macOS ignore
# General
.DS_Store
.AppleDouble
.LSOverride
# Icon must end with two \r
Icon
# Thumbnails
._*
# Files that might appear in the root of a volume
.DocumentRevisions-V100
.fseventsd
.Spotlight-V100
.TemporaryItems
.Trashes
.VolumeIcon.icns
.com.apple.timemachine.donotpresent
# Directories potentially created on remote AFP share
.AppleDB
.AppleDesktop
Network Trash Folder
Temporary Items
.apdisk

30
LICENSE
View File

@ -1,29 +1,7 @@
BSD 3-Clause License
ISC License
Copyright (c) 2018, railtoolkit
All rights reserved.
Copyright (c) 2018, Martin Scheidt \<m.scheidt@tu-bs.de\>
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies.
* Redistributions of source code must retain the above copyright notice, this
list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution.
* Neither the name of the copyright holder nor the names of its
contributors may be used to endorse or promote products derived from
this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.

View File

@ -1 +1,15 @@
# tikz-trackschematic
tikz-trackschematic
======
Version 0.1
------
Basic concept of a library with railway topology symbols and some examples.
Roadmap
------
* encapsulation of symbols in package for tex infrastructure
* provide option for internationalziation (i18n)
* write usefull documantion
* re-think syntax

View File

@ -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[line width=2pt] (-2.5,0) -- ++(5,0);
\pic at (0,0) {block_clearing_point_backward};

View File

@ -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[line width=2pt] (-2.5,0) -- ++(5,0);
\pic at (0,0) {block_clearing_point_forward};

View File

@ -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[line width=2pt] (-2.5,0) -- ++(5,0);
\pic at (0,0) {block_end_marker_backward};

View File

@ -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[line width=2pt] (-2.5,0) -- ++(5,0);
\pic at (0,0) {block_end_marker_forward};

View File

@ -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[line width=2pt] (-2.5,0) -- ++(5,0);
\pic at (0,0) {block_signal_backward=S};
% replace the S with desired speed or remove

View File

@ -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[line width=2pt] (-2.5,0) -- ++(5,0);
\pic at (0,0) {block_signal_forward=S};
% replace the S with desired speed or remove

View File

@ -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[line width=2pt] (-2.5,0) -- ++(5,0);
\pic at (-2,0) {bridge_left=4};
\pic at (-2,0) {bridge_right=4};

View File

@ -0,0 +1,11 @@
%!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[line width=2pt] (-1,-1) -- ++(2,2);
\fill[white] (-1,-0.4) rectangle (1,0.4);
\draw[line width=2pt] (-2.5,0) -- ++(5,0);
\pic at (-1,0) {bridge_left=3};
\pic at (-2,0) {bridge_right=3};

View File

@ -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[line width=2pt] (0,0) -- ++(2.5,0);
\pic at (0,0) {bufferstop_backward};

View File

@ -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[line width=2pt] (-2.5,0) -- ++(2.5,0);
\pic at (0,0) {bufferstop_forward};

View File

@ -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[line width=2pt] (-2.5,0) -- ++(5,0);
\pic at (0,0) {clearing_point};

View File

@ -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[line width=1pt] (-2.5,0) -- ++(5,0);
\pic at (0,0) {derailer_left_backward};

View File

@ -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[line width=1pt] (-2.5,0) -- ++(5,0);
\pic at (0,0) {derailer_left_forward};

View File

@ -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[line width=1pt] (-2.5,0) -- ++(5,0);
\pic at (0,0) {derailer_right_backward};

View File

@ -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[line width=1pt] (-2.5,0) -- ++(5,0);
\pic at (0,0) {derailer_right_forward};

View File

@ -0,0 +1,10 @@
%!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[line width=2pt] (-2.5, 0) -- ++(5,0);
\draw[line width=2pt] (-1 ,-1) -- ++(2,2);
\pic at (0,0) {turnout_left_forward=none};
\pic at (0,0) {turnout_left_backward=none};

View File

@ -0,0 +1,10 @@
%!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[line width=2pt] (-2.5,0) -- ++(5, 0);
\draw[line width=2pt] (-1 ,1) -- ++(2,-2);
\pic at (0,0) {turnout_right_forward=none};
\pic at (0,0) {turnout_right_backward=none};

View File

@ -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[line width=2pt] (-2.5,0) -- ++(5,0);
\pic at (0,0) {distant_signal_backward};

View File

@ -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[line width=2pt] (-2.5,0) -- ++(5,0);
\pic at (0,0) {distant_signal_forward};

View File

@ -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[line width=2pt] (-2.5,0) -- ++(5,0);
\pic at (0,0) {distant_signal_backward=S};
% replace the S with desired speed or remove

View File

@ -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[line width=2pt] (-2.5,0) -- ++(5,0);
\pic at (0,0) {distant_signal_forward=S};
% replace the S with desired speed or remove

View File

@ -0,0 +1,12 @@
%!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[line width=2pt] (-2.5, 0) -- ++(5,0);
\draw[line width=2pt] (-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};
\pic at (0,0) {slip_left_backward};

View File

@ -0,0 +1,12 @@
%!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[line width=2pt] (-2.5,0) -- ++(5, 0);
\draw[line width=2pt] (-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};
\pic at (0,0) {slip_right_backward};

View File

@ -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[line width=2pt] (-2.5,0) -- ++(5,0);
\pic at (-2,0) {ghost_train_moving_backward};

View File

@ -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[line width=2pt] (-2.5,0) -- ++(5,0);
\pic at (2,0) {ghost_train_moving_forward};

View File

@ -0,0 +1,11 @@
%!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[line width=2pt] (-2.5,-0.5) -- ++(5,0);
\draw[line width=2pt] (-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};

View File

@ -0,0 +1,13 @@
%!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[line width=2pt] (-2.5,-0.5) -- ++(5,0);
\draw[line width=2pt] (-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};
\pic at (0,-0.5) {level_crossing_barrier_right};
\pic at (0,-1.5) {level_crossing_barrier_left};

View File

@ -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[line width=2pt] (-2.5,0) -- ++(5,0);
\pic at (0,0) {level_crossing_barrier_left};
\pic at (0,0) {level_crossing_barrier_right};

View File

@ -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[line width=2pt] (-2.5, 0.5) -- ++(5,0);
\draw[line width=2pt] (-2.5,-0.5) -- ++(5,0);

View File

@ -0,0 +1,7 @@
%!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[line width=2pt] (-2.5,0) -- ++(5,0);

View File

@ -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[line width=2pt] (-2.5,0) -- ++(5,0);
\pic at (-2,0) {platform_left=4};
% change the 4 to desired length

View File

@ -0,0 +1,10 @@
%!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[line width=2pt] (-2.5, 0.5) -- ++(5,0);
\draw[line width=2pt] (-2.5,-0.5) -- ++(5,0);
\pic at (-2, 0.5) {platform_right};
\pic at (-2,-0.5) {platform_left};

View File

@ -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[line width=2pt] (-2.5,0) -- ++(5,0);
\pic at (-2,0) {platform_right=4};
% change the 4 to desired length

View File

@ -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[line width=2pt] (-2.5,0) -- ++(5,0);
\pic at (0,0) {route_clearing_point_backward};

View File

@ -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[line width=2pt] (-2.5,0) -- ++(5,0);
\pic at (0,0) {route_clearing_point_forward};

View File

@ -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[line width=2pt] (-2.5,0) -- ++(5,0);
\pic at (0,0) {route_signal_backward=S};
% replace the S with desired speed or remove

View File

@ -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[line width=2pt] (-2.5,0) -- ++(5,0);
\pic at (0,0) {route_signal_forward=S};
% replace the S with desired speed or remove

View File

@ -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[line width=2pt] (-2.5,0) -- ++(5,0);
\pic at (-0.5,0) {train=1};
% change the 1 to desired length

View File

@ -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[line width=2pt] (-2.5,0) -- ++(5,0);
\pic at (0,0) {shunt_limit_backward};

View File

@ -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[line width=2pt] (-2.5,0) -- ++(5,0);
\pic at (0,0) {shunt_limit_forward};

View File

@ -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[line width=2pt] (-2.5,0) -- ++(5,0);
\pic at (0,0) {shunt_signal_backward};

View File

@ -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[line width=2pt] (-2.5,0) -- ++(5,0);
\pic at (0,0) {shunt_signal_forward};

View File

@ -0,0 +1,7 @@
%!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[line width=1pt] (-2.5,0) -- ++(5,0);

View File

@ -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[line width=2pt] (-2.5,0) -- ++(5,0);
\pic at (0,0) {speed_signal_backward=S};
% replace the S with desired speed or remove

View File

@ -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[line width=2pt] (-2.5,0) -- ++(5,0);
\pic at (0,0) {speed_signal_forward=S};
% replace the S with desired speed or remove

View File

@ -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[line width=2pt] (-2.5,0) -- ++(5,0);
\pic at (-2,0) {train};
\node[font=\sffamily] at (0,0) {label};

View File

@ -0,0 +1,10 @@
%!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[line width=2pt] (-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};

View File

@ -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[line width=2pt] (-2.5,0) -- ++(5,0);
\pic at (-2,0) {train_berth_shape=4};
% change the 4 to desired length

View File

@ -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[line width=2pt] (-2.5,0) -- ++(5,0);
\pic at (0,0) {train_berth_sign_backward};

View File

@ -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[line width=2pt] (-2.5,0) -- ++(5,0);
\pic at (0,0) {train_berth_sign_forward};

View File

@ -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[line width=2pt] (-2.5,0) -- ++(5,0);
\pic at (-2,0) {train_moving_backward};

View File

@ -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[line width=2pt] (-2.5,0) -- ++(5,0);
\pic at (2,0) {train_moving_forward};

View File

@ -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[line width=2pt] (-2.5,0) -- ++( 5, 0);
\draw[line width=2pt] ( 0,0) -- ++(-1,-1);
\pic at (0,0) {turnout_left_backward};

View File

@ -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[line width=2pt] (-2.5,0) -- ++(5,0);
\draw[line width=2pt] ( 0,0) -- ++(1,1);
\pic at (0,0) {turnout_left_forward};

View File

@ -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[line width=2pt] (-2.5,0) -- ++( 5,0);
\draw[line width=2pt] ( 0,0) -- ++(-1,1);
\pic at (0,0) {turnout_right_backward};

View File

@ -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[line width=2pt] (-2.5,0) -- ++(5, 0);
\draw[line width=2pt] ( 0,0) -- ++(1,-1);
\pic at (0,0) {turnout_right_forward};

View File

@ -0,0 +1,10 @@
%!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[line width=2pt] (-2.5,0) -- ++( 5, 0);
\draw[line width=2pt] ( 0,0) -- ++(-1,-1);
\pic at (0,0) {turnout_left_backward};
\pic at (0,0) {fouling_point_left_backward};

View File

@ -0,0 +1,10 @@
%!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[line width=2pt] (-2.5,0) -- ++(5,0);
\draw[line width=2pt] ( 0,0) -- ++(1,1);
\pic at (0,0) {turnout_left_forward};
\pic at (0,0) {fouling_point_left_forward};

View File

@ -0,0 +1,10 @@
%!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[line width=2pt] (-2.5,0) -- ++( 5,0);
\draw[line width=2pt] ( 0,0) -- ++(-1,1);
\pic at (0,0) {turnout_right_backward};
\pic at (0,0) {fouling_point_right_backward};

View File

@ -0,0 +1,10 @@
%!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[line width=2pt] (-2.5,0) -- ++(5, 0);
\draw[line width=2pt] ( 0,0) -- ++(1,-1);
\pic at (0,0) {turnout_right_forward};
\pic at (0,0) {fouling_point_right_forward};

View File

@ -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[line width=2pt] (-2.5,0) -- ++(5,0);
\pic at (0,0) {view_point_backward};

View File

@ -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[line width=2pt] (-2.5,0) -- ++(5,0);
\pic at (0,0) {view_point_forward};

BIN
examples/station_berg.pdf Normal file

Binary file not shown.

143
examples/station_berg.tex Executable file
View File

@ -0,0 +1,143 @@
%!TEX TS-program = pdflatexmk
% 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.
\documentclass[tikz,border=2]{standalone}
\usepackage{lmodern}
\input{../src/solarizedColors.tex}
\input{../src/topologySymbols.tex} % Order 1
\input{../src/layoutSymbols_DE.tex} % Order 2 (important)
\input{../src/vehicles.tex}
\begin{document}
\begin{tikzpicture}[font=\sffamily]
{ % stations
\tikzset{every node/.style={base00}};
\node[right,align=left] at ( 2,1.3) {to and from\\ Arnau};
\node at (21,3.3) {{\LARGE Bf Berg}};
\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);
% track numbers
\node[fill=white] at (11.7, 1) {12};
\node[fill=white] at (11.7,-1) {10};
\node[fill=white] at (21.0, 2) { 3};
\node[fill=white] at (21.0, 1) { 2};
\node[fill=white] at (21.0, 0) { 1};
% bufferstops
\pic at ( 9, 1) {bufferstop_backward};
\pic at (11,-1) {bufferstop_backward};
\pic at (25, 2) {bufferstop_forward};
% turnouts
\pic at (12.8,-1) {derailer_right_forward};
\node at (12.7,-1.4) {\footnotesize Gs7};
\pic at (14,0) {turnout_left_backward};
\pic at (14,0) {fouling_point_left_backward};
\node at (14,0.2) {\footnotesize W1};
\pic at (14,1) {turnout_left_forward};
\pic at (14,1) {fouling_point_left_forward};
\node at (14,0.8) {\footnotesize W4};
\pic at (15,0) {turnout_left_forward};
\pic at (15,0) {fouling_point_left_forward};
\node at (15,-0.2) {\footnotesize W2};
\pic at (16,1) {turnout_left_backward};
\pic at (16,1) {fouling_point_left_backward};
\node at (16,1.2) {\footnotesize W3};
\pic at (27,0) {turnout_right_backward};
\pic at (27,0) {fouling_point_right_backward};
\node at (27,-0.2) {\footnotesize W6};
% platforms
\pic at (19,0) {platform_left};
\pic at (19,1) {platform_right};
}
{ % signals
\pic at ( 7,0) {distant_signal_forward};
\node[left] at (7,-0.4) {Va};
\pic at (10,0) {route_signal_forward};
\pic at (10,0) {distant_signal_forward};
\node[left] at (10,-0.4) {A};
\pic at (18,1) {route_signal_backward};
\node[right] at (18,1.4) {P2};
\pic at (18,0) {route_signal_backward};
\node[right] at (18,0.4) {P1};
\pic at (24,1) {route_signal_forward};
\node[left] at (24,0.6) {N2};
\pic at (24,0) {route_signal_forward};
\node[left] at (24,-0.4) {N1};
\pic at (30,0) {route_signal_backward};
\pic at (30,0) {distant_signal_backward};
\node[right] at (30,0.4) {F};
\pic at (33,0) {distant_signal_backward};
\node[right] at (33,0.4) {Vf};
% routes
\pic at (20,0) {route_backward};
\pic at (22,0) {route_forward};
\pic at (20,1) {route_backward};
\pic at (22,1) {route_forward};
}
{ % axle counters
\pic at (10 , 0) {axle_counter_right};
\pic at (12.3,-1) {axle_counter_right};
\pic at (12.8, 0) {axle_counter_right};
\pic at (13.4, 1) {axle_counter_right};
\pic at (14.9, 1) {axle_counter_right};
\pic [rotate=45] at (14.5, 2 ) {axle_counter_right};
\pic [rotate=45] at (15.9, 0.4) {axle_counter_left};
\pic at (16 , 0) {axle_counter_right};
\pic at (18 , 1) {axle_counter_right};
\pic at (18 , 0) {axle_counter_right};
\pic at (24 , 1) {axle_counter_right};
\pic at (24 , 0) {axle_counter_right};
\pic at (26 , 0) {axle_counter_right};
\pic at (27.5, 0) {axle_counter_right};
\pic [rotate=315] at (26.2, 0.8) {axle_counter_left};
\pic at (30 , 0) {axle_counter_right};
}
{ % vehicles
\pic at ( 6,0) {train_moving_forward};
\node at (4,0) {\emph{RB}};
\pic at (21.5,2) {train=3};
\node at (23,2) {\emph{WG}};
\pic at (10.2,1) {train=1};
\node at (10.7,1) {\emph{Tfz}};
\pic at (34,0) {train_moving_backward};
\node at (36,0) {\emph{IC}};
}
{ % hectometer posts
\tikzset{every node/.style={left,base00,rotate=-90},every path/.style={base00,dashed}};
\node at (07.0,-2.75) { 7.200};
\draw (07.0,-1.55) -- ++(0,0.7);
\node at (10.0,-2.75) { 8.200};
\draw (10.0,-1.55) -- ++(0,0.7);
\node at (12.8,-2.75) { 8.400};
\draw (12.8,-1.70) -- ++(0,0.1);
\draw (12.8,-0.70) -- ++(0,0.3);
\node at (16.0,-2.75) { 8.600};
\draw (16.0,-1.55) -- ++(0,1.1);
\node at (18.0,-2.75) { 8.700};
\draw (18.0,-1.55) -- ++(0,1.1);
\node at (19.0,-2.75) { 8.750};
\draw (19.0,-1.55) -- ++(0,1.3);
\node at (23.0,-2.75) { 9.000};
\draw (23.0,-1.55) -- ++(0,1.3);
\node at (24.0,-2.75) { 9.100};
\draw (24.0,-1.55) -- ++(0,0.7);
\node at (26.0,-2.75) { 9.200};
\draw (26.0,-1.55) -- ++(0,1.1);
\node at (27.5,-2.75) { 9.300};
\draw (27.5,-1.55) -- ++(0,1.1);
\node at (30.0,-2.75) { 9.500};
\draw (30.0,-1.55) -- ++(0,1.1);
\node at (33.0,-2.75) {10.500};
\draw (33.0,-1.55) -- ++(0,1.3);
}
\end{tikzpicture}
\end{document}

Binary file not shown.

View File

@ -0,0 +1,220 @@
%!TEX TS-program = pdflatexmk
% 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.
\documentclass[tikz,border=2]{standalone}
\usepackage{lmodern}
\input{../src/solarizedColors.tex}
\input{../src/topologySymbols.tex}
% \input{../src/layoutSymbols_DE.tex}
\input{../src/vehicles.tex}
\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};
}
\end{tikzpicture}
\end{document}

BIN
overview.pdf Normal file

Binary file not shown.

200
overview.tex Normal file
View File

@ -0,0 +1,200 @@
%! TEX TS-program = pdflatexmk
% 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.
\documentclass[a4paper,landscape]{article}
\usepackage{fullpage}
\usepackage{longtable}
\usepackage{tikz}
\usepackage[prefix=]{xcolor-solarized}
\usepackage{hyperref}
\usepackage{listings}
\lstset{
language=TeX,
basicstyle=\ttfamily,
columns=fullflexible,
breaklines=true
}
\renewcommand{\symbol}[1]{
\begin{tikzpicture}[anchor=base,baseline=-3]
\input{examples/snippets/#1}
\path (-3,-1.0) rectangle (3,1.0); % background rectangle to unify every cell containing a symbol
\end{tikzpicture}
}
\newcommand{\code}[1]{\lstinputlisting[firstline=7]{examples/snippets/#1}}
\newcommand{\colorsquare}[1]{
\begin{tikzpicture}[anchor=base,baseline=-3]
\filldraw [#1] (-0.3,-0.3) rectangle (0.3,0.3);
\end{tikzpicture}
}
\input{src/layoutSymbols_DE.tex}
\input{src/topologySymbols.tex}
\input{src/vehicles.tex}
\input{src/graphSymbols.tex}
\begin{document}
\centering
\begin{longtable}{|l|c|l|c|}
\hline
Name & Symbol & Code & File \\
\endhead
\hline
main track & \symbol{main_track.tikz} & \code{main_track.tikz} & \emph{none} \\
\hline
main line (double track) & \symbol{main_line.tikz} & \code{main_line.tikz} & \emph{none} \\
\hline
side track & \symbol{side_track.tikz} & \code{side_track.tikz} & \emph{none} \\
\hline
train berth sign (forward) & \symbol{train_berth_sign_forward.tikz} & \code{train_berth_sign_forward.tikz} & \verb$topologySymbols.tex$ \\
\hline
train berth sign (backward) & \symbol{train_berth_sign_backward.tikz} & \code{train_berth_sign_backward.tikz} & \verb$topologySymbols.tex$ \\
\hline
train berth shape & \symbol{train_berth_shape.tikz} & \code{train_berth_shape.tikz} & \verb$topologySymbols.tex$ \\
\hline
train berth & \symbol{train_berth.tikz} & \code{train_berth.tikz} & \verb$topologySymbols.tex$ \\
\hline
platform (left) & \symbol{platform_left.tikz} & \code{platform_left.tikz} & \verb$topologySymbols.tex$ \\
\hline
platform (right) & \symbol{platform_right.tikz} & \code{platform_right.tikz} & \verb$topologySymbols.tex$ \\
\hline
platform (middle) & \symbol{platform_middle.tikz} & \code{platform_middle.tikz} & \verb$topologySymbols.tex$ \\
\hline
view point (forward) & \symbol{view_point_forward.tikz} & \code{view_point_forward.tikz} & \verb$topologySymbols.tex$ \\
\hline
view point (backward) & \symbol{view_point_backward.tikz} & \code{view_point_backward.tikz} & \verb$topologySymbols.tex$ \\
\hline
distant signal (forward) & \symbol{distant_signal_forward.tikz} & \code{distant_signal_forward.tikz} & \verb$topologySymbols.tex$ \\
\hline
\parbox[c]{4cm}{distant signal\\with speed}
& \symbol{distant_speed_signal_forward.tikz} & \code{distant_speed_signal_forward.tikz} &\verb$topologySymbols.tex$ \\
\hline
distant signal (backward) & \symbol{distant_signal_backward.tikz} & \code{distant_signal_backward.tikz} & \verb$topologySymbols.tex$ \\
\hline
\parbox[c]{4cm}{distant signal\\with speed}
& \symbol{distant_speed_signal_backward.tikz} & \code{distant_speed_signal_backward.tikz} &\verb$topologySymbols.tex$ \\
\hline
speed signal (forward) & \symbol{speed_signal_forward.tikz} & \code{speed_signal_forward.tikz} & \verb$topologySymbols.tex$ \\
\hline
speed signal (backward) & \symbol{speed_signal_backward.tikz} & \code{speed_signal_backward.tikz} & \verb$topologySymbols.tex$ \\
\hline
block signal (forward) & \symbol{block_signal_forward.tikz} & \code{block_signal_forward.tikz} & \verb$topologySymbols.tex$ \\
\hline
block signal (backward) & \symbol{block_signal_backward.tikz} & \code{block_signal_backward.tikz} & \verb$topologySymbols.tex$ \\
\hline
route signal (forward) & \symbol{route_signal_forward.tikz} & \code{route_signal_forward.tikz} & \verb$topologySymbols.tex$ \\
\hline
route signal (backward) & \symbol{route_signal_backward.tikz} & \code{route_signal_backward.tikz} & \verb$topologySymbols.tex$ \\
\hline
shunt signal (forward) & \symbol{shunt_signal_forward.tikz} & \code{shunt_signal_forward.tikz} & \verb$topologySymbols.tex$ \\
\hline
shunt signal (backward) & \symbol{shunt_signal_backward.tikz} & \code{shunt_signal_backward.tikz} & \verb$topologySymbols.tex$ \\
\hline
shunt limit (forward) & \symbol{shunt_limit_forward.tikz} & \code{shunt_limit_forward.tikz} & \verb$topologySymbols.tex$ \\
\hline
shunt limit (backward) & \symbol{shunt_limit_backward.tikz} & \code{shunt_limit_backward.tikz} & \verb$topologySymbols.tex$ \\
\hline
block end marker (forward) & \symbol{block_end_marker_forward.tikz} & \code{block_end_marker_forward.tikz} & \verb$topologySymbols.tex$ \\
\hline
block end marker (backward) & \symbol{block_end_marker_backward.tikz} & \code{block_end_marker_backward.tikz} & \verb$topologySymbols.tex$ \\
\hline
block clearing point (forward) & \symbol{block_clearing_point_forward.tikz} & \code{block_clearing_point_forward.tikz} & \verb$topologySymbols.tex$ \\
\hline
block clearing point (backward) & \symbol{block_clearing_point_backward.tikz} & \code{block_clearing_point_backward.tikz} & \verb$topologySymbols.tex$ \\
\hline
route clearing point (forward) & \symbol{route_clearing_point_forward.tikz} & \code{route_clearing_point_forward.tikz} & \verb$topologySymbols.tex$ \\
\hline
route clearing point (backward) & \symbol{route_clearing_point_backward.tikz} & \code{route_clearing_point_backward.tikz} & \verb$topologySymbols.tex$ \\
\hline
clearing point & \symbol{clearing_point.tikz} & \code{clearing_point.tikz} & \verb$topologySymbols.tex$ \\
\hline
turnout left (forward) & \symbol{turnout_left_forward.tikz} & \code{turnout_left_forward.tikz} & \verb$topologySymbols.tex$ \\
\hline
turnout left (backward) & \symbol{turnout_left_backward.tikz} & \code{turnout_left_backward.tikz} & \verb$topologySymbols.tex$ \\
\hline
turnout right (forward) & \symbol{turnout_right_forward.tikz} & \code{turnout_right_forward.tikz} & \verb$topologySymbols.tex$ \\
\hline
turnout right (backward) & \symbol{turnout_right_backward.tikz} & \code{turnout_right_backward.tikz} & \verb$topologySymbols.tex$ \\
\hline
\parbox[c]{5cm}{turnout left (forward)\\with fouling point indicator}
& \symbol{turnout_with_fouling_left_forward.tikz} & \code{turnout_with_fouling_left_forward.tikz} & \verb$topologySymbols.tex$ \\
\hline
\parbox[c]{5cm}{turnout left (backward)\\with fouling point indicator}
& \symbol{turnout_with_fouling_left_backward.tikz} & \code{turnout_with_fouling_left_backward.tikz} & \verb$topologySymbols.tex$ \\
\hline
\parbox[c]{5cm}{turnout right (forward)\\with fouling point indicator}
& \symbol{turnout_with_fouling_right_forward.tikz} & \code{turnout_with_fouling_right_forward.tikz} & \verb$topologySymbols.tex$ \\
\hline
\parbox[c]{5cm}{turnout right (backward)\\with fouling point indicator}
& \symbol{turnout_with_fouling_right_backward.tikz}& \code{turnout_with_fouling_right_backward.tikz}& \verb$topologySymbols.tex$ \\
\hline
double-slip turnout left & \symbol{double-slip_turnout_left.tikz} & \code{double-slip_turnout_left.tikz} & \verb$topologySymbols.tex$ \\
\hline
double-slip turnout right & \symbol{double-slip_turnout_right.tikz} & \code{double-slip_turnout_right.tikz} & \verb$topologySymbols.tex$ \\
\hline
diamond crossing left & \symbol{diamond_crossing_left.tikz} & \code{diamond_crossing_left.tikz} & \verb$topologySymbols.tex$ \\
\hline
diamond crossing right & \symbol{diamond_crossing_right.tikz} & \code{diamond_crossing_right.tikz} & \verb$topologySymbols.tex$ \\
\hline
derailer left (forward) & \symbol{derailer_left_forward.tikz} & \code{derailer_left_forward.tikz} & \verb$topologySymbols.tex$ \\
\hline
derailer left (backward) & \symbol{derailer_left_backward.tikz} & \code{derailer_left_backward.tikz} & \verb$topologySymbols.tex$ \\
\hline
derailer right (forward) & \symbol{derailer_right_forward.tikz} & \code{derailer_right_forward.tikz} & \verb$topologySymbols.tex$ \\
\hline
derailer right (backward) & \symbol{derailer_right_backward.tikz} & \code{derailer_right_backward.tikz} & \verb$topologySymbols.tex$ \\
\hline
bufferstop (forward) & \symbol{bufferstop_forward.tikz} & \code{bufferstop_forward.tikz} & \verb$topologySymbols.tex$ \\
\hline
bufferstop (backward) & \symbol{bufferstop_backward.tikz} & \code{bufferstop_backward.tikz} & \verb$topologySymbols.tex$ \\
\hline
level crossing (single track) & \symbol{level_crossing_single.tikz} & \code{level_crossing_single.tikz} & \verb$topologySymbols.tex$ \\
\hline
level crossing (double track) & \symbol{level_crossing_double.tikz} & \code{level_crossing_double.tikz} & \verb$topologySymbols.tex$ \\
\hline
\parbox[c]{5cm}{level crossing (double track)\\with full closure}
& \symbol{level_crossing_double_full_closure.tikz} & \code{level_crossing_double_full_closure.tikz} & \verb$topologySymbols.tex$ \\
\hline
bridge & \symbol{bridge.tikz} & \code{bridge.tikz} & \verb$topologySymbols.tex$ \\
\hline
\parbox[c]{5cm}{bridge\\with track beneath}
& \symbol{bridge_track_beneath.tikz} & \code{bridge_track_beneath.tikz} & \verb$topologySymbols.tex$ \\
\hline
train (not moving) & \symbol{train.tikz} & \code{train.tikz} & \verb$vehicles.tex$ \\
\hline
short train (not moving) & \symbol{short_train.tikz} & \code{short_train.tikz} & \verb$vehicles.tex$ \\
\hline
train moving (forward) & \symbol{train_moving_forward.tikz} & \code{train_moving_forward.tikz} & \verb$vehicles.tex$ \\
\hline
train moving (backward) & \symbol{train_moving_backward.tikz} & \code{train_moving_backward.tikz} & \verb$vehicles.tex$ \\
\hline
ghost train moving (forward) & \symbol{ghost_train_moving_forward.tikz} & \code{ghost_train_moving_forward.tikz} & \verb$vehicles.tex$ \\
\hline
ghost train moving (backward) & \symbol{ghost_train_moving_backward.tikz} & \code{ghost_train_moving_backward.tikz} & \verb$vehicles.tex$ \\
\hline
\end{longtable}
\begin{tabular}{l*{10}{c}}
name & 100\% & 90\% & 80\% & 70\% & 60\% & 50\% & 40\% & 30\% & 20\% & 10\% \\
base03 & \colorsquare{base03} & \colorsquare{base03!90} & \colorsquare{base03!80} & \colorsquare{base03!70} & \colorsquare{base03!60} & \colorsquare{base03!50} & \colorsquare{base03!40} & \colorsquare{base03!30} & \colorsquare{base03!20} & \colorsquare{base03!10} \\
base02 & \colorsquare{base02} & \colorsquare{base02!90} & \colorsquare{base02!80} & \colorsquare{base02!70} & \colorsquare{base02!60} & \colorsquare{base02!50} & \colorsquare{base02!40} & \colorsquare{base02!30} & \colorsquare{base02!20} & \colorsquare{base02!10} \\
base01 & \colorsquare{base01} & \colorsquare{base01!90} & \colorsquare{base01!80} & \colorsquare{base01!70} & \colorsquare{base01!60} & \colorsquare{base01!50} & \colorsquare{base01!40} & \colorsquare{base01!30} & \colorsquare{base01!20} & \colorsquare{base01!10} \\
base00 & \colorsquare{base00} & \colorsquare{base00!90} & \colorsquare{base00!80} & \colorsquare{base00!70} & \colorsquare{base00!60} & \colorsquare{base00!50} & \colorsquare{base00!40} & \colorsquare{base00!30} & \colorsquare{base00!20} & \colorsquare{base00!10} \\
base0 & \colorsquare{base0} & \colorsquare{base0!90} & \colorsquare{base0!80} & \colorsquare{base0!70} & \colorsquare{base0!60} & \colorsquare{base0!50} & \colorsquare{base0!40} & \colorsquare{base0!30} & \colorsquare{base0!20} & \colorsquare{base0!10} \\
base1 & \colorsquare{base1} & \colorsquare{base1!90} & \colorsquare{base1!80} & \colorsquare{base1!70} & \colorsquare{base1!60} & \colorsquare{base1!50} & \colorsquare{base1!40} & \colorsquare{base1!30} & \colorsquare{base1!20} & \colorsquare{base1!10} \\
base2 & \colorsquare{base2} & \colorsquare{base2!90} & \colorsquare{base2!80} & \colorsquare{base2!70} & \colorsquare{base2!60} & \colorsquare{base2!50} & \colorsquare{base2!40} & \colorsquare{base2!30} & \colorsquare{base2!20} & \colorsquare{base2!10} \\
base3 & \colorsquare{base3} & \colorsquare{base3!90} & \colorsquare{base3!80} & \colorsquare{base3!70} & \colorsquare{base3!60} & \colorsquare{base3!50} & \colorsquare{base3!40} & \colorsquare{base3!30} & \colorsquare{base3!20} & \colorsquare{base3!10} \\
yellow & \colorsquare{yellow} & \colorsquare{yellow!90} & \colorsquare{yellow!80} & \colorsquare{yellow!70} & \colorsquare{yellow!60} & \colorsquare{yellow!50} & \colorsquare{yellow!40} & \colorsquare{yellow!30} & \colorsquare{yellow!20} & \colorsquare{yellow!10} \\
orange & \colorsquare{orange} & \colorsquare{orange!90} & \colorsquare{orange!80} & \colorsquare{orange!70} & \colorsquare{orange!60} & \colorsquare{orange!50} & \colorsquare{orange!40} & \colorsquare{orange!30} & \colorsquare{orange!20} & \colorsquare{orange!10} \\
red & \colorsquare{red} & \colorsquare{red!90} & \colorsquare{red!80} & \colorsquare{red!70} & \colorsquare{red!60} & \colorsquare{red!50} & \colorsquare{red!40} & \colorsquare{red!30} & \colorsquare{red!20} & \colorsquare{red!10} \\
magenta & \colorsquare{magenta} & \colorsquare{magenta!90} & \colorsquare{magenta!80} & \colorsquare{magenta!70} & \colorsquare{magenta!60} & \colorsquare{magenta!50} & \colorsquare{magenta!40} & \colorsquare{magenta!30} & \colorsquare{magenta!20} & \colorsquare{magenta!10} \\
violet & \colorsquare{violet} & \colorsquare{violet!90} & \colorsquare{violet!80} & \colorsquare{violet!70} & \colorsquare{violet!60} & \colorsquare{violet!50} & \colorsquare{violet!40} & \colorsquare{violet!30} & \colorsquare{violet!20} & \colorsquare{violet!10} \\
blue & \colorsquare{blue} & \colorsquare{blue!90} & \colorsquare{blue!80} & \colorsquare{blue!70} & \colorsquare{blue!60} & \colorsquare{blue!50} & \colorsquare{blue!40} & \colorsquare{blue!30} & \colorsquare{blue!20} & \colorsquare{blue!10} \\
cyan & \colorsquare{cyan} & \colorsquare{cyan!90} & \colorsquare{cyan!80} & \colorsquare{cyan!70} & \colorsquare{cyan!60} & \colorsquare{cyan!50} & \colorsquare{cyan!40} & \colorsquare{cyan!30} & \colorsquare{cyan!20} & \colorsquare{cyan!10} \\
green & \colorsquare{green} & \colorsquare{green!90} & \colorsquare{green!80} & \colorsquare{green!70} & \colorsquare{green!60} & \colorsquare{green!50} & \colorsquare{green!40} & \colorsquare{green!30} & \colorsquare{green!20} & \colorsquare{green!10} \\
\multicolumn{11}{r}{solarized color scheme by \href{http://ethanschoonover.com/solarized}{Ethan Schoonover}}
\end{tabular}
\solarizedPalette
\end{document}

6
src/buildings.tex Normal file
View File

@ -0,0 +1,6 @@
%% symbol library for TikZ track schematics
%
% 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.

70
src/graphSymbols.tex Normal file
View File

@ -0,0 +1,70 @@
%% symbol library for TikZ track schematics
%
% 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.
\tikzset{
pics/node/.style args={#1/#2}{
code={
\path[draw,line width=#2,fill=#1] (0,0) circle (0.1);
}
},
pics/node/.default=white/1pt,
}
\tikzset{
colon/.pic={
\path[draw,line width=1pt,fill=white] (-0.1,0) circle (0.1);
\path[draw,line width=1pt,fill=white] ( 0.1,0) circle (0.1);
};
}
\tikzset{
approach/.pic={
\path[draw, fill=white] (0,-0.1) -- ++(0.1,0.2) -- ++(-0.2,0) -- cycle; % triangle shape
};
}
\tikzset{
tee/.pic={
\path[draw, fill=black] (0,0) circle (0.05);
};
}
\tikzset{
block_start/.pic={
\path[draw, fill=white] (-0.1,-0.1) rectangle ++(0.2,0.2);
};
}
\tikzset{
block_clearing/.pic={
\path[draw, fill=white] (-0.1,-0.1) rectangle ++(0.2,0.2);
\path[draw] (-0.1,-0.1) -- ++(0.2,0.2);
};
}
\tikzset{
route_start/.pic={
\path[draw, fill=white] (0,0) circle (0.1);
};
}
\tikzset{
route_clearing/.pic={
\path [draw, fill=white] (0,0) circle (0.1);
\draw (-0.07,-0.07) -- ++(0.14,0.14);
};
}
\tikzset{
block_end/.pic={
\path[draw, fill=white] (0,-0.1) -- ++(0.1,0.1) -- ++(-0.1,0.1) -- ++(-0.1,-0.1) -- cycle;
};
}
\tikzset{
flank_protection/.pic={
\path[draw, fill=white] (0:0.1) arc (0:180:0.1) -- cycle;
};
}
\tikzset{
train_berth/.pic={
\path[draw, fill=white] (-0.1,-0.15) rectangle ++(0.2,0.3);
\path[draw, line width=0.75pt] (-0.05,-0.1) -- ++(0 ,0.2);
\path[draw, line width=0.75pt] (-0.05, 0 ) -- ++(0.1,0 );
\path[draw, line width=0.75pt] ( 0.05,-0.1) -- ++(0 ,0.2);
};
}

110
src/layoutSymbols_DE.tex Executable file
View File

@ -0,0 +1,110 @@
%% symbol library for TikZ track schematics
%
% 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.
% based on Ril 819.9002 by Deutsche Bahn released 01.05.2012
\tikzset{
distant_signal_forward/.pic={
{ % signal pole
\path[draw, line width=1pt] (0,-0.3) -- ++(0,-0.2);
\path[draw, line width=1pt] (0,-0.4) -- ++(0.5,0);
}
{ % signal marker
\path[draw, fill] (0.7,-0.6) rectangle ++(0.2,0.4);
\path[draw, fill] (0.7,-0.2) arc (90:270:0.2);
}
};
}
\tikzset{
distant_signal_backward/.pic={
{ % signal pole
\path[draw, line width=1pt] (0,0.3) -- ++(0,0.2);
\path[draw, line width=1pt] (0,0.4) -- ++(-0.5,0);
}
{ % signal marker
\path[draw, fill] (-0.7,0.6) rectangle ++(-0.2,-0.4);
\path[draw, fill] (-0.7,0.2) arc (90:270:-0.2);
}
};
}
\tikzset{
route_signal_forward/.pic={
{ % signal pole
\path[draw, line width=1pt] (0,-0.3) -- ++(0,-0.2);
\path[draw, line width=1pt] (0,-0.4) -- ++(0.7,0);
}
{ % signal marker
\path[draw, fill] (0.7,-0.6) rectangle ++(0.3,0.4);
\path[draw, fill] (1.0,-0.6) arc (90:270:-0.2);
}
};
}
\tikzset{
route_signal_backward/.pic={
{ % signal pole
\path[draw, line width=1pt] (0,0.3) -- ++(0,0.2);
\path[draw, line width=1pt] (0,0.4) -- ++(-0.7,0);
}
{ % signal marker
\path[draw, fill] (-0.7,0.6) rectangle ++(-0.3,-0.4);
\path[draw, fill] (-1.0,0.6) arc (90:270:0.2);
}
};
}
\tikzset{
route_forward/.pic={
\fill (0,-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;
};
}
% \tikzset{
% speed_signal_forward/.pic={
% \path[draw, line width=1pt] (0,0) -- ++(0,-0.4) -- ++(0.4,0); % signal pole
% \path[draw, line width=1pt] (0.4,-0.2) -- ++(0,-0.4) -- ++ (0.35,0.2) -- cycle; % signal marker
% };
% }
% \tikzset{
% speed_signal_backward/.pic={
% \path[draw, line width=1pt] (0,0) -- ++(0,0.4) -- ++(-0.4,0); % signal pole
% \path[draw, line width=1pt] (-0.4,0.2) -- ++(0,0.4) -- ++ (-0.35,-0.2) -- cycle; % signal marker
% };
% }
% \tikzset{
% shunt_signal_forward/.pic={
% \path[draw, line width=1pt] (0,0) -- ++(0,-0.4) -- ++(0.7,0); % signal pole
% \path[draw, line width=1pt] (0.6,-0.3) circle (0.1); % signal marker
% };
% }
\tikzset{
clearing_point/.pic={
\path[draw, line width=1pt] (0,-0.1) -- ++(0,0.2); % signal pole
\path[draw, line width=1pt] (0.1,0.1) -- ++(-0.2,0); % signal marker
};
}
\tikzset{
axle_counter_left/.pic={
\path[draw, line width=1pt] (-0.25,0.16) -- ++(0.5,0);
\path[draw, line width=1pt, fill] (-0.1,0.16) circle (0.07);
\path[draw, line width=1pt, fill] ( 0.1,0.16) circle (0.07);
};
}
\tikzset{
axle_counter_right/.pic={
\path[draw, line width=1pt] (-0.25,-0.16) -- ++(0.5,0);
\path[draw, line width=1pt, fill] (-0.1,-0.16) circle (0.07);
\path[draw, line width=1pt, fill] ( 0.1,-0.16) circle (0.07);
};
}
\tikzset{
derailer_right_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
};
}

36
src/solarizedColors.tex Normal file
View File

@ -0,0 +1,36 @@
% Copyright (c) 2011 Ethan Schoonover
% Permission is hereby granted, free of charge, to any person obtaining a copy
% of this software and associated documentation files (the "Software"), to deal
% in the Software without restriction, including without limitation the rights
% to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
% copies of the Software, and to permit persons to whom the Software is
% furnished to do so, subject to the following conditions:
% The above copyright notice and this permission notice shall be included in
% all copies or substantial portions of the Software.
% THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
% IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
% FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
% AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
% LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
% OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
% THE SOFTWARE.
\definecolor{solarizedBase03}{HTML}{002B36}
\definecolor{solarizedBase02}{HTML}{073642}
\definecolor{solarizedBase01}{HTML}{586e75}
\definecolor{solarizedBase00}{HTML}{657b83}
\definecolor{solarizedBase0}{HTML}{839496}
\definecolor{solarizedBase1}{HTML}{93a1a1}
\definecolor{solarizedBase2}{HTML}{EEE8D5}
\definecolor{solarizedBase3}{HTML}{FDF6E3}
\definecolor{solarizedYellow}{HTML}{B58900}
\definecolor{solarizedOrange}{HTML}{CB4B16}
\definecolor{solarizedRed}{HTML}{DC322F}
\definecolor{solarizedMagenta}{HTML}{D33682}
\definecolor{solarizedViolet}{HTML}{6C71C4}
\definecolor{solarizedBlue}{HTML}{268BD2}
\definecolor{solarizedCyan}{HTML}{2AA198}
\definecolor{solarizedGreen}{HTML}{859900}

376
src/topologySymbols.tex Normal file
View File

@ -0,0 +1,376 @@
%% symbol library for TikZ track schematics
%
% 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.
\tikzset{
train_berth_sign_forward/.pic={
\path[draw, line width=1pt] (0,0) -- ++(0,-0.4) -- ++(0.3,0); % signal pole
{ % signal marker
\path[draw, line width=1pt] (0.3,-0.575) rectangle ++(0.5,0.35);
\path[draw, line width=0.75pt] (0.375,-0.3) -- ++(0.35,0);
\path[draw, line width=0.75pt] (0.55,-0.5) -- ++(0,0.2);
\path[draw, line width=0.75pt] (0.375,-0.5) -- ++(0.35,0);
}
};
}
\tikzset{
train_berth_sign_backward/.pic={
\path[draw, line width=1pt] (0,0) -- ++(0,0.4) -- ++(-0.3,0); % signal pole
{ % signal marker
\path[draw, line width=1pt] (-0.3,0.575) rectangle ++(-0.5,-0.35);
\path[draw, line width=0.75pt] (-0.375,0.3) -- ++(-0.35,0);
\path[draw, line width=0.75pt] (-0.55,0.5) -- ++(0,-0.2);
\path[draw, line width=0.75pt] (-0.375,0.5) -- ++(-0.35,0);
}
};
}
\tikzset{
pics/train_berth_shape/.style n args={1}{
code={
\path[draw,line width=0.75pt,dotted] (0, 0.25) -- (0, 0.35) -- (#1, 0.35) -- ++(0,-0.1); % berth shape
\path[draw,line width=0.75pt,dotted] (0,-0.25) -- (0,-0.35) -- (#1,-0.35) -- ++(0, 0.1); % berth shape
}
},
pics/train_berth_shape/.default=4,
}
\tikzset{
pics/platform_left/.style n args={1}{
code={
\path[draw, line width=0.75pt] (0,0.5) -- ++(0,-0.3) -- ++(#1,0) -- ++(0,0.3);
\path[draw, line width=0.75pt] (0,0.3) -- ++(#1,0);
}
},
pics/platform_left/.default=4,
}
\tikzset{
pics/platform_right/.style n args={1}{
code={
\path[draw, line width=0.75pt] (0,-0.5) -- ++(0,0.3) -- ++(#1,0) -- ++(0,-0.3);
\path[draw, line width=0.75pt] (0,-0.3) -- ++(#1,0);
}
},
pics/platform_right/.default=4,
}
\tikzset{
view_point_forward/.pic={
\path[draw,<-,>=latex,line width=1pt] (0,-0.1) -- ++(0,-0.3) -- ++(0.2,0); % arrow
{ % eye
\filldraw (0.4,-0.4) circle (0.1);
\path[draw, line width=1pt]
(0.4,-0.15) .. controls (0.25,-0.25) and (0.25,-0.55) .. (0.4,-0.65) .. controls (0.55,-0.55) and (0.55,-0.25) .. (0.4,-0.15)--cycle;
}
};
}
\tikzset{
view_point_backward/.pic={
\tikzset{>=latex}
\path[draw,<-,>=latex,line width=1pt] (0,0.1) -- ++(0,0.3) -- ++(-0.2,0); % arrow
{ % eye
\filldraw (-0.4,0.4) circle (0.1);
\path[draw, line width=1pt]
(-0.4,0.15) .. controls (-0.25,0.25) and (-0.25,0.55) .. (-0.4,0.65) .. controls (-0.55,0.55) and (-0.55,0.25) .. (-0.4,0.15)--cycle;
}
};
}
\tikzset{
pics/distant_signal_forward/.style args={#1}{
code={
\path[draw, line width=1pt] (0,0) -- ++(0,-0.4) -- ++(0.4,0); % signal pole
\path[draw, line width=1pt] (0.7,-0.6) -- ++(0,0.4) -- ++ (-0.35,-0.2) -- cycle; % signal marker
\node[rotate=-90,font=\sffamily] at (0.9,-0.4) {#1}; % speed indicator
}
},
pics/node/.default=,
}
\tikzset{
pics/distant_signal_backward/.style args={#1}{
code={
\path[draw, line width=1pt] (0,0) -- ++(0,0.4) -- ++(-0.4,0); % signal pole
\path[draw, line width=1pt] (-0.7,0.6) -- ++(0,-0.4) -- ++ (0.35,0.2) -- cycle; % signal marker
\node[rotate=90,font=\sffamily] at (-0.9,0.4) {#1}; % speed indicator
}
},
pics/node/.default=,
}
\tikzset{
pics/speed_signal_forward/.style args={#1}{
code={
\path[draw, line width=1pt] (0,0) -- ++(0,-0.4) -- ++(0.4,0); % signal pole
\path[draw, line width=1pt] (0.4,-0.2) -- ++(0,-0.4) -- ++ (0.35,0.2) -- cycle; % signal marker
\node[rotate=-90,font=\sffamily] at (0.9,-0.4) {#1}; % speed indicator
}
},
pics/node/.default=,
}
\tikzset{
pics/speed_signal_backward/.style args={#1}{
code={
\path[draw, line width=1pt] (0,0) -- ++(0,0.4) -- ++(-0.4,0); % signal pole
\path[draw, line width=1pt] (-0.4,0.2) -- ++(0,0.4) -- ++ (-0.35,-0.2) -- cycle; % signal marker
\node[rotate=90,font=\sffamily] at (-0.9,0.4) {#1}; % speed indicator
}
},
pics/node/.default=,
}
\tikzset{
pics/block_signal_forward/.style args={#1}{
code={
\path[draw, line width=1pt] (0,0) -- ++(0,-0.4) -- ++(0.7,0); % signal pole
\path[draw, line width=1pt] (0.7,-0.6) rectangle ++(0.4,0.4); % signal marker
\node[rotate=-90,font=\sffamily] at (1.2,-0.4) {#1}; % speed indicator
}
},
pics/node/.default=,
}
\tikzset{
pics/block_signal_backward/.style args={#1}{
code={
\path[draw, line width=1pt] (0,0) -- ++(0,0.4) -- ++(-0.7,0); % signal pole
\path[draw, line width=1pt] (-0.7,0.6) rectangle ++(-0.4,-0.4); % signal marker
\node[rotate=90,font=\sffamily] at (-1.2,0.4) {#1}; % speed indicator
}
},
pics/node/.default=,
}
\tikzset{
pics/route_signal_forward/.style args={#1}{
code={
\path[draw, line width=1pt] (0,0) -- ++(0,-0.4) -- ++(0.7,0); % signal pole
\path[draw, line width=1pt] (0.9,-0.4) circle (0.2); % signal marker
\node[rotate=-90,font=\sffamily] at (1.2,-0.4) {#1}; % speed indicator
}
},
pics/node/.default=,
}
\tikzset{
pics/route_signal_backward/.style args={#1}{
code={
\path[draw, line width=1pt] (0,0) -- ++(0,0.4) -- ++(-0.7,0); % signal pole
\path[draw, line width=1pt] (-0.9,0.4) circle (0.2); % signal marker
\node[rotate=90,font=\sffamily] at (-1.2,0.4) {#1}; % speed indicator
}
},
pics/node/.default=,
}
\tikzset{
shunt_signal_forward/.pic={
\path[draw, line width=1pt] (0,0) -- ++(0,-0.4) -- ++(0.7,0); % signal pole
\path[draw, line width=1pt] (0.6,-0.3) circle (0.1); % signal marker
};
}
\tikzset{
shunt_signal_backward/.pic={
\path[draw, line width=1pt] (0,0) -- ++(0,0.4) -- ++(-0.7,0); % signal pole
\path[draw, line width=1pt] (-0.6,0.3) circle (0.1); % signal marker
};
}
\tikzset{
shunt_limit_forward/.pic={
\path[draw, line width=1pt] (0,0) -- ++(0,-0.4) -- ++(0.5,0); % signal pole
\path[draw, line width=1pt] (0.5,-0.25) arc (270:90:-0.15) -- cycle;; % signal marker
};
}
\tikzset{
shunt_limit_backward/.pic={
\path[draw, line width=1pt] (0,0) -- ++(0,0.4) -- ++(-0.5,0); % signal pole
\path[draw, line width=1pt] (-0.5,0.55) arc (90:270:0.15) -- cycle;; % signal marker
};
}
\tikzset{
block_end_marker_forward/.pic={
\path[draw, line width=1pt] (0,0) -- ++(0,-0.4); % marker
\path[draw, line width=1pt] (0,-0.4) -- ++(-0.1,-0.1) -- ++(0.1,-0.1) -- ++(0.1,0.1) -- cycle; % sign
};
}
\tikzset{
block_end_marker_backward/.pic={
\path[draw, line width=1pt] (0,0) -- ++(0,0.4); % marker
\path[draw, line width=1pt] (0,0.4) -- ++(0.1,0.1) -- ++(-0.1,0.1) -- ++(-0.1,-0.1) -- cycle; % sign
};
}
\tikzset{
block_clearing_point_forward/.pic={
\path[draw, line width=1pt] (0,0.1) -- ++(0,-0.2); % marker
\path[draw, line width=1pt] (-0.1,-0.3) rectangle ++(0.2,0.2); % sign
};
}
\tikzset{
block_clearing_point_backward/.pic={
\path[draw, line width=1pt] (0,-0.1) -- ++(0,0.2); % marker
\path[draw, line width=1pt] (0.1,0.3) rectangle ++(-0.2,-0.2); % sign
};
}
\tikzset{
route_clearing_point_forward/.pic={
\path[draw, line width=1pt] (0,0.1) -- ++(0,-0.2); % marker
\path[draw, line width=1pt] (0,-0.2) circle (0.1); % sign
};
}
\tikzset{
route_clearing_point_backward/.pic={
\path[draw, line width=1pt] (0,-0.1) -- ++(0,0.2); % marker
\path[draw, line width=1pt] (0, 0.2) circle (0.1); % sign
};
}
\tikzset{
clearing_point/.pic={
\path[draw, line width=1pt] (0 ,-0.1) -- ++( 0 ,0.2); % marker
\path[draw, line width=1pt] (0.1, 0.1) -- ++(-0.2,0 ); % sign
};
}
\tikzset{
pics/turnout_left_forward/.style args={#1}{
code={
\path[draw,line width=1pt,fill=#1] (0,0) -- ++(0.4,0.4) -- ++(0,-0.4); % turnout marker
}
},
pics/turnout_left_forward/.default=black,
}
\tikzset{
pics/turnout_left_backward/.style args={#1}{
code={
\path[draw,line width=1pt,fill=#1] (0,0) -- ++(-0.4,-0.4) -- ++(0,0.4); % turnout marker
}
},
pics/turnout_left_forward/.default=black,
}
\tikzset{
pics/turnout_right_forward/.style args={#1}{
code={
\path[draw,line width=1pt,fill=#1] (0,0) -- ++(0.4,-0.4) -- ++(0,0.4); % turnout marker
}
},
pics/turnout_left_forward/.default=black,
}
\tikzset{
pics/turnout_right_backward/.style args={#1}{
code={
\path[draw,line width=1pt,fill=#1] (0,0) -- ++(-0.4,0.4) -- ++(0,-0.4); % turnout marker
}
},
pics/turnout_left_forward/.default=black,
}
\tikzset{
fouling_point_right_backward/.pic={
\path[draw,line width=0.75pt] (-0.7,0) -- ++(0,0.7); % fouling point indicator
};
}
\tikzset{
fouling_point_left_backward/.pic={
\path[draw,line width=0.75pt] (-0.7,0) -- ++(0,-0.7); % fouling point indicator
};
}
\tikzset{
fouling_point_right_forward/.pic={
\path[draw,line width=0.75pt] (0.7,0) -- ++(0,-0.7); % fouling point indicator
};
}
\tikzset{
fouling_point_left_forward/.pic={
\path[draw,line width=0.75pt] (0.7,0) -- ++(0,0.7); % fouling point indicator
};
}
\tikzset{
slip_left_forward/.pic={
\path[draw,line width=0.75pt] (-0.4,0.1) -- (0.3,0.4); % fouling point indicator
};
}
\tikzset{
slip_left_backward/.pic={
\path[draw,line width=0.75pt] (-0.3,-0.4) -- (0.4,-0.1); % fouling point indicator
};
}
\tikzset{
slip_right_forward/.pic={
\path[draw,line width=0.75pt] (-0.4,-0.1) -- (0.3,-0.4); % fouling point indicator
};
}
\tikzset{
slip_right_backward/.pic={
\path[draw,line width=0.75pt] (0.4,0.1) -- (-0.3,0.4); % fouling point indicator
};
}
\tikzset{
derailer_right_forward/.pic={
\path[draw, line width=1pt] (0,0.2) -- ++(0,-0.4); % derailer marker
\path[draw,->,>=latex,line width=1pt,dashed] (0,0) -- ++(0.4,-0.4); % derailer arrow
};
}
\tikzset{
derailer_right_backward/.pic={
\path[draw, line width=1pt] (0,0.2) -- ++(0,-0.4); % derailer marker
\path[draw,->,>=latex,line width=1pt,dashed] (0,0) -- ++(-0.4,0.4); % derailer arrow
};
}
\tikzset{
derailer_left_forward/.pic={
\path[draw, line width=1pt] (0,0.2) -- ++(0,-0.4); % derailer marker
\path[draw,->,>=latex,line width=1pt,dashed] (0,0) -- ++(0.4,0.4); % derailer arrow
};
}
\tikzset{
derailer_left_backward/.pic={
\path[draw, line width=1pt] (0,0.2) -- ++(0,-0.4); % derailer marker
\path[draw,->,>=latex,line width=1pt,dashed] (0,0) -- ++(-0.4,-0.4); % derailer arrow
};
}
\tikzset{
bufferstop_forward/.pic={
\path[draw, line width=1pt] (-0.1,0.2) -- ++(0.1,0) -- ++(0,-0.4) -- ++ (-0.1,0); % bufferstop marker
};
}
\tikzset{
bufferstop_backward/.pic={
\path[draw, line width=1pt] (0.1,0.2) -- ++(-0.1,0) -- ++(0,-0.4) -- ++ (0.1,0); % bufferstop marker
};
}
\tikzset{
level_crossing_barrier_left/.pic={
{ % road
\path[draw, line width=1pt] (-0.2, 0.8) -- ++(0,-0.6);
\path[draw, line width=1pt] ( 0.2, 0.8) -- ++(0,-0.6);
}
{ % barrier
\filldraw (-0.4,0.5) circle (0.05);
\path[draw, line width=1pt] (-0.4,0.5) -- ++(0.39,0);
}
};
}
\tikzset{
level_crossing_barrier_right/.pic={
{ % road
\path[draw, line width=1pt] (-0.2,-0.8) -- ++(0, 0.6);
\path[draw, line width=1pt] ( 0.2,-0.8) -- ++(0, 0.6);
}
{ % barrier
\filldraw (0.4,-0.5) circle (0.05);
\path[draw, line width=1pt] (0.4,-0.5) -- ++(-0.39,0);
}
};
}
\tikzset{
level_crossing/.pic={
{ % road
\path[draw, line width=1pt] (-0.2,-0.8) -- ++(0, 0.6);
\path[draw, line width=1pt] ( 0.2,-0.8) -- ++(0, 0.6);
}
};
}
\tikzset{
pics/bridge_left/.style n args={1}{
code={
\path[draw, line width=0.75pt] (-0.1,0.48) -- ++(0.08,-0.08) -- ++(#1,0) -- ++(0.08,0.08);
}
},
pics/bridge_left/.default=3,
}
\tikzset{
pics/bridge_right/.style n args={1}{
code={
\path[draw, line width=0.75pt] (-0.1,-0.48) -- ++(0.08,0.08) -- ++(#1,0) -- ++(0.08,-0.08);
}
},
pics/bridge_right/.default=3,
}

51
src/vehicles.tex Normal file
View File

@ -0,0 +1,51 @@
%% symbol library for TikZ track schematics
%
% 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.
\tikzset{
pics/train/.style n args={1}{
code={
\path[draw, line width=1pt, fill=white] (0,-0.3) -- ++(#1,0) -- ++(0,0.6) -- ++(-#1,0) -- cycle; % train shape
% \node at (-2,0) {\emph{#1}}; %label of train
}
},
pics/train/.default=4,
}
\tikzset{
pics/train_moving_forward/.style n 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{#1}}; %label of train
}
},
pics/train_moving_forward/.default=4,
}
\tikzset{
pics/train_moving_backward/.style n 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{#1}}; %label of train
}
},
pics/train_moving_backward/.default=4,
}
\tikzset{
pics/ghost_train_moving_forward/.style n 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{#1}}; %label of train
}
},
pics/ghost_train_moving_forward/.default=4,
}
\tikzset{
pics/ghost_train_moving_backward/.style n 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{#1}}; %label of train
}
},
pics/ghost_train_moving_backward/.default=4,
}