画出有内角和外角的边缘,但移动中心

画出有内角和外角的边缘,但移动中心

a我有一条从到 的路径f,我想以a0° 退出并f以 180° 进入,但是由于存在障碍物b,我想将中心向左移动,或者以某种方式让路径更早下降。

\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{positioning}

\begin{document}
    \begin{tikzpicture}

      \node [draw] (a) {a};
      \node [draw, right=of a] (b) {b};
      \node [draw, right=of b] (c) {c};
      \node [draw, below=of c] (f) {f};

      \draw (a) to[out=0,in=180] (f);

    \end{tikzpicture}
\end{document}

在此处输入图片描述

答案1

我最好的方法是使用控制:首先是障碍物,然后是 a 和 f 的正交交点。

\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{positioning}

\begin{document}
    \begin{tikzpicture}

      \node [draw] (a) {a};
      \node [draw, right=of a] (b) {b};
      \node [draw, right=of b] (c) {c};
      \node [draw, below=of c] (f) {f};

      \draw (a) ..controls (b) and ({a |- f}).. (f);

    \end{tikzpicture}
\end{document}

在此处输入图片描述

答案2

我认为你自己的建议比这个替代方案更好。

\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{positioning}

\begin{document}
    \begin{tikzpicture}

      \node [draw] (a) {a};
      \node [draw, right=of a] (b) {b};
      \node [draw, right=of b] (c) {c};
      \node [draw, below=of c] (f) {f};
      \path (a) -- (f) coordinate[midway](aux); 
      \draw (a) to[out=0,in=135] ([xshift=-0.5cm]aux) to[out=-45,in=180] (f);

    \end{tikzpicture}
\end{document}

在此处输入图片描述

相关内容