如何简化路径?

如何简化路径?

我有以下 MWE:

    \documentclass{standalone}
    \usepackage{tikz}
    \usetikzlibrary{calc}

    \begin{document}
      \begin{tikzpicture}
         \coordinate (a) at (0,0);
         \coordinate (b) at (1,-1);
         \newlength{\vsep}
         \setlength{\vsep}{0.5cm}
         \coordinate (abovea) at ($(a) + (0,\vsep)$);
         \coordinate (aboveb) at (b |- abovea);
         \node[fill=black,circle,inner sep=2pt] at (a) {};
         \node[fill=black,circle,inner sep=2pt] at (b) {};
         \draw (a) -- (abovea) -- (aboveb) -- (b);
    \end{tikzpicture}
   \end{document}

仅连接点 A 和 B 就太冗长了,我想知道如何简化它?

答案1

除了提到的方法之外TikZ 是否有与 PSTricks \ncbar 命令等效的命令?,你可以将代码简化为

\documentclass{standalone}
\usepackage{tikz}
\usetikzlibrary{calc}

\begin{document}
\begin{tikzpicture}
  \node[fill=black,circle,inner sep=2pt] (a) at (0,0) {};
  \node[fill=black,circle,inner sep=2pt] (b) at (1,-1) {};
  \draw (a) |- ($(a-|b) + (0,0.5cm)$) -- (b);
\end{tikzpicture}
\end{document}

这里,(a-|b)是 y 坐标为a、x 坐标为 的点b。使用|-而不是 的--意思是,先垂直移动到第二个点的 y 坐标,然后水平移动到 该点。

相关内容