在 Beamer 中发现 TikZ 图的线段

在 Beamer 中发现 TikZ 图的线段

在 中beamer,是否可以揭示 中绘制的一系列连接线段tikz?例如,在下图中,我想逐个显示第三个线段\draw--第一个除外)。有没有办法实现这一点,还是根本不可能?

\begin{tikzpicture}[scale=.5]
  \draw[<->,>=latex](0,10)--(0,0)--(10,0)node[below]{$Q$};
  \draw<2-> node[left]at(0,10){$P$} node[below]at(10,0);
  \draw<3->[very thick, red](0,6)--(4,6)--(4,3)--(6.67,3)--(6.67,2)--(9.33,2)--(9.33,0);
\end{tikzpicture}

答案1

这个想法是使用一个循环;显而易见的选择是使用\foreachremember ... as ... (initially ...)语法;然而,在花了半个多小时对这种语法的双变量使用进行毫无结果的变化后,我决定做一个手动版本:

\documentclass{beamer}
\usepackage{tikz}

\begin{document}

\begin{frame}
\begin{tikzpicture}[scale=0.5]
\draw<+->[<->,>=latex] (0,10) node[left] {$P$}-- (0,0) -- (10,0) node[below]{$Q$};
\xdef\lastx{0}
\xdef\lasty{6}
\foreach \x/\y in {4/6,4/3,6.667/3,6.667/2,9.33/2,9.33/0}
{
  \draw<+->[very thick,red] (\lastx,\lasty) -- (\x,\y);
  \xdef\lastx{\x}\xdef\lasty{\y}
}
\end{tikzpicture}
\end{frame}

\end{document}

在此处输入图片描述

相关内容