\documentclass[border=10pt,pstricks,12pt]{standalone}
\usepackage{pst-eucl,pst-plot,pst-func}
\begin{document}
\begin{pspicture}[showgrid](-2,-2)(2,2)
\psset{PointSymbol=none}
\pstGeonode[PosAngle={-135,0,90}](0,0){A}(1,0){B}(0,1){C}
\pstGeonode[PosAngle={-135,0,90}](-1,-1){A'}(0,-1){B'}(-1,0){C'}
\pstRightAngle[linecolor=blue, RightAngleType=suisseromand,RightAngleSize=1]{B}{A}{C}
\pstRightAngle[linecolor=blue, RightAngleType=german,RightAngleSize=1]{B'}{A'}{C'}
\psline(B)(A)(C)
\psline(B')(A')(C')
\end{pspicture}
\end{document}
问题:
如何定义RightAngleType=suisseromand
和RightAngleType=german
的点的位置RightAngleSize=1
基于三对 A,B,C 和 A',B',C' 的坐标?
从https://archiv.dante.de/~herbert/TeXnik/tex/generic/pst-eucl/pst-eucl.tex
但是,抱歉,我不明白!
答案1
当前版本 1.70 来自https://archiv.dante.de/~herbert/TeXnik/tex/generic/pst-eucl/pst-eucl.tex有一个可选参数RightAngleDotDistance
,它被预设1
为当前距离的一个因素,0.5
用于德国和0.45
瑞士罗曼角。将其设置为其他值,1
点就可以移到参考点或从参考点移出:
\documentclass[border=10pt,pstricks,12pt]{standalone}
\usepackage{pst-eucl}
\begin{document}
\begin{pspicture}[showgrid](-2,-2)(2,2)
\psset{PointSymbol=none}
\pstGeonode[PosAngle={-135,0,90}](0.5,0.5){A}(1.5,0.5){B}(0.5,1.5){C}
\pstGeonode[PosAngle={-135,0,90}](-1,-1){A'}(0,-1){B'}(-1,0){C'}
\pstRightAngle[linecolor=blue, RightAngleType=suisseromand,RightAngleSize=1]{B}{A}{C}
\pstRightAngle[linecolor=blue, RightAngleType=german,RightAngleSize=1]{B'}{A'}{C'}
\psline(B)(A)(C)
\psline(B')(A')(C')
\end{pspicture}
\begin{pspicture}[showgrid](-2,-2)(2,2)
\psset{PointSymbol=none}
\pstGeonode[PosAngle={-135,0,90}](0.5,0.5){A}(1.5,0.5){B}(0.5,1.5){C}
\pstGeonode[PosAngle={-135,0,90}](-1,-1){A'}(0,-1){B'}(-1,0){C'}
\pstRightAngle[linecolor=blue, RightAngleType=suisseromand,RightAngleSize=1,RightAngleDotDistance=1.25]{B}{A}{C}
\pstRightAngle[linecolor=blue, RightAngleType=german,RightAngleSize=1,RightAngleDotDistance=1.5]{B'}{A'}{C'}
\psline(B)(A)(C)
\psline(B')(A')(C')
\end{pspicture}
\end{document}