引自pst-news13.pdf
第 3 页:
是
labelsep
的第一个可选参数\uput
。现在可以使用 PostScript 符号表示此长度,例如{! 45 sin 3 mul}
。然后使用 时处于活动状态的单位\uput
。对于单位,不允许使用 PS 符号,否则会导致错误!
如果labelsep
(是长度键)可以接受 RPN 表达式,为什么nodesep
和offset
(也是长度键)不能接受 RPN 表达式?
对于当前的实现,angle
可以用RPN来表示,例如angle={!30 60 add}
。
以下是为您提供的 MWE。
\documentclass[pstricks,border=12pt]{standalone}
\usepackage{pstricks-add}
\begin{document}
\begin{pspicture}[showgrid](3,3)
\pnode{A}
\pnode
[!
60 cos 3 mul
60 sin 3 mul
](A){B}
\psline{->}(A)(B)
\end{pspicture}
% \begin{pspicture}[showgrid](3,3)
% \pnode{A}
% \psline(A){->}([nodesep=,offset=]A)
% \end{pspicture}
\end{document}
答案1
nodesep
和offset
是长度,并且必须有一个单位,至少是当前的单位。
\documentclass{article}
\usepackage{pst-node}
\begin{document}
\begin{pspicture}[showgrid](3,3)
\pnode{A}
\pnode
[!
60 cos 3 mul
60 sin 3 mul
](A){B}
\psline{->}(A)(B)
\end{pspicture}
\bigskip
\begin{pspicture}[showgrid](3,3)
\pnode{A}
\psline{->}(A)(!\psGetNodeCenter{A}
A.x 60 cos 3 mul add
A.y 60 sin 3 mul add)
\end{pspicture}
\end{document}