答案1
\documentclass[tikz,border=3.14mm]{standalone}
\usetikzlibrary{arrows.meta}
\begin{document}
\begin{tikzpicture}[>={Latex[open,scale=1.2]}]
\node[minimum width=5cm, minimum height=3cm,align=center,draw](B){Mathematical model\\of\\aircraft dynamics};
\def\d{1.5} % distance for arrows
\draw[<-] (B.155) --++ (-\d,0) node[left] (M) {$\eta$};
\draw[<-] (B.170) --++ (-\d,0) node[left] {$\varepsilon$};
\draw[<-] (B.190) --++ (-\d,0) node[left] {$\xi$};
\draw[<-] (B.205) --++ (-\d,0) node[left] {$\zeta$};
\node[above of=M] {Input variables};
\draw[->] (B.25) --++ (\d,0) node[right] (U) {$u$};
\draw[->] (B.17) --++ (\d,0) node[right] {$w$};
\draw[->] (B.9) --++ (\d,0) node[right] {$q,\theta$};
\draw[->] (B.-9) --++ (\d,0) node[right] {$v$};
\draw[->] (B.-17) --++ (\d,0) node[right] {$p,\phi$};
\draw[->] (B.-25) --++ (\d,0) node[right] {$r,\psi$};
\node[above of=U] {Output variables};
\draw[dashed] (B.west) --++ (-4,0) coordinate (W);
\node[above of=W] {Longitudinal};
\node[below of=W] {Lateral-Directional};
\draw[dashed] (B.east) --++ (3,0);
\end{tikzpicture}
\end{document}
答案2
我绘制图表的左侧作为起点。
\documentclass[border=5pt]{standalone}
\usepackage{tikz}
\usetikzlibrary{calc}
\usepackage{makecell}
\begin{document}
\begin{tikzpicture}
% draw rectangle
\node[minimum size=4cm,draw] (r) at (0,0) {\makecell[c]{Mathematical Model \\ of \\ aircraft dynamics}};
% draw arrows/lines
\foreach \y/\lab [count=\i from 1] in {1.5/$\eta$, 0.75/$\epsilon$, -0.75/$\xi$, -1.5/$\zeta$} {
\draw [-stealth] ($ (r.west) + (-1,\y)$) node[left] (a-\i) {\lab} -- ($ (r.west) + (0,\y)$);
}
\draw [densely dashed] ($ (r.west) + (-3,0)$) node (l-1) {} -- (r.west);
% labels
\node[above=0.5cm] at (a-1.north) {Input variables};
\node (lab-1) at (l-1 |- {$(a-3)!0.5!(a-4)$}) {Lateral-Directional};
\node[anchor=west] (lab-2) at (lab-1.west |- {$(a-2)!0.5!(a-1)$}) {Logitudinal};
\end{tikzpicture}
\end{document}
我将矩形保存为r
,因此您可以复制左侧的部分并将其用于右侧。这样r.east
会很有趣。
如果有问题,请随时提出。