我怎样才能使曲线上的圆圈动起来?

我怎样才能使曲线上的圆圈动起来?

我试图将圆放在曲线上,但操作会产生错误,而且我不知道如何避免这个问题。

\documentclass[]{standalone}
\usepackage{animate}
\usepackage{tikz}

\begin{document}

\begin{animateinline}[poster=first,controls]{10}
    \multiframe{25}{imdeg=0+1}{
        \begin{tikzpicture}[line cap=round,line width=3pt]
        \clip (-3,-3) rectangle (3,3);
        \path [fill=red] (0,0) circle (3pt);
        \path [fill=white] (0,0) circle (2pt); % círculo do ponteiro
        \draw[line width=1.2pt,color=blue,smooth,samples=100,domain=-5:5]   plot(\x,{(\x)^(2.0)});
        \draw[] (-5+\imdeg*0.4,(-5+\imdeg*0.4)^2) circle (2pt);
        \end{tikzpicture}
    }
\end{animateinline}
\end{document}

问题出在 (-5+\imdeg*0.4)^2,如果曲线是 y=x,那么我将使用 (-5+\imdeg*0.4) 而不使用 ^2,并且运行良好,但是当我输入 ^2 时......错误!!!

谢谢您的帮助。

答案1

您写入以下坐标时有错误:

\draw[] (-5+\imdeg*0.4,(-5+\imdeg*0.4)^2) circle (2pt);

正确的是:

\draw[] (-5+\imdeg*0.4,{(-5+\imdeg*0.4)^2}) circle (2pt);

如果你喜欢(...)在某些坐标内嵌套括号,则必须用短括号将它们括起来。完整代码

\documentclass[]{standalone}
\usepackage{animate}
\usepackage{tikz}

\begin{document}

\begin{animateinline}[poster=first,controls]{10}
    \multiframe{25}{imdeg=0+1}{
        \begin{tikzpicture}[line cap=round,line width=3pt]
        \clip (-3,-3) rectangle (3,3);
        \path [fill=red] (0,0) circle (3pt);
        \path [fill=white] (0,0) circle (2pt); % círculo do ponteiro
        \draw[line width=1.2pt,color=blue,smooth,samples=100,domain=-5:5]   plot(\x,{(\x)^(2.0)});
        \draw[] (-5+\imdeg*0.4,{(-5+\imdeg*0.4)^2}) circle (2pt);
        \end{tikzpicture}
    }
\end{animateinline}
\end{document}

现在工作正常:

在此处输入图片描述

相关内容