![Como posso reutilizar meu operador infix-to-postfix para \psVolume?](https://rvso.com/image/286348/Como%20posso%20reutilizar%20meu%20operador%20infix-to-postfix%20para%20%5CpsVolume%3F.png)
Restrições
Suponha que eu não queira usar infix-RPN
package por motivo lógico desconhecido (sério). Em vez disso, quero usar minha própria A2P
descrição da seguinte maneira. No primeiro caso, é bem-sucedido, mas falha no segundo caso.
Caso 1 (sucesso)
\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}
Caso 2 (falhou)
\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}
Pergunta
Como posso reutilizar
\pstVerb{/A2P {exec AlgParser cvx /t ED exec AlgParser cvx exec t RadtoDeg PtoC} def }
para \psVolume
?
Responder1
No seu primeiro caso, você aplica A2P
aos valores x e y. O parâmetro de função for \psVolume
, no entanto, é avaliado apenas como um valor:
\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}