Antwort1
Zum Beispiel so:
\documentclass[border=10pt]{standalone}
\usepackage{tikz}
\usetikzlibrary{positioning}
\usepackage{fontspec}
\setmainfont{Noto Serif CJK SC}
\begin{document}
\begin{tikzpicture}
\node[minimum size=5em] (a) {进气道};
\node[draw, minimum size=5em, right=of a] (b) {压气机};
\node[draw, minimum size=5em, right=of b] (c) {燃烧室};
\node[draw, minimum size=5em, right=of c] (d) {涡轮};
\node[minimum size=5em, right=of d] (e) {尾喷管};
\draw (b.south) -- +(0,-0.5) -| (d.south);
\draw[dashed]
([yshift=-0.5cm]b.south) -- +(-4.5,0)
([yshift=-0.5cm]d.south) -- +(4.5,0);
\draw
([shift={(-0.5,-0.75)}]a.north west) -- +(0,1.75)
coordinate (ax)
node[anchor=north east] {\strut 0}
([shift={(0.5,-0.5)}]e.south east) -- ([shift={(0.5,1)}]e.north east)
coordinate (fx)
node[anchor=north east] {\strut 8}
node[anchor=north west] {\strut (9)};
\foreach \n [count=\i from 2] in {b,c,d,e} {
\draw
([shift={(-0.5,-0.25)}]\n.north west) -- +(0,1.25)
coordinate (\n x)
node[anchor=north east] {\strut \i};
}
\draw
([yshift=-3em]ax) to[out=30, in=180]
([yshift=-1.5em]bx) --
([yshift=-1.5em]ex) to[out=0, in=150]
([yshift=-3em]fx);
\end{tikzpicture}
\end{document}
Was passiert hier? Zuerst zeichne ich die Knoten. Sie sollten alle die Form eines Quadrats haben und die drei Knoten in der Mitte sollten einen Rand haben. Das erreiche ich, indem ich \node[minimum size=5em] {...};
die Option „wo“ verwende minimum size
, um dem Knoten eine Höhe und Breite zu geben, sodass er ein Quadrat wird. Ich verwende auch die positioning
Bibliothek, um die Knoten relativ zueinander zu platzieren. Zum Schluss benenne ich sie dann a
, b
, … e
zur späteren Bezugnahme.
Dann zeichne ich die Linien unterhalb der Knoten: Eine durchgezogene Linie, die bei beginnt b.south
(das ist die Mitte der unteren Grenze des Knotens b
), ein Stück nach unten geht, dann nach rechts und wieder nach oben bis d.south
. Ich verwende den -|
Operator, der eine rechteckige Linie zwischen zwei Koordinaten zeichnet (zuerst horizontal, dann vertikal). Ich füge auch die gestrichelten Teile der Linie hinzu und nutze dabei die yshift
Option, die Startkoordinate nach unten zu verschieben.
Nun zeichne ich die Linien über den Knoten, zunächst nur die vertikalen Linien mit den Zahlen. Ich beginne mit den äußersten Linien und nutze nun die shift
Möglichkeit, die Startkoordinaten horizontal und vertikal zu verschieben. Anschließend füge ich mit einer \foreach
Schleife die weiteren Linien hinzu. Dabei nutze ich einen Zähler, um die Zahlen hinzuzufügen.
Zum Schluss zeichne ich die geschwungene Linie und verwende dabei einige Koordinaten, die ich zuvor in die Zeichnung eingefügt habe. Ich verwende die to[out=..., in=...]
Syntax, um die Kurven am Anfang und Ende des Pfads zu zeichnen.