diff options
Diffstat (limited to 'Master/texmf-dist/tex')
-rw-r--r-- | Master/texmf-dist/tex/generic/pstricks-add/pstricks-add.tex | 36 |
1 files changed, 26 insertions, 10 deletions
diff --git a/Master/texmf-dist/tex/generic/pstricks-add/pstricks-add.tex b/Master/texmf-dist/tex/generic/pstricks-add/pstricks-add.tex index 37c0a3ccd0c..106280bbb54 100644 --- a/Master/texmf-dist/tex/generic/pstricks-add/pstricks-add.tex +++ b/Master/texmf-dist/tex/generic/pstricks-add/pstricks-add.tex @@ -1,4 +1,4 @@ -%% $Id: pstricks-add.tex 847 2013-11-13 18:44:15Z herbert $ +%% $Id: pstricks-add.tex 858 2013-12-14 14:38:20Z herbert $ %% %% %% This is file `pstricks-add.tex', @@ -31,8 +31,8 @@ \ifx\PSTXKeyLoaded\endinput\else \input pst-xkey \fi \ifx\PSTmathLoaded\endinput\else \input pst-math \fi % -\def\fileversion{3.62} -\def\filedate{2013/11/13} +\def\fileversion{3.63} +\def\filedate{2013/12/14} \message{`pstricks-add' v\fileversion, \filedate\space (dr,hv)} % \edef\PstAtCode{\the\catcode`\@} \catcode`\@=11\relax @@ -1126,6 +1126,7 @@ a add \def\psRelNode{\pst@object{psRelNode}} \def\psRelNode@i(#1)(#2)#3#4{{% A - B - factor - node name \use@par +% \pst@killglue \pst@getcoor{#1}\pst@tempA% \pst@getcoor{#2}\pst@tempB% \pnode(! @@ -1143,7 +1144,7 @@ a add /beta Alpha AlphaStrich add def laenge beta cos mul XA add laenge beta sin mul \ifPst@trueAngle\space unit div \fi\space YA add ){#4}% -}} +}\ignorespaces} % \def\psRelLine{\def\pst@par{}\pst@object{psRelLine}} \def\psRelLine@i{\@ifnextchar({\psRelLine@iii}{\psRelLine@ii}} @@ -2353,23 +2354,37 @@ a add \pnode(#1){E@Cntr}% center of ellipse \pnode(#2){@@TMP}% semimajor, semiminor \pnode(#3){@@@TMP}% viewpt - \pst@getcoor{#3}\my@tempC% external viewpoint - \AtoB(E@Cntr)(@@@TMP){@TMP}% center to viewpoint + \pnode(! + \psGetNodeCenter{E@Cntr} + \psGetNodeCenter{@@@TMP} + /Dx E@Cntr.x @@@TMP.x sub def + /Dy E@Cntr.y @@@TMP.y sub def + /Radius Dx Dy Pyth def + Dx 30 cos Radius mul sub @@@TMP.x add + Dy 30 sin Radius mul sub @@@TMP.y add + ){@@@@TMP}% viewpt + \psdot[linecolor=red](@@@@TMP)% +% \pst@getcoor{#3}\my@tempC% external viewpoint + \pst@getcoor{@@@@TMP}\my@tempC% external viewpoint + \AtoB(E@Cntr)(@@@@TMP){@TMP}% center to viewpoint \ifnum\Pst@Debug>0 \shownode(E@Cntr)% \shownode(@TMP)% \shownode(@@@TMP)% + \shownode(@@@@TMP)% \fi% \pnode(! - \psGetNodeCenter{@@TMP}\space + \psGetNodeCenter{@@TMP} /B @@TMP.y def% semiminor /A @@TMP.x def% semimajor /A2 A dup mul def /B2 B dup mul def /C2 B A div dup mul def - \psGetNodeCenter{@TMP}\space + \psGetNodeCenter{@TMP} /Xp @TMP.x def /Yp @TMP.y def % center to viewpoint /Xp2 Xp dup mul def /Yp2 Yp dup mul def - \psGetNodeCenter{E@Cntr}\space + \psGetNodeCenter{E@Cntr} + gsave + 30 rotate /Xc E@Cntr.x def /Yc E@Cntr.y def /R Xp2 A2 sub C2 mul Yp2 add Sqrt def % R=Sqrt{(Xp2-A2) C2 + Yp2} /Q C2 Xp2 mul Yp2 add def % C2 Xp2 + Yp2 @@ -2379,7 +2394,8 @@ a add /Ytb Yp Xp R mul A div sub B2 mul Q div def 0 Xta Yp mul Yta Xp mul sub gt % swap a, b { /A Xta def /B Yta def /Xta Xtb def /Yta Ytb def /Xtb A def /Ytb B def } if - Xta Xc add Yta Yc add ){#42}% + Xta Xc add Yta Yc add + grestore ){#42}% \pnode(! Xtb Xc add Ytb Yc add ){#41}% \ignorespaces}% % |