TikZ 蛇形支架使用来自不同“tikzpicture”的节点

TikZ 蛇形支架使用来自不同“tikzpicture”的节点

是否可以使用 2 个不同 tikzpictures 中的 2 个节点作为参考点来定义支架(使用蛇库)?

    \begin{tikzpicture}[scale=.6]
        \draw[draw=black, fill=black!20!white] (0,0) grid (4,3) rectangle (0,0);
        \draw[fill=green](1.5,0.5) circle [radius=.3];
        \draw[fill=blue] (0.5, 1.5) circle [radius=.3];
        \draw[fill=purple](1.5, 2.5) circle [radius=.3];

        \node (Bone) at (4,3) {};
    \end{tikzpicture}

    \begin{tikzpicture}[scale=.6]
        \draw[draw=black, fill=black!20!white] (0,0) grid (4,3) rectangle (0,0);
        \draw[fill=blue](1.5,0.5) circle [radius=.3];
        \draw[fill=green] (0.5, 1.5) circle [radius=.3];
        \draw[fill=purple](1.5, 2.5) circle [radius=.3];

        \node (Btwo) at (4,0) {};
    \end{tikzpicture}

我想制作一个从“Bone”开始到“Btwo”结束的括号。

评论:我对 TikZ 还很陌生,所以即使我在这里尝试做的事情(在我的 MWE 中)也可能有更简单的方法来实现。任何建议都很好 :)

答案1

在两个图形上使用该remember picture选项,然后插入第三个图形并使用overlay选项将它们连接起来。

注意使用decorations.pathreplacing库和更改节点的锚点来调整支架的位置。您还可以使用选项控制支架的距离raise=5pt

\documentclass{report}
\usepackage{tikz}
\usetikzlibrary{decorations.pathreplacing}

\begin{document}
\begin{tikzpicture}[scale=.6,remember picture]
    \draw[draw=black, fill=black!20!white] (0,0) grid (4,3) rectangle (0,0);
    \draw[fill=green](1.5,0.5) circle [radius=.3];
    \draw[fill=blue] (0.5, 1.5) circle [radius=.3];
    \draw[fill=purple](1.5, 2.5) circle [radius=.3];
    \node (Bone) at (4,3) {};
\end{tikzpicture}

\begin{tikzpicture}[scale=.6,remember picture]
    \draw[draw=black, fill=black!20!white] (0,0) grid (4,3) rectangle (0,0);
    \draw[fill=blue](1.5,0.5) circle [radius=.3];
    \draw[fill=green] (0.5, 1.5) circle [radius=.3];
    \draw[fill=purple](1.5, 2.5) circle [radius=.3];
    \node (Btwo) at (4,0) {};
\end{tikzpicture}

\begin{tikzpicture}[remember picture,overlay,decoration={brace,raise=5pt}]
    \draw[decorate] (Bone.east) -- (Btwo.east);
\end{tikzpicture}

\end{document}

在此处输入图片描述

用于\draw[decorate] (Bone.center) -- (Btwo.center);连接节点的中心。

相关内容