diff options
author | Karl Berry <karl@freefriends.org> | 2010-02-17 23:49:31 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2010-02-17 23:49:31 +0000 |
commit | 31fd85170acdf20d47dac76d8ddb30b5372028ff (patch) | |
tree | b259c37af0318a7ae938420ffeb0bce210e4512d /Master/texmf-dist/tex | |
parent | 5cadf8084791f36763cd2feaf2c6efdcc303c5bb (diff) |
pstricks update (17feb10)
git-svn-id: svn://tug.org/texlive/trunk@17078 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex')
-rw-r--r-- | Master/texmf-dist/tex/generic/pstricks/pstricks.tex | 66 |
1 files changed, 38 insertions, 28 deletions
diff --git a/Master/texmf-dist/tex/generic/pstricks/pstricks.tex b/Master/texmf-dist/tex/generic/pstricks/pstricks.tex index 06f90a2553e..94ad473f5c7 100644 --- a/Master/texmf-dist/tex/generic/pstricks/pstricks.tex +++ b/Master/texmf-dist/tex/generic/pstricks/pstricks.tex @@ -15,25 +15,19 @@ % % This Current Maintainer of this work is Herbert Voss % -% This work consists of the file pstricks.tex, PostScript macros -% for Generic TeX. -% See the PSTricks User's Guide for description. -% This uses the header file `pstricks.pro'. -% -% \csname PSTricksLoaded\endcsname \let\PSTricksLoaded\endinput -\ifx\PSTXKeyLoaded\endinput\else \input pst-xkey.tex \fi -\ifx\PSTFPloaded\endinput\else \input pst-fp.tex\fi % -\def\fileversion{2.0} -\def\filedate{2010/02/11} +%% !! loading additional TeX packages see line 70 !! +%% !! loading config file pstricks.con line 380 !! +%% !! loading pro files line 395 !! +% +\def\fileversion{2.01} +\def\filedate{2010/02/16} % \edef\PstAtCode{\the\catcode`\@} \catcode`\@=11\relax % -\pst@addfams{pstricks} -% \expandafter\ifx\csname @latexerr\endcsname\relax% do we have LaTeX? \def\typeout#1{\immediate\write\@unused{#1}} \alloc@7\write\chardef\sixt@@n\@unused @@ -66,6 +60,12 @@ \def\:{\@xifnch} \expandafter\gdef\: {\futurelet\@tempc\@ifnch} \endgroup \fi +% +% now we have all commands defined, for TeX and LaTeX +% +\ifx\PSTXKeyLoaded\endinput\else \input pst-xkey.tex \fi +\pst@addfams{pstricks} +\ifx\PSTFPloaded\endinput\else \input pst-fp.tex\fi % stolen from latex.ltx to make it TeX compatible \newcount\psLoopIndex \def\@fornoop#1\@@#2#3{} @@ -137,7 +137,6 @@ \psForeach@ii{#1}{\pst@tempa}{#5}} % % -% % hv 2007-10-16 to fix the bug in pst-node with \\[name=...] % hv fix bug with empty fnodes in psmatrix \def\ps@ifnextchar#1#2#3{% @@ -550,7 +549,6 @@ \def\pst@tempA{#2}% \ifx\pst@tempA\@empty\else\psset{#2}\fi}% } -% \def\addto@psstyle#1#2{% \pst@toks=\expandafter{#1#2}% \edef#1{\the\pst@toks}} @@ -3020,42 +3018,51 @@ pop \let\if@psarcn\iffalse \def\psellipticarc@ii{\pst@getarrows\psellipticarc@iii} \def\psellipticarc@iii(#1){% - \@ifnextchar({\psellipticarc@iv(#1)}{\psellipticarc@iv(0,0)(#1)}} + \@ifnextchar({\psellipticarc@iv(#1)}{\psellipticarc@iv(0,0)(#1)}} \def\psellipticarc@iv(#1)(#2)#3#4{% \begin@OpenObj - \pst@getcoor{#1}\pst@tempa - \pst@getcoor{#2}\pst@tempb - \pst@getangle{#3}\pst@tempc - \pst@getangle{#4}\pst@tempd + \pst@getcoor{#1}\pst@tempa% origin + \pst@getcoor{#2}\pst@tempb% a,b + \pst@getangle{#3}\pst@tempc% start angle + \pst@getangle{#4}\pst@tempd% end angle \addto@pscode{\psellipticarc@definearg \psellipticarc@draw}% \showpointsfalse \end@OpenObj% } \def\psellipticarc@definearg{% \pst@tempa /yOrig ED /xOrig ED % Origin - \pst@tempb % radii. Now adjust: + \pst@tempb % radii. Now adjust: \ifdim\psk@dimen\p@=\z@\else \psk@dimen CLW mul dup 3 1 roll sub 3 1 roll sub exch \fi - /ry ED /rx ED + /ry ED /rx ED % a b /angleA - /d { \if@psarcn sub \else add \fi } def - \pst@tempc \psk@arcsepA 2 div + /d { \if@psarcn sub \else add \fi } def +% \pst@tempc +% the angle in the parameter equation is not proportional to the real angle! +% phi=atan(b*tan(angle)/a)+floor(angle/180+0.5)*180 + \pst@tempc cvi 90 mod 0 eq { \pst@tempc } + { rx ry \tx@UserCoor exch \pst@tempc tan mul exch atan + \pst@tempc 180 div .5 add floor 180 mul sub } ifelse + \psk@arcsepA 2 div ArcAdjust def /angleB /d { \if@psarcn add \else sub \fi } def - \pst@tempd \psk@arcsepB 2 div ArcAdjust - def +% \pst@tempd + \pst@tempd cvi 90 mod 0 eq { \pst@tempd } + { rx ry \tx@UserCoor exch \pst@tempd tan mul exch atan + \pst@tempd 180 div .5 add floor 180 mul sub } ifelse + \psk@arcsepB 2 div ArcAdjust def \ifshowpoints\psellipticarc@showpoints\fi \ifx\psk@arrowA\@empty \ifnum\psk@liftpen=2 angleA cos rx mul xOrig add angleA sin ry mul yOrig add moveto - \fi - \fi + \fi% + \fi% } \def\psellipticarc@draw{% 0 0 1 @@ -3074,7 +3081,9 @@ pop /mtrx CM def xOrig yOrig T rx ry scale + \if@star 0 0 moveto \fi % for filling \if@psarcn arcn \else arc \fi + \if@star 0 0 moveto \fi mtrx setmatrix% } \def\psellipticarc@showpoints{% @@ -3088,7 +3097,8 @@ pop closepath mtrx setmatrix CLW 2 div SLW - [ \psk@dash\space ] 0 setdash stroke + [ \psk@dash\space ] 0 setdash + stroke grestore % } \def\pscircle{\def\pst@par{}\pst@object{pscircle}} |