%% $Id: pst-spirograph.tex 80 2014-08-23 05:50:14Z herbert $ %% %% This is file `pst-spirograph.tex', %% %% IMPORTANT NOTICE: %% %% Package `pst-spirograph.tex' %% %% COPYRIGHT 2020- by %% Manuel Luque %% Herbert Voss %% %% This program can be redistributed and/or modified under the terms %% of the LaTeX Project Public License Distributed from CTAN archives %% in directory CTAN:/macros/latex/base/lppl.txt. %% %% DESCRIPTION: %% `pst-spirograph' is a PSTricks package to show spirograph curves %% %% \csname PSTSPIROGRAPHLoaded\endcsname \let\PSTSPIROGRAPHLoaded\endinput % Requires some packages \ifx\PSTricksLoaded\endinput\else \input pstricks \fi \ifx\PSTXKeyLoaded\endinput\else \input pst-xkey \fi \def\fileversion{0.50} \def\filedate{2020/03/11} \message{`PSTSPIROGRAPH' v\fileversion, \filedate\ (ml,hv)} \edef\PstAtCode{\the\catcode`\@} \catcode`\@=11\relax \pst@addfams{pst-spirograph} \pstheader{pst-spirograph.pro} \define@key[psset]{pst-spirograph}{Z1}[20]{\def\psk@ZA{#1 }} \psset[pst-spirograph]{Z1=20} \define@key[psset]{pst-spirograph}{Z2}[10]{\def\psk@ZB{#1 }} \psset[pst-spirograph]{Z2=10} \define@key[psset]{pst-spirograph}{m}[0.5]{\def\psk@m{#1 }} \psset[pst-spirograph]{m=0.5} \define@key[psset]{pst-spirograph}{ap}[20]{\def\psk@ap{#1 }} \psset[pst-spirograph]{ap=20} \define@key[psset]{pst-spirograph}{polarangle}[0]{\def\psk@polarangle{#1 }} \psset[pst-spirograph]{polarangle=0} \define@key[psset]{pst-spirograph}{holenumber}[1]{\def\psk@holenumber{#1 }} \psset[pst-spirograph]{holenumber=1} \define@key[psset]{pst-spirograph}{thetamax}[360]{\def\psk@thetamax{#1 }} \psset[pst-spirograph]{thetamax=360} % \define@key[psset]{pst-spirograph}{color1}[{[rgb]{0.625 0.75 1}}]{\pst@getcolor{#1}\pscolora} \psset[pst-spirograph]{color1={[rgb]{0.625 0.75 1}}} \define@key[psset]{pst-spirograph}{color2}[{[rgb]{0.75 1 0.75}}]{\pst@getcolor{#1}\pscolorb} \psset[pst-spirograph]{color2={[rgb]{0.75 1 0.75}}} \define@key[psset]{pst-spirograph}{circlescolor}[red]{\pst@getcolor{#1}\pscolorc} \psset[pst-spirograph]{circlescolor=red} \define@key[psset]{pst-spirograph}{curvecolor}[red]{\pst@getcolor{#1}\pscolord} \psset[pst-spirograph]{curvecolor=red} % \newdimen\pscurvewidth \define@key[psset]{pst-spirograph}{curvewidth}[1pt]{\pssetlength\pscurvewidth{#1}} \psset[pst-spirograph]{curvewidth=1pt} %% === Option pour dessiner le type d'engrenage --------------------- \define@boolkey[psset]{pst-spirograph}[Pst@spirograph@]{inner}[true]{} \psset[pst-spirograph]{inner} %% === pour dessiner cercle de base et cercle primitif \define@boolkey[psset]{pst-spirograph}[Pst@spirograph@]{circles}[true]{} \psset[pst-spirograph]{circles=false} %% hole position \define@key[psset]{pst-spirograph}{HolePos}{\def\psk@HolePos{#1 }} \psset[pst-spirograph]{HolePos=1.5} % 1