Warum werden in dieser TikZ-Berechnung Klammern benötigt?

Warum werden in dieser TikZ-Berechnung Klammern benötigt?

Ich erstelle mit TikZ ein mehrseitiges PDF, das für eine Animation verwendet werden soll. Dabei erhalte ich diesen Fehler:

! Missing number, treated as zero.
<to be read again> 

Hier ist ein minimal funktionierendes Beispiel (MWE), das das Problem zeigt:

\documentclass[tikz]{standalone}

\begin{document}

\def\timesteps{10}                                                                                                                        
\foreach \timestep in {0,1,...,\timesteps} {
  \begin{tikzpicture}

    \path[draw] (0, 0) circle (1);

    \def\initialx{-1};
    \def\initialy{0};
    \def\finalx{0.9};
    \def\finaly{0};
    \def\length{0.1};

    \def\xi{{\initialx+(\finalx-\initialx)*(\timestep/\timesteps)}};
    \def\yi{{\initialy+(\finaly-\initialy)*(\timestep/\timesteps)}};

    \def\xf{{\initialx+(\finalx-\initialx)*(\timestep/\timesteps)+\length}}; % This line works ...                                        
    %\def\xf{{\xi+\length}}; % ... but this line does not ...                                                                             
    %\def\xf{{(\xi)+\length}}; % ... unless there are parentheses                                                                         
    \def\yf{{\yi}};

    \path[draw, ->] (\xi, \yi) -- (\xf, \yf);

  \end{tikzpicture}
}

\end{document}

Wenn Sie MWE ausführen, erhalten Sie die gewünschte Ausgabe: eine einfache 11-seitige PDF-Datei mit einem Pfeil, der sich über den Bildschirm bewegt. Nun kommentiere ich die Zeile

\def\xf{{\initialx+(\finalx-\initialx)*(\timestep/\timesteps)+\length}};

und heben Sie die Kommentierung der Zeile auf

\def\xf{{\xi+\length}};

weil sie mathematisch äquivalent sind. Ich erhalte den zuvor erwähnten Fehler:

! Missing number, treated as zero.
<to be read again> 

Ich habe dies in Bezug auf TikZ gegoogelt und alle Antworten sagen, dass geschweifte Klammern um eine Berechnung herum erforderlich sind. Die obige Zeile enthält jedoch geschweifte Klammern, daher glaube ich nicht, dass dies das Problem ist. Nachdem ich verschiedene Dinge ausprobiert hatte, stellte ich fest, dass Klammern \xidas Problem lösten:

\def\xf{{(\xi)+\length}};

Daher frage ich mich, warum hier Klammern nötig sind. Wie ich bereits erwähnt habe, dachte ich, wenn eine Berechnung in geschweiften Klammern steht, ist nichts Besonderes nötig. Gibt es eine „offizielle“ Dokumentation, die dies behandelt? Schließlich bin ich neu bei TikZ, also können Sie meinen Code gerne verbessern.

verwandte Informationen