在tikz:绘制参数化曲线我询问了有关使用命令绘制曲线的问题\pgfplotfunction
。
如果我可以使用循环,我可以使我的代码更好\foreach
:
\documentclass{minimal}
\usepackage{tikz}
\usepackage{amsmath}
\begin{document}
\begin{tikzpicture}[x=2cm/2]
\newcommand\rad{1}
\pgfplothandlerlineto
\foreach \phiparam in {0, 1, ..., 360}
{
\pgfpointxy{\rad *cos(\phiparam)}{\rad *sin(\phiparam)}
\pgfusepath{stroke}
}
\end{tikzpicture}
\end{document}
如何利用\foreach
循环计算参数,绘制点并连接起来呈现平滑的曲线?
答案1
foreach
可以是路径的一部分。您只需手动展开第 0 次迭代。
\documentclass{article}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\pgfpathmoveto{\pgfpointxy{cos(0)}{sin(0)}}
\foreach \phiparam in {1, ..., 360} {
\pgfpathlineto{\pgfpointxy{cos(\phiparam)}{sin(\phiparam)}}
}
\pgfusepath{stroke}
\end{tikzpicture}
\end{document}
在这种情况下plot
可能会更容易。
\documentclass{article}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\pgfplothandlerlineto
\pgfplotfunction{\x}{0,...,360}{\pgfpointxy{cos(\x)}{sin(\x)}}
\pgfusepath{stroke}
\end{tikzpicture}
\end{document}