如何寻找`\rput`的不可见框架与`\ncline`的线段的交点?

如何寻找`\rput`的不可见框架与`\ncline`的线段的交点?

替代文本

\rput黑色椭圆圈出的点是的框边界与的线段的交点\ncline

如何找到这些点?


上面的截图是从PSTricks 教程系列在第 4 页。

答案1

\documentclass{article} 
\usepackage{pst-node}\SpecialCoor
\makeatletter
\def\psGetEdgeA#1#2{tx@NodeDict begin 0.0 0.0 neg 0.0 0.0 0 0 
  /N@#1 /N@#2 InitNC { NCCoor } if pop pop \tx@UserCoor end}
\def\psGetEdgeB#1#2{tx@NodeDict begin 0.0 0.0 neg 0.0 0.0 0 0 
  /N@#1 /N@#2 InitNC { NCCoor } if 4 2 roll pop pop \tx@UserCoor end}
\makeatother

\begin{document}
\Huge
\hspace*{4cm}\rnode{B}{Node B}

\vspace{2cm}
\rnode{A}{Node A}
\ncline{A}{B}
\pscircle*[linecolor=blue,opacity=0.4](!\psGetEdgeA{A}{B}){10pt}
\pscircle*[linecolor=blue,opacity=0.4](!\psGetEdgeB{A}{B}){10pt}

\end{document}

相关内容