如何将极坐标转换为笛卡尔坐标

如何将极坐标转换为笛卡尔坐标

我是 tikz 新手。我正在使用以下代码(极坐标)

\def\radius{12cm}

\begin{tikzpicture}

\foreach \x in {0,10,...,350}
  {

\draw  [shading=radial, inner color=white, outer color=red!15,draw=white]  
(\x:\radius) circle (1);

  };

\foreach \x in {0,10,...,350}

  {

\node[scale=3.4] at (360-\x+90:\radius) {t};

  };



\end{tikzpicture}

代码有效。

But when I use the code (converting to Cartesian co-ordinates)

\foreach \x in {0,10,...,350}
  {

\node[scale=3.4] at (\radius\*cos(360-\x+90), \radius\*sin(360-\x+90)) {t};

  };

生成错误。我的搜索结果为

TikZ 不使用平方坐标而是使用极坐标,如何更改它以使用笛卡尔坐标?

但我无法做到这一点。该怎么做?提前致谢。

答案1

您需要用括号保护数学运算。然后您的代码就可以正常工作(删除 之前的反斜杠后*

\def\radius{12cm}
\begin{tikzpicture}
\foreach \x in {0,10,...,350}{
\node[circle,shading=radial, inner color=white, outer color=red!15,scale=3.4] 
    at ({\radius*cos(360-\x+90)},{\radius*sin(360-\x+90)}) {t};
}
\end{tikzpicture}

相关内容