约束
假设我不想使用infix-RPN
包,因为未知的逻辑原因(认真的)。相反,我想使用我自己的A2P
描述,如下所示。在第一种情况下,它会成功,但在第二种情况下,它会失败。
案例 1(成功)
\documentclass[pstricks,border=12pt]{standalone}
\usepackage{pst-plot}
\pstVerb{/A2P {exec AlgParser cvx /t ED exec AlgParser cvx exec t RadtoDeg PtoC} def }
\def\RR#1{(2^(#1/10))}
\def\TT#1{(#1)}
\begin{document}
\begin{pspicture}[showgrid](-3,-3)(3,3)
\psplot[algebraic,polarplot]{2 Pi mul neg}{4 Pi mul}{\RR{x}}
\pscircle*[linecolor=red ](!\RR{7*Pi/2} \TT{7*Pi/2} A2P){2pt}
\pscircle*[linecolor=green](!{(2^(t/10))} {(3*Pi/2)} A2P){2pt}
\pscircle*[linecolor=blue ](!\RR{t} \TT{5*Pi/2} A2P){2pt}
\end{pspicture}
\end{document}
案例 2(失败)
\documentclass[pstricks,border=12pt]{standalone}
\usepackage{pst-func}
\pstVerb{/A2P {exec AlgParser cvx /t ED exec AlgParser cvx exec t RadtoDeg PtoC} def }
\def\f(#1){(sin(#1)+1.2)}%
\begin{document}
\begin{pspicture}(-0.5,-3)(7,3)
\psVolume[fillstyle=solid,fillcolor=orange!50,linecolor=blue](0,\psPiTwo){10}{{\f(x)} A2P}
\end{pspicture}
\end{document}
问题
我如何重复使用
\pstVerb{/A2P {exec AlgParser cvx /t ED exec AlgParser cvx exec t RadtoDeg PtoC} def }
为了\psVolume
?
答案1
在第一种情况下,您应用了A2P
x 和 y 值。\psVolume
但是, 的函数参数仅计算为单个值:
\documentclass[pstricks,border=12pt]{standalone}
\usepackage{pst-func}
\pstVerb{/A2P {exec AlgParser cvx exec} def }
\def\f(#1){(sin(#1)+1.2)}%
\begin{document}
\begin{pspicture}(-0.5,-3)(7,3)
\psVolume[fillstyle=solid,fillcolor=orange!50,linecolor=blue](0,\psPiTwo){10}{{\f(x)} A2P}
\end{pspicture}
\end{document}