summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/generic/pstricks-add
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/generic/pstricks-add')
-rw-r--r--Master/texmf-dist/tex/generic/pstricks-add/pstricks-add.tex37
1 files changed, 23 insertions, 14 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 bbbc6f344fe..f431518cf14 100644
--- a/Master/texmf-dist/tex/generic/pstricks-add/pstricks-add.tex
+++ b/Master/texmf-dist/tex/generic/pstricks-add/pstricks-add.tex
@@ -30,8 +30,8 @@
\ifx\PSTXKeyLoaded\endinput\else \input pst-xkey \fi
\ifx\PSTmathLoaded\endinput\else \input pst-math \fi
%
-\def\fileversion{3.66}
-\def\filedate{2014/04/17}
+\def\fileversion{3.67}
+\def\filedate{2014/05/07}
\message{`pstricks-add' v\fileversion, \filedate\space (dr,hv)}
%
\edef\PstAtCode{\the\catcode`\@} \catcode`\@=11\relax
@@ -1342,7 +1342,7 @@ a add
x scx 0 \ifPst@noVerticalLines moveto \else lineto \fi
} repeat
\or % 2-> Riemann
- /eps3 100 def
+ /eps3 500 def %% increased from 100 to 500 20140507
/xMinMax [] def
/AMax [] def
/AMin [] def
@@ -1360,6 +1360,7 @@ a add
/x t def % restore
x scx Min scy Max scy xMinMax aload length 3 add array astore /xMinMax exch def
/x x dx add def
+ closepath
} repeat
/dx dx scx def
xMinMax aload length 3 div cvi {
@@ -1369,6 +1370,7 @@ a add
x dx add yMax lineto
dx neg 0 \ifPst@noVerticalLines rmoveto \else rlineto \fi
x yMin \ifPst@noVerticalLines moveto \else lineto \fi
+ closepath
} repeat
\or % 3->inf(imum)
x scx 0 moveto
@@ -1381,6 +1383,7 @@ a add
scy dup xOld scx exch \ifPst@noVerticalLines moveto \else lineto \fi
x scx exch lineto
x scx 0 \ifPst@noVerticalLines moveto \else lineto \fi
+ closepath
} repeat
\or % 4-> sup(remum)
x scx 0 moveto
@@ -1392,6 +1395,7 @@ a add
scy dup x dx sub scx exch \ifPst@noVerticalLines moveto \else lineto \fi
x scx exch lineto
x scx 0 \ifPst@noVerticalLines moveto \else lineto \fi
+ closepath
} repeat
\fi
}%
@@ -2384,10 +2388,9 @@ a add
\@cmd}\ignorespaces}%
%
\def\psEllipseTangentsN(#1)(#2)(#3)#4{% (xe,ye)(a,b)(xP,yP){basename} % no optional arguments
- \pst@killglue%
- \pnode(#1){E@Cntr}% center of ellipse
- \pnode(#2){@@TMP}% semimajor, semiminor
- \pnode(#3){@@@TMP}% viewpt
+ \pst@killglue
+% \pst@getcoor{#1}\pst@tempA
+ \pnodes(#1){E@Cntr}(#2){@@TMP}(#3){@@@TMP}% (center)(semimajor, semiminor)(viewpt)
\pst@getcoor{#3}\my@tempC% external viewpoint
\AtoB(E@Cntr)(@@@TMP){@TMP}% center to viewpoint
\ifnum\Pst@Debug>0
@@ -2396,16 +2399,17 @@ a add
\shownode(@@@TMP)%
\fi%
\pnode(!
+ \psGetNodeCenter{E@Cntr}\space
+ /Xc E@Cntr.x def /Yc E@Cntr.y def
\psGetNodeCenter{@@TMP}\space
- /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
+ /B @@TMP.y def % semiminor
+ /A @@TMP.x def % semimajor
\psGetNodeCenter{@TMP}\space
/Xp @TMP.x def /Yp @TMP.y def % center to viewpoint
+%
+ /A2 A dup mul def /B2 B dup mul def
+ /C2 B A div dup mul def
/Xp2 Xp dup mul def /Yp2 Yp dup mul def
- \psGetNodeCenter{E@Cntr}\space
- /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
/Xta B2 Xp mul A Yp R mul mul sub Q div def
@@ -2414,7 +2418,12 @@ 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 %/xTemp ED
+ Yta Yc add %/yTemp ED
+% xTemp Xc yTemp Yc Pyth2 /Length ED
+% xTemp Xc sub yTemp Yc sub exch atan 0 add Length exch PtoC
+% Yc add exch Xc add exch
+ ) {#42}%
\pnode(! Xtb Xc add Ytb Yc add ) {#41}%
\ignorespaces}%
%