summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/dvips/pst-optexp/pst-optexp.pro
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2013-03-20 21:37:35 +0000
committerKarl Berry <karl@freefriends.org>2013-03-20 21:37:35 +0000
commitc12e1348d0914fb7b830a01270caab9a64392f83 (patch)
tree70fdb15a9cab51cd563996062a3c8c0c25c94d7d /Master/texmf-dist/dvips/pst-optexp/pst-optexp.pro
parentabe817918b44932ac5391be3fbb7bc55b030c01b (diff)
pst-optexp (20mar13)
git-svn-id: svn://tug.org/texlive/trunk@29444 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/dvips/pst-optexp/pst-optexp.pro')
-rw-r--r--Master/texmf-dist/dvips/pst-optexp/pst-optexp.pro48
1 files changed, 33 insertions, 15 deletions
diff --git a/Master/texmf-dist/dvips/pst-optexp/pst-optexp.pro b/Master/texmf-dist/dvips/pst-optexp/pst-optexp.pro
index 99236bc9f55..2c1e89865eb 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.5 (2013/02/22)
+%% Version: 3.6 (2013/03/20)
%%
%% Copyright (C) 2007-2013 by Christoph Bersch <usenet@bersch.net>
%%
@@ -491,7 +491,8 @@ tx@OptexpDict begin
} if
/IfcCntTmp IfcCnt def
aload pop /draw ED /name ED
- name cvn load /N get /N ED
+ name cvn load /N get dup /N ED
+ 1 eq { /draw true def } if
currentdict /Curr known {
/CurrTmp /Curr load def
/CurrVecTmp /CurrVec load def
@@ -511,18 +512,20 @@ tx@OptexpDict begin
}{
CurrTmp name GetNearestPlane dup /firstPlane ED
name isAmbiguousIfc not {
- CurrVecTmp firstPlane name GetPlaneVec NormalVec
- (C) name GetIfcCenter firstPlane name GetIfcCenter
- @ABVect 2 copy 6 2 roll DotProd
- 0 lt { trans }{ refl } ifelse
- 3 1 roll ToVec /CurrVecTmp ED
+ firstPlane name
+ name firstPlane GetIfcMode
+ connectifc { bgRefIndex }{ name GetRefIndex } ifelse
+ CurrTmp CurrVecTmp
+ 10 dict begin HandleInterface end pop
+ ToVec /CurrVecTmp ED ToVec /CurrTmp ED
[ firstPlane name
connectifc {
bgRefIndex
}{
name GetRefIndex
} ifelse
- 5 -1 roll true ] cvx
+ name firstPlane GetIfcMode
+ true ] cvx
/IfcCntTmp IfcCntTmp 1 add def
} if
PN IfcCnt eq {
@@ -535,9 +538,15 @@ tx@OptexpDict begin
name GetRefIndex
CurrVecTmp (C) name GetPlaneVec NormalVec outToPlane
GetIfcCenter (C) name GetIfcCenter @ABVect DotProd
- 0 lt { trans } { refl } ifelse % mode
+ 0 lt { trans } { refl } ifelse
+ dup 6 1 roll
IfcCntTmp IfcCnt eq { true }{ draw } ifelse
] cvx
+ (C) name 4 -1 roll
+ connectifc { bgRefIndex }{ name GetRefIndex } ifelse
+ CurrTmp CurrVecTmp
+ 10 dict begin HandleInterface end pop
+ ToVec /CurrVecTmp ED ToVec /CurrTmp ED
name /outToPlane load GetNextPlane
dup dup name isAmbiguousIfc exch 0 eq or not {
[ exch name bgRefIndex trans draw ] cvx exch
@@ -556,8 +565,9 @@ tx@OptexpDict begin
/GetNextPlane {
(GetNextPlane) DebugBegin
2 copy (C) 3 -1 roll
- GetIfcCenter 3 -1 roll exec GetIfcCenter
- 4 2 roll 4 copy @ABVect /VecY ED /VecX ED
+ GetIfcCenter 3 -1 roll
+ exec GetIfcCenter
+ 4 2 roll 4 copy @ABVect ToVec /Vec ED
@ABDist /centerDist ED
/sprod 1 def
/nextPlane 0 def
@@ -565,8 +575,8 @@ tx@OptexpDict begin
cvn load dup /ambIfc get /ambIfc ED /N get 1 1 3 -1 roll {
dup ambIfc eq not {
3 copy 3 -1 roll 2 copy
- GetPlaneVec VecX VecY 4 2 roll NormalVec
- VecX VecY DotProd dup sprod lt 5 2 roll
+ GetPlaneVec Vec 4 2 roll NormalVec
+ Vec DotProd dup sprod lt 5 2 roll
GetIfcCenter 3 -1 roll exec GetIfcCenter @ABDist
centerDist lt and
{ /sprod ED /nextPlane ED } { pop pop } ifelse
@@ -650,7 +660,7 @@ tx@OptexpDict begin
} ifelse
2 copy
ToVec /Curr ED
- draw PN skipconn 1 add gt and
+ draw PN beampathskip 1 add gt and
counttomark 3 roll
/PrevCenter /CurrCenter load def
/lastBeamPointTmp /Curr load def
@@ -744,7 +754,7 @@ tx@OptexpDict begin
PushAmbCompPlanesOnStack
} if
exec
- PN skipconn 1 add gt and /draw ED
+ PN beampathskip 1 add gt and /draw ED
/Mode ED /n2 ED 2 copy /CompName ED /IfcNum ED
GetIfcCenter ToVec /CurrPCenter ED
/oldn1 n1 def
@@ -1033,6 +1043,9 @@ tx@OptexpDict begin
} if
AdjustRelRot
} {
+ i 2 eq {
+ CompB amb CompA desc AdjustRelRot
+ } if
pop amb dup
} ifelse
CompB /CompA CompB def
@@ -1152,6 +1165,11 @@ tx@OptexpDict begin
} ifelse
(P@) exch strcat cvn
} bind def
+/GetIfcMode {
+ exch cvn load begin
+ IfcName load /mode get
+ end
+} bind def
/NodeName {
dup /stringtype eq not { inttostr } if
strcat (N@) exch strcat cvn