TikZ:剪切当前图片之外的节点

TikZ:剪切当前图片之外的节点

我想剪辑当前图片之外的节点。(我这样做是为了可以重复使用我在不同地方多次使用的相对复杂的 TikZ 图片。)但是我无法让它工作。MWE 是:

\documentclass[10pt]{standalone}

\usepackage{tikz}

\begin{document}

\begin{tikzpicture}
 \draw[clip] (0,0) circle (1cm);
\end{tikzpicture}

\begin{tikzpicture}
  \fill[red] (1,0) circle (1cm);
\end{tikzpicture}

\end{document}

我希望实现相同的效果,就像我有一个 tikzpicture 环境并将填充命令移动到绘制命令下方一样:

\begin{tikzpicture}
\draw[clip] (0,0) circle (1cm);
\fill[red] (1,0) circle (1cm);
\end{tikzpicture}

我尝试了“记住图片”选项,但没有成功。如果这个选项无法工作,我可以重构我的 TikZ 图片并使用该\input命令。感谢您的帮助。

答案1

我不确定这是否是您想要的,但是您是否不能只定义一个包含相关代码的命令,然后在任何您喜欢的地方使用它?

代码

\documentclass[tikz,border=2mm]{standalone}
\usetikzlibrary{intersections}

\begin{document}

\newcommand{\reusable}%
{   \draw (0,0) circle (1cm+\pgflinewidth/2);
    \clip (0,0) circle (1cm);%
}

\begin{tikzpicture}[remember picture]
    \reusable
\end{tikzpicture}

\begin{tikzpicture}
    \reusable
  \fill[red] (1,0) circle (1cm);
\end{tikzpicture}

\end{document}

输出

在此处输入图片描述

相关内容