From 790af4100b9cd86afe0ef943d59dd6a3837f4c2d Mon Sep 17 00:00:00 2001 From: martin Date: Sun, 21 Jul 2019 19:28:30 +0200 Subject: [PATCH] added document for symbology, renamed overview to snippets, reworked library for common tikz library layout --- README.md | 55 +++- examples/network.tex | 10 +- examples/network.tikz | 2 +- examples/station_berg.tex | 14 +- examples/station_chamstadt.tex | 14 +- examples/station_okerbach.tex | 10 +- examples/station_okerbach.tikz | 2 +- examples/station_pockelsdorf.tex | 10 +- examples/station_pockelsdorf.tikz | 2 +- examples/station_rebenau.tex | 10 +- examples/station_rebenau.tikz | 2 +- examples/station_schleinitz.tex | 10 +- examples/station_schleinitz.tikz | 2 +- overview.pdf | Bin 72826 -> 0 bytes overview.tex | 273 ----------------- snippets.pdf | Bin 0 -> 81660 bytes snippets.tex | 279 ++++++++++++++++++ snippets/block_clearing_point_backward.tikz | 4 +- snippets/block_clearing_point_forward.tikz | 4 +- snippets/block_end_marker_backward.tikz | 4 +- snippets/block_end_marker_forward.tikz | 4 +- snippets/block_signal_backward.tikz | 6 +- snippets/block_signal_forward.tikz | 7 +- snippets/bridge.tikz | 4 +- snippets/bridge_track_beneath.tikz | 4 +- snippets/bufferstop_backward.tikz | 4 +- snippets/bufferstop_forward.tikz | 4 +- snippets/clearing_point.tikz | 4 +- snippets/combined_signal_forward.tikz | 4 +- snippets/derailer_left_backward.tikz | 4 +- snippets/derailer_left_forward.tikz | 4 +- snippets/derailer_right_backward.tikz | 4 +- snippets/derailer_right_forward.tikz | 4 +- snippets/diamond_crossing_left.tikz | 4 +- snippets/diamond_crossing_right.tikz | 4 +- snippets/distant_signal_backward.tikz | 4 +- snippets/distant_signal_forward.tikz | 4 +- snippets/distant_speed_signal_backward.tikz | 4 +- snippets/distant_speed_signal_forward.tikz | 4 +- snippets/double-slip_turnout_left.tikz | 4 +- snippets/double-slip_turnout_right.tikz | 4 +- snippets/ghost_train_direction_backward.tikz | 4 +- snippets/ghost_train_direction_forward.tikz | 4 +- snippets/hump.tikz | 4 +- snippets/interlocking.tikz | 4 +- snippets/level_crossing_double.tikz | 4 +- .../level_crossing_double_full_closure.tikz | 4 +- snippets/level_crossing_single.tikz | 4 +- snippets/main_line.tikz | 4 +- snippets/main_track.tikz | 4 +- snippets/platform_left.tikz | 4 +- snippets/platform_middle.tikz | 4 +- snippets/platform_right.tikz | 4 +- snippets/route_clearing_point_backward.tikz | 4 +- snippets/route_clearing_point_forward.tikz | 4 +- snippets/route_signal_backward.tikz | 6 +- snippets/route_signal_forward.tikz | 7 +- snippets/shunt_limit_backward.tikz | 4 +- snippets/shunt_limit_forward.tikz | 4 +- snippets/shunt_signal_backward.tikz | 4 +- snippets/shunt_signal_backward_locked.tikz | 4 +- snippets/shunt_signal_forward.tikz | 4 +- snippets/shunt_signal_forward_locked.tikz | 4 +- snippets/side_track.tikz | 4 +- snippets/speed_signal_backward.tikz | 4 +- snippets/speed_signal_forward.tikz | 4 +- snippets/track_distance.tikz | 4 +- snippets/track_number.tikz | 4 +- snippets/train_berth.tikz | 4 +- snippets/train_berth_shape.tikz | 7 +- snippets/train_berth_shape_bidirectional.tikz | 4 +- snippets/train_berth_shape_different.tikz | 9 + snippets/train_berth_sign_backward.tikz | 4 +- snippets/train_berth_sign_forward.tikz | 4 +- snippets/train_direction_backward.tikz | 4 +- snippets/train_direction_forward.tikz | 4 +- snippets/train_drive_automatic.tikz | 4 +- snippets/train_drive_human.tikz | 4 +- snippets/train_moving_backward.tikz | 4 +- snippets/train_moving_fast_backward.tikz | 4 +- snippets/train_moving_fast_forward.tikz | 4 +- snippets/train_moving_forward.tikz | 4 +- snippets/train_moving_slow_backward.tikz | 4 +- snippets/train_moving_slow_forward.tikz | 4 +- snippets/train_shunt_mode_backward.tikz | 4 +- snippets/train_shunt_mode_forward.tikz | 4 +- snippets/train_shunting_backward.tikz | 4 +- snippets/train_shunting_forward.tikz | 4 +- snippets/transmitter.tikz | 4 +- snippets/transmitter_backward.tikz | 4 +- snippets/transmitter_below.tikz | 8 + snippets/transmitter_below_bidirectional.tikz | 8 + snippets/transmitter_below_forward.tikz | 8 + snippets/transmitter_below_with_signal.tikz | 4 +- snippets/transmitter_bidirectional.tikz | 4 +- snippets/transmitter_forward.tikz | 4 +- snippets/turnout_left_backward.tikz | 4 +- .../turnout_left_backward_left_position.tikz | 4 +- .../turnout_left_backward_moving_points.tikz | 4 +- .../turnout_left_backward_right_position.tikz | 4 +- snippets/turnout_left_forward.tikz | 4 +- .../turnout_left_forward_left_position.tikz | 4 +- .../turnout_left_forward_moving_points.tikz | 4 +- .../turnout_left_forward_right_position.tikz | 4 +- snippets/turnout_right_backward.tikz | 4 +- .../turnout_right_backward_left_position.tikz | 4 +- .../turnout_right_backward_moving_points.tikz | 4 +- ...turnout_right_backward_right_position.tikz | 4 +- snippets/turnout_right_forward.tikz | 4 +- .../turnout_right_forward_left_position.tikz | 4 +- .../turnout_right_forward_moving_points.tikz | 4 +- .../turnout_right_forward_right_position.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 +- snippets/vehicle.tikz | 4 +- snippets/vehicles.tikz | 7 +- snippets/vehicles_with_label.tikz | 9 + snippets/view_point_backward.tikz | 4 +- snippets/view_point_forward.tikz | 4 +- src/tikzlibrarytrackschematic.code.tex | 6 +- ...brarytrackschematic.constructions.code.tex | 24 +- ...ikzlibrarytrackschematic.topology.code.tex | 58 +++- ...rarytrackschematic.trafficcontrol.code.tex | 83 ++++-- ...ikzlibrarytrackschematic.vehicles.code.tex | 58 ++-- symbology.pdf | Bin 0 -> 41710 bytes symbology.tex | 148 ++++++++++ 128 files changed, 929 insertions(+), 597 deletions(-) delete mode 100644 overview.pdf delete mode 100644 overview.tex create mode 100644 snippets.pdf create mode 100644 snippets.tex create mode 100644 snippets/train_berth_shape_different.tikz create mode 100644 snippets/transmitter_below.tikz create mode 100644 snippets/transmitter_below_bidirectional.tikz create mode 100644 snippets/transmitter_below_forward.tikz create mode 100644 snippets/vehicles_with_label.tikz create mode 100644 symbology.pdf create mode 100644 symbology.tex diff --git a/README.md b/README.md index 1ea09aa..89de0a9 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,37 @@ -tikz-trackschematic -====== +# installation -Version 0.3 ------- +todo + +# Usage + +```TeX +\documentclass[tikz]{standalone} +\usetikzlibrary{trackschematic} +\begin{document} + + \begin{tikzpicture} + \coordinate (A) at (0,0); + \coordinate (B) at (6,0); + + \coordinate (T) at (5,0); + + \draw[MainTrack] (A) -- (B); + \pic at (T) {train_moving_forward}; + \end{tikzpicture} + +\end{document} +``` + +------------ +# History + +## Version 0.4 + + * added document for symbology + * renamed overview to snippets + * reworked library for common tikz library layout + +## Version 0.3 * moved snippet folder to root folder * added shunting movements @@ -11,22 +40,20 @@ Version 0.3 * defined and used color foreground and background -Version 0.2 ------- +## Version 0.2 * added transmitters * reorganized src library * minor improvements -Version 0.1 ------- +## Version 0.1 Basic concept of a library with railway topology symbols and some examples. -Roadmap ------- +------------ +# Roadmap -* encapsulation of symbols in package for tex infrastructure -* provide option for internationalziation (i18n) -* write usefull documentation -* re-think syntax \ No newline at end of file + * encapsulation of symbols in package for tex infrastructure + * provide option for internationalziation (i18n) + * write usefull documentation + * re-think syntax \ No newline at end of file diff --git a/examples/network.tex b/examples/network.tex index 8a2c085..9fc0ae2 100644 --- a/examples/network.tex +++ b/examples/network.tex @@ -1,6 +1,6 @@ %!TEX TS-program = pdflatexmk -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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} @@ -9,10 +9,10 @@ \usepackage[prefix=]{xcolor-solarized} \def\rootTrackschematic{../../tikz-trackschematic} -\def\srcTrackschematic{\rootTrackschematic/src} -\input{\srcTrackschematic/topology.tikz} -\input{\srcTrackschematic/trafficControl.tikz} -\input{\srcTrackschematic/constructions.tikz} +\def\srcTrackschematic{\rootTrackschematic/src/tikzlibrarytrackschematic} +\input{\srcTrackschematic.topology.code.tex} +\input{\srcTrackschematic.trafficcontrol.code.tex} +\input{\srcTrackschematic.constructions.code.tex} \begin{document} \begin{tikzpicture}[font=\sffamily] diff --git a/examples/network.tikz b/examples/network.tikz index a843f35..e896caa 100644 --- a/examples/network.tikz +++ b/examples/network.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk %!TEX root = network.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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. \begin{scope}[shift={(-60,0)}] diff --git a/examples/station_berg.tex b/examples/station_berg.tex index 69ecb73..50795b1 100644 --- a/examples/station_berg.tex +++ b/examples/station_berg.tex @@ -1,6 +1,6 @@ %!TEX TS-program = pdflatexmk -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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} @@ -9,12 +9,12 @@ \usepackage[prefix=]{xcolor-solarized} \def\rootTrackschematic{../../tikz-trackschematic} -\def\srcTrackschematic{\rootTrackschematic/src} -\input{\srcTrackschematic/topology.tikz} -\input{\srcTrackschematic/constructions.tikz} -\input{\srcTrackschematic/vehicles.tikz} -\input{\srcTrackschematic/trafficControl.tikz} % Order 1 -\input{\srcTrackschematic/layoutSymbols_DE.tikz} % Order 2 (important) +\def\srcTrackschematic{\rootTrackschematic/src/tikzlibrarytrackschematic} +\input{\srcTrackschematic.topology.code.tex} +\input{\srcTrackschematic.vehicles.code.tex} +\input{\srcTrackschematic.constructions.code.tex} +\input{\srcTrackschematic.trafficcontrol.code.tex}% Order 1 +\input{\rootTrackschematic/src/layoutSymbols_DE.tikz} % Order 2 (important) \begin{document} \begin{tikzpicture}[font=\sffamily] diff --git a/examples/station_chamstadt.tex b/examples/station_chamstadt.tex index b71d821..81af5cd 100644 --- a/examples/station_chamstadt.tex +++ b/examples/station_chamstadt.tex @@ -1,6 +1,6 @@ %!TEX TS-program = pdflatexmk -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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} @@ -9,12 +9,12 @@ \usepackage[prefix=]{xcolor-solarized} \def\rootTrackschematic{../../tikz-trackschematic} -\def\srcTrackschematic{\rootTrackschematic/src} -\input{\srcTrackschematic/topology.tikz} -\input{\srcTrackschematic/constructions.tikz} -\input{\srcTrackschematic/vehicles.tikz} -\input{\srcTrackschematic/trafficControl.tikz} % Order 1 -\input{\srcTrackschematic/layoutSymbols_DE.tikz} % Order 2 (important) +\def\srcTrackschematic{\rootTrackschematic/src/tikzlibrarytrackschematic} +\input{\srcTrackschematic.topology.code.tex} +\input{\srcTrackschematic.vehicles.code.tex} +\input{\srcTrackschematic.constructions.code.tex} +\input{\srcTrackschematic.trafficcontrol.code.tex}% Order 1 +\input{\rootTrackschematic/src/layoutSymbols_DE.tikz} % Order 2 (important) \begin{document} \begin{tikzpicture}[font=\sffamily] diff --git a/examples/station_okerbach.tex b/examples/station_okerbach.tex index 9056c98..a3eb97d 100644 --- a/examples/station_okerbach.tex +++ b/examples/station_okerbach.tex @@ -1,6 +1,6 @@ %!TEX TS-program = pdflatexmk -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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} @@ -9,10 +9,10 @@ \usepackage[prefix=]{xcolor-solarized} \def\rootTrackschematic{../../tikz-trackschematic} -\def\srcTrackschematic{\rootTrackschematic/src} -\input{\srcTrackschematic/topology.tikz} -\input{\srcTrackschematic/trafficControl.tikz} -\input{\srcTrackschematic/constructions.tikz} +\def\srcTrackschematic{\rootTrackschematic/src/tikzlibrarytrackschematic} +\input{\srcTrackschematic.topology.code.tex} +\input{\srcTrackschematic.trafficcontrol.code.tex} +\input{\srcTrackschematic.constructions.code.tex} \begin{document} \begin{tikzpicture}[font=\sffamily] diff --git a/examples/station_okerbach.tikz b/examples/station_okerbach.tikz index f75efc3..ff6f67d 100644 --- a/examples/station_okerbach.tikz +++ b/examples/station_okerbach.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk %!TEX root = station_okerbach.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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. %% coordinates diff --git a/examples/station_pockelsdorf.tex b/examples/station_pockelsdorf.tex index aa957e1..527faca 100644 --- a/examples/station_pockelsdorf.tex +++ b/examples/station_pockelsdorf.tex @@ -1,6 +1,6 @@ %!TEX TS-program = pdflatexmk -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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} @@ -9,10 +9,10 @@ \usepackage[prefix=]{xcolor-solarized} \def\rootTrackschematic{../../tikz-trackschematic} -\def\srcTrackschematic{\rootTrackschematic/src} -\input{\srcTrackschematic/topology.tikz} -\input{\srcTrackschematic/trafficControl.tikz} -\input{\srcTrackschematic/constructions.tikz} +\def\srcTrackschematic{\rootTrackschematic/src/tikzlibrarytrackschematic} +\input{\srcTrackschematic.topology.code.tex} +\input{\srcTrackschematic.trafficcontrol.code.tex} +\input{\srcTrackschematic.constructions.code.tex} \begin{document} \begin{tikzpicture}[font=\sffamily] diff --git a/examples/station_pockelsdorf.tikz b/examples/station_pockelsdorf.tikz index 3842f88..0fd4ae1 100644 --- a/examples/station_pockelsdorf.tikz +++ b/examples/station_pockelsdorf.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk %!TEX root = station_pockelsdorf.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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. %% coordinates diff --git a/examples/station_rebenau.tex b/examples/station_rebenau.tex index 74969bc..767c9ac 100644 --- a/examples/station_rebenau.tex +++ b/examples/station_rebenau.tex @@ -1,6 +1,6 @@ %!TEX TS-program = pdflatexmk -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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} @@ -9,10 +9,10 @@ \usepackage[prefix=]{xcolor-solarized} \def\rootTrackschematic{../../tikz-trackschematic} -\def\srcTrackschematic{\rootTrackschematic/src} -\input{\srcTrackschematic/topology.tikz} -\input{\srcTrackschematic/trafficControl.tikz} -\input{\srcTrackschematic/constructions.tikz} +\def\srcTrackschematic{\rootTrackschematic/src/tikzlibrarytrackschematic} +\input{\srcTrackschematic.topology.code.tex} +\input{\srcTrackschematic.trafficcontrol.code.tex} +\input{\srcTrackschematic.constructions.code.tex} \begin{document} \begin{tikzpicture}[font=\sffamily] diff --git a/examples/station_rebenau.tikz b/examples/station_rebenau.tikz index fd73e5e..85c784d 100644 --- a/examples/station_rebenau.tikz +++ b/examples/station_rebenau.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk %!TEX root = station_rebenau.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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. %% coordinates diff --git a/examples/station_schleinitz.tex b/examples/station_schleinitz.tex index 79ef126..ecc2686 100644 --- a/examples/station_schleinitz.tex +++ b/examples/station_schleinitz.tex @@ -1,6 +1,6 @@ %!TEX TS-program = pdflatexmk -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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} @@ -9,10 +9,10 @@ \usepackage[prefix=]{xcolor-solarized} \def\rootTrackschematic{../../tikz-trackschematic} -\def\srcTrackschematic{\rootTrackschematic/src} -\input{\srcTrackschematic/topology.tikz} -\input{\srcTrackschematic/trafficControl.tikz} -\input{\srcTrackschematic/constructions.tikz} +\def\srcTrackschematic{\rootTrackschematic/src/tikzlibrarytrackschematic} +\input{\srcTrackschematic.topology.code.tex} +\input{\srcTrackschematic.trafficcontrol.code.tex} +\input{\srcTrackschematic.constructions.code.tex} \begin{document} \begin{tikzpicture}[font=\sffamily] diff --git a/examples/station_schleinitz.tikz b/examples/station_schleinitz.tikz index 5d8bc0f..5a690cb 100644 --- a/examples/station_schleinitz.tikz +++ b/examples/station_schleinitz.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk %!TEX root = station_schleinitz.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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. %% coordinates diff --git a/overview.pdf b/overview.pdf deleted file mode 100644 index 482ccbc4b1a1215aa159cc17afd0bd811e5b1246..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 72826 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 Kl8VTQ!u%idFv&3h literal 0 HcmV?d00001 diff --git a/snippets.tex b/snippets.tex new file mode 100644 index 0000000..25d730d --- /dev/null +++ b/snippets.tex @@ -0,0 +1,279 @@ +%!TEX TS-program = pdflatexmk + +% Copyright 2019 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[margin=0pt]{geometry} +\pagestyle{empty} +\usepackage{longtable,siunitx,tikz,adjustbox} +\usepackage{listings} +\lstset{ + language=TeX, + basicstyle=\ttfamily, + columns=fullflexible, + breaklines=true +} + +\def\rootTrackschematic{../tikz-trackschematic} + +\renewcommand{\symbol}[1]{ + \adjustbox{valign=c}{\begin{tikzpicture}[scale=1.0,transform shape] + \input{\rootTrackschematic/snippets/#1} + \path (-3,-1.1) rectangle (3,1.1); % background rectangle to unify every cell containing a symbol + \end{tikzpicture}} +} +\newcommand{\code}[1]{\lstinputlisting[firstline=7]{\rootTrackschematic/snippets/#1}} +\newcounter{symbolNo} +\def\No{\stepcounter{symbolNo}\arabic{symbolNo}} + +\def\srcTrackschematic{\rootTrackschematic/src/tikzlibrarytrackschematic} +\input{\srcTrackschematic.topology.code.tex} +\input{\srcTrackschematic.trafficcontrol.code.tex} +\input{\srcTrackschematic.vehicles.code.tex} +\input{\srcTrackschematic.constructions.code.tex} + +\title{Snippets}\author{}\date{} + +\begin{document} + \maketitle + \centering + \begin{longtable}{|r|l|c|l|c|} + \hline + No. & Name & Symbol & Code & Sub library \\ + \endhead + \hline + \No & main track & \symbol{main_track.tikz} & \code{main_track.tikz} & \texttt{topology} \\ + \hline + \No & main line (double track) & \symbol{main_line.tikz} & \code{main_line.tikz} & \texttt{topology} \\ + \hline + \No & track distance (in \si{\metre}) & \symbol{track_distance.tikz} & \code{track_distance.tikz} & \texttt{topology} \\ + \hline + \No & side track & \symbol{side_track.tikz} & \code{side_track.tikz} & \texttt{topology} \\ + \hline + \No & track number & \symbol{track_number.tikz} & \code{track_number.tikz} & \texttt{topology} \\ + \hline + \No & turnout left (forward) & \symbol{turnout_left_forward.tikz} & \code{turnout_left_forward.tikz} & \texttt{topology} \\ + \hline + \No & turnout left (backward) & \symbol{turnout_left_backward.tikz} & \code{turnout_left_backward.tikz} & \texttt{topology} \\ + \hline + \No & turnout right (forward) & \symbol{turnout_right_forward.tikz} & \code{turnout_right_forward.tikz} & \texttt{topology} \\ + \hline + \No & turnout right (backward) & \symbol{turnout_right_backward.tikz} & \code{turnout_right_backward.tikz} & \texttt{topology} \\ + \hline + \No & \parbox[c]{5cm}{turnout left (forward)\\with fouling point indicator} + & \symbol{turnout_with_fouling_left_forward.tikz} & \code{turnout_with_fouling_left_forward.tikz} & \texttt{topology} \\ + \hline + \No & \parbox[c]{5cm}{turnout left (backward)\\with fouling point indicator} + & \symbol{turnout_with_fouling_left_backward.tikz} & \code{turnout_with_fouling_left_backward.tikz} & \texttt{topology} \\ + \hline + \No & \parbox[c]{5cm}{turnout right (forward)\\with fouling point indicator} + & \symbol{turnout_with_fouling_right_forward.tikz} & \code{turnout_with_fouling_right_forward.tikz} & \texttt{topology} \\ + \hline + \No & \parbox[c]{5cm}{turnout right (backward)\\with fouling point indicator} + & \symbol{turnout_with_fouling_right_backward.tikz} & \code{turnout_with_fouling_right_backward.tikz} & \texttt{topology} \\ + \hline + \No & double-slip turnout left & \symbol{double-slip_turnout_left.tikz} & \code{double-slip_turnout_left.tikz} & \texttt{topology} \\ + \hline + \No & double-slip turnout right & \symbol{double-slip_turnout_right.tikz} & \code{double-slip_turnout_right.tikz} & \texttt{topology} \\ + \hline + \No & diamond crossing left & \symbol{diamond_crossing_left.tikz} & \code{diamond_crossing_left.tikz} & \texttt{topology} \\ + \hline + \No & diamond crossing right & \symbol{diamond_crossing_right.tikz} & \code{diamond_crossing_right.tikz} & \texttt{topology} \\ + \hline + \No & \parbox[c]{5cm}{turnout left (forward)\\with points in right position} + & \symbol{turnout_left_forward_right_position.tikz} & \code{turnout_left_forward_right_position.tikz} & \texttt{topology} \\ + \hline + \No & \parbox[c]{5cm}{turnout left (forward)\\with points in left position} + & \symbol{turnout_left_forward_left_position.tikz} & \code{turnout_left_forward_left_position.tikz} & \texttt{topology} \\ + \hline + \No & \parbox[c]{5cm}{turnout left (forward)\\with moving points} + & \symbol{turnout_left_forward_moving_points.tikz} & \code{turnout_left_forward_moving_points.tikz} & \texttt{topology} \\ + \hline + \No & \parbox[c]{5cm}{turnout left (backward)\\with points in right position} + & \symbol{turnout_left_backward_right_position.tikz} & \code{turnout_left_backward_right_position.tikz} & \texttt{topology} \\ + \hline + \No & \parbox[c]{5cm}{turnout left (backward)\\with points in left position} + & \symbol{turnout_left_backward_left_position.tikz} & \code{turnout_left_backward_left_position.tikz} & \texttt{topology} \\ + \hline + \No & \parbox[c]{5cm}{turnout left (backward)\\with moving points} + & \symbol{turnout_left_backward_moving_points.tikz} & \code{turnout_left_backward_moving_points.tikz} & \texttt{topology} \\ + \hline + \No & \parbox[c]{5cm}{turnout right (forward)\\with points in right position} + & \symbol{turnout_right_forward_right_position.tikz} & \code{turnout_right_forward_right_position.tikz} & \texttt{topology} \\ + \hline + \No & \parbox[c]{5cm}{turnout right (forward)\\with points in left position} + & \symbol{turnout_right_forward_left_position.tikz} & \code{turnout_right_forward_left_position.tikz} & \texttt{topology} \\ + \hline + \No & \parbox[c]{5cm}{turnout right (forward)\\with moving points} + & \symbol{turnout_right_forward_moving_points.tikz} & \code{turnout_right_forward_moving_points.tikz} & \texttt{topology} \\ + \hline + \No & \parbox[c]{5cm}{turnout right (backward)\\with points in right position} + & \symbol{turnout_right_backward_right_position.tikz} & \code{turnout_right_backward_right_position.tikz} & \texttt{topology} \\ + \hline + \No & \parbox[c]{5cm}{turnout right (backward)\\with points in left position} + & \symbol{turnout_right_backward_left_position.tikz} & \code{turnout_right_backward_left_position.tikz} & \texttt{topology} \\ + \hline + \No & \parbox[c]{5cm}{turnout right (backward)\\with moving points} + & \symbol{turnout_right_backward_moving_points.tikz} & \code{turnout_right_backward_moving_points.tikz} & \texttt{topology} \\ + \hline + \No & derailer left (forward) & \symbol{derailer_left_forward.tikz} & \code{derailer_left_forward.tikz} & \texttt{topology} \\ + \hline + \No & derailer left (backward) & \symbol{derailer_left_backward.tikz} & \code{derailer_left_backward.tikz} & \texttt{topology} \\ + \hline + \No & derailer right (forward) & \symbol{derailer_right_forward.tikz} & \code{derailer_right_forward.tikz} & \texttt{topology} \\ + \hline + \No & derailer right (backward) & \symbol{derailer_right_backward.tikz} & \code{derailer_right_backward.tikz} & \texttt{topology} \\ + \hline + \No & bufferstop (forward) & \symbol{bufferstop_forward.tikz} & \code{bufferstop_forward.tikz} & \texttt{topology} \\ + \hline + \No & bufferstop (backward) & \symbol{bufferstop_backward.tikz} & \code{bufferstop_backward.tikz} & \texttt{topology} \\ + \hline + \No & vehicles (parked) & \symbol{vehicles.tikz} & \code{vehicles.tikz} & \texttt{vehicles} \\ + \hline + \No & vehicles with label (parked) & \symbol{vehicles_with_label.tikz} & \code{vehicles_with_label.tikz} & \texttt{vehicles} \\ + \hline + \No & vehicle (parked) & \symbol{vehicle.tikz} & \code{vehicle.tikz} & \texttt{vehicles} \\ + \hline + \No & train (direction forward) & \symbol{train_direction_forward.tikz} & \code{train_direction_forward.tikz} & \texttt{vehicles} \\ + \hline + \No & train (direction backward) & \symbol{train_direction_backward.tikz} & \code{train_direction_backward.tikz} & \texttt{vehicles} \\ + \hline + \No & ghost train (direction forward) & \symbol{ghost_train_direction_forward.tikz} & \code{ghost_train_direction_forward.tikz} & \texttt{vehicles} \\ + \hline + \No & ghost train (direction backward)& \symbol{ghost_train_direction_backward.tikz} & \code{ghost_train_direction_backward.tikz} & \texttt{vehicles} \\ + \hline + \No & train moving (forward) & \symbol{train_moving_forward.tikz} & \code{train_moving_forward.tikz} & \texttt{vehicles} \\ + \hline + \No & train moving (backward) & \symbol{train_moving_backward.tikz} & \code{train_moving_backward.tikz} & \texttt{vehicles} \\ + \hline + \No & train moving slow (forward) & \symbol{train_moving_slow_forward.tikz} & \code{train_moving_slow_forward.tikz} & \texttt{vehicles} \\ + \hline + \No & train moving slow (backward) & \symbol{train_moving_slow_backward.tikz} & \code{train_moving_slow_backward.tikz} & \texttt{vehicles} \\ + \hline + \No & train moving fast (forward) & \symbol{train_moving_fast_forward.tikz} & \code{train_moving_fast_forward.tikz} & \texttt{vehicles} \\ + \hline + \No & train moving fast (backward) & \symbol{train_moving_fast_backward.tikz} & \code{train_moving_fast_backward.tikz} & \texttt{vehicles} \\ + \hline + \No & \parbox[c]{4cm}{train in shunting mode\\(direction forward)} + & \symbol{train_shunt_mode_forward.tikz} & \code{train_shunt_mode_forward.tikz} & \texttt{vehicles} \\ + \hline + \No & \parbox[c]{4cm}{train in shunting mode\\(direction backward)} + & \symbol{train_shunt_mode_backward.tikz} & \code{train_shunt_mode_backward.tikz} & \texttt{vehicles} \\ + \hline + \No & train shunting (forward) & \symbol{train_shunting_forward.tikz} & \code{train_shunting_forward.tikz} & \texttt{vehicles} \\ + \hline + \No & train shunting (backward) & \symbol{train_shunting_backward.tikz} & \code{train_shunting_backward.tikz} & \texttt{vehicles} \\ + \hline + \No & \parbox[c]{4cm}{train operated automatic\\(direction forward)} + & \symbol{train_drive_automatic.tikz} & \code{train_drive_automatic.tikz} & \texttt{vehicles} \\ + \hline + \No & \parbox[c]{4cm}{train operated by human\\(direction forward)} + & \symbol{train_drive_human.tikz} & \code{train_drive_human.tikz} & \texttt{vehicles} \\ + \hline + \No & view point (forward) & \symbol{view_point_forward.tikz} & \code{view_point_forward.tikz} & \texttt{trafficcontrol} \\ + \hline + \No & view point (backward) & \symbol{view_point_backward.tikz} & \code{view_point_backward.tikz} & \texttt{trafficcontrol} \\ + \hline + \No & distant signal (forward) & \symbol{distant_signal_forward.tikz} & \code{distant_signal_forward.tikz} & \texttt{trafficcontrol} \\ + \hline + \No & \parbox[c]{4cm}{distant signal\\with speed indicator} + & \symbol{distant_speed_signal_forward.tikz} & \code{distant_speed_signal_forward.tikz} & \texttt{trafficcontrol} \\ + \hline + \No & distant signal (backward) & \symbol{distant_signal_backward.tikz} & \code{distant_signal_backward.tikz} & \texttt{trafficcontrol} \\ + \hline + \No & \parbox[c]{4cm}{distant signal\\with speed indicator} + & \symbol{distant_speed_signal_backward.tikz} & \code{distant_speed_signal_backward.tikz} & \texttt{trafficcontrol} \\ + \hline + \No & speed signal (forward) & \symbol{speed_signal_forward.tikz} & \code{speed_signal_forward.tikz} & \texttt{trafficcontrol} \\ + \hline + \No & speed signal (backward) & \symbol{speed_signal_backward.tikz} & \code{speed_signal_backward.tikz} & \texttt{trafficcontrol} \\ + \hline + \No & block signal (forward) & \symbol{block_signal_forward.tikz} & \code{block_signal_forward.tikz} & \texttt{trafficcontrol} \\ + \hline + \No & block signal (backward) & \symbol{block_signal_backward.tikz} & \code{block_signal_backward.tikz} & \texttt{trafficcontrol} \\ + \hline + \No & route signal (forward) & \symbol{route_signal_forward.tikz} & \code{route_signal_forward.tikz} & \texttt{trafficcontrol} \\ + \hline + \No & route signal (backward) & \symbol{route_signal_backward.tikz} & \code{route_signal_backward.tikz} & \texttt{trafficcontrol} \\ + \hline + \No & \parbox[c]{4cm}{combined signal\\(distant and block signal)} + & \symbol{combined_signal_forward.tikz} & \code{combined_signal_forward.tikz} & \texttt{trafficcontrol} \\ + \hline + \No & shunt signal (forward) & \symbol{shunt_signal_forward.tikz} & \code{shunt_signal_forward.tikz} & \texttt{trafficcontrol} \\ + \hline + \No & shunt signal (backward) & \symbol{shunt_signal_backward.tikz} & \code{shunt_signal_backward.tikz} & \texttt{trafficcontrol} \\ + \hline + \No & shunt signal locked (forward) & \symbol{shunt_signal_forward_locked.tikz} & \code{shunt_signal_forward_locked.tikz} & \texttt{trafficcontrol} \\ + \hline + \No & shunt signal locked (backward) & \symbol{shunt_signal_backward_locked.tikz} & \code{shunt_signal_backward_locked.tikz} & \texttt{trafficcontrol} \\ + \hline + \No & shunt limit (forward) & \symbol{shunt_limit_forward.tikz} & \code{shunt_limit_forward.tikz} & \texttt{trafficcontrol} \\ + \hline + \No & shunt limit (backward) & \symbol{shunt_limit_backward.tikz} & \code{shunt_limit_backward.tikz} & \texttt{trafficcontrol} \\ + \hline + \No & transmitter (below \& above) & \symbol{transmitter.tikz} & \code{transmitter.tikz} & \texttt{trafficcontrol} \\ + \hline + \No & \parbox[c]{4.5cm}{transmitter (below)\\with signal} + & \symbol{transmitter_below_with_signal.tikz} & \code{transmitter_below_with_signal.tikz} & \texttt{trafficcontrol} \\ + \hline + \No & \parbox[c]{4.5cm}{transmitter (below \& above)\\ effective forward} + & \symbol{transmitter_forward.tikz} & \code{transmitter_forward.tikz} & \texttt{trafficcontrol} \\ + \hline + \No & \parbox[c]{4.5cm}{transmitter (below \& above)\\ effective backward} + & \symbol{transmitter_backward.tikz} & \code{transmitter_backward.tikz} & \texttt{trafficcontrol} \\ + \hline + \No & \parbox[c]{4.5cm}{transmitter (below \& above)\\ effective bidirectional} + & \symbol{transmitter_bidirectional.tikz} & \code{transmitter_bidirectional.tikz} & \texttt{trafficcontrol} \\ + \hline + \No & block end marker (forward) & \symbol{block_end_marker_forward.tikz} & \code{block_end_marker_forward.tikz} & \texttt{trafficcontrol} \\ + \hline + \No & block end marker (backward) & \symbol{block_end_marker_backward.tikz} & \code{block_end_marker_backward.tikz} & \texttt{trafficcontrol} \\ + \hline + \No & block clearing point (forward) & \symbol{block_clearing_point_forward.tikz} & \code{block_clearing_point_forward.tikz} & \texttt{trafficcontrol} \\ + \hline + \No & block clearing point (backward) & \symbol{block_clearing_point_backward.tikz} & \code{block_clearing_point_backward.tikz} & \texttt{trafficcontrol} \\ + \hline + \No & route clearing point (forward) & \symbol{route_clearing_point_forward.tikz} & \code{route_clearing_point_forward.tikz} & \texttt{trafficcontrol} \\ + \hline + \No & route clearing point (backward) & \symbol{route_clearing_point_backward.tikz} & \code{route_clearing_point_backward.tikz} & \texttt{trafficcontrol} \\ + \hline + \No & clearing point & \symbol{clearing_point.tikz} & \code{clearing_point.tikz} & \texttt{trafficcontrol} \\ + \hline + \No & train berth sign (forward) & \symbol{train_berth_sign_forward.tikz} & \code{train_berth_sign_forward.tikz} & \texttt{trafficcontrol} \\ + \hline + \No & train berth sign (backward) & \symbol{train_berth_sign_backward.tikz} & \code{train_berth_sign_backward.tikz} & \texttt{trafficcontrol} \\ + \hline + \No & train berth shape & \symbol{train_berth_shape.tikz} & \code{train_berth_shape.tikz} & \texttt{trafficcontrol} \\ + \hline + \No & train berth shape bidirectional & \symbol{train_berth_shape_bidirectional.tikz} & \code{train_berth_shape_bidirectional.tikz} & \texttt{trafficcontrol} \\ + \hline + \No & train berth with different shape& \symbol{train_berth_shape_different.tikz} & \code{train_berth_shape_different.tikz} & \texttt{trafficcontrol} \\ + \hline + \No & train berth & \symbol{train_berth.tikz} & \code{train_berth.tikz} & \texttt{trafficcontrol} \\ + \hline + \No & platform (left) & \symbol{platform_left.tikz} & \code{platform_left.tikz} & \texttt{constructions} \\ + \hline + \No & platform (right) & \symbol{platform_right.tikz} & \code{platform_right.tikz} & \texttt{constructions} \\ + \hline + \No & platform (middle) & \symbol{platform_middle.tikz} & \code{platform_middle.tikz} & \texttt{constructions} \\ + \hline + \No & level crossing (single track) & \symbol{level_crossing_single.tikz} & \code{level_crossing_single.tikz} & \texttt{constructions} \\ + \hline + \No & level crossing (double track) & \symbol{level_crossing_double.tikz} & \code{level_crossing_double.tikz} & \texttt{constructions} \\ + \hline + \No & \parbox[c]{5cm}{level crossing (double track)\\with full closure} + & \symbol{level_crossing_double_full_closure.tikz} & \code{level_crossing_double_full_closure.tikz} & \texttt{constructions} \\ + \hline + \No & bridge & \symbol{bridge.tikz} & \code{bridge.tikz} & \texttt{constructions} \\ + \hline + \No & \parbox[c]{5cm}{bridge\\with track beneath} + & \symbol{bridge_track_beneath.tikz} & \code{bridge_track_beneath.tikz} & \texttt{constructions} \\ + \hline + \No & hump & \symbol{hump.tikz} & \code{hump.tikz} & \texttt{constructions} \\ + \hline + \No & interlocking & \symbol{interlocking.tikz} & \code{interlocking.tikz} & \texttt{constructions} \\ + \hline + \end{longtable} +\end{document} \ No newline at end of file diff --git a/snippets/block_clearing_point_backward.tikz b/snippets/block_clearing_point_backward.tikz index 2a7d39a..5fb93ea 100644 --- a/snippets/block_clearing_point_backward.tikz +++ b/snippets/block_clearing_point_backward.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/block_clearing_point_forward.tikz b/snippets/block_clearing_point_forward.tikz index afb507a..fb0305d 100644 --- a/snippets/block_clearing_point_forward.tikz +++ b/snippets/block_clearing_point_forward.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/block_end_marker_backward.tikz b/snippets/block_end_marker_backward.tikz index f074a31..a934d2d 100644 --- a/snippets/block_end_marker_backward.tikz +++ b/snippets/block_end_marker_backward.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/block_end_marker_forward.tikz b/snippets/block_end_marker_forward.tikz index 8baa09d..dd6d486 100644 --- a/snippets/block_end_marker_forward.tikz +++ b/snippets/block_end_marker_forward.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/block_signal_backward.tikz b/snippets/block_signal_backward.tikz index f369b4d..d9cd71b 100644 --- a/snippets/block_signal_backward.tikz +++ b/snippets/block_signal_backward.tikz @@ -1,9 +1,9 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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 (0,0) {block_signal_backward=S}; +\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/snippets/block_signal_forward.tikz b/snippets/block_signal_forward.tikz index a193700..aba6d35 100644 --- a/snippets/block_signal_forward.tikz +++ b/snippets/block_signal_forward.tikz @@ -1,9 +1,8 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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 (0,0) {block_signal_forward=S}; -% replace the S with desired speed or remove \ No newline at end of file +\pic at (0,0) {block_signal_forward}; \ No newline at end of file diff --git a/snippets/bridge.tikz b/snippets/bridge.tikz index a871762..a940f1c 100644 --- a/snippets/bridge.tikz +++ b/snippets/bridge.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/bridge_track_beneath.tikz b/snippets/bridge_track_beneath.tikz index 5b898c8..e109ce8 100644 --- a/snippets/bridge_track_beneath.tikz +++ b/snippets/bridge_track_beneath.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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] (-1,-1) -- ++(2,2); diff --git a/snippets/bufferstop_backward.tikz b/snippets/bufferstop_backward.tikz index 831c51f..a674823 100644 --- a/snippets/bufferstop_backward.tikz +++ b/snippets/bufferstop_backward.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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[SideTrack] (0,0) -- ++(2.5,0); diff --git a/snippets/bufferstop_forward.tikz b/snippets/bufferstop_forward.tikz index 542a915..b3a3bda 100644 --- a/snippets/bufferstop_forward.tikz +++ b/snippets/bufferstop_forward.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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[SideTrack] (-2.5,0) -- ++(2.5,0); diff --git a/snippets/clearing_point.tikz b/snippets/clearing_point.tikz index b82f02c..4f90334 100644 --- a/snippets/clearing_point.tikz +++ b/snippets/clearing_point.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/combined_signal_forward.tikz b/snippets/combined_signal_forward.tikz index 0c7fca5..2e3f54d 100644 --- a/snippets/combined_signal_forward.tikz +++ b/snippets/combined_signal_forward.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/derailer_left_backward.tikz b/snippets/derailer_left_backward.tikz index 21b2602..43a1b25 100644 --- a/snippets/derailer_left_backward.tikz +++ b/snippets/derailer_left_backward.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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[SideTrack] (-2.5,0) -- ++(5,0); diff --git a/snippets/derailer_left_forward.tikz b/snippets/derailer_left_forward.tikz index 309a916..fbb6610 100644 --- a/snippets/derailer_left_forward.tikz +++ b/snippets/derailer_left_forward.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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[SideTrack] (-2.5,0) -- ++(5,0); diff --git a/snippets/derailer_right_backward.tikz b/snippets/derailer_right_backward.tikz index 899dcb8..0bfacaf 100644 --- a/snippets/derailer_right_backward.tikz +++ b/snippets/derailer_right_backward.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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[SideTrack] (-2.5,0) -- ++(5,0); diff --git a/snippets/derailer_right_forward.tikz b/snippets/derailer_right_forward.tikz index 0075ff9..3600219 100644 --- a/snippets/derailer_right_forward.tikz +++ b/snippets/derailer_right_forward.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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[SideTrack] (-2.5,0) -- ++(5,0); diff --git a/snippets/diamond_crossing_left.tikz b/snippets/diamond_crossing_left.tikz index 7a63e31..d6b9fce 100644 --- a/snippets/diamond_crossing_left.tikz +++ b/snippets/diamond_crossing_left.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/diamond_crossing_right.tikz b/snippets/diamond_crossing_right.tikz index e20f988..791fa76 100644 --- a/snippets/diamond_crossing_right.tikz +++ b/snippets/diamond_crossing_right.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/distant_signal_backward.tikz b/snippets/distant_signal_backward.tikz index 7034649..87d8d3b 100644 --- a/snippets/distant_signal_backward.tikz +++ b/snippets/distant_signal_backward.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/distant_signal_forward.tikz b/snippets/distant_signal_forward.tikz index 717ac34..e4c44ca 100644 --- a/snippets/distant_signal_forward.tikz +++ b/snippets/distant_signal_forward.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/distant_speed_signal_backward.tikz b/snippets/distant_speed_signal_backward.tikz index 9650c91..8dedf1d 100644 --- a/snippets/distant_speed_signal_backward.tikz +++ b/snippets/distant_speed_signal_backward.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/distant_speed_signal_forward.tikz b/snippets/distant_speed_signal_forward.tikz index 6b6dc04..0983b2c 100644 --- a/snippets/distant_speed_signal_forward.tikz +++ b/snippets/distant_speed_signal_forward.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/double-slip_turnout_left.tikz b/snippets/double-slip_turnout_left.tikz index 6f21ec4..826e82d 100644 --- a/snippets/double-slip_turnout_left.tikz +++ b/snippets/double-slip_turnout_left.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/double-slip_turnout_right.tikz b/snippets/double-slip_turnout_right.tikz index 9cb4b63..8149ab0 100644 --- a/snippets/double-slip_turnout_right.tikz +++ b/snippets/double-slip_turnout_right.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/ghost_train_direction_backward.tikz b/snippets/ghost_train_direction_backward.tikz index 3f6f397..d7fa758 100644 --- a/snippets/ghost_train_direction_backward.tikz +++ b/snippets/ghost_train_direction_backward.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/ghost_train_direction_forward.tikz b/snippets/ghost_train_direction_forward.tikz index 5ab7add..25775fa 100644 --- a/snippets/ghost_train_direction_forward.tikz +++ b/snippets/ghost_train_direction_forward.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/hump.tikz b/snippets/hump.tikz index 84adf0d..b2a508a 100755 --- a/snippets/hump.tikz +++ b/snippets/hump.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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[SideTrack] (-2.5,0) -- ++(5,0); diff --git a/snippets/interlocking.tikz b/snippets/interlocking.tikz index e52880e..21b1da3 100755 --- a/snippets/interlocking.tikz +++ b/snippets/interlocking.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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. \pic at (0,0) {interlocking}; \ No newline at end of file diff --git a/snippets/level_crossing_double.tikz b/snippets/level_crossing_double.tikz index fa7dcc0..fe3001f 100644 --- a/snippets/level_crossing_double.tikz +++ b/snippets/level_crossing_double.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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) -- ++(5,0); diff --git a/snippets/level_crossing_double_full_closure.tikz b/snippets/level_crossing_double_full_closure.tikz index d45e7d6..ad60a79 100644 --- a/snippets/level_crossing_double_full_closure.tikz +++ b/snippets/level_crossing_double_full_closure.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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) -- ++(5,0); diff --git a/snippets/level_crossing_single.tikz b/snippets/level_crossing_single.tikz index 952e5c5..3724306 100644 --- a/snippets/level_crossing_single.tikz +++ b/snippets/level_crossing_single.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/main_line.tikz b/snippets/main_line.tikz index 6a9d738..2d40121 100644 --- a/snippets/main_line.tikz +++ b/snippets/main_line.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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) -- ++(5,0); diff --git a/snippets/main_track.tikz b/snippets/main_track.tikz index 19cf9a0..610ad71 100644 --- a/snippets/main_track.tikz +++ b/snippets/main_track.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); \ No newline at end of file diff --git a/snippets/platform_left.tikz b/snippets/platform_left.tikz index 78bbdf7..8566cb0 100644 --- a/snippets/platform_left.tikz +++ b/snippets/platform_left.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/platform_middle.tikz b/snippets/platform_middle.tikz index 192e752..80416dc 100644 --- a/snippets/platform_middle.tikz +++ b/snippets/platform_middle.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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) -- ++(5,0); diff --git a/snippets/platform_right.tikz b/snippets/platform_right.tikz index 08c1041..66015d2 100644 --- a/snippets/platform_right.tikz +++ b/snippets/platform_right.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/route_clearing_point_backward.tikz b/snippets/route_clearing_point_backward.tikz index 06b0df7..3fa8723 100644 --- a/snippets/route_clearing_point_backward.tikz +++ b/snippets/route_clearing_point_backward.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/route_clearing_point_forward.tikz b/snippets/route_clearing_point_forward.tikz index 29804af..7473e62 100644 --- a/snippets/route_clearing_point_forward.tikz +++ b/snippets/route_clearing_point_forward.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/route_signal_backward.tikz b/snippets/route_signal_backward.tikz index 1a96ab3..54e6524 100644 --- a/snippets/route_signal_backward.tikz +++ b/snippets/route_signal_backward.tikz @@ -1,9 +1,9 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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 (0,0) {route_signal_backward=S}; +\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/snippets/route_signal_forward.tikz b/snippets/route_signal_forward.tikz index 0c6d2e4..40f81ad 100644 --- a/snippets/route_signal_forward.tikz +++ b/snippets/route_signal_forward.tikz @@ -1,9 +1,8 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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 (0,0) {route_signal_forward=S}; -% replace the S with desired speed or remove \ No newline at end of file +\pic at (0,0) {route_signal_forward}; \ No newline at end of file diff --git a/snippets/shunt_limit_backward.tikz b/snippets/shunt_limit_backward.tikz index 5a3d375..804b4a5 100644 --- a/snippets/shunt_limit_backward.tikz +++ b/snippets/shunt_limit_backward.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/shunt_limit_forward.tikz b/snippets/shunt_limit_forward.tikz index 9172289..2111ba0 100644 --- a/snippets/shunt_limit_forward.tikz +++ b/snippets/shunt_limit_forward.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/shunt_signal_backward.tikz b/snippets/shunt_signal_backward.tikz index 75cfa58..6b3037f 100644 --- a/snippets/shunt_signal_backward.tikz +++ b/snippets/shunt_signal_backward.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/shunt_signal_backward_locked.tikz b/snippets/shunt_signal_backward_locked.tikz index a03fc35..cf967a1 100644 --- a/snippets/shunt_signal_backward_locked.tikz +++ b/snippets/shunt_signal_backward_locked.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/shunt_signal_forward.tikz b/snippets/shunt_signal_forward.tikz index 3bd749f..89e14e3 100644 --- a/snippets/shunt_signal_forward.tikz +++ b/snippets/shunt_signal_forward.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/shunt_signal_forward_locked.tikz b/snippets/shunt_signal_forward_locked.tikz index 4ca94de..7e07034 100644 --- a/snippets/shunt_signal_forward_locked.tikz +++ b/snippets/shunt_signal_forward_locked.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/side_track.tikz b/snippets/side_track.tikz index 582e7b9..679a49c 100644 --- a/snippets/side_track.tikz +++ b/snippets/side_track.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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[SideTrack] (-2.5,0) -- ++(5,0); \ No newline at end of file diff --git a/snippets/speed_signal_backward.tikz b/snippets/speed_signal_backward.tikz index b890063..40e32c7 100644 --- a/snippets/speed_signal_backward.tikz +++ b/snippets/speed_signal_backward.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/speed_signal_forward.tikz b/snippets/speed_signal_forward.tikz index 0c4df15..0711071 100644 --- a/snippets/speed_signal_forward.tikz +++ b/snippets/speed_signal_forward.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/track_distance.tikz b/snippets/track_distance.tikz index 1f0ae48..68b1322 100755 --- a/snippets/track_distance.tikz +++ b/snippets/track_distance.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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) -- ++(5,0); diff --git a/snippets/track_number.tikz b/snippets/track_number.tikz index 4f1b8a9..9d8211d 100755 --- a/snippets/track_number.tikz +++ b/snippets/track_number.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/train_berth.tikz b/snippets/train_berth.tikz index 3cf1cdc..6268632 100644 --- a/snippets/train_berth.tikz +++ b/snippets/train_berth.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/train_berth_shape.tikz b/snippets/train_berth_shape.tikz index 69bea76..8a9ac2d 100644 --- a/snippets/train_berth_shape.tikz +++ b/snippets/train_berth_shape.tikz @@ -1,9 +1,8 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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_berth_shape_forward=4}; -\pic at (-1,0) {train_berth_shape_backward=3}; \ No newline at end of file +\pic at (-2,0) {train_berth_shape_forward={4}}; \ No newline at end of file diff --git a/snippets/train_berth_shape_bidirectional.tikz b/snippets/train_berth_shape_bidirectional.tikz index d62a977..e5e3905 100644 --- a/snippets/train_berth_shape_bidirectional.tikz +++ b/snippets/train_berth_shape_bidirectional.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/train_berth_shape_different.tikz b/snippets/train_berth_shape_different.tikz new file mode 100644 index 0000000..304d817 --- /dev/null +++ b/snippets/train_berth_shape_different.tikz @@ -0,0 +1,9 @@ +%!TEX TS-program = pdflatexmk +%!TEX root = ../snippets.tex + +% Copyright 2019 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_berth_shape_forward={4}}; +\pic at (-1,0) {train_berth_shape_backward={3}}; \ No newline at end of file diff --git a/snippets/train_berth_sign_backward.tikz b/snippets/train_berth_sign_backward.tikz index ad7592c..08240a8 100644 --- a/snippets/train_berth_sign_backward.tikz +++ b/snippets/train_berth_sign_backward.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/train_berth_sign_forward.tikz b/snippets/train_berth_sign_forward.tikz index 7968688..5b50672 100644 --- a/snippets/train_berth_sign_forward.tikz +++ b/snippets/train_berth_sign_forward.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/train_direction_backward.tikz b/snippets/train_direction_backward.tikz index f1af0b0..9cdd7e0 100644 --- a/snippets/train_direction_backward.tikz +++ b/snippets/train_direction_backward.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/train_direction_forward.tikz b/snippets/train_direction_forward.tikz index 976e225..0757397 100644 --- a/snippets/train_direction_forward.tikz +++ b/snippets/train_direction_forward.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/train_drive_automatic.tikz b/snippets/train_drive_automatic.tikz index 5c62e4e..2f1ec73 100644 --- a/snippets/train_drive_automatic.tikz +++ b/snippets/train_drive_automatic.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/train_drive_human.tikz b/snippets/train_drive_human.tikz index 7bb9de1..2c0687e 100644 --- a/snippets/train_drive_human.tikz +++ b/snippets/train_drive_human.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/train_moving_backward.tikz b/snippets/train_moving_backward.tikz index 484d182..87b661f 100644 --- a/snippets/train_moving_backward.tikz +++ b/snippets/train_moving_backward.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/train_moving_fast_backward.tikz b/snippets/train_moving_fast_backward.tikz index c0b43a9..8df3a20 100644 --- a/snippets/train_moving_fast_backward.tikz +++ b/snippets/train_moving_fast_backward.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/train_moving_fast_forward.tikz b/snippets/train_moving_fast_forward.tikz index c8a8af0..48526a7 100644 --- a/snippets/train_moving_fast_forward.tikz +++ b/snippets/train_moving_fast_forward.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/train_moving_forward.tikz b/snippets/train_moving_forward.tikz index b34144e..a6858a9 100644 --- a/snippets/train_moving_forward.tikz +++ b/snippets/train_moving_forward.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/train_moving_slow_backward.tikz b/snippets/train_moving_slow_backward.tikz index b92d2b1..d09b251 100644 --- a/snippets/train_moving_slow_backward.tikz +++ b/snippets/train_moving_slow_backward.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/train_moving_slow_forward.tikz b/snippets/train_moving_slow_forward.tikz index 0116ea9..9951ed0 100644 --- a/snippets/train_moving_slow_forward.tikz +++ b/snippets/train_moving_slow_forward.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/train_shunt_mode_backward.tikz b/snippets/train_shunt_mode_backward.tikz index 7d77936..a658df9 100644 --- a/snippets/train_shunt_mode_backward.tikz +++ b/snippets/train_shunt_mode_backward.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/train_shunt_mode_forward.tikz b/snippets/train_shunt_mode_forward.tikz index 70a9695..7764f87 100644 --- a/snippets/train_shunt_mode_forward.tikz +++ b/snippets/train_shunt_mode_forward.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/train_shunting_backward.tikz b/snippets/train_shunting_backward.tikz index 35f2318..526bb73 100644 --- a/snippets/train_shunting_backward.tikz +++ b/snippets/train_shunting_backward.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/train_shunting_forward.tikz b/snippets/train_shunting_forward.tikz index bc3cb8b..938f16a 100644 --- a/snippets/train_shunting_forward.tikz +++ b/snippets/train_shunting_forward.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/transmitter.tikz b/snippets/transmitter.tikz index 2cfe287..83f7f14 100644 --- a/snippets/transmitter.tikz +++ b/snippets/transmitter.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/transmitter_backward.tikz b/snippets/transmitter_backward.tikz index d247680..5b1b320 100644 --- a/snippets/transmitter_backward.tikz +++ b/snippets/transmitter_backward.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/transmitter_below.tikz b/snippets/transmitter_below.tikz new file mode 100644 index 0000000..5ece3af --- /dev/null +++ b/snippets/transmitter_below.tikz @@ -0,0 +1,8 @@ +%!TEX TS-program = pdflatexmk +%!TEX root = ../snippets.tex + +% Copyright 2019 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 (0,0) {transmitter_below}; \ No newline at end of file diff --git a/snippets/transmitter_below_bidirectional.tikz b/snippets/transmitter_below_bidirectional.tikz new file mode 100644 index 0000000..2b8b465 --- /dev/null +++ b/snippets/transmitter_below_bidirectional.tikz @@ -0,0 +1,8 @@ +%!TEX TS-program = pdflatexmk +%!TEX root = ../snippets.tex + +% Copyright 2019 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 (0,0) {transmitter_below_bidirectional}; \ No newline at end of file diff --git a/snippets/transmitter_below_forward.tikz b/snippets/transmitter_below_forward.tikz new file mode 100644 index 0000000..16772f6 --- /dev/null +++ b/snippets/transmitter_below_forward.tikz @@ -0,0 +1,8 @@ +%!TEX TS-program = pdflatexmk +%!TEX root = ../snippets.tex + +% Copyright 2019 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 (0,0) {transmitter_below_forward}; \ No newline at end of file diff --git a/snippets/transmitter_below_with_signal.tikz b/snippets/transmitter_below_with_signal.tikz index 6da406d..aeb2589 100644 --- a/snippets/transmitter_below_with_signal.tikz +++ b/snippets/transmitter_below_with_signal.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/transmitter_bidirectional.tikz b/snippets/transmitter_bidirectional.tikz index 88bb10d..3083d54 100644 --- a/snippets/transmitter_bidirectional.tikz +++ b/snippets/transmitter_bidirectional.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/transmitter_forward.tikz b/snippets/transmitter_forward.tikz index c557c3d..19f9933 100644 --- a/snippets/transmitter_forward.tikz +++ b/snippets/transmitter_forward.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/turnout_left_backward.tikz b/snippets/turnout_left_backward.tikz index ac559d5..ebfb3ea 100644 --- a/snippets/turnout_left_backward.tikz +++ b/snippets/turnout_left_backward.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/turnout_left_backward_left_position.tikz b/snippets/turnout_left_backward_left_position.tikz index ccf4810..2254651 100644 --- a/snippets/turnout_left_backward_left_position.tikz +++ b/snippets/turnout_left_backward_left_position.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/turnout_left_backward_moving_points.tikz b/snippets/turnout_left_backward_moving_points.tikz index f6ab4f7..473ad6a 100644 --- a/snippets/turnout_left_backward_moving_points.tikz +++ b/snippets/turnout_left_backward_moving_points.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/turnout_left_backward_right_position.tikz b/snippets/turnout_left_backward_right_position.tikz index 27ca36f..7aa14b3 100644 --- a/snippets/turnout_left_backward_right_position.tikz +++ b/snippets/turnout_left_backward_right_position.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/turnout_left_forward.tikz b/snippets/turnout_left_forward.tikz index 91786ad..4f240c0 100644 --- a/snippets/turnout_left_forward.tikz +++ b/snippets/turnout_left_forward.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/turnout_left_forward_left_position.tikz b/snippets/turnout_left_forward_left_position.tikz index 6e9fbc3..7f27609 100644 --- a/snippets/turnout_left_forward_left_position.tikz +++ b/snippets/turnout_left_forward_left_position.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/turnout_left_forward_moving_points.tikz b/snippets/turnout_left_forward_moving_points.tikz index 6fad9d4..6333869 100644 --- a/snippets/turnout_left_forward_moving_points.tikz +++ b/snippets/turnout_left_forward_moving_points.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/turnout_left_forward_right_position.tikz b/snippets/turnout_left_forward_right_position.tikz index b8988fe..b69a286 100644 --- a/snippets/turnout_left_forward_right_position.tikz +++ b/snippets/turnout_left_forward_right_position.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/turnout_right_backward.tikz b/snippets/turnout_right_backward.tikz index 1890da3..b7c2143 100644 --- a/snippets/turnout_right_backward.tikz +++ b/snippets/turnout_right_backward.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/turnout_right_backward_left_position.tikz b/snippets/turnout_right_backward_left_position.tikz index a495eb3..4b54ddb 100644 --- a/snippets/turnout_right_backward_left_position.tikz +++ b/snippets/turnout_right_backward_left_position.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/turnout_right_backward_moving_points.tikz b/snippets/turnout_right_backward_moving_points.tikz index 7a3e53c..dbbb887 100644 --- a/snippets/turnout_right_backward_moving_points.tikz +++ b/snippets/turnout_right_backward_moving_points.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/turnout_right_backward_right_position.tikz b/snippets/turnout_right_backward_right_position.tikz index 6056a84..fe48d8b 100644 --- a/snippets/turnout_right_backward_right_position.tikz +++ b/snippets/turnout_right_backward_right_position.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/turnout_right_forward.tikz b/snippets/turnout_right_forward.tikz index 449d587..dd0c6d0 100644 --- a/snippets/turnout_right_forward.tikz +++ b/snippets/turnout_right_forward.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/turnout_right_forward_left_position.tikz b/snippets/turnout_right_forward_left_position.tikz index 9ae47b3..c2f62a5 100644 --- a/snippets/turnout_right_forward_left_position.tikz +++ b/snippets/turnout_right_forward_left_position.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/turnout_right_forward_moving_points.tikz b/snippets/turnout_right_forward_moving_points.tikz index ee35057..568067f 100644 --- a/snippets/turnout_right_forward_moving_points.tikz +++ b/snippets/turnout_right_forward_moving_points.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/turnout_right_forward_right_position.tikz b/snippets/turnout_right_forward_right_position.tikz index b3ea6fe..ce7c3a2 100644 --- a/snippets/turnout_right_forward_right_position.tikz +++ b/snippets/turnout_right_forward_right_position.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/turnout_with_fouling_left_backward.tikz b/snippets/turnout_with_fouling_left_backward.tikz index 3836f99..e290320 100644 --- a/snippets/turnout_with_fouling_left_backward.tikz +++ b/snippets/turnout_with_fouling_left_backward.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/turnout_with_fouling_left_forward.tikz b/snippets/turnout_with_fouling_left_forward.tikz index cdf17ab..a998a75 100644 --- a/snippets/turnout_with_fouling_left_forward.tikz +++ b/snippets/turnout_with_fouling_left_forward.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/turnout_with_fouling_right_backward.tikz b/snippets/turnout_with_fouling_right_backward.tikz index 408c657..61e38a2 100644 --- a/snippets/turnout_with_fouling_right_backward.tikz +++ b/snippets/turnout_with_fouling_right_backward.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/turnout_with_fouling_right_forward.tikz b/snippets/turnout_with_fouling_right_forward.tikz index 4fd177b..9726738 100644 --- a/snippets/turnout_with_fouling_right_forward.tikz +++ b/snippets/turnout_with_fouling_right_forward.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/vehicle.tikz b/snippets/vehicle.tikz index 3a79660..fae0bf7 100644 --- a/snippets/vehicle.tikz +++ b/snippets/vehicle.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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[SideTrack] (-2.5,0) -- ++(5,0); diff --git a/snippets/vehicles.tikz b/snippets/vehicles.tikz index 8aa5f4b..7ba2d94 100644 --- a/snippets/vehicles.tikz +++ b/snippets/vehicles.tikz @@ -1,9 +1,8 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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[SideTrack] (-2.5,0) -- ++(5,0); -\pic at (-2,0) {vehicles}; -\node[font=\sffamily] at (0,0) {label}; \ No newline at end of file +\pic at (-2,0) {vehicles}; \ No newline at end of file diff --git a/snippets/vehicles_with_label.tikz b/snippets/vehicles_with_label.tikz new file mode 100644 index 0000000..2c57998 --- /dev/null +++ b/snippets/vehicles_with_label.tikz @@ -0,0 +1,9 @@ +%!TEX TS-program = pdflatexmk +%!TEX root = ../snippets.tex + +% Copyright 2019 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[SideTrack] (-2.5,0) -- ++(5,0); +\pic at (-2,0) {vehicles}; +\node[font=\sffamily] at (0,0) {label}; \ No newline at end of file diff --git a/snippets/view_point_backward.tikz b/snippets/view_point_backward.tikz index 58b3de7..0e9f2fd 100644 --- a/snippets/view_point_backward.tikz +++ b/snippets/view_point_backward.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/snippets/view_point_forward.tikz b/snippets/view_point_forward.tikz index 310a673..1a6f6c0 100644 --- a/snippets/view_point_forward.tikz +++ b/snippets/view_point_forward.tikz @@ -1,7 +1,7 @@ %!TEX TS-program = pdflatexmk -%!TEX root = ../overview.tex +%!TEX root = ../snippets.tex -% Copyright 2018 Martin Scheidt (ISC license) +% Copyright 2019 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); diff --git a/src/tikzlibrarytrackschematic.code.tex b/src/tikzlibrarytrackschematic.code.tex index 8c7db3d..fb61928 100644 --- a/src/tikzlibrarytrackschematic.code.tex +++ b/src/tikzlibrarytrackschematic.code.tex @@ -1,4 +1,7 @@ -% Copyright 2018 Martin Scheidt (ISC license) +%% symbol library for TikZ track schematics +% +% Copyright 2019 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. \ProvidesFileRCS{tikzlibrarytrackschematic.code.tex} @@ -7,6 +10,5 @@ \usetikzlibrary{trackschematic.trafficcontrol}% \usetikzlibrary{trackschematic.vehicles}% \usetikzlibrary{trackschematic.construction}% -% \usetikzlibrary{trackschematic.misc}% \endinput diff --git a/src/tikzlibrarytrackschematic.constructions.code.tex b/src/tikzlibrarytrackschematic.constructions.code.tex index f99122d..8d420ff 100644 --- a/src/tikzlibrarytrackschematic.constructions.code.tex +++ b/src/tikzlibrarytrackschematic.constructions.code.tex @@ -1,27 +1,34 @@ %% symbol library for TikZ track schematics % -% Copyright 2018 Martin Scheidt (ISC license) - +% Copyright 2019 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. +\ProvidesFileRCS{tikzlibrarytrackschematic.construction.code.tex} + +\colorlet{background}{white} +\colorlet{foreground}{black} + \tikzset{ + pics/platform_left/.default=4, pics/platform_left/.style n args={1}{ code={ \path[draw, line width=0.75pt,foreground] (0,0.5) -- ++(0,-0.3) -- ++(#1,0) -- ++(0,0.3); \path[draw, line width=0.75pt,foreground] (0,0.3) -- ++(#1,0); } }, - pics/platform_left/.default=4, } + \tikzset{ + pics/platform_right/.default=4, pics/platform_right/.style n args={1}{ code={ \path[draw, line width=0.75pt,foreground] (0,-0.5) -- ++(0,0.3) -- ++(#1,0) -- ++(0,-0.3); \path[draw, line width=0.75pt,foreground] (0,-0.3) -- ++(#1,0); } }, - pics/platform_right/.default=4, } + \tikzset{ level_crossing_barrier_left/.pic={ { % road @@ -34,6 +41,7 @@ } }; } + \tikzset{ level_crossing_barrier_right/.pic={ { % road @@ -46,6 +54,7 @@ } }; } + \tikzset{ level_crossing/.pic={ { % road @@ -54,6 +63,7 @@ } }; } + \tikzset{ pics/bridge_left/.style n args={1}{ code={ @@ -62,14 +72,16 @@ }, pics/bridge_left/.default=3, } + \tikzset{ + pics/bridge_right/.default=3, pics/bridge_right/.style n args={1}{ code={ \path[draw, line width=0.75pt,foreground] (-0.1,-0.48) -- ++(0.08,0.08) -- ++(#1,0) -- ++(0.08,-0.08); } }, - pics/bridge_right/.default=3, } + \tikzset{ interlocking/.pic={ { @@ -79,6 +91,7 @@ } }; } + \tikzset{ hump/.pic={ { % upper side @@ -101,3 +114,4 @@ }; } +\endinput diff --git a/src/tikzlibrarytrackschematic.topology.code.tex b/src/tikzlibrarytrackschematic.topology.code.tex index 9eed9c1..95601d6 100644 --- a/src/tikzlibrarytrackschematic.topology.code.tex +++ b/src/tikzlibrarytrackschematic.topology.code.tex @@ -1,24 +1,28 @@ %% symbol library for TikZ track schematics % % Copyright 2019 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. +\ProvidesFileRCS{tikzlibrarytrackschematic.topology.code.tex} + \colorlet{background}{white} \colorlet{foreground}{black} -\tikzset{MainTrack/.style={line width=2pt,foreground}} -\tikzset{SideTrack/.style={line width=0.7pt,foreground}} +\tikzset{MainTrack/.style={line width=2pt,foreground}}% +\tikzset{SideTrack/.style={line width=0.7pt,foreground}}% \tikzset{ - pics/track_number/.style args={#1}{ - code={ + pics/track_number/.default=, + pics/track_number/.style args={#1}{% + code={% \node[fill=background,font=\sffamily,text=foreground] at (0,0) {#1}; % speed indicator } }, - pics/track_number/.default=, -} +}% + \tikzset{ + pics/track_distance/.default=, pics/track_distance/.style args={#1}{ code={ \fill[foreground] (0,0.96) -- ++(-0.1,-0.15) -- ++(0.2,0) -- cycle; % upper triangle @@ -26,75 +30,86 @@ \fill[foreground] (0,0.04) -- ++(-0.1,0.15) -- ++(0.2,0) -- cycle; % lower triangle } }, - pics/track_distance/.default=, } + \tikzset{ + pics/turnout_left_forward/.default=foreground, pics/turnout_left_forward/.style args={#1}{ code={ \path[draw=foreground,line width=1pt,fill=#1] (0,0) -- ++(0.4,0.4) -- ++(0,-0.4); % turnout marker } }, - pics/turnout_left_forward/.default=foreground, } + \tikzset{ + pics/turnout_left_backward/.default=foreground, pics/turnout_left_backward/.style args={#1}{ code={ \path[draw=foreground,line width=1pt,fill=#1] (0,0) -- ++(-0.4,-0.4) -- ++(0,0.4); % turnout marker } }, - pics/turnout_left_backward/.default=foreground, } + \tikzset{ + pics/turnout_right_forward/.default=foreground, pics/turnout_right_forward/.style args={#1}{ code={ \path[draw=foreground,line width=1pt,fill=#1] (0,0) -- ++(0.4,-0.4) -- ++(0,0.4); % turnout marker } }, - pics/turnout_right_forward/.default=foreground, } + \tikzset{ + pics/turnout_right_backward/.default=foreground, pics/turnout_right_backward/.style args={#1}{ code={ \path[draw=foreground,line width=1pt,fill=#1] (0,0) -- ++(-0.4,0.4) -- ++(0,-0.4); % turnout marker } }, - pics/turnout_right_backward/.default=foreground, } + \tikzset{ fouling_point_right_backward/.pic={ \path[draw=foreground,line width=0.75pt] (-0.7,0) -- ++(0,0.7); % fouling point indicator }; } + \tikzset{ fouling_point_left_backward/.pic={ \path[draw=foreground,line width=0.75pt] (-0.7,0) -- ++(0,-0.7); % fouling point indicator }; } + \tikzset{ fouling_point_right_forward/.pic={ \path[draw=foreground,line width=0.75pt] (0.7,0) -- ++(0,-0.7); % fouling point indicator }; } + \tikzset{ fouling_point_left_forward/.pic={ \path[draw=foreground,line width=0.75pt] (0.7,0) -- ++(0,0.7); % fouling point indicator }; } + \tikzset{ slip_left_forward/.pic={ \path[draw=foreground,line width=0.75pt] (-0.4,0.1) -- (0.3,0.4); % fouling point indicator }; } + \tikzset{ slip_left_backward/.pic={ \path[draw=foreground,line width=0.75pt] (-0.3,-0.4) -- (0.4,-0.1); % fouling point indicator }; } + \tikzset{ slip_right_forward/.pic={ \path[draw=foreground,line width=0.75pt] (-0.4,-0.1) -- (0.3,-0.4); % fouling point indicator }; } + \tikzset{ slip_right_backward/.pic={ \path[draw=foreground,line width=0.75pt] (0.4,0.1) -- (-0.3,0.4); % fouling point indicator @@ -105,11 +120,13 @@ \path[draw=foreground,line width=1.5pt] (0,-0.1) -- ++(0.3,0); % points indicator }; } + \tikzset{ turnout_left_forward_points_left/.pic={ \path[draw=foreground,line width=1.5pt] (-0.035, 0.1) -- ++(0.2,0.2); % points indicator }; } + \tikzset{ turnout_left_forward_points_moving/.pic={ \fill[foreground] (0.075,-0.1) circle (0.05); % points indicator left @@ -118,16 +135,19 @@ \fill[foreground] (0.115, 0.25) circle (0.05); }; } + \tikzset{ turnout_left_backward_points_right/.pic={ \path[draw=foreground,line width=1.5pt] (0,0.1) -- ++(-0.3,0); % points indicator }; } + \tikzset{ turnout_left_backward_points_left/.pic={ \path[draw=foreground,line width=1.5pt] (0.035,-0.1) -- ++(-0.2,-0.2); % points indicator }; } + \tikzset{ turnout_left_backward_points_moving/.pic={ \fill[foreground] (-0.075,0.1) circle (0.05); % points indicator left @@ -136,16 +156,19 @@ \fill[foreground] (-0.115,-0.25) circle (0.05); }; } + \tikzset{ turnout_right_forward_points_right/.pic={ \path[draw=foreground,line width=1.5pt] (-0.035,-0.1) -- ++(0.2,-0.2); % points indicator }; } + \tikzset{ turnout_right_forward_points_left/.pic={ \path[draw=foreground,line width=1.5pt] (0,0.1) -- ++(0.3,0); % points indicator }; } + \tikzset{ turnout_right_forward_points_moving/.pic={ \fill[foreground] (0.075, 0.1) circle (0.05); % points indicator left @@ -154,16 +177,19 @@ \fill[foreground] (0.115,-0.25) circle (0.05); }; } + \tikzset{ turnout_right_backward_points_right/.pic={ \path[draw=foreground,line width=1.5pt] (0.035,0.1) -- ++(-0.2,0.2); % points indicator }; } + \tikzset{ turnout_right_backward_points_left/.pic={ \path[draw=foreground,line width=1.5pt] (0,-0.1) -- ++(-0.3,0); % points indicator }; } + \tikzset{ turnout_right_backward_points_moving/.pic={ \fill[foreground] (-0.075,-0.1) circle (0.05); % points indicator left @@ -172,37 +198,45 @@ \fill[foreground] (-0.115,0.25) circle (0.05); }; } + \tikzset{ derailer_right_forward/.pic={ \path[draw=foreground, line width=1pt] (0,0.2) -- ++(0,-0.4); % derailer marker \path[draw=foreground,->,>=latex,line width=1pt,dashed] (0,0) -- ++(0.4,-0.4); % derailer arrow }; } + \tikzset{ derailer_right_backward/.pic={ \path[draw=foreground, line width=1pt] (0,0.2) -- ++(0,-0.4); % derailer marker \path[draw=foreground,->,>=latex,line width=1pt,dashed] (0,0) -- ++(-0.4,0.4); % derailer arrow }; } + \tikzset{ derailer_left_forward/.pic={ \path[draw=foreground, line width=1pt] (0,0.2) -- ++(0,-0.4); % derailer marker \path[draw=foreground,->,>=latex,line width=1pt,dashed] (0,0) -- ++(0.4,0.4); % derailer arrow }; } + \tikzset{ derailer_left_backward/.pic={ \path[draw=foreground, line width=1pt] (0,0.2) -- ++(0,-0.4); % derailer marker \path[draw=foreground,->,>=latex,line width=1pt,dashed] (0,0) -- ++(-0.4,-0.4); % derailer arrow }; } + \tikzset{ bufferstop_forward/.pic={ \path[draw=foreground, line width=1pt] (-0.1,0.2) -- ++(0.1,0) -- ++(0,-0.4) -- ++ (-0.1,0); % bufferstop marker }; } + \tikzset{ bufferstop_backward/.pic={ \path[draw=foreground, line width=1pt] (0.1,0.2) -- ++(-0.1,0) -- ++(0,-0.4) -- ++ (0.1,0); % bufferstop marker }; } + +\endinput diff --git a/src/tikzlibrarytrackschematic.trafficcontrol.code.tex b/src/tikzlibrarytrackschematic.trafficcontrol.code.tex index 15a9e44..69b78b7 100644 --- a/src/tikzlibrarytrackschematic.trafficcontrol.code.tex +++ b/src/tikzlibrarytrackschematic.trafficcontrol.code.tex @@ -1,9 +1,14 @@ %% symbol library for TikZ track schematics % % Copyright 2019 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. +\ProvidesFileRCS{tikzlibrarytrackschematic.trafficcontrol.code.tex} + +\colorlet{background}{white} +\colorlet{foreground}{black} + \tikzset{ train_berth_sign_forward/.pic={ \path[draw=foreground,line width=1pt] (0,0) -- ++(0,-0.4) -- ++(0.3,0); % signal pole @@ -15,6 +20,7 @@ } }; } + \tikzset{ train_berth_sign_backward/.pic={ \path[draw=foreground,line width=1pt] (0,0) -- ++(0,0.4) -- ++(-0.3,0); % signal pole @@ -26,31 +32,35 @@ } }; } + \tikzset{ + pics/train_berth_shape/.default=4, pics/train_berth_shape/.style n args={1}{ code={ \path[draw=foreground,line width=0.75pt,densely dotted] (0, 0.25) -- (0, 0.35) -- (#1, 0.35) -- ++(0,-0.1); % berth shape \path[draw=foreground,line width=0.75pt,densely dotted] (0,-0.25) -- (0,-0.35) -- (#1,-0.35) -- ++(0, 0.1); % berth shape } }, - pics/train_berth_shape/.default=4, } + \tikzset{ + pics/train_berth_shape/.default=4, pics/train_berth_shape_forward/.style n args={1}{ code={ \path[draw=foreground,line width=0.75pt,densely dotted] (0,-0.25) -- (0,-0.35) -- (#1,-0.35) -- ++(0, 0.1); % berth shape } }, - pics/train_berth_shape/.default=4, } + \tikzset{ + pics/train_berth_shape/.default=4, pics/train_berth_shape_backward/.style n args={1}{ code={ \path[draw=foreground,line width=0.75pt,densely dotted] (0, 0.25) -- (0, 0.35) -- (#1, 0.35) -- ++(0,-0.1); % berth shape } }, - pics/train_berth_shape/.default=4, } + \tikzset{ view_point_forward/.pic={ \path[draw=foreground,<-,>=latex,line width=1pt] (0,-0.1) -- ++(0,-0.3) -- ++(0.2,0); % arrow @@ -61,6 +71,7 @@ } }; } + \tikzset{ view_point_backward/.pic={ \path[draw=foreground,<-,>=latex,line width=1pt] (0,0.1) -- ++(0,0.3) -- ++(-0.2,0); % arrow @@ -71,7 +82,9 @@ } }; } + \tikzset{ + pics/distant_signal_forward/.default=, pics/distant_signal_forward/.style args={#1}{ code={ \path[draw=foreground,line width=1pt] (0,0) -- ++(0,-0.4) -- ++(0.4,0); % signal pole @@ -79,9 +92,10 @@ \node[rotate=-90,font=\sffamily,text=foreground] at (0.9,-0.4) {#1}; % speed indicator } }, - pics/distant_signal_forward/.default=, } + \tikzset{ + pics/distant_signal_backward/.default=, pics/distant_signal_backward/.style args={#1}{ code={ \path[draw=foreground,line width=1pt] (0,0) -- ++(0,0.4) -- ++(-0.4,0); % signal pole @@ -89,9 +103,10 @@ \node[rotate=90,font=\sffamily,text=foreground] at (-0.9,0.4) {#1}; % speed indicator } }, - pics/distant_signal_backward/.default=, } + \tikzset{ + pics/speed_signal_forward/.default=, pics/speed_signal_forward/.style args={#1}{ code={ \path[draw=foreground,line width=1pt] (0,0) -- ++(0,-0.4) -- ++(0.4,0); % signal pole @@ -99,9 +114,10 @@ \node[rotate=-90,font=\sffamily,text=foreground] at (1.0,-0.4) {#1}; % speed indicator } }, - pics/speed_signal_forward/.default=, } + \tikzset{ + pics/speed_signal_backward/.default=, pics/speed_signal_backward/.style args={#1}{ code={ \path[draw=foreground,line width=1pt] (0,0) -- ++(0,0.4) -- ++(-0.4,0); % signal pole @@ -109,8 +125,8 @@ \node[rotate=90,font=\sffamily,text=foreground] at (-1.0,0.4) {#1}; % speed indicator } }, - pics/speed_signal_backward/.default=, } + \tikzset{ pics/block_signal_forward/.style args={#1}{ code={ @@ -122,6 +138,7 @@ pics/block_signal_forward/.default=, } \tikzset{ + pics/block_signal_backward/.default=, pics/block_signal_backward/.style args={#1}{ code={ \path[draw=foreground,line width=1pt] (0,0) -- ++(0,0.4) -- ++(-0.7,0); % signal pole @@ -129,9 +146,10 @@ \node[rotate=90,font=\sffamily,text=foreground] at (-1.3,0.4) {#1}; % speed indicator } }, - pics/block_signal_backward/.default=, } + \tikzset{ + pics/route_signal_forward/.default=, pics/route_signal_forward/.style args={#1}{ code={ \path[draw=foreground,line width=1pt] (0,0) -- ++(0,-0.4) -- ++(0.7,0); % signal pole @@ -139,9 +157,10 @@ \node[rotate=-90,font=\sffamily,text=foreground] at (1.3,-0.4) {#1}; % speed indicator } }, - pics/route_signal_forward/.default=, } + \tikzset{ + pics/route_signal_backward/.default=, pics/route_signal_backward/.style args={#1}{ code={ \path[draw=foreground,line width=1pt] (0,0) -- ++(0,0.4) -- ++(-0.7,0); % signal pole @@ -149,14 +168,15 @@ \node[rotate=90,font=\sffamily,text=foreground] at (-1.3,0.4) {#1}; % speed indicator } }, - pics/route_signal_backward/.default=, } + \tikzset{ shunt_signal_forward/.pic={ \path[draw=foreground,line width=1pt] (0,0) -- ++(0,-0.4) -- ++(0.7,0); % signal pole \path[draw=foreground,line width=1pt] (0.6,-0.3) circle (0.1); % signal marker }; } + \tikzset{ shunt_signal_forward_locked/.pic={ \path[draw=foreground,line width=1pt] (0,0) -- ++(0,-0.4) -- ++(0.7,0); % signal pole @@ -165,12 +185,14 @@ \path[draw=foreground,line width=1pt] (0.6,-0.3) circle (0.1); % signal marker }; } + \tikzset{ shunt_signal_backward/.pic={ \path[draw=foreground, line width=1pt] (0,0) -- ++(0,0.4) -- ++(-0.7,0); % signal pole \path[draw=foreground, line width=1pt] (-0.6,0.3) circle (0.1); % signal marker }; } + \tikzset{ shunt_signal_backward_locked/.pic={ \path[draw=foreground, line width=1pt] (0,0) -- ++(0,0.4) -- ++(-0.7,0); % signal pole @@ -179,55 +201,65 @@ \path[draw=foreground, line width=1pt] (-0.6,0.3) circle (0.1); % signal marker }; } + \tikzset{ shunt_limit_forward/.pic={ \path[draw=foreground,line width=1pt] (0,0) -- ++(0,-0.4) -- ++(0.7,0); % signal pole \path[draw=foreground,line width=1pt] (0.6,-0.2) arc (270:90:-0.1) -- cycle;; % signal marker }; } + \tikzset{ shunt_limit_backward/.pic={ \path[draw=foreground,line width=1pt] (0,0) -- ++(0,0.4) -- ++(-0.7,0); % signal pole \path[draw=foreground,line width=1pt] (-0.6,0.4) arc (90:270:0.1) -- cycle;; % signal marker }; } + \tikzset{ block_end_marker_forward/.pic={ \path[draw=foreground,line width=1pt] (0,0) -- ++(0,-0.5); % marker \path[draw=foreground,line width=1pt] (-0.1,-0.7) rectangle ++(0.2,0.2); % sign }; } + \tikzset{ block_end_marker_backward/.pic={ \path[draw=foreground,line width=1pt] (0,0) -- ++(0,0.5); % marker \path[draw=foreground,line width=1pt] (0.1,0.7) rectangle ++(-0.2,-0.2); % sign }; } + \tikzset{ block_clearing_point_forward/.pic={ \path[draw=foreground,line width=1pt] (0,0.1) -- ++(0,-0.2); % marker \path[draw=foreground,line width=1pt] (0,-0.1) -- ++(-0.1,-0.1) -- ++(0.1,-0.1) -- ++(0.1,0.1) -- cycle; % sign }; } + \tikzset{ block_clearing_point_backward/.pic={ \path[draw=foreground, line width=1pt] (0,-0.1) -- ++(0,0.2); % marker \path[draw=foreground, line width=1pt] (0,0.1) -- ++(0.1,0.1) -- ++(-0.1,0.1) -- ++(-0.1,-0.1) -- cycle; % sign }; } + \tikzset{ route_clearing_point_forward/.pic={ \path[draw=foreground, line width=1pt] (0,0.1) -- ++(0,-0.2); % marker \path[draw=foreground, line width=1pt] (0,-0.2) circle (0.1); % sign }; } + \tikzset{ route_clearing_point_backward/.pic={ \path[draw=foreground, line width=1pt] (0,-0.1) -- ++(0,0.2); % marker \path[draw=foreground, line width=1pt] (0, 0.2) circle (0.1); % sign }; } + \tikzset{ + pics/clearing_point/.default=, pics/clearing_point/.style args={#1}{ code={ \path[draw=foreground, line width=1pt] (0 ,-0.1) -- ++( 0 ,0.2); % marker @@ -235,35 +267,39 @@ \node[font=\sffamily,text=foreground] at (0,0.45) {#1}; % indicator } }, - pics/clearing_point/.default=, } + \tikzset{ + pics/transmitter_below/.default=background, pics/transmitter_below/.style args={#1}{ code={ \path[draw=foreground,line width=1pt,fill=#1] (-0.25,0) rectangle (0.25,-0.25); % turnout marker } }, - pics/transmitter_below/.default=background, } + \tikzset{ + pics/transmitter_below_forward/.default=background, pics/transmitter_below_forward/.style args={#1}{ code={ \path[draw=foreground,line width=1pt,fill=#1] (-0.25,0) rectangle (0.25,-0.25); % turnout marker \path[draw=foreground] (0.1,-0.05) -- (0.2,-0.125) -- (0.1,-0.2) -- cycle; } }, - pics/transmitter_below_forward/.default=background, } + \tikzset{ + pics/transmitter_below_backward/.default=background, pics/transmitter_below_backward/.style args={#1}{ code={ \path[draw=foreground,line width=1pt,fill=#1] (-0.25,0) rectangle (0.25,-0.25); % turnout marker \path[draw=foreground] (-0.1,-0.05) -- (-0.2,-0.125) -- (-0.1,-0.2) -- cycle; } }, - pics/transmitter_below_backward/.default=background, } + \tikzset{ + pics/transmitter_below_bidirectional/.default=background, pics/transmitter_below_bidirectional/.style args={#1}{ code={ \path[draw=foreground,line width=1pt,fill=#1] (-0.25,0) rectangle (0.25,-0.25); % turnout marker @@ -271,35 +307,39 @@ \path[draw=foreground] (-0.1,-0.05) -- (-0.2,-0.125) -- (-0.1,-0.2) -- cycle; } }, - pics/transmitter_below_bidirectional/.default=background, } + \tikzset{ + pics/transmitter_above/.default=background, pics/transmitter_above/.style args={#1}{ code={ \path[draw=foreground,line width=1pt,fill=#1] (-0.25,0) rectangle (0.25,0.25); % turnout marker } }, - pics/transmitter_above/.default=background, } + \tikzset{ + pics/transmitter_above_forward/.default=background, pics/transmitter_above_forward/.style args={#1}{ code={ \path[draw=foreground,line width=1pt,fill=#1] (-0.25,0) rectangle (0.25,0.25); % turnout marker \path[draw=foreground] (0.1,0.05) -- (0.2,0.125) -- (0.1,0.2) -- cycle; } }, - pics/transmitter_above_forward/.default=background, } + \tikzset{ + pics/transmitter_above_backward/.default=background, pics/transmitter_above_backward/.style args={#1}{ code={ \path[draw=foreground,line width=1pt,fill=#1] (-0.25,0) rectangle (0.25,0.25); % turnout marker \path[draw=foreground] (-0.1,0.05) -- (-0.2,0.125) -- (-0.1,0.2) -- cycle; } }, - pics/transmitter_above_backward/.default=background, } + \tikzset{ + pics/transmitter_above_bidirectional/.default=background, pics/transmitter_above_bidirectional/.style args={#1}{ code={ \path[draw=foreground,line width=1pt,fill=#1] (-0.25,0) rectangle (0.25,0.25); % turnout marker @@ -307,5 +347,6 @@ \path[draw=foreground] (-0.1,0.05) -- (-0.2,0.125) -- (-0.1,0.2) -- cycle; } }, - pics/transmitter_above_bidirectional/.default=background, -} \ No newline at end of file +} + +\endinput diff --git a/src/tikzlibrarytrackschematic.vehicles.code.tex b/src/tikzlibrarytrackschematic.vehicles.code.tex index ebbd1cf..262dfb7 100644 --- a/src/tikzlibrarytrackschematic.vehicles.code.tex +++ b/src/tikzlibrarytrackschematic.vehicles.code.tex @@ -1,22 +1,26 @@ %% symbol library for TikZ track schematics % -% Copyright 2018 Martin Scheidt (ISC license) - +% Copyright 2019 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. +\ProvidesFileRCS{tikzlibrarytrackschematic.vehicles.code.tex} + \colorlet{background}{white} \colorlet{foreground}{black} \tikzset{ + pics/vehicles/.default=4, pics/vehicles/.style args={#1}{ code={ \path[draw=foreground, double, line width=0.3pt, fill=background] (0,-0.3) -- ++(#1,0) -- ++(0,0.6) -- ++(-#1,0) -- cycle; % train shape % \node at (-2,0) {\emph{#2}}; %label of train } }, - pics/vehicles/.default=4, } + \tikzset{ + pics/train_moving_forward/.default=4, pics/train_moving_forward/.style args={#1}{ code={ \fill[fill=background] (-0.3,0.3) -- ( 0.1,0.3) -- (0.4,0) -- ( 0.1,-0.3) -- (-0.3,-0.3) -- cycle; @@ -27,9 +31,10 @@ % \node at (-2,0) {\emph{#2}}; %label of train } }, - pics/train_moving_forward/.default=4, } + \tikzset{ + pics/train_moving_backward/.default=4, pics/train_moving_backward/.style args={#1}{ code={ \fill[fill=background] ( 0.3 ,0.3) -- (-0.1,0.3) -- (-0.4,0) -- (-0.1,-0.3) -- ( 0.3 ,-0.3) -- cycle; @@ -40,9 +45,10 @@ % \node at (-2,0) {\emph{#2}}; %label of train } }, - pics/train_moving_backward/.default=4, } + \tikzset{ + pics/train_moving_slow_forward/.default=4, pics/train_moving_slow_forward/.style args={#1}{ code={ \fill[fill=background] (-0.3 ,0.3) -- (-0.1,0.3) -- (0.2,0) -- (-0.1,-0.3) -- (-0.3 ,-0.3) -- cycle; @@ -52,9 +58,10 @@ % \node at (-2,0) {\emph{#2}}; %label of train } }, - pics/train_moving_slow_forward/.default=4, } + \tikzset{ + pics/train_moving_slow_backward/.default=4, pics/train_moving_slow_backward/.style args={#1}{ code={ \fill[fill=background] ( 0.3 ,0.3) -- ( 0.1,0.3) -- (-0.2,0) -- ( 0.1,-0.3) -- ( 0.3 ,-0.3) -- cycle; @@ -64,9 +71,10 @@ % \node at (-2,0) {\emph{#2}}; %label of train } }, - pics/train_moving_slow_backward/.default=4, } + \tikzset{ + pics/train_moving_fast_forward/.default=4, pics/train_moving_fast_forward/.style args={#1}{ code={ \fill[fill=background] (-0.3 ,0.3) -- ( 0.3,0.3) -- (0.6,0) -- ( 0.3,-0.3) -- (-0.3 ,-0.3) -- cycle; @@ -78,9 +86,10 @@ % \node at (-2,0) {\emph{#2}}; %label of train } }, - pics/train_moving_fast_forward/.default=4, } + \tikzset{ + pics/train_moving_fast_backward/.default=4, pics/train_moving_fast_backward/.style args={#1}{ code={ \fill[fill=background] ( 0.3 ,0.3) -- (-0.3,0.3) -- (-0.6,0) -- (-0.3,-0.3) -- ( 0.3 ,-0.3) -- cycle; @@ -92,63 +101,70 @@ % \node at (-2,0) {\emph{#2}}; %label of train } }, - pics/train_moving_fast_backward/.default=4, } + \tikzset{ + pics/train_direction_forward/.default=4, pics/train_direction_forward/.style args={#1}{ code={ \path[draw=foreground, line width=1pt, fill=background] (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/.default=4, pics/train_direction_backward/.style args={#1}{ code={ \path[draw=foreground, line width=1pt, fill=background] (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/.default=4, pics/ghost_train_direction_forward/.style args={#1}{ code={ \path[draw=foreground, 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_direction_forward/.default=4, } + \tikzset{ + pics/ghost_train_direction_backward/.default=4, pics/ghost_train_direction_backward/.style args={#1}{ code={ \path[draw=foreground, 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_direction_backward/.default=4, } + \tikzset{ + pics/train_shunt_mode_forward/.default=4, pics/train_shunt_mode_forward/.style args={#1}{ code={ \path[draw=foreground, double, line width=0.3pt, fill=background] (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_shunt_mode_forward/.default=4, } + \tikzset{ + pics/train_shunt_mode_backward/.default=4, pics/train_shunt_mode_backward/.style args={#1}{ code={ \path[draw=foreground, double, line width=0.3pt, fill=background] (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_shunt_mode_backward/.default=4, } + \tikzset{ + pics/train_shunting_forward/.default=4, pics/train_shunting_forward/.style args={#1}{ code={ \fill[fill=background] (-0.3 ,0.3) -- (-0.1,0.3) -- (0.2,0) -- (-0.1,-0.3) -- (-0.3 ,-0.3) -- cycle; @@ -158,9 +174,10 @@ % \node at (-2,0) {\emph{#2}}; %label of train } }, - pics/train_shunting_forward/.default=4, } + \tikzset{ + pics/train_shunting_backward/.default=4, pics/train_shunting_backward/.style args={#1}{ code={ \fill[fill=background] ( 0.3 ,0.3) -- ( 0.1,0.3) -- (-0.2,0) -- ( 0.1,-0.3) -- ( 0.3 ,-0.3) -- cycle; @@ -170,25 +187,30 @@ % \node at (-2,0) {\emph{#2}}; %label of train } }, - pics/train_shunting_backward/.default=4, } + \tikzset{ train_automatic_forward/.pic={ \path[draw=foreground, fill] (-0.15,0) -- ++(-0.15,0.15) -- ++(0,-0.3) -- cycle; % triangle }; } + \tikzset{ train_automatic_backward/.pic={ \path[draw=foreground, fill] (0.15,0) -- ++(0.15,0.15) -- ++(0,-0.3) -- cycle; % triangle }; } + \tikzset{ train_human_forward/.pic={ \path[draw=foreground, fill] (-0.4,0) circle (0.15); % dot }; } + \tikzset{ train_human_backward/.pic={ \path[draw=foreground, fill] (0.4,0) circle (0.15); % dot }; -} \ No newline at end of file +} + +\endinput diff --git a/symbology.pdf b/symbology.pdf new file mode 100644 index 0000000000000000000000000000000000000000..bb9575aea6a577f7a3491a49404118fea8ab70d7 GIT binary patch literal 41710 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 literal 0 HcmV?d00001 diff --git a/symbology.tex b/symbology.tex new file mode 100644 index 0000000..c340c30 --- /dev/null +++ b/symbology.tex @@ -0,0 +1,148 @@ +%!TEX TS-program = pdflatexmk + +% Copyright 2019 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]{article} + +\usepackage[margin=0pt]{geometry} +\pagestyle{empty} +\usepackage{longtable,siunitx,tikz,adjustbox} +\usepackage{listings} +\lstset{ + language=TeX, + basicstyle=\ttfamily, + columns=fullflexible, + breaklines=true +} + +\def\rootTrackschematic{../tikz-trackschematic} + +\renewcommand{\symbol}[1]{ + \adjustbox{valign=c}{\begin{tikzpicture}[scale=1.0,transform shape] + \input{\rootTrackschematic/snippets/#1} + \path (-3,-1.1) rectangle (3,1.1); % background rectangle to unify every cell containing a symbol + \end{tikzpicture}} +} +\newcommand{\code}[1]{\lstinputlisting[firstline=7]{\rootTrackschematic/snippets/#1}} +\newcounter{symbolNo} +\def\No{\stepcounter{symbolNo}\arabic{symbolNo}} + +\def\srcTrackschematic{\rootTrackschematic/src/tikzlibrarytrackschematic} +\input{\srcTrackschematic.topology.code.tex} +\input{\srcTrackschematic.trafficcontrol.code.tex} +\input{\srcTrackschematic.vehicles.code.tex} +\input{\srcTrackschematic.constructions.code.tex} + +\title{Symbology}\author{}\date{} + +\begin{document} + \maketitle + \centering + \begin{longtable}{|r|l|c|} + \hline + No. & Name & Symbol \\ + \endhead + \hline + \No & main track & \symbol{main_track.tikz} \\ + \hline + \No & track distance (in \si{\metre}) & \symbol{track_distance.tikz} \\ + \hline + \No & side track & \symbol{side_track.tikz} \\ + \hline + \No & track number & \symbol{track_number.tikz} \\ + \hline + \No & turnout & \symbol{turnout_left_forward.tikz} \\ + \hline + \No & \parbox[c]{5cm}{turnout\\with fouling point indicator} + & \symbol{turnout_with_fouling_left_forward.tikz} \\ + \hline + \No & double-slip turnout & \symbol{double-slip_turnout_left.tikz} \\ + \hline + \No & diamond crossing & \symbol{diamond_crossing_left.tikz} \\ + \hline + \No & \parbox[c]{5cm}{turnout\\with points in right position} + & \symbol{turnout_left_forward_right_position.tikz} \\ + \hline + \No & \parbox[c]{5cm}{turnout\\with points in left position} + & \symbol{turnout_left_forward_left_position.tikz} \\ + \hline + \No & \parbox[c]{5cm}{turnout\\with moving points} + & \symbol{turnout_left_forward_moving_points.tikz} \\ + \hline + \No & derailer & \symbol{derailer_left_forward.tikz} \\ + \hline + \No & bufferstop & \symbol{bufferstop_forward.tikz} \\ + \hline + \No & vehicles & \symbol{vehicles.tikz} \\ + \hline + \No & train & \symbol{train_direction_forward.tikz} \\ + \hline + \No & ghost train & \symbol{ghost_train_direction_forward.tikz} \\ + \hline + \No & train moving & \symbol{train_moving_forward.tikz} \\ + \hline + \No & train moving slow & \symbol{train_moving_slow_forward.tikz} \\ + \hline + \No & train moving fast & \symbol{train_moving_fast_forward.tikz} \\ + \hline + \No & train in shunting mode & \symbol{train_shunt_mode_forward.tikz} \\ + \hline + \No & train shunting & \symbol{train_shunting_forward.tikz} \\ + \hline + \No & train operated automatic & \symbol{train_drive_automatic.tikz} \\ + \hline + \No & train operated by human & \symbol{train_drive_human.tikz} \\ + \hline + \No & view point & \symbol{view_point_forward.tikz} \\ + \hline + \No & distant signal & \symbol{distant_signal_forward.tikz} \\ + \hline + \No & \parbox[c]{4cm}{distant signal\\with speed indicator} + & \symbol{distant_speed_signal_forward.tikz} \\ + \hline + \No & speed signal & \symbol{speed_signal_forward.tikz} \\ + \hline + \No & block signal & \symbol{block_signal_forward.tikz} \\ + \hline + \No & route signal & \symbol{route_signal_forward.tikz} \\ + \hline + \No & \parbox[c]{4cm}{combined signal\\(distant and block signal)} + & \symbol{combined_signal_forward.tikz} \\ + \hline + \No & shunt signal & \symbol{shunt_signal_forward.tikz} \\ + \hline + \No & shunt signal locked & \symbol{shunt_signal_forward_locked.tikz} \\ + \hline + \No & shunt limit & \symbol{shunt_limit_forward.tikz} \\ + \hline + \No & transmitter & \symbol{transmitter_below.tikz} \\ + \hline + \No & transmitter effective forward & \symbol{transmitter_below_forward.tikz} \\ + \hline + \No & transmitter bidirectional & \symbol{transmitter_below_bidirectional.tikz} \\ + \hline + \No & block end marker & \symbol{block_end_marker_forward.tikz} \\ + \hline + \No & block clearing point & \symbol{block_clearing_point_forward.tikz} \\ + \hline + \No & route clearing point & \symbol{route_clearing_point_forward.tikz} \\ + \hline + \No & clearing point & \symbol{clearing_point.tikz} \\ + \hline + \No & train berth sign & \symbol{train_berth_sign_forward.tikz} \\ + \hline + \No & train berth shape & \symbol{train_berth_shape.tikz} \\ + \hline + \No & platform & \symbol{platform_left.tikz} \\ + \hline + \No & level crossing & \symbol{level_crossing_single.tikz} \\ + \hline + \No & bridge & \symbol{bridge.tikz} \\ + \hline + \No & hump & \symbol{hump.tikz} \\ + \hline + \No & interlocking & \symbol{interlocking.tikz} \\ + \hline + \end{longtable} +\end{document} \ No newline at end of file