%!PS-Adobe-3.0 EPSF-3.0 CEZ71-1N %%BoundingBox: 70 85 243 206 %START PDFDE011.EPS /pdfmark11 where {pop} {userdict /pdfmark11 /cleartomark load put} ifelse /languagelevel where {pop languagelevel} {1} ifelse 2 lt { userdict (<<) cvn ([) cvn load put userdict (>>) cvn (]) cvn load put} if [/Title (PostScript pictures: farbe.li.tu-berlin.de/CEZ7/CEZ7.HTM) /Author (compare K. Richter "Computergrafik ...": ISBN 3-8007-1775-1) /Subject (goto: http://farbe.li.tu-berlin.de http://130.149.60.45/~farbmetrik) /Keywords (image reproduction, colour devices) /Creator (klaus.richter@mac.com) /CreationDate (D:2020090112000) /ModDate (D:2020090112000) /DOCINFO pdfmark11 [ /View [ /Fit ] /DOCVIEW pdfmark11 %END PDFDE011 %SETCMYK_OLV.PS /setcmyk_olvcolor %transfer cmyk to olv {/ncolor exch def /ycolor exch def /mcolor exch def /ccolor exch def ncolor 0 eq {1 ccolor sub 1 mcolor sub 1 ycolor sub setrgbcolor } {ccolor 0 eq mcolor 0 eq and ycolor 0 eq and {%only black n 1 ncolor sub dup dup setrgbcolor } {%cmy and black n 1 ccolor sub 1 ncolor sub mul 1 mcolor sub 1 ncolor sub mul 1 ycolor sub 1 ncolor sub mul setrgbcolor } ifelse } ifelse } bind def /FS {findfont exch scalefont setfont} bind def /MM {72 25.4 div mul} def /str {8 string } bind def /languagelevel where {pop languagelevel} {1} ifelse /PSL12 exch def /dictende {counttomark 2 idiv dup dict begin {def} repeat pop currentdict end} bind def /Times-Roman findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /Times-ISOL1 exch definefont pop /Times-Italic findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /TimesI-ISOL1 exch definefont pop /Times-Bold findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /TimesB-ISOL1 exch definefont pop /Times-BoldItalic findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /TimesBI-ISOL1 exch definefont pop /TX {120 /Times-ISOL1 FS} bind def /TV {160 /Times-ISOL1 FS} bind def /TS {200 /Times-ISOL1 FS} bind def /TK {250 /Times-ISOL1 FS} bind def /TM {300 /Times-ISOL1 FS} bind def /TG {350 /Times-ISOL1 FS} bind def /TIX {120 /TimesI-ISOL1 FS} bind def /TIV {160 /TimesI-ISOL1 FS} bind def /TIS {200 /TimesI-ISOL1 FS} bind def /TIK {250 /TimesI-ISOL1 FS} bind def /TIM {300 /TimesI-ISOL1 FS} bind def /TIG {350 /TimesI-ISOL1 FS} bind def /TBX {120 /TimesB-ISOL1 FS} bind def /TBV {160 /TimesB-ISOL1 FS} bind def /TBS {200 /TimesB-ISOL1 FS} bind def /TBK {250 /TimesB-ISOL1 FS} bind def /TBM {300 /TimesB-ISOL1 FS} bind def /TBG {350 /TimesB-ISOL1 FS} bind def /TBIX {120 /TimesBI-ISOL1 FS} bind def /TBIV {160 /TimesBI-ISOL1 FS} bind def /TBIS {200 /TimesBI-ISOL1 FS} bind def /TBIK {250 /TimesBI-ISOL1 FS} bind def /TBIM {300 /TimesBI-ISOL1 FS} bind def /TBIG {350 /TimesBI-ISOL1 FS} bind def /XD65 95.05 def /YD65 100.00 def /ZD65 108.90 def /xanD65 XD65 XD65 YD65 add ZD65 add div def /yanD65 YD65 XD65 YD65 add ZD65 add div def %******************************************************* %created for 10 colours of hue circle and different lightness /LCh*12 60 array def /XYZ*12 60 array def /LCh*12n 60 array def /XYZ*12n 60 array def %************************************************************** %created for 45 colours of equal chroma and different lightness /rgb*45 500 array def %5x45, NOT 3x45 /LCh*45 500 array def %5x45 /XYZ*45 500 array def %5x45 /rgb*45n 500 array def %5x45, NOT 3x45 /XYZ*45n 500 array def %5x45 /XYZ*45na 500 array def /LCh*45n 500 array def %5x45 /LCh*45na 500 array def %5x45 %************************************************************ %definition of A for xchartl=0 to 5 /XYZ*5A 5 array def /LCh*5A 5 array def /XYZ*5N 5 array def /LCh*5N 5 array def /XYZ*5W 5 array def /LCh*5W 5 array def /XYZ*5An 5 array def /LCh*5An 5 array def /XYZ*5Nn 5 array def /LCh*5Nn 5 array def /XYZ*5Wn 5 array def /LCh*5Wn 5 array def /rgb*3A 3 array def /tex*3A 3 array def /rgb*3N 3 array def /tex*3N 3 array def /rgb*3W 3 array def /tex*3W 3 array def /LCh*5Na 5 array def %a=actual /LCh*5Wa 5 array def /LCh*5Aa 5 array def %******************************************************************* /proz_XYZ_LCh* {%BEG proz_XYZ_LCh* %input XYZaref, output LChab*ref, same name in any case %output LabC*h (xchart8=0) or LABC*h (xchart8=1) /XQ Xaref XD65 div def /YQ Yaref YD65 div def /ZQ Zaref ZD65 div def XQ 0 lt {/XQ 0.00000001 def} if YQ 0 lt {/YQ 0.00000001 def} if ZQ 0 lt {/ZQ 0.00000001 def} if /L*ref YQ 0.008856 lt {903.3 YQ mul} {YQ 0.33333333 exp 116 mul 16 sub} ifelse def xchart8 0 eq {%xchart8=0 LabCh*-CIELAB /a*ref XQ 0.008856 lt {7.787 XQ mul 16 116 div add} {XQ 0.33333333 exp} ifelse YQ 0.008856 lt {7.787 YQ mul 16 116 div add} {YQ 0.33333333 exp} ifelse sub 500 mul def /b*ref YQ 0.008856 lt {7.787 YQ mul 16 116 div add} {YQ 0.33333333 exp} ifelse ZQ 0.008856 lt {7.787 ZQ mul 16 116 div add} {ZQ 0.33333333 exp} ifelse sub 200 mul def } if %xchart8=0 LabCh*-CIELAB xchart8 1 eq {%xchart8=1 LabCh*=LABCh* /a*ref XQ YQ sub 250 mul def /b*ref YQ ZQ sub 100 mul def } if %xchart8=1 LabCh*=LABCh* xchart8 2 eq {%xchart8=2 LabCh*=LAB1Ch* /xanc 0.110 def /Bc 1.000 def /a20 1.000 def /b20 -0.400 def /SUM Xaref Yaref add Zaref add 0.0001 add def /xan Xaref SUM div def /yan Yaref SUM div def /zan Zaref SUM div def /SUMD65 XD65 YD65 add ZD65 add 0.0001 add def /xanD65 XD65 SUMD65 div def /yanD65 YD65 SUMD65 div def /zanD65 ZD65 SUMD65 div def /aan xan xanc sub yan div a20 mul def /ban zan yan div b20 mul def /aanD65 xanD65 xanc sub yanD65 div a20 mul def /banD65 zanD65 yanD65 div b20 mul def /a*ref aan aanD65 sub 2.5 mul Yaref mul def /b*ref ban banD65 sub 2.5 mul Bc mul Yaref mul def } if %xchart8=2 LabCh*=LAB1Ch* xchart8 3 eq {%xchart8=3 LabCh*=LAB2Ch* /xanc 0.110 def /Bc 0.800 def /a20 1.000 def /b20 -0.400 def /SUM Xaref Yaref add Zaref add 0.0001 add def /xan Xaref SUM div def /yan Yaref SUM div def /zan Zaref SUM div def /SUMD65 XD65 YD65 add ZD65 add 0.0001 add def /xanD65 XD65 SUMD65 div def /yanD65 YD65 SUMD65 div def /zanD65 ZD65 SUMD65 div def /aan xan xanc sub yan div a20 mul def /ban zan yan div b20 mul def /aanD65 xanD65 xanc sub yanD65 div a20 mul def /banD65 zanD65 yanD65 div b20 mul def /a*ref aan aanD65 sub 2.5 mul Yaref mul def /b*ref ban banD65 sub 2.5 mul Bc mul Yaref mul def } if %xchart8=3 LabCh*=LAB2Ch* /C*ref a*ref dup mul b*ref dup mul add sqrt def /h*ref b*ref a*ref 0.00001 add atan def C*ref 0.05 le {/h*ref 0 def} if } bind def %END proz_XYZ_LCh* %******************************************************************* /proz_LCh*_XYZ {%BEG proz_LCh*_XYZ %input LCh*ref of LabC*h (xchart8=0) or L*ABCh (xchart8=1) %output XYZref, xyanref xchart8 0 eq {%xchart8=0 /DecodeXYZ* {dup 6 29 div ge {dup dup mul mul} {4 29 div sub 108 841 div mul} ifelse} bind def /a*ref C*ref h*ref cos mul def /b*ref C*ref h*ref sin mul def /X* {L*ref 16 add 116 div a*ref 500 div add} bind def /Y* {L*ref 16 add 116 div} bind def /Z* {L*ref 16 add 116 div b*ref 200 div sub} bind def /Xref X* DecodeXYZ* XD65 mul def /Yref Y* DecodeXYZ* YD65 mul def /Zref Z* DecodeXYZ* ZD65 mul def } if %xchart8=0 xchart8 1 ge {%xchart8>=1 xchart8 1 eq {%xchart8=1 /DecodeXYZ* {dup 6 29 div ge {dup dup mul mul} {4 29 div sub 108 841 div mul} ifelse} bind def /Y* {L*ref 16 add 116 div} bind def /Yref Y* DecodeXYZ* YD65 mul def } if %xchart8=1 xchart8 2 eq {%xchart8=2 /DecodeXYZ* {dup 6 29 div ge {dup dup mul mul} {4 29 div sub 108 841 div mul} ifelse} bind def /Y* {L*ref 16 add 116 div} bind def /Yref Y* DecodeXYZ* YD65 mul def } if %xchart8=2 xchart8 3 eq {%xchart8=3 /DecodeXYZ* {dup 6 29 div ge {dup dup mul mul} {4 29 div sub 108 841 div mul} ifelse} bind def /Y* {L*ref 16 add 116 div} bind def /Yref Y* DecodeXYZ* YD65 mul def } if %xchart8=3 /a*ref C*ref h*ref cos mul def /b*ref C*ref h*ref sin mul def /Xref a*ref 250 div XD65 mul Yref XD65 mul YD65 div add def /Zref Yref ZD65 mul YD65 div b*ref 100 div ZD65 mul sub def } if %xchart8>=1 Xref 0.01 lt {/Xref 0.01 def} if Yref 0.01 lt {/Yref 0.01 def} if Zref 0.01 lt {/Zref 0.01 def} if /SUM Xref Yref add Zref add 0.0001 add def /xanref Xref SUM div def /yanref Yref SUM div def } bind def %END proz_LCh*_XYZ %************************************************************************* /proz_XYZnw_D65_xchart7_definition {%BEG proz_XYZnw_D65_xchart7_definition % achromatic colours /XLWD65100 95.04 def /YLWD65100 100.00 def /ZLWD65100 108.88 def /XLN001 XLWD65100 100 div def /YLN001 YLWD65100 100 div def /ZLN001 ZLWD65100 100 div def /YrN 2.52 def /Xnref YrN XLN001 mul def /Ynref YrN def /Znref YrN ZLN001 mul def /Xtref XYZnref_ISO9241-306 xchart7 3 mul 0 add get def /Ytref XYZnref_ISO9241-306 xchart7 3 mul 1 add get def /Ztref XYZnref_ISO9241-306 xchart7 3 mul 2 add get def /YNil Ytref def /YNil001 YNil 100 div def YNil001 6 29 div 3 exp ge {/FYYn YNil001 0.3333 exp def} {/FYYn 841 108 div YNil001 mul 4 29 div add def} ifelse /L*Nil 116 FYYn mul 16 sub def } bind def %END proz_XYZnw_D65_xchart7_definition %************************************************************** /proz_XYZ*12_XYZ*12n {%BEG proz_XYZ*12_XYZ*12n %for 10 colours %input XYZ*12, rgb*10 %output LCh*12n, rgb*10n %only for xchart5=1 and for 10 colours in 7 hue planes and achromatic %change XYZ*12 to XYZ*12n by display reflection according to xchart7 %normalization to Ynor=18 xchart9 1 eq {%xchart9=1 /Xnor XD65 0.18 mul def /Ynor YD65 0.18 mul def /Znor ZD65 0.18 mul def /Xfac1 Xnor Xnor Xtref add div def /Yfac1 Ynor Ynor Ytref add div def /Zfac1 Znor Znor Ztref add div def XYZ*12n i100 XYZ*12 i100 get Xnor sub Xfac1 mul Xnor add put XYZ*12n i101 XYZ*12 i101 get Ynor sub Yfac1 mul Ynor add put XYZ*12n i102 XYZ*12 i102 get Znor sub Zfac1 mul Znor add put } if %xchart9=1 %normalization to Ynor=88.6 xchart9 0 eq {%xchart9=0 /Xnor XD65 0.886 mul def /Ynor YD65 0.886 mul def /Znor ZD65 0.886 mul def /Xfac2 Xnor Xtref sub Xnor div def /Yfac2 Ynor Ytref sub Ynor div def /Zfac2 Znor Ztref sub Znor div def XYZ*12n i100 XYZ*12 i100 get Xfac2 mul Xtref add put XYZ*12n i101 XYZ*12 i101 get Yfac2 mul Ytref add put XYZ*12n i102 XYZ*12 i102 get Zfac2 mul Ztref add put } if %xchart9=0 } bind def %END proz_XYZ*12_XYZ*12n %**************************************************************** /proz_XYZ*45_XYZ*45n {%BEG proz_XYZ*45_XYZ*45n %for 45 colours %input XYZ*45, rgb*45 %output XYZ*45n, rgb*45n %only for xchart5=1 and for 45 colours in hue plane %change XYZ*45 to XYZ*45n by display reflection according t0 xchart7 %normalization to Ynor=18 xchart9 1 eq {%xchart9=1 /Xnor XD65 0.18 mul def /Ynor YD65 0.18 mul def /Znor ZD65 0.18 mul def /Xfac1 Xnor Xnor Xtref add div def /Yfac1 Ynor Ynor Ytref add div def /Zfac1 Znor Znor Ztref add div def XYZ*45n i450 XYZ*45 i450 get Xnor sub Xfac1 mul Xnor add put XYZ*45n i451 XYZ*45 i451 get Ynor sub Yfac1 mul Ynor add put XYZ*45n i452 XYZ*45 i452 get Znor sub Zfac1 mul Znor add put } if %xchart9=1 %normalization to Ynor=88.6 xchart9 0 eq {%xchart9=0 /Xnor XD65 0.886 mul def /Ynor YD65 0.886 mul def /Znor ZD65 0.886 mul def /Xfac2 Xnor Xtref sub Xnor div def /Yfac2 Ynor Ytref sub Ynor div def /Zfac2 Znor Ztref sub Znor div def XYZ*45n i450 XYZ*45 i450 get Xfac2 mul Xtref add put XYZ*45n i451 XYZ*45 i451 get Yfac2 mul Ytref add put XYZ*45n i452 XYZ*45 i452 get Zfac2 mul Ztref add put } if %xchart9=0 } bind def %END proz_XYZ*45_XYZ*45n %*********************************************************** %*********************************************************** /proz_sRGB_rgb*36X_definitions {%BEG proz_sRGB_rgb*36X_definitions /XYZ*WCGa_d_0000_0886 36 array def %d, Yw=88,6, Yn=2,50 /XYZ*WCGa_d_0000_0886 [056.43 023.27 000.00 %0 Rd %ANH9_Y10-7N,201003, fehl? Zmin=2.72 069.24 083.34 002.48 %1 Yd 012.81 060.07 002.48 %2 Gd 027.77 066.32 096.48 %3 Cd 014.96 005.25 094.00 %4 Bd 071.39 028.52 094.00 %5 Md 056.43 023.27 000.00 %6 Rd %for hue circle 000.01 000.01 000.01 %7 N0 084.21 088.60 096.48 %8 W0 000.01 000.01 000.01 %9 N1 095.05 100.00 108.90 %10 W1 017.11 18.00 19.60 %11 Z1 ] def /XYZ*sRGB_d_0000_0886 36 array def %d, Yw=88,60, Yn=0,00 /XYZ*sRGB_d_0000_0886 [036.54 018.84 001.71 %0 Rd %from AE99:Y10-7N (ISO 9241-306 for 100/88,6) 068.22 082.20 012.27 %1 Yd %new table 210217, only R was for 88.60 031.68 063.36 010.56 %2 Gd 047.67 069.76 094.78 %3 Cd 015.99 006.40 084.22 %4 Bd 052.53 025.24 085.93 %5 Md 036.54 018.84 001.71 %6 Rd %for hue circle 000.01 000.01 000.01 %7 N0 084.21 088.60 096.48 %8 W0 000.01 000.01 000.01 %9 N1 095.05 100.00 108.90 %10 W1 017.11 18.00 19.60 %11 Z1 ] def /XYZ*Ostw_d_0000_1000 36 array def %m, Yw=100,00, Yn=0,00 /XYZ*Ostw_d_0000_1000 [062.40 041.75 000.76 %0 Rm 561_405 589 %ANI6_Y10-7N,201012 076.68 082.00 001.27 %1 Ym 520_520c 569 023.83 065.32 015.00 %2 Gm 475_473 528c 032.63 058.24 108.12 %3 Cm 405_561 483 018.36 017.99 107.61 %4 Bm 519c-519 471 071.20 034.67 093.88 %5 Mm 573_475 528c 062.40 041.75 000.76 %6 Rm 561_405 589 %for hue circle 000.01 000.01 000.01 %7 N0 095.05 100.00 108.90 %8 W0 000.01 000.01 000.01 %9 N1 107.29 112.88 122.24 %10 W1 19.31 20.31 22.00 %11 Z1 ] def /XYZ*Offs_d_0000_0886 36 array def %d, Yw=88,60, Yn=0,00 /XYZ*Offs_d_0000_0886 [029.01 016.24 004.26 %0 Rd %ANJ7_Y11-1N,201012 063.74 072.69 008.27 %1 Yd 008.53 020.05 009.58 %2 Gd 018.74 026.27 069.02 %3 Cd 006.22 004.51 022.65 %4 Bd 032.46 016.95 023.04 %5 Md 029.01 016.24 004.26 %6 Rd %for hue circle 000.01 000.01 000.01 %7 N0 084.21 088.60 096.48 %8 W0 000.01 000.01 000.01 %9 N1 095.05 100.00 108.90 %10 W1 017.11 18.00 19.60 %11 Z1 ] def /rgb*36X 36 array def /rgb*36X [1 0 0 %0 1 1 0 %1 0 1 0 %2 0 1 1 %3 0 0 1 %4 1 0 1 %5 1 0 0 %6 0.00 0.00 0.00 %7 N0 1.00 1.00 1.00 %8 W0 0.00 0.00 0.00 %9 N1 1.13 1.13 1.13 %10 W1 0.18 0.18 0.18 %11 Z1 ] def /tex*36X 36 array def /tex*36X [(Rot) (red) (R) %0 (Gelb) (yellow) (Y) %1 (Gr\374n) (green) (G) %2 (Cyan) (cyan) (C) %3 (Blau) (blue) (B) %4 (Magenta) (magenta) (M) %5 (Rot) (red) (R) %6 (Schwarz) (black) (N) %7 (Wei\337) (white) (W) %8 (Schwarz) (black) (N1) %9 (Wei\337) (white) (W1) %10 (Grau) (grey) (Z1) %11 ] def /XYZnref_ISO9241-306 24 array def /XYZnref_ISO9241-306 [ %XYZnref wit contrast step according to ISO 9241-306:2018 00.01 00.01 00.01 %0 0288:1 00.60 00.63 00.69 %1 0144:1 01.20 01.26 01.37 %2 0072:1 02.40 02.52 02.74 %3 0036:1 %standard 04.79 05.04 05.49 %4 0018:1 08.58 10.08 10.98 %5 0009:1 19.16 20.16 21.95 %6 04,5:1 38.32 40.32 43.90 %7 2,25:1 ] def /Ynref_ISO9241-306 8 array def 0 1 7 {/i exch def %i=0,7 /i31 i 3 mul 1 add def Ynref_ISO9241-306 i XYZnref_ISO9241-306 i31 get put } for %i=0,7 0 1 11 {/sISO exch def /i30 sISO 3 mul def /i31 i30 1 add def /i32 i30 2 add def /i50 sISO 5 mul def /i51 i50 1 add def /i52 i50 2 add def /i53 i50 3 add def /i54 i50 4 add def xchart4 0 eq {%xchart4=0 XYZ*12 i50 XYZ*sRGB_d_0000_0886 i30 get put XYZ*12 i51 XYZ*sRGB_d_0000_0886 i31 get put XYZ*12 i52 XYZ*sRGB_d_0000_0886 i32 get put } if %xchart4=0 xchart4 1 eq {%xchart4=1 XYZ*12 i50 XYZ*WCGa_d_0000_0886 i30 get put XYZ*12 i51 XYZ*WCGa_d_0000_0886 i31 get put XYZ*12 i52 XYZ*WCGa_d_0000_0886 i32 get put } if %xchart4=1 xchart4 2 eq {%xchart4=2 XYZ*12 i50 XYZ*Offs_d_0000_0886 i30 get put XYZ*12 i51 XYZ*Offs_d_0000_0886 i31 get put XYZ*12 i52 XYZ*Offs_d_0000_0886 i32 get put } if %xchart4=2 xchart4 3 eq {%xchart4=3 XYZ*12 i50 XYZ*Ostw_d_0000_1000 i30 get 0.8860 mul put XYZ*12 i51 XYZ*Ostw_d_0000_1000 i31 get 0.8860 mul put XYZ*12 i52 XYZ*Ostw_d_0000_1000 i32 get 0.8860 mul put } if %xchart4=3 /SUM XYZ*12 i50 get XYZ*12 i51 get add XYZ*12 i52 get add def XYZ*12 i53 XYZ*12 i50 get SUM div put XYZ*12 i54 XYZ*12 i51 get SUM div put %will be replaced, if xchart5=1 XYZ*12n i50 XYZ*12 i50 get put XYZ*12n i51 XYZ*12 i51 get put XYZ*12n i52 XYZ*12 i52 get put XYZ*12n i53 XYZ*12 i53 get put XYZ*12n i54 XYZ*12 i54 get put } for %i=0,11 } bind def %END proz_sRGB_rgb*36X_definitions %*************************************************************** /proz_out_text_ANW_definition {%BEG proz_out_text_ANW_definition %loop for maximal 5 colours +N +W 0 1 2 {/j exch def %j=0,2 %three components /i3j xchartl 3 mul j add def rgb*3A j rgb*36X i3j get put tex*3A j tex*36X i3j get put } for %j=0,2 0 1 4 {/j exch def %j=0,4 %three components /i5j xchartl 5 mul j add def XYZ*5A j XYZ*12 i5j get put LCh*5A j LCh*12 i5j get put XYZ*5An j XYZ*12n i5j get put LCh*5An j LCh*12n i5j get put } for %j=0,4 0 1 2 {/i exch def %i=0,2 rgb*3N i rgb*36X i 21 add get put %8x3 tex*3N i tex*36X i 21 add get put rgb*3W i rgb*36X i 24 add get put %9x3 tex*3W i tex*36X i 24 add get put } for %i=0,2 0 1 4 {/i exch def %i=0,4 XYZ*5N i XYZ*12 i 35 add get put %8x5 LCh*5N i LCh*12 i 35 add get put XYZ*5W i XYZ*12 i 40 add get put %9x5 LCh*5W i LCh*12 i 40 add get put XYZ*5Nn i XYZ*12n i 35 add get put %8x5 LCh*5Nn i LCh*12n i 35 add get put XYZ*5Wn i XYZ*12n i 40 add get put %9x5 LCh*5Wn i LCh*12n i 40 add get put } for %i=0,4 /L*Xd LCh*5A 0 get def /C*Xd LCh*5A 1 get def /L*Nd LCh*5N 0 get def /L*Wd LCh*5W 0 get def /L*Xdn LCh*5An 0 get def /C*Xdn LCh*5An 1 get def /L*Ndn LCh*5Nn 0 get def /L*Wdn LCh*5Wn 0 get def /xfact 2000 100 div def /yfact 2000 100 div def %Titeltext /xd 1550 def /yd 5000 def /xp 1550 def /yp 5000 def /xpN xp def /ypN yp 2000 sub def /xpW xp def /ypW yp def /xpX xp 2000 add def /ypX yp 1000 sub def /xNd xp def %Nd /yNd ypN L*Nd yfact mul add def %Nd /xWd xp def %Wd /yWd ypN L*Wd yfact mul add def %Wd /xRd xp C*Xd xfact mul add def %Xd /yRd ypN L*Xd yfact mul add def /tex_LC*hab {xchart8 0 eq {(LC*hab) show} if xchart8 1 eq {(L*ChAB) show} if xchart8 2 eq {(L*ChAB) show} if xchart8 3 eq {(L*ChAB) show} if } bind def /tex_LabC*h {xchart8 0 eq {(LabC*h) show} if xchart8 1 eq {(L*ABCh) show} if xchart8 2 eq {(L*ABCh) show} if xchart8 3 eq {(L*ABCh) show} if } bind def /indd {0 -50 rmoveto (d) show 0 50 rmoveto} bind def /inddk {0 -50 rmoveto (d,) show 0 50 rmoveto} bind def /inde {0 -50 rmoveto (d) show 0 50 rmoveto} bind def /indek {0 -50 rmoveto (d,) show 0 50 rmoveto} bind def /indab {0 -50 rmoveto xchart8 0 eq {(ab)} if xchart8 1 eq {(AB)} if xchart8 2 eq {(AB1)} if xchart8 3 eq {(AB2)} if show 0 50 rmoveto} bind def /indabk {0 -50 rmoveto xchart8 0 eq {(ab,)} if xchart8 1 eq {(AB,)} if xchart8 2 eq {(AB1,)} if xchart8 3 eq {(AB2,)} if show 0 50 rmoveto} bind def /indabd {0 -50 rmoveto xchart8 0 eq {(ab,d)} if xchart8 1 eq {(AB,d)} if xchart8 2 eq {(AB1,d)} if xchart8 3 eq {(AB2,d)} if show 0 50 rmoveto} bind def /indabe {0 -50 rmoveto xchart8 0 eq {(ab,e)} if xchart8 1 eq {(AB,e)} if xchart8 2 eq {(AB1,e)} if xchart8 3 eq {(AB2,e)} if show 0 50 rmoveto} bind def /indabN {0 -50 rmoveto xchart8 0 eq {(ab,N)} if xchart8 1 eq {(AB,N)} if xchart8 2 eq {(AB1,N)} if xchart8 3 eq {(AB2,N)} if show 0 50 rmoveto} bind def /indabW {0 -50 rmoveto xchart8 0 eq {(ab,W)} if xchart8 1 eq {(AB,W)} if xchart8 2 eq {(AB1,W)} if xchart8 3 eq {(AB2,W)} if show 0 50 rmoveto} bind def } bind def %END proz_out_text_ANW_definition %************************************************************** /nshow {TS show} bind def /kshow {TIS show} bind def /bshow {TBS show} bind def /jshow {TBIS show} bind def /ibshown {TBV -50 -50 rmoveto show 0 50 rmoveto TBS} bind def /ibshow0 {TBV -00 -50 rmoveto show 0 50 rmoveto TBS} bind def /ishown {TV -50 -50 rmoveto show 0 50 rmoveto TS } bind def /ishow0 {TV -00 -50 rmoveto show 0 50 rmoveto TS } bind def %40% kleiner /ns4 {250 /Times-ISOL1 FS show TK} bind def /ks4 {250 /TimesI-ISOL1 FS show TK} bind def /bs4 {250 /TimesB-ISOL1 FS show TK} bind def /js4 {250 /TimesBI-ISOL1 FS show TK} bind def /ss4 {250 /Symbol FS show TK} bind def /is4 {200 /Times-ISOL1 FS 0 -60 rmoveto show 0 60 rmoveto TK} bind def /es4 {200 /Times-ISOL1 FS 0 130 rmoveto show 0 -130 rmoveto TK} bind def /ib4 {200 /TimesB-ISOL1 FS 0 -60 rmoveto show 0 60 rmoveto TK} bind def /eb4 {200 /TimesB-ISOL1 FS 0 130 rmoveto show 0 -130 rmoveto TK} bind def /ip4 {200 /Times-ISOL1 FS 30 30 rmoveto (\267) show 30 -30 rmoveto TK} bind def %60% kleiner /ns6 {200 /Times-ISOL1 FS show TS} bind def /ks6 {200 /TimesI-ISOL1 FS show TS} bind def /bs6 {200 /TimesB-ISOL1 FS show TS} bind def /js6 {200 /TimesBI-ISOL1 FS show TS} bind def /ss6 {200 /Symbol FS show TS} bind def /is6 {160 /Times-ISOL1 FS 0 -50 rmoveto show 0 50 rmoveto TS} bind def /es6 {160 /Times-ISOL1 FS 0 100 rmoveto show 0 -100 rmoveto TS} bind def /ib6 {160 /TimesB-ISOL1 FS 0 -50 rmoveto show 0 50 rmoveto TS} bind def /eb6 {160 /TimesB-ISOL1 FS 0 100 rmoveto show 0 -100 rmoveto TS} bind def /ip6 {160 /Times-ISOL1 FS 24 24 rmoveto (\267) show 24 -24 rmoveto TS} bind /cvishow {cvi 6 string cvs show} def /cvsshow1 {10 mul cvi 0.1 mul 9 string cvs show} def /cvsshow2 {100 mul cvi 0.01 mul 9 string cvs show} def /cvsshow3 {1000 mul cvi 0.001 mul 9 string cvs show} def /cvsshow4 {10000 mul cvi 0.0001 mul 9 string cvs show} def /cvsshow1g {/nxx exch def %example nxx=99.1/99.0 nxx 0 lt {(-) show /nxx nxx abs def} if nxx 10 mul cvi /nxi exch def %nxi=991/990 nxi 10 idiv /nxa exch def %nxa=99 nxi nxa 10 mul sub /nxb exch def %nxb=1/0 nxa cvishow (,) show %nxa=99 nxb cvishow %nxb=1/0 } def /cvsshow2g {/nxx exch def %example nxx=99.12/99,02/99,00 nxx 0 lt {(-) show /nxx nxx abs def} if nxx 100 mul cvi /nxi exch def %nxi=9912/9902/00 nxi 100 idiv /nxa exch def %nxa=99 nxi nxa 100 mul sub /nxb exch def %nxb=12/02/00 nxa cvishow (,) show %nxb=99, nxb 10 ge {nxb cvishow} if %nxb=12 nxb 1 ge nxb 9 le and {(0) show nxb cvishow} if %nxb=02 nxb 0 eq {(00) show} if %nxb=00 } def /cvsshow3g {/nxx exch def %example nxx=99.123/99.012/99.001/99.000 nxx 0 lt {(-) show /nxx nxx abs def} if nxx 1000 mul cvi /nxi exch def %nxi=99123/99012/99001/99000 nxi 1000 idiv /nxa exch def %nxa=99 nxi nxa 1000 mul sub /nxb exch def %nxb=123/012/001/000 nxa cvishow (,) show %nxb=99, nxb 100 ge {nxb cvishow} if %nxb=123/012/001/000 nxb 10 ge nxb 99 le and {(0) show nxb cvishow} if %nxb=012 nxb 1 ge nxb 9 le and {(00) show nxb cvishow} if %nxb=001 nxb 0 eq {(000) show} if %nxb=000 } def %%EndProlog gsave /lanind 0 def /showde {0 lanind eq {show} {pop} ifelse} bind def /showen {1 lanind le {show} {pop} ifelse} bind def /showes {2 lanind eq {show} {pop} ifelse} bind def /showfr {3 lanind le {show} {pop} ifelse} bind def /showit {4 lanind eq {show} {pop} ifelse} bind def /showjp {5 lanind le {show} {pop} ifelse} bind def /lanindg where {pop /lanind1 lanindg def /lanind2 lanindg def} {/lanind1 1 def /lanind2 1 def} ifelse /colormg where {pop /colorm1 colormg def /colorm2 colormg def} {/colorm1 0 def /colorm2 0 def} ifelse /xcolorg where {pop /xcolor1 xcolorg def /xcolor2 xcolorg def} {/xcolor1 0 def /xcolor2 0 def} ifelse /xchartg where {pop /xchart1 xchartg def /xchart2 xchartg def} {/xchart1 0 def /xchart2 0 def} ifelse /lanind lanind1 def %lanind1 1 lanind2 {/lanind exch def %output showpage /colorm colorm1 def %colorm1 1 colorm2 {/colorm exch def %output showpage /xcolor xcolor1 def %xcolor1 1 xcolor2 {/xcolor exch def %output showpage /xchart xchart1 def %xchart1 1 xchart2 {/xchart exch def %output showpage /GSS$ where {pop /LSS$ GSS$ def} {/LSS$ (1) def} ifelse /GSC$ where {pop /LSC$ GSC$ def} {/LSC$ (N) def} ifelse /GSX$ where {pop /LSX$ GSX$ def} {/LSX$ (0) def} ifelse /GSY$ where {pop /LSY$ GSY$ def} {/LSY$ (0) def} ifelse /GEX$ where {pop /LEX$ GEX$ def} {/LEX$ (P.PS./PDF) def} ifelse /GEY$ where {pop /LEY$ GEY$ def} {/LEY$ (P.DAT) def} ifelse /IMES where {pop %/IMES IMES def } {/IMES 0 def} ifelse /xchartl 0 def %0 for xchart6=0 or 1; 0 to 5 for 6 hue planes /xchart3 0 def %0: LCH, %1: ICE/ice /xchart4 1 def %0: sRGB, 1: WCGa, 3: Offs, 4:Ostw /xchart5 1 def %0: YN=0, 1: YN=0,0 ..2,5 ..40,3 /xchart6 0 def %0: Y10-1N, %1 Y10-2N, %2: Y10-3N to 8N /xchart7 7 def %0 to 7: 8 contrast steps no. 1 to 8 according to ISO 9241-406 /xchart8 0 def %0: LabC*h, 1: L*ABCh, 2: L*AB1Ch, 3:L*AB2Ch /xchart9 0 def %0 for Normalizaton; 0: Y=88,6, 1: Y=18,0 4 /Times-ISOL1 FS 72 86 moveto (CEZ71-1A BEE41-1N) show 72 90 translate 0.01 MM 0.01 MM scale 15 setlinewidth 1 setgray /xwide 6000 def /ywide 4000 def 0 0 moveto xwide 0 rlineto 0 ywide rlineto xwide neg 0 rlineto closepath fill 0 setgray 0 0 moveto xwide 0 rlineto 0 ywide rlineto xwide neg 0 rlineto closepath stroke %produces XYZ*12 and XYZ*12n proz_sRGB_rgb*36X_definitions %uses XYZ*12 proz_XYZnw_D65_xchart7_definition 0 1 11 {/i exch def %i=0,09 /i100 i 5 mul def /i101 i100 1 add def /i102 i100 2 add def /i103 i100 3 add def /i104 i100 4 add def /Xaref XYZ*12 i100 get def /Yaref XYZ*12 i101 get def /Zaref XYZ*12 i102 get def % in any case defined proz_XYZ_LCh* LCh*12 i100 L*ref put LCh*12 i101 C*ref put LCh*12 i102 h*ref put LCh*12 i103 a*ref put LCh*12 i104 b*ref put LCh*12n i100 L*ref put %may be replaced LCh*12n i101 C*ref put LCh*12n i102 h*ref put LCh*12n i103 a*ref put LCh*12n i104 b*ref put xchart5 1 eq {%BEG xchart5=1 %XYZaref see above %input XYZ*12 %output XYZ*12n, LCh*12n proz_XYZ*12_XYZ*12n %calculates intermediate XYZ*12n /Xaref XYZ*12n i100 get def /Yaref XYZ*12n i101 get def /Zaref XYZ*12n i102 get def %input XYZaref, output LChab*ref proz_XYZ_LCh* LCh*12n i100 L*ref put LCh*12n i101 C*ref put LCh*12n i102 h*ref put LCh*12n i103 a*ref put LCh*12n i104 b*ref put } if %xchart5=1 } for %i=0,11 %produces for hue circle and achromatic colours %XYZ*(ANW)_(ANW)n, LCh*(ANW)_(ANW)n with 5 components %rgb*(ANW)_(ANW)n, tex*(ANW)_(ANW)n with 3 components proz_out_text_ANW_definition /yt 300 def %y-Zeilenabstand for text /yd 400 def %y-Zeilenabstand for formula %Spalten /S1 100 def /S2 1500 def /S3 2300 def /S4 5900 def /S5 7700 def /S6 8500 def /yz 400 def /yu5 7600 def /yu4 7100 def /yu3 5800 def /yu2 5800 def /yu1 5800 def %******************************************************** xchart6 0 eq {%xchart6=0 table /xdXYZ 470 def /xdLab 570 def 50 3750 moveto TBIS xchart4 0 eq {(sRGB) show} if xchart4 1 eq {(WCGa) show} if xchart4 2 eq {(Offs) show} if xchart4 3 eq {(Ostw) show} if TBS (\255Daten ) showde ( data ) showen TBIS (rgb*) show TBIS (, XYZxy) show TBS (, and ) showen ( und ) showde TBIS tex_LabC*h TBV indab TBS xchart8 0 eq {%xchart8=0 ( im CIELAB\255Farbraum) showde ( in the CIELAB\255colour space) showen} if xchart8 1 eq {( im L*ABJND\255Farbraum) showde ( in L*ABJND\255colour space) showen} if xchart8 2 eq {( im L*AB1JND\255Farbraum) showde ( in L*AB1JND\255colour space) showen} if xchart8 3 eq {( im L*AB2JND\255Farbraum) showde ( in L*AB2JND\255colour space) showen} if 0 3650 moveto 6000 0 rlineto stroke 50 3400 moveto TS (Normfarbwerte von Schwarz und Wei\337: ) showde (Tristimulus values of black and white: ) showen TIS (Y) show TV 0 -40 rmoveto xchart5 0 eq {(N) show}{(Nn) show} ifelse 0 40 rmoveto TS (=) show xchart5 0 eq {XYZ*5N 1 get cvsshow1g} {XYZ*5Nn 1 get cvsshow1g} ifelse TIS (, Y) show TV 0 -40 rmoveto xchart5 0 eq {(W) show}{(Wn) show} ifelse 0 40 rmoveto TS (=) show xchart5 0 eq {XYZ*5W 1 get cvsshow1g} {XYZ*5Wn 1 get cvsshow1g} ifelse xchart5 1 eq {%xchart5=1 TIS (, Y) show TV 0 -40 rmoveto xchart9 0 eq {(Wa) show}{(Za) show} ifelse 0 40 rmoveto TS xchart9 0 eq {(=88,6.) show} {(=18.) show} ifelse } if %xchart5=1 /xt1 0000 def /yt1 0000 def xt1 yt1 translate /y01 3250 def /y02 2850 def /S10 40 def %colour /S20 0400 def %rgb /S30 0900 def %XYZ /S40 3300 def %LCh*ab 0 y01 moveto 6000 0 rlineto stroke 0 y02 100 sub moveto 6000 0 rlineto stroke 0 750 moveto 6000 0 rlineto stroke S20 50 sub y01 moveto S20 50 sub 0 lineto stroke S30 50 sub y01 moveto S30 50 sub 0 lineto stroke S40 50 sub y01 moveto S40 50 sub 0 lineto stroke TBV S30 y02 200 add moveto (CIEXYZ) show (\255Daten) showde ( data) showen S40 y02 200 add moveto TBIV xchart8 0 eq {(LabC*h) show} if xchart8 1 eq {(L*ABCh) show} if xchart8 2 eq {(L*ABCh) show} if xchart8 3 eq {(L*ABCh) show} if TBX indab TBV (\255Daten) showde ( data) showen S20 y02 moveto TBIV (rgb*) show /tex_XYZxy [(X) (Y) (Z) (x) (y)] def 0 1 4 {/k exch def %k=0,4 TBIV S30 k xdXYZ mul add y02 moveto tex_XYZxy k get show TBX S30 k xdXYZ mul add 080 add y02 moveto 0 -50 rmoveto (d) show 0 50 rmoveto } for %k=0,4 xchart8 0 eq {/tex_LabCh* [(L*) (a*) (b*) (C*) (h) ] def /ind_LabCh* [(d) (d) (d) (ab,d) (ab,d)] def /tex_xshift [120 120 120 120 80 ] def } if xchart8 1 eq {/tex_LabCh* [(L*) (A) (B) (C) (h) ] def /ind_LabCh* [(d) (d) (d) (AB,d) (AB,d)] def /tex_xshift [120 80 80 80 80 ] def } if xchart8 2 eq {/tex_LabCh* [(L*) (A) (B) (C) (h ) ] def /ind_LabCh* [(d) (1,d)(1,d)(AB1,d)(AB1,d)] def /tex_xshift [120 80 80 60 80 ] def } if xchart8 3 eq {/tex_LabCh* [(L*) (A) (B) (C) (h) ] def /ind_LabCh* [(d) (2,d)(2,d)(AB2,d)(AB2,d)] def /tex_xshift [120 80 80 60 80 ] def } if 0 1 4 {/k exch def %k=0,4 TBIV S40 k xdLab mul add y02 moveto tex_LabCh* k get show TBX S40 k xdLab mul add tex_xshift k get add y02 moveto 0 -50 rmoveto ind_LabCh* k get show 0 50 rmoveto } for %k=0,4 /y03 2500 def /y0d 235 def TBV 0 1 10 {/j exch def %j=0,9 colours without red twice /i j def j 6 ge {/i j 1 add def} if %for N and W /i30 i 3 mul def /i31 i30 1 add def /i32 i30 2 add def /ydd 0 def i 8 gt {/ydd 0.2 y0d mul def} if S10 y03 j y0d mul sub ydd sub moveto tex*36X i32 get show TBX 0 -40 rmoveto (d) show 0 40 rmoveto S20 y03 j y0d mul sub ydd sub moveto TBV i 8 le {%i<=7 rgb*36X i30 get cvishow ( ) show rgb*36X i31 get cvishow ( ) show rgb*36X i32 get cvishow} {rgb*36X i30 get cvsshow2g} ifelse /i50 i 5 mul def /i51 i50 1 add def /i52 i50 2 add def /i53 i50 3 add def /i54 i50 4 add def 0 1 4 {/k exch def %k=0,4 TV S30 k xdXYZ mul add y03 j y0d mul sub ydd sub moveto k 0 eq {XYZ*12n i50 get cvsshow2g} if k 1 eq {XYZ*12n i51 get cvsshow2g} if k 2 eq {XYZ*12n i52 get cvsshow2g} if k 3 eq {XYZ*12n i53 get cvsshow3g} if k 4 eq {XYZ*12n i54 get cvsshow3g} if } for %k=0,4 0 1 4 {/k exch def %k=0,4 k 3 le {TV}{TBV} ifelse S40 k xdLab mul add y03 j y0d mul sub ydd sub moveto k 0 eq {LCh*12n i50 get cvsshow2g} if k 1 eq {LCh*12n i53 get cvsshow2g} if k 2 eq {LCh*12n i54 get cvsshow2g} if k 3 eq {LCh*12n i51 get cvsshow2g} if k 4 eq {LCh*12n i52 get cvishow} if } for %k=0,4 } for %j=0,10 xt1 neg yt1 neg translate } if %xchart6=0 table %********************************************************* xchart6 1 eq {%xchart6=1 hue circle /xdLab 300 def %HUE CIRCLE /xd 1550 def /yd 5000 def /xp 1550 def /yp 5000 def /xdN xd def /ydN yd 2000 sub def /xdW xd def /ydW yd def /xdR xd 2000 add def /ydR yd 1000 sub def /xm 2000 4 div def /xip xd xm 2 mul add def /yip ydN xm 2 mul add def /xi1 xd xm 1 mul sub def /yi1 ydW xm 0.5 mul sub def /xi2 xd xm 2 mul add def /yi2 ydN 400 sub def /rgb*30Y 84 def %7x12 /rgb*30Y [1.00 0.00 0.00 %0 R 1.00 0.25 0.00 1.00 0.50 0.00 1.00 0.75 0.00 1.00 1.00 0.00 %1 Y 0.75 1.00 0.00 0.50 1.00 0.00 0.25 1.00 0.00 0.00 1.00 0.00 %2 G 0.00 1.00 0.25 0.00 1.00 0.50 0.00 1.00 0.75 0.00 1.00 1.00 %3 C 0.00 0.75 1.00 0.00 0.50 1.00 0.00 0.25 1.00 0.00 0.00 1.00 %4 B 0.25 0.00 1.00 0.50 0.00 1.00 0.75 0.00 1.00 1.00 0.00 1.00 %5 M 1.00 0.00 0.75 1.00 0.00 0.50 1.00 0.00 0.25 1.00 0.00 0.00 %6 R 1.00 0.25 0.00 1.00 0.50 0.00 1.00 0.75 0.00 ] def 50 3800 moveto TBIS xchart4 0 eq {(sRGB) show} if xchart4 1 eq {(WCGa) show} if xchart4 2 eq {(Offs) show} if xchart4 3 eq {(Ostw) show} if TBS (\255Daten ) showde ( data ) showen TBIS (rgb*) show TBIS (, XYZxy) showde (, XYZxy) showen TBS (, and ) showen ( und ) showde TBIS xchart8 0 eq {(LabC*h) show} if xchart8 1 eq {(L*ABCh) show} if xchart8 2 eq {(L*ABCh) show} if xchart8 3 eq {(L*ABCh) show} if TBV 0 -40 rmoveto xchart8 0 eq {(ab)} if xchart8 1 eq {(AB)} if xchart8 2 eq {(AB1)} if xchart8 3 eq {(AB2)} if show 0 40 rmoveto TBS xchart8 0 eq {%xchart8=0 ( im CIELAB\255Farbraum) showde ( in the CIELAB\255colour space) showen } if %xchart8=0 xchart8 1 eq {%xchart8=1 ( im L*ABJND\255Farbraum) showde ( in L*ABJND\255colour space) showen } if %xchart8=1 xchart8 2 eq {%xchart8=2 ( im L*AB1JND\255Farbraum) showde ( in L*AB1JND\255colour space) showen } if %xchart8=2 xchart8 3 eq {%xchart8=3 ( im L*AB2JND\255Farbraum) showde ( in L*AB2JND\255colour space) showen } if %xchart8=3 0 3700 moveto 6000 0 rlineto stroke 50 3500 moveto TS (Normfarbwerte von Schwarz und Wei\337: ) showde (Tristimulus values of black and white: ) showen TIS (Y) show TV 0 -40 rmoveto xchart5 0 eq {(N) show}{(Nn) show} ifelse 0 40 rmoveto TS (=) show xchart5 0 eq {XYZ*5N 1 get cvsshow1g} {XYZ*5Nn 1 get cvsshow1g} ifelse TIS (, Y) show TV 0 -40 rmoveto xchart5 0 eq {(W) show}{(Wn) show} ifelse 0 40 rmoveto TS (=) show xchart5 0 eq {XYZ*5W 1 get cvsshow1g} {XYZ*5Wn 1 get cvsshow1g} ifelse xchart5 1 eq {%xchart5=1 (, Y) show TV 0 -40 rmoveto xchart9 0 eq {(Wa) show}{(Za) show} ifelse 0 40 rmoveto TS xchart9 0 eq {(=88,6.) show}{(=18.) show} ifelse } if %xchart5=1 /y01 3350 def /y02 3300 def /S10 40 def %colour /S20 0270 def %rgb /S40 0650 def %LCh*ab xchart8 0 eq {/S50 2600 def} {/S50 2150 def} ifelse %[X] %TBV %S40 y02 250 add moveto %TBIV %xchart8 0 eq {(LabC*h) show} if %xchart8 1 eq {(L*ABCh) show} if %xchart8 2 eq {(L*ABCh) show} if %xchart8 3 eq {(L*ABCh) show} if %TBX %indab %TBV %(\255Daten) showde %( data) showen S20 y02 moveto TBIV (rgb*) show TBX -50 -50 rmoveto (d) show 50 50 rmoveto xchart8 0 eq {/tex_LabCh* [(L*) (a*) (b*) (C*) (h) ] def /ind_LabCh* [(d) (d) (d) (ab,d) (ab,d)] def /tex_xshift [120 120 120 100 80 ] def } if xchart8 1 eq {/tex_LabCh* [(L*) (A) (B) (C) (h) ] def /ind_LabCh* [(d) (d) (d) (AB,d) (AB,d)] def /tex_xshift [120 80 80 80 80 ] def } if xchart8 2 eq {/tex_LabCh* [(L*) (A) (B) (C) (h) ] def /ind_LabCh* [(d) (1,d)(1,d)(AB1,d)(AB1,d)] def /tex_xshift [120 80 80 80 80 ] def } if xchart8 3 eq {/tex_LabCh* [(L*) (A) (B) (C) (h) ] def /ind_LabCh* [(d) (2,d)(2,d)(AB2,d)(AB2,d)] def /tex_xshift [120 80 80 80 80 ] def } if 0 1 4 {/k exch def %k=0,4 TBIV /xdLabk 0 def k 1 eq {/xdLabk -50 def} if k 2 eq {/xdLabk -50 def} if k 3 eq {/xdLabk -70 def} if k 4 eq {/xdLabk 50 def} if S40 k xdLab mul add xdLabk add y02 moveto tex_LabCh* k get show TBX S40 k xdLab mul add xdLabk add tex_xshift k get add y02 moveto 0 -50 rmoveto ind_LabCh* k get show 0 50 rmoveto } for %k=0,4 /y03 3100 def /y0d 190 def 0 1 7 {/j exch def %j=0,8 9 colours /i j def j 6 ge {/i j 1 add def} if %for N and W /i30 i 3 mul def /i31 i30 1 add def /i32 i30 2 add def /i50 i 5 mul def /i51 i50 1 add def /i52 i50 2 add def /i53 i50 3 add def /i54 i50 4 add def S10 y03 j y0d mul sub moveto TBV tex*36X i32 get show TBX 0 -40 rmoveto (d) show 0 40 rmoveto S20 y03 j y0d mul sub moveto TBV rgb*36X i30 get cvishow ( ) show rgb*36X i31 get cvishow ( ) show rgb*36X i32 get cvishow 0 1 4 {/k exch def %k=0,4 /xdLabk 0 def k 1 eq {/xdLabk -50 def} if k 2 eq {/xdLabk -50 def} if k 3 eq {/xdLabk -50 def} if k 4 lt {TV}{TBV} ifelse S40 k xdLab mul add xdLabk add y03 j y0d mul sub moveto k 0 eq {LCh*12n i50 get cvishow} if k 1 eq {LCh*12n i53 get dup -100 le {-50 0 rmoveto} if cvishow} if k 2 eq {LCh*12n i54 get dup -100 le {-50 0 rmoveto} if cvishow} if k 3 eq {LCh*12n i51 get cvishow} if k 4 eq {LCh*12n i52 get cvishow} if } for %k=0,4 } for %j=0,7 /y0d 0210 def xchart8 1 le {%xchart8<=1 S10 y03 11.2 y0d mul sub moveto TBIV xchart8 0 eq {(a*) show} if xchart8 1 eq {(A) show} if TBV xchart8 0 eq {( = 500 [\050) show} if xchart8 1 eq {( = 250 [) show} if TBIV (X) show TBV ( / ) show TBIV (X) show TBX 0 -40 rmoveto (D65) show 0 40 rmoveto TBV xchart8 0 eq {(\051) show TBX 0 100 rmoveto (1/3) show 0 -100 rmoveto } if TBV ( - ) show xchart8 0 eq {(\050) show} if TBIV (Y) show TBV ( / ) show TBIV (Y) show TBX 0 -40 rmoveto (D65) show 0 40 rmoveto TBV xchart8 0 eq {(\051) show TBX 0 100 rmoveto (1/3) show 0 -100 rmoveto } if TBV ( ]) show S50 y03 11.2 y0d mul sub moveto TBV xchart8 0 eq {([1a]) show} if xchart8 1 eq {([1b]) show} if S10 y03 12.2 y0d mul sub moveto TBIV xchart8 0 eq {(b*) show} if xchart8 1 eq {(B) show} if TBV xchart8 0 eq {( = 200 [\050) show} if xchart8 1 eq {( = 100 [) show} if TBIV (Y) show TBV ( / ) show TBIV (Y) show TBX 0 -40 rmoveto (D65) show 0 40 rmoveto TBV xchart8 0 eq {(\051) show TBX 0 100 rmoveto (1/3) show 0 -100 rmoveto} if TBV ( - ) show xchart8 0 eq {(\050) show} if TBIV (Z) show TBV ( / ) show TBIV (Z) show TBX 0 -40 rmoveto (D65) show 0 40 rmoveto TBV xchart8 0 eq {(\051) show TBX 0 100 rmoveto (1/3) show 0 -100 rmoveto} if TBV ( ]) show S50 y03 12.2 y0d mul sub moveto TBV xchart8 0 eq {([2a]) show} if xchart8 1 eq {([2b]) show} if } if %xchart8<=1 xchart8 2 eq {%xchart8=2 /index0 {0 -50 rmoveto TBX (1) show 0 50 rmoveto xcol10KBX} def /indexn {0 -50 rmoveto TBX (1,n) show 0 50 rmoveto xcol10KBX} def } if %xchart8=2 xchart8 3 eq {%xchart8=3 /index0 {0 -50 rmoveto TBX (2) show 0 50 rmoveto xcol10KBX} def /indexn {0 -50 rmoveto TBX (2,n) show 0 50 rmoveto xcol10KBX} def } if %xchart8=3 /xcol10_BX {xcolor 1 eq {TBX 0 -50 rmoveto (10) show 0 50 rmoveto TBV} if } bind def /xcol10KBX {xcolor 1 eq {TBX 0 -50 rmoveto (,10) show 0 50 rmoveto TBV} if } bind def TBIV /y04 3100 def xchart8 2 ge {%xchart8>=2 xchart8 2 eq {/Bct (1,000) def /xct (0,110) def} if xchart8 3 eq {/Bct (0,800) def /xct (0,110) def} if S10 y04 07.2 y0d mul sub moveto TBIV (a) show index0 TBV ( = ) show TBIV (a) show 0 -50 rmoveto TBX (20) show 0 50 rmoveto TBV ( [ ) show TBIV (\050 x) show xcol10_BX TBV ( - ) show TBIV (x) show 0 -50 rmoveto TBX (c) show 0 50 rmoveto TBIV ( \051 / y) show xcol10_BX TBV (]) show S10 y04 08.2 y0d mul sub moveto TBIV (b) show index0 TBV ( = ) show TBIV (b) show 0 -50 rmoveto TBX (20) show 0 50 rmoveto TBV ( [) show TBIV ( z) show xcol10_BX TBIV ( / y) show xcol10_BX TBV (]) show S10 y04 09.2 y0d mul sub moveto TBIV (a) show 0 -50 rmoveto TBX (20) show 0 50 rmoveto TBV ( = 1, ) show TBIV (b) show 0 -50 rmoveto TBX (20) show 0 50 rmoveto TBV ( = -0,4) show S10 y04 10.2 y0d mul sub moveto TBIV (x) show 0 -50 rmoveto TBX (c) show 0 50 rmoveto TBV ( = ) show xct show (, ) show TBIV (B) show 0 -50 rmoveto TBX (c) show 0 50 rmoveto TBV ( = ) show Bct show S10 y04 11.2 y0d mul sub moveto TBIV (A) show index0 TBV ( = 2,5 \050) show TBIV (a) show index0 TBV ( - ) show TBIV (a) show indexn TBV (\051 ) show TBIV (Y) show xcol10_BX S50 y04 11.2 y0d mul sub moveto TBV xchart8 2 eq {([1c]) show} if xchart8 3 eq {([1d]) show} if S10 y04 12.2 y0d mul sub moveto TBIV (B) show index0 TBV ( = 2,5 ) show TBIV (B) show 0 -50 rmoveto TBX (c) show 0 50 rmoveto TBV ( \050) show TBIV (b) show index0 TBV ( - ) show TBIV (b) show indexn TBV (\051 ) show TBIV (Y) show xcol10_BX S50 y04 12.2 y0d mul sub moveto TBV xchart8 2 eq {([2c]) show} if xchart8 3 eq {([2d]) show} if } if %xchart8>=2 %for all S10 y04 13.4 y0d mul sub moveto TBIV (C) show TBIV xchart8 0 eq {(*) show} if TBX xchart8 0 eq {0 -40 rmoveto (ab) show 0 40 rmoveto} if xchart8 1 eq {0 -40 rmoveto (AB) show 0 40 rmoveto} if xchart8 2 eq {0 -40 rmoveto (AB1) show 0 40 rmoveto} if xchart8 3 eq {0 -40 rmoveto (AB2) show 0 40 rmoveto} if TBV ( = [ ) show TBIV xchart8 0 eq {(a*) show TBX 0 100 rmoveto (2) show 0 -100 rmoveto} if xchart8 1 eq {(A) show TBX 0 70 rmoveto (2) show 0 -70 rmoveto} if xchart8 2 eq {(A) show index0 TBX -30 70 rmoveto (2) show 0 -70 rmoveto} if xchart8 3 eq {(A) show index0 TBX -30 70 rmoveto (2) show 0 -70 rmoveto} if TBV ( + ) show TBIV xchart8 0 eq {(b*) show TBX 0 100 rmoveto (2) show 0 -100 rmoveto} if xchart8 1 eq {(B) show TBX 0 70 rmoveto (2) show 0 -70 rmoveto} if xchart8 2 eq {(B) show index0 TBX -30 70 rmoveto (2) show 0 -70 rmoveto} if xchart8 3 eq {(B) show index0 TBX -30 70 rmoveto (2) show 0 -70 rmoveto} if TBV ( ] ) show TBX -30 70 rmoveto (0,5) show 0 -70 rmoveto S50 y04 13.4 y0d mul sub moveto TBV xchart8 0 eq {([3a]) show} if xchart8 1 eq {([3b]) show} if xchart8 2 eq {([3c]) show} if xchart8 3 eq {([3d]) show} if S10 y04 14.4 y0d mul sub moveto TBIV (h) show TBX xchart8 0 eq {0 -40 rmoveto (ab) show 0 40 rmoveto} if xchart8 1 eq {0 -40 rmoveto (AB) show 0 40 rmoveto} if xchart8 2 eq {0 -40 rmoveto (AB1) show 0 40 rmoveto} if xchart8 3 eq {0 -40 rmoveto (AB2) show 0 40 rmoveto} if TBV ( = atan [ ) show TBIV xchart8 0 eq {(b*) show} if xchart8 1 eq {(B) show} if xchart8 2 eq {(B) show index0} if xchart8 3 eq {(B) show index0} if TBV ( / ) show TBIV xchart8 0 eq {(a*) show} if xchart8 1 eq {(A) show} if xchart8 2 eq {(A) show index0} if xchart8 3 eq {(A) show index0} if TBV ( ]) show S50 y04 14.4 y0d mul sub moveto TBV xchart8 0 eq {([4a]) show} if xchart8 1 eq {([4b]) show} if xchart8 2 eq {([4c]) show} if xchart8 3 eq {([4d]) show} if /xt2 2150 def /yt2 -2370 def xt2 yt2 translate 0 setgray xp 1450 sub yp 0750 add moveto /L*Xd LCh*5A 0 get def /C*Xd LCh*5A 1 get def /L*Nd LCh*5N 0 get def /L*Wd LCh*5W 0 get def xchart8 0 eq {/xfact1 12 def /yfact1 12 def } if xchart8 1 eq { % /xfact1 12 mul 2.5 mul def % /yfact1 12 mul 2.5 mul def /xfact1 12 def /yfact1 12 def } if xchart8 2 eq { % /xfact1 12 mul 2.5 mul def % /yfact1 12 mul 2.5 mul def /xfact1 12 def /yfact1 12 def } if xchart8 3 eq { % /xfact1 12 mul 2.5 mul def % /yfact1 12 mul 2.5 mul def /xfact1 12 def /yfact1 12 def } if /xp0 xp 0400 add def /yp0 yp 1000 sub def /xpN xp0 1000 sub def /ypN yp0 1000 sub def xp0 1900 sub yp0 0 sub moveto 3600 0 rlineto %horizontal axis & arrow -100 40 rlineto 100 -40 rlineto -100 -40 rlineto stroke xp0 0000 add yp0 1400 sub moveto 0 3100 rlineto %vertical axis & arrow -40 -100 rlineto 40 100 rlineto 40 -100 rlineto stroke xp0 1800 sub yp0 70 sub moveto 0 140 rlineto stroke %marks, horizontal axis xp0 1200 sub yp0 70 sub moveto 0 140 rlineto stroke xp0 0600 sub yp0 70 sub moveto 0 140 rlineto stroke xp0 0600 add yp0 70 sub moveto 0 140 rlineto stroke xp0 1200 add yp0 70 sub moveto 0 140 rlineto stroke xchart8 0 eq {%xchart8=0 /scal_x [(-150) (-100) ( -50) ( 50) ( 100)] def /scal_y [(100) (50) (-50) (-100)] def } if xchart8 1 eq {%xchart8=1 % /scal_x [(-60) ( -40) ( -20) ( 20) ( 40)] def % /scal_y [( 40) (20) (-20) (-40) ] def /scal_x [(-150) (-100) ( -50) ( 50) ( 100)] def /scal_y [(100) (50) (-50) (-100)] def } if %xchart8=1 xchart8 2 eq {%xchart8=2 % /scal_x [(-60) ( -40) ( -20) ( 20) ( 40)] def % /scal_y [( 40) (20) (-20) (-40) ] def /scal_x [(-150) (-100) ( -50) ( 50) ( 100)] def /scal_y [(100) (50) (-50) (-100)] def } if %xchart8=1 xchart8 3 eq {%xchart8=3 % /scal_x [(-60) ( -40) ( -20) ( 20) ( 40)] def % /scal_y [( 40) (20) (-20) (-40) ] def /scal_x [(-150) (-100) ( -50) ( 50) ( 100)] def /scal_y [(100) (50) (-50) (-100)] def } if %xchart8=3 TV xp0 2000 sub yp0 220 sub moveto scal_x 0 get show %numbers, horizontal scale xp0 1400 sub yp0 220 sub moveto scal_x 1 get show xp0 0750 sub yp0 220 sub moveto scal_x 2 get show xp0 0400 add yp0 220 sub moveto scal_x 3 get show xp0 1000 add yp0 220 sub moveto scal_x 4 get show xp0 70 sub yp0 1200 add moveto 140 0 rlineto stroke %marks, vertical axis xp0 70 sub yp0 0600 add moveto 140 0 rlineto stroke xp0 70 sub yp0 0600 sub moveto 140 0 rlineto stroke xp0 70 sub yp0 1200 sub moveto 140 0 rlineto stroke xp0 100 add yp0 1150 add moveto scal_y 0 get show %numbers, vertical axis xp0 100 add yp0 0550 add moveto scal_y 1 get show xp0 100 add yp0 0650 sub moveto scal_y 2 get show xp0 100 add yp0 1250 sub moveto scal_y 3 get show TBIK xp0 0080 add yp0 1550 add moveto xchart8 0 eq {(b*) show} if xchart8 1 eq {(B) show} if xchart8 2 eq {(B) show TBS 0 -40 rmoveto (1) show 0 40 rmoveto} if xchart8 3 eq {(B) show TBS 0 -40 rmoveto (2) show 0 40 rmoveto} if TBIK xp0 1550 add yp0 0120 add moveto xchart8 0 eq {(a*) show} if xchart8 1 eq {(A) show} if xchart8 2 eq {(A) show TBS 0 -40 rmoveto (1) show 0 40 rmoveto} if xchart8 3 eq {(A) show TBS 0 -40 rmoveto (2) show 0 40 rmoveto} if TBK 0.5 setgray xchart5 1 eq {%old hexagon 15 setlinewidth 0 1 6 {/i exch def %i=0,6 0 setgray /i50 i 5 mul def /i53 i50 3 add def %a* /i54 i50 4 add def %b* /xi xp0 LCh*12 i53 get xfact1 mul add def /yi yp0 LCh*12 i54 get yfact1 mul add def i 0 eq {xi yi moveto} if i 1 ge {xi yi lineto} if i 6 eq {stroke} if } for %i=0,6 0 1 6 {/i exch def %i=0,6 0 setgray /i50 i 5 mul def /i53 i50 3 add def %a* /i54 i50 4 add def %b* /xi xp0 LCh*12 i53 get xfact1 mul add def /yi yp0 LCh*12 i54 get yfact1 mul add def xi yi 0040 0 360 arc fill } for %i=0,6 } if %old hexagon 1 setgray 30 setlinewidth 0 1 6 {/i exch def %i=0,6 0 setgray /i50 i 5 mul def /i53 i50 3 add def %a* /i54 i50 4 add def %b* /xi xp0 LCh*12n i53 get xfact1 mul add def /yi yp0 LCh*12n i54 get yfact1 mul add def i 0 eq {xi yi moveto} if i 1 ge {xi yi lineto} if i 6 eq {stroke} if } for %i=0,6 0 1 5 {/i exch def %i=0,5 1 1 3 {/k exch def %k=1,3 0 setgray /i34 i 12 mul k 3 mul add def /i50 i 5 mul def /i53 i50 3 add def /i54 i50 4 add def /xi0 xp0 LCh*12n i53 get xfact1 mul add def /yi0 yp0 LCh*12n i54 get yfact1 mul add def /xi1 xp0 LCh*12n i53 5 add get xfact1 mul add def /yi1 yp0 LCh*12n i54 5 add get yfact1 mul add def /xiM xi0 xi1 xi0 sub k 0.25 mul mul add def /yiM yi0 yi1 yi0 sub k 0.25 mul mul add def /r rgb*30Y i34 3 add get def /g rgb*30Y i34 4 add get def /b rgb*30Y i34 5 add get def r g b setrgbcolor xiM yiM 0050 0 360 arc fill } for %k=1,3 } for %i=0,5 newpath /xshift 6 array def /yshift 6 array def % R Y G C B M /xshift [-50 -150 -100 -100 -250 -050] def /yshift [120 150 150 -300 -200 -300] def xchart8 1 eq {yshift 1 -300 put} if 0 1 5 {/i exch def %i=0,5 0 setgray /i3 i 3 mul def /i50 i 5 mul def /i53 i50 3 add def /i54 i50 4 add def /xi xp0 LCh*12n i53 get xfact1 mul add def /yi yp0 LCh*12n i54 get yfact1 mul add def xi yi 0100 0 360 arc fill /r rgb*36X i3 0 add get def /g rgb*36X i3 1 add get def /b rgb*36X i3 2 add get def r g b setrgbcolor xi yi 0050 0 360 arc fill newpath 0 setgray xi xshift i get add yi yshift i get add moveto tex*36X i 3 mul 2 add get show newpath } for %i=0,5 20 setlinewidth xt2 neg yt2 neg translate } if %xchart6=1 hue circle %******************************************************* showpage grestore %%Trailer