From afa0ddded45d19c7c2c4883359e3a26e59ce7a8c Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Sat, 31 Jan 2009 00:45:47 +0000 Subject: pstricks 1.27 (30jan09) git-svn-id: svn://tug.org/texlive/trunk@12021 c570f23f-e606-0410-a88d-b1316a301751 --- .../texmf-dist/tex/generic/pstricks/pst-node.tex | 141 ++++++------ .../texmf-dist/tex/generic/pstricks/pst-plot.tex | 38 +++- .../texmf-dist/tex/generic/pstricks/pstricks.tex | 246 +++++++++++++++------ 3 files changed, 271 insertions(+), 154 deletions(-) (limited to 'Master/texmf-dist/tex/generic/pstricks') diff --git a/Master/texmf-dist/tex/generic/pstricks/pst-node.tex b/Master/texmf-dist/tex/generic/pstricks/pst-node.tex index 36d61daba0e..ab6a512ef1b 100644 --- a/Master/texmf-dist/tex/generic/pstricks/pst-node.tex +++ b/Master/texmf-dist/tex/generic/pstricks/pst-node.tex @@ -4,11 +4,11 @@ %% See the betadoc documentation for usage. %% This uses the header file `pst-node.pro'. %% -\def\fileversion{1.00} -\def\filedate{2007/10/16} +\def\fileversion{1.01} +\def\filedate{2008/11/26} %% %% COPYRIGHT 1993, 1994, 1999 by Timothy Van Zandt, tvz@nwu.edu. -%% COPYRIGHT by Herbert Voss, hvoss@tug.org. +%% COPYRIGHT 2009- by Herbert Voss, hvoss@tug.org. %% %% This program can be redistributed and/or modified under the terms %% of the LaTeX Project Public License Distributed from CTAN @@ -301,29 +301,31 @@ exch \ifnodealign\lower\pst@dimb\fi \box\pst@hbox \endgroup} +% \def\dotnode{\pst@object{dotnode}} \def\dotnode@i{\@ifnextchar({\dotnode@ii}{\dotnode@ii(\z@,\z@)}} \def\dotnode@ii(#1)#2{% -\leavevmode -\hbox{% -\use@par -\pst@@getcoor{#1}% -\pst@getdotsize -\pstree@nodehook -\ifnodealign -\pst@dima=\pst@dimg -\kern\pst@dima -\vrule width\z@ height \pst@dimh depth \pst@dimh -\fi -\pst@newnode{#2}{14}{}{% -\pst@coor -/Y ED /X ED -/w \pst@number\pst@dimg def -/h \pst@number\pst@dimh def -/NodePos { \tx@OvalNodePos } def}% -\psdot@ii(#1)% -\ifnodealign\kern\pst@dima\fi}% -\ignorespaces} + \leavevmode% + \hbox{% + \use@par% + \pst@@getcoor{#1}% + \pst@getdotsize% + \pstree@nodehook% + \ifnodealign% + \pst@dima=\pst@dimg% + \kern\pst@dima% + \vrule width\z@ height \pst@dimh depth \pst@dimh% + \fi% + \pst@newnode{#2}{14}{}{ + \pst@coor + /Y ED /X ED + /w \pst@number\pst@dimg def + /h \pst@number\pst@dimh def + /NodePos { \tx@OvalNodePos } def}% + \psdot@ii(#1)% + \ifnodealign\kern\pst@dima\fi}% + \ignorespaces} +% \def\psset@framesize#1{\pst@expandafter\psset@@framesize{#1} \@nil} \def\psset@@framesize#1 #2\@nil{% \pssetlength\pst@dimg{#1}% @@ -336,46 +338,47 @@ exch \divide\pst@dimg2 \edef\psk@frameheight{\pst@number\pst@dimg}% \fi} +% \psset@framesize{10pt} +% \def\fnode{\pst@object{fnode}} \def\fnode@i{\@ifnextchar({\fnode@ii}{\fnode@ii(\z@,\z@)}} \def\fnode@ii(#1)#2{% -\leavevmode -\pst@killglue -\hbox{% -\use@par -\begin@ClosedObj -\ifnodealign -\kern\psk@framewidth\p@ -\vrule width\z@ height \psk@frameheight\p@ depth \psk@frameheight\p@ -\edef\pst@coor{0 0 }% -\else -\pst@@getcoor{#1}% -\fi -\pst@newnode{#2}{14}{}{% -\pst@coor -/Y ED /X ED -/d \psk@dimen .5 sub CLW mul neg def -/r \psk@framewidth d add def -/l r neg def -/u \psk@frameheight d add def -/d u neg def -/NodePos { \tx@GetRnodePos } def}% -\addto@pscode{% -/x2 \psk@framewidth CLW \psk@dimen mul sub def -/y2 \psk@frameheight CLW \psk@dimen mul sub def -\pst@coor 2 copy -y2 sub /y1 ED -x2 sub /x1 ED -y2 add /y2 ED -x2 add /x2 ED -\psk@cornersize -1 index 0 eq { pop pop \tx@Rect } { \tx@OvalFrame } ifelse}% -\def\pst@linetype{2}% -\showpointsfalse -\end@ClosedObj -\ifnodealign\kern\psk@framewidth\p@\fi}% -\ignorespaces} + \leavevmode + \pst@killglue + \hbox{% + \use@par% + \begin@ClosedObj% + \ifnodealign + \kern\psk@framewidth\p@ + \vrule width\z@ height \psk@frameheight\p@ depth \psk@frameheight\p@ + \edef\pst@coor{0 0 }% + \else\pst@@getcoor{#1}\fi + \pst@newnode{#2}{14}{}{ + \pst@coor + /Y ED /X ED + /d \psk@dimen .5 sub CLW mul neg def + /r \psk@framewidth d add def + /l r neg def + /u \psk@frameheight d add def + /d u neg def + /NodePos { \tx@GetRnodePos } def}% + \addto@pscode{ + /x2 \psk@framewidth CLW \psk@dimen mul sub def + /y2 \psk@frameheight CLW \psk@dimen mul sub def + \pst@coor 2 copy + y2 sub /y1 ED + x2 sub /x1 ED + y2 add /y2 ED + x2 add /x2 ED + \psk@cornersize + 1 index 0 eq { pop pop \tx@Rect } { \tx@OvalFrame } ifelse}% + \def\pst@linetype{2}% + \showpointsfalse% + \end@ClosedObj% + \ifnodealign\kern\psk@framewidth\p@\fi}% end of \hbox + \ignorespaces} +% \def\psset@nodesepA#1{% \pst@getlength{#1}\psk@nodesepA \def\psk@nodeseptypeA{0 }} @@ -704,24 +707,24 @@ tx@Dict begin \psline@iii pop end \def\ncput{\pst@object{ncput}} \def\ncput@i{\pst@killglue\pst@makebox{\ncput@ii}} \def\ncput@ii{% - \begingroup - \use@par - \if@star\pst@starbox\fi - \pst@makesmall\pst@hbox - \pst@rotate\psk@nrot\pst@hbox - \ncput@iii - \endgroup + \begingroup% + \use@par% + \if@star\pst@starbox\fi% + \pst@makesmall\pst@hbox% + \pst@rotate\psk@nrot\pst@hbox% + \ncput@iii% + \endgroup% \pst@shortput} \def\ncput@iii{% - \leavevmode + \leavevmode% \hbox{% - \pst@Verb{% + \pst@Verb{ \pst@nodedict /t \psk@npos def \tx@LPut end \tx@PutBegin}% - \box\pst@hbox + \box\pst@hbox% \pst@Verb{\tx@PutEnd}}} \def\naput{\pst@object{naput}} \def\naput@i{\pst@killglue\pst@makebox{\naput@ii{NAngle 90 add}}} diff --git a/Master/texmf-dist/tex/generic/pstricks/pst-plot.tex b/Master/texmf-dist/tex/generic/pstricks/pst-plot.tex index d2fff22ed98..0c0bd221216 100644 --- a/Master/texmf-dist/tex/generic/pstricks/pst-plot.tex +++ b/Master/texmf-dist/tex/generic/pstricks/pst-plot.tex @@ -4,8 +4,8 @@ %% See the PSTricks User's Guide for documentation. %% %% -%% COPYRIGHT 1993, 1994, 1999 by Timothy Van Zandt, tvz@nwu.edu. -%% COPYRIGHT 2007-2008 by Herbert Voss, hvoss@tug.org +%% COPYRIGHT 1993-2006 by Timothy Van Zandt, tvz@nwu.edu. +%% COPYRIGHT 2007-2009 by Herbert Voss, hvoss@tug.org %% %% This program can be redistributed and/or modified under the terms %% of the LaTeX Project Public License Distributed from CTAN @@ -24,8 +24,8 @@ \expandafter\next \fi -\def\fileversion{1.01} -\def\filedate{2008/01/26} +\def\fileversion{1.03} +\def\filedate{2008/11/24} \message{ v\fileversion, \filedate} @@ -172,7 +172,7 @@ D\space##1% \edef\psk@plotpoints{\the\pst@cntg\space}% \fi} \psset@plotpoints{50} - +% % For quick plots, define: % \beginqp@ : What to do to first point (PS code only). % \doqp@ : What to do to subsequent points (PS code only). @@ -275,7 +275,9 @@ n 0 eq not L pop pop } if}> % end (hv) -------------------------------------------------------------- + % +\def\psdataplot{\def\pst@par{}\pst@object{dataplot}} \def\dataplot{\def\pst@par{}\pst@object{dataplot}} \def\dataplot@i#1{% \pst@killglue @@ -305,6 +307,7 @@ n 0 eq not \addto@pscode{ D }% \@nameuse{endqp@\psplotstyle}} +\def\psfileplot{\def\pst@par{}\pst@object{fileplot}} \def\fileplot{\def\pst@par{}\pst@object{fileplot}} \def\fileplot@i#1{% \pst@killglue% @@ -322,6 +325,7 @@ n 0 eq not /m exch def /n m 2 div cvi def n { y mul m 1 roll x mul m 1 roll /m m 2 sub def } repeat> +\def\pslistplot{\def\pst@par{}\pst@object{listplot}} \def\listplot{\def\pst@par{}\pst@object{listplot}} \def\listplot@i#1{\listplot@ii{\addto@pscode{#1}}} \def\listplot@ii#1{% @@ -363,13 +367,17 @@ n 0 eq not \ignorespaces} \def\psplot@ii{% \addto@pscode{% + /ps@Exit false def % hv 2008-11-22 xy \@nameuse{beginqp@\psplotstyle} \psk@plotpoints 1 sub { /x x dx add def xy \@nameuse{doqp@\psplotstyle} + ps@Exit { exit } if % hv 2008-11-22 } repeat - /x x1 def - xy \@nameuse{doqp@\psplotstyle}}% + ps@Exit not { % hv 2008-11-22 + /x x1 def + xy \@nameuse{doqp@\psplotstyle} + } if }% \@nameuse{endqp@\psplotstyle}} \def\psplot@iii{% \addto@pscode{% @@ -386,6 +394,7 @@ n 0 eq not n 2 roll}% \@nameuse{endplot@\psplotstyle}} +\def\psparametricplot{\def\pst@par{}\pst@object{parametricplot}}% hv 2008-11-22 \def\parametricplot{\def\pst@par{}\pst@object{parametricplot}} \def\parametricplot@i#1#2#3{% \pst@killglue @@ -414,13 +423,17 @@ n 0 eq not \ignorespaces} \def\parametricplot@ii{% \addto@pscode{% + /ps@Exit false def % hv 2008-11-22 xy \@nameuse{beginqp@\psplotstyle} \psk@plotpoints 1 sub { /t t dt add def xy \@nameuse{doqp@\psplotstyle} + ps@Exit { exit } if % hv 2008-11-22 } repeat - /t t1 def - xy \@nameuse{doqp@\psplotstyle}}% + ps@Exit not { + /t t1 def + xy \@nameuse{doqp@\psplotstyle} + } if }% \@nameuse{endqp@\psplotstyle}} \def\parametricplot@iii{% \addto@pscode{% @@ -541,12 +554,13 @@ n 0 eq not \ifdim\pst@dimb=\z@\else\showoriginfalse\fi \ifnum\psk@dx=\z@ \pst@dimg=\psk@Dx\psxunit - \psDEBUG[psaxes@iv]{\textbackslash pst@dimg=\the\pst@dimg}% v.1.01 + \psDEBUG[psaxes@iv]{local:\textbackslash pst@dimg=\the\pst@dimg}% v.1.01 \ifdim\pst@dimg<\p@ \pst@cnta=\psk@Dx \edef\psk@Dx{-\the\pst@cnta} % v.1.01 - \ifnum\Pst@Debug>0 \typeout{==DEBUG== pst-plot(psaxes@iv): Dx -> -Dx (was negative)}\fi % v.1.01 + \psDEBUG[psaxes@iv]{Dx -> -Dx (was negative)}% v.1.01 \fi % v.1.01 \edef\psk@dx{\number\pst@dimg}% - \psDEBUG[psaxes@iv]{\textbackslash psk@dx=\psk@dx}% v.1.01 + \psDEBUG[psaxes@iv]{local: \textbackslash psk@dx=\psk@dx}% v.1.01 + \else\psDEBUG[psaxes@iv]{global: \textbackslash psk@dx=\psk@dx}% \fi \ifnum\psk@ticks<\tw@ \ifnum\psk@tickstyle>\z@ \else\advance\pslabelsep\psk@ticksize\p@\fi diff --git a/Master/texmf-dist/tex/generic/pstricks/pstricks.tex b/Master/texmf-dist/tex/generic/pstricks/pstricks.tex index d1faa16d836..5b28c6a631b 100644 --- a/Master/texmf-dist/tex/generic/pstricks/pstricks.tex +++ b/Master/texmf-dist/tex/generic/pstricks/pstricks.tex @@ -1,7 +1,7 @@ %% pstricks.tex %% COPYRIGHT 1993, 1994, 1999 by Timothy Van Zandt, tvz@nwu.edu. %% COPYRIGHT 2000-2003 by Denis Girou. -%% Copyright 2004-2008 Herbert Voss +%% Copyright 2004-2009 Herbert Voss % % This work may be distributed and/or modified under the % conditions of the LaTeX Project Public License, either version 1.3 @@ -20,8 +20,8 @@ % See the PSTricks User's Guide for description. % This uses the header file `pstricks.pro'. % -\def\fileversion{1.26} -\def\filedate{2008/07/31} +\def\fileversion{1.27} +\def\filedate{2009/01/25} % \csname PSTricksLoaded\endcsname \let\PSTricksLoaded\endinput @@ -107,19 +107,23 @@ \newcount\pst@cntd \newcount\pst@cntg \newcount\pst@cnth +% +\newif\ifPst@SpecialLength +\Pst@SpecialLengthfalse +% \newif\if@pst \newtoks\pst@toks \newif\if@star \def\pst@ifstar#1{% - \@ifnextchar*{\@startrue\def\next*{#1}\next}{\@starfalse#1}} + \@ifnextchar*{\@startrue\def\ps@next*{#1}\ps@next}{\@starfalse#1}} \def\pst@expandafter#1#2{% - \def\next{#1}% + \def\ps@next{#1}% \edef\@tempa{#2}% \ifx\@tempa\@empty \@pstrickserr{Unexpected empty argument!}\@ehpb \def\@tempa{\@empty}% \fi - \expandafter\next\@tempa} + \expandafter\ps@next\@tempa} \def\pst@dimtonum#1#2{\edef#2{\pst@@dimtonum#1}} \def\pst@@dimtonum#1{\expandafter\pst@@@dimtonum\the#1} {\catcode`\p=12 \catcode`\t=12 \global\@namedef{pst@@@dimtonum}#1pt{#1}} @@ -150,6 +154,7 @@ \fi \endgroup #3=\pst@dimg} +% \def\pst@@pyth{% dimd = g <-- (g + u/g)/2 \pst@@divide\pst@dima\pst@dimd \advance\pst@dimd\pst@dimg @@ -243,11 +248,11 @@ % \def\pst@number#1{\pst@@dimtonum#1\space} \def\pst@checknum#1#2{% - \edef\next{#1}% - \ifx\next\@empty + \edef\ps@next{#1}% + \ifx\ps@next\@empty \let\pst@num\z@ \else - \expandafter\pst@@checknum\next..\@nil + \expandafter\pst@@checknum\ps@next..\@nil \fi \ifnum\pst@num=\z@ \@pstrickserr{Bad number: `#1'. 0 substituted.}\@ehpa @@ -485,6 +490,7 @@ } \def\pst@getangle#1#2{\pst@@getangle{#1}\let#2\pst@angle} \def\pst@angle{0 } +% \def\cartesian@coor#1,#2,#3\@nil{% \pssetxlength\pst@dimg{#1}% \pssetylength\pst@dimh{#2}% @@ -492,13 +498,20 @@ } \def\NormalCoor{% \def\pst@@getcoor##1{\pst@expandafter\cartesian@coor{##1},\relax,\@nil}% + \Pst@SpecialLengthfalse + \def\pssetlength##1##2{% + \let\@psunit\psunit + \afterassignment\pstunit@off + ##1 ##2\@psunit% + } \def\pst@@getangle##1{% \pst@checknum{##1}\pst@angle% \edef\pst@angle{\pst@angle \pst@angleunit}% }% \def\psput@##1{\pst@@getcoor{##1}\leavevmode\psput@cartesian}% } -\NormalCoor +\NormalCoor% set to normal read of coors, angles and lengths +% \def\degrees{\@ifnextchar[{\@degrees}{\def\pst@angleunit{}}} \def\@degrees[#1]{% \pst@checknum{#1}\pst@tempg @@ -506,6 +519,7 @@ \ignorespaces} \def\radians{\def\pst@angleunit{57.2956 mul }} \def\pst@angleunit{} +% \def\SpecialCoor{% \def\pst@@getcoor##1{% \begingroup% @@ -514,7 +528,14 @@ \endgroup% \expandafter\special@coor\pst@tempg||\@nil% }% -\def\pst@@getangle##1{% + \def\pssetlength##1##2{% + \begingroup + \pst@activecoor% + \xdef\pst@tempg{##2}% + \endgroup% + \expandafter\special@length\pst@tempg\@nil{##1}% + } + \def\pst@@getangle##1{% \begingroup% \pst@activecoor% \xdef\pst@tempg{##1}% @@ -542,25 +563,26 @@ \special@@coor#1;;\@nil \fi% } +% \def\special@@coor#1{% \ifcat#1a\relax% node names should start with a letter - \def\next{\node@coor#1}% + \def\ps@next{\node@coor#1}% \else \ifx#1[\relax% special node coor: [..]A - \def\next{\Node@coor[}% + \def\ps@next{\Node@coor[}% \else \ifx#1!\relax% PostScript code: x y - \def\next{\raw@coor}% + \def\ps@next{\raw@coor}% \else \ifx#1*\relax% algebraic PostScript code: x f(x) - \def\next{\alg@coor}% + \def\ps@next{\alg@coor}% \else - \def\next{\special@@@coor#1}% + \def\ps@next{\special@@@coor#1}% \fi \fi \fi \fi - \next% + \ps@next% } \def\special@@@coor#1;#2;#3\@nil{% \ifx#3;\relax @@ -611,18 +633,32 @@ \def\pst@coor{0 0 }% } \def\Node@coor{\node@coor} +% \def\special@angle#1#2)#3\@nil{% -\ifx!#1\relax -\edef\pst@angle{#2 \pst@angleunit}% -\else -\ifx(#1\relax -\pst@@getcoor{#2}% -\edef\pst@angle{\pst@coor exch \tx@Atan}% -\else -\pst@checknum{#1#2}\pst@angle -\edef\pst@angle{\pst@angle \pst@angleunit}% -\fi -\fi} + \ifx!#1\relax + \edef\pst@angle{#2 \pst@angleunit}% + \else\ifx(#1\relax + \pst@@getcoor{#2}% + \edef\pst@angle{\pst@coor exch \tx@Atan}% + \else + \pst@checknum{#1#2}\pst@angle + \edef\pst@angle{\pst@angle \pst@angleunit}% + \fi\fi} +% +\def\special@length#1#2\@nil#3{% + \psDEBUG[special@length]{ #1|#2|#3 }% + \ifx!#1\relax + \edef\pst@SpecialLength{ #2 \pst@number\psunit mul }% + \Pst@SpecialLengthtrue% + \psDEBUG[special@length]{ Special length: \pst@SpecialLength}% + \else + \let\@psunit\psunit + \afterassignment\pstunit@off + #3 #1#2\@psunit% + \Pst@SpecialLengthfalse% + \psDEBUG[special@length]{ Normal length: \the#3 }% + \fi} +% \def\Cartesian{% \def\cartesian@coor##1,##2,##3\@nil{% \pssetxlength\pst@dimg{##1}% @@ -898,8 +934,8 @@ } \def\psset@@arrows#1-#2\@empty#3\@nil{% \@psttrue - \def\next##1,#1-##2,##3\@nil{\def\pst@tempg{##2}}% - \expandafter\next\pst@arrowtable,#1-#1,\@nil + \def\ps@next##1,#1-##2,##3\@nil{\def\pst@tempg{##2}}% + \expandafter\ps@next\pst@arrowtable,#1-#1,\@nil \@ifundefined{psas@\pst@tempg}% {\@pstfalse\def\psk@arrowA{}}% {\let\psk@arrowA\pst@tempg}% @@ -1884,6 +1920,30 @@ \ifshowpoints true \else false \fi \tx@setlinejoin % hv 2007-10-13 } +% +\def\psPline{\pst@object{psPline}}% perpendicular to another line B-C +\def\psPline@i{% + \pst@getarrows{% + \begin@OpenObj + \pst@getcoors[\psPline@ii}% \pst@coors on stack +} +\def\psPline@ii{% + \addto@pscode{ % [ pC pB pA is on stack + /yA ED /xA ED + /yB ED /xB ED + yB sub exch xB sub div /mBC ED % the slope + /mA 1 mBC neg div def % orthogonal + /xS yA yB sub mBC xB mul add mA xA mul sub mBC mA sub div def + /yS mBC xS xB sub mul yB add def + xS yS xA yA + \pst@cp % current point + \psline@iii % arc and lineto type + \tx@Line % .pro function + }% + \end@OpenObj% + \ignorespaces% +} +% \def\qline(#1)(#2){% \def\pst@par{}% \begin@SpecialObj @@ -2611,7 +2671,7 @@ pop } \def\psarc@iv{% \pst@coor /y ED /x ED - /r \pst@number\pst@dima def + /r \ifPst@SpecialLength \pst@SpecialLength \else \pst@number\pst@dima \fi def /c 57.2957 r \tx@Div def /angleA \pst@tempa @@ -2671,6 +2731,44 @@ pop \def\psarcn{\pst@object{psarcn}} \def\psarcn@i{\def\psarc@type{1}\psarc@i} % +\def\psarcAB{\pst@object{psarcAB}}% hv 2008-11-26 +\def\psarcAB@i{% + \addbefore@par{psscale=1}% be sure, that it is defined + \pst@getarrows{% + \begin@OpenObj + \pst@getcoors{}\psarcAB@ii% + }% +} +\def\psarcAB@ii{% + \addto@pscode{% + /y ED /x ED /yA ED /xA ED /yB ED /xB ED + /r xB yB x y Pyth2 \psk@psscale\space mul def + /c 57.2957 r \tx@Div def + /angleA + yA y sub xA x sub atan + \psk@arcsepA c mul 2 div + \ifcase\psarc@type add \else sub \fi + def + /angleB + yB y sub xB x sub atan + \psk@arcsepB c mul 2 div + \ifcase\psarc@type sub \else add \fi + def + \ifx\psk@arrowA\@empty + \ifnum\psk@liftpen=2 + r angleA \tx@PtoC + y add exch x add exch moveto + \fi + \fi + \psarc@v + } + \gdef\psarc@type{0}% + \showpointsfalse + \end@OpenObj% +} +\def\psarcnAB{\pst@object{psarcnAB}} +\def\psarcnAB@i{\def\psarc@type{1}\psarcAB@i} +% %------------------ tvz/DG/hv (2004-05-10) begin -------------------%% % from Denis Giroux: http://www.tug.org/pipermail/pstricks/2001/000507.html % @@ -2796,7 +2894,8 @@ pop \def\pst@linetype{4}% \addto@pscode{ \pst@coor - \pst@number\pst@dimc + \ifPst@SpecialLength \pst@SpecialLength \else \pst@number\pst@dimc \fi +% \pst@number\pst@dimc \psk@dimen CLW mul sub 0 360 arc closepath }% @@ -2830,7 +2929,11 @@ pop \begin@SpecialObj \pst@@getcoor{#1}% \pssetlength\pst@dimg{#2}% - \addto@pscode{ \pst@coor \pst@number\pst@dimg \tx@SD }% + \addto@pscode{ + \pst@coor + \ifPst@SpecialLength \pst@SpecialLength \else \pst@number\pst@dimg \fi +% \pst@number\pst@dimg + \tx@SD }% \end@SpecialObj} % \def\psset@radius#1{\pst@@getlength{#1}\psk@radius} @@ -2843,21 +2946,23 @@ pop \def\pswedge{\pst@object{pswedge}} \def\pswedge@i{\@ifnextchar({\pswedge@ii}{\pswedge@ii(0,0)}} \def\pswedge@ii(#1)#2#3#4{% - \begin@ClosedObj - \pssetlength\pst@dimc{#2} - \pst@getangle{#3}\pst@tempa - \pst@getangle{#4}\pst@tempb + \begin@ClosedObj% + \pssetlength\pst@dimc{#2}% + \pst@getangle{#3}\pst@tempa% + \pst@getangle{#4}\pst@tempb% \pst@@getcoor{#1}% \def\pst@linetype{1}% - \addto@pscode{% + \addto@pscode{ \pst@coor 2 copy moveto - \pst@number\pst@dimc \psk@dimen CLW mul sub % Adjusted radius + \ifPst@SpecialLength \pst@SpecialLength \else \pst@number\pst@dimc \fi +% \pst@number\pst@dimc + \psk@dimen CLW mul sub % Adjusted radius \pst@tempa \pst@tempb arc closepath}% - \showpointsfalse + \showpointsfalse% \end@ClosedObj% } \def\tx@Ellipse{Ellipse } @@ -3046,13 +3151,13 @@ pop \def\psset@rot#1{% \pst@expandafter{\@ifnextchar*{\psset@@@rot}{\psset@@rot}}{#1}\@nil} \def\psset@@rot#1\@nil{% -\def\next##1@#1=##2@##3\@nil{% +\def\ps@next##1@#1=##2@##3\@nil{% \ifx\relax##2% \pst@getangle{#1}\psk@rot \else \def\psk@rot{##2}% \fi}% -\expandafter\next\pst@rottable @#1=\relax @\@nil} +\expandafter\ps@next\pst@rottable @#1=\relax @\@nil} \def\psset@@@rot#1#2\@nil{% \psset@@rot#2\@nil \edef\psk@rot{\pst@rotlist \ifx\psk@rot\@empty\else\psk@rot add \fi}} @@ -3094,13 +3199,13 @@ pop \def\rput@iii#1{\addto@par{rot={#1}}\@ifnextchar({\rput@iv}{\rput@iv(\z@,\z@)}} \def\rput@iv(#1){\pst@killglue\pst@makebox{\rput@v{#1}}} \def\rput@v#1{% - \begingroup - \use@par - \if@star\pst@starbox\fi - \pst@makesmall\pst@hbox - \pst@rotate\psk@rot\pst@hbox - \psput@{#1}\pst@hbox - \endgroup + \begingroup% + \use@par% + \if@star\pst@starbox\fi% + \pst@makesmall\pst@hbox% + \pst@rotate\psk@rot\pst@hbox% + \psput@{#1}\pst@hbox% + \endgroup% \ignorespaces% } \def\multirput{% @@ -3173,7 +3278,7 @@ pop \psset@labelsep{5pt} \def\psset@refangle#1{\pst@expandafter\psset@@refangle{#1}\@nil} \def\psset@@refangle#1\@nil{% -\def\next##1@#1=##2"##3@##4\@nil{% +\def\ps@next##1@#1=##2"##3@##4\@nil{% \ifx\relax##2% \pst@getangle{#1}\psk@refangle \def\psk@uputref{}% @@ -3181,7 +3286,7 @@ pop \def\psk@refangle{##2 }% \def\psk@uputref{##3}% \fi}% -\expandafter\next\pst@refangletable @#1=\relax"@\@nil} +\expandafter\ps@next\pst@refangletable @#1=\relax"@\@nil} \def\pst@refangletable{% @r=0"20% @u=90"02% @@ -3198,30 +3303,26 @@ pop % DG/SR modification end \def\uput@i#1{\addto@par{labelsep=#1}\uput@ii} \def\uput@ii[#1]{% -\addto@par{refangle={#1}}% -\@ifnextchar({\uput@iv}{\uput@iii}} + \addto@par{refangle={#1}}% + \@ifnextchar({\uput@iv}{\uput@iii}} \def\uput@iii#1{% -\addto@par{rot={#1}}% -\@ifnextchar({\uput@iv}{\uput@iv(\z@,\z@)}} + \addto@par{rot={#1}}% + \@ifnextchar({\uput@iv}{\uput@iv(\z@,\z@)}} \def\uput@iv(#1){\pst@killglue\pst@makebox{\uput@v{#1}}} \def\uput@v#1{% -\begingroup -\use@par -\if@star\pst@starbox\fi -\uput@vi -\psput@{#1}\pst@hbox -\endgroup -\ignorespaces} + \begingroup + \use@par + \if@star\pst@starbox\fi + \uput@vi + \psput@{#1}\pst@hbox + \endgroup + \ignorespaces} \def\uput@vi{% -\ifx\psk@uputref\@empty -\uput@vii\tx@UUput{}% -\else -\ifx\psk@rot\@empty -\expandafter\uput@viii\psk@uputref -\else -\uput@vii\tx@UUput{}% -\fi -\fi} + \ifx\psk@uputref\@empty\uput@vii\tx@UUput{}% + \else + \ifx\psk@rot\@empty\expandafter\uput@viii\psk@uputref + \else\uput@vii\tx@UUput{}\fi + \fi} \def\uput@vii#1#2{% \edef\pst@coor{% \pst@number\pslabelsep @@ -3299,7 +3400,6 @@ pop \psset@shift{0} % ----------- 1.10/12 end hv ------------------- % -% %------------------------------- pspicture ------------------------------ % \def\pspicture{\begingroup\pst@ifstar\pst@picture} @@ -3333,7 +3433,7 @@ pop \ifx\pst@tempA\@empty\else\psset{#1}\fi% sets the shift and grid option \ifshowgrid\psgrid[style=gridstyle]\fi% % ----------- 1.10/12 end hv ------------------- -% \ignorespaces% + \ignorespaces% % 2008-12-07 } \def\pic@coor{(0,0)(0,0)(10,10)} %\newdimen\pst@shift -- cgit v1.2.3