edugame-railway-operation/figures/composition.tikz

51 lines
2.5 KiB
Plaintext
Raw Normal View History

%!TEX TS-program = pdflatexmk
%!TEX root = composition.tex
% Copyright 2018 Martin Scheidt (ISC license)
% Permission to use, copy, modify, and/or distribute this file for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies.
\begin{scope}[>=latex]
\coordinate (base) at (0,0);
\draw [dashed] ([shift={(base)}] 0,0) rectangle ++(1,0.5);
\draw [dashed] ([shift={(base)}] 15,0) rectangle ++(1,0.5);
\foreach \x in {1,...,14}
\draw ([shift={(base)}] \x,0) rectangle ++(1,0.5);
\draw [<->] ([shift={(base)}] 10.5,0.9) -- ++ (4,0) node [fill=white,midway] {
\IfLanguage{english}{train movement}
\IfLanguage{ngerman}{Zugbewegung}
};
\draw ([shift={(base)}] 5,1.1) -- ++(0,-0.4) -- ++ (3,0) -- ++(0,0.4);
\draw ([shift={(base)}] 5,0.8) -- ++ (3,0) node [above,midway] {
\IfLanguage{english}{platform}
\IfLanguage{ngerman}{Bahnsteig}
};
% distant signal
\draw [dashed] ([shift={(base)}] 2,-0.1) -- ++(0,-0.2) -- ++(1,0) -- ++(0,0.2);
\path[draw, line width=1pt] ([shift={(base)}] 2,-0.5) -- ++(0,-0.2);
\path[draw, line width=1pt] ([shift={(base)}] 2,-0.6) -- ++(0.5,0);
\path[draw, fill] ([shift={(base)}] 2.5,-0.75) rectangle ++(0.2,0.3);
\path[draw, fill] ([shift={(base)}] 2.5,-0.45) arc (90:270:0.15);
\draw [->] ([shift={(base)}] 5.0,-0.5) -- ([shift={(base)}] 2.9,-0.6) node [near start,align=right,fill=white] {
\IfLanguage{english}{distant signal}
\IfLanguage{ngerman}{Vorsignal}
};
% main signal
\draw [dashed] ([shift={(base)}] 9,-0.1) -- ++(0,-0.2) -- ++(1,0) -- ++(0,0.2);
\path[draw, line width=1pt] ([shift={(base)}] 9,-0.5) -- ++(0,-0.2);
\path[draw, line width=1pt] ([shift={(base)}] 9,-0.6) -- ++(0.5,0);
\path[draw, fill] ([shift={(base)}] 9.5,-0.75) rectangle ++(0.2,0.3);
\path[draw, fill] ([shift={(base)}] 9.7,-0.75) arc (90:270:-0.15);
\draw [->] ([shift={(base)}] 6.5,-1.2) -- ([shift={(base)}] 8.9,-0.6) node [near start,align=right,fill=white] {
\IfLanguage{english}{main signal}
\IfLanguage{ngerman}{Hauptsignal}
};
% axle counter
\path[draw, line width=1pt] ([shift={(base)}] 9.85,-0.4) -- ++(0.3,0);
\path[draw, line width=1pt, fill] ([shift={(base)}] 9.94,-0.4) circle (0.04);
\path[draw, line width=1pt, fill] ([shift={(base)}] 10.06,-0.4) circle (0.04);
\draw [->] ([shift={(base)}] 13.5,-0.8) -- ([shift={(base)}] 10.2,-0.45) node [near start,align=right,fill=white] {
\IfLanguage{english}{track vacancy detector}
\IfLanguage{ngerman}{Gleisfreimeldegrenze}
};
\end{scope}