TikZ 中的 foreach 和节点名称

TikZ 中的 foreach 和节点名称

我在使用此代码时遇到以下问题

\documentclass{standalone}

\usepackage{tikz}
\usetikzlibrary{calc}


\begin{document}

\begin{tikzpicture}
\def\tkzAngleResult{-145}
\node[coordinate](v_B)at (-145:5){};
\path [draw] let \p1=(v_B), \n1={veclen((\x1,\y1))} in 
    foreach[count=\i]\frac in{0,0.1,...,1.1}{%
        ($ (0,0)!\frac!(-10,3)$)node[coordinate](debut\i){}--++({\tkzAngleResult-(\tkzAngleResult+270)/11*\i}:\n1)node[coordinate](fin\i){}
    }
;
\foreach\i in {1,..,11}{%
    \draw(debut\i)--(fin\i);
}
\draw[blue](0,0)--(-10,3);
\end{tikzpicture}

\end{document}

结果产生了一个错误,因为 Latex 不知道任何名为 的形状,尽管由于使用with作为变量,debut它应该接收的是debut1, ...... 等等。debut2foreach\i

有人知道它为什么会出现这样的行为吗?

答案1

代码中缺少一个点\foreach\i in {1,..,11}

\documentclass{standalone}

\usepackage{tikz}
\usetikzlibrary{calc}


\begin{document}

\begin{tikzpicture}
\def\tkzAngleResult{-145}
\node[coordinate](v_B)at (-145:5){};
\path [draw] let \p1=(v_B), \n1={veclen((\x1,\y1))} in 
    foreach[count=\i]\frac in{0,0.1,...,1.1}{%
        ($ (0,0)!\frac!(-10,3)$)node[coordinate](debut\i){}--++({\tkzAngleResult-(\tkzAngleResult+270)/11*\i}:\n1)node[coordinate](fin\i){}
    }
;
\foreach\i in {1,...,11}{%
    \draw(debut\i)--(fin\i);
}
\draw[blue](0,0)--(-10,3);
\end{tikzpicture}

\end{document}

在此处输入图片描述

相关内容