使用 tikz calc 定义变量

使用 tikz calc 定义变量

考虑这个例子:

\documentclass{standalone}
\usepackage{tikz}
\usetikzlibrary{calc}
\begin{document}
\def\radius{2}
\begin{tikzpicture}
  \draw[red] (0, 0) circle [radius=\radius];
  \draw[blue] (0, 0) circle [radius={\radius-1}];
\end{tikzpicture}
\end{document}

我想{\radius-1}用一个变量(例如\smallradius)替换,该变量的值是使用 计算的tikz calc。我该怎么做?

答案1

不需要calc库,只需使用

\pgfmathsetmacro\smallradius{\radius-1}
\draw[blue] (0, 0) circle [radius=\smallradius];

在此处输入图片描述

\documentclass{standalone}
\usepackage{tikz}
\begin{document}
\def\radius{2}
\begin{tikzpicture}
  \draw[red] (0, 0) circle [radius=\radius];
  \pgfmathsetmacro\smallradius{\radius-1}
  \draw[blue] (0, 0) circle [radius=\smallradius];
\end{tikzpicture}
\end{document}

答案2

我们可以用\usetikzlibrary{math}

\documentclass{standalone}
\usepackage{tikz}
\usetikzlibrary{math}
\begin{document}
\tikzmath{
   \radius=2;
   \smallradius=\radius-1;
   \bigradius=2*\radius;
}
\begin{tikzpicture}[]
  \draw[red] (0, 0) circle [radius=\radius];
  \draw[blue] (0, 0) circle [radius=\smallradius];
  \draw[green (0, 0) circle [radius=\bigradius];
\end{tikzpicture}
\end{document}

在此处输入图片描述

相关内容