diff --git a/old/gcode/colour-table2.ps b/old/gcode/colour-table2.ps deleted file mode 100755 index 3fd63f74525248ce437d86270824bbd5986c109e..0000000000000000000000000000000000000000 --- a/old/gcode/colour-table2.ps +++ /dev/null @@ -1,273 +0,0 @@ -WuGdict97a begin %% the following lines are produced by g3.ps - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%% %% -%% Switchboard %% -%% %% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -17.5 dup geld x deftot -fullpage {EdgeLeftDIN 1.7 -12 1} {-10 -10 1} ifelse -/psize x def offset -/mainscale { psize psize psize defred } def mainscale -0 0 offset % positive offset moves it right and up. - -0 0 InfSet % plot fnam, info -3 dup 2 SymGSet % slin srad serr(2=from pset) : graph symbols, global preset - -/next { dx dy offset } bind def - -/iCol { % n_this n_tot iCol - : starting with red, round the circle - div dup truncate sub 3 mul - dup 1 le { - dup 1 sub neg 0 3 2 roll } { - dup 2 le { - 1 sub dup 1 sub neg 0 3 1 roll } { - 2 sub dup 1 sub neg 0 3 0 roll } ifelse - } ifelse - 0 setcmykcolor -} def - -1 100 pColSet % arg1: color on/off; arg2: max no. of colours -/pStyles [ -{ { 1 0 0 1. 1. pset } { 1 1 0 1. 1. pset 1 ipCol} ifpcol } % 1 -{ { 1 1 0 1. 1. pset } { 1 1 0 1. 1. pset 2 ipCol} ifpcol } % 2 -{ { 2 0 0 1. 1. pset } { 1 1 0 1. 1. pset 3 ipCol} ifpcol } % 3 -{ { 2 1 0 1. 1. pset } { 1 1 0 1. 1. pset 4 ipCol} ifpcol } % 4 -{ { 3 0 0 1. 1. pset } { 1 1 0 1. 1. pset 5 ipCol} ifpcol } % 5 -{ { 3 1 0 1. 1. pset } { 1 1 0 1. 1. pset 6 ipCol} ifpcol } % 6 -{ { 4 0 0 1. 1. pset } { 1 1 0 1. 1. pset 7 ipCol} ifpcol } % 7 -{ { 4 1 0 1. 1. pset } { 1 1 0 1. 1. pset 8 ipCol} ifpcol } % 8 -{ { 5 0 0 1. 1. pset } { 1 1 0 1. 1. pset 9 ipCol} ifpcol } % 9 -{ { 5 0 0 1. 1. pset } { 1 1 0 1. 1. pset 10 ipCol} ifpcol } % 9 -{ { 1 0 0 1. 1. pset } { 1 1 0 1. 1. pset 11 ipCol} ifpcol } % 1 -{ { 1 1 0 1. 1. pset } { 1 1 0 1. 1. pset 12 ipCol} ifpcol } % 2 -{ { 2 0 0 1. 1. pset } { 1 1 0 1. 1. pset 13 ipCol} ifpcol } % 3 -{ { 2 1 0 1. 1. pset } { 1 1 0 1. 1. pset 14 ipCol} ifpcol } % 4 -{ { 3 0 0 1. 1. pset } { 1 1 0 1. 1. pset 15 ipCol} ifpcol } % 5 -{ { 3 1 0 1. 1. pset } { 1 1 0 1. 1. pset 16 ipCol} ifpcol } % 6 -{ { 4 0 0 1. 1. pset } { 1 1 0 1. 1. pset 17 ipCol} ifpcol } % 7 -{ { 4 1 0 1. 1. pset } { 1 1 0 1. 1. pset 18 ipCol} ifpcol } % 8 -{ { 5 0 0 1. 1. pset } { 1 1 0 1. 1. pset 19 ipCol} ifpcol } % 9 -{ { 5 0 0 1. 1. pset } { 1 1 0 1. 1. pset 20 ipCol} ifpcol } % 9 -{ { 1 0 0 1. 1. pset } { 1 1 0 1. 1. pset 21 ipCol} ifpcol } % 1 -{ { 1 1 0 1. 1. pset } { 1 1 0 1. 1. pset 22 ipCol} ifpcol } % 2 -{ { 2 0 0 1. 1. pset } { 1 1 0 1. 1. pset 23 ipCol} ifpcol } % 3 -{ { 2 1 0 1. 1. pset } { 1 1 0 1. 1. pset 24 ipCol} ifpcol } % 4 -{ { 3 0 0 1. 1. pset } { 1 1 0 1. 1. pset 25 ipCol} ifpcol } % 5 -{ { 3 1 0 1. 1. pset } { 1 1 0 1. 1. pset 26 ipCol} ifpcol } % 6 -{ { 4 0 0 1. 1. pset } { 1 1 0 1. 1. pset 27 ipCol} ifpcol } % 7 -{ { 4 1 0 1. 1. pset } { 1 1 0 1. 1. pset 28 ipCol} ifpcol } % 8 -{ { 5 0 0 1. 1. pset } { 1 1 0 1. 1. pset 29 ipCol} ifpcol } % 9 -{ { 5 0 0 1. 1. pset } { 1 1 0 1. 1. pset 30 ipCol} ifpcol } % 9 -{ { 1 0 0 1. 1. pset } { 1 1 0 1. 1. pset 31 ipCol} ifpcol } % 1 -{ { 1 1 0 1. 1. pset } { 1 1 0 1. 1. pset 32 ipCol} ifpcol } % 2 -{ { 2 0 0 1. 1. pset } { 1 1 0 1. 1. pset 33 ipCol} ifpcol } % 3 -{ { 2 1 0 1. 1. pset } { 1 1 0 1. 1. pset 34 ipCol} ifpcol } % 4 -{ { 3 0 0 1. 1. pset } { 1 1 0 1. 1. pset 35 ipCol} ifpcol } % 5 -{ { 3 1 0 1. 1. pset } { 1 1 0 1. 1. pset 36 ipCol} ifpcol } % 6 -{ { 4 0 0 1. 1. pset } { 1 1 0 1. 1. pset 37 ipCol} ifpcol } % 7 -{ { 4 1 0 1. 1. pset } { 1 1 0 1. 1. pset 38 ipCol} ifpcol } % 8 -{ { 5 0 0 1. 1. pset } { 1 1 0 1. 1. pset 39 ipCol} ifpcol } % 9 -{ { 5 0 0 1. 1. pset } { 1 1 0 1. 1. pset 40 ipCol} ifpcol } % 9 -{ { 1 0 0 1. 1. pset } { 1 1 0 1. 1. pset 41 ipCol} ifpcol } % 1 -{ { 1 1 0 1. 1. pset } { 1 1 0 1. 1. pset 42 ipCol} ifpcol } % 2 -{ { 2 0 0 1. 1. pset } { 1 1 0 1. 1. pset 43 ipCol} ifpcol } % 3 -{ { 2 1 0 1. 1. pset } { 1 1 0 1. 1. pset 44 ipCol} ifpcol } % 4 -{ { 3 0 0 1. 1. pset } { 1 1 0 1. 1. pset 45 ipCol} ifpcol } % 5 -{ { 3 1 0 1. 1. pset } { 1 1 0 1. 1. pset 46 ipCol} ifpcol } % 6 -{ { 4 0 0 1. 1. pset } { 1 1 0 1. 1. pset 47 ipCol} ifpcol } % 7 -{ { 4 1 0 1. 1. pset } { 1 1 0 1. 1. pset 48 ipCol} ifpcol } % 8 -{ { 5 0 0 1. 1. pset } { 1 1 0 1. 1. pset 49 ipCol} ifpcol } % 9 -{ { 5 0 0 1. 1. pset } { 1 1 0 1. 1. pset 50 ipCol} ifpcol } % 9 -{ { 1 0 0 1. 1. pset } { 1 1 0 1. 1. pset 51 ipCol} ifpcol } % 1 -{ { 1 1 0 1. 1. pset } { 1 1 0 1. 1. pset 52 ipCol} ifpcol } % 2 -{ { 2 0 0 1. 1. pset } { 1 1 0 1. 1. pset 53 ipCol} ifpcol } % 3 -{ { 2 1 0 1. 1. pset } { 1 1 0 1. 1. pset 54 ipCol} ifpcol } % 4 -{ { 3 0 0 1. 1. pset } { 1 1 0 1. 1. pset 55 ipCol} ifpcol } % 5 -{ { 3 1 0 1. 1. pset } { 1 1 0 1. 1. pset 56 ipCol} ifpcol } % 6 -{ { 4 0 0 1. 1. pset } { 1 1 0 1. 1. pset 57 ipCol} ifpcol } % 7 -{ { 4 1 0 1. 1. pset } { 1 1 0 1. 1. pset 58 ipCol} ifpcol } % 8 -{ { 5 0 0 1. 1. pset } { 1 1 0 1. 1. pset 59 ipCol} ifpcol } % 9 -{ { 5 0 0 1. 1. pset } { 1 1 0 1. 1. pset 60 ipCol} ifpcol } % 9 -{ { 1 0 0 1. 1. pset } { 1 1 0 1. 1. pset 61 ipCol} ifpcol } % 1 -{ { 1 1 0 1. 1. pset } { 1 1 0 1. 1. pset 62 ipCol} ifpcol } % 2 -{ { 2 0 0 1. 1. pset } { 1 1 0 1. 1. pset 63 ipCol} ifpcol } % 3 -{ { 2 1 0 1. 1. pset } { 1 1 0 1. 1. pset 64 ipCol} ifpcol } % 4 -{ { 3 0 0 1. 1. pset } { 1 1 0 1. 1. pset 65 ipCol} ifpcol } % 5 -{ { 3 1 0 1. 1. pset } { 1 1 0 1. 1. pset 66 ipCol} ifpcol } % 6 -{ { 4 0 0 1. 1. pset } { 1 1 0 1. 1. pset 67 ipCol} ifpcol } % 7 -{ { 4 1 0 1. 1. pset } { 1 1 0 1. 1. pset 68 ipCol} ifpcol } % 8 -{ { 5 0 0 1. 1. pset } { 1 1 0 1. 1. pset 69 ipCol} ifpcol } % 9 -{ { 5 0 0 1. 1. pset } { 1 1 0 1. 1. pset 70 ipCol} ifpcol } % 9 -{ { 1 0 0 1. 1. pset } { 1 1 0 1. 1. pset 71 ipCol} ifpcol } % 1 -{ { 1 1 0 1. 1. pset } { 1 1 0 1. 1. pset 72 ipCol} ifpcol } % 2 -{ { 2 0 0 1. 1. pset } { 1 1 0 1. 1. pset 73 ipCol} ifpcol } % 3 -{ { 2 1 0 1. 1. pset } { 1 1 0 1. 1. pset 74 ipCol} ifpcol } % 4 -{ { 3 0 0 1. 1. pset } { 1 1 0 1. 1. pset 75 ipCol} ifpcol } % 5 -{ { 3 1 0 1. 1. pset } { 1 1 0 1. 1. pset 76 ipCol} ifpcol } % 6 -{ { 4 0 0 1. 1. pset } { 1 1 0 1. 1. pset 77 ipCol} ifpcol } % 7 -{ { 4 1 0 1. 1. pset } { 1 1 0 1. 1. pset 78 ipCol} ifpcol } % 8 -{ { 5 0 0 1. 1. pset } { 1 1 0 1. 1. pset 79 ipCol} ifpcol } % 9 -{ { 5 0 0 1. 1. pset } { 1 1 0 1. 1. pset 80 ipCol} ifpcol } % 9 -{ { 1 0 0 1. 1. pset } { 1 1 0 1. 1. pset 81 ipCol} ifpcol } % 1 -{ { 1 1 0 1. 1. pset } { 1 1 0 1. 1. pset 82 ipCol} ifpcol } % 2 -{ { 2 0 0 1. 1. pset } { 1 1 0 1. 1. pset 83 ipCol} ifpcol } % 3 -{ { 2 1 0 1. 1. pset } { 1 1 0 1. 1. pset 84 ipCol} ifpcol } % 4 -{ { 3 0 0 1. 1. pset } { 1 1 0 1. 1. pset 85 ipCol} ifpcol } % 5 -{ { 3 1 0 1. 1. pset } { 1 1 0 1. 1. pset 86 ipCol} ifpcol } % 6 -{ { 4 0 0 1. 1. pset } { 1 1 0 1. 1. pset 87 ipCol} ifpcol } % 7 -{ { 4 1 0 1. 1. pset } { 1 1 0 1. 1. pset 88 ipCol} ifpcol } % 8 -{ { 5 0 0 1. 1. pset } { 1 1 0 1. 1. pset 89 ipCol} ifpcol } % 9 -{ { 5 0 0 1. 1. pset } { 1 1 0 1. 1. pset 90 ipCol} ifpcol } % 9 -{ { 1 0 0 1. 1. pset } { 1 1 0 1. 1. pset 91 ipCol} ifpcol } % 1 -{ { 1 1 0 1. 1. pset } { 1 1 0 1. 1. pset 92 ipCol} ifpcol } % 2 -{ { 2 0 0 1. 1. pset } { 1 1 0 1. 1. pset 93 ipCol} ifpcol } % 3 -{ { 2 1 0 1. 1. pset } { 1 1 0 1. 1. pset 94 ipCol} ifpcol } % 4 -{ { 3 0 0 1. 1. pset } { 1 1 0 1. 1. pset 95 ipCol} ifpcol } % 5 -{ { 3 1 0 1. 1. pset } { 1 1 0 1. 1. pset 96 ipCol} ifpcol } % 6 -{ { 4 0 0 1. 1. pset } { 1 1 0 1. 1. pset 97 ipCol} ifpcol } % 7 -{ { 4 1 0 1. 1. pset } { 1 1 0 1. 1. pset 98 ipCol} ifpcol } % 8 -{ { 5 0 0 1. 1. pset } { 1 1 0 1. 1. pset 99 ipCol} ifpcol } % 9 -{ { 5 0 0 1. 1. pset } { 1 1 0 1. 1. pset 100 ipCol} ifpcol } % 9 -] def - -1 4 cColSet % arg1: color on/off; arg2: max no. of colours -/cStyles [ -{ { 1. [ ] lset } { 1. [] lset 2 icCol} ifccol } % 1 -] def - -24 setown -5 11 {(colour table 2: cmyk (1-100))} textCM - -0.5 9.6 23 1.85 NewList - 1 {(01)} PtTxLine - 2 {(02)} PtTxLine - 3 {(03)} PtTxLine - 4 {(04)} PtTxLine - 5 {(05)} PtTxLine - 6 {(06)} PtTxLine - 7 {(07)} PtTxLine - 8 {(08)} PtTxLine - 9 {(09)} PtTxLine - 10 {(10)} PtTxLine - 11 {(11)} PtTxLine - 12 {(12)} PtTxLine - 13 {(13)} PtTxLine - 14 {(14)} PtTxLine - 15 {(15)} PtTxLine - 16 {(16)} PtTxLine - 17 {(17)} PtTxLine - 18 {(18)} PtTxLine - 19 {(19)} PtTxLine - 20 {(20)} PtTxLine -2.5 9.6 23 1.85 NewList - 21 {(21)} PtTxLine - 22 {(22)} PtTxLine - 23 {(23)} PtTxLine - 24 {(24)} PtTxLine - 25 {(25)} PtTxLine - 26 {(26)} PtTxLine - 27 {(27)} PtTxLine - 28 {(28)} PtTxLine - 29 {(29)} PtTxLine - 30 {(30)} PtTxLine - 31 {(31)} PtTxLine - 32 {(32)} PtTxLine - 33 {(33)} PtTxLine - 34 {(34)} PtTxLine - 35 {(35)} PtTxLine - 36 {(36)} PtTxLine - 37 {(37)} PtTxLine - 38 {(38)} PtTxLine - 39 {(39)} PtTxLine - 40 {(40)} PtTxLine -4.5 9.6 23 1.85 NewList - 41 {(41)} PtTxLine - 42 {(42)} PtTxLine - 43 {(43)} PtTxLine - 44 {(44)} PtTxLine - 45 {(45)} PtTxLine - 46 {(46)} PtTxLine - 47 {(47)} PtTxLine - 48 {(48)} PtTxLine - 49 {(49)} PtTxLine - 50 {(50)} PtTxLine - 51 {(51)} PtTxLine - 52 {(52)} PtTxLine - 53 {(53)} PtTxLine - 54 {(54)} PtTxLine - 55 {(55)} PtTxLine - 56 {(56)} PtTxLine - 57 {(57)} PtTxLine - 58 {(58)} PtTxLine - 59 {(59)} PtTxLine - 60 {(60)} PtTxLine -6.5 9.6 23 1.85 NewList - 61 {(61)} PtTxLine - 62 {(62)} PtTxLine - 63 {(63)} PtTxLine - 64 {(64)} PtTxLine - 65 {(65)} PtTxLine - 66 {(66)} PtTxLine - 67 {(67)} PtTxLine - 68 {(68)} PtTxLine - 69 {(69)} PtTxLine - 70 {(70)} PtTxLine - 71 {(71)} PtTxLine - 72 {(72)} PtTxLine - 73 {(73)} PtTxLine - 74 {(74)} PtTxLine - 75 {(75)} PtTxLine - 76 {(76)} PtTxLine - 77 {(77)} PtTxLine - 78 {(78)} PtTxLine - 79 {(79)} PtTxLine - 80 {(80)} PtTxLine -8.5 9.6 23 1.85 NewList - 81 {(81)} PtTxLine - 82 {(82)} PtTxLine - 83 {(83)} PtTxLine - 84 {(84)} PtTxLine - 85 {(85)} PtTxLine - 86 {(86)} PtTxLine - 87 {(87)} PtTxLine - 88 {(88)} PtTxLine - 89 {(89)} PtTxLine - 90 {(90)} PtTxLine - 91 {(91)} PtTxLine - 92 {(92)} PtTxLine - 93 {(93)} PtTxLine - 94 {(94)} PtTxLine - 95 {(95)} PtTxLine - 96 {(96)} PtTxLine - 97 {(97)} PtTxLine - 98 {(98)} PtTxLine - 99 {(99)} PtTxLine -100 {(00)} PtTxLine - - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%% %% -%% now the output produced by WuGra %% -%% %% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -/filename (l1) def - - 10 -3 18 showfilename - -%: Coordinate system : - -% Lin x-axis from 170.0000 310.0000 -% Log y-axis from 0.2000000E-09 4000.000 - -Resets - -0 10 0 0 0 90 OneAxx Axx % low x axis -0 10 0 10 0 270 OneAxx Axx % top x axis - -0 10 0 0 90 0 OneAxx Axx % left y axis -0 10 10 0 90 180 OneAxx Axx % right y axis - -Basta % now plot the page (if Basta is not redefined) diff --git a/pub/share/g3.ps b/pub/share/g3.ps index 0f94f3817079ef968d3074674e82470215bc1c8f..3bb14e66391d9a5897d647fc686f928047344a23 100644 --- a/pub/share/g3.ps +++ b/pub/share/g3.ps @@ -1,4 +1,4 @@ -WuGdict07a begin %% the following lines are produced by g3.ps +WuGdict10a begin %% the following lines are produced by g3.ps %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% %% @@ -14,38 +14,41 @@ EdgeLeftDIN 1 1 language 0 0 InfSet % plot fnam, info 1 dup 2 SymGSet % slin srad serr(2=from pset) : graph symbols, global preset -0 setschool /EndFrame { plotafter Basta } def % /setboxbackgroundcolor { 0.93 setgray } def % x y 24 abcset -% /next{ 12 0 offset } def /nextPoints{ next } def /nextCurve{ next } def -% 100 DDsetresolution +% /next{ 12 0 offset } def -1 100 pColSet % arg1: color on/off; arg2: max no. of colours +1 /pcol x def % colours off/on +{ 10 iCol1 } /ipCol x bind def % number of colours and colour style /pStyles [ -{ { 1 1 0 1. 1. pset } { 1 1 0 1. 1. pset 0 ipCol} ifpcol } % 1 -{ { 2 1 0 1. 1. pset } { 1 1 0 1. 1. pset 30 ipCol} ifpcol } % 3 -{ { 1 0 0 1. 1. pset } { 1 1 0 1. 1. pset 70 ipCol} ifpcol } % 2 -{ { 2 0 0 1. 1. pset } { 1 1 0 1. 1. pset 80 ipCol} ifpcol } % 4 -{ { 3 1 0 1. 1. pset } { 1 1 0 1. 1. pset 50 ipCol} ifpcol } % 5 -{ { 3 0 0 1. 1. pset } { 1 1 0 1. 1. pset 15 ipCol} ifpcol } % 6 -{ { 4 1 0 1. 1. pset } { 1 1 0 1. 1. pset 70 ipCol} ifpcol } % 7 -{ { 4 0 0 1. 1. pset } { 1 1 0 1. 1. pset siemensred } ifpcol } % 8 -{ { 4 0 0 1. 1. pset } { 1 1 0 1. 1. pset siemensblue } ifpcol } % 8 -{ { 4 0 0 1. 1. pset } { 1 1 0 1. 1. pset siemensgreen } ifpcol } % 8 -{ { 4 0 0 1. 1. pset } { 1 1 0 1. 1. pset siemensorange } ifpcol } % 8 -{ { 5 1 0 1. 1. pset } { 1 1 0 1. 1. pset siemensdark } ifpcol } % 9 -{ { 5 0 0 1. 1. pset } { 1 1 0 1. 1. pset siemenspink } ifpcol } % 0 +{ { 1 1 0 1. 1. pset } { 1 1 0 1. 1. pset 0 ipCol } ifpcol } % 1 +{ { 1 0 0 1. 1. pset } { 1 1 0 1. 1. pset 1 ipCol } ifpcol } % 3 +{ { 2 1 0 1. 1. pset } { 1 1 0 1. 1. pset 2 ipCol } ifpcol } % 2 +{ { 2 0 0 1. 1. pset } { 1 1 0 1. 1. pset 3 ipCol } ifpcol } % 4 +{ { 3 1 0 1. 1. pset } { 1 1 0 1. 1. pset 4 ipCol } ifpcol } % 5 +{ { 3 0 0 1. 1. pset } { 1 1 0 1. 1. pset 5 ipCol } ifpcol } % 6 +{ { 4 1 0 1. 1. pset } { 1 1 0 1. 1. pset 6 ipCol } ifpcol } % 7 +{ { 4 0 0 1. 1. pset } { 1 1 0 1. 1. pset 7 ipCol } ifpcol } % 8 +{ { 5 1 0 1. 1. pset } { 1 1 0 1. 1. pset 8 ipCol } ifpcol } % 9 +{ { 5 0 0 1. 1. pset } { 1 1 0 1. 1. pset 9 ipCol } ifpcol } % 10 +{ { 6 1 0 1. 1. pset } { 1 1 0 1. 1. pset siemensred } ifpcol } +{ { 7 1 0 1. 1. pset } { 1 1 0 1. 1. pset siemensblue } ifpcol } +{ { 8 1 0 1. 1. pset } { 1 1 0 1. 1. pset siemensgreen } ifpcol } +{ { 9 1 0 1. 1. pset } { 1 1 0 1. 1. pset siemensorange } ifpcol } +{ { 10 1 0 1. 1. pset } { 1 1 0 1. 1. pset siemensdark } ifpcol } +{ { 11 1 0 1. 1. pset } { 1 1 0 1. 1. pset siemenspink } ifpcol } ] def -0 100 cColSet % arg1: color on/off; arg2: max no. of colours +0 /ccol x def % color on/off +{ 4 iCol2 } /icCol x bind def % number of colours and colour style /cStyles [ -{ { 1. [ ] lset } { 1. [] lset 10 icCol} ifccol } % 1 -{ { 1. [1 3 ] lset } { 1. [] lset 20 icCol} ifccol } % 2 -{ { 1. [8 6 ] lset } { 1. [] lset 30 icCol} ifccol } % 3 -{ { 1. [8 3 1 3 ] lset } { 1. [] lset 40 icCol} ifccol } % 4 +{ { 1. [ ] lset } { 1. [] lset 0 icCol } ifccol } % 1 +{ { 1. [1 3 ] lset } { 1. [] lset 1 icCol } ifccol } % 2 +{ { 1. [8 6 ] lset } { 1. [] lset 2 icCol } ifccol } % 3 +{ { 1. [8 3 1 3 ] lset } { 1. [] lset 3 icCol } ifccol } % 4 ] def Resets diff --git a/pub/share/wups10a.ps b/pub/share/wups10a.ps new file mode 100644 index 0000000000000000000000000000000000000000..a649dca8f292ed779341a21c21cf24b3da25c702 --- /dev/null +++ b/pub/share/wups10a.ps @@ -0,0 +1,1421 @@ +%!PS-Adobe-1.0 + +gsave +/WuGdict10a 400 dict def +WuGdict10a begin + +/Reencsmalldict 12 dict def % Lokaler Speicher fuer ReEncodeSmall +/ReEncodeSmall % existing_font name_of_new_font array_of_pairs(octal_code/name) +{ Reencsmalldict begin + /NewCodesAndNames exch def + /NewFontName exch def + /BaseFontName exch def + /BaseFontDict + BaseFontName findfont def + /NewFont BaseFontDict + maxlength dict def + + BaseFontDict + { exch dup /FID ne + { dup /Encoding eq + { exch dup + length array copy + NewFont 3 1 roll put + } + { exch NewFont + 3 1 roll put + } ifelse + } + { pop pop + } ifelse + } forall + + NewFont + /FontName NewFontName put + NewCodesAndNames aload pop + NewCodesAndNames length 2 idiv + { NewFont /Encoding get + 3 1 roll put + } repeat + + NewFontName NewFont + definefont pop + end +} def + +/GermanVec +[ 8#201 /udieresis + 8#204 /adieresis + 8#216 /Adieresis + 8#224 /odieresis + 8#231 /Odieresis + 8#232 /Udieresis + 8#341 /germandbls +] def + +/Helvetica /HelveticaGerman GermanVec ReEncodeSmall +/Helvetica-Oblique /HelveticaGerman-Oblique GermanVec ReEncodeSmall +/Helvetica-Bold /HelveticaGerman-Bold GermanVec ReEncodeSmall +/Helvetica-BoldOblique /HelveticaGerman-BoldOblique GermanVec ReEncodeSmall + +%% shortwords : + +/np {newpath} bind def +/mv {moveto} bind def +/rm {rmoveto} bind def +/rl {rlineto} bind def +/li {lineto} bind def +/cp {closepath} bind def +/st {stroke} bind def +/x {exch} bind def + +/L {langSel} bind def + +/g {exch grec endgr} bind def +/sb {exch subsc endsc} bind def +/sp {exch supsc endsc} bind def +/sbgr {exch grec () subsc endsc () endgr} bind def +/spgr {exch grec () supsc endsc () endgr} bind def +/u {umlaut} bind def +/U {Umlaut} bind def + +/MV {ym exch xm exch moveto} bind def +/RM {ym exch xm exch rmoveto} bind def +/LI {ym exch xm exch lineto} bind def +/RL {ym exch xm exch rlineto} bind def + +/G { gsave exec grestore } bind def + +%% generic operators : + +/lastindex { length 1 sub } bind def +/min { 2 copy gt { exch } if pop } def +/max { 2 copy lt { exch } if pop } def + +%% math: +/eexp { 2.71828 exch exp } def +/tan { dup sin x cos div } def +/cot { dup cos x sin div } def +/pol2xy{ 2 copy cos mul 3 1 roll sin mul } def % r phi | x y +/tanh { 2.71828 exch 2 copy exp 3 1 roll neg exp + 2 copy sub 3 1 roll add div } def +/rnd { rand cvr 1 30 bitshift div 2 div 0 max 1 min } def % zwischen 0 und 1 +/twopi { 6.2831853072 } def + +%% modi : + +/Basta { + showpage + end % pop dictionary from stack + } def + +/next{ pop } def /nextPoints{ next } def /nextCurve{ next } def + +%% constants : + +/pt { .018567 mul} bind def +/cm {28.346456 mul} bind def +/gyld {0.447214 mul} bind def /Gyld {0.447214 div} bind def % sqrt(5) +/guld {0.547723 mul} bind def /Guld {0.547723 div} bind def % sqrt(3) +/gold {0.618034 mul} bind def /Gold {0.618034 div} bind def % goldener Schnitt +/gild {0.707107 mul} bind def /Gild {0.707107 div} bind def % sqrt(2) : DIN +/geld {0.759836 mul} bind def /Geld {0.759836 div} bind def % sqrt(sqrt(3)) +/gald {0.817765 mul} bind def /Gald {0.817765 div} bind def % sqrt sqrt sqrt 5 + +%% operations in cm: + +/cmtranslate { % x y cmtranslate - + cm x cm x translate } bind def +/EdgeDIN{ 20.3 28.3 cmtranslate } bind def +/EdgeLeftDIN{ .6 28.3 cmtranslate } bind def +/EdgeAMI{ 18 26 cmtranslate } bind def % ???? + +%% set total and relativ window : + +/defred { % xrel yrel frel defred - ; define xlen,ylen, and the metric xm,ym,fm + /fmm exch ftot mul def + /ymm exch def + /xmm exch def + } def +/defsiz { % size(cm) labelsize(rel) - ; PS-units shall equal xm/ym-units + /ftot exch def + cm 10 div dup scale + } def +/autolabel { % size(cm) | labelsize(rel) + dup 7 div 2 add 4 mul % the simplest sublinear increase + exch div % anticipate overall rescaling + } def + +%% graphic units (running from 0 to 10) : + +/xm {xmm mul} def +/ym {ymm mul} def +/fm {fmm mul} def +/xym {ym x xm x} def + +/offset { xym translate } def +/poloffset { pol2xy offset } def % r phi | +/currentxy { currentpoint ymm div x xmm div x } def + +/mmscale { xmm ymm scale } def +/mmunscale { 1 xmm div 1 ymm div scale } def + +%% prepare font commands : + +/setfontandsize { % font size setfontandsize - ; + % scale and set font; define fontsize, fontheight + dup 0 le { pop 100 } if % fontsize <= 0 not allowed ! + /fontnonnil true def + pt fm dup /fontsize x def + x findfont + x scalefont + setfont + gsave % determine fontheight - from the cookbook : + np 0 0 mv (1) true charpath flattenpath + pathbbox % low_left_x, low_left_y, up_right_x, up_right_y + x pop x pop x pop + /fontheight x def + grestore + } def + +/SetNum { /HelveticaGerman 24 setfontandsize } bind def +/setlab { /HelveticaGerman 24 setfontandsize } bind def +/setown { /HelveticaGerman x setfontandsize } bind def +/setbol { /HelveticaGerman-Bold x setfontandsize } bind def +/setboq { /HelveticaGerman-BoldOblique x setfontandsize } bind def +/setobl { /HelveticaGerman-Oblique x setfontandsize } bind def + +%% language selection (27jul97) : + +/language { + /langMax exch def + /langChc exch def +} def + +1 1 language % default + +/langSel { % T_1 .. T_M langSel T_C mit M=langMax, C=langC + langMax dup langChc sub 1 add roll + langMax 1 sub { pop } repeat +} def + +%% prepare drawing commands : + +/setline { pt fm setlinewidth [] 0 setdash } bind def + +%% coordinate system : + +%: world coordinates: +/xSetCoord { % log min max | - + /wxmax exch def + /wxmin exch def + /wxlog exch 0 eq not def +} def +/ySetCoord { % log min max | - + /wymax exch def + /wymin exch def + /wylog exch 0 eq not def +} def +/wx { + wxlog { + wxmin div log wxmax wxmin div log div 10 mul + } { + wxmin sub wxmax wxmin sub div 10 mul + } ifelse +} def +/wxd { % step + wxlog { + log wxmax wxmin div log div 10 mul + } { + wxmax wxmin sub div 10 mul + } ifelse +} def +/wy { + wylog { + wymin div log wymax wymin div log div 10 mul + } { + wymin sub wymax wymin sub div 10 mul + } ifelse +} def +/wyd { % step + wylog { + log wymax wymin div log div 10 mul + } { + wymax wymin sub div 10 mul + } ifelse +} def +/wxy { + wy exch wx exch +} def + +%: new plot : +/Resets{ + /yNumLengthL 0 def /yNumLengthH 0 def + /xNumHeightL .3 def /xNumHeightH 0 def + /xNumHeightRel 2.4 def + /aMean 5 def + /xPlotFrame {} def + /yPlotFrame {} def + /zPlotFrame {} def + black + } def +/BoxBackground{ 0 0 10 10 boxit gsave setboxbackgroundcolor fill grestore } def +/setboxbackgroundcolor { white } def + +%: Set tick array : internal commands (1dec93) : +/tiputs { % rel_pos_of_tick tiputs pos_of_tick : innermost routine for /taproc + tastep mul taloop add + } def +/taproclin { % (#tick/tack) taproclin - : define /taproc for use in SetVec + 1 x div /tistep x def + /taproc { 0 tistep .999 { tiputs } for } def + } def +/taproclog { % (#ticks/tacks) taproclog - : define /taproc for use in SetVec + dup 3 gt { pop /taproc { 1 1 9 { log tiputs } for } def + }{ dup 1 gt { pop /taproc { 0 tiputs 2 log tiputs 5 log tiputs } def + }{ dup 0 gt { pop /taproc { 0 tiputs } def + }{ neg taproclin + } ifelse } ifelse } ifelse +} def +/SetVec { % tafro tatoo nta /vector SetVec - : set /"vector" + 4 1 roll + /nta x def /tatoo x def /tafro x def + /tastep tatoo tafro sub nta 1 sub div def + [ 0 1 nta { + tastep mul tafro add /taloop x def + taproc exec + } for + ] def + } def +%: Set tick array : user commands : + % arguments are: first_tack_pos, last_tack_pos, #tacks, #ticks/tack +/SetTicVecLin { taproclin /TicVec SetVec } def +/SetTicVecLog { taproclog /TicVec SetVec } def + +%: Layout for ticks and axes : +/xyTicLen {0.10 fm} def +/xyTacLen {0.20 fm} def +{0.20 fm} dup /txllen x def /tyllen x def +/SetAxx {black 0.7 setline} def +/SetTic {black 0.7 setline} def +/SetTac {black 0.7 setline} def +/SetGric {black 0.4 setline} def + +%: Draw ticks and axes. Usage: fro to pos aang tang OneAxx ( Tic | ) ( Axx | ) + % Note on angles : 0 = x-axis, 90 = y-axis, values are 0..359. +/OneAxx { % fro to xpos ypos aang tang OneAxx - : presets for Axx, Tic, Tac, Num + /tAng x def /aAng x def + /yPos x def /xPos x def /aTo x def /aFro x def % save input + /xTicLen tAng cos xyTicLen mul def /yTicLen tAng sin xyTicLen mul def + /xTacLen tAng cos xyTacLen mul def /yTacLen tAng sin xyTacLen mul def + /xAng aAng cos def /yAng aAng sin def + /aMean aFro aTo add 2 div def + /aArr false def +} def +/ArrAxx { % label (args of OneAxx) ArrAxx - + OneAxx + /aLab x def + /aArr true def +} def +/Axx { % - Axx - : draw axis (that's just a line) as predefined by OneAxx. + SetAxx + gsave + xPos yPos offset + mmscale + aAng rotate + aFro 0 np mv + aTo 0 li st + aArr { + gsave + aTo 0 offset + aAng neg rotate + mmunscale + aAng rotate + 0 0 0 .3 pfeilspitze % draw an arrow + .3 0 offset + aAng neg rotate + setlab + aAng 45 le + { 0 -.8 xNumHeightL sub aLab textRT } + { 0 .2 aLab textCB } ifelse + grestore + } if + grestore +} def +/Tic { % - Tic - : draw ticks as predefined by OneAxx. + SetTic + TicVec { dup dup aFro lt x aTo gt or {pop} {TicProc} ifelse } forall +} def +/TicProc { % aPos TicProc - : plot one tick. + np + xPos yPos xym mv + dup xAng mul x yAng mul xym rm % eat argument, go to start pos. + xTicLen yTicLen rl st + } def +/xGric { % yFro yTo xGric - : draw lines over y range of instead just an x Tic + SetGric + TicVec { + 3 copy dup 5 -1 roll aFro lt x aTo gt or {pop pop pop} { + dup % y1 y2 x x + 4 -1 roll xym np mv % y2 x + x xym li st + } ifelse + } forall + pop pop + } def +/yGric { % xFro xTo yGric - : draw lines over x range of instead just an y Tic + SetGric + TicVec { + 3 copy dup 5 -1 roll aFro lt x aTo gt or {pop pop pop} { + dup % x1 x2 y y + 4 -1 roll x xym np mv % x2 y + xym li st + } ifelse + } forall + pop pop + } def + +%: Tacks and numbers on axis. +/SetTacVec { % [ pos {label} pos {label} ... ] SetTacVec - : Preset TacVec + /TacVec x def + } def +/TacExe { % Proc TacExe - % Execute Proc for all pairs of elements of TacVec + % (but only if inside aFro..aTo) + /TacProc x def + /ispair true def % toggle: take pos, take label, take pos, take label ... + TacVec { + ispair + { + /aPos x def + /ispair false def + } { + aPos dup aFro lt x aTo gt or + {pop} {TacProc} ifelse + /ispair true def + } ifelse + } forall +} def +%: General routines, governed by OneAxx : +/Tac { % + SetTac + { pop xPos yPos xym mv + aPos dup xAng mul x yAng mul xym rm + xTacLen yTacLen rl st } TacExe + } def +/Num { % General but useless. Adjust for your application. + SetNum + fontheight ymm div yDisRel mul tAng sin mul /yDist x def + { dup textW xDisRel mul tAng cos mul /xDist x def + xPos aPos xAng mul add xDist sub + yPos aPos yAng mul add yDist sub 3 2 roll textCM } TacExe + } def +/SetNumDisRel { % xDisRel yDisRel SetNumDisRel - : adjust just a little bit + /yDisRel x def /xDisRel x def + } def +1.2 1.2 SetNumDisRel % default setting + +%: Tacks and Numbers: explicit routines for rectangular case : +/xTacL { % : tack on low x axis + SetTac + { pop aPos xm np yPos ym mv 0 txllen rl st } TacExe + } def +/xTacH { % : tack on high x axis + SetTac + { pop aPos xm np yPos ym mv 0 txllen neg rl st } TacExe + } def +/xTacC { % : centered tack on x axis + SetTac + { pop aPos xm yPos ym txllen 2 div sub np mv 0 txllen rl st } TacExe + } def +/xGrid { % : rule instead of tack on x axis + SetTac + { pop aPos xm np yPos ym mv 0 10 xym rl st } TacExe + } def +/yTacL { % : tack on low y axis + SetTac + { pop xPos xm aPos ym np mv tyllen 0 rl st } TacExe + } def +/yTacH { % : tack on high y axis + SetTac + { pop xPos xm aPos ym np mv tyllen neg 0 rl st } TacExe + } def +/yTacC { % : centered tack on y axis + SetTac + { pop xPos xm tyllen 2 div sub aPos ym np mv tyllen 0 rl st } TacExe + } def +/yGrid { % : rule instead of tack on low y axis + SetTac + { pop aPos ym np xPos xm x mv 10 0 xym rl st } TacExe + } def +/xNumL { % : numbers on low x axis + SetNum + { fontheight ymm div % conversion -> user_scale + dup /xNumHeightL x def + -.6 mul yPos add aPos x 3 2 roll textCT } TacExe + } def +/xNumH { % : numbers on high x axis + SetNum + { fontheight ymm div % conversion -> user_scale + dup /xNumHeightH x def + .6 mul yPos add aPos x 3 2 roll textCB } TacExe + } def +/yNumL { % : numbers on low y axis + SetNum + { fontsize -.3 mul xmm div xPos add aPos 3 2 roll textRM + xwidth dup yNumLengthL gt {/yNumLengthL x def} {pop} ifelse + } TacExe + } def +/yNumLD { % : calculate only yNumLength (used for adjustement) + SetNum + { textW dup yNumLengthL gt {/yNumLengthL x def} {pop} ifelse + } TacExe + } def +/yDumL { % {(..)} yDumL : compare yNumLength with one arg (used for adjustement) + SetNum + textW dup yNumLengthL gt {/yNumLengthL x def} {pop} ifelse + } def +/yNumH { % : numbers on high y axis + SetNum + { fontsize .3 mul xmm div xPos add aPos 3 2 roll textLM + xwidth dup yNumLengthH gt {/yNumLengthH x def} {pop} ifelse + } TacExe + } def +/yNumHD { % : calculate only yNumLength (used for adjustement) + SetNum + {textW dup yNumLengthH gt {/yNumLengthH x def} {pop} ifelse + } TacExe + } def +/yDumH { % {(..)} yDumH : compare yNumLength with one arg (used for adjustement) + SetNum + textW dup yNumLengthH gt {/yNumLengthH x def} {pop} ifelse + } def +/xTucL { % len | - : tack on low x axis + black 0.7 setline + /TucLen x def + { pop aPos xm np yPos ym mv 0 TucLen xm rl st } TacExe + } def +/yTucL { % len | - : tack on low y axis + black 0.7 setline + /TucLen x def + { pop aPos ym np xPos xm x mv TucLen ym 0 rl st } TacExe + } def + +%: Label on side of axes : +/xCL { % xlabel xCL - ; plots coordinate name below the x-axis. + setlab + aMean xNumHeightL xNumHeightRel neg mul + 3 -1 roll textCT + } def +/xCH { % xlabel xCH - ; plots coordinate name above the x-axis. + setlab + aMean xNumHeightH xNumHeightRel mul 10 add + 3 -1 roll textCB + } def +/yCL { % ylabel yCL - ; plots coordinate name to the left of the y-axis. + gsave + setlab + yNumLengthL neg fontsize -.85 mul add % yNumLengthL calculated in yN + aMean ym translate + 0 0 mv + 90 rotate + 0 x 0 x textCB + grestore + } def +/yCH { % ylabel yCH - ; plots coordinate name to the right of the y-axis. + gsave + setlab + yNumLengthH fontsize .85 mul add 10 xm add + aMean ym translate + 0 0 mv + 90 rotate + 0 x 0 x textCT + grestore + } def +/yCF { % ylabel yCF - ; plots coordinate name *falling* right of the y-axis. + gsave + setlab + yNumLengthH fontsize .85 mul add 10 xm add + aMEan ym translate + 0 0 mv + -90 rotate + 0 x 0 x textCB + grestore + } def + +%% string treatment : + +/showif { % string showif - ; increment xwidth or plot string + prepare + { stringwidth pop xwidth add /xwidth x def } + { show } + ifelse + } def +/script { % matrix relpos_y script + /yoffset x fontheight mul def + currentfont x makefont setfont + 0 yoffset rm + } def +/scred .71 def +/subsc { + showif + [scred 0 0 scred 0 0] -.2 script + } def +/supsc { + showif + [scred 0 0 scred 0 0] .6 script + } def +/endsc { + showif + regularfont setfont + 0 yoffset neg rm + } def +/grec { + showif + /Symbol findfont fontsize scalefont setfont + } def +/endgr { + showif + regularfont setfont + } def +/endall { + showif + regularfont setfont + } def +/build { % string xrel yrel obj build - ; plot obj above/below string + /obj x def /yrelbui x def /xrelbui x def + dup showif + prepare + { pop } + { stringwidth pop xrelbui neg mul fontheight yrelbui mul % relpos for obj + currentpoint 4 2 roll % save position after string + rm obj pop % obj must end with () that will be pop'ed + mv % back to saved position + } + ifelse + } def +/gbuild { % string xrel yrel obj build - ; plot obj above/below string + /obj x def /yrelbui x def /xrelbui x def + /Symbol findfont fontsize scalefont setfont + dup showif + prepare + { pop regularfont setfont } + { stringwidth pop xrelbui neg mul fontheight yrelbui mul % relpos for obj + currentpoint 4 2 roll % save position after string + regularfont setfont + rm obj pop % obj must end with () that will be pop'ed + mv % back to saved position + } + ifelse + } def +/umlaut { % ..) (<char>) umlaut (.. + x + showif + .79 0 {(\310) show ()} build + } def +/Umlaut { % ..) (<Char>) Umlaut (.. + x + showif + .79 .2 {(\310) show ()} build + } def +/hut { % ..) (<Char>) hut (.. %%% MISERABEL PROGRAMMIERT + x + showif + 1.4 .6 {(\136) show ()} build + } def +/ghut { % ..) (<grec-Char>) ghut (.. %%% BREITE PASST NUR FUER Phi(t) + x + showif + .8 .65 {(\136) show ()} gbuild + } def +/tilde { + x + showif + 1. .6 {(~) show ()} build + } def +/gtilde { + x + showif + 1. .6 {(~) show ()} gbuild + } def +/spce { % string n spce - ; insert n times ( ) + {showif ( )} repeat + } def +/pins { % string symins - ; symbol must be selected by pset + showif + ( ) showif ( ) .5 .5 { currentxy 0 p black ()} build ( ) showif + } def +/clenins { % string len clenins - ; curve must be selected by cset + x showif % I suppose that pins is preceeded by 8 spaces + dup ( ) stringwidth pop mul 2 add /xstrich x xmm div def + % length of inserted curve : + % -1 space : curve begins and ends in middle of ( ) + % +3 spaces: pins requires 3 times ( ) + ( ) 0 .5 { currentxy currentxy 0 ci x xstrich add x 0 cf () } build + 2 add {( ) showif} repeat + } def +/cins { % string symins - ; curve must be selected by cset + showif 8 % I suppose that pins is preceeded by 8 spaces + dup ( ) stringwidth pop mul 2 add /xstrich x xmm div 10 div def + % nov03, ohne zu verstehen, "10 div" eingefuegt + % length of inserted curve : + % -1 space : curve begins and ends in middle of ( ) + % +3 spaces: pins requires 3 times ( ) + ( ) 0 .5 { currentxy currentxy 0 ci x xstrich add x 0 cf () } build + 2 add {( ) showif} repeat + } def +/block { % x y ob xrel yrel block - + /yrel x def /xrel x def /blabla x def + /ypos x ym def /xpos x xm def + /regularfont currentfont def /yoffset 0 def % initialize for security + /prepare true def /xwidth 0 def 0 0 mv % to prevent empty-path-error + blabla endall % first pass : determine xwidth + boxif { /boxwidth xwidth (M) stringwidth pop boxxr mul 2 mul add def + /boxheight fontheight 1 boxyr 2 mul add mul def + np xpos xwidth xrel mul sub boxwidth xwidth sub 2 div sub + ypos fontheight .5 boxyr add mul sub mv + boxwidth 0 rl 0 boxheight rl boxwidth neg 0 rl cp + boxproc + } if + xpos xwidth xrel mul sub ypos fontheight yrel mul sub mv + /prepare false def + blabla endall % second pass : plot + /boxif false def + } def +/rblock { % x y ang ob proc rblock - + 5 3 roll + gsave + xym translate + 3 2 roll rotate + 0 0 4 2 roll exec + grestore + } def +/Box { % x y {exe} + /boxif true def + /boxproc x def /boxyr x def /boxxr x def + } def +/nBox { .6 .6 3 2 roll Box } def +/boxif false def +/textW { % obj textW y : calculate only length. + /blabla x def + /regularfont currentfont def /yoffset 0 def % initialize for security + /prepare true def /xwidth 0 def 0 0 mv % to prevent empty-path-error + blabla endall + xwidth % has been determined + } def +/textw { % obj textW y : dito, in 0..10-units + textW xmm div + } def + +%% text % x y ob textXY - 2 = left/cent/right Y = top/midl/bot +/textLB { 0. 0. block } bind def +/textCB { .5 0. block } bind def +/textRB { 1. 0. block } bind def +/textLM { 0. .5 block } bind def +/textCM { .5 .5 block } bind def +/textRM { 1. .5 block } bind def +/textLT { 0. 1. block } bind def +/textCT { .5 1. block } bind def +/textRT { 1. 1. block } bind def + +%% rtext % x y ang ob rtextXY +/rtextLB { {textLB} rblock } bind def +/rtextLM { {textLM} rblock } bind def +/rtextRB { {textRB} rblock } bind def +/rtextRM { {textRM} rblock } bind def +/rtextCM { {textCM} rblock } bind def + +%% list (info lines, may also contain symbols) : + +/NewList { % xins yins size advance NewList - + /nl_advance x def setown /nl_yins x def /nl_xins x def + /nl_xshift fontsize xmm div .9 mul def + /nl_xrline 0.33 def + /nl_ystep fontheight ymm div nl_advance mul def + /newline { + /nl_yins nl_yins nl_ystep sub def + } def + /fracline % frac | - + { + fontheight ymm div nl_advance mul mul /nl_yins x nl_yins x sub def + } def + } def +/newlist { 1.65 NewList } def +/TxLine { % text TxLine - + nl_xins nl_yins 3 -1 roll textLM newline + } bind def +/TxCLine { % text TxLine - + nl_xins nl_yins 3 -1 roll textCM newline + } bind def +/infline{ % text infline - : plot info-line, but only if switch oooinfo=1 + oooinfo 1 eq { TxLine } { pop } ifelse + } bind def +/symline { % styp sfill serr srad lwidth text symline - % OBSOLET + 6 1 roll + pset nl_xins yins 0 p + nl_xins nl_xshift add nl_yins 3 2 roll textLM + newline + } bind def +/PtTxLine { % pstyle text symline - + x pstyle nl_xins nl_yins 0 p + black nl_xins nl_xshift add nl_yins 3 2 roll textLM + newline + } bind def +/IndentPtTxLine { % pstyle text symline - + x pstyle nl_xins nl_xshift add nl_yins 0 p + black nl_xins nl_xshift 2 mul add nl_yins 3 2 roll textLM + newline + } bind def +/PtPtCvTxLine { % pstyle pstyle cstyle text symline - + 4 3 roll pstyle nl_xins nl_yins 0 p + 3 2 roll pstyle nl_xins nl_xshift add nl_yins 0 p + exch cstyle + nl_xins nl_xshift 2 mul add + dup dup nl_xshift nl_xrline mul sub nl_yins 0 ti + nl_xshift nl_xrline mul add nl_yins 0 tf + nl_xshift add nl_yins 3 2 roll black textLM + newline + } bind def +/PtCvTxLine { % pstyle cstyle text symline - + 3 2 roll pstyle nl_xins nl_yins 0 p + exch cstyle + nl_xins nl_xshift 1 mul add + dup dup nl_xshift -.33 mul add nl_yins 0 ti + nl_xshift 0.33 mul add nl_yins 0 tf + nl_xshift add nl_yins 3 2 roll black textLM + newline + } bind def +/PtPtTxLine { % pstyle pstyle text symline - + 3 2 roll pstyle nl_xins nl_yins 0 p + x pstyle nl_xins nl_xshift add nl_yins 0 p + black nl_xins nl_xshift 2 mul add nl_yins 3 2 roll textLM + newline + } bind def +/CvTxLine { % cstyle text symline - + x cstyle + nl_xins fontsize xmm div nl_xrline mul sub nl_yins 0 ti + nl_xins fontsize xmm div nl_xrline mul add nl_yins 0 tf + black nl_xins nl_xshift add nl_yins 3 2 roll textLM + newline + } bind def +/Cv2TxLine { % cstyle text symline - + x cstyle + nl_xins fontsize xmm div nl_xrline mul sub nl_yins 0 ti + nl_xins fontsize xmm div nl_xrline mul add nl_xshift add nl_yins 0 tf + black nl_xins nl_xshift 2 mul add nl_yins 3 2 roll textLM + newline + } bind def +/PCTxLine { % pstyle(with plset) text symline - + x pstyle + nl_xins fontsize xmm div nl_xrline 2 mul mul sub nl_yins 0 ci + nl_xins fontsize xmm div nl_xrline 2 mul mul add nl_yins 0 cf + nl_xins yins 0 p + black nl_xins + fontsize xmm div 1.9 mul % instead of xshift + add nl_yins 3 2 roll textLM + newline + } bind def +/TxSyTxLine { % text1 styp sfill serr srad lwidth text2 symline - % OBSOLET + 6 1 roll 7 6 roll % stack -> text2 styp .. lwidth text1 + dup nl_xins nl_yins 3 -1 roll textLM textw nl_xins add nl_xshift add + /nl_xinsa x def + pset nl_xinsa nl_yins 0 p + nl_xinsa nl_xshift add nl_yins 3 2 roll textLM + newline + } bind def +/showfilename { % xins yins size showfilename - + setown + ooofnam 1 eq { filename textRB } { pop pop } ifelse + } def +/InfSet { % ooofnam oooinfo InfSet - : set on(1) or off(0) + /oooinfo x def /ooofnam x def + } def + /oooset { InfSet } def % obsolete +0 0 InfSet % default setting + +%% gray areas (mainly applied with grayval=1 for blank areas) [longtime grey..] +/graybox { % grayval x_L y_B dx dy graybox - + boxit + cp gsave setgray fill grestore + } def +/boxit { % x_L y_B dx dy + 4 2 roll + np ym x xm x mv % corner Left Bottom + ym dup 0 x rl % line up + x xm 0 rl % line right + neg 0 x rl % line down + } def +/execOval { % xl yl dx dy dr { proc } % works only in quadratic grid + x 6 2 roll + 4 2 roll % proc dr dx dy xl yl + { xym translate + { xym scale + dup neg 0 np mv + 0 1 rl + dup 0 1 3 2 roll 180 90 arcn + 1 0 rl + dup 1 1 3 2 roll 90 0 arcn + 0 -1 rl + dup 1 0 3 2 roll 0 -90 arcn + -1 0 rl + dup 0 0 3 2 roll -90 -180 arcn + pop + exec + } G + } G +} def +/execRectangle { % xl xh yl yh (all in user coords) {proc} | - + 5 1 roll + gsave + wy /qqyh x def + wy /qqyl x def + wx /qqxh x def + wx /qqxl x def + np + qqxl xm qqyl ym mv + qqxh xm qqyl ym li + qqxh xm qqyh ym li + qqxl xm qqyh ym li + cp exec grestore +} def +/execHexagon { % xl xh yl yh (all in user coords) {proc} | - + 5 1 roll + gsave + wy /qqyh x def + wy /qqyl x def + wx /qqxh x def + wx /qqxl x def + /qqdr qqyh qqyl sub 2 div def + np + qqxl qqdr add qqyl xym mv + qqxh qqdr sub qqyl xym li + qqxh qqyl qqdr add xym li + qqxh qqdr sub qqyh xym li + qqxl qqdr add qqyh xym li + qqxl qqyl qqdr add xym li + cp exec grestore +} def +/execTrueOval { % xl xh yl yh dr {proc} | - + 6 1 roll + gsave + /qqdr x def + /qqyh x def + /qqyl x def + /qqxh x def + /qqxl x def + np + qqxl qqdr add qqyl xym mv + qqxh qqdr sub qqyl xym li + qqxh qqdr sub qqyl qqdr add qqdr -90 0 arc + qqxh qqyh qqdr sub xym li + qqxh qqdr sub qqyh qqdr sub qqdr 0 90 arc + qqxl qqdr add qqyh xym li + qqxl qqdr add qqyh qqdr sub qqdr 90 180 arc + qqxl qqyl qqdr add xym li + qqxl qqdr add qqyl qqdr add qqdr 180 270 arc + cp exec grestore +} def +/coordRectangle { % xl xh yl yh (all in plot coords) {proc} | - + 5 1 roll + gsave + /qqyh x def + /qqyl x def + /qqxh x def + /qqxl x def + np + qqxl xm qqyl ym mv + qqxh xm qqyl ym li + qqxh xm qqyh ym li + qqxl xm qqyh ym li + cp exec grestore +} def + +%% plot symbols and error bars : + +/SymGSet { % slinglo sradglo serrglo - : global preset + /serrglo x def /sradglo x def /slinglo x def +} def + +/SymGlo { 0 SymGSet } def % OBSOLET + +/nopoints { % : instead of pset or cset, make t* plot nothing + {pop pop pop} dup dup dup dup dup dup + /ti x def /t x def /tf x def /ci x def /c x def /cf x def /p x def +} def + +/pset { % styp sfill serr srad sline pset - ; + % defines the corresponding variables for use in p. + slinglo mul dup /sline x fm pt 0.08 mul def setline + /srad x fm 0.08 mul sradglo mul def + 2 serrglo ne { pop serrglo } if % if (serrglo=2) use serr else use serrglo + 1 eq {/pserr % x y d- d+ error : vertical error bars + { + 3 copy pop pop + dup 0 gt x 10 lt and { + 4 copy + x pop add 10. 2 copy gt { x } if pop ym x xm x + 2 copy x .05 sub x np mv .1 0 rl st + np mv + pop sub 0. 2 copy lt { x } if pop ym x xm x + 2 copy lineto st + x .05 sub x np mv .1 0 rl st + } { pop pop pop pop } ifelse + } def} + {/pserr + {pop pop pop pop} def} ifelse + /sfill x def + /ps {pop pop} def % default : don't plot + dup 1 eq {/ps {square} def} if + dup 2 eq {/ps {diamond} def} if + dup 3 eq {/ps {circle} def} if + dup 4 eq {/ps {triangle} def} if + dup 5 eq {/ps {cedez} def} if + dup 6 eq {/ps {eieruhr} def} if + dup 7 eq {/ps {valve} def} if + dup 8 eq {/ps {tfwd} def} if + dup 9 eq {/ps {tbwd} def} if + dup 11 eq {/ps {plus} def} if + dup 12 eq {/ps {cross} def} if + dup 13 eq {/ps {2 copy cross plus} def} if % gives a "*" + dup 14 eq {/ps {column} def} if + pop + sfill 0 eq {/srad srad sline 2 div sub def} if + /ti {p} def /t {p} def /tf {p black} def % newstyle -> oldstyle + % the following can be overwritten by nopoints : + /p { % x y d p : plots a symbol and eventually an error bar. + 3 copy pop ps dup pserr + } def +} def + +/pp { % x y d- d+ pp : dito with asymmetric error bar. + 4 copy pop pop ps pserr +} def + +%% plot curves : + +/lset { % lwidth dashes lset - : prepares everything for ti t t ... t tf. + 0 setdash + dup 0 gt { + pt fm setlinewidth + /ti {ci} def /t {c} def /tf {cf} def % newstyle -> oldstyle + % the following can be overwritten by nopoints : + /ci { % x y d ci : first point of curve + pop np xym mv + } def + /c { % x y d c : point of curve + pop xym lineto + } def + /cf { % x y d c : last point of curve + c st + } def + } { nopoints } ifelse +} def +/cset { % lwidth #dash cset - : old version of lset: some predefined dashes. + dup 0 eq { pop pop nopoints } { + dup 1 eq { [ ] lset } if + dup 2 eq { [1 3 ] lset } if + dup 3 eq { [8 6 ] lset } if + dup 4 eq { [8 3 1 3 ] lset } if + dup 5 eq { [2 2 ] lset } if + dup 6 eq { [1.8 ] lset } if + dup 7 eq { [3 1.8 ] lset } if + dup 8 eq { [2 2 3.5 2 ] lset } if + dup 9 eq { [2 2 5.5 2 ] lset } if + pop + } ifelse +} def +/lstepset { % lwidth dashes dx lset - : prepares for ti t t ... t tf. + /lhalfstep x wx 0 wx sub 2 div def + 0 setdash + dup 0 gt { + pt fm setlinewidth + /ti {ci} def /t {c} def /tf {cf} def % newstyle -> oldstyle + % the following can be overwritten by nopoints : + /ci { % x y d ci : first point of curve + pop np 2 copy x lhalfstep sub x xym mv x lhalfstep add x xym li + } def + /c { % x y d c : point of curve + pop 2 copy x lhalfstep sub x xym li x lhalfstep add x xym li + } def + /cf { % x y d c : last point of curve + c st + } def + /ti { 3 copy pop pop lhalfstep sub 0 xym np mv c } def % jump ex 0 + /tf { 3 copy c pop pop lhalfstep add 0 xym li st } def % jump back to 0 + } { nopoints } ifelse +} def + +%% symbols _and_ curves: + +/plset { % p_args l_args plset # not foreseen in the original design ... + lset % but dashes will be lost (overwritten by pset) + pset + /ti {3 copy ci gsave p grestore } def + /t {3 copy c gsave p grestore } def + /tf {3 copy cf gsave p grestore black } def +} def + +%% from style arrays: + +/pstyle { pStyles setstyle } def +/cstyle { cStyles setstyle } def +/setstyle { % #style array setstyle - : set p or c as predefined in array. + dup length % i A n + 3 2 roll % A n i + dup 0 le {pop pop pop nopoints} { % #style<=0 means : don't plot + 1 sub x % A i-1 n + mod get % A(i-1) + exec } ifelse + } def +% preset, for security : +/pStyles [ { 1 0 0 1 1.0 pset } ] def + +%% data symbols : x y ps + +/square { /D srad 0.707 mul def + np ym x xm x mv + D D rm + 0 D -2 mul rl + D -2 mul 0 rl + 0 D 2 mul rl + cp + sfill 0 eq {st} {fill} ifelse + } def + +/diamond {/D srad def + np ym x xm x mv + 0 D rm + D D -1 mul rl + D -1 mul D -1 mul rl + D -1 mul D rl + cp + sfill 0 eq {st} {fill} ifelse + } def + +/cross { /D srad 0.707 mul def + np ym x xm x 2 copy mv + D dup rm + D -2 mul dup rl st + np mv + D dup -1 mul rm + D -2 mul D 2 mul rl st + } def + +/plus { /D srad def + np ym x xm x 2 copy mv + D 0 rm + D -2 mul 0 rl st % horizontal lineelement + np mv + 0 D rm + 0 D -2 mul rl st % vertical lineelement + } def + +/triangle{/D srad 1.14 mul def + np ym x xm x mv + 0 D rm % + (0,1) = (0,1) + D 0.886 mul D -1.5 mul rl % + (.88,-1.5) = (.88,-.5) + D -1.772 mul 0 rl % + (-1.7,0) = (-.88,-.5) + cp + sfill 0 eq {st} {fill} ifelse + } def + +/cedez { /D srad 1.14 mul def + np ym x xm x mv + 0 D -1 mul rm % + (0,-1) = (0,-1) + D 0.886 mul D 1.5 mul rl % + (.88,1.5) = (.88,.5) + D -1.772 mul 0 rl % + (-1.7,0) = (-.88,.5) + cp + sfill 0 eq {st} {fill} ifelse + } def + +/tfwd {/D srad 1.14 mul def % triangle looking forward + np ym x xm x mv + D 0 rm + D -1.5 mul D 0.886 mul rl + 0 D -1.772 mul rl + cp + sfill 0 eq {st} {fill} ifelse + } def + +/tbwd {/D srad 1.14 mul def % triangle looking backward + np ym x xm x mv + D neg 0 rm + D 1.5 mul D 0.886 mul rl + 0 D -1.772 mul rl + cp + sfill 0 eq {st} {fill} ifelse + } def + +/circle { /D srad 0.86 mul def + np ym x xm x D 0 360 arc + sfill 0 eq {st} {fill} ifelse + } def + +/eieruhr {/D srad 0.86 mul def + np ym x xm x mv + D D rl % + ( 1, 1) = ( 1, 1) + D -2 mul 0 rl % + (-2, 0) = (-1, 1) + D 2 mul D -2 mul rl % + ( 2,-2) = ( 1,-1) + D -2 mul 0 rl % + (-2, 0) = (-1, 1) + cp + sfill 0 eq {st} {fill} ifelse + } def + +/valve { /D srad 0.86 mul def + np ym x xm x mv + D D rl % + ( 1, 1) = ( 1, 1) + 0 D -2 mul rl % + ( 0,-2) = ( 1,-1) + D -2 mul D 2 mul rl % + (-2, 2) = (-1, 1) + 0 D -2 mul rl % + ( 0, 2) = (-1,-1) + cp + sfill 0 eq {st} {fill} ifelse + } def + +/column { np x colshift add x xym 2 copy mv pop + colwidth xm 0 rl + colwidth xm add 0 wy ym li + colwidth neg xm 0 rl + cp colexec +} def + +/setcolumn{ % shift width exec | % + /colexec x def + /colwidth x def + /colshift x def +} def +0 .2 { { .5 setgray fill } G cp } setcolumn + +%% symbols with text, no error bars: usage is <x> <y> rpt + +/rpt { 3 copy pop 0 t 3 2 roll .12 add 3 -2 roll textLM } def +/lpt { 3 copy pop 0 t 3 2 roll .12 sub 3 -2 roll textRM } def +/tpt { 3 copy pop 0 t 3 1 roll .15 add 3 -1 roll textCB } def +/bpt { 3 copy pop 0 t 3 1 roll .15 sub 3 -1 roll textCT } def +/ipt { pop 0 t } def +/dpt { red rpt black } def + +%% colours + +% for symbols : +/pColSet { % col ncol ColSet - : global preset OBSOLET + /npcol x def % # different colours + /pcol x def % colours off/on + } def +0 3 pColSet % default setting +/ifpcol { % proc1 proc2 ifcol - : shorthand for: col 0 eq proc1 proc2 ifelse + pcol 0 eq { pop exec } { exec pop} ifelse % 3 1 roll ifelse + } def +% for curves : +/cColSet { % col ncol ColSet - : global preset OBSOLET + /nccol x def % # different colours + /ccol x def % colours off/on + } def +0 3 cColSet % default setting +/ifccol { % proc1 proc2 ifcol - : shorthand for: col 0 eq proc1 proc2 ifelse + ccol 0 eq { pop exec } { exec pop} ifelse % 3 1 roll ifelse + } def +/black { 0 0 0 setrgbcolor } bind def +/white { 1 1 1 setrgbcolor } bind def +% the following from http://intranet.icn.siemens.de/ +% marketing/gc/root/en/1mess/2pre/presentation_design/guidelines.pdf +/setRGBcolor { 3 { 255 div 3 1 roll } repeat setrgbcolor } def +/siemensorange { 255 153 0 setRGBcolor } bind def +/siemensblue { 0 102 153 setRGBcolor } bind def +/siemenstext { 0 51 102 setRGBcolor } bind def +/siemensred { 165 0 33 setRGBcolor } bind def +/red { 255 0 0 setRGBcolor } bind def +/siemenspink { 221 102 102 setRGBcolor } bind def +/siemensgrey { 221 221 221 setRGBcolor } bind def +/siemensdark { 102 102 102 setRGBcolor } bind def +/siemensgreen { 33 153 102 setRGBcolor } bind def +/siemensyellow { 255 221 0 setRGBcolor } bind def + +/colormix { % weight(0..1) col1(R|G|B) col2(R|G|B) | colormix | colmix(R|G|B) + 7 -1 roll dup /weightA x def /weightB x 1 x sub def + 4 -1 roll weightA mul x weightB mul add 5 1 roll + 3 -1 roll weightA mul x weightB mul add 4 1 roll + 2 -1 roll weightA mul x weightB mul add 3 1 roll +} def + +% one-dimensional colour choice : +/relcol { % n_this n_tot | rel (0..1) + div dup truncate sub + } def +/iCol1 { % n_this n_tot iCol - : default -2010, round the circle, RGBR + relcol dup 1 x % rel 1 rel + 360 mul 255 add cos 1 add dup mul neg .053 mul 1 add % modulate saturation + sethsbcolor + } def +/iCol2 { % n_this n_tot iCol - : cyan - yellow - magenta + relcol 3 mul + dup 1 le { + dup 1 sub neg 0 3 2 roll } { + dup 2 le { + 1 sub dup 1 sub neg 0 3 1 roll } { + 2 sub dup 1 sub neg 0 3 0 roll } ifelse + } ifelse + 0 setcmykcolor +} def +/iCol3 { % siemens + div /icnow exch def + 165 1 icnow sub mul + 102 icnow mul + 33 120 icnow mul add setRGBcolor +} def +/aCol4 [ + { 255 0 0 } + { 0 0 255 } + { 255 255 255 } + { 0 0 0 } +] def +/iCol4 { % red to blue, using old scheme + relcol + 3 x sub 3 div 1 iCol1 +} def +/iCol5 { % red to blue + relcol + aCol4 length 1 sub mul % position within array + dup truncate dup 3 1 roll % idx pos idx + sub x 0 max aCol4 length 1 sub min dup 1 add % offset i i+1 + aCol4 x get exec setRGBcolor pop pop %%%%% TODO +} def +/ipCol { 100 iCol1 } def % OBSOLET: this macro should be set locally +/icCol { 100 iCol1 } def % dito + +%% presets: + +/zValues { pop pop } def +/plotafter {} def +/whiteframe { 1 0 0 10 10 graybox } def +/plotframes { xPlotFrame yPlotFrame } def +/plotbefore { plotframes } def + +%% special objects + +/pfeilspitze { % x[local] y[local] rot siz + % draw with current linestyle, as set e.g. by SetAxx + exch 4 2 roll % siz rot x y + gsave + xym translate 180 add rotate dup dup dup + [] 0 setdash + .8 mul exch .6 mul np mv 0 0 li .8 mul exch -.6 mul li st + grestore + } def +/pfeil { % x[local] y[local] rot siz len[global] + 5 copy + pop pfeilspitze + exch pop + exch 4 2 roll % len rot x y + gsave + xym translate 180 add rotate + 0 0 np mv 0 li st + grestore + } def + +/knautschy { % x0 y0 y_knau y_tot knautschy - : insert an S in dived y-axis + % the total height of the generated object is y_tot + % of which y_knau(.le. y_tot) is for the real knautsch, + % the remainder is for vertical prolongations. + x ym 4 div dup /tmpy x def 5 sqrt mul /tmpx x def + /tmpa x ym tmpy 4 mul sub 2 div def + np ym x xm x mv 0 tmpa rl tmpx tmpy rl tmpx -2 mul tmpy 2 mul rl + tmpx tmpy rl 0 tmpa rl st + } def +/separy { % x0 y0 sep lng ang lin - : insert an // in dived y-axis + setline + /spang x def + /splng x def + /spsep x def + 2 copy spsep sub gsave offset spang rotate + splng -.5 mul fm 0 np mv splng fm 0 rl st grestore + spsep add gsave offset spang rotate + splng -.5 mul fm 0 np mv splng fm 0 rl st grestore +} def + +% broken: +/setBemasz { % textsize textspace arrowsize arrowthick | - + /bmszTH x def + /bmszSZ x def + /bmszSP x def + /bmszOW x def +} def +18 .2 .5 .01 setBemasz +/Bemasz { % x y dx ang text_ang text | - + gsave + 6 4 roll offset % consumes x and y + 3 2 roll rotate % consumes ang | dx text_ang text + bmszOW setown + x /bmszRT x def + x 2 div x 2 copy % dx/2 text dx/2 text + textw 2 div bmszSP add % dx/2 text dx/2 halflabelwidth + % ACHTUNG: fuer bmszRT <> 0 ist textw NOCH FALSCH + 4 1 roll 0 3 2 roll bmszRT x rtextCM % hlw dx/2 + dup 2 mul 3 1 roll x sub dup % dx len len + 0 0 180 4 -1 roll bmszSZ bmszTH arrow % dx len + x 0 0 4 -1 roll bmszSZ bmszTH arrow + grestore +} def + +%% Styles: + +/setschool { % <0|1> | - + /schoolstyle exch def + schoolstyle 0 gt { + /TicProc { % aPos TicProc - : plot one tick. + np + xPos yPos xym mv + dup xAng mul xTicLen .5 mul sub x yAng mul yTicLen .5 mul sub xym rm + xTicLen yTicLen rl st + } def + } if +} def +0 setschool + +%% text macros for insertion,.. + +/abc {abclab setown abcx abcy 3 2 roll textCM} def % usage ((a)) abc +/abcset { % x y siz abcset - : preset for abc + /abclab x def /abcy x def /abcx x def } def + +%% text macros for scattering :% + +/hbar { + showif + (h) 1.2 .66 { + currentpoint fontheight .11 mul setline np mv + fontheight dup .8 mul x .3 mul rl + st () + } build + } bind def +/hbarw { hbar () grec (w) endgr } bind def +/wbar { grec (w) endgr ( / 2) grec (p) endgr } bind def +/Sqw { showif (S \(q,) grec (w) endgr (\)) showif } bind def +/Sqn { showif (S \(q,) grec (n) endgr (\)) showif } bind def +/SQw { showif (S \(Q,) grec (w) endgr (\)) showif } bind def +/Sttw { showif (S \(2) grec (q) endgr (,) grec (w) endgr (\)) showif } bind def +/Sttn { showif (S \(2) grec (q) endgr (,) grec (n) endgr (\)) showif } bind def +/Xqw { grec (c) endgr (''\(q,) grec (w) endgr (\)) showif } bind def +/Xqn { grec (c) endgr (''\(q,) grec (n) endgr (\)) showif } bind def +/ueV{ grec (m) endgr (eV) showif} bind def +/inueV { showif (\() grec (m) endgr (eV\)) showif } bind def +/inmeVr { showif (\(meV) supsc (-1) endsc (\)) showif } bind def +/inueVr { showif (\() grec (m) endgr (eV) + supsc (-1) endsc (\)) showif } bind def +/inGHzr { showif (\(GHz) (-1) sp (\)) showif } def + +/Angstr { + showif + (A) .5 1.23 { + currentpoint fontheight .1 mul setline np + fontheight .14 mul 0 360 arc st () + } build } bind def +/Angr { Angstr () supsc (-1) endsc } bind def +/inAngr { showif (\() Angr (\)) showif } bind def +/Angrr { Angstr () supsc (-2) endsc } bind def +/inAngrr { showif (\() Angr (\)) showif } bind def +/wmin {grec (w) endgr () subsc (min) endsc} def +/winpi { grec (w) endgr ( / 2) grec (p) endgr } def + + +end % pop WuGdict + +% This is "ewu", the very end of the wups* setup file. diff --git a/pub/src/dualplot.cpp b/pub/src/dualplot.cpp index 8abcd666fdc08bfdf50cf43a9606e5b275418687..21bd7faf3896d495195d663e888d150158a8fcff 100644 --- a/pub/src/dualplot.cpp +++ b/pub/src/dualplot.cpp @@ -311,7 +311,7 @@ void CPlot::writePostscript( string ps_outdir, string ps_head, string ps_dict ) // additional output (do not append this to ps_accu to allow // further incrementation of ps_accu): - fprintf( pssav, "\nblack 0 -4 13 newlist\n" ); + fprintf( pssav, "\nblack 0 -4 13 1.65 NewList\n" ); for ( uint i=0; i<ps_Doc.size(); i++ ) fprintf( pssav, "{(%s)} infline\n", ps_Doc[i].c_str() );