diff options
Diffstat (limited to 'Master/texmf-dist/dvips/pst-optexp')
-rw-r--r-- | Master/texmf-dist/dvips/pst-optexp/pst-optexp.pro | 25 |
1 files changed, 18 insertions, 7 deletions
diff --git a/Master/texmf-dist/dvips/pst-optexp/pst-optexp.pro b/Master/texmf-dist/dvips/pst-optexp/pst-optexp.pro index 0deeb3caa0c..e963906ac87 100644 --- a/Master/texmf-dist/dvips/pst-optexp/pst-optexp.pro +++ b/Master/texmf-dist/dvips/pst-optexp/pst-optexp.pro @@ -9,7 +9,7 @@ %% This is a generated file. %% %% Project: pst-optexp -%% Version: 3.1 (2012/07/17) +%% Version: 3.2 (2012/07/26) %% %% Copyright (C) 2007-2012 by Christoph Bersch <usenet@bersch.net> %% @@ -29,7 +29,6 @@ %% and the derived files %% pst-optexp.sty, pst-optexp.pro. %% - /tx@OptexpDict 200 dict def tx@OptexpDict begin /DebugOE false def @@ -643,7 +642,12 @@ tx@OptexpDict begin counttomark 3 roll /PrevCenter /CurrCenter load def /lastBeamPointTmp /Curr load def - /lastVecTmp /CurrVec load def + currentdict /lastVecTmp known { + /prevVecTmp /lastVecTmp load def + /lastVecTmp /CurrVec load def + } { + /CurrVec load dup /lastVecTmp ED /prevVecTmp ED + } ifelse /PrevMode Mode def CompName cvn load /correct get /PrevCorrect ED PN IfcCnt eq { @@ -833,9 +837,12 @@ tx@OptexpDict begin /DrawnSegm 0 def } if ret missed eq not { + currentdict /lastVecTmpUp known currentdict /lastVecTmpLow known and dup { + /lastVecTmpUp load /lastVecTmpLow load 3 -1 roll + } if CurrUp CurrLow @ABVect CurrVecUp CurrVecLow 3 -1 roll add 3 1 roll add exch - 4 -1 roll mul 3 1 roll mul sub 0 gt { + 4 -1 roll mul 3 1 roll mul sub 1e-7 gt { /lastBeamPointTmpUp /CurrLow load def /lastBeamPointTmpLow /CurrUp load def /lastVecTmpUp /CurrVecLow load def @@ -846,6 +853,10 @@ tx@OptexpDict begin /lastVecTmpUp /CurrVecUp load def /lastVecTmpLow /CurrVecLow load def } ifelse + not { + /lastVecTmpUp load /lastVecTmpLow load + } if + /prevVecLow ED /prevVecUp ED } if DebugEnd } bind def @@ -1337,6 +1348,7 @@ tx@OptexpDict begin fiberalign center eq { RelFiberAngle@center }{ + 3 1 roll pop pop RelFiberAngle@ref } ifelse 2 copy exch atan @@ -1350,6 +1362,7 @@ tx@OptexpDict begin CompA fiberalign center eq { RelFiberAngle@center }{ + 3 1 roll pop pop RelFiberAngle@tref } ifelse 2 copy exch atan @@ -1358,19 +1371,17 @@ tx@OptexpDict begin DebugEnd } bind def /RelFiberAngle@ref { - 3 1 roll pop pop dup (A) NodeName exch (B) NodeName @GetCenter 3 -1 roll @GetCenter @ABVect } bind def /RelFiberAngle@tref { - 3 1 roll pop pop dup (TrefA) NodeName exch (TrefB) NodeName @GetCenter 3 -1 roll @GetCenter @ABVect } bind def /RelFiberAngle@center { (Center) NodeName @GetCenter 4 2 roll @ABVect } bind def -/getsubnode { +/GetIfcOrNodeCoord { dup xcheck { exch pop exec } { |