在手册中,可以找到...
在 for 循环中获取范围的选项。例如:
\foreach \x in {0,0.1,...,6} {\x, }
另一方面,可以有一个同时对两个变量运行的 for 循环。例如:
\foreach \i / \y in {1/0,2/0.25,3/0.5,4/0.75,5/1} {
\only<\i>{
\draw (0,0) -- (1,0) -- (1,1) -- (0,1) -- cycle;
\draw (0,0) -- (1,\y);
}
}
与 beamer 一起使用时可以产生一些简单的“动画”。我的问题是如何将两者结合起来。也就是说,我希望有类似的东西:
\foreach \i / \y in {1/0,2/0.25,...,5/1}
这将产生列表(1,0),(2,0.25),(3,0.5),(4,0.75),(5,1)。有办法吗?
答案1
我认为这是不可能的。但是,对于你的情况,这些/
符号并不是必需的:
\begin{tikzpicture}
\foreach \y [count=\i] in {0,0.25,...,1} {
\only<\i>{
\draw (0,0) rectangle (1,1);
\draw (0,0) -- (1,\y);
}
}
\end{tikzpicture}
对于更复杂的情况,当一个变量通过某个公式依赖于另一个变量时,你也可以使用
\begin{tikzpicture}
\foreach \i [evaluate=\i as \y using (\i-1)*0.25] in {1,2,...,5} {
\only<\i>{
\draw (0,0) rectangle (1,1);
\draw (0,0) -- (1,\y);
}
}
\end{tikzpicture}