tikz 坐标数组:迭代和寻址元素

tikz 坐标数组:迭代和寻址元素

给定以下坐标数组

 \def\points{ (-1, 3) (2, 7) (3, 8) }

(参见其用法,例如TikZ:通过三点的平滑曲线而不改变方向

我如何

  1. tikz在坐标上迭代(in )?例如

    "iterate over coordinates"
          {
    How to get the coordinate the iterator is pointing to?
    How to get the iteration index?
          }
    
  2. 直接寻址元素,例如坐标 2(即(2, 7))例如

    \coordinate (A) at ("second coordinate at \points");
    

关于二维矩阵的类似问题tikz2D tikz 矩阵:迭代和寻址元素

答案1

对于第一个问题,有一个简单的解决方案。第二个问题就没那么简单了。你只需要在命中索引时进行迭代并打印即可。

\documentclass{article}
\usepackage{tikz}
\begin{document}

\def\points{(-1,3), (2,7), (3,8)}

\begin{tikzpicture}
  \foreach \p in \points {
    \node at \p {\p};
  }

  \foreach \p [count=\i] in \points {
    \ifnum\i=2
      \node at \p {Hello};
    \fi
  }
\end{tikzpicture}

\end{document}

相关内容