Как можно повторно использовать оператор преобразования инфикса в постфикс для \psVolume?

Как можно повторно использовать оператор преобразования инфикса в постфикс для \psVolume?

Ограничения

Предположим, я не хочу использовать 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}

введите описание изображения здесь

Связанный контент