summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2020-02-11 22:09:05 +0000
committerKarl Berry <karl@freefriends.org>2020-02-11 22:09:05 +0000
commit1d2f86703b12cd7144620a2cbb2a8f54671fb2fa (patch)
tree4aee6828cc7f401ce5d5522b2cab9ba409ba5e95
parent1364e61a89ce52411c13844934f30bb06189be38 (diff)
tikz-trackschematic (11feb20)
git-svn-id: svn://tug.org/texlive/trunk@53754 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r--Master/texmf-dist/doc/latex/tikz-trackschematic/README.md5
-rw-r--r--Master/texmf-dist/doc/latex/tikz-trackschematic/tikz-trackschematic-documentation.sty10
-rw-r--r--Master/texmf-dist/doc/latex/tikz-trackschematic/tikz-trackschematic-snippets.pdfbin147916 -> 149835 bytes
-rw-r--r--Master/texmf-dist/doc/latex/tikz-trackschematic/tikz-trackschematic-snippets.tex22
-rw-r--r--Master/texmf-dist/doc/latex/tikz-trackschematic/tikz-trackschematic-snippets/braking_point_backward.tikz13
-rw-r--r--Master/texmf-dist/doc/latex/tikz-trackschematic/tikz-trackschematic-snippets/braking_point_forward.tikz13
-rw-r--r--Master/texmf-dist/doc/latex/tikz-trackschematic/tikz-trackschematic-snippets/danger_point_backward.tikz13
-rw-r--r--Master/texmf-dist/doc/latex/tikz-trackschematic/tikz-trackschematic-snippets/danger_point_forward.tikz13
-rw-r--r--Master/texmf-dist/doc/latex/tikz-trackschematic/tikz-trackschematic-snippets/end_of_movement_authority_backward.tikz (renamed from Master/texmf-dist/doc/latex/tikz-trackschematic/tikz-trackschematic-snippets/block_end_marker_backward.tikz)0
-rw-r--r--Master/texmf-dist/doc/latex/tikz-trackschematic/tikz-trackschematic-snippets/end_of_movement_authority_forward.tikz (renamed from Master/texmf-dist/doc/latex/tikz-trackschematic/tikz-trackschematic-snippets/block_end_marker_forward.tikz)0
-rw-r--r--Master/texmf-dist/doc/latex/tikz-trackschematic/tikz-trackschematic.pdfbin205165 -> 206717 bytes
-rw-r--r--Master/texmf-dist/doc/latex/tikz-trackschematic/tikz-trackschematic.tex94
-rw-r--r--Master/texmf-dist/tex/latex/tikz-trackschematic/tikzlibrarytrackschematic.trafficcontrol.code.tex150
13 files changed, 270 insertions, 63 deletions
diff --git a/Master/texmf-dist/doc/latex/tikz-trackschematic/README.md b/Master/texmf-dist/doc/latex/tikz-trackschematic/README.md
index 9148aebef52..9cc86f18723 100644
--- a/Master/texmf-dist/doc/latex/tikz-trackschematic/README.md
+++ b/Master/texmf-dist/doc/latex/tikz-trackschematic/README.md
@@ -40,6 +40,11 @@ These files should be copied wherever TeX can find it, for example in your TEXMF
# History
+## Version 0.5.1
+
+ * modified symbol "end of movement authority"
+ * added symbols "braking point" and "danger point"
+
## Version 0.5
* new improved syntax for topology
diff --git a/Master/texmf-dist/doc/latex/tikz-trackschematic/tikz-trackschematic-documentation.sty b/Master/texmf-dist/doc/latex/tikz-trackschematic/tikz-trackschematic-documentation.sty
index 46ddf742d0a..66bc2065a92 100644
--- a/Master/texmf-dist/doc/latex/tikz-trackschematic/tikz-trackschematic-documentation.sty
+++ b/Master/texmf-dist/doc/latex/tikz-trackschematic/tikz-trackschematic-documentation.sty
@@ -81,7 +81,15 @@
\RequirePackage{longtable,tikz,siunitx,adjustbox,rotating}
\sisetup{math-rm=\mathsf}
-\usetikzlibrary{trackschematic}
+\IfFileExists{tikzlibrarytrackschematic-dev.code.tex}{%
+ \usetikzlibrary{trackschematic-dev.topology}%
+ \usetikzlibrary{trackschematic-dev.trafficcontrol}%
+ \usetikzlibrary{trackschematic-dev.vehicles}%
+ \usetikzlibrary{trackschematic-dev.constructions}%
+ \usetikzlibrary{trackschematic-dev.messures}%
+}{%
+ \usetikzlibrary{trackschematic}%
+}%
\def\rootTrackschematic{.}
diff --git a/Master/texmf-dist/doc/latex/tikz-trackschematic/tikz-trackschematic-snippets.pdf b/Master/texmf-dist/doc/latex/tikz-trackschematic/tikz-trackschematic-snippets.pdf
index 3b74c49bebe..1ad91341215 100644
--- a/Master/texmf-dist/doc/latex/tikz-trackschematic/tikz-trackschematic-snippets.pdf
+++ b/Master/texmf-dist/doc/latex/tikz-trackschematic/tikz-trackschematic-snippets.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/tikz-trackschematic/tikz-trackschematic-snippets.tex b/Master/texmf-dist/doc/latex/tikz-trackschematic/tikz-trackschematic-snippets.tex
index 7ada4e00c30..7deb9f0c01e 100644
--- a/Master/texmf-dist/doc/latex/tikz-trackschematic/tikz-trackschematic-snippets.tex
+++ b/Master/texmf-dist/doc/latex/tikz-trackschematic/tikz-trackschematic-snippets.tex
@@ -180,10 +180,6 @@
\hline
\No & train running over a junction & \symbol{bend_train.tikz} & \code{bend_train.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}
@@ -221,9 +217,23 @@
\hline
\No & shunt limit (backward) & \symbol{shunt_limit_backward.tikz} & \code{shunt_limit_backward.tikz} & \texttt{trafficcontrol} \\
\hline
- \No & block end marker (forward) & \symbol{block_end_marker_forward.tikz} & \code{block_end_marker_forward.tikz} & \texttt{trafficcontrol} \\
+ \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 & braking point (forward) & \symbol{braking_point_forward.tikz} & \code{braking_point_forward.tikz} & \texttt{trafficcontrol} \\
+ \hline
+ \No & braking point (backward) & \symbol{braking_point_backward.tikz} & \code{braking_point_backward.tikz} & \texttt{trafficcontrol} \\
+ \hline
+ \No & end of movement authority (forward)
+ & \symbol{end_of_movement_authority_forward.tikz} & \code{end_of_movement_authority_forward.tikz} & \texttt{trafficcontrol} \\
+ \hline
+ \No & end of movement authority (backward)
+ & \symbol{end_of_movement_authority_backward.tikz} & \code{end_of_movement_authority_backward.tikz} & \texttt{trafficcontrol} \\
+ \hline
+ \No & danger point (forward) & \symbol{danger_point_forward.tikz} & \code{danger_point_forward.tikz} & \texttt{trafficcontrol} \\
\hline
- \No & block end marker (backward) & \symbol{block_end_marker_backward.tikz} & \code{block_end_marker_backward.tikz} & \texttt{trafficcontrol} \\
+ \No & danger point (backward) & \symbol{danger_point_backward.tikz} & \code{danger_point_backward.tikz} & \texttt{trafficcontrol} \\
\hline
\No & route (forward \& backward) & \symbol{route.tikz} & \code{route.tikz} & \texttt{trafficcontrol} \\
\hline
diff --git a/Master/texmf-dist/doc/latex/tikz-trackschematic/tikz-trackschematic-snippets/braking_point_backward.tikz b/Master/texmf-dist/doc/latex/tikz-trackschematic/tikz-trackschematic-snippets/braking_point_backward.tikz
new file mode 100644
index 00000000000..72803b2b455
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/tikz-trackschematic/tikz-trackschematic-snippets/braking_point_backward.tikz
@@ -0,0 +1,13 @@
+%!TEX TS-program = pdflatexmk
+%!TEX root = ../snippets.tex
+
+% Copyright (c) 2018 - 2020, Martin Scheidt (ISC license)
+% Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies.
+
+\coordinate (A) at (0,0);
+\coordinate (B) at (6,0);
+\coordinate (S) at (3,0);
+
+\maintrack (A) -- (B);
+
+\brakingpoint[backward] at (S) label (); \ No newline at end of file
diff --git a/Master/texmf-dist/doc/latex/tikz-trackschematic/tikz-trackschematic-snippets/braking_point_forward.tikz b/Master/texmf-dist/doc/latex/tikz-trackschematic/tikz-trackschematic-snippets/braking_point_forward.tikz
new file mode 100644
index 00000000000..da340269654
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/tikz-trackschematic/tikz-trackschematic-snippets/braking_point_forward.tikz
@@ -0,0 +1,13 @@
+%!TEX TS-program = pdflatexmk
+%!TEX root = ../snippets.tex
+
+% Copyright (c) 2018 - 2020, Martin Scheidt (ISC license)
+% Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies.
+
+\coordinate (A) at (0,0);
+\coordinate (B) at (6,0);
+\coordinate (S) at (3,0);
+
+\maintrack (A) -- (B);
+
+\brakingpoint[forward] at (S) label (); \ No newline at end of file
diff --git a/Master/texmf-dist/doc/latex/tikz-trackschematic/tikz-trackschematic-snippets/danger_point_backward.tikz b/Master/texmf-dist/doc/latex/tikz-trackschematic/tikz-trackschematic-snippets/danger_point_backward.tikz
new file mode 100644
index 00000000000..a8a4905ac69
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/tikz-trackschematic/tikz-trackschematic-snippets/danger_point_backward.tikz
@@ -0,0 +1,13 @@
+%!TEX TS-program = pdflatexmk
+%!TEX root = ../snippets.tex
+
+% Copyright (c) 2018 - 2020, Martin Scheidt (ISC license)
+% Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies.
+
+\coordinate (A) at (0,0);
+\coordinate (B) at (6,0);
+\coordinate (S) at (3,0);
+
+\maintrack (A) -- (B);
+
+\dangerpoint[backward] at (S) label (); \ No newline at end of file
diff --git a/Master/texmf-dist/doc/latex/tikz-trackschematic/tikz-trackschematic-snippets/danger_point_forward.tikz b/Master/texmf-dist/doc/latex/tikz-trackschematic/tikz-trackschematic-snippets/danger_point_forward.tikz
new file mode 100644
index 00000000000..73d2bbaed84
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/tikz-trackschematic/tikz-trackschematic-snippets/danger_point_forward.tikz
@@ -0,0 +1,13 @@
+%!TEX TS-program = pdflatexmk
+%!TEX root = ../snippets.tex
+
+% Copyright (c) 2018 - 2020, Martin Scheidt (ISC license)
+% Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies.
+
+\coordinate (A) at (0,0);
+\coordinate (B) at (6,0);
+\coordinate (S) at (3,0);
+
+\maintrack (A) -- (B);
+
+\dangerpoint[forward] at (S) label (); \ No newline at end of file
diff --git a/Master/texmf-dist/doc/latex/tikz-trackschematic/tikz-trackschematic-snippets/block_end_marker_backward.tikz b/Master/texmf-dist/doc/latex/tikz-trackschematic/tikz-trackschematic-snippets/end_of_movement_authority_backward.tikz
index 9e36abeadbd..9e36abeadbd 100644
--- a/Master/texmf-dist/doc/latex/tikz-trackschematic/tikz-trackschematic-snippets/block_end_marker_backward.tikz
+++ b/Master/texmf-dist/doc/latex/tikz-trackschematic/tikz-trackschematic-snippets/end_of_movement_authority_backward.tikz
diff --git a/Master/texmf-dist/doc/latex/tikz-trackschematic/tikz-trackschematic-snippets/block_end_marker_forward.tikz b/Master/texmf-dist/doc/latex/tikz-trackschematic/tikz-trackschematic-snippets/end_of_movement_authority_forward.tikz
index 81ec5fd65aa..81ec5fd65aa 100644
--- a/Master/texmf-dist/doc/latex/tikz-trackschematic/tikz-trackschematic-snippets/block_end_marker_forward.tikz
+++ b/Master/texmf-dist/doc/latex/tikz-trackschematic/tikz-trackschematic-snippets/end_of_movement_authority_forward.tikz
diff --git a/Master/texmf-dist/doc/latex/tikz-trackschematic/tikz-trackschematic.pdf b/Master/texmf-dist/doc/latex/tikz-trackschematic/tikz-trackschematic.pdf
index 53dda09131d..16260b16895 100644
--- a/Master/texmf-dist/doc/latex/tikz-trackschematic/tikz-trackschematic.pdf
+++ b/Master/texmf-dist/doc/latex/tikz-trackschematic/tikz-trackschematic.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/tikz-trackschematic/tikz-trackschematic.tex b/Master/texmf-dist/doc/latex/tikz-trackschematic/tikz-trackschematic.tex
index 73d81f0b8a6..d0a49364050 100644
--- a/Master/texmf-dist/doc/latex/tikz-trackschematic/tikz-trackschematic.tex
+++ b/Master/texmf-dist/doc/latex/tikz-trackschematic/tikz-trackschematic.tex
@@ -519,7 +519,7 @@
An absolute \textit{(label-coord)} or \textit{(bend-coord)} can be specified with the Ti\emph{k}Z \textbackslash coordinate command.
\subsection{Traffic control}
- \subsubsection{Signals}\label{sec:signals}
+ \subsubsection{Stationary signals}\label{sec:signals}
\symboldescription{Generic signal command}
\begin{lstlisting}[gobble=10]
@@ -679,6 +679,59 @@
\signal[berth,options] at (coord) label (name);
\end{lstlisting}
+ \subsubsection{Non-stationary points}\label{sec:points}
+
+ \symboldescription{View point}
+ \symbol{view_point_forward.tikz}
+ \begin{lstlisting}[gobble=10]
+ \viewpoint[options] at (coord);
+ \end{lstlisting}
+ values for \texttt{options} (comma seperated):
+ \begin{itemize}[label={}]
+ \item \texttt{forward} or \texttt{backward} (mandatory)
+ \item \texttt{position=left} or \texttt{position=right} (optional, default: \textit{traffic practice})
+ \item \texttt{foreground=\textit{color}} (optional, default: \texttt{black})
+ \end{itemize}
+
+ \symboldescription{Braking point}
+ \symbol{braking_point_forward.tikz}
+ \begin{lstlisting}[gobble=10]
+ \brakingpoint[options] at (coord) label (name);
+ \end{lstlisting}
+ values for \texttt{options} (comma seperated):
+ \begin{itemize}[label={}]
+ \item \texttt{forward}, \texttt{backward} or \texttt{bidirectional} (mandatory)
+ \item \texttt{position=left} or \texttt{position=right} (optional, default: \textit{traffic practice})
+ \item \texttt{shift label=\{\textit{(label-coord)}\}} (optional, default: (0,0))
+ \item \texttt{foreground=\textit{color}} (optional, default: \texttt{black})
+ \end{itemize}
+
+ \symboldescription{End of movement authority}
+ \symbol{end_of_movement_authority_forward.tikz}
+ \begin{lstlisting}[gobble=10]
+ \movementauthority[options] at (coord) label (name);
+ \end{lstlisting}
+ values for \texttt{options} (comma seperated):
+ \begin{itemize}[label={}]
+ \item \texttt{forward}, \texttt{backward} or \texttt{bidirectional} (mandatory)
+ \item \texttt{position=left} or \texttt{position=right} (optional, default: \textit{traffic practice})
+ \item \texttt{shift label=\{\textit{(label-coord)}\}} (optional, default: (0,0))
+ \item \texttt{foreground=\textit{color}} (optional, default: \texttt{black})
+ \end{itemize}
+
+ \symboldescription{Danger point}
+ \symbol{danger_point_forward.tikz}
+ \begin{lstlisting}[gobble=10]
+ \dangerpoint[options] at (coord) label (name);
+ \end{lstlisting}
+ values for \texttt{options} (comma seperated):
+ \begin{itemize}[label={}]
+ \item \texttt{forward}, \texttt{backward} or \texttt{bidirectional} (mandatory)
+ \item \texttt{position=left} or \texttt{position=right} (optional, default: \textit{traffic practice})
+ \item \texttt{shift label=\{\textit{(label-coord)}\}} (optional, default: (0,0))
+ \item \texttt{foreground=\textit{color}} (optional, default: \texttt{black})
+ \end{itemize}
+
\subsubsection{Clearing points}\label{sec:clearingpoints}
\symboldescription{Generic clearing point}
@@ -800,32 +853,6 @@
\subsubsection{Miscellaneous}\label{sec:misc}
- \symboldescription{View point}
- \symbol{view_point_forward.tikz}
- \begin{lstlisting}[gobble=10]
- \viewpoint[options] at (coord);
- \end{lstlisting}
- values for \texttt{options} (comma seperated):
- \begin{itemize}[label={}]
- \item \texttt{forward} or \texttt{backward} (mandatory)
- \item \texttt{position=left} or \texttt{position=right} (optional, default: \textit{traffic practice})
- \item \texttt{foreground=\textit{color}} (optional, default: \texttt{black})
- \end{itemize}
-
- \symboldescription{End of movement authority}
- \symbol{block_end_marker_forward.tikz}
- \begin{lstlisting}[gobble=10]
- \movementauthority[options] at (coord) label (name);
- \end{lstlisting}
- values for \texttt{options} (comma seperated):
- \begin{itemize}[label={}]
- \item \texttt{forward}, \texttt{backward} or \texttt{bidirectional} (mandatory)
- \item \texttt{direction arrow=true} (default) or \texttt{direction arrow=false} (mandatory)
- \item \texttt{position=left} or \texttt{position=right} (optional, default: \textit{traffic practice})
- \item \texttt{shift label=\{\textit{(label-coord)}\}} (optional, default: (0,0))
- \item \texttt{foreground=\textit{color}} (optional, default: \texttt{black})
- \end{itemize}
-
\symboldescription{Route}
\symbol{route.tikz}
\begin{lstlisting}[gobble=10]
@@ -1035,6 +1062,14 @@
\hline
\No & train berth sign & \symbol{train_berth_sign_forward.tikz} & \ref{sec:signals} \\
\hline
+ \No & view point & \symbol{view_point_forward.tikz} & \ref{sec:points} \\
+ \hline
+ \No & braking point & \symbol{braking_point_forward.tikz} & \ref{sec:points} \\
+ \hline
+ \No & end of movement authority & \symbol{end_of_movement_authority_forward.tikz} & \ref{sec:points} \\
+ \hline
+ \No & danger point & \symbol{danger_point_forward.tikz} & \ref{sec:points} \\
+ \hline
\No & clearing point & \symbol{clearing_point.tikz} & \ref{sec:clearingpoints} \\
\hline
\No & block clearing point & \symbol{block_clearing_point_forward.tikz} & \ref{sec:clearingpoints} \\
@@ -1049,11 +1084,6 @@
\hline
\No & loop transmitter & \symbol{loop_transmitter.tikz} & \ref{sec:transmitters} \\
\hline
- \No & view point & \symbol{view_point_forward.tikz} & \ref{sec:misc} \\
- \hline
- \No & \parbox[c]{4.5cm}{block end marker\\(end of movement authority)}
- & \symbol{block_end_marker_forward.tikz} & \ref{sec:misc} \\
- \hline
\No & route & \symbol{route.tikz} & \ref{sec:misc} \\
\hline
\No & platform & \symbol{platform_left.tikz} & \ref{sec:constructions} \\
diff --git a/Master/texmf-dist/tex/latex/tikz-trackschematic/tikzlibrarytrackschematic.trafficcontrol.code.tex b/Master/texmf-dist/tex/latex/tikz-trackschematic/tikzlibrarytrackschematic.trafficcontrol.code.tex
index 4d32c178aa6..d4a71850c63 100644
--- a/Master/texmf-dist/tex/latex/tikz-trackschematic/tikzlibrarytrackschematic.trafficcontrol.code.tex
+++ b/Master/texmf-dist/tex/latex/tikz-trackschematic/tikzlibrarytrackschematic.trafficcontrol.code.tex
@@ -500,15 +500,6 @@
\def\movementauthority[#1]#2(#3)#4(#5){% \movementauthority[options] at (coord) label (name);
\pic[#1] at (#3) {movement_authority_marker={#2/#4/#5}}% symbol
}%
-% tikz keys
-\pgfkeys{%
- /tikz/trackschematic/trafficcontrol/EoA/.is family,%
- /tikz/trackschematic/trafficcontrol/EoA/.cd,%
- %% option \directionarrow
- direction arrow/.store in=\directionarrow,% true or false
- direction arrow=true,% true or false
- /tikz/direction arrow/.forward to=/tikz/trackschematic/trafficcontrol/EoA/direction arrow,%
-}%
% symbol definition
\tikzset{%
pics/movement_authority_marker/.default=,%
@@ -542,25 +533,15 @@
}% end \ifdefstring{\face}
\tikzset{every path/.style={draw=\foreground,line width=1pt}};%
%% marker
- \path (0,0) -- ++($\trafficfactor*\facefactor*(0,-0.5)$);% marker
- \path ($\trafficfactor*\facefactor*(0,-0.7) + \facefactor*(-0.1,0)$) rectangle%
- ++($\trafficfactor*\facefactor*(0, 0.2) + \facefactor*(0.2,0)$);% sign
+ \path ($\trafficfactor*\facefactor*(0,-0.55) + \facefactor*(0.3,0)$) rectangle%
+ ++($\trafficfactor*\facefactor*(0, 0.3) + \facefactor*(0.3,0)$);%
%% arrow
- \ifdefstring{\directionarrow}{true}{%
- \path[line width=0.5pt] ($\trafficfactor*\facefactor*(0,-0.2) + \facefactor*(-0.2,0)$) --%
- ++($\facefactor*(0.2,0)$);% arrow body
- \path[draw=none,fill=\foreground]% arrow tip
- ($\trafficfactor*\facefactor*(0,-0.2)$) --%
- ++($\trafficfactor*\facefactor*(0,-0.04) + \facefactor*(-0.1,0)$) -- ++($\trafficfactor*\facefactor*(0,0.08)$) -- cycle;%
- }{% error message
- \ifdefstring{\directionarrow}{false}{}{%
- \pgfkeys{/errors/unknown choice value={/tikz/trackschematic/trafficcontrol/EoA/direction arrow}{'true' OR 'false' as key required}}%
- }%
- }%
+ \path[draw=\foreground,<-,>=latex,line width=1pt]%
+ ($\facefactor*\trafficfactor*(0,-0.1)$) -- ++($\facefactor*\trafficfactor*(0,-0.3)$) -- ++($\facefactor*(0.2,0)$);% arrow
%% label
\ifdefstring{\labelcontent}{}{}{% label NOT empty
\tikzset{every node/.style={font=\sffamily,text=\foreground}};%
- \coordinate (ts-ma-l) at ($\trafficfactor*\facefactor*(0,-0.6) + \facefactor*(-0.05,0)$);%
+ \coordinate (ts-ma-l) at ($\trafficfactor*\facefactor*(0,-0.6) + \facefactor*(0.3,0)$);%
\ifdefstring{\labelcoord}{(none)}{}{% initialize if NOT default
\gettikzxy{\labelcoord}{\labelcoordX}{\labelcoordY}%
\coordinate (ts-ma-l) at ($(ts-ma-l) + (\labelcoordX,\labelcoordY)$);%
@@ -571,6 +552,127 @@
}%
%
%%%%%%%%%%%%%%%
+% symbol braking point
+%%%%%%%%%%%%%%%
+% command
+\newcommand\brakingpoint{}% just for safety
+\def\brakingpoint[#1]#2(#3)#4(#5){% \brakingpoint[options] at (coord) label (name);
+ \pic[#1] at (#3) {braking_point_marker={#2/#4/#5}}% symbol
+}%
+% symbol definition
+\tikzset{%
+ pics/braking_point_marker/.default=,%
+ pics/braking_point_marker/.style args={#1/#2/#3}{code={%
+ %% settings
+ \def\coordcommand{#1}% beware of leading and tailing spaces!
+ \def\labelcommand{#2}% beware of leading and tailing spaces!
+ \def\labelcontent{#3}%
+ %
+ %% traffic practice setup
+ \ifdefstring{\trafficpractice}{left}{% branch
+ \pgfmathsetmacro{\trafficfactor}{-1}%
+ }{%
+ \ifdefstring{\trafficpractice}{right}{% branch
+ \pgfmathsetmacro{\trafficfactor}{1}%
+ }{% error message
+ \pgfkeys{/errors/unknown choice value={/tikz/trackschematic/trafficcontrol/traffic practice}{“left“ OR “right“ as key required}}%
+ }%
+ }% end \ifdefstring{\trafficpractice}
+ %% face setup
+ \ifdefstring{\face}{forward}{% face
+ \pgfmathsetmacro{\facefactor}{1}%
+ \def\align{left}%
+ }{%
+ \ifdefstring{\face}{backward}{% face
+ \pgfmathsetmacro{\facefactor}{-1}%
+ \def\align{right}%
+ }{% error message
+ \pgfkeys{/errors/unknown choice value={/tikz/trackschematic/face}{“forward“ OR “backward“ as key required}}%
+ }%
+ }% end \ifdefstring{\face}
+ \tikzset{every path/.style={draw=\foreground,line width=1pt}};%
+ %% marker
+ \path ($\trafficfactor*\facefactor*(0,-0.4) + \facefactor*(0.3,0)$) --%
+ ++($\trafficfactor*\facefactor*(0,-0.15) + \facefactor*(0.25,0)$) --%
+ ++($\trafficfactor*\facefactor*(0, 0.3)$) -- cycle;% signal marker
+ %% arrow
+ \path[draw=\foreground,<-,>=latex,line width=1pt]%
+ ($\facefactor*\trafficfactor*(0,-0.1)$) -- ++($\facefactor*\trafficfactor*(0,-0.3)$) -- ++($\facefactor*(0.2,0)$);% arrow
+ %% label
+ \ifdefstring{\labelcontent}{}{}{% label NOT empty
+ \tikzset{every node/.style={font=\sffamily,text=\foreground}};%
+ \coordinate (ts-bp-l) at ($\trafficfactor*\facefactor*(0,-0.6) + \facefactor*(0.3,0)$);%
+ \ifdefstring{\labelcoord}{(none)}{}{% initialize if NOT default
+ \gettikzxy{\labelcoord}{\labelcoordX}{\labelcoordY}%
+ \coordinate (ts-bp-l) at ($(ts-bp-l) + (\labelcoordX,\labelcoordY)$);%
+ }%
+ \node[\align] at (ts-bp-l) {\footnotesize \labelcontent};%
+ }%
+ }},% end pics/braking_point_marker/.style args={#1/#2/#3}
+}%
+%
+%%%%%%%%%%%%%%%
+% symbol danger point
+%%%%%%%%%%%%%%%
+% command
+\newcommand\dangerpoint{}% just for safety
+\def\dangerpoint[#1]#2(#3)#4(#5){% \dangerpoint[options] at (coord) label (name);
+ \pic[#1] at (#3) {danger_point_marker={#2/#4/#5}}% symbol
+}%
+% symbol definition
+\tikzset{%
+ pics/danger_point_marker/.default=,%
+ pics/danger_point_marker/.style args={#1/#2/#3}{code={%
+ %% settings
+ \def\coordcommand{#1}% beware of leading and tailing spaces!
+ \def\labelcommand{#2}% beware of leading and tailing spaces!
+ \def\labelcontent{#3}%
+ %
+ %% traffic practice setup
+ \ifdefstring{\trafficpractice}{left}{% branch
+ \pgfmathsetmacro{\trafficfactor}{-1}%
+ }{%
+ \ifdefstring{\trafficpractice}{right}{% branch
+ \pgfmathsetmacro{\trafficfactor}{1}%
+ }{% error message
+ \pgfkeys{/errors/unknown choice value={/tikz/trackschematic/trafficcontrol/traffic practice}{“left“ OR “right“ as key required}}%
+ }%
+ }% end \ifdefstring{\trafficpractice}
+ %% face setup
+ \ifdefstring{\face}{forward}{% face
+ \pgfmathsetmacro{\facefactor}{1}%
+ \def\align{left}%
+ }{%
+ \ifdefstring{\face}{backward}{% face
+ \pgfmathsetmacro{\facefactor}{-1}%
+ \def\align{right}%
+ }{% error message
+ \pgfkeys{/errors/unknown choice value={/tikz/trackschematic/face}{“forward“ OR “backward“ as key required}}%
+ }%
+ }% end \ifdefstring{\face}
+ \tikzset{every path/.style={draw=\foreground,line width=1pt}};%
+ %% marker
+ \path ($\trafficfactor*\facefactor*(0,-0.4)$) --%
+ ++($\trafficfactor*\facefactor*(0,-0.1) + \facefactor*(-0.1,0)$) --%
+ ++($\trafficfactor*\facefactor*(0,-0.1) + \facefactor*( 0.1,0)$) --%
+ ++($\trafficfactor*\facefactor*(0, 0.1) + \facefactor*( 0.1,0)$) -- cycle;% sign
+ %% arrow
+ \path[draw=\foreground,<-,>=latex,line width=1pt]%
+ ($\facefactor*\trafficfactor*(0,-0.1)$) -- ++($\facefactor*\trafficfactor*(0,-0.25)$);% arrow
+ %% label
+ \ifdefstring{\labelcontent}{}{}{% label NOT empty
+ \tikzset{every node/.style={font=\sffamily,text=\foreground}};%
+ \coordinate (ts-dp-l) at ($\trafficfactor*\facefactor*(0,0.25)$);%
+ \ifdefstring{\labelcoord}{(none)}{}{% initialize if NOT default
+ \gettikzxy{\labelcoord}{\labelcoordX}{\labelcoordY}%
+ \coordinate (ts-dp-l) at ($(ts-dp-l)+(\labelcoordX,\labelcoordY)$);%
+ }%
+ \node at (ts-dp-l) {\footnotesize \labelcontent};%
+ }%
+ }},% end pics/danger_point_marker/.style args={#1/#2/#3}
+}%
+%
+%%%%%%%%%%%%%%%
% symbol route
%%%%%%%%%%%%%%%
% command