![无齿轮的螺旋曲线,笔尖](https://linux22.com/image/307755/%E6%97%A0%E9%BD%BF%E8%BD%AE%E7%9A%84%E8%9E%BA%E6%97%8B%E6%9B%B2%E7%BA%BF%EF%BC%8C%E7%AC%94%E5%B0%96.png)
我正在使用这个pst-spirograph
包。这个包生成的图像将显示螺旋曲线,但也将显示齿轮和笔尖。我只想获得曲线。考虑以下代码:
\documentclass{standalone}
\usepackage{pstricks}
\usepackage{pst-spirograph}
\begin{document}
\begin{pspicture}(-6.2,-6.2)(6.2,6.2)
\psSpirograph[Z1=105,
Z2=56,
m=0.1,
ap=10,
holenumber=1,
polarangle=0,
thetamax=2880,
color1=white,
color2=white,
linecolor=red,
curvecolor=black]
\end{pspicture}
\end{document}
这将生成曲线图以及产生曲线的齿轮:
如果我改为linecolor
,white
齿轮将不再显示,但内齿轮会以白色印在曲线上,从而产生曲线断点。此外,笔尖仍会显示出来。
我怎样才能消除断线和笔尖?
答案1
以下代码修改了\psSpirograph
的内部结构,从 PostScript 代码中完全删除了内齿轮和外齿轮,只留下内摆线:
\documentclass{standalone}
\usepackage{pst-spirograph,etoolbox}
\makeatletter
\patchcmd{\psSpirograph@ii}{Roue2}{}{}{}% Remove Roue2
\patchcmd{\psSpirograph@ii}{Roue1}{
/Roue {} def % Overwrite definition of /Roue
/COURONNE {} def % Overwrite definition of /COURONNE
Roue1
}{}{}
\makeatother
\begin{document}
\begin{pspicture}(-6.2,-6.2)(6.2,6.2)
\psSpirograph[Z1=105,
Z2=56,
m=0.1,
ap=10,
holenumber=1,
polarangle=0,
thetamax=2880,
color1=white,
color2=white,
linecolor=red,
curvecolor=black]
\end{pspicture}
\end{document}