以 pgf 格式制作动画图

以 pgf 格式制作动画图

我浏览了 pgf 下的动画示例库,但没有找到我的答案。

我想要这样的图片:取(0,0)(1,0)(5,0)处的 4 个点(7,0);以 为步长从到r变化,围绕每个点画一个半径为 的圆 (一个框对应一个 的值);在圆的下方画四条线,第一条线结束于,第二条线结束于,即020.2r cmrr=0.5r=1\draw (0,-3) -- (min(r,1), -3);

我被困在最小值的计算上,因为我不知道变量应该是什么类型r(一个计数器,一种参数),并且圆的大小各不相同,因为我不知道如何表示单位。

任何帮助,将不胜感激。

答案1

问题的描述,特别是应该绘制的部分的描述不清楚,但您可以调整我的示例以满足您的需要:

\documentclass{beamer}
\usepackage{tikz}

\tikzset{
  invisible/.style={opacity=0},
  visible on/.style={alt={#1{}{invisible}}},
  alt/.code args={<#1>#2#3}{%
    \alt<#1>{\pgfkeysalso{#2}}{\pgfkeysalso{#3}}
  }
}

\begin{document}

\begin{frame}
\centering
\begin{tikzpicture}
\foreach \Value in {0,1,5,7}
{
\node[circle,fill,inner sep=2pt] at (\Value cm,0) {};
\foreach \Radius [count=\xi] in {0,0.2,...,2}
  {
  \draw[visible on=<\xi>] (\Value,0) circle (\Radius cm);
  \draw[visible on=<\xi>] (\Value,-3cm) -- ++({min(\Radius,1)},0pt);  
  }
}
\end{tikzpicture}
\end{frame}

\end{document}

生成的动画:

在此处输入图片描述

如果你不使用 beamer,你仍然可以使用我的代码,并使用animate包裹。

相关内容