%!PS-Adobe-3.0 EPSF-3.0 http://farbe.li.tu-berlin.de/egw4/egw4l00XX.PS 20230801 %%BoundingBox: 07 04 414 292 /pdfmark where {pop} {userdict /pdfmark /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: http://farbe.li.tu-berlin.de/egw4/egw4.htm) /Author (compare K. Richter "Computergrafik ...": ISBN 3-8007-1775-1) /Subject (goto: http://farbe.li.tu-berlin.de or http://color.li.tu-berlin.de) /Keywords (image reproduction, colour devices) /Creator (klaus.richter@mac.com) /CreationDate (D:2023080112000) /ModDate (D:20230801112000) /DOCINFO pdfmark [ /View [ /FitB ] /DOCVIEW pdfmark %Y10g00na.ps6 %line 20****************************************************** %BEG egw4/OUTLIN10.PS Emty 20210418 %END egw4/OUTLIN10.PS Emty 20210418 %BEG egw4/OUTLIN1X.PS 20210418 %EMPTY %END egw4/OUTLIN1X.PS 20210418 %BEG egw4/OUTLIN1Y2.PS Emty 20210418 %END egw4/OUTLIN1Y2.PS Emty 20210418 /BeginEPSF {% def % Prepare for EPS file /b4_Inc_state save def % Save state for cleanup /dict_count countdictstack def /op_count count 1 sub def % Count objects on op stack userdict begin % Make userdict current dict /showpage {} def 0 setgray 0 setlinecap 1 setlinewidth 0 setlinejoin 10 setmiterlimit [] 0 setdash newpath /languagelevel where % If level not equal to 1 then {pop languagelevel where % If level not equal to 1 then 1 ne {false setstrokeadjust false setoverprint } if } if } bind def /EndEPSF {% def % End for EPS file count op_count sub {pop} repeat countdictstack dict_count sub {end} repeat % Clean up dict stack b4_Inc_state restore } 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 % !AUSTAUSCH Times-Roman -> Times-Roman-ISOLatin1=Times-I /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 /TK {250 /Times-ISOL1 FS} bind def /TM {300 /Times-ISOL1 FS} bind def /TG {350 /Times-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 /TBK {250 /TimesB-ISOL1 FS} bind def /TBM {300 /TimesB-ISOL1 FS} bind def /TBG {350 /TimesB-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 %ANFA CMYKDEF %CMYKDEA0 (A0=Standard-Drucker-CMYKDEF) 15.3.97 /tzac [1.000 0.933 0.867 0.800 0.733 0.667 0.600 0.533 0.467 0.400 0.333 0.267 0.200 0.132 0.067 0.000 1.000 0.750 0.500 0.250 0.000] def /tzam [1.000 0.933 0.867 0.800 0.733 0.667 0.600 0.533 0.467 0.400 0.333 0.267 0.200 0.132 0.067 0.000 1.000 0.750 0.500 0.250 0.000] def /tzay [1.000 0.933 0.867 0.800 0.733 0.667 0.600 0.533 0.467 0.400 0.333 0.267 0.200 0.132 0.067 0.000 1.000 0.750 0.500 0.250 0.000] def /tzan [1.000 0.933 0.867 0.800 0.733 0.667 0.600 0.533 0.467 0.400 0.333 0.267 0.200 0.132 0.067 0.000 1.000 0.750 0.500 0.250 0.000] def /tza0 [0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000] def /tza1 [1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000] def %ENDE CMYKD /rec %x, y width heigth {/heigth exch def /width exch def moveto width 0 rlineto 0 heigth rlineto width neg 0 rlineto closepath } bind def /colrecfiLAB* %x y width heigth LAB* { setcolor rec fill} bind def /colrecstLAB* %x y width heigth LAB* { setcolor rec stroke} bind def /colrecficmyn* %x y width heigth cmy0* or 000n* { setcmykcolor rec fill} bind def /colrecstcmyn* %x y width heigth cmy0* or 000n* { setcmykcolor rec stroke} bind def /colrecfiw* %x y width heigth w* { setgray rec fill} bind def /colrecstw* %x y width heigth w* { setgray rec stroke} bind def /colrecfiolv* %x y width heigth olv* { setrgbcolor rec fill} bind def /colrecstolv* %x y width heigth olv* { setrgbcolor rec stroke} bind def /tzocmy0* {0.0 1.0 1.0 0.0} bind def %Reproduction colours /tzlcmy0* {1.0 0.0 1.0 0.0} bind def %cmyn* setcmykcolor /tzvcmy0* {1.0 1.0 0.0 0.0} bind def /tzccmy0* {1.0 0.0 0.0 0.0} bind def /tzmcmy0* {0.0 1.0 0.0 0.0} bind def /tzycmy0* {0.0 0.0 1.0 0.0} bind def /tzoolv* {1.0 0.0 0.0} bind def %Reproduction colours /tzlolv* {0.0 1.0 0.0} bind def %olv* setrgbcolor /tzvolv* {0.0 0.0 1.0} bind def /tzcolv* {0.0 1.0 1.0} bind def /tzmolv* {1.0 0.0 1.0} bind def /tzyolv* {1.0 1.0 0.0} bind def /tzoLAB* [53.34 72.46 50.66] def %Reproduction colours /tzlLAB* [84.93 -79.83 74.80] def %LAB* setcolor /tzvLAB* [32.20 24.88 -37.89] def /tzcLAB* [88.10 -44.88 -13.36] def /tzmLAB* [59.66 90.32 -19.65] def /tzyLAB* [93.76 -20.24 85.93] def /tzncmy0* {1.00 1.00 1.00 0.00} bind def %grey series /tzdcmy0* {0.75 0.75 0.75 0.00} bind def %cmy0* setcmykcolor /tzzcmy0* {0.50 0.50 0.50 0.00} bind def /tzhcmy0* {0.25 0.25 0.25 0.00} bind def /tzwcmy0* {0.00 0.00 0.00 0.00} bind def /tzn000n* {0.00 0.00 0.00 1.00} bind def %grey series 000n* /tzd000n* {0.00 0.00 0.00 0.75} bind def %000n* setcmykcolor /tzz000n* {0.00 0.00 0.00 0.50} bind def /tzh000n* {0.00 0.00 0.00 0.25} bind def /tzw000n* {0.00 0.00 0.00 0.00} bind def /tznw* {0.00} bind def %grey series /tzdw* {0.25} bind def %w* setgray /tzzw* {0.50} bind def /tzhw* {0.75} bind def /tzww* {1.00} bind def /tznolv* {0.00 0.00 0.00} bind def %grey series /tzdolv* {0.25 0.25 0.25} bind def %olv* setrgbcolor /tzzolv* {0.50 0.50 0.50} bind def /tzholv* {0.75 0.75 0.75} bind def /tzwolv* {1.00 1.00 1.00} bind def /tznLAB* [18.01 0.00 0.00] def %grey series /tzdLAB* [37.36 0.00 0.00] def %LAB* setcolor /tzzLAB* [56.71 0.00 0.00] def /tzhLAB* [76.06 0.00 0.00] def /tzwLAB* [95.41 0.00 0.00] def /tfn {0 setgray} bind def /tfw {1 setgray} bind def /tfb {0 0.5 1 setrgbcolor} bind def /A4quer {598 0 translate 90 rotate} def /cvishow {cvi 6 string cvs show} def /cvsshow1 {10 mul cvi 0.1 mul 7 string cvs show} def /cvsshow2 {100 mul cvi 0.01 mul 7 string cvs show} def /cvsshow3 {1000 mul cvi 0.001 mul 7 string cvs show} def %%EndProlog %*********************************************************** %%BeginPageSetup /#copies 1 def %A4querF 0.5 0.5 scale /pgsave save def %%EndPageSetup /SS$ [(g) (e) (s) (f) (i) (j) (m)] def /SC$ [(n) (f) (s) (d) (t) (e) (c)] def /SX$ [(0) (1) (2) (3) (4) (5) (6) (7) (8) (9) (a) (b) (c) (d) (e) (f)] def /SY$ [(0) (1) (2) (3) (4) (5) (6) (7) (8) (9) (a) (b) (c) (d) (e) (f)] def % 0 1 2 3 4 5 % 6 7 8 /EX$ [(1.txt /.ps) (b.bmp /.ps) (g.gif /.ps) (h.htm /.ps) (i.htm /.ps) (j.jpe /.ps) (p.pdf /.ps) (t.tif /.ps)] def /EY$ [(1.dat) (b.dat) (g.dat) (h.dat) (i.dat) (j.dat) (p.dat) (t.dat)] def %******************************************************************* /lanind1f 00 def /lanind2f 00 def /laninddf 01 def /lanindmf 01 def /colorm1f 00 def /colorm2f 00 def /colormdf 01 def /colormmf 01 def /deintp1f 00 def /deintp2f 00 def /deintpdf 01 def /deintpmf 01 def /xcolor1f 00 def /xcolor2f 00 def /xcolordf 01 def /xcolormf 01 def %2/10degree /xchart1f 00 def /xchart2f 00 def /xchartdf 01 def /xchartmf 01 def /xchart3f 01 def /xchart4f 00 def /xchart5f 00 def /pchart1f 00 def /pchart2f 00 def /pchartdf 01 def /pchartmf 01 def %=3:sRGB,Lr /colsep1f 00 def /colsep2f 00 def /colsepdf 01 def /colsepmf 01 def /pmetam1f 00 def /pmetam2f 00 def /pmetamdf 01 def /pmetammf 01 def %/lanindf lanind1f def % /lanindf lanind1f def %lanind1f laninddf lanind2f {/lanindf exch def %/colormf colorm1f def % /colormf colorm1f def %colorm1f colormdf colorm2f {/colormf exch def %/deintpf deintp1f def % /deintpf deintp1f def %deintp1f deintpdf deintp2f {/deintpf exch def %/xcolorf xcolor1f def % /xcolorf xcolor1f def %xcolor1f xcolordf xcolor2f {/xcolorf exch def %/xchartf xchart1f def % /xchartf xchart1f def %xchart1f xchartdf xchart2f {/xchartf exch def %/pchartf pchart1f def % /pchartf pchart1f def %/pchartf pchart1f def %pchart1f pchartdf pchart2f {/pchartf exch def %/colsepf colsep1f def % /colsepf colsep1f def %colsep1f colsepdf colsep2f {/colsepf exch def /lanind lanindf def /colorm colormf def /deintp deintpf def /xcolor xcolorf def /xchart xchartf def /xchartm xchart2f xchart1f sub 1 add def /xchart3 xchart3f def /xchart4 xchart4f def /pchart pchartf def /colsep colsepf def %/pmetamf pmetam1f def % /pmetamf pmetam1f def %pmetam1f pmetamdf pmetam2f {/pmetamf exch def /pmetam pmetamf def %************************************************************* %/setgray {sfgray} bind def %/setrgbcolor {sfrgbcolor} bind def %/setcmykcolor {sfcmykcolor} bind def %72 90 translate %0.01 MM dup scale %0 0 moveto 24600 0 rlineto 0 17220 rlineto % -24600 0 rlineto closepath stroke %000 -240 moveto %240 /Times-ISOL1 FS %lanindf cvishow (-) show %colormf cvishow %deintpf cvishow %xcolorf cvishow %xchartf cvishow %pchartf cvishow %colsepf cvishow (-F) show pmetamf cvishow %grestore gsave /GSS$ SS$ lanind get def /GSC$ SC$ colorm get def /GSX$ SX$ xcolor xcolor 16 idiv 16 mul sub get def /GSY$ SY$ xchart xchart 16 idiv 16 mul sub get def /GEX$ EX$ 0 get def /GEY$ EY$ 0 get def %01 %02 %03 %04 %05 %06 %07 %08 %09 %10 %11 %12 %13 %14 %15 %16 %17 %18 %gsave BeginEPSF 28 MM 197 MM translate 10 /Times-ISOL1 FS 53 MM 1 MM moveto 1 1 scale -77 -91 translate %%BeginDocument: Bild 10 %line 329 %%EndDocument EndEPSF grestore gsave /SHSl 2 def /SHAl 2 def BeginEPSF 28 SHSl sub MM 152 MM translate 10 /Times-ISOL1 FS 53 MM 1 MM moveto 1 1 scale -77 -91 translate %%BeginDocument: Bild 11 %line 339 %!PS-Adobe-3.0 EPSF-3.0 egw40-1N %%BoundingBox: 70 85 246 206 /FS {findfont exch scalefont setfont} bind def /MM {72 25.4 div mul} def %%EndProlog gsave /ioutx 0 def ioutx 1 eq {%ioutx=1 4 /Times-Roman FS 72 86 moveto (egw40-1N) show 72 90 translate 0.01 MM dup scale 20 setlinewidth /xwidth 6100 def /ywidth 4000 def 1 setgray 0 0 moveto xwidth 0 rlineto 0 ywidth rlineto xwidth neg 0 rlineto closepath fill 0 setgray 0 0 moveto xwidth 0 rlineto 0 ywidth rlineto xwidth neg 0 rlineto closepath stroke } if %ioutx=1 grestore showpage %%Trailer %%EndDocument EndEPSF grestore gsave BeginEPSF 86 SHAl add MM 152 MM translate 10 /Times-ISOL1 FS 53 MM 1 MM moveto ( ) show 1 1 scale -77 -91 translate %%BeginDocument: Bild 12 %line 349 %!PS-Adobe-3.0 EPSF-3.0 egw40-2N %%BoundingBox: 70 85 246 206 /FS {findfont exch scalefont setfont} bind def /MM {72 25.4 div mul} def %%EndProlog gsave /ioutx 0 def ioutx 1 eq {%ioutx=1 4 /Times-Roman FS 72 86 moveto (egw40-2N) show 72 90 translate 0.01 MM dup scale 20 setlinewidth /xwidth 6100 def /ywidth 4000 def 1 setgray 0 0 moveto xwidth 0 rlineto 0 ywidth rlineto xwidth neg 0 rlineto closepath fill 0 setgray 0 0 moveto xwidth 0 rlineto 0 ywidth rlineto xwidth neg 0 rlineto closepath stroke } if %ioutx=1 grestore showpage %%Trailer %%EndDocument EndEPSF grestore gsave BeginEPSF 28 SHSl sub MM 108 MM translate 10 /Times-ISOL1 FS 53 MM 1 MM moveto ( ) show 1 1 scale -77 -91 translate %%BeginDocument: Bild 13 %line 359 %!PS-Adobe-3.0 EPSF-3.0 egw40-3n_60 %%BoundingBox: 70 85 421 335 %START PDFDE011.EPS /pdfmark03 where {pop} {userdict /pdfmark03 /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/egw4/egw4.HTM) /Author (compare K. Richter "Computergrafik ...": ISBN 3-8007-1775-1) /Subject (goto: http://farbe.li.tu-berlin.de or http://color.li.tu-berlin.de) /Keywords (image reproduction, colour devices) /Creator (klaus.richter@mac.com) /CreationDate (D:2023080112000) /ModDate (D:2023080112000) /DOCINFO pdfmark03 [ /View [ /Fit ] /DOCVIEW pdfmark03 %END PDFDE011 %line 20****************************************************** /BeginEPSF {% def % Prepare for EPS file /b4_Inc_state save def % Save state for cleanup /dict_count countdictstack def /op_count count 1 sub def % Count objects on op stack userdict begin % Make userdict current dict /showpage {} def 0 setgray 0 setlinecap 1 setlinewidth 0 setlinejoin 10 setmiterlimit [] 0 setdash newpath /languagelevel where % If level not equal to 1 then {pop languagelevel where % If level not equal to 1 then 1 ne {false setstrokeadjust false setoverprint } if } if } bind def /EndEPSF {% def % End for EPS file count op_count sub {pop} repeat countdictstack dict_count sub {end} repeat % Clean up dict stack b4_Inc_state restore } 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 /Courier findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /Courier-ISOL1 exch definefont pop /Courier-Oblique findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /CourierI-ISOL1 exch definefont pop /Courier-Bold findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /CourierB-ISOL1 exch definefont pop /Courier-BoldOblique findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /CourierBI-ISOL1 exch definefont pop /TG {350 /Times-ISOL1 FS} bind def /TM {280 /Times-ISOL1 FS} bind def /TK {240 /Times-ISOL1 FS} bind def /TS {200 /Times-ISOL1 FS} bind def /TL {160 /Times-ISOL1 FS} bind def /TV {110 /Times-ISOL1 FS} bind def /TW {080 /Times-ISOL1 FS} bind def /TIG {350 /TimesI-ISOL1 FS} bind def /TIM {280 /TimesI-ISOL1 FS} bind def /TIK {240 /TimesI-ISOL1 FS} bind def /TIS {200 /TimesI-ISOL1 FS} bind def /TIL {160 /TimesI-ISOL1 FS} bind def /TIV {110 /TimesI-ISOL1 FS} bind def /TIW {080 /TimesI-ISOL1 FS} bind def /TBG {350 /TimesB-ISOL1 FS} bind def /TBM {280 /TimesB-ISOL1 FS} bind def /TBK {240 /TimesB-ISOL1 FS} bind def /TBS {200 /TimesB-ISOL1 FS} bind def /TBL {160 /TimesB-ISOL1 FS} bind def /TBV {110 /TimesB-ISOL1 FS} bind def /TBW {080 /TimesB-ISOL1 FS} bind def /TBIG {350 /TimesBI-ISOL1 FS} bind def /TBIM {280 /TimesBI-ISOL1 FS} bind def /TBIK {240 /TimesBI-ISOL1 FS} bind def /TBIS {200 /TimesBI-ISOL1 FS} bind def /TBIL {160 /TimesBI-ISOL1 FS} bind def /TBIV {110 /TimesBI-ISOL1 FS} bind def /TBIW {080 /TimesBI-ISOL1 FS} bind def /SG {350 /Symbol FS} bind def /SM {280 /Symbol FS} bind def /SK {240 /Symbol FS} bind def /SS {200 /Symbol FS} bind def /SL {160 /Symbol FS} bind def /SV {110 /Symbol FS} bind def /SW {080 /Symbol FS} bind def %***************************************************************** %%EndProlog gsave %lanindL2.EPS START 20000505 /lanind 0 def /lantex [(G) (E) (S) (F) (I) (J) (M)] def /showde {0 lanind eq {show} {pop} ifelse} bind def /showen {1 lanind eq {show} {pop} ifelse} bind def /showes {2 lanind eq {show} {pop} ifelse} bind def /showfr {3 lanind eq {show} {pop} ifelse} bind def /showit {4 lanind eq {show} {pop} ifelse} bind def /showjp {5 lanind eq {show} {pop} ifelse} bind def /showea {1 lanind le {show} {pop} ifelse} bind def /lanindf where {pop /lanind1 lanindf def /lanind2 lanindf def /lanindd laninddf def} {/lanind1 0 def /lanind2 0 def} ifelse /colormf where {pop /colorm1 colormf def /colorm2 colormf def /colormd colormdf def} {/colorm1 0 def} ifelse /deintpf where {pop /deintp1 deintpf def /deintp2 deintpf def /deintpd deintpdf def} {/deintp1 0 def} ifelse /xcolorf where {pop /xcolor1 xcolorf def /xcolor2 xcolorf def /xcolord xcolordf def} {/xcolor1 0 def} ifelse /xchartf where {pop /xchart1 xchartf def /xchart2 xchartf def /xchartd xchartdf def /xchartm xchart2f xchart1f sub 1 add def} {/xchart1 0 def /xchartm 1 def} ifelse /xchart3f where {pop /xchart3 xchart3f def} {/xchart3 0 def} ifelse /xchart4f where {pop /xchart4 xchart4f def} {/xchart4 0 def} ifelse /pchartf where {pop /pchart1 pchartf def /pchart2 pchartf def /pchartd pchartdf def} {/pchart1 3 def} ifelse /colsepf where {pop /colsep1 colsepf def /colsep2 colsepf def /colsepd colsepdf def} {/colsep1 0 def} ifelse /pmetamf where {pop /pmetam1 pmetamf def /pmetam2 pmetamf def /pmetamd pmetamdf def} {/pmetam1 0 def} ifelse %either defaul values for xchart=0 or values for xchart=1 /lanind lanind1 def % /colorm colorm1 def % /deintp deintp1 def % /xcolor xcolor1 def % /xchart xchart1 def % /pchart pchart1 def % /colsep colsep1 def % /pmetam pmetam1 def % gsave /cvishow0 {cvi 6 string cvs show} def /kchartl 0 def %0:left page, 1:right page /pchartl 0 def %0:top page, 4:down page %not used 72 90 translate 0.010 MM dup scale 40 setlinewidth /ymax1 08550 def /xmax1 12250 def %2x6000+250 1.0 setgray 0 0 moveto xmax1 0 rlineto 0 ymax1 rlineto xmax1 neg 0 rlineto closepath fill 0 setgray 0 0 moveto xmax1 0 rlineto 0 ymax1 rlineto xmax1 neg 0 rlineto closepath stroke TK 0 setgray 150 /Times-ISOL1 FS 150 -140 moveto kchartl 0 eq {(egw40-) show} {(egw41-) show} ifelse pchartl 0 eq {(3n) show} {(7n) show} ifelse grestore gsave %00 %01 %02 /SHSl 00.0 def /SHAl 02.8 def /STSl 13.0 def /STAl 14.5 def BeginEPSF 28 SHSl sub MM 064 STSl add MM translate 10 /Times-ISOL1 FS 53 MM 1 MM moveto ( ) show 1 1 scale -77 -91 translate %%BeginDocument: Bild 15 %!PS-Adobe-3.0 EPSF-3.0 http://farbe.li.tu-berlin.de/egw4/egw40-1a %%BoundingBox: 70 85 244 206 %START PDFDE011.EPS /pdfmark01 where {pop} {userdict /pdfmark01 /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/egw4/egw4.HTM) /Author (compare K. Richter "Computergrafik ...": ISBN 3-8007-1775-1) /Subject (goto: http://farbe.li.tu-berlin.de or http://color.li.tu-berlin.de) /Keywords (image reproduction, colour devices) /Creator (klaus.richter@mac.com) /CreationDate (D:2023010112000) /ModDate (D:20230101112000) /DOCINFO pdfmark01 [ /View [ /Fit ] /DOCVIEW pdfmark01 %END PDFDE011 /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 /FS {findfont exch scalefont setfont} bind def /MM {72 25.4 div mul} def /str {8 string } bind def /TS {160 /Times-ISOL1 FS} bind def /TL {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 /TIS {160 /TimesI-ISOL1 FS} bind def /TIL {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 /TBS {160 /TimesB-ISOL1 FS} bind def /TBL {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 /TBIS {160 /TimesBI-ISOL1 FS} bind def /TBIL {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 /SS {160 /Symbol FS} bind def /SL {200 1 sub /Symbol FS} bind def /SK {250 1 sub /Symbol FS} bind def /SM {300 1 sub /Symbol FS} bind def /SG {350 1 sub /Symbol FS} bind def /CS {160 /Courier-ISOL1 FS} bind def /CL {200 /Courier-ISOL1 FS} bind def /CK {250 /Courier-ISOL1 FS} bind def /CM {300 /Courier-ISOL1 FS} bind def /CG {350 /Courier-ISOL1 FS} bind def /CBS {160 /CourierB-ISOL1 FS} bind def /CBL {200 /CourierB-ISOL1 FS} bind def /CBK {250 /CourierB-ISOL1 FS} bind def /CBM {300 /CourierB-ISOL1 FS} bind def /CBG {350 /CourierB-ISOL1 FS} bind def /nGs {350 /Times-ISOL1 FS show} bind def /kGs {350 /TimesI-ISOL1 FS show} bind def /bGs {350 /TimesB-ISOL1 FS show} bind def /jGs {350 /TimesBI-ISOL1 FS show} bind def /sGs {350 /Symbol FS show} bind def /iGs {300 /Times-ISOL1 FS 0 -90 rmoveto show 0 90 rmoveto} bind def /eGs {300 /Times-ISOL1 FS 0 200 rmoveto show 0 -200 rmoveto} bind def /ibGb {300 /TimesB-ISOL1 FS 0 -90 rmoveto show 0 90 rmoveto} bind def /ebGb {300 /TimesB-ISOL1 FS 0 200 rmoveto show 0 -200 rmoveto} bind def /ipG {300 /Times-ISOL1 FS 50 50 rmoveto (\267) show 50 -50 rmoveto} bind def %20% kleiner /nMs {300 /Times-ISOL1 FS show TM} bind def /kM2 {300 /TimesI-ISOL1 FS show TM} bind def /bM2 {300 /TimesB-ISOL1 FS show TM} bind def /jM2 {300 /TimesBI-ISOL1 FS show TM} bind def /sMs {300 /Symbol FS show TM} bind def /iMs {250 /Times-ISOL1 FS 0 -70 rmoveto show 0 70 rmoveto TM} bind def /eMs {250 /Times-ISOL1 FS 0 160 rmoveto show 0 -160 rmoveto TM} bind def /ibMs {250 /TimesB-ISOL1 FS 0 -70 rmoveto show 0 70 rmoveto TM} bind def /ebMs {250 /TimesB-ISOL1 FS 0 160 rmoveto show 0 -160 rmoveto TM} bind def /ipM {250 /Times-ISOL1 FS 40 40 rmoveto (\267) show 40 -40 rmoveto TM} bind def %40% kleiner /nKs {250 /Times-ISOL1 FS show TK} bind def /kKs {250 /TimesI-ISOL1 FS show TK} bind def /bKs {250 /TimesB-ISOL1 FS show TK} bind def /jKs {250 /TimesBI-ISOL1 FS show TK} bind def /sKs {250 /Symbol FS show TK} bind def /iKs {200 /Times-ISOL1 FS 0 -60 rmoveto show 0 60 rmoveto TK} bind def /eKs {200 /Times-ISOL1 FS 0 110 rmoveto show 0 -110 rmoveto TK} bind def /ibKs {200 /TimesB-ISOL1 FS 0 -60 rmoveto show 0 60 rmoveto TK} bind def /ebKs {200 /TimesB-ISOL1 FS 0 110 rmoveto show 0 -110 rmoveto TK} bind def /ipK {200 /Times-ISOL1 FS 30 30 rmoveto (\267) show 30 -30 rmoveto TK} bind def %60% kleiner /nLs {200 /Times-ISOL1 FS show TS} bind def /kLs {200 /TimesI-ISOL1 FS show TS} bind def /bLs {200 /TimesB-ISOL1 FS show TS} bind def /jLs {200 /TimesBI-ISOL1 FS show TS} bind def /sLs {200 /Symbol FS show TS} bind def /iLs {160 /Times-ISOL1 FS 0 -50 rmoveto show 0 50 rmoveto TS} bind def /eLs {160 /Times-ISOL1 FS 0 090 rmoveto show 0 -090 rmoveto TS} bind def /ibLs {160 /TimesB-ISOL1 FS 0 -50 rmoveto show 0 50 rmoveto TS} bind def /ebLs {160 /TimesB-ISOL1 FS 0 090 rmoveto show 0 -090 rmoveto TS} bind def /ipL {160 /Times-ISOL1 FS 25 25 rmoveto (\267) show 25 -25 rmoveto TS} bind def %XCHA02.PS BEG /rec %x, y width heigth {/heigth exch def /width exch def moveto width 0 rlineto 0 heigth rlineto width neg 0 rlineto closepath } bind def /colrecfi %x y width heigth c m y k {setrgbcolor rec fill} bind def /colrecst %x y width heigth c m y k {setrgbcolor rec stroke} bind def /rem %x, y width heigth {/heigth exch 0.5 mul def /width exch 0.5 mul def /yleftb exch heigth 0.5 mul add def /xleftb exch width 0.5 mul add def xleftb yleftb moveto width 0 rlineto 0 heigth rlineto width neg 0 rlineto closepath } bind def /colremfi %x y width heigth c m y k {setrgbcolor rem fill} bind def /colremst %x y width heigth c m y k {setrgbcolor rem stroke} bind def /tzr {1 0 0} bind def %Reproduktionsfarben /tzg {0 1 0} bind def /tzb {0 0 1} bind def /tzc {0 1 1} bind def /tzm {1 0 1} bind def /tzy {1 1 0} bind def /tzn {0.00} bind def %Graureihe /tzd {0.25} bind def /tzz {0.50} bind def /tzh {0.75} bind def /tzw {1.00} bind def /tfr {1 0 0 setrgbcolor} bind def %Reproduktionsfarben /tfg {0 1 0 setrgbcolor} bind def /tfb {0 0 1 setrgbcolor} bind def /tfc {0 1 1 setrgbcolor} bind def /tfm {1 0 1 setrgbcolor} bind def /tfy {1 1 0 setrgbcolor} bind def /tfrn {0.5 0.0 0.0 setrgbcolor} bind def %Reproduktionsfarben /tfgn {0.0 0.5 0.0 setrgbcolor} bind def /tfbn {0.0 0.0 0.5 setrgbcolor} bind def /tfcn {0.0 0.5 0.5 setrgbcolor} bind def /tfmn {0.5 0.0 0.5 setrgbcolor} bind def /tfyn {0.5 0.5 0.0 setrgbcolor} bind def /tfn {0.00 setgray} bind def %Graureihe /tfd {0.25 setgray} bind def /tfz {0.50 setgray} bind def /tfh {0.75 setgray} bind def /tfw {1.00 setgray} bind def %XCHA02.PS BEG /YnW 100 def %TUBJND, CIELAB /Yi 101 array def %101(W)+3*101(R,G,B) /YLogi 101 array def /dYi 101 array def /L*i 101 array def /X00i 101 array def %log(Xi) /Y00i 101 array def %L*i, log(L*i) /Y0ui 101 array def %L*i/Lu, log(L*i/L*u) /Y10i 101 array def %dYi, log(dYi) /Y1ui 101 array def %dYi/dYu, log(dYi/dYu) /Y20i 101 array def %dYi/Yi, log(dYi/Yi) sensitivity /Y2ui 101 array def %(dYi/dYu)/(Yi/Yu), log[(dYi/dYu)/(Yi/Yu)] /Y30i 101 array def %Yi/dYi, log(Yi/dYi) contrast /Y3ui 101 array def %(Yi/Yu)/(dYi/dYu), log[(Yi/Yu)/(dYi/dYu)] /Yx0i 101 array def %one of eight above /MULX 1000 def /MULY 1000 def /ifunc 1 def %0: TUBJND, 1: CIELAB /YLIN 1 def %data for LINLAB, TUBJND, CIELAB /c24 2.4 def %LINYAB /e10D24 1.0 2.4 div def /e14D24 1.4 2.4 div def /c30 3.0 def %CIELAB /e10D30 1.0 3.0 div def /e20D30 2.0 3.0 div def %*************************************************** %ifunc 0 eq {%ifunc=0 %TUBJND /YYL 0.001 def /YFL 0.000001 def /Yu 18.00 def %dY = (s + q * Y)/c = (A1 + A2 * Y) / A0 /JNDC 1.5 def %c=A0 /JNDS 0.0170 def %s=A1 /JNDQ 0.0058 def %q=A2 /JNDA0 JNDC def /JNDA1 JNDS def /JNDA2 JNDQ def /JNDA JNDQ JNDS div def %a=q/s=A2/A1=0,3411 /JNDT JNDC JNDS div def %t=c/s=A0/A1=88,23 /JNDB JNDA Yu mul def %b=q/s*Yu=a*Yu=A2/A1*Yu= /JNDD JNDT JNDA div def %d=t/a=A0/A2=258,6 ifunc 0 eq {%ifunc=0 %dY = (s + q Y)/ c = (A1 + A2 * Y) / A0 %dY = [1 + (q/s) Y] / (c/s) = [1 + a Y] / t = [1 + (A2/A1) * Y] / (A0/A1) %dY = [1 + (q/s)*Yu * (Y/Yu)] * (c/s) = [1 + (a*Yu) (Y/Yu)] /t % = [1 + b (Y/Yu)] / t = [ 1 + A2/A1*Yu*(Y/Yu) ] / (A0/A1) %L*= ln [1 + a Y] * d = ln [1 + (A2/A1) * Y] * (A0/A2) %dL*/dY = 1 / (1 + a*Y) * a * d) = t / (1 + a*Y) = (A0/A2) / [1 + (A2/A1) * Y] %for dL*=1: %dY = (1 + a*Y) / t = [1 + (A2/A1) * Y] / (A0/A1) %s=0.0170=A1 %q=0.0058=A2 %c=Y0=1.5=A0 %a=q/s=0.3411=A2/A1 %b=a*Yu=6.1411=(A2/A1)*Yu %t=c/s=88.23=A0/A1 %d=t/a=258.62=(A0/A1)/(A2/A1)=A0/A2 /Yn 100 def /dYu Yu JNDA mul 1 add JNDT div def %[1 + (A2/A1) * Yu] / (A0/A1) /L*u Yu JNDA mul 1 add ln JNDD mul def %A0/A2 * ln [1 + (A2/A1) * Yu] /iu 40 def %*************************************************** /Yi_L*i_dYi_L_0 {%BEG Yi_L*i_dYi_L_0 L=TUBJND /Yu0 18 def %range 0,18, 1,8, 18, 180, 1800 18000 % 0 20 40 60 80 100 %log -0.7447 0.2553 1.2553 2.2553 3.2553 4.2553 /Log018 Yu0 100 div log def 1 1 100 {/i exch def %i=1,100 YLogi i Log018 i 0.05 mul add put Yi i 10 YLogi i get exp YnW mul 100. div put %L*i = A0/A2 * ln [1 + (A2/A1) * Y] L*i i Yi i get JNDA mul 1 add ln JNDD mul put %dYi = [1 + (A2/A1) * Y] / (A0/A1) dYi i Yi i get JNDA mul 1 add JNDT div put } for %i=1,100 } bind def %END Yi_L*i_dYi_L_0 =TUBJND } if %ifunc=0 %*************************************************** ifunc 1 eq {%ifunc=1 /econst 2.71828182 def /W2 2 sqrt def /FL 0.0001 def %Yn=100, L*u=50 %Yu=Yn*[(L*u+16)/116]**3 %dYu=3*[Yn**(1/3)/116*Yu**(2/3)] /Yn 100 def /L*u 50 def /Yu L*u 16 add 116 div 3 exp 100 mul def /dYu Yn e10D30 exp 116 div 3 mul Yu e20D30 exp mul def /iu 40 def /aCIE 3 116 div Yn e20D30 exp mul def /bCIE aCIE iu e20D30 exp mul def /cCIE 3 116 div Yn e10D30 exp mul def /dCIE cCIE iu e20D30 exp mul def /eCIE 116 3 div Yn e20D30 exp mul def /fCIE eCIE iu e20D30 exp mul def %************************************************* /Yi_L*i_dYi_C_0 {%BEG Yi_L*i_dYi_C_0 C=CIELAB /Yu0 18 def %range 0,18, 1,8, 18, 180, 1800 18000 % 0 20 40 60 80 100 %log -0.7447 0.2553 1.2553 2.2553 3.2553 4.2553 /Log018 Yu0 100 div log def 1 1 100 {/i exch def %i=1,100 YLogi i Log018 i 0.05 mul add put Yi i 10 YLogi i get exp YnW mul 100. div put L*i i Yi i get YnW div e10D30 exp 116 mul 16 sub put dYi i Yi i get YnW div e20D30 exp c30 mul 100 mul 116 div put } for %i=1,100 } bind def %END Yi_L*i_dYi_C_0 C=CIELAB } if %ifunc=1 /ioutc 0 def /cero_line {%BEG cero_line %1. log line = cero line tfr %-2. MULX mul 1. log MULY mul moveto % 0. MULX mul 1. log MULY mul lineto stroke tfn %tfw %2. log line = +1 line tfg %-2. MULX mul 10. log MULY mul moveto % 0. MULX mul 10. log MULY mul lineto stroke tfn %tfw } bind def %cero line %*************************************************** /Yi_Yxyi {%BEG Yi_Yxyi definition for 4 functions: L*i, dYi, dYi/Yi, Yi/dYi %i=0 not available 1 1 100 {/i exch def %i=1,100 X00i i Yi i get put Y00i i L*i i get put Y0ui i L*i i get L*u div put Y10i i dYi i get put Y1ui i dYi i get dYu div put Y20i i dYi i get Yi i get div put Y2ui i dYi i get Yi i get div dYu Yu div div put Y30i i Yi i get dYi i get div put Y3ui i Yi i get dYi i get div Yu dYu div div put } for %i=1,100 } bind def %END Yi_Yxyi %*************************************************** /Y_curve {%BEG Y_curve 50 setlinewidth 0 1 1 {/je exch def %je=0,1 je 0 eq {1 1 1 setrgbcolor} if je 1 eq {0 0 0 setrgbcolor [100] 0 setdash} if /i1 001 def /i2 100 def i1 1 i2 {/i exch def %i=i1,i2 X00i i get log MULX mul Yx0i i get MULY mul i i1 eq {moveto} if i i1 1 add ge i i2 1 sub le and {lineto} if i i2 eq {stroke} if } for %i=i1,i2 } for %je=0,1 /iout 0 def iout 1 eq {%iout=1 50 setlinewidth 0 1 2 {/k exch def %k=0,3 k 0 eq {/i 04 def} if k 1 eq {/i 18 def} if k 2 eq {/i 90 def} if tfb X00i i get log MULX mul Yx0i i get MULY mul 060 0 360 arc fill newpath X00i i get log 0.50 sub MULX mul Yx0i i get ifunc 0 eq {%ifunc=0 TUBJND xchartl 0 eq {0.15 500 mul add} if xchartl 1 eq {0.15 1 mul add} if xchartl 2 eq {0.15 0.2 mul add} if xchartl 3 eq {0.15 2 mul add} if xchartl 4 eq {0.15 0.01 mul add} if xchartl 5 eq {0.15 2 mul add} if xchartl 6 eq {0.15 200 mul add} if xchartl 7 eq {0.15 1 mul add} if } if %TUBJND ifunc 1 eq {%ifunc=1 CIELAB xchartl 0 eq {0.15 50 mul add} if xchartl 1 eq {0.15 1 mul add} if xchartl 2 eq {0.15 2 mul add} if xchartl 3 eq {0.15 2 mul add} if xchartl 4 eq {0.15 0.1 mul add} if xchartl 5 eq {0.15 2 mul add} if xchartl 6 eq {0.15 20 mul add} if xchartl 7 eq {0.15 1 mul add} if } if %CIELAB MULY mul moveto TBK xchartl 0 eq xchartl 6 eq or {Yx0i i get cvsshow1x} {Yx0i i get cvsshow3x} ifelse 0 setgray newpath } for %k=0,2 } if %iout=0 [ ] 0 setdash 0 setgray } bind def %END Y_curve %*************************************************** /cvishow {cvi 10 string cvs show} def /cvsshow1 {10 mul cvi 0.1 mul 10 string cvs show} def /cvsshow2 {100 mul cvi 0.01 mul 10 string cvs show} def /cvsshow3 {1000 mul cvi 0.001 mul 10 string cvs show} def /cvsshow4 {10000 mul cvi 0.0001 mul 10 string cvs show} def /cvsshow1x {/nxx exch def %example nxx=99.1/99.0 nxx 0 lt {(-) show} {() show} ifelse nxx 10 mul cvi abs /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 /cvsshow2x {/nxx exch def %example nxx=99.12/99,02/99,00 nxx 0 lt {(-) show} {() show} ifelse nxx 100 mul cvi abs /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 /cvsshow3x {/nxx exch def %example nxx=99.123/99.012/99.001/99.000 nxx 0 lt {(-) show} {() show} ifelse nxx 1000 mul cvi abs /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 /cvsshow4x {/nxx exch def %example nxx=99.123/99.0 nxx 0 lt {(-) show} {() show} ifelse nxx 10000 mul cvi abs /nxi exch def %nxi=99123/99012/99001/9 nxi 10000 idiv /nxa exch def %nxa=99 nxi nxa 10000 mul sub /nxb exch def %nxb=123/012/001/000 nxa cvishow (,) show %nxb=99, nxb 1000 ge {nxb cvishow} if %nxb=123/012/001/000 nxb 100 ge nxb 999 le and {(0) show nxb cvishow} if %nxb=012 nxb 10 ge nxb 99 le and {(00) show nxb cvishow} if %nxb=012 nxb 1 ge nxb 9 le and {(000) show nxb cvishow} if %nxb=001 nxb 0 eq {(0000) show} if %nxb=000 } def /cvsshow4s {/nxx exch def %example nxx=-0,1234 nxx 0 lt {(-0,) show} {(0,) show} ifelse /nxi nxx 10000 mul cvi abs def %nxi=1234 nxi 1000 ge {nxi cvishow} if %nxb=123/012/001/000 nxi 100 ge nxi 999 le and {(0) show nxi cvishow} if %nxb=123/012/001/000 nxi 10 ge nxi 99 le and {(00) show nxi cvishow} if %nxb=012 nxi 1 ge nxi 9 le and {(000) show nxi cvishow} if %nxb=001 nxi 0 eq {(0000) show} if %nxb=000 } def %519 BEG TUBJND_ENJ8 %521 END TUBJND_ENJ8 %523 BEG CIELAB_ENJ8 %'ENJ6'CIELAB_ENJ6.PS 230306 only proz_CIELAB_1,3,5,7 of 'ENA6'CIELB_ENA6.PS /proz_CIELAB_1 {%BEG proz_CIELAB_1 x00t 100 add y00t moveto TBIL (L*) show TBL (= 116 ) show TBIL (\050Y/Y) show (n) ibLs TBL (\051) show (1/3) ebLs TBL ( - 16,) show x00t 2300 add y00t moveto TBIL (Y) show (n) ibLs TBL (=100,) show TBIL ( Y) show (u) ibLs TBL (=18,) show ( 1) show SL ( \243 ) show TBIL (Y) show SL ( \243 ) show TBL (100) show x00e y00t moveto TBL ([1) show equ show x00t 100 add y00t ydel 1 mul sub moveto TBIL (L*) show TBL (= k) show (u) ibLs 20 0 rmoveto TBIL (\050Y/Y) show (u) ibLs TBL (\051) show (1/3) ebLs TBL ( - 16,) show x00t 2300 add y00t ydel 1 mul sub moveto (k) show (u) ibLs TBL (=116 [) show TBIL (Y) show (u) ibLs TBIL (/Y) show (n) ibLs TBL (]) show (1/3) ebLs TBL (=) show 20 0 rmoveto (65,50) show x00e y00t ydel 1 mul sub moveto TBL ([2) show equ show x00t 100 add y00t ydel 2 mul sub moveto TBIL (L*/L*) show (u) ibLs TBL ( = [ ) show TBIL (\050Y/Y) show (u) ibLs TBL (\051) show (1/3) ebLs TBL ( - 16/k) show (u) ibLs TBL (] / [1 - 16/k) show (u) ibLs TBL (]) show x00e y00t ydel 2 mul sub moveto TBL ([3) show equ show } bind def %END proz_CIELAB_1 /proz_CIELAB_3 {%BEG proz_CIELAB_3 x00t 100 add y00t moveto TBIL (L*) show TBL (= 116 ) show TBIL (\050Y/Y) show (n) ibLs TBL (\051) show (1/3) ebLs TBL ( - 16,) show x00t 2300 add y00t moveto TBIL (Y) show (n) ibLs TBL (=100,) show TBIL ( Y) show (u) ibLs TBL (=18,) show ( 1) show SL ( \243 ) show TBIL (Y) show SL ( \243 ) show TBL (100) show x00e y00t moveto TBL ([1) show equ show x00t 100 add y00t ydel 1 mul sub moveto TBIL (L*) show TBL (= k) show (u) ibLs 20 0 rmoveto TBIL (\050Y/Y) show (u) ibLs TBL (\051) show (1/3) ebLs TBL ( - 16,) show x00t 2300 add y00t ydel 1 mul sub moveto (k) show (u) ibLs TBL (=116 [) show TBIL (Y) show (u) ibLs TBIL (/Y) show (n) ibLs TBL (]) show (1/3) ebLs TBL (=) show 20 0 rmoveto (65,50) show x00e y00t ydel 1 mul sub moveto TBL ([2) show equ show x00t 100 add y00t ydel 2 mul sub moveto TBIL (dY/dY) show (u) ibLs TBL ( = ) show TBIL (\050Y/Y) show (u) ibLs TBL (\051) show (2/3) ebLs TBL ( = [) show TBIL (\050Y/Y) show (n) ibLs TBL (\051) show (2/3) ebLs TBL (] / [) show TBIL (\050Y) show (u) ibLs TBIL (/Y) show (n) ibLs TBL (\051) show (2/3) ebLs TBL (]) show x00e y00t ydel 2 mul sub moveto TBL ([3) show equ show } bind def %END proz_CIELAB_3 /proz_CIELAB_5 {%BEG proz_CIELAB_5 x00t 100 add y00t moveto TBIL (L*) show TBL (= 116 ) show TBIL (\050Y/Y) show (n) ibLs TBL (\051) show (1/3) ebLs TBL ( - 16,) show x00t 2300 add y00t moveto TBIL (Y) show (n) ibLs TBL (=100,) show TBIL ( Y) show (u) ibLs TBL (=18,) show ( 1) show SL ( \243 ) show TBIL (Y) show SL ( \243 ) show TBL (100) show x00e y00t moveto TBL ([1) show equ show x00t 100 add y00t ydel 1 mul sub moveto TBIL (L*) show TBL (= k) show (u) ibLs 20 0 rmoveto TBIL (\050Y/Y) show (u) ibLs TBL (\051) show (1/3) ebLs TBL ( - 16,) show x00t 2300 add y00t ydel 1 mul sub moveto (k) show (u) ibLs TBL (=116 [) show TBIL (Y) show (u) ibLs TBIL (/Y) show (n) ibLs TBL (]) show (1/3) ebLs TBL (=) show 20 0 rmoveto (65,50) show x00e y00t ydel 1 mul sub moveto TBL ([2) show equ show %2 x00t 100 add y00t ydel 2 mul sub moveto TBIL ((dY/Y) / (dY/Y)) show (u) ibLs TBL ( = ) show TBIL (\050Y/Y) show (u) ibLs TBL (\051) show (-1/3) ebLs x00e y00t ydel 2 mul sub moveto TBL ([3) show equ show %x00t 100 add y00t ydel 3 mul sub moveto %TBL (c = ) show cCIE cvsshow3x %x00t 2000 add y00t ydel 3 mul sub moveto %TBL (d = ) show dCIE cvsshow3x %x00e y00t ydel 3 mul sub moveto %TBL ([4) show equ show } bind def %END proz_CIELAB_5 /proz_CIELAB_7 {%BEG proz_CIELAB_7 x00t 100 add y00t moveto TBIL (L*) show TBL (= 116 ) show TBIL (\050Y/Y) show (n) ibLs TBL (\051) show (1/3) ebLs TBL ( - 16,) show x00t 2300 add y00t moveto TBIL (Y) show (n) ibLs TBL (=100,) show TBIL ( Y) show (u) ibLs TBL (=18,) show ( 1) show SL ( \243 ) show TBIL (Y) show SL ( \243 ) show TBL (100) show x00e y00t moveto TBL ([1) show equ show x00t 100 add y00t ydel 1 mul sub moveto TBIL (L*) show TBL (= k) show (u) ibLs 20 0 rmoveto TBIL (\050Y/Y) show (u) ibLs TBL (\051) show (1/3) ebLs TBL ( - 16,) show x00t 2300 add y00t ydel 1 mul sub moveto (k) show (u) ibLs TBL (=116 [) show TBIL (Y) show (u) ibLs TBIL (/Y) show (n) ibLs TBL (]) show (1/3) ebLs TBL (=) show 20 0 rmoveto (65,50) show x00e y00t ydel 1 mul sub moveto TBL ([2) show equ show %2 x00t 100 add y00t ydel 2 mul sub moveto TBIL ((Y/dY) / (Y/dY)) show (u) ibLs TBL ( = [) show TBIL (Y/Y) show (u) ibLs TBL (]) show (1/3) ebLs x00e y00t ydel 2 mul sub moveto TBL ([3) show equ show } bind def %END proz_CIELAB_7 %525 END CIELAB_ENJ8 %*************************************************** %%EndProlog gsave /lanind 1 def /lantex [(G) (E) (S) (F) (I) (J) (M)] def /showde {0 lanind eq {show} {pop} ifelse} bind def /showen {1 lanind eq {show} {pop} ifelse} bind def /showes {2 lanind eq {show} {pop} ifelse} bind def /showfr {3 lanind eq {show} {pop} ifelse} bind def /showit {4 lanind eq {show} {pop} ifelse} bind def /showjp {5 lanind eq {show} {pop} ifelse} bind def /showea {1 lanind le {show} {pop} ifelse} bind def /lanindf where {pop /lanind1 lanindf def /lanind2 lanindf def /lanindd laninddf def} {/lanind1 0 def /lanind2 0 def} ifelse /colormf where {pop /colorm1 colormf def /colorm2 colormf def /colormd colormdf def} {/colorm1 0 def} ifelse /deintpf where {pop /deintp1 deintpf def /deintp2 deintpf def /deintpd deintpdf def} {/deintp1 0 def} ifelse /xcolorf where {pop /xcolor1 xcolorf def /xcolor2 xcolorf def /xcolord xcolordf def} {/xcolor1 3 def} ifelse /xchartf where {pop /xchart1 xchartf def /xchart2 xchartf def /xchartd xchartdf def /xchartm xchart2f xchart1f sub 1 add def} {/xchart1 0 def /xchartm 1 def} ifelse /xchart3f where {pop /xchart3 xchart3f def} {/xchart3 0 def} ifelse /xchart4f where {pop /xchart4 xchart4f def} {/xchart4 0 def} ifelse /pchartf where {pop /pchart1 pchartf def /pchart2 pchartf def /pchartd pchartdf def} {/pchart1 3 def} ifelse /colsepf where {pop /colsep1 colsepf def /colsep2 colsepf def /colsepd colsepdf def} {/colsep1 0 def} ifelse /pmetamf where {pop /pmetam1 pmetamf def /pmetam2 pmetamf def /pmetamd pmetamdf def} {/pmetam1 0 def} ifelse %either defaul values for xchart=0 or values for xchart=1 /lanind lanind1 def % /colorm colorm1 def % /deintp deintp1 def % /xcolor xcolor1 def % /xchart xchart1 def % /pchart pchart1 def % /colsep colsep1 def % /pmetam pmetam1 def % /ioute 0 def %0 1 01 {/ioute exch def %ioute=0,0 colorm 0 eq deintp 0 eq and {/Txx (d) def /Fxx (d) def} if %colorm=0, deintp=0 colorm 0 eq deintp 1 eq and {/Txx (e) def /Fxx (e) def} if %colorm=0, deintp=1 colorm 1 eq deintp 0 eq and {/Txx (dd) def /Fxx (d) def} if %colorm=1, deintp=0 colorm 1 eq deintp 1 eq and {/Txx (de) def /Fxx (e) def} if %colorm=1, deintp=1 xchart 0 eq {/Txx (-) def /Fxx (-) def} if %always independent of intended output 5 /Times-ISOL1 FS /cvishow {cvi 6 string cvs show} def %75 85 moveto %lanind cvishow (-) show %colorm cvishow %deintp cvishow %xcolor cvishow %xchart cvishow %pchart cvishow %colsep cvishow (-L) show pmetam cvishow gsave %XCHA01.PS END 4 /Times-ISOL1 FS %74 86 moveto (egw40-3r) show %xchart 0 eq {(R) show} % {deintp colorm 2 mul add cvishow} ifelse 72 90 translate 0.01 MM dup scale 20 setlinewidth %0 0 12250 08600 1.0 1.0 1.0 colrecfi %area white grey %0 0 12250 08600 0.0 0.0 0.0 colrecst %Rahmen Schwarz ifunc 0 eq {Yi_L*i_dYi_L_0} if ifunc 1 eq {Yi_L*i_dYi_C_0} if Yi_Yxyi /xchartl 1 def %1 2 7 {/xchartl exch def %xchartl=1,2,7 gsave % xchartl 1 eq { 100 04480 translate} if % xchartl 3 eq { 6150 04480 translate} if % xchartl 5 eq { 100 00220 translate} if % xchartl 7 eq { 6150 00220 translate} if ioute 0 eq {/xchartk xchartl 1 sub 2 idiv def} if ioute 1 eq {/xchartk xchartl 1 sub 2 idiv 4 add def} if 150 /Times-ISOL1 FS 0 setgray 50 -150 moveto (egw40-) show xchartk 1 add cvishow (a) show %a %(_) show xchart 1 add cvishow /xwidth 6000 def /ywidth 4000 def 25 setlinewidth 1 setgray 0 0 moveto xwidth 0 rlineto 0 ywidth rlineto xwidth neg 0 rlineto closepath fill 0 0 moveto xwidth 0 rlineto 0 ywidth rlineto xwidth neg 0 rlineto closepath clip 0 setgray 0 0 moveto xwidth 0 rlineto 0 ywidth rlineto xwidth neg 0 rlineto closepath stroke 0 0 moveto xwidth 0 rlineto 0 ywidth rlineto xwidth neg 0 rlineto closepath clip 0 0 xwidth ywidth 0.0 0.0 0.0 colrecst %frame black tfn %tfw /xtr0 180 def /ytr0 280 def xtr0 ytr0 translate %********************************************************************* 50 setlinewidth %50 setlinewidth tfn 0 0 moveto 5000 0 rlineto stroke 0 0 moveto 0 3100 rlineto stroke 5000 100 add 0 moveto -100 50 rlineto 0 -100 rlineto closepath fill 0 3100 100 add moveto -50 -100 rlineto 100 0 rlineto closepath fill TBL %/tx [(-2) (-1) ( 0) ( 1) ( 2)] def %/txl [( ) (0,1) ( 1) ( 10) (100)] def /tx [(-2) (-1) ( 0) ( 1) ( 2) ( 3)] def /txl [(0,01) (0,1) ( 1) ( 10) (100) (1000)] def %!x-axis: 100 Einheiten = 0600 Skalen-Einheiten 0 1 5 {/i exch def /ixt {-150 i 1000 mul add} def /ixl { 000 i 1000 mul add} def ixt -230 moveto tx i get exec show tfb i 1 ge {ixt i 0 eq {100 sub} if 100 moveto txl i get exec show} if tfn ixl 60 moveto 0 -120 rlineto stroke } for %tfn %tfw %2300 100 moveto TBIL (Y) show (u) ibLs TBL (=18) show tfn /ixtt 5.0 1000 mul def /iytt -200 def ixtt 100 add iytt moveto TBL (log) show 20 0 rmoveto TBIL (Y) show TBL /iytt 050 def ixtt 300 add iytt moveto tfb TBIL (Y) show tfn %tfn %tfw % 3.6 log MULX mul 1000 add 0 moveto %90.0 log MULX mul 1000 add 0 lineto stroke %tfg %[100] 0 setdash % 3.6 log MULX mul 1000 add 0 moveto %90.0 log MULX mul 1000 add 0 lineto stroke %[ ] 0 setdash tfn %!y-Achse: 100 S-Einheiten = 1000 Skalen-Einheiten /j1y 2 def %default /j2y 4 def ifunc 0 eq {%ifunc=0 TUBJND xchartl 0 eq {/j1y 4 def /j2y 6 def} if xchartl 2 eq {/j1y 1 def /j2y 3 def} if xchartl 4 eq {/j1y 0 def /j2y 2 def} if xchartl 6 eq {/j1y 4 def /j2y 6 def} if } if %ifunc=0 TUBJND ifunc 1 eq {%ifunc=0 CIELAB xchartl 0 eq {/j1y 3 def /j2y 5 def} if xchartl 2 eq {/j1y 2 def /j2y 4 def} if xchartl 4 eq {/j1y 1 def /j2y 3 def} if xchartl 6 eq {/j1y 3 def /j2y 5 def} if } if %ifunc=1 CIELAB TBL %yshift -1000 0 1000 2000 3000 4000 % 0 1 2 3 4 5 6 7 8 /ty [(-3)(-2)(-1) ( 0) ( 1) ( 2) ( 3) ( 4) ( 5)] def /tyl[(0,001)(0,01) (0,1) (1) (10) (100) (1000) (10000) (100000)] def ifunc 0 eq {%ifunc=0 TUBJND /ty0[(0)(500)(1000)(1500)] def /ty1[(0)(1)(2)(3)] def /ty2[(0,0)(0,2)(0,4)(0,6)] def /ty3[(0)(2)(4)(6)] def /ty4[(0,00)(0,01)(0,02)(0,03)] def /ty5[(0)(2)(4)(6)] def /ty6[(0)(100)(200)(300)] def /ty7[(0)(1)(2)(3)] def } if %ifunc=0 TUBJND ifunc 1 eq {%ifunc=1 CIELAB /ty0[(0)(50)(100)(150)] def /ty1[(0)(1)(2)(3)] def /ty2[(0)(2)(4)(6)] def /ty3[(0)(2)(4)(6)] def /ty4[(0,0)(0,1)(0,2)(0,3)] def /ty5[(0)(2)(4)(6)] def /ty6[(0) (20) (40)(60) ] def /ty7[(0)(1)(2)(3)] def } if %ifunc=1 CIELAB /j1y 0 def /j2y 3 def j1y 1 j2y {/j exch def /jyt {-50 j j1y sub 1000 mul add} def /jyl {000 j j1y sub 1000 mul add} def tfb 100 jyt moveto xchartl 0 eq {ty0 j get show} if xchartl 1 eq {ty1 j get show} if xchartl 2 eq {ty2 j get show} if xchartl 3 eq {ty3 j get show} if xchartl 4 eq {ty4 j get show} if xchartl 5 eq {ty5 j get show} if xchartl 6 eq {ty6 j get show} if xchartl 7 eq {ty7 j get show} if tfn -60 jyl moveto 120 0 rlineto stroke } for %******************************************************** %BEG C01_C08 ******************************************** tfn %tfw /ytop 3775 def 050 xtr0 sub ytop ytr0 sub moveto xchartl 01 eq {%xchartl=01 YLIN 0 eq {TBK (log[) show} if TBIK (L*) show ifunc 0 eq {(r,TUBJND) ibKs} {(r,CIELAB) ibKs} ifelse YLIN 0 eq {TBK (]) show} if 2100 500 sub xtr0 sub ytop ytr0 sub 000 sub moveto TBK (relative lightness normalized to the) showen (relative Helligkeit normiert zur) showde 2100 500 sub xtr0 sub ytop ytr0 sub 270 sub moveto (background lightness ) showen (Umgebungshelligkeit ) showde TBIK (L*) show ifunc 0 eq {(u,TUBJND) ibKs} {(u,CIELAB) ibKs} ifelse } if %xchartl=01 xchartl 03 eq {%xchartl=03 YLIN 0 eq {TBK (log[) show} if SM (D) show 20 0 rmoveto TBIK (Y) show TBK (/) show SM (D) show TBIK (Y) show (u) ibLs YLIN 0 eq {TBK (]) show} if 1700 xtr0 sub ytop ytr0 sub 000 sub moveto SM (D) show 20 0 rmoveto TBIK (Y) show TBK ifunc 0 eq {(TUBJND) ibKs} {(CIELAB) ibKs} ifelse TBK ( tristimulus\255value difference) showen (\255Normfarbwertdifferenz) showde 1700 xtr0 sub ytop ytr0 sub 270 sub moveto (normalized to ) showen (normiert f\374r ) showde SM (D) show 20 0 rmoveto TBIK (Y) show ifunc 0 eq {(u,TUBJND) ibKs} {(u,CIELAB) ibKs} ifelse } if %xchartl=03 xchartl 05 eq {%xchartl=05 YLIN 0 eq {TBK (log[) show} if TBK (\050) show SM (D) show TBIK (Y/Y) show TBK (\051 / \050) show SM (D) show TBIK (Y) show TBK (/) show TBIK (Y) show TBK (\051) show (u) ibLs YLIN 0 eq {TBK (]) show} if 2700 xtr0 sub ytop ytr0 sub 000 sub moveto TBIK (Y) show TBK ifunc 0 eq {(TUBJND) ibKs} {(CIELAB) ibKs} ifelse TBK ( sensitivity) showen (\255Empfindlichkeit) showde 2700 xtr0 sub ytop ytr0 sub 270 sub moveto (normalized to [) showen (normiert f\374r [) showde SM (D) show TBIK (Y/Y) show TBK (]) show ifunc 0 eq {(u,TUBJND) ibKs} {(u,CIELAB) ibKs} ifelse } if %xchartl=05 xchartl 07 eq {%xchartl=07 YLIN 0 eq {TBK (log[) show} if TBK (\050) show TBIK (Y/) show SM (D) show TBIK (Y) show (\051 / \050) show TBIK (Y) show TBK (/) show SM (D) show TBIK (Y) show TBK (\051) show (u) ibLs YLIN 0 eq {TBK (]) show} if 2700 xtr0 sub ytop ytr0 sub 000 sub moveto TBIK (Y) show TBK ifunc 0 eq {(TUBJND) ibKs} {(CIELAB) ibKs} ifelse TBK ( contrast) showen (\255Kontrast) showde 2700 xtr0 sub ytop ytr0 sub 270 sub moveto (normalized to [) showen (normiert f\374r [) showde TBIK (Y/) show SM (D) show TBIK (Y) show TBK (]) show ifunc 0 eq {(u,TUBJND) ibKs} {(u,CIELAB) ibKs} ifelse } if %xchartl=07 tfn %tfw /y0del 100 def 50 setlinewidth %********************************************************************* /C02_ALOG_L*DL*u {%BEG C02_ALOG_L*DTu* /Fx0log -2.0 def /Fy0lin 1.0 def /xshift 1000 def /xtr 1000 xshift add def /ytr 0000 def /iys 1000 def /MULY iys 1 div def %scale=1 /ytrl ytr 1000 div def %lin shift xtr ytr translate %new cero point %0 not available 1 1 100 {/i exch def %i=1,100 Yx0i i Y0ui i get put } for %i=1,100 Y_curve ioutc 1 eq {cero_line} if /iu04 3.6 log 0.18 log sub 0.05 div cvi def /iu18 18 log 0.18 log sub 0.05 div cvi def /iu90 90 log 0.18 log sub 0.05 div cvi def /Y004DYu L*i iu04 get L*u div def /Y018DYu L*i iu18 get L*u div def /Y090DYu L*i iu90 get L*u div def /Y001dYu L*i 1 get L*u div def /Y100DYu L*i 100 get L*u div def /xl0 0.01 log MULX mul def /xl1 3.60 log MULX mul def /xlm 18.00 log MULX mul def /xl2 90.00 log MULX mul def /yl0 0 MULY mul def /yl1 Y004DYu MULY mul def /ylm Y018DYu MULY mul def /yl2 Y090DYu MULY mul def tfz %tfz [100] 0 setdash xl0 ylm moveto xlm ylm lineto xlm yl0 lineto stroke tfg xl1 yl0 moveto xl2 yl0 lineto stroke xl0 yl1 moveto xl0 yl2 lineto stroke %xl1 yl1 moveto 0 500 rlineto stroke %special tfr /xl3 6000 log MULX mul def xl1 yl1 moveto xl3 yl1 lineto stroke [ ] 0 setdash xl3 1100 sub yl1 50 add moveto TBL (N threshold) showea (N\255Schwelle) showde %xl2 yl2 moveto xl3 yl2 lineto stroke %[ ] 0 setdash %xl3 1100 sub yl2 200 sub moveto %TBL %(W threshold) showea %(W\255Schwelle) showde ioute 0 eq {%ioute=0 tfg xl1 yl0 moveto xl1 yl1 lineto xl0 yl1 lineto stroke xl2 yl0 moveto xl2 yl2 lineto xl0 yl2 lineto stroke tfn %xl1 650 sub yl0 600 add moveto TBIL (Y) show (N) ibLs TBL (=3,6) show %xl2 50 add yl0 600 add moveto TBIL (Y) show (W) ibLs TBL (=90) show } if %ioute=0 tfn xlm 50 add yl0 100 add moveto TBIL (Y) show (u) ibLs TBL (=18) show %C02 /x0 xl0 300 add def %C02 tfn x0 ylm 120 add moveto TBIL (L*/L*) show (u) ibLs TBL (=1) show /FYiuP1 L*i iu 1 add get L*i iu get div def /FYiu 1 def TBIL (, m) show (u) ibLs TBL (=) show FYiuP1 FYiu sub Yi iu 1 add get log Yi iu get log sub div cvsshow2x x0 ylm 200 sub moveto TBIL (L*) show (u) ibLs TBL (=) show L*u cvishow TBIL (, Y) show (u) ibLs TBL (=) show Yu cvishow xtr neg ytr neg translate %old cero point /y0 2900 def /x1 800 def /y1 2700 def /xdel 800 def /ydel 300 def ioute 0 eq {%ioute=0 tfr %C02 %L*= (t/a) * ln (1 + a Y) /x00t 0300 def %C02 /x00e 5400 def /y00t 2900 def %C02 /ydel 0270 def /equ (b]) def ifunc 0 eq {proz_TUBJND_1} if ifunc 1 eq {proz_CIELAB_1} if } if %ioute=0 tfn %tfw /x0 4300 400 add def /y0 yappi 1 get 100 add def x0 y0 moveto 1000 0 rlineto stroke tfg [100] 0 setdash x0 y0 moveto 1000 0 rlineto stroke [ ] 0 setdash tfn %tfw x0 y0 0.8 ydel mul sub moveto TBL (application) showen (Anwendungs\255) showde x0 y0 1.5 ydel mul sub moveto TBL (range) showen (bereich) showde } def %END C02_ALOG_L*DL*u %********************************************************************* /C04_ALOG_DLn {%BEG C04_ALOG_DLn /Fx0log -2.0 def /Fy0lin 1.0 def /xshift 1000 def /xtr 1000 xshift add def /ytr 0000 def /iys 1000 def /MULY iys 2.0 div def %scale=2.0 /ytrl ytr 1000 div def %lin shift xtr ytr translate %new cero point %0 not available 1 1 100 {/i exch def %i=1,100 Yx0i i Y1ui i get put } for %i=1,100 Y_curve ioutc 1 eq {cero_line} if /iu04 3.6 log 0.18 log sub 0.05 div cvi def /iu18 18 log 0.18 log sub 0.05 div cvi def /iu90 90 log 0.18 log sub 0.05 div cvi def /Y004DYu dYi iu04 get dYu div def /Y018DYu dYi iu18 get dYu div def /Y090DYu dYi iu90 get dYu div def /Y001dYu dYi 1 get dYu div def /Y100DYu dYi 100 get dYu div def /xl0 0.01 log MULX mul def /xl1 3.60 log MULX mul def /xlm 18.00 log MULX mul def /xl2 90.00 log MULX mul def /yl0 0 MULY mul def /yl1 Y004DYu MULY mul def /ylm Y018DYu MULY mul def /yl2 Y090DYu MULY mul def tfz %tfz [100] 0 setdash xl0 ylm moveto xlm ylm lineto xlm yl0 lineto stroke tfg xl1 yl0 moveto xl2 yl0 lineto stroke xl0 yl1 moveto xl0 yl2 lineto stroke tfr /xl3 3000 log MULX mul def xl1 yl1 moveto xl3 yl1 lineto stroke [ ] 0 setdash xl3 1000 sub yl1 50 add moveto TBL (N threshold) showea (N\255Schwelle) showde [100] 0 setdash xl1 yl2 moveto xl3 yl2 lineto stroke [ ] 0 setdash xl3 1000 sub yl2 200 sub moveto TBL (W threshold) showea (W\255Schwelle) showde ioute 0 eq {%ioute=0 tfg xl1 yl0 moveto xl1 yl1 lineto xl0 yl1 lineto stroke xl2 yl0 moveto xl2 yl2 lineto xl0 yl2 lineto stroke tfn %xl1 50 add yl0 300 add moveto TBIL (Y) show (N) ibLs TBL (=3,6) show %xl2 50 add yl0 300 add moveto TBIL (Y) show (W) ibLs TBL (=90) show } if %ioute=0 tfn xlm 50 add yl0 300 add 250 sub moveto TBIL (Y) show (u) ibLs TBL (=18) show %C04 /x0 xl0 300 add def %C04 tfn x0 ylm 120 add moveto TBIL ((dY)) show TBL (/) show TBIL ((dY)) show (u) ibLs TBL (=1) show /FYiuP1 dYi iu 1 add get dYi iu 1 add get div def /FYiu 1 def TBIL (, m) show (u) ibLs TBL (=) show FYiuP1 FYiu sub Yi iu 1 add get log Yi iu get log sub div cvsshow2x x0 ylm 200 sub moveto TBIL (Y) show (u) ibLs TBL (=) show Yu cvishow TBIL (, dY) show (u) ibLs TBL (=) show dYu cvsshow2x TBIL (, dY) show (u) ibLs TBL (/) show TBIL (Y) show (u) ibLs TBL (=) show dYu Yu div cvsshow3x xtr neg ytr neg translate %old cero point tfn %tfw /y0 2400 y0del sub def /ydel 300 def %C04 /x01t 0300 def /x02t 0900 def /x03t 2300 def /x04t 3300 def ioute 0 eq {%ioute=0 tfr %C04 %L*= (t/a) * ln (1 + a Y) /x00t 0300 def %C04 /x00e 5400 def /y00t 2950 def %C04 /ydel 0270 def /equ (d]) def ifunc 0 eq {proz_TUBJND_3} if ifunc 1 eq {proz_CIELAB_3} if } if %ioute=0 tfn %tfw /x0 4300 def /y0 yappi 3 get def x0 y0 moveto 1000 0 rlineto stroke tfg [100] 0 setdash x0 y0 moveto 1000 0 rlineto stroke [ ] 0 setdash tfn %tfw x0 y0 0.8 ydel mul sub moveto TBL (application) showen (Anwendungs\255) showde x0 y0 1.5 ydel mul sub moveto TBL (range) showen (bereich) showde } def %END C04_ALOG_DLn %********************************************************************* /C06_ALOG_DL_Ln {%BEG C06_ALOG_DL_Ln /Fx0log -2.0 def /Fy0lin 1.0 def /xshift 1000 def /xtr 1000 xshift add def /ytr 0000 def /iys 1000 def /MULY iys 2.0 div def %scale=2.0 /ytrl ytr 1000 div def %lin shift xtr ytr translate %new cero point %0 not available 1 1 100 {/i exch def %i=1,100 Yx0i i Y2ui i get put } for %i=1,100 Y_curve ioutc 1 eq {cero_line} if /iu04 3.6 log 0.18 log sub 0.05 div cvi def /iu18 18 log 0.18 log sub 0.05 div cvi def /iu90 90 log 0.18 log sub 0.05 div cvi def /Y004DYu dYi iu04 get Yi iu04 get div dYu Yu div div def /Y018DYu dYi iu18 get Yi iu18 get div dYu Yu div div def /Y090DYu dYi iu90 get Yi iu90 get div dYu Yu div div def /Y001dYu dYi 1 get Yi 1 get div dYu Yu div div def /Y100DYu dYi 100 get Yi 100 get div dYu Yu div div def /xl0 0.01 log MULX mul def /xl1 3.60 log MULX mul def /xlm 18.00 log MULX mul def /xl2 90.00 log MULX mul def /yl0 0 MULY mul def /yl1 Y004DYu MULY mul def /ylm Y018DYu MULY mul def /yl2 Y090DYu MULY mul def tfz %tfz [100] 0 setdash xl0 ylm moveto xlm ylm lineto xlm yl0 lineto stroke tfg xl1 yl0 moveto xl2 yl0 lineto stroke xl0 yl1 moveto xl0 yl2 lineto stroke tfr /xl3 3000 log MULX mul def xl1 yl1 moveto xl3 yl1 lineto stroke [ ] 0 setdash xl3 1000 sub yl1 50 add moveto TBL (N threshold) showea (N\255Schwelle) showde ioute 0 eq {%ioute=0 tfg xl1 yl0 moveto xl1 yl1 lineto xl0 yl1 lineto stroke xl2 yl0 moveto xl2 yl2 lineto xl0 yl2 lineto stroke tfn %xl1 50 add yl0 300 add moveto TBIL (Y) show (N) ibLs TBL (=3,6) show %xl2 50 add yl0 300 add moveto TBIL (Y) show (W) ibLs TBL (=90) show } if %ioute=0 tfn xlm 50 add yl0 300 add 250 sub moveto TBIL (Y) show (u) ibLs TBL (=18) show %C06 /x0 xl0 300 add def %C06 tfn x0 ylm 120 add moveto TBIL ((dY/Y)) show TBL (/) show TBIL ((dY/Y)) show (u) ibLs TBL (=1) show /FYiuP1 dYi iu 1 add get Yi iu 1 add get div dYi iu get Yi iu get div div def /FYiu 1 def TBIL (, m) show (u) ibLs TBL (=) show FYiuP1 FYiu sub Yi iu 1 add get log Yi iu get log sub div cvsshow2x x0 ylm 200 sub moveto TBIL (Y) show (u) ibLs TBL (=) show Yu cvishow TBIL (, dY) show (u) ibLs TBL (=) show dYu cvsshow2x TBIL (, dY) show (u) ibLs TBL (/) show TBIL (Y) show (u) ibLs TBL (=) show dYu Yu div cvsshow3x xtr neg ytr neg translate %old cero point /y0 2400 y0del sub def /ydel 300 def %C06 /x01t 0200 def /x02t 0900 def /x03t 2300 def /x04t 3300 def ioute 0 eq {%ioute=0 tfr %C06 %L*= (t/a) * ln (1 + a Y) /x00t 0300 def %C06 /x00e 5400 def /y00t 2900 def %C06 /ydel 0270 def /equ (f]) def ifunc 0 eq {proz_TUBJND_5} if ifunc 1 eq {proz_CIELAB_5} if } if %ioute=0 tfn %tfw /x0 4300 def /y0 yappi 5 get def x0 y0 moveto 1000 0 rlineto stroke tfg [100] 0 setdash x0 y0 moveto 1000 0 rlineto stroke [ ] 0 setdash tfn %tfw x0 y0 0.8 ydel mul sub moveto TBL (application) showen (Anwendungs\255) showde x0 y0 1.5 ydel mul sub moveto TBL (range) showen (bereich) showde } def %END C06_ALOG_DL_Ln %********************************************************************* /C08_ALOG_L_DLn {%BEG C08_ALOG_L_DLn /Fx0log -2.0 def /Fy0lin 1.0 def /xshift 1000 def /xtr 1000 xshift add def /ytr 0000 def /iys 1000 def /MULY iys 1 div def %scale=1 /ytrl ytr 1000 div def %lin shift xtr ytr translate %new cero point 1 1 100 {/i exch def %i=1,100 Yx0i i Y3ui i get put } for %i=1,100 Y_curve ioutc 1 eq {cero_line} if /iu04 3.6 log 0.18 log sub 0.05 div cvi def /iu18 18 log 0.18 log sub 0.05 div cvi def /iu90 90 log 0.18 log sub 0.05 div cvi def /Y004DYu Yi iu04 get dYi iu04 get div Yu dYu div div def /Y018DYu Yi iu18 get dYi iu18 get div Yu dYu div div def /Y090DYu Yi iu90 get dYi iu90 get div Yu dYu div div def /Y001dYu Yi 1 get dYi 1 get div Yu dYu div div def /Y100DYu Yi 100 get dYi 100 get div Yu dYu div div def /xl0 0.01 log MULX mul def /xl1 3.60 log MULX mul def /xlm 18.00 log MULX mul def /xl2 90.00 log MULX mul def /yl0 0 MULY mul def /yl1 Y004DYu MULY mul def /ylm Y018DYu MULY mul def /yl2 Y090DYu MULY mul def tfz %tfz [100] 0 setdash xl0 ylm moveto xlm ylm lineto xlm yl0 lineto stroke tfg xl1 yl0 moveto xl2 yl0 lineto stroke xl0 yl1 moveto xl0 yl2 lineto stroke tfr /xl3 3000 log MULX mul def xl1 yl1 moveto xl3 yl1 lineto stroke [ ] 0 setdash xl3 1000 sub yl1 50 add moveto TBL (N threshold) showea (N\255Schwelle) showde ioute 0 eq {%ioute=0 tfg xl1 yl0 moveto xl1 yl1 lineto xl0 yl1 lineto stroke xl2 yl0 moveto xl2 yl2 lineto xl0 yl2 lineto stroke tfn %xl1 50 add yl0 300 add moveto TBIL (Y) show (N) ibLs TBL (=3,6) show %xl2 50 add yl0 300 add moveto TBIL (Y) show (W) ibLs TBL (=90) show } if %ioute=0 tfn xlm 50 add yl0 300 add 250 sub moveto TBIL (Y) show (u) ibLs TBL (=18) show %C08 /x0 xl0 500 add def %C08 tfn x0 ylm 120 add moveto TBIL ((Y/dY)) show TBL (/) show TBIL ((Y/dY)) show (u) ibLs TBL (=1) show /FYiuP1 Yi iu 1 add get dYi iu 1 add get div Yi iu get dYi iu get div div def /FYiu 1 def TBIL (, m) show (u) ibLs TBL (=) show FYiuP1 FYiu sub Yi iu 1 add get log Yi iu get log sub div cvsshow2x x0 ylm 200 sub moveto TBIL (L*) show (u) ibLs %ifunc 0 eq {(TUBJND,) ibLs} if (u) ibLs TBL (=) show L*u cvishow %TBIL (, Y) show (u) ibLs %TBL (=) show Yu cvishow TBIL (, dY) show (u) ibLs TBL (=) show dYu cvsshow2x TBIL (, Y) show (u) ibLs TBL (/) show TBIL (dY) show (u) ibLs TBL (=) show Yu dYu div cvishow xtr neg ytr neg translate %old cero point %C08 /y0 2400 y0del sub def /ydel 300 def ioute 0 eq {%ioute=0 tfr %C08 %L*= (t/a) * ln (1 + a Y) /x00t 0300 def %C08 /x00e 5400 def /y00t 2900 def %C08 /ydel 0270 def /equ (h]) def ifunc 0 eq {proz_TUBJND_7} if ifunc 1 eq {proz_CIELAB_7} if } if %ioute=0 tfn %tfw /x0 4300 def /y0 yappi 7 get def x0 y0 moveto 1000 0 rlineto stroke tfg [100] 0 setdash x0 y0 moveto 1000 0 rlineto stroke [ ] 0 setdash tfn %tfw x0 y0 0.8 ydel mul sub moveto TBL (application) showen (Anwendungs\255) showde x0 y0 1.5 ydel mul sub moveto TBL (range) showen (bereich) showde } def %END C08_ALOG_L_DL %**************************************************************** %additional blue text /ifbtx 0 def ifbtx 1 eq {%ifbtx=1 tfb /xtfb 40 def xchartl 01 eq {100 3200 xtfb sub moveto TBIL (L*/L*) if (u) ibLs } if xchartl 03 eq {100 3200 xtfb sub moveto SL (D) show TBIL (Y) show TBL (/) show SL (D) show TBIL (Y) show (u) ibLs } if xchartl 05 eq {100 3200 xtfb sub moveto TBIL (S) show (r) ibLs TBL (/) show TBIL (S) show (ru) ibLs TBL (=\050) show SL (D) show TBIL (Y/Y) show TBL (\051/\050) show SL (D) show TBIL (Y) show (u) ibLs TBIL (/Y) show (u) ibLs TBL (\051) show } if xchartl 07 eq {100 3200 xtfb sub moveto TBIL (C) show (r) ibLs TBL (/) show TBIL (C) show (ru) ibLs TBL (=\050) show TBIL (Y/) show SL (D) show TBIL (Y) show TBL (\051/\050) show TBIL (Y) show (u) ibLs TBL (/) show SL (D) show TBIL (Y) show (u) ibLs TBL (\051) show } if } if %ifbtx=1 tfn %************************************************************** % 0 1 2 3 4 5 6 7 ifunc 0 eq {/yappi [1200 1200 1000 1000 1800 1450 1300 0550] def} if ifunc 1 eq {/yappi [1200 1200 1000 1000 1600 1450 1300 0550] def} if xchartl 01 eq {C02_ALOG_L*DL*u} if xchartl 03 eq {C04_ALOG_DLn} if xchartl 05 eq {C06_ALOG_DL_Ln} if xchartl 07 eq {C08_ALOG_L_DLn} if %END C01_C08********************************************** %******************************************************** xtr0 neg ytr0 neg translate %************************************************************** %special space for 'xm03'PROZ0.COM 2x before/after xchartl % xchartl 1 eq { 100 neg 04480 neg translate} if % xchartl 3 eq { 6150 neg 04480 neg translate} if % xchartl 5 eq { 100 neg 00220 neg translate} if % xchartl 7 eq { 6150 neg 00220 neg translate} if grestore %} for %xchartl=1,2,7 showpage grestore %} for %ioute=0,1 %%Trailer %line 239 %%EndDocument EndEPSF grestore gsave BeginEPSF 86 SHAl add MM 064 STSl add MM translate 10 /Times-ISOL1 FS 53 MM 1 MM moveto ( ) show 1 1 scale -77 -91 translate %%BeginDocument: Bild 16 %!PS-Adobe-3.0 EPSF-3.0 http://farbe.li.tu-berlin.de/egw4/egw40-2a enj81-6n %%BoundingBox: 70 85 244 206 %START PDFDE011.EPS /pdfmark02 where {pop} {userdict /pdfmark02 /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/egw4/egw4.HTM) /Author (compare K. Richter "Computergrafik ...": ISBN 3-8007-1775-1) /Subject (goto: http://farbe.li.tu-berlin.de or http://color.li.tu-berlin.de) /Keywords (image reproduction, colour devices) /Creator (klaus.richter@mac.com) /CreationDate (D:2023100112000) /ModDate (D:20231001112000) /DOCINFO pdfmark02 [ /View [ /Fit ] /DOCVIEW pdfmark02 %END PDFDE011 /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 /FS {findfont exch scalefont setfont} bind def /MM {72 25.4 div mul} def /str {8 string } bind def /TS {160 /Times-ISOL1 FS} bind def /TL {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 /TIS {160 /TimesI-ISOL1 FS} bind def /TIL {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 /TBS {160 /TimesB-ISOL1 FS} bind def /TBL {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 /TBIS {160 /TimesBI-ISOL1 FS} bind def /TBIL {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 /SS {160 /Symbol FS} bind def /SL {200 1 sub /Symbol FS} bind def /SK {250 1 sub /Symbol FS} bind def /SM {300 1 sub /Symbol FS} bind def /SG {350 1 sub /Symbol FS} bind def /CS {160 /Courier-ISOL1 FS} bind def /CL {200 /Courier-ISOL1 FS} bind def /CK {250 /Courier-ISOL1 FS} bind def /CM {300 /Courier-ISOL1 FS} bind def /CG {350 /Courier-ISOL1 FS} bind def /CBS {160 /CourierB-ISOL1 FS} bind def /CBL {200 /CourierB-ISOL1 FS} bind def /CBK {250 /CourierB-ISOL1 FS} bind def /CBM {300 /CourierB-ISOL1 FS} bind def /CBG {350 /CourierB-ISOL1 FS} bind def /nGs {350 /Times-ISOL1 FS show} bind def /kGs {350 /TimesI-ISOL1 FS show} bind def /bGs {350 /TimesB-ISOL1 FS show} bind def /jGs {350 /TimesBI-ISOL1 FS show} bind def /sGs {350 /Symbol FS show} bind def /iGs {300 /Times-ISOL1 FS 0 -90 rmoveto show 0 90 rmoveto} bind def /eGs {300 /Times-ISOL1 FS 0 200 rmoveto show 0 -200 rmoveto} bind def /ibGb {300 /TimesB-ISOL1 FS 0 -90 rmoveto show 0 90 rmoveto} bind def /ebGb {300 /TimesB-ISOL1 FS 0 200 rmoveto show 0 -200 rmoveto} bind def /ipG {300 /Times-ISOL1 FS 50 50 rmoveto (\267) show 50 -50 rmoveto} bind def %20% kleiner /nMs {300 /Times-ISOL1 FS show TM} bind def /kM2 {300 /TimesI-ISOL1 FS show TM} bind def /bM2 {300 /TimesB-ISOL1 FS show TM} bind def /jM2 {300 /TimesBI-ISOL1 FS show TM} bind def /sMs {300 /Symbol FS show TM} bind def /iMs {250 /Times-ISOL1 FS 0 -70 rmoveto show 0 70 rmoveto TM} bind def /eMs {250 /Times-ISOL1 FS 0 160 rmoveto show 0 -160 rmoveto TM} bind def /ibMs {250 /TimesB-ISOL1 FS 0 -70 rmoveto show 0 70 rmoveto TM} bind def /ebMs {250 /TimesB-ISOL1 FS 0 160 rmoveto show 0 -160 rmoveto TM} bind def /ipM {250 /Times-ISOL1 FS 40 40 rmoveto (\267) show 40 -40 rmoveto TM} bind def %40% kleiner /nKs {250 /Times-ISOL1 FS show TK} bind def /kKs {250 /TimesI-ISOL1 FS show TK} bind def /bKs {250 /TimesB-ISOL1 FS show TK} bind def /jKs {250 /TimesBI-ISOL1 FS show TK} bind def /sKs {250 /Symbol FS show TK} bind def /iKs {200 /Times-ISOL1 FS 0 -60 rmoveto show 0 60 rmoveto TK} bind def /eKs {200 /Times-ISOL1 FS 0 110 rmoveto show 0 -110 rmoveto TK} bind def /ibKs {200 /TimesB-ISOL1 FS 0 -60 rmoveto show 0 60 rmoveto TK} bind def /ebKs {200 /TimesB-ISOL1 FS 0 110 rmoveto show 0 -110 rmoveto TK} bind def /ipK {200 /Times-ISOL1 FS 30 30 rmoveto (\267) show 30 -30 rmoveto TK} bind def %60% kleiner /nLs {200 /Times-ISOL1 FS show TS} bind def /kLs {200 /TimesI-ISOL1 FS show TS} bind def /bLs {200 /TimesB-ISOL1 FS show TS} bind def /jLs {200 /TimesBI-ISOL1 FS show TS} bind def /sLs {200 /Symbol FS show TS} bind def /iLs {160 /Times-ISOL1 FS 0 -50 rmoveto show 0 50 rmoveto TS} bind def /eLs {160 /Times-ISOL1 FS 0 090 rmoveto show 0 -090 rmoveto TS} bind def /ibLs {160 /TimesB-ISOL1 FS 0 -50 rmoveto show 0 50 rmoveto TS} bind def /ebLs {160 /TimesB-ISOL1 FS 0 090 rmoveto show 0 -090 rmoveto TS} bind def /ipL {160 /Times-ISOL1 FS 25 25 rmoveto (\267) show 25 -25 rmoveto TS} bind def %XCHA02.PS BEG /rec %x, y width heigth {/heigth exch def /width exch def moveto width 0 rlineto 0 heigth rlineto width neg 0 rlineto closepath } bind def /colrecfi %x y width heigth c m y k {setrgbcolor rec fill} bind def /colrecst %x y width heigth c m y k {setrgbcolor rec stroke} bind def /rem %x, y width heigth {/heigth exch 0.5 mul def /width exch 0.5 mul def /yleftb exch heigth 0.5 mul add def /xleftb exch width 0.5 mul add def xleftb yleftb moveto width 0 rlineto 0 heigth rlineto width neg 0 rlineto closepath } bind def /colremfi %x y width heigth c m y k {setrgbcolor rem fill} bind def /colremst %x y width heigth c m y k {setrgbcolor rem stroke} bind def /tzr {1 0 0} bind def %Reproduktionsfarben /tzg {0 1 0} bind def /tzb {0 0 1} bind def /tzc {0 1 1} bind def /tzm {1 0 1} bind def /tzy {1 1 0} bind def /tzn {0.00} bind def %Graureihe /tzd {0.25} bind def /tzz {0.50} bind def /tzh {0.75} bind def /tzw {1.00} bind def /tfr {1 0 0 setrgbcolor} bind def %Reproduktionsfarben /tfg {0 1 0 setrgbcolor} bind def /tfb {0 0 1 setrgbcolor} bind def /tfc {0 1 1 setrgbcolor} bind def /tfm {1 0 1 setrgbcolor} bind def /tfy {1 1 0 setrgbcolor} bind def /tfrn {0.5 0.0 0.0 setrgbcolor} bind def %Reproduktionsfarben /tfgn {0.0 0.5 0.0 setrgbcolor} bind def /tfbn {0.0 0.0 0.5 setrgbcolor} bind def /tfcn {0.0 0.5 0.5 setrgbcolor} bind def /tfmn {0.5 0.0 0.5 setrgbcolor} bind def /tfyn {0.5 0.5 0.0 setrgbcolor} bind def /tfn {0.00 setgray} bind def %Graureihe /tfd {0.25 setgray} bind def /tfz {0.50 setgray} bind def /tfh {0.75 setgray} bind def /tfw {1.00 setgray} bind def %XCHA02.PS BEG /YnW 100 def %TUBJND, CIELAB /Yi 101 array def %101(W)+3*101(R,G,B) /YLogi 101 array def /dYi 101 array def /L*i 101 array def /X00i 101 array def %log(Xi) /Y00i 101 array def %L*i, log(L*i) /Y0ui 101 array def %L*i/Lu, log(L*i/L*u) /Y10i 101 array def %dYi, log(dYi) /Y1ui 101 array def %dYi/dYu, log(dYi/dYu) /Y20i 101 array def %dYi/Yi, log(dYi/Yi) sensitivity /Y2ui 101 array def %(dYi/dYu)/(Yi/Yu), log[(dYi/dYu)/(Yi/Yu)] /Y30i 101 array def %Yi/dYi, log(Yi/dYi) contrast /Y3ui 101 array def %(Yi/Yu)/(dYi/dYu), log[(Yi/Yu)/(dYi/dYu)] /Yx0i 101 array def %one of eight above /MULX 1000 def /MULY 1000 1.5 mul def /ifunc 0 def %0: TUBJND, 1: CIELAB /YLIN 1 def %data for LINLAB, TUBJND, CIELAB /c24 2.4 def %LINYAB /e10D24 1.0 2.4 div def /e14D24 1.4 2.4 div def /c30 3.0 def %CIELAB /e10D30 1.0 3.0 div def /e20D30 2.0 3.0 div def %*************************************************** %ifunc 0 eq {%ifunc=0 %TUBJND /YYL 0.001 def /YFL 0.000001 def /Yu 18.00 def %dY = (s + q * Y)/c = (A1 + A2 * Y) / A0 /JNDC 1.5 def %c=A0 /JNDS 0.0170 def %s=A1 /JNDQ 0.0058 def %q=A2 /JNDA0 JNDC def /JNDA1 JNDS def /JNDA2 JNDQ def /JNDA JNDQ JNDS div def %a=q/s=A2/A1=0,3411 /JNDT JNDC JNDS div def %t=c/s=A0/A1=88,23 /JNDB JNDA Yu mul def %b=q/s*Yu=a*Yu=A2/A1*Yu= /JNDD JNDT JNDA div def %d=t/a=A0/A2=258,6 ifunc 0 eq {%ifunc=0 %dY = (s + q Y)/ c = (A1 + A2 * Y) / A0 %dY = [1 + (q/s) Y] / (c/s) = [1 + a Y] / t = [1 + (A2/A1) * Y] / (A0/A1) %dY = [1 + (q/s)*Yu * (Y/Yu)] * (c/s) = [1 + (a*Yu) (Y/Yu)] /t % = [1 + b (Y/Yu)] / t = [ 1 + A2/A1*Yu*(Y/Yu) ] / (A0/A1) %L*= ln [1 + a Y] * d = ln [1 + (A2/A1) * Y] * (A0/A2) %dL*/dY = 1 / (1 + a*Y) * a * d) = t / (1 + a*Y) = (A0/A2) / [1 + (A2/A1) * Y] %for dL*=1: %dY = (1 + a*Y) / t = [1 + (A2/A1) * Y] / (A0/A1) %s=0.0170=A1 %q=0.0058=A2 %c=Y0=1.5=A0 %a=q/s=0.3411=A2/A1 %b=a*Yu=6.1411=(A2/A1)*Yu %t=c/s=88.23=A0/A1 %d=t/a=258.62=(A0/A1)/(A2/A1)=A0/A2 /Yn 100 def /dYu Yu JNDA mul 1 add JNDT div def %[1 + (A2/A1) * Yu] / (A0/A1) /L*u Yu JNDA mul 1 add ln JNDD mul def %A0/A2 * ln [1 + (A2/A1) * Yu] /iu 40 def %*************************************************** /Yi_L*i_dYi_L_0 {%BEG Yi_L*i_dYi_L_0 L=TUBJND /Yu0 18 def %range 0,18, 1,8, 18, 180, 1800 18000 % 0 20 40 60 80 100 %log -0.7447 0.2553 1.2553 2.2553 3.2553 4.2553 /Log018 Yu0 100 div log def 1 1 100 {/i exch def %i=1,100 YLogi i Log018 i 0.05 mul add put Yi i 10 YLogi i get exp YnW mul 100. div put %L*i = A0/A2 * ln [1 + (A2/A1) * Y] L*i i Yi i get JNDA mul 1 add ln JNDD mul put %dYi = [1 + (A2/A1) * Y] / (A0/A1) dYi i Yi i get JNDA mul 1 add JNDT div put } for %i=1,100 } bind def %END Yi_L*i_dYi_L_0 =TUBJND } if %ifunc=0 %*************************************************** ifunc 1 eq {%ifunc=1 /econst 2.71828182 def /W2 2 sqrt def /FL 0.0001 def %Yn=100, L*u=50 %Yu=Yn*[(L*u+16)/116]**3 %dYu=3*[Yn**(1/3)/116*Yu**(2/3)] /Yn 100 def /L*u 50 def /Yu L*u 16 add 116 div 3 exp 100 mul def /dYu Yn e10D30 exp 116 div 3 mul Yu e20D30 exp mul def /iu 40 def /aCIE 3 116 div Yn e20D30 exp mul def /bCIE aCIE iu e20D30 exp mul def /cCIE 3 116 div Yn e10D30 exp mul def /dCIE cCIE iu e20D30 exp mul def /eCIE 116 3 div Yn e20D30 exp mul def /fCIE eCIE iu e20D30 exp mul def %************************************************* /Yi_L*i_dYi_C_0 {%BEG Yi_L*i_dYi_C_0 C=CIELAB /Yu0 18 def %range 0,18, 1,8, 18, 180, 1800 18000 % 0 20 40 60 80 100 %log -0.7447 0.2553 1.2553 2.2553 3.2553 4.2553 /Log018 Yu0 100 div log def 1 1 100 {/i exch def %i=1,100 YLogi i Log018 i 0.05 mul add put Yi i 10 YLogi i get exp YnW mul 100. div put L*i i Yi i get YnW div e10D30 exp 116 mul 16 sub put dYi i Yi i get YnW div e20D30 exp c30 mul 100 mul 116 div put } for %i=1,100 } bind def %END Yi_L*i_dYi_C_0 C=CIELAB } if %ifunc=1 /ioutc 0 def /cero_line {%BEG cero_line %1. log line = cero line tfr %-2. MULX mul 1. log MULY mul moveto % 0. MULX mul 1. log MULY mul lineto stroke tfn %tfw %2. log line = +1 line tfg %-2. MULX mul 10. log MULY mul moveto % 0. MULX mul 10. log MULY mul lineto stroke tfn %tfw } bind def %cero line %*************************************************** /Yi_Yxyi {%BEG Yi_Yxyi definition for 4 functions: L*i, dYi, dYi/Yi, Yi/dYi %i=0 not available 1 1 100 {/i exch def %i=1,100 X00i i Yi i get put Y00i i L*i i get put Y0ui i L*i i get L*u div put Y10i i dYi i get put Y1ui i dYi i get dYu div put Y20i i dYi i get Yi i get div put Y2ui i dYi i get Yi i get div dYu Yu div div put Y30i i Yi i get dYi i get div put Y3ui i Yi i get dYi i get div Yu dYu div div put } for %i=1,100 } bind def %END Yi_Yxyi %*************************************************** /Y_curve {%BEG Y_curve 50 setlinewidth 0 1 1 {/je exch def %je=0,1 je 0 eq {1 1 1 setrgbcolor} if je 1 eq {0 0 0 setrgbcolor [100] 0 setdash} if /i1 001 def /i2 100 def i1 1 i2 {/i exch def %i=i1,i2 X00i i get log MULX mul Yx0i i get MULY mul i i1 eq {moveto} if i i1 1 add ge i i2 1 sub le and {lineto} if i i2 eq {stroke} if } for %i=i1,i2 } for %je=0,1 /iout 0 def iout 1 eq {%iout=1 50 setlinewidth 0 1 2 {/k exch def %k=0,3 k 0 eq {/i 04 def} if k 1 eq {/i 18 def} if k 2 eq {/i 90 def} if tfb X00i i get log MULX mul Yx0i i get MULY mul 060 0 360 arc fill newpath X00i i get log 0.50 sub MULX mul Yx0i i get ifunc 0 eq {%ifunc=0 TUBJND xchartl 0 eq {0.15 500 mul add} if xchartl 1 eq {0.15 1 mul add} if xchartl 2 eq {0.15 0.2 mul add} if xchartl 3 eq {0.15 2 mul add} if xchartl 4 eq {0.15 0.01 mul add} if xchartl 5 eq {0.15 2 mul add} if xchartl 6 eq {0.15 200 mul add} if xchartl 7 eq {0.15 1 mul add} if } if %TUBJND ifunc 1 eq {%ifunc=1 CIELAB xchartl 0 eq {0.15 50 mul add} if xchartl 1 eq {0.15 1 mul add} if xchartl 2 eq {0.15 2 mul add} if xchartl 3 eq {0.15 2 mul add} if xchartl 4 eq {0.15 0.1 mul add} if xchartl 5 eq {0.15 2 mul add} if xchartl 6 eq {0.15 20 mul add} if xchartl 7 eq {0.15 1 mul add} if } if %CIELAB MULY mul moveto TBK xchartl 0 eq xchartl 6 eq or {Yx0i i get cvsshow1x} {Yx0i i get cvsshow3x} ifelse 0 setgray newpath } for %k=0,2 } if %iout=0 [ ] 0 setdash 0 setgray } bind def %END Y_curve %*************************************************** /cvishow {cvi 10 string cvs show} def /cvsshow1 {10 mul cvi 0.1 mul 10 string cvs show} def /cvsshow2 {100 mul cvi 0.01 mul 10 string cvs show} def /cvsshow3 {1000 mul cvi 0.001 mul 10 string cvs show} def /cvsshow4 {10000 mul cvi 0.0001 mul 10 string cvs show} def /cvsshow1x {/nxx exch def %example nxx=99.1/99.0 nxx 0 lt {(-) show} {() show} ifelse nxx 10 mul cvi abs /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 /cvsshow2x {/nxx exch def %example nxx=99.12/99,02/99,00 nxx 0 lt {(-) show} {() show} ifelse nxx 100 mul cvi abs /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 /cvsshow3x {/nxx exch def %example nxx=99.123/99.012/99.001/99.000 nxx 0 lt {(-) show} {() show} ifelse nxx 1000 mul cvi abs /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 /cvsshow4x {/nxx exch def %example nxx=99.123/99.0 nxx 0 lt {(-) show} {() show} ifelse nxx 10000 mul cvi abs /nxi exch def %nxi=99123/99012/99001/9 nxi 10000 idiv /nxa exch def %nxa=99 nxi nxa 10000 mul sub /nxb exch def %nxb=123/012/001/000 nxa cvishow (,) show %nxb=99, nxb 1000 ge {nxb cvishow} if %nxb=123/012/001/000 nxb 100 ge nxb 999 le and {(0) show nxb cvishow} if %nxb=012 nxb 10 ge nxb 99 le and {(00) show nxb cvishow} if %nxb=012 nxb 1 ge nxb 9 le and {(000) show nxb cvishow} if %nxb=001 nxb 0 eq {(0000) show} if %nxb=000 } def /cvsshow4s {/nxx exch def %example nxx=-0,1234 nxx 0 lt {(-0,) show} {(0,) show} ifelse /nxi nxx 10000 mul cvi abs def %nxi=1234 nxi 1000 ge {nxi cvishow} if %nxb=123/012/001/000 nxi 100 ge nxi 999 le and {(0) show nxi cvishow} if %nxb=123/012/001/000 nxi 10 ge nxi 99 le and {(00) show nxi cvishow} if %nxb=012 nxi 1 ge nxi 9 le and {(000) show nxi cvishow} if %nxb=001 nxi 0 eq {(0000) show} if %nxb=000 } def %519 BEG TUBJND_ENJ8 %'ENJ6'TUBJND_ENJ6.PS 230306 only proz_TUBJND_1,3,5,7 of 'ENA6'TUBJND_ENA6.PS /proz_TUBJND_1 {%BEG proz_TUBJND_1 x00t 100 add y00t moveto TBIL (L*) show (TUBJND) ibLs TBL (= \050) show TBL (t/a) show TBL (\051) show TBL ( ln \050 1 + ) show TBL (a) show ipK TBIL (Y) show TBL (\051) show x00e y00t moveto TBL ([1) show equ show x00t 100 add y00t ydel 1 mul sub moveto TBIL (L*/L*) show (u) ibLs 20 0 rmoveto TBL (= ln \050 1 + ) show TBL (a) show ipK TBIL (Y) show TBL (\051) show TBL ( / ln \050 1 + ) show TBL (a) show ipK TBIL (Y) show (u) ibLs TBL (\051) show x00e y00t ydel 1 mul sub moveto TBL ([2) show equ show x00t 100 add y00t ydel 2 mul sub moveto TBIL (L*/L*) show (u) ibLs 20 0 rmoveto TBL (= ln [ 1 + ) show TBL (b) show ipK TBL (\050) show TBIL (Y/Y) show (u) ibLs TBL (\051]) show TBL ( / ln \050 1 + ) show TBL (b) show TBL (\051) show x00e y00t ydel 2 mul sub moveto TBL ([3) show equ show x00t 100 add y00t ydel 3 mul sub moveto TBL (a=) show JNDA cvsshow4x x00t 0850 add y00t ydel 3 mul sub moveto TBL (t=) show JNDT cvsshow2x x00t 1650 add y00t ydel 3 mul sub moveto TBL (t/a=) show JNDT JNDA div cvsshow1x x00t 2500 add y00t ydel 3 mul sub moveto TBL (b=) show JNDB cvsshow3x x00t 3300 add y00t ydel 3 mul sub moveto TBIL (Y) show (u) ibLs TBL (=18) show x00e y00t ydel 3 mul sub moveto TBL ([4) show equ show } bind def %END proz_TUBJND_1 /proz_TUBJND_3 {%BEG proz_TUBJND_3 x00t 100 add y00t moveto TBIL (L*) show (TUBJND) ibLs TBL (= \050) show TBL (t/a) show TBL (\051) show TBL ( ln [ 1 + ) show TBL (b) show ipK TBL (\050) show TBIL (Y/Y) show (u) ibLs TBL (\051]) show x00e y00t moveto TBL ([1) show equ show x00t 100 add y00t ydel 1 mul sub moveto TBL (a=) show JNDA cvsshow4x x00t 0850 add y00t ydel 1 mul sub moveto TBL (t=) show JNDT cvsshow2x x00t 1650 add y00t ydel 1 mul sub moveto TBL (t/a=) show JNDT JNDA div cvsshow1x x00t 2500 add y00t ydel 1 mul sub moveto TBL (b=) show JNDB cvsshow3x x00t 3300 add y00t ydel 1 mul sub moveto TBIL (Y) show (u) ibLs TBL (=18) show x00e y00t ydel 1 mul sub moveto TBL ([2) show equ show x00t 100 add y00t ydel 2 mul sub moveto TBIL (dY/dY) show (u) ibLs TBL ( = ) show TBL (\050) show TBL (1 + a) show ipK TBIL (Y) show TBL ( \051 / \050 ) show TBL (1 + a) show ipK TBIL (Y) show (u) ibLs TBL (\051) show x00e y00t ydel 2 mul sub moveto TBL ([3) show equ show /iouts4 1 def iouts4 1 eq {%iouys4 x00t 100 add y00t ydel 3 mul sub moveto TBIL (dY/dY) show (u) ibLs TBL ( = ) show TBL (\050) show TBL (1 + b) show ipK TBIL (Y/Y) show (u) ibLs TBL ( \051 / \050 ) show TBL (1 + b) show TBL (\051) show x00e y00t ydel 3 mul sub moveto TBL ([4) show equ show } if %iouts4 } bind def %END proz_TUBJND_3 /proz_TUBJND_5 {%BEG proz_TUBJND_5 x00t 100 add y00t moveto TBIL (L*) show (TUBJND) ibLs TBL (= \050) show TBL (t/a) show TBL (\051) show TBL ( ln [ 1 + ) show TBL (b) show ipK TBL (\050) show TBIL (Y/Y) show (u) ibLs TBL (\051]) show x00e y00t moveto TBL ([1) show equ show x00t 100 add y00t ydel 1 mul sub moveto TBL (a=) show JNDA cvsshow4x x00t 0850 add y00t ydel 1 mul sub moveto TBL (t=) show JNDT cvsshow2x x00t 1650 add y00t ydel 1 mul sub moveto TBL (t/a=) show JNDT JNDA div cvsshow1x x00t 2500 add y00t ydel 1 mul sub moveto TBL (b=) show JNDB cvsshow3x x00t 3300 add y00t ydel 1 mul sub moveto TBIL (Y) show (u) ibLs TBL (=18) show x00e y00t ydel 1 mul sub moveto TBL ([2) show equ show %C06 %Cr= log[(Y/dY)/(Yu/dYu)] x00t 100 add y00t ydel 2 mul sub moveto TBL (\050) show TBIL (dY/Y) show TBL (\051 / \050) show TBIL (dY) show (u) ibLs TBL (/) show TBIL (Y) show (u) ibLs TBL (\051 ) show TBL ( = [\050) show TBL ( 1 + a) show ipK TBIL (Y) show TBL (\051 / ) show TBIL (Y) show TBL ( ] / [ \050) show TBL ( 1 + a) show ipK TBIL (Y) show (u) ibLs TBL (\051 / ) show TBIL (Y) show (u) ibLs TBL ( ]) show x00e y00t ydel 2 mul sub moveto TBL ([3) show equ show %C06 %Cr= log[(Y/dY)/(Yu/dYu)] x00t 100 add y00t ydel 3 mul sub moveto TBL (\050) show TBIL (dY/Y) show TBL (\051 / \050) show TBIL (dY) show (u) ibLs TBL (/) show TBIL (Y) show (u) ibLs TBL (\051 ) show TBL ( = [\050) show TBL ( 1 + b) show ipK TBIL (Y/Y) show (u) ibLs TBL (\051 / ) show TBIL (Y) show TBL ( ] / [ \050) show TBL ( 1 + b) show TBL (\051 / ) show TBIL (Y) show (u) ibLs TBL ( ]) show x00e y00t ydel 3 mul sub moveto TBL ([4) show equ show } bind def %END proz_TUBJND_5 /proz_TUBJND_7 {%BEG proz_TUBJND_7 x00t 100 add y00t moveto TBIL (L*) show (TUBJND) ibLs TBL (= \050) show TBL (t/a) show TBL (\051) show TBL ( ln [ 1 + ) show TBL (b) show ipK TBL (\050) show TBIL (Y/Y) show (u) ibLs TBL (\051]) show x00e y00t moveto TBL ([1) show equ show x00t 100 add y00t ydel 1 mul sub moveto TBL (a=) show JNDA cvsshow4x x00t 0850 add y00t ydel 1 mul sub moveto TBL (t=) show JNDT cvsshow2x x00t 1650 add y00t ydel 1 mul sub moveto TBL (t/a=) show JNDT JNDA div cvsshow1x x00t 2500 add y00t ydel 1 mul sub moveto TBL (b=) show JNDB cvsshow3x x00t 3300 add y00t ydel 1 mul sub moveto TBIL (Y) show (u) ibLs TBL (=18) show x00e y00t ydel 1 mul sub moveto TBL ([2) show equ show %Cr= (Y/dY)/(Yu/dYu) x00t 100 add y00t ydel 2 mul sub moveto TBL (\050) show TBIL (Y/dY) show TBL (\051 / \050) show TBIL (Y/dY) show TBL (\051) show (u) ibLs TBL ( = [ ) show TBIL (Y) show TBL ( / \050) show TBL ( 1 + a) show ipK TBIL (Y) show TBL (\051 ]) show TBL ( / [ ) show TBIL (Y) show (u) ibLs TBL ( / \050) show TBL ( 1 + a) show ipK TBIL (Y) show (u) ibLs TBL (\051 ]) show x00e y00t ydel 2 mul sub moveto TBL ([3) show equ show x00t 100 add y00t ydel 3 mul sub moveto TBL (\050) show TBIL (Y/dY) show TBL (\051 / \050) show TBIL (Y/dY) show TBL (\051) show (u) ibLs TBL ( = [ ) show TBIL (Y) show TBL ( / \050) show TBL ( 1 + b) show ipK TBIL (Y/Y) show (u) ibLs TBL (\051 ]) show TBL ( / [ ) show TBIL (Y) show (u) ibLs TBL ( / \050) show TBL ( 1 + b) show TBL (\051 ]) show x00e y00t ydel 3 mul sub moveto TBL ([4) show equ show } bind def %END proz_TUBJND_7 %521 END TUBJND_ENJ8 %523 BEG CIELAB_ENJ8 %525 END CIELAB_ENJ8 %*************************************************** %%EndProlog gsave /lanind 1 def /lantex [(G) (E) (S) (F) (I) (J) (M)] def /showde {0 lanind eq {show} {pop} ifelse} bind def /showen {1 lanind eq {show} {pop} ifelse} bind def /showes {2 lanind eq {show} {pop} ifelse} bind def /showfr {3 lanind eq {show} {pop} ifelse} bind def /showit {4 lanind eq {show} {pop} ifelse} bind def /showjp {5 lanind eq {show} {pop} ifelse} bind def /showea {1 lanind le {show} {pop} ifelse} bind def /lanindf where {pop /lanind1 lanindf def /lanind2 lanindf def /lanindd laninddf def} {/lanind1 0 def /lanind2 0 def} ifelse /colormf where {pop /colorm1 colormf def /colorm2 colormf def /colormd colormdf def} {/colorm1 0 def} ifelse /deintpf where {pop /deintp1 deintpf def /deintp2 deintpf def /deintpd deintpdf def} {/deintp1 0 def} ifelse /xcolorf where {pop /xcolor1 xcolorf def /xcolor2 xcolorf def /xcolord xcolordf def} {/xcolor1 3 def} ifelse /xchartf where {pop /xchart1 xchartf def /xchart2 xchartf def /xchartd xchartdf def /xchartm xchart2f xchart1f sub 1 add def} {/xchart1 0 def /xchartm 1 def} ifelse /xchart3f where {pop /xchart3 xchart3f def} {/xchart3 0 def} ifelse /xchart4f where {pop /xchart4 xchart4f def} {/xchart4 0 def} ifelse /pchartf where {pop /pchart1 pchartf def /pchart2 pchartf def /pchartd pchartdf def} {/pchart1 3 def} ifelse /colsepf where {pop /colsep1 colsepf def /colsep2 colsepf def /colsepd colsepdf def} {/colsep1 0 def} ifelse /pmetamf where {pop /pmetam1 pmetamf def /pmetam2 pmetamf def /pmetamd pmetamdf def} {/pmetam1 0 def} ifelse %either defaul values for xchart=0 or values for xchart=1 /lanind lanind1 def % /colorm colorm1 def % /deintp deintp1 def % /xcolor xcolor1 def % /xchart xchart1 def % /pchart pchart1 def % /colsep colsep1 def % /pmetam pmetam1 def % /ioute 0 def %0 1 01 {/ioute exch def %ioute=0,0 colorm 0 eq deintp 0 eq and {/Txx (d) def /Fxx (d) def} if %colorm=0, deintp=0 colorm 0 eq deintp 1 eq and {/Txx (e) def /Fxx (e) def} if %colorm=0, deintp=1 colorm 1 eq deintp 0 eq and {/Txx (dd) def /Fxx (d) def} if %colorm=1, deintp=0 colorm 1 eq deintp 1 eq and {/Txx (de) def /Fxx (e) def} if %colorm=1, deintp=1 xchart 0 eq {/Txx (-) def /Fxx (-) def} if %always independent of intended output 5 /Times-ISOL1 FS /cvishow {cvi 6 string cvs show} def %75 85 moveto %lanind cvishow (-) show %colorm cvishow %deintp cvishow %xcolor cvishow %xchart cvishow %pchart cvishow %colsep cvishow (-L) show pmetam cvishow gsave %XCHA01.PS END 4 /Times-ISOL1 FS %74 86 moveto (egw40-3r) show %xchart 0 eq {(R) show} % {deintp colorm 2 mul add cvishow} ifelse 72 90 translate 0.01 MM dup scale 20 setlinewidth %0 0 12250 08600 1.0 1.0 1.0 colrecfi %area white grey %0 0 12250 08600 0.0 0.0 0.0 colrecst %Rahmen Schwarz ifunc 0 eq {Yi_L*i_dYi_L_0} if ifunc 1 eq {Yi_L*i_dYi_C_0} if Yi_Yxyi /xchartl 7 def %1 2 7 {/xchartl exch def %xchartl=1,2,7 gsave % xchartl 1 eq { 100 04480 translate} if % xchartl 3 eq { 6150 04480 translate} if % xchartl 5 eq { 100 00220 translate} if % xchartl 7 eq { 6150 00220 translate} if ioute 0 eq {/xchartk xchartl 1 sub 2 idiv def} if ioute 1 eq {/xchartk xchartl 1 sub 2 idiv 4 add def} if 150 /Times-ISOL1 FS 0 setgray 50 -150 moveto (egw40-2a enj81-6n, egw40-4a_m) show %xchartk 1 add cvishow %(a) show %a %(_) show xchart 1 add cvishow /xwidth 6000 def /ywidth 4000 def 25 setlinewidth 1 setgray 0 0 moveto xwidth 0 rlineto 0 ywidth rlineto xwidth neg 0 rlineto closepath fill 0 0 moveto xwidth 0 rlineto 0 ywidth rlineto xwidth neg 0 rlineto closepath clip 0 setgray 0 0 moveto xwidth 0 rlineto 0 ywidth rlineto xwidth neg 0 rlineto closepath stroke 0 0 moveto xwidth 0 rlineto 0 ywidth rlineto xwidth neg 0 rlineto closepath clip 0 0 xwidth ywidth 0.0 0.0 0.0 colrecst %frame black tfn %tfw /xtr0 180 def /ytr0 280 def xtr0 ytr0 translate %********************************************************************* 50 setlinewidth %50 setlinewidth tfn 0 0 moveto 5000 0 rlineto stroke 0 0 moveto 0 3100 rlineto stroke 5000 100 add 0 moveto -100 50 rlineto 0 -100 rlineto closepath fill 0 3100 100 add moveto -50 -100 rlineto 100 0 rlineto closepath fill TBL %/tx [(-2) (-1) ( 0) ( 1) ( 2)] def %/txl [( ) (0,1) ( 1) ( 10) (100)] def /tx [(-2) (-1) ( 0) ( 1) ( 2) ( 3)] def /txl [(0,01) (0,1) ( 1) ( 10) (100) (1000)] def %!x-axis: 100 Einheiten = 0600 Skalen-Einheiten 0 1 5 {/i exch def /ixt {-150 i 1000 mul add} def /ixl { 000 i 1000 mul add} def ixt -230 moveto tx i get exec show tfb i 1 ge {ixt i 0 eq {100 sub} if 100 moveto txl i get exec show} if tfn ixl 60 moveto 0 -120 rlineto stroke } for %tfn %tfw %2300 100 moveto TBIL (Y) show (u) ibLs TBL (=18) show tfn /ixtt 5.0 1000 mul def /iytt -200 def ixtt 100 add iytt moveto TBL (log) show 20 0 rmoveto TBIL (Y) show TBL /iytt 050 def ixtt 300 add iytt moveto tfb TBIL (Y) show tfn %tfn %tfw % 3.6 log MULX mul 1000 add 0 moveto %90.0 log MULX mul 1000 add 0 lineto stroke %tfg %[100] 0 setdash % 3.6 log MULX mul 1000 add 0 moveto %90.0 log MULX mul 1000 add 0 lineto stroke [ ] 0 setdash tfn %!y-Achse: 100 S-Einheiten = 1000 Skalen-Einheiten /j1y 2 def %default /j2y 4 def ifunc 0 eq {%ifunc=0 TUBJND xchartl 0 eq {/j1y 4 def /j2y 6 def} if xchartl 2 eq {/j1y 1 def /j2y 4 def} if xchartl 4 eq {/j1y 0 def /j2y 2 def} if xchartl 6 eq {/j1y 4 def /j2y 6 def} if } if %ifunc=0 TUBJND ifunc 1 eq {%ifunc=0 CIELAB xchartl 0 eq {/j1y 3 def /j2y 5 def} if xchartl 2 eq {/j1y 2 def /j2y 4 def} if xchartl 4 eq {/j1y 1 def /j2y 4 def} if xchartl 6 eq {/j1y 3 def /j2y 4 def} if } if %ifunc=1 CIELAB TBL %yshift -1000 0 1000 2000 3000 4000 % 0 1 2 3 4 5 6 7 8 /ty [(-3)(-2)(-1) ( 0) ( 1) ( 2) ( 3) ( 4) ( 5)] def /tyl[(0,001)(0,01) (0,1) (1) (10) (100) (1000) (10000) (100000)] def ifunc 0 eq {%ifunc=0 TUBJND /ty0[(0)(500)(1000)(1500)] def /ty1[(0)(1)(2)(3)] def /ty2[(0,0)(0,2)(0,4)(0,6)] def /ty3[(0)(2)(4)(6)] def /ty4[(0,00)(0,01)(0,02)(0,03)] def /ty5[(0)(2)(4)(6)] def /ty6[(0)(100)(200)(300)] def /ty7[(0)(0,5)(1)(1,5)(2)] def } if %ifunc=0 TUBJND ifunc 1 eq {%ifunc=1 CIELAB /ty0[(0)(50)(100)(150)] def /ty1[(0)(1)(2)(3)] def /ty2[(0)(2)(4)(6)] def /ty3[(0)(2)(4)(6)] def /ty4[(0,0)(0,1)(0,2)(0,3)] def /ty5[(0)(2)(4)(6)] def /ty6[(0) (20) (40)(60) ] def /ty7[(0)(0,5)(1)(1,5)(2)] def } if %ifunc=1 CIELAB /j1y 0 def /j2y 4 def j1y 1 j2y {/j exch def /jyt {-50 j j1y sub 1000 mul 1.33 div add} def /jyl {-50 j j1y sub 1000 mul 1.33 div add} def tfb 100 jyt moveto xchartl 0 eq {ty0 j get show} if xchartl 1 eq {ty1 j get show} if xchartl 2 eq {ty2 j get show} if xchartl 3 eq {ty3 j get show} if xchartl 4 eq {ty4 j get show} if xchartl 5 eq {ty5 j get show} if xchartl 6 eq {ty6 j get show} if xchartl 7 eq {ty7 j get show} if tfn -60 jyl moveto 120 0 rlineto stroke } for %******************************************************** %BEG C01_C08 ******************************************** tfn %tfw /ytop 3775 def 050 xtr0 sub ytop ytr0 sub moveto xchartl 01 eq {%xchartl=01 YLIN 0 eq {TBK (log[) show} if TBIK (L*) show ifunc 0 eq {(r,TUBJND) ibKs} {(r,CIELAB) ibKs} ifelse YLIN 0 eq {TBK (]) show} if 2100 500 sub xtr0 sub ytop ytr0 sub 000 sub moveto TBK (relative lightness normalized to the) showen (relative Helligkeit normiert zur) showde 2100 500 sub xtr0 sub ytop ytr0 sub 270 sub moveto (background lightness ) showen (Umgebungshelligkeit ) showde TBIK (L*) show ifunc 0 eq {(u,TUBJND) ibKs} {(u,CIELAB) ibKs} ifelse } if %xchartl=01 xchartl 03 eq {%xchartl=03 YLIN 0 eq {TBK (log[) show} if SM (D) show 20 0 rmoveto TBIK (Y) show TBK (/) show SM (D) show TBIK (Y) show (u) ibLs YLIN 0 eq {TBK (]) show} if 1700 xtr0 sub ytop ytr0 sub 000 sub moveto SM (D) show 20 0 rmoveto TBIK (Y) show TBK ifunc 0 eq {(TUBJND) ibKs} {(CIELAB) ibKs} ifelse TBK ( tristimulus\255value difference) showen (\255Normfarbwertdifferenz) showde 1700 xtr0 sub ytop ytr0 sub 270 sub moveto (normalized to ) showen (normiert f\374r ) showde SM (D) show 20 0 rmoveto TBIK (Y) show ifunc 0 eq {(u,TUBJND) ibKs} {(u,CIELAB) ibKs} ifelse } if %xchartl=03 xchartl 05 eq {%xchartl=05 YLIN 0 eq {TBK (log[) show} if TBK (\050) show SM (D) show TBIK (Y/Y) show TBK (\051 / \050) show SM (D) show TBIK (Y) show TBK (/) show TBIK (Y) show TBK (\051) show (u) ibLs YLIN 0 eq {TBK (]) show} if 2700 xtr0 sub ytop ytr0 sub 000 sub moveto TBIK (Y) show TBK ifunc 0 eq {(TUBJND) ibKs} {(CIELAB) ibKs} ifelse TBK ( sensitivity) showen (\255Empfindlichkeit) showde 2700 xtr0 sub ytop ytr0 sub 270 sub moveto (normalized to [) showen (normiert f\374r [) showde SM (D) show TBIK (Y/Y) show TBK (]) show ifunc 0 eq {(u,TUBJND) ibKs} {(u,CIELAB) ibKs} ifelse } if %xchartl=05 xchartl 07 eq {%xchartl=07 YLIN 0 eq {TBK (log[) show} if TBK (\050) show TBIK (Y/) show SM (D) show TBIK (Y) show (\051 / \050) show TBIK (Y) show TBK (/) show SM (D) show TBIK (Y) show TBK (\051) show (u) ibLs YLIN 0 eq {TBK (]) show} if 2700 xtr0 sub ytop ytr0 sub 000 sub moveto TBIK (Y) show TBK ifunc 0 eq {(TUBJND) ibKs} {(CIELAB) ibKs} ifelse TBK ( contrast) showen (\255Kontrast) showde 2700 xtr0 sub ytop ytr0 sub 270 sub moveto (normalized to [) showen (normiert f\374r [) showde TBIK (Y/) show SM (D) show TBIK (Y) show TBK (]) show ifunc 0 eq {(u,TUBJND) ibKs} {(u,CIELAB) ibKs} ifelse } if %xchartl=07 tfn %tfw /y0del 100 def 50 setlinewidth %********************************************************************* /C02_ALOG_L*DL*u {%BEG C02_ALOG_L*DTu* /Fx0log -2.0 def /Fy0lin 1.0 def /xshift 1000 def /xtr 1000 xshift add def /ytr 0000 def /iys 1000 def /MULY iys 1.5 mul def %scale=1,5 /ytrl ytr 1000 div def %lin shift xtr ytr translate %new cero point %0 not available 1 1 100 {/i exch def %i=1,100 Yx0i i Y0ui i get put } for %i=1,100 Y_curve ioutc 1 eq {cero_line} if /iu04 3.6 log 0.18 log sub 0.05 div cvi def /iu18 18 log 0.18 log sub 0.05 div cvi def /iu90 90 log 0.18 log sub 0.05 div cvi def /Y004DYu L*i iu04 get L*u div def /Y018DYu L*i iu18 get L*u div def /Y090DYu L*i iu90 get L*u div def /Y001dYu L*i 1 get L*u div def /Y100DYu L*i 100 get L*u div def /xl0 0.01 log MULX mul def /xl1 3.60 log MULX mul def /xlm 18.00 log MULX mul def /xl2 90.00 log MULX mul def /yl0 0 MULY mul def /yl1 Y004DYu MULY mul def /ylm Y018DYu MULY mul def /yl2 Y090DYu MULY mul def tfz %tfz [100] 0 setdash xl0 ylm moveto xlm ylm lineto xlm yl0 lineto stroke tfg xl1 yl0 moveto xl2 yl0 lineto stroke xl0 yl1 moveto xl0 yl2 lineto stroke %xl1 yl1 moveto 0 500 rlineto stroke %special tfr /xl3 6000 log MULX mul def xl1 yl1 moveto xl3 yl1 lineto stroke [ ] 0 setdash xl3 1100 sub yl1 50 add moveto TBL (N threshold) showea (N\255Schwelle) showde %xl2 yl2 moveto xl3 yl2 lineto stroke [ ] 0 setdash %xl3 1100 sub yl2 200 sub moveto %TBL %(W threshold) showea %(W\255Schwelle) showde ioute 0 eq {%ioute=0 tfg xl1 yl0 moveto xl1 yl1 lineto xl0 yl1 lineto stroke xl2 yl0 moveto xl2 yl2 lineto xl0 yl2 lineto stroke tfn %xl1 650 sub yl0 600 add moveto TBIL (Y) show (N) ibLs TBL (=3,6) show %xl2 50 add yl0 600 add moveto TBIL (Y) show (W) ibLs TBL (=90) show } if %ioute=0 tfn xlm 50 add yl0 100 add moveto TBIL (Y) show (u) ibLs TBL (=18) show %C02 /x0 xl0 300 add def %C02 tfn x0 ylm 120 add moveto TBIL (L*/L*) show (u) ibLs TBL (=1) show /FYiuP1 L*i iu 1 add get L*i iu get div def /FYiu 1 def TBIL (, m) show (u) ibLs TBL (=) show FYiuP1 FYiu sub Yi iu 1 add get log Yi iu get log sub div cvsshow2x x0 ylm 200 sub moveto TBIL (L*) show (u) ibLs TBL (=) show L*u cvishow TBIL (, Y) show (u) ibLs TBL (=) show Yu cvishow xtr neg ytr neg translate %old cero point /y0 2900 def /x1 800 def /y1 2700 def /xdel 800 def /ydel 300 def ioute 0 eq {%ioute=0 tfr %C02 %L*= (t/a) * ln (1 + a Y) /x00t 0300 def %C02 /x00e 5400 def /y00t 2900 def %C02 /ydel 0270 def /equ (b]) def ifunc 0 eq {proz_TUBJND_1} if ifunc 1 eq {proz_CIELAB_1} if } if %ioute=0 tfn %tfw /x0 4300 400 add def /y0 yappi 1 get 100 add def x0 y0 moveto 1000 0 rlineto stroke tfg [100] 0 setdash x0 y0 moveto 1000 0 rlineto stroke [ ] 0 setdash tfn %tfw x0 y0 0.8 ydel mul sub moveto TBL (application) showen (Anwendungs\255) showde x0 y0 1.5 ydel mul sub moveto TBL (range) showen (bereich) showde } def %END C02_ALOG_L*DL*u %********************************************************************* /C04_ALOG_DLn {%BEG C04_ALOG_DLn /Fx0log -2.0 def /Fy0lin 1.0 def /xshift 1000 def /xtr 1000 xshift add def /ytr 0000 def /iys 1000 def /MULY iys 2.0 div def %scale=2.0 /ytrl ytr 1000 div def %lin shift xtr ytr translate %new cero point %0 not available 1 1 100 {/i exch def %i=1,100 Yx0i i Y1ui i get put } for %i=1,100 Y_curve ioutc 1 eq {cero_line} if /iu04 3.6 log 0.18 log sub 0.05 div cvi def /iu18 18 log 0.18 log sub 0.05 div cvi def /iu90 90 log 0.18 log sub 0.05 div cvi def /Y004DYu dYi iu04 get dYu div def /Y018DYu dYi iu18 get dYu div def /Y090DYu dYi iu90 get dYu div def /Y001dYu dYi 1 get dYu div def /Y100DYu dYi 100 get dYu div def /xl0 0.01 log MULX mul def /xl1 3.60 log MULX mul def /xlm 18.00 log MULX mul def /xl2 90.00 log MULX mul def /yl0 0 MULY mul def /yl1 Y004DYu MULY mul def /ylm Y018DYu MULY mul def /yl2 Y090DYu MULY mul def tfz %tfz [100] 0 setdash xl0 ylm moveto xlm ylm lineto xlm yl0 lineto stroke tfg xl1 yl0 moveto xl2 yl0 lineto stroke xl0 yl1 moveto xl0 yl2 lineto stroke tfr /xl3 6000 log MULX mul def xl1 yl1 moveto xl3 yl1 lineto stroke [ ] 0 setdash xl3 1200 sub yl1 50 add moveto TBL (N threshold) showea (N\255Schwelle) showde [100] 0 setdash xl1 yl2 moveto xl3 yl2 lineto stroke [ ] 0 setdash xl3 1000 sub yl2 200 sub moveto TBL (W threshold) showea (W\255Schwelle) showde ioute 0 eq {%ioute=0 tfg xl1 yl0 moveto xl1 yl1 lineto xl0 yl1 lineto stroke xl2 yl0 moveto xl2 yl2 lineto xl0 yl2 lineto stroke tfn xl1 50 add yl0 700 add moveto TBIL (Y) show (N) ibLs TBL (=3,6) show xl2 50 add yl0 700 add moveto TBIL (Y) show (W) ibLs TBL (=90) show } if %ioute=0 tfn xlm 50 add yl0 300 add 250 sub moveto TBIL (Y) show (u) ibLs TBL (=18) show %C04 /x0 xl0 300 add def %C04 tfn x0 ylm 120 add moveto TBIL ((dY)) show TBL (/) show TBIL ((dY)) show (u) ibLs TBL (=1) show /FYiuP1 dYi iu 1 add get dYi iu 1 add get div def /FYiu 1 def TBIL (, m) show (u) ibLs TBL (=) show FYiuP1 FYiu sub Yi iu 1 add get log Yi iu get log sub div cvsshow2x x0 ylm 200 sub moveto TBIL (Y) show (u) ibLs TBL (=) show Yu cvishow TBIL (, dY) show (u) ibLs TBL (=) show dYu cvsshow2x TBIL (, dY) show (u) ibLs TBL (/) show TBIL (Y) show (u) ibLs TBL (=) show dYu Yu div cvsshow3x xtr neg ytr neg translate %old cero point tfn %tfw /y0 2400 y0del sub def /ydel 300 def %C04 /x01t 0300 def /x02t 0900 def /x03t 2300 def /x04t 3300 def ioute 0 eq {%ioute=0 tfr %C04 %L*= (t/a) * ln (1 + a Y) /x00t 0300 def %C04 /x00e 5400 def /y00t 2950 def %C04 /ydel 0270 def /equ (d]) def ifunc 0 eq {proz_TUBJND_3} if ifunc 1 eq {proz_CIELAB_3} if } if %ioute=0 tfn %tfw /x0 4300 def /y0 yappi 3 get def x0 y0 moveto 1000 0 rlineto stroke tfg [100] 0 setdash x0 y0 moveto 1000 0 rlineto stroke [ ] 0 setdash tfn %tfw x0 y0 0.8 ydel mul sub moveto TBL (application) showen (Anwendungs\255) showde x0 y0 1.5 ydel mul sub moveto TBL (range) showen (bereich) showde } def %END C04_ALOG_DLn %********************************************************************* /C06_ALOG_DL_Ln {%BEG C06_ALOG_DL_Ln /Fx0log -2.0 def /Fy0lin 1.0 def /xshift 1000 def /xtr 1000 xshift add def /ytr 0000 def /iys 1000 def /MULY iys 2.0 div def %scale=2.0 /ytrl ytr 1000 div def %lin shift xtr ytr translate %new cero point %0 not available 1 1 100 {/i exch def %i=1,100 Yx0i i Y2ui i get put } for %i=1,100 Y_curve ioutc 1 eq {cero_line} if /iu04 3.6 log 0.18 log sub 0.05 div cvi def /iu18 18 log 0.18 log sub 0.05 div cvi def /iu90 90 log 0.18 log sub 0.05 div cvi def /Y004DYu dYi iu04 get Yi iu04 get div dYu Yu div div def /Y018DYu dYi iu18 get Yi iu18 get div dYu Yu div div def /Y090DYu dYi iu90 get Yi iu90 get div dYu Yu div div def /Y001dYu dYi 1 get Yi 1 get div dYu Yu div div def /Y100DYu dYi 100 get Yi 100 get div dYu Yu div div def /xl0 0.01 log MULX mul def /xl1 3.60 log MULX mul def /xlm 18.00 log MULX mul def /xl2 90.00 log MULX mul def /yl0 0 MULY mul def /yl1 Y004DYu MULY mul def /ylm Y018DYu MULY mul def /yl2 Y090DYu MULY mul def tfz %tfz [100] 0 setdash xl0 ylm moveto xlm ylm lineto xlm yl0 lineto stroke tfg xl1 yl0 moveto xl2 yl0 lineto stroke xl0 yl1 moveto xl0 yl2 lineto stroke tfr /xl3 6000 log MULX mul def xl1 yl1 moveto xl3 yl1 lineto stroke [ ] 0 setdash xl3 1200 sub yl1 50 add moveto TBL (N threshold) showea (N\255Schwelle) showde ioute 0 eq {%ioute=0 tfg xl1 yl0 moveto xl1 yl1 lineto xl0 yl1 lineto stroke xl2 yl0 moveto xl2 yl2 lineto xl0 yl2 lineto stroke tfn xl1 50 add yl0 700 add moveto TBIL (Y) show (N) ibLs TBL (=3,6) show xl2 50 add yl0 700 add moveto TBIL (Y) show (W) ibLs TBL (=90) show } if %ioute=0 tfn xlm 50 add yl0 300 add 250 sub moveto TBIL (Y) show (u) ibLs TBL (=18) show %C06 /x0 xl0 300 add def %C06 tfn x0 ylm 120 add moveto TBIL ((dY/Y)) show TBL (/) show TBIL ((dY/Y)) show (u) ibLs TBL (=1) show /FYiuP1 dYi iu 1 add get Yi iu 1 add get div dYi iu get Yi iu get div div def /FYiu 1 def TBIL (, m) show (u) ibLs TBL (=) show FYiuP1 FYiu sub Yi iu 1 add get log Yi iu get log sub div cvsshow2x x0 ylm 200 sub moveto TBIL (Y) show (u) ibLs TBL (=) show Yu cvishow TBIL (, dY) show (u) ibLs TBL (=) show dYu cvsshow2x TBIL (, dY) show (u) ibLs TBL (/) show TBIL (Y) show (u) ibLs TBL (=) show dYu Yu div cvsshow3x xtr neg ytr neg translate %old cero point /y0 2400 y0del sub def /ydel 300 def %C06 /x01t 0200 def /x02t 0900 def /x03t 2300 def /x04t 3300 def ioute 0 eq {%ioute=0 tfr %C06 %L*= (t/a) * ln (1 + a Y) /x00t 0300 def %C06 /x00e 5400 def /y00t 2900 def %C06 /ydel 0270 def /equ (f]) def ifunc 0 eq {proz_TUBJND_5} if ifunc 1 eq {proz_CIELAB_5} if } if %ioute=0 tfn %tfw /x0 4300 def /y0 yappi 5 get def x0 y0 moveto 1000 0 rlineto stroke tfg [100] 0 setdash x0 y0 moveto 1000 0 rlineto stroke [ ] 0 setdash tfn %tfw x0 y0 0.8 ydel mul sub moveto TBL (application) showen (Anwendungs\255) showde x0 y0 1.5 ydel mul sub moveto TBL (range) showen (bereich) showde } def %END C06_ALOG_DL_Ln %********************************************************************* /C08_ALOG_L_DLn {%BEG C08_ALOG_L_DLn /Fx0log -2.0 def /Fy0lin 1.0 def /xshift 1000 def /xtr 1000 xshift add def /ytr 0000 def /iys 1000 def /MULY iys 1.5 mul def %scale=1,5 /ytrl ytr 1000 div def %lin shift xtr ytr translate %new cero point 1 1 100 {/i exch def %i=1,100 Yx0i i Y3ui i get put } for %i=1,100 Y_curve ioutc 1 eq {cero_line} if /iu04 3.6 log 0.18 log sub 0.05 div cvi def /iu18 18 log 0.18 log sub 0.05 div cvi def /iu90 90 log 0.18 log sub 0.05 div cvi def /Y004DYu Yi iu04 get dYi iu04 get div Yu dYu div div def /Y018DYu Yi iu18 get dYi iu18 get div Yu dYu div div def /Y090DYu Yi iu90 get dYi iu90 get div Yu dYu div div def /Y001dYu Yi 1 get dYi 1 get div Yu dYu div div def /Y100DYu Yi 100 get dYi 100 get div Yu dYu div div def /xl0 0.01 log MULX mul def /xl1 3.60 log MULX mul def /xlm 18.00 log MULX mul def /xl2 90.00 log MULX mul def /yl0 0 MULY mul def /yl1 Y004DYu MULY mul def /ylm Y018DYu MULY mul def /yl2 Y090DYu MULY mul def tfz %tfz [100] 0 setdash xl0 ylm moveto xlm ylm lineto xlm yl0 lineto stroke tfg xl1 yl0 moveto xl2 yl0 lineto stroke xl0 yl1 moveto xl0 yl2 lineto stroke tfr /xl3 6000 log MULX mul def xl1 yl1 moveto xl3 yl1 lineto stroke [ ] 0 setdash xl3 1200 sub yl1 50 add moveto TBL (N threshold) showea (N\255Schwelle) showde ioute 0 eq {%ioute=0 tfg xl1 yl0 moveto xl1 yl1 lineto xl0 yl1 lineto stroke xl2 yl0 moveto xl2 yl2 lineto xl0 yl2 lineto stroke tfn xl1 50 add yl0 700 add moveto TBIL (Y) show (N) ibLs TBL (=3,6) show xl2 50 add yl0 700 add moveto TBIL (Y) show (W) ibLs TBL (=90) show } if %ioute=0 tfn xlm 50 add yl0 300 add 250 sub moveto TBIL (Y) show (u) ibLs TBL (=18) show %C08 /x0 xl0 500 add def %C08 tfn x0 ylm 120 add moveto TBIL ((Y/dY)) show TBL (/) show TBIL ((Y/dY)) show (u) ibLs TBL (=1) show /FYiuP1 Yi iu 1 add get dYi iu 1 add get div Yi iu get dYi iu get div div def /FYiu 1 def TBIL (, m) show (u) ibLs TBL (=) show FYiuP1 FYiu sub Yi iu 1 add get log Yi iu get log sub div cvsshow2x x0 ylm 200 sub moveto TBIL (L*) show (u) ibLs %ifunc 0 eq {(TUBJND,) ibLs} if (u) ibLs TBL (=) show L*u cvishow %TBIL (, Y) show (u) ibLs %TBL (=) show Yu cvishow TBIL (, dY) show (u) ibLs TBL (=) show dYu cvsshow2x TBIL (, Y) show (u) ibLs TBL (/) show TBIL (dY) show (u) ibLs TBL (=) show Yu dYu div cvishow xtr neg ytr neg translate %old cero point %C08 /y0 2400 y0del sub def /ydel 300 def ioute 0 eq {%ioute=0 tfr %C08 %L*= (t/a) * ln (1 + a Y) /x00t 0300 def %C08 /x00e 5400 def /y00t 2900 def %C08 /ydel 0270 def /equ (h]) def ifunc 0 eq {proz_TUBJND_7} if ifunc 1 eq {proz_CIELAB_7} if } if %ioute=0 tfn %tfw /x0 4300 def /y0 yappi 7 get 220 add def x0 y0 moveto 1000 0 rlineto stroke tfg [100] 0 setdash x0 y0 moveto 1000 0 rlineto stroke [ ] 0 setdash tfn %tfw x0 y0 0.8 ydel mul sub moveto TBL (application) showen (Anwendungs\255) showde x0 y0 1.5 ydel mul sub moveto TBL (range) showen (bereich) showde } def %END C08_ALOG_L_DL %**************************************************************** %additional blue text /ifbtx 0 def ifbtx 1 eq {%ifbtx=1 tfb /xtfb 40 def xchartl 01 eq {100 3200 xtfb sub moveto TBIL (L*/L*) if (u) ibLs } if xchartl 03 eq {100 3200 xtfb sub moveto SL (D) show TBIL (Y) show TBL (/) show SL (D) show TBIL (Y) show (u) ibLs } if xchartl 05 eq {100 3200 xtfb sub moveto TBIL (S) show (r) ibLs TBL (/) show TBIL (S) show (ru) ibLs TBL (=\050) show SL (D) show TBIL (Y/Y) show TBL (\051/\050) show SL (D) show TBIL (Y) show (u) ibLs TBIL (/Y) show (u) ibLs TBL (\051) show } if xchartl 07 eq {100 3200 xtfb sub moveto TBIL (C) show (r) ibLs TBL (/) show TBIL (C) show (ru) ibLs TBL (=\050) show TBIL (Y/) show SL (D) show TBIL (Y) show TBL (\051/\050) show TBIL (Y) show (u) ibLs TBL (/) show SL (D) show TBIL (Y) show (u) ibLs TBL (\051) show } if } if %ifbtx=1 tfn %************************************************************** % 0 1 2 3 4 5 6 7 ifunc 0 eq {/yappi [1200 1200 1000 1000 1800 1450 1300 0550] def} if ifunc 1 eq {/yappi [1200 1200 1000 1000 1600 1450 1300 0550] def} if xchartl 01 eq {C02_ALOG_L*DL*u} if xchartl 03 eq {C04_ALOG_DLn} if xchartl 05 eq {C06_ALOG_DL_Ln} if xchartl 07 eq {C08_ALOG_L_DLn} if %END C01_C08********************************************** %******************************************************** xtr0 neg ytr0 neg translate %************************************************************** %special space for 'xm03'PROZ0.COM 2x before/after xchartl % xchartl 1 eq { 100 neg 04480 neg translate} if % xchartl 3 eq { 6150 neg 04480 neg translate} if % xchartl 5 eq { 100 neg 00220 neg translate} if % xchartl 7 eq { 6150 neg 00220 neg translate} if grestore %} for %xchartl=1,2,7 showpage grestore %} for %ioute=0,1 %%Trailer %line 249 %%EndDocument EndEPSF grestore gsave BeginEPSF /xc1 16 def /yc1 12 def /xt 1 def xchart 1 eq {/xt 1 def} if 28 SHSl sub MM 020 STAl add MM translate 10 /Times-ISOL1 FS 53 MM 1 MM moveto ( ) show 1 1 scale -77 -91 translate %%BeginDocument: Bild 17 %!PS-Adobe-3.0 EPSF-3.0 http://farbe.li.tu-berlin.de/egw4/egw40-1a enf80-2a %%BoundingBox: 70 85 244 206 %START PDFDE011.EPS /pdfmark01 where {pop} {userdict /pdfmark01 /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: http://farbe.li.tu-berlin.de/egw4/egw4.htm) /Author (compare K. Richter "Computergrafik ...": ISBN 3-8007-1775-1) /Subject (goto: http://farbe.li.tu-berlin.de or http://color.li.tu-berlin.de) /Keywords (image reproduction, colour devices) /Creator (klaus.richter@mac.com) /CreationDate (D:2023100112000) /ModDate (D:20231001112000) /DOCINFO pdfmark01 [ /View [ /FitB ] /DOCVIEW pdfmark01 %END PDFDE011 /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 /FS {findfont exch scalefont setfont} bind def /MM {72 25.4 div mul} def /str {8 string } bind def /TS {160 /Times-ISOL1 FS} bind def /TL {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 /TIS {160 /TimesI-ISOL1 FS} bind def /TIL {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 /TBS {160 /TimesB-ISOL1 FS} bind def /TBL {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 /TBIS {160 /TimesBI-ISOL1 FS} bind def /TBIL {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 /SS {160 /Symbol FS} bind def /SL {200 1 sub /Symbol FS} bind def /SK {250 1 sub /Symbol FS} bind def /SM {300 1 sub /Symbol FS} bind def /SG {350 1 sub /Symbol FS} bind def /CS {160 /Courier-ISOL1 FS} bind def /CL {200 /Courier-ISOL1 FS} bind def /CK {250 /Courier-ISOL1 FS} bind def /CM {300 /Courier-ISOL1 FS} bind def /CG {350 /Courier-ISOL1 FS} bind def /CBS {160 /CourierB-ISOL1 FS} bind def /CBL {200 /CourierB-ISOL1 FS} bind def /CBK {250 /CourierB-ISOL1 FS} bind def /CBM {300 /CourierB-ISOL1 FS} bind def /CBG {350 /CourierB-ISOL1 FS} bind def /nGs {350 /Times-ISOL1 FS show} bind def /kGs {350 /TimesI-ISOL1 FS show} bind def /bGs {350 /TimesB-ISOL1 FS show} bind def /jGs {350 /TimesBI-ISOL1 FS show} bind def /sGs {350 /Symbol FS show} bind def /iGs {300 /Times-ISOL1 FS 0 -90 rmoveto show 0 90 rmoveto} bind def /eGs {300 /Times-ISOL1 FS 0 200 rmoveto show 0 -200 rmoveto} bind def /ibGb {300 /TimesB-ISOL1 FS 0 -90 rmoveto show 0 90 rmoveto} bind def /ebGb {300 /TimesB-ISOL1 FS 0 200 rmoveto show 0 -200 rmoveto} bind def /ipG {300 /Times-ISOL1 FS 50 50 rmoveto (\267) show 50 -50 rmoveto} bind def %20% kleiner /nMs {300 /Times-ISOL1 FS show TM} bind def /kM2 {300 /TimesI-ISOL1 FS show TM} bind def /bM2 {300 /TimesB-ISOL1 FS show TM} bind def /jM2 {300 /TimesBI-ISOL1 FS show TM} bind def /sMs {300 /Symbol FS show TM} bind def /iMs {250 /Times-ISOL1 FS 0 -70 rmoveto show 0 70 rmoveto TM} bind def /eMs {250 /Times-ISOL1 FS 0 160 rmoveto show 0 -160 rmoveto TM} bind def /ibMs {250 /TimesB-ISOL1 FS 0 -70 rmoveto show 0 70 rmoveto TM} bind def /ebMs {250 /TimesB-ISOL1 FS 0 160 rmoveto show 0 -160 rmoveto TM} bind def /ipM {250 /Times-ISOL1 FS 40 40 rmoveto (\267) show 40 -40 rmoveto TM} bind def %40% kleiner /nKs {250 /Times-ISOL1 FS show TK} bind def /kKs {250 /TimesI-ISOL1 FS show TK} bind def /bKs {250 /TimesB-ISOL1 FS show TK} bind def /jKs {250 /TimesBI-ISOL1 FS show TK} bind def /sKs {250 /Symbol FS show TK} bind def /iKs {200 /Times-ISOL1 FS 0 -60 rmoveto show 0 60 rmoveto TK} bind def /eKs {200 /Times-ISOL1 FS 0 130 rmoveto show 0 -130 rmoveto TK} bind def /ibKs {200 /TimesB-ISOL1 FS 0 -60 rmoveto show 0 60 rmoveto TK} bind def /ebKs {200 /TimesB-ISOL1 FS 0 130 rmoveto show 0 -130 rmoveto TK} bind def /ipK {200 /Times-ISOL1 FS 30 30 rmoveto (\267) show 30 -30 rmoveto TK} bind def %60% kleiner /nLs {200 /Times-ISOL1 FS show TS} bind def /kLs {200 /TimesI-ISOL1 FS show TS} bind def /bLs {200 /TimesB-ISOL1 FS show TS} bind def /jLs {200 /TimesBI-ISOL1 FS show TS} bind def /sLs {200 /Symbol FS show TS} bind def /iLs {160 /Times-ISOL1 FS 0 -50 rmoveto show 0 50 rmoveto TS} bind def /eLs {160 /Times-ISOL1 FS 0 110 rmoveto show 0 -110 rmoveto TS} bind def /ibLs {160 /TimesB-ISOL1 FS 0 -50 rmoveto show 0 50 rmoveto TS} bind def /ebLs {160 /TimesB-ISOL1 FS 0 110 rmoveto show 0 -110 rmoveto TS} bind def /ipL {160 /Times-ISOL1 FS 25 25 rmoveto (\267) show 25 -25 rmoveto TS} bind def %XCHA02.PS BEG /rec %x, y width heigth {/heigth exch def /width exch def moveto width 0 rlineto 0 heigth rlineto width neg 0 rlineto closepath } bind def /colrecfi %x y width heigth c m y k {setrgbcolor rec fill} bind def /colrecst %x y width heigth c m y k {setrgbcolor rec stroke} bind def /rem %x, y width heigth {/heigth exch 0.5 mul def /width exch 0.5 mul def /yleftb exch heigth 0.5 mul add def /xleftb exch width 0.5 mul add def xleftb yleftb moveto width 0 rlineto 0 heigth rlineto width neg 0 rlineto closepath } bind def /colremfi %x y width heigth c m y k {setrgbcolor rem fill} bind def /colremst %x y width heigth c m y k {setrgbcolor rem stroke} bind def /tzr {1 0 0} bind def %Reproduktionsfarben /tzg {0 1 0} bind def /tzb {0 0 1} bind def /tzc {0 1 1} bind def /tzm {1 0 1} bind def /tzy {1 1 0} bind def /tzn {0.00} bind def %Graureihe /tzd {0.25} bind def /tzz {0.50} bind def /tzh {0.75} bind def /tzw {1.00} bind def /tfr {1 0 0 setrgbcolor} bind def %Reproduktionsfarben /tfg {0 1 0 setrgbcolor} bind def /tfb {0 0 1 setrgbcolor} bind def /tfc {0 1 1 setrgbcolor} bind def /tfm {1 0 1 setrgbcolor} bind def /tfy {1 1 0 setrgbcolor} bind def /tfrn {0.5 0.0 0.0 setrgbcolor} bind def %Reproduktionsfarben /tfgn {0.0 0.5 0.0 setrgbcolor} bind def /tfbn {0.0 0.0 0.5 setrgbcolor} bind def /tfcn {0.0 0.5 0.5 setrgbcolor} bind def /tfmn {0.5 0.0 0.5 setrgbcolor} bind def /tfyn {0.5 0.5 0.0 setrgbcolor} bind def /tfn {0.00 setgray} bind def %Graureihe /tfd {0.25 setgray} bind def /tfz {0.50 setgray} bind def /tfh {0.75 setgray} bind def /tfw {1.00 setgray} bind def %XCHA02.PS BEG /YnW 100 def %CIELAB&TUBJND /Yi 401 array def %101(W)+3*101(R,G,B) /dYi 401 array def /L*i 401 array def /X00i 401 array def %log(Xi) /Y00i 401 array def %L*i, log(L*i) /Y0ui 401 array def %L*i/Lu, log(L*i/L*u) /Y0xi 401 array def %one of eight above %without Yref /X01k 009 array def %x of 9 steps /Y01k 009 array def %L*k, log(L*k) range 0..8 %with Yref /X02k 009 array def %x of 9 steps /Y02k 009 array def %L*k, log(L*k) range 0..8 %with Yref and linearisation /X03k 009 array def %x of 9 steps /Y03k 009 array def %L*k, log(L*k) range 0..8 %with exponent relative /X03ke 009 array def %x of 9 steps /Y03ke 009 array def %L*k, log(L*k) range 0..8 %with exponent relative transfer /X03kr 009 array def %x of 9 steps /Y03kr 009 array def %L*k, log(L*k) range 0..8 /Y0xki 009 array def /delki 009 array def %************************************************* /proz_DECODY_L* {%BEG proz_DECODY_L* /YYn Y Yn div def /YYnE3 YYn 0.3333 exp def /DE 24 116 div def /DE3 DE 3 exp def YYn DE3 gt {/FYYn YYnE3 def} {/FYYn 841 108 div YYn mul 16 116 div add def} ifelse /L* FYYn 116 mul 16 sub def } bind def %END proz_DECODY_L* %************************************************* /proz_DECODL*_Y {%BEG proz_DECODL*_Y /FYYn L* 16 add 116 div def /DE 24 116 div def L* 8 gt {/Y FYYn 3 exp Yn mul def} {/Y FYYn 16 116 div sub 108 841 div mul Yn mul def } ifelse } bind def %END proz_DECODL*_Y %************************************************ /proz_Yi_dYi_L*i_C_0 {%BEG proz_Yi_dYi_L*i_C_0 C=CIELAB /Yn YnW def i01 1 i02 {/i exch def %i=i01,102 Yi i i put /Y Yi i get def proz_DECODY_L* L*i i L* put dYi i Yi i get YnW div e20D30 exp c30 mul 100 mul 116 div put } for %i=i01,i02 /dYu Yu YnW div e20D30 exp c30 mul 100 mul 116 div def } bind def %END proz_Yi_dYi_L*i_C_0 C=CIELAB %*************************************************** /proz_Yi_dYi_Yxyi_C_0 {%BEG proz_Yi_dYi_Yxyi_C_0 definiton: Yi, L*i %i=0 not available i01 1 i02 {/i exch def %i=i01,i02 X00i i i put ychart 0 eq {%ychart=0 Y00i i L*i i get put Y0ui i L*i i get L*u div put } if %ychart=0 ychart 1 eq {%ychart=1 Y00i i dYi i get put Y0ui i dYi i get dYu div put } if %ychart=1 ychart 2 eq {%ychart=2 Y00i i dYi i get Yi i get div put Y0ui i dYi i get Yi i get div dYu Yu div div put } if %ychart=2 ychart 3 eq {%ychart=3 Y00i i Yi i get dYi i get div put Y0ui i Yi i get dYi i get div Yu dYu div div put } if %ychart=3 } for %i=i01,i02 } bind def %END proz_Yi_dYi_Yxyi_C_0 %********************************************* /proz_9step_CIELAB {%BEG proz_9step_CIELAB %N of Y=3,6 /YN0 3.6 def /Y YN0 def proz_DECODY_L* /L*N0 L* def /YW0 90 def /Y YW0 def proz_DECODY_L* /L*W0 L* def /L*ran L*W0 L*N0 sub def /L*del L*ran 8 div def %-1800 2250 moveto %L*N0 cvsshow2 (, ) show %L*W0 cvsshow2 (, ) show %L*ran cvsshow2 (, ) show %L*del cvsshow2 (, ) show %******************************************** ychart 0 eq {%ychart=0 xchartl 1 eq {%xchartl=1 0 1 8 {/k exch def %k=0,8 /L* L*N0 L*del k mul add def Y01k k L* put proz_DECODL*_Y /Xout Y def X01k k Xout put } for %k=0,8 newpath tfg 0 1 8 {/k exch def %k=0,8 X01k k get XLIN 0 eq {log} if MULX mul Y01k k get L*u div MULY2 mul 040 0 360 arc fill newpath } for %k=0,8 tfn } if %xchartl=1 %************************************************* xchartl 2 eq {%xchartl=2 /Yref 90.0 def 0 1 8 {/k exch def %k=0,8 /L* L*N0 L*del k mul add def Y01k k L* put proz_DECODL*_Y /Xout Y def X01k k Xout put % 0500 2500 250 k mul sub moveto % Y01k k get cvsshow2 (, ) show % X01k k get cvsshow2 (, ) show } for %k=0,8 /Yu2 X01k 4 get def 0 1 8 {/k exch def %k=0,8 /L* L*N0 L*del k mul add def Y01k k L* put proz_DECODL*_Y /Xout Y def X01k k Xout put X02k k X01k k get Yref add Yu2 Yref add div Yu2 mul put /Y X02k k get def proz_DECODY_L* /Yout L* def Y02k k Yout put % -1800 2000 250 k mul sub moveto % X02k k get cvsshow2 (, ) show % Y02k k get cvsshow2 (, ) show % Y02k k get L*u div cvsshow2 (, ) show } for %k=0,8 newpath tfr 0 2 8 {/k exch def %k=0,8 X02k k get XLIN 0 eq {log} if MULX mul Y02k k get L*u div MULY2 mul 040 0 360 arc fill newpath } for %k=0,8 tfn /xl1 X02k 0 get XLIN 0 eq {log} if MULX mul def /yl1 Y02k 0 get L*u div MULY2 mul def /xl2 X02k 8 get XLIN 0 eq {log} if MULX mul def /yl2 Y02k 8 get L*u div MULY2 mul def [100] 0 setdash tfb XLIN 0 eq {/xl3 3000 log MULX mul def} {/xl3 0200 MULX mul 300 sub def} ifelse xl1 yl1 moveto xl3 yl1 lineto stroke xl2 yl2 moveto xl3 yl2 lineto stroke [ ] 0 setdash TBL xl3 1200 sub yl1 50 add moveto (device black) showea (Ger\344teschwarz) showde xl3 1200 sub yl2 50 add moveto (device white) showea (Ger\344tewei\337) showde } if %xchartl=2 %************************************************* xchartl 3 eq {%xchartl=3 /Yref 90.0 def 0 1 8 {/k exch def %k=0,8 /L* L*N0 L*del k mul add def Y01k k L* put proz_DECODL*_Y /Xout Y def X01k k Xout put % 0500 2500 250 k mul sub moveto % Y01k k get cvsshow2 (, ) show % X01k k get cvsshow2 (, ) show } for %k=0,8 /Yu2 X01k 4 get def 0 1 8 {/k exch def %k=0,8 /L* L*N0 L*del k mul add def Y01k k L* put proz_DECODL*_Y /Xout Y def X01k k Xout put X02k k X01k k get Yref add Yu2 Yref add div Yu2 mul put /Y X02k k get def proz_DECODY_L* /Yout L* def Y02k k Yout put % -1800 2000 250 k mul sub moveto % X02k k get cvsshow2 (, ) show % Y02k k get cvsshow2 (, ) show % Y02k k get L*u div cvsshow2 (, ) show } for %k=0,8 0 1 8 {/k exch def Y03kr k Y02k k get Y02k 0 get sub Y02k 8 get Y02k 0 get sub div put Y03ke k Y03kr k get 1 1.6 div exp put Y03k k Y02k 0 get Y02k 8 get Y02k 0 get sub Y03ke k get mul add put /L* Y03k k get def proz_DECODL*_Y /Yout Y def X03k k Yout put % 1000 2000 250 k mul sub moveto % Y03kr k get cvsshow2 (, ) show % Y03ke k get cvsshow2 (, ) show % Y03k k get cvsshow2 (, ) show % X03k k get cvsshow2 (, ) show } for %k=0,8 ioutt 1 eq {%ioutt 0:without transfer, 1:with transfer newpath tfr 0 1 8 {/k exch def %k=0,8 /X3n X03k k get XLIN 0 eq {log} if MULX mul def /Y3n Y03k k get L*u div MULY2 mul def /X1n X01k k get XLIN 0 eq {log} if MULX mul def /Y1n Y01k k get L*u div MULY2 mul def /delX X1n X3n sub def /delY Y1n Y3n sub def /delR delX 0.5 mul dup mul delY 0.5 mul dup mul add sqrt def /XMn X3n delX 0.5 mul add def /YMn Y3n delY 0.5 mul add def X1n Y1n moveto X3n Y3n lineto stroke /delR delX 0.5 mul dup mul delY 0.5 mul dup mul add sqrt def /alph delX delY atan def /alphp alph 180 add def XMn YMn delR 0 360 arc stroke } for %k=0,8 } if %ioutt=1 0:without transfer, 1:with transfer %again of xchartl=1 0 1 8 {/k exch def %k=0,8 /L* L*N0 L*del k mul add def Y01k k L* put proz_DECODL*_Y /Xout Y def X01k k Xout put } for %k=0,8 newpath tfg 0 1 8 {/k exch def %k=0,8 X01k k get XLIN 0 eq {log} if MULX mul Y01k k get L*u div MULY2 mul 040 0 360 arc fill newpath } for %k=0,8 tfn %xchartl=3 linearized tfb newpath 0 2 8 {/k exch def %k=0,8 X03k k get XLIN 0 eq {log} if MULX mul Y03k k get L*u div MULY2 mul 040 0 360 arc fill newpath } for %k=0,8 tfn /xl1 X03k 0 get XLIN 0 eq {log} if MULX mul def /yl1 Y03k 0 get L*u div MULY2 mul def /xl2 X03k 8 get XLIN 0 eq {log} if MULX mul def /yl2 Y03k 8 get L*u div MULY2 mul def [100] 0 setdash tfb XLIN 0 eq {/xl3 3000 log MULX mul def} {/xl3 0200 MULX mul 300 sub def} ifelse xl1 yl1 moveto xl3 yl1 lineto stroke xl2 yl2 moveto xl3 yl2 lineto stroke [ ] 0 setdash TBL xl3 1200 sub yl1 50 add moveto (device black) showea (Ger\344teschwarz) showde xl3 1200 sub yl2 50 add moveto (device white) showea (Ger\344tewei\337) showde } if %xchartl=3 } if %ychart=0 long loop } bind def %END proz_9step_CIELAB %********************************************************************* /proz_C02_ALOG_CIELAB {%BEG proz_C02_ALOG_CIELAB /xshift 100 def XLIN 0 eq {/xtr 2000 def} {/xtr xshift MULX mul def} ifelse /ytr 0000 def %BEG translate xtr ytr translate %new cero point shift 50 MULX %0 not available i01 1 i02 {/i exch def %i=i01,i02 Y0xi i Y0ui i get put } for %i=i01,i02 50 setlinewidth 0 1 1 {/je exch def %je=0,1 je 0 eq {1 1 1 setrgbcolor} if je 1 eq {0 0 0 setrgbcolor [100] 0 setdash} if /ix1 001 def /ix2 180 def ix1 1 ix2 {/i exch def %i=ix1,ix2 X00i i get XLIN 0 eq {log} if MULX mul Y0xi i get MULY2 mul i ix1 eq {moveto} if i ix1 1 add ge i ix2 1 sub le and {lineto} if i ix2 eq {stroke} if } for %i=ix1,ix2 } for %je=0,1 50 setlinewidth 0 1 2 {/k exch def %k=0,3 k 0 eq {/i 04 def} if k 1 eq {/i 18 def} if k 2 eq {/i 90 def} if XLIN 0 eq {%XLIN=0 %shift ca. 0.12*50 or 0.12*1 xchartl 0 eq xchartl 1 eq or xchartl 2 eq or xchartl 3 eq or {X00i i get log MULX mul 400 sub Y0xi i get 0.12 add MULY2 mul moveto} if }%XLIN=0 {%XLIN=1 %shift ca. 0.12*50 or 0.12*1 xchartl 0 eq xchartl 1 eq or xchartl 2 eq or xchartl 3 eq or {X00i i get MULX mul 400 sub 050 add Y0xi i get 0.12 add MULY2 mul i 0 eq {80 sub} if moveto} if }ifelse %XLIN=1 TBK Y0xi i get cvsshow2x 0 setgray newpath } for %k=0,2 [ ] 0 setdash 0 setgray %****************************************************** XLIN 0 eq {%XLIN=0 /xl0 0.01 log MULX mul def /xl1 3.60 log MULX mul def /xlm 18.00 log MULX mul def /xl2 90.00 log MULX mul def /yl0 0 MULY2 mul def /yl1 Y0ui 4 get MULY2 mul def /ylm Y0ui 18 get MULY2 mul def /yl2 Y0ui 90 get MULY2 mul def }%XLIN=0 {%XLIN=1 /xl0 xshift neg MULX mul def /xl1 3.60 MULX mul def /xlm 18.00 MULX mul def /xl2 90.00 MULX mul def /yl0 0 MULY2 mul def /yl1 Y0ui 4 get MULY2 mul def /ylm Y0ui 18 get MULY2 mul def /yl2 Y0ui 90 get MULY2 mul def } ifelse %XLIN=0,1 %BEG scale-test %0 0 1 setrgbcolor %000 MULX mul 0 moveto 0 002 MULY2 mul rlineto stroke %050 MULX mul 0 moveto 0 002 MULY2 mul rlineto stroke %100 MULX mul 0 moveto 0 002 MULY2 mul rlineto stroke %150 MULX mul 0 moveto 0 002 MULY2 mul rlineto stroke %200 MULX mul 0 moveto 0 002 MULY2 mul rlineto stroke %0 setgray %END scale-test tfz %tfz [100] 0 setdash xl0 ylm moveto xlm ylm lineto xlm yl0 lineto stroke tfg xl1 yl0 moveto xl2 yl0 lineto stroke xl0 yl1 moveto xl0 yl2 lineto stroke tfr XLIN 0 eq {/xl3 3000 log MULX mul def} {/xl3 0200 MULX mul 200 sub def} ifelse xl1 yl1 moveto xl3 yl1 lineto stroke xl2 yl2 moveto xl3 yl2 lineto stroke [ ] 0 setdash TBL xl3 0700 sub yl1 50 add moveto (black) showea (Schwarz) showde xl3 0700 sub yl2 50 add moveto (white) showea (Wei\337) showde ychart 0 eq {%xchartl=0 iouto 1 eq {%iouto=1 %iouto 0:without output text, 1:with output text %text contrast, steps tfn TBL xchartl 1 eq {%xchartl=1 xl0 50 add yl2 70 add moveto (intended output:) showen (angestrebte Ausgabe:) showde xl0 50 add yl2 200 sub moveto (equally spaced 9 steps in ) showen (gleichabst\344ndige 9 Stufen in ) showde ifunc 0 eq {(TUBJND) show} {(CIELAB) show} ifelse xl0 50 add yl2 400 sub moveto (for contrast ) showen (f\374r Kontrast ) showde TBIL (C) show (Y) ibLs TBL (=25:1) show } if %xchartl=1 xchartl 2 eq {%xchartl=2 xl0 50 add yl2 70 add moveto (non linearized real output:) showen (nichtlinerasierte reale Ausgabe:) showde xl0 50 add yl2 200 sub moveto (nonequally spaced 9 steps) showen (ungleich gestufte 9 Stufen) showde xl0 50 add yl2 400 sub moveto (for contrast ) showen (f\374r Kontrast ) showde TBIL (C) show (Y) ibLs TBL (=2:1) show } if %xchartl=2 xchartl 3 eq {%xchartl=3 xl0 50 add yl2 70 add moveto (linearized real output:) showen (linerasierte reale Ausgabe:) showde xl0 50 add yl2 200 sub moveto (equally spaced 9 steps in ) showen (gleich gestufte 9 Stufen in ) showde ifunc 0 eq {(TUBJND) show} {(CIELAB) show} ifelse xl0 50 add yl2 400 sub moveto (after contrast transfer ) showen (nach Kontrasttransfer ) showde TBIL (C) show (Y) ibLs TBL (=25:1 to 2:1) showen (=25:1 nach 2:1) showde } if %xchartl=3 } if %iouto=1 %iouto 0:without output text, 1:with output text } if %ychart=0 tfg xl1 yl0 moveto xl1 yl1 lineto xl0 yl1 lineto stroke xl2 yl0 moveto xl2 yl2 lineto xl0 yl2 lineto stroke tfn XLIN 0 eq {%XLIN=0 xl1 050 add yl0 250 add moveto TBIL (Y) show (N) ibLs TBL (=3,6) show xl2 050 add yl0 250 add moveto TBIL (Y) show (W) ibLs TBL (=90) show }%XLIN=0 {%XLIN=1 xl1 750 sub yl0 100 add moveto TBIL (Y) show (N) ibLs TBL (=3,6) show xl2 050 add yl0 100 add moveto TBIL (Y) show (W) ibLs TBL (=90) show } ifelse %XLIN=0,1 tfn XLIN 0 eq {%XLIN=0 xlm 50 add yl0 250 add moveto TBIL (Y) show (u) ibLs TBL (=18) show }%XLIN=0 {%XLIN=1 xlm 050 add yl0 100 add moveto TBIL (Y) show (u) ibLs TBL (=18) show } ifelse %XLIN=0,1 %C01 /x0 xl0 50 add def tfn x0 ylm 120 add moveto TBIL (L*) show ifunc 0 eq {(r,TUBJND) ibLs} {(r,CIELAB) ibLs} ifelse TBL (=1) show /FYiuP1 L*i iu 1 add get L*i iu get div def /FYiu 1 def TBIL (, m) show (u) ibLs TBL (=) show Y0xi iu 1 add get Y0xi iu get sub X00i iu 1 add get log X00i iu get log sub div cvsshow2x x0 ylm 200 sub moveto TBIL (L*) show ifunc 0 eq {(u,TUBJND) ibLs} {(u,CIELAB) ibLs} ifelse TBL (=) show L*u cvishow TBIL (, Y) show (u) ibLs TBL (=) show Yu cvishow %ifunc 0 eq { %plot_9step_TUBJND %} if %ifunc 1 eq { proz_9step_CIELAB %} if newpath 0 1 2 {/k exch def %k=0,2 k 0 eq {/i 04 def} if k 1 eq {/i 18 def} if k 2 eq {/i 90 def} if % xchartl 0 eq {%xchartl=0 tfb X00i i get XLIN 0 eq {log} if MULX mul Y0ui i get MULY2 mul 060 0 360 arc fill % } if %xchartl=0 } for %k=0,2 newpath %END translate xtr neg ytr neg translate %new cero point shift 50 MULX /y0 2900 def /x1 800 def /y1 2700 def /xdel 800 def /ydel 300 def ioute 1 eq {%ioute=0 0:without equations, 1:with equations tfr %C02 /x00t 0100 def /x00e 5200 def /y00t 2700 def /ydel 0270 def ifunc 0 eq {%ifunc=0 TUBJND %L*= d * ln [1 + b(Y/Yu)) x00t y00t moveto TBIL (L*) show (TUBJND) ibLs TBL (= d ln [ 1 + ) show TBL (b) show ipK TBL (\050) show TBIL (Y/Y) show (u) ibLs TBL (\051]) show x00t 3500 y00t moveto TBL (d=) show JNDD cvsshow1x x00t 4300 add y00t moveto TBL (b=) show JNDB cvsshow3x x00e y00t moveto TBL ([2a]) show x00t y00t ydel 1 mul sub moveto TBIL (L*) show (r,TUBJND) ibLs TBL (=) show TBL ( ln {[ 1 + ) show TBL (b) show ipK TBL (\050) show TBIL (Y/Y) show (u) ibLs TBL (\051] / (1 + b)}) show x00e y00t 250 sub moveto TBL ([2b]) show } if %ifunc=0 ifunc 1 eq {%ifunc=1 CIELAB x00t y00t 250 sub moveto TBIL (L*) show (CIELAB) ibLs TBL (=116 ) show TBIL (\050Y/Y) show (n) ibLs TBL (\051) show (1/3) ebLs TBL (-16 ) show TBIL (\050Y) show (n) ibLs TBL (=100, 0,89) show SL ( \243 ) show TBIL (Y) show TBL (\051) show x00e y00t 250 sub moveto TBL ([2b]) show %special from TUBJND %ifunc 0 eq {%ifunc=0 TUBJND %L1*= d * ln [1 + b(Y/Yu)) x00t y00t moveto TBIL (L*) show (TUBJND) ibLs TBL (= d ln [ 1 + ) show TBL (b) show ipK TBL (\050) show TBIL (Y/Y) show (u) ibLs TBL (\051]) show x00t 3500 add y00t moveto TBL (d=) show JNDD cvsshow1x x00t 4300 add y00t moveto TBL (b=) show JNDB cvsshow3x x00e y00t moveto TBL ([2a]) show /iout 0 def iout 1 eq {%iout=1 x00t 850 add y00t 250 sub moveto %TBIL (L*) show TBL (=) show Yu Yn div 0.3333 exp 116 mul cvsshow1x 20 0 rmoveto TBIL (\050Y/Y) show (u) ibLs TBL (\051) show (1/3) ebLs TBL (-16 ) show TBIL (\050Y) show (u) ibLs TBL (=18, 0,89) show SL ( \243 ) show TBIL (Y) show TBL (\051) show x00e y00t 250 sub moveto TBL ([2b]) show } if %iout=1 } if %infunc=1 ychart 0 eq {%ychart=0 xchartl 1 ge {%xchartl>=1 proz_regu_index x00t y00t 500 sub moveto TBL (regularity index: ) showen (regularit\344tsindex: ) showde TBIL (g*) show (5) ibLs TBL (=) show r5 cvishow (, ) show (g*) show (9) ibLs TBL (=) show r9 cvishow (, ) show x00e 550 sub y00t 500 sub moveto TBL ([ISO 15775]) show } if %xchartl>=1 } if %yxchart=0 } if %ioute=0 0:without equations, 1:with equations xchartl 1 le {%xchartl<=1 tfn %tfw /x0 4400 def /y0 1400 def x0 y0 moveto 1000 0 rlineto stroke tfg [100] 0 setdash x0 y0 moveto 1000 0 rlineto stroke [ ] 0 setdash tfn %tfw x0 y0 0.8 ydel mul sub moveto TBL (application) showen (Anwendungs\255) showde x0 y0 1.5 ydel mul sub moveto TBL (range) showen (bereich) showde } if %xchart<=1 } def %END proz_C02_ALOG_CIELAB %***************************************** /proz_regu_index {%BEG proz_regu_index %assumption Y(1,2,3)ki available 0 1 8 {/i exch def %i=0,8 xchartl 1 eq {%xchartl=1 Y0xki i Y01k i get put } if %xchartl=1 xchartl 2 eq {%xchartl=2 Y0xki i Y02k i get put } if %xchartl=2 xchartl 3 eq {%xchartl=3 Y0xki i Y03k i get put } if %xchartl=3 } for %i=0,8 %*************************************************** 0 2 6 {/i exch def %i=0,2,6 delki i Y0xki i 2 add get Y0xki i get sub abs put } for %i=0,2,6 /MIN 999 def /MAX 001 def 0 2 6 {/i exch def %i=0,2,6 delki i get MIN lt {/MIN delki i get def} if delki i get MAX gt {/MAX delki i get def} if } for %i=0,2,6 /r5 MIN MAX div 100 mul def %*************************************************** 0 1 7 {/i exch def %i=0,1,7 delki i Y0xki i 1 add get Y0xki i get sub abs put } for %i=0,1,7 /MIN 999 def /MAX 001 def 0 1 7 {/i exch def %i=0,1,7 delki i get MIN lt {/MIN delki i get def} if delki i get MAX gt {/MAX delki i get def} if } for %i=0,1,7 /r9 MIN MAX div 100 mul def } bind def %END proz_regu_index /dY1i 401 array def /Y1i 401 array def %101(W)+3*101(R,G,B) /L1*i 401 array def /X10i 401 array def %log(Xi) /Y10i 401 array def %L1*i, log(L1*i) /Y1ui 401 array def %L1*i/Lu, log(L1*i/L1*u) /Y1xi 401 array def %one of eight above %without Yref /X11k 009 array def %x of 9 steps /Y11k 009 array def %L1*k, log(L1*k) range 0..8 %with Yref /X12k 009 array def %x of 9 steps /Y12k 009 array def %L1*k, log(L1*k) range 0..8 %with Yref and linearisation /X13k 009 array def %x of 9 steps /Y13k 009 array def %L1*k, log(L1*k) range 0..8 %with exponent relative /X13ke 009 array def %x of 9 steps /Y13ke 009 array def %L1*k, log(L1*k) range 0..8 %with exponent relative transfer /X13kr 009 array def %x of 9 steps /Y13kr 009 array def %L1*k, log(L1*k) range 0..8 /Y1xki 009 array def /d1xki 009 array def %************************************************* /proz_DECOJY_L1* {%BEG proz_DECOJY_L1* %L1*i = A0/A2 * ln [1 + (A2/A1) * Y] %L1*i = JNDD * ln [1 + JNDA ) * Y] /L1* Y JNDA mul 1 add ln JNDD mul def } bind def %END proz_DECOJY_L1* %************************************************* /proz_DECOJL1*_Y {%BEG proz_DECOJL1*_Y %L1* = A0/A2 * ln [1 + (A2/A1) * Y] %L1* = JNDD * ln [1 + JNDA * Y] %e**(L1*/JNDD)=[1+JNDA*Y] %Y=[e**(L1*/JNDD)-1]/JNDA=[e**Y1n 1 sub ]/JNDA %%STOP2 /Y1n L1* JNDD div def /Y2n e Y1n exp def /Y Y2n 1 sub JNDA div def } bind def %END proz_DECOJL1*_Y %*************************************************** /proz_Y1i_dY1i_L1*i_L_0 {%BEG proz_Y1i_dY1i_L1*i_L_0 L=TUBJND /e 2.7182818 def /Yn 100 def /Y1u 18.00 def %dY = (s + q * Y)/c = (A1 + A2 * Y) / A0 %/JNDC 1.5 def %c=A0 /JNDC 1.0 def %c=A0 /JNDS 0.0170 def %s=A1 %/JNDQ 0.0058 2.0 mul def %q=A2 error /JNDQ 0.0058 def %q=A2 /JNDA0 JNDC def /JNDA1 JNDS def /JNDA2 JNDQ def /JNDA JNDQ JNDS div def %a=q/s=A2/A1=0,3411 %/JNDT JNDC JNDS div def %t=c/s=A0/A1=88,23 /JNDT JNDC JNDS div def %t=c/s=A0/A1=58,82 for c=1,0 /JNDB JNDA Y1u mul def %b=q/s*Yu=a*Y1u=A2/A1*Y1u=6,141 %/JNDD JNDT JNDA div def %d=t/a=A0/A2=258,6 /JND1 JNDT JNDA div def %d=t/a=A0/A2=172,4 for c=1,0 /JNDD 50.4 JNDB 1 add ln div def %dY = (s + q Y)/ c = (A1 + A2 * Y) / A0 %dY = [1 + (q/s) Y] / (c/s) = [1 + a Y] / t = [1 + (A2/A1) * Y] / (A0/A1) %dY = [1 + (q/s)*Yu * (Y/Yu)] * (c/s) = [1 + (a*Yu) (Y/Yu)] /t % = [1 + b (Y/Yu)] / t = [ 1 + A2/A1*Yu*(Y/Yu) ] / (A0/A1) %L1*= ln [1 + a Y] * d = ln [1 + (A2/A1) * Y] * (A0/A2) % = d * ln [1 + b (Y/Yu)] = 172,4 ln [1 + 6,14 (Y/Yu] %dL1*/dY = 1 / (1 + a*Y) * a * d) = t / (1 + a*Y) = (A0/A2) / [1 + (A2/A1) * Y] %for dL1*=1: %dY = (1 + a*Y) / t = [1 + (A2/A1) * Y] / (A0/A1) %s=0.0170=A1 %q=0.0058=A2 %c=y1=1.5=A0 %a=q/s=0.3411=A2/A1 %b=a*Yu=6.1411=(A2/A1)*Yu %t=c/s=88.23=A0/A1 %d=t/a=258.62=(A0/A1)/(A2/A1)=A0/A2 /L1*u Y1u JNDA mul 1 add ln JNDD mul def %A0/A2 * ln [1 + (A2/A1) * Yu] i01 1 i02 {/i exch def %i=i01,i02 Y1i i i put %L1*i = A0/A2 * ln [1 + (A2/A1) * Y] L1*i i Y1i i get JNDA mul 1 add ln JNDD mul put %dY1i = [1 + (A2/A1) * Y] / (A0/A1) %dY1i = [1 + JNDA * Y] / (JNDD*JNDA) % = [1 + 0,3411 * Y] / (25,4*0,3411) % = [1 + 0,6111*(Y/Yu)] / 8,6639 dY1i i 1 JNDA Y1i i get mul add JNDD JNDA mul div put } for %i=i01,i02 /dY1u 1 JNDA Y1u mul add JNDD JNDA mul div def } bind def %END proz_Y1i_dY1i_L1*i_L_0 L=TUBJND %*************************************************** /proz_Y1i_dY1i_Yxy1i_L_0 {%BEG proz_Y1i_dY1i_Yxy1i_L_0 definition: Y1i, L1*i %i=0 not available i01 1 i02 {/i exch def %i=i01,i02 X10i i i put ychart 0 eq {%ychart=0 Y10i i L1*i i get put Y1ui i L1*i i get L1*u div put } if %ychart=0 ychart 1 eq {%ychart=1 Y10i i dY1i i get put Y1ui i dY1i i get dY1u div put } if %ychart=1 ychart 2 eq {%ychart=2 Y10i i dY1i i get Y1i i get div put Y1ui i dY1i i get Y1i i get div dY1u Y1u div div put } if %ychart=2 ychart 3 eq {%ychart=3 Y10i i Y1i i get dY1i i get div put Y1ui i Y1i i get dY1i i get div Y1u dY1u div div put } if %ychart=3 } for %i=i01,i02 } bind def %END proz_dY1i_Y1i_Yxy1i_L_0 %********************************************* /proz_9step_TUBJND {%BEG proz_9step_TUBJND %N of Y=3,6 /YN0 3.6 def /Y YN0 def proz_DECOJY_L1* /L1*N0 L1* def /YW0 90 def /Y YW0 def proz_DECOJY_L1* /L1*W0 L1* def /L1*ran L1*W0 L1*N0 sub def /L1*del L1*ran 8 div def %-1800 2250 moveto %L1*N0 cvsshow2 (, ) show %L1*W0 cvsshow2 (, ) show %L1*ran cvsshow2 (, ) show %L1*del cvsshow2 (, ) show %******************************************** xchartl 1 eq {%xchartl=1 0 1 8 {/k exch def %k=0,8 /L1* L1*N0 L1*del k mul add def Y11k k L1* put proz_DECOJL1*_Y /Xout Y def X11k k Xout put } for %k=0,8 newpath tfg 0 1 8 {/k exch def %k=0,8 X11k k get XLIN 0 eq {log} if MULX mul Y11k k get L1*u div MULY2 mul 040 0 360 arc fill newpath } for %k=0,8 tfn } if %xchartl=1 %************************************************* xchartl 2 eq {%xchartl=2 /Yref 90.0 def 0 1 8 {/k exch def %k=0,8 /L1* L1*N0 L1*del k mul add def Y11k k L1* put proz_DECOJL1*_Y /Xout Y def X11k k Xout put % 0500 2500 250 k mul sub moveto % Y11k k get cvsshow2 (, ) show % X11k k get cvsshow2 (, ) show } for %k=0,8 /Yu2 X11k 4 get def 0 1 8 {/k exch def %k=0,8 /L1* L1*N0 L1*del k mul add def Y11k k L1* put proz_DECOJL1*_Y /Xout Y def X11k k Xout put X12k k X11k k get Yref add Yu2 Yref add div Yu2 mul put /Y X12k k get def proz_DECOJY_L1* /Yout L1* def Y12k k Yout put % -1800 2000 250 k mul sub moveto % X12k k get cvsshow2 (, ) show % Y12k k get cvsshow2 (, ) show % Y12k k get L1*u div cvsshow2 (, ) show } for %k=0,8 newpath tfr 0 2 8 {/k exch def %k=0,8 X12k k get XLIN 0 eq {log} if MULX mul Y12k k get L1*u div MULY2 mul 040 0 360 arc fill newpath } for %k=0,8 tfn /x1l1 X12k 0 get XLIN 0 eq {log} if MULX mul def /y1l1 Y12k 0 get L1*u div MULY2 mul def /x1l2 X12k 8 get XLIN 0 eq {log} if MULX mul def /y1l2 Y12k 8 get L1*u div MULY2 mul def [100] 0 setdash tfb XLIN 0 eq {/x1l3 3000 log MULX mul def} {/x1l3 0200 MULX mul def} ifelse x1l1 y1l1 moveto x1l3 y1l1 lineto stroke x1l2 y1l2 moveto x1l3 y1l2 lineto stroke [ ] 0 setdash TBL x1l3 1200 sub y1l1 50 add moveto (device black) showea (Ger\344teschwarz) showde x1l3 1200 sub y1l2 50 add moveto (device white) showea (Ger\344tewei\337) showde } if %xchartl=2 %************************************************* xchartl 3 eq {%xchartl=3 /Yref 90.0 def 0 1 8 {/k exch def %k=0,8 /L1* L1*N0 L1*del k mul add def Y11k k L1* put proz_DECOJL1*_Y /Xout Y def X11k k Xout put % 0500 2500 250 k mul sub moveto % Y11k k get cvsshow2 (, ) show % X11k k get cvsshow2 (, ) show } for %k=0,8 /Yu2 X11k 4 get def 0 1 8 {/k exch def %k=0,8 /L1* L1*N0 L1*del k mul add def Y11k k L1* put proz_DECOJL1*_Y /Xout Y def X11k k Xout put X12k k X11k k get Yref add Yu2 Yref add div Yu2 mul put /Y X12k k get def proz_DECOJY_L1* /Yout L1* def Y12k k Yout put % -1800 2000 250 k mul sub moveto % X12k k get cvsshow2 (, ) show % Y12k k get cvsshow2 (, ) show % Y12k k get L1*u div cvsshow2 (, ) show } for %k=0,8 0 1 8 {/k exch def Y13kr k Y12k k get Y12k 0 get sub Y12k 8 get Y12k 0 get sub div put Y13ke k Y13kr k get 1 1.6 div exp put Y13k k Y12k 0 get Y12k 8 get Y12k 0 get sub Y13ke k get mul add put /L1* Y13k k get def proz_DECOJL1*_Y /Yout Y def X13k k Yout put % 1000 2000 250 k mul sub moveto % Y13kr k get cvsshow2 (, ) show % Y13ke k get cvsshow2 (, ) show % Y13k k get cvsshow2 (, ) show % X13k k get cvsshow2 (, ) show } for %k=0,8 ioutt 1 eq {%ioutt 0:without transfer, 1:with transfer newpath tfr 0 1 8 {/k exch def %k=0,8 /X3n X13k k get XLIN 0 eq {log} if MULX mul def /Y3n Y13k k get L1*u div MULY2 mul def /x1n X11k k get XLIN 0 eq {log} if MULX mul def /Y1n Y11k k get L1*u div MULY2 mul def /delX x1n X3n sub def /delY Y1n Y3n sub def /delR delX 0.5 mul dup mul delY 0.5 mul dup mul add sqrt def /XMn X3n delX 0.5 mul add def /YMn Y3n delY 0.5 mul add def x1n Y1n moveto X3n Y3n lineto stroke /delR delX 0.5 mul dup mul delY 0.5 mul dup mul add sqrt def /alph delX delY atan def /alphp alph 180 add def XMn YMn delR 0 360 arc stroke } for %k=0,8 } if %ioutt=1 0:without transfer, 1:with transfer %again of xchartl=1 0 1 8 {/k exch def %k=0,8 /L1* L1*N0 L1*del k mul add def Y11k k L1* put proz_DECOJL1*_Y /Xout Y def X11k k Xout put } for %k=0,8 newpath tfg 0 1 8 {/k exch def %k=0,8 X11k k get XLIN 0 eq {log} if MULX mul Y11k k get L1*u div MULY2 mul 040 0 360 arc fill newpath } for %k=0,8 tfn %xchartl=3 linearized tfb newpath 0 2 8 {/k exch def %k=0,8 X13k k get XLIN 0 eq {log} if MULX mul Y13k k get L1*u div MULY2 mul 040 0 360 arc fill newpath } for %k=0,8 tfn /x1l1 X13k 0 get XLIN 0 eq {log} if MULX mul def /y1l1 Y13k 0 get L1*u div MULY2 mul def /x1l2 X13k 8 get XLIN 0 eq {log} if MULX mul def /y1l2 Y13k 8 get L1*u div MULY2 mul def [100] 0 setdash tfb XLIN 0 eq {/x1l3 3000 log MULX mul def} {/x1l3 0200 MULX mul def} ifelse x1l1 y1l1 moveto x1l3 y1l1 lineto stroke x1l2 y1l2 moveto x1l3 y1l2 lineto stroke [ ] 0 setdash TBL x1l3 1200 sub y1l1 50 add moveto (device black) showea (Ger\344teschwarz) showde x1l3 1200 sub y1l2 50 add moveto (device white) showea (Ger\344tewei\337) showde } if %xchartl=3 } bind def %END proz_9step_TUBJND %********************************************************************* /proz_C02_ALOG_TUBJND {%BEG proz_C02_ALOG_TUBJND /xshift 100 def XLIN 0 eq {/xtr 2000 def} {/xtr xshift MULX mul def} ifelse /ytr 0000 def %BEG translate xtr ytr translate %new cero point shift 50 MULX %0 not available i01 1 i02 {/i exch def %i=i01,i02 Y1xi i Y1ui i get put } for %i=i01,i02 50 setlinewidth 0 1 0 {/je exch def %je=0,1 je 0 eq {0 0 1 setrgbcolor} if %je 1 eq {0 0 1 setrgbcolor [100] 0 setdash} if /ix1 001 def /ix2 180 def ix1 1 ix2 {/i exch def %i=ix1,ix2 X10i i get XLIN 0 eq {log} if MULX mul Y1xi i get MULY2 mul i ix1 eq {moveto} if i ix1 1 add ge i ix2 1 sub le and {lineto} if i ix2 eq {stroke} if } for %i=ix1,ix2 } for %je=0,1 ychart 0 eq {%ychart=0 50 setlinewidth 0 1 2 {/k exch def %k=0,3 k 0 eq {/i 04 def} if k 1 eq {/i 18 def} if k 2 eq {/i 90 def} if XLIN 0 eq {%XLIN=0 %shift ca. 0.12*50 or 0.12*1 xchartl 0 eq xchartl 1 eq or xchartl 2 eq or xchartl 3 eq or {X10i i get log MULX mul 400 sub 700 add Y1xi i get 0.12 add MULY2 mul 050 sub moveto} if }%XLIN=0 {%XLIN=1 %shift ca. 0.12*50 or 0.12*1 xchartl 0 eq xchartl 1 eq or xchartl 2 eq or xchartl 3 eq or {X10i i get MULX mul 700 sub 800 add Y1xi i get 0.12 add MULY2 mul 250 sub moveto} if }ifelse %XLIN=1 TBK Y1xi i get cvsshow2x 0 setgray newpath } for %k=0,2 } if %ychart=0 %[ ] 0 setdash 0 setgray %****************************************************** XLIN 0 eq {%XLIN=0 /x1l0 0.01 log MULX mul def /x1l1 3.60 log MULX mul def /xl1m 18.00 log MULX mul def /x1l2 90.00 log MULX mul def /y1l0 0 MULY2 mul def /y1l1 Y1ui 04 get MULY2 mul def /y1lm Y1ui 18 get MULY2 mul def /y1l2 Y1ui 90 get MULY2 mul def }%XLIN=0 {%XLIN=1 /x1l0 xshift neg MULX mul def /x1l1 3.60 MULX mul def /xl1m 18.00 MULX mul def /x1l2 90.00 MULX mul def /y1l0 0 MULY2 mul def /y1l1 Y1ui 04 get MULY2 mul def /y1lm Y1ui 18 get MULY2 mul def /y1l2 Y1ui 90 get MULY2 mul def } ifelse %XLIN=0,1 %BEG scale-test %0 0 1 setrgbcolor %000 MULX mul 0 moveto 0 002 MULY2 mul rlineto stroke %050 MULX mul 0 moveto 0 002 MULY2 mul rlineto stroke %100 MULX mul 0 moveto 0 002 MULY2 mul rlineto stroke %150 MULX mul 0 moveto 0 002 MULY2 mul rlineto stroke %200 MULX mul 0 moveto 0 002 MULY2 mul rlineto stroke %0 setgray %END scale-test /iout 0 def iout 1 eq {%iout=1 tfz %tfz [100] 0 setdash x1l0 y1lm moveto x1lm y1lm lineto x1lm y1l0 lineto stroke tfg x1l1 y1l0 moveto x1l2 y1l0 lineto stroke x1l0 y1l1 moveto x1l0 y1l2 lineto stroke tfr XLIN 0 eq {/x1l3 3000 log MULX mul def} {/x1l3 0200 MULX mul 200 sub def} ifelse x1l1 y1l1 moveto x1l3 y1l1 lineto stroke x1l2 y1l2 moveto x1l3 y1l2 lineto stroke [ ] 0 setdash TBL x1l3 0700 sub y1l1 50 add moveto (black) showea (Schwarz) showde x1l3 0700 sub y1l2 50 add moveto (white) showea (Wei\337) showde iouto 1 eq {%iouto=1 %iouto 0:without output text, 1:with output text %text contrast, steps tfn TBL xchartl 1 eq {%xchartl=1 x1l0 50 add y1l2 70 add moveto (intended output:) showen (angestrebte Ausgabe:) showde x1l0 50 add y1l2 200 sub moveto (equally spaced 9 steps in ) showen (gleichabst\344ndige 9 Stufen in ) showde ifunc 0 eq {(TUBJND) show} {(CIELAB) show} ifelse x1l0 50 add y1l2 400 sub moveto (for contrast ) showen (f\374r Kontrast ) showde TBIL (C) show (Y) ibLs TBL (=25:1) show } if %xchartl=1 xchartl 2 eq {%xchartl=2 x1l0 50 add y1l2 70 add moveto (non linearized real output:) showen (nichtlinerasierte reale Ausgabe:) showde x1l0 50 add y1l2 200 sub moveto (nonequally spaced 9 steps) showen (ungleich gestufte 9 Stufen) showde x1l0 50 add y1l2 400 sub moveto (for contrast ) showen (f\374r Kontrast ) showde TBIL (C) show (Y) ibLs TBL (=2:1) show } if %xchartl=2 xchartl 3 eq {%xchartl=3 x1l0 50 add y1l2 70 add moveto (linearized real output:) showen (linerasierte reale Ausgabe:) showde x1l0 50 add y1l2 200 sub moveto (equally spaced 9 steps in ) showen (gleich gestufte 9 Stufen in ) showde ifunc 0 eq {(TUBJND) show} {(CIELAB) show} ifelse x1l0 50 add y1l2 400 sub moveto (after contrast transfer ) showen (nach Kontrasttransfer ) showde TBIL (C) show (Y) ibLs TBL (=25:1 to 2:1) showen (=25:1 nach 2:1) showde } if %xchartl=3 } if %iouto=1 %iouto 0:without output text, 1:with output text tfg x1l1 y1l0 moveto x1l1 y1l1 lineto x1l0 y1l1 lineto stroke x1l2 y1l0 moveto x1l2 y1l2 lineto x1l0 y1l2 lineto stroke tfn XLIN 0 eq {%XLIN=0 x1l1 050 add y1l0 250 add moveto TBIL (Y) show (N) ibLs TBL (=3,6) show x1l2 050 add y1l0 250 add moveto TBIL (Y) show (W) ibLs TBL (=90) show }%XLIN=0 {%XLIN=1 x1l1 750 sub y1l0 100 add moveto TBIL (Y) show (N) ibLs TBL (=3,6) show x1l2 050 add y1l0 100 add moveto TBIL (Y) show (W) ibLs TBL (=90) show } ifelse %XLIN=0,1 tfn XLIN 0 eq {%XLIN=0 xlm 50 add y1l0 250 add moveto TBIL (Y) show (u) ibLs TBL (=18) show }%XLIN=0 {%XLIN=1 xlm 050 add y1l0 100 add moveto TBIL (Y) show (u) ibLs TBL (=18) show } ifelse %XLIN=0,1 %C01 /X10 x1l0 50 add def tfn X10 y1lm 120 add moveto TBIL (L*) show ifunc 0 eq {(r,TUBJND) ibLs} {(r,CIELAB) ibLs} ifelse TBL (=1) show /FY1iuP1 L1*i iu 1 add get L1*i iu get div def /FY1iu 1 def TBIL (, m) show (u) ibLs TBL (=) show Y1xi iu 1 add get Y1xi iu get sub X10i iu 1 add get log X10i iu get log sub div cvsshow2x X10 y1lm 200 sub moveto TBIL (L*) show ifunc 0 eq {(u,TUBJND) ibLs} {(u,CIELAB) ibLs} ifelse TBL (=) show L1*u cvishow TBIL (, Y) show (u) ibLs TBL (=) show Yu cvishow %ifunc 0 eq { proz_9step_TUBJND %} if %ifunc 1 eq { %plot_9step_CIELAB %} if newpath 0 1 2 {/k exch def %k=0,2 k 0 eq {/i 04 def} if k 1 eq {/i 18 def} if k 2 eq {/i 90 def} if % xchartl 0 eq {%xchartl=0 tfb X10i i get XLIN 0 eq {log} if MULX mul Y1ui i get MULY2 mul 060 0 360 arc fill % } if %xchartl=0 } for %k=0,2 newpath %END translate xtr neg ytr neg translate %new cero point shift 50 MULX /y10 2900 def /x1 800 def /y1 2700 def /xdel 800 def /ydel 300 def ioute 1 eq {%ioute=0 0:without equations, 1:with equations tfr %C02 /X10t 0100 def /X10e 5200 def /y10t 2700 def /ydel 0270 def ifunc 0 eq {%ifunc=0 TUBJND %L1*= d * ln [1 + b(Y/Yu)) X10t y10t moveto TBIL (L*) show (TUBJND) ibLs TBL (= d ln [ 1 + ) show TBL (b) show ipK TBL (\050) show TBIL (Y/Y) show (u) ibLs TBL (\051]) show X10t 3500 y10t moveto TBL (d=) show JNDD cvsshow1x X10t 4300 add y10t moveto TBL (b=) show JNDB cvsshow3x X10e y10t moveto TBL ([2a]) show X10t y10t ydel 1 mul sub moveto TBIL (L*) show (r,TUBJND) ibLs TBL (=) show TBL ( ln {[ 1 + ) show TBL (b) show ipK TBL (\050) show TBIL (Y/Y) show (u) ibLs TBL (\051] / (1 + b)}) show X10e y10t 250 sub moveto TBL ([2b]) show } if %ifunc=0 ifunc 1 eq {%ifunc=1 CIELAB X10t y10t moveto TBIL (L*) show (CIELAB) ibLs TBL (=116 ) show TBIL (\050Y/Y) show (n) ibLs TBL (\051) show (1/3) ebLs TBL (-16 ) show TBIL (\050Y) show (n) ibLs TBL (=100, 0,89) show SL ( \243 ) show TBIL (Y) show X10e y10t moveto TBL ([2a]) show X10t 850 add y10t 250 sub moveto %TBIL (L*) show TBL (=) show Yu Yn div 0.3333 exp 116 mul cvsshow1x 20 0 rmoveto TBIL (\050Y/Y) show (u) ibLs TBL (\051) show (1/3) ebLs TBL (-16 ) show TBIL (\050Y) show (u) ibLs TBL (=18, 0,89) show SL ( \243 ) show TBIL (Y) show TBL (\051) show X10e y10t 250 sub moveto TBL ([2b]) show } if %infunc=1 ychart 0 eq {%ychart=0 xchartl 1 ge {%xchartl>=1 proz_regu1_index X10t y10t 500 sub moveto TBL (regularity index: ) showen (regularit\344tsindex: ) showde TBIL (g*) show (5) ibLs TBL (=) show r5 cvishow (, ) show (g*) show (9) ibLs TBL (=) show r9 cvishow (, ) show X10e 550 sub y10t 500 sub moveto TBL ([ISO 15775]) show } if %xchartl>=1 } if %ychart=0 } if %ioute=0 0:without equations, 1:with equations xchartl 1 le {%xchartl<=1 tfn %tfw /X10 4400 def /y10 1400 def X10 y10 moveto 1000 0 rlineto stroke tfg [100] 0 setdash X10 y10 moveto 1000 0 rlineto stroke [ ] 0 setdash tfn %tfw X10 y10 0.8 ydel mul sub moveto TBL (application) showen (Anwendungs\255) showde X10 y10 1.5 ydel mul sub moveto TBL (range) showen (bereich) showde } if %xchart<=1 } if %iout=1 } def %END proz_C02_ALOG_TUBJND %***************************************** /proz_regu1_index {%BEG proz_regu1_index %assumption Y(1,2,3)ki available 0 1 8 {/i exch def %i=0,8 xchartl 1 eq {%xchartl=1 Y1xki i Y11k i get put } if %xchartl=1 xchartl 2 eq {%xchartl=2 Y1xki i Y12k i get put } if %xchartl=2 xchartl 3 eq {%xchartl=3 Y1xki i Y13k i get put } if %xchartl=3 } for %i=0,8 %*************************************************** 0 2 6 {/i exch def %i=0,2,6 d1xki i Y1xki i 2 add get Y1xki i get sub abs put } for %i=0,2,6 /MIN 999 def /MAX 001 def 0 2 6 {/i exch def %i=0,2,6 d1xki i get MIN lt {/MIN d1xki i get def} if d1xki i get MAX gt {/MAX d1xki i get def} if } for %i=0,2,6 /r5 MIN MAX div 100 mul def %*************************************************** 0 1 7 {/i exch def %i=0,1,7 d1xki i Y1xki i 1 add get Y1xki i get sub abs put } for %i=0,1,7 /MIN 999 def /MAX 001 def 0 1 7 {/i exch def %i=0,1,7 d1xki i get MIN lt {/MIN d1xki i get def} if d1xki i get MAX gt {/MAX d1xki i get def} if } for %i=0,1,7 /r9 MIN MAX div 100 mul def } bind def %END proz_regu1_index %*************************************************** /cvishow {cvi 10 string cvs show} def /cvsshow1 {10 mul cvi 0.1 mul 10 string cvs show} def /cvsshow2 {100 mul cvi 0.01 mul 10 string cvs show} def /cvsshow3 {1000 mul cvi 0.001 mul 10 string cvs show} def /cvsshow4 {10000 mul cvi 0.0001 mul 10 string cvs show} def /cvsshow1x {/nxx exch def %example nxx=99.1/99.0 nxx 0 lt {(-) show} {() show} ifelse nxx 10 mul cvi abs /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 /cvsshow2x {/nxx exch def %example nxx=99.12/99,02/99,00 nxx 0 lt {(-) show} {() show} ifelse nxx 100 mul cvi abs /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 /cvsshow3x {/nxx exch def %example nxx=99.123/99.012/99.001/99.000 nxx 0 lt {(-) show} {() show} ifelse nxx 1000 mul cvi abs /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 /cvsshow4x {/nxx exch def %example nxx=99.123/99.0 nxx 0 lt {(-) show} {() show} ifelse nxx 10000 mul cvi abs /nxi exch def %nxi=99123/99012/99001/9 nxi 10000 idiv /nxa exch def %nxa=99 nxi nxa 10000 mul sub /nxb exch def %nxb=123/012/001/000 nxa cvishow (,) show %nxb=99, nxb 1000 ge {nxb cvishow} if %nxb=123/012/001/000 nxb 100 ge nxb 999 le and {(0) show nxb cvishow} if %nxb=012 nxb 10 ge nxb 99 le and {(00) show nxb cvishow} if %nxb=012 nxb 1 ge nxb 9 le and {(000) show nxb cvishow} if %nxb=001 nxb 0 eq {(0000) show} if %nxb=000 } def /cvsshow4s {/nxx exch def %example nxx=-0,1234 nxx 0 lt {(-0,) show} {(0,) show} ifelse /nxi nxx 10000 mul cvi abs def %nxi=1234 nxi 1000 ge {nxi cvishow} if %nxb=123/012/001/000 nxi 100 ge nxi 999 le and {(0) show nxi cvishow} if %nxb=123/012/001/000 nxi 10 ge nxi 99 le and {(00) show nxi cvishow} if %nxb=012 nxi 1 ge nxi 9 le and {(000) show nxi cvishow} if %nxb=001 nxi 0 eq {(0000) show} if %nxb=000 } def %*************************************************** %%EndProlog gsave /lanind 1 def /lantex [(G) (E) (S) (F) (I) (J) (M)] def /showde {0 lanind eq {show} {pop} ifelse} bind def /showen {1 lanind eq {show} {pop} ifelse} bind def /showes {2 lanind eq {show} {pop} ifelse} bind def /showfr {3 lanind eq {show} {pop} ifelse} bind def /showit {4 lanind eq {show} {pop} ifelse} bind def /showjp {5 lanind eq {show} {pop} ifelse} bind def /showea {1 lanind le {show} {pop} ifelse} bind def /lanindf where {pop /lanind1 lanindf def /lanind2 lanindf def /lanindd laninddf def} {/lanind1 0 def /lanind2 0 def} ifelse /colormf where {pop /colorm1 colormf def /colorm2 colormf def /colormd colormdf def} {/colorm1 0 def} ifelse /deintpf where {pop /deintp1 deintpf def /deintp2 deintpf def /deintpd deintpdf def} {/deintp1 0 def} ifelse /xcolorf where {pop /xcolor1 xcolorf def /xcolor2 xcolorf def /xcolord xcolordf def} {/xcolor1 3 def} ifelse /xchartf where {pop /xchart1 xchartf def /xchart2 xchartf def /xchartd xchartdf def /xchartm xchart2f xchart1f sub 1 add def} {/xchart1 0 def /xchartm 1 def} ifelse /xchart3f where {pop /xchart3 xchart3f def} {/xchart3 0 def} ifelse /xchart4f where {pop /xchart4 xchart4f def} {/xchart4 0 def} ifelse /pchartf where {pop /pchart1 pchartf def /pchart2 pchartf def /pchartd pchartdf def} {/pchart1 3 def} ifelse /colsepf where {pop /colsep1 colsepf def /colsep2 colsepf def /colsepd colsepdf def} {/colsep1 0 def} ifelse /pmetamf where {pop /pmetam1 pmetamf def /pmetam2 pmetamf def /pmetamd pmetamdf def} {/pmetam1 0 def} ifelse %either defaul values for xchart=0 or values for xchart=1 /lanind lanind1 def % /colorm colorm1 def % /deintp deintp1 def % /xcolor xcolor1 def % /xchart xchart1 def % /pchart pchart1 def % /colsep colsep1 def % /pmetam pmetam1 def % colorm 0 eq deintp 0 eq and {/Txx (d) def /Fxx (d) def} if %colorm=0, deintp=0 colorm 0 eq deintp 1 eq and {/Txx (e) def /Fxx (e) def} if %colorm=0, deintp=1 colorm 1 eq deintp 0 eq and {/Txx (dd) def /Fxx (d) def} if %colorm=1, deintp=0 colorm 1 eq deintp 1 eq and {/Txx (de) def /Fxx (e) def} if %colorm=1, deintp=1 xchart 0 eq {/Txx (-) def /Fxx (-) def} if %always independent of intended output 5 /Times-ISOL1 FS /cvishow {cvi 6 string cvs show} def %75 85 moveto %lanind cvishow (-) show %colorm cvishow %deintp cvishow %xcolor cvishow %xchart cvishow %pchart cvishow %colsep cvishow (-L) show pmetam cvishow gsave %XCHA01.PS END 4 /Times-ISOL1 FS %74 86 moveto (egw40-1a enf80-2a) show %xchart 0 eq {(R) show} % {deintp colorm 2 mul add cvishow} ifelse 72 90 translate 0.01 MM dup scale 20 setlinewidth %0 0 12250 08600 1.0 1.0 1.0 colrecfi %area white grey %0 0 12250 08600 0.0 0.0 0.0 colrecst %Rahmen Schwarz /ychart 3 def %0:L*i/L*u, 1:dY/Yu, 2:(dY/Y)/(dY/Y)u, 3:(Y/dY)/(Y/dY)u /XLIN 0 def %0:XlOG, 1:XLIN /YLIN 1 def %0:YLOG, 1:YLIN /ifunc 1 def %0:TUBJND (not full included), 1:CIELAB /iouto 1 def %iouto 0:without output text, 1:with output text /ioute 1 def %ioute 0:without equations, 1:with equations /ioutd 1 def %ioutd 0:without device black 1:with device black /ioutt 1 def %ioutt 0:without transfer, 1:with transfer /i01 001 def %/i02 180 def %CIELAB /i02 360 def %CIELAB %/i02 180 def %TUBJND %/i02 360 def %TUBJND XLIN 0 eq {%XLIN=0 /MULX 1000 def /MULY 1000 def /MULY1 20 def /MULY2 1000 def %=MULY1*50 }%XLIN=0 {%XLIN=1 /MULX 20 def /MULY 20 def /MULY1 20 def /MULY2 1000 def %=MULY1*50 }ifelse %XLIN=1 %*************************************************** /c30 3.0 def %CIELAB /e10D30 1.0 3.0 div def /e20D30 2.0 3.0 div def /iu 018 def %TUBJND /Yn 100 def /Yu 018 def /Y1u 018 def %/Y Y1u def Y proz_DECOJY_L1* /L1*u 1 6.141 add ln 25.2 mul def %/Y Yu def Y proz_DECODY_L* /L*u 65.5 16 sub def proz_Yi_dYi_L*i_C_0 %main used proz_Yi_dYi_Yxyi_C_0 proz_Y1i_dY1i_L1*i_L_0 %used proz_Y1i_dY1i_Yxy1i_L_0 %1000 2000 500 add moveto %TBIL (L*4,18,90: ) show %L*i 04 get cvishow (, ) show %L*i 18 get cvishow (, ) show %L*i 90 get cvishow /xchartl 1 def %0 1 03 {/xchartl exch def %xchartl=0,03 %/xchartl 0 def gsave % xchartl 0 eq { 100 4480 translate} if % xchartl 1 eq { 6150 4480 translate} if % xchartl 2 eq { 100 0220 translate} if % xchartl 3 eq { 6150 0220 translate} if /xchartlp 1 def %1:Y10-0_3, 5:Y10-5_8 150 /Times-ISOL1 FS 0 setgray 50 -150 moveto (egw40-3a enf80-2a) show %xchartl xchartlp add cvishow %(a) show %a %(_) show xchart 1 add cvishow 20 setlinewidth /xwidth 6000 def /ywidth 4000 def 25 setlinewidth 1 setgray 0 0 moveto xwidth 0 rlineto 0 ywidth rlineto xwidth neg 0 rlineto closepath fill 0 0 moveto xwidth 0 rlineto 0 ywidth rlineto xwidth neg 0 rlineto closepath clip 0 setgray 0 0 moveto xwidth 0 rlineto 0 ywidth rlineto xwidth neg 0 rlineto closepath stroke 0 0 moveto xwidth 0 rlineto 0 ywidth rlineto xwidth neg 0 rlineto closepath clip 0 0 xwidth ywidth 0.0 0.0 0.0 colrecst %frame black tfn %tfw /xtr0 280 def /ytr0 280 def xtr0 ytr0 translate %********************************************************************* 50 setlinewidth %50 setlinewidth tfn 0 0 moveto 5000 0 rlineto stroke 0 0 moveto 0 3100 rlineto stroke 5000 100 add 0 moveto -100 50 rlineto 0 -100 rlineto closepath fill 0 3100 100 add moveto -50 -100 rlineto 100 0 rlineto closepath fill TBL XLIN 0 eq {%XLIN=0 /tx [(-2) (-1) ( 0) ( 1) ( 2) ( 3) ] def /txl [(0,01) (0,1) ( 1) ( 10) (100) (1000)] def }%XLIN=0 {%XLIN=1 % /tx [(-1) ( 0) ( 1) ( 2) ( 3) ( 4)] def /txl [( ) ( ) ( 0) ( 50) (100) (150)] def } ifelse %XLIN=0,1 XLIN 0 eq {%XLIN=0 %!x-axis: 100 Einheiten = 0600 Skalen-Einheiten 0 1 5 {/i exch def /ixt {-150 i 1000 mul add} def /ixl { 000 i 1000 mul add} def ixt -230 moveto tx i get exec show tfb i 1 ge {ixt i 5 eq {100 sub} if 070 moveto txl i get exec show} if tfn ixl 60 moveto 0 -120 rlineto stroke } for } if %XLIN=0 XLIN 1 eq {%XLIN=1 %!x-axis linear: 100 Einheiten = 0600 Skalen-Einheiten 0 1 5 {/i exch def /ixt {-150 i 1000 mul add} def /ixl { 000 i 1000 mul add} def tfb i 1 ge {ixt i 5 eq {100 sub} if -230 moveto txl i get exec show} if tfn ixl 60 moveto 0 -120 rlineto stroke } for } if %XLIN=1 tfn /ixtt 5.0 1000 mul def /iytt -200 def ixtt 100 add iytt moveto XLIN 0 eq {%XLIN=0 TBL (log) show 20 0 rmoveto TBIL (Y) show ixtt 370 add iytt 300 add moveto tfb TBIL (Y) show }%XLIN=0 {%XLIN=1 tfb TBIL (Y) show } ifelse %XLIN=0,1 %!y-achse: 100 S-Einheiten = 1000 Skalen-Einheiten %ifunc 0 eq {%ifunc=0 TUBJND /ty0[( 0)( 500) (1000) (1500) ] def /ty1[( 0)( 1)( 2)( 3)] def % } if %ifunc=0 TUBJND /j1y 0 def /j2y 3 def TBL j1y 1 j2y {/j exch def /jyt {-50 j j1y sub 1000 mul add} def /jyl {000 j j1y sub 1000 mul add} def tfb -400 jyt moveto xchartl 0 eq {ty1 j get show} if xchartl 1 eq {ty1 j get show} if xchartl 2 eq {ty1 j get show} if xchartl 3 eq {ty1 j get show} if tfn -60 jyl moveto 120 0 rlineto stroke } for %BEG C01_C08 ******************************************** %text0******************************************************** tfn %tfw /ytt1 3775 def /ytt2 ytt1 250 sub def /ytt3 ytt1 500 sub def ychart 0 eq {%ychart=0 050 xtr0 sub ytt1 ytr0 sub moveto YLIN 0 eq {TBK (log \050) show} if TBIK (L*/) show 20 0 rmoveto TBIK (L*) show (u) ibKs YLIN 0 eq {TBK (\051) show} if 050 xtr0 sub ytt2 ytr0 sub moveto TBK (CIELAB & ) show tfb (TUBJND) show tfn /x0te 2600 def x0te xtr0 sub ytt1 ytr0 sub 000 sub moveto TBK (relative lightness ) showen (Relative Helligkeit ) showde TBIK (L*/) show 20 0 rmoveto TBIK (L*) show (u) ibKs x0te xtr0 sub ytt2 ytr0 sub moveto TBK (normalized to the) showen (normiert f\374r die) showde x0te xtr0 sub ytt3 ytr0 sub moveto (background lightness ) showen (Umgebungshelligkeit ) showde TBIK (L*) show (u) ibKs } if %ychart=0 %text1******************************************************** ychart 1 eq {%ychart=1 tfn %tfw 050 xtr0 sub ytt1 ytr0 sub moveto YLIN 0 eq {TBK (log\050) show} if SM (D) show 20 0 rmoveto TBIK (Y) show TBK (/) show SM (D) show TBIK (Y) show (u) ibKs YLIN 0 eq {TBK (\051) show} if 050 xtr0 sub ytt2 ytr0 sub moveto TBK (CIELAB & ) show tfb (TUBJND) show tfn 2400 xtr0 sub ytt1 ytr0 sub moveto TBK (CIE tristimulus value difference) showen (CIE\255Normfarbwertdifferenz) showde 2400 xtr0 sub ytt2 ytr0 sub moveto SM (D) show 20 0 rmoveto TBIK (Y) show TBK ( normalized to ) showen ( normiert f\374r ) showde SM (D) show 20 0 rmoveto TBIK (Y) show (u) ibKs TBK } if %ychart=1 %text2******************************************************** ychart 2 eq {%ychart=2 tfn %tfw 050 xtr0 sub ytt1 ytr0 sub moveto YLIN 0 eq {TBK (log [) show} if TBK (\050) show SM (D) show TBIK (Y/Y) show TBK (\051 / \050) show SM (D) show TBIK (Y/Y\051) show (u) ibKs YLIN 0 eq {TBK (]) show} if 050 xtr0 sub ytt2 ytr0 sub moveto TBK (CIELAB & ) show tfb (TUBJND) show tfn 2800 xtr0 sub ytt1 ytr0 sub moveto TBK (CIE) show TBIK (\255Y) show TBK ( sensitivity) showen (\255Empfindlichkeit) showde 2800 xtr0 sub ytt2 ytr0 sub moveto (normalized to ) showen (normiert f\374r ) showde TBIK (\050) show SM (D) show TBIK (Y/Y) show TBIK (\051) show (u) ibKs } if %ychart=2 %text3******************************************************** ychart 3 eq {%ychart=3 tfn %tfw 050 xtr0 sub ytt1 ytr0 sub moveto YLIN 0 eq {TBK (log [) show} if TBK (\050) show TBIK (Y/) show SM (D) show TBIK (Y) show (\051 / \050) show TBIK (Y/) show SM (D) show TBIK (Y\051) show (u) ibKs YLIN 0 eq {TBK (] ) show} if 050 xtr0 sub ytt2 ytr0 sub moveto TBK (CIELAB & ) show tfb (TUBJND) show tfn 2800 xtr0 sub ytt1 ytr0 sub moveto TBK (CIE) show TBIK (\255Y) show TBK ( contrast) showen (\255Kontrast) showde 2800 xtr0 sub ytt2 ytr0 sub moveto (normalized to ) showen (normiert f\374r ) showde TBIK (\050Y/) show SM (D) show TBIK (Y) show TBIK (\051) show (u) ibKs } if %ychart=3 %end_text0_3********************************************************** /y0del 100 def 50 setlinewidth %********************************************************************* xchartl 00 eq {proz_C02_ALOG_CIELAB proz_C02_ALOG_TUBJND} if %XLIN=0 xchartl 01 eq {proz_C02_ALOG_CIELAB proz_C02_ALOG_TUBJND} if %XLIN=1 xchartl 02 eq {proz_C02_ALOG_CIELAB proz_C02_ALOG_TUBJND} if %XLIN=0 xchartl 03 eq {proz_C02_ALOG_CIELAB proz_C02_ALOG_TUBJND} if %XLIN=1 %END C01_C08********************************************** %******************************************************** xtr0 neg ytr0 neg translate %************************************************************** %special space for 'xm03'PROZ0.COM 2x before/after xchartl % xchartl 0 eq { 100 neg 4480 neg translate} if % xchartl 1 eq { 6150 neg 4480 neg translate} if % xchartl 2 eq { 100 neg 0220 neg translate} if % xchartl 3 eq { 6150 neg 0220 neg translate} if grestore %} for %xchartl=0,03 showpage grestore %} for %ioute=0,1 %%Trailer %line 259 %%EndDocument EndEPSF grestore gsave BeginEPSF 86 SHAl add MM 020 STAl add MM translate 12 /Times-ISOL1 FS -9 MM -7 MM moveto ( ) show 10 /Times-ISOL1 FS 53 MM 1 MM moveto ( ) show 1 1 scale -77 -91 translate %%BeginDocument: Bild 18 %!PS-Adobe-3.0 EPSF-3.0 egw40-4a_R %%BoundingBox: 70 85 243 206 %START PDFDE011.EPS /pdfmark03 where {pop} {userdict /pdfmark03 /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/egw4/egw4.HTM) /Author (compare K. Richter "Computergrafik ...": ISBN 3-8007-1775-1) /Subject (goto: http://farbe.li.tu-berlin.de or http://color.li.tu-berlin.de) /Keywords (image reproduction, colour devices) /Creator (klaus.richter@mac.com) /CreationDate (D:2023080112000) /ModDate (D:2023080112000) /DOCINFO pdfmark03 [ /View [ /Fit ] /DOCVIEW pdfmark03 %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 /Courier findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /Courier-ISOL1 exch definefont pop /Courier-Oblique findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /CourierI-ISOL1 exch definefont pop /Courier-Bold findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /CourierB-ISOL1 exch definefont pop /Courier-BoldOblique findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /CourierBI-ISOL1 exch definefont pop /TG {350 /Times-ISOL1 FS} bind def /TM {280 /Times-ISOL1 FS} bind def /TK {240 /Times-ISOL1 FS} bind def /TS {200 /Times-ISOL1 FS} bind def /TL {160 /Times-ISOL1 FS} bind def /TV {110 /Times-ISOL1 FS} bind def /TW {080 /Times-ISOL1 FS} bind def /TIG {350 /TimesI-ISOL1 FS} bind def /TIM {280 /TimesI-ISOL1 FS} bind def /TIK {240 /TimesI-ISOL1 FS} bind def /TIS {200 /TimesI-ISOL1 FS} bind def /TIL {160 /TimesI-ISOL1 FS} bind def /TIV {110 /TimesI-ISOL1 FS} bind def /TIW {080 /TimesI-ISOL1 FS} bind def /TBG {350 /TimesB-ISOL1 FS} bind def /TBM {280 /TimesB-ISOL1 FS} bind def /TBK {240 /TimesB-ISOL1 FS} bind def /TBS {200 /TimesB-ISOL1 FS} bind def /TBL {160 /TimesB-ISOL1 FS} bind def /TBV {110 /TimesB-ISOL1 FS} bind def /TBW {080 /TimesB-ISOL1 FS} bind def /TBIG {350 /TimesBI-ISOL1 FS} bind def /TBIM {280 /TimesBI-ISOL1 FS} bind def /TBIK {240 /TimesBI-ISOL1 FS} bind def /TBIS {200 /TimesBI-ISOL1 FS} bind def /TBIL {160 /TimesBI-ISOL1 FS} bind def /TBIV {110 /TimesBI-ISOL1 FS} bind def /TBIW {080 /TimesBI-ISOL1 FS} bind def /SG {350 /Symbol FS} bind def /SM {280 /Symbol FS} bind def /SK {240 /Symbol FS} bind def /SS {200 /Symbol FS} bind def /SL {160 /Symbol FS} bind def /SV {110 /Symbol FS} bind def /SW {080 /Symbol FS} bind def %***************************************************************** %%EndProlog gsave %lanindL2.EPS START 20000505 /lanind 0 def /lantex [(G) (E) (S) (F) (I) (J) (M)] def /showde {0 lanind eq {show} {pop} ifelse} bind def /showen {1 lanind eq {show} {pop} ifelse} bind def /showes {2 lanind eq {show} {pop} ifelse} bind def /showfr {3 lanind eq {show} {pop} ifelse} bind def /showit {4 lanind eq {show} {pop} ifelse} bind def /showjp {5 lanind eq {show} {pop} ifelse} bind def /showea {1 lanind le {show} {pop} ifelse} bind def /lanindf where {pop /lanind1 lanindf def /lanind2 lanindf def /lanindd laninddf def} {/lanind1 0 def /lanind2 0 def} ifelse /colormf where {pop /colorm1 colormf def /colorm2 colormf def /colormd colormdf def} {/colorm1 0 def} ifelse /deintpf where {pop /deintp1 deintpf def /deintp2 deintpf def /deintpd deintpdf def} {/deintp1 0 def} ifelse /xcolorf where {pop /xcolor1 xcolorf def /xcolor2 xcolorf def /xcolord xcolordf def} {/xcolor1 0 def} ifelse /xchartf where {pop /xchart1 xchartf def /xchart2 xchartf def /xchartd xchartdf def /xchartm xchart2f xchart1f sub 1 add def} {/xchart1 0 def /xchartm 1 def} ifelse /xchart3f where {pop /xchart3 xchart3f def} {/xchart3 0 def} ifelse /xchart4f where {pop /xchart4 xchart4f def} {/xchart4 0 def} ifelse /pchartf where {pop /pchart1 pchartf def /pchart2 pchartf def /pchartd pchartdf def} {/pchart1 3 def} ifelse /colsepf where {pop /colsep1 colsepf def /colsep2 colsepf def /colsepd colsepdf def} {/colsep1 0 def} ifelse /pmetamf where {pop /pmetam1 pmetamf def /pmetam2 pmetamf def /pmetamd pmetamdf def} {/pmetam1 0 def} ifelse %either defaul values for xchart=0 or values for xchart=1 /lanind lanind1 def % /colorm colorm1 def % /deintp deintp1 def % /xcolor xcolor1 def % /xchart xchart1 def % /pchart pchart1 def % /colsep colsep1 def % /pmetam pmetam1 def % gsave /cvishow0 {cvi 6 string cvs show} def /kchartl 0 def %0:left page, 1:right page /pchartl 0 def %0:top page, 4:down page %not used 72 90 translate 0.010 MM dup scale /xbtex0 0 def %xbtex=0 for files Y1(0/1)-(3/7)n.EPS xbtex0 1 eq {%xbtex0=1 40 setlinewidth /ymax1 08550 def /xmax1 12250 def 1.0 setgray 0 0 moveto xmax1 0 rlineto 0 ymax1 rlineto xmax1 neg 0 rlineto closepath fill 0 setgray 0 0 moveto xmax1 0 rlineto 0 ymax1 rlineto xmax1 neg 0 rlineto closepath stroke TK 0 setgray 150 /Times-ISOL1 FS 150 -140 moveto kchartl 0 eq {(egw40-7n) show} {(egw41-7n) show} ifelse } if %xbtex0=1 /xchartl 0 def 3 1 3 {/xchartl exch def %xchartl=0,7 gsave 20 setlinewidth % xchartl 0 eq { 100 04480 translate} if % xchartl 1 eq { 6150 04480 translate} if % xchartl 2 eq { 100 00220 translate} if % xchartl 3 eq { 6150 00220 translate} if % xchartl 4 eq { 100 04480 translate} if % xchartl 5 eq { 6150 04480 translate} if % xchartl 6 eq { 100 00220 translate} if % xchartl 7 eq { 6150 00220 translate} if 0 setgray 150 /Times-ISOL1 FS 050 -140 moveto kchartl 0 eq {(egw40-) show} {(egw41-) show} ifelse xchartl 1 add cvishow0 (a) show %a /xwidth 6000 def /ywidth 4000 def 25 setlinewidth 0 0 0 0 setcmyk_olvcolor 0 0 moveto xwidth 0 rlineto 0 ywidth rlineto xwidth neg 0 rlineto closepath fill 0 0 moveto xwidth 0 rlineto 0 ywidth rlineto xwidth neg 0 rlineto closepath clip 0 setgray 0 0 moveto xwidth 0 rlineto 0 ywidth rlineto xwidth neg 0 rlineto closepath stroke %************************************************************** % xchartl 0 eq { 100 neg 04480 neg translate} if % xchartl 1 eq { 6150 neg 04480 neg translate} if % xchartl 2 eq { 100 neg 00220 neg translate} if % xchartl 3 eq { 6150 neg 00220 neg translate} if % xchartl 4 eq { 100 neg 04480 neg translate} if % xchartl 5 eq { 6150 neg 04480 neg translate} if % xchartl 6 eq { 100 neg 00220 neg translate} if % xchartl 7 eq { 6150 neg 00220 neg translate} if grestore } for %xchartl=0,7 showpage grestore %%Trailer %line 269 %%EndDocument EndEPSF grestore gsave showpage grestore %%Trailer %%EndDocument EndEPSF grestore gsave BeginEPSF 86 SHAl add MM 108 MM translate 10 /Times-ISOL1 FS 53 MM 1 MM moveto ( ) show 1 1 scale -77 -91 translate %%BeginDocument: Bild 14 %line 369 %!PS-Adobe-3.0 EPSF-3.0 egw40-4N %%BoundingBox: 70 85 246 206 /FS {findfont exch scalefont setfont} bind def /MM {72 25.4 div mul} def %%EndProlog gsave /ioutx 0 def ioutx 1 eq {%ioutx=1 4 /Times-Roman FS 72 86 moveto (egw40-4N) show 72 90 translate 0.01 MM dup scale 20 setlinewidth /xwidth 6100 def /ywidth 4000 def 1 setgray 0 0 moveto xwidth 0 rlineto 0 ywidth rlineto xwidth neg 0 rlineto closepath fill 0 setgray 0 0 moveto xwidth 0 rlineto 0 ywidth rlineto xwidth neg 0 rlineto closepath stroke } if %ioutx=1 grestore showpage %%Trailer %%EndDocument EndEPSF grestore gsave BeginEPSF 28 SHSl sub MM 064 MM translate 10 /Times-ISOL1 FS 53 MM 1 MM moveto ( ) show 1 1 scale -77 -91 translate %%BeginDocument: Bild 15 %line 379 %!PS-Adobe-3.0 EPSF-3.0 egw40-5N %%BoundingBox: 70 85 246 206 /FS {findfont exch scalefont setfont} bind def /MM {72 25.4 div mul} def %%EndProlog gsave /ioutx 0 def ioutx 1 eq {%ioutx=1 4 /Times-Roman FS 72 86 moveto (egw40-5N) show 72 90 translate 0.01 MM dup scale 20 setlinewidth /xwidth 6100 def /ywidth 4000 def 1 setgray 0 0 moveto xwidth 0 rlineto 0 ywidth rlineto xwidth neg 0 rlineto closepath fill 0 setgray 0 0 moveto xwidth 0 rlineto 0 ywidth rlineto xwidth neg 0 rlineto closepath stroke } if %ioutx=1 grestore showpage %%Trailer %%EndDocument EndEPSF grestore gsave BeginEPSF 86 SHAl add MM 064 MM translate 10 /Times-ISOL1 FS 53 MM 1 MM moveto ( ) show 1 1 scale -77 -91 translate %%BeginDocument: Bild 16 %line 389 %!PS-Adobe-3.0 EPSF-3.0 egw40-6N %%BoundingBox: 70 85 246 206 /FS {findfont exch scalefont setfont} bind def /MM {72 25.4 div mul} def %%EndProlog gsave /ioutx 0 def ioutx 1 eq {%ioutx=1 4 /Times-Roman FS 72 86 moveto (egw40-6N) show 72 90 translate 0.01 MM dup scale 20 setlinewidth /xwidth 6100 def /ywidth 4000 def 1 setgray 0 0 moveto xwidth 0 rlineto 0 ywidth rlineto xwidth neg 0 rlineto closepath fill 0 setgray 0 0 moveto xwidth 0 rlineto 0 ywidth rlineto xwidth neg 0 rlineto closepath stroke } if %ioutx=1 grestore showpage %%Trailer %%EndDocument EndEPSF grestore gsave BeginEPSF /xc1 16 def /yc1 12 def /xt 1 def xchart 1 eq {/xt 1 def} if 28 SHSl sub MM 20 MM translate 10 /Times-ISOL1 FS 53 MM 1 MM moveto ( ) show 1 1 scale -77 -91 translate %%BeginDocument: Bild 17 %line 399 %!PS-Adobe-3.0 EPSF-3.0 egw40-7n_60 %%BoundingBox: 70 85 421 335 %START PDFDE011.EPS /pdfmark07 where {pop} {userdict /pdfmark07 /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/egw4/egw4.HTM) /Author (compare K. Richter "Computergrafik ...": ISBN 3-8007-1775-1) /Subject (goto: http://farbe.li.tu-berlin.de or http://color.li.tu-berlin.de) /Keywords (image reproduction, colour devices) /Creator (klaus.richter@mac.com) /CreationDate (D:2023080112000) /ModDate (D:2023080112000) /DOCINFO pdfmark07 [ /View [ /Fit ] /DOCVIEW pdfmark07 %END PDFDE011 %line 20****************************************************** /BeginEPSF {% def % Prepare for EPS file /b4_Inc_state save def % Save state for cleanup /dict_count countdictstack def /op_count count 1 sub def % Count objects on op stack userdict begin % Make userdict current dict /showpage {} def 0 setgray 0 setlinecap 1 setlinewidth 0 setlinejoin 10 setmiterlimit [] 0 setdash newpath /languagelevel where % If level not equal to 1 then {pop languagelevel where % If level not equal to 1 then 1 ne {false setstrokeadjust false setoverprint } if } if } bind def /EndEPSF {% def % End for EPS file count op_count sub {pop} repeat countdictstack dict_count sub {end} repeat % Clean up dict stack b4_Inc_state restore } 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 /Courier findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /Courier-ISOL1 exch definefont pop /Courier-Oblique findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /CourierI-ISOL1 exch definefont pop /Courier-Bold findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /CourierB-ISOL1 exch definefont pop /Courier-BoldOblique findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /CourierBI-ISOL1 exch definefont pop /TG {350 /Times-ISOL1 FS} bind def /TM {280 /Times-ISOL1 FS} bind def /TK {240 /Times-ISOL1 FS} bind def /TS {200 /Times-ISOL1 FS} bind def /TL {160 /Times-ISOL1 FS} bind def /TV {110 /Times-ISOL1 FS} bind def /TW {080 /Times-ISOL1 FS} bind def /TIG {350 /TimesI-ISOL1 FS} bind def /TIM {280 /TimesI-ISOL1 FS} bind def /TIK {240 /TimesI-ISOL1 FS} bind def /TIS {200 /TimesI-ISOL1 FS} bind def /TIL {160 /TimesI-ISOL1 FS} bind def /TIV {110 /TimesI-ISOL1 FS} bind def /TIW {080 /TimesI-ISOL1 FS} bind def /TBG {350 /TimesB-ISOL1 FS} bind def /TBM {280 /TimesB-ISOL1 FS} bind def /TBK {240 /TimesB-ISOL1 FS} bind def /TBS {200 /TimesB-ISOL1 FS} bind def /TBL {160 /TimesB-ISOL1 FS} bind def /TBV {110 /TimesB-ISOL1 FS} bind def /TBW {080 /TimesB-ISOL1 FS} bind def /TBIG {350 /TimesBI-ISOL1 FS} bind def /TBIM {280 /TimesBI-ISOL1 FS} bind def /TBIK {240 /TimesBI-ISOL1 FS} bind def /TBIS {200 /TimesBI-ISOL1 FS} bind def /TBIL {160 /TimesBI-ISOL1 FS} bind def /TBIV {110 /TimesBI-ISOL1 FS} bind def /TBIW {080 /TimesBI-ISOL1 FS} bind def /SG {350 /Symbol FS} bind def /SM {280 /Symbol FS} bind def /SK {240 /Symbol FS} bind def /SS {200 /Symbol FS} bind def /SL {160 /Symbol FS} bind def /SV {110 /Symbol FS} bind def /SW {080 /Symbol FS} bind def %***************************************************************** %%EndProlog gsave %lanindL2.EPS START 20000505 /lanind 0 def /lantex [(G) (E) (S) (F) (I) (J) (M)] def /showde {0 lanind eq {show} {pop} ifelse} bind def /showen {1 lanind eq {show} {pop} ifelse} bind def /showes {2 lanind eq {show} {pop} ifelse} bind def /showfr {3 lanind eq {show} {pop} ifelse} bind def /showit {4 lanind eq {show} {pop} ifelse} bind def /showjp {5 lanind eq {show} {pop} ifelse} bind def /showea {1 lanind le {show} {pop} ifelse} bind def /lanindf where {pop /lanind1 lanindf def /lanind2 lanindf def /lanindd laninddf def} {/lanind1 0 def /lanind2 0 def} ifelse /colormf where {pop /colorm1 colormf def /colorm2 colormf def /colormd colormdf def} {/colorm1 0 def} ifelse /deintpf where {pop /deintp1 deintpf def /deintp2 deintpf def /deintpd deintpdf def} {/deintp1 0 def} ifelse /xcolorf where {pop /xcolor1 xcolorf def /xcolor2 xcolorf def /xcolord xcolordf def} {/xcolor1 0 def} ifelse /xchartf where {pop /xchart1 xchartf def /xchart2 xchartf def /xchartd xchartdf def /xchartm xchart2f xchart1f sub 1 add def} {/xchart1 0 def /xchartm 1 def} ifelse /xchart3f where {pop /xchart3 xchart3f def} {/xchart3 0 def} ifelse /xchart4f where {pop /xchart4 xchart4f def} {/xchart4 0 def} ifelse /pchartf where {pop /pchart1 pchartf def /pchart2 pchartf def /pchartd pchartdf def} {/pchart1 3 def} ifelse /colsepf where {pop /colsep1 colsepf def /colsep2 colsepf def /colsepd colsepdf def} {/colsep1 0 def} ifelse /pmetamf where {pop /pmetam1 pmetamf def /pmetam2 pmetamf def /pmetamd pmetamdf def} {/pmetam1 0 def} ifelse %either defaul values for xchart=0 or values for xchart=1 /lanind lanind1 def % /colorm colorm1 def % /deintp deintp1 def % /xcolor xcolor1 def % /xchart xchart1 def % /pchart pchart1 def % /colsep colsep1 def % /pmetam pmetam1 def % gsave /cvishow0 {cvi 6 string cvs show} def /kchartl 0 def %0:left page, 1:right page /pchartl 4 def %0:top page, 4:down page %not used 72 90 translate 0.010 MM dup scale 40 setlinewidth /ymax1 08550 def /xmax1 12250 def %2x6000+250 1.0 setgray 0 0 moveto xmax1 0 rlineto 0 ymax1 rlineto xmax1 neg 0 rlineto closepath fill 0 setgray 0 0 moveto xmax1 0 rlineto 0 ymax1 rlineto xmax1 neg 0 rlineto closepath stroke TK 0 setgray 150 /Times-ISOL1 FS 150 -140 moveto kchartl 0 eq {(egw40-) show} {(egw41-) show} ifelse pchartl 0 eq {(3n) show} {(7n) show} ifelse grestore gsave %00 %01 %02 /SHSl 00.0 def /SHAl 02.8 def /STSl 13.0 def /STAl 14.5 def BeginEPSF 28 SHSl sub MM 064 STSl add MM translate 10 /Times-ISOL1 FS 53 MM 1 MM moveto ( ) show 1 1 scale -77 -91 translate %%BeginDocument: Bild 15 %!PS-Adobe-3.0 EPSF-3.0 egw40-5a env00-1n %%BoundingBox: 70 85 246 206 %START PDFDE011.EPS /pdfmark05 where {pop} {userdict /pdfmark05 /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/egw4/egw4.HTM) /Author (compare K. Richter "Computergrafik ...": ISBN 3-8007-1775-1) /Subject (goto: http://farbe.li.tu-berlin.de or http://color.li.tu-berlin.de) /Keywords (image reproduction, colour devices) /Creator (klaus.richter@mac.com) /CreationDate (D:2023080112000) /ModDate (D:2023080112000) /DOCINFO pdfmark05 [ /View [ /Fit ] /DOCVIEW pdfmark05 %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 /Courier findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /Courier-ISOL1 exch definefont pop /Courier-Oblique findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /CourierI-ISOL1 exch definefont pop /Courier-Bold findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /CourierB-ISOL1 exch definefont pop /Courier-BoldOblique findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /CourierBI-ISOL1 exch definefont pop /TG {350 /Times-ISOL1 FS} bind def /TM {280 /Times-ISOL1 FS} bind def /TK {240 /Times-ISOL1 FS} bind def /TS {200 /Times-ISOL1 FS} bind def /TL {160 /Times-ISOL1 FS} bind def /TIG {350 /TimesI-ISOL1 FS} bind def /TIM {280 /TimesI-ISOL1 FS} bind def /TIK {240 /TimesI-ISOL1 FS} bind def /TIS {200 /TimesI-ISOL1 FS} bind def /TIL {160 /TimesI-ISOL1 FS} bind def /TBG {350 /TimesB-ISOL1 FS} bind def /TBM {280 /TimesB-ISOL1 FS} bind def /TBK {240 /TimesB-ISOL1 FS} bind def /TBS {200 /TimesB-ISOL1 FS} bind def /TBL {160 /TimesB-ISOL1 FS} bind def /TBIG {350 /TimesBI-ISOL1 FS} bind def /TBIM {280 /TimesBI-ISOL1 FS} bind def /TBIK {240 /TimesBI-ISOL1 FS} bind def /TBIS {200 /TimesBI-ISOL1 FS} bind def /TBIL {160 /TimesBI-ISOL1 FS} bind def /SG {350 /Symbol FS} bind def /SM {280 /Symbol FS} bind def /SK {240 /Symbol FS} bind def /SS {200 /Symbol FS} bind def /SL {160 /Symbol FS} bind def %%EndProlog gsave %lanindL2.EPS START 20000505 /lanind 0 def /lantex [(G) (E) (S) (F) (I) (J) (M)] def /showde {0 lanind eq {show} {pop} ifelse} bind def /showen {1 lanind eq {show} {pop} ifelse} bind def /showes {2 lanind eq {show} {pop} ifelse} bind def /showfr {3 lanind eq {show} {pop} ifelse} bind def /showit {4 lanind eq {show} {pop} ifelse} bind def /showjp {5 lanind eq {show} {pop} ifelse} bind def /showea {1 lanind le {show} {pop} ifelse} bind def /lanindf where {pop /lanind1 lanindf def /lanind2 lanindf def /lanindd laninddf def} {/lanind1 0 def /lanind2 0 def} ifelse /lanind lanind1 def 5 /Times-Roman FS 72 85 moveto (egw40-5a env00-1n) show 72 90 translate 0.01 MM dup scale 20 setlinewidth /xwidth 6000 def /ywidth 4000 def 0.7 setgray 0 0 moveto xwidth 0 rlineto 0 ywidth rlineto xwidth neg 0 rlineto closepath fill 0 setgray 0 0 moveto xwidth 0 rlineto 0 ywidth rlineto xwidth neg 0 rlineto closepath stroke /fakt 20 def /a2 1.00 def /b2 -0.4 def TBS 100 3800 moveto (TUB colourimetry with normalization to ) showen (TUB\255Farbmetrik mit Normierung auf ) showde TBIS (Y) show TBS (=90, ) show TBIS (C) show TBS (=) show TBIS (Y) show TBL 0 -50 rmoveto (W) show 0 50 rmoveto TBS ( : ) show TBIS (Y) show TBL 0 -50 rmoveto (N) show 0 50 rmoveto TBS ( = 25 : 1) show %SS (\245) show 100 3600 moveto TS (Equations for Yellow (J), Blue (B), White (W), Grey (U), Black (N):) showen (Gleichungen f\374r Gelb (J), Blau (B), Weiss (W), Grau (U), Schwarz (N):) showde 100 3400 moveto TBS (Tristimulus value ) showen (Hellbezugswert ) showde 100 3200 moveto TBIS (Y) show TBL 0 -50 rmoveto (J) show 0 50 rmoveto TBS ( + ) show TBIS (Y) show TBL 0 -50 rmoveto (B) show 0 50 rmoveto TBS ( = 66 + 24 = 90 ) show TS ([1]) show 100 2950 moveto (Chromatic value ) showen (Buntwert ) showde 100 2750 moveto TBS (|) show TBIS (C) show TBL 0 -50 rmoveto (AB,2,J) show 0 50 rmoveto TBS (| = ) show TBS (|) show TBIS (C) show TBL 0 -50 rmoveto (AB,2,B) show 0 50 rmoveto TBS (| = 60 ) show TS ([2]) show 100 2500 moveto (Contrast ) showen (Kontrast ) showde 100 2300 moveto TBIS (C) show TBS (=) show TBIS (Y) show TBL 0 -50 rmoveto (W) show 0 50 rmoveto TBS ( : ) show TBIS (Y) show TBL 0 -50 rmoveto (N) show 0 50 rmoveto TBS ( = ) show TBS (90 : 3,6 ) show 100 2050 moveto TBS ( = 25 : 1 ) show TS ([3]) show 100 1800 moveto (Chromaticity difference ) showen (Farbartdifferenz ) showde 100 1600 moveto TBIS (c) show TBL 0 -50 rmoveto (AB,2,J) show 0 50 rmoveto TBS (=) show TBIS (C) show TBL 0 -50 rmoveto (AB,2,J) show 0 50 rmoveto TBS ( / ) show TBIS (Y) show TBL 0 -50 rmoveto (J) show 0 50 rmoveto TS ( [4]) show 100 1350 moveto TBIS (c) show TBL 0 -50 rmoveto (AB,2,B) show 0 50 rmoveto TBS (=) show TBIS (C) show TBL 0 -50 rmoveto (AB,2,B) show 0 50 rmoveto TBS ( / ) show TBIS (Y) show TBL 0 -50 rmoveto (B) show 0 50 rmoveto TS ( [5]) show newpath /xt0 3700 def /yt0 0500 def xt0 yt0 translate TBS %red cylinder CAB=60 1 0 0 setrgbcolor [100] 0 setdash 060 fakt mul 090 fakt mul moveto 060 fakt mul 000 fakt mul lineto stroke -60 fakt mul 090 fakt mul moveto -60 fakt mul 000 fakt mul lineto stroke 062 fakt mul 092 fakt mul moveto (60) show -58 fakt mul 082 fakt mul moveto (-60) show [ ] 0 setdash 0 setgray %axis and scales 1 setgray -1200 0 moveto 3000 0 rlineto stroke 0 -400 moveto 0 3000 rlineto stroke 1800 100 sub 50 moveto 100 -50 rlineto -100 -50 rlineto closepath fill -50 2600 100 sub moveto 50 100 rlineto 50 -100 rlineto closepath fill /xt10x 5 array def /yt10x 5 array def /xt10x [(-50) ( ) ( 50)] def /yt10x [(0) ( ) (100)] def 1 setgray 0 1 2 {/i exch def %i=0,2 x-axis -1000 i 1000 mul add -75 moveto 0 150 rlineto stroke -1200 i 1000 mul add -300 moveto TBS xt10x i get show i 2 eq {-1000 i 1000 mul add 700 add 0 moveto -200 200 rmoveto TBIK (C) show 00 -50 rmoveto TBS (AB,2) show 0 50 rmoveto } if } for %i=0,2 0 1 2 {/i exch def %i=0,2 y-axis -75 0000 i 1000 mul add moveto 150 0 rlineto stroke 0100 i 1000 mul 200 sub i 1 eq {100 add} if i 2 eq {200 add} if moveto TBS yt10x i get show i 2 eq {0 0200 i 1000 mul add moveto 100 150 rmoveto TBIK (Y) show } if } for %i=0,2 newpath TBS 1 setgray 0 3.6 fakt mul 90 0 360 arc fill %N newpath 02 fakt mul 52 fakt mul moveto (50) show newpath 1 setgray 0 90.0 fakt mul 90 0 360 arc fill %W 0 setgray 0 90.0 fakt mul 90 0 360 arc stroke %W newpath 06 fakt mul 88 fakt mul moveto (90) show newpath 02 fakt mul 37 fakt mul moveto (46,8) show newpath 06 fakt mul 02 fakt mul moveto (3,6) show /YNot (3,6) def /CAB2Wo 0 fakt mul def /YWo 90.0 fakt mul def /CAB2No 0 fakt mul def /YNo 3.6 fakt mul def /CAB2Jo 60 fakt mul def /YJo 66 fakt mul def /CAB2Bo -60 fakt mul def /YBo 24 fakt mul def 15 setlinewidth [100] 0 setdash CAB2Jo YJo moveto CAB2Bo YBo lineto stroke [ ] 0 setdash CAB2No YNo moveto CAB2Jo YJo lineto CAB2Wo YWo lineto CAB2Bo YBo lineto CAB2No YNo lineto stroke 20 setlinewidth %No newpath 0 setgray CAB2No YNo 90 0 360 arc fill 1 setgray newpath CAB2No YNo 90 0 360 arc stroke %Jo newpath 1 1 0 setrgbcolor CAB2Jo YJo 90 0 360 arc fill 0 setgray newpath CAB2Jo YJo 90 0 360 arc stroke %Wo newpath 1 setgray CAB2Wo YWo 90 0 360 arc fill 0 setgray newpath CAB2Wo YWo 90 0 360 arc stroke %Bo newpath 0 0 1 setrgbcolor CAB2Bo YBo 90 0 360 arc fill 1 setgray newpath CAB2Bo YBo 90 0 360 arc stroke 0 setgray CAB2Jo 150 sub YJo 100 add moveto (J) show CAB2Bo 050 add YBo 250 sub moveto (B) show CAB2Wo 300 sub YWo 050 sub moveto (W) show CAB2No 200 sub YNo 100 add moveto (N) show 0 setgray CAB2Jo 100 add YJo 100 add moveto TBS (\050C) show TBL 0 -50 rmoveto (AB,2) show 0 50 rmoveto TBS (, Y\051) show CAB2Jo 150 add YJo 150 sub moveto (=(60, 66)) show CAB2Bo 990 sub YBo 050 add moveto TBS (\050C) show TBL 0 -50 rmoveto (AB,2) show 0 50 rmoveto TBS (, Y\051) show CAB2Bo 990 sub YBo 200 sub moveto (=(-60, 24)) show newpath %0 46.8 fakt mul 50 0 360 arc fill 0 45 fakt mul 50 0 360 arc fill xt0 neg yt0 neg translate grestore showpage %%Trailer %line 239 %%EndDocument EndEPSF grestore gsave BeginEPSF 86 SHAl add MM 064 STSl add MM translate 10 /Times-ISOL1 FS 53 MM 1 MM moveto ( ) show 1 1 scale -77 -91 translate %%BeginDocument: Bild 16 %!PS-Adobe-3.0 EPSF-3.0 egw40-6a env00-2n %%BoundingBox: 70 85 246 206 %START PDFDE011.EPS /pdfmark06 where {pop} {userdict /pdfmark06 /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/egw4/egw4.HTM) /Author (compare K. Richter "Computergrafik ...": ISBN 3-8007-1775-1) /Subject (goto: http://farbe.li.tu-berlin.de or http://color.li.tu-berlin.de) /Keywords (image reproduction, colour devices) /Creator (klaus.richter@mac.com) /CreationDate (D:2023080112000) /ModDate (D:2023080112000) /DOCINFO pdfmark06 [ /View [ /Fit ] /DOCVIEW pdfmark06 %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 /Courier findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /Courier-ISOL1 exch definefont pop /Courier-Oblique findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /CourierI-ISOL1 exch definefont pop /Courier-Bold findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /CourierB-ISOL1 exch definefont pop /Courier-BoldOblique findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /CourierBI-ISOL1 exch definefont pop /TG {350 /Times-ISOL1 FS} bind def /TM {280 /Times-ISOL1 FS} bind def /TK {240 /Times-ISOL1 FS} bind def /TS {200 /Times-ISOL1 FS} bind def /TL {160 /Times-ISOL1 FS} bind def /TIG {350 /TimesI-ISOL1 FS} bind def /TIM {280 /TimesI-ISOL1 FS} bind def /TIK {240 /TimesI-ISOL1 FS} bind def /TIS {200 /TimesI-ISOL1 FS} bind def /TIL {160 /TimesI-ISOL1 FS} bind def /TBG {350 /TimesB-ISOL1 FS} bind def /TBM {280 /TimesB-ISOL1 FS} bind def /TBK {240 /TimesB-ISOL1 FS} bind def /TBS {200 /TimesB-ISOL1 FS} bind def /TBL {160 /TimesB-ISOL1 FS} bind def /TBIG {350 /TimesBI-ISOL1 FS} bind def /TBIM {280 /TimesBI-ISOL1 FS} bind def /TBIK {240 /TimesBI-ISOL1 FS} bind def /TBIS {200 /TimesBI-ISOL1 FS} bind def /TBIL {160 /TimesBI-ISOL1 FS} bind def /SG {350 /Symbol FS} bind def /SM {280 /Symbol FS} bind def /SK {240 /Symbol FS} bind def /SS {200 /Symbol FS} bind def /SL {160 /Symbol FS} bind def %%EndProlog gsave %lanindL2.EPS START 20000505 /lanind 0 def /lantex [(G) (E) (S) (F) (I) (J) (M)] def /showde {0 lanind eq {show} {pop} ifelse} bind def /showen {1 lanind eq {show} {pop} ifelse} bind def /showes {2 lanind eq {show} {pop} ifelse} bind def /showfr {3 lanind eq {show} {pop} ifelse} bind def /showit {4 lanind eq {show} {pop} ifelse} bind def /showjp {5 lanind eq {show} {pop} ifelse} bind def /showea {1 lanind le {show} {pop} ifelse} bind def /lanindf where {pop /lanind1 lanindf def /lanind2 lanindf def /lanindd laninddf def} {/lanind1 0 def /lanind2 0 def} ifelse /lanind lanind1 def 5 /Times-Roman FS 72 86 moveto (egw40-6a env00-2n) show 72 90 translate 0.01 MM dup scale 20 setlinewidth /xwidth 6000 def /ywidth 4000 def 0.7 setgray 0 0 moveto xwidth 0 rlineto 0 ywidth rlineto xwidth neg 0 rlineto closepath fill 0 setgray 0 0 moveto xwidth 0 rlineto 0 ywidth rlineto xwidth neg 0 rlineto closepath stroke /fakt 20 def /a2 1.00 def /b2 -0.4 def TBS 100 3800 moveto (CIE colourimetry with normalization to ) showen (CIE\255Farbmetrik mit Normierung auf ) showde TBIS (Y) show TBS (=100, ) show TBIS (C) show TBS (=) show TBIS (Y) show TBL 0 -50 rmoveto (W) show 0 50 rmoveto TBS ( : ) show TBIS (Y) show TBL 0 -50 rmoveto (N) show 0 50 rmoveto TBS ( = ) show SS (\245) show 100 3600 moveto TS (Equations for Yellow (J), Blue (B), White (W), Grey (U), Black (N):) showen (Gleichungen f\374r Gelb (J), Blau (B), Wei\338 (W), Grau (U), Schwarz (N):) showde 100 3400 moveto TBS (Tristimulus value ) showen (Hellbezugswert ) showde 100 3200 moveto TBIS (Y) show TBL 0 -50 rmoveto (J) show 0 50 rmoveto TBS ( + ) show TBIS (Y) show TBL 0 -50 rmoveto (B) show 0 50 rmoveto TBS ( = 72 + 28 = 100 ) show TS ([1]) show 100 2950 moveto (Chromatic value ) showen (Buntwert ) showde 100 2750 moveto TBS (|) show TBIS (C) show TBL 0 -50 rmoveto (AB,2,J) show 0 50 rmoveto TBS (| = ) show TBS (|) show TBIS (C) show TBL 0 -50 rmoveto (AB,2,B) show 0 50 rmoveto TBS (| = 66 ) show TS ([2]) show 100 2500 moveto (Contrast ) showen (Kontrast ) showde 100 2300 moveto TBIS (C) show TBS (=) show TBIS (Y) show TBL 0 -50 rmoveto (W) show 0 50 rmoveto TBS ( : ) show TBIS (Y) show TBL 0 -50 rmoveto (N) show 0 50 rmoveto TBS ( = ) show TBS (100 : 0 ) show SS (\245) show TS ( [3]) show 100 2000 moveto (Chromaticity difference ) showen (Farbartdifferenz ) showde 100 1800 moveto TBIS (c) show TBL 0 -50 rmoveto (AB,2,J) show 0 50 rmoveto TBS (=) show TBIS (C) show TBL 0 -50 rmoveto (AB,2,J) show 0 50 rmoveto TBS ( / ) show TBIS (Y) show TBL 0 -50 rmoveto (J) show 0 50 rmoveto TS ( [4]) show 100 1550 moveto TBIS (c) show TBL 0 -50 rmoveto (AB,2,B) show 0 50 rmoveto TBS (=) show TBIS (C) show TBL 0 -50 rmoveto (AB,2,B) show 0 50 rmoveto TBS ( / ) show TBIS (Y) show TBL 0 -50 rmoveto (B) show 0 50 rmoveto TS ( [5]) show newpath /xt0 3700 def /yt0 0500 def xt0 yt0 translate TBS %red cylinder CAB=60 1 0 0 setrgbcolor [100] 0 setdash 066 fakt mul 090 fakt mul moveto 066 fakt mul 000 fakt mul lineto stroke -66 fakt mul 090 fakt mul moveto -66 fakt mul 000 fakt mul lineto stroke 064 fakt mul 092 fakt mul moveto (66) show -60 fakt mul 082 fakt mul moveto (-66) show [ ] 0 setdash 0 setgray %axis and scales 1 setgray -1200 0 moveto 3000 0 rlineto stroke 0 -400 moveto 0 3000 rlineto stroke 1800 100 sub 50 moveto 100 -50 rlineto -100 -50 rlineto closepath fill -50 2600 100 sub moveto 50 100 rlineto 50 -100 rlineto closepath fill /xt10x 5 array def /yt10x 5 array def /xt10x [(-50) ( ) ( 50)] def /yt10x [(0) ( ) (100)] def 1 setgray 0 1 2 {/i exch def %i=0,2 x-axis -1000 i 1000 mul add -75 moveto 0 150 rlineto stroke -1200 i 1000 mul add -300 moveto TBS xt10x i get show i 2 eq {-1000 i 1000 mul add 700 add 0 moveto -200 200 rmoveto TBIK (C) show 00 -50 rmoveto TBS (AB,2) show 0 50 rmoveto } if } for %i=0,2 0 1 2 {/i exch def %i=0,2 y-axis -75 0000 i 1000 mul add moveto 150 0 rlineto stroke % 0100 i 1000 mul 200 sub i 1 eq {100 add} if % i 2 eq {200 add} if moveto % TBS yt10x i get show i 2 eq {0 0200 i 1000 mul add moveto 100 150 rmoveto TBIK (Y) show } if } for %i=0,2 newpath TBS 1 setgray 0 0 fakt mul 90 0 360 arc fill %N %newpath %02 fakt mul 52 fakt mul moveto (50) show newpath 1 setgray 0 100 fakt mul 90 0 360 arc fill %W 0 setgray 0 100 fakt mul 90 0 360 arc stroke %W newpath 06 fakt mul 98 fakt mul moveto (100) show newpath 04 fakt mul 45 fakt mul moveto (50) show newpath 08 fakt mul 02 fakt mul moveto (0) show /YNot (0,0) def /CAB2Wo 0 fakt mul def /YWo 100 fakt mul def /CAB2No 0 fakt mul def /YNo 0 fakt mul def /CAB2Uo 0 fakt mul def /YUo 50 fakt mul def /CAB2Jo 67 fakt mul def /YJo 72 fakt mul def /CAB2Bo -67 fakt mul def /YBo 28 fakt mul def 15 setlinewidth [100] 0 setdash CAB2Jo YJo moveto CAB2Bo YBo lineto stroke [ ] 0 setdash CAB2No YNo moveto CAB2Jo YJo lineto CAB2Wo YWo lineto CAB2Bo YBo lineto CAB2No YNo lineto stroke 20 setlinewidth %No newpath 0 setgray CAB2No YNo 90 0 360 arc fill 1 setgray newpath CAB2No YNo 90 0 360 arc stroke %Jo newpath 1 1 0 setrgbcolor CAB2Jo YJo 90 0 360 arc fill 0 setgray newpath CAB2Jo YJo 90 0 360 arc stroke %Wo newpath 1 setgray CAB2Wo YWo 90 0 360 arc fill 0 setgray newpath CAB2Wo YWo 90 0 360 arc stroke %Bo newpath 0 0 1 setrgbcolor CAB2Bo YBo 90 0 360 arc fill 1 setgray newpath CAB2Bo YBo 90 0 360 arc stroke 0 setgray CAB2Jo 150 sub YJo 100 add moveto (J) show CAB2Bo 050 add YBo 250 sub moveto (B) show CAB2Wo 300 sub YWo 050 sub moveto (W) show CAB2No 200 sub YNo 100 add moveto (N) show CAB2Uo 300 sub YUo 050 add moveto (U) show 0 setgray CAB2Jo 100 add YJo 100 add moveto TBS (\050C) show TBL 0 -50 rmoveto (AB,2) show 0 50 rmoveto TBS (, Y\051) show CAB2Jo 150 add YJo 150 sub moveto (=(66, 72)) show CAB2Bo 990 sub YBo 050 add moveto TBS (\050C) show TBL 0 -50 rmoveto (AB,2) show 0 50 rmoveto TBS (, Y\051) show CAB2Bo 990 sub YBo 200 sub moveto (=(-66, 28)) show newpath %0 46.8 fakt mul 50 0 360 arc fill 0 50 fakt mul 50 0 360 arc fill xt0 neg yt0 neg translate grestore showpage %%Trailer %line 249 %%EndDocument EndEPSF grestore gsave BeginEPSF /xc1 16 def /yc1 12 def /xt 1 def xchart 1 eq {/xt 1 def} if 28 SHSl sub MM 020 STAl add MM translate 10 /Times-ISOL1 FS 53 MM 1 MM moveto ( ) show 1 1 scale -77 -91 translate %%BeginDocument: Bild 17 %!PS-Adobe-3.0 EPSF-3.0 egw40-5a env00-3n %%BoundingBox: 70 85 246 206 %START PDFDE011.EPS /pdfmark07 where {pop} {userdict /pdfmark07 /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/egw4/egw4.HTM) /Author (compare K. Richter "Computergrafik ...": ISBN 3-8007-1775-1) /Subject (goto: http://farbe.li.tu-berlin.de or http://color.li.tu-berlin.de) /Keywords (image reproduction, colour devices) /Creator (klaus.richter@mac.com) /CreationDate (D:2023080112000) /ModDate (D:2023080112000) /DOCINFO pdfmark07 [ /View [ /Fit ] /DOCVIEW pdfmark07 %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 /Courier findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /Courier-ISOL1 exch definefont pop /Courier-Oblique findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /CourierI-ISOL1 exch definefont pop /Courier-Bold findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /CourierB-ISOL1 exch definefont pop /Courier-BoldOblique findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /CourierBI-ISOL1 exch definefont pop /TG {350 /Times-ISOL1 FS} bind def /TM {280 /Times-ISOL1 FS} bind def /TK {240 /Times-ISOL1 FS} bind def /TS {200 /Times-ISOL1 FS} bind def /TL {160 /Times-ISOL1 FS} bind def /TIG {350 /TimesI-ISOL1 FS} bind def /TIM {280 /TimesI-ISOL1 FS} bind def /TIK {240 /TimesI-ISOL1 FS} bind def /TIS {200 /TimesI-ISOL1 FS} bind def /TIL {160 /TimesI-ISOL1 FS} bind def /TBG {350 /TimesB-ISOL1 FS} bind def /TBM {280 /TimesB-ISOL1 FS} bind def /TBK {240 /TimesB-ISOL1 FS} bind def /TBS {200 /TimesB-ISOL1 FS} bind def /TBL {160 /TimesB-ISOL1 FS} bind def /TBIG {350 /TimesBI-ISOL1 FS} bind def /TBIM {280 /TimesBI-ISOL1 FS} bind def /TBIK {240 /TimesBI-ISOL1 FS} bind def /TBIS {200 /TimesBI-ISOL1 FS} bind def /TBIL {160 /TimesBI-ISOL1 FS} bind def /SG {350 /Symbol FS} bind def /SM {280 /Symbol FS} bind def /SK {240 /Symbol FS} bind def /SS {200 /Symbol FS} bind def /SL {160 /Symbol FS} bind def %%EndProlog gsave %lanindL2.EPS START 20000505 /lanind 0 def /lantex [(G) (E) (S) (F) (I) (J) (M)] def /showde {0 lanind eq {show} {pop} ifelse} bind def /showen {1 lanind eq {show} {pop} ifelse} bind def /showes {2 lanind eq {show} {pop} ifelse} bind def /showfr {3 lanind eq {show} {pop} ifelse} bind def /showit {4 lanind eq {show} {pop} ifelse} bind def /showjp {5 lanind eq {show} {pop} ifelse} bind def /showea {1 lanind le {show} {pop} ifelse} bind def /lanindf where {pop /lanind1 lanindf def /lanind2 lanindf def /lanindd laninddf def} {/lanind1 0 def /lanind2 0 def} ifelse /lanind lanind1 def 5 /Times-Roman FS 72 85 moveto (egw40-5a env00-3n) show 72 90 translate 0.01 MM dup scale 20 setlinewidth /xwidth 6000 def /ywidth 4000 def 0.7 setgray 0 0 moveto xwidth 0 rlineto 0 ywidth rlineto xwidth neg 0 rlineto closepath fill 0 setgray 0 0 moveto xwidth 0 rlineto 0 ywidth rlineto xwidth neg 0 rlineto closepath stroke /fakt 20 def /a2 1.00 def /b2 -0.4 def TBS 100 3800 moveto (TUB colourimetry with normalization to ) showen (TUB\255Farbmetrik mit Normierung auf ) showde TBIS (Y) show TBS (=90, ) show TBIS (C) show TBS (=) show TBIS (Y) show TBL 0 -50 rmoveto (W) show 0 50 rmoveto TBS ( : ) show TBIS (Y) show TBL 0 -50 rmoveto (N) show 0 50 rmoveto TBS ( = 25 : 1) show %SS (\245) show 100 3600 moveto TS (Equations for Green (G), Magenta (M), White (W), Grey (U), Black (N):) showen (Gleichungen f\374r Gr\374n (G), Magenta (M), Wei\338 (W), Grau (U), Schwarz (N):) showde 100 3400 moveto TBS (Tristimulus value ) showen (Hellbezugswert ) showde 100 3200 moveto TBIS (Y) show TBL 0 -50 rmoveto (G) show 0 50 rmoveto TBS ( + ) show TBIS (Y) show TBL 0 -50 rmoveto (M) show 0 50 rmoveto TBS ( = 54 + 36 = 90 ) show TS ([1]) show 100 2950 moveto (Chromatic value ) showen (Buntwert ) showde 100 2750 moveto TBS (|) show TBIS (C) show TBL 0 -50 rmoveto (AB,2,G) show 0 50 rmoveto TBS (| = ) show TBS (|) show TBIS (C) show TBL 0 -50 rmoveto (AB,2,M) show 0 50 rmoveto TBS (| = 60 ) show TS ([2]) show 100 2500 moveto (Contrast ) showen (Kontrast ) showde 100 2300 moveto TBIS (C) show TBS (=) show TBIS (Y) show TBL 0 -50 rmoveto (W) show 0 50 rmoveto TBS ( : ) show TBIS (Y) show TBL 0 -50 rmoveto (N) show 0 50 rmoveto TBS ( = ) show TBS (90 : 3,6 ) show 100 2050 moveto TBS ( = 25 : 1 ) show TS ([3]) show 100 0800 moveto (Chromaticity difference ) showen (Farbartdifferenz ) showde 100 0600 moveto TBIS (c) show TBL 0 -50 rmoveto (AB,2,G) show 0 50 rmoveto TBS (=) show TBIS (C) show TBL 0 -50 rmoveto (AB,2,G) show 0 50 rmoveto TBS ( / ) show TBIS (Y) show TBL 0 -50 rmoveto (G) show 0 50 rmoveto TS ( [4]) show 100 0400 moveto TBIS (c) show TBL 0 -50 rmoveto (AB,2,M) show 0 50 rmoveto TBS (=) show TBIS (C) show TBL 0 -50 rmoveto (AB,2,M) show 0 50 rmoveto TBS ( / ) show TBIS (Y) show TBL 0 -50 rmoveto (M) show 0 50 rmoveto TS ( [5]) show newpath /xt0 3700 def /yt0 0500 def xt0 yt0 translate TBS %red cylinder CAB=60 1 0 0 setrgbcolor [100] 0 setdash 060 fakt mul 090 fakt mul moveto 060 fakt mul 000 fakt mul lineto stroke -60 fakt mul 090 fakt mul moveto -60 fakt mul 000 fakt mul lineto stroke 062 fakt mul 092 fakt mul moveto (60) show -58 fakt mul 082 fakt mul moveto (-60) show [ ] 0 setdash 0 setgray %axis and scales 1 setgray -1200 0 moveto 3000 0 rlineto stroke 0 -400 moveto 0 3000 rlineto stroke 1800 100 sub 50 moveto 100 -50 rlineto -100 -50 rlineto closepath fill -50 2600 100 sub moveto 50 100 rlineto 50 -100 rlineto closepath fill /xt10x 5 array def /yt10x 5 array def /xt10x [(-50) ( ) ( 50)] def /yt10x [(0) ( ) (100)] def 1 setgray 0 1 2 {/i exch def %i=0,2 x-axis -1000 i 1000 mul add -75 moveto 0 150 rlineto stroke -1200 i 1000 mul add -300 moveto TBS xt10x i get show i 2 eq {-1000 i 1000 mul add 700 add 0 moveto -200 200 rmoveto TBIK (C) show 00 -50 rmoveto TBS (AB,2) show 0 50 rmoveto } if } for %i=0,2 0 1 2 {/i exch def %i=0,2 y-axis -75 0000 i 1000 mul add moveto 150 0 rlineto stroke 0100 i 1000 mul 200 sub i 1 eq {100 add} if i 2 eq {200 add} if moveto TBS yt10x i get show i 2 eq {0 0200 i 1000 mul add moveto 100 150 rmoveto TBIK (Y) show } if } for %i=0,2 newpath TBS 1 setgray 0 3.6 fakt mul 90 0 360 arc fill %N newpath 02 fakt mul 52 fakt mul moveto (50) show newpath 1 setgray 0 90.0 fakt mul 90 0 360 arc fill %W 0 setgray 0 90.0 fakt mul 90 0 360 arc stroke %W newpath 06 fakt mul 88 fakt mul moveto (90) show newpath 02 fakt mul 35 fakt mul moveto (46,8) show newpath 08 fakt mul 02 fakt mul moveto (3,6) show /YNot (3,6) def /CAB2Wo 0 fakt mul def /YWo 90.0 fakt mul def /CAB2No 0 fakt mul def /YNo 3.6 fakt mul def /CAB2Go -60 fakt mul def /YGo 54 fakt mul def /CAB2Mo 60 fakt mul def /YMo 36 fakt mul def 15 setlinewidth [100] 0 setdash CAB2Go YGo moveto CAB2Mo YMo lineto stroke [ ] 0 setdash CAB2No YNo moveto CAB2Go YGo lineto CAB2Wo YWo lineto CAB2Mo YMo lineto CAB2No YNo lineto stroke 20 setlinewidth %No newpath 0 setgray CAB2No YNo 90 0 360 arc fill 1 setgray newpath CAB2No YNo 90 0 360 arc stroke %Go newpath 0 1 0 setrgbcolor CAB2Go YGo 90 0 360 arc fill 0 setgray newpath CAB2Go YGo 90 0 360 arc stroke %Wo newpath 1 setgray CAB2Wo YWo 90 0 360 arc fill 0 setgray newpath CAB2Wo YWo 90 0 360 arc stroke %Mo newpath 1 0 1 setrgbcolor CAB2Mo YMo 90 0 360 arc fill 1 setgray newpath CAB2Mo YMo 90 0 360 arc stroke 0 setgray CAB2Go 050 add YGo 150 add moveto (G) show CAB2Mo 250 sub YMo 300 sub moveto (M) show CAB2Wo 300 sub YWo 050 sub moveto (W) show CAB2No 300 sub YNo 050 sub moveto (N) show 0 setgray CAB2Mo 100 add YMo 100 add moveto TBS (\050C) show TBL 0 -50 rmoveto (AB,2) show 0 50 rmoveto TBS (, Y\051) show CAB2Mo 150 add YMo 150 sub moveto (=(60, 54)) show CAB2Go 990 sub YGo 050 add moveto TBS (\050C) show TBL 0 -50 rmoveto (AB,2) show 0 50 rmoveto TBS (, Y\051) show CAB2Go 990 sub YGo 200 sub moveto (=(-60, 36)) show newpath %0 46.8 fakt mul 50 0 360 arc fill 0 45 fakt mul 50 0 360 arc fill xt0 neg yt0 neg translate grestore showpage %%Trailer %line 259 %%EndDocument EndEPSF grestore gsave BeginEPSF 86 SHAl add MM 020 STAl add MM translate 12 /Times-ISOL1 FS -9 MM -7 MM moveto ( ) show 10 /Times-ISOL1 FS 53 MM 1 MM moveto ( ) show 1 1 scale -77 -91 translate %%BeginDocument: Bild 18 %!PS-Adobe-3.0 EPSF-3.0 egw40-8a env00-4n %%BoundingBox: 70 85 246 206 %START PDFDE011.EPS /pdfmark08 where {pop} {userdict /pdfmark08 /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/egw4/egw4.HTM) /Author (compare K. Richter "Computergrafik ...": ISBN 3-8007-1775-1) /Subject (goto: http://farbe.li.tu-berlin.de or http://color.li.tu-berlin.de) /Keywords (image reproduction, colour devices) /Creator (klaus.richter@mac.com) /CreationDate (D:2023080112000) /ModDate (D:2023080112000) /DOCINFO pdfmark08 [ /View [ /Fit ] /DOCVIEW pdfmark08 %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 /Courier findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /Courier-ISOL1 exch definefont pop /Courier-Oblique findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /CourierI-ISOL1 exch definefont pop /Courier-Bold findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /CourierB-ISOL1 exch definefont pop /Courier-BoldOblique findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /CourierBI-ISOL1 exch definefont pop /TG {350 /Times-ISOL1 FS} bind def /TM {280 /Times-ISOL1 FS} bind def /TK {240 /Times-ISOL1 FS} bind def /TS {200 /Times-ISOL1 FS} bind def /TL {160 /Times-ISOL1 FS} bind def /TIG {350 /TimesI-ISOL1 FS} bind def /TIM {280 /TimesI-ISOL1 FS} bind def /TIK {240 /TimesI-ISOL1 FS} bind def /TIS {200 /TimesI-ISOL1 FS} bind def /TIL {160 /TimesI-ISOL1 FS} bind def /TBG {350 /TimesB-ISOL1 FS} bind def /TBM {280 /TimesB-ISOL1 FS} bind def /TBK {240 /TimesB-ISOL1 FS} bind def /TBS {200 /TimesB-ISOL1 FS} bind def /TBL {160 /TimesB-ISOL1 FS} bind def /TBIG {350 /TimesBI-ISOL1 FS} bind def /TBIM {280 /TimesBI-ISOL1 FS} bind def /TBIK {240 /TimesBI-ISOL1 FS} bind def /TBIS {200 /TimesBI-ISOL1 FS} bind def /TBIL {160 /TimesBI-ISOL1 FS} bind def /SG {350 /Symbol FS} bind def /SM {280 /Symbol FS} bind def /SK {240 /Symbol FS} bind def /SS {200 /Symbol FS} bind def /SL {160 /Symbol FS} bind def %%EndProlog gsave %lanindL2.EPS START 20000505 /lanind 0 def /lantex [(G) (E) (S) (F) (I) (J) (M)] def /showde {0 lanind eq {show} {pop} ifelse} bind def /showen {1 lanind eq {show} {pop} ifelse} bind def /showes {2 lanind eq {show} {pop} ifelse} bind def /showfr {3 lanind eq {show} {pop} ifelse} bind def /showit {4 lanind eq {show} {pop} ifelse} bind def /showjp {5 lanind eq {show} {pop} ifelse} bind def /showea {1 lanind le {show} {pop} ifelse} bind def /lanindf where {pop /lanind1 lanindf def /lanind2 lanindf def /lanindd laninddf def} {/lanind1 0 def /lanind2 0 def} ifelse /lanind lanind1 def 5 /Times-Roman FS 72 85 moveto (egw40-8a env00-4n) show 72 90 translate 0.01 MM dup scale 20 setlinewidth /xwidth 6000 def /ywidth 4000 def 0.7 setgray 0 0 moveto xwidth 0 rlineto 0 ywidth rlineto xwidth neg 0 rlineto closepath fill 0 setgray 0 0 moveto xwidth 0 rlineto 0 ywidth rlineto xwidth neg 0 rlineto closepath stroke /fakt 20 def /a2 1.00 def /b2 -0.4 def TBS 100 3800 moveto (TUB colourimetry with normalization to ) showen (TUB\255Farbmetrik mit Normierung auf ) showde TBIS (Y) show TBS (=90, ) show TBIS (C) show TBS (=) show TBIS (Y) show TBL 0 -50 rmoveto (W) show 0 50 rmoveto TBS ( : ) show TBIS (Y) show TBL 0 -50 rmoveto (N) show 0 50 rmoveto TBS ( = 25 : 1) show %SS (\245) show 100 3600 moveto TS (Equations for Cyan (C), Rot (R), White (W), Grey (U), Black (N):) showen (Gleichungen f\374r Cyan (C), Rot (R), Wei\338 (W), Grau (U), Schwarz (N):) showde 100 3400 moveto TBS (Tristimulus value ) showen (Hellbezugswert ) showde 2700 3400 moveto TBIS (Ostwald) show TBS ( and antagonistic (a) colour) showen (\255 und antagonistische (a) Farbe) showde 100 3200 moveto TBIS (Y) show TBL 0 -50 rmoveto (C) show 0 50 rmoveto TBS ( + ) show TBIS (Y) show TBL 0 -50 rmoveto (R) show 0 50 rmoveto TBS ( = 48 + 42 = 90 ) show TS ([1]) show 2700 3200 moveto TBIS (Y) show TBL 0 -50 rmoveto (o) show 0 50 rmoveto TBS ( + ) show TBIS (Y) show TBL 0 -50 rmoveto (a) show 0 50 rmoveto TBS ( = (47+X) + (47-X) = 90 ) show TS ([1a]) show 100 2950 moveto (Chromatic value ) showen (Buntwert ) showde 100 2750 moveto TBS (|) show TBIS (C) show TBL 0 -50 rmoveto (AB,2,C) show 0 50 rmoveto TBS (| = ) show TBS (|) show TBIS (C) show TBL 0 -50 rmoveto (AB,2,R) show 0 50 rmoveto TBS (| = 60 ) show TS ([2]) show 100 2500 moveto (Contrast ) showen (Kontrast ) showde 100 2300 moveto TBIS (C) show TBS (=) show TBIS (Y) show TBL 0 -50 rmoveto (W) show 0 50 rmoveto TBS ( : ) show TBIS (Y) show TBL 0 -50 rmoveto (N) show 0 50 rmoveto TBS ( = ) show TBS (90 : 3,6 ) show 100 2050 moveto TBS ( = 25 : 1 ) show TS ([3]) show 100 0800 moveto (Chromaticity difference ) showen (Farbartdifferenz ) showde 100 0600 moveto TBIS (c) show TBL 0 -50 rmoveto (AB,2,C) show 0 50 rmoveto TBS (=) show TBIS (C) show TBL 0 -50 rmoveto (AB,2,C) show 0 50 rmoveto TBS ( / ) show TBIS (Y) show TBL 0 -50 rmoveto (C) show 0 50 rmoveto TS ( [4]) show 100 0400 moveto TBIS (c) show TBL 0 -50 rmoveto (AB,2,R) show 0 50 rmoveto TBS (=) show TBIS (C) show TBL 0 -50 rmoveto (AB,2,R) show 0 50 rmoveto TBS ( / ) show TBIS (Y) show TBL 0 -50 rmoveto (R) show 0 50 rmoveto TS ( [5]) show newpath /xt0 3700 def /yt0 0500 def xt0 yt0 translate TBS %red cylinder CAB=60 1 0 0 setrgbcolor [100] 0 setdash 060 fakt mul 090 fakt mul moveto 060 fakt mul 000 fakt mul lineto stroke -60 fakt mul 090 fakt mul moveto -60 fakt mul 000 fakt mul lineto stroke 062 fakt mul 092 fakt mul moveto (60) show -58 fakt mul 082 fakt mul moveto (-60) show [ ] 0 setdash 0 setgray %green cylinder CAB=30 0 1 0 setrgbcolor [100] 0 setdash 030 fakt mul 090 fakt mul moveto 030 fakt mul 000 fakt mul lineto stroke -30 fakt mul 090 fakt mul moveto -30 fakt mul 000 fakt mul lineto stroke 032 fakt mul 092 fakt mul moveto (30) show -28 fakt mul 082 fakt mul moveto (-30) show [ ] 0 setdash 0 setgray %axis and scales 1 setgray -1200 0 moveto 3000 0 rlineto stroke 0 -400 moveto 0 3000 rlineto stroke 1800 100 sub 50 moveto 100 -50 rlineto -100 -50 rlineto closepath fill -50 2600 100 sub moveto 50 100 rlineto 50 -100 rlineto closepath fill /xt10x 5 array def /yt10x 5 array def /xt10x [(-50) ( ) ( 50)] def /yt10x [(0) ( ) (100)] def 1 setgray 0 1 2 {/i exch def %i=0,2 x-axis -1000 i 1000 mul add -75 moveto 0 150 rlineto stroke -1200 i 1000 mul add -300 moveto TBS xt10x i get show i 2 eq {-1000 i 1000 mul add 700 add 0 moveto -200 200 rmoveto TBIK (C) show 00 -50 rmoveto TBS (AB,2) show 0 50 rmoveto } if } for %i=0,2 0 1 2 {/i exch def %i=0,2 y-axis -75 0000 i 1000 mul add moveto 150 0 rlineto stroke 0100 i 1000 mul 200 sub i 1 eq {100 add} if i 2 eq {200 add} if moveto TBS yt10x i get show i 2 eq {0 0200 i 1000 mul add moveto 100 150 rmoveto TBIK (Y) show } if } for %i=0,2 newpath TBS 1 setgray 0 3.6 fakt mul 90 0 360 arc fill %N newpath 02 fakt mul 52 fakt mul moveto (50) show newpath 1 setgray 0 90.0 fakt mul 90 0 360 arc fill %W 0 setgray 0 90.0 fakt mul 90 0 360 arc stroke %W newpath 06 fakt mul 88 fakt mul moveto (90) show newpath 02 fakt mul 35 fakt mul moveto (46,8) show newpath 08 fakt mul 02 fakt mul moveto (3,6) show /YNot (3,6) def /CAB2Wo 0 fakt mul def /YWo 90.0 fakt mul def /CAB2No 0 fakt mul def /YNo 3.6 fakt mul def /CAB2Co -60 fakt mul def /YCo 48 fakt mul def /CAB2Ro 60 fakt mul def /YRo 42 fakt mul def 15 setlinewidth [100] 0 setdash CAB2Co YCo moveto CAB2Ro YRo lineto stroke [ ] 0 setdash CAB2No YNo moveto CAB2Co YCo lineto CAB2Wo YWo lineto CAB2Ro YRo lineto CAB2No YNo lineto stroke 20 setlinewidth %No newpath 0 setgray CAB2No YNo 90 0 360 arc fill 1 setgray newpath CAB2No YNo 90 0 360 arc stroke %Go newpath 0 1 1 setrgbcolor CAB2Co YCo 90 0 360 arc fill 0 setgray newpath CAB2Co YCo 90 0 360 arc stroke %Wo newpath 1 setgray CAB2Wo YWo 90 0 360 arc fill 0 setgray newpath CAB2Wo YWo 90 0 360 arc stroke %Mo newpath 1 0 1 setrgbcolor CAB2Ro YRo 90 0 360 arc fill 1 setgray newpath CAB2Ro YRo 90 0 360 arc stroke 0 setgray CAB2Co 050 add YCo 150 add moveto (C) show CAB2Ro 250 sub YRo 300 sub moveto (R) show CAB2Wo 300 sub YWo 050 sub moveto (W) show CAB2No 300 sub YNo 050 sub moveto (N) show 0 setgray CAB2Ro 100 add YRo 100 add moveto TBS (\050C) show TBL 0 -50 rmoveto (AB,2) show 0 50 rmoveto TBS (, Y\051) show CAB2Ro 150 add YRo 150 sub moveto (=(60, 42)) show CAB2Co 990 sub YCo 050 add moveto TBS (\050C) show TBL 0 -50 rmoveto (AB,2) show 0 50 rmoveto TBS (, Y\051) show CAB2Co 990 sub YCo 200 sub moveto (=(-60, 48)) show newpath %0 46.8 fakt mul 50 0 360 arc fill 0 45 fakt mul 50 0 360 arc fill %Ro2 /CAB2Ro2 30 fakt mul def /YRo2 66 fakt mul def 0 1 0 setrgbcolor CAB2No YNo moveto CAB2Ro2 YRo2 lineto stroke newpath 1 0.5 1 setrgbcolor CAB2Ro2 YRo2 90 0 360 arc fill 0 setgray newpath CAB2Ro2 YRo2 90 0 360 arc stroke 0 setgray CAB2Ro2 100 add YRo2 150 add moveto TBS (\050C) show TBL 0 -50 rmoveto (AB,2) show 0 50 rmoveto TBS (, Y\051) show CAB2Ro2 150 add YRo2 100 sub moveto (=(30, 66)) show xt0 neg yt0 neg translate grestore showpage %%Trailer %line 269 %%EndDocument EndEPSF grestore gsave showpage grestore %%Trailer %%EndDocument EndEPSF grestore gsave BeginEPSF 86 SHAl add MM 020 MM translate 12 /Times-ISOL1 FS -9 MM -7 MM moveto ( ) show 10 /Times-ISOL1 FS 53 MM 1 MM moveto ( ) show 1 1 scale -77 -91 translate %%BeginDocument: Bild 18 %line 409 %!PS-Adobe-3.0 EPSF-3.0 egw40-8N %%BoundingBox: 70 85 246 206 /FS {findfont exch scalefont setfont} bind def /MM {72 25.4 div mul} def %%EndProlog gsave /ioutx 0 def ioutx 1 eq {%ioutx=1 4 /Times-Roman FS 72 86 moveto (egw40-8N) show 72 90 translate 0.01 MM dup scale 20 setlinewidth /xwidth 6100 def /ywidth 4000 def 1 setgray 0 0 moveto xwidth 0 rlineto 0 ywidth rlineto xwidth neg 0 rlineto closepath fill 0 setgray 0 0 moveto xwidth 0 rlineto 0 ywidth rlineto xwidth neg 0 rlineto closepath stroke } if %ioutx=1 grestore showpage %%Trailer %%EndDocument EndEPSF grestore gsave BeginEPSF 161 MM 197 MM translate 10 /Times-ISOL1 FS 1 1 scale -77 -91 translate %%BeginDocument: Bild 12 %line 419 %%EndDocument EndEPSF grestore gsave /SHSr 2 MM def /SHAr 2 MM def BeginEPSF 161 MM 06 MM sub SHSr sub 152 MM translate 10 /Times-ISOL1 FS 53 MM 1 MM moveto ( ) show 1 1 scale -77 -91 translate %%BeginDocument: Bild 21 %line 429 %!PS-Adobe-3.0 EPSF-3.0 egw41-1N %%BoundingBox: 70 85 246 206 /FS {findfont exch scalefont setfont} bind def /MM {72 25.4 div mul} def %%EndProlog gsave /ioutx 0 def ioutx 1 eq {%ioutx=1 4 /Times-Roman FS 72 86 moveto (egw41-1N) show 72 90 translate 0.01 MM dup scale 20 setlinewidth /xwidth 6100 def /ywidth 4000 def 1 setgray 0 0 moveto xwidth 0 rlineto 0 ywidth rlineto xwidth neg 0 rlineto closepath fill 0 setgray 0 0 moveto xwidth 0 rlineto 0 ywidth rlineto xwidth neg 0 rlineto closepath stroke } if %ioutx=1 grestore showpage %%Trailer %%EndDocument EndEPSF grestore gsave BeginEPSF 219 MM 06 MM sub SHAr add 152 MM translate 10 /Times-ISOL1 FS 53 MM 1 MM moveto ( ) show 1 1 scale -77 -91 translate %%BeginDocument: Bild 22 %line 439 %!PS-Adobe-3.0 EPSF-3.0 egw41-2N %%BoundingBox: 70 85 246 206 /FS {findfont exch scalefont setfont} bind def /MM {72 25.4 div mul} def %%EndProlog gsave /ioutx 0 def ioutx 1 eq {%ioutx=1 4 /Times-Roman FS 72 86 moveto (egw41-2N) show 72 90 translate 0.01 MM dup scale 20 setlinewidth /xwidth 6100 def /ywidth 4000 def 1 setgray 0 0 moveto xwidth 0 rlineto 0 ywidth rlineto xwidth neg 0 rlineto closepath fill 0 setgray 0 0 moveto xwidth 0 rlineto 0 ywidth rlineto xwidth neg 0 rlineto closepath stroke } if %ioutx=1 grestore showpage %%Trailer %%EndDocument EndEPSF grestore gsave BeginEPSF 161 MM 06 MM sub SHSr sub 108 MM translate 10 /Times-ISOL1 FS 53 MM 1 MM moveto ( ) show 1 1 scale -77 -91 translate %%BeginDocument: Bild 23 %line 449 %!PS-Adobe-3.0 EPSF-3.0 egw41-3n_60 %%BoundingBox: 70 85 421 335 %START PDFDE011.EPS /pdfmark13 where {pop} {userdict /pdfmark13 /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/egw4/egw4.HTM) /Author (compare K. Richter "Computergrafik ...": ISBN 3-8007-1775-1) /Subject (goto: http://farbe.li.tu-berlin.de or http://color.li.tu-berlin.de) /Keywords (image reproduction, colour devices) /Creator (klaus.richter@mac.com) /CreationDate (D:2023080112000) /ModDate (D:2023080112000) /DOCINFO pdfmark13 [ /View [ /Fit ] /DOCVIEW pdfmark13 %END PDFDE011 %line 20****************************************************** /BeginEPSF {% def % Prepare for EPS file /b4_Inc_state save def % Save state for cleanup /dict_count countdictstack def /op_count count 1 sub def % Count objects on op stack userdict begin % Make userdict current dict /showpage {} def 0 setgray 0 setlinecap 1 setlinewidth 0 setlinejoin 10 setmiterlimit [] 0 setdash newpath /languagelevel where % If level not equal to 1 then {pop languagelevel where % If level not equal to 1 then 1 ne {false setstrokeadjust false setoverprint } if } if } bind def /EndEPSF {% def % End for EPS file count op_count sub {pop} repeat countdictstack dict_count sub {end} repeat % Clean up dict stack b4_Inc_state restore } 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 /Courier findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /Courier-ISOL1 exch definefont pop /Courier-Oblique findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /CourierI-ISOL1 exch definefont pop /Courier-Bold findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /CourierB-ISOL1 exch definefont pop /Courier-BoldOblique findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /CourierBI-ISOL1 exch definefont pop /TG {350 /Times-ISOL1 FS} bind def /TM {280 /Times-ISOL1 FS} bind def /TK {240 /Times-ISOL1 FS} bind def /TS {200 /Times-ISOL1 FS} bind def /TL {160 /Times-ISOL1 FS} bind def /TV {110 /Times-ISOL1 FS} bind def /TW {080 /Times-ISOL1 FS} bind def /TIG {350 /TimesI-ISOL1 FS} bind def /TIM {280 /TimesI-ISOL1 FS} bind def /TIK {240 /TimesI-ISOL1 FS} bind def /TIS {200 /TimesI-ISOL1 FS} bind def /TIL {160 /TimesI-ISOL1 FS} bind def /TIV {110 /TimesI-ISOL1 FS} bind def /TIW {080 /TimesI-ISOL1 FS} bind def /TBG {350 /TimesB-ISOL1 FS} bind def /TBM {280 /TimesB-ISOL1 FS} bind def /TBK {240 /TimesB-ISOL1 FS} bind def /TBS {200 /TimesB-ISOL1 FS} bind def /TBL {160 /TimesB-ISOL1 FS} bind def /TBV {110 /TimesB-ISOL1 FS} bind def /TBW {080 /TimesB-ISOL1 FS} bind def /TBIG {350 /TimesBI-ISOL1 FS} bind def /TBIM {280 /TimesBI-ISOL1 FS} bind def /TBIK {240 /TimesBI-ISOL1 FS} bind def /TBIS {200 /TimesBI-ISOL1 FS} bind def /TBIL {160 /TimesBI-ISOL1 FS} bind def /TBIV {110 /TimesBI-ISOL1 FS} bind def /TBIW {080 /TimesBI-ISOL1 FS} bind def /SG {350 /Symbol FS} bind def /SM {280 /Symbol FS} bind def /SK {240 /Symbol FS} bind def /SS {200 /Symbol FS} bind def /SL {160 /Symbol FS} bind def /SV {110 /Symbol FS} bind def /SW {080 /Symbol FS} bind def %***************************************************************** %%EndProlog gsave %lanindL2.EPS START 20000505 /lanind 0 def /lantex [(G) (E) (S) (F) (I) (J) (M)] def /showde {0 lanind eq {show} {pop} ifelse} bind def /showen {1 lanind eq {show} {pop} ifelse} bind def /showes {2 lanind eq {show} {pop} ifelse} bind def /showfr {3 lanind eq {show} {pop} ifelse} bind def /showit {4 lanind eq {show} {pop} ifelse} bind def /showjp {5 lanind eq {show} {pop} ifelse} bind def /showea {1 lanind le {show} {pop} ifelse} bind def /lanindf where {pop /lanind1 lanindf def /lanind2 lanindf def /lanindd laninddf def} {/lanind1 0 def /lanind2 0 def} ifelse /colormf where {pop /colorm1 colormf def /colorm2 colormf def /colormd colormdf def} {/colorm1 0 def} ifelse /deintpf where {pop /deintp1 deintpf def /deintp2 deintpf def /deintpd deintpdf def} {/deintp1 0 def} ifelse /xcolorf where {pop /xcolor1 xcolorf def /xcolor2 xcolorf def /xcolord xcolordf def} {/xcolor1 0 def} ifelse /xchartf where {pop /xchart1 xchartf def /xchart2 xchartf def /xchartd xchartdf def /xchartm xchart2f xchart1f sub 1 add def} {/xchart1 0 def /xchartm 1 def} ifelse /xchart3f where {pop /xchart3 xchart3f def} {/xchart3 0 def} ifelse /xchart4f where {pop /xchart4 xchart4f def} {/xchart4 0 def} ifelse /pchartf where {pop /pchart1 pchartf def /pchart2 pchartf def /pchartd pchartdf def} {/pchart1 3 def} ifelse /colsepf where {pop /colsep1 colsepf def /colsep2 colsepf def /colsepd colsepdf def} {/colsep1 0 def} ifelse /pmetamf where {pop /pmetam1 pmetamf def /pmetam2 pmetamf def /pmetamd pmetamdf def} {/pmetam1 0 def} ifelse %either defaul values for xchart=0 or values for xchart=1 /lanind lanind1 def % /colorm colorm1 def % /deintp deintp1 def % /xcolor xcolor1 def % /xchart xchart1 def % /pchart pchart1 def % /colsep colsep1 def % /pmetam pmetam1 def % gsave /cvishow0 {cvi 6 string cvs show} def /kchartl 1 def %0:left page, 1:right page /pchartl 0 def %0:top page, 4:down page %not used 72 90 translate 0.010 MM dup scale 40 setlinewidth /ymax1 08550 def /xmax1 12250 def %2x6000+250 1.0 setgray 0 0 moveto xmax1 0 rlineto 0 ymax1 rlineto xmax1 neg 0 rlineto closepath fill 0 setgray 0 0 moveto xmax1 0 rlineto 0 ymax1 rlineto xmax1 neg 0 rlineto closepath stroke TK 0 setgray 150 /Times-ISOL1 FS 150 -140 moveto kchartl 0 eq {(egw40-) show} {(egw41-) show} ifelse pchartl 0 eq {(3n) show} {(7n) show} ifelse grestore gsave %00 %01 %02 /SHSl 00.0 def /SHAl 02.8 def /STSl 13.0 def /STAl 14.5 def BeginEPSF 28 SHSl sub MM 064 STSl add MM translate 10 /Times-ISOL1 FS 53 MM 1 MM moveto ( ) show 1 1 scale -77 -91 translate %%BeginDocument: Bild 15 %!PS-Adobe-3.0 EPSF-3.0 egw41-1a enh31-1n %%BoundingBox: 70 83 228 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/egw4/egw4.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 /Courier findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /Courier-ISOL1 exch definefont pop /Courier-Oblique findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /CourierI-ISOL1 exch definefont pop /Courier-Bold findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /CourierB-ISOL1 exch definefont pop /Courier-BoldOblique findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /CourierBI-ISOL1 exch definefont pop /TG {350 /Times-ISOL1 FS} bind def /TM {280 /Times-ISOL1 FS} bind def /TK {240 /Times-ISOL1 FS} bind def /TS {200 /Times-ISOL1 FS} bind def /TL {160 /Times-ISOL1 FS} bind def /TIG {350 /TimesI-ISOL1 FS} bind def /TIM {280 /TimesI-ISOL1 FS} bind def /TIK {240 /TimesI-ISOL1 FS} bind def /TIS {200 /TimesI-ISOL1 FS} bind def /TIL {160 /TimesI-ISOL1 FS} bind def /TBG {350 /TimesB-ISOL1 FS} bind def /TBM {280 /TimesB-ISOL1 FS} bind def /TBK {240 /TimesB-ISOL1 FS} bind def /TBS {200 /TimesB-ISOL1 FS} bind def /TBL {160 /TimesB-ISOL1 FS} bind def /TBIG {350 /TimesBI-ISOL1 FS} bind def /TBIM {280 /TimesBI-ISOL1 FS} bind def /TBIK {240 /TimesBI-ISOL1 FS} bind def /TBIS {200 /TimesBI-ISOL1 FS} bind def /TBIL {160 /TimesBI-ISOL1 FS} bind def /SG {350 /Symbol FS} bind def /SM {280 /Symbol FS} bind def /SK {240 /Symbol FS} bind def /SS {200 /Symbol FS} bind def /SL {160 /Symbol FS} bind def %********************************************************* /proz_param {%proz_param 4650 3800 moveto TBS (Parame\255) show 4650 3600 moveto TBS (ter:) show xchart4 2 eq xchart4 4 eq or xchart4 6 eq or {TBIS ( N) show} if xchart4 3 eq xchart4 5 eq or xchart4 7 eq or {TBIS ( Y) show xcolorl 1 eq {xcol10_BS} if} if /kx kxi xchartl get def /kxx 445 kx 5 mul add def 4150 300 moveto TBS (max: ) show kxx cvishow (_770) show 4150 080 moveto TBS (min: 380_) show kxx cvishow /index2_7 {%index2_7 xchart4 2 eq xchart4 3 eq or xchart4 7 eq or {0 -50 rmoveto TBL (2) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if } if xchart4 4 eq xchart4 5 eq or {0 -50 rmoveto TBL () show 0 50 rmoveto xcolorl 1 eq {xcol10_BS} if } if xchart4 6 eq {0 -50 rmoveto TBL (1) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if } if } bind def %index2_7 /index2_7n {%index2_7n xchart4 2 eq xchart4 3 eq or xchart4 7 eq or {0 -50 rmoveto TBL (2,n) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if } if xchart4 4 eq xchart4 5 eq or {0 -50 rmoveto TBL (n) show 0 50 rmoveto xcolorl 1 eq {xcol10_BS} if } if xchart4 6 eq {0 -50 rmoveto TBL (1,n) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if } if } bind def %index2_7n xchart4 1 le xchart4 4 ge or {%xchart4<=1, xchart4>=4 /x0p 50 def x0p 3800 moveto TBIS (XYZ) show 0 -50 rmoveto TBL (W) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if TBS (=) show XK cvsshow2 (, ) show YK cvsshow2 (, ) show ZK cvsshow2 x0p 3550 moveto TBIS (A) show index2_7 TBS ( = 2,5 \050) show TBIS (a) show index2_7 TBS ( - ) show TBIS (a) show index2_7n TBS (\051 ) show TBIS (Y) show xcolorl 1 eq {xcol10_BS} if x0p 3300 moveto TBIS (B) show index2_7 TBS ( = 2,5 ) show TBIS (B) show 0 -50 rmoveto TBL (c) show 0 50 rmoveto TBS ( \050) show TBIS (b) show index2_7 TBS ( - ) show TBIS (b) show index2_7n TBS (\051 ) show TBIS (Y) show xcolorl 1 eq {xcol10_BS} if x0p 3050 moveto TBIS (a) show index2_7 TBS ( = ) show TBIS (a) show 0 -50 rmoveto TBL (20) show 0 50 rmoveto TBS ( [) show TBIS (\050x) show xcolorl 1 eq {xcol10_BS} if TBS (-) show TBIS (x) show 0 -50 rmoveto TBL (c) show 0 50 rmoveto TBIS (\051/y) show xcolorl 1 eq {xcol10_BS} if TBS (]) show x0p 2800 moveto TBIS (b) show index2_7 TBS ( = ) show TBIS (b) show 0 -50 rmoveto TBL (20) show 0 50 rmoveto TBS ( [) show TBIS (z) show xcolorl 1 eq {xcol10_BS} if TBIS (/y) show xcolorl 1 eq {xcol10_BS} if TBS (]) show x0p 2550 moveto TBIS (a) show 0 -50 rmoveto TBL (20) show 0 50 rmoveto TBS ( = 1, ) show TBIS (b) show 0 -50 rmoveto TBL (20) show 0 50 rmoveto TBS ( = -0,4) show x0p 2300 moveto TBIS (x) show 0 -50 rmoveto TBL (c) show 0 50 rmoveto TBS ( = ) show xct show (, ) show TBIS (B) show 0 -50 rmoveto TBL (c) show 0 50 rmoveto TBS ( = ) show Bct show x0p 2080 moveto TBIS (n) show TBS ( = ) show TELi xchartl get show x0p 1860 moveto TBIS (C) show TBL 0 -50 rmoveto (AB,) show 0 50 rmoveto index2_7 TBS (=[) show TBIS (A) show index2_7 TBL -20 100 rmoveto (2) show 0 -100 rmoveto TBS (+) show TBIS (B) show index2_7 TBL -20 100 rmoveto (2) show 0 -100 rmoveto TBS (]) show TBL 0 100 rmoveto (1/2) show 0 -100 rmoveto } if %xchart4<=1, xchart4>=4 } bind def %proz_param %**************************************************************** /proz_opti {%proz_opti TBS 0 0 0 1 setcmyk_olvcolor /xchart12 xchart4 12 mul def xtexti xchart12 0 add get ytexti xchart12 0 add get moveto TBS (10 Optimalfarben (o)) showde %0egw41-7 02581 (10 optimal colours (o)) showen %1egw41-7 02581 (10 colores \363ptimos (o)) showes %2egw41-7 02581 (10 couleurs optimales (o)) showfr %3egw41-7 02581 (10 colori ottimi (o)) showit %4egw41-7 02581 (10 optimal colours (o)) showjp %5egw41-7 02581 TBIS (, Y) show TBL 0 -60 rmoveto (W) show 0 60 rmoveto xchartl 1 eq {xcol10KBS} if TBS YF 0 eq {(=100) show}{(=90) show} ifelse TBIS (, Y) show TBL 0 -60 rmoveto (N) show 0 60 rmoveto xchartl 1 eq {xcol10KBS} if TBS YF 0 eq {(=0) show}{(=3,6) show} ifelse xtexti xchart12 1 add get ytexti xchart12 1 add get moveto (8 von maximalem (m)) showde %0egw41-7 03581 (8 of maximum (m)) showen %1egw41-7 03581 (8 de m\341ximo (m)) showes %2egw41-7 03581 (8 de la maximum (m)) showfr %3egw41-7 03581 (8 di massimo (m)) showit %4egw41-7 03581 (8 of maximum (m)) showjp %5egw41-7 03581 TBIS ( C) show TBL 0 -60 rmoveto (AB) show 0 60 rmoveto TBS ( f\374r ) showde %0egw41-7 03581 ( for ) showen %1egw41-7 03581 ( bajo ) showes %2egw41-7 03581 ( pour ) showfr %3egw41-7 03581 ( per ) showit %4egw41-7 03581 ( for ) showjp %5egw41-7 03581 TELi xchartl get show xtexti xchart12 2 add get ytexti xchart12 2 add get moveto xchart4 0 eq xchart4 1 eq or {%xchart4=0,1 (in der Normfarbtafel) showde %0egw41-7 04581 (in the chromaticity diagram) showen %1egw41-7 04581 (en el diagrama de chromaticidad) showes %2egw41-7 04581 (dans le diagramme de chromaticit\351) showfr %3egw41-7 04581 (nel diagramma di cromaticit\340) showit %4egw41-7 04581 (in the chromaticity diagram) showjp %5egw41-7 04581 TBIS ( (x, y)) show } if %xchart4=0,1 xchart4 2 eq xchart4 3 eq or {%xchart4=2,3 (in linearer Farbtafel ) showde %0egw41-7 06581 (in linear chromaticity diagram ) showea %1egw41-7 06581 TBS (\050) show TBIS (a) show TBL 0 -50 rmoveto (2) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if TBIS (, b) show TBL 0 -50 rmoveto (2) show 0 50 rmoveto xcolorl 1 eq {xcol10_BS} if TBS (\051) show } if %xchart4=2,3 xchart4 4 eq xchart4 5 eq or {%xchart4=4,5 (in Buntwertdiagramm) showde %0egw41-7 08581 (in chromatic value diagram) showen %1egw41-7 08581 (en el diagrama valor crom\341tico) showes %2egw41-7 08581 (dans la valeur chromatique le diagramme) showfr %3egw41-7 08581 (nel diagramma di valore cromatico) showit %4egw41-7 08581 (in chromatic value diagram) showjp %5egw41-7 08581 TBIS ( (A, B)) show } if %xchart4=4,5 xchart4 6 eq {%xchart4=6 (in Buntwertdiagram) showde %0egw41-7 10581 (in chromatc value diagram) showen %1egw41-7 10581 (en el diagrama croma) showes %2egw41-7 10581 (dans le diagramme de chroma) showfr %3egw41-7 10581 (nel diagramma di chroma) showit %4egw41-7 10581 (in chromactic value diagram) showjp %5egw41-7 10581 TBIS ( \050A) show 0 -50 rmoveto TBL (1) show 0 50 rmoveto TBS (, ) show TBIS (B) show 0 -50 rmoveto TBL (1) show 0 50 rmoveto TBS (\051) show } if %xchart4=6 xchart4 7 eq {%xchart4=7 (in Buntwertdiagram) showde %0egw41-7 11581 (in chromatic value diagram) showen %1egw41-7 11581 (en el diagrama croma) showes %2egw41-7 11581 (dans le diagramme de chroma) showfr %3egw41-7 11581 (nel diagramma di chroma) showit %4egw41-7 11581 (in chroma diagram) showjp %5egw41-7 11581 TBIS ( \050A) show 0 -50 rmoveto TBL (2) show 0 50 rmoveto TBS (, ) show TBIS (B) show 0 -50 rmoveto TBL (2) show 0 50 rmoveto TBS (\051) show } if %xchart4=7 } bind def %proz_opti %**************************************************************************** /proz_name_range {%proz_name_range /xchart12 xchart4 12 mul def xtexti xchart12 3 add get ytexti xchart12 3 add get moveto TBS (Name & Spektralbereich) showde %0egw41-7 00581 (name and spectral range) showen %1egw41-7 00581 (Nombre y gama espectral) showes %2egw41-7 00581 (Nom et la gamma spectrale) showfr %3egw41-7 00581 (Nome e la gamma spettrale) showit %4egw41-7 00581 (name and spectral range) showjp %5egw41-7 00581 xtexti xchart12 4 add get ytexti xchart12 4 add get moveto TBIS FARBE 0 get show TBL 0 -40 rmoveto FARBE 1 get show 0 40 rmoveto TBIS FARBE 2 get show xtexti xchart12 5 add get ytexti xchart12 5 add get moveto TBIS FARBE 3 get show TBL 0 -40 rmoveto FARBE 4 get show 0 40 rmoveto TBIS FARBE 5 get show xtexti xchart12 6 add get ytexti xchart12 6 add get moveto TBIS FARBE 6 get show TBL 0 -40 rmoveto FARBE 7 get show 0 40 rmoveto TBIS FARBE 8 get show xtexti xchart12 7 add get ytexti xchart12 7 add get moveto TBIS FARBE 9 get show TBL 0 -40 rmoveto FARBE 10 get show 0 40 rmoveto TBIS FARBE 11 get show xtexti xchart12 8 add get ytexti xchart12 8 add get moveto TBIS FARBE 12 get show TBL 0 -40 rmoveto FARBE 13 get show 0 40 rmoveto TBIS FARBE 14 get show xtexti xchart12 9 add get ytexti xchart12 9 add get moveto TBIS FARBE 15 get show TBL 0 -40 rmoveto FARBE 16 get show 0 40 rmoveto TBIS FARBE 17 get show xtexti xchart12 10 add get ytexti xchart12 10 add get moveto TBIS FARBE 18 get show TBL 0 -40 rmoveto FARBE 19 get show 0 40 rmoveto TBIS FARBE 20 get show xtexti xchart12 11 add get ytexti xchart12 11 add get moveto TBIS FARBE 21 get show TBL 0 -40 rmoveto FARBE 22 get show 0 40 rmoveto TBIS FARBE 23 get show } bind def %proz_name_range %**************************************************************** /proz_axis_scales4_7 {%proz_axis_scales4_7 %axis and scales 0 0 0 1 setcmyk_olvcolor -1000 0 moveto 2800 0 rlineto stroke 0 -1880 moveto 0 3600 rlineto stroke 1800 100 sub 50 moveto 100 -50 rlineto -100 -50 rlineto closepath fill 0 50 sub 1800 100 sub moveto 50 100 rlineto 50 -100 rlineto closepath fill /xt10x 5 array def /yt10x 5 array def /xt10x [() ( -50) ( ) ( ) ( 100)] def /yt10x [(-100) ( ) ( ) ( ) (100)] def 0 0 0 1 setcmyk_olvcolor 1 1 4 {/i exch def %i=0,4 x-axis -1600 i 800 mul add -75 moveto 0 150 rlineto stroke -1800 i 800 mul add -250 moveto TBS xt10x i get show i 4 eq {-1600 i 800 mul add 0 moveto xchart4 4 eq { %xchart4=4 -100 200 rmoveto TBIK (A) show xcolorl 1 eq {xcol10_BS} if } if %xchart4=4 xchart4 5 eq { %xchart4=5 -100 200 rmoveto TBIK (A) show xcolorl 1 eq {xcol10_BS} if } if %xchart4=5 xchart4 6 eq { %xchart4=6 -200 200 rmoveto TBIK (A) show -10 -50 rmoveto TBS (1) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if } if %xchart4=6 xchart4 7 eq { %xchart4=7 -200 200 rmoveto TBIK (A) show -10 -50 rmoveto TBS (2) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if } if %xchart4=7 } if } for %i=0,4 0 1 4 {/i exch def %i=0,4 y-axis -75 -1600 i 800 mul add moveto 150 0 rlineto stroke 100 -1650 i 800 mul add 100 sub moveto TBS yt10x i get show i 4 eq {0 -1650 i 800 mul add moveto xchart4 4 eq { %xchart4=4 100 150 rmoveto TBIK (B) show TM xcolorl 1 eq {xcol10_BS} if } if %xchart4=4 xchart4 5 eq { %xchart4=5 100 150 rmoveto TBIK (B) show xcolorl 1 eq {xcol10_BS} if 0 1150 add 1600 0200 add moveto } if %xchart4=5 xchart4 6 eq { %xchart4=6 100 150 rmoveto TBIK (B) show -10 -50 rmoveto TBS (1) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if } if %xchart4=6 xchart4 7 eq { %xchart4=7 100 150 rmoveto TBIK (B) show -10 -50 rmoveto TBS (2) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if } if %xchart4=7 } if } for %i=0,4 } bind def %proz_axis_scales4_7 %*********************************************************** /proz_chromaticity_data {%BEG proz_chromaticity_data /FL 0.00001 def /DOW 82 array def /DOWZ 17 array def /F02Z 51 array def /F10Z 51 array def %TRISTIMULUS VALUES FOR PURPLE COLORS from 'dmyy'KRPROG.FOR %FOR 02- AND 10-DEGREE-OBSERVER, ILLUMINANT E 0 1 79 {/i exch def %i=0,79 = 380_775 DOW i 380 i 5 mul add put } for %i=0,79 /DOWZ %17 data [700 -495 -500 -505 -510 -515 -520 -525 -530 -535 -540 -545 -550 -555 -560 -565 400] def /F02Z %3x17 data 700 ... 400 [.01136 .01141 .01158 .01169 .01176 .01182 .01187 .01191 .01195 .01199 .01204 .01210 .01219 .01232 .01254 .01300 .01431 .00410 .00404 .00383 .00369 .00359 .00352 .00346 .00342 .00337 .00331 .00325 .00317 .00306 .00289 .00262 .00205 .00040 .00000 .00118 .00507 .00754 .00930 .01064 .01167 .01256 .01346 .01445 .01562 .01709 .01910 .02210 .02718 .03765 .06785] def /F10Z %3x17 data 700 ... 400 [.00958 .01015 .01037 .01053 .01065 .01075 .01085 .01096 .01108 .01122 .01139 .01163 .01201 .01268 .01416 .02078 .01911 .00372 .00361 .00357 .00355 .00352 .00351 .00349 .00347 .00345 .00342 .00339 .00335 .00328 .00316 .00289 .00170 .00200 .00000 .00517 .00718 .00858 .00972 .01063 .01150 .01245 .01354 .01478 .01635 .01856 .02194 .02795 .04136 .10106 .08601] def %*************************************************** /FXYZ 240 array def /XSi 82 array def /YSi 82 array def /ZSi 82 array def /XANSi 82 array def /YANSi 82 array def /ZANSi 82 array def /AANSi 82 array def %actual data for plot, purple colours /BANSi 82 array def 0 1 239 {/i exch def %i=0,239 FXYZ i xcolorl 0 eq {F2 i get put} {F10 i get put} ifelse } for %i=0,239 /YKSUM 0 def %For CIE Illuminant E 0 1 79 {/i exch def %i=0,1,79 /YKSUM YKSUM FXYZ 80 i add get add def } for %i=0,1,79 0 1 79 {/i exch def %i=0,1,79 XSi i FXYZ 00 i add get YKSUM div 100 mul put YSi i FXYZ 80 i add get YKSUM div 100 mul put ZSi i FXYZ 160 i add get YKSUM div 100 mul put /SUM XSi i get YSi i get add ZSi i get add 0.0001 add def XANSi i XSi i get SUM div put YANSi i YSi i get SUM div put ZANSi i ZSi i get SUM div put xchart4 1 le {%xchart4<=1 AANSi i XANSi i get put BANSi i YANSi i get put } if %xchart4<=1 xchart4 2 eq {%xchart4=2 AANSi i XANSi i get xc sub YANSi i get FL add div put BANSi i ZANSi i get YANSi i get FL add div -0.4 mul put } if %xchart4=2 xchart4 3 eq {%xchart4=3 AANSi i XANSi i get xc sub YANSi i get FL add div put BANSi i ZANSi i get YANSi i get FL add div -0.4 mul put } if %xchart4=3 } for %i=0,1,79 /XZi 17 array def /YZi 17 array def /ZZi 17 array def /XANZi 17 array def /YANZi 17 array def /ZANZi 17 array def /AANZi 17 array def %actual data for plot, purple colours /BANZi 17 array def 0 1 16 {/i exch def %i=0,16 %for illuminant E: S(lamdda=100) XZi i xcolorl 0 eq {F02Z} {F10Z} ifelse 00 i add get YKSUM div 100 mul put YZi i xcolorl 0 eq {F02Z} {F10Z} ifelse 17 i add get YKSUM div 100 mul put ZZi i xcolorl 0 eq {F02Z} {F10Z} ifelse 34 i add get YKSUM div 100 mul put /SUM XZi i get YZi i get add ZZi i get add 0.0001 add def XANZi i XZi i get SUM div put YANZi i YZi i get SUM div put ZANZi i ZZi i get SUM div put xchart4 1 le {%xchart4<=1 AANZi i XANZi i get put BANZi i YANZi i get put } if %xchart4<=1 xchart4 2 eq {%xchart4=2 AANZi i XANZi i get xc sub YANZi i get FL add div put BANZi i ZANZi i get YANZi i get FL add div -0.4 mul put } if %xchart4=2 xchart4 3 eq {%xchart4=3 AANZi i XANZi i get xc sub YANZi i get FL add div put BANZi i ZANZi i get YANZi i get FL add div -0.4 mul put } if %xchart4=3 } for %i=0,16 /FL 0.00001 def } bind def %END proz_chromaticity_data %************************************************ /proz_chromaticity_xy {%BEG proz_chromaticity_xy /xtrans8 600 def /ytrans8 400 def xtrans8 ytrans8 translate %for scala and graphic (x,y) 0600 0400 0 0 moveto 4000 0 rlineto stroke 0 0 moveto 0 3200 rlineto stroke %! 100 S-Einheiten = 2000 Skalen-Einheiten TBS 0 -50 moveto 0 100 rlineto stroke 800 -50 moveto 0 100 rlineto stroke 1600 -50 moveto 0 100 rlineto stroke 2400 -50 moveto 0 100 rlineto stroke 3200 -50 moveto 0 100 rlineto stroke 4000 -50 moveto 0 100 rlineto stroke -100 -300 moveto (0,0) show 700 -300 moveto (0,2) show 1500 -300 moveto (0,4) show 2300 -300 moveto (0,6) show 3100 -300 moveto (0,8) show 3900 -300 moveto (1,0) show %! 100 S-Einheiten = 2000 Skalen-Einheiten -50 0 moveto 100 0 rlineto stroke -50 800 moveto 100 0 rlineto stroke -50 1600 moveto 100 0 rlineto stroke -50 2400 moveto 100 0 rlineto stroke -50 3200 moveto 100 0 rlineto stroke -450 -80 moveto (0,0) show -450 720 moveto (0,2) show -450 1520 moveto (0,4) show -450 2320 moveto (0,6) show -450 3120 moveto (0,8) show TIS 4200 150 moveto (x) show xcolorl 1 eq {TL 0 -40 rmoveto (10) show 0 40 rmoveto TIS} if -300 2800 moveto (y) show xcolorl 1 eq {TL 0 -40 rmoveto (10) show 0 40 rmoveto TIS} if TBIS 2600 150 moveto xcolorl 0 eq {(CIE 1931) show} if xcolorl 1 eq {(CIE 1964) show} if newpath /fakt 4000 def 5 1 60 {/i exch def %i=5,60 AANSi i get fakt mul BANSi i get fakt mul i 05 eq {moveto} if i 06 ge i 59 le and {lineto} if i 60 eq {lineto closepath stroke} if } for %i=5,60 /xytshift 320 array def %min 4x65 /xytshift [ 0 000 000 (380) %0 0 000 000 (385) %1 0 000 000 (390) %2 0 000 000 (395) %3 1 -170 -170 (400) %4 0 000 000 (405) %5 0 000 000 (410) %6 0 000 000 (415) %7 0 000 000 (420) %8 0 000 000 (425) %9 0 000 000 (430) %10 0 000 000 (435) %11 0 000 000 (440) %12 0 000 000 (445) %13 1 -300 -050 (450) %14 S 0 000 000 (455) %15 0 000 000 (460) %16 0 000 000 (465) %17 0 000 000 (470) %18 1 -300 -030 (475) %19 0 000 000 (480) %20 0 000 000 (485) %21 1 -330 -050 (490) %22 1 -270 000 (495) %23 M=S 1 -300 -050 (500) %24 1 -300 -050 (505) %25 1 -330 -050 (510) %26 L=S 1 -300 050 (515) %27 1 -100 070 (520) %28 1 100 000 (525) %29 1 000 000 ( ) %30 1 050 000 (535) %31 1 000 000 ( ) %32 M 1 000 000 ( ) %33 1 050 030 (550) %34 1 000 000 ( ) %35 1 050 030 (560) %36 1 000 000 ( ) %37 1 050 030 (570) %38 L 1 000 000 ( ) %39 1 050 030 (580) %40 1 050 050 ( ) %41 1 050 030 (590) %42 1 050 050 ( ) %43 1 050 030 (600) %44 0 000 000 ( ) %45 1 050 070 (610) %46 0 000 000 ( ) %47 1 050 050 (620) %48 0 000 000 ( ) %49 0 000 000 (630) %50 0 000 000 ( ) %51 1 050 030 (640) %52 0 000 000 (645) %53 0 000 000 (650) %54 0 000 000 (655) %55 0 000 000 (660) %56 0 000 000 (665) %57 0 000 000 (670) %58 0 000 000 (675) %59 0 000 000 (680) %60 0 000 000 (685) %61 0 000 000 (690) %62 0 000 000 (695) %63 1 100 -50 (700) %64 ] def 0 1 64 {/i exch def %i=5,1,60 /i40 i 4 mul def xytshift i40 get 1 eq {%xytshift=1 0 0 0 0 setcmykcolor AANSi i get fakt mul BANSi i get fakt mul 30 0 360 arc fill %400,425,...,700 0 0 0 1 setcmykcolor AANSi i get fakt mul BANSi i get fakt mul 30 0 360 arc stroke %400,425,...,700 } if %xytshift=1 } for %i=5,1,60 TBIL 0 1 59 {/i exch def %i=0,65 /i40 i 4 mul def /i41 i40 1 add def /i42 i40 2 add def /i43 i40 3 add def xytshift i40 get 1 eq {%xytshift=1 AANSi i get fakt mul xytshift i41 get add BANSi i get fakt mul xytshift i42 get add moveto xytshift i43 get show } if %xytshift=1 } for %i=0,65 newpath /xytshiftZ 320 array def %min 4x65 /xytshiftZ [ 1 100 -50 (700) %0 see normal 1 050 -100 (495c,E) %1 1 050 -100 (500c,E) %2 0 050 -100 (505c,E) %3 1 100 -60 (510c,E) %4 0 050 -100 (515c,E) %5 0 050 -100 (520c,E) %6 1 050 -100 (525c,E) %7 0 050 -100 (530c,E) %8 0 050 -100 (535c,E) %9 0 050 -100 (540c,E) %10 0 050 -100 (545c,E) %11 1 050 -100 (550c,E) %12 0 050 -100 (555c,E) %13 0 050 -100 (560c,E) %14 S 1 050 -100 (565c,E) %15 0 -100 -150 (400) %16 see normal ] def 0 1 16 {/i exch def %i=5,5,60 /i40 i 4 mul def xytshiftZ i40 get 1 eq {%xytshiftZ=1 0 0 0 0 setcmykcolor AANZi i get fakt mul BANZi i get fakt mul 30 0 360 arc fill %400,405,...,700 0 0 0 1 setcmykcolor AANZi i get fakt mul BANZi i get fakt mul 30 0 360 arc stroke %400,405,...,700 } if %xytshiftZ=1 } for %i=0,1,16 TBIL 0 1 16 {/i exch def %i=0,16 /i40 i 4 mul def /i41 i40 1 add def /i42 i40 2 add def /i43 i40 3 add def xytshiftZ i40 get 1 eq {%xytshiftZ=1 AANZi i get fakt mul xytshiftZ i41 get add BANZi i get fakt mul xytshiftZ i42 get add moveto xytshiftZ i43 get show } if %xytshiftZ=1 } for %i=0,16 xtrans8 neg ytrans8 neg translate %scala & graphic (x,y) 0600 0400 } bind def %END proz_chromaticity_xy %************************************************ /proz_chromaticity_a2b2 {%BEG proz_chromaticity_a2b2 /FL 0.00001 def /fakt 1000 def /xtrans8 0500 def /ytrans8 3200 def xtrans8 ytrans8 translate %scala & graphic (a2,b2) 0500 3200 0 400 moveto 4000 0 rlineto stroke 0 400 moveto 0 -3600 rlineto stroke %! 100 S-Einheiten = 2000 Skalen-Einheiten TBS 0 350 moveto 0 100 rlineto stroke 800 350 moveto 0 100 rlineto stroke 1600 350 moveto 0 100 rlineto stroke 2400 350 moveto 0 100 rlineto stroke 3200 350 moveto 0 100 rlineto stroke 4000 350 moveto 0 100 rlineto stroke -150 500 moveto (-0,8) show 650 500 moveto (0,0) show 1450 500 moveto (0,8) show 2250 500 moveto (1,6) show 3050 500 moveto (2,4) show 3850 500 moveto (3,2) show %! 100 S-Einheiten = 2000 Skalen-Einheiten -50 0 moveto 100 0 rlineto stroke -50 -800 moveto 100 0 rlineto stroke -50 -1600 moveto 100 0 rlineto stroke -50 -2400 moveto 100 0 rlineto stroke -50 -3200 moveto 100 0 rlineto stroke -450 -100 moveto ( 0,0) show -450 -900 moveto (-0,8) show -450 -1700 moveto (-1,6) show %-450 -2500 moveto (-2,4) show -175 -3050 moveto 90 rotate TBIS (b) show TL 0 -40 rmoveto (2) show 0 40 rmoveto TIS 20 0 rmoveto xcolorl 1 eq {TL 0 -40 rmoveto (,10) show 0 40 rmoveto TIS} if TBS (=-0,40) show 20 0 rmoveto TBIS (z) show 20 0 rmoveto xcolorl 1 eq {TL 0 -40 rmoveto (10) show 0 40 rmoveto TIS} if TBIS (/y) show xcolorl 1 eq {TL 0 -40 rmoveto (10) show 0 40 rmoveto TIS} if -90 rotate 3450 150 moveto TBIS (a) show 20 0 rmoveto TL 0 -40 rmoveto (2) show 0 40 rmoveto TIS 20 0 rmoveto xcolorl 1 eq {TL 0 -40 rmoveto (,10) show 0 40 rmoveto TIS} if TBS (=\050) show 20 0 rmoveto TBIS (x) show 20 0 rmoveto xcolorl 1 eq {TL 0 -40 rmoveto (10) show 0 40 rmoveto TIS} if TBS (-0,110\051/) show 20 0 rmoveto TBIS (y) show 20 0 rmoveto xcolorl 1 eq {TL 0 -40 rmoveto (10) show 0 40 rmoveto TIS} if xtrans8 neg ytrans8 neg translate %scala & graphic (a2,b2) 0500 3200 newpath /fakt 1000 def /xtrans8 1300 def /ytrans8 3200 def xtrans8 ytrans8 translate %scala & graphic (a2,b2) 1300 3200 5 1 60 {/i exch def %i=5,60 AANSi i get fakt mul BANSi i get fakt mul i 05 eq {moveto} if i 06 ge i 59 le and {lineto} if i 60 eq {lineto closepath stroke} if } for %i=5,60 /xytshift 320 array def %min 4x65 /xytshift [ 0 000 000 (380) %0 0 000 000 (385) %1 0 000 000 (390) %2 0 000 000 (395) %3 1 -170 -170 (400) %4 0 000 000 (405) %5 0 000 000 (410) %6 0 000 000 (415) %7 0 000 000 (420) %8 0 000 000 (425) %9 0 000 000 (430) %10 0 000 000 (435) %11 0 000 000 (440) %12 0 000 000 (445) %13 1 -300 -050 (450) %14 S 0 000 000 (455) %15 0 000 000 (460) %16 0 000 000 (465) %17 0 000 000 (470) %18 1 -300 -030 (475) %19 0 000 000 (480) %20 0 000 000 (485) %21 1 -330 -050 (490) %22 1 -270 000 (495) %23 M=S 1 -300 -050 (500) %24 0 -300 -050 (505) %25 1 -330 -050 (510) %26 L=S 0 -300 050 (515) %27 1 -150 070 (520) %28 0 100 000 (525) %29 0 000 000 ( ) %30 0 050 000 (535) %31 1 -80 070 (540) %32 M 0 000 000 ( ) %33 0 000 030 (550) %34 0 000 000 ( ) %35 1 -80 070 (560) %36 0 000 000 ( ) %37 0 050 000 (570) %38 L 0 000 000 ( ) %39 1 050 070 (580) %40 0 050 050 ( ) %41 0 050 030 (590) %42 0 050 050 ( ) %43 1 -80 070 (600) %44 0 000 000 ( ) %45 0 050 070 (610) %46 0 000 000 ( ) %47 1 -80 050 (620) %48 0 000 000 ( ) %49 0 000 000 (630) %50 0 000 000 ( ) %51 1 -80 030 (640) %52 0 000 000 (645) %53 0 000 000 (650) %54 0 000 000 (655) %55 0 000 000 (660) %56 0 000 000 (665) %57 0 000 000 (670) %58 0 000 000 (675) %59 0 000 000 (680) %60 0 000 000 (685) %61 0 000 000 (690) %62 0 000 000 (695) %63 1 100 -50 (700) %64 ] def 0 1 64 {/i exch def %i=5,1,60 /i40 i 4 mul def xytshift i40 get 1 eq {%xytshift=1 0 0 0 0 setcmykcolor AANSi i get fakt mul BANSi i get fakt mul 30 0 360 arc fill %400,425,...,700 0 0 0 1 setcmykcolor AANSi i get fakt mul BANSi i get fakt mul 30 0 360 arc stroke %400,425,...,700 } if %xytshift=1 } for %i=5,1,60 TBIL 0 1 59 {/i exch def %i=0,65 /i40 i 4 mul def /i41 i40 1 add def /i42 i40 2 add def /i43 i40 3 add def xytshift i40 get 1 eq {%xytshift=1 AANSi i get fakt mul xytshift i41 get add BANSi i get fakt mul xytshift i42 get add moveto xytshift i43 get show } if %xytshift=1 } for %i=0,65 newpath /xytshiftZ 320 array def %min 4x65 /xytshiftZ [ 1 100 -50 (700) %0 see normal 1 050 -100 (495c,E) %1 1 050 -100 (500c,E) %2 0 050 -100 (505c,E) %3 1 100 -60 (510c,E) %4 0 050 -100 (515c,E) %5 0 050 -100 (520c,E) %6 1 050 -100 (525c,E) %7 0 050 -100 (530c,E) %8 0 050 -100 (535c,E) %9 0 050 -100 (540c,E) %10 0 050 -100 (545c,E) %11 1 050 -100 (550c,E) %12 0 050 -100 (555c,E) %13 0 050 -100 (560c,E) %14 S 1 050 -100 (565c,E) %15 0 -100 -150 (400) %16 see normal ] def 0 1 16 {/i exch def %i=5,5,60 /i40 i 4 mul def xytshiftZ i40 get 1 eq {%xytshiftZ=1 0 0 0 0 setcmykcolor AANZi i get fakt mul BANZi i get fakt mul 30 0 360 arc fill %400,405,...,700 0 0 0 1 setcmykcolor AANZi i get fakt mul BANZi i get fakt mul 30 0 360 arc stroke %400,405,...,700 } if %xytshiftZ=1 } for %i=0,1,16 TBIL 0 1 16 {/i exch def %i=0,16 /i40 i 4 mul def /i41 i40 1 add def /i42 i40 2 add def /i43 i40 3 add def xytshiftZ i40 get 1 eq {%xytshiftZ=1 AANZi i get fakt mul xytshiftZ i41 get add BANZi i get fakt mul xytshiftZ i42 get add moveto xytshiftZ i43 get show } if %xytshiftZ=1 } for %i=0,16 xtrans8 neg ytrans8 neg translate %scala & graphic (a2,b2) 1300 3200 } bind def %END proz_chromaticity_a2,b2 %***************************************************************** %%EndProlog gsave %lanindL2.EPS START 20000505 /lanind 0 def /lantex [(G) (E) (S) (F) (I) (J) (M)] def /showde {0 lanind eq {show} {pop} ifelse} bind def /showen {1 lanind eq {show} {pop} ifelse} bind def /showes {2 lanind eq {show} {pop} ifelse} bind def /showfr {3 lanind eq {show} {pop} ifelse} bind def /showit {4 lanind eq {show} {pop} ifelse} bind def /showjp {5 lanind eq {show} {pop} ifelse} bind def /showea {1 lanind le {show} {pop} ifelse} bind def /lanindf where {pop /lanind1 lanindf def /lanind2 lanindf def /lanindd laninddf def} {/lanind1 0 def /lanind2 0 def} ifelse /colormf where {pop /colorm1 colormf def /colorm2 colormf def /colormd colormdf def} {/colorm1 0 def} ifelse /deintpf where {pop /deintp1 deintpf def /deintp2 deintpf def /deintpd deintpdf def} {/deintp1 0 def} ifelse /xcolorf where {pop /xcolor1 xcolorf def /xcolor2 xcolorf def /xcolord xcolordf def} {/xcolor1 0 def} ifelse /xchartf where {pop /xchart1 xchartf def /xchart2 xchartf def /xchartd xchartdf def /xchartm xchart2f xchart1f sub 1 add def} {/xchart1 1 def /xchartm 1 def} ifelse /xchart3f where {pop /xchart3 xchart3f def} {/xchart3 0 def} ifelse /xchart4f where {pop /xchart4 xchart4f def} {/xchart4 0 def} ifelse /pchartf where {pop /pchart1 pchartf def /pchart2 pchartf def /pchartd pchartdf def} {/pchart1 3 def} ifelse /colsepf where {pop /colsep1 colsepf def /colsep2 colsepf def /colsepd colsepdf def} {/colsep1 0 def} ifelse /pmetamf where {pop /pmetam1 pmetamf def /pmetam2 pmetamf def /pmetamd pmetamdf def} {/pmetam1 0 def} ifelse %either defaul values for xchart=0 or values for xchart=1 /lanind lanind1 def % /colorm colorm1 def % /deintp deintp1 def % /xcolor xcolor1 def % /xchart xchart1 def % /pchart pchart1 def % /colsep colsep1 def % /pmetam pmetam1 def % colorm 0 eq deintp 0 eq and {/Txx (d) def} if %colorm=0, deintp=0 colorm 0 eq deintp 1 eq and {/Txx (e) def} if %colorm=0, deintp=1 colorm 1 eq deintp 0 eq and {/Txx (dd) def} if %colorm=1, deintp=0 colorm 1 eq deintp 1 eq and {/Txx (de) def} if %colorm=1, deintp=1 xchart 0 eq {/Txx (-) def} if %always independent of intended output gsave %LANINDL2 END /cvishow {cvi 6 string cvs show ( ) show} def /cvsshow1 {10 mul cvi 0.1 mul 9 string cvs show ( ) show} def /cvsshow2 {100 mul cvi 0.01 mul 9 string cvs show ( ) show} def /cvsshow3 {1000 mul cvi 0.001 mul 9 string cvs show ( ) show} def /cvsshow4 {10000 mul cvi 0.0001 mul 9 string cvs show ( ) show} def /cvsshow5 {100000 mul cvi 0.00001 mul 9 string cvs show ( ) show} def /TELi 8 array def /xchart8 1 def %0:Pxx, 1:Dxx xchart8 0 eq {%xchart8=0 Pxx /TELi [(P60) (P55) (P50) (P45) (P40) (P35) (P30) (P25)] def %7 illumin. } if %xchart8=0 xchart8 1 eq {%xchart8=1 Dxx /TELi [(D65) (D50) (P40) (A00) (E00) (C00) (P00) (Q00)] def %7 illumin. } if %xchart8=1 /SD65 82 array def %380 bis 775 mit deltalambda=05 /SD50 82 array def %380 bis 775 mit deltalambda=05 /SP40 82 array def %380 bis 775 mit deltalambda=05 /SA00 82 array def %380 bis 775 mit deltalambda=05 /SE00 82 array def %380 bis 775 mit deltalambda=05 /SC00 82 array def %380 bis 775 mit deltalambda=05 /SP00 82 array def %380 bis 775 mit deltalambda=05 /SQ00 82 array def %380 bis 775 mit deltalambda=05 /SDAK 82 array def %380 bis 775 mit deltalambda=05 /RA 82 array def %380 bis 770 nm /F2 240 array def %3 x 80 Daten fuer Bereich 380 bis 770nm /F2N 240 array def %normiert auf Y=100 fuer D65 und 10nm /F10 240 array def %3 x 80 Daten fuer Bereich 380 bis 770nm %C %C LITERATURQUELLEN LICHTARTEN %C SA,SC,SD65, CIE-DOKUMENT NR.15 FARBMESSUNG, 1971 %C TABELLE 1.1.1, SEITE 81 %C SD55,SD75, CIE-DOKUMENT NR.15 FARBMESSUNG, 1971 %C TABELLE 1.1.4, SEITE 85 %C LINEAR INTERPOLIERT VON 5 ZU 5NM %C SG,SP,SXE, DIN 5033, BLATT 7 ,SEITE 8-9 %C AUSGABE 1966 /SD65 %80 data 5 nm [50.0 52.3 54.6 68.7 82.8 87.1 91.5 92.5 93.4 90.1 86.7 95.8 104.9 110.9 117.0 117.4 117.8 116.3 114.9 115.4 115.9 112.4 108.8 109.1 109.4 108.6 107.8 106.3 104.8 106.2 107.7 106.0 104.4 104.2 104.0 102.0 100.0 98.2 96.3 96.1 95.8 92.2 88.7 89.3 90.0 89.8 89.6 88.6 87.7 85.5 83.3 83.5 83.7 81.9 80.0 80.1 80.2 81.2 82.3 80.3 78.3 74.0 69.7 70.7 71.6 73.0 74.3 68.0 61.6 65.7 69.9 72.5 75.1 69.3 63.6 55.0 46.4 56.6 66.8 65.1] def /SD50 %80 data 5 nm CIE 15.3, Seite 30; aus JE540-1N.PS [24.5 27.2 29.9 39.6 49.3 52.9 56.5 58.3 60.0 58.9 57.8 66.3 74.8 81.0 87.2 88.9 90.6 91.0 91.4 93.2 95.1 93.5 92.0 93.8 95.7 96.2 96.6 96.8 97.1 99.6 102.1 101.4 100.8 101.5 102.3 101.2 100.0 98.9 97.7 98.3 98.9 96.2 93.5 95.6 97.7 98.5 99.3 99.2 99.0 97.4 95.7 97.3 98.9 97.3 95.7 96.9 98.2 100.6 103.0 101.1 99.1 93.3 87.4 89.5 91.6 92.2 92.9 84.9 76.9 81.7 86.5 89.5 92.6 85.4 78.2 68.0 57.7 70.3 82.9 0.0] def %0.0 not used /SA00 %80 data 5 nm CIE 15.3 Seite 30; aus JE540-1N.PS [9.80 10.90 12.09 13.35 14.71 16.15 17.68 19.29 20.99 22.79 24.67 26.64 28.70 30.85 33.09 35.41 37.81 40.30 42.87 45.52 48.24 51.04 53.91 56.85 59.86 62.93 66.06 69.25 72.50 75.79 79.13 82.52 85.95 89.41 92.91 96.44 100.00 103.58 107.18 110.80 114.44 118.08 121.73 125.39 129.04 132.70 136.35 139.99 143.62 147.24 150.84 154.42 157.98 161.52 165.03 168.51 171.96 175.38 178.77 182.12 185.43 188.70 191.93 195.12 198.26 201.36 204.41 207.41 210.36 213.27 216.12 218.92 221.67 224.36 227.00 229.59 232.12 234.59 237.01 239.37 0.0] def %0.0 not used % AUS BILDPLA.FOR aus vrbam/wrpos:KRPROG.FOR, 5987-6023 5.10.92 %C PROGRAMM ZUR BERECHNUNG DER RELATIVEN SPEKTRALEN STRAHLUNGSVERTEI- %C LUNG EINES HOHLRAUMSTRAHLERS ALS FUNKTION DER WELLENLAENGE LAMDA %C BEI GEGEBENER TEMPERATUR T %C VERWENDETE VARIABLE %C T TEMPERATUR %C C2 PLANCKSCHE KONSTANTE (=1.4388 CM K (1967)) %C LAMDA(I) WELLENLAENGE %C S(I) STRAHLUNGSVERTEILUNG DES HOHLRAUMSTRAHLERS %C %C LITERATUR OFFIZIELLE EMPFEHLUNGEN DER CIE,DEUTSCHE VERSION, %C CA. 1969, SEITE 21 UND TABELLE 1.1.1 %C %SDP4 82 array def %380 bis 775 mit deltalambda=05 % DO 50 I=1,54 % 50 S(I)=100. % 1*(560./FLOAT(LAMDA(I)))**5 % 2*(EXP(C2/(560.*10.**(-7)*T))-1.) % 3/(EXP(C2/(FLOAT(LAMDA(I))*10.**(-7)*T))-1.) %new CIE 15.3:2004, Eq. (3.1) page 2 %S(I) = [100{560/lambda}**5] [exp{(c2*10**7)/(TNC*560 )} - 1] % /[exp{(c2*10**7)/(TNC*lambda)} - 1] % exp = e {...} = 2.71 {...} %/TNC 2848 def %NLA /EE 2.718281 def %e=mac pocket calculator /C2 1.4350000 10 7 exp mul def /lamd 82 array def xchart8 1 eq {%xchart8=1 Dxx /TNC 4000 def %******************************************** 0 1 79 {%i=0,79 /i exch def /lambda 380 i 5 mul add def lamd i lambda put /E1 560 lambda div 5 exp def /E4 C2 TNC 560 mul div def /E5 C2 TNC lambda mul div def /E6 EE E4 exp def /E7 EE E5 exp def SP40 i E1 100 mul E6 1 sub E7 1 sub div mul put } for %i=0,79 } if %xchart8=1 Dxx %****************************************** xchart8 0 eq {%xchart8=0 Pxx %defined only for xchart8=0 Pxx /TNCj 8 array def /TNCj [6000 5500 5000 4500 4000 3500 3000 2500] def /SP60 82 array def %380 bis 775 mit deltalambda=05 /SP55 82 array def %380 bis 775 mit deltalambda=05 /SP50 82 array def %380 bis 775 mit deltalambda=05 /SP45 82 array def %380 bis 775 mit deltalambda=05 /SP40 82 array def %380 bis 775 mit deltalambda=05 /SP35 82 array def %380 bis 775 mit deltalambda=05 /SP30 82 array def %380 bis 775 mit deltalambda=05 /SP25 82 array def %380 bis 775 mit deltalambda=05 0 1 7 {/j exch def %j=0,7 0 1 79 {%i=0,79 /i exch def /lambda 380 i 5 mul add def lamd i lambda put /E1 560 lambda div 5 exp def /E4 C2 TNCj j get 560 mul div def /E5 C2 TNCj j get lambda mul div def /E6 EE E4 exp def /E7 EE E5 exp def j 0 eq {SP60 i} if j 1 eq {SP55 i} if j 2 eq {SP50 i} if j 3 eq {SP45 i} if j 4 eq {SP40 i} if j 5 eq {SP35 i} if j 6 eq {SP30 i} if j 7 eq {SP25 i} if E1 100 mul E6 1 sub E7 1 sub div mul put } for %i=0,79 } for %j=0,7 } if %xchart8=0 %************************************************* /SE00 %80 data 5 nm [100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0] def %0.0 not used /SC00 %80 data 5 nm [ 33.00 39.92 47.40 55.17 63.30 71.81 80.60 89.53 98.10 105.80 112.40 117.75 121.50 123.45 124.00 123.60 123.10 123.30 123.80 124.09 123.90 122.92 120.70 116.90 112.10 106.98 102.30 98.81 96.90 96.78 98.00 99.94 102.10 103.95 105.20 105.67 105.30 104.11 102.30 100.15 97.80 95.43 93.20 91.22 89.70 88.83 88.40 88.19 88.10 88.06 88.00 87.86 87.80 87.99 88.20 88.20 87.90 87.22 86.30 85.30 84.00 82.21 80.20 78.24 76.30 74.36 72.40 70.40 68.30 66.30 64.40 62.80 61.50 60.20 59.20 58.50 58.10 58.00 58.20 58.50 ] def %0.0 not used 0 1 79 {/i exch def %i=0,79 /lamda 380 i 5 mul add def SP00 i SE00 i get lamda 560 div mul put SQ00 i SE00 i get 1120 lamda sub 560 div mul put } for %i=0,79 %C LITERATURQUELLEN SPEKTRALWERTE %C F2 CIE-DOKUMENT NR.15 FARBMESSUNG, 1971 %C TABELLE 2.1, SEITE 93-102 /F2 %3x80 data [.001368 .002236 .004243 .007650 .01431 .02319 .04351 .07763 .1344 .2148 .2839 .3285 .3483 .3481 .3362 .3187 .2908 .2511 .1954 .1421 .09564 .05795 .03201 .01470 .0049 .0024 .0093 .0291 .06327 .1096 .1655 .2257 .2904 .3597 .4334 .5121 .5945 .6784 .7621 .8425 .9163 .9786 1.0263 1.0567 1.0622 1.0456 1.0026 .9384 .8544 .7514 .6424 .5419 .4479 .3608 .2835 .2187 .1649 .1212 .0874 .0636 .04677 .03290 .02270 .01584 .01136 .00811 .00579 .004109 .002899 .002049 .001440 .0009999 .0006901 .000476 .0003323 .0002348 .0001662 .0001174 .00008308 .00005871 .000039 .000064 .00012 .000217 .000396 .00064 .00121 .00218 .004 .0073 .0116 .01684 .023 .0298 .0380 .048 .06 .0739 .09098 .1126 .139 .1693 .208 .2586 .323 .4073 .503 .6082 .71 .7932 .862 .9149 .954 .9803 .995 1.0 .995 .9786 .952 .9154 .870 .8163 .757 .6949 .631 .5668 .503 .4412 .381 .321 .265 .217 .175 .1382 .107 .0816 .061 .04458 .032 .0232 .017 .01192 .00821 .005723 .004102 .002929 .002091 .001484 .001047 .00074 .00052 .0003611 .0002492 .0001719 .00012 .0000848 .00006 .0000424 .00003 .0000212 .00645 .01055 .02005 .03621 .06785 .1102 .2074 .3713 .6456 1.0391 1.3856 1.623 1.7471 1.7826 1.7721 1.7441 1.6692 1.5281 1.2876 1.0419 .8130 .6162 .4652 .3533 .2720 .2123 .1582 .1117 .07825 .05725 .04216 .02984 .0203 .0134 .00875 .00575 .0039 .00275 .0021 .0018 .00165 .0014 .0011 .0010 .0008 .0006 .00034 .00024 .00019 .0001 .00005 .00003 .00002 .00001 % 26*0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 %10 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 %20 0.0 0.0 0.0 0.0 0.0 0.0 %26 ] def /F10 %3x80 data [.00016 .0006624 .002362 .007242 .01911 .0434 .08474 .1406 .2045 .2647 .3147 .3577 .3837 .3867 .3707 .343 .3023 .2541 .1956 .1323 .08051 .04107 .01617 .005132 .003816 .01544 .03746 .07136 .1177 .173 .2365 .3042 .3768 .4516 .5298 .6161 .7052 .7938 .8787 .9512 1.0142 1.0743 1.1185 1.1343 1.124 1.0891 1.0305 .9507 .8563 .7549 .6475 .5351 .4316 .3437 .2683 .2043 .1526 .1122 .08126 .05793 .04085 .02862 .019941 .01384 .0100 .006605 .004552 .003145 .002175 .001506 .001045 .0007274 .0005083 .0003564 .000251 .0001777 .0001264 .00009015 .00006453 .00004634 .00001736 .00007156 .0002534 .0007685 .002004 .004509 .008756 .01446 .02139 .0295 .03868 .0496 .06208 .0747 .08946 .1063 .1282 .1528 .1852 .2199 .2536 .2977 .3391 .3954 .4608 .5314 .6067 .6857 .7618 .8233 .8752 .9238 .962 .9822 .9918 .9991 .9973 .9824 .9555 .9152 .8689 .8256 .7774 .7203 .6583 .5939 .528 .4618 .3981 .3395 .2835 .2282 .1798 .1402 .1076 .08119 .06028 .0441 .0318 .0226 .0159 .01113 .007749 .0053751 .0037177 .002565 .001768 .001222 .0008462 .0005864 .0004074 .000284 .0001987 .0001395 .00009843 .00006982 .00004974 .00003554 .00002549 .00001834 .0007048 .002928 .01048 .03234 .08601 .1971 .3894 .6568 .9725 1.2825 1.5535 1.7985 1.9673 2.0273 1.9948 1.9007 1.7454 1.5549 1.3176 1.0302 .7721 .5701 .4152 .3024 .2185 .1592 .112 .08225 .06071 .04305 .03045 .02058 .01368 .007918 .003988 .001091 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 %10 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 %20 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 %30 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 %40 0.0 0.0 0.0 0.0 %44 ] def %calculation of transformation data /FARBE 30 array def /FARBE [(R) (m) ( 561_770) %00 (Y) (m) ( 520_770) %01 (G) (m) ( 475_573) %02 (C) (m) ( 380_561) %03 (B) (m) ( 380_520) %04 (M) (m) ( 573_475) %05 (G) (o) ( 520_570) %06 (M) (o) ( 570_520) %07 (W) (0) ( 380_770) %08 (N) (0) ( 380_770) %09 ] def /xshift 10 array def %max 6 device + 4 elementary /yshift 10 array def /colori 10 array def /RX0 720 array def %9x80 /RX0 [ %(%Rm 00 560_770) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0036 0036 0036 0036 0036 0036 0468 0900 0900 0900 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %(%Ym 01 520_770) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0036 0036 0036 0036 0036 0036 0036 0036 0468 0900 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %(%Gm 02 475_575) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0036 0036 0036 0036 0036 0036 0036 0036 0036 0468 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0900 0900 0900 0900 0900 0900 0900 0900 0900 0468 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %(%Cm 03 380_560) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0900 0900 0900 0900 0900 0900 0468 0036 0036 0036 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %(%Bm 04 380_520) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0900 0900 0900 0900 0900 0900 0900 0900 0468 0036 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %(%Mm 05 575_475) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0900 0900 0900 0900 0900 0900 0900 0900 0900 0468 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0036 0036 0036 0036 0036 0036 0036 0036 0036 0468 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %(%Go 06 520_570) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0036 0036 0036 0036 0036 0036 0036 0036 0468 0900 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0900 0900 0900 0900 0900 0900 0900 0900 0468 0036 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %(%Mo 07 570_520) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0900 0900 0900 0900 0900 0900 0900 0900 0468 0036 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0036 0036 0036 0036 0036 0036 0036 0036 0468 0900 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %(%W0(r=0,900) 08 380_770) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %(%N0(r=0,036) 09 380_770) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 ] def /xcol10_BS {TBL 0 -50 rmoveto (10) show 0 50 rmoveto TBS} bind def /xcol10KBS {TBL 0 -50 rmoveto (,10) show 0 50 rmoveto TBS} bind def /xcolorl xcolor def 0 1 0 {/xcolorl exch def %xcolorl=0,0 xcolorl 1 eq {0 1 239 {/i exch def %i=0,239 F2 i F10 i get put } for %i=0,239 } if /YKSUM 0 def %For CIE Illuminant E 0 1 79 {/i exch def %i=0,1,79 /YKSUM YKSUM F2 80 i add get add def } for %i=0,1,79 /F2N 240 array def 0 1 79 {/i exch def %i=0,1,79 F2N 00 i add F2 00 i add get YKSUM div 100 mul put F2N 80 i add F2 80 i add get YKSUM div 100 mul put F2N 160 i add F2 160 i add get YKSUM div 100 mul put } for %i=0,1,79 /FXN 82 array def %FXN 0 = F2N imax /FYN 82 array def /FZN 82 array def %defines FXN, FYN, FZN 0 to 79 0 1 79 {/i exch def %i=0,79 FXN i F2N 000 i add get put FYN i F2N 080 i add get put FZN i F2N 160 i add get put } for %i=0,79 %special wavelength range with complementary colours for E? /FXD 63 array def /FYD 63 array def /FZD 63 array def /DOW 63 array def 00 1 60 {/i exch def %i=0,60 %range 400..700nm FXD i FXN 005 i add get put FYD i FYN 005 i add get put FZD i FZN 005 i add get put DOW i 400 i 5 mul add put %range 400 to 700 } for %i=0,60 %for interpolation FXD 61 FXD 60 get put FYD 61 FYD 60 get put FZD 61 FZD 60 get put FXD 62 FXD 60 get put FYD 62 FYD 60 get put FZD 62 FZD 60 get put /FAD 63 array def /FBD 63 array def /FCD 63 array def 20 setlinewidth /xdel 1005 def /ydel 395 def /x0 050 def /x1 -150 def /Xi 82 array def %80 spectral colours 380 to 775nm /Yi 82 array def /Zi 82 array def /XANi 82 array def /YANi 82 array def /ZANi 82 array def /AANi 82 array def %actual data for plot, spectral colours /BANi 82 array def /FXNZ 17 array def /FYNZ 17 array def /FZNZ 17 array def /XZi 17 array def /YZi 17 array def /ZZi 17 array def /XANZi 17 array def /YANZi 17 array def /ZANZi 17 array def /AANZi 17 array def %actual data for plot, purple colours /BANZi 17 array def /XRj 10 array def %10 spectral or max 10 device colours /YRj 10 array def /ZRj 10 array def /XANRj 10 array def /YANRj 10 array def /ZANRj 10 array def /XSj 10 array def %10 spectral or max 10 device atagonistic colours /YSj 10 array def /ZSj 10 array def /XANSj 10 array def /YANSj 10 array def /ZANSj 10 array def /XCj 10 array def %10 spectral from continuous colours /YCj 10 array def /ZCj 10 array def /XANCj 10 array def /YANCj 10 array def /ZANCj 10 array def /XAj 10 array def %10 spectral from continuous colours /YAj 10 array def /ZAj 10 array def /XANAj 10 array def /YANAj 10 array def /ZANAj 10 array def /RAk 82 array def 0 1 0 {/xchart4 exch def %xchart4=0,7 /xchartl xchart def %0 1 7 {/xchartl exch def %xchartl=0,7 %/YF 0 def %for normalization 1 /YF 1 def %for normalization 0,900 YF 0 eq {/YFR 1.00 def}{/YFR 0.90 def} ifelse gsave 5 /Times-ISOL1 FS /cvishow {cvi 6 string cvs show} def %75 85 moveto %lanind cvishow (-) show %colorm cvishow %deintp cvishow %xcolorl cvishow %xchart cvishow %pchart cvishow %colsep cvishow (-L) show pmetam cvishow 5 /Times-ISOL1 FS 72 86 moveto (egw41-1a enh31-1n) show 72 90 translate 0.010 MM dup scale 25 setlinewidth 0 0 0 0 setcmyk_olvcolor 0 0 moveto 6000 0 rlineto 0 4000 rlineto 6000 neg 0 rlineto closepath fill 0 0 moveto 6000 0 rlineto 0 4000 rlineto -6000 0 rlineto closepath clip 0 0 0 1 setcmyk_olvcolor 0 0 moveto 6000 0 rlineto 0 4000 rlineto 6000 neg 0 rlineto closepath stroke %calculation of XW,YW,ZW for 8 illuminants Dxx or Pxx 0 1 79 {/i exch def %i=0,79 SDAK i xchart8 0 eq {%xchart8=0 Pxx xchartl 0 eq {SP60 i get put} if xchartl 1 eq {SP55 i get put} if xchartl 2 eq {SP50 i get put} if xchartl 3 eq {SP45 i get put} if xchartl 4 eq {SP40 i get put} if xchartl 5 eq {SP35 i get put} if xchartl 6 eq {SP30 i get put} if xchartl 7 eq {SP25 i get put} if }%xchart8=0 Pxx {%xchart8=1 Dxx xchartl 0 eq {SD65 i get put} if xchartl 1 eq {SD50 i get put} if xchartl 2 eq {SP40 i get put} if xchartl 3 eq {SA00 i get put} if xchartl 4 eq {SE00 i get put} if xchartl 5 eq {SC00 i get put} if xchartl 6 eq {SP00 i get put} if xchartl 7 eq {SQ00 i get put} if } ifelse %xchart8=1 Dxx } for %i=0,79 /YKSUM 0 def 0 1 79 {/i exch def %i=0,1,79 /YKSUM YKSUM SDAK i get F2 80 i add get mul add def } for %i=0,1,79 0 1 79 {/i exch def %i=0,1,79 F2N 00 i add SDAK i get F2 00 i add get mul YKSUM div 100 mul put F2N 80 i add SDAK i get F2 80 i add get mul YKSUM div 100 mul put F2N 160 i add SDAK i get F2 160 i add get mul YKSUM div 100 mul put } for %i=0,1,79 %XW,YW,ZW for white /XW 0 def /YW 0 def /ZW 0 def 0 1 079 {/i exch def %i=0,79 /XW XW F2N 00 i add get add def /YW YW F2N 80 i add get add def /ZW ZW F2N 160 i add get add def } for %i=0,79 /SUMW XW YW add ZW add def %for D65, D50, P40, A00, E00 /XANW XW SUMW div def /YANW YW SUMW div def /ZANW ZW SUMW div def /AANW XW YW 0.0001 add div def /BANW ZW YW 0.0001 add div 0.4 mul neg def %************************************************ %XYZRj for 10 reflections 0 1 09 {/j exch def %j=0,9 %10 Reflections /jx j 80 mul def 0 1 79 {/i exch def %i=0,79 RAk i RX0 jx i add get 1000 div put } for %i=0,79 /XR 0 def /YR 0 def /ZR 0 def 0 1 079 {/i exch def %i=0,79 /XR XR F2N 00 i add get RAk i get mul add def /YR YR F2N 80 i add get RAk i get mul add def /ZR ZR F2N 160 i add get RAk i get mul add def } for %i=0,79 XRj j XR put YRj j YR put ZRj j ZR put /SUMR XR YR add ZR add def XANRj j XR SUMR 0.0001 add div put YANRj j YR SUMR 0.0001 add div put ZANRj j ZR SUMR 0.0001 add div put } for %j=0,9 %******************************************* 0 1 62 {/i exch def %i=0,62 FAD i FXD i get put FBD i FYD i get put FCD i FZD i get put } for %i=0,62 % FXU(1)=FF(2)*U(3)-FF(3)*U(2) % FXU(2)=FF(3)*U(1)-FF(1)*U(3) % FXU(3)=FF(1)*U(2)-FF(2)*U(1) % SUBROUTINE DOWEL (F,FXU,IMAX,IO) % DIMENSION F(99,3),FXU(3) % I=1 % T2=F(1,1)*FXU(1)+F(1,2)*FXU(2)+F(1,3)*FXU(3) % IF(T2) 1,1,4 % 1 T1=T2 % I=I+1 % T2=F(I,1)*FXU(1)+F(I,2)*FXU(2)+F(I,3)*FXU(3) % IF(T2) 1,1,2 % 2 IF(T1) 3,3,1 % 3 IO=I-1 % RETURN % 4 T1=F(IMAX,1)*FXU(1)+F(IMAX,2)*FXU(2)+F(IMAX,3)*FXU(3) % IF(T1) 5,5,1 % 5 IO=IMAX % RETURN % END %********************************************************* /proc_ABC_KNP_FWERTiX {%BEG proc_ABC_KNP_FWERT %input FAD,FBD,FCD, KNP %output FWERTiX/Y/Z (i=1,4) kNP 1 ge {/FWERT1X FAD kNP 1 sub get def /FWERT1Y FBD kNP 1 sub get def /FWERT1Z FCD kNP 1 sub get def} {/FWERT1X FAD 0 get def %again 400nm for i=0 /FWERT1Y FBD 0 get def /FWERT1Z FCD 0 get def} ifelse /FWERT2X FAD kNP get def /FWERT2Y FBD kNP get def /FWERT2Z FCD kNP get def /FWERT3X FAD kNP 1 add get def /FWERT3Y FBD kNP 1 add get def /FWERT3Z FCD kNP 1 add get def /FWERT4X FAD kNP 2 add get def /FWERT4Y FBD kNP 2 add get def /FWERT4Z FCD kNP 2 add get def } bind def %END proc_ABC_KNP_FWERTiX %********************************************************* /proc_XIE_TN1 {%BEG proc_XIE_TN1 %input XIE, FWERTiX/Y/Z (i=1,4) %output TN1 /A1N XIE 1 XIE sub mul XIE 2 sub mul 6 div def /A2N XIE 1 add XIE 1 sub mul XIE 2 sub mul 0.5 mul def /A3N XIE 1 add XIE mul 2 XIE sub mul 0.5 mul def /A4N XIE 1 add XIE mul XIE 1 sub mul 6 div def /FNX A1N FWERT1X mul A2N FWERT2X mul add A3N FWERT3X mul add A4N FWERT4X mul add def /FNY A1N FWERT1Y mul A2N FWERT2Y mul add A3N FWERT3Y mul add A4N FWERT4Y mul add def /FNZ A1N FWERT1Z mul A2N FWERT2Z mul add A3N FWERT3Z mul add A4N FWERT4Z mul add def /TNX FNX FXU1 mul FNY FXU2 mul add FNZ FXU3 mul add def } bind def %END proc_XIE_TN1 %********************************************************* /WEL1 60 array def %irregular definition /WEL2 60 array def %irregular definition %0 1 2 3 4 5 6 7 8 9 /WEL1 [405 435 450 460 465 470 475 480 485 490 495 500 510 520 530 540 545 550 555 560 ] def 0 1 19 {/k exch def %k=0,19 %wavelength 405..700nm /j WEL1 k get 400 sub 5 idiv def /LP k def /LPP 20.5 k add def /FF1 FXD j get def %start at 405..700nm /FF2 FYD j get def /FF3 FZD j get def /U1 XW def /U2 YW def /U3 ZW def /FXU1 FF2 U3 mul FF3 U2 mul sub def /FXU2 FF3 U1 mul FF1 U3 mul sub def /FXU3 FF1 U2 mul FF2 U1 mul sub def /INP -1 def /IPN -1 def %assumption jump from TN to TP from negativ to positiv 0 1 60 {/i exch def %i=1,60 /TN FAD i get FXU1 mul FBD i get FXU2 mul add FCD i get FXU3 mul add def /TP FAD i 1 add get FXU1 mul FBD i 1 add get FXU2 mul add FCD i 1 add get FXU3 mul add def TN 0 le TP 0 gt and {/INP i def exit} if } for %i=1,60 0 1 60 {/i exch def %i=1,60 /TN FAD i get FXU1 mul FBD i get FXU2 mul add FCD i get FXU3 mul add neg def /TP FAD i 1 add get FXU1 mul FBD i 1 add get FXU2 mul add FCD i 1 add get FXU3 mul add neg def TN 0 le TP 0 gt and {/IPN i def exit} if } for %i=1,60 %********************************************************* /kNP INP def kNP 0 ge {%kNP>=0 proc_ABC_KNP_FWERTiX %input FAD,KNP, output FWERTiXYZ (i=1,4) /XIE1 0 def %start values TN=0 for XIE1, TP>0 for XIE2 /XIE2 1 def 0 1 9 {/mk exch def %mk=0,9 /XIE XIE1 XIE2 add 0.5 mul def proc_XIE_TN1 %input XIE, ouput TN1 TNX 0 le {/XIE1 XIE def /TN1 TNX def} {/XIE2 XIE def /TP1 TNX def} ifelse } for %mk=0,9 /XIE XIE1 XIE2 add 0.5 mul def /DOWXIE1 DOW INP get DOW INP 1 add get DOW INP get sub XIE mul add def /XIENP XIE def } if %kNP>=0 %********************************************************* /kNP IPN def kNP 0 ge {%kNP>=0 proc_ABC_KNP_FWERTiX %input FAD,KNP, output FWERTiXYZ (i=1,4) /XIE1 0 def %start values TN=0 for XIE1, TP>0 for XIE2 /XIE2 1 def /FXU1 FXU1 neg def /FXU2 FXU2 neg def /FXU3 FXU3 neg def 0 1 9 {/mk exch def %mk=0,9 /XIE XIE1 XIE2 add 0.5 mul def proc_XIE_TN1 %input XIE, ouput TN1 TNX 0 le {/XIE1 XIE def /TN1 TNX def} {/XIE2 XIE def /TP1 TNX def} ifelse } for %mk=0,9 /XIE XIE1 XIE2 add 0.5 mul def /DOWXIE2 DOW IPN get DOW IPN 1 add get DOW IPN get sub XIE mul add def /XIEPN XIE def } if %kNP>=0 %********************************************************* 0 1 79 {/i exch def %i=0,79 RA i 0.036 put } for %i=0,79 INP -1 eq {/i1 0 def} %380nm {/i1 INP 5 add def} ifelse %405..700nm IPN -1 eq {/i2 79 def} %770nm {/i2 IPN 5 add def} ifelse %405..700nm i2 i1 ge {%i1i2 i1 1 79 {/i exch def %i=i1,79 RA i 0.900 put } for %i=i1,79 0 1 i2 {/i exch def %i=0,i2 RA i 0.900 put } for %i=0,i2 } ifelse %i1>i2 %correction (0.900+0.036)/2=0.648 i2 i1 ge {%i1i2 RA i1 0.468 put RA i2 0.468 XIEPN 0.5 sub add put } ifelse %i1>i2 %*************************************************** /X 0 def /Y 0 def /Z 0 def 0 1 079 {/i exch def %i=0,79 /X X F2N 00 i add get RA i get mul add def /Y Y F2N 80 i add get RA i get mul add def /Z Z F2N 160 i add get RA i get mul add def } for %i=0,79 /SUM X Y add Z add def /XAN X SUM 0.0001 add div def /YAN Y SUM 0.0001 add div def /ZAN Z SUM 0.0001 add div def %************************************************* 0 0 0 1 setcmyk_olvcolor 0 1 1 {/Icom exch def %Icom=0,1 Icom 0 eq {%Icom=0,1 Xi k X put Yi k Y put Zi k Z put XANi k XAN put YANi k YAN put ZANi k ZAN put }%Icom=0 {%Icom=1 /kP 20 k add def Xi kP XW X sub put Yi kP YW Y sub put Zi kP ZW Z sub put /SUMi Xi kP get Yi kP get add Zi kP get add def XANi kP Xi kP get SUMi 0.0001 add div put YANi kP Yi kP get SUMi 0.0001 add div put ZANi kP Zi kP get SUMi 0.0001 add div put } ifelse %Icom=1 } for %Icom=0,1 YF 1 eq {%YF=1 Xi k Xi k get 0.9000 mul put Yi k Yi k get 0.9000 mul put Zi k Zi k get 0.9000 mul put Xi kP Xi kP get 0.9000 mul put Yi kP Yi kP get 0.9000 mul put Zi kP Zi kP get 0.9000 mul put } if %YF=1 } for %k=0,19 %********************************************************************** %XW,YW,ZW and XK,YK,ZK for white /XW 0 def /YW 0 def /ZW 0 def 0 1 079 {/i exch def %i=0,79 /XW XW F2N 00 i add get add def /YW YW F2N 80 i add get add def /ZW ZW F2N 160 i add get add def } for %i=0,79 YF 0 eq {%YF=0 /XK XW def /YK YW def /ZK ZW def }%YF=0 {%YF=1 /XK XW YFR mul def /YK YW YFR mul def /ZK ZW YFR mul def } ifelse %YF=1 /SUMK XK YK add ZK add def %for D65, D50, P40, A00, E00 /XANK XK SUMK div def /YANK YK SUMK div def /ZANK ZK SUMK div def /LP LP 1 add def /xtexti 96 array def /ytexti 96 array def /xtexti [ %T00 T10 T20 T30 T40 T41 T50 T51 T60 T61 T70 T71 %0 1 2 3 4 5 6 7 8 9 10 11 1700 2000 2000 3000 3200 4300 3200 4300 3200 4300 3200 4300 %0 (x,y) 1700 2000 2000 3000 3200 4300 3200 4300 3200 4300 3200 4300 %1 (x,y) 0050 0050 0050 0050 0050 1300 0050 1300 0050 1300 0050 1300 %2 (a2,b2) 0050 0050 0050 0050 0050 1300 0050 1300 0050 1300 0050 1300 %3 (a2,b2) 0050 0050 0050 0050 0050 1300 0050 1300 0050 1300 0050 1300 %4 (A,B) 0050 0050 0050 0050 0050 1300 0050 1300 0050 1300 0050 1300 %5 (A,B) 0050 0050 0050 0050 0050 1300 0050 1300 0050 1300 0050 1300 %6 (A1,B1) 0050 0050 0050 0050 0050 1300 0050 1300 0050 1300 0050 1300 %7 (a2,b2) ] def /ytexti [ 3800 3580 3360 3140 2920 2920 2700 2700 2480 2480 2260 2260 %0 (x,y) 3800 3580 3360 3140 2920 2920 2700 2700 2480 2480 2260 2260 %1 (x,y) 0500 0290 0080 1600 1380 1380 1160 1160 0940 0940 0720 0720 %3 (a2,b2) 0500 0290 0080 1600 1380 1380 1160 1160 0940 0940 0720 0720 %4 (a2,b2) 0500 0290 0080 1600 1380 1380 1160 1160 0940 0940 0720 0720 %4 (A,B) 0500 0290 0080 1600 1380 1380 1160 1160 0940 0940 0720 0720 %5 (A,B) 0500 0290 0080 1600 1380 1380 1160 1160 0940 0940 0720 0720 %6 (A1,B1) 0500 0290 0080 1600 1380 1380 1160 1160 0940 0940 0720 0720 %7 (a2,b2) ] def %*********************************************************** /icolor 9 array def %Rm %Ym %Gm %Cm %Bm %Mm %Go %Mo %W /icolor [20 10 06 00 30 26 06 26 40] def /imshow {-20 -50 rmoveto TBL (m) show 0 50 rmoveto TBIS} def /ioshow {0 -50 rmoveto TBL (o) show 0 50 rmoveto TBIS} def %************************************************* %allways /kxi 8 array def /xci 8 array def /Bci 8 array def /xcti 8 array def /Bcti 8 array def % 0 1 2 3 4 5 6 7 % (P60)(P55)(P50)(P45)(P40)(P35)(P30)(P25) %or (D65)(D50)(P40)(A00)(E00)(C00)(P00)(Q00) /kxi [9 10 10 11 9 9 10 9] def /kx kxi xchartl get def xchart4 0 eq xchart4 1 eq or xchart4 4 eq or xchart4 5 eq or {%xchart4=0,1 (x,y); 4,5 (A, B) % (P60) (P55) (P50) (P45) (P40) (P35) (P30) (P25) %or (D65) (D50) (P40) (A00) (E00) (C00) (P00) (Q00) % 0 1 2 3 4 5 6 7 /xci [ 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 ] def /xcti [(0,000) (0,000) (0,000) (0,000) (0,000) (0,000) (0,000) (0,000)] def /Bci [ 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 ] def /Bcti [(1,000) (1,000) (1,000) (1,000) (1,000) (1,000) (1,000) (1,000)] def } if %xchart4=1 xchart4 6 eq {%xchart4=6 (A1, B1) % (P60) (P55) (P50) (P45) (P40) (P35) (P30) (P25) %or (D65) (D50) (P40) (A00) (E00) (C00) (P00) (Q00) % 0 1 2 3 4 5 6 7 /xci [ 0.110 0.110 0.110 0.110 0.110 0.110 0.110 0.110 ] def /xcti [(0,110) (0,110) (0,110) (0,110) (0,110) (0,110) (0,110) (0,110)] def /Bci [ 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 ] def /Bcti [(1,000) (1,000) (1,000) (1,000) (1,000) (1,000) (1,000) (1,000)] def } if %xchart4=6 xchart4 2 eq xchart4 3 eq or xchart4 7 eq or {%xchart4=2,3,7 % (P60) (P55) (P50) (P45) (P40) (P35) (P30) (P25) %or (D65) (D50) (P40) (A00) (E00) (C00) (P00) (Q00) % 0 1 2 3 4 5 6 7 /xci [ 0.110 0.110 0.110 0.110 0.110 0.110 0.110 0.110 ] def /xcti [(0,110) (0,110) (0,110) (0,110) (0,110) (0,110) (0,110) (0,110)] def /Bci [ 0.800 1.000 1.300 2.500 0.900 0.700 1.000 0.700 ] def /Bcti [(0,800) (1,000) (1,300) (2,500) (0,900) (0,700) (1,000) (0,700)] def } if %xchart4=2,3,7 /xc xci xchartl get def /xct xcti xchartl get def /Bc Bci xchartl get def /Bct Bcti xchartl get def xchart4 0 eq xchart4 1 eq or {%xchart4=0,1 4600 1600 moveto TBS (Parame\255) show 4600 1400 moveto TBS (ter:) show TBIS xchart4 0 eq {( N) show} if xchart4 1 eq {( Y) show} if proz_chromaticity_data proz_chromaticity_xy } if %xchart4=0,1 xchart4 2 eq {%xchart4=2 proz_chromaticity_data proz_chromaticity_a2b2 } if %xchart4=2 xchart4 3 eq {%xchart4=3 proz_chromaticity_data proz_chromaticity_a2b2 } if %xchart4=3 %*********************************************************** xchart4 0 eq xchart4 1 eq or {%xchart4=0,1 %only for (x,y) /fakt 4000 def proz_name_range proz_opti 600 400 translate %scala & graphic (x,y) 600 400 0 1 39 {/i exch def %i=0,39 /An XANi i get def /Bn YANi i get def An fakt mul Bn fakt mul i 0 eq {moveto} if i 1 ge i 38 le and {lineto} if i 39 eq {lineto closepath stroke} if } for %i=0,39 XANW fakt mul YANW fakt mul 90 0 360 arc stroke XANW fakt mul 200 sub YANW fakt mul 250 sub moveto TBS TELi xchartl get show TBIS 0 1 4 {/j exch def %j=0,4 j 0 eq {/i 0 def} if %Cm-Rm j 1 eq {/i 6 def} if %Gm-Mm j 2 eq {/i 13 def} if %Ym-Bm j 3 eq {/i kx def} if %Max-Min j 4 eq {%new only for i=40 /i 40 def /k 6 def %Go Xi i XRj k get put Yi i YRj k get put Zi i ZRj k get put } if /SUM Xi i get Yi i get add Zi i get add 0.0001 add def XANCj j Xi i get SUM div put YANCj j Yi i get SUM div put ZANCj j Zi i get SUM div put /An XANCj j get def /Bn YANCj j get def /AnY An fakt mul def %xan /BnY Bn fakt mul def %yan /Paramshow {Yi i get cvishow} bind def j 0 eq {AnY 400 sub BnY 050 sub moveto xchart4 0 eq {(C) show imshow} if xchart4 1 eq {Paramshow} if 1 0 0 0 setcmykcolor} if %Cm j 1 eq {AnY 400 sub BnY 050 sub moveto xchart4 0 eq {(G) show imshow} if xchart4 1 eq {Paramshow} if 1 0 1 0 setcmykcolor} if %Gm j 2 eq {AnY 100 sub BnY 250 sub moveto xchart4 0 eq {(Y) show imshow} if xchart4 1 eq {Paramshow} if 0 0 1 0 setcmykcolor} if %Ym j 3 eq {AnY 500 sub xchart4 1 eq {100 add} if BnY 050 sub moveto xchart4 0 eq {(max) show} if xchart4 1 eq {Paramshow} if 0.3 0 1 0 setcmykcolor} if %Ymax j 4 eq {AnY 370 sub xchart4 1 eq {100 add} if BnY 000 add moveto xchart4 0 eq {(G) show ioshow} if xchart4 1 eq {Paramshow} if 1 0.5 1 0 setcmykcolor} if %Go newpath AnY BnY 90 0 360 arc fill 0 setgray newpath AnY BnY 90 0 360 arc stroke } for %j=0,4 %continue j=0,4 for antagonistic (A) colours 0 1 4 {/j exch def %j=0,4 j 0 eq {/i 0 def} if %Cm-Rm j 1 eq {/i 6 def} if %Gm-Mm j 2 eq {/i 13 def} if %Ym-Bm j 3 eq {/i kx def} if %Max-Min j 4 eq {%new only for i=40 /i 40 def /k 6 def %Mo Xi i XRj k get put %special Yi i YRj k get put Zi i ZRj k get put } if /SUM XK Xi i get sub YK Yi i get sub add ZK Zi i get sub add 0.0001 add abs def XANAj j XK Xi i get sub SUM div put YANAj j YK Yi i get sub SUM div put ZANAj j ZK Zi i get sub SUM div put /An XANAj j get def /Bn YANAj j get def /AnY An fakt mul def %xan /BnY Bn fakt mul def %yan /Paramshow {YK Yi i get sub cvishow} bind def j 0 eq {AnY 150 add BnY 150 sub moveto xchart4 0 eq {(R) show imshow} if xchart4 1 eq {Paramshow} if 0 1 1 0 setcmykcolor} if %Rm j 1 eq {AnY 150 add BnY 050 sub moveto xchart4 0 eq {(M) show imshow} if xchart4 1 eq {Paramshow} if 0 1 0 0 setcmykcolor} if %Mm j 2 eq {AnY 350 sub BnY 100 add moveto xchart4 0 eq {(B) show imshow} if xchart4 1 eq {Paramshow} if 1 1 0 0 setcmykcolor} if %Bm j 3 eq {AnY 150 sub BnY 250 sub moveto xchart4 0 eq {(min) show} if xchart4 1 eq {Paramshow} if 0.7 1 0 0 setcmykcolor} if %Ymin j 4 eq {AnY 250 sub BnY 150 sub moveto xchart4 0 eq {(M) show ioshow} if xchart4 1 eq {Paramshow} if 0 0.5 0 0 setcmykcolor} if %Mo newpath AnY BnY 90 0 360 arc fill 0 setgray newpath AnY BnY 90 0 360 arc stroke } for %j=0,4 -600 -400 translate %scala & graphic (x,y) } if %xchart4=0,1 %************************************************************** xchart4 2 eq xchart4 3 eq or {%xchart4=2,3 %only for (a2,b2), (a2s,b2s) /fakt 1000 def /a2 1.00 def /b2 -0.4 def 500 0 translate proz_name_range proz_opti -500 0 translate proz_param /xtrans8 1300 def /ytrans8 3200 def xtrans8 ytrans8 translate %scala & graphic (a2,b2) 1300 3200 %0600 3100 translate %proz_axis_scales4_7 0 1 39 {/i exch def %i=0,39 /An XANi i get xc sub YANi i get 0.0001 add div def /Bn ZANi i get YANi i get 0.0001 add div 0.4 mul neg % Bc mul def /AnK XANK xc sub YANK 0.0001 add div def /BnK ZANK YANK 0.0001 add div 0.4 mul neg % Bc mul def /AnY An def /BnY Bn def An fakt mul Bn fakt mul i 0 eq {moveto} if i 1 ge i 38 le and {lineto} if i 39 eq {lineto closepath stroke} if } for %i=0,39 XANW xc sub YANW 0.0001 add div fakt mul %a2 ZANW YANW 0.0001 add div 0.4 mul neg fakt mul %b2 90 0 360 arc stroke XANW xc sub YANW 0.0001 add div fakt mul 100 add ZANW YANW 0.0001 add div 0.4 mul neg fakt mul 000 add moveto TBS TELi xchartl get show %10 chromatic colours from continuous colours TBIS 0 1 4 {/j exch def %j=0,4 j 0 eq {/i 0 def} if %Cm-Rm j 1 eq {/i 6 def} if %Gm-Mm j 2 eq {/i 13 def} if %Ym-Bm j 3 eq {/i kx def} if %Max-Min j 4 eq {/i 40 def /k 6 def %Go Xi i XRj k get put %special Yi i YRj k get put Zi i ZRj k get put } if /SUM Xi i get Yi i get add Zi i get add 0.0001 add def XANCj j Xi i get SUM div put YANCj j Yi i get SUM div put ZANCj j Zi i get SUM div put /An XANCj j get xc sub YANCj j get 0.0001 add div def %a2 /Bn ZANCj j get YANCj j get 0.0001 add div 0.4 mul neg %b2 % Bc mul def /AnY An fakt mul def /BnY Bn fakt mul def %dAB, CAB not used /dAB An dup mul Bn dup mul add 0.0001 add sqrt def %/CAB dAB Yi i get mul def /Paramshow {Yi i get cvishow} bind def j 0 eq {AnY 350 sub BnY 100 sub moveto xchart4 2 eq {(C) show imshow} if xchart4 3 eq {Paramshow} if 1 0 0 0 setcmykcolor} if %Cm j 1 eq {AnY 350 sub BnY 150 sub moveto xchart4 2 eq {(G) show imshow} if xchart4 3 eq {Paramshow} if 1 0 1 0 setcmykcolor} if %Gm j 2 eq {AnY 150 sub BnY 200 add moveto xchart4 2 eq {(Y) show imshow} if xchart4 3 eq {Paramshow} if 0 0 1 0 setcmykcolor} if %Ym j 3 eq {AnY 500 sub BnY 050 add moveto xchart4 2 eq {(max) show} if xchart4 3 eq {Paramshow} if 0.3 0 1 0 setcmykcolor} if %Ymax j 4 eq {AnY 050 add BnY 250 sub moveto xchart4 2 eq {(G) show ioshow} if xchart4 3 eq {Paramshow} if 1 0.5 1 0 setcmykcolor} if %Go newpath AnY BnY 90 0 360 arc fill 0 setgray newpath AnY BnY 90 0 360 arc stroke /SUM XK Xi i get sub YK Yi i get sub add ZK Zi i get sub add 0.0001 add def XANCj j XK Xi i get sub SUM div put YANCj j YK Yi i get sub SUM div put ZANCj j ZK Zi i get sub SUM div put /An XANCj j get xc sub YANCj j get 0.0001 add div def %a2 /Bn ZANCj j get YANCj j get 0.0001 add div 0.4 mul neg %b2 % Bc mul def /AnY An fakt mul def %a2 /BnY Bn fakt mul def %b2 %dAB, CAB not used /dAB An dup mul Bn dup mul add 0.0001 add sqrt def %/CAB dAB YK Yi i get sub mul def /Paramshow {YK Yi i get sub cvishow} bind def j 0 eq {AnY 120 add BnY 050 sub moveto xchart4 2 eq {(R) show imshow} if xchart4 3 eq {Paramshow} if 0 1 1 0 setcmykcolor} if %Rm j 1 eq {AnY 120 add BnY 050 sub moveto xchart4 2 eq {(M) show imshow} if xchart4 3 eq {Paramshow} if 0 1 0 0 setcmykcolor} if %Mm j 2 eq {AnY 300 sub BnY 100 add moveto xchart4 2 eq {(B) show imshow} if xchart4 3 eq {Paramshow} if 1 1 0 0 setcmykcolor} if %Bm j 3 eq {AnY 100 sub xchart4 3 eq {100 add} if BnY 250 sub moveto xchart4 2 eq {(min) show} if xchart4 3 eq {Paramshow} if 0.7 1 0 0 setcmykcolor} if %Bmin j 4 eq {AnY 100 sub BnY 250 sub moveto xchart4 2 eq {(M) show ioshow} if xchart4 3 eq {Paramshow} if 0 0.5 0 0 setcmykcolor} if %Mo newpath AnY BnY 90 0 360 arc fill 0 setgray newpath AnY BnY 90 0 360 arc stroke } for %j=0,4 xtrans8 neg ytrans8 neg translate %text & graphic (a2, b2) 1300 3200 %-600 400 translate } if %xchart4=2,3 only for (a2,b2), (a2s,b2s) %******************************************************* xchart4 4 eq xchart4 5 eq or {%xchart4=4,5 %only for (A,B) /fakt 40 def /a2 1.00 def /b2 -0.4 def proz_name_range proz_opti proz_param /xtrans8 3500 def /ytrans8 2100 def xtrans8 ytrans8 translate %text & graphic (A,B) 3500 2100 proz_axis_scales4_7 0 1 39 {/i exch def %i=0,39 /An XANi i get YANi i get 0.0001 add div def /Bn ZANi i get YANi i get 0.0001 add div 0.4 mul neg def /AnK XK YK 0.0001 add div def /BnK ZK YK 0.0001 add div 0.4 mul neg def /AnY An AnK sub Yi i get mul def /BnY Bn BnK sub Yi i get mul def AnY fakt mul BnY fakt mul i 0 eq {moveto} if i 1 ge i 38 le and {lineto} if i 39 eq {lineto closepath stroke} if } for %i=0,39 XANW YANW 0.0001 add div %(a-an)YW XANK YANK 0.0001 add div sub YW mul fakt mul ZANW YANW 0.0001 add div %(b-an)YW ZANK YANK 0.0001 add div sub 0.4 mul neg YW mul fakt mul 90 0 360 arc stroke 0 080 add 0 080 add moveto TBS TELi xchartl get show %10 chromatic colours from continuous colours TBIS 0 1 4 {/j exch def %j=0,4 j 0 eq {/i 0 def} if %Cm-Rm j 1 eq {/i 6 def} if %Gm-Mm j 2 eq {/i 13 def} if %Ym-Bm j 3 eq {/i kx def} if %Max-Min j 4 eq {/i 40 def /k 6 def %Go Xi i XRj k get put %special Yi i YRj k get put Zi i ZRj k get put } if /SUM Xi i get Yi i get add Zi i get add 0.0001 add def XANCj j Xi i get SUM div put YANCj j Yi i get SUM div put ZANCj j Zi i get SUM div put /An XANCj j get YANCj j get 0.0001 add div %2.5(a-an)Y XANK YANK 0.0001 add div sub def /Bn ZANCj j get YANCj j get 0.0001 add div %2.5(b-bn)Y ZANK YANK 0.0001 add div sub 0.4 mul neg def /AnY An Yi i get mul fakt mul def /BnY Bn Yi i get mul fakt mul def %dAB, CAB not used /dAB An dup mul Bn dup mul add 0.0001 add sqrt def /CAB dAB Yi i get mul def /Paramshow {Yi i get cvishow} bind def j 0 eq {AnY 350 sub BnY 050 sub moveto xchart4 4 eq {(C) show imshow} if xchart4 5 eq {Paramshow} if 1 0 0 0 setcmykcolor} if %Cm j 1 eq {AnY 370 sub BnY 050 sub moveto xchart4 4 eq {(G) show imshow} if xchart4 5 eq {Paramshow} if 1 0 1 0 setcmykcolor} if %Gm j 2 eq {AnY 050 sub BnY 150 add moveto xchart4 4 eq {(Y) show imshow} if xchart4 5 eq {Paramshow} if 0 0 1 0 setcmykcolor} if %Ym j 3 eq {AnY 100 sub BnY 300 sub moveto xchart4 4 eq {(max) show} if xchart4 5 eq {Paramshow} if 0.3 0 1 0 setcmykcolor} if %Ymax j 4 eq {AnY 100 sub BnY 250 sub moveto xchart4 4 eq {(G) show ioshow} if xchart4 5 eq {Paramshow} if 1 0.5 1 0 setcmykcolor} if %Go newpath AnY BnY 90 0 360 arc fill 0 setgray newpath AnY BnY 90 0 360 arc stroke /SUM XK Xi i get sub YK Yi i get sub add ZK Zi i get sub add 0.0001 add def XANCj j XK Xi i get sub SUM div put YANCj j YK Yi i get sub SUM div put ZANCj j ZK Zi i get sub SUM div put /An XANCj j get YANCj j get 0.0001 add div %(a-an) XANK YANK 0.0001 add div sub def /Bn ZANCj j get YANCj j get 0.0001 add div %(b-bn) ZANK YANK 0.0001 add div sub 0.4 mul neg def /AnY An YK Yi i get sub mul fakt mul def %(a-an)Y /BnY Bn YK Yi i get sub mul fakt mul def %(b-bn)Y %dAB, CAB not used /dAB An dup mul Bn dup mul add 0.0001 add sqrt def /CAB dAB YK Yi i get sub mul def /Paramshow {YK Yi i get sub cvishow} bind def j 0 eq {AnY 120 add BnY 050 sub moveto xchart4 4 eq {(R) show imshow} if xchart4 5 eq {Paramshow} if 0 1 1 0 setcmykcolor} if %Rm j 1 eq {AnY 120 add BnY 050 sub moveto xchart4 4 eq {(M) show imshow} if xchart4 5 eq {Paramshow} if 0 1 0 0 setcmykcolor} if %Mm j 2 eq {AnY 200 sub BnY 250 sub moveto xchart4 4 eq {(B) show imshow} if xchart4 5 eq {Paramshow} if 1 1 0 0 setcmykcolor} if %Bm j 3 eq {AnY 100 sub BnY 150 add moveto xchart4 4 eq {(min) show} if xchart4 5 eq {Paramshow} if 0.7 1 0 0 setcmykcolor} if %Bmin j 4 eq {AnY 100 sub BnY 150 add moveto xchart4 4 eq {(M) show ioshow} if xchart4 5 eq {Paramshow} if 0 0.5 0 0 setcmykcolor} if %Mo newpath AnY BnY 90 0 360 arc fill 0 setgray newpath AnY BnY 90 0 360 arc stroke } for %j=0,4 xtrans8 neg ytrans8 neg translate %text & graphic (A,B) 3500 2100 } if %xchart4=4,5 %************************************************************** xchart4 6 eq xchart4 7 eq or {%xchart4=6,7 %only for (A1/2,B1/2) /fakt 40 def /a2 1.00 def /b2 -0.4 def proz_name_range proz_opti proz_param /xtrans8 3500 def /ytrans8 2100 def xtrans8 ytrans8 translate %text & graphic (A1/2,B1/2) 3500 2100 proz_axis_scales4_7 0 1 39 {/i exch def %i=0,39 /An XANi i get xc sub YANi i get 0.0001 add div def /Bn ZANi i get YANi i get 0.0001 add div 0.4 mul neg Bc mul def /AnK XANK xc sub YANK 0.0001 add div def /BnK ZANK YANK 0.0001 add div 0.4 mul neg Bc mul def /AnY An AnK sub Yi i get mul def /BnY Bn BnK sub Yi i get mul def AnY fakt mul BnY fakt mul i 0 eq {moveto} if i 1 ge i 38 le and {lineto} if i 39 eq {lineto closepath stroke} if } for %i=0,39 XANW xc sub YANW 0.0001 add div %(a-an)YW XANK xc sub YANK 0.0001 add div sub YW mul fakt mul ZANW YANW 0.0001 add div %(b-an)YW ZANK YANK 0.0001 add div sub 0.4 mul neg Bc mul YW mul fakt mul 90 0 360 arc stroke 0 080 add 0 080 add moveto TBS TELi xchartl get show %10 chromatic colours from continuous colours TBIS 0 1 4 {/j exch def %j=0,4 j 0 eq {/i 0 def} if %Cm-Rm j 1 eq {/i 6 def} if %Gm-Mm j 2 eq {/i 13 def} if %Ym-Bm j 3 eq {/i kx def} if %Max-Min j 4 eq {/i 40 def /k 6 def %Go Xi i XRj k get put %special Yi i YRj k get put Zi i ZRj k get put } if /SUM Xi i get Yi i get add Zi i get add 0.0001 add def XANCj j Xi i get SUM div put YANCj j Yi i get SUM div put ZANCj j Zi i get SUM div put /An XANCj j get xc sub YANCj j get 0.0001 add div %2.5(a-an)Y XANK xc sub YANK 0.0001 add div sub def /Bn ZANCj j get YANCj j get 0.0001 add div %2.5(b-bn)Y ZANK YANK 0.0001 add div sub 0.4 mul neg Bc mul def /AnY An Yi i get mul fakt mul def /BnY Bn Yi i get mul fakt mul def %dAB, CAB not used /dAB An dup mul Bn dup mul add 0.0001 add sqrt def /CAB dAB Yi i get mul def /Paramshow {Yi i get cvishow} bind def j 0 eq {AnY 350 sub BnY 050 sub moveto xchart4 6 eq {(C) show imshow} if xchart4 7 eq {Paramshow} if 1 0 0 0 setcmykcolor} if %Cm j 1 eq {AnY 370 sub BnY 050 sub moveto xchart4 6 eq {(G) show imshow} if xchart4 7 eq {Paramshow} if 1 0 1 0 setcmykcolor} if %Gm j 2 eq {AnY 050 sub BnY 150 add moveto xchart4 6 eq {(Y) show imshow} if xchart4 7 eq {Paramshow} if 0 0 1 0 setcmykcolor} if %Ym j 3 eq {AnY 500 sub xchart4 7 eq {150 add} if BnY 050 add moveto xchart4 6 eq {(max) show} if xchart4 7 eq {Paramshow} if 0.3 0 1 0 setcmykcolor} if %Ymax j 4 eq {AnY 100 sub BnY 150 add moveto xchart4 6 eq {(G) show ioshow} if xchart4 7 eq {Paramshow} if 1 0.5 1 0 setcmykcolor} if %Go newpath AnY BnY 90 0 360 arc fill 0 setgray newpath AnY BnY 90 0 360 arc stroke /SUM XK Xi i get sub YK Yi i get sub add ZK Zi i get sub add 0.0001 add def XANCj j XK Xi i get sub SUM div put YANCj j YK Yi i get sub SUM div put ZANCj j ZK Zi i get sub SUM div put /An XANCj j get xc sub YANCj j get 0.0001 add div %(a-an) XANK xc sub YANK 0.0001 add div sub def /Bn ZANCj j get YANCj j get 0.0001 add div %(b-bn) ZANK YANK 0.0001 add div sub 0.4 mul neg Bc mul def /AnY An YK Yi i get sub mul fakt mul def %(a-an)Y /BnY Bn YK Yi i get sub mul fakt mul def %(b-bn)Y %dAB, CAB not used /dAB An dup mul Bn dup mul add 0.0001 add sqrt def /CAB dAB YK Yi i get sub mul def /Paramshow {YK Yi i get sub cvishow} bind def j 0 eq {AnY 120 add BnY 050 sub moveto xchart4 6 eq {(R) show imshow} if xchart4 7 eq {Paramshow} if 0 1 1 0 setcmykcolor} if %Rm j 1 eq {AnY 120 add BnY 050 sub moveto xchart4 6 eq {(M) show imshow} if xchart4 7 eq {Paramshow} if 0 1 0 0 setcmykcolor} if %Mm j 2 eq {AnY 200 sub BnY 250 sub moveto xchart4 6 eq {(B) show imshow} if xchart4 7 eq {Paramshow} if 1 1 0 0 setcmykcolor} if %Bm j 3 eq {AnY 100 add BnY 150 sub moveto xchart4 6 eq {(min) show} if xchart4 7 eq {Paramshow} if 0.7 1 0 0 setcmykcolor} if %Bmin j 4 eq {AnY 100 sub BnY 250 sub moveto xchart4 6 eq {(M) show ioshow} if xchart4 7 eq {Paramshow} if 0 0.5 0 0 setcmykcolor} if %Mo newpath AnY BnY 90 0 360 arc fill 0 setgray newpath AnY BnY 90 0 360 arc stroke } for %j=0,4 xtrans8 neg ytrans8 neg translate %text & graphic (A1/2,B1/2) 3500 2100 } if %xchart4=6,7 showpage grestore %} for %xchartl=0,7 } for %xchart4=0,7 } for %xcolorl=0,0 %%Trailer %line 239 %%EndDocument EndEPSF grestore gsave BeginEPSF 86 SHAl add MM 064 STSl add MM translate 10 /Times-ISOL1 FS 53 MM 1 MM moveto ( ) show 1 1 scale -77 -91 translate %%BeginDocument: Bild 16 %!PS-Adobe-3.0 EPSF-3.0 egw41-2a enh31-2n %%BoundingBox: 70 83 228 206 %START PDFDE011.EPS /pdfmark12 where {pop} {userdict /pdfmark12 /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/egw4/egw4.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 pdfmark12 [ /View [ /Fit ] /DOCVIEW pdfmark12 %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 /Courier findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /Courier-ISOL1 exch definefont pop /Courier-Oblique findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /CourierI-ISOL1 exch definefont pop /Courier-Bold findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /CourierB-ISOL1 exch definefont pop /Courier-BoldOblique findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /CourierBI-ISOL1 exch definefont pop /TG {350 /Times-ISOL1 FS} bind def /TM {280 /Times-ISOL1 FS} bind def /TK {240 /Times-ISOL1 FS} bind def /TS {200 /Times-ISOL1 FS} bind def /TL {160 /Times-ISOL1 FS} bind def /TIG {350 /TimesI-ISOL1 FS} bind def /TIM {280 /TimesI-ISOL1 FS} bind def /TIK {240 /TimesI-ISOL1 FS} bind def /TIS {200 /TimesI-ISOL1 FS} bind def /TIL {160 /TimesI-ISOL1 FS} bind def /TBG {350 /TimesB-ISOL1 FS} bind def /TBM {280 /TimesB-ISOL1 FS} bind def /TBK {240 /TimesB-ISOL1 FS} bind def /TBS {200 /TimesB-ISOL1 FS} bind def /TBL {160 /TimesB-ISOL1 FS} bind def /TBIG {350 /TimesBI-ISOL1 FS} bind def /TBIM {280 /TimesBI-ISOL1 FS} bind def /TBIK {240 /TimesBI-ISOL1 FS} bind def /TBIS {200 /TimesBI-ISOL1 FS} bind def /TBIL {160 /TimesBI-ISOL1 FS} bind def /SG {350 /Symbol FS} bind def /SM {280 /Symbol FS} bind def /SK {240 /Symbol FS} bind def /SS {200 /Symbol FS} bind def /SL {160 /Symbol FS} bind def %********************************************************* /proz_param {%proz_param 4650 3800 moveto TBS (Parame\255) show 4650 3600 moveto TBS (ter:) show xchart4 2 eq xchart4 4 eq or xchart4 6 eq or {TBIS ( N) show} if xchart4 3 eq xchart4 5 eq or xchart4 7 eq or {TBIS ( Y) show xcolorl 1 eq {xcol10_BS} if} if /kx kxi xchartl get def /kxx 445 kx 5 mul add def 4150 300 moveto TBS (max: ) show kxx cvishow (_770) show 4150 080 moveto TBS (min: 380_) show kxx cvishow /index2_7 {%index2_7 xchart4 2 eq xchart4 3 eq or xchart4 7 eq or {0 -50 rmoveto TBL (2) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if } if xchart4 4 eq xchart4 5 eq or {0 -50 rmoveto TBL () show 0 50 rmoveto xcolorl 1 eq {xcol10_BS} if } if xchart4 6 eq {0 -50 rmoveto TBL (1) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if } if } bind def %index2_7 /index2_7n {%index2_7n xchart4 2 eq xchart4 3 eq or xchart4 7 eq or {0 -50 rmoveto TBL (2,n) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if } if xchart4 4 eq xchart4 5 eq or {0 -50 rmoveto TBL (n) show 0 50 rmoveto xcolorl 1 eq {xcol10_BS} if } if xchart4 6 eq {0 -50 rmoveto TBL (1,n) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if } if } bind def %index2_7n xchart4 1 le xchart4 4 ge or {%xchart4<=1, xchart4>=4 /x0p 50 def x0p 3800 moveto TBIS (XYZ) show 0 -50 rmoveto TBL (W) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if TBS (=) show XK cvsshow2 (, ) show YK cvsshow2 (, ) show ZK cvsshow2 x0p 3550 moveto TBIS (A) show index2_7 TBS ( = 2,5 \050) show TBIS (a) show index2_7 TBS ( - ) show TBIS (a) show index2_7n TBS (\051 ) show TBIS (Y) show xcolorl 1 eq {xcol10_BS} if x0p 3300 moveto TBIS (B) show index2_7 TBS ( = 2,5 ) show TBIS (B) show 0 -50 rmoveto TBL (c) show 0 50 rmoveto TBS ( \050) show TBIS (b) show index2_7 TBS ( - ) show TBIS (b) show index2_7n TBS (\051 ) show TBIS (Y) show xcolorl 1 eq {xcol10_BS} if x0p 3050 moveto TBIS (a) show index2_7 TBS ( = ) show TBIS (a) show 0 -50 rmoveto TBL (20) show 0 50 rmoveto TBS ( [) show TBIS (\050x) show xcolorl 1 eq {xcol10_BS} if TBS (-) show TBIS (x) show 0 -50 rmoveto TBL (c) show 0 50 rmoveto TBIS (\051/y) show xcolorl 1 eq {xcol10_BS} if TBS (]) show x0p 2800 moveto TBIS (b) show index2_7 TBS ( = ) show TBIS (b) show 0 -50 rmoveto TBL (20) show 0 50 rmoveto TBS ( [) show TBIS (z) show xcolorl 1 eq {xcol10_BS} if TBIS (/y) show xcolorl 1 eq {xcol10_BS} if TBS (]) show x0p 2550 moveto TBIS (a) show 0 -50 rmoveto TBL (20) show 0 50 rmoveto TBS ( = 1, ) show TBIS (b) show 0 -50 rmoveto TBL (20) show 0 50 rmoveto TBS ( = -0,4) show x0p 2300 moveto TBIS (x) show 0 -50 rmoveto TBL (c) show 0 50 rmoveto TBS ( = ) show xct show (, ) show TBIS (B) show 0 -50 rmoveto TBL (c) show 0 50 rmoveto TBS ( = ) show Bct show x0p 2080 moveto TBIS (n) show TBS ( = ) show TELi xchartl get show x0p 1860 moveto TBIS (C) show TBL 0 -50 rmoveto (AB,) show 0 50 rmoveto index2_7 TBS (=[) show TBIS (A) show index2_7 TBL -20 100 rmoveto (2) show 0 -100 rmoveto TBS (+) show TBIS (B) show index2_7 TBL -20 100 rmoveto (2) show 0 -100 rmoveto TBS (]) show TBL 0 100 rmoveto (1/2) show 0 -100 rmoveto } if %xchart4<=1, xchart4>=4 } bind def %proz_param %**************************************************************** /proz_opti {%proz_opti TBS 0 0 0 1 setcmyk_olvcolor /xchart12 xchart4 12 mul def xtexti xchart12 0 add get ytexti xchart12 0 add get moveto TBS (10 Optimalfarben (o)) showde %0egw41-7 02581 (10 optimal colours (o)) showen %1egw41-7 02581 (10 colores \363ptimos (o)) showes %2egw41-7 02581 (10 couleurs optimales (o)) showfr %3egw41-7 02581 (10 colori ottimi (o)) showit %4egw41-7 02581 (10 optimal colours (o)) showjp %5egw41-7 02581 TBIS (, Y) show TBL 0 -60 rmoveto (W) show 0 60 rmoveto xchartl 1 eq {xcol10KBS} if TBS YF 0 eq {(=100) show}{(=90) show} ifelse TBIS (, Y) show TBL 0 -60 rmoveto (N) show 0 60 rmoveto xchartl 1 eq {xcol10KBS} if TBS YF 0 eq {(=0) show}{(=3,6) show} ifelse xtexti xchart12 1 add get ytexti xchart12 1 add get moveto (8 von maximalem (m)) showde %0egw41-7 03581 (8 of maximum (m)) showen %1egw41-7 03581 (8 de m\341ximo (m)) showes %2egw41-7 03581 (8 de la maximum (m)) showfr %3egw41-7 03581 (8 di massimo (m)) showit %4egw41-7 03581 (8 of maximum (m)) showjp %5egw41-7 03581 TBIS ( C) show TBL 0 -60 rmoveto (AB) show 0 60 rmoveto TBS ( f\374r ) showde %0egw41-7 03581 ( for ) showen %1egw41-7 03581 ( bajo ) showes %2egw41-7 03581 ( pour ) showfr %3egw41-7 03581 ( per ) showit %4egw41-7 03581 ( for ) showjp %5egw41-7 03581 TELi xchartl get show xtexti xchart12 2 add get ytexti xchart12 2 add get moveto xchart4 0 eq xchart4 1 eq or {%xchart4=0,1 (in der Normfarbtafel) showde %0egw41-7 04581 (in the chromaticity diagram) showen %1egw41-7 04581 (en el diagrama de chromaticidad) showes %2egw41-7 04581 (dans le diagramme de chromaticit\351) showfr %3egw41-7 04581 (nel diagramma di cromaticit\340) showit %4egw41-7 04581 (in the chromaticity diagram) showjp %5egw41-7 04581 TBIS ( (x, y)) show } if %xchart4=0,1 xchart4 2 eq xchart4 3 eq or {%xchart4=2,3 (in linearer Farbtafel ) showde %0egw41-7 06581 (in linear chromaticity diagram ) showea %1egw41-7 06581 TBS (\050) show TBIS (a) show TBL 0 -50 rmoveto (2) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if TBIS (, b) show TBL 0 -50 rmoveto (2) show 0 50 rmoveto xcolorl 1 eq {xcol10_BS} if TBS (\051) show } if %xchart4=2,3 xchart4 4 eq xchart4 5 eq or {%xchart4=4,5 (in Buntwertdiagramm) showde %0egw41-7 08581 (in chromatic value diagram) showen %1egw41-7 08581 (en el diagrama valor crom\341tico) showes %2egw41-7 08581 (dans la valeur chromatique le diagramme) showfr %3egw41-7 08581 (nel diagramma di valore cromatico) showit %4egw41-7 08581 (in chromatic value diagram) showjp %5egw41-7 08581 TBIS ( (A, B)) show } if %xchart4=4,5 xchart4 6 eq {%xchart4=6 (in Buntwertdiagram) showde %0egw41-7 10581 (in chromatc value diagram) showen %1egw41-7 10581 (en el diagrama croma) showes %2egw41-7 10581 (dans le diagramme de chroma) showfr %3egw41-7 10581 (nel diagramma di chroma) showit %4egw41-7 10581 (in chromactic value diagram) showjp %5egw41-7 10581 TBIS ( \050A) show 0 -50 rmoveto TBL (1) show 0 50 rmoveto TBS (, ) show TBIS (B) show 0 -50 rmoveto TBL (1) show 0 50 rmoveto TBS (\051) show } if %xchart4=6 xchart4 7 eq {%xchart4=7 (in Buntwertdiagram) showde %0egw41-7 11581 (in chromatic value diagram) showen %1egw41-7 11581 (en el diagrama croma) showes %2egw41-7 11581 (dans le diagramme de chroma) showfr %3egw41-7 11581 (nel diagramma di chroma) showit %4egw41-7 11581 (in chroma diagram) showjp %5egw41-7 11581 TBIS ( \050A) show 0 -50 rmoveto TBL (2) show 0 50 rmoveto TBS (, ) show TBIS (B) show 0 -50 rmoveto TBL (2) show 0 50 rmoveto TBS (\051) show } if %xchart4=7 } bind def %proz_opti %**************************************************************************** /proz_name_range {%proz_name_range /xchart12 xchart4 12 mul def xtexti xchart12 3 add get ytexti xchart12 3 add get moveto TBS (Name & Spektralbereich) showde %0egw41-7 00581 (name and spectral range) showen %1egw41-7 00581 (Nombre y gama espectral) showes %2egw41-7 00581 (Nom et la gamma spectrale) showfr %3egw41-7 00581 (Nome e la gamma spettrale) showit %4egw41-7 00581 (name and spectral range) showjp %5egw41-7 00581 xtexti xchart12 4 add get ytexti xchart12 4 add get moveto TBIS FARBE 0 get show TBL 0 -40 rmoveto FARBE 1 get show 0 40 rmoveto TBIS FARBE 2 get show xtexti xchart12 5 add get ytexti xchart12 5 add get moveto TBIS FARBE 3 get show TBL 0 -40 rmoveto FARBE 4 get show 0 40 rmoveto TBIS FARBE 5 get show xtexti xchart12 6 add get ytexti xchart12 6 add get moveto TBIS FARBE 6 get show TBL 0 -40 rmoveto FARBE 7 get show 0 40 rmoveto TBIS FARBE 8 get show xtexti xchart12 7 add get ytexti xchart12 7 add get moveto TBIS FARBE 9 get show TBL 0 -40 rmoveto FARBE 10 get show 0 40 rmoveto TBIS FARBE 11 get show xtexti xchart12 8 add get ytexti xchart12 8 add get moveto TBIS FARBE 12 get show TBL 0 -40 rmoveto FARBE 13 get show 0 40 rmoveto TBIS FARBE 14 get show xtexti xchart12 9 add get ytexti xchart12 9 add get moveto TBIS FARBE 15 get show TBL 0 -40 rmoveto FARBE 16 get show 0 40 rmoveto TBIS FARBE 17 get show xtexti xchart12 10 add get ytexti xchart12 10 add get moveto TBIS FARBE 18 get show TBL 0 -40 rmoveto FARBE 19 get show 0 40 rmoveto TBIS FARBE 20 get show xtexti xchart12 11 add get ytexti xchart12 11 add get moveto TBIS FARBE 21 get show TBL 0 -40 rmoveto FARBE 22 get show 0 40 rmoveto TBIS FARBE 23 get show } bind def %proz_name_range %**************************************************************** /proz_axis_scales4_7 {%proz_axis_scales4_7 %axis and scales 0 0 0 1 setcmyk_olvcolor -1000 0 moveto 2800 0 rlineto stroke 0 -1880 moveto 0 3600 rlineto stroke 1800 100 sub 50 moveto 100 -50 rlineto -100 -50 rlineto closepath fill 0 50 sub 1800 100 sub moveto 50 100 rlineto 50 -100 rlineto closepath fill /xt10x 5 array def /yt10x 5 array def /xt10x [() ( -50) ( ) ( ) ( 100)] def /yt10x [(-100) ( ) ( ) ( ) (100)] def 0 0 0 1 setcmyk_olvcolor 1 1 4 {/i exch def %i=0,4 x-axis -1600 i 800 mul add -75 moveto 0 150 rlineto stroke -1800 i 800 mul add -250 moveto TBS xt10x i get show i 4 eq {-1600 i 800 mul add 0 moveto xchart4 4 eq { %xchart4=4 -100 200 rmoveto TBIK (A) show xcolorl 1 eq {xcol10_BS} if } if %xchart4=4 xchart4 5 eq { %xchart4=5 -100 200 rmoveto TBIK (A) show xcolorl 1 eq {xcol10_BS} if } if %xchart4=5 xchart4 6 eq { %xchart4=6 -200 200 rmoveto TBIK (A) show -10 -50 rmoveto TBS (1) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if } if %xchart4=6 xchart4 7 eq { %xchart4=7 -200 200 rmoveto TBIK (A) show -10 -50 rmoveto TBS (2) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if } if %xchart4=7 } if } for %i=0,4 0 1 4 {/i exch def %i=0,4 y-axis -75 -1600 i 800 mul add moveto 150 0 rlineto stroke 100 -1650 i 800 mul add 100 sub moveto TBS yt10x i get show i 4 eq {0 -1650 i 800 mul add moveto xchart4 4 eq { %xchart4=4 100 150 rmoveto TBIK (B) show TM xcolorl 1 eq {xcol10_BS} if } if %xchart4=4 xchart4 5 eq { %xchart4=5 100 150 rmoveto TBIK (B) show xcolorl 1 eq {xcol10_BS} if 0 1150 add 1600 0200 add moveto } if %xchart4=5 xchart4 6 eq { %xchart4=6 100 150 rmoveto TBIK (B) show -10 -50 rmoveto TBS (1) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if } if %xchart4=6 xchart4 7 eq { %xchart4=7 100 150 rmoveto TBIK (B) show -10 -50 rmoveto TBS (2) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if } if %xchart4=7 } if } for %i=0,4 } bind def %proz_axis_scales4_7 %*********************************************************** /proz_chromaticity_data {%BEG proz_chromaticity_data /FL 0.00001 def /DOW 82 array def /DOWZ 17 array def /F02Z 51 array def /F10Z 51 array def %TRISTIMULUS VALUES FOR PURPLE COLORS from 'dmyy'KRPROG.FOR %FOR 02- AND 10-DEGREE-OBSERVER, ILLUMINANT E 0 1 79 {/i exch def %i=0,79 = 380_775 DOW i 380 i 5 mul add put } for %i=0,79 /DOWZ %17 data [700 -495 -500 -505 -510 -515 -520 -525 -530 -535 -540 -545 -550 -555 -560 -565 400] def /F02Z %3x17 data 700 ... 400 [.01136 .01141 .01158 .01169 .01176 .01182 .01187 .01191 .01195 .01199 .01204 .01210 .01219 .01232 .01254 .01300 .01431 .00410 .00404 .00383 .00369 .00359 .00352 .00346 .00342 .00337 .00331 .00325 .00317 .00306 .00289 .00262 .00205 .00040 .00000 .00118 .00507 .00754 .00930 .01064 .01167 .01256 .01346 .01445 .01562 .01709 .01910 .02210 .02718 .03765 .06785] def /F10Z %3x17 data 700 ... 400 [.00958 .01015 .01037 .01053 .01065 .01075 .01085 .01096 .01108 .01122 .01139 .01163 .01201 .01268 .01416 .02078 .01911 .00372 .00361 .00357 .00355 .00352 .00351 .00349 .00347 .00345 .00342 .00339 .00335 .00328 .00316 .00289 .00170 .00200 .00000 .00517 .00718 .00858 .00972 .01063 .01150 .01245 .01354 .01478 .01635 .01856 .02194 .02795 .04136 .10106 .08601] def %*************************************************** /FXYZ 240 array def /XSi 82 array def /YSi 82 array def /ZSi 82 array def /XANSi 82 array def /YANSi 82 array def /ZANSi 82 array def /AANSi 82 array def %actual data for plot, purple colours /BANSi 82 array def 0 1 239 {/i exch def %i=0,239 FXYZ i xcolorl 0 eq {F2 i get put} {F10 i get put} ifelse } for %i=0,239 /YKSUM 0 def %For CIE Illuminant E 0 1 79 {/i exch def %i=0,1,79 /YKSUM YKSUM FXYZ 80 i add get add def } for %i=0,1,79 0 1 79 {/i exch def %i=0,1,79 XSi i FXYZ 00 i add get YKSUM div 100 mul put YSi i FXYZ 80 i add get YKSUM div 100 mul put ZSi i FXYZ 160 i add get YKSUM div 100 mul put /SUM XSi i get YSi i get add ZSi i get add 0.0001 add def XANSi i XSi i get SUM div put YANSi i YSi i get SUM div put ZANSi i ZSi i get SUM div put xchart4 1 le {%xchart4<=1 AANSi i XANSi i get put BANSi i YANSi i get put } if %xchart4<=1 xchart4 2 eq {%xchart4=2 AANSi i XANSi i get xc sub YANSi i get FL add div put BANSi i ZANSi i get YANSi i get FL add div -0.4 mul put } if %xchart4=2 xchart4 3 eq {%xchart4=3 AANSi i XANSi i get xc sub YANSi i get FL add div put BANSi i ZANSi i get YANSi i get FL add div -0.4 mul put } if %xchart4=3 } for %i=0,1,79 /XZi 17 array def /YZi 17 array def /ZZi 17 array def /XANZi 17 array def /YANZi 17 array def /ZANZi 17 array def /AANZi 17 array def %actual data for plot, purple colours /BANZi 17 array def 0 1 16 {/i exch def %i=0,16 %for illuminant E: S(lamdda=100) XZi i xcolorl 0 eq {F02Z} {F10Z} ifelse 00 i add get YKSUM div 100 mul put YZi i xcolorl 0 eq {F02Z} {F10Z} ifelse 17 i add get YKSUM div 100 mul put ZZi i xcolorl 0 eq {F02Z} {F10Z} ifelse 34 i add get YKSUM div 100 mul put /SUM XZi i get YZi i get add ZZi i get add 0.0001 add def XANZi i XZi i get SUM div put YANZi i YZi i get SUM div put ZANZi i ZZi i get SUM div put xchart4 1 le {%xchart4<=1 AANZi i XANZi i get put BANZi i YANZi i get put } if %xchart4<=1 xchart4 2 eq {%xchart4=2 AANZi i XANZi i get xc sub YANZi i get FL add div put BANZi i ZANZi i get YANZi i get FL add div -0.4 mul put } if %xchart4=2 xchart4 3 eq {%xchart4=3 AANZi i XANZi i get xc sub YANZi i get FL add div put BANZi i ZANZi i get YANZi i get FL add div -0.4 mul put } if %xchart4=3 } for %i=0,16 /FL 0.00001 def } bind def %END proz_chromaticity_data %************************************************ /proz_chromaticity_xy {%BEG proz_chromaticity_xy /xtrans8 600 def /ytrans8 400 def xtrans8 ytrans8 translate %for scala and graphic (x,y) 0600 0400 0 0 moveto 4000 0 rlineto stroke 0 0 moveto 0 3200 rlineto stroke %! 100 S-Einheiten = 2000 Skalen-Einheiten TBS 0 -50 moveto 0 100 rlineto stroke 800 -50 moveto 0 100 rlineto stroke 1600 -50 moveto 0 100 rlineto stroke 2400 -50 moveto 0 100 rlineto stroke 3200 -50 moveto 0 100 rlineto stroke 4000 -50 moveto 0 100 rlineto stroke -100 -300 moveto (0,0) show 700 -300 moveto (0,2) show 1500 -300 moveto (0,4) show 2300 -300 moveto (0,6) show 3100 -300 moveto (0,8) show 3900 -300 moveto (1,0) show %! 100 S-Einheiten = 2000 Skalen-Einheiten -50 0 moveto 100 0 rlineto stroke -50 800 moveto 100 0 rlineto stroke -50 1600 moveto 100 0 rlineto stroke -50 2400 moveto 100 0 rlineto stroke -50 3200 moveto 100 0 rlineto stroke -450 -80 moveto (0,0) show -450 720 moveto (0,2) show -450 1520 moveto (0,4) show -450 2320 moveto (0,6) show -450 3120 moveto (0,8) show TIS 4200 150 moveto (x) show xcolorl 1 eq {TL 0 -40 rmoveto (10) show 0 40 rmoveto TIS} if -300 2800 moveto (y) show xcolorl 1 eq {TL 0 -40 rmoveto (10) show 0 40 rmoveto TIS} if TBIS 2600 150 moveto xcolorl 0 eq {(CIE 1931) show} if xcolorl 1 eq {(CIE 1964) show} if newpath /fakt 4000 def 5 1 60 {/i exch def %i=5,60 AANSi i get fakt mul BANSi i get fakt mul i 05 eq {moveto} if i 06 ge i 59 le and {lineto} if i 60 eq {lineto closepath stroke} if } for %i=5,60 /xytshift 320 array def %min 4x65 /xytshift [ 0 000 000 (380) %0 0 000 000 (385) %1 0 000 000 (390) %2 0 000 000 (395) %3 1 -170 -170 (400) %4 0 000 000 (405) %5 0 000 000 (410) %6 0 000 000 (415) %7 0 000 000 (420) %8 0 000 000 (425) %9 0 000 000 (430) %10 0 000 000 (435) %11 0 000 000 (440) %12 0 000 000 (445) %13 1 -300 -050 (450) %14 S 0 000 000 (455) %15 0 000 000 (460) %16 0 000 000 (465) %17 0 000 000 (470) %18 1 -300 -030 (475) %19 0 000 000 (480) %20 0 000 000 (485) %21 1 -330 -050 (490) %22 1 -270 000 (495) %23 M=S 1 -300 -050 (500) %24 1 -300 -050 (505) %25 1 -330 -050 (510) %26 L=S 1 -300 050 (515) %27 1 -100 070 (520) %28 1 100 000 (525) %29 1 000 000 ( ) %30 1 050 000 (535) %31 1 000 000 ( ) %32 M 1 000 000 ( ) %33 1 050 030 (550) %34 1 000 000 ( ) %35 1 050 030 (560) %36 1 000 000 ( ) %37 1 050 030 (570) %38 L 1 000 000 ( ) %39 1 050 030 (580) %40 1 050 050 ( ) %41 1 050 030 (590) %42 1 050 050 ( ) %43 1 050 030 (600) %44 0 000 000 ( ) %45 1 050 070 (610) %46 0 000 000 ( ) %47 1 050 050 (620) %48 0 000 000 ( ) %49 0 000 000 (630) %50 0 000 000 ( ) %51 1 050 030 (640) %52 0 000 000 (645) %53 0 000 000 (650) %54 0 000 000 (655) %55 0 000 000 (660) %56 0 000 000 (665) %57 0 000 000 (670) %58 0 000 000 (675) %59 0 000 000 (680) %60 0 000 000 (685) %61 0 000 000 (690) %62 0 000 000 (695) %63 1 100 -50 (700) %64 ] def 0 1 64 {/i exch def %i=5,1,60 /i40 i 4 mul def xytshift i40 get 1 eq {%xytshift=1 0 0 0 0 setcmykcolor AANSi i get fakt mul BANSi i get fakt mul 30 0 360 arc fill %400,425,...,700 0 0 0 1 setcmykcolor AANSi i get fakt mul BANSi i get fakt mul 30 0 360 arc stroke %400,425,...,700 } if %xytshift=1 } for %i=5,1,60 TBIL 0 1 59 {/i exch def %i=0,65 /i40 i 4 mul def /i41 i40 1 add def /i42 i40 2 add def /i43 i40 3 add def xytshift i40 get 1 eq {%xytshift=1 AANSi i get fakt mul xytshift i41 get add BANSi i get fakt mul xytshift i42 get add moveto xytshift i43 get show } if %xytshift=1 } for %i=0,65 newpath /xytshiftZ 320 array def %min 4x65 /xytshiftZ [ 1 100 -50 (700) %0 see normal 1 050 -100 (495c,E) %1 1 050 -100 (500c,E) %2 0 050 -100 (505c,E) %3 1 100 -60 (510c,E) %4 0 050 -100 (515c,E) %5 0 050 -100 (520c,E) %6 1 050 -100 (525c,E) %7 0 050 -100 (530c,E) %8 0 050 -100 (535c,E) %9 0 050 -100 (540c,E) %10 0 050 -100 (545c,E) %11 1 050 -100 (550c,E) %12 0 050 -100 (555c,E) %13 0 050 -100 (560c,E) %14 S 1 050 -100 (565c,E) %15 0 -100 -150 (400) %16 see normal ] def 0 1 16 {/i exch def %i=5,5,60 /i40 i 4 mul def xytshiftZ i40 get 1 eq {%xytshiftZ=1 0 0 0 0 setcmykcolor AANZi i get fakt mul BANZi i get fakt mul 30 0 360 arc fill %400,405,...,700 0 0 0 1 setcmykcolor AANZi i get fakt mul BANZi i get fakt mul 30 0 360 arc stroke %400,405,...,700 } if %xytshiftZ=1 } for %i=0,1,16 TBIL 0 1 16 {/i exch def %i=0,16 /i40 i 4 mul def /i41 i40 1 add def /i42 i40 2 add def /i43 i40 3 add def xytshiftZ i40 get 1 eq {%xytshiftZ=1 AANZi i get fakt mul xytshiftZ i41 get add BANZi i get fakt mul xytshiftZ i42 get add moveto xytshiftZ i43 get show } if %xytshiftZ=1 } for %i=0,16 xtrans8 neg ytrans8 neg translate %scala & graphic (x,y) 0600 0400 } bind def %END proz_chromaticity_xy %************************************************ /proz_chromaticity_a2b2 {%BEG proz_chromaticity_a2b2 /FL 0.00001 def /fakt 1000 def /xtrans8 0500 def /ytrans8 3200 def xtrans8 ytrans8 translate %scala & graphic (a2,b2) 0500 3200 0 400 moveto 4000 0 rlineto stroke 0 400 moveto 0 -3600 rlineto stroke %! 100 S-Einheiten = 2000 Skalen-Einheiten TBS 0 350 moveto 0 100 rlineto stroke 800 350 moveto 0 100 rlineto stroke 1600 350 moveto 0 100 rlineto stroke 2400 350 moveto 0 100 rlineto stroke 3200 350 moveto 0 100 rlineto stroke 4000 350 moveto 0 100 rlineto stroke -150 500 moveto (-0,8) show 650 500 moveto (0,0) show 1450 500 moveto (0,8) show 2250 500 moveto (1,6) show 3050 500 moveto (2,4) show 3850 500 moveto (3,2) show %! 100 S-Einheiten = 2000 Skalen-Einheiten -50 0 moveto 100 0 rlineto stroke -50 -800 moveto 100 0 rlineto stroke -50 -1600 moveto 100 0 rlineto stroke -50 -2400 moveto 100 0 rlineto stroke -50 -3200 moveto 100 0 rlineto stroke -450 -100 moveto ( 0,0) show -450 -900 moveto (-0,8) show -450 -1700 moveto (-1,6) show %-450 -2500 moveto (-2,4) show -175 -3050 moveto 90 rotate TBIS (b) show TL 0 -40 rmoveto (2) show 0 40 rmoveto TIS 20 0 rmoveto xcolorl 1 eq {TL 0 -40 rmoveto (,10) show 0 40 rmoveto TIS} if TBS (=-0,40) show 20 0 rmoveto TBIS (z) show 20 0 rmoveto xcolorl 1 eq {TL 0 -40 rmoveto (10) show 0 40 rmoveto TIS} if TBIS (/y) show xcolorl 1 eq {TL 0 -40 rmoveto (10) show 0 40 rmoveto TIS} if -90 rotate 3450 150 moveto TBIS (a) show 20 0 rmoveto TL 0 -40 rmoveto (2) show 0 40 rmoveto TIS 20 0 rmoveto xcolorl 1 eq {TL 0 -40 rmoveto (,10) show 0 40 rmoveto TIS} if TBS (=\050) show 20 0 rmoveto TBIS (x) show 20 0 rmoveto xcolorl 1 eq {TL 0 -40 rmoveto (10) show 0 40 rmoveto TIS} if TBS (-0,110\051/) show 20 0 rmoveto TBIS (y) show 20 0 rmoveto xcolorl 1 eq {TL 0 -40 rmoveto (10) show 0 40 rmoveto TIS} if xtrans8 neg ytrans8 neg translate %scala & graphic (a2,b2) 0500 3200 newpath /fakt 1000 def /xtrans8 1300 def /ytrans8 3200 def xtrans8 ytrans8 translate %scala & graphic (a2,b2) 1300 3200 5 1 60 {/i exch def %i=5,60 AANSi i get fakt mul BANSi i get fakt mul i 05 eq {moveto} if i 06 ge i 59 le and {lineto} if i 60 eq {lineto closepath stroke} if } for %i=5,60 /xytshift 320 array def %min 4x65 /xytshift [ 0 000 000 (380) %0 0 000 000 (385) %1 0 000 000 (390) %2 0 000 000 (395) %3 1 -170 -170 (400) %4 0 000 000 (405) %5 0 000 000 (410) %6 0 000 000 (415) %7 0 000 000 (420) %8 0 000 000 (425) %9 0 000 000 (430) %10 0 000 000 (435) %11 0 000 000 (440) %12 0 000 000 (445) %13 1 -300 -050 (450) %14 S 0 000 000 (455) %15 0 000 000 (460) %16 0 000 000 (465) %17 0 000 000 (470) %18 1 -300 -030 (475) %19 0 000 000 (480) %20 0 000 000 (485) %21 1 -330 -050 (490) %22 1 -270 000 (495) %23 M=S 1 -300 -050 (500) %24 0 -300 -050 (505) %25 1 -330 -050 (510) %26 L=S 0 -300 050 (515) %27 1 -150 070 (520) %28 0 100 000 (525) %29 0 000 000 ( ) %30 0 050 000 (535) %31 1 -80 070 (540) %32 M 0 000 000 ( ) %33 0 000 030 (550) %34 0 000 000 ( ) %35 1 -80 070 (560) %36 0 000 000 ( ) %37 0 050 000 (570) %38 L 0 000 000 ( ) %39 1 050 070 (580) %40 0 050 050 ( ) %41 0 050 030 (590) %42 0 050 050 ( ) %43 1 -80 070 (600) %44 0 000 000 ( ) %45 0 050 070 (610) %46 0 000 000 ( ) %47 1 -80 050 (620) %48 0 000 000 ( ) %49 0 000 000 (630) %50 0 000 000 ( ) %51 1 -80 030 (640) %52 0 000 000 (645) %53 0 000 000 (650) %54 0 000 000 (655) %55 0 000 000 (660) %56 0 000 000 (665) %57 0 000 000 (670) %58 0 000 000 (675) %59 0 000 000 (680) %60 0 000 000 (685) %61 0 000 000 (690) %62 0 000 000 (695) %63 1 100 -50 (700) %64 ] def 0 1 64 {/i exch def %i=5,1,60 /i40 i 4 mul def xytshift i40 get 1 eq {%xytshift=1 0 0 0 0 setcmykcolor AANSi i get fakt mul BANSi i get fakt mul 30 0 360 arc fill %400,425,...,700 0 0 0 1 setcmykcolor AANSi i get fakt mul BANSi i get fakt mul 30 0 360 arc stroke %400,425,...,700 } if %xytshift=1 } for %i=5,1,60 TBIL 0 1 59 {/i exch def %i=0,65 /i40 i 4 mul def /i41 i40 1 add def /i42 i40 2 add def /i43 i40 3 add def xytshift i40 get 1 eq {%xytshift=1 AANSi i get fakt mul xytshift i41 get add BANSi i get fakt mul xytshift i42 get add moveto xytshift i43 get show } if %xytshift=1 } for %i=0,65 newpath /xytshiftZ 320 array def %min 4x65 /xytshiftZ [ 1 100 -50 (700) %0 see normal 1 050 -100 (495c,E) %1 1 050 -100 (500c,E) %2 0 050 -100 (505c,E) %3 1 100 -60 (510c,E) %4 0 050 -100 (515c,E) %5 0 050 -100 (520c,E) %6 1 050 -100 (525c,E) %7 0 050 -100 (530c,E) %8 0 050 -100 (535c,E) %9 0 050 -100 (540c,E) %10 0 050 -100 (545c,E) %11 1 050 -100 (550c,E) %12 0 050 -100 (555c,E) %13 0 050 -100 (560c,E) %14 S 1 050 -100 (565c,E) %15 0 -100 -150 (400) %16 see normal ] def 0 1 16 {/i exch def %i=5,5,60 /i40 i 4 mul def xytshiftZ i40 get 1 eq {%xytshiftZ=1 0 0 0 0 setcmykcolor AANZi i get fakt mul BANZi i get fakt mul 30 0 360 arc fill %400,405,...,700 0 0 0 1 setcmykcolor AANZi i get fakt mul BANZi i get fakt mul 30 0 360 arc stroke %400,405,...,700 } if %xytshiftZ=1 } for %i=0,1,16 TBIL 0 1 16 {/i exch def %i=0,16 /i40 i 4 mul def /i41 i40 1 add def /i42 i40 2 add def /i43 i40 3 add def xytshiftZ i40 get 1 eq {%xytshiftZ=1 AANZi i get fakt mul xytshiftZ i41 get add BANZi i get fakt mul xytshiftZ i42 get add moveto xytshiftZ i43 get show } if %xytshiftZ=1 } for %i=0,16 xtrans8 neg ytrans8 neg translate %scala & graphic (a2,b2) 1300 3200 } bind def %END proz_chromaticity_a2,b2 %***************************************************************** %%EndProlog gsave %lanindL2.EPS START 20000505 /lanind 0 def /lantex [(G) (E) (S) (F) (I) (J) (M)] def /showde {0 lanind eq {show} {pop} ifelse} bind def /showen {1 lanind eq {show} {pop} ifelse} bind def /showes {2 lanind eq {show} {pop} ifelse} bind def /showfr {3 lanind eq {show} {pop} ifelse} bind def /showit {4 lanind eq {show} {pop} ifelse} bind def /showjp {5 lanind eq {show} {pop} ifelse} bind def /showea {1 lanind le {show} {pop} ifelse} bind def /lanindf where {pop /lanind1 lanindf def /lanind2 lanindf def /lanindd laninddf def} {/lanind1 0 def /lanind2 0 def} ifelse /colormf where {pop /colorm1 colormf def /colorm2 colormf def /colormd colormdf def} {/colorm1 0 def} ifelse /deintpf where {pop /deintp1 deintpf def /deintp2 deintpf def /deintpd deintpdf def} {/deintp1 0 def} ifelse /xcolorf where {pop /xcolor1 xcolorf def /xcolor2 xcolorf def /xcolord xcolordf def} {/xcolor1 0 def} ifelse /xchartf where {pop /xchart1 xchartf def /xchart2 xchartf def /xchartd xchartdf def /xchartm xchart2f xchart1f sub 1 add def} {/xchart1 1 def /xchartm 1 def} ifelse /xchart3f where {pop /xchart3 xchart3f def} {/xchart3 0 def} ifelse /xchart4f where {pop /xchart4 xchart4f def} {/xchart4 0 def} ifelse /pchartf where {pop /pchart1 pchartf def /pchart2 pchartf def /pchartd pchartdf def} {/pchart1 3 def} ifelse /colsepf where {pop /colsep1 colsepf def /colsep2 colsepf def /colsepd colsepdf def} {/colsep1 0 def} ifelse /pmetamf where {pop /pmetam1 pmetamf def /pmetam2 pmetamf def /pmetamd pmetamdf def} {/pmetam1 0 def} ifelse %either defaul values for xchart=0 or values for xchart=1 /lanind lanind1 def % /colorm colorm1 def % /deintp deintp1 def % /xcolor xcolor1 def % /xchart xchart1 def % /pchart pchart1 def % /colsep colsep1 def % /pmetam pmetam1 def % colorm 0 eq deintp 0 eq and {/Txx (d) def} if %colorm=0, deintp=0 colorm 0 eq deintp 1 eq and {/Txx (e) def} if %colorm=0, deintp=1 colorm 1 eq deintp 0 eq and {/Txx (dd) def} if %colorm=1, deintp=0 colorm 1 eq deintp 1 eq and {/Txx (de) def} if %colorm=1, deintp=1 xchart 0 eq {/Txx (-) def} if %always independent of intended output gsave %LANINDL2 END /cvishow {cvi 6 string cvs show ( ) show} def /cvsshow1 {10 mul cvi 0.1 mul 9 string cvs show ( ) show} def /cvsshow2 {100 mul cvi 0.01 mul 9 string cvs show ( ) show} def /cvsshow3 {1000 mul cvi 0.001 mul 9 string cvs show ( ) show} def /cvsshow4 {10000 mul cvi 0.0001 mul 9 string cvs show ( ) show} def /cvsshow5 {100000 mul cvi 0.00001 mul 9 string cvs show ( ) show} def /TELi 8 array def /xchart8 1 def %0:Pxx, 1:Dxx xchart8 0 eq {%xchart8=0 Pxx /TELi [(P60) (P55) (P50) (P45) (P40) (P35) (P30) (P25)] def %7 illumin. } if %xchart8=0 xchart8 1 eq {%xchart8=1 Dxx /TELi [(D65) (D50) (P40) (A00) (E00) (C00) (P00) (Q00)] def %7 illumin. } if %xchart8=1 /SD65 82 array def %380 bis 775 mit deltalambda=05 /SD50 82 array def %380 bis 775 mit deltalambda=05 /SP40 82 array def %380 bis 775 mit deltalambda=05 /SA00 82 array def %380 bis 775 mit deltalambda=05 /SE00 82 array def %380 bis 775 mit deltalambda=05 /SC00 82 array def %380 bis 775 mit deltalambda=05 /SP00 82 array def %380 bis 775 mit deltalambda=05 /SQ00 82 array def %380 bis 775 mit deltalambda=05 /SDAK 82 array def %380 bis 775 mit deltalambda=05 /RA 82 array def %380 bis 770 nm /F2 240 array def %3 x 80 Daten fuer Bereich 380 bis 770nm /F2N 240 array def %normiert auf Y=100 fuer D65 und 10nm /F10 240 array def %3 x 80 Daten fuer Bereich 380 bis 770nm %C %C LITERATURQUELLEN LICHTARTEN %C SA,SC,SD65, CIE-DOKUMENT NR.15 FARBMESSUNG, 1971 %C TABELLE 1.1.1, SEITE 81 %C SD55,SD75, CIE-DOKUMENT NR.15 FARBMESSUNG, 1971 %C TABELLE 1.1.4, SEITE 85 %C LINEAR INTERPOLIERT VON 5 ZU 5NM %C SG,SP,SXE, DIN 5033, BLATT 7 ,SEITE 8-9 %C AUSGABE 1966 /SD65 %80 data 5 nm [50.0 52.3 54.6 68.7 82.8 87.1 91.5 92.5 93.4 90.1 86.7 95.8 104.9 110.9 117.0 117.4 117.8 116.3 114.9 115.4 115.9 112.4 108.8 109.1 109.4 108.6 107.8 106.3 104.8 106.2 107.7 106.0 104.4 104.2 104.0 102.0 100.0 98.2 96.3 96.1 95.8 92.2 88.7 89.3 90.0 89.8 89.6 88.6 87.7 85.5 83.3 83.5 83.7 81.9 80.0 80.1 80.2 81.2 82.3 80.3 78.3 74.0 69.7 70.7 71.6 73.0 74.3 68.0 61.6 65.7 69.9 72.5 75.1 69.3 63.6 55.0 46.4 56.6 66.8 65.1] def /SD50 %80 data 5 nm CIE 15.3, Seite 30; aus JE540-1N.PS [24.5 27.2 29.9 39.6 49.3 52.9 56.5 58.3 60.0 58.9 57.8 66.3 74.8 81.0 87.2 88.9 90.6 91.0 91.4 93.2 95.1 93.5 92.0 93.8 95.7 96.2 96.6 96.8 97.1 99.6 102.1 101.4 100.8 101.5 102.3 101.2 100.0 98.9 97.7 98.3 98.9 96.2 93.5 95.6 97.7 98.5 99.3 99.2 99.0 97.4 95.7 97.3 98.9 97.3 95.7 96.9 98.2 100.6 103.0 101.1 99.1 93.3 87.4 89.5 91.6 92.2 92.9 84.9 76.9 81.7 86.5 89.5 92.6 85.4 78.2 68.0 57.7 70.3 82.9 0.0] def %0.0 not used /SA00 %80 data 5 nm CIE 15.3 Seite 30; aus JE540-1N.PS [9.80 10.90 12.09 13.35 14.71 16.15 17.68 19.29 20.99 22.79 24.67 26.64 28.70 30.85 33.09 35.41 37.81 40.30 42.87 45.52 48.24 51.04 53.91 56.85 59.86 62.93 66.06 69.25 72.50 75.79 79.13 82.52 85.95 89.41 92.91 96.44 100.00 103.58 107.18 110.80 114.44 118.08 121.73 125.39 129.04 132.70 136.35 139.99 143.62 147.24 150.84 154.42 157.98 161.52 165.03 168.51 171.96 175.38 178.77 182.12 185.43 188.70 191.93 195.12 198.26 201.36 204.41 207.41 210.36 213.27 216.12 218.92 221.67 224.36 227.00 229.59 232.12 234.59 237.01 239.37 0.0] def %0.0 not used % AUS BILDPLA.FOR aus vrbam/wrpos:KRPROG.FOR, 5987-6023 5.10.92 %C PROGRAMM ZUR BERECHNUNG DER RELATIVEN SPEKTRALEN STRAHLUNGSVERTEI- %C LUNG EINES HOHLRAUMSTRAHLERS ALS FUNKTION DER WELLENLAENGE LAMDA %C BEI GEGEBENER TEMPERATUR T %C VERWENDETE VARIABLE %C T TEMPERATUR %C C2 PLANCKSCHE KONSTANTE (=1.4388 CM K (1967)) %C LAMDA(I) WELLENLAENGE %C S(I) STRAHLUNGSVERTEILUNG DES HOHLRAUMSTRAHLERS %C %C LITERATUR OFFIZIELLE EMPFEHLUNGEN DER CIE,DEUTSCHE VERSION, %C CA. 1969, SEITE 21 UND TABELLE 1.1.1 %C %SDP4 82 array def %380 bis 775 mit deltalambda=05 % DO 50 I=1,54 % 50 S(I)=100. % 1*(560./FLOAT(LAMDA(I)))**5 % 2*(EXP(C2/(560.*10.**(-7)*T))-1.) % 3/(EXP(C2/(FLOAT(LAMDA(I))*10.**(-7)*T))-1.) %new CIE 15.3:2004, Eq. (3.1) page 2 %S(I) = [100{560/lambda}**5] [exp{(c2*10**7)/(TNC*560 )} - 1] % /[exp{(c2*10**7)/(TNC*lambda)} - 1] % exp = e {...} = 2.71 {...} %/TNC 2848 def %NLA /EE 2.718281 def %e=mac pocket calculator /C2 1.4350000 10 7 exp mul def /lamd 82 array def xchart8 1 eq {%xchart8=1 Dxx /TNC 4000 def %******************************************** 0 1 79 {%i=0,79 /i exch def /lambda 380 i 5 mul add def lamd i lambda put /E1 560 lambda div 5 exp def /E4 C2 TNC 560 mul div def /E5 C2 TNC lambda mul div def /E6 EE E4 exp def /E7 EE E5 exp def SP40 i E1 100 mul E6 1 sub E7 1 sub div mul put } for %i=0,79 } if %xchart8=1 Dxx %****************************************** xchart8 0 eq {%xchart8=0 Pxx %defined only for xchart8=0 Pxx /TNCj 8 array def /TNCj [6000 5500 5000 4500 4000 3500 3000 2500] def /SP60 82 array def %380 bis 775 mit deltalambda=05 /SP55 82 array def %380 bis 775 mit deltalambda=05 /SP50 82 array def %380 bis 775 mit deltalambda=05 /SP45 82 array def %380 bis 775 mit deltalambda=05 /SP40 82 array def %380 bis 775 mit deltalambda=05 /SP35 82 array def %380 bis 775 mit deltalambda=05 /SP30 82 array def %380 bis 775 mit deltalambda=05 /SP25 82 array def %380 bis 775 mit deltalambda=05 0 1 7 {/j exch def %j=0,7 0 1 79 {%i=0,79 /i exch def /lambda 380 i 5 mul add def lamd i lambda put /E1 560 lambda div 5 exp def /E4 C2 TNCj j get 560 mul div def /E5 C2 TNCj j get lambda mul div def /E6 EE E4 exp def /E7 EE E5 exp def j 0 eq {SP60 i} if j 1 eq {SP55 i} if j 2 eq {SP50 i} if j 3 eq {SP45 i} if j 4 eq {SP40 i} if j 5 eq {SP35 i} if j 6 eq {SP30 i} if j 7 eq {SP25 i} if E1 100 mul E6 1 sub E7 1 sub div mul put } for %i=0,79 } for %j=0,7 } if %xchart8=0 %************************************************* /SE00 %80 data 5 nm [100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0] def %0.0 not used /SC00 %80 data 5 nm [ 33.00 39.92 47.40 55.17 63.30 71.81 80.60 89.53 98.10 105.80 112.40 117.75 121.50 123.45 124.00 123.60 123.10 123.30 123.80 124.09 123.90 122.92 120.70 116.90 112.10 106.98 102.30 98.81 96.90 96.78 98.00 99.94 102.10 103.95 105.20 105.67 105.30 104.11 102.30 100.15 97.80 95.43 93.20 91.22 89.70 88.83 88.40 88.19 88.10 88.06 88.00 87.86 87.80 87.99 88.20 88.20 87.90 87.22 86.30 85.30 84.00 82.21 80.20 78.24 76.30 74.36 72.40 70.40 68.30 66.30 64.40 62.80 61.50 60.20 59.20 58.50 58.10 58.00 58.20 58.50 ] def %0.0 not used 0 1 79 {/i exch def %i=0,79 /lamda 380 i 5 mul add def SP00 i SE00 i get lamda 560 div mul put SQ00 i SE00 i get 1120 lamda sub 560 div mul put } for %i=0,79 %C LITERATURQUELLEN SPEKTRALWERTE %C F2 CIE-DOKUMENT NR.15 FARBMESSUNG, 1971 %C TABELLE 2.1, SEITE 93-102 /F2 %3x80 data [.001368 .002236 .004243 .007650 .01431 .02319 .04351 .07763 .1344 .2148 .2839 .3285 .3483 .3481 .3362 .3187 .2908 .2511 .1954 .1421 .09564 .05795 .03201 .01470 .0049 .0024 .0093 .0291 .06327 .1096 .1655 .2257 .2904 .3597 .4334 .5121 .5945 .6784 .7621 .8425 .9163 .9786 1.0263 1.0567 1.0622 1.0456 1.0026 .9384 .8544 .7514 .6424 .5419 .4479 .3608 .2835 .2187 .1649 .1212 .0874 .0636 .04677 .03290 .02270 .01584 .01136 .00811 .00579 .004109 .002899 .002049 .001440 .0009999 .0006901 .000476 .0003323 .0002348 .0001662 .0001174 .00008308 .00005871 .000039 .000064 .00012 .000217 .000396 .00064 .00121 .00218 .004 .0073 .0116 .01684 .023 .0298 .0380 .048 .06 .0739 .09098 .1126 .139 .1693 .208 .2586 .323 .4073 .503 .6082 .71 .7932 .862 .9149 .954 .9803 .995 1.0 .995 .9786 .952 .9154 .870 .8163 .757 .6949 .631 .5668 .503 .4412 .381 .321 .265 .217 .175 .1382 .107 .0816 .061 .04458 .032 .0232 .017 .01192 .00821 .005723 .004102 .002929 .002091 .001484 .001047 .00074 .00052 .0003611 .0002492 .0001719 .00012 .0000848 .00006 .0000424 .00003 .0000212 .00645 .01055 .02005 .03621 .06785 .1102 .2074 .3713 .6456 1.0391 1.3856 1.623 1.7471 1.7826 1.7721 1.7441 1.6692 1.5281 1.2876 1.0419 .8130 .6162 .4652 .3533 .2720 .2123 .1582 .1117 .07825 .05725 .04216 .02984 .0203 .0134 .00875 .00575 .0039 .00275 .0021 .0018 .00165 .0014 .0011 .0010 .0008 .0006 .00034 .00024 .00019 .0001 .00005 .00003 .00002 .00001 % 26*0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 %10 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 %20 0.0 0.0 0.0 0.0 0.0 0.0 %26 ] def /F10 %3x80 data [.00016 .0006624 .002362 .007242 .01911 .0434 .08474 .1406 .2045 .2647 .3147 .3577 .3837 .3867 .3707 .343 .3023 .2541 .1956 .1323 .08051 .04107 .01617 .005132 .003816 .01544 .03746 .07136 .1177 .173 .2365 .3042 .3768 .4516 .5298 .6161 .7052 .7938 .8787 .9512 1.0142 1.0743 1.1185 1.1343 1.124 1.0891 1.0305 .9507 .8563 .7549 .6475 .5351 .4316 .3437 .2683 .2043 .1526 .1122 .08126 .05793 .04085 .02862 .019941 .01384 .0100 .006605 .004552 .003145 .002175 .001506 .001045 .0007274 .0005083 .0003564 .000251 .0001777 .0001264 .00009015 .00006453 .00004634 .00001736 .00007156 .0002534 .0007685 .002004 .004509 .008756 .01446 .02139 .0295 .03868 .0496 .06208 .0747 .08946 .1063 .1282 .1528 .1852 .2199 .2536 .2977 .3391 .3954 .4608 .5314 .6067 .6857 .7618 .8233 .8752 .9238 .962 .9822 .9918 .9991 .9973 .9824 .9555 .9152 .8689 .8256 .7774 .7203 .6583 .5939 .528 .4618 .3981 .3395 .2835 .2282 .1798 .1402 .1076 .08119 .06028 .0441 .0318 .0226 .0159 .01113 .007749 .0053751 .0037177 .002565 .001768 .001222 .0008462 .0005864 .0004074 .000284 .0001987 .0001395 .00009843 .00006982 .00004974 .00003554 .00002549 .00001834 .0007048 .002928 .01048 .03234 .08601 .1971 .3894 .6568 .9725 1.2825 1.5535 1.7985 1.9673 2.0273 1.9948 1.9007 1.7454 1.5549 1.3176 1.0302 .7721 .5701 .4152 .3024 .2185 .1592 .112 .08225 .06071 .04305 .03045 .02058 .01368 .007918 .003988 .001091 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 %10 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 %20 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 %30 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 %40 0.0 0.0 0.0 0.0 %44 ] def %calculation of transformation data /FARBE 30 array def /FARBE [(R) (m) ( 561_770) %00 (Y) (m) ( 520_770) %01 (G) (m) ( 475_573) %02 (C) (m) ( 380_561) %03 (B) (m) ( 380_520) %04 (M) (m) ( 573_475) %05 (G) (o) ( 520_570) %06 (M) (o) ( 570_520) %07 (W) (0) ( 380_770) %08 (N) (0) ( 380_770) %09 ] def /xshift 10 array def %max 6 device + 4 elementary /yshift 10 array def /colori 10 array def /RX0 720 array def %9x80 /RX0 [ %(%Rm 00 560_770) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0036 0036 0036 0036 0036 0036 0468 0900 0900 0900 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %(%Ym 01 520_770) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0036 0036 0036 0036 0036 0036 0036 0036 0468 0900 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %(%Gm 02 475_575) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0036 0036 0036 0036 0036 0036 0036 0036 0036 0468 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0900 0900 0900 0900 0900 0900 0900 0900 0900 0468 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %(%Cm 03 380_560) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0900 0900 0900 0900 0900 0900 0468 0036 0036 0036 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %(%Bm 04 380_520) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0900 0900 0900 0900 0900 0900 0900 0900 0468 0036 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %(%Mm 05 575_475) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0900 0900 0900 0900 0900 0900 0900 0900 0900 0468 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0036 0036 0036 0036 0036 0036 0036 0036 0036 0468 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %(%Go 06 520_570) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0036 0036 0036 0036 0036 0036 0036 0036 0468 0900 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0900 0900 0900 0900 0900 0900 0900 0900 0468 0036 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %(%Mo 07 570_520) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0900 0900 0900 0900 0900 0900 0900 0900 0468 0036 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0036 0036 0036 0036 0036 0036 0036 0036 0468 0900 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %(%W0(r=0,900) 08 380_770) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %(%N0(r=0,036) 09 380_770) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 ] def /xcol10_BS {TBL 0 -50 rmoveto (10) show 0 50 rmoveto TBS} bind def /xcol10KBS {TBL 0 -50 rmoveto (,10) show 0 50 rmoveto TBS} bind def /xcolorl xcolor def 0 1 0 {/xcolorl exch def %xcolorl=0,0 xcolorl 1 eq {0 1 239 {/i exch def %i=0,239 F2 i F10 i get put } for %i=0,239 } if /YKSUM 0 def %For CIE Illuminant E 0 1 79 {/i exch def %i=0,1,79 /YKSUM YKSUM F2 80 i add get add def } for %i=0,1,79 /F2N 240 array def 0 1 79 {/i exch def %i=0,1,79 F2N 00 i add F2 00 i add get YKSUM div 100 mul put F2N 80 i add F2 80 i add get YKSUM div 100 mul put F2N 160 i add F2 160 i add get YKSUM div 100 mul put } for %i=0,1,79 /FXN 82 array def %FXN 0 = F2N imax /FYN 82 array def /FZN 82 array def %defines FXN, FYN, FZN 0 to 79 0 1 79 {/i exch def %i=0,79 FXN i F2N 000 i add get put FYN i F2N 080 i add get put FZN i F2N 160 i add get put } for %i=0,79 %special wavelength range with complementary colours for E? /FXD 63 array def /FYD 63 array def /FZD 63 array def /DOW 63 array def 00 1 60 {/i exch def %i=0,60 %range 400..700nm FXD i FXN 005 i add get put FYD i FYN 005 i add get put FZD i FZN 005 i add get put DOW i 400 i 5 mul add put %range 400 to 700 } for %i=0,60 %for interpolation FXD 61 FXD 60 get put FYD 61 FYD 60 get put FZD 61 FZD 60 get put FXD 62 FXD 60 get put FYD 62 FYD 60 get put FZD 62 FZD 60 get put /FAD 63 array def /FBD 63 array def /FCD 63 array def 20 setlinewidth /xdel 1005 def /ydel 395 def /x0 050 def /x1 -150 def /Xi 82 array def %80 spectral colours 380 to 775nm /Yi 82 array def /Zi 82 array def /XANi 82 array def /YANi 82 array def /ZANi 82 array def /AANi 82 array def %actual data for plot, spectral colours /BANi 82 array def /FXNZ 17 array def /FYNZ 17 array def /FZNZ 17 array def /XZi 17 array def /YZi 17 array def /ZZi 17 array def /XANZi 17 array def /YANZi 17 array def /ZANZi 17 array def /AANZi 17 array def %actual data for plot, purple colours /BANZi 17 array def /XRj 10 array def %10 spectral or max 10 device colours /YRj 10 array def /ZRj 10 array def /XANRj 10 array def /YANRj 10 array def /ZANRj 10 array def /XSj 10 array def %10 spectral or max 10 device atagonistic colours /YSj 10 array def /ZSj 10 array def /XANSj 10 array def /YANSj 10 array def /ZANSj 10 array def /XCj 10 array def %10 spectral from continuous colours /YCj 10 array def /ZCj 10 array def /XANCj 10 array def /YANCj 10 array def /ZANCj 10 array def /XAj 10 array def %10 spectral from continuous colours /YAj 10 array def /ZAj 10 array def /XANAj 10 array def /YANAj 10 array def /ZANAj 10 array def /RAk 82 array def 1 1 1 {/xchart4 exch def %xchart4=0,7 /xchartl xchart def %0 1 7 {/xchartl exch def %xchartl=0,7 %/YF 0 def %for normalization 1 /YF 1 def %for normalization 0,900 YF 0 eq {/YFR 1.00 def}{/YFR 0.90 def} ifelse gsave 5 /Times-ISOL1 FS /cvishow {cvi 6 string cvs show} def %75 85 moveto %lanind cvishow (-) show %colorm cvishow %deintp cvishow %xcolorl cvishow %xchart cvishow %pchart cvishow %colsep cvishow (-L) show pmetam cvishow 5 /Times-ISOL1 FS 72 86 moveto (egw41-2a enh31-2n) show 72 90 translate 0.010 MM dup scale 25 setlinewidth 0 0 0 0 setcmyk_olvcolor 0 0 moveto 6000 0 rlineto 0 4000 rlineto 6000 neg 0 rlineto closepath fill 0 0 moveto 6000 0 rlineto 0 4000 rlineto -6000 0 rlineto closepath clip 0 0 0 1 setcmyk_olvcolor 0 0 moveto 6000 0 rlineto 0 4000 rlineto 6000 neg 0 rlineto closepath stroke %calculation of XW,YW,ZW for 8 illuminants Dxx or Pxx 0 1 79 {/i exch def %i=0,79 SDAK i xchart8 0 eq {%xchart8=0 Pxx xchartl 0 eq {SP60 i get put} if xchartl 1 eq {SP55 i get put} if xchartl 2 eq {SP50 i get put} if xchartl 3 eq {SP45 i get put} if xchartl 4 eq {SP40 i get put} if xchartl 5 eq {SP35 i get put} if xchartl 6 eq {SP30 i get put} if xchartl 7 eq {SP25 i get put} if }%xchart8=0 Pxx {%xchart8=1 Dxx xchartl 0 eq {SD65 i get put} if xchartl 1 eq {SD50 i get put} if xchartl 2 eq {SP40 i get put} if xchartl 3 eq {SA00 i get put} if xchartl 4 eq {SE00 i get put} if xchartl 5 eq {SC00 i get put} if xchartl 6 eq {SP00 i get put} if xchartl 7 eq {SQ00 i get put} if } ifelse %xchart8=1 Dxx } for %i=0,79 /YKSUM 0 def 0 1 79 {/i exch def %i=0,1,79 /YKSUM YKSUM SDAK i get F2 80 i add get mul add def } for %i=0,1,79 0 1 79 {/i exch def %i=0,1,79 F2N 00 i add SDAK i get F2 00 i add get mul YKSUM div 100 mul put F2N 80 i add SDAK i get F2 80 i add get mul YKSUM div 100 mul put F2N 160 i add SDAK i get F2 160 i add get mul YKSUM div 100 mul put } for %i=0,1,79 %XW,YW,ZW for white /XW 0 def /YW 0 def /ZW 0 def 0 1 079 {/i exch def %i=0,79 /XW XW F2N 00 i add get add def /YW YW F2N 80 i add get add def /ZW ZW F2N 160 i add get add def } for %i=0,79 /SUMW XW YW add ZW add def %for D65, D50, P40, A00, E00 /XANW XW SUMW div def /YANW YW SUMW div def /ZANW ZW SUMW div def /AANW XW YW 0.0001 add div def /BANW ZW YW 0.0001 add div 0.4 mul neg def %************************************************ %XYZRj for 10 reflections 0 1 09 {/j exch def %j=0,9 %10 Reflections /jx j 80 mul def 0 1 79 {/i exch def %i=0,79 RAk i RX0 jx i add get 1000 div put } for %i=0,79 /XR 0 def /YR 0 def /ZR 0 def 0 1 079 {/i exch def %i=0,79 /XR XR F2N 00 i add get RAk i get mul add def /YR YR F2N 80 i add get RAk i get mul add def /ZR ZR F2N 160 i add get RAk i get mul add def } for %i=0,79 XRj j XR put YRj j YR put ZRj j ZR put /SUMR XR YR add ZR add def XANRj j XR SUMR 0.0001 add div put YANRj j YR SUMR 0.0001 add div put ZANRj j ZR SUMR 0.0001 add div put } for %j=0,9 %******************************************* 0 1 62 {/i exch def %i=0,62 FAD i FXD i get put FBD i FYD i get put FCD i FZD i get put } for %i=0,62 % FXU(1)=FF(2)*U(3)-FF(3)*U(2) % FXU(2)=FF(3)*U(1)-FF(1)*U(3) % FXU(3)=FF(1)*U(2)-FF(2)*U(1) % SUBROUTINE DOWEL (F,FXU,IMAX,IO) % DIMENSION F(99,3),FXU(3) % I=1 % T2=F(1,1)*FXU(1)+F(1,2)*FXU(2)+F(1,3)*FXU(3) % IF(T2) 1,1,4 % 1 T1=T2 % I=I+1 % T2=F(I,1)*FXU(1)+F(I,2)*FXU(2)+F(I,3)*FXU(3) % IF(T2) 1,1,2 % 2 IF(T1) 3,3,1 % 3 IO=I-1 % RETURN % 4 T1=F(IMAX,1)*FXU(1)+F(IMAX,2)*FXU(2)+F(IMAX,3)*FXU(3) % IF(T1) 5,5,1 % 5 IO=IMAX % RETURN % END %********************************************************* /proc_ABC_KNP_FWERTiX {%BEG proc_ABC_KNP_FWERT %input FAD,FBD,FCD, KNP %output FWERTiX/Y/Z (i=1,4) kNP 1 ge {/FWERT1X FAD kNP 1 sub get def /FWERT1Y FBD kNP 1 sub get def /FWERT1Z FCD kNP 1 sub get def} {/FWERT1X FAD 0 get def %again 400nm for i=0 /FWERT1Y FBD 0 get def /FWERT1Z FCD 0 get def} ifelse /FWERT2X FAD kNP get def /FWERT2Y FBD kNP get def /FWERT2Z FCD kNP get def /FWERT3X FAD kNP 1 add get def /FWERT3Y FBD kNP 1 add get def /FWERT3Z FCD kNP 1 add get def /FWERT4X FAD kNP 2 add get def /FWERT4Y FBD kNP 2 add get def /FWERT4Z FCD kNP 2 add get def } bind def %END proc_ABC_KNP_FWERTiX %********************************************************* /proc_XIE_TN1 {%BEG proc_XIE_TN1 %input XIE, FWERTiX/Y/Z (i=1,4) %output TN1 /A1N XIE 1 XIE sub mul XIE 2 sub mul 6 div def /A2N XIE 1 add XIE 1 sub mul XIE 2 sub mul 0.5 mul def /A3N XIE 1 add XIE mul 2 XIE sub mul 0.5 mul def /A4N XIE 1 add XIE mul XIE 1 sub mul 6 div def /FNX A1N FWERT1X mul A2N FWERT2X mul add A3N FWERT3X mul add A4N FWERT4X mul add def /FNY A1N FWERT1Y mul A2N FWERT2Y mul add A3N FWERT3Y mul add A4N FWERT4Y mul add def /FNZ A1N FWERT1Z mul A2N FWERT2Z mul add A3N FWERT3Z mul add A4N FWERT4Z mul add def /TNX FNX FXU1 mul FNY FXU2 mul add FNZ FXU3 mul add def } bind def %END proc_XIE_TN1 %********************************************************* /WEL1 60 array def %irregular definition /WEL2 60 array def %irregular definition %0 1 2 3 4 5 6 7 8 9 /WEL1 [405 435 450 460 465 470 475 480 485 490 495 500 510 520 530 540 545 550 555 560 ] def 0 1 19 {/k exch def %k=0,19 %wavelength 405..700nm /j WEL1 k get 400 sub 5 idiv def /LP k def /LPP 20.5 k add def /FF1 FXD j get def %start at 405..700nm /FF2 FYD j get def /FF3 FZD j get def /U1 XW def /U2 YW def /U3 ZW def /FXU1 FF2 U3 mul FF3 U2 mul sub def /FXU2 FF3 U1 mul FF1 U3 mul sub def /FXU3 FF1 U2 mul FF2 U1 mul sub def /INP -1 def /IPN -1 def %assumption jump from TN to TP from negativ to positiv 0 1 60 {/i exch def %i=1,60 /TN FAD i get FXU1 mul FBD i get FXU2 mul add FCD i get FXU3 mul add def /TP FAD i 1 add get FXU1 mul FBD i 1 add get FXU2 mul add FCD i 1 add get FXU3 mul add def TN 0 le TP 0 gt and {/INP i def exit} if } for %i=1,60 0 1 60 {/i exch def %i=1,60 /TN FAD i get FXU1 mul FBD i get FXU2 mul add FCD i get FXU3 mul add neg def /TP FAD i 1 add get FXU1 mul FBD i 1 add get FXU2 mul add FCD i 1 add get FXU3 mul add neg def TN 0 le TP 0 gt and {/IPN i def exit} if } for %i=1,60 %********************************************************* /kNP INP def kNP 0 ge {%kNP>=0 proc_ABC_KNP_FWERTiX %input FAD,KNP, output FWERTiXYZ (i=1,4) /XIE1 0 def %start values TN=0 for XIE1, TP>0 for XIE2 /XIE2 1 def 0 1 9 {/mk exch def %mk=0,9 /XIE XIE1 XIE2 add 0.5 mul def proc_XIE_TN1 %input XIE, ouput TN1 TNX 0 le {/XIE1 XIE def /TN1 TNX def} {/XIE2 XIE def /TP1 TNX def} ifelse } for %mk=0,9 /XIE XIE1 XIE2 add 0.5 mul def /DOWXIE1 DOW INP get DOW INP 1 add get DOW INP get sub XIE mul add def /XIENP XIE def } if %kNP>=0 %********************************************************* /kNP IPN def kNP 0 ge {%kNP>=0 proc_ABC_KNP_FWERTiX %input FAD,KNP, output FWERTiXYZ (i=1,4) /XIE1 0 def %start values TN=0 for XIE1, TP>0 for XIE2 /XIE2 1 def /FXU1 FXU1 neg def /FXU2 FXU2 neg def /FXU3 FXU3 neg def 0 1 9 {/mk exch def %mk=0,9 /XIE XIE1 XIE2 add 0.5 mul def proc_XIE_TN1 %input XIE, ouput TN1 TNX 0 le {/XIE1 XIE def /TN1 TNX def} {/XIE2 XIE def /TP1 TNX def} ifelse } for %mk=0,9 /XIE XIE1 XIE2 add 0.5 mul def /DOWXIE2 DOW IPN get DOW IPN 1 add get DOW IPN get sub XIE mul add def /XIEPN XIE def } if %kNP>=0 %********************************************************* 0 1 79 {/i exch def %i=0,79 RA i 0.036 put } for %i=0,79 INP -1 eq {/i1 0 def} %380nm {/i1 INP 5 add def} ifelse %405..700nm IPN -1 eq {/i2 79 def} %770nm {/i2 IPN 5 add def} ifelse %405..700nm i2 i1 ge {%i1i2 i1 1 79 {/i exch def %i=i1,79 RA i 0.900 put } for %i=i1,79 0 1 i2 {/i exch def %i=0,i2 RA i 0.900 put } for %i=0,i2 } ifelse %i1>i2 %correction (0.900+0.036)/2=0.648 i2 i1 ge {%i1i2 RA i1 0.468 put RA i2 0.468 XIEPN 0.5 sub add put } ifelse %i1>i2 %*************************************************** /X 0 def /Y 0 def /Z 0 def 0 1 079 {/i exch def %i=0,79 /X X F2N 00 i add get RA i get mul add def /Y Y F2N 80 i add get RA i get mul add def /Z Z F2N 160 i add get RA i get mul add def } for %i=0,79 /SUM X Y add Z add def /XAN X SUM 0.0001 add div def /YAN Y SUM 0.0001 add div def /ZAN Z SUM 0.0001 add div def %************************************************* 0 0 0 1 setcmyk_olvcolor 0 1 1 {/Icom exch def %Icom=0,1 Icom 0 eq {%Icom=0,1 Xi k X put Yi k Y put Zi k Z put XANi k XAN put YANi k YAN put ZANi k ZAN put }%Icom=0 {%Icom=1 /kP 20 k add def Xi kP XW X sub put Yi kP YW Y sub put Zi kP ZW Z sub put /SUMi Xi kP get Yi kP get add Zi kP get add def XANi kP Xi kP get SUMi 0.0001 add div put YANi kP Yi kP get SUMi 0.0001 add div put ZANi kP Zi kP get SUMi 0.0001 add div put } ifelse %Icom=1 } for %Icom=0,1 YF 1 eq {%YF=1 Xi k Xi k get 0.9000 mul put Yi k Yi k get 0.9000 mul put Zi k Zi k get 0.9000 mul put Xi kP Xi kP get 0.9000 mul put Yi kP Yi kP get 0.9000 mul put Zi kP Zi kP get 0.9000 mul put } if %YF=1 } for %k=0,19 %********************************************************************** %XW,YW,ZW and XK,YK,ZK for white /XW 0 def /YW 0 def /ZW 0 def 0 1 079 {/i exch def %i=0,79 /XW XW F2N 00 i add get add def /YW YW F2N 80 i add get add def /ZW ZW F2N 160 i add get add def } for %i=0,79 YF 0 eq {%YF=0 /XK XW def /YK YW def /ZK ZW def }%YF=0 {%YF=1 /XK XW YFR mul def /YK YW YFR mul def /ZK ZW YFR mul def } ifelse %YF=1 /SUMK XK YK add ZK add def %for D65, D50, P40, A00, E00 /XANK XK SUMK div def /YANK YK SUMK div def /ZANK ZK SUMK div def /LP LP 1 add def /xtexti 96 array def /ytexti 96 array def /xtexti [ %T00 T10 T20 T30 T40 T41 T50 T51 T60 T61 T70 T71 %0 1 2 3 4 5 6 7 8 9 10 11 1700 2000 2000 3000 3200 4300 3200 4300 3200 4300 3200 4300 %0 (x,y) 1700 2000 2000 3000 3200 4300 3200 4300 3200 4300 3200 4300 %1 (x,y) 0050 0050 0050 0050 0050 1300 0050 1300 0050 1300 0050 1300 %2 (a2,b2) 0050 0050 0050 0050 0050 1300 0050 1300 0050 1300 0050 1300 %3 (a2,b2) 0050 0050 0050 0050 0050 1300 0050 1300 0050 1300 0050 1300 %4 (A,B) 0050 0050 0050 0050 0050 1300 0050 1300 0050 1300 0050 1300 %5 (A,B) 0050 0050 0050 0050 0050 1300 0050 1300 0050 1300 0050 1300 %6 (A1,B1) 0050 0050 0050 0050 0050 1300 0050 1300 0050 1300 0050 1300 %7 (a2,b2) ] def /ytexti [ 3800 3580 3360 3140 2920 2920 2700 2700 2480 2480 2260 2260 %0 (x,y) 3800 3580 3360 3140 2920 2920 2700 2700 2480 2480 2260 2260 %1 (x,y) 0500 0290 0080 1600 1380 1380 1160 1160 0940 0940 0720 0720 %3 (a2,b2) 0500 0290 0080 1600 1380 1380 1160 1160 0940 0940 0720 0720 %4 (a2,b2) 0500 0290 0080 1600 1380 1380 1160 1160 0940 0940 0720 0720 %4 (A,B) 0500 0290 0080 1600 1380 1380 1160 1160 0940 0940 0720 0720 %5 (A,B) 0500 0290 0080 1600 1380 1380 1160 1160 0940 0940 0720 0720 %6 (A1,B1) 0500 0290 0080 1600 1380 1380 1160 1160 0940 0940 0720 0720 %7 (a2,b2) ] def %*********************************************************** /icolor 9 array def %Rm %Ym %Gm %Cm %Bm %Mm %Go %Mo %W /icolor [20 10 06 00 30 26 06 26 40] def /imshow {-20 -50 rmoveto TBL (m) show 0 50 rmoveto TBIS} def /ioshow {0 -50 rmoveto TBL (o) show 0 50 rmoveto TBIS} def %************************************************* %allways /kxi 8 array def /xci 8 array def /Bci 8 array def /xcti 8 array def /Bcti 8 array def % 0 1 2 3 4 5 6 7 % (P60)(P55)(P50)(P45)(P40)(P35)(P30)(P25) %or (D65)(D50)(P40)(A00)(E00)(C00)(P00)(Q00) /kxi [9 10 10 11 9 9 10 9] def /kx kxi xchartl get def xchart4 0 eq xchart4 1 eq or xchart4 4 eq or xchart4 5 eq or {%xchart4=0,1 (x,y); 4,5 (A, B) % (P60) (P55) (P50) (P45) (P40) (P35) (P30) (P25) %or (D65) (D50) (P40) (A00) (E00) (C00) (P00) (Q00) % 0 1 2 3 4 5 6 7 /xci [ 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 ] def /xcti [(0,000) (0,000) (0,000) (0,000) (0,000) (0,000) (0,000) (0,000)] def /Bci [ 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 ] def /Bcti [(1,000) (1,000) (1,000) (1,000) (1,000) (1,000) (1,000) (1,000)] def } if %xchart4=1 xchart4 6 eq {%xchart4=6 (A1, B1) % (P60) (P55) (P50) (P45) (P40) (P35) (P30) (P25) %or (D65) (D50) (P40) (A00) (E00) (C00) (P00) (Q00) % 0 1 2 3 4 5 6 7 /xci [ 0.110 0.110 0.110 0.110 0.110 0.110 0.110 0.110 ] def /xcti [(0,110) (0,110) (0,110) (0,110) (0,110) (0,110) (0,110) (0,110)] def /Bci [ 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 ] def /Bcti [(1,000) (1,000) (1,000) (1,000) (1,000) (1,000) (1,000) (1,000)] def } if %xchart4=6 xchart4 2 eq xchart4 3 eq or xchart4 7 eq or {%xchart4=2,3,7 % (P60) (P55) (P50) (P45) (P40) (P35) (P30) (P25) %or (D65) (D50) (P40) (A00) (E00) (C00) (P00) (Q00) % 0 1 2 3 4 5 6 7 /xci [ 0.110 0.110 0.110 0.110 0.110 0.110 0.110 0.110 ] def /xcti [(0,110) (0,110) (0,110) (0,110) (0,110) (0,110) (0,110) (0,110)] def /Bci [ 0.800 1.000 1.300 2.500 0.900 0.700 1.000 0.700 ] def /Bcti [(0,800) (1,000) (1,300) (2,500) (0,900) (0,700) (1,000) (0,700)] def } if %xchart4=2,3,7 /xc xci xchartl get def /xct xcti xchartl get def /Bc Bci xchartl get def /Bct Bcti xchartl get def xchart4 0 eq xchart4 1 eq or {%xchart4=0,1 4600 1600 moveto TBS (Parame\255) show 4600 1400 moveto TBS (ter:) show TBIS xchart4 0 eq {( N) show} if xchart4 1 eq {( Y) show} if proz_chromaticity_data proz_chromaticity_xy } if %xchart4=0,1 xchart4 2 eq {%xchart4=2 proz_chromaticity_data proz_chromaticity_a2b2 } if %xchart4=2 xchart4 3 eq {%xchart4=3 proz_chromaticity_data proz_chromaticity_a2b2 } if %xchart4=3 %*********************************************************** xchart4 0 eq xchart4 1 eq or {%xchart4=0,1 %only for (x,y) /fakt 4000 def proz_name_range proz_opti 600 400 translate %scala & graphic (x,y) 600 400 0 1 39 {/i exch def %i=0,39 /An XANi i get def /Bn YANi i get def An fakt mul Bn fakt mul i 0 eq {moveto} if i 1 ge i 38 le and {lineto} if i 39 eq {lineto closepath stroke} if } for %i=0,39 XANW fakt mul YANW fakt mul 90 0 360 arc stroke XANW fakt mul 200 sub YANW fakt mul 250 sub moveto TBS TELi xchartl get show TBIS 0 1 4 {/j exch def %j=0,4 j 0 eq {/i 0 def} if %Cm-Rm j 1 eq {/i 6 def} if %Gm-Mm j 2 eq {/i 13 def} if %Ym-Bm j 3 eq {/i kx def} if %Max-Min j 4 eq {%new only for i=40 /i 40 def /k 6 def %Go Xi i XRj k get put Yi i YRj k get put Zi i ZRj k get put } if /SUM Xi i get Yi i get add Zi i get add 0.0001 add def XANCj j Xi i get SUM div put YANCj j Yi i get SUM div put ZANCj j Zi i get SUM div put /An XANCj j get def /Bn YANCj j get def /AnY An fakt mul def %xan /BnY Bn fakt mul def %yan /Paramshow {Yi i get cvishow} bind def j 0 eq {AnY 400 sub BnY 050 sub moveto xchart4 0 eq {(C) show imshow} if xchart4 1 eq {Paramshow} if 1 0 0 0 setcmykcolor} if %Cm j 1 eq {AnY 400 sub BnY 050 sub moveto xchart4 0 eq {(G) show imshow} if xchart4 1 eq {Paramshow} if 1 0 1 0 setcmykcolor} if %Gm j 2 eq {AnY 100 sub BnY 250 sub moveto xchart4 0 eq {(Y) show imshow} if xchart4 1 eq {Paramshow} if 0 0 1 0 setcmykcolor} if %Ym j 3 eq {AnY 500 sub xchart4 1 eq {100 add} if BnY 050 sub moveto xchart4 0 eq {(max) show} if xchart4 1 eq {Paramshow} if 0.3 0 1 0 setcmykcolor} if %Ymax j 4 eq {AnY 370 sub xchart4 1 eq {100 add} if BnY 000 add moveto xchart4 0 eq {(G) show ioshow} if xchart4 1 eq {Paramshow} if 1 0.5 1 0 setcmykcolor} if %Go newpath AnY BnY 90 0 360 arc fill 0 setgray newpath AnY BnY 90 0 360 arc stroke } for %j=0,4 %continue j=0,4 for antagonistic (A) colours 0 1 4 {/j exch def %j=0,4 j 0 eq {/i 0 def} if %Cm-Rm j 1 eq {/i 6 def} if %Gm-Mm j 2 eq {/i 13 def} if %Ym-Bm j 3 eq {/i kx def} if %Max-Min j 4 eq {%new only for i=40 /i 40 def /k 6 def %Mo Xi i XRj k get put %special Yi i YRj k get put Zi i ZRj k get put } if /SUM XK Xi i get sub YK Yi i get sub add ZK Zi i get sub add 0.0001 add abs def XANAj j XK Xi i get sub SUM div put YANAj j YK Yi i get sub SUM div put ZANAj j ZK Zi i get sub SUM div put /An XANAj j get def /Bn YANAj j get def /AnY An fakt mul def %xan /BnY Bn fakt mul def %yan /Paramshow {YK Yi i get sub cvishow} bind def j 0 eq {AnY 150 add BnY 150 sub moveto xchart4 0 eq {(R) show imshow} if xchart4 1 eq {Paramshow} if 0 1 1 0 setcmykcolor} if %Rm j 1 eq {AnY 150 add BnY 050 sub moveto xchart4 0 eq {(M) show imshow} if xchart4 1 eq {Paramshow} if 0 1 0 0 setcmykcolor} if %Mm j 2 eq {AnY 350 sub BnY 100 add moveto xchart4 0 eq {(B) show imshow} if xchart4 1 eq {Paramshow} if 1 1 0 0 setcmykcolor} if %Bm j 3 eq {AnY 150 sub BnY 250 sub moveto xchart4 0 eq {(min) show} if xchart4 1 eq {Paramshow} if 0.7 1 0 0 setcmykcolor} if %Ymin j 4 eq {AnY 250 sub BnY 150 sub moveto xchart4 0 eq {(M) show ioshow} if xchart4 1 eq {Paramshow} if 0 0.5 0 0 setcmykcolor} if %Mo newpath AnY BnY 90 0 360 arc fill 0 setgray newpath AnY BnY 90 0 360 arc stroke } for %j=0,4 -600 -400 translate %scala & graphic (x,y) } if %xchart4=0,1 %************************************************************** xchart4 2 eq xchart4 3 eq or {%xchart4=2,3 %only for (a2,b2), (a2s,b2s) /fakt 1000 def /a2 1.00 def /b2 -0.4 def 500 0 translate proz_name_range proz_opti -500 0 translate proz_param /xtrans8 1300 def /ytrans8 3200 def xtrans8 ytrans8 translate %scala & graphic (a2,b2) 1300 3200 %0600 3100 translate %proz_axis_scales4_7 0 1 39 {/i exch def %i=0,39 /An XANi i get xc sub YANi i get 0.0001 add div def /Bn ZANi i get YANi i get 0.0001 add div 0.4 mul neg % Bc mul def /AnK XANK xc sub YANK 0.0001 add div def /BnK ZANK YANK 0.0001 add div 0.4 mul neg % Bc mul def /AnY An def /BnY Bn def An fakt mul Bn fakt mul i 0 eq {moveto} if i 1 ge i 38 le and {lineto} if i 39 eq {lineto closepath stroke} if } for %i=0,39 XANW xc sub YANW 0.0001 add div fakt mul %a2 ZANW YANW 0.0001 add div 0.4 mul neg fakt mul %b2 90 0 360 arc stroke XANW xc sub YANW 0.0001 add div fakt mul 100 add ZANW YANW 0.0001 add div 0.4 mul neg fakt mul 000 add moveto TBS TELi xchartl get show %10 chromatic colours from continuous colours TBIS 0 1 4 {/j exch def %j=0,4 j 0 eq {/i 0 def} if %Cm-Rm j 1 eq {/i 6 def} if %Gm-Mm j 2 eq {/i 13 def} if %Ym-Bm j 3 eq {/i kx def} if %Max-Min j 4 eq {/i 40 def /k 6 def %Go Xi i XRj k get put %special Yi i YRj k get put Zi i ZRj k get put } if /SUM Xi i get Yi i get add Zi i get add 0.0001 add def XANCj j Xi i get SUM div put YANCj j Yi i get SUM div put ZANCj j Zi i get SUM div put /An XANCj j get xc sub YANCj j get 0.0001 add div def %a2 /Bn ZANCj j get YANCj j get 0.0001 add div 0.4 mul neg %b2 % Bc mul def /AnY An fakt mul def /BnY Bn fakt mul def %dAB, CAB not used /dAB An dup mul Bn dup mul add 0.0001 add sqrt def %/CAB dAB Yi i get mul def /Paramshow {Yi i get cvishow} bind def j 0 eq {AnY 350 sub BnY 100 sub moveto xchart4 2 eq {(C) show imshow} if xchart4 3 eq {Paramshow} if 1 0 0 0 setcmykcolor} if %Cm j 1 eq {AnY 350 sub BnY 150 sub moveto xchart4 2 eq {(G) show imshow} if xchart4 3 eq {Paramshow} if 1 0 1 0 setcmykcolor} if %Gm j 2 eq {AnY 150 sub BnY 200 add moveto xchart4 2 eq {(Y) show imshow} if xchart4 3 eq {Paramshow} if 0 0 1 0 setcmykcolor} if %Ym j 3 eq {AnY 500 sub BnY 050 add moveto xchart4 2 eq {(max) show} if xchart4 3 eq {Paramshow} if 0.3 0 1 0 setcmykcolor} if %Ymax j 4 eq {AnY 050 add BnY 250 sub moveto xchart4 2 eq {(G) show ioshow} if xchart4 3 eq {Paramshow} if 1 0.5 1 0 setcmykcolor} if %Go newpath AnY BnY 90 0 360 arc fill 0 setgray newpath AnY BnY 90 0 360 arc stroke /SUM XK Xi i get sub YK Yi i get sub add ZK Zi i get sub add 0.0001 add def XANCj j XK Xi i get sub SUM div put YANCj j YK Yi i get sub SUM div put ZANCj j ZK Zi i get sub SUM div put /An XANCj j get xc sub YANCj j get 0.0001 add div def %a2 /Bn ZANCj j get YANCj j get 0.0001 add div 0.4 mul neg %b2 % Bc mul def /AnY An fakt mul def %a2 /BnY Bn fakt mul def %b2 %dAB, CAB not used /dAB An dup mul Bn dup mul add 0.0001 add sqrt def %/CAB dAB YK Yi i get sub mul def /Paramshow {YK Yi i get sub cvishow} bind def j 0 eq {AnY 120 add BnY 050 sub moveto xchart4 2 eq {(R) show imshow} if xchart4 3 eq {Paramshow} if 0 1 1 0 setcmykcolor} if %Rm j 1 eq {AnY 120 add BnY 050 sub moveto xchart4 2 eq {(M) show imshow} if xchart4 3 eq {Paramshow} if 0 1 0 0 setcmykcolor} if %Mm j 2 eq {AnY 300 sub BnY 100 add moveto xchart4 2 eq {(B) show imshow} if xchart4 3 eq {Paramshow} if 1 1 0 0 setcmykcolor} if %Bm j 3 eq {AnY 100 sub xchart4 3 eq {100 add} if BnY 250 sub moveto xchart4 2 eq {(min) show} if xchart4 3 eq {Paramshow} if 0.7 1 0 0 setcmykcolor} if %Bmin j 4 eq {AnY 100 sub BnY 250 sub moveto xchart4 2 eq {(M) show ioshow} if xchart4 3 eq {Paramshow} if 0 0.5 0 0 setcmykcolor} if %Mo newpath AnY BnY 90 0 360 arc fill 0 setgray newpath AnY BnY 90 0 360 arc stroke } for %j=0,4 xtrans8 neg ytrans8 neg translate %text & graphic (a2, b2) 1300 3200 %-600 400 translate } if %xchart4=2,3 only for (a2,b2), (a2s,b2s) %******************************************************* xchart4 4 eq xchart4 5 eq or {%xchart4=4,5 %only for (A,B) /fakt 40 def /a2 1.00 def /b2 -0.4 def proz_name_range proz_opti proz_param /xtrans8 3500 def /ytrans8 2100 def xtrans8 ytrans8 translate %text & graphic (A,B) 3500 2100 proz_axis_scales4_7 0 1 39 {/i exch def %i=0,39 /An XANi i get YANi i get 0.0001 add div def /Bn ZANi i get YANi i get 0.0001 add div 0.4 mul neg def /AnK XK YK 0.0001 add div def /BnK ZK YK 0.0001 add div 0.4 mul neg def /AnY An AnK sub Yi i get mul def /BnY Bn BnK sub Yi i get mul def AnY fakt mul BnY fakt mul i 0 eq {moveto} if i 1 ge i 38 le and {lineto} if i 39 eq {lineto closepath stroke} if } for %i=0,39 XANW YANW 0.0001 add div %(a-an)YW XANK YANK 0.0001 add div sub YW mul fakt mul ZANW YANW 0.0001 add div %(b-an)YW ZANK YANK 0.0001 add div sub 0.4 mul neg YW mul fakt mul 90 0 360 arc stroke 0 080 add 0 080 add moveto TBS TELi xchartl get show %10 chromatic colours from continuous colours TBIS 0 1 4 {/j exch def %j=0,4 j 0 eq {/i 0 def} if %Cm-Rm j 1 eq {/i 6 def} if %Gm-Mm j 2 eq {/i 13 def} if %Ym-Bm j 3 eq {/i kx def} if %Max-Min j 4 eq {/i 40 def /k 6 def %Go Xi i XRj k get put %special Yi i YRj k get put Zi i ZRj k get put } if /SUM Xi i get Yi i get add Zi i get add 0.0001 add def XANCj j Xi i get SUM div put YANCj j Yi i get SUM div put ZANCj j Zi i get SUM div put /An XANCj j get YANCj j get 0.0001 add div %2.5(a-an)Y XANK YANK 0.0001 add div sub def /Bn ZANCj j get YANCj j get 0.0001 add div %2.5(b-bn)Y ZANK YANK 0.0001 add div sub 0.4 mul neg def /AnY An Yi i get mul fakt mul def /BnY Bn Yi i get mul fakt mul def %dAB, CAB not used /dAB An dup mul Bn dup mul add 0.0001 add sqrt def /CAB dAB Yi i get mul def /Paramshow {Yi i get cvishow} bind def j 0 eq {AnY 350 sub BnY 050 sub moveto xchart4 4 eq {(C) show imshow} if xchart4 5 eq {Paramshow} if 1 0 0 0 setcmykcolor} if %Cm j 1 eq {AnY 370 sub BnY 050 sub moveto xchart4 4 eq {(G) show imshow} if xchart4 5 eq {Paramshow} if 1 0 1 0 setcmykcolor} if %Gm j 2 eq {AnY 050 sub BnY 150 add moveto xchart4 4 eq {(Y) show imshow} if xchart4 5 eq {Paramshow} if 0 0 1 0 setcmykcolor} if %Ym j 3 eq {AnY 100 sub BnY 300 sub moveto xchart4 4 eq {(max) show} if xchart4 5 eq {Paramshow} if 0.3 0 1 0 setcmykcolor} if %Ymax j 4 eq {AnY 100 sub BnY 250 sub moveto xchart4 4 eq {(G) show ioshow} if xchart4 5 eq {Paramshow} if 1 0.5 1 0 setcmykcolor} if %Go newpath AnY BnY 90 0 360 arc fill 0 setgray newpath AnY BnY 90 0 360 arc stroke /SUM XK Xi i get sub YK Yi i get sub add ZK Zi i get sub add 0.0001 add def XANCj j XK Xi i get sub SUM div put YANCj j YK Yi i get sub SUM div put ZANCj j ZK Zi i get sub SUM div put /An XANCj j get YANCj j get 0.0001 add div %(a-an) XANK YANK 0.0001 add div sub def /Bn ZANCj j get YANCj j get 0.0001 add div %(b-bn) ZANK YANK 0.0001 add div sub 0.4 mul neg def /AnY An YK Yi i get sub mul fakt mul def %(a-an)Y /BnY Bn YK Yi i get sub mul fakt mul def %(b-bn)Y %dAB, CAB not used /dAB An dup mul Bn dup mul add 0.0001 add sqrt def /CAB dAB YK Yi i get sub mul def /Paramshow {YK Yi i get sub cvishow} bind def j 0 eq {AnY 120 add BnY 050 sub moveto xchart4 4 eq {(R) show imshow} if xchart4 5 eq {Paramshow} if 0 1 1 0 setcmykcolor} if %Rm j 1 eq {AnY 120 add BnY 050 sub moveto xchart4 4 eq {(M) show imshow} if xchart4 5 eq {Paramshow} if 0 1 0 0 setcmykcolor} if %Mm j 2 eq {AnY 200 sub BnY 250 sub moveto xchart4 4 eq {(B) show imshow} if xchart4 5 eq {Paramshow} if 1 1 0 0 setcmykcolor} if %Bm j 3 eq {AnY 100 sub BnY 150 add moveto xchart4 4 eq {(min) show} if xchart4 5 eq {Paramshow} if 0.7 1 0 0 setcmykcolor} if %Bmin j 4 eq {AnY 100 sub BnY 150 add moveto xchart4 4 eq {(M) show ioshow} if xchart4 5 eq {Paramshow} if 0 0.5 0 0 setcmykcolor} if %Mo newpath AnY BnY 90 0 360 arc fill 0 setgray newpath AnY BnY 90 0 360 arc stroke } for %j=0,4 xtrans8 neg ytrans8 neg translate %text & graphic (A,B) 3500 2100 } if %xchart4=4,5 %************************************************************** xchart4 6 eq xchart4 7 eq or {%xchart4=6,7 %only for (A1/2,B1/2) /fakt 40 def /a2 1.00 def /b2 -0.4 def proz_name_range proz_opti proz_param /xtrans8 3500 def /ytrans8 2100 def xtrans8 ytrans8 translate %text & graphic (A1/2,B1/2) 3500 2100 proz_axis_scales4_7 0 1 39 {/i exch def %i=0,39 /An XANi i get xc sub YANi i get 0.0001 add div def /Bn ZANi i get YANi i get 0.0001 add div 0.4 mul neg Bc mul def /AnK XANK xc sub YANK 0.0001 add div def /BnK ZANK YANK 0.0001 add div 0.4 mul neg Bc mul def /AnY An AnK sub Yi i get mul def /BnY Bn BnK sub Yi i get mul def AnY fakt mul BnY fakt mul i 0 eq {moveto} if i 1 ge i 38 le and {lineto} if i 39 eq {lineto closepath stroke} if } for %i=0,39 XANW xc sub YANW 0.0001 add div %(a-an)YW XANK xc sub YANK 0.0001 add div sub YW mul fakt mul ZANW YANW 0.0001 add div %(b-an)YW ZANK YANK 0.0001 add div sub 0.4 mul neg Bc mul YW mul fakt mul 90 0 360 arc stroke 0 080 add 0 080 add moveto TBS TELi xchartl get show %10 chromatic colours from continuous colours TBIS 0 1 4 {/j exch def %j=0,4 j 0 eq {/i 0 def} if %Cm-Rm j 1 eq {/i 6 def} if %Gm-Mm j 2 eq {/i 13 def} if %Ym-Bm j 3 eq {/i kx def} if %Max-Min j 4 eq {/i 40 def /k 6 def %Go Xi i XRj k get put %special Yi i YRj k get put Zi i ZRj k get put } if /SUM Xi i get Yi i get add Zi i get add 0.0001 add def XANCj j Xi i get SUM div put YANCj j Yi i get SUM div put ZANCj j Zi i get SUM div put /An XANCj j get xc sub YANCj j get 0.0001 add div %2.5(a-an)Y XANK xc sub YANK 0.0001 add div sub def /Bn ZANCj j get YANCj j get 0.0001 add div %2.5(b-bn)Y ZANK YANK 0.0001 add div sub 0.4 mul neg Bc mul def /AnY An Yi i get mul fakt mul def /BnY Bn Yi i get mul fakt mul def %dAB, CAB not used /dAB An dup mul Bn dup mul add 0.0001 add sqrt def /CAB dAB Yi i get mul def /Paramshow {Yi i get cvishow} bind def j 0 eq {AnY 350 sub BnY 050 sub moveto xchart4 6 eq {(C) show imshow} if xchart4 7 eq {Paramshow} if 1 0 0 0 setcmykcolor} if %Cm j 1 eq {AnY 370 sub BnY 050 sub moveto xchart4 6 eq {(G) show imshow} if xchart4 7 eq {Paramshow} if 1 0 1 0 setcmykcolor} if %Gm j 2 eq {AnY 050 sub BnY 150 add moveto xchart4 6 eq {(Y) show imshow} if xchart4 7 eq {Paramshow} if 0 0 1 0 setcmykcolor} if %Ym j 3 eq {AnY 500 sub xchart4 7 eq {150 add} if BnY 050 add moveto xchart4 6 eq {(max) show} if xchart4 7 eq {Paramshow} if 0.3 0 1 0 setcmykcolor} if %Ymax j 4 eq {AnY 100 sub BnY 150 add moveto xchart4 6 eq {(G) show ioshow} if xchart4 7 eq {Paramshow} if 1 0.5 1 0 setcmykcolor} if %Go newpath AnY BnY 90 0 360 arc fill 0 setgray newpath AnY BnY 90 0 360 arc stroke /SUM XK Xi i get sub YK Yi i get sub add ZK Zi i get sub add 0.0001 add def XANCj j XK Xi i get sub SUM div put YANCj j YK Yi i get sub SUM div put ZANCj j ZK Zi i get sub SUM div put /An XANCj j get xc sub YANCj j get 0.0001 add div %(a-an) XANK xc sub YANK 0.0001 add div sub def /Bn ZANCj j get YANCj j get 0.0001 add div %(b-bn) ZANK YANK 0.0001 add div sub 0.4 mul neg Bc mul def /AnY An YK Yi i get sub mul fakt mul def %(a-an)Y /BnY Bn YK Yi i get sub mul fakt mul def %(b-bn)Y %dAB, CAB not used /dAB An dup mul Bn dup mul add 0.0001 add sqrt def /CAB dAB YK Yi i get sub mul def /Paramshow {YK Yi i get sub cvishow} bind def j 0 eq {AnY 120 add BnY 050 sub moveto xchart4 6 eq {(R) show imshow} if xchart4 7 eq {Paramshow} if 0 1 1 0 setcmykcolor} if %Rm j 1 eq {AnY 120 add BnY 050 sub moveto xchart4 6 eq {(M) show imshow} if xchart4 7 eq {Paramshow} if 0 1 0 0 setcmykcolor} if %Mm j 2 eq {AnY 200 sub BnY 250 sub moveto xchart4 6 eq {(B) show imshow} if xchart4 7 eq {Paramshow} if 1 1 0 0 setcmykcolor} if %Bm j 3 eq {AnY 100 add BnY 150 sub moveto xchart4 6 eq {(min) show} if xchart4 7 eq {Paramshow} if 0.7 1 0 0 setcmykcolor} if %Bmin j 4 eq {AnY 100 sub BnY 250 sub moveto xchart4 6 eq {(M) show ioshow} if xchart4 7 eq {Paramshow} if 0 0.5 0 0 setcmykcolor} if %Mo newpath AnY BnY 90 0 360 arc fill 0 setgray newpath AnY BnY 90 0 360 arc stroke } for %j=0,4 xtrans8 neg ytrans8 neg translate %text & graphic (A1/2,B1/2) 3500 2100 } if %xchart4=6,7 showpage grestore %} for %xchartl=0,7 } for %xchart4=0,7 } for %xcolorl=0,0 %%Trailer %line 249 %%EndDocument EndEPSF grestore gsave BeginEPSF /xc1 16 def /yc1 12 def /xt 1 def xchart 1 eq {/xt 1 def} if 28 SHSl sub MM 020 STAl add MM translate 10 /Times-ISOL1 FS 53 MM 1 MM moveto ( ) show 1 1 scale -77 -91 translate %%BeginDocument: Bild 17 %!PS-Adobe-3.0 EPSF-3.0 egw41-3a enh31-3n %%BoundingBox: 70 83 228 206 %START PDFDE011.EPS /pdfmark13 where {pop} {userdict /pdfmark13 /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/egw4/egw4.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 pdfmark13 [ /View [ /Fit ] /DOCVIEW pdfmark13 %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 /Courier findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /Courier-ISOL1 exch definefont pop /Courier-Oblique findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /CourierI-ISOL1 exch definefont pop /Courier-Bold findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /CourierB-ISOL1 exch definefont pop /Courier-BoldOblique findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /CourierBI-ISOL1 exch definefont pop /TG {350 /Times-ISOL1 FS} bind def /TM {280 /Times-ISOL1 FS} bind def /TK {240 /Times-ISOL1 FS} bind def /TS {200 /Times-ISOL1 FS} bind def /TL {160 /Times-ISOL1 FS} bind def /TIG {350 /TimesI-ISOL1 FS} bind def /TIM {280 /TimesI-ISOL1 FS} bind def /TIK {240 /TimesI-ISOL1 FS} bind def /TIS {200 /TimesI-ISOL1 FS} bind def /TIL {160 /TimesI-ISOL1 FS} bind def /TBG {350 /TimesB-ISOL1 FS} bind def /TBM {280 /TimesB-ISOL1 FS} bind def /TBK {240 /TimesB-ISOL1 FS} bind def /TBS {200 /TimesB-ISOL1 FS} bind def /TBL {160 /TimesB-ISOL1 FS} bind def /TBIG {350 /TimesBI-ISOL1 FS} bind def /TBIM {280 /TimesBI-ISOL1 FS} bind def /TBIK {240 /TimesBI-ISOL1 FS} bind def /TBIS {200 /TimesBI-ISOL1 FS} bind def /TBIL {160 /TimesBI-ISOL1 FS} bind def /SG {350 /Symbol FS} bind def /SM {280 /Symbol FS} bind def /SK {240 /Symbol FS} bind def /SS {200 /Symbol FS} bind def /SL {160 /Symbol FS} bind def %********************************************************* /proz_param {%proz_param 4650 3800 moveto TBS (Parame\255) show 4650 3600 moveto TBS (ter:) show xchart4 2 eq xchart4 4 eq or xchart4 6 eq or {TBIS ( N) show} if xchart4 3 eq xchart4 5 eq or xchart4 7 eq or {TBIS ( Y) show xcolorl 1 eq {xcol10_BS} if} if /kx kxi xchartl get def /kxx 445 kx 5 mul add def 4150 300 moveto TBS (max: ) show kxx cvishow (_770) show 4150 080 moveto TBS (min: 380_) show kxx cvishow /index2_7 {%index2_7 xchart4 2 eq xchart4 3 eq or xchart4 7 eq or {0 -50 rmoveto TBL (2) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if } if xchart4 4 eq xchart4 5 eq or {0 -50 rmoveto TBL () show 0 50 rmoveto xcolorl 1 eq {xcol10_BS} if } if xchart4 6 eq {0 -50 rmoveto TBL (1) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if } if } bind def %index2_7 /index2_7n {%index2_7n xchart4 2 eq xchart4 3 eq or xchart4 7 eq or {0 -50 rmoveto TBL (2,n) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if } if xchart4 4 eq xchart4 5 eq or {0 -50 rmoveto TBL (n) show 0 50 rmoveto xcolorl 1 eq {xcol10_BS} if } if xchart4 6 eq {0 -50 rmoveto TBL (1,n) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if } if } bind def %index2_7n xchart4 1 le xchart4 4 ge or {%xchart4<=1, xchart4>=4 /x0p 50 def x0p 3800 moveto TBIS (XYZ) show 0 -50 rmoveto TBL (W) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if TBS (=) show XK cvsshow2 (, ) show YK cvsshow2 (, ) show ZK cvsshow2 x0p 3550 moveto TBIS (A) show index2_7 TBS ( = 2,5 \050) show TBIS (a) show index2_7 TBS ( - ) show TBIS (a) show index2_7n TBS (\051 ) show TBIS (Y) show xcolorl 1 eq {xcol10_BS} if x0p 3300 moveto TBIS (B) show index2_7 TBS ( = 2,5 ) show TBIS (B) show 0 -50 rmoveto TBL (c) show 0 50 rmoveto TBS ( \050) show TBIS (b) show index2_7 TBS ( - ) show TBIS (b) show index2_7n TBS (\051 ) show TBIS (Y) show xcolorl 1 eq {xcol10_BS} if x0p 3050 moveto TBIS (a) show index2_7 TBS ( = ) show TBIS (a) show 0 -50 rmoveto TBL (20) show 0 50 rmoveto TBS ( [) show TBIS (\050x) show xcolorl 1 eq {xcol10_BS} if TBS (-) show TBIS (x) show 0 -50 rmoveto TBL (c) show 0 50 rmoveto TBIS (\051/y) show xcolorl 1 eq {xcol10_BS} if TBS (]) show x0p 2800 moveto TBIS (b) show index2_7 TBS ( = ) show TBIS (b) show 0 -50 rmoveto TBL (20) show 0 50 rmoveto TBS ( [) show TBIS (z) show xcolorl 1 eq {xcol10_BS} if TBIS (/y) show xcolorl 1 eq {xcol10_BS} if TBS (]) show x0p 2550 moveto TBIS (a) show 0 -50 rmoveto TBL (20) show 0 50 rmoveto TBS ( = 1, ) show TBIS (b) show 0 -50 rmoveto TBL (20) show 0 50 rmoveto TBS ( = -0,4) show x0p 2300 moveto TBIS (x) show 0 -50 rmoveto TBL (c) show 0 50 rmoveto TBS ( = ) show xct show (, ) show TBIS (B) show 0 -50 rmoveto TBL (c) show 0 50 rmoveto TBS ( = ) show Bct show x0p 2080 moveto TBIS (n) show TBS ( = ) show TELi xchartl get show x0p 1860 moveto TBIS (C) show TBL 0 -50 rmoveto (AB,) show 0 50 rmoveto index2_7 TBS (=[) show TBIS (A) show index2_7 TBL -20 100 rmoveto (2) show 0 -100 rmoveto TBS (+) show TBIS (B) show index2_7 TBL -20 100 rmoveto (2) show 0 -100 rmoveto TBS (]) show TBL 0 100 rmoveto (1/2) show 0 -100 rmoveto } if %xchart4<=1, xchart4>=4 } bind def %proz_param %**************************************************************** /proz_opti {%proz_opti TBS 0 0 0 1 setcmyk_olvcolor /xchart12 xchart4 12 mul def xtexti xchart12 0 add get ytexti xchart12 0 add get moveto TBS (10 Optimalfarben (o)) showde %0egw41-7 02581 (10 optimal colours (o)) showen %1egw41-7 02581 (10 colores \363ptimos (o)) showes %2egw41-7 02581 (10 couleurs optimales (o)) showfr %3egw41-7 02581 (10 colori ottimi (o)) showit %4egw41-7 02581 (10 optimal colours (o)) showjp %5egw41-7 02581 TBIS (, Y) show TBL 0 -60 rmoveto (W) show 0 60 rmoveto xchartl 1 eq {xcol10KBS} if TBS YF 0 eq {(=100) show}{(=90) show} ifelse TBIS (, Y) show TBL 0 -60 rmoveto (N) show 0 60 rmoveto xchartl 1 eq {xcol10KBS} if TBS YF 0 eq {(=0) show}{(=3,6) show} ifelse xtexti xchart12 1 add get ytexti xchart12 1 add get moveto (8 von maximalem (m)) showde %0egw41-7 03581 (8 of maximum (m)) showen %1egw41-7 03581 (8 de m\341ximo (m)) showes %2egw41-7 03581 (8 de la maximum (m)) showfr %3egw41-7 03581 (8 di massimo (m)) showit %4egw41-7 03581 (8 of maximum (m)) showjp %5egw41-7 03581 TBIS ( C) show TBL 0 -60 rmoveto (AB) show 0 60 rmoveto TBS ( f\374r ) showde %0egw41-7 03581 ( for ) showen %1egw41-7 03581 ( bajo ) showes %2egw41-7 03581 ( pour ) showfr %3egw41-7 03581 ( per ) showit %4egw41-7 03581 ( for ) showjp %5egw41-7 03581 TELi xchartl get show xtexti xchart12 2 add get ytexti xchart12 2 add get moveto xchart4 0 eq xchart4 1 eq or {%xchart4=0,1 (in der Normfarbtafel) showde %0egw41-7 04581 (in the chromaticity diagram) showen %1egw41-7 04581 (en el diagrama de chromaticidad) showes %2egw41-7 04581 (dans le diagramme de chromaticit\351) showfr %3egw41-7 04581 (nel diagramma di cromaticit\340) showit %4egw41-7 04581 (in the chromaticity diagram) showjp %5egw41-7 04581 TBIS ( (x, y)) show } if %xchart4=0,1 xchart4 2 eq xchart4 3 eq or {%xchart4=2,3 (in linearer Farbtafel ) showde %0egw41-7 06581 (in linear chromaticity diagram ) showea %1egw41-7 06581 TBS (\050) show TBIS (a) show TBL 0 -50 rmoveto (2) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if TBIS (, b) show TBL 0 -50 rmoveto (2) show 0 50 rmoveto xcolorl 1 eq {xcol10_BS} if TBS (\051) show } if %xchart4=2,3 xchart4 4 eq xchart4 5 eq or {%xchart4=4,5 (in Buntwertdiagramm) showde %0egw41-7 08581 (in chromatic value diagram) showen %1egw41-7 08581 (en el diagrama valor crom\341tico) showes %2egw41-7 08581 (dans la valeur chromatique le diagramme) showfr %3egw41-7 08581 (nel diagramma di valore cromatico) showit %4egw41-7 08581 (in chromatic value diagram) showjp %5egw41-7 08581 TBIS ( (A, B)) show } if %xchart4=4,5 xchart4 6 eq {%xchart4=6 (in Buntwertdiagram) showde %0egw41-7 10581 (in chromatc value diagram) showen %1egw41-7 10581 (en el diagrama croma) showes %2egw41-7 10581 (dans le diagramme de chroma) showfr %3egw41-7 10581 (nel diagramma di chroma) showit %4egw41-7 10581 (in chromactic value diagram) showjp %5egw41-7 10581 TBIS ( \050A) show 0 -50 rmoveto TBL (1) show 0 50 rmoveto TBS (, ) show TBIS (B) show 0 -50 rmoveto TBL (1) show 0 50 rmoveto TBS (\051) show } if %xchart4=6 xchart4 7 eq {%xchart4=7 (in Buntwertdiagram) showde %0egw41-7 11581 (in chromatic value diagram) showen %1egw41-7 11581 (en el diagrama croma) showes %2egw41-7 11581 (dans le diagramme de chroma) showfr %3egw41-7 11581 (nel diagramma di chroma) showit %4egw41-7 11581 (in chroma diagram) showjp %5egw41-7 11581 TBIS ( \050A) show 0 -50 rmoveto TBL (2) show 0 50 rmoveto TBS (, ) show TBIS (B) show 0 -50 rmoveto TBL (2) show 0 50 rmoveto TBS (\051) show } if %xchart4=7 } bind def %proz_opti %**************************************************************************** /proz_name_range {%proz_name_range /xchart12 xchart4 12 mul def xtexti xchart12 3 add get ytexti xchart12 3 add get moveto TBS (Name & Spektralbereich) showde %0egw41-7 00581 (name and spectral range) showen %1egw41-7 00581 (Nombre y gama espectral) showes %2egw41-7 00581 (Nom et la gamma spectrale) showfr %3egw41-7 00581 (Nome e la gamma spettrale) showit %4egw41-7 00581 (name and spectral range) showjp %5egw41-7 00581 xtexti xchart12 4 add get ytexti xchart12 4 add get moveto TBIS FARBE 0 get show TBL 0 -40 rmoveto FARBE 1 get show 0 40 rmoveto TBIS FARBE 2 get show xtexti xchart12 5 add get ytexti xchart12 5 add get moveto TBIS FARBE 3 get show TBL 0 -40 rmoveto FARBE 4 get show 0 40 rmoveto TBIS FARBE 5 get show xtexti xchart12 6 add get ytexti xchart12 6 add get moveto TBIS FARBE 6 get show TBL 0 -40 rmoveto FARBE 7 get show 0 40 rmoveto TBIS FARBE 8 get show xtexti xchart12 7 add get ytexti xchart12 7 add get moveto TBIS FARBE 9 get show TBL 0 -40 rmoveto FARBE 10 get show 0 40 rmoveto TBIS FARBE 11 get show xtexti xchart12 8 add get ytexti xchart12 8 add get moveto TBIS FARBE 12 get show TBL 0 -40 rmoveto FARBE 13 get show 0 40 rmoveto TBIS FARBE 14 get show xtexti xchart12 9 add get ytexti xchart12 9 add get moveto TBIS FARBE 15 get show TBL 0 -40 rmoveto FARBE 16 get show 0 40 rmoveto TBIS FARBE 17 get show xtexti xchart12 10 add get ytexti xchart12 10 add get moveto TBIS FARBE 18 get show TBL 0 -40 rmoveto FARBE 19 get show 0 40 rmoveto TBIS FARBE 20 get show xtexti xchart12 11 add get ytexti xchart12 11 add get moveto TBIS FARBE 21 get show TBL 0 -40 rmoveto FARBE 22 get show 0 40 rmoveto TBIS FARBE 23 get show } bind def %proz_name_range %**************************************************************** /proz_axis_scales4_7 {%proz_axis_scales4_7 %axis and scales 0 0 0 1 setcmyk_olvcolor -1000 0 moveto 2800 0 rlineto stroke 0 -1880 moveto 0 3600 rlineto stroke 1800 100 sub 50 moveto 100 -50 rlineto -100 -50 rlineto closepath fill 0 50 sub 1800 100 sub moveto 50 100 rlineto 50 -100 rlineto closepath fill /xt10x 5 array def /yt10x 5 array def /xt10x [() ( -50) ( ) ( ) ( 100)] def /yt10x [(-100) ( ) ( ) ( ) (100)] def 0 0 0 1 setcmyk_olvcolor 1 1 4 {/i exch def %i=0,4 x-axis -1600 i 800 mul add -75 moveto 0 150 rlineto stroke -1800 i 800 mul add -250 moveto TBS xt10x i get show i 4 eq {-1600 i 800 mul add 0 moveto xchart4 4 eq { %xchart4=4 -100 200 rmoveto TBIK (A) show xcolorl 1 eq {xcol10_BS} if } if %xchart4=4 xchart4 5 eq { %xchart4=5 -100 200 rmoveto TBIK (A) show xcolorl 1 eq {xcol10_BS} if } if %xchart4=5 xchart4 6 eq { %xchart4=6 -200 200 rmoveto TBIK (A) show -10 -50 rmoveto TBS (1) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if } if %xchart4=6 xchart4 7 eq { %xchart4=7 -200 200 rmoveto TBIK (A) show -10 -50 rmoveto TBS (2) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if } if %xchart4=7 } if } for %i=0,4 0 1 4 {/i exch def %i=0,4 y-axis -75 -1600 i 800 mul add moveto 150 0 rlineto stroke 100 -1650 i 800 mul add 100 sub moveto TBS yt10x i get show i 4 eq {0 -1650 i 800 mul add moveto xchart4 4 eq { %xchart4=4 100 150 rmoveto TBIK (B) show TM xcolorl 1 eq {xcol10_BS} if } if %xchart4=4 xchart4 5 eq { %xchart4=5 100 150 rmoveto TBIK (B) show xcolorl 1 eq {xcol10_BS} if 0 1150 add 1600 0200 add moveto } if %xchart4=5 xchart4 6 eq { %xchart4=6 100 150 rmoveto TBIK (B) show -10 -50 rmoveto TBS (1) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if } if %xchart4=6 xchart4 7 eq { %xchart4=7 100 150 rmoveto TBIK (B) show -10 -50 rmoveto TBS (2) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if } if %xchart4=7 } if } for %i=0,4 } bind def %proz_axis_scales4_7 %*********************************************************** /proz_chromaticity_data {%BEG proz_chromaticity_data /FL 0.00001 def /DOW 82 array def /DOWZ 17 array def /F02Z 51 array def /F10Z 51 array def %TRISTIMULUS VALUES FOR PURPLE COLORS from 'dmyy'KRPROG.FOR %FOR 02- AND 10-DEGREE-OBSERVER, ILLUMINANT E 0 1 79 {/i exch def %i=0,79 = 380_775 DOW i 380 i 5 mul add put } for %i=0,79 /DOWZ %17 data [700 -495 -500 -505 -510 -515 -520 -525 -530 -535 -540 -545 -550 -555 -560 -565 400] def /F02Z %3x17 data 700 ... 400 [.01136 .01141 .01158 .01169 .01176 .01182 .01187 .01191 .01195 .01199 .01204 .01210 .01219 .01232 .01254 .01300 .01431 .00410 .00404 .00383 .00369 .00359 .00352 .00346 .00342 .00337 .00331 .00325 .00317 .00306 .00289 .00262 .00205 .00040 .00000 .00118 .00507 .00754 .00930 .01064 .01167 .01256 .01346 .01445 .01562 .01709 .01910 .02210 .02718 .03765 .06785] def /F10Z %3x17 data 700 ... 400 [.00958 .01015 .01037 .01053 .01065 .01075 .01085 .01096 .01108 .01122 .01139 .01163 .01201 .01268 .01416 .02078 .01911 .00372 .00361 .00357 .00355 .00352 .00351 .00349 .00347 .00345 .00342 .00339 .00335 .00328 .00316 .00289 .00170 .00200 .00000 .00517 .00718 .00858 .00972 .01063 .01150 .01245 .01354 .01478 .01635 .01856 .02194 .02795 .04136 .10106 .08601] def %*************************************************** /FXYZ 240 array def /XSi 82 array def /YSi 82 array def /ZSi 82 array def /XANSi 82 array def /YANSi 82 array def /ZANSi 82 array def /AANSi 82 array def %actual data for plot, purple colours /BANSi 82 array def 0 1 239 {/i exch def %i=0,239 FXYZ i xcolorl 0 eq {F2 i get put} {F10 i get put} ifelse } for %i=0,239 /YKSUM 0 def %For CIE Illuminant E 0 1 79 {/i exch def %i=0,1,79 /YKSUM YKSUM FXYZ 80 i add get add def } for %i=0,1,79 0 1 79 {/i exch def %i=0,1,79 XSi i FXYZ 00 i add get YKSUM div 100 mul put YSi i FXYZ 80 i add get YKSUM div 100 mul put ZSi i FXYZ 160 i add get YKSUM div 100 mul put /SUM XSi i get YSi i get add ZSi i get add 0.0001 add def XANSi i XSi i get SUM div put YANSi i YSi i get SUM div put ZANSi i ZSi i get SUM div put xchart4 1 le {%xchart4<=1 AANSi i XANSi i get put BANSi i YANSi i get put } if %xchart4<=1 xchart4 2 eq {%xchart4=2 AANSi i XANSi i get xc sub YANSi i get FL add div put BANSi i ZANSi i get YANSi i get FL add div -0.4 mul put } if %xchart4=2 xchart4 3 eq {%xchart4=3 AANSi i XANSi i get xc sub YANSi i get FL add div put BANSi i ZANSi i get YANSi i get FL add div -0.4 mul put } if %xchart4=3 } for %i=0,1,79 /XZi 17 array def /YZi 17 array def /ZZi 17 array def /XANZi 17 array def /YANZi 17 array def /ZANZi 17 array def /AANZi 17 array def %actual data for plot, purple colours /BANZi 17 array def 0 1 16 {/i exch def %i=0,16 %for illuminant E: S(lamdda=100) XZi i xcolorl 0 eq {F02Z} {F10Z} ifelse 00 i add get YKSUM div 100 mul put YZi i xcolorl 0 eq {F02Z} {F10Z} ifelse 17 i add get YKSUM div 100 mul put ZZi i xcolorl 0 eq {F02Z} {F10Z} ifelse 34 i add get YKSUM div 100 mul put /SUM XZi i get YZi i get add ZZi i get add 0.0001 add def XANZi i XZi i get SUM div put YANZi i YZi i get SUM div put ZANZi i ZZi i get SUM div put xchart4 1 le {%xchart4<=1 AANZi i XANZi i get put BANZi i YANZi i get put } if %xchart4<=1 xchart4 2 eq {%xchart4=2 AANZi i XANZi i get xc sub YANZi i get FL add div put BANZi i ZANZi i get YANZi i get FL add div -0.4 mul put } if %xchart4=2 xchart4 3 eq {%xchart4=3 AANZi i XANZi i get xc sub YANZi i get FL add div put BANZi i ZANZi i get YANZi i get FL add div -0.4 mul put } if %xchart4=3 } for %i=0,16 /FL 0.00001 def } bind def %END proz_chromaticity_data %************************************************ /proz_chromaticity_xy {%BEG proz_chromaticity_xy /xtrans8 600 def /ytrans8 400 def xtrans8 ytrans8 translate %for scala and graphic (x,y) 0600 0400 0 0 moveto 4000 0 rlineto stroke 0 0 moveto 0 3200 rlineto stroke %! 100 S-Einheiten = 2000 Skalen-Einheiten TBS 0 -50 moveto 0 100 rlineto stroke 800 -50 moveto 0 100 rlineto stroke 1600 -50 moveto 0 100 rlineto stroke 2400 -50 moveto 0 100 rlineto stroke 3200 -50 moveto 0 100 rlineto stroke 4000 -50 moveto 0 100 rlineto stroke -100 -300 moveto (0,0) show 700 -300 moveto (0,2) show 1500 -300 moveto (0,4) show 2300 -300 moveto (0,6) show 3100 -300 moveto (0,8) show 3900 -300 moveto (1,0) show %! 100 S-Einheiten = 2000 Skalen-Einheiten -50 0 moveto 100 0 rlineto stroke -50 800 moveto 100 0 rlineto stroke -50 1600 moveto 100 0 rlineto stroke -50 2400 moveto 100 0 rlineto stroke -50 3200 moveto 100 0 rlineto stroke -450 -80 moveto (0,0) show -450 720 moveto (0,2) show -450 1520 moveto (0,4) show -450 2320 moveto (0,6) show -450 3120 moveto (0,8) show TIS 4200 150 moveto (x) show xcolorl 1 eq {TL 0 -40 rmoveto (10) show 0 40 rmoveto TIS} if -300 2800 moveto (y) show xcolorl 1 eq {TL 0 -40 rmoveto (10) show 0 40 rmoveto TIS} if TBIS 2600 150 moveto xcolorl 0 eq {(CIE 1931) show} if xcolorl 1 eq {(CIE 1964) show} if newpath /fakt 4000 def 5 1 60 {/i exch def %i=5,60 AANSi i get fakt mul BANSi i get fakt mul i 05 eq {moveto} if i 06 ge i 59 le and {lineto} if i 60 eq {lineto closepath stroke} if } for %i=5,60 /xytshift 320 array def %min 4x65 /xytshift [ 0 000 000 (380) %0 0 000 000 (385) %1 0 000 000 (390) %2 0 000 000 (395) %3 1 -170 -170 (400) %4 0 000 000 (405) %5 0 000 000 (410) %6 0 000 000 (415) %7 0 000 000 (420) %8 0 000 000 (425) %9 0 000 000 (430) %10 0 000 000 (435) %11 0 000 000 (440) %12 0 000 000 (445) %13 1 -300 -050 (450) %14 S 0 000 000 (455) %15 0 000 000 (460) %16 0 000 000 (465) %17 0 000 000 (470) %18 1 -300 -030 (475) %19 0 000 000 (480) %20 0 000 000 (485) %21 1 -330 -050 (490) %22 1 -270 000 (495) %23 M=S 1 -300 -050 (500) %24 1 -300 -050 (505) %25 1 -330 -050 (510) %26 L=S 1 -300 050 (515) %27 1 -100 070 (520) %28 1 100 000 (525) %29 1 000 000 ( ) %30 1 050 000 (535) %31 1 000 000 ( ) %32 M 1 000 000 ( ) %33 1 050 030 (550) %34 1 000 000 ( ) %35 1 050 030 (560) %36 1 000 000 ( ) %37 1 050 030 (570) %38 L 1 000 000 ( ) %39 1 050 030 (580) %40 1 050 050 ( ) %41 1 050 030 (590) %42 1 050 050 ( ) %43 1 050 030 (600) %44 0 000 000 ( ) %45 1 050 070 (610) %46 0 000 000 ( ) %47 1 050 050 (620) %48 0 000 000 ( ) %49 0 000 000 (630) %50 0 000 000 ( ) %51 1 050 030 (640) %52 0 000 000 (645) %53 0 000 000 (650) %54 0 000 000 (655) %55 0 000 000 (660) %56 0 000 000 (665) %57 0 000 000 (670) %58 0 000 000 (675) %59 0 000 000 (680) %60 0 000 000 (685) %61 0 000 000 (690) %62 0 000 000 (695) %63 1 100 -50 (700) %64 ] def 0 1 64 {/i exch def %i=5,1,60 /i40 i 4 mul def xytshift i40 get 1 eq {%xytshift=1 0 0 0 0 setcmykcolor AANSi i get fakt mul BANSi i get fakt mul 30 0 360 arc fill %400,425,...,700 0 0 0 1 setcmykcolor AANSi i get fakt mul BANSi i get fakt mul 30 0 360 arc stroke %400,425,...,700 } if %xytshift=1 } for %i=5,1,60 TBIL 0 1 59 {/i exch def %i=0,65 /i40 i 4 mul def /i41 i40 1 add def /i42 i40 2 add def /i43 i40 3 add def xytshift i40 get 1 eq {%xytshift=1 AANSi i get fakt mul xytshift i41 get add BANSi i get fakt mul xytshift i42 get add moveto xytshift i43 get show } if %xytshift=1 } for %i=0,65 newpath /xytshiftZ 320 array def %min 4x65 /xytshiftZ [ 1 100 -50 (700) %0 see normal 1 050 -100 (495c,E) %1 1 050 -100 (500c,E) %2 0 050 -100 (505c,E) %3 1 100 -60 (510c,E) %4 0 050 -100 (515c,E) %5 0 050 -100 (520c,E) %6 1 050 -100 (525c,E) %7 0 050 -100 (530c,E) %8 0 050 -100 (535c,E) %9 0 050 -100 (540c,E) %10 0 050 -100 (545c,E) %11 1 050 -100 (550c,E) %12 0 050 -100 (555c,E) %13 0 050 -100 (560c,E) %14 S 1 050 -100 (565c,E) %15 0 -100 -150 (400) %16 see normal ] def 0 1 16 {/i exch def %i=5,5,60 /i40 i 4 mul def xytshiftZ i40 get 1 eq {%xytshiftZ=1 0 0 0 0 setcmykcolor AANZi i get fakt mul BANZi i get fakt mul 30 0 360 arc fill %400,405,...,700 0 0 0 1 setcmykcolor AANZi i get fakt mul BANZi i get fakt mul 30 0 360 arc stroke %400,405,...,700 } if %xytshiftZ=1 } for %i=0,1,16 TBIL 0 1 16 {/i exch def %i=0,16 /i40 i 4 mul def /i41 i40 1 add def /i42 i40 2 add def /i43 i40 3 add def xytshiftZ i40 get 1 eq {%xytshiftZ=1 AANZi i get fakt mul xytshiftZ i41 get add BANZi i get fakt mul xytshiftZ i42 get add moveto xytshiftZ i43 get show } if %xytshiftZ=1 } for %i=0,16 xtrans8 neg ytrans8 neg translate %scala & graphic (x,y) 0600 0400 } bind def %END proz_chromaticity_xy %************************************************ /proz_chromaticity_a2b2 {%BEG proz_chromaticity_a2b2 /FL 0.00001 def /fakt 1000 def /xtrans8 0500 def /ytrans8 3200 def xtrans8 ytrans8 translate %scala & graphic (a2,b2) 0500 3200 0 400 moveto 4000 0 rlineto stroke 0 400 moveto 0 -3600 rlineto stroke %! 100 S-Einheiten = 2000 Skalen-Einheiten TBS 0 350 moveto 0 100 rlineto stroke 800 350 moveto 0 100 rlineto stroke 1600 350 moveto 0 100 rlineto stroke 2400 350 moveto 0 100 rlineto stroke 3200 350 moveto 0 100 rlineto stroke 4000 350 moveto 0 100 rlineto stroke -150 500 moveto (-0,8) show 650 500 moveto (0,0) show 1450 500 moveto (0,8) show 2250 500 moveto (1,6) show 3050 500 moveto (2,4) show 3850 500 moveto (3,2) show %! 100 S-Einheiten = 2000 Skalen-Einheiten -50 0 moveto 100 0 rlineto stroke -50 -800 moveto 100 0 rlineto stroke -50 -1600 moveto 100 0 rlineto stroke -50 -2400 moveto 100 0 rlineto stroke -50 -3200 moveto 100 0 rlineto stroke -450 -100 moveto ( 0,0) show -450 -900 moveto (-0,8) show -450 -1700 moveto (-1,6) show %-450 -2500 moveto (-2,4) show -175 -3050 moveto 90 rotate TBIS (b) show TL 0 -40 rmoveto (2) show 0 40 rmoveto TIS 20 0 rmoveto xcolorl 1 eq {TL 0 -40 rmoveto (,10) show 0 40 rmoveto TIS} if TBS (=-0,40) show 20 0 rmoveto TBIS (z) show 20 0 rmoveto xcolorl 1 eq {TL 0 -40 rmoveto (10) show 0 40 rmoveto TIS} if TBIS (/y) show xcolorl 1 eq {TL 0 -40 rmoveto (10) show 0 40 rmoveto TIS} if -90 rotate 3450 150 moveto TBIS (a) show 20 0 rmoveto TL 0 -40 rmoveto (2) show 0 40 rmoveto TIS 20 0 rmoveto xcolorl 1 eq {TL 0 -40 rmoveto (,10) show 0 40 rmoveto TIS} if TBS (=\050) show 20 0 rmoveto TBIS (x) show 20 0 rmoveto xcolorl 1 eq {TL 0 -40 rmoveto (10) show 0 40 rmoveto TIS} if TBS (-0,110\051/) show 20 0 rmoveto TBIS (y) show 20 0 rmoveto xcolorl 1 eq {TL 0 -40 rmoveto (10) show 0 40 rmoveto TIS} if xtrans8 neg ytrans8 neg translate %scala & graphic (a2,b2) 0500 3200 newpath /fakt 1000 def /xtrans8 1300 def /ytrans8 3200 def xtrans8 ytrans8 translate %scala & graphic (a2,b2) 1300 3200 5 1 60 {/i exch def %i=5,60 AANSi i get fakt mul BANSi i get fakt mul i 05 eq {moveto} if i 06 ge i 59 le and {lineto} if i 60 eq {lineto closepath stroke} if } for %i=5,60 /xytshift 320 array def %min 4x65 /xytshift [ 0 000 000 (380) %0 0 000 000 (385) %1 0 000 000 (390) %2 0 000 000 (395) %3 1 -170 -170 (400) %4 0 000 000 (405) %5 0 000 000 (410) %6 0 000 000 (415) %7 0 000 000 (420) %8 0 000 000 (425) %9 0 000 000 (430) %10 0 000 000 (435) %11 0 000 000 (440) %12 0 000 000 (445) %13 1 -300 -050 (450) %14 S 0 000 000 (455) %15 0 000 000 (460) %16 0 000 000 (465) %17 0 000 000 (470) %18 1 -300 -030 (475) %19 0 000 000 (480) %20 0 000 000 (485) %21 1 -330 -050 (490) %22 1 -270 000 (495) %23 M=S 1 -300 -050 (500) %24 0 -300 -050 (505) %25 1 -330 -050 (510) %26 L=S 0 -300 050 (515) %27 1 -150 070 (520) %28 0 100 000 (525) %29 0 000 000 ( ) %30 0 050 000 (535) %31 1 -80 070 (540) %32 M 0 000 000 ( ) %33 0 000 030 (550) %34 0 000 000 ( ) %35 1 -80 070 (560) %36 0 000 000 ( ) %37 0 050 000 (570) %38 L 0 000 000 ( ) %39 1 050 070 (580) %40 0 050 050 ( ) %41 0 050 030 (590) %42 0 050 050 ( ) %43 1 -80 070 (600) %44 0 000 000 ( ) %45 0 050 070 (610) %46 0 000 000 ( ) %47 1 -80 050 (620) %48 0 000 000 ( ) %49 0 000 000 (630) %50 0 000 000 ( ) %51 1 -80 030 (640) %52 0 000 000 (645) %53 0 000 000 (650) %54 0 000 000 (655) %55 0 000 000 (660) %56 0 000 000 (665) %57 0 000 000 (670) %58 0 000 000 (675) %59 0 000 000 (680) %60 0 000 000 (685) %61 0 000 000 (690) %62 0 000 000 (695) %63 1 100 -50 (700) %64 ] def 0 1 64 {/i exch def %i=5,1,60 /i40 i 4 mul def xytshift i40 get 1 eq {%xytshift=1 0 0 0 0 setcmykcolor AANSi i get fakt mul BANSi i get fakt mul 30 0 360 arc fill %400,425,...,700 0 0 0 1 setcmykcolor AANSi i get fakt mul BANSi i get fakt mul 30 0 360 arc stroke %400,425,...,700 } if %xytshift=1 } for %i=5,1,60 TBIL 0 1 59 {/i exch def %i=0,65 /i40 i 4 mul def /i41 i40 1 add def /i42 i40 2 add def /i43 i40 3 add def xytshift i40 get 1 eq {%xytshift=1 AANSi i get fakt mul xytshift i41 get add BANSi i get fakt mul xytshift i42 get add moveto xytshift i43 get show } if %xytshift=1 } for %i=0,65 newpath /xytshiftZ 320 array def %min 4x65 /xytshiftZ [ 1 100 -50 (700) %0 see normal 1 050 -100 (495c,E) %1 1 050 -100 (500c,E) %2 0 050 -100 (505c,E) %3 1 100 -60 (510c,E) %4 0 050 -100 (515c,E) %5 0 050 -100 (520c,E) %6 1 050 -100 (525c,E) %7 0 050 -100 (530c,E) %8 0 050 -100 (535c,E) %9 0 050 -100 (540c,E) %10 0 050 -100 (545c,E) %11 1 050 -100 (550c,E) %12 0 050 -100 (555c,E) %13 0 050 -100 (560c,E) %14 S 1 050 -100 (565c,E) %15 0 -100 -150 (400) %16 see normal ] def 0 1 16 {/i exch def %i=5,5,60 /i40 i 4 mul def xytshiftZ i40 get 1 eq {%xytshiftZ=1 0 0 0 0 setcmykcolor AANZi i get fakt mul BANZi i get fakt mul 30 0 360 arc fill %400,405,...,700 0 0 0 1 setcmykcolor AANZi i get fakt mul BANZi i get fakt mul 30 0 360 arc stroke %400,405,...,700 } if %xytshiftZ=1 } for %i=0,1,16 TBIL 0 1 16 {/i exch def %i=0,16 /i40 i 4 mul def /i41 i40 1 add def /i42 i40 2 add def /i43 i40 3 add def xytshiftZ i40 get 1 eq {%xytshiftZ=1 AANZi i get fakt mul xytshiftZ i41 get add BANZi i get fakt mul xytshiftZ i42 get add moveto xytshiftZ i43 get show } if %xytshiftZ=1 } for %i=0,16 xtrans8 neg ytrans8 neg translate %scala & graphic (a2,b2) 1300 3200 } bind def %END proz_chromaticity_a2,b2 %***************************************************************** %%EndProlog gsave %lanindL2.EPS START 20000505 /lanind 0 def /lantex [(G) (E) (S) (F) (I) (J) (M)] def /showde {0 lanind eq {show} {pop} ifelse} bind def /showen {1 lanind eq {show} {pop} ifelse} bind def /showes {2 lanind eq {show} {pop} ifelse} bind def /showfr {3 lanind eq {show} {pop} ifelse} bind def /showit {4 lanind eq {show} {pop} ifelse} bind def /showjp {5 lanind eq {show} {pop} ifelse} bind def /showea {1 lanind le {show} {pop} ifelse} bind def /lanindf where {pop /lanind1 lanindf def /lanind2 lanindf def /lanindd laninddf def} {/lanind1 0 def /lanind2 0 def} ifelse /colormf where {pop /colorm1 colormf def /colorm2 colormf def /colormd colormdf def} {/colorm1 0 def} ifelse /deintpf where {pop /deintp1 deintpf def /deintp2 deintpf def /deintpd deintpdf def} {/deintp1 0 def} ifelse /xcolorf where {pop /xcolor1 xcolorf def /xcolor2 xcolorf def /xcolord xcolordf def} {/xcolor1 0 def} ifelse /xchartf where {pop /xchart1 xchartf def /xchart2 xchartf def /xchartd xchartdf def /xchartm xchart2f xchart1f sub 1 add def} {/xchart1 1 def /xchartm 1 def} ifelse /xchart3f where {pop /xchart3 xchart3f def} {/xchart3 0 def} ifelse /xchart4f where {pop /xchart4 xchart4f def} {/xchart4 0 def} ifelse /pchartf where {pop /pchart1 pchartf def /pchart2 pchartf def /pchartd pchartdf def} {/pchart1 3 def} ifelse /colsepf where {pop /colsep1 colsepf def /colsep2 colsepf def /colsepd colsepdf def} {/colsep1 0 def} ifelse /pmetamf where {pop /pmetam1 pmetamf def /pmetam2 pmetamf def /pmetamd pmetamdf def} {/pmetam1 0 def} ifelse %either defaul values for xchart=0 or values for xchart=1 /lanind lanind1 def % /colorm colorm1 def % /deintp deintp1 def % /xcolor xcolor1 def % /xchart xchart1 def % /pchart pchart1 def % /colsep colsep1 def % /pmetam pmetam1 def % colorm 0 eq deintp 0 eq and {/Txx (d) def} if %colorm=0, deintp=0 colorm 0 eq deintp 1 eq and {/Txx (e) def} if %colorm=0, deintp=1 colorm 1 eq deintp 0 eq and {/Txx (dd) def} if %colorm=1, deintp=0 colorm 1 eq deintp 1 eq and {/Txx (de) def} if %colorm=1, deintp=1 xchart 0 eq {/Txx (-) def} if %always independent of intended output gsave %LANINDL2 END /cvishow {cvi 6 string cvs show ( ) show} def /cvsshow1 {10 mul cvi 0.1 mul 9 string cvs show ( ) show} def /cvsshow2 {100 mul cvi 0.01 mul 9 string cvs show ( ) show} def /cvsshow3 {1000 mul cvi 0.001 mul 9 string cvs show ( ) show} def /cvsshow4 {10000 mul cvi 0.0001 mul 9 string cvs show ( ) show} def /cvsshow5 {100000 mul cvi 0.00001 mul 9 string cvs show ( ) show} def /TELi 8 array def /xchart8 1 def %0:Pxx, 1:Dxx xchart8 0 eq {%xchart8=0 Pxx /TELi [(P60) (P55) (P50) (P45) (P40) (P35) (P30) (P25)] def %7 illumin. } if %xchart8=0 xchart8 1 eq {%xchart8=1 Dxx /TELi [(D65) (D50) (P40) (A00) (E00) (C00) (P00) (Q00)] def %7 illumin. } if %xchart8=1 /SD65 82 array def %380 bis 775 mit deltalambda=05 /SD50 82 array def %380 bis 775 mit deltalambda=05 /SP40 82 array def %380 bis 775 mit deltalambda=05 /SA00 82 array def %380 bis 775 mit deltalambda=05 /SE00 82 array def %380 bis 775 mit deltalambda=05 /SC00 82 array def %380 bis 775 mit deltalambda=05 /SP00 82 array def %380 bis 775 mit deltalambda=05 /SQ00 82 array def %380 bis 775 mit deltalambda=05 /SDAK 82 array def %380 bis 775 mit deltalambda=05 /RA 82 array def %380 bis 770 nm /F2 240 array def %3 x 80 Daten fuer Bereich 380 bis 770nm /F2N 240 array def %normiert auf Y=100 fuer D65 und 10nm /F10 240 array def %3 x 80 Daten fuer Bereich 380 bis 770nm %C %C LITERATURQUELLEN LICHTARTEN %C SA,SC,SD65, CIE-DOKUMENT NR.15 FARBMESSUNG, 1971 %C TABELLE 1.1.1, SEITE 81 %C SD55,SD75, CIE-DOKUMENT NR.15 FARBMESSUNG, 1971 %C TABELLE 1.1.4, SEITE 85 %C LINEAR INTERPOLIERT VON 5 ZU 5NM %C SG,SP,SXE, DIN 5033, BLATT 7 ,SEITE 8-9 %C AUSGABE 1966 /SD65 %80 data 5 nm [50.0 52.3 54.6 68.7 82.8 87.1 91.5 92.5 93.4 90.1 86.7 95.8 104.9 110.9 117.0 117.4 117.8 116.3 114.9 115.4 115.9 112.4 108.8 109.1 109.4 108.6 107.8 106.3 104.8 106.2 107.7 106.0 104.4 104.2 104.0 102.0 100.0 98.2 96.3 96.1 95.8 92.2 88.7 89.3 90.0 89.8 89.6 88.6 87.7 85.5 83.3 83.5 83.7 81.9 80.0 80.1 80.2 81.2 82.3 80.3 78.3 74.0 69.7 70.7 71.6 73.0 74.3 68.0 61.6 65.7 69.9 72.5 75.1 69.3 63.6 55.0 46.4 56.6 66.8 65.1] def /SD50 %80 data 5 nm CIE 15.3, Seite 30; aus JE540-1N.PS [24.5 27.2 29.9 39.6 49.3 52.9 56.5 58.3 60.0 58.9 57.8 66.3 74.8 81.0 87.2 88.9 90.6 91.0 91.4 93.2 95.1 93.5 92.0 93.8 95.7 96.2 96.6 96.8 97.1 99.6 102.1 101.4 100.8 101.5 102.3 101.2 100.0 98.9 97.7 98.3 98.9 96.2 93.5 95.6 97.7 98.5 99.3 99.2 99.0 97.4 95.7 97.3 98.9 97.3 95.7 96.9 98.2 100.6 103.0 101.1 99.1 93.3 87.4 89.5 91.6 92.2 92.9 84.9 76.9 81.7 86.5 89.5 92.6 85.4 78.2 68.0 57.7 70.3 82.9 0.0] def %0.0 not used /SA00 %80 data 5 nm CIE 15.3 Seite 30; aus JE540-1N.PS [9.80 10.90 12.09 13.35 14.71 16.15 17.68 19.29 20.99 22.79 24.67 26.64 28.70 30.85 33.09 35.41 37.81 40.30 42.87 45.52 48.24 51.04 53.91 56.85 59.86 62.93 66.06 69.25 72.50 75.79 79.13 82.52 85.95 89.41 92.91 96.44 100.00 103.58 107.18 110.80 114.44 118.08 121.73 125.39 129.04 132.70 136.35 139.99 143.62 147.24 150.84 154.42 157.98 161.52 165.03 168.51 171.96 175.38 178.77 182.12 185.43 188.70 191.93 195.12 198.26 201.36 204.41 207.41 210.36 213.27 216.12 218.92 221.67 224.36 227.00 229.59 232.12 234.59 237.01 239.37 0.0] def %0.0 not used % AUS BILDPLA.FOR aus vrbam/wrpos:KRPROG.FOR, 5987-6023 5.10.92 %C PROGRAMM ZUR BERECHNUNG DER RELATIVEN SPEKTRALEN STRAHLUNGSVERTEI- %C LUNG EINES HOHLRAUMSTRAHLERS ALS FUNKTION DER WELLENLAENGE LAMDA %C BEI GEGEBENER TEMPERATUR T %C VERWENDETE VARIABLE %C T TEMPERATUR %C C2 PLANCKSCHE KONSTANTE (=1.4388 CM K (1967)) %C LAMDA(I) WELLENLAENGE %C S(I) STRAHLUNGSVERTEILUNG DES HOHLRAUMSTRAHLERS %C %C LITERATUR OFFIZIELLE EMPFEHLUNGEN DER CIE,DEUTSCHE VERSION, %C CA. 1969, SEITE 21 UND TABELLE 1.1.1 %C %SDP4 82 array def %380 bis 775 mit deltalambda=05 % DO 50 I=1,54 % 50 S(I)=100. % 1*(560./FLOAT(LAMDA(I)))**5 % 2*(EXP(C2/(560.*10.**(-7)*T))-1.) % 3/(EXP(C2/(FLOAT(LAMDA(I))*10.**(-7)*T))-1.) %new CIE 15.3:2004, Eq. (3.1) page 2 %S(I) = [100{560/lambda}**5] [exp{(c2*10**7)/(TNC*560 )} - 1] % /[exp{(c2*10**7)/(TNC*lambda)} - 1] % exp = e {...} = 2.71 {...} %/TNC 2848 def %NLA /EE 2.718281 def %e=mac pocket calculator /C2 1.4350000 10 7 exp mul def /lamd 82 array def xchart8 1 eq {%xchart8=1 Dxx /TNC 4000 def %******************************************** 0 1 79 {%i=0,79 /i exch def /lambda 380 i 5 mul add def lamd i lambda put /E1 560 lambda div 5 exp def /E4 C2 TNC 560 mul div def /E5 C2 TNC lambda mul div def /E6 EE E4 exp def /E7 EE E5 exp def SP40 i E1 100 mul E6 1 sub E7 1 sub div mul put } for %i=0,79 } if %xchart8=1 Dxx %****************************************** xchart8 0 eq {%xchart8=0 Pxx %defined only for xchart8=0 Pxx /TNCj 8 array def /TNCj [6000 5500 5000 4500 4000 3500 3000 2500] def /SP60 82 array def %380 bis 775 mit deltalambda=05 /SP55 82 array def %380 bis 775 mit deltalambda=05 /SP50 82 array def %380 bis 775 mit deltalambda=05 /SP45 82 array def %380 bis 775 mit deltalambda=05 /SP40 82 array def %380 bis 775 mit deltalambda=05 /SP35 82 array def %380 bis 775 mit deltalambda=05 /SP30 82 array def %380 bis 775 mit deltalambda=05 /SP25 82 array def %380 bis 775 mit deltalambda=05 0 1 7 {/j exch def %j=0,7 0 1 79 {%i=0,79 /i exch def /lambda 380 i 5 mul add def lamd i lambda put /E1 560 lambda div 5 exp def /E4 C2 TNCj j get 560 mul div def /E5 C2 TNCj j get lambda mul div def /E6 EE E4 exp def /E7 EE E5 exp def j 0 eq {SP60 i} if j 1 eq {SP55 i} if j 2 eq {SP50 i} if j 3 eq {SP45 i} if j 4 eq {SP40 i} if j 5 eq {SP35 i} if j 6 eq {SP30 i} if j 7 eq {SP25 i} if E1 100 mul E6 1 sub E7 1 sub div mul put } for %i=0,79 } for %j=0,7 } if %xchart8=0 %************************************************* /SE00 %80 data 5 nm [100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0] def %0.0 not used /SC00 %80 data 5 nm [ 33.00 39.92 47.40 55.17 63.30 71.81 80.60 89.53 98.10 105.80 112.40 117.75 121.50 123.45 124.00 123.60 123.10 123.30 123.80 124.09 123.90 122.92 120.70 116.90 112.10 106.98 102.30 98.81 96.90 96.78 98.00 99.94 102.10 103.95 105.20 105.67 105.30 104.11 102.30 100.15 97.80 95.43 93.20 91.22 89.70 88.83 88.40 88.19 88.10 88.06 88.00 87.86 87.80 87.99 88.20 88.20 87.90 87.22 86.30 85.30 84.00 82.21 80.20 78.24 76.30 74.36 72.40 70.40 68.30 66.30 64.40 62.80 61.50 60.20 59.20 58.50 58.10 58.00 58.20 58.50 ] def %0.0 not used 0 1 79 {/i exch def %i=0,79 /lamda 380 i 5 mul add def SP00 i SE00 i get lamda 560 div mul put SQ00 i SE00 i get 1120 lamda sub 560 div mul put } for %i=0,79 %C LITERATURQUELLEN SPEKTRALWERTE %C F2 CIE-DOKUMENT NR.15 FARBMESSUNG, 1971 %C TABELLE 2.1, SEITE 93-102 /F2 %3x80 data [.001368 .002236 .004243 .007650 .01431 .02319 .04351 .07763 .1344 .2148 .2839 .3285 .3483 .3481 .3362 .3187 .2908 .2511 .1954 .1421 .09564 .05795 .03201 .01470 .0049 .0024 .0093 .0291 .06327 .1096 .1655 .2257 .2904 .3597 .4334 .5121 .5945 .6784 .7621 .8425 .9163 .9786 1.0263 1.0567 1.0622 1.0456 1.0026 .9384 .8544 .7514 .6424 .5419 .4479 .3608 .2835 .2187 .1649 .1212 .0874 .0636 .04677 .03290 .02270 .01584 .01136 .00811 .00579 .004109 .002899 .002049 .001440 .0009999 .0006901 .000476 .0003323 .0002348 .0001662 .0001174 .00008308 .00005871 .000039 .000064 .00012 .000217 .000396 .00064 .00121 .00218 .004 .0073 .0116 .01684 .023 .0298 .0380 .048 .06 .0739 .09098 .1126 .139 .1693 .208 .2586 .323 .4073 .503 .6082 .71 .7932 .862 .9149 .954 .9803 .995 1.0 .995 .9786 .952 .9154 .870 .8163 .757 .6949 .631 .5668 .503 .4412 .381 .321 .265 .217 .175 .1382 .107 .0816 .061 .04458 .032 .0232 .017 .01192 .00821 .005723 .004102 .002929 .002091 .001484 .001047 .00074 .00052 .0003611 .0002492 .0001719 .00012 .0000848 .00006 .0000424 .00003 .0000212 .00645 .01055 .02005 .03621 .06785 .1102 .2074 .3713 .6456 1.0391 1.3856 1.623 1.7471 1.7826 1.7721 1.7441 1.6692 1.5281 1.2876 1.0419 .8130 .6162 .4652 .3533 .2720 .2123 .1582 .1117 .07825 .05725 .04216 .02984 .0203 .0134 .00875 .00575 .0039 .00275 .0021 .0018 .00165 .0014 .0011 .0010 .0008 .0006 .00034 .00024 .00019 .0001 .00005 .00003 .00002 .00001 % 26*0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 %10 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 %20 0.0 0.0 0.0 0.0 0.0 0.0 %26 ] def /F10 %3x80 data [.00016 .0006624 .002362 .007242 .01911 .0434 .08474 .1406 .2045 .2647 .3147 .3577 .3837 .3867 .3707 .343 .3023 .2541 .1956 .1323 .08051 .04107 .01617 .005132 .003816 .01544 .03746 .07136 .1177 .173 .2365 .3042 .3768 .4516 .5298 .6161 .7052 .7938 .8787 .9512 1.0142 1.0743 1.1185 1.1343 1.124 1.0891 1.0305 .9507 .8563 .7549 .6475 .5351 .4316 .3437 .2683 .2043 .1526 .1122 .08126 .05793 .04085 .02862 .019941 .01384 .0100 .006605 .004552 .003145 .002175 .001506 .001045 .0007274 .0005083 .0003564 .000251 .0001777 .0001264 .00009015 .00006453 .00004634 .00001736 .00007156 .0002534 .0007685 .002004 .004509 .008756 .01446 .02139 .0295 .03868 .0496 .06208 .0747 .08946 .1063 .1282 .1528 .1852 .2199 .2536 .2977 .3391 .3954 .4608 .5314 .6067 .6857 .7618 .8233 .8752 .9238 .962 .9822 .9918 .9991 .9973 .9824 .9555 .9152 .8689 .8256 .7774 .7203 .6583 .5939 .528 .4618 .3981 .3395 .2835 .2282 .1798 .1402 .1076 .08119 .06028 .0441 .0318 .0226 .0159 .01113 .007749 .0053751 .0037177 .002565 .001768 .001222 .0008462 .0005864 .0004074 .000284 .0001987 .0001395 .00009843 .00006982 .00004974 .00003554 .00002549 .00001834 .0007048 .002928 .01048 .03234 .08601 .1971 .3894 .6568 .9725 1.2825 1.5535 1.7985 1.9673 2.0273 1.9948 1.9007 1.7454 1.5549 1.3176 1.0302 .7721 .5701 .4152 .3024 .2185 .1592 .112 .08225 .06071 .04305 .03045 .02058 .01368 .007918 .003988 .001091 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 %10 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 %20 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 %30 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 %40 0.0 0.0 0.0 0.0 %44 ] def %calculation of transformation data /FARBE 30 array def /FARBE [(R) (m) ( 561_770) %00 (Y) (m) ( 520_770) %01 (G) (m) ( 475_573) %02 (C) (m) ( 380_561) %03 (B) (m) ( 380_520) %04 (M) (m) ( 573_475) %05 (G) (o) ( 520_570) %06 (M) (o) ( 570_520) %07 (W) (0) ( 380_770) %08 (N) (0) ( 380_770) %09 ] def /xshift 10 array def %max 6 device + 4 elementary /yshift 10 array def /colori 10 array def /RX0 720 array def %9x80 /RX0 [ %(%Rm 00 560_770) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0036 0036 0036 0036 0036 0036 0468 0900 0900 0900 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %(%Ym 01 520_770) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0036 0036 0036 0036 0036 0036 0036 0036 0468 0900 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %(%Gm 02 475_575) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0036 0036 0036 0036 0036 0036 0036 0036 0036 0468 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0900 0900 0900 0900 0900 0900 0900 0900 0900 0468 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %(%Cm 03 380_560) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0900 0900 0900 0900 0900 0900 0468 0036 0036 0036 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %(%Bm 04 380_520) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0900 0900 0900 0900 0900 0900 0900 0900 0468 0036 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %(%Mm 05 575_475) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0900 0900 0900 0900 0900 0900 0900 0900 0900 0468 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0036 0036 0036 0036 0036 0036 0036 0036 0036 0468 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %(%Go 06 520_570) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0036 0036 0036 0036 0036 0036 0036 0036 0468 0900 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0900 0900 0900 0900 0900 0900 0900 0900 0468 0036 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %(%Mo 07 570_520) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0900 0900 0900 0900 0900 0900 0900 0900 0468 0036 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0036 0036 0036 0036 0036 0036 0036 0036 0468 0900 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %(%W0(r=0,900) 08 380_770) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %(%N0(r=0,036) 09 380_770) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 ] def /xcol10_BS {TBL 0 -50 rmoveto (10) show 0 50 rmoveto TBS} bind def /xcol10KBS {TBL 0 -50 rmoveto (,10) show 0 50 rmoveto TBS} bind def /xcolorl xcolor def 0 1 0 {/xcolorl exch def %xcolorl=0,0 xcolorl 1 eq {0 1 239 {/i exch def %i=0,239 F2 i F10 i get put } for %i=0,239 } if /YKSUM 0 def %For CIE Illuminant E 0 1 79 {/i exch def %i=0,1,79 /YKSUM YKSUM F2 80 i add get add def } for %i=0,1,79 /F2N 240 array def 0 1 79 {/i exch def %i=0,1,79 F2N 00 i add F2 00 i add get YKSUM div 100 mul put F2N 80 i add F2 80 i add get YKSUM div 100 mul put F2N 160 i add F2 160 i add get YKSUM div 100 mul put } for %i=0,1,79 /FXN 82 array def %FXN 0 = F2N imax /FYN 82 array def /FZN 82 array def %defines FXN, FYN, FZN 0 to 79 0 1 79 {/i exch def %i=0,79 FXN i F2N 000 i add get put FYN i F2N 080 i add get put FZN i F2N 160 i add get put } for %i=0,79 %special wavelength range with complementary colours for E? /FXD 63 array def /FYD 63 array def /FZD 63 array def /DOW 63 array def 00 1 60 {/i exch def %i=0,60 %range 400..700nm FXD i FXN 005 i add get put FYD i FYN 005 i add get put FZD i FZN 005 i add get put DOW i 400 i 5 mul add put %range 400 to 700 } for %i=0,60 %for interpolation FXD 61 FXD 60 get put FYD 61 FYD 60 get put FZD 61 FZD 60 get put FXD 62 FXD 60 get put FYD 62 FYD 60 get put FZD 62 FZD 60 get put /FAD 63 array def /FBD 63 array def /FCD 63 array def 20 setlinewidth /xdel 1005 def /ydel 395 def /x0 050 def /x1 -150 def /Xi 82 array def %80 spectral colours 380 to 775nm /Yi 82 array def /Zi 82 array def /XANi 82 array def /YANi 82 array def /ZANi 82 array def /AANi 82 array def %actual data for plot, spectral colours /BANi 82 array def /FXNZ 17 array def /FYNZ 17 array def /FZNZ 17 array def /XZi 17 array def /YZi 17 array def /ZZi 17 array def /XANZi 17 array def /YANZi 17 array def /ZANZi 17 array def /AANZi 17 array def %actual data for plot, purple colours /BANZi 17 array def /XRj 10 array def %10 spectral or max 10 device colours /YRj 10 array def /ZRj 10 array def /XANRj 10 array def /YANRj 10 array def /ZANRj 10 array def /XSj 10 array def %10 spectral or max 10 device atagonistic colours /YSj 10 array def /ZSj 10 array def /XANSj 10 array def /YANSj 10 array def /ZANSj 10 array def /XCj 10 array def %10 spectral from continuous colours /YCj 10 array def /ZCj 10 array def /XANCj 10 array def /YANCj 10 array def /ZANCj 10 array def /XAj 10 array def %10 spectral from continuous colours /YAj 10 array def /ZAj 10 array def /XANAj 10 array def /YANAj 10 array def /ZANAj 10 array def /RAk 82 array def 2 1 2 {/xchart4 exch def %xchart4=0,7 /xchartl xchart def %0 1 7 {/xchartl exch def %xchartl=0,7 %/YF 0 def %for normalization 1 /YF 1 def %for normalization 0,900 YF 0 eq {/YFR 1.00 def}{/YFR 0.90 def} ifelse gsave 5 /Times-ISOL1 FS /cvishow {cvi 6 string cvs show} def %75 85 moveto %lanind cvishow (-) show %colorm cvishow %deintp cvishow %xcolorl cvishow %xchart cvishow %pchart cvishow %colsep cvishow (-L) show pmetam cvishow 5 /Times-ISOL1 FS 72 86 moveto (egw41-3a enh31-3n) show 72 90 translate 0.010 MM dup scale 25 setlinewidth 0 0 0 0 setcmyk_olvcolor 0 0 moveto 6000 0 rlineto 0 4000 rlineto 6000 neg 0 rlineto closepath fill 0 0 moveto 6000 0 rlineto 0 4000 rlineto -6000 0 rlineto closepath clip 0 0 0 1 setcmyk_olvcolor 0 0 moveto 6000 0 rlineto 0 4000 rlineto 6000 neg 0 rlineto closepath stroke %calculation of XW,YW,ZW for 8 illuminants Dxx or Pxx 0 1 79 {/i exch def %i=0,79 SDAK i xchart8 0 eq {%xchart8=0 Pxx xchartl 0 eq {SP60 i get put} if xchartl 1 eq {SP55 i get put} if xchartl 2 eq {SP50 i get put} if xchartl 3 eq {SP45 i get put} if xchartl 4 eq {SP40 i get put} if xchartl 5 eq {SP35 i get put} if xchartl 6 eq {SP30 i get put} if xchartl 7 eq {SP25 i get put} if }%xchart8=0 Pxx {%xchart8=1 Dxx xchartl 0 eq {SD65 i get put} if xchartl 1 eq {SD50 i get put} if xchartl 2 eq {SP40 i get put} if xchartl 3 eq {SA00 i get put} if xchartl 4 eq {SE00 i get put} if xchartl 5 eq {SC00 i get put} if xchartl 6 eq {SP00 i get put} if xchartl 7 eq {SQ00 i get put} if } ifelse %xchart8=1 Dxx } for %i=0,79 /YKSUM 0 def 0 1 79 {/i exch def %i=0,1,79 /YKSUM YKSUM SDAK i get F2 80 i add get mul add def } for %i=0,1,79 0 1 79 {/i exch def %i=0,1,79 F2N 00 i add SDAK i get F2 00 i add get mul YKSUM div 100 mul put F2N 80 i add SDAK i get F2 80 i add get mul YKSUM div 100 mul put F2N 160 i add SDAK i get F2 160 i add get mul YKSUM div 100 mul put } for %i=0,1,79 %XW,YW,ZW for white /XW 0 def /YW 0 def /ZW 0 def 0 1 079 {/i exch def %i=0,79 /XW XW F2N 00 i add get add def /YW YW F2N 80 i add get add def /ZW ZW F2N 160 i add get add def } for %i=0,79 /SUMW XW YW add ZW add def %for D65, D50, P40, A00, E00 /XANW XW SUMW div def /YANW YW SUMW div def /ZANW ZW SUMW div def /AANW XW YW 0.0001 add div def /BANW ZW YW 0.0001 add div 0.4 mul neg def %************************************************ %XYZRj for 10 reflections 0 1 09 {/j exch def %j=0,9 %10 Reflections /jx j 80 mul def 0 1 79 {/i exch def %i=0,79 RAk i RX0 jx i add get 1000 div put } for %i=0,79 /XR 0 def /YR 0 def /ZR 0 def 0 1 079 {/i exch def %i=0,79 /XR XR F2N 00 i add get RAk i get mul add def /YR YR F2N 80 i add get RAk i get mul add def /ZR ZR F2N 160 i add get RAk i get mul add def } for %i=0,79 XRj j XR put YRj j YR put ZRj j ZR put /SUMR XR YR add ZR add def XANRj j XR SUMR 0.0001 add div put YANRj j YR SUMR 0.0001 add div put ZANRj j ZR SUMR 0.0001 add div put } for %j=0,9 %******************************************* 0 1 62 {/i exch def %i=0,62 FAD i FXD i get put FBD i FYD i get put FCD i FZD i get put } for %i=0,62 % FXU(1)=FF(2)*U(3)-FF(3)*U(2) % FXU(2)=FF(3)*U(1)-FF(1)*U(3) % FXU(3)=FF(1)*U(2)-FF(2)*U(1) % SUBROUTINE DOWEL (F,FXU,IMAX,IO) % DIMENSION F(99,3),FXU(3) % I=1 % T2=F(1,1)*FXU(1)+F(1,2)*FXU(2)+F(1,3)*FXU(3) % IF(T2) 1,1,4 % 1 T1=T2 % I=I+1 % T2=F(I,1)*FXU(1)+F(I,2)*FXU(2)+F(I,3)*FXU(3) % IF(T2) 1,1,2 % 2 IF(T1) 3,3,1 % 3 IO=I-1 % RETURN % 4 T1=F(IMAX,1)*FXU(1)+F(IMAX,2)*FXU(2)+F(IMAX,3)*FXU(3) % IF(T1) 5,5,1 % 5 IO=IMAX % RETURN % END %********************************************************* /proc_ABC_KNP_FWERTiX {%BEG proc_ABC_KNP_FWERT %input FAD,FBD,FCD, KNP %output FWERTiX/Y/Z (i=1,4) kNP 1 ge {/FWERT1X FAD kNP 1 sub get def /FWERT1Y FBD kNP 1 sub get def /FWERT1Z FCD kNP 1 sub get def} {/FWERT1X FAD 0 get def %again 400nm for i=0 /FWERT1Y FBD 0 get def /FWERT1Z FCD 0 get def} ifelse /FWERT2X FAD kNP get def /FWERT2Y FBD kNP get def /FWERT2Z FCD kNP get def /FWERT3X FAD kNP 1 add get def /FWERT3Y FBD kNP 1 add get def /FWERT3Z FCD kNP 1 add get def /FWERT4X FAD kNP 2 add get def /FWERT4Y FBD kNP 2 add get def /FWERT4Z FCD kNP 2 add get def } bind def %END proc_ABC_KNP_FWERTiX %********************************************************* /proc_XIE_TN1 {%BEG proc_XIE_TN1 %input XIE, FWERTiX/Y/Z (i=1,4) %output TN1 /A1N XIE 1 XIE sub mul XIE 2 sub mul 6 div def /A2N XIE 1 add XIE 1 sub mul XIE 2 sub mul 0.5 mul def /A3N XIE 1 add XIE mul 2 XIE sub mul 0.5 mul def /A4N XIE 1 add XIE mul XIE 1 sub mul 6 div def /FNX A1N FWERT1X mul A2N FWERT2X mul add A3N FWERT3X mul add A4N FWERT4X mul add def /FNY A1N FWERT1Y mul A2N FWERT2Y mul add A3N FWERT3Y mul add A4N FWERT4Y mul add def /FNZ A1N FWERT1Z mul A2N FWERT2Z mul add A3N FWERT3Z mul add A4N FWERT4Z mul add def /TNX FNX FXU1 mul FNY FXU2 mul add FNZ FXU3 mul add def } bind def %END proc_XIE_TN1 %********************************************************* /WEL1 60 array def %irregular definition /WEL2 60 array def %irregular definition %0 1 2 3 4 5 6 7 8 9 /WEL1 [405 435 450 460 465 470 475 480 485 490 495 500 510 520 530 540 545 550 555 560 ] def 0 1 19 {/k exch def %k=0,19 %wavelength 405..700nm /j WEL1 k get 400 sub 5 idiv def /LP k def /LPP 20.5 k add def /FF1 FXD j get def %start at 405..700nm /FF2 FYD j get def /FF3 FZD j get def /U1 XW def /U2 YW def /U3 ZW def /FXU1 FF2 U3 mul FF3 U2 mul sub def /FXU2 FF3 U1 mul FF1 U3 mul sub def /FXU3 FF1 U2 mul FF2 U1 mul sub def /INP -1 def /IPN -1 def %assumption jump from TN to TP from negativ to positiv 0 1 60 {/i exch def %i=1,60 /TN FAD i get FXU1 mul FBD i get FXU2 mul add FCD i get FXU3 mul add def /TP FAD i 1 add get FXU1 mul FBD i 1 add get FXU2 mul add FCD i 1 add get FXU3 mul add def TN 0 le TP 0 gt and {/INP i def exit} if } for %i=1,60 0 1 60 {/i exch def %i=1,60 /TN FAD i get FXU1 mul FBD i get FXU2 mul add FCD i get FXU3 mul add neg def /TP FAD i 1 add get FXU1 mul FBD i 1 add get FXU2 mul add FCD i 1 add get FXU3 mul add neg def TN 0 le TP 0 gt and {/IPN i def exit} if } for %i=1,60 %********************************************************* /kNP INP def kNP 0 ge {%kNP>=0 proc_ABC_KNP_FWERTiX %input FAD,KNP, output FWERTiXYZ (i=1,4) /XIE1 0 def %start values TN=0 for XIE1, TP>0 for XIE2 /XIE2 1 def 0 1 9 {/mk exch def %mk=0,9 /XIE XIE1 XIE2 add 0.5 mul def proc_XIE_TN1 %input XIE, ouput TN1 TNX 0 le {/XIE1 XIE def /TN1 TNX def} {/XIE2 XIE def /TP1 TNX def} ifelse } for %mk=0,9 /XIE XIE1 XIE2 add 0.5 mul def /DOWXIE1 DOW INP get DOW INP 1 add get DOW INP get sub XIE mul add def /XIENP XIE def } if %kNP>=0 %********************************************************* /kNP IPN def kNP 0 ge {%kNP>=0 proc_ABC_KNP_FWERTiX %input FAD,KNP, output FWERTiXYZ (i=1,4) /XIE1 0 def %start values TN=0 for XIE1, TP>0 for XIE2 /XIE2 1 def /FXU1 FXU1 neg def /FXU2 FXU2 neg def /FXU3 FXU3 neg def 0 1 9 {/mk exch def %mk=0,9 /XIE XIE1 XIE2 add 0.5 mul def proc_XIE_TN1 %input XIE, ouput TN1 TNX 0 le {/XIE1 XIE def /TN1 TNX def} {/XIE2 XIE def /TP1 TNX def} ifelse } for %mk=0,9 /XIE XIE1 XIE2 add 0.5 mul def /DOWXIE2 DOW IPN get DOW IPN 1 add get DOW IPN get sub XIE mul add def /XIEPN XIE def } if %kNP>=0 %********************************************************* 0 1 79 {/i exch def %i=0,79 RA i 0.036 put } for %i=0,79 INP -1 eq {/i1 0 def} %380nm {/i1 INP 5 add def} ifelse %405..700nm IPN -1 eq {/i2 79 def} %770nm {/i2 IPN 5 add def} ifelse %405..700nm i2 i1 ge {%i1i2 i1 1 79 {/i exch def %i=i1,79 RA i 0.900 put } for %i=i1,79 0 1 i2 {/i exch def %i=0,i2 RA i 0.900 put } for %i=0,i2 } ifelse %i1>i2 %correction (0.900+0.036)/2=0.648 i2 i1 ge {%i1i2 RA i1 0.468 put RA i2 0.468 XIEPN 0.5 sub add put } ifelse %i1>i2 %*************************************************** /X 0 def /Y 0 def /Z 0 def 0 1 079 {/i exch def %i=0,79 /X X F2N 00 i add get RA i get mul add def /Y Y F2N 80 i add get RA i get mul add def /Z Z F2N 160 i add get RA i get mul add def } for %i=0,79 /SUM X Y add Z add def /XAN X SUM 0.0001 add div def /YAN Y SUM 0.0001 add div def /ZAN Z SUM 0.0001 add div def %************************************************* 0 0 0 1 setcmyk_olvcolor 0 1 1 {/Icom exch def %Icom=0,1 Icom 0 eq {%Icom=0,1 Xi k X put Yi k Y put Zi k Z put XANi k XAN put YANi k YAN put ZANi k ZAN put }%Icom=0 {%Icom=1 /kP 20 k add def Xi kP XW X sub put Yi kP YW Y sub put Zi kP ZW Z sub put /SUMi Xi kP get Yi kP get add Zi kP get add def XANi kP Xi kP get SUMi 0.0001 add div put YANi kP Yi kP get SUMi 0.0001 add div put ZANi kP Zi kP get SUMi 0.0001 add div put } ifelse %Icom=1 } for %Icom=0,1 YF 1 eq {%YF=1 Xi k Xi k get 0.9000 mul put Yi k Yi k get 0.9000 mul put Zi k Zi k get 0.9000 mul put Xi kP Xi kP get 0.9000 mul put Yi kP Yi kP get 0.9000 mul put Zi kP Zi kP get 0.9000 mul put } if %YF=1 } for %k=0,19 %********************************************************************** %XW,YW,ZW and XK,YK,ZK for white /XW 0 def /YW 0 def /ZW 0 def 0 1 079 {/i exch def %i=0,79 /XW XW F2N 00 i add get add def /YW YW F2N 80 i add get add def /ZW ZW F2N 160 i add get add def } for %i=0,79 YF 0 eq {%YF=0 /XK XW def /YK YW def /ZK ZW def }%YF=0 {%YF=1 /XK XW YFR mul def /YK YW YFR mul def /ZK ZW YFR mul def } ifelse %YF=1 /SUMK XK YK add ZK add def %for D65, D50, P40, A00, E00 /XANK XK SUMK div def /YANK YK SUMK div def /ZANK ZK SUMK div def /LP LP 1 add def /xtexti 96 array def /ytexti 96 array def /xtexti [ %T00 T10 T20 T30 T40 T41 T50 T51 T60 T61 T70 T71 %0 1 2 3 4 5 6 7 8 9 10 11 1700 2000 2000 3000 3200 4300 3200 4300 3200 4300 3200 4300 %0 (x,y) 1700 2000 2000 3000 3200 4300 3200 4300 3200 4300 3200 4300 %1 (x,y) 0050 0050 0050 0050 0050 1300 0050 1300 0050 1300 0050 1300 %2 (a2,b2) 0050 0050 0050 0050 0050 1300 0050 1300 0050 1300 0050 1300 %3 (a2,b2) 0050 0050 0050 0050 0050 1300 0050 1300 0050 1300 0050 1300 %4 (A,B) 0050 0050 0050 0050 0050 1300 0050 1300 0050 1300 0050 1300 %5 (A,B) 0050 0050 0050 0050 0050 1300 0050 1300 0050 1300 0050 1300 %6 (A1,B1) 0050 0050 0050 0050 0050 1300 0050 1300 0050 1300 0050 1300 %7 (a2,b2) ] def /ytexti [ 3800 3580 3360 3140 2920 2920 2700 2700 2480 2480 2260 2260 %0 (x,y) 3800 3580 3360 3140 2920 2920 2700 2700 2480 2480 2260 2260 %1 (x,y) 0500 0290 0080 1600 1380 1380 1160 1160 0940 0940 0720 0720 %3 (a2,b2) 0500 0290 0080 1600 1380 1380 1160 1160 0940 0940 0720 0720 %4 (a2,b2) 0500 0290 0080 1600 1380 1380 1160 1160 0940 0940 0720 0720 %4 (A,B) 0500 0290 0080 1600 1380 1380 1160 1160 0940 0940 0720 0720 %5 (A,B) 0500 0290 0080 1600 1380 1380 1160 1160 0940 0940 0720 0720 %6 (A1,B1) 0500 0290 0080 1600 1380 1380 1160 1160 0940 0940 0720 0720 %7 (a2,b2) ] def %*********************************************************** /icolor 9 array def %Rm %Ym %Gm %Cm %Bm %Mm %Go %Mo %W /icolor [20 10 06 00 30 26 06 26 40] def /imshow {-20 -50 rmoveto TBL (m) show 0 50 rmoveto TBIS} def /ioshow {0 -50 rmoveto TBL (o) show 0 50 rmoveto TBIS} def %************************************************* %allways /kxi 8 array def /xci 8 array def /Bci 8 array def /xcti 8 array def /Bcti 8 array def % 0 1 2 3 4 5 6 7 % (P60)(P55)(P50)(P45)(P40)(P35)(P30)(P25) %or (D65)(D50)(P40)(A00)(E00)(C00)(P00)(Q00) /kxi [9 10 10 11 9 9 10 9] def /kx kxi xchartl get def xchart4 0 eq xchart4 1 eq or xchart4 4 eq or xchart4 5 eq or {%xchart4=0,1 (x,y); 4,5 (A, B) % (P60) (P55) (P50) (P45) (P40) (P35) (P30) (P25) %or (D65) (D50) (P40) (A00) (E00) (C00) (P00) (Q00) % 0 1 2 3 4 5 6 7 /xci [ 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 ] def /xcti [(0,000) (0,000) (0,000) (0,000) (0,000) (0,000) (0,000) (0,000)] def /Bci [ 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 ] def /Bcti [(1,000) (1,000) (1,000) (1,000) (1,000) (1,000) (1,000) (1,000)] def } if %xchart4=1 xchart4 6 eq {%xchart4=6 (A1, B1) % (P60) (P55) (P50) (P45) (P40) (P35) (P30) (P25) %or (D65) (D50) (P40) (A00) (E00) (C00) (P00) (Q00) % 0 1 2 3 4 5 6 7 /xci [ 0.110 0.110 0.110 0.110 0.110 0.110 0.110 0.110 ] def /xcti [(0,110) (0,110) (0,110) (0,110) (0,110) (0,110) (0,110) (0,110)] def /Bci [ 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 ] def /Bcti [(1,000) (1,000) (1,000) (1,000) (1,000) (1,000) (1,000) (1,000)] def } if %xchart4=6 xchart4 2 eq xchart4 3 eq or xchart4 7 eq or {%xchart4=2,3,7 % (P60) (P55) (P50) (P45) (P40) (P35) (P30) (P25) %or (D65) (D50) (P40) (A00) (E00) (C00) (P00) (Q00) % 0 1 2 3 4 5 6 7 /xci [ 0.110 0.110 0.110 0.110 0.110 0.110 0.110 0.110 ] def /xcti [(0,110) (0,110) (0,110) (0,110) (0,110) (0,110) (0,110) (0,110)] def /Bci [ 0.800 1.000 1.300 2.500 0.900 0.700 1.000 0.700 ] def /Bcti [(0,800) (1,000) (1,300) (2,500) (0,900) (0,700) (1,000) (0,700)] def } if %xchart4=2,3,7 /xc xci xchartl get def /xct xcti xchartl get def /Bc Bci xchartl get def /Bct Bcti xchartl get def xchart4 0 eq xchart4 1 eq or {%xchart4=0,1 4600 1600 moveto TBS (Parame\255) show 4600 1400 moveto TBS (ter:) show TBIS xchart4 0 eq {( N) show} if xchart4 1 eq {( Y) show} if proz_chromaticity_data proz_chromaticity_xy } if %xchart4=0,1 xchart4 2 eq {%xchart4=2 proz_chromaticity_data proz_chromaticity_a2b2 } if %xchart4=2 xchart4 3 eq {%xchart4=3 proz_chromaticity_data proz_chromaticity_a2b2 } if %xchart4=3 %*********************************************************** xchart4 0 eq xchart4 1 eq or {%xchart4=0,1 %only for (x,y) /fakt 4000 def proz_name_range proz_opti 600 400 translate %scala & graphic (x,y) 600 400 0 1 39 {/i exch def %i=0,39 /An XANi i get def /Bn YANi i get def An fakt mul Bn fakt mul i 0 eq {moveto} if i 1 ge i 38 le and {lineto} if i 39 eq {lineto closepath stroke} if } for %i=0,39 XANW fakt mul YANW fakt mul 90 0 360 arc stroke XANW fakt mul 200 sub YANW fakt mul 250 sub moveto TBS TELi xchartl get show TBIS 0 1 4 {/j exch def %j=0,4 j 0 eq {/i 0 def} if %Cm-Rm j 1 eq {/i 6 def} if %Gm-Mm j 2 eq {/i 13 def} if %Ym-Bm j 3 eq {/i kx def} if %Max-Min j 4 eq {%new only for i=40 /i 40 def /k 6 def %Go Xi i XRj k get put Yi i YRj k get put Zi i ZRj k get put } if /SUM Xi i get Yi i get add Zi i get add 0.0001 add def XANCj j Xi i get SUM div put YANCj j Yi i get SUM div put ZANCj j Zi i get SUM div put /An XANCj j get def /Bn YANCj j get def /AnY An fakt mul def %xan /BnY Bn fakt mul def %yan /Paramshow {Yi i get cvishow} bind def j 0 eq {AnY 400 sub BnY 050 sub moveto xchart4 0 eq {(C) show imshow} if xchart4 1 eq {Paramshow} if 1 0 0 0 setcmykcolor} if %Cm j 1 eq {AnY 400 sub BnY 050 sub moveto xchart4 0 eq {(G) show imshow} if xchart4 1 eq {Paramshow} if 1 0 1 0 setcmykcolor} if %Gm j 2 eq {AnY 100 sub BnY 250 sub moveto xchart4 0 eq {(Y) show imshow} if xchart4 1 eq {Paramshow} if 0 0 1 0 setcmykcolor} if %Ym j 3 eq {AnY 500 sub xchart4 1 eq {100 add} if BnY 050 sub moveto xchart4 0 eq {(max) show} if xchart4 1 eq {Paramshow} if 0.3 0 1 0 setcmykcolor} if %Ymax j 4 eq {AnY 370 sub xchart4 1 eq {100 add} if BnY 000 add moveto xchart4 0 eq {(G) show ioshow} if xchart4 1 eq {Paramshow} if 1 0.5 1 0 setcmykcolor} if %Go newpath AnY BnY 90 0 360 arc fill 0 setgray newpath AnY BnY 90 0 360 arc stroke } for %j=0,4 %continue j=0,4 for antagonistic (A) colours 0 1 4 {/j exch def %j=0,4 j 0 eq {/i 0 def} if %Cm-Rm j 1 eq {/i 6 def} if %Gm-Mm j 2 eq {/i 13 def} if %Ym-Bm j 3 eq {/i kx def} if %Max-Min j 4 eq {%new only for i=40 /i 40 def /k 6 def %Mo Xi i XRj k get put %special Yi i YRj k get put Zi i ZRj k get put } if /SUM XK Xi i get sub YK Yi i get sub add ZK Zi i get sub add 0.0001 add abs def XANAj j XK Xi i get sub SUM div put YANAj j YK Yi i get sub SUM div put ZANAj j ZK Zi i get sub SUM div put /An XANAj j get def /Bn YANAj j get def /AnY An fakt mul def %xan /BnY Bn fakt mul def %yan /Paramshow {YK Yi i get sub cvishow} bind def j 0 eq {AnY 150 add BnY 150 sub moveto xchart4 0 eq {(R) show imshow} if xchart4 1 eq {Paramshow} if 0 1 1 0 setcmykcolor} if %Rm j 1 eq {AnY 150 add BnY 050 sub moveto xchart4 0 eq {(M) show imshow} if xchart4 1 eq {Paramshow} if 0 1 0 0 setcmykcolor} if %Mm j 2 eq {AnY 350 sub BnY 100 add moveto xchart4 0 eq {(B) show imshow} if xchart4 1 eq {Paramshow} if 1 1 0 0 setcmykcolor} if %Bm j 3 eq {AnY 150 sub BnY 250 sub moveto xchart4 0 eq {(min) show} if xchart4 1 eq {Paramshow} if 0.7 1 0 0 setcmykcolor} if %Ymin j 4 eq {AnY 250 sub BnY 150 sub moveto xchart4 0 eq {(M) show ioshow} if xchart4 1 eq {Paramshow} if 0 0.5 0 0 setcmykcolor} if %Mo newpath AnY BnY 90 0 360 arc fill 0 setgray newpath AnY BnY 90 0 360 arc stroke } for %j=0,4 -600 -400 translate %scala & graphic (x,y) } if %xchart4=0,1 %************************************************************** xchart4 2 eq xchart4 3 eq or {%xchart4=2,3 %only for (a2,b2), (a2s,b2s) /fakt 1000 def /a2 1.00 def /b2 -0.4 def 500 0 translate proz_name_range proz_opti -500 0 translate proz_param /xtrans8 1300 def /ytrans8 3200 def xtrans8 ytrans8 translate %scala & graphic (a2,b2) 1300 3200 %0600 3100 translate %proz_axis_scales4_7 0 1 39 {/i exch def %i=0,39 /An XANi i get xc sub YANi i get 0.0001 add div def /Bn ZANi i get YANi i get 0.0001 add div 0.4 mul neg % Bc mul def /AnK XANK xc sub YANK 0.0001 add div def /BnK ZANK YANK 0.0001 add div 0.4 mul neg % Bc mul def /AnY An def /BnY Bn def An fakt mul Bn fakt mul i 0 eq {moveto} if i 1 ge i 38 le and {lineto} if i 39 eq {lineto closepath stroke} if } for %i=0,39 XANW xc sub YANW 0.0001 add div fakt mul %a2 ZANW YANW 0.0001 add div 0.4 mul neg fakt mul %b2 90 0 360 arc stroke XANW xc sub YANW 0.0001 add div fakt mul 100 add ZANW YANW 0.0001 add div 0.4 mul neg fakt mul 000 add moveto TBS TELi xchartl get show %10 chromatic colours from continuous colours TBIS 0 1 4 {/j exch def %j=0,4 j 0 eq {/i 0 def} if %Cm-Rm j 1 eq {/i 6 def} if %Gm-Mm j 2 eq {/i 13 def} if %Ym-Bm j 3 eq {/i kx def} if %Max-Min j 4 eq {/i 40 def /k 6 def %Go Xi i XRj k get put %special Yi i YRj k get put Zi i ZRj k get put } if /SUM Xi i get Yi i get add Zi i get add 0.0001 add def XANCj j Xi i get SUM div put YANCj j Yi i get SUM div put ZANCj j Zi i get SUM div put /An XANCj j get xc sub YANCj j get 0.0001 add div def %a2 /Bn ZANCj j get YANCj j get 0.0001 add div 0.4 mul neg %b2 % Bc mul def /AnY An fakt mul def /BnY Bn fakt mul def %dAB, CAB not used /dAB An dup mul Bn dup mul add 0.0001 add sqrt def %/CAB dAB Yi i get mul def /Paramshow {Yi i get cvishow} bind def j 0 eq {AnY 350 sub BnY 100 sub moveto xchart4 2 eq {(C) show imshow} if xchart4 3 eq {Paramshow} if 1 0 0 0 setcmykcolor} if %Cm j 1 eq {AnY 350 sub BnY 150 sub moveto xchart4 2 eq {(G) show imshow} if xchart4 3 eq {Paramshow} if 1 0 1 0 setcmykcolor} if %Gm j 2 eq {AnY 150 sub BnY 200 add moveto xchart4 2 eq {(Y) show imshow} if xchart4 3 eq {Paramshow} if 0 0 1 0 setcmykcolor} if %Ym j 3 eq {AnY 500 sub BnY 050 add moveto xchart4 2 eq {(max) show} if xchart4 3 eq {Paramshow} if 0.3 0 1 0 setcmykcolor} if %Ymax j 4 eq {AnY 050 add BnY 250 sub moveto xchart4 2 eq {(G) show ioshow} if xchart4 3 eq {Paramshow} if 1 0.5 1 0 setcmykcolor} if %Go newpath AnY BnY 90 0 360 arc fill 0 setgray newpath AnY BnY 90 0 360 arc stroke /SUM XK Xi i get sub YK Yi i get sub add ZK Zi i get sub add 0.0001 add def XANCj j XK Xi i get sub SUM div put YANCj j YK Yi i get sub SUM div put ZANCj j ZK Zi i get sub SUM div put /An XANCj j get xc sub YANCj j get 0.0001 add div def %a2 /Bn ZANCj j get YANCj j get 0.0001 add div 0.4 mul neg %b2 % Bc mul def /AnY An fakt mul def %a2 /BnY Bn fakt mul def %b2 %dAB, CAB not used /dAB An dup mul Bn dup mul add 0.0001 add sqrt def %/CAB dAB YK Yi i get sub mul def /Paramshow {YK Yi i get sub cvishow} bind def j 0 eq {AnY 120 add BnY 050 sub moveto xchart4 2 eq {(R) show imshow} if xchart4 3 eq {Paramshow} if 0 1 1 0 setcmykcolor} if %Rm j 1 eq {AnY 120 add BnY 050 sub moveto xchart4 2 eq {(M) show imshow} if xchart4 3 eq {Paramshow} if 0 1 0 0 setcmykcolor} if %Mm j 2 eq {AnY 300 sub BnY 100 add moveto xchart4 2 eq {(B) show imshow} if xchart4 3 eq {Paramshow} if 1 1 0 0 setcmykcolor} if %Bm j 3 eq {AnY 100 sub xchart4 3 eq {100 add} if BnY 250 sub moveto xchart4 2 eq {(min) show} if xchart4 3 eq {Paramshow} if 0.7 1 0 0 setcmykcolor} if %Bmin j 4 eq {AnY 100 sub BnY 250 sub moveto xchart4 2 eq {(M) show ioshow} if xchart4 3 eq {Paramshow} if 0 0.5 0 0 setcmykcolor} if %Mo newpath AnY BnY 90 0 360 arc fill 0 setgray newpath AnY BnY 90 0 360 arc stroke } for %j=0,4 xtrans8 neg ytrans8 neg translate %text & graphic (a2, b2) 1300 3200 %-600 400 translate } if %xchart4=2,3 only for (a2,b2), (a2s,b2s) %******************************************************* xchart4 4 eq xchart4 5 eq or {%xchart4=4,5 %only for (A,B) /fakt 40 def /a2 1.00 def /b2 -0.4 def proz_name_range proz_opti proz_param /xtrans8 3500 def /ytrans8 2100 def xtrans8 ytrans8 translate %text & graphic (A,B) 3500 2100 proz_axis_scales4_7 0 1 39 {/i exch def %i=0,39 /An XANi i get YANi i get 0.0001 add div def /Bn ZANi i get YANi i get 0.0001 add div 0.4 mul neg def /AnK XK YK 0.0001 add div def /BnK ZK YK 0.0001 add div 0.4 mul neg def /AnY An AnK sub Yi i get mul def /BnY Bn BnK sub Yi i get mul def AnY fakt mul BnY fakt mul i 0 eq {moveto} if i 1 ge i 38 le and {lineto} if i 39 eq {lineto closepath stroke} if } for %i=0,39 XANW YANW 0.0001 add div %(a-an)YW XANK YANK 0.0001 add div sub YW mul fakt mul ZANW YANW 0.0001 add div %(b-an)YW ZANK YANK 0.0001 add div sub 0.4 mul neg YW mul fakt mul 90 0 360 arc stroke 0 080 add 0 080 add moveto TBS TELi xchartl get show %10 chromatic colours from continuous colours TBIS 0 1 4 {/j exch def %j=0,4 j 0 eq {/i 0 def} if %Cm-Rm j 1 eq {/i 6 def} if %Gm-Mm j 2 eq {/i 13 def} if %Ym-Bm j 3 eq {/i kx def} if %Max-Min j 4 eq {/i 40 def /k 6 def %Go Xi i XRj k get put %special Yi i YRj k get put Zi i ZRj k get put } if /SUM Xi i get Yi i get add Zi i get add 0.0001 add def XANCj j Xi i get SUM div put YANCj j Yi i get SUM div put ZANCj j Zi i get SUM div put /An XANCj j get YANCj j get 0.0001 add div %2.5(a-an)Y XANK YANK 0.0001 add div sub def /Bn ZANCj j get YANCj j get 0.0001 add div %2.5(b-bn)Y ZANK YANK 0.0001 add div sub 0.4 mul neg def /AnY An Yi i get mul fakt mul def /BnY Bn Yi i get mul fakt mul def %dAB, CAB not used /dAB An dup mul Bn dup mul add 0.0001 add sqrt def /CAB dAB Yi i get mul def /Paramshow {Yi i get cvishow} bind def j 0 eq {AnY 350 sub BnY 050 sub moveto xchart4 4 eq {(C) show imshow} if xchart4 5 eq {Paramshow} if 1 0 0 0 setcmykcolor} if %Cm j 1 eq {AnY 370 sub BnY 050 sub moveto xchart4 4 eq {(G) show imshow} if xchart4 5 eq {Paramshow} if 1 0 1 0 setcmykcolor} if %Gm j 2 eq {AnY 050 sub BnY 150 add moveto xchart4 4 eq {(Y) show imshow} if xchart4 5 eq {Paramshow} if 0 0 1 0 setcmykcolor} if %Ym j 3 eq {AnY 100 sub BnY 300 sub moveto xchart4 4 eq {(max) show} if xchart4 5 eq {Paramshow} if 0.3 0 1 0 setcmykcolor} if %Ymax j 4 eq {AnY 100 sub BnY 250 sub moveto xchart4 4 eq {(G) show ioshow} if xchart4 5 eq {Paramshow} if 1 0.5 1 0 setcmykcolor} if %Go newpath AnY BnY 90 0 360 arc fill 0 setgray newpath AnY BnY 90 0 360 arc stroke /SUM XK Xi i get sub YK Yi i get sub add ZK Zi i get sub add 0.0001 add def XANCj j XK Xi i get sub SUM div put YANCj j YK Yi i get sub SUM div put ZANCj j ZK Zi i get sub SUM div put /An XANCj j get YANCj j get 0.0001 add div %(a-an) XANK YANK 0.0001 add div sub def /Bn ZANCj j get YANCj j get 0.0001 add div %(b-bn) ZANK YANK 0.0001 add div sub 0.4 mul neg def /AnY An YK Yi i get sub mul fakt mul def %(a-an)Y /BnY Bn YK Yi i get sub mul fakt mul def %(b-bn)Y %dAB, CAB not used /dAB An dup mul Bn dup mul add 0.0001 add sqrt def /CAB dAB YK Yi i get sub mul def /Paramshow {YK Yi i get sub cvishow} bind def j 0 eq {AnY 120 add BnY 050 sub moveto xchart4 4 eq {(R) show imshow} if xchart4 5 eq {Paramshow} if 0 1 1 0 setcmykcolor} if %Rm j 1 eq {AnY 120 add BnY 050 sub moveto xchart4 4 eq {(M) show imshow} if xchart4 5 eq {Paramshow} if 0 1 0 0 setcmykcolor} if %Mm j 2 eq {AnY 200 sub BnY 250 sub moveto xchart4 4 eq {(B) show imshow} if xchart4 5 eq {Paramshow} if 1 1 0 0 setcmykcolor} if %Bm j 3 eq {AnY 100 sub BnY 150 add moveto xchart4 4 eq {(min) show} if xchart4 5 eq {Paramshow} if 0.7 1 0 0 setcmykcolor} if %Bmin j 4 eq {AnY 100 sub BnY 150 add moveto xchart4 4 eq {(M) show ioshow} if xchart4 5 eq {Paramshow} if 0 0.5 0 0 setcmykcolor} if %Mo newpath AnY BnY 90 0 360 arc fill 0 setgray newpath AnY BnY 90 0 360 arc stroke } for %j=0,4 xtrans8 neg ytrans8 neg translate %text & graphic (A,B) 3500 2100 } if %xchart4=4,5 %************************************************************** xchart4 6 eq xchart4 7 eq or {%xchart4=6,7 %only for (A1/2,B1/2) /fakt 40 def /a2 1.00 def /b2 -0.4 def proz_name_range proz_opti proz_param /xtrans8 3500 def /ytrans8 2100 def xtrans8 ytrans8 translate %text & graphic (A1/2,B1/2) 3500 2100 proz_axis_scales4_7 0 1 39 {/i exch def %i=0,39 /An XANi i get xc sub YANi i get 0.0001 add div def /Bn ZANi i get YANi i get 0.0001 add div 0.4 mul neg Bc mul def /AnK XANK xc sub YANK 0.0001 add div def /BnK ZANK YANK 0.0001 add div 0.4 mul neg Bc mul def /AnY An AnK sub Yi i get mul def /BnY Bn BnK sub Yi i get mul def AnY fakt mul BnY fakt mul i 0 eq {moveto} if i 1 ge i 38 le and {lineto} if i 39 eq {lineto closepath stroke} if } for %i=0,39 XANW xc sub YANW 0.0001 add div %(a-an)YW XANK xc sub YANK 0.0001 add div sub YW mul fakt mul ZANW YANW 0.0001 add div %(b-an)YW ZANK YANK 0.0001 add div sub 0.4 mul neg Bc mul YW mul fakt mul 90 0 360 arc stroke 0 080 add 0 080 add moveto TBS TELi xchartl get show %10 chromatic colours from continuous colours TBIS 0 1 4 {/j exch def %j=0,4 j 0 eq {/i 0 def} if %Cm-Rm j 1 eq {/i 6 def} if %Gm-Mm j 2 eq {/i 13 def} if %Ym-Bm j 3 eq {/i kx def} if %Max-Min j 4 eq {/i 40 def /k 6 def %Go Xi i XRj k get put %special Yi i YRj k get put Zi i ZRj k get put } if /SUM Xi i get Yi i get add Zi i get add 0.0001 add def XANCj j Xi i get SUM div put YANCj j Yi i get SUM div put ZANCj j Zi i get SUM div put /An XANCj j get xc sub YANCj j get 0.0001 add div %2.5(a-an)Y XANK xc sub YANK 0.0001 add div sub def /Bn ZANCj j get YANCj j get 0.0001 add div %2.5(b-bn)Y ZANK YANK 0.0001 add div sub 0.4 mul neg Bc mul def /AnY An Yi i get mul fakt mul def /BnY Bn Yi i get mul fakt mul def %dAB, CAB not used /dAB An dup mul Bn dup mul add 0.0001 add sqrt def /CAB dAB Yi i get mul def /Paramshow {Yi i get cvishow} bind def j 0 eq {AnY 350 sub BnY 050 sub moveto xchart4 6 eq {(C) show imshow} if xchart4 7 eq {Paramshow} if 1 0 0 0 setcmykcolor} if %Cm j 1 eq {AnY 370 sub BnY 050 sub moveto xchart4 6 eq {(G) show imshow} if xchart4 7 eq {Paramshow} if 1 0 1 0 setcmykcolor} if %Gm j 2 eq {AnY 050 sub BnY 150 add moveto xchart4 6 eq {(Y) show imshow} if xchart4 7 eq {Paramshow} if 0 0 1 0 setcmykcolor} if %Ym j 3 eq {AnY 500 sub xchart4 7 eq {150 add} if BnY 050 add moveto xchart4 6 eq {(max) show} if xchart4 7 eq {Paramshow} if 0.3 0 1 0 setcmykcolor} if %Ymax j 4 eq {AnY 100 sub BnY 150 add moveto xchart4 6 eq {(G) show ioshow} if xchart4 7 eq {Paramshow} if 1 0.5 1 0 setcmykcolor} if %Go newpath AnY BnY 90 0 360 arc fill 0 setgray newpath AnY BnY 90 0 360 arc stroke /SUM XK Xi i get sub YK Yi i get sub add ZK Zi i get sub add 0.0001 add def XANCj j XK Xi i get sub SUM div put YANCj j YK Yi i get sub SUM div put ZANCj j ZK Zi i get sub SUM div put /An XANCj j get xc sub YANCj j get 0.0001 add div %(a-an) XANK xc sub YANK 0.0001 add div sub def /Bn ZANCj j get YANCj j get 0.0001 add div %(b-bn) ZANK YANK 0.0001 add div sub 0.4 mul neg Bc mul def /AnY An YK Yi i get sub mul fakt mul def %(a-an)Y /BnY Bn YK Yi i get sub mul fakt mul def %(b-bn)Y %dAB, CAB not used /dAB An dup mul Bn dup mul add 0.0001 add sqrt def /CAB dAB YK Yi i get sub mul def /Paramshow {YK Yi i get sub cvishow} bind def j 0 eq {AnY 120 add BnY 050 sub moveto xchart4 6 eq {(R) show imshow} if xchart4 7 eq {Paramshow} if 0 1 1 0 setcmykcolor} if %Rm j 1 eq {AnY 120 add BnY 050 sub moveto xchart4 6 eq {(M) show imshow} if xchart4 7 eq {Paramshow} if 0 1 0 0 setcmykcolor} if %Mm j 2 eq {AnY 200 sub BnY 250 sub moveto xchart4 6 eq {(B) show imshow} if xchart4 7 eq {Paramshow} if 1 1 0 0 setcmykcolor} if %Bm j 3 eq {AnY 100 add BnY 150 sub moveto xchart4 6 eq {(min) show} if xchart4 7 eq {Paramshow} if 0.7 1 0 0 setcmykcolor} if %Bmin j 4 eq {AnY 100 sub BnY 250 sub moveto xchart4 6 eq {(M) show ioshow} if xchart4 7 eq {Paramshow} if 0 0.5 0 0 setcmykcolor} if %Mo newpath AnY BnY 90 0 360 arc fill 0 setgray newpath AnY BnY 90 0 360 arc stroke } for %j=0,4 xtrans8 neg ytrans8 neg translate %text & graphic (A1/2,B1/2) 3500 2100 } if %xchart4=6,7 showpage grestore %} for %xchartl=0,7 } for %xchart4=0,7 } for %xcolorl=0,0 %%Trailer %line 259 %%EndDocument EndEPSF grestore gsave BeginEPSF 86 SHAl add MM 020 STAl add MM translate 12 /Times-ISOL1 FS -9 MM -7 MM moveto ( ) show 10 /Times-ISOL1 FS 53 MM 1 MM moveto ( ) show 1 1 scale -77 -91 translate %%BeginDocument: Bild 18 %!PS-Adobe-3.0 EPSF-3.0 egw41-4a enh31-4n %%BoundingBox: 70 83 228 206 %START PDFDE011.EPS /pdfmark14 where {pop} {userdict /pdfmark14 /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/egw4/egw4.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 pdfmark14 [ /View [ /Fit ] /DOCVIEW pdfmark14 %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 /Courier findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /Courier-ISOL1 exch definefont pop /Courier-Oblique findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /CourierI-ISOL1 exch definefont pop /Courier-Bold findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /CourierB-ISOL1 exch definefont pop /Courier-BoldOblique findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /CourierBI-ISOL1 exch definefont pop /TG {350 /Times-ISOL1 FS} bind def /TM {280 /Times-ISOL1 FS} bind def /TK {240 /Times-ISOL1 FS} bind def /TS {200 /Times-ISOL1 FS} bind def /TL {160 /Times-ISOL1 FS} bind def /TIG {350 /TimesI-ISOL1 FS} bind def /TIM {280 /TimesI-ISOL1 FS} bind def /TIK {240 /TimesI-ISOL1 FS} bind def /TIS {200 /TimesI-ISOL1 FS} bind def /TIL {160 /TimesI-ISOL1 FS} bind def /TBG {350 /TimesB-ISOL1 FS} bind def /TBM {280 /TimesB-ISOL1 FS} bind def /TBK {240 /TimesB-ISOL1 FS} bind def /TBS {200 /TimesB-ISOL1 FS} bind def /TBL {160 /TimesB-ISOL1 FS} bind def /TBIG {350 /TimesBI-ISOL1 FS} bind def /TBIM {280 /TimesBI-ISOL1 FS} bind def /TBIK {240 /TimesBI-ISOL1 FS} bind def /TBIS {200 /TimesBI-ISOL1 FS} bind def /TBIL {160 /TimesBI-ISOL1 FS} bind def /SG {350 /Symbol FS} bind def /SM {280 /Symbol FS} bind def /SK {240 /Symbol FS} bind def /SS {200 /Symbol FS} bind def /SL {160 /Symbol FS} bind def %********************************************************* /proz_param {%proz_param 4650 3800 moveto TBS (Parame\255) show 4650 3600 moveto TBS (ter:) show xchart4 2 eq xchart4 4 eq or xchart4 6 eq or {TBIS ( N) show} if xchart4 3 eq xchart4 5 eq or xchart4 7 eq or {TBIS ( Y) show xcolorl 1 eq {xcol10_BS} if} if /kx kxi xchartl get def /kxx 445 kx 5 mul add def 4150 300 moveto TBS (max: ) show kxx cvishow (_770) show 4150 080 moveto TBS (min: 380_) show kxx cvishow /index2_7 {%index2_7 xchart4 2 eq xchart4 3 eq or xchart4 7 eq or {0 -50 rmoveto TBL (2) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if } if xchart4 4 eq xchart4 5 eq or {0 -50 rmoveto TBL () show 0 50 rmoveto xcolorl 1 eq {xcol10_BS} if } if xchart4 6 eq {0 -50 rmoveto TBL (1) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if } if } bind def %index2_7 /index2_7n {%index2_7n xchart4 2 eq xchart4 3 eq or xchart4 7 eq or {0 -50 rmoveto TBL (2,n) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if } if xchart4 4 eq xchart4 5 eq or {0 -50 rmoveto TBL (n) show 0 50 rmoveto xcolorl 1 eq {xcol10_BS} if } if xchart4 6 eq {0 -50 rmoveto TBL (1,n) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if } if } bind def %index2_7n xchart4 1 le xchart4 4 ge or {%xchart4<=1, xchart4>=4 /x0p 50 def x0p 3800 moveto TBIS (XYZ) show 0 -50 rmoveto TBL (W) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if TBS (=) show XK cvsshow2 (, ) show YK cvsshow2 (, ) show ZK cvsshow2 x0p 3550 moveto TBIS (A) show index2_7 TBS ( = 2,5 \050) show TBIS (a) show index2_7 TBS ( - ) show TBIS (a) show index2_7n TBS (\051 ) show TBIS (Y) show xcolorl 1 eq {xcol10_BS} if x0p 3300 moveto TBIS (B) show index2_7 TBS ( = 2,5 ) show TBIS (B) show 0 -50 rmoveto TBL (c) show 0 50 rmoveto TBS ( \050) show TBIS (b) show index2_7 TBS ( - ) show TBIS (b) show index2_7n TBS (\051 ) show TBIS (Y) show xcolorl 1 eq {xcol10_BS} if x0p 3050 moveto TBIS (a) show index2_7 TBS ( = ) show TBIS (a) show 0 -50 rmoveto TBL (20) show 0 50 rmoveto TBS ( [) show TBIS (\050x) show xcolorl 1 eq {xcol10_BS} if TBS (-) show TBIS (x) show 0 -50 rmoveto TBL (c) show 0 50 rmoveto TBIS (\051/y) show xcolorl 1 eq {xcol10_BS} if TBS (]) show x0p 2800 moveto TBIS (b) show index2_7 TBS ( = ) show TBIS (b) show 0 -50 rmoveto TBL (20) show 0 50 rmoveto TBS ( [) show TBIS (z) show xcolorl 1 eq {xcol10_BS} if TBIS (/y) show xcolorl 1 eq {xcol10_BS} if TBS (]) show x0p 2550 moveto TBIS (a) show 0 -50 rmoveto TBL (20) show 0 50 rmoveto TBS ( = 1, ) show TBIS (b) show 0 -50 rmoveto TBL (20) show 0 50 rmoveto TBS ( = -0,4) show x0p 2300 moveto TBIS (x) show 0 -50 rmoveto TBL (c) show 0 50 rmoveto TBS ( = ) show xct show (, ) show TBIS (B) show 0 -50 rmoveto TBL (c) show 0 50 rmoveto TBS ( = ) show Bct show x0p 2080 moveto TBIS (n) show TBS ( = ) show TELi xchartl get show x0p 1860 moveto TBIS (C) show TBL 0 -50 rmoveto (AB,) show 0 50 rmoveto index2_7 TBS (=[) show TBIS (A) show index2_7 TBL -20 100 rmoveto (2) show 0 -100 rmoveto TBS (+) show TBIS (B) show index2_7 TBL -20 100 rmoveto (2) show 0 -100 rmoveto TBS (]) show TBL 0 100 rmoveto (1/2) show 0 -100 rmoveto } if %xchart4<=1, xchart4>=4 } bind def %proz_param %**************************************************************** /proz_opti {%proz_opti TBS 0 0 0 1 setcmyk_olvcolor /xchart12 xchart4 12 mul def xtexti xchart12 0 add get ytexti xchart12 0 add get moveto TBS (10 Optimalfarben (o)) showde %0egw41-7 02581 (10 optimal colours (o)) showen %1egw41-7 02581 (10 colores \363ptimos (o)) showes %2egw41-7 02581 (10 couleurs optimales (o)) showfr %3egw41-7 02581 (10 colori ottimi (o)) showit %4egw41-7 02581 (10 optimal colours (o)) showjp %5egw41-7 02581 TBIS (, Y) show TBL 0 -60 rmoveto (W) show 0 60 rmoveto xchartl 1 eq {xcol10KBS} if TBS YF 0 eq {(=100) show}{(=90) show} ifelse TBIS (, Y) show TBL 0 -60 rmoveto (N) show 0 60 rmoveto xchartl 1 eq {xcol10KBS} if TBS YF 0 eq {(=0) show}{(=3,6) show} ifelse xtexti xchart12 1 add get ytexti xchart12 1 add get moveto (8 von maximalem (m)) showde %0egw41-7 03581 (8 of maximum (m)) showen %1egw41-7 03581 (8 de m\341ximo (m)) showes %2egw41-7 03581 (8 de la maximum (m)) showfr %3egw41-7 03581 (8 di massimo (m)) showit %4egw41-7 03581 (8 of maximum (m)) showjp %5egw41-7 03581 TBIS ( C) show TBL 0 -60 rmoveto (AB) show 0 60 rmoveto TBS ( f\374r ) showde %0egw41-7 03581 ( for ) showen %1egw41-7 03581 ( bajo ) showes %2egw41-7 03581 ( pour ) showfr %3egw41-7 03581 ( per ) showit %4egw41-7 03581 ( for ) showjp %5egw41-7 03581 TELi xchartl get show xtexti xchart12 2 add get ytexti xchart12 2 add get moveto xchart4 0 eq xchart4 1 eq or {%xchart4=0,1 (in der Normfarbtafel) showde %0egw41-7 04581 (in the chromaticity diagram) showen %1egw41-7 04581 (en el diagrama de chromaticidad) showes %2egw41-7 04581 (dans le diagramme de chromaticit\351) showfr %3egw41-7 04581 (nel diagramma di cromaticit\340) showit %4egw41-7 04581 (in the chromaticity diagram) showjp %5egw41-7 04581 TBIS ( (x, y)) show } if %xchart4=0,1 xchart4 2 eq xchart4 3 eq or {%xchart4=2,3 (in linearer Farbtafel ) showde %0egw41-7 06581 (in linear chromaticity diagram ) showea %1egw41-7 06581 TBS (\050) show TBIS (a) show TBL 0 -50 rmoveto (2) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if TBIS (, b) show TBL 0 -50 rmoveto (2) show 0 50 rmoveto xcolorl 1 eq {xcol10_BS} if TBS (\051) show } if %xchart4=2,3 xchart4 4 eq xchart4 5 eq or {%xchart4=4,5 (in Buntwertdiagramm) showde %0egw41-7 08581 (in chromatic value diagram) showen %1egw41-7 08581 (en el diagrama valor crom\341tico) showes %2egw41-7 08581 (dans la valeur chromatique le diagramme) showfr %3egw41-7 08581 (nel diagramma di valore cromatico) showit %4egw41-7 08581 (in chromatic value diagram) showjp %5egw41-7 08581 TBIS ( (A, B)) show } if %xchart4=4,5 xchart4 6 eq {%xchart4=6 (in Buntwertdiagram) showde %0egw41-7 10581 (in chromatc value diagram) showen %1egw41-7 10581 (en el diagrama croma) showes %2egw41-7 10581 (dans le diagramme de chroma) showfr %3egw41-7 10581 (nel diagramma di chroma) showit %4egw41-7 10581 (in chromactic value diagram) showjp %5egw41-7 10581 TBIS ( \050A) show 0 -50 rmoveto TBL (1) show 0 50 rmoveto TBS (, ) show TBIS (B) show 0 -50 rmoveto TBL (1) show 0 50 rmoveto TBS (\051) show } if %xchart4=6 xchart4 7 eq {%xchart4=7 (in Buntwertdiagram) showde %0egw41-7 11581 (in chromatic value diagram) showen %1egw41-7 11581 (en el diagrama croma) showes %2egw41-7 11581 (dans le diagramme de chroma) showfr %3egw41-7 11581 (nel diagramma di chroma) showit %4egw41-7 11581 (in chroma diagram) showjp %5egw41-7 11581 TBIS ( \050A) show 0 -50 rmoveto TBL (2) show 0 50 rmoveto TBS (, ) show TBIS (B) show 0 -50 rmoveto TBL (2) show 0 50 rmoveto TBS (\051) show } if %xchart4=7 } bind def %proz_opti %**************************************************************************** /proz_name_range {%proz_name_range /xchart12 xchart4 12 mul def xtexti xchart12 3 add get ytexti xchart12 3 add get moveto TBS (Name & Spektralbereich) showde %0egw41-7 00581 (name and spectral range) showen %1egw41-7 00581 (Nombre y gama espectral) showes %2egw41-7 00581 (Nom et la gamma spectrale) showfr %3egw41-7 00581 (Nome e la gamma spettrale) showit %4egw41-7 00581 (name and spectral range) showjp %5egw41-7 00581 xtexti xchart12 4 add get ytexti xchart12 4 add get moveto TBIS FARBE 0 get show TBL 0 -40 rmoveto FARBE 1 get show 0 40 rmoveto TBIS FARBE 2 get show xtexti xchart12 5 add get ytexti xchart12 5 add get moveto TBIS FARBE 3 get show TBL 0 -40 rmoveto FARBE 4 get show 0 40 rmoveto TBIS FARBE 5 get show xtexti xchart12 6 add get ytexti xchart12 6 add get moveto TBIS FARBE 6 get show TBL 0 -40 rmoveto FARBE 7 get show 0 40 rmoveto TBIS FARBE 8 get show xtexti xchart12 7 add get ytexti xchart12 7 add get moveto TBIS FARBE 9 get show TBL 0 -40 rmoveto FARBE 10 get show 0 40 rmoveto TBIS FARBE 11 get show xtexti xchart12 8 add get ytexti xchart12 8 add get moveto TBIS FARBE 12 get show TBL 0 -40 rmoveto FARBE 13 get show 0 40 rmoveto TBIS FARBE 14 get show xtexti xchart12 9 add get ytexti xchart12 9 add get moveto TBIS FARBE 15 get show TBL 0 -40 rmoveto FARBE 16 get show 0 40 rmoveto TBIS FARBE 17 get show xtexti xchart12 10 add get ytexti xchart12 10 add get moveto TBIS FARBE 18 get show TBL 0 -40 rmoveto FARBE 19 get show 0 40 rmoveto TBIS FARBE 20 get show xtexti xchart12 11 add get ytexti xchart12 11 add get moveto TBIS FARBE 21 get show TBL 0 -40 rmoveto FARBE 22 get show 0 40 rmoveto TBIS FARBE 23 get show } bind def %proz_name_range %**************************************************************** /proz_axis_scales4_7 {%proz_axis_scales4_7 %axis and scales 0 0 0 1 setcmyk_olvcolor -1000 0 moveto 2800 0 rlineto stroke 0 -1880 moveto 0 3600 rlineto stroke 1800 100 sub 50 moveto 100 -50 rlineto -100 -50 rlineto closepath fill 0 50 sub 1800 100 sub moveto 50 100 rlineto 50 -100 rlineto closepath fill /xt10x 5 array def /yt10x 5 array def /xt10x [() ( -50) ( ) ( ) ( 100)] def /yt10x [(-100) ( ) ( ) ( ) (100)] def 0 0 0 1 setcmyk_olvcolor 1 1 4 {/i exch def %i=0,4 x-axis -1600 i 800 mul add -75 moveto 0 150 rlineto stroke -1800 i 800 mul add -250 moveto TBS xt10x i get show i 4 eq {-1600 i 800 mul add 0 moveto xchart4 4 eq { %xchart4=4 -100 200 rmoveto TBIK (A) show xcolorl 1 eq {xcol10_BS} if } if %xchart4=4 xchart4 5 eq { %xchart4=5 -100 200 rmoveto TBIK (A) show xcolorl 1 eq {xcol10_BS} if } if %xchart4=5 xchart4 6 eq { %xchart4=6 -200 200 rmoveto TBIK (A) show -10 -50 rmoveto TBS (1) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if } if %xchart4=6 xchart4 7 eq { %xchart4=7 -200 200 rmoveto TBIK (A) show -10 -50 rmoveto TBS (2) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if } if %xchart4=7 } if } for %i=0,4 0 1 4 {/i exch def %i=0,4 y-axis -75 -1600 i 800 mul add moveto 150 0 rlineto stroke 100 -1650 i 800 mul add 100 sub moveto TBS yt10x i get show i 4 eq {0 -1650 i 800 mul add moveto xchart4 4 eq { %xchart4=4 100 150 rmoveto TBIK (B) show TM xcolorl 1 eq {xcol10_BS} if } if %xchart4=4 xchart4 5 eq { %xchart4=5 100 150 rmoveto TBIK (B) show xcolorl 1 eq {xcol10_BS} if 0 1150 add 1600 0200 add moveto } if %xchart4=5 xchart4 6 eq { %xchart4=6 100 150 rmoveto TBIK (B) show -10 -50 rmoveto TBS (1) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if } if %xchart4=6 xchart4 7 eq { %xchart4=7 100 150 rmoveto TBIK (B) show -10 -50 rmoveto TBS (2) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if } if %xchart4=7 } if } for %i=0,4 } bind def %proz_axis_scales4_7 %*********************************************************** /proz_chromaticity_data {%BEG proz_chromaticity_data /FL 0.00001 def /DOW 82 array def /DOWZ 17 array def /F02Z 51 array def /F10Z 51 array def %TRISTIMULUS VALUES FOR PURPLE COLORS from 'dmyy'KRPROG.FOR %FOR 02- AND 10-DEGREE-OBSERVER, ILLUMINANT E 0 1 79 {/i exch def %i=0,79 = 380_775 DOW i 380 i 5 mul add put } for %i=0,79 /DOWZ %17 data [700 -495 -500 -505 -510 -515 -520 -525 -530 -535 -540 -545 -550 -555 -560 -565 400] def /F02Z %3x17 data 700 ... 400 [.01136 .01141 .01158 .01169 .01176 .01182 .01187 .01191 .01195 .01199 .01204 .01210 .01219 .01232 .01254 .01300 .01431 .00410 .00404 .00383 .00369 .00359 .00352 .00346 .00342 .00337 .00331 .00325 .00317 .00306 .00289 .00262 .00205 .00040 .00000 .00118 .00507 .00754 .00930 .01064 .01167 .01256 .01346 .01445 .01562 .01709 .01910 .02210 .02718 .03765 .06785] def /F10Z %3x17 data 700 ... 400 [.00958 .01015 .01037 .01053 .01065 .01075 .01085 .01096 .01108 .01122 .01139 .01163 .01201 .01268 .01416 .02078 .01911 .00372 .00361 .00357 .00355 .00352 .00351 .00349 .00347 .00345 .00342 .00339 .00335 .00328 .00316 .00289 .00170 .00200 .00000 .00517 .00718 .00858 .00972 .01063 .01150 .01245 .01354 .01478 .01635 .01856 .02194 .02795 .04136 .10106 .08601] def %*************************************************** /FXYZ 240 array def /XSi 82 array def /YSi 82 array def /ZSi 82 array def /XANSi 82 array def /YANSi 82 array def /ZANSi 82 array def /AANSi 82 array def %actual data for plot, purple colours /BANSi 82 array def 0 1 239 {/i exch def %i=0,239 FXYZ i xcolorl 0 eq {F2 i get put} {F10 i get put} ifelse } for %i=0,239 /YKSUM 0 def %For CIE Illuminant E 0 1 79 {/i exch def %i=0,1,79 /YKSUM YKSUM FXYZ 80 i add get add def } for %i=0,1,79 0 1 79 {/i exch def %i=0,1,79 XSi i FXYZ 00 i add get YKSUM div 100 mul put YSi i FXYZ 80 i add get YKSUM div 100 mul put ZSi i FXYZ 160 i add get YKSUM div 100 mul put /SUM XSi i get YSi i get add ZSi i get add 0.0001 add def XANSi i XSi i get SUM div put YANSi i YSi i get SUM div put ZANSi i ZSi i get SUM div put xchart4 1 le {%xchart4<=1 AANSi i XANSi i get put BANSi i YANSi i get put } if %xchart4<=1 xchart4 2 eq {%xchart4=2 AANSi i XANSi i get xc sub YANSi i get FL add div put BANSi i ZANSi i get YANSi i get FL add div -0.4 mul put } if %xchart4=2 xchart4 3 eq {%xchart4=3 AANSi i XANSi i get xc sub YANSi i get FL add div put BANSi i ZANSi i get YANSi i get FL add div -0.4 mul put } if %xchart4=3 } for %i=0,1,79 /XZi 17 array def /YZi 17 array def /ZZi 17 array def /XANZi 17 array def /YANZi 17 array def /ZANZi 17 array def /AANZi 17 array def %actual data for plot, purple colours /BANZi 17 array def 0 1 16 {/i exch def %i=0,16 %for illuminant E: S(lamdda=100) XZi i xcolorl 0 eq {F02Z} {F10Z} ifelse 00 i add get YKSUM div 100 mul put YZi i xcolorl 0 eq {F02Z} {F10Z} ifelse 17 i add get YKSUM div 100 mul put ZZi i xcolorl 0 eq {F02Z} {F10Z} ifelse 34 i add get YKSUM div 100 mul put /SUM XZi i get YZi i get add ZZi i get add 0.0001 add def XANZi i XZi i get SUM div put YANZi i YZi i get SUM div put ZANZi i ZZi i get SUM div put xchart4 1 le {%xchart4<=1 AANZi i XANZi i get put BANZi i YANZi i get put } if %xchart4<=1 xchart4 2 eq {%xchart4=2 AANZi i XANZi i get xc sub YANZi i get FL add div put BANZi i ZANZi i get YANZi i get FL add div -0.4 mul put } if %xchart4=2 xchart4 3 eq {%xchart4=3 AANZi i XANZi i get xc sub YANZi i get FL add div put BANZi i ZANZi i get YANZi i get FL add div -0.4 mul put } if %xchart4=3 } for %i=0,16 /FL 0.00001 def } bind def %END proz_chromaticity_data %************************************************ /proz_chromaticity_xy {%BEG proz_chromaticity_xy /xtrans8 600 def /ytrans8 400 def xtrans8 ytrans8 translate %for scala and graphic (x,y) 0600 0400 0 0 moveto 4000 0 rlineto stroke 0 0 moveto 0 3200 rlineto stroke %! 100 S-Einheiten = 2000 Skalen-Einheiten TBS 0 -50 moveto 0 100 rlineto stroke 800 -50 moveto 0 100 rlineto stroke 1600 -50 moveto 0 100 rlineto stroke 2400 -50 moveto 0 100 rlineto stroke 3200 -50 moveto 0 100 rlineto stroke 4000 -50 moveto 0 100 rlineto stroke -100 -300 moveto (0,0) show 700 -300 moveto (0,2) show 1500 -300 moveto (0,4) show 2300 -300 moveto (0,6) show 3100 -300 moveto (0,8) show 3900 -300 moveto (1,0) show %! 100 S-Einheiten = 2000 Skalen-Einheiten -50 0 moveto 100 0 rlineto stroke -50 800 moveto 100 0 rlineto stroke -50 1600 moveto 100 0 rlineto stroke -50 2400 moveto 100 0 rlineto stroke -50 3200 moveto 100 0 rlineto stroke -450 -80 moveto (0,0) show -450 720 moveto (0,2) show -450 1520 moveto (0,4) show -450 2320 moveto (0,6) show -450 3120 moveto (0,8) show TIS 4200 150 moveto (x) show xcolorl 1 eq {TL 0 -40 rmoveto (10) show 0 40 rmoveto TIS} if -300 2800 moveto (y) show xcolorl 1 eq {TL 0 -40 rmoveto (10) show 0 40 rmoveto TIS} if TBIS 2600 150 moveto xcolorl 0 eq {(CIE 1931) show} if xcolorl 1 eq {(CIE 1964) show} if newpath /fakt 4000 def 5 1 60 {/i exch def %i=5,60 AANSi i get fakt mul BANSi i get fakt mul i 05 eq {moveto} if i 06 ge i 59 le and {lineto} if i 60 eq {lineto closepath stroke} if } for %i=5,60 /xytshift 320 array def %min 4x65 /xytshift [ 0 000 000 (380) %0 0 000 000 (385) %1 0 000 000 (390) %2 0 000 000 (395) %3 1 -170 -170 (400) %4 0 000 000 (405) %5 0 000 000 (410) %6 0 000 000 (415) %7 0 000 000 (420) %8 0 000 000 (425) %9 0 000 000 (430) %10 0 000 000 (435) %11 0 000 000 (440) %12 0 000 000 (445) %13 1 -300 -050 (450) %14 S 0 000 000 (455) %15 0 000 000 (460) %16 0 000 000 (465) %17 0 000 000 (470) %18 1 -300 -030 (475) %19 0 000 000 (480) %20 0 000 000 (485) %21 1 -330 -050 (490) %22 1 -270 000 (495) %23 M=S 1 -300 -050 (500) %24 1 -300 -050 (505) %25 1 -330 -050 (510) %26 L=S 1 -300 050 (515) %27 1 -100 070 (520) %28 1 100 000 (525) %29 1 000 000 ( ) %30 1 050 000 (535) %31 1 000 000 ( ) %32 M 1 000 000 ( ) %33 1 050 030 (550) %34 1 000 000 ( ) %35 1 050 030 (560) %36 1 000 000 ( ) %37 1 050 030 (570) %38 L 1 000 000 ( ) %39 1 050 030 (580) %40 1 050 050 ( ) %41 1 050 030 (590) %42 1 050 050 ( ) %43 1 050 030 (600) %44 0 000 000 ( ) %45 1 050 070 (610) %46 0 000 000 ( ) %47 1 050 050 (620) %48 0 000 000 ( ) %49 0 000 000 (630) %50 0 000 000 ( ) %51 1 050 030 (640) %52 0 000 000 (645) %53 0 000 000 (650) %54 0 000 000 (655) %55 0 000 000 (660) %56 0 000 000 (665) %57 0 000 000 (670) %58 0 000 000 (675) %59 0 000 000 (680) %60 0 000 000 (685) %61 0 000 000 (690) %62 0 000 000 (695) %63 1 100 -50 (700) %64 ] def 0 1 64 {/i exch def %i=5,1,60 /i40 i 4 mul def xytshift i40 get 1 eq {%xytshift=1 0 0 0 0 setcmykcolor AANSi i get fakt mul BANSi i get fakt mul 30 0 360 arc fill %400,425,...,700 0 0 0 1 setcmykcolor AANSi i get fakt mul BANSi i get fakt mul 30 0 360 arc stroke %400,425,...,700 } if %xytshift=1 } for %i=5,1,60 TBIL 0 1 59 {/i exch def %i=0,65 /i40 i 4 mul def /i41 i40 1 add def /i42 i40 2 add def /i43 i40 3 add def xytshift i40 get 1 eq {%xytshift=1 AANSi i get fakt mul xytshift i41 get add BANSi i get fakt mul xytshift i42 get add moveto xytshift i43 get show } if %xytshift=1 } for %i=0,65 newpath /xytshiftZ 320 array def %min 4x65 /xytshiftZ [ 1 100 -50 (700) %0 see normal 1 050 -100 (495c,E) %1 1 050 -100 (500c,E) %2 0 050 -100 (505c,E) %3 1 100 -60 (510c,E) %4 0 050 -100 (515c,E) %5 0 050 -100 (520c,E) %6 1 050 -100 (525c,E) %7 0 050 -100 (530c,E) %8 0 050 -100 (535c,E) %9 0 050 -100 (540c,E) %10 0 050 -100 (545c,E) %11 1 050 -100 (550c,E) %12 0 050 -100 (555c,E) %13 0 050 -100 (560c,E) %14 S 1 050 -100 (565c,E) %15 0 -100 -150 (400) %16 see normal ] def 0 1 16 {/i exch def %i=5,5,60 /i40 i 4 mul def xytshiftZ i40 get 1 eq {%xytshiftZ=1 0 0 0 0 setcmykcolor AANZi i get fakt mul BANZi i get fakt mul 30 0 360 arc fill %400,405,...,700 0 0 0 1 setcmykcolor AANZi i get fakt mul BANZi i get fakt mul 30 0 360 arc stroke %400,405,...,700 } if %xytshiftZ=1 } for %i=0,1,16 TBIL 0 1 16 {/i exch def %i=0,16 /i40 i 4 mul def /i41 i40 1 add def /i42 i40 2 add def /i43 i40 3 add def xytshiftZ i40 get 1 eq {%xytshiftZ=1 AANZi i get fakt mul xytshiftZ i41 get add BANZi i get fakt mul xytshiftZ i42 get add moveto xytshiftZ i43 get show } if %xytshiftZ=1 } for %i=0,16 xtrans8 neg ytrans8 neg translate %scala & graphic (x,y) 0600 0400 } bind def %END proz_chromaticity_xy %************************************************ /proz_chromaticity_a2b2 {%BEG proz_chromaticity_a2b2 /FL 0.00001 def /fakt 1000 def /xtrans8 0500 def /ytrans8 3200 def xtrans8 ytrans8 translate %scala & graphic (a2,b2) 0500 3200 0 400 moveto 4000 0 rlineto stroke 0 400 moveto 0 -3600 rlineto stroke %! 100 S-Einheiten = 2000 Skalen-Einheiten TBS 0 350 moveto 0 100 rlineto stroke 800 350 moveto 0 100 rlineto stroke 1600 350 moveto 0 100 rlineto stroke 2400 350 moveto 0 100 rlineto stroke 3200 350 moveto 0 100 rlineto stroke 4000 350 moveto 0 100 rlineto stroke -150 500 moveto (-0,8) show 650 500 moveto (0,0) show 1450 500 moveto (0,8) show 2250 500 moveto (1,6) show 3050 500 moveto (2,4) show 3850 500 moveto (3,2) show %! 100 S-Einheiten = 2000 Skalen-Einheiten -50 0 moveto 100 0 rlineto stroke -50 -800 moveto 100 0 rlineto stroke -50 -1600 moveto 100 0 rlineto stroke -50 -2400 moveto 100 0 rlineto stroke -50 -3200 moveto 100 0 rlineto stroke -450 -100 moveto ( 0,0) show -450 -900 moveto (-0,8) show -450 -1700 moveto (-1,6) show %-450 -2500 moveto (-2,4) show -175 -3050 moveto 90 rotate TBIS (b) show TL 0 -40 rmoveto (2) show 0 40 rmoveto TIS 20 0 rmoveto xcolorl 1 eq {TL 0 -40 rmoveto (,10) show 0 40 rmoveto TIS} if TBS (=-0,40) show 20 0 rmoveto TBIS (z) show 20 0 rmoveto xcolorl 1 eq {TL 0 -40 rmoveto (10) show 0 40 rmoveto TIS} if TBIS (/y) show xcolorl 1 eq {TL 0 -40 rmoveto (10) show 0 40 rmoveto TIS} if -90 rotate 3450 150 moveto TBIS (a) show 20 0 rmoveto TL 0 -40 rmoveto (2) show 0 40 rmoveto TIS 20 0 rmoveto xcolorl 1 eq {TL 0 -40 rmoveto (,10) show 0 40 rmoveto TIS} if TBS (=\050) show 20 0 rmoveto TBIS (x) show 20 0 rmoveto xcolorl 1 eq {TL 0 -40 rmoveto (10) show 0 40 rmoveto TIS} if TBS (-0,110\051/) show 20 0 rmoveto TBIS (y) show 20 0 rmoveto xcolorl 1 eq {TL 0 -40 rmoveto (10) show 0 40 rmoveto TIS} if xtrans8 neg ytrans8 neg translate %scala & graphic (a2,b2) 0500 3200 newpath /fakt 1000 def /xtrans8 1300 def /ytrans8 3200 def xtrans8 ytrans8 translate %scala & graphic (a2,b2) 1300 3200 5 1 60 {/i exch def %i=5,60 AANSi i get fakt mul BANSi i get fakt mul i 05 eq {moveto} if i 06 ge i 59 le and {lineto} if i 60 eq {lineto closepath stroke} if } for %i=5,60 /xytshift 320 array def %min 4x65 /xytshift [ 0 000 000 (380) %0 0 000 000 (385) %1 0 000 000 (390) %2 0 000 000 (395) %3 1 -170 -170 (400) %4 0 000 000 (405) %5 0 000 000 (410) %6 0 000 000 (415) %7 0 000 000 (420) %8 0 000 000 (425) %9 0 000 000 (430) %10 0 000 000 (435) %11 0 000 000 (440) %12 0 000 000 (445) %13 1 -300 -050 (450) %14 S 0 000 000 (455) %15 0 000 000 (460) %16 0 000 000 (465) %17 0 000 000 (470) %18 1 -300 -030 (475) %19 0 000 000 (480) %20 0 000 000 (485) %21 1 -330 -050 (490) %22 1 -270 000 (495) %23 M=S 1 -300 -050 (500) %24 0 -300 -050 (505) %25 1 -330 -050 (510) %26 L=S 0 -300 050 (515) %27 1 -150 070 (520) %28 0 100 000 (525) %29 0 000 000 ( ) %30 0 050 000 (535) %31 1 -80 070 (540) %32 M 0 000 000 ( ) %33 0 000 030 (550) %34 0 000 000 ( ) %35 1 -80 070 (560) %36 0 000 000 ( ) %37 0 050 000 (570) %38 L 0 000 000 ( ) %39 1 050 070 (580) %40 0 050 050 ( ) %41 0 050 030 (590) %42 0 050 050 ( ) %43 1 -80 070 (600) %44 0 000 000 ( ) %45 0 050 070 (610) %46 0 000 000 ( ) %47 1 -80 050 (620) %48 0 000 000 ( ) %49 0 000 000 (630) %50 0 000 000 ( ) %51 1 -80 030 (640) %52 0 000 000 (645) %53 0 000 000 (650) %54 0 000 000 (655) %55 0 000 000 (660) %56 0 000 000 (665) %57 0 000 000 (670) %58 0 000 000 (675) %59 0 000 000 (680) %60 0 000 000 (685) %61 0 000 000 (690) %62 0 000 000 (695) %63 1 100 -50 (700) %64 ] def 0 1 64 {/i exch def %i=5,1,60 /i40 i 4 mul def xytshift i40 get 1 eq {%xytshift=1 0 0 0 0 setcmykcolor AANSi i get fakt mul BANSi i get fakt mul 30 0 360 arc fill %400,425,...,700 0 0 0 1 setcmykcolor AANSi i get fakt mul BANSi i get fakt mul 30 0 360 arc stroke %400,425,...,700 } if %xytshift=1 } for %i=5,1,60 TBIL 0 1 59 {/i exch def %i=0,65 /i40 i 4 mul def /i41 i40 1 add def /i42 i40 2 add def /i43 i40 3 add def xytshift i40 get 1 eq {%xytshift=1 AANSi i get fakt mul xytshift i41 get add BANSi i get fakt mul xytshift i42 get add moveto xytshift i43 get show } if %xytshift=1 } for %i=0,65 newpath /xytshiftZ 320 array def %min 4x65 /xytshiftZ [ 1 100 -50 (700) %0 see normal 1 050 -100 (495c,E) %1 1 050 -100 (500c,E) %2 0 050 -100 (505c,E) %3 1 100 -60 (510c,E) %4 0 050 -100 (515c,E) %5 0 050 -100 (520c,E) %6 1 050 -100 (525c,E) %7 0 050 -100 (530c,E) %8 0 050 -100 (535c,E) %9 0 050 -100 (540c,E) %10 0 050 -100 (545c,E) %11 1 050 -100 (550c,E) %12 0 050 -100 (555c,E) %13 0 050 -100 (560c,E) %14 S 1 050 -100 (565c,E) %15 0 -100 -150 (400) %16 see normal ] def 0 1 16 {/i exch def %i=5,5,60 /i40 i 4 mul def xytshiftZ i40 get 1 eq {%xytshiftZ=1 0 0 0 0 setcmykcolor AANZi i get fakt mul BANZi i get fakt mul 30 0 360 arc fill %400,405,...,700 0 0 0 1 setcmykcolor AANZi i get fakt mul BANZi i get fakt mul 30 0 360 arc stroke %400,405,...,700 } if %xytshiftZ=1 } for %i=0,1,16 TBIL 0 1 16 {/i exch def %i=0,16 /i40 i 4 mul def /i41 i40 1 add def /i42 i40 2 add def /i43 i40 3 add def xytshiftZ i40 get 1 eq {%xytshiftZ=1 AANZi i get fakt mul xytshiftZ i41 get add BANZi i get fakt mul xytshiftZ i42 get add moveto xytshiftZ i43 get show } if %xytshiftZ=1 } for %i=0,16 xtrans8 neg ytrans8 neg translate %scala & graphic (a2,b2) 1300 3200 } bind def %END proz_chromaticity_a2,b2 %***************************************************************** %%EndProlog gsave %lanindL2.EPS START 20000505 /lanind 0 def /lantex [(G) (E) (S) (F) (I) (J) (M)] def /showde {0 lanind eq {show} {pop} ifelse} bind def /showen {1 lanind eq {show} {pop} ifelse} bind def /showes {2 lanind eq {show} {pop} ifelse} bind def /showfr {3 lanind eq {show} {pop} ifelse} bind def /showit {4 lanind eq {show} {pop} ifelse} bind def /showjp {5 lanind eq {show} {pop} ifelse} bind def /showea {1 lanind le {show} {pop} ifelse} bind def /lanindf where {pop /lanind1 lanindf def /lanind2 lanindf def /lanindd laninddf def} {/lanind1 0 def /lanind2 0 def} ifelse /colormf where {pop /colorm1 colormf def /colorm2 colormf def /colormd colormdf def} {/colorm1 0 def} ifelse /deintpf where {pop /deintp1 deintpf def /deintp2 deintpf def /deintpd deintpdf def} {/deintp1 0 def} ifelse /xcolorf where {pop /xcolor1 xcolorf def /xcolor2 xcolorf def /xcolord xcolordf def} {/xcolor1 0 def} ifelse /xchartf where {pop /xchart1 xchartf def /xchart2 xchartf def /xchartd xchartdf def /xchartm xchart2f xchart1f sub 1 add def} {/xchart1 1 def /xchartm 1 def} ifelse /xchart3f where {pop /xchart3 xchart3f def} {/xchart3 0 def} ifelse /xchart4f where {pop /xchart4 xchart4f def} {/xchart4 0 def} ifelse /pchartf where {pop /pchart1 pchartf def /pchart2 pchartf def /pchartd pchartdf def} {/pchart1 3 def} ifelse /colsepf where {pop /colsep1 colsepf def /colsep2 colsepf def /colsepd colsepdf def} {/colsep1 0 def} ifelse /pmetamf where {pop /pmetam1 pmetamf def /pmetam2 pmetamf def /pmetamd pmetamdf def} {/pmetam1 0 def} ifelse %either defaul values for xchart=0 or values for xchart=1 /lanind lanind1 def % /colorm colorm1 def % /deintp deintp1 def % /xcolor xcolor1 def % /xchart xchart1 def % /pchart pchart1 def % /colsep colsep1 def % /pmetam pmetam1 def % colorm 0 eq deintp 0 eq and {/Txx (d) def} if %colorm=0, deintp=0 colorm 0 eq deintp 1 eq and {/Txx (e) def} if %colorm=0, deintp=1 colorm 1 eq deintp 0 eq and {/Txx (dd) def} if %colorm=1, deintp=0 colorm 1 eq deintp 1 eq and {/Txx (de) def} if %colorm=1, deintp=1 xchart 0 eq {/Txx (-) def} if %always independent of intended output gsave %LANINDL2 END /cvishow {cvi 6 string cvs show ( ) show} def /cvsshow1 {10 mul cvi 0.1 mul 9 string cvs show ( ) show} def /cvsshow2 {100 mul cvi 0.01 mul 9 string cvs show ( ) show} def /cvsshow3 {1000 mul cvi 0.001 mul 9 string cvs show ( ) show} def /cvsshow4 {10000 mul cvi 0.0001 mul 9 string cvs show ( ) show} def /cvsshow5 {100000 mul cvi 0.00001 mul 9 string cvs show ( ) show} def /TELi 8 array def /xchart8 1 def %0:Pxx, 1:Dxx xchart8 0 eq {%xchart8=0 Pxx /TELi [(P60) (P55) (P50) (P45) (P40) (P35) (P30) (P25)] def %7 illumin. } if %xchart8=0 xchart8 1 eq {%xchart8=1 Dxx /TELi [(D65) (D50) (P40) (A00) (E00) (C00) (P00) (Q00)] def %7 illumin. } if %xchart8=1 /SD65 82 array def %380 bis 775 mit deltalambda=05 /SD50 82 array def %380 bis 775 mit deltalambda=05 /SP40 82 array def %380 bis 775 mit deltalambda=05 /SA00 82 array def %380 bis 775 mit deltalambda=05 /SE00 82 array def %380 bis 775 mit deltalambda=05 /SC00 82 array def %380 bis 775 mit deltalambda=05 /SP00 82 array def %380 bis 775 mit deltalambda=05 /SQ00 82 array def %380 bis 775 mit deltalambda=05 /SDAK 82 array def %380 bis 775 mit deltalambda=05 /RA 82 array def %380 bis 770 nm /F2 240 array def %3 x 80 Daten fuer Bereich 380 bis 770nm /F2N 240 array def %normiert auf Y=100 fuer D65 und 10nm /F10 240 array def %3 x 80 Daten fuer Bereich 380 bis 770nm %C %C LITERATURQUELLEN LICHTARTEN %C SA,SC,SD65, CIE-DOKUMENT NR.15 FARBMESSUNG, 1971 %C TABELLE 1.1.1, SEITE 81 %C SD55,SD75, CIE-DOKUMENT NR.15 FARBMESSUNG, 1971 %C TABELLE 1.1.4, SEITE 85 %C LINEAR INTERPOLIERT VON 5 ZU 5NM %C SG,SP,SXE, DIN 5033, BLATT 7 ,SEITE 8-9 %C AUSGABE 1966 /SD65 %80 data 5 nm [50.0 52.3 54.6 68.7 82.8 87.1 91.5 92.5 93.4 90.1 86.7 95.8 104.9 110.9 117.0 117.4 117.8 116.3 114.9 115.4 115.9 112.4 108.8 109.1 109.4 108.6 107.8 106.3 104.8 106.2 107.7 106.0 104.4 104.2 104.0 102.0 100.0 98.2 96.3 96.1 95.8 92.2 88.7 89.3 90.0 89.8 89.6 88.6 87.7 85.5 83.3 83.5 83.7 81.9 80.0 80.1 80.2 81.2 82.3 80.3 78.3 74.0 69.7 70.7 71.6 73.0 74.3 68.0 61.6 65.7 69.9 72.5 75.1 69.3 63.6 55.0 46.4 56.6 66.8 65.1] def /SD50 %80 data 5 nm CIE 15.3, Seite 30; aus JE540-1N.PS [24.5 27.2 29.9 39.6 49.3 52.9 56.5 58.3 60.0 58.9 57.8 66.3 74.8 81.0 87.2 88.9 90.6 91.0 91.4 93.2 95.1 93.5 92.0 93.8 95.7 96.2 96.6 96.8 97.1 99.6 102.1 101.4 100.8 101.5 102.3 101.2 100.0 98.9 97.7 98.3 98.9 96.2 93.5 95.6 97.7 98.5 99.3 99.2 99.0 97.4 95.7 97.3 98.9 97.3 95.7 96.9 98.2 100.6 103.0 101.1 99.1 93.3 87.4 89.5 91.6 92.2 92.9 84.9 76.9 81.7 86.5 89.5 92.6 85.4 78.2 68.0 57.7 70.3 82.9 0.0] def %0.0 not used /SA00 %80 data 5 nm CIE 15.3 Seite 30; aus JE540-1N.PS [9.80 10.90 12.09 13.35 14.71 16.15 17.68 19.29 20.99 22.79 24.67 26.64 28.70 30.85 33.09 35.41 37.81 40.30 42.87 45.52 48.24 51.04 53.91 56.85 59.86 62.93 66.06 69.25 72.50 75.79 79.13 82.52 85.95 89.41 92.91 96.44 100.00 103.58 107.18 110.80 114.44 118.08 121.73 125.39 129.04 132.70 136.35 139.99 143.62 147.24 150.84 154.42 157.98 161.52 165.03 168.51 171.96 175.38 178.77 182.12 185.43 188.70 191.93 195.12 198.26 201.36 204.41 207.41 210.36 213.27 216.12 218.92 221.67 224.36 227.00 229.59 232.12 234.59 237.01 239.37 0.0] def %0.0 not used % AUS BILDPLA.FOR aus vrbam/wrpos:KRPROG.FOR, 5987-6023 5.10.92 %C PROGRAMM ZUR BERECHNUNG DER RELATIVEN SPEKTRALEN STRAHLUNGSVERTEI- %C LUNG EINES HOHLRAUMSTRAHLERS ALS FUNKTION DER WELLENLAENGE LAMDA %C BEI GEGEBENER TEMPERATUR T %C VERWENDETE VARIABLE %C T TEMPERATUR %C C2 PLANCKSCHE KONSTANTE (=1.4388 CM K (1967)) %C LAMDA(I) WELLENLAENGE %C S(I) STRAHLUNGSVERTEILUNG DES HOHLRAUMSTRAHLERS %C %C LITERATUR OFFIZIELLE EMPFEHLUNGEN DER CIE,DEUTSCHE VERSION, %C CA. 1969, SEITE 21 UND TABELLE 1.1.1 %C %SDP4 82 array def %380 bis 775 mit deltalambda=05 % DO 50 I=1,54 % 50 S(I)=100. % 1*(560./FLOAT(LAMDA(I)))**5 % 2*(EXP(C2/(560.*10.**(-7)*T))-1.) % 3/(EXP(C2/(FLOAT(LAMDA(I))*10.**(-7)*T))-1.) %new CIE 15.3:2004, Eq. (3.1) page 2 %S(I) = [100{560/lambda}**5] [exp{(c2*10**7)/(TNC*560 )} - 1] % /[exp{(c2*10**7)/(TNC*lambda)} - 1] % exp = e {...} = 2.71 {...} %/TNC 2848 def %NLA /EE 2.718281 def %e=mac pocket calculator /C2 1.4350000 10 7 exp mul def /lamd 82 array def xchart8 1 eq {%xchart8=1 Dxx /TNC 4000 def %******************************************** 0 1 79 {%i=0,79 /i exch def /lambda 380 i 5 mul add def lamd i lambda put /E1 560 lambda div 5 exp def /E4 C2 TNC 560 mul div def /E5 C2 TNC lambda mul div def /E6 EE E4 exp def /E7 EE E5 exp def SP40 i E1 100 mul E6 1 sub E7 1 sub div mul put } for %i=0,79 } if %xchart8=1 Dxx %****************************************** xchart8 0 eq {%xchart8=0 Pxx %defined only for xchart8=0 Pxx /TNCj 8 array def /TNCj [6000 5500 5000 4500 4000 3500 3000 2500] def /SP60 82 array def %380 bis 775 mit deltalambda=05 /SP55 82 array def %380 bis 775 mit deltalambda=05 /SP50 82 array def %380 bis 775 mit deltalambda=05 /SP45 82 array def %380 bis 775 mit deltalambda=05 /SP40 82 array def %380 bis 775 mit deltalambda=05 /SP35 82 array def %380 bis 775 mit deltalambda=05 /SP30 82 array def %380 bis 775 mit deltalambda=05 /SP25 82 array def %380 bis 775 mit deltalambda=05 0 1 7 {/j exch def %j=0,7 0 1 79 {%i=0,79 /i exch def /lambda 380 i 5 mul add def lamd i lambda put /E1 560 lambda div 5 exp def /E4 C2 TNCj j get 560 mul div def /E5 C2 TNCj j get lambda mul div def /E6 EE E4 exp def /E7 EE E5 exp def j 0 eq {SP60 i} if j 1 eq {SP55 i} if j 2 eq {SP50 i} if j 3 eq {SP45 i} if j 4 eq {SP40 i} if j 5 eq {SP35 i} if j 6 eq {SP30 i} if j 7 eq {SP25 i} if E1 100 mul E6 1 sub E7 1 sub div mul put } for %i=0,79 } for %j=0,7 } if %xchart8=0 %************************************************* /SE00 %80 data 5 nm [100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0] def %0.0 not used /SC00 %80 data 5 nm [ 33.00 39.92 47.40 55.17 63.30 71.81 80.60 89.53 98.10 105.80 112.40 117.75 121.50 123.45 124.00 123.60 123.10 123.30 123.80 124.09 123.90 122.92 120.70 116.90 112.10 106.98 102.30 98.81 96.90 96.78 98.00 99.94 102.10 103.95 105.20 105.67 105.30 104.11 102.30 100.15 97.80 95.43 93.20 91.22 89.70 88.83 88.40 88.19 88.10 88.06 88.00 87.86 87.80 87.99 88.20 88.20 87.90 87.22 86.30 85.30 84.00 82.21 80.20 78.24 76.30 74.36 72.40 70.40 68.30 66.30 64.40 62.80 61.50 60.20 59.20 58.50 58.10 58.00 58.20 58.50 ] def %0.0 not used 0 1 79 {/i exch def %i=0,79 /lamda 380 i 5 mul add def SP00 i SE00 i get lamda 560 div mul put SQ00 i SE00 i get 1120 lamda sub 560 div mul put } for %i=0,79 %C LITERATURQUELLEN SPEKTRALWERTE %C F2 CIE-DOKUMENT NR.15 FARBMESSUNG, 1971 %C TABELLE 2.1, SEITE 93-102 /F2 %3x80 data [.001368 .002236 .004243 .007650 .01431 .02319 .04351 .07763 .1344 .2148 .2839 .3285 .3483 .3481 .3362 .3187 .2908 .2511 .1954 .1421 .09564 .05795 .03201 .01470 .0049 .0024 .0093 .0291 .06327 .1096 .1655 .2257 .2904 .3597 .4334 .5121 .5945 .6784 .7621 .8425 .9163 .9786 1.0263 1.0567 1.0622 1.0456 1.0026 .9384 .8544 .7514 .6424 .5419 .4479 .3608 .2835 .2187 .1649 .1212 .0874 .0636 .04677 .03290 .02270 .01584 .01136 .00811 .00579 .004109 .002899 .002049 .001440 .0009999 .0006901 .000476 .0003323 .0002348 .0001662 .0001174 .00008308 .00005871 .000039 .000064 .00012 .000217 .000396 .00064 .00121 .00218 .004 .0073 .0116 .01684 .023 .0298 .0380 .048 .06 .0739 .09098 .1126 .139 .1693 .208 .2586 .323 .4073 .503 .6082 .71 .7932 .862 .9149 .954 .9803 .995 1.0 .995 .9786 .952 .9154 .870 .8163 .757 .6949 .631 .5668 .503 .4412 .381 .321 .265 .217 .175 .1382 .107 .0816 .061 .04458 .032 .0232 .017 .01192 .00821 .005723 .004102 .002929 .002091 .001484 .001047 .00074 .00052 .0003611 .0002492 .0001719 .00012 .0000848 .00006 .0000424 .00003 .0000212 .00645 .01055 .02005 .03621 .06785 .1102 .2074 .3713 .6456 1.0391 1.3856 1.623 1.7471 1.7826 1.7721 1.7441 1.6692 1.5281 1.2876 1.0419 .8130 .6162 .4652 .3533 .2720 .2123 .1582 .1117 .07825 .05725 .04216 .02984 .0203 .0134 .00875 .00575 .0039 .00275 .0021 .0018 .00165 .0014 .0011 .0010 .0008 .0006 .00034 .00024 .00019 .0001 .00005 .00003 .00002 .00001 % 26*0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 %10 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 %20 0.0 0.0 0.0 0.0 0.0 0.0 %26 ] def /F10 %3x80 data [.00016 .0006624 .002362 .007242 .01911 .0434 .08474 .1406 .2045 .2647 .3147 .3577 .3837 .3867 .3707 .343 .3023 .2541 .1956 .1323 .08051 .04107 .01617 .005132 .003816 .01544 .03746 .07136 .1177 .173 .2365 .3042 .3768 .4516 .5298 .6161 .7052 .7938 .8787 .9512 1.0142 1.0743 1.1185 1.1343 1.124 1.0891 1.0305 .9507 .8563 .7549 .6475 .5351 .4316 .3437 .2683 .2043 .1526 .1122 .08126 .05793 .04085 .02862 .019941 .01384 .0100 .006605 .004552 .003145 .002175 .001506 .001045 .0007274 .0005083 .0003564 .000251 .0001777 .0001264 .00009015 .00006453 .00004634 .00001736 .00007156 .0002534 .0007685 .002004 .004509 .008756 .01446 .02139 .0295 .03868 .0496 .06208 .0747 .08946 .1063 .1282 .1528 .1852 .2199 .2536 .2977 .3391 .3954 .4608 .5314 .6067 .6857 .7618 .8233 .8752 .9238 .962 .9822 .9918 .9991 .9973 .9824 .9555 .9152 .8689 .8256 .7774 .7203 .6583 .5939 .528 .4618 .3981 .3395 .2835 .2282 .1798 .1402 .1076 .08119 .06028 .0441 .0318 .0226 .0159 .01113 .007749 .0053751 .0037177 .002565 .001768 .001222 .0008462 .0005864 .0004074 .000284 .0001987 .0001395 .00009843 .00006982 .00004974 .00003554 .00002549 .00001834 .0007048 .002928 .01048 .03234 .08601 .1971 .3894 .6568 .9725 1.2825 1.5535 1.7985 1.9673 2.0273 1.9948 1.9007 1.7454 1.5549 1.3176 1.0302 .7721 .5701 .4152 .3024 .2185 .1592 .112 .08225 .06071 .04305 .03045 .02058 .01368 .007918 .003988 .001091 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 %10 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 %20 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 %30 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 %40 0.0 0.0 0.0 0.0 %44 ] def %calculation of transformation data /FARBE 30 array def /FARBE [(R) (m) ( 561_770) %00 (Y) (m) ( 520_770) %01 (G) (m) ( 475_573) %02 (C) (m) ( 380_561) %03 (B) (m) ( 380_520) %04 (M) (m) ( 573_475) %05 (G) (o) ( 520_570) %06 (M) (o) ( 570_520) %07 (W) (0) ( 380_770) %08 (N) (0) ( 380_770) %09 ] def /xshift 10 array def %max 6 device + 4 elementary /yshift 10 array def /colori 10 array def /RX0 720 array def %9x80 /RX0 [ %(%Rm 00 560_770) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0036 0036 0036 0036 0036 0036 0468 0900 0900 0900 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %(%Ym 01 520_770) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0036 0036 0036 0036 0036 0036 0036 0036 0468 0900 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %(%Gm 02 475_575) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0036 0036 0036 0036 0036 0036 0036 0036 0036 0468 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0900 0900 0900 0900 0900 0900 0900 0900 0900 0468 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %(%Cm 03 380_560) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0900 0900 0900 0900 0900 0900 0468 0036 0036 0036 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %(%Bm 04 380_520) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0900 0900 0900 0900 0900 0900 0900 0900 0468 0036 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %(%Mm 05 575_475) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0900 0900 0900 0900 0900 0900 0900 0900 0900 0468 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0036 0036 0036 0036 0036 0036 0036 0036 0036 0468 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %(%Go 06 520_570) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0036 0036 0036 0036 0036 0036 0036 0036 0468 0900 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0900 0900 0900 0900 0900 0900 0900 0900 0468 0036 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %(%Mo 07 570_520) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0900 0900 0900 0900 0900 0900 0900 0900 0468 0036 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0036 0036 0036 0036 0036 0036 0036 0036 0468 0900 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %(%W0(r=0,900) 08 380_770) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %(%N0(r=0,036) 09 380_770) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 ] def /xcol10_BS {TBL 0 -50 rmoveto (10) show 0 50 rmoveto TBS} bind def /xcol10KBS {TBL 0 -50 rmoveto (,10) show 0 50 rmoveto TBS} bind def /xcolorl xcolor def 0 1 0 {/xcolorl exch def %xcolorl=0,0 xcolorl 1 eq {0 1 239 {/i exch def %i=0,239 F2 i F10 i get put } for %i=0,239 } if /YKSUM 0 def %For CIE Illuminant E 0 1 79 {/i exch def %i=0,1,79 /YKSUM YKSUM F2 80 i add get add def } for %i=0,1,79 /F2N 240 array def 0 1 79 {/i exch def %i=0,1,79 F2N 00 i add F2 00 i add get YKSUM div 100 mul put F2N 80 i add F2 80 i add get YKSUM div 100 mul put F2N 160 i add F2 160 i add get YKSUM div 100 mul put } for %i=0,1,79 /FXN 82 array def %FXN 0 = F2N imax /FYN 82 array def /FZN 82 array def %defines FXN, FYN, FZN 0 to 79 0 1 79 {/i exch def %i=0,79 FXN i F2N 000 i add get put FYN i F2N 080 i add get put FZN i F2N 160 i add get put } for %i=0,79 %special wavelength range with complementary colours for E? /FXD 63 array def /FYD 63 array def /FZD 63 array def /DOW 63 array def 00 1 60 {/i exch def %i=0,60 %range 400..700nm FXD i FXN 005 i add get put FYD i FYN 005 i add get put FZD i FZN 005 i add get put DOW i 400 i 5 mul add put %range 400 to 700 } for %i=0,60 %for interpolation FXD 61 FXD 60 get put FYD 61 FYD 60 get put FZD 61 FZD 60 get put FXD 62 FXD 60 get put FYD 62 FYD 60 get put FZD 62 FZD 60 get put /FAD 63 array def /FBD 63 array def /FCD 63 array def 20 setlinewidth /xdel 1005 def /ydel 395 def /x0 050 def /x1 -150 def /Xi 82 array def %80 spectral colours 380 to 775nm /Yi 82 array def /Zi 82 array def /XANi 82 array def /YANi 82 array def /ZANi 82 array def /AANi 82 array def %actual data for plot, spectral colours /BANi 82 array def /FXNZ 17 array def /FYNZ 17 array def /FZNZ 17 array def /XZi 17 array def /YZi 17 array def /ZZi 17 array def /XANZi 17 array def /YANZi 17 array def /ZANZi 17 array def /AANZi 17 array def %actual data for plot, purple colours /BANZi 17 array def /XRj 10 array def %10 spectral or max 10 device colours /YRj 10 array def /ZRj 10 array def /XANRj 10 array def /YANRj 10 array def /ZANRj 10 array def /XSj 10 array def %10 spectral or max 10 device atagonistic colours /YSj 10 array def /ZSj 10 array def /XANSj 10 array def /YANSj 10 array def /ZANSj 10 array def /XCj 10 array def %10 spectral from continuous colours /YCj 10 array def /ZCj 10 array def /XANCj 10 array def /YANCj 10 array def /ZANCj 10 array def /XAj 10 array def %10 spectral from continuous colours /YAj 10 array def /ZAj 10 array def /XANAj 10 array def /YANAj 10 array def /ZANAj 10 array def /RAk 82 array def 3 1 3 {/xchart4 exch def %xchart4=0,7 /xchartl xchart def %0 1 7 {/xchartl exch def %xchartl=0,7 %/YF 0 def %for normalization 1 /YF 1 def %for normalization 0,900 YF 0 eq {/YFR 1.00 def}{/YFR 0.90 def} ifelse gsave 5 /Times-ISOL1 FS /cvishow {cvi 6 string cvs show} def %75 85 moveto %lanind cvishow (-) show %colorm cvishow %deintp cvishow %xcolorl cvishow %xchart cvishow %pchart cvishow %colsep cvishow (-L) show pmetam cvishow 5 /Times-ISOL1 FS 72 86 moveto (egw41-4a enh31-4n) show 72 90 translate 0.010 MM dup scale 25 setlinewidth 0 0 0 0 setcmyk_olvcolor 0 0 moveto 6000 0 rlineto 0 4000 rlineto 6000 neg 0 rlineto closepath fill 0 0 moveto 6000 0 rlineto 0 4000 rlineto -6000 0 rlineto closepath clip 0 0 0 1 setcmyk_olvcolor 0 0 moveto 6000 0 rlineto 0 4000 rlineto 6000 neg 0 rlineto closepath stroke %calculation of XW,YW,ZW for 8 illuminants Dxx or Pxx 0 1 79 {/i exch def %i=0,79 SDAK i xchart8 0 eq {%xchart8=0 Pxx xchartl 0 eq {SP60 i get put} if xchartl 1 eq {SP55 i get put} if xchartl 2 eq {SP50 i get put} if xchartl 3 eq {SP45 i get put} if xchartl 4 eq {SP40 i get put} if xchartl 5 eq {SP35 i get put} if xchartl 6 eq {SP30 i get put} if xchartl 7 eq {SP25 i get put} if }%xchart8=0 Pxx {%xchart8=1 Dxx xchartl 0 eq {SD65 i get put} if xchartl 1 eq {SD50 i get put} if xchartl 2 eq {SP40 i get put} if xchartl 3 eq {SA00 i get put} if xchartl 4 eq {SE00 i get put} if xchartl 5 eq {SC00 i get put} if xchartl 6 eq {SP00 i get put} if xchartl 7 eq {SQ00 i get put} if } ifelse %xchart8=1 Dxx } for %i=0,79 /YKSUM 0 def 0 1 79 {/i exch def %i=0,1,79 /YKSUM YKSUM SDAK i get F2 80 i add get mul add def } for %i=0,1,79 0 1 79 {/i exch def %i=0,1,79 F2N 00 i add SDAK i get F2 00 i add get mul YKSUM div 100 mul put F2N 80 i add SDAK i get F2 80 i add get mul YKSUM div 100 mul put F2N 160 i add SDAK i get F2 160 i add get mul YKSUM div 100 mul put } for %i=0,1,79 %XW,YW,ZW for white /XW 0 def /YW 0 def /ZW 0 def 0 1 079 {/i exch def %i=0,79 /XW XW F2N 00 i add get add def /YW YW F2N 80 i add get add def /ZW ZW F2N 160 i add get add def } for %i=0,79 /SUMW XW YW add ZW add def %for D65, D50, P40, A00, E00 /XANW XW SUMW div def /YANW YW SUMW div def /ZANW ZW SUMW div def /AANW XW YW 0.0001 add div def /BANW ZW YW 0.0001 add div 0.4 mul neg def %************************************************ %XYZRj for 10 reflections 0 1 09 {/j exch def %j=0,9 %10 Reflections /jx j 80 mul def 0 1 79 {/i exch def %i=0,79 RAk i RX0 jx i add get 1000 div put } for %i=0,79 /XR 0 def /YR 0 def /ZR 0 def 0 1 079 {/i exch def %i=0,79 /XR XR F2N 00 i add get RAk i get mul add def /YR YR F2N 80 i add get RAk i get mul add def /ZR ZR F2N 160 i add get RAk i get mul add def } for %i=0,79 XRj j XR put YRj j YR put ZRj j ZR put /SUMR XR YR add ZR add def XANRj j XR SUMR 0.0001 add div put YANRj j YR SUMR 0.0001 add div put ZANRj j ZR SUMR 0.0001 add div put } for %j=0,9 %******************************************* 0 1 62 {/i exch def %i=0,62 FAD i FXD i get put FBD i FYD i get put FCD i FZD i get put } for %i=0,62 % FXU(1)=FF(2)*U(3)-FF(3)*U(2) % FXU(2)=FF(3)*U(1)-FF(1)*U(3) % FXU(3)=FF(1)*U(2)-FF(2)*U(1) % SUBROUTINE DOWEL (F,FXU,IMAX,IO) % DIMENSION F(99,3),FXU(3) % I=1 % T2=F(1,1)*FXU(1)+F(1,2)*FXU(2)+F(1,3)*FXU(3) % IF(T2) 1,1,4 % 1 T1=T2 % I=I+1 % T2=F(I,1)*FXU(1)+F(I,2)*FXU(2)+F(I,3)*FXU(3) % IF(T2) 1,1,2 % 2 IF(T1) 3,3,1 % 3 IO=I-1 % RETURN % 4 T1=F(IMAX,1)*FXU(1)+F(IMAX,2)*FXU(2)+F(IMAX,3)*FXU(3) % IF(T1) 5,5,1 % 5 IO=IMAX % RETURN % END %********************************************************* /proc_ABC_KNP_FWERTiX {%BEG proc_ABC_KNP_FWERT %input FAD,FBD,FCD, KNP %output FWERTiX/Y/Z (i=1,4) kNP 1 ge {/FWERT1X FAD kNP 1 sub get def /FWERT1Y FBD kNP 1 sub get def /FWERT1Z FCD kNP 1 sub get def} {/FWERT1X FAD 0 get def %again 400nm for i=0 /FWERT1Y FBD 0 get def /FWERT1Z FCD 0 get def} ifelse /FWERT2X FAD kNP get def /FWERT2Y FBD kNP get def /FWERT2Z FCD kNP get def /FWERT3X FAD kNP 1 add get def /FWERT3Y FBD kNP 1 add get def /FWERT3Z FCD kNP 1 add get def /FWERT4X FAD kNP 2 add get def /FWERT4Y FBD kNP 2 add get def /FWERT4Z FCD kNP 2 add get def } bind def %END proc_ABC_KNP_FWERTiX %********************************************************* /proc_XIE_TN1 {%BEG proc_XIE_TN1 %input XIE, FWERTiX/Y/Z (i=1,4) %output TN1 /A1N XIE 1 XIE sub mul XIE 2 sub mul 6 div def /A2N XIE 1 add XIE 1 sub mul XIE 2 sub mul 0.5 mul def /A3N XIE 1 add XIE mul 2 XIE sub mul 0.5 mul def /A4N XIE 1 add XIE mul XIE 1 sub mul 6 div def /FNX A1N FWERT1X mul A2N FWERT2X mul add A3N FWERT3X mul add A4N FWERT4X mul add def /FNY A1N FWERT1Y mul A2N FWERT2Y mul add A3N FWERT3Y mul add A4N FWERT4Y mul add def /FNZ A1N FWERT1Z mul A2N FWERT2Z mul add A3N FWERT3Z mul add A4N FWERT4Z mul add def /TNX FNX FXU1 mul FNY FXU2 mul add FNZ FXU3 mul add def } bind def %END proc_XIE_TN1 %********************************************************* /WEL1 60 array def %irregular definition /WEL2 60 array def %irregular definition %0 1 2 3 4 5 6 7 8 9 /WEL1 [405 435 450 460 465 470 475 480 485 490 495 500 510 520 530 540 545 550 555 560 ] def 0 1 19 {/k exch def %k=0,19 %wavelength 405..700nm /j WEL1 k get 400 sub 5 idiv def /LP k def /LPP 20.5 k add def /FF1 FXD j get def %start at 405..700nm /FF2 FYD j get def /FF3 FZD j get def /U1 XW def /U2 YW def /U3 ZW def /FXU1 FF2 U3 mul FF3 U2 mul sub def /FXU2 FF3 U1 mul FF1 U3 mul sub def /FXU3 FF1 U2 mul FF2 U1 mul sub def /INP -1 def /IPN -1 def %assumption jump from TN to TP from negativ to positiv 0 1 60 {/i exch def %i=1,60 /TN FAD i get FXU1 mul FBD i get FXU2 mul add FCD i get FXU3 mul add def /TP FAD i 1 add get FXU1 mul FBD i 1 add get FXU2 mul add FCD i 1 add get FXU3 mul add def TN 0 le TP 0 gt and {/INP i def exit} if } for %i=1,60 0 1 60 {/i exch def %i=1,60 /TN FAD i get FXU1 mul FBD i get FXU2 mul add FCD i get FXU3 mul add neg def /TP FAD i 1 add get FXU1 mul FBD i 1 add get FXU2 mul add FCD i 1 add get FXU3 mul add neg def TN 0 le TP 0 gt and {/IPN i def exit} if } for %i=1,60 %********************************************************* /kNP INP def kNP 0 ge {%kNP>=0 proc_ABC_KNP_FWERTiX %input FAD,KNP, output FWERTiXYZ (i=1,4) /XIE1 0 def %start values TN=0 for XIE1, TP>0 for XIE2 /XIE2 1 def 0 1 9 {/mk exch def %mk=0,9 /XIE XIE1 XIE2 add 0.5 mul def proc_XIE_TN1 %input XIE, ouput TN1 TNX 0 le {/XIE1 XIE def /TN1 TNX def} {/XIE2 XIE def /TP1 TNX def} ifelse } for %mk=0,9 /XIE XIE1 XIE2 add 0.5 mul def /DOWXIE1 DOW INP get DOW INP 1 add get DOW INP get sub XIE mul add def /XIENP XIE def } if %kNP>=0 %********************************************************* /kNP IPN def kNP 0 ge {%kNP>=0 proc_ABC_KNP_FWERTiX %input FAD,KNP, output FWERTiXYZ (i=1,4) /XIE1 0 def %start values TN=0 for XIE1, TP>0 for XIE2 /XIE2 1 def /FXU1 FXU1 neg def /FXU2 FXU2 neg def /FXU3 FXU3 neg def 0 1 9 {/mk exch def %mk=0,9 /XIE XIE1 XIE2 add 0.5 mul def proc_XIE_TN1 %input XIE, ouput TN1 TNX 0 le {/XIE1 XIE def /TN1 TNX def} {/XIE2 XIE def /TP1 TNX def} ifelse } for %mk=0,9 /XIE XIE1 XIE2 add 0.5 mul def /DOWXIE2 DOW IPN get DOW IPN 1 add get DOW IPN get sub XIE mul add def /XIEPN XIE def } if %kNP>=0 %********************************************************* 0 1 79 {/i exch def %i=0,79 RA i 0.036 put } for %i=0,79 INP -1 eq {/i1 0 def} %380nm {/i1 INP 5 add def} ifelse %405..700nm IPN -1 eq {/i2 79 def} %770nm {/i2 IPN 5 add def} ifelse %405..700nm i2 i1 ge {%i1i2 i1 1 79 {/i exch def %i=i1,79 RA i 0.900 put } for %i=i1,79 0 1 i2 {/i exch def %i=0,i2 RA i 0.900 put } for %i=0,i2 } ifelse %i1>i2 %correction (0.900+0.036)/2=0.648 i2 i1 ge {%i1i2 RA i1 0.468 put RA i2 0.468 XIEPN 0.5 sub add put } ifelse %i1>i2 %*************************************************** /X 0 def /Y 0 def /Z 0 def 0 1 079 {/i exch def %i=0,79 /X X F2N 00 i add get RA i get mul add def /Y Y F2N 80 i add get RA i get mul add def /Z Z F2N 160 i add get RA i get mul add def } for %i=0,79 /SUM X Y add Z add def /XAN X SUM 0.0001 add div def /YAN Y SUM 0.0001 add div def /ZAN Z SUM 0.0001 add div def %************************************************* 0 0 0 1 setcmyk_olvcolor 0 1 1 {/Icom exch def %Icom=0,1 Icom 0 eq {%Icom=0,1 Xi k X put Yi k Y put Zi k Z put XANi k XAN put YANi k YAN put ZANi k ZAN put }%Icom=0 {%Icom=1 /kP 20 k add def Xi kP XW X sub put Yi kP YW Y sub put Zi kP ZW Z sub put /SUMi Xi kP get Yi kP get add Zi kP get add def XANi kP Xi kP get SUMi 0.0001 add div put YANi kP Yi kP get SUMi 0.0001 add div put ZANi kP Zi kP get SUMi 0.0001 add div put } ifelse %Icom=1 } for %Icom=0,1 YF 1 eq {%YF=1 Xi k Xi k get 0.9000 mul put Yi k Yi k get 0.9000 mul put Zi k Zi k get 0.9000 mul put Xi kP Xi kP get 0.9000 mul put Yi kP Yi kP get 0.9000 mul put Zi kP Zi kP get 0.9000 mul put } if %YF=1 } for %k=0,19 %********************************************************************** %XW,YW,ZW and XK,YK,ZK for white /XW 0 def /YW 0 def /ZW 0 def 0 1 079 {/i exch def %i=0,79 /XW XW F2N 00 i add get add def /YW YW F2N 80 i add get add def /ZW ZW F2N 160 i add get add def } for %i=0,79 YF 0 eq {%YF=0 /XK XW def /YK YW def /ZK ZW def }%YF=0 {%YF=1 /XK XW YFR mul def /YK YW YFR mul def /ZK ZW YFR mul def } ifelse %YF=1 /SUMK XK YK add ZK add def %for D65, D50, P40, A00, E00 /XANK XK SUMK div def /YANK YK SUMK div def /ZANK ZK SUMK div def /LP LP 1 add def /xtexti 96 array def /ytexti 96 array def /xtexti [ %T00 T10 T20 T30 T40 T41 T50 T51 T60 T61 T70 T71 %0 1 2 3 4 5 6 7 8 9 10 11 1700 2000 2000 3000 3200 4300 3200 4300 3200 4300 3200 4300 %0 (x,y) 1700 2000 2000 3000 3200 4300 3200 4300 3200 4300 3200 4300 %1 (x,y) 0050 0050 0050 0050 0050 1300 0050 1300 0050 1300 0050 1300 %2 (a2,b2) 0050 0050 0050 0050 0050 1300 0050 1300 0050 1300 0050 1300 %3 (a2,b2) 0050 0050 0050 0050 0050 1300 0050 1300 0050 1300 0050 1300 %4 (A,B) 0050 0050 0050 0050 0050 1300 0050 1300 0050 1300 0050 1300 %5 (A,B) 0050 0050 0050 0050 0050 1300 0050 1300 0050 1300 0050 1300 %6 (A1,B1) 0050 0050 0050 0050 0050 1300 0050 1300 0050 1300 0050 1300 %7 (a2,b2) ] def /ytexti [ 3800 3580 3360 3140 2920 2920 2700 2700 2480 2480 2260 2260 %0 (x,y) 3800 3580 3360 3140 2920 2920 2700 2700 2480 2480 2260 2260 %1 (x,y) 0500 0290 0080 1600 1380 1380 1160 1160 0940 0940 0720 0720 %3 (a2,b2) 0500 0290 0080 1600 1380 1380 1160 1160 0940 0940 0720 0720 %4 (a2,b2) 0500 0290 0080 1600 1380 1380 1160 1160 0940 0940 0720 0720 %4 (A,B) 0500 0290 0080 1600 1380 1380 1160 1160 0940 0940 0720 0720 %5 (A,B) 0500 0290 0080 1600 1380 1380 1160 1160 0940 0940 0720 0720 %6 (A1,B1) 0500 0290 0080 1600 1380 1380 1160 1160 0940 0940 0720 0720 %7 (a2,b2) ] def %*********************************************************** /icolor 9 array def %Rm %Ym %Gm %Cm %Bm %Mm %Go %Mo %W /icolor [20 10 06 00 30 26 06 26 40] def /imshow {-20 -50 rmoveto TBL (m) show 0 50 rmoveto TBIS} def /ioshow {0 -50 rmoveto TBL (o) show 0 50 rmoveto TBIS} def %************************************************* %allways /kxi 8 array def /xci 8 array def /Bci 8 array def /xcti 8 array def /Bcti 8 array def % 0 1 2 3 4 5 6 7 % (P60)(P55)(P50)(P45)(P40)(P35)(P30)(P25) %or (D65)(D50)(P40)(A00)(E00)(C00)(P00)(Q00) /kxi [9 10 10 11 9 9 10 9] def /kx kxi xchartl get def xchart4 0 eq xchart4 1 eq or xchart4 4 eq or xchart4 5 eq or {%xchart4=0,1 (x,y); 4,5 (A, B) % (P60) (P55) (P50) (P45) (P40) (P35) (P30) (P25) %or (D65) (D50) (P40) (A00) (E00) (C00) (P00) (Q00) % 0 1 2 3 4 5 6 7 /xci [ 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 ] def /xcti [(0,000) (0,000) (0,000) (0,000) (0,000) (0,000) (0,000) (0,000)] def /Bci [ 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 ] def /Bcti [(1,000) (1,000) (1,000) (1,000) (1,000) (1,000) (1,000) (1,000)] def } if %xchart4=1 xchart4 6 eq {%xchart4=6 (A1, B1) % (P60) (P55) (P50) (P45) (P40) (P35) (P30) (P25) %or (D65) (D50) (P40) (A00) (E00) (C00) (P00) (Q00) % 0 1 2 3 4 5 6 7 /xci [ 0.110 0.110 0.110 0.110 0.110 0.110 0.110 0.110 ] def /xcti [(0,110) (0,110) (0,110) (0,110) (0,110) (0,110) (0,110) (0,110)] def /Bci [ 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 ] def /Bcti [(1,000) (1,000) (1,000) (1,000) (1,000) (1,000) (1,000) (1,000)] def } if %xchart4=6 xchart4 2 eq xchart4 3 eq or xchart4 7 eq or {%xchart4=2,3,7 % (P60) (P55) (P50) (P45) (P40) (P35) (P30) (P25) %or (D65) (D50) (P40) (A00) (E00) (C00) (P00) (Q00) % 0 1 2 3 4 5 6 7 /xci [ 0.110 0.110 0.110 0.110 0.110 0.110 0.110 0.110 ] def /xcti [(0,110) (0,110) (0,110) (0,110) (0,110) (0,110) (0,110) (0,110)] def /Bci [ 0.800 1.000 1.300 2.500 0.900 0.700 1.000 0.700 ] def /Bcti [(0,800) (1,000) (1,300) (2,500) (0,900) (0,700) (1,000) (0,700)] def } if %xchart4=2,3,7 /xc xci xchartl get def /xct xcti xchartl get def /Bc Bci xchartl get def /Bct Bcti xchartl get def xchart4 0 eq xchart4 1 eq or {%xchart4=0,1 4600 1600 moveto TBS (Parame\255) show 4600 1400 moveto TBS (ter:) show TBIS xchart4 0 eq {( N) show} if xchart4 1 eq {( Y) show} if proz_chromaticity_data proz_chromaticity_xy } if %xchart4=0,1 xchart4 2 eq {%xchart4=2 proz_chromaticity_data proz_chromaticity_a2b2 } if %xchart4=2 xchart4 3 eq {%xchart4=3 proz_chromaticity_data proz_chromaticity_a2b2 } if %xchart4=3 %*********************************************************** xchart4 0 eq xchart4 1 eq or {%xchart4=0,1 %only for (x,y) /fakt 4000 def proz_name_range proz_opti 600 400 translate %scala & graphic (x,y) 600 400 0 1 39 {/i exch def %i=0,39 /An XANi i get def /Bn YANi i get def An fakt mul Bn fakt mul i 0 eq {moveto} if i 1 ge i 38 le and {lineto} if i 39 eq {lineto closepath stroke} if } for %i=0,39 XANW fakt mul YANW fakt mul 90 0 360 arc stroke XANW fakt mul 200 sub YANW fakt mul 250 sub moveto TBS TELi xchartl get show TBIS 0 1 4 {/j exch def %j=0,4 j 0 eq {/i 0 def} if %Cm-Rm j 1 eq {/i 6 def} if %Gm-Mm j 2 eq {/i 13 def} if %Ym-Bm j 3 eq {/i kx def} if %Max-Min j 4 eq {%new only for i=40 /i 40 def /k 6 def %Go Xi i XRj k get put Yi i YRj k get put Zi i ZRj k get put } if /SUM Xi i get Yi i get add Zi i get add 0.0001 add def XANCj j Xi i get SUM div put YANCj j Yi i get SUM div put ZANCj j Zi i get SUM div put /An XANCj j get def /Bn YANCj j get def /AnY An fakt mul def %xan /BnY Bn fakt mul def %yan /Paramshow {Yi i get cvishow} bind def j 0 eq {AnY 400 sub BnY 050 sub moveto xchart4 0 eq {(C) show imshow} if xchart4 1 eq {Paramshow} if 1 0 0 0 setcmykcolor} if %Cm j 1 eq {AnY 400 sub BnY 050 sub moveto xchart4 0 eq {(G) show imshow} if xchart4 1 eq {Paramshow} if 1 0 1 0 setcmykcolor} if %Gm j 2 eq {AnY 100 sub BnY 250 sub moveto xchart4 0 eq {(Y) show imshow} if xchart4 1 eq {Paramshow} if 0 0 1 0 setcmykcolor} if %Ym j 3 eq {AnY 500 sub xchart4 1 eq {100 add} if BnY 050 sub moveto xchart4 0 eq {(max) show} if xchart4 1 eq {Paramshow} if 0.3 0 1 0 setcmykcolor} if %Ymax j 4 eq {AnY 370 sub xchart4 1 eq {100 add} if BnY 000 add moveto xchart4 0 eq {(G) show ioshow} if xchart4 1 eq {Paramshow} if 1 0.5 1 0 setcmykcolor} if %Go newpath AnY BnY 90 0 360 arc fill 0 setgray newpath AnY BnY 90 0 360 arc stroke } for %j=0,4 %continue j=0,4 for antagonistic (A) colours 0 1 4 {/j exch def %j=0,4 j 0 eq {/i 0 def} if %Cm-Rm j 1 eq {/i 6 def} if %Gm-Mm j 2 eq {/i 13 def} if %Ym-Bm j 3 eq {/i kx def} if %Max-Min j 4 eq {%new only for i=40 /i 40 def /k 6 def %Mo Xi i XRj k get put %special Yi i YRj k get put Zi i ZRj k get put } if /SUM XK Xi i get sub YK Yi i get sub add ZK Zi i get sub add 0.0001 add abs def XANAj j XK Xi i get sub SUM div put YANAj j YK Yi i get sub SUM div put ZANAj j ZK Zi i get sub SUM div put /An XANAj j get def /Bn YANAj j get def /AnY An fakt mul def %xan /BnY Bn fakt mul def %yan /Paramshow {YK Yi i get sub cvishow} bind def j 0 eq {AnY 150 add BnY 150 sub moveto xchart4 0 eq {(R) show imshow} if xchart4 1 eq {Paramshow} if 0 1 1 0 setcmykcolor} if %Rm j 1 eq {AnY 150 add BnY 050 sub moveto xchart4 0 eq {(M) show imshow} if xchart4 1 eq {Paramshow} if 0 1 0 0 setcmykcolor} if %Mm j 2 eq {AnY 350 sub BnY 100 add moveto xchart4 0 eq {(B) show imshow} if xchart4 1 eq {Paramshow} if 1 1 0 0 setcmykcolor} if %Bm j 3 eq {AnY 150 sub BnY 250 sub moveto xchart4 0 eq {(min) show} if xchart4 1 eq {Paramshow} if 0.7 1 0 0 setcmykcolor} if %Ymin j 4 eq {AnY 250 sub BnY 150 sub moveto xchart4 0 eq {(M) show ioshow} if xchart4 1 eq {Paramshow} if 0 0.5 0 0 setcmykcolor} if %Mo newpath AnY BnY 90 0 360 arc fill 0 setgray newpath AnY BnY 90 0 360 arc stroke } for %j=0,4 -600 -400 translate %scala & graphic (x,y) } if %xchart4=0,1 %************************************************************** xchart4 2 eq xchart4 3 eq or {%xchart4=2,3 %only for (a2,b2), (a2s,b2s) /fakt 1000 def /a2 1.00 def /b2 -0.4 def 500 0 translate proz_name_range proz_opti -500 0 translate proz_param /xtrans8 1300 def /ytrans8 3200 def xtrans8 ytrans8 translate %scala & graphic (a2,b2) 1300 3200 %0600 3100 translate %proz_axis_scales4_7 0 1 39 {/i exch def %i=0,39 /An XANi i get xc sub YANi i get 0.0001 add div def /Bn ZANi i get YANi i get 0.0001 add div 0.4 mul neg % Bc mul def /AnK XANK xc sub YANK 0.0001 add div def /BnK ZANK YANK 0.0001 add div 0.4 mul neg % Bc mul def /AnY An def /BnY Bn def An fakt mul Bn fakt mul i 0 eq {moveto} if i 1 ge i 38 le and {lineto} if i 39 eq {lineto closepath stroke} if } for %i=0,39 XANW xc sub YANW 0.0001 add div fakt mul %a2 ZANW YANW 0.0001 add div 0.4 mul neg fakt mul %b2 90 0 360 arc stroke XANW xc sub YANW 0.0001 add div fakt mul 100 add ZANW YANW 0.0001 add div 0.4 mul neg fakt mul 000 add moveto TBS TELi xchartl get show %10 chromatic colours from continuous colours TBIS 0 1 4 {/j exch def %j=0,4 j 0 eq {/i 0 def} if %Cm-Rm j 1 eq {/i 6 def} if %Gm-Mm j 2 eq {/i 13 def} if %Ym-Bm j 3 eq {/i kx def} if %Max-Min j 4 eq {/i 40 def /k 6 def %Go Xi i XRj k get put %special Yi i YRj k get put Zi i ZRj k get put } if /SUM Xi i get Yi i get add Zi i get add 0.0001 add def XANCj j Xi i get SUM div put YANCj j Yi i get SUM div put ZANCj j Zi i get SUM div put /An XANCj j get xc sub YANCj j get 0.0001 add div def %a2 /Bn ZANCj j get YANCj j get 0.0001 add div 0.4 mul neg %b2 % Bc mul def /AnY An fakt mul def /BnY Bn fakt mul def %dAB, CAB not used /dAB An dup mul Bn dup mul add 0.0001 add sqrt def %/CAB dAB Yi i get mul def /Paramshow {Yi i get cvishow} bind def j 0 eq {AnY 350 sub BnY 100 sub moveto xchart4 2 eq {(C) show imshow} if xchart4 3 eq {Paramshow} if 1 0 0 0 setcmykcolor} if %Cm j 1 eq {AnY 350 sub BnY 150 sub moveto xchart4 2 eq {(G) show imshow} if xchart4 3 eq {Paramshow} if 1 0 1 0 setcmykcolor} if %Gm j 2 eq {AnY 150 sub BnY 200 add moveto xchart4 2 eq {(Y) show imshow} if xchart4 3 eq {Paramshow} if 0 0 1 0 setcmykcolor} if %Ym j 3 eq {AnY 500 sub BnY 050 add moveto xchart4 2 eq {(max) show} if xchart4 3 eq {Paramshow} if 0.3 0 1 0 setcmykcolor} if %Ymax j 4 eq {AnY 050 add BnY 250 sub moveto xchart4 2 eq {(G) show ioshow} if xchart4 3 eq {Paramshow} if 1 0.5 1 0 setcmykcolor} if %Go newpath AnY BnY 90 0 360 arc fill 0 setgray newpath AnY BnY 90 0 360 arc stroke /SUM XK Xi i get sub YK Yi i get sub add ZK Zi i get sub add 0.0001 add def XANCj j XK Xi i get sub SUM div put YANCj j YK Yi i get sub SUM div put ZANCj j ZK Zi i get sub SUM div put /An XANCj j get xc sub YANCj j get 0.0001 add div def %a2 /Bn ZANCj j get YANCj j get 0.0001 add div 0.4 mul neg %b2 % Bc mul def /AnY An fakt mul def %a2 /BnY Bn fakt mul def %b2 %dAB, CAB not used /dAB An dup mul Bn dup mul add 0.0001 add sqrt def %/CAB dAB YK Yi i get sub mul def /Paramshow {YK Yi i get sub cvishow} bind def j 0 eq {AnY 120 add BnY 050 sub moveto xchart4 2 eq {(R) show imshow} if xchart4 3 eq {Paramshow} if 0 1 1 0 setcmykcolor} if %Rm j 1 eq {AnY 120 add BnY 050 sub moveto xchart4 2 eq {(M) show imshow} if xchart4 3 eq {Paramshow} if 0 1 0 0 setcmykcolor} if %Mm j 2 eq {AnY 300 sub BnY 100 add moveto xchart4 2 eq {(B) show imshow} if xchart4 3 eq {Paramshow} if 1 1 0 0 setcmykcolor} if %Bm j 3 eq {AnY 100 sub xchart4 3 eq {100 add} if BnY 250 sub moveto xchart4 2 eq {(min) show} if xchart4 3 eq {Paramshow} if 0.7 1 0 0 setcmykcolor} if %Bmin j 4 eq {AnY 100 sub BnY 250 sub moveto xchart4 2 eq {(M) show ioshow} if xchart4 3 eq {Paramshow} if 0 0.5 0 0 setcmykcolor} if %Mo newpath AnY BnY 90 0 360 arc fill 0 setgray newpath AnY BnY 90 0 360 arc stroke } for %j=0,4 xtrans8 neg ytrans8 neg translate %text & graphic (a2, b2) 1300 3200 %-600 400 translate } if %xchart4=2,3 only for (a2,b2), (a2s,b2s) %******************************************************* xchart4 4 eq xchart4 5 eq or {%xchart4=4,5 %only for (A,B) /fakt 40 def /a2 1.00 def /b2 -0.4 def proz_name_range proz_opti proz_param /xtrans8 3500 def /ytrans8 2100 def xtrans8 ytrans8 translate %text & graphic (A,B) 3500 2100 proz_axis_scales4_7 0 1 39 {/i exch def %i=0,39 /An XANi i get YANi i get 0.0001 add div def /Bn ZANi i get YANi i get 0.0001 add div 0.4 mul neg def /AnK XK YK 0.0001 add div def /BnK ZK YK 0.0001 add div 0.4 mul neg def /AnY An AnK sub Yi i get mul def /BnY Bn BnK sub Yi i get mul def AnY fakt mul BnY fakt mul i 0 eq {moveto} if i 1 ge i 38 le and {lineto} if i 39 eq {lineto closepath stroke} if } for %i=0,39 XANW YANW 0.0001 add div %(a-an)YW XANK YANK 0.0001 add div sub YW mul fakt mul ZANW YANW 0.0001 add div %(b-an)YW ZANK YANK 0.0001 add div sub 0.4 mul neg YW mul fakt mul 90 0 360 arc stroke 0 080 add 0 080 add moveto TBS TELi xchartl get show %10 chromatic colours from continuous colours TBIS 0 1 4 {/j exch def %j=0,4 j 0 eq {/i 0 def} if %Cm-Rm j 1 eq {/i 6 def} if %Gm-Mm j 2 eq {/i 13 def} if %Ym-Bm j 3 eq {/i kx def} if %Max-Min j 4 eq {/i 40 def /k 6 def %Go Xi i XRj k get put %special Yi i YRj k get put Zi i ZRj k get put } if /SUM Xi i get Yi i get add Zi i get add 0.0001 add def XANCj j Xi i get SUM div put YANCj j Yi i get SUM div put ZANCj j Zi i get SUM div put /An XANCj j get YANCj j get 0.0001 add div %2.5(a-an)Y XANK YANK 0.0001 add div sub def /Bn ZANCj j get YANCj j get 0.0001 add div %2.5(b-bn)Y ZANK YANK 0.0001 add div sub 0.4 mul neg def /AnY An Yi i get mul fakt mul def /BnY Bn Yi i get mul fakt mul def %dAB, CAB not used /dAB An dup mul Bn dup mul add 0.0001 add sqrt def /CAB dAB Yi i get mul def /Paramshow {Yi i get cvishow} bind def j 0 eq {AnY 350 sub BnY 050 sub moveto xchart4 4 eq {(C) show imshow} if xchart4 5 eq {Paramshow} if 1 0 0 0 setcmykcolor} if %Cm j 1 eq {AnY 370 sub BnY 050 sub moveto xchart4 4 eq {(G) show imshow} if xchart4 5 eq {Paramshow} if 1 0 1 0 setcmykcolor} if %Gm j 2 eq {AnY 050 sub BnY 150 add moveto xchart4 4 eq {(Y) show imshow} if xchart4 5 eq {Paramshow} if 0 0 1 0 setcmykcolor} if %Ym j 3 eq {AnY 100 sub BnY 300 sub moveto xchart4 4 eq {(max) show} if xchart4 5 eq {Paramshow} if 0.3 0 1 0 setcmykcolor} if %Ymax j 4 eq {AnY 100 sub BnY 250 sub moveto xchart4 4 eq {(G) show ioshow} if xchart4 5 eq {Paramshow} if 1 0.5 1 0 setcmykcolor} if %Go newpath AnY BnY 90 0 360 arc fill 0 setgray newpath AnY BnY 90 0 360 arc stroke /SUM XK Xi i get sub YK Yi i get sub add ZK Zi i get sub add 0.0001 add def XANCj j XK Xi i get sub SUM div put YANCj j YK Yi i get sub SUM div put ZANCj j ZK Zi i get sub SUM div put /An XANCj j get YANCj j get 0.0001 add div %(a-an) XANK YANK 0.0001 add div sub def /Bn ZANCj j get YANCj j get 0.0001 add div %(b-bn) ZANK YANK 0.0001 add div sub 0.4 mul neg def /AnY An YK Yi i get sub mul fakt mul def %(a-an)Y /BnY Bn YK Yi i get sub mul fakt mul def %(b-bn)Y %dAB, CAB not used /dAB An dup mul Bn dup mul add 0.0001 add sqrt def /CAB dAB YK Yi i get sub mul def /Paramshow {YK Yi i get sub cvishow} bind def j 0 eq {AnY 120 add BnY 050 sub moveto xchart4 4 eq {(R) show imshow} if xchart4 5 eq {Paramshow} if 0 1 1 0 setcmykcolor} if %Rm j 1 eq {AnY 120 add BnY 050 sub moveto xchart4 4 eq {(M) show imshow} if xchart4 5 eq {Paramshow} if 0 1 0 0 setcmykcolor} if %Mm j 2 eq {AnY 200 sub BnY 250 sub moveto xchart4 4 eq {(B) show imshow} if xchart4 5 eq {Paramshow} if 1 1 0 0 setcmykcolor} if %Bm j 3 eq {AnY 100 sub BnY 150 add moveto xchart4 4 eq {(min) show} if xchart4 5 eq {Paramshow} if 0.7 1 0 0 setcmykcolor} if %Bmin j 4 eq {AnY 100 sub BnY 150 add moveto xchart4 4 eq {(M) show ioshow} if xchart4 5 eq {Paramshow} if 0 0.5 0 0 setcmykcolor} if %Mo newpath AnY BnY 90 0 360 arc fill 0 setgray newpath AnY BnY 90 0 360 arc stroke } for %j=0,4 xtrans8 neg ytrans8 neg translate %text & graphic (A,B) 3500 2100 } if %xchart4=4,5 %************************************************************** xchart4 6 eq xchart4 7 eq or {%xchart4=6,7 %only for (A1/2,B1/2) /fakt 40 def /a2 1.00 def /b2 -0.4 def proz_name_range proz_opti proz_param /xtrans8 3500 def /ytrans8 2100 def xtrans8 ytrans8 translate %text & graphic (A1/2,B1/2) 3500 2100 proz_axis_scales4_7 0 1 39 {/i exch def %i=0,39 /An XANi i get xc sub YANi i get 0.0001 add div def /Bn ZANi i get YANi i get 0.0001 add div 0.4 mul neg Bc mul def /AnK XANK xc sub YANK 0.0001 add div def /BnK ZANK YANK 0.0001 add div 0.4 mul neg Bc mul def /AnY An AnK sub Yi i get mul def /BnY Bn BnK sub Yi i get mul def AnY fakt mul BnY fakt mul i 0 eq {moveto} if i 1 ge i 38 le and {lineto} if i 39 eq {lineto closepath stroke} if } for %i=0,39 XANW xc sub YANW 0.0001 add div %(a-an)YW XANK xc sub YANK 0.0001 add div sub YW mul fakt mul ZANW YANW 0.0001 add div %(b-an)YW ZANK YANK 0.0001 add div sub 0.4 mul neg Bc mul YW mul fakt mul 90 0 360 arc stroke 0 080 add 0 080 add moveto TBS TELi xchartl get show %10 chromatic colours from continuous colours TBIS 0 1 4 {/j exch def %j=0,4 j 0 eq {/i 0 def} if %Cm-Rm j 1 eq {/i 6 def} if %Gm-Mm j 2 eq {/i 13 def} if %Ym-Bm j 3 eq {/i kx def} if %Max-Min j 4 eq {/i 40 def /k 6 def %Go Xi i XRj k get put %special Yi i YRj k get put Zi i ZRj k get put } if /SUM Xi i get Yi i get add Zi i get add 0.0001 add def XANCj j Xi i get SUM div put YANCj j Yi i get SUM div put ZANCj j Zi i get SUM div put /An XANCj j get xc sub YANCj j get 0.0001 add div %2.5(a-an)Y XANK xc sub YANK 0.0001 add div sub def /Bn ZANCj j get YANCj j get 0.0001 add div %2.5(b-bn)Y ZANK YANK 0.0001 add div sub 0.4 mul neg Bc mul def /AnY An Yi i get mul fakt mul def /BnY Bn Yi i get mul fakt mul def %dAB, CAB not used /dAB An dup mul Bn dup mul add 0.0001 add sqrt def /CAB dAB Yi i get mul def /Paramshow {Yi i get cvishow} bind def j 0 eq {AnY 350 sub BnY 050 sub moveto xchart4 6 eq {(C) show imshow} if xchart4 7 eq {Paramshow} if 1 0 0 0 setcmykcolor} if %Cm j 1 eq {AnY 370 sub BnY 050 sub moveto xchart4 6 eq {(G) show imshow} if xchart4 7 eq {Paramshow} if 1 0 1 0 setcmykcolor} if %Gm j 2 eq {AnY 050 sub BnY 150 add moveto xchart4 6 eq {(Y) show imshow} if xchart4 7 eq {Paramshow} if 0 0 1 0 setcmykcolor} if %Ym j 3 eq {AnY 500 sub xchart4 7 eq {150 add} if BnY 050 add moveto xchart4 6 eq {(max) show} if xchart4 7 eq {Paramshow} if 0.3 0 1 0 setcmykcolor} if %Ymax j 4 eq {AnY 100 sub BnY 150 add moveto xchart4 6 eq {(G) show ioshow} if xchart4 7 eq {Paramshow} if 1 0.5 1 0 setcmykcolor} if %Go newpath AnY BnY 90 0 360 arc fill 0 setgray newpath AnY BnY 90 0 360 arc stroke /SUM XK Xi i get sub YK Yi i get sub add ZK Zi i get sub add 0.0001 add def XANCj j XK Xi i get sub SUM div put YANCj j YK Yi i get sub SUM div put ZANCj j ZK Zi i get sub SUM div put /An XANCj j get xc sub YANCj j get 0.0001 add div %(a-an) XANK xc sub YANK 0.0001 add div sub def /Bn ZANCj j get YANCj j get 0.0001 add div %(b-bn) ZANK YANK 0.0001 add div sub 0.4 mul neg Bc mul def /AnY An YK Yi i get sub mul fakt mul def %(a-an)Y /BnY Bn YK Yi i get sub mul fakt mul def %(b-bn)Y %dAB, CAB not used /dAB An dup mul Bn dup mul add 0.0001 add sqrt def /CAB dAB YK Yi i get sub mul def /Paramshow {YK Yi i get sub cvishow} bind def j 0 eq {AnY 120 add BnY 050 sub moveto xchart4 6 eq {(R) show imshow} if xchart4 7 eq {Paramshow} if 0 1 1 0 setcmykcolor} if %Rm j 1 eq {AnY 120 add BnY 050 sub moveto xchart4 6 eq {(M) show imshow} if xchart4 7 eq {Paramshow} if 0 1 0 0 setcmykcolor} if %Mm j 2 eq {AnY 200 sub BnY 250 sub moveto xchart4 6 eq {(B) show imshow} if xchart4 7 eq {Paramshow} if 1 1 0 0 setcmykcolor} if %Bm j 3 eq {AnY 100 add BnY 150 sub moveto xchart4 6 eq {(min) show} if xchart4 7 eq {Paramshow} if 0.7 1 0 0 setcmykcolor} if %Bmin j 4 eq {AnY 100 sub BnY 250 sub moveto xchart4 6 eq {(M) show ioshow} if xchart4 7 eq {Paramshow} if 0 0.5 0 0 setcmykcolor} if %Mo newpath AnY BnY 90 0 360 arc fill 0 setgray newpath AnY BnY 90 0 360 arc stroke } for %j=0,4 xtrans8 neg ytrans8 neg translate %text & graphic (A1/2,B1/2) 3500 2100 } if %xchart4=6,7 showpage grestore %} for %xchartl=0,7 } for %xchart4=0,7 } for %xcolorl=0,0 %%Trailer %line 269 %%EndDocument EndEPSF grestore gsave showpage grestore %%Trailer %%EndDocument EndEPSF grestore gsave BeginEPSF 219 MM 06 MM sub SHAr add 108 MM translate 10 /Times-ISOL1 FS 53 MM 1 MM moveto ( ) show 1 1 scale -77 -91 translate %%BeginDocument: Bild 24 %line 459 %!PS-Adobe-3.0 EPSF-3.0 egw41-4N %%BoundingBox: 70 85 246 206 /FS {findfont exch scalefont setfont} bind def /MM {72 25.4 div mul} def %%EndProlog gsave /ioutx 0 def ioutx 1 eq {%ioutx=1 4 /Times-Roman FS 72 86 moveto (egw41-4N) show 72 90 translate 0.01 MM dup scale 20 setlinewidth /xwidth 6100 def /ywidth 4000 def 1 setgray 0 0 moveto xwidth 0 rlineto 0 ywidth rlineto xwidth neg 0 rlineto closepath fill 0 setgray 0 0 moveto xwidth 0 rlineto 0 ywidth rlineto xwidth neg 0 rlineto closepath stroke } if %ioutx=1 grestore showpage %%Trailer %%EndDocument EndEPSF grestore gsave BeginEPSF 161 MM 06 MM sub SHSr sub 064 MM translate 10 /Times-ISOL1 FS 53 MM 1 MM moveto ( ) show 1 1 scale -77 -91 translate %%BeginDocument: Bild 25 %line 469 %!PS-Adobe-3.0 EPSF-3.0 egw41-5N %%BoundingBox: 70 85 246 206 /FS {findfont exch scalefont setfont} bind def /MM {72 25.4 div mul} def %%EndProlog gsave /ioutx 0 def ioutx 1 eq {%ioutx=1 4 /Times-Roman FS 72 86 moveto (egw41-5N) show 72 90 translate 0.01 MM dup scale 20 setlinewidth /xwidth 6100 def /ywidth 4000 def 1 setgray 0 0 moveto xwidth 0 rlineto 0 ywidth rlineto xwidth neg 0 rlineto closepath fill 0 setgray 0 0 moveto xwidth 0 rlineto 0 ywidth rlineto xwidth neg 0 rlineto closepath stroke } if %ioutx=1 grestore showpage %%Trailer %%EndDocument EndEPSF grestore gsave BeginEPSF 219 MM 06 MM sub SHAr add 064 MM translate 10 /Times-ISOL1 FS 53 MM 1 MM moveto ( ) show 1 1 scale -77 -91 translate %%BeginDocument: Bild 26 %line 479 %!PS-Adobe-3.0 EPSF-3.0 egw41-6N %%BoundingBox: 70 85 246 206 /FS {findfont exch scalefont setfont} bind def /MM {72 25.4 div mul} def %%EndProlog gsave /ioutx 0 def ioutx 1 eq {%ioutx=1 4 /Times-Roman FS 72 86 moveto (egw41-6N) show 72 90 translate 0.01 MM dup scale 20 setlinewidth /xwidth 6100 def /ywidth 4000 def 1 setgray 0 0 moveto xwidth 0 rlineto 0 ywidth rlineto xwidth neg 0 rlineto closepath fill 0 setgray 0 0 moveto xwidth 0 rlineto 0 ywidth rlineto xwidth neg 0 rlineto closepath stroke } if %ioutx=1 grestore showpage %%Trailer %%EndDocument EndEPSF grestore gsave BeginEPSF 161 MM 06 MM sub SHSr sub 020 MM translate 10 /Times-ISOL1 FS 53 MM 1 MM moveto ( ) show 1 1 scale -77 -91 translate %%BeginDocument: Bild 27 %line 489 %!PS-Adobe-3.0 EPSF-3.0 egw41-7n_60 %%BoundingBox: 70 85 421 335 %START PDFDE011.EPS /pdfmark17 where {pop} {userdict /pdfmark17 /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/egw4/egw4.HTM) /Author (compare K. Richter "Computergrafik ...": ISBN 3-8007-1775-1) /Subject (goto: http://farbe.li.tu-berlin.de or http://color.li.tu-berlin.de) /Keywords (image reproduction, colour devices) /Creator (klaus.richter@mac.com) /CreationDate (D:2023080112000) /ModDate (D:2023080112000) /DOCINFO pdfmark17 [ /View [ /Fit ] /DOCVIEW pdfmark17 %END PDFDE011 %line 20****************************************************** /BeginEPSF {% def % Prepare for EPS file /b4_Inc_state save def % Save state for cleanup /dict_count countdictstack def /op_count count 1 sub def % Count objects on op stack userdict begin % Make userdict current dict /showpage {} def 0 setgray 0 setlinecap 1 setlinewidth 0 setlinejoin 10 setmiterlimit [] 0 setdash newpath /languagelevel where % If level not equal to 1 then {pop languagelevel where % If level not equal to 1 then 1 ne {false setstrokeadjust false setoverprint } if } if } bind def /EndEPSF {% def % End for EPS file count op_count sub {pop} repeat countdictstack dict_count sub {end} repeat % Clean up dict stack b4_Inc_state restore } 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 /Courier findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /Courier-ISOL1 exch definefont pop /Courier-Oblique findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /CourierI-ISOL1 exch definefont pop /Courier-Bold findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /CourierB-ISOL1 exch definefont pop /Courier-BoldOblique findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /CourierBI-ISOL1 exch definefont pop /TG {350 /Times-ISOL1 FS} bind def /TM {280 /Times-ISOL1 FS} bind def /TK {240 /Times-ISOL1 FS} bind def /TS {200 /Times-ISOL1 FS} bind def /TL {160 /Times-ISOL1 FS} bind def /TV {110 /Times-ISOL1 FS} bind def /TW {080 /Times-ISOL1 FS} bind def /TIG {350 /TimesI-ISOL1 FS} bind def /TIM {280 /TimesI-ISOL1 FS} bind def /TIK {240 /TimesI-ISOL1 FS} bind def /TIS {200 /TimesI-ISOL1 FS} bind def /TIL {160 /TimesI-ISOL1 FS} bind def /TIV {110 /TimesI-ISOL1 FS} bind def /TIW {080 /TimesI-ISOL1 FS} bind def /TBG {350 /TimesB-ISOL1 FS} bind def /TBM {280 /TimesB-ISOL1 FS} bind def /TBK {240 /TimesB-ISOL1 FS} bind def /TBS {200 /TimesB-ISOL1 FS} bind def /TBL {160 /TimesB-ISOL1 FS} bind def /TBV {110 /TimesB-ISOL1 FS} bind def /TBW {080 /TimesB-ISOL1 FS} bind def /TBIG {350 /TimesBI-ISOL1 FS} bind def /TBIM {280 /TimesBI-ISOL1 FS} bind def /TBIK {240 /TimesBI-ISOL1 FS} bind def /TBIS {200 /TimesBI-ISOL1 FS} bind def /TBIL {160 /TimesBI-ISOL1 FS} bind def /TBIV {110 /TimesBI-ISOL1 FS} bind def /TBIW {080 /TimesBI-ISOL1 FS} bind def /SG {350 /Symbol FS} bind def /SM {280 /Symbol FS} bind def /SK {240 /Symbol FS} bind def /SS {200 /Symbol FS} bind def /SL {160 /Symbol FS} bind def /SV {110 /Symbol FS} bind def /SW {080 /Symbol FS} bind def %***************************************************************** %%EndProlog gsave %lanindL2.EPS START 20000505 /lanind 0 def /lantex [(G) (E) (S) (F) (I) (J) (M)] def /showde {0 lanind eq {show} {pop} ifelse} bind def /showen {1 lanind eq {show} {pop} ifelse} bind def /showes {2 lanind eq {show} {pop} ifelse} bind def /showfr {3 lanind eq {show} {pop} ifelse} bind def /showit {4 lanind eq {show} {pop} ifelse} bind def /showjp {5 lanind eq {show} {pop} ifelse} bind def /showea {1 lanind le {show} {pop} ifelse} bind def /lanindf where {pop /lanind1 lanindf def /lanind2 lanindf def /lanindd laninddf def} {/lanind1 0 def /lanind2 0 def} ifelse /colormf where {pop /colorm1 colormf def /colorm2 colormf def /colormd colormdf def} {/colorm1 0 def} ifelse /deintpf where {pop /deintp1 deintpf def /deintp2 deintpf def /deintpd deintpdf def} {/deintp1 0 def} ifelse /xcolorf where {pop /xcolor1 xcolorf def /xcolor2 xcolorf def /xcolord xcolordf def} {/xcolor1 0 def} ifelse /xchartf where {pop /xchart1 xchartf def /xchart2 xchartf def /xchartd xchartdf def /xchartm xchart2f xchart1f sub 1 add def} {/xchart1 0 def /xchartm 1 def} ifelse /xchart3f where {pop /xchart3 xchart3f def} {/xchart3 0 def} ifelse /xchart4f where {pop /xchart4 xchart4f def} {/xchart4 0 def} ifelse /pchartf where {pop /pchart1 pchartf def /pchart2 pchartf def /pchartd pchartdf def} {/pchart1 3 def} ifelse /colsepf where {pop /colsep1 colsepf def /colsep2 colsepf def /colsepd colsepdf def} {/colsep1 0 def} ifelse /pmetamf where {pop /pmetam1 pmetamf def /pmetam2 pmetamf def /pmetamd pmetamdf def} {/pmetam1 0 def} ifelse %either defaul values for xchart=0 or values for xchart=1 /lanind lanind1 def % /colorm colorm1 def % /deintp deintp1 def % /xcolor xcolor1 def % /xchart xchart1 def % /pchart pchart1 def % /colsep colsep1 def % /pmetam pmetam1 def % gsave /cvishow0 {cvi 6 string cvs show} def /kchartl 1 def %0:left page, 1:right page /pchartl 4 def %0:top page, 4:down page %not used 72 90 translate 0.010 MM dup scale 40 setlinewidth /ymax1 08550 def /xmax1 12250 def %2x6000+250 1.0 setgray 0 0 moveto xmax1 0 rlineto 0 ymax1 rlineto xmax1 neg 0 rlineto closepath fill 0 setgray 0 0 moveto xmax1 0 rlineto 0 ymax1 rlineto xmax1 neg 0 rlineto closepath stroke TK 0 setgray 150 /Times-ISOL1 FS 150 -140 moveto kchartl 0 eq {(egw40-) show} {(egw41-) show} ifelse pchartl 0 eq {(3n) show} {(7n) show} ifelse grestore gsave %00 %01 %02 /SHSl 00.0 def /SHAl 02.8 def /STSl 13.0 def /STAl 14.5 def BeginEPSF 28 SHSl sub MM 064 STSl add MM translate 10 /Times-ISOL1 FS 53 MM 1 MM moveto ( ) show 1 1 scale -77 -91 translate %%BeginDocument: Bild 15 %!PS-Adobe-3.0 EPSF-3.0 egw41-5a enh31-5n %%BoundingBox: 70 83 228 206 %START PDFDE011.EPS /pdfmark15 where {pop} {userdict /pdfmark15 /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/egw4/egw4.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 pdfmark15 [ /View [ /Fit ] /DOCVIEW pdfmark15 %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 /Courier findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /Courier-ISOL1 exch definefont pop /Courier-Oblique findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /CourierI-ISOL1 exch definefont pop /Courier-Bold findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /CourierB-ISOL1 exch definefont pop /Courier-BoldOblique findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /CourierBI-ISOL1 exch definefont pop /TG {350 /Times-ISOL1 FS} bind def /TM {280 /Times-ISOL1 FS} bind def /TK {240 /Times-ISOL1 FS} bind def /TS {200 /Times-ISOL1 FS} bind def /TL {160 /Times-ISOL1 FS} bind def /TIG {350 /TimesI-ISOL1 FS} bind def /TIM {280 /TimesI-ISOL1 FS} bind def /TIK {240 /TimesI-ISOL1 FS} bind def /TIS {200 /TimesI-ISOL1 FS} bind def /TIL {160 /TimesI-ISOL1 FS} bind def /TBG {350 /TimesB-ISOL1 FS} bind def /TBM {280 /TimesB-ISOL1 FS} bind def /TBK {240 /TimesB-ISOL1 FS} bind def /TBS {200 /TimesB-ISOL1 FS} bind def /TBL {160 /TimesB-ISOL1 FS} bind def /TBIG {350 /TimesBI-ISOL1 FS} bind def /TBIM {280 /TimesBI-ISOL1 FS} bind def /TBIK {240 /TimesBI-ISOL1 FS} bind def /TBIS {200 /TimesBI-ISOL1 FS} bind def /TBIL {160 /TimesBI-ISOL1 FS} bind def /SG {350 /Symbol FS} bind def /SM {280 /Symbol FS} bind def /SK {240 /Symbol FS} bind def /SS {200 /Symbol FS} bind def /SL {160 /Symbol FS} bind def %********************************************************* /proz_param {%proz_param 4650 3800 moveto TBS (Parame\255) show 4650 3600 moveto TBS (ter:) show xchart4 2 eq xchart4 4 eq or xchart4 6 eq or {TBIS ( N) show} if xchart4 3 eq xchart4 5 eq or xchart4 7 eq or {TBIS ( Y) show xcolorl 1 eq {xcol10_BS} if} if /kx kxi xchartl get def /kxx 445 kx 5 mul add def 4150 300 moveto TBS (max: ) show kxx cvishow (_770) show 4150 080 moveto TBS (min: 380_) show kxx cvishow /index2_7 {%index2_7 xchart4 2 eq xchart4 3 eq or xchart4 7 eq or {0 -50 rmoveto TBL (2) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if } if xchart4 4 eq xchart4 5 eq or {0 -50 rmoveto TBL () show 0 50 rmoveto xcolorl 1 eq {xcol10_BS} if } if xchart4 6 eq {0 -50 rmoveto TBL (1) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if } if } bind def %index2_7 /index2_7n {%index2_7n xchart4 2 eq xchart4 3 eq or xchart4 7 eq or {0 -50 rmoveto TBL (2,n) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if } if xchart4 4 eq xchart4 5 eq or {0 -50 rmoveto TBL (n) show 0 50 rmoveto xcolorl 1 eq {xcol10_BS} if } if xchart4 6 eq {0 -50 rmoveto TBL (1,n) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if } if } bind def %index2_7n xchart4 1 le xchart4 4 ge or {%xchart4<=1, xchart4>=4 /x0p 50 def x0p 3800 moveto TBIS (XYZ) show 0 -50 rmoveto TBL (W) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if TBS (=) show XK cvsshow2 (, ) show YK cvsshow2 (, ) show ZK cvsshow2 x0p 3550 moveto TBIS (A) show index2_7 TBS ( = 2,5 \050) show TBIS (a) show index2_7 TBS ( - ) show TBIS (a) show index2_7n TBS (\051 ) show TBIS (Y) show xcolorl 1 eq {xcol10_BS} if x0p 3300 moveto TBIS (B) show index2_7 TBS ( = 2,5 ) show TBIS (B) show 0 -50 rmoveto TBL (c) show 0 50 rmoveto TBS ( \050) show TBIS (b) show index2_7 TBS ( - ) show TBIS (b) show index2_7n TBS (\051 ) show TBIS (Y) show xcolorl 1 eq {xcol10_BS} if x0p 3050 moveto TBIS (a) show index2_7 TBS ( = ) show TBIS (a) show 0 -50 rmoveto TBL (20) show 0 50 rmoveto TBS ( [) show TBIS (\050x) show xcolorl 1 eq {xcol10_BS} if TBS (-) show TBIS (x) show 0 -50 rmoveto TBL (c) show 0 50 rmoveto TBIS (\051/y) show xcolorl 1 eq {xcol10_BS} if TBS (]) show x0p 2800 moveto TBIS (b) show index2_7 TBS ( = ) show TBIS (b) show 0 -50 rmoveto TBL (20) show 0 50 rmoveto TBS ( [) show TBIS (z) show xcolorl 1 eq {xcol10_BS} if TBIS (/y) show xcolorl 1 eq {xcol10_BS} if TBS (]) show x0p 2550 moveto TBIS (a) show 0 -50 rmoveto TBL (20) show 0 50 rmoveto TBS ( = 1, ) show TBIS (b) show 0 -50 rmoveto TBL (20) show 0 50 rmoveto TBS ( = -0,4) show x0p 2300 moveto TBIS (x) show 0 -50 rmoveto TBL (c) show 0 50 rmoveto TBS ( = ) show xct show (, ) show TBIS (B) show 0 -50 rmoveto TBL (c) show 0 50 rmoveto TBS ( = ) show Bct show x0p 2080 moveto TBIS (n) show TBS ( = ) show TELi xchartl get show x0p 1860 moveto TBIS (C) show TBL 0 -50 rmoveto (AB,) show 0 50 rmoveto index2_7 TBS (=[) show TBIS (A) show index2_7 TBL -20 100 rmoveto (2) show 0 -100 rmoveto TBS (+) show TBIS (B) show index2_7 TBL -20 100 rmoveto (2) show 0 -100 rmoveto TBS (]) show TBL 0 100 rmoveto (1/2) show 0 -100 rmoveto } if %xchart4<=1, xchart4>=4 } bind def %proz_param %**************************************************************** /proz_opti {%proz_opti TBS 0 0 0 1 setcmyk_olvcolor /xchart12 xchart4 12 mul def xtexti xchart12 0 add get ytexti xchart12 0 add get moveto TBS (10 Optimalfarben (o)) showde %0egw41-7 02581 (10 optimal colours (o)) showen %1egw41-7 02581 (10 colores \363ptimos (o)) showes %2egw41-7 02581 (10 couleurs optimales (o)) showfr %3egw41-7 02581 (10 colori ottimi (o)) showit %4egw41-7 02581 (10 optimal colours (o)) showjp %5egw41-7 02581 TBIS (, Y) show TBL 0 -60 rmoveto (W) show 0 60 rmoveto xchartl 1 eq {xcol10KBS} if TBS YF 0 eq {(=100) show}{(=90) show} ifelse TBIS (, Y) show TBL 0 -60 rmoveto (N) show 0 60 rmoveto xchartl 1 eq {xcol10KBS} if TBS YF 0 eq {(=0) show}{(=3,6) show} ifelse xtexti xchart12 1 add get ytexti xchart12 1 add get moveto (8 von maximalem (m)) showde %0egw41-7 03581 (8 of maximum (m)) showen %1egw41-7 03581 (8 de m\341ximo (m)) showes %2egw41-7 03581 (8 de la maximum (m)) showfr %3egw41-7 03581 (8 di massimo (m)) showit %4egw41-7 03581 (8 of maximum (m)) showjp %5egw41-7 03581 TBIS ( C) show TBL 0 -60 rmoveto (AB) show 0 60 rmoveto TBS ( f\374r ) showde %0egw41-7 03581 ( for ) showen %1egw41-7 03581 ( bajo ) showes %2egw41-7 03581 ( pour ) showfr %3egw41-7 03581 ( per ) showit %4egw41-7 03581 ( for ) showjp %5egw41-7 03581 TELi xchartl get show xtexti xchart12 2 add get ytexti xchart12 2 add get moveto xchart4 0 eq xchart4 1 eq or {%xchart4=0,1 (in der Normfarbtafel) showde %0egw41-7 04581 (in the chromaticity diagram) showen %1egw41-7 04581 (en el diagrama de chromaticidad) showes %2egw41-7 04581 (dans le diagramme de chromaticit\351) showfr %3egw41-7 04581 (nel diagramma di cromaticit\340) showit %4egw41-7 04581 (in the chromaticity diagram) showjp %5egw41-7 04581 TBIS ( (x, y)) show } if %xchart4=0,1 xchart4 2 eq xchart4 3 eq or {%xchart4=2,3 (in linearer Farbtafel ) showde %0egw41-7 06581 (in linear chromaticity diagram ) showea %1egw41-7 06581 TBS (\050) show TBIS (a) show TBL 0 -50 rmoveto (2) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if TBIS (, b) show TBL 0 -50 rmoveto (2) show 0 50 rmoveto xcolorl 1 eq {xcol10_BS} if TBS (\051) show } if %xchart4=2,3 xchart4 4 eq xchart4 5 eq or {%xchart4=4,5 (in Buntwertdiagramm) showde %0egw41-7 08581 (in chromatic value diagram) showen %1egw41-7 08581 (en el diagrama valor crom\341tico) showes %2egw41-7 08581 (dans la valeur chromatique le diagramme) showfr %3egw41-7 08581 (nel diagramma di valore cromatico) showit %4egw41-7 08581 (in chromatic value diagram) showjp %5egw41-7 08581 TBIS ( (A, B)) show } if %xchart4=4,5 xchart4 6 eq {%xchart4=6 (in Buntwertdiagram) showde %0egw41-7 10581 (in chromatc value diagram) showen %1egw41-7 10581 (en el diagrama croma) showes %2egw41-7 10581 (dans le diagramme de chroma) showfr %3egw41-7 10581 (nel diagramma di chroma) showit %4egw41-7 10581 (in chromactic value diagram) showjp %5egw41-7 10581 TBIS ( \050A) show 0 -50 rmoveto TBL (1) show 0 50 rmoveto TBS (, ) show TBIS (B) show 0 -50 rmoveto TBL (1) show 0 50 rmoveto TBS (\051) show } if %xchart4=6 xchart4 7 eq {%xchart4=7 (in Buntwertdiagram) showde %0egw41-7 11581 (in chromatic value diagram) showen %1egw41-7 11581 (en el diagrama croma) showes %2egw41-7 11581 (dans le diagramme de chroma) showfr %3egw41-7 11581 (nel diagramma di chroma) showit %4egw41-7 11581 (in chroma diagram) showjp %5egw41-7 11581 TBIS ( \050A) show 0 -50 rmoveto TBL (2) show 0 50 rmoveto TBS (, ) show TBIS (B) show 0 -50 rmoveto TBL (2) show 0 50 rmoveto TBS (\051) show } if %xchart4=7 } bind def %proz_opti %**************************************************************************** /proz_name_range {%proz_name_range /xchart12 xchart4 12 mul def xtexti xchart12 3 add get ytexti xchart12 3 add get moveto TBS (Name & Spektralbereich) showde %0egw41-7 00581 (name and spectral range) showen %1egw41-7 00581 (Nombre y gama espectral) showes %2egw41-7 00581 (Nom et la gamma spectrale) showfr %3egw41-7 00581 (Nome e la gamma spettrale) showit %4egw41-7 00581 (name and spectral range) showjp %5egw41-7 00581 xtexti xchart12 4 add get ytexti xchart12 4 add get moveto TBIS FARBE 0 get show TBL 0 -40 rmoveto FARBE 1 get show 0 40 rmoveto TBIS FARBE 2 get show xtexti xchart12 5 add get ytexti xchart12 5 add get moveto TBIS FARBE 3 get show TBL 0 -40 rmoveto FARBE 4 get show 0 40 rmoveto TBIS FARBE 5 get show xtexti xchart12 6 add get ytexti xchart12 6 add get moveto TBIS FARBE 6 get show TBL 0 -40 rmoveto FARBE 7 get show 0 40 rmoveto TBIS FARBE 8 get show xtexti xchart12 7 add get ytexti xchart12 7 add get moveto TBIS FARBE 9 get show TBL 0 -40 rmoveto FARBE 10 get show 0 40 rmoveto TBIS FARBE 11 get show xtexti xchart12 8 add get ytexti xchart12 8 add get moveto TBIS FARBE 12 get show TBL 0 -40 rmoveto FARBE 13 get show 0 40 rmoveto TBIS FARBE 14 get show xtexti xchart12 9 add get ytexti xchart12 9 add get moveto TBIS FARBE 15 get show TBL 0 -40 rmoveto FARBE 16 get show 0 40 rmoveto TBIS FARBE 17 get show xtexti xchart12 10 add get ytexti xchart12 10 add get moveto TBIS FARBE 18 get show TBL 0 -40 rmoveto FARBE 19 get show 0 40 rmoveto TBIS FARBE 20 get show xtexti xchart12 11 add get ytexti xchart12 11 add get moveto TBIS FARBE 21 get show TBL 0 -40 rmoveto FARBE 22 get show 0 40 rmoveto TBIS FARBE 23 get show } bind def %proz_name_range %**************************************************************** /proz_axis_scales4_7 {%proz_axis_scales4_7 %axis and scales 0 0 0 1 setcmyk_olvcolor -1000 0 moveto 2800 0 rlineto stroke 0 -1880 moveto 0 3600 rlineto stroke 1800 100 sub 50 moveto 100 -50 rlineto -100 -50 rlineto closepath fill 0 50 sub 1800 100 sub moveto 50 100 rlineto 50 -100 rlineto closepath fill /xt10x 5 array def /yt10x 5 array def /xt10x [() ( -50) ( ) ( ) ( 100)] def /yt10x [(-100) ( ) ( ) ( ) (100)] def 0 0 0 1 setcmyk_olvcolor 1 1 4 {/i exch def %i=0,4 x-axis -1600 i 800 mul add -75 moveto 0 150 rlineto stroke -1800 i 800 mul add -250 moveto TBS xt10x i get show i 4 eq {-1600 i 800 mul add 0 moveto xchart4 4 eq { %xchart4=4 -100 200 rmoveto TBIK (A) show xcolorl 1 eq {xcol10_BS} if } if %xchart4=4 xchart4 5 eq { %xchart4=5 -100 200 rmoveto TBIK (A) show xcolorl 1 eq {xcol10_BS} if } if %xchart4=5 xchart4 6 eq { %xchart4=6 -200 200 rmoveto TBIK (A) show -10 -50 rmoveto TBS (1) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if } if %xchart4=6 xchart4 7 eq { %xchart4=7 -200 200 rmoveto TBIK (A) show -10 -50 rmoveto TBS (2) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if } if %xchart4=7 } if } for %i=0,4 0 1 4 {/i exch def %i=0,4 y-axis -75 -1600 i 800 mul add moveto 150 0 rlineto stroke 100 -1650 i 800 mul add 100 sub moveto TBS yt10x i get show i 4 eq {0 -1650 i 800 mul add moveto xchart4 4 eq { %xchart4=4 100 150 rmoveto TBIK (B) show TM xcolorl 1 eq {xcol10_BS} if } if %xchart4=4 xchart4 5 eq { %xchart4=5 100 150 rmoveto TBIK (B) show xcolorl 1 eq {xcol10_BS} if 0 1150 add 1600 0200 add moveto } if %xchart4=5 xchart4 6 eq { %xchart4=6 100 150 rmoveto TBIK (B) show -10 -50 rmoveto TBS (1) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if } if %xchart4=6 xchart4 7 eq { %xchart4=7 100 150 rmoveto TBIK (B) show -10 -50 rmoveto TBS (2) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if } if %xchart4=7 } if } for %i=0,4 } bind def %proz_axis_scales4_7 %*********************************************************** /proz_chromaticity_data {%BEG proz_chromaticity_data /FL 0.00001 def /DOW 82 array def /DOWZ 17 array def /F02Z 51 array def /F10Z 51 array def %TRISTIMULUS VALUES FOR PURPLE COLORS from 'dmyy'KRPROG.FOR %FOR 02- AND 10-DEGREE-OBSERVER, ILLUMINANT E 0 1 79 {/i exch def %i=0,79 = 380_775 DOW i 380 i 5 mul add put } for %i=0,79 /DOWZ %17 data [700 -495 -500 -505 -510 -515 -520 -525 -530 -535 -540 -545 -550 -555 -560 -565 400] def /F02Z %3x17 data 700 ... 400 [.01136 .01141 .01158 .01169 .01176 .01182 .01187 .01191 .01195 .01199 .01204 .01210 .01219 .01232 .01254 .01300 .01431 .00410 .00404 .00383 .00369 .00359 .00352 .00346 .00342 .00337 .00331 .00325 .00317 .00306 .00289 .00262 .00205 .00040 .00000 .00118 .00507 .00754 .00930 .01064 .01167 .01256 .01346 .01445 .01562 .01709 .01910 .02210 .02718 .03765 .06785] def /F10Z %3x17 data 700 ... 400 [.00958 .01015 .01037 .01053 .01065 .01075 .01085 .01096 .01108 .01122 .01139 .01163 .01201 .01268 .01416 .02078 .01911 .00372 .00361 .00357 .00355 .00352 .00351 .00349 .00347 .00345 .00342 .00339 .00335 .00328 .00316 .00289 .00170 .00200 .00000 .00517 .00718 .00858 .00972 .01063 .01150 .01245 .01354 .01478 .01635 .01856 .02194 .02795 .04136 .10106 .08601] def %*************************************************** /FXYZ 240 array def /XSi 82 array def /YSi 82 array def /ZSi 82 array def /XANSi 82 array def /YANSi 82 array def /ZANSi 82 array def /AANSi 82 array def %actual data for plot, purple colours /BANSi 82 array def 0 1 239 {/i exch def %i=0,239 FXYZ i xcolorl 0 eq {F2 i get put} {F10 i get put} ifelse } for %i=0,239 /YKSUM 0 def %For CIE Illuminant E 0 1 79 {/i exch def %i=0,1,79 /YKSUM YKSUM FXYZ 80 i add get add def } for %i=0,1,79 0 1 79 {/i exch def %i=0,1,79 XSi i FXYZ 00 i add get YKSUM div 100 mul put YSi i FXYZ 80 i add get YKSUM div 100 mul put ZSi i FXYZ 160 i add get YKSUM div 100 mul put /SUM XSi i get YSi i get add ZSi i get add 0.0001 add def XANSi i XSi i get SUM div put YANSi i YSi i get SUM div put ZANSi i ZSi i get SUM div put xchart4 1 le {%xchart4<=1 AANSi i XANSi i get put BANSi i YANSi i get put } if %xchart4<=1 xchart4 2 eq {%xchart4=2 AANSi i XANSi i get xc sub YANSi i get FL add div put BANSi i ZANSi i get YANSi i get FL add div -0.4 mul put } if %xchart4=2 xchart4 3 eq {%xchart4=3 AANSi i XANSi i get xc sub YANSi i get FL add div put BANSi i ZANSi i get YANSi i get FL add div -0.4 mul put } if %xchart4=3 } for %i=0,1,79 /XZi 17 array def /YZi 17 array def /ZZi 17 array def /XANZi 17 array def /YANZi 17 array def /ZANZi 17 array def /AANZi 17 array def %actual data for plot, purple colours /BANZi 17 array def 0 1 16 {/i exch def %i=0,16 %for illuminant E: S(lamdda=100) XZi i xcolorl 0 eq {F02Z} {F10Z} ifelse 00 i add get YKSUM div 100 mul put YZi i xcolorl 0 eq {F02Z} {F10Z} ifelse 17 i add get YKSUM div 100 mul put ZZi i xcolorl 0 eq {F02Z} {F10Z} ifelse 34 i add get YKSUM div 100 mul put /SUM XZi i get YZi i get add ZZi i get add 0.0001 add def XANZi i XZi i get SUM div put YANZi i YZi i get SUM div put ZANZi i ZZi i get SUM div put xchart4 1 le {%xchart4<=1 AANZi i XANZi i get put BANZi i YANZi i get put } if %xchart4<=1 xchart4 2 eq {%xchart4=2 AANZi i XANZi i get xc sub YANZi i get FL add div put BANZi i ZANZi i get YANZi i get FL add div -0.4 mul put } if %xchart4=2 xchart4 3 eq {%xchart4=3 AANZi i XANZi i get xc sub YANZi i get FL add div put BANZi i ZANZi i get YANZi i get FL add div -0.4 mul put } if %xchart4=3 } for %i=0,16 /FL 0.00001 def } bind def %END proz_chromaticity_data %************************************************ /proz_chromaticity_xy {%BEG proz_chromaticity_xy /xtrans8 600 def /ytrans8 400 def xtrans8 ytrans8 translate %for scala and graphic (x,y) 0600 0400 0 0 moveto 4000 0 rlineto stroke 0 0 moveto 0 3200 rlineto stroke %! 100 S-Einheiten = 2000 Skalen-Einheiten TBS 0 -50 moveto 0 100 rlineto stroke 800 -50 moveto 0 100 rlineto stroke 1600 -50 moveto 0 100 rlineto stroke 2400 -50 moveto 0 100 rlineto stroke 3200 -50 moveto 0 100 rlineto stroke 4000 -50 moveto 0 100 rlineto stroke -100 -300 moveto (0,0) show 700 -300 moveto (0,2) show 1500 -300 moveto (0,4) show 2300 -300 moveto (0,6) show 3100 -300 moveto (0,8) show 3900 -300 moveto (1,0) show %! 100 S-Einheiten = 2000 Skalen-Einheiten -50 0 moveto 100 0 rlineto stroke -50 800 moveto 100 0 rlineto stroke -50 1600 moveto 100 0 rlineto stroke -50 2400 moveto 100 0 rlineto stroke -50 3200 moveto 100 0 rlineto stroke -450 -80 moveto (0,0) show -450 720 moveto (0,2) show -450 1520 moveto (0,4) show -450 2320 moveto (0,6) show -450 3120 moveto (0,8) show TIS 4200 150 moveto (x) show xcolorl 1 eq {TL 0 -40 rmoveto (10) show 0 40 rmoveto TIS} if -300 2800 moveto (y) show xcolorl 1 eq {TL 0 -40 rmoveto (10) show 0 40 rmoveto TIS} if TBIS 2600 150 moveto xcolorl 0 eq {(CIE 1931) show} if xcolorl 1 eq {(CIE 1964) show} if newpath /fakt 4000 def 5 1 60 {/i exch def %i=5,60 AANSi i get fakt mul BANSi i get fakt mul i 05 eq {moveto} if i 06 ge i 59 le and {lineto} if i 60 eq {lineto closepath stroke} if } for %i=5,60 /xytshift 320 array def %min 4x65 /xytshift [ 0 000 000 (380) %0 0 000 000 (385) %1 0 000 000 (390) %2 0 000 000 (395) %3 1 -170 -170 (400) %4 0 000 000 (405) %5 0 000 000 (410) %6 0 000 000 (415) %7 0 000 000 (420) %8 0 000 000 (425) %9 0 000 000 (430) %10 0 000 000 (435) %11 0 000 000 (440) %12 0 000 000 (445) %13 1 -300 -050 (450) %14 S 0 000 000 (455) %15 0 000 000 (460) %16 0 000 000 (465) %17 0 000 000 (470) %18 1 -300 -030 (475) %19 0 000 000 (480) %20 0 000 000 (485) %21 1 -330 -050 (490) %22 1 -270 000 (495) %23 M=S 1 -300 -050 (500) %24 1 -300 -050 (505) %25 1 -330 -050 (510) %26 L=S 1 -300 050 (515) %27 1 -100 070 (520) %28 1 100 000 (525) %29 1 000 000 ( ) %30 1 050 000 (535) %31 1 000 000 ( ) %32 M 1 000 000 ( ) %33 1 050 030 (550) %34 1 000 000 ( ) %35 1 050 030 (560) %36 1 000 000 ( ) %37 1 050 030 (570) %38 L 1 000 000 ( ) %39 1 050 030 (580) %40 1 050 050 ( ) %41 1 050 030 (590) %42 1 050 050 ( ) %43 1 050 030 (600) %44 0 000 000 ( ) %45 1 050 070 (610) %46 0 000 000 ( ) %47 1 050 050 (620) %48 0 000 000 ( ) %49 0 000 000 (630) %50 0 000 000 ( ) %51 1 050 030 (640) %52 0 000 000 (645) %53 0 000 000 (650) %54 0 000 000 (655) %55 0 000 000 (660) %56 0 000 000 (665) %57 0 000 000 (670) %58 0 000 000 (675) %59 0 000 000 (680) %60 0 000 000 (685) %61 0 000 000 (690) %62 0 000 000 (695) %63 1 100 -50 (700) %64 ] def 0 1 64 {/i exch def %i=5,1,60 /i40 i 4 mul def xytshift i40 get 1 eq {%xytshift=1 0 0 0 0 setcmykcolor AANSi i get fakt mul BANSi i get fakt mul 30 0 360 arc fill %400,425,...,700 0 0 0 1 setcmykcolor AANSi i get fakt mul BANSi i get fakt mul 30 0 360 arc stroke %400,425,...,700 } if %xytshift=1 } for %i=5,1,60 TBIL 0 1 59 {/i exch def %i=0,65 /i40 i 4 mul def /i41 i40 1 add def /i42 i40 2 add def /i43 i40 3 add def xytshift i40 get 1 eq {%xytshift=1 AANSi i get fakt mul xytshift i41 get add BANSi i get fakt mul xytshift i42 get add moveto xytshift i43 get show } if %xytshift=1 } for %i=0,65 newpath /xytshiftZ 320 array def %min 4x65 /xytshiftZ [ 1 100 -50 (700) %0 see normal 1 050 -100 (495c,E) %1 1 050 -100 (500c,E) %2 0 050 -100 (505c,E) %3 1 100 -60 (510c,E) %4 0 050 -100 (515c,E) %5 0 050 -100 (520c,E) %6 1 050 -100 (525c,E) %7 0 050 -100 (530c,E) %8 0 050 -100 (535c,E) %9 0 050 -100 (540c,E) %10 0 050 -100 (545c,E) %11 1 050 -100 (550c,E) %12 0 050 -100 (555c,E) %13 0 050 -100 (560c,E) %14 S 1 050 -100 (565c,E) %15 0 -100 -150 (400) %16 see normal ] def 0 1 16 {/i exch def %i=5,5,60 /i40 i 4 mul def xytshiftZ i40 get 1 eq {%xytshiftZ=1 0 0 0 0 setcmykcolor AANZi i get fakt mul BANZi i get fakt mul 30 0 360 arc fill %400,405,...,700 0 0 0 1 setcmykcolor AANZi i get fakt mul BANZi i get fakt mul 30 0 360 arc stroke %400,405,...,700 } if %xytshiftZ=1 } for %i=0,1,16 TBIL 0 1 16 {/i exch def %i=0,16 /i40 i 4 mul def /i41 i40 1 add def /i42 i40 2 add def /i43 i40 3 add def xytshiftZ i40 get 1 eq {%xytshiftZ=1 AANZi i get fakt mul xytshiftZ i41 get add BANZi i get fakt mul xytshiftZ i42 get add moveto xytshiftZ i43 get show } if %xytshiftZ=1 } for %i=0,16 xtrans8 neg ytrans8 neg translate %scala & graphic (x,y) 0600 0400 } bind def %END proz_chromaticity_xy %************************************************ /proz_chromaticity_a2b2 {%BEG proz_chromaticity_a2b2 /FL 0.00001 def /fakt 1000 def /xtrans8 0500 def /ytrans8 3200 def xtrans8 ytrans8 translate %scala & graphic (a2,b2) 0500 3200 0 400 moveto 4000 0 rlineto stroke 0 400 moveto 0 -3600 rlineto stroke %! 100 S-Einheiten = 2000 Skalen-Einheiten TBS 0 350 moveto 0 100 rlineto stroke 800 350 moveto 0 100 rlineto stroke 1600 350 moveto 0 100 rlineto stroke 2400 350 moveto 0 100 rlineto stroke 3200 350 moveto 0 100 rlineto stroke 4000 350 moveto 0 100 rlineto stroke -150 500 moveto (-0,8) show 650 500 moveto (0,0) show 1450 500 moveto (0,8) show 2250 500 moveto (1,6) show 3050 500 moveto (2,4) show 3850 500 moveto (3,2) show %! 100 S-Einheiten = 2000 Skalen-Einheiten -50 0 moveto 100 0 rlineto stroke -50 -800 moveto 100 0 rlineto stroke -50 -1600 moveto 100 0 rlineto stroke -50 -2400 moveto 100 0 rlineto stroke -50 -3200 moveto 100 0 rlineto stroke -450 -100 moveto ( 0,0) show -450 -900 moveto (-0,8) show -450 -1700 moveto (-1,6) show %-450 -2500 moveto (-2,4) show -175 -3050 moveto 90 rotate TBIS (b) show TL 0 -40 rmoveto (2) show 0 40 rmoveto TIS 20 0 rmoveto xcolorl 1 eq {TL 0 -40 rmoveto (,10) show 0 40 rmoveto TIS} if TBS (=-0,40) show 20 0 rmoveto TBIS (z) show 20 0 rmoveto xcolorl 1 eq {TL 0 -40 rmoveto (10) show 0 40 rmoveto TIS} if TBIS (/y) show xcolorl 1 eq {TL 0 -40 rmoveto (10) show 0 40 rmoveto TIS} if -90 rotate 3450 150 moveto TBIS (a) show 20 0 rmoveto TL 0 -40 rmoveto (2) show 0 40 rmoveto TIS 20 0 rmoveto xcolorl 1 eq {TL 0 -40 rmoveto (,10) show 0 40 rmoveto TIS} if TBS (=\050) show 20 0 rmoveto TBIS (x) show 20 0 rmoveto xcolorl 1 eq {TL 0 -40 rmoveto (10) show 0 40 rmoveto TIS} if TBS (-0,110\051/) show 20 0 rmoveto TBIS (y) show 20 0 rmoveto xcolorl 1 eq {TL 0 -40 rmoveto (10) show 0 40 rmoveto TIS} if xtrans8 neg ytrans8 neg translate %scala & graphic (a2,b2) 0500 3200 newpath /fakt 1000 def /xtrans8 1300 def /ytrans8 3200 def xtrans8 ytrans8 translate %scala & graphic (a2,b2) 1300 3200 5 1 60 {/i exch def %i=5,60 AANSi i get fakt mul BANSi i get fakt mul i 05 eq {moveto} if i 06 ge i 59 le and {lineto} if i 60 eq {lineto closepath stroke} if } for %i=5,60 /xytshift 320 array def %min 4x65 /xytshift [ 0 000 000 (380) %0 0 000 000 (385) %1 0 000 000 (390) %2 0 000 000 (395) %3 1 -170 -170 (400) %4 0 000 000 (405) %5 0 000 000 (410) %6 0 000 000 (415) %7 0 000 000 (420) %8 0 000 000 (425) %9 0 000 000 (430) %10 0 000 000 (435) %11 0 000 000 (440) %12 0 000 000 (445) %13 1 -300 -050 (450) %14 S 0 000 000 (455) %15 0 000 000 (460) %16 0 000 000 (465) %17 0 000 000 (470) %18 1 -300 -030 (475) %19 0 000 000 (480) %20 0 000 000 (485) %21 1 -330 -050 (490) %22 1 -270 000 (495) %23 M=S 1 -300 -050 (500) %24 0 -300 -050 (505) %25 1 -330 -050 (510) %26 L=S 0 -300 050 (515) %27 1 -150 070 (520) %28 0 100 000 (525) %29 0 000 000 ( ) %30 0 050 000 (535) %31 1 -80 070 (540) %32 M 0 000 000 ( ) %33 0 000 030 (550) %34 0 000 000 ( ) %35 1 -80 070 (560) %36 0 000 000 ( ) %37 0 050 000 (570) %38 L 0 000 000 ( ) %39 1 050 070 (580) %40 0 050 050 ( ) %41 0 050 030 (590) %42 0 050 050 ( ) %43 1 -80 070 (600) %44 0 000 000 ( ) %45 0 050 070 (610) %46 0 000 000 ( ) %47 1 -80 050 (620) %48 0 000 000 ( ) %49 0 000 000 (630) %50 0 000 000 ( ) %51 1 -80 030 (640) %52 0 000 000 (645) %53 0 000 000 (650) %54 0 000 000 (655) %55 0 000 000 (660) %56 0 000 000 (665) %57 0 000 000 (670) %58 0 000 000 (675) %59 0 000 000 (680) %60 0 000 000 (685) %61 0 000 000 (690) %62 0 000 000 (695) %63 1 100 -50 (700) %64 ] def 0 1 64 {/i exch def %i=5,1,60 /i40 i 4 mul def xytshift i40 get 1 eq {%xytshift=1 0 0 0 0 setcmykcolor AANSi i get fakt mul BANSi i get fakt mul 30 0 360 arc fill %400,425,...,700 0 0 0 1 setcmykcolor AANSi i get fakt mul BANSi i get fakt mul 30 0 360 arc stroke %400,425,...,700 } if %xytshift=1 } for %i=5,1,60 TBIL 0 1 59 {/i exch def %i=0,65 /i40 i 4 mul def /i41 i40 1 add def /i42 i40 2 add def /i43 i40 3 add def xytshift i40 get 1 eq {%xytshift=1 AANSi i get fakt mul xytshift i41 get add BANSi i get fakt mul xytshift i42 get add moveto xytshift i43 get show } if %xytshift=1 } for %i=0,65 newpath /xytshiftZ 320 array def %min 4x65 /xytshiftZ [ 1 100 -50 (700) %0 see normal 1 050 -100 (495c,E) %1 1 050 -100 (500c,E) %2 0 050 -100 (505c,E) %3 1 100 -60 (510c,E) %4 0 050 -100 (515c,E) %5 0 050 -100 (520c,E) %6 1 050 -100 (525c,E) %7 0 050 -100 (530c,E) %8 0 050 -100 (535c,E) %9 0 050 -100 (540c,E) %10 0 050 -100 (545c,E) %11 1 050 -100 (550c,E) %12 0 050 -100 (555c,E) %13 0 050 -100 (560c,E) %14 S 1 050 -100 (565c,E) %15 0 -100 -150 (400) %16 see normal ] def 0 1 16 {/i exch def %i=5,5,60 /i40 i 4 mul def xytshiftZ i40 get 1 eq {%xytshiftZ=1 0 0 0 0 setcmykcolor AANZi i get fakt mul BANZi i get fakt mul 30 0 360 arc fill %400,405,...,700 0 0 0 1 setcmykcolor AANZi i get fakt mul BANZi i get fakt mul 30 0 360 arc stroke %400,405,...,700 } if %xytshiftZ=1 } for %i=0,1,16 TBIL 0 1 16 {/i exch def %i=0,16 /i40 i 4 mul def /i41 i40 1 add def /i42 i40 2 add def /i43 i40 3 add def xytshiftZ i40 get 1 eq {%xytshiftZ=1 AANZi i get fakt mul xytshiftZ i41 get add BANZi i get fakt mul xytshiftZ i42 get add moveto xytshiftZ i43 get show } if %xytshiftZ=1 } for %i=0,16 xtrans8 neg ytrans8 neg translate %scala & graphic (a2,b2) 1300 3200 } bind def %END proz_chromaticity_a2,b2 %***************************************************************** %%EndProlog gsave %lanindL2.EPS START 20000505 /lanind 0 def /lantex [(G) (E) (S) (F) (I) (J) (M)] def /showde {0 lanind eq {show} {pop} ifelse} bind def /showen {1 lanind eq {show} {pop} ifelse} bind def /showes {2 lanind eq {show} {pop} ifelse} bind def /showfr {3 lanind eq {show} {pop} ifelse} bind def /showit {4 lanind eq {show} {pop} ifelse} bind def /showjp {5 lanind eq {show} {pop} ifelse} bind def /showea {1 lanind le {show} {pop} ifelse} bind def /lanindf where {pop /lanind1 lanindf def /lanind2 lanindf def /lanindd laninddf def} {/lanind1 0 def /lanind2 0 def} ifelse /colormf where {pop /colorm1 colormf def /colorm2 colormf def /colormd colormdf def} {/colorm1 0 def} ifelse /deintpf where {pop /deintp1 deintpf def /deintp2 deintpf def /deintpd deintpdf def} {/deintp1 0 def} ifelse /xcolorf where {pop /xcolor1 xcolorf def /xcolor2 xcolorf def /xcolord xcolordf def} {/xcolor1 0 def} ifelse /xchartf where {pop /xchart1 xchartf def /xchart2 xchartf def /xchartd xchartdf def /xchartm xchart2f xchart1f sub 1 add def} {/xchart1 1 def /xchartm 1 def} ifelse /xchart3f where {pop /xchart3 xchart3f def} {/xchart3 0 def} ifelse /xchart4f where {pop /xchart4 xchart4f def} {/xchart4 0 def} ifelse /pchartf where {pop /pchart1 pchartf def /pchart2 pchartf def /pchartd pchartdf def} {/pchart1 3 def} ifelse /colsepf where {pop /colsep1 colsepf def /colsep2 colsepf def /colsepd colsepdf def} {/colsep1 0 def} ifelse /pmetamf where {pop /pmetam1 pmetamf def /pmetam2 pmetamf def /pmetamd pmetamdf def} {/pmetam1 0 def} ifelse %either defaul values for xchart=0 or values for xchart=1 /lanind lanind1 def % /colorm colorm1 def % /deintp deintp1 def % /xcolor xcolor1 def % /xchart xchart1 def % /pchart pchart1 def % /colsep colsep1 def % /pmetam pmetam1 def % colorm 0 eq deintp 0 eq and {/Txx (d) def} if %colorm=0, deintp=0 colorm 0 eq deintp 1 eq and {/Txx (e) def} if %colorm=0, deintp=1 colorm 1 eq deintp 0 eq and {/Txx (dd) def} if %colorm=1, deintp=0 colorm 1 eq deintp 1 eq and {/Txx (de) def} if %colorm=1, deintp=1 xchart 0 eq {/Txx (-) def} if %always independent of intended output gsave %LANINDL2 END /cvishow {cvi 6 string cvs show ( ) show} def /cvsshow1 {10 mul cvi 0.1 mul 9 string cvs show ( ) show} def /cvsshow2 {100 mul cvi 0.01 mul 9 string cvs show ( ) show} def /cvsshow3 {1000 mul cvi 0.001 mul 9 string cvs show ( ) show} def /cvsshow4 {10000 mul cvi 0.0001 mul 9 string cvs show ( ) show} def /cvsshow5 {100000 mul cvi 0.00001 mul 9 string cvs show ( ) show} def /TELi 8 array def /xchart8 1 def %0:Pxx, 1:Dxx xchart8 0 eq {%xchart8=0 Pxx /TELi [(P60) (P55) (P50) (P45) (P40) (P35) (P30) (P25)] def %7 illumin. } if %xchart8=0 xchart8 1 eq {%xchart8=1 Dxx /TELi [(D65) (D50) (P40) (A00) (E00) (C00) (P00) (Q00)] def %7 illumin. } if %xchart8=1 /SD65 82 array def %380 bis 775 mit deltalambda=05 /SD50 82 array def %380 bis 775 mit deltalambda=05 /SP40 82 array def %380 bis 775 mit deltalambda=05 /SA00 82 array def %380 bis 775 mit deltalambda=05 /SE00 82 array def %380 bis 775 mit deltalambda=05 /SC00 82 array def %380 bis 775 mit deltalambda=05 /SP00 82 array def %380 bis 775 mit deltalambda=05 /SQ00 82 array def %380 bis 775 mit deltalambda=05 /SDAK 82 array def %380 bis 775 mit deltalambda=05 /RA 82 array def %380 bis 770 nm /F2 240 array def %3 x 80 Daten fuer Bereich 380 bis 770nm /F2N 240 array def %normiert auf Y=100 fuer D65 und 10nm /F10 240 array def %3 x 80 Daten fuer Bereich 380 bis 770nm %C %C LITERATURQUELLEN LICHTARTEN %C SA,SC,SD65, CIE-DOKUMENT NR.15 FARBMESSUNG, 1971 %C TABELLE 1.1.1, SEITE 81 %C SD55,SD75, CIE-DOKUMENT NR.15 FARBMESSUNG, 1971 %C TABELLE 1.1.4, SEITE 85 %C LINEAR INTERPOLIERT VON 5 ZU 5NM %C SG,SP,SXE, DIN 5033, BLATT 7 ,SEITE 8-9 %C AUSGABE 1966 /SD65 %80 data 5 nm [50.0 52.3 54.6 68.7 82.8 87.1 91.5 92.5 93.4 90.1 86.7 95.8 104.9 110.9 117.0 117.4 117.8 116.3 114.9 115.4 115.9 112.4 108.8 109.1 109.4 108.6 107.8 106.3 104.8 106.2 107.7 106.0 104.4 104.2 104.0 102.0 100.0 98.2 96.3 96.1 95.8 92.2 88.7 89.3 90.0 89.8 89.6 88.6 87.7 85.5 83.3 83.5 83.7 81.9 80.0 80.1 80.2 81.2 82.3 80.3 78.3 74.0 69.7 70.7 71.6 73.0 74.3 68.0 61.6 65.7 69.9 72.5 75.1 69.3 63.6 55.0 46.4 56.6 66.8 65.1] def /SD50 %80 data 5 nm CIE 15.3, Seite 30; aus JE540-1N.PS [24.5 27.2 29.9 39.6 49.3 52.9 56.5 58.3 60.0 58.9 57.8 66.3 74.8 81.0 87.2 88.9 90.6 91.0 91.4 93.2 95.1 93.5 92.0 93.8 95.7 96.2 96.6 96.8 97.1 99.6 102.1 101.4 100.8 101.5 102.3 101.2 100.0 98.9 97.7 98.3 98.9 96.2 93.5 95.6 97.7 98.5 99.3 99.2 99.0 97.4 95.7 97.3 98.9 97.3 95.7 96.9 98.2 100.6 103.0 101.1 99.1 93.3 87.4 89.5 91.6 92.2 92.9 84.9 76.9 81.7 86.5 89.5 92.6 85.4 78.2 68.0 57.7 70.3 82.9 0.0] def %0.0 not used /SA00 %80 data 5 nm CIE 15.3 Seite 30; aus JE540-1N.PS [9.80 10.90 12.09 13.35 14.71 16.15 17.68 19.29 20.99 22.79 24.67 26.64 28.70 30.85 33.09 35.41 37.81 40.30 42.87 45.52 48.24 51.04 53.91 56.85 59.86 62.93 66.06 69.25 72.50 75.79 79.13 82.52 85.95 89.41 92.91 96.44 100.00 103.58 107.18 110.80 114.44 118.08 121.73 125.39 129.04 132.70 136.35 139.99 143.62 147.24 150.84 154.42 157.98 161.52 165.03 168.51 171.96 175.38 178.77 182.12 185.43 188.70 191.93 195.12 198.26 201.36 204.41 207.41 210.36 213.27 216.12 218.92 221.67 224.36 227.00 229.59 232.12 234.59 237.01 239.37 0.0] def %0.0 not used % AUS BILDPLA.FOR aus vrbam/wrpos:KRPROG.FOR, 5987-6023 5.10.92 %C PROGRAMM ZUR BERECHNUNG DER RELATIVEN SPEKTRALEN STRAHLUNGSVERTEI- %C LUNG EINES HOHLRAUMSTRAHLERS ALS FUNKTION DER WELLENLAENGE LAMDA %C BEI GEGEBENER TEMPERATUR T %C VERWENDETE VARIABLE %C T TEMPERATUR %C C2 PLANCKSCHE KONSTANTE (=1.4388 CM K (1967)) %C LAMDA(I) WELLENLAENGE %C S(I) STRAHLUNGSVERTEILUNG DES HOHLRAUMSTRAHLERS %C %C LITERATUR OFFIZIELLE EMPFEHLUNGEN DER CIE,DEUTSCHE VERSION, %C CA. 1969, SEITE 21 UND TABELLE 1.1.1 %C %SDP4 82 array def %380 bis 775 mit deltalambda=05 % DO 50 I=1,54 % 50 S(I)=100. % 1*(560./FLOAT(LAMDA(I)))**5 % 2*(EXP(C2/(560.*10.**(-7)*T))-1.) % 3/(EXP(C2/(FLOAT(LAMDA(I))*10.**(-7)*T))-1.) %new CIE 15.3:2004, Eq. (3.1) page 2 %S(I) = [100{560/lambda}**5] [exp{(c2*10**7)/(TNC*560 )} - 1] % /[exp{(c2*10**7)/(TNC*lambda)} - 1] % exp = e {...} = 2.71 {...} %/TNC 2848 def %NLA /EE 2.718281 def %e=mac pocket calculator /C2 1.4350000 10 7 exp mul def /lamd 82 array def xchart8 1 eq {%xchart8=1 Dxx /TNC 4000 def %******************************************** 0 1 79 {%i=0,79 /i exch def /lambda 380 i 5 mul add def lamd i lambda put /E1 560 lambda div 5 exp def /E4 C2 TNC 560 mul div def /E5 C2 TNC lambda mul div def /E6 EE E4 exp def /E7 EE E5 exp def SP40 i E1 100 mul E6 1 sub E7 1 sub div mul put } for %i=0,79 } if %xchart8=1 Dxx %****************************************** xchart8 0 eq {%xchart8=0 Pxx %defined only for xchart8=0 Pxx /TNCj 8 array def /TNCj [6000 5500 5000 4500 4000 3500 3000 2500] def /SP60 82 array def %380 bis 775 mit deltalambda=05 /SP55 82 array def %380 bis 775 mit deltalambda=05 /SP50 82 array def %380 bis 775 mit deltalambda=05 /SP45 82 array def %380 bis 775 mit deltalambda=05 /SP40 82 array def %380 bis 775 mit deltalambda=05 /SP35 82 array def %380 bis 775 mit deltalambda=05 /SP30 82 array def %380 bis 775 mit deltalambda=05 /SP25 82 array def %380 bis 775 mit deltalambda=05 0 1 7 {/j exch def %j=0,7 0 1 79 {%i=0,79 /i exch def /lambda 380 i 5 mul add def lamd i lambda put /E1 560 lambda div 5 exp def /E4 C2 TNCj j get 560 mul div def /E5 C2 TNCj j get lambda mul div def /E6 EE E4 exp def /E7 EE E5 exp def j 0 eq {SP60 i} if j 1 eq {SP55 i} if j 2 eq {SP50 i} if j 3 eq {SP45 i} if j 4 eq {SP40 i} if j 5 eq {SP35 i} if j 6 eq {SP30 i} if j 7 eq {SP25 i} if E1 100 mul E6 1 sub E7 1 sub div mul put } for %i=0,79 } for %j=0,7 } if %xchart8=0 %************************************************* /SE00 %80 data 5 nm [100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0] def %0.0 not used /SC00 %80 data 5 nm [ 33.00 39.92 47.40 55.17 63.30 71.81 80.60 89.53 98.10 105.80 112.40 117.75 121.50 123.45 124.00 123.60 123.10 123.30 123.80 124.09 123.90 122.92 120.70 116.90 112.10 106.98 102.30 98.81 96.90 96.78 98.00 99.94 102.10 103.95 105.20 105.67 105.30 104.11 102.30 100.15 97.80 95.43 93.20 91.22 89.70 88.83 88.40 88.19 88.10 88.06 88.00 87.86 87.80 87.99 88.20 88.20 87.90 87.22 86.30 85.30 84.00 82.21 80.20 78.24 76.30 74.36 72.40 70.40 68.30 66.30 64.40 62.80 61.50 60.20 59.20 58.50 58.10 58.00 58.20 58.50 ] def %0.0 not used 0 1 79 {/i exch def %i=0,79 /lamda 380 i 5 mul add def SP00 i SE00 i get lamda 560 div mul put SQ00 i SE00 i get 1120 lamda sub 560 div mul put } for %i=0,79 %C LITERATURQUELLEN SPEKTRALWERTE %C F2 CIE-DOKUMENT NR.15 FARBMESSUNG, 1971 %C TABELLE 2.1, SEITE 93-102 /F2 %3x80 data [.001368 .002236 .004243 .007650 .01431 .02319 .04351 .07763 .1344 .2148 .2839 .3285 .3483 .3481 .3362 .3187 .2908 .2511 .1954 .1421 .09564 .05795 .03201 .01470 .0049 .0024 .0093 .0291 .06327 .1096 .1655 .2257 .2904 .3597 .4334 .5121 .5945 .6784 .7621 .8425 .9163 .9786 1.0263 1.0567 1.0622 1.0456 1.0026 .9384 .8544 .7514 .6424 .5419 .4479 .3608 .2835 .2187 .1649 .1212 .0874 .0636 .04677 .03290 .02270 .01584 .01136 .00811 .00579 .004109 .002899 .002049 .001440 .0009999 .0006901 .000476 .0003323 .0002348 .0001662 .0001174 .00008308 .00005871 .000039 .000064 .00012 .000217 .000396 .00064 .00121 .00218 .004 .0073 .0116 .01684 .023 .0298 .0380 .048 .06 .0739 .09098 .1126 .139 .1693 .208 .2586 .323 .4073 .503 .6082 .71 .7932 .862 .9149 .954 .9803 .995 1.0 .995 .9786 .952 .9154 .870 .8163 .757 .6949 .631 .5668 .503 .4412 .381 .321 .265 .217 .175 .1382 .107 .0816 .061 .04458 .032 .0232 .017 .01192 .00821 .005723 .004102 .002929 .002091 .001484 .001047 .00074 .00052 .0003611 .0002492 .0001719 .00012 .0000848 .00006 .0000424 .00003 .0000212 .00645 .01055 .02005 .03621 .06785 .1102 .2074 .3713 .6456 1.0391 1.3856 1.623 1.7471 1.7826 1.7721 1.7441 1.6692 1.5281 1.2876 1.0419 .8130 .6162 .4652 .3533 .2720 .2123 .1582 .1117 .07825 .05725 .04216 .02984 .0203 .0134 .00875 .00575 .0039 .00275 .0021 .0018 .00165 .0014 .0011 .0010 .0008 .0006 .00034 .00024 .00019 .0001 .00005 .00003 .00002 .00001 % 26*0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 %10 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 %20 0.0 0.0 0.0 0.0 0.0 0.0 %26 ] def /F10 %3x80 data [.00016 .0006624 .002362 .007242 .01911 .0434 .08474 .1406 .2045 .2647 .3147 .3577 .3837 .3867 .3707 .343 .3023 .2541 .1956 .1323 .08051 .04107 .01617 .005132 .003816 .01544 .03746 .07136 .1177 .173 .2365 .3042 .3768 .4516 .5298 .6161 .7052 .7938 .8787 .9512 1.0142 1.0743 1.1185 1.1343 1.124 1.0891 1.0305 .9507 .8563 .7549 .6475 .5351 .4316 .3437 .2683 .2043 .1526 .1122 .08126 .05793 .04085 .02862 .019941 .01384 .0100 .006605 .004552 .003145 .002175 .001506 .001045 .0007274 .0005083 .0003564 .000251 .0001777 .0001264 .00009015 .00006453 .00004634 .00001736 .00007156 .0002534 .0007685 .002004 .004509 .008756 .01446 .02139 .0295 .03868 .0496 .06208 .0747 .08946 .1063 .1282 .1528 .1852 .2199 .2536 .2977 .3391 .3954 .4608 .5314 .6067 .6857 .7618 .8233 .8752 .9238 .962 .9822 .9918 .9991 .9973 .9824 .9555 .9152 .8689 .8256 .7774 .7203 .6583 .5939 .528 .4618 .3981 .3395 .2835 .2282 .1798 .1402 .1076 .08119 .06028 .0441 .0318 .0226 .0159 .01113 .007749 .0053751 .0037177 .002565 .001768 .001222 .0008462 .0005864 .0004074 .000284 .0001987 .0001395 .00009843 .00006982 .00004974 .00003554 .00002549 .00001834 .0007048 .002928 .01048 .03234 .08601 .1971 .3894 .6568 .9725 1.2825 1.5535 1.7985 1.9673 2.0273 1.9948 1.9007 1.7454 1.5549 1.3176 1.0302 .7721 .5701 .4152 .3024 .2185 .1592 .112 .08225 .06071 .04305 .03045 .02058 .01368 .007918 .003988 .001091 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 %10 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 %20 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 %30 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 %40 0.0 0.0 0.0 0.0 %44 ] def %calculation of transformation data /FARBE 30 array def /FARBE [(R) (m) ( 561_770) %00 (Y) (m) ( 520_770) %01 (G) (m) ( 475_573) %02 (C) (m) ( 380_561) %03 (B) (m) ( 380_520) %04 (M) (m) ( 573_475) %05 (G) (o) ( 520_570) %06 (M) (o) ( 570_520) %07 (W) (0) ( 380_770) %08 (N) (0) ( 380_770) %09 ] def /xshift 10 array def %max 6 device + 4 elementary /yshift 10 array def /colori 10 array def /RX0 720 array def %9x80 /RX0 [ %(%Rm 00 560_770) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0036 0036 0036 0036 0036 0036 0468 0900 0900 0900 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %(%Ym 01 520_770) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0036 0036 0036 0036 0036 0036 0036 0036 0468 0900 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %(%Gm 02 475_575) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0036 0036 0036 0036 0036 0036 0036 0036 0036 0468 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0900 0900 0900 0900 0900 0900 0900 0900 0900 0468 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %(%Cm 03 380_560) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0900 0900 0900 0900 0900 0900 0468 0036 0036 0036 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %(%Bm 04 380_520) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0900 0900 0900 0900 0900 0900 0900 0900 0468 0036 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %(%Mm 05 575_475) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0900 0900 0900 0900 0900 0900 0900 0900 0900 0468 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0036 0036 0036 0036 0036 0036 0036 0036 0036 0468 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %(%Go 06 520_570) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0036 0036 0036 0036 0036 0036 0036 0036 0468 0900 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0900 0900 0900 0900 0900 0900 0900 0900 0468 0036 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %(%Mo 07 570_520) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0900 0900 0900 0900 0900 0900 0900 0900 0468 0036 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0036 0036 0036 0036 0036 0036 0036 0036 0468 0900 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %(%W0(r=0,900) 08 380_770) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %(%N0(r=0,036) 09 380_770) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 ] def /xcol10_BS {TBL 0 -50 rmoveto (10) show 0 50 rmoveto TBS} bind def /xcol10KBS {TBL 0 -50 rmoveto (,10) show 0 50 rmoveto TBS} bind def /xcolorl xcolor def 0 1 0 {/xcolorl exch def %xcolorl=0,0 xcolorl 1 eq {0 1 239 {/i exch def %i=0,239 F2 i F10 i get put } for %i=0,239 } if /YKSUM 0 def %For CIE Illuminant E 0 1 79 {/i exch def %i=0,1,79 /YKSUM YKSUM F2 80 i add get add def } for %i=0,1,79 /F2N 240 array def 0 1 79 {/i exch def %i=0,1,79 F2N 00 i add F2 00 i add get YKSUM div 100 mul put F2N 80 i add F2 80 i add get YKSUM div 100 mul put F2N 160 i add F2 160 i add get YKSUM div 100 mul put } for %i=0,1,79 /FXN 82 array def %FXN 0 = F2N imax /FYN 82 array def /FZN 82 array def %defines FXN, FYN, FZN 0 to 79 0 1 79 {/i exch def %i=0,79 FXN i F2N 000 i add get put FYN i F2N 080 i add get put FZN i F2N 160 i add get put } for %i=0,79 %special wavelength range with complementary colours for E? /FXD 63 array def /FYD 63 array def /FZD 63 array def /DOW 63 array def 00 1 60 {/i exch def %i=0,60 %range 400..700nm FXD i FXN 005 i add get put FYD i FYN 005 i add get put FZD i FZN 005 i add get put DOW i 400 i 5 mul add put %range 400 to 700 } for %i=0,60 %for interpolation FXD 61 FXD 60 get put FYD 61 FYD 60 get put FZD 61 FZD 60 get put FXD 62 FXD 60 get put FYD 62 FYD 60 get put FZD 62 FZD 60 get put /FAD 63 array def /FBD 63 array def /FCD 63 array def 20 setlinewidth /xdel 1005 def /ydel 395 def /x0 050 def /x1 -150 def /Xi 82 array def %80 spectral colours 380 to 775nm /Yi 82 array def /Zi 82 array def /XANi 82 array def /YANi 82 array def /ZANi 82 array def /AANi 82 array def %actual data for plot, spectral colours /BANi 82 array def /FXNZ 17 array def /FYNZ 17 array def /FZNZ 17 array def /XZi 17 array def /YZi 17 array def /ZZi 17 array def /XANZi 17 array def /YANZi 17 array def /ZANZi 17 array def /AANZi 17 array def %actual data for plot, purple colours /BANZi 17 array def /XRj 10 array def %10 spectral or max 10 device colours /YRj 10 array def /ZRj 10 array def /XANRj 10 array def /YANRj 10 array def /ZANRj 10 array def /XSj 10 array def %10 spectral or max 10 device atagonistic colours /YSj 10 array def /ZSj 10 array def /XANSj 10 array def /YANSj 10 array def /ZANSj 10 array def /XCj 10 array def %10 spectral from continuous colours /YCj 10 array def /ZCj 10 array def /XANCj 10 array def /YANCj 10 array def /ZANCj 10 array def /XAj 10 array def %10 spectral from continuous colours /YAj 10 array def /ZAj 10 array def /XANAj 10 array def /YANAj 10 array def /ZANAj 10 array def /RAk 82 array def 4 1 4 {/xchart4 exch def %xchart4=0,7 /xchartl xchart def %0 1 7 {/xchartl exch def %xchartl=0,7 %/YF 0 def %for normalization 1 /YF 1 def %for normalization 0,900 YF 0 eq {/YFR 1.00 def}{/YFR 0.90 def} ifelse gsave 5 /Times-ISOL1 FS /cvishow {cvi 6 string cvs show} def %75 85 moveto %lanind cvishow (-) show %colorm cvishow %deintp cvishow %xcolorl cvishow %xchart cvishow %pchart cvishow %colsep cvishow (-L) show pmetam cvishow 5 /Times-ISOL1 FS 72 86 moveto (egw41-5a enh31-5n) show 72 90 translate 0.010 MM dup scale 25 setlinewidth 0 0 0 0 setcmyk_olvcolor 0 0 moveto 6000 0 rlineto 0 4000 rlineto 6000 neg 0 rlineto closepath fill 0 0 moveto 6000 0 rlineto 0 4000 rlineto -6000 0 rlineto closepath clip 0 0 0 1 setcmyk_olvcolor 0 0 moveto 6000 0 rlineto 0 4000 rlineto 6000 neg 0 rlineto closepath stroke %calculation of XW,YW,ZW for 8 illuminants Dxx or Pxx 0 1 79 {/i exch def %i=0,79 SDAK i xchart8 0 eq {%xchart8=0 Pxx xchartl 0 eq {SP60 i get put} if xchartl 1 eq {SP55 i get put} if xchartl 2 eq {SP50 i get put} if xchartl 3 eq {SP45 i get put} if xchartl 4 eq {SP40 i get put} if xchartl 5 eq {SP35 i get put} if xchartl 6 eq {SP30 i get put} if xchartl 7 eq {SP25 i get put} if }%xchart8=0 Pxx {%xchart8=1 Dxx xchartl 0 eq {SD65 i get put} if xchartl 1 eq {SD50 i get put} if xchartl 2 eq {SP40 i get put} if xchartl 3 eq {SA00 i get put} if xchartl 4 eq {SE00 i get put} if xchartl 5 eq {SC00 i get put} if xchartl 6 eq {SP00 i get put} if xchartl 7 eq {SQ00 i get put} if } ifelse %xchart8=1 Dxx } for %i=0,79 /YKSUM 0 def 0 1 79 {/i exch def %i=0,1,79 /YKSUM YKSUM SDAK i get F2 80 i add get mul add def } for %i=0,1,79 0 1 79 {/i exch def %i=0,1,79 F2N 00 i add SDAK i get F2 00 i add get mul YKSUM div 100 mul put F2N 80 i add SDAK i get F2 80 i add get mul YKSUM div 100 mul put F2N 160 i add SDAK i get F2 160 i add get mul YKSUM div 100 mul put } for %i=0,1,79 %XW,YW,ZW for white /XW 0 def /YW 0 def /ZW 0 def 0 1 079 {/i exch def %i=0,79 /XW XW F2N 00 i add get add def /YW YW F2N 80 i add get add def /ZW ZW F2N 160 i add get add def } for %i=0,79 /SUMW XW YW add ZW add def %for D65, D50, P40, A00, E00 /XANW XW SUMW div def /YANW YW SUMW div def /ZANW ZW SUMW div def /AANW XW YW 0.0001 add div def /BANW ZW YW 0.0001 add div 0.4 mul neg def %************************************************ %XYZRj for 10 reflections 0 1 09 {/j exch def %j=0,9 %10 Reflections /jx j 80 mul def 0 1 79 {/i exch def %i=0,79 RAk i RX0 jx i add get 1000 div put } for %i=0,79 /XR 0 def /YR 0 def /ZR 0 def 0 1 079 {/i exch def %i=0,79 /XR XR F2N 00 i add get RAk i get mul add def /YR YR F2N 80 i add get RAk i get mul add def /ZR ZR F2N 160 i add get RAk i get mul add def } for %i=0,79 XRj j XR put YRj j YR put ZRj j ZR put /SUMR XR YR add ZR add def XANRj j XR SUMR 0.0001 add div put YANRj j YR SUMR 0.0001 add div put ZANRj j ZR SUMR 0.0001 add div put } for %j=0,9 %******************************************* 0 1 62 {/i exch def %i=0,62 FAD i FXD i get put FBD i FYD i get put FCD i FZD i get put } for %i=0,62 % FXU(1)=FF(2)*U(3)-FF(3)*U(2) % FXU(2)=FF(3)*U(1)-FF(1)*U(3) % FXU(3)=FF(1)*U(2)-FF(2)*U(1) % SUBROUTINE DOWEL (F,FXU,IMAX,IO) % DIMENSION F(99,3),FXU(3) % I=1 % T2=F(1,1)*FXU(1)+F(1,2)*FXU(2)+F(1,3)*FXU(3) % IF(T2) 1,1,4 % 1 T1=T2 % I=I+1 % T2=F(I,1)*FXU(1)+F(I,2)*FXU(2)+F(I,3)*FXU(3) % IF(T2) 1,1,2 % 2 IF(T1) 3,3,1 % 3 IO=I-1 % RETURN % 4 T1=F(IMAX,1)*FXU(1)+F(IMAX,2)*FXU(2)+F(IMAX,3)*FXU(3) % IF(T1) 5,5,1 % 5 IO=IMAX % RETURN % END %********************************************************* /proc_ABC_KNP_FWERTiX {%BEG proc_ABC_KNP_FWERT %input FAD,FBD,FCD, KNP %output FWERTiX/Y/Z (i=1,4) kNP 1 ge {/FWERT1X FAD kNP 1 sub get def /FWERT1Y FBD kNP 1 sub get def /FWERT1Z FCD kNP 1 sub get def} {/FWERT1X FAD 0 get def %again 400nm for i=0 /FWERT1Y FBD 0 get def /FWERT1Z FCD 0 get def} ifelse /FWERT2X FAD kNP get def /FWERT2Y FBD kNP get def /FWERT2Z FCD kNP get def /FWERT3X FAD kNP 1 add get def /FWERT3Y FBD kNP 1 add get def /FWERT3Z FCD kNP 1 add get def /FWERT4X FAD kNP 2 add get def /FWERT4Y FBD kNP 2 add get def /FWERT4Z FCD kNP 2 add get def } bind def %END proc_ABC_KNP_FWERTiX %********************************************************* /proc_XIE_TN1 {%BEG proc_XIE_TN1 %input XIE, FWERTiX/Y/Z (i=1,4) %output TN1 /A1N XIE 1 XIE sub mul XIE 2 sub mul 6 div def /A2N XIE 1 add XIE 1 sub mul XIE 2 sub mul 0.5 mul def /A3N XIE 1 add XIE mul 2 XIE sub mul 0.5 mul def /A4N XIE 1 add XIE mul XIE 1 sub mul 6 div def /FNX A1N FWERT1X mul A2N FWERT2X mul add A3N FWERT3X mul add A4N FWERT4X mul add def /FNY A1N FWERT1Y mul A2N FWERT2Y mul add A3N FWERT3Y mul add A4N FWERT4Y mul add def /FNZ A1N FWERT1Z mul A2N FWERT2Z mul add A3N FWERT3Z mul add A4N FWERT4Z mul add def /TNX FNX FXU1 mul FNY FXU2 mul add FNZ FXU3 mul add def } bind def %END proc_XIE_TN1 %********************************************************* /WEL1 60 array def %irregular definition /WEL2 60 array def %irregular definition %0 1 2 3 4 5 6 7 8 9 /WEL1 [405 435 450 460 465 470 475 480 485 490 495 500 510 520 530 540 545 550 555 560 ] def 0 1 19 {/k exch def %k=0,19 %wavelength 405..700nm /j WEL1 k get 400 sub 5 idiv def /LP k def /LPP 20.5 k add def /FF1 FXD j get def %start at 405..700nm /FF2 FYD j get def /FF3 FZD j get def /U1 XW def /U2 YW def /U3 ZW def /FXU1 FF2 U3 mul FF3 U2 mul sub def /FXU2 FF3 U1 mul FF1 U3 mul sub def /FXU3 FF1 U2 mul FF2 U1 mul sub def /INP -1 def /IPN -1 def %assumption jump from TN to TP from negativ to positiv 0 1 60 {/i exch def %i=1,60 /TN FAD i get FXU1 mul FBD i get FXU2 mul add FCD i get FXU3 mul add def /TP FAD i 1 add get FXU1 mul FBD i 1 add get FXU2 mul add FCD i 1 add get FXU3 mul add def TN 0 le TP 0 gt and {/INP i def exit} if } for %i=1,60 0 1 60 {/i exch def %i=1,60 /TN FAD i get FXU1 mul FBD i get FXU2 mul add FCD i get FXU3 mul add neg def /TP FAD i 1 add get FXU1 mul FBD i 1 add get FXU2 mul add FCD i 1 add get FXU3 mul add neg def TN 0 le TP 0 gt and {/IPN i def exit} if } for %i=1,60 %********************************************************* /kNP INP def kNP 0 ge {%kNP>=0 proc_ABC_KNP_FWERTiX %input FAD,KNP, output FWERTiXYZ (i=1,4) /XIE1 0 def %start values TN=0 for XIE1, TP>0 for XIE2 /XIE2 1 def 0 1 9 {/mk exch def %mk=0,9 /XIE XIE1 XIE2 add 0.5 mul def proc_XIE_TN1 %input XIE, ouput TN1 TNX 0 le {/XIE1 XIE def /TN1 TNX def} {/XIE2 XIE def /TP1 TNX def} ifelse } for %mk=0,9 /XIE XIE1 XIE2 add 0.5 mul def /DOWXIE1 DOW INP get DOW INP 1 add get DOW INP get sub XIE mul add def /XIENP XIE def } if %kNP>=0 %********************************************************* /kNP IPN def kNP 0 ge {%kNP>=0 proc_ABC_KNP_FWERTiX %input FAD,KNP, output FWERTiXYZ (i=1,4) /XIE1 0 def %start values TN=0 for XIE1, TP>0 for XIE2 /XIE2 1 def /FXU1 FXU1 neg def /FXU2 FXU2 neg def /FXU3 FXU3 neg def 0 1 9 {/mk exch def %mk=0,9 /XIE XIE1 XIE2 add 0.5 mul def proc_XIE_TN1 %input XIE, ouput TN1 TNX 0 le {/XIE1 XIE def /TN1 TNX def} {/XIE2 XIE def /TP1 TNX def} ifelse } for %mk=0,9 /XIE XIE1 XIE2 add 0.5 mul def /DOWXIE2 DOW IPN get DOW IPN 1 add get DOW IPN get sub XIE mul add def /XIEPN XIE def } if %kNP>=0 %********************************************************* 0 1 79 {/i exch def %i=0,79 RA i 0.036 put } for %i=0,79 INP -1 eq {/i1 0 def} %380nm {/i1 INP 5 add def} ifelse %405..700nm IPN -1 eq {/i2 79 def} %770nm {/i2 IPN 5 add def} ifelse %405..700nm i2 i1 ge {%i1i2 i1 1 79 {/i exch def %i=i1,79 RA i 0.900 put } for %i=i1,79 0 1 i2 {/i exch def %i=0,i2 RA i 0.900 put } for %i=0,i2 } ifelse %i1>i2 %correction (0.900+0.036)/2=0.648 i2 i1 ge {%i1i2 RA i1 0.468 put RA i2 0.468 XIEPN 0.5 sub add put } ifelse %i1>i2 %*************************************************** /X 0 def /Y 0 def /Z 0 def 0 1 079 {/i exch def %i=0,79 /X X F2N 00 i add get RA i get mul add def /Y Y F2N 80 i add get RA i get mul add def /Z Z F2N 160 i add get RA i get mul add def } for %i=0,79 /SUM X Y add Z add def /XAN X SUM 0.0001 add div def /YAN Y SUM 0.0001 add div def /ZAN Z SUM 0.0001 add div def %************************************************* 0 0 0 1 setcmyk_olvcolor 0 1 1 {/Icom exch def %Icom=0,1 Icom 0 eq {%Icom=0,1 Xi k X put Yi k Y put Zi k Z put XANi k XAN put YANi k YAN put ZANi k ZAN put }%Icom=0 {%Icom=1 /kP 20 k add def Xi kP XW X sub put Yi kP YW Y sub put Zi kP ZW Z sub put /SUMi Xi kP get Yi kP get add Zi kP get add def XANi kP Xi kP get SUMi 0.0001 add div put YANi kP Yi kP get SUMi 0.0001 add div put ZANi kP Zi kP get SUMi 0.0001 add div put } ifelse %Icom=1 } for %Icom=0,1 YF 1 eq {%YF=1 Xi k Xi k get 0.9000 mul put Yi k Yi k get 0.9000 mul put Zi k Zi k get 0.9000 mul put Xi kP Xi kP get 0.9000 mul put Yi kP Yi kP get 0.9000 mul put Zi kP Zi kP get 0.9000 mul put } if %YF=1 } for %k=0,19 %********************************************************************** %XW,YW,ZW and XK,YK,ZK for white /XW 0 def /YW 0 def /ZW 0 def 0 1 079 {/i exch def %i=0,79 /XW XW F2N 00 i add get add def /YW YW F2N 80 i add get add def /ZW ZW F2N 160 i add get add def } for %i=0,79 YF 0 eq {%YF=0 /XK XW def /YK YW def /ZK ZW def }%YF=0 {%YF=1 /XK XW YFR mul def /YK YW YFR mul def /ZK ZW YFR mul def } ifelse %YF=1 /SUMK XK YK add ZK add def %for D65, D50, P40, A00, E00 /XANK XK SUMK div def /YANK YK SUMK div def /ZANK ZK SUMK div def /LP LP 1 add def /xtexti 96 array def /ytexti 96 array def /xtexti [ %T00 T10 T20 T30 T40 T41 T50 T51 T60 T61 T70 T71 %0 1 2 3 4 5 6 7 8 9 10 11 1700 2000 2000 3000 3200 4300 3200 4300 3200 4300 3200 4300 %0 (x,y) 1700 2000 2000 3000 3200 4300 3200 4300 3200 4300 3200 4300 %1 (x,y) 0050 0050 0050 0050 0050 1300 0050 1300 0050 1300 0050 1300 %2 (a2,b2) 0050 0050 0050 0050 0050 1300 0050 1300 0050 1300 0050 1300 %3 (a2,b2) 0050 0050 0050 0050 0050 1300 0050 1300 0050 1300 0050 1300 %4 (A,B) 0050 0050 0050 0050 0050 1300 0050 1300 0050 1300 0050 1300 %5 (A,B) 0050 0050 0050 0050 0050 1300 0050 1300 0050 1300 0050 1300 %6 (A1,B1) 0050 0050 0050 0050 0050 1300 0050 1300 0050 1300 0050 1300 %7 (a2,b2) ] def /ytexti [ 3800 3580 3360 3140 2920 2920 2700 2700 2480 2480 2260 2260 %0 (x,y) 3800 3580 3360 3140 2920 2920 2700 2700 2480 2480 2260 2260 %1 (x,y) 0500 0290 0080 1600 1380 1380 1160 1160 0940 0940 0720 0720 %3 (a2,b2) 0500 0290 0080 1600 1380 1380 1160 1160 0940 0940 0720 0720 %4 (a2,b2) 0500 0290 0080 1600 1380 1380 1160 1160 0940 0940 0720 0720 %4 (A,B) 0500 0290 0080 1600 1380 1380 1160 1160 0940 0940 0720 0720 %5 (A,B) 0500 0290 0080 1600 1380 1380 1160 1160 0940 0940 0720 0720 %6 (A1,B1) 0500 0290 0080 1600 1380 1380 1160 1160 0940 0940 0720 0720 %7 (a2,b2) ] def %*********************************************************** /icolor 9 array def %Rm %Ym %Gm %Cm %Bm %Mm %Go %Mo %W /icolor [20 10 06 00 30 26 06 26 40] def /imshow {-20 -50 rmoveto TBL (m) show 0 50 rmoveto TBIS} def /ioshow {0 -50 rmoveto TBL (o) show 0 50 rmoveto TBIS} def %************************************************* %allways /kxi 8 array def /xci 8 array def /Bci 8 array def /xcti 8 array def /Bcti 8 array def % 0 1 2 3 4 5 6 7 % (P60)(P55)(P50)(P45)(P40)(P35)(P30)(P25) %or (D65)(D50)(P40)(A00)(E00)(C00)(P00)(Q00) /kxi [9 10 10 11 9 9 10 9] def /kx kxi xchartl get def xchart4 0 eq xchart4 1 eq or xchart4 4 eq or xchart4 5 eq or {%xchart4=0,1 (x,y); 4,5 (A, B) % (P60) (P55) (P50) (P45) (P40) (P35) (P30) (P25) %or (D65) (D50) (P40) (A00) (E00) (C00) (P00) (Q00) % 0 1 2 3 4 5 6 7 /xci [ 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 ] def /xcti [(0,000) (0,000) (0,000) (0,000) (0,000) (0,000) (0,000) (0,000)] def /Bci [ 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 ] def /Bcti [(1,000) (1,000) (1,000) (1,000) (1,000) (1,000) (1,000) (1,000)] def } if %xchart4=1 xchart4 6 eq {%xchart4=6 (A1, B1) % (P60) (P55) (P50) (P45) (P40) (P35) (P30) (P25) %or (D65) (D50) (P40) (A00) (E00) (C00) (P00) (Q00) % 0 1 2 3 4 5 6 7 /xci [ 0.110 0.110 0.110 0.110 0.110 0.110 0.110 0.110 ] def /xcti [(0,110) (0,110) (0,110) (0,110) (0,110) (0,110) (0,110) (0,110)] def /Bci [ 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 ] def /Bcti [(1,000) (1,000) (1,000) (1,000) (1,000) (1,000) (1,000) (1,000)] def } if %xchart4=6 xchart4 2 eq xchart4 3 eq or xchart4 7 eq or {%xchart4=2,3,7 % (P60) (P55) (P50) (P45) (P40) (P35) (P30) (P25) %or (D65) (D50) (P40) (A00) (E00) (C00) (P00) (Q00) % 0 1 2 3 4 5 6 7 /xci [ 0.110 0.110 0.110 0.110 0.110 0.110 0.110 0.110 ] def /xcti [(0,110) (0,110) (0,110) (0,110) (0,110) (0,110) (0,110) (0,110)] def /Bci [ 0.800 1.000 1.300 2.500 0.900 0.700 1.000 0.700 ] def /Bcti [(0,800) (1,000) (1,300) (2,500) (0,900) (0,700) (1,000) (0,700)] def } if %xchart4=2,3,7 /xc xci xchartl get def /xct xcti xchartl get def /Bc Bci xchartl get def /Bct Bcti xchartl get def xchart4 0 eq xchart4 1 eq or {%xchart4=0,1 4600 1600 moveto TBS (Parame\255) show 4600 1400 moveto TBS (ter:) show TBIS xchart4 0 eq {( N) show} if xchart4 1 eq {( Y) show} if proz_chromaticity_data proz_chromaticity_xy } if %xchart4=0,1 xchart4 2 eq {%xchart4=2 proz_chromaticity_data proz_chromaticity_a2b2 } if %xchart4=2 xchart4 3 eq {%xchart4=3 proz_chromaticity_data proz_chromaticity_a2b2 } if %xchart4=3 %*********************************************************** xchart4 0 eq xchart4 1 eq or {%xchart4=0,1 %only for (x,y) /fakt 4000 def proz_name_range proz_opti 600 400 translate %scala & graphic (x,y) 600 400 0 1 39 {/i exch def %i=0,39 /An XANi i get def /Bn YANi i get def An fakt mul Bn fakt mul i 0 eq {moveto} if i 1 ge i 38 le and {lineto} if i 39 eq {lineto closepath stroke} if } for %i=0,39 XANW fakt mul YANW fakt mul 90 0 360 arc stroke XANW fakt mul 200 sub YANW fakt mul 250 sub moveto TBS TELi xchartl get show TBIS 0 1 4 {/j exch def %j=0,4 j 0 eq {/i 0 def} if %Cm-Rm j 1 eq {/i 6 def} if %Gm-Mm j 2 eq {/i 13 def} if %Ym-Bm j 3 eq {/i kx def} if %Max-Min j 4 eq {%new only for i=40 /i 40 def /k 6 def %Go Xi i XRj k get put Yi i YRj k get put Zi i ZRj k get put } if /SUM Xi i get Yi i get add Zi i get add 0.0001 add def XANCj j Xi i get SUM div put YANCj j Yi i get SUM div put ZANCj j Zi i get SUM div put /An XANCj j get def /Bn YANCj j get def /AnY An fakt mul def %xan /BnY Bn fakt mul def %yan /Paramshow {Yi i get cvishow} bind def j 0 eq {AnY 400 sub BnY 050 sub moveto xchart4 0 eq {(C) show imshow} if xchart4 1 eq {Paramshow} if 1 0 0 0 setcmykcolor} if %Cm j 1 eq {AnY 400 sub BnY 050 sub moveto xchart4 0 eq {(G) show imshow} if xchart4 1 eq {Paramshow} if 1 0 1 0 setcmykcolor} if %Gm j 2 eq {AnY 100 sub BnY 250 sub moveto xchart4 0 eq {(Y) show imshow} if xchart4 1 eq {Paramshow} if 0 0 1 0 setcmykcolor} if %Ym j 3 eq {AnY 500 sub xchart4 1 eq {100 add} if BnY 050 sub moveto xchart4 0 eq {(max) show} if xchart4 1 eq {Paramshow} if 0.3 0 1 0 setcmykcolor} if %Ymax j 4 eq {AnY 370 sub xchart4 1 eq {100 add} if BnY 000 add moveto xchart4 0 eq {(G) show ioshow} if xchart4 1 eq {Paramshow} if 1 0.5 1 0 setcmykcolor} if %Go newpath AnY BnY 90 0 360 arc fill 0 setgray newpath AnY BnY 90 0 360 arc stroke } for %j=0,4 %continue j=0,4 for antagonistic (A) colours 0 1 4 {/j exch def %j=0,4 j 0 eq {/i 0 def} if %Cm-Rm j 1 eq {/i 6 def} if %Gm-Mm j 2 eq {/i 13 def} if %Ym-Bm j 3 eq {/i kx def} if %Max-Min j 4 eq {%new only for i=40 /i 40 def /k 6 def %Mo Xi i XRj k get put %special Yi i YRj k get put Zi i ZRj k get put } if /SUM XK Xi i get sub YK Yi i get sub add ZK Zi i get sub add 0.0001 add abs def XANAj j XK Xi i get sub SUM div put YANAj j YK Yi i get sub SUM div put ZANAj j ZK Zi i get sub SUM div put /An XANAj j get def /Bn YANAj j get def /AnY An fakt mul def %xan /BnY Bn fakt mul def %yan /Paramshow {YK Yi i get sub cvishow} bind def j 0 eq {AnY 150 add BnY 150 sub moveto xchart4 0 eq {(R) show imshow} if xchart4 1 eq {Paramshow} if 0 1 1 0 setcmykcolor} if %Rm j 1 eq {AnY 150 add BnY 050 sub moveto xchart4 0 eq {(M) show imshow} if xchart4 1 eq {Paramshow} if 0 1 0 0 setcmykcolor} if %Mm j 2 eq {AnY 350 sub BnY 100 add moveto xchart4 0 eq {(B) show imshow} if xchart4 1 eq {Paramshow} if 1 1 0 0 setcmykcolor} if %Bm j 3 eq {AnY 150 sub BnY 250 sub moveto xchart4 0 eq {(min) show} if xchart4 1 eq {Paramshow} if 0.7 1 0 0 setcmykcolor} if %Ymin j 4 eq {AnY 250 sub BnY 150 sub moveto xchart4 0 eq {(M) show ioshow} if xchart4 1 eq {Paramshow} if 0 0.5 0 0 setcmykcolor} if %Mo newpath AnY BnY 90 0 360 arc fill 0 setgray newpath AnY BnY 90 0 360 arc stroke } for %j=0,4 -600 -400 translate %scala & graphic (x,y) } if %xchart4=0,1 %************************************************************** xchart4 2 eq xchart4 3 eq or {%xchart4=2,3 %only for (a2,b2), (a2s,b2s) /fakt 1000 def /a2 1.00 def /b2 -0.4 def 500 0 translate proz_name_range proz_opti -500 0 translate proz_param /xtrans8 1300 def /ytrans8 3200 def xtrans8 ytrans8 translate %scala & graphic (a2,b2) 1300 3200 %0600 3100 translate %proz_axis_scales4_7 0 1 39 {/i exch def %i=0,39 /An XANi i get xc sub YANi i get 0.0001 add div def /Bn ZANi i get YANi i get 0.0001 add div 0.4 mul neg % Bc mul def /AnK XANK xc sub YANK 0.0001 add div def /BnK ZANK YANK 0.0001 add div 0.4 mul neg % Bc mul def /AnY An def /BnY Bn def An fakt mul Bn fakt mul i 0 eq {moveto} if i 1 ge i 38 le and {lineto} if i 39 eq {lineto closepath stroke} if } for %i=0,39 XANW xc sub YANW 0.0001 add div fakt mul %a2 ZANW YANW 0.0001 add div 0.4 mul neg fakt mul %b2 90 0 360 arc stroke XANW xc sub YANW 0.0001 add div fakt mul 100 add ZANW YANW 0.0001 add div 0.4 mul neg fakt mul 000 add moveto TBS TELi xchartl get show %10 chromatic colours from continuous colours TBIS 0 1 4 {/j exch def %j=0,4 j 0 eq {/i 0 def} if %Cm-Rm j 1 eq {/i 6 def} if %Gm-Mm j 2 eq {/i 13 def} if %Ym-Bm j 3 eq {/i kx def} if %Max-Min j 4 eq {/i 40 def /k 6 def %Go Xi i XRj k get put %special Yi i YRj k get put Zi i ZRj k get put } if /SUM Xi i get Yi i get add Zi i get add 0.0001 add def XANCj j Xi i get SUM div put YANCj j Yi i get SUM div put ZANCj j Zi i get SUM div put /An XANCj j get xc sub YANCj j get 0.0001 add div def %a2 /Bn ZANCj j get YANCj j get 0.0001 add div 0.4 mul neg %b2 % Bc mul def /AnY An fakt mul def /BnY Bn fakt mul def %dAB, CAB not used /dAB An dup mul Bn dup mul add 0.0001 add sqrt def %/CAB dAB Yi i get mul def /Paramshow {Yi i get cvishow} bind def j 0 eq {AnY 350 sub BnY 100 sub moveto xchart4 2 eq {(C) show imshow} if xchart4 3 eq {Paramshow} if 1 0 0 0 setcmykcolor} if %Cm j 1 eq {AnY 350 sub BnY 150 sub moveto xchart4 2 eq {(G) show imshow} if xchart4 3 eq {Paramshow} if 1 0 1 0 setcmykcolor} if %Gm j 2 eq {AnY 150 sub BnY 200 add moveto xchart4 2 eq {(Y) show imshow} if xchart4 3 eq {Paramshow} if 0 0 1 0 setcmykcolor} if %Ym j 3 eq {AnY 500 sub BnY 050 add moveto xchart4 2 eq {(max) show} if xchart4 3 eq {Paramshow} if 0.3 0 1 0 setcmykcolor} if %Ymax j 4 eq {AnY 050 add BnY 250 sub moveto xchart4 2 eq {(G) show ioshow} if xchart4 3 eq {Paramshow} if 1 0.5 1 0 setcmykcolor} if %Go newpath AnY BnY 90 0 360 arc fill 0 setgray newpath AnY BnY 90 0 360 arc stroke /SUM XK Xi i get sub YK Yi i get sub add ZK Zi i get sub add 0.0001 add def XANCj j XK Xi i get sub SUM div put YANCj j YK Yi i get sub SUM div put ZANCj j ZK Zi i get sub SUM div put /An XANCj j get xc sub YANCj j get 0.0001 add div def %a2 /Bn ZANCj j get YANCj j get 0.0001 add div 0.4 mul neg %b2 % Bc mul def /AnY An fakt mul def %a2 /BnY Bn fakt mul def %b2 %dAB, CAB not used /dAB An dup mul Bn dup mul add 0.0001 add sqrt def %/CAB dAB YK Yi i get sub mul def /Paramshow {YK Yi i get sub cvishow} bind def j 0 eq {AnY 120 add BnY 050 sub moveto xchart4 2 eq {(R) show imshow} if xchart4 3 eq {Paramshow} if 0 1 1 0 setcmykcolor} if %Rm j 1 eq {AnY 120 add BnY 050 sub moveto xchart4 2 eq {(M) show imshow} if xchart4 3 eq {Paramshow} if 0 1 0 0 setcmykcolor} if %Mm j 2 eq {AnY 300 sub BnY 100 add moveto xchart4 2 eq {(B) show imshow} if xchart4 3 eq {Paramshow} if 1 1 0 0 setcmykcolor} if %Bm j 3 eq {AnY 100 sub xchart4 3 eq {100 add} if BnY 250 sub moveto xchart4 2 eq {(min) show} if xchart4 3 eq {Paramshow} if 0.7 1 0 0 setcmykcolor} if %Bmin j 4 eq {AnY 100 sub BnY 250 sub moveto xchart4 2 eq {(M) show ioshow} if xchart4 3 eq {Paramshow} if 0 0.5 0 0 setcmykcolor} if %Mo newpath AnY BnY 90 0 360 arc fill 0 setgray newpath AnY BnY 90 0 360 arc stroke } for %j=0,4 xtrans8 neg ytrans8 neg translate %text & graphic (a2, b2) 1300 3200 %-600 400 translate } if %xchart4=2,3 only for (a2,b2), (a2s,b2s) %******************************************************* xchart4 4 eq xchart4 5 eq or {%xchart4=4,5 %only for (A,B) /fakt 40 def /a2 1.00 def /b2 -0.4 def proz_name_range proz_opti proz_param /xtrans8 3500 def /ytrans8 2100 def xtrans8 ytrans8 translate %text & graphic (A,B) 3500 2100 proz_axis_scales4_7 0 1 39 {/i exch def %i=0,39 /An XANi i get YANi i get 0.0001 add div def /Bn ZANi i get YANi i get 0.0001 add div 0.4 mul neg def /AnK XK YK 0.0001 add div def /BnK ZK YK 0.0001 add div 0.4 mul neg def /AnY An AnK sub Yi i get mul def /BnY Bn BnK sub Yi i get mul def AnY fakt mul BnY fakt mul i 0 eq {moveto} if i 1 ge i 38 le and {lineto} if i 39 eq {lineto closepath stroke} if } for %i=0,39 XANW YANW 0.0001 add div %(a-an)YW XANK YANK 0.0001 add div sub YW mul fakt mul ZANW YANW 0.0001 add div %(b-an)YW ZANK YANK 0.0001 add div sub 0.4 mul neg YW mul fakt mul 90 0 360 arc stroke 0 080 add 0 080 add moveto TBS TELi xchartl get show %10 chromatic colours from continuous colours TBIS 0 1 4 {/j exch def %j=0,4 j 0 eq {/i 0 def} if %Cm-Rm j 1 eq {/i 6 def} if %Gm-Mm j 2 eq {/i 13 def} if %Ym-Bm j 3 eq {/i kx def} if %Max-Min j 4 eq {/i 40 def /k 6 def %Go Xi i XRj k get put %special Yi i YRj k get put Zi i ZRj k get put } if /SUM Xi i get Yi i get add Zi i get add 0.0001 add def XANCj j Xi i get SUM div put YANCj j Yi i get SUM div put ZANCj j Zi i get SUM div put /An XANCj j get YANCj j get 0.0001 add div %2.5(a-an)Y XANK YANK 0.0001 add div sub def /Bn ZANCj j get YANCj j get 0.0001 add div %2.5(b-bn)Y ZANK YANK 0.0001 add div sub 0.4 mul neg def /AnY An Yi i get mul fakt mul def /BnY Bn Yi i get mul fakt mul def %dAB, CAB not used /dAB An dup mul Bn dup mul add 0.0001 add sqrt def /CAB dAB Yi i get mul def /Paramshow {Yi i get cvishow} bind def j 0 eq {AnY 350 sub BnY 050 sub moveto xchart4 4 eq {(C) show imshow} if xchart4 5 eq {Paramshow} if 1 0 0 0 setcmykcolor} if %Cm j 1 eq {AnY 370 sub BnY 050 sub moveto xchart4 4 eq {(G) show imshow} if xchart4 5 eq {Paramshow} if 1 0 1 0 setcmykcolor} if %Gm j 2 eq {AnY 050 sub BnY 150 add moveto xchart4 4 eq {(Y) show imshow} if xchart4 5 eq {Paramshow} if 0 0 1 0 setcmykcolor} if %Ym j 3 eq {AnY 100 sub BnY 300 sub moveto xchart4 4 eq {(max) show} if xchart4 5 eq {Paramshow} if 0.3 0 1 0 setcmykcolor} if %Ymax j 4 eq {AnY 100 sub BnY 250 sub moveto xchart4 4 eq {(G) show ioshow} if xchart4 5 eq {Paramshow} if 1 0.5 1 0 setcmykcolor} if %Go newpath AnY BnY 90 0 360 arc fill 0 setgray newpath AnY BnY 90 0 360 arc stroke /SUM XK Xi i get sub YK Yi i get sub add ZK Zi i get sub add 0.0001 add def XANCj j XK Xi i get sub SUM div put YANCj j YK Yi i get sub SUM div put ZANCj j ZK Zi i get sub SUM div put /An XANCj j get YANCj j get 0.0001 add div %(a-an) XANK YANK 0.0001 add div sub def /Bn ZANCj j get YANCj j get 0.0001 add div %(b-bn) ZANK YANK 0.0001 add div sub 0.4 mul neg def /AnY An YK Yi i get sub mul fakt mul def %(a-an)Y /BnY Bn YK Yi i get sub mul fakt mul def %(b-bn)Y %dAB, CAB not used /dAB An dup mul Bn dup mul add 0.0001 add sqrt def /CAB dAB YK Yi i get sub mul def /Paramshow {YK Yi i get sub cvishow} bind def j 0 eq {AnY 120 add BnY 050 sub moveto xchart4 4 eq {(R) show imshow} if xchart4 5 eq {Paramshow} if 0 1 1 0 setcmykcolor} if %Rm j 1 eq {AnY 120 add BnY 050 sub moveto xchart4 4 eq {(M) show imshow} if xchart4 5 eq {Paramshow} if 0 1 0 0 setcmykcolor} if %Mm j 2 eq {AnY 200 sub BnY 250 sub moveto xchart4 4 eq {(B) show imshow} if xchart4 5 eq {Paramshow} if 1 1 0 0 setcmykcolor} if %Bm j 3 eq {AnY 100 sub BnY 150 add moveto xchart4 4 eq {(min) show} if xchart4 5 eq {Paramshow} if 0.7 1 0 0 setcmykcolor} if %Bmin j 4 eq {AnY 100 sub BnY 150 add moveto xchart4 4 eq {(M) show ioshow} if xchart4 5 eq {Paramshow} if 0 0.5 0 0 setcmykcolor} if %Mo newpath AnY BnY 90 0 360 arc fill 0 setgray newpath AnY BnY 90 0 360 arc stroke } for %j=0,4 xtrans8 neg ytrans8 neg translate %text & graphic (A,B) 3500 2100 } if %xchart4=4,5 %************************************************************** xchart4 6 eq xchart4 7 eq or {%xchart4=6,7 %only for (A1/2,B1/2) /fakt 40 def /a2 1.00 def /b2 -0.4 def proz_name_range proz_opti proz_param /xtrans8 3500 def /ytrans8 2100 def xtrans8 ytrans8 translate %text & graphic (A1/2,B1/2) 3500 2100 proz_axis_scales4_7 0 1 39 {/i exch def %i=0,39 /An XANi i get xc sub YANi i get 0.0001 add div def /Bn ZANi i get YANi i get 0.0001 add div 0.4 mul neg Bc mul def /AnK XANK xc sub YANK 0.0001 add div def /BnK ZANK YANK 0.0001 add div 0.4 mul neg Bc mul def /AnY An AnK sub Yi i get mul def /BnY Bn BnK sub Yi i get mul def AnY fakt mul BnY fakt mul i 0 eq {moveto} if i 1 ge i 38 le and {lineto} if i 39 eq {lineto closepath stroke} if } for %i=0,39 XANW xc sub YANW 0.0001 add div %(a-an)YW XANK xc sub YANK 0.0001 add div sub YW mul fakt mul ZANW YANW 0.0001 add div %(b-an)YW ZANK YANK 0.0001 add div sub 0.4 mul neg Bc mul YW mul fakt mul 90 0 360 arc stroke 0 080 add 0 080 add moveto TBS TELi xchartl get show %10 chromatic colours from continuous colours TBIS 0 1 4 {/j exch def %j=0,4 j 0 eq {/i 0 def} if %Cm-Rm j 1 eq {/i 6 def} if %Gm-Mm j 2 eq {/i 13 def} if %Ym-Bm j 3 eq {/i kx def} if %Max-Min j 4 eq {/i 40 def /k 6 def %Go Xi i XRj k get put %special Yi i YRj k get put Zi i ZRj k get put } if /SUM Xi i get Yi i get add Zi i get add 0.0001 add def XANCj j Xi i get SUM div put YANCj j Yi i get SUM div put ZANCj j Zi i get SUM div put /An XANCj j get xc sub YANCj j get 0.0001 add div %2.5(a-an)Y XANK xc sub YANK 0.0001 add div sub def /Bn ZANCj j get YANCj j get 0.0001 add div %2.5(b-bn)Y ZANK YANK 0.0001 add div sub 0.4 mul neg Bc mul def /AnY An Yi i get mul fakt mul def /BnY Bn Yi i get mul fakt mul def %dAB, CAB not used /dAB An dup mul Bn dup mul add 0.0001 add sqrt def /CAB dAB Yi i get mul def /Paramshow {Yi i get cvishow} bind def j 0 eq {AnY 350 sub BnY 050 sub moveto xchart4 6 eq {(C) show imshow} if xchart4 7 eq {Paramshow} if 1 0 0 0 setcmykcolor} if %Cm j 1 eq {AnY 370 sub BnY 050 sub moveto xchart4 6 eq {(G) show imshow} if xchart4 7 eq {Paramshow} if 1 0 1 0 setcmykcolor} if %Gm j 2 eq {AnY 050 sub BnY 150 add moveto xchart4 6 eq {(Y) show imshow} if xchart4 7 eq {Paramshow} if 0 0 1 0 setcmykcolor} if %Ym j 3 eq {AnY 500 sub xchart4 7 eq {150 add} if BnY 050 add moveto xchart4 6 eq {(max) show} if xchart4 7 eq {Paramshow} if 0.3 0 1 0 setcmykcolor} if %Ymax j 4 eq {AnY 100 sub BnY 150 add moveto xchart4 6 eq {(G) show ioshow} if xchart4 7 eq {Paramshow} if 1 0.5 1 0 setcmykcolor} if %Go newpath AnY BnY 90 0 360 arc fill 0 setgray newpath AnY BnY 90 0 360 arc stroke /SUM XK Xi i get sub YK Yi i get sub add ZK Zi i get sub add 0.0001 add def XANCj j XK Xi i get sub SUM div put YANCj j YK Yi i get sub SUM div put ZANCj j ZK Zi i get sub SUM div put /An XANCj j get xc sub YANCj j get 0.0001 add div %(a-an) XANK xc sub YANK 0.0001 add div sub def /Bn ZANCj j get YANCj j get 0.0001 add div %(b-bn) ZANK YANK 0.0001 add div sub 0.4 mul neg Bc mul def /AnY An YK Yi i get sub mul fakt mul def %(a-an)Y /BnY Bn YK Yi i get sub mul fakt mul def %(b-bn)Y %dAB, CAB not used /dAB An dup mul Bn dup mul add 0.0001 add sqrt def /CAB dAB YK Yi i get sub mul def /Paramshow {YK Yi i get sub cvishow} bind def j 0 eq {AnY 120 add BnY 050 sub moveto xchart4 6 eq {(R) show imshow} if xchart4 7 eq {Paramshow} if 0 1 1 0 setcmykcolor} if %Rm j 1 eq {AnY 120 add BnY 050 sub moveto xchart4 6 eq {(M) show imshow} if xchart4 7 eq {Paramshow} if 0 1 0 0 setcmykcolor} if %Mm j 2 eq {AnY 200 sub BnY 250 sub moveto xchart4 6 eq {(B) show imshow} if xchart4 7 eq {Paramshow} if 1 1 0 0 setcmykcolor} if %Bm j 3 eq {AnY 100 add BnY 150 sub moveto xchart4 6 eq {(min) show} if xchart4 7 eq {Paramshow} if 0.7 1 0 0 setcmykcolor} if %Bmin j 4 eq {AnY 100 sub BnY 250 sub moveto xchart4 6 eq {(M) show ioshow} if xchart4 7 eq {Paramshow} if 0 0.5 0 0 setcmykcolor} if %Mo newpath AnY BnY 90 0 360 arc fill 0 setgray newpath AnY BnY 90 0 360 arc stroke } for %j=0,4 xtrans8 neg ytrans8 neg translate %text & graphic (A1/2,B1/2) 3500 2100 } if %xchart4=6,7 showpage grestore %} for %xchartl=0,7 } for %xchart4=0,7 } for %xcolorl=0,0 %%Trailer %line 239 %%EndDocument EndEPSF grestore gsave BeginEPSF 86 SHAl add MM 064 STSl add MM translate 10 /Times-ISOL1 FS 53 MM 1 MM moveto ( ) show 1 1 scale -77 -91 translate %%BeginDocument: Bild 16 %!PS-Adobe-3.0 EPSF-3.0 egw41-6a enh31-6n %%BoundingBox: 70 83 228 206 %START PDFDE011.EPS /pdfmark16 where {pop} {userdict /pdfmark16 /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/egw4/egw4.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 pdfmark16 [ /View [ /Fit ] /DOCVIEW pdfmark16 %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 /Courier findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /Courier-ISOL1 exch definefont pop /Courier-Oblique findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /CourierI-ISOL1 exch definefont pop /Courier-Bold findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /CourierB-ISOL1 exch definefont pop /Courier-BoldOblique findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /CourierBI-ISOL1 exch definefont pop /TG {350 /Times-ISOL1 FS} bind def /TM {280 /Times-ISOL1 FS} bind def /TK {240 /Times-ISOL1 FS} bind def /TS {200 /Times-ISOL1 FS} bind def /TL {160 /Times-ISOL1 FS} bind def /TIG {350 /TimesI-ISOL1 FS} bind def /TIM {280 /TimesI-ISOL1 FS} bind def /TIK {240 /TimesI-ISOL1 FS} bind def /TIS {200 /TimesI-ISOL1 FS} bind def /TIL {160 /TimesI-ISOL1 FS} bind def /TBG {350 /TimesB-ISOL1 FS} bind def /TBM {280 /TimesB-ISOL1 FS} bind def /TBK {240 /TimesB-ISOL1 FS} bind def /TBS {200 /TimesB-ISOL1 FS} bind def /TBL {160 /TimesB-ISOL1 FS} bind def /TBIG {350 /TimesBI-ISOL1 FS} bind def /TBIM {280 /TimesBI-ISOL1 FS} bind def /TBIK {240 /TimesBI-ISOL1 FS} bind def /TBIS {200 /TimesBI-ISOL1 FS} bind def /TBIL {160 /TimesBI-ISOL1 FS} bind def /SG {350 /Symbol FS} bind def /SM {280 /Symbol FS} bind def /SK {240 /Symbol FS} bind def /SS {200 /Symbol FS} bind def /SL {160 /Symbol FS} bind def %********************************************************* /proz_param {%proz_param 4650 3800 moveto TBS (Parame\255) show 4650 3600 moveto TBS (ter:) show xchart4 2 eq xchart4 4 eq or xchart4 6 eq or {TBIS ( N) show} if xchart4 3 eq xchart4 5 eq or xchart4 7 eq or {TBIS ( Y) show xcolorl 1 eq {xcol10_BS} if} if /kx kxi xchartl get def /kxx 445 kx 5 mul add def 4150 300 moveto TBS (max: ) show kxx cvishow (_770) show 4150 080 moveto TBS (min: 380_) show kxx cvishow /index2_7 {%index2_7 xchart4 2 eq xchart4 3 eq or xchart4 7 eq or {0 -50 rmoveto TBL (2) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if } if xchart4 4 eq xchart4 5 eq or {0 -50 rmoveto TBL () show 0 50 rmoveto xcolorl 1 eq {xcol10_BS} if } if xchart4 6 eq {0 -50 rmoveto TBL (1) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if } if } bind def %index2_7 /index2_7n {%index2_7n xchart4 2 eq xchart4 3 eq or xchart4 7 eq or {0 -50 rmoveto TBL (2,n) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if } if xchart4 4 eq xchart4 5 eq or {0 -50 rmoveto TBL (n) show 0 50 rmoveto xcolorl 1 eq {xcol10_BS} if } if xchart4 6 eq {0 -50 rmoveto TBL (1,n) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if } if } bind def %index2_7n xchart4 1 le xchart4 4 ge or {%xchart4<=1, xchart4>=4 /x0p 50 def x0p 3800 moveto TBIS (XYZ) show 0 -50 rmoveto TBL (W) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if TBS (=) show XK cvsshow2 (, ) show YK cvsshow2 (, ) show ZK cvsshow2 x0p 3550 moveto TBIS (A) show index2_7 TBS ( = 2,5 \050) show TBIS (a) show index2_7 TBS ( - ) show TBIS (a) show index2_7n TBS (\051 ) show TBIS (Y) show xcolorl 1 eq {xcol10_BS} if x0p 3300 moveto TBIS (B) show index2_7 TBS ( = 2,5 ) show TBIS (B) show 0 -50 rmoveto TBL (c) show 0 50 rmoveto TBS ( \050) show TBIS (b) show index2_7 TBS ( - ) show TBIS (b) show index2_7n TBS (\051 ) show TBIS (Y) show xcolorl 1 eq {xcol10_BS} if x0p 3050 moveto TBIS (a) show index2_7 TBS ( = ) show TBIS (a) show 0 -50 rmoveto TBL (20) show 0 50 rmoveto TBS ( [) show TBIS (\050x) show xcolorl 1 eq {xcol10_BS} if TBS (-) show TBIS (x) show 0 -50 rmoveto TBL (c) show 0 50 rmoveto TBIS (\051/y) show xcolorl 1 eq {xcol10_BS} if TBS (]) show x0p 2800 moveto TBIS (b) show index2_7 TBS ( = ) show TBIS (b) show 0 -50 rmoveto TBL (20) show 0 50 rmoveto TBS ( [) show TBIS (z) show xcolorl 1 eq {xcol10_BS} if TBIS (/y) show xcolorl 1 eq {xcol10_BS} if TBS (]) show x0p 2550 moveto TBIS (a) show 0 -50 rmoveto TBL (20) show 0 50 rmoveto TBS ( = 1, ) show TBIS (b) show 0 -50 rmoveto TBL (20) show 0 50 rmoveto TBS ( = -0,4) show x0p 2300 moveto TBIS (x) show 0 -50 rmoveto TBL (c) show 0 50 rmoveto TBS ( = ) show xct show (, ) show TBIS (B) show 0 -50 rmoveto TBL (c) show 0 50 rmoveto TBS ( = ) show Bct show x0p 2080 moveto TBIS (n) show TBS ( = ) show TELi xchartl get show x0p 1860 moveto TBIS (C) show TBL 0 -50 rmoveto (AB,) show 0 50 rmoveto index2_7 TBS (=[) show TBIS (A) show index2_7 TBL -20 100 rmoveto (2) show 0 -100 rmoveto TBS (+) show TBIS (B) show index2_7 TBL -20 100 rmoveto (2) show 0 -100 rmoveto TBS (]) show TBL 0 100 rmoveto (1/2) show 0 -100 rmoveto } if %xchart4<=1, xchart4>=4 } bind def %proz_param %**************************************************************** /proz_opti {%proz_opti TBS 0 0 0 1 setcmyk_olvcolor /xchart12 xchart4 12 mul def xtexti xchart12 0 add get ytexti xchart12 0 add get moveto TBS (10 Optimalfarben (o)) showde %0egw41-7 02581 (10 optimal colours (o)) showen %1egw41-7 02581 (10 colores \363ptimos (o)) showes %2egw41-7 02581 (10 couleurs optimales (o)) showfr %3egw41-7 02581 (10 colori ottimi (o)) showit %4egw41-7 02581 (10 optimal colours (o)) showjp %5egw41-7 02581 TBIS (, Y) show TBL 0 -60 rmoveto (W) show 0 60 rmoveto xchartl 1 eq {xcol10KBS} if TBS YF 0 eq {(=100) show}{(=90) show} ifelse TBIS (, Y) show TBL 0 -60 rmoveto (N) show 0 60 rmoveto xchartl 1 eq {xcol10KBS} if TBS YF 0 eq {(=0) show}{(=3,6) show} ifelse xtexti xchart12 1 add get ytexti xchart12 1 add get moveto (8 von maximalem (m)) showde %0egw41-7 03581 (8 of maximum (m)) showen %1egw41-7 03581 (8 de m\341ximo (m)) showes %2egw41-7 03581 (8 de la maximum (m)) showfr %3egw41-7 03581 (8 di massimo (m)) showit %4egw41-7 03581 (8 of maximum (m)) showjp %5egw41-7 03581 TBIS ( C) show TBL 0 -60 rmoveto (AB) show 0 60 rmoveto TBS ( f\374r ) showde %0egw41-7 03581 ( for ) showen %1egw41-7 03581 ( bajo ) showes %2egw41-7 03581 ( pour ) showfr %3egw41-7 03581 ( per ) showit %4egw41-7 03581 ( for ) showjp %5egw41-7 03581 TELi xchartl get show xtexti xchart12 2 add get ytexti xchart12 2 add get moveto xchart4 0 eq xchart4 1 eq or {%xchart4=0,1 (in der Normfarbtafel) showde %0egw41-7 04581 (in the chromaticity diagram) showen %1egw41-7 04581 (en el diagrama de chromaticidad) showes %2egw41-7 04581 (dans le diagramme de chromaticit\351) showfr %3egw41-7 04581 (nel diagramma di cromaticit\340) showit %4egw41-7 04581 (in the chromaticity diagram) showjp %5egw41-7 04581 TBIS ( (x, y)) show } if %xchart4=0,1 xchart4 2 eq xchart4 3 eq or {%xchart4=2,3 (in linearer Farbtafel ) showde %0egw41-7 06581 (in linear chromaticity diagram ) showea %1egw41-7 06581 TBS (\050) show TBIS (a) show TBL 0 -50 rmoveto (2) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if TBIS (, b) show TBL 0 -50 rmoveto (2) show 0 50 rmoveto xcolorl 1 eq {xcol10_BS} if TBS (\051) show } if %xchart4=2,3 xchart4 4 eq xchart4 5 eq or {%xchart4=4,5 (in Buntwertdiagramm) showde %0egw41-7 08581 (in chromatic value diagram) showen %1egw41-7 08581 (en el diagrama valor crom\341tico) showes %2egw41-7 08581 (dans la valeur chromatique le diagramme) showfr %3egw41-7 08581 (nel diagramma di valore cromatico) showit %4egw41-7 08581 (in chromatic value diagram) showjp %5egw41-7 08581 TBIS ( (A, B)) show } if %xchart4=4,5 xchart4 6 eq {%xchart4=6 (in Buntwertdiagram) showde %0egw41-7 10581 (in chromatc value diagram) showen %1egw41-7 10581 (en el diagrama croma) showes %2egw41-7 10581 (dans le diagramme de chroma) showfr %3egw41-7 10581 (nel diagramma di chroma) showit %4egw41-7 10581 (in chromactic value diagram) showjp %5egw41-7 10581 TBIS ( \050A) show 0 -50 rmoveto TBL (1) show 0 50 rmoveto TBS (, ) show TBIS (B) show 0 -50 rmoveto TBL (1) show 0 50 rmoveto TBS (\051) show } if %xchart4=6 xchart4 7 eq {%xchart4=7 (in Buntwertdiagram) showde %0egw41-7 11581 (in chromatic value diagram) showen %1egw41-7 11581 (en el diagrama croma) showes %2egw41-7 11581 (dans le diagramme de chroma) showfr %3egw41-7 11581 (nel diagramma di chroma) showit %4egw41-7 11581 (in chroma diagram) showjp %5egw41-7 11581 TBIS ( \050A) show 0 -50 rmoveto TBL (2) show 0 50 rmoveto TBS (, ) show TBIS (B) show 0 -50 rmoveto TBL (2) show 0 50 rmoveto TBS (\051) show } if %xchart4=7 } bind def %proz_opti %**************************************************************************** /proz_name_range {%proz_name_range /xchart12 xchart4 12 mul def xtexti xchart12 3 add get ytexti xchart12 3 add get moveto TBS (Name & Spektralbereich) showde %0egw41-7 00581 (name and spectral range) showen %1egw41-7 00581 (Nombre y gama espectral) showes %2egw41-7 00581 (Nom et la gamma spectrale) showfr %3egw41-7 00581 (Nome e la gamma spettrale) showit %4egw41-7 00581 (name and spectral range) showjp %5egw41-7 00581 xtexti xchart12 4 add get ytexti xchart12 4 add get moveto TBIS FARBE 0 get show TBL 0 -40 rmoveto FARBE 1 get show 0 40 rmoveto TBIS FARBE 2 get show xtexti xchart12 5 add get ytexti xchart12 5 add get moveto TBIS FARBE 3 get show TBL 0 -40 rmoveto FARBE 4 get show 0 40 rmoveto TBIS FARBE 5 get show xtexti xchart12 6 add get ytexti xchart12 6 add get moveto TBIS FARBE 6 get show TBL 0 -40 rmoveto FARBE 7 get show 0 40 rmoveto TBIS FARBE 8 get show xtexti xchart12 7 add get ytexti xchart12 7 add get moveto TBIS FARBE 9 get show TBL 0 -40 rmoveto FARBE 10 get show 0 40 rmoveto TBIS FARBE 11 get show xtexti xchart12 8 add get ytexti xchart12 8 add get moveto TBIS FARBE 12 get show TBL 0 -40 rmoveto FARBE 13 get show 0 40 rmoveto TBIS FARBE 14 get show xtexti xchart12 9 add get ytexti xchart12 9 add get moveto TBIS FARBE 15 get show TBL 0 -40 rmoveto FARBE 16 get show 0 40 rmoveto TBIS FARBE 17 get show xtexti xchart12 10 add get ytexti xchart12 10 add get moveto TBIS FARBE 18 get show TBL 0 -40 rmoveto FARBE 19 get show 0 40 rmoveto TBIS FARBE 20 get show xtexti xchart12 11 add get ytexti xchart12 11 add get moveto TBIS FARBE 21 get show TBL 0 -40 rmoveto FARBE 22 get show 0 40 rmoveto TBIS FARBE 23 get show } bind def %proz_name_range %**************************************************************** /proz_axis_scales4_7 {%proz_axis_scales4_7 %axis and scales 0 0 0 1 setcmyk_olvcolor -1000 0 moveto 2800 0 rlineto stroke 0 -1880 moveto 0 3600 rlineto stroke 1800 100 sub 50 moveto 100 -50 rlineto -100 -50 rlineto closepath fill 0 50 sub 1800 100 sub moveto 50 100 rlineto 50 -100 rlineto closepath fill /xt10x 5 array def /yt10x 5 array def /xt10x [() ( -50) ( ) ( ) ( 100)] def /yt10x [(-100) ( ) ( ) ( ) (100)] def 0 0 0 1 setcmyk_olvcolor 1 1 4 {/i exch def %i=0,4 x-axis -1600 i 800 mul add -75 moveto 0 150 rlineto stroke -1800 i 800 mul add -250 moveto TBS xt10x i get show i 4 eq {-1600 i 800 mul add 0 moveto xchart4 4 eq { %xchart4=4 -100 200 rmoveto TBIK (A) show xcolorl 1 eq {xcol10_BS} if } if %xchart4=4 xchart4 5 eq { %xchart4=5 -100 200 rmoveto TBIK (A) show xcolorl 1 eq {xcol10_BS} if } if %xchart4=5 xchart4 6 eq { %xchart4=6 -200 200 rmoveto TBIK (A) show -10 -50 rmoveto TBS (1) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if } if %xchart4=6 xchart4 7 eq { %xchart4=7 -200 200 rmoveto TBIK (A) show -10 -50 rmoveto TBS (2) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if } if %xchart4=7 } if } for %i=0,4 0 1 4 {/i exch def %i=0,4 y-axis -75 -1600 i 800 mul add moveto 150 0 rlineto stroke 100 -1650 i 800 mul add 100 sub moveto TBS yt10x i get show i 4 eq {0 -1650 i 800 mul add moveto xchart4 4 eq { %xchart4=4 100 150 rmoveto TBIK (B) show TM xcolorl 1 eq {xcol10_BS} if } if %xchart4=4 xchart4 5 eq { %xchart4=5 100 150 rmoveto TBIK (B) show xcolorl 1 eq {xcol10_BS} if 0 1150 add 1600 0200 add moveto } if %xchart4=5 xchart4 6 eq { %xchart4=6 100 150 rmoveto TBIK (B) show -10 -50 rmoveto TBS (1) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if } if %xchart4=6 xchart4 7 eq { %xchart4=7 100 150 rmoveto TBIK (B) show -10 -50 rmoveto TBS (2) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if } if %xchart4=7 } if } for %i=0,4 } bind def %proz_axis_scales4_7 %*********************************************************** /proz_chromaticity_data {%BEG proz_chromaticity_data /FL 0.00001 def /DOW 82 array def /DOWZ 17 array def /F02Z 51 array def /F10Z 51 array def %TRISTIMULUS VALUES FOR PURPLE COLORS from 'dmyy'KRPROG.FOR %FOR 02- AND 10-DEGREE-OBSERVER, ILLUMINANT E 0 1 79 {/i exch def %i=0,79 = 380_775 DOW i 380 i 5 mul add put } for %i=0,79 /DOWZ %17 data [700 -495 -500 -505 -510 -515 -520 -525 -530 -535 -540 -545 -550 -555 -560 -565 400] def /F02Z %3x17 data 700 ... 400 [.01136 .01141 .01158 .01169 .01176 .01182 .01187 .01191 .01195 .01199 .01204 .01210 .01219 .01232 .01254 .01300 .01431 .00410 .00404 .00383 .00369 .00359 .00352 .00346 .00342 .00337 .00331 .00325 .00317 .00306 .00289 .00262 .00205 .00040 .00000 .00118 .00507 .00754 .00930 .01064 .01167 .01256 .01346 .01445 .01562 .01709 .01910 .02210 .02718 .03765 .06785] def /F10Z %3x17 data 700 ... 400 [.00958 .01015 .01037 .01053 .01065 .01075 .01085 .01096 .01108 .01122 .01139 .01163 .01201 .01268 .01416 .02078 .01911 .00372 .00361 .00357 .00355 .00352 .00351 .00349 .00347 .00345 .00342 .00339 .00335 .00328 .00316 .00289 .00170 .00200 .00000 .00517 .00718 .00858 .00972 .01063 .01150 .01245 .01354 .01478 .01635 .01856 .02194 .02795 .04136 .10106 .08601] def %*************************************************** /FXYZ 240 array def /XSi 82 array def /YSi 82 array def /ZSi 82 array def /XANSi 82 array def /YANSi 82 array def /ZANSi 82 array def /AANSi 82 array def %actual data for plot, purple colours /BANSi 82 array def 0 1 239 {/i exch def %i=0,239 FXYZ i xcolorl 0 eq {F2 i get put} {F10 i get put} ifelse } for %i=0,239 /YKSUM 0 def %For CIE Illuminant E 0 1 79 {/i exch def %i=0,1,79 /YKSUM YKSUM FXYZ 80 i add get add def } for %i=0,1,79 0 1 79 {/i exch def %i=0,1,79 XSi i FXYZ 00 i add get YKSUM div 100 mul put YSi i FXYZ 80 i add get YKSUM div 100 mul put ZSi i FXYZ 160 i add get YKSUM div 100 mul put /SUM XSi i get YSi i get add ZSi i get add 0.0001 add def XANSi i XSi i get SUM div put YANSi i YSi i get SUM div put ZANSi i ZSi i get SUM div put xchart4 1 le {%xchart4<=1 AANSi i XANSi i get put BANSi i YANSi i get put } if %xchart4<=1 xchart4 2 eq {%xchart4=2 AANSi i XANSi i get xc sub YANSi i get FL add div put BANSi i ZANSi i get YANSi i get FL add div -0.4 mul put } if %xchart4=2 xchart4 3 eq {%xchart4=3 AANSi i XANSi i get xc sub YANSi i get FL add div put BANSi i ZANSi i get YANSi i get FL add div -0.4 mul put } if %xchart4=3 } for %i=0,1,79 /XZi 17 array def /YZi 17 array def /ZZi 17 array def /XANZi 17 array def /YANZi 17 array def /ZANZi 17 array def /AANZi 17 array def %actual data for plot, purple colours /BANZi 17 array def 0 1 16 {/i exch def %i=0,16 %for illuminant E: S(lamdda=100) XZi i xcolorl 0 eq {F02Z} {F10Z} ifelse 00 i add get YKSUM div 100 mul put YZi i xcolorl 0 eq {F02Z} {F10Z} ifelse 17 i add get YKSUM div 100 mul put ZZi i xcolorl 0 eq {F02Z} {F10Z} ifelse 34 i add get YKSUM div 100 mul put /SUM XZi i get YZi i get add ZZi i get add 0.0001 add def XANZi i XZi i get SUM div put YANZi i YZi i get SUM div put ZANZi i ZZi i get SUM div put xchart4 1 le {%xchart4<=1 AANZi i XANZi i get put BANZi i YANZi i get put } if %xchart4<=1 xchart4 2 eq {%xchart4=2 AANZi i XANZi i get xc sub YANZi i get FL add div put BANZi i ZANZi i get YANZi i get FL add div -0.4 mul put } if %xchart4=2 xchart4 3 eq {%xchart4=3 AANZi i XANZi i get xc sub YANZi i get FL add div put BANZi i ZANZi i get YANZi i get FL add div -0.4 mul put } if %xchart4=3 } for %i=0,16 /FL 0.00001 def } bind def %END proz_chromaticity_data %************************************************ /proz_chromaticity_xy {%BEG proz_chromaticity_xy /xtrans8 600 def /ytrans8 400 def xtrans8 ytrans8 translate %for scala and graphic (x,y) 0600 0400 0 0 moveto 4000 0 rlineto stroke 0 0 moveto 0 3200 rlineto stroke %! 100 S-Einheiten = 2000 Skalen-Einheiten TBS 0 -50 moveto 0 100 rlineto stroke 800 -50 moveto 0 100 rlineto stroke 1600 -50 moveto 0 100 rlineto stroke 2400 -50 moveto 0 100 rlineto stroke 3200 -50 moveto 0 100 rlineto stroke 4000 -50 moveto 0 100 rlineto stroke -100 -300 moveto (0,0) show 700 -300 moveto (0,2) show 1500 -300 moveto (0,4) show 2300 -300 moveto (0,6) show 3100 -300 moveto (0,8) show 3900 -300 moveto (1,0) show %! 100 S-Einheiten = 2000 Skalen-Einheiten -50 0 moveto 100 0 rlineto stroke -50 800 moveto 100 0 rlineto stroke -50 1600 moveto 100 0 rlineto stroke -50 2400 moveto 100 0 rlineto stroke -50 3200 moveto 100 0 rlineto stroke -450 -80 moveto (0,0) show -450 720 moveto (0,2) show -450 1520 moveto (0,4) show -450 2320 moveto (0,6) show -450 3120 moveto (0,8) show TIS 4200 150 moveto (x) show xcolorl 1 eq {TL 0 -40 rmoveto (10) show 0 40 rmoveto TIS} if -300 2800 moveto (y) show xcolorl 1 eq {TL 0 -40 rmoveto (10) show 0 40 rmoveto TIS} if TBIS 2600 150 moveto xcolorl 0 eq {(CIE 1931) show} if xcolorl 1 eq {(CIE 1964) show} if newpath /fakt 4000 def 5 1 60 {/i exch def %i=5,60 AANSi i get fakt mul BANSi i get fakt mul i 05 eq {moveto} if i 06 ge i 59 le and {lineto} if i 60 eq {lineto closepath stroke} if } for %i=5,60 /xytshift 320 array def %min 4x65 /xytshift [ 0 000 000 (380) %0 0 000 000 (385) %1 0 000 000 (390) %2 0 000 000 (395) %3 1 -170 -170 (400) %4 0 000 000 (405) %5 0 000 000 (410) %6 0 000 000 (415) %7 0 000 000 (420) %8 0 000 000 (425) %9 0 000 000 (430) %10 0 000 000 (435) %11 0 000 000 (440) %12 0 000 000 (445) %13 1 -300 -050 (450) %14 S 0 000 000 (455) %15 0 000 000 (460) %16 0 000 000 (465) %17 0 000 000 (470) %18 1 -300 -030 (475) %19 0 000 000 (480) %20 0 000 000 (485) %21 1 -330 -050 (490) %22 1 -270 000 (495) %23 M=S 1 -300 -050 (500) %24 1 -300 -050 (505) %25 1 -330 -050 (510) %26 L=S 1 -300 050 (515) %27 1 -100 070 (520) %28 1 100 000 (525) %29 1 000 000 ( ) %30 1 050 000 (535) %31 1 000 000 ( ) %32 M 1 000 000 ( ) %33 1 050 030 (550) %34 1 000 000 ( ) %35 1 050 030 (560) %36 1 000 000 ( ) %37 1 050 030 (570) %38 L 1 000 000 ( ) %39 1 050 030 (580) %40 1 050 050 ( ) %41 1 050 030 (590) %42 1 050 050 ( ) %43 1 050 030 (600) %44 0 000 000 ( ) %45 1 050 070 (610) %46 0 000 000 ( ) %47 1 050 050 (620) %48 0 000 000 ( ) %49 0 000 000 (630) %50 0 000 000 ( ) %51 1 050 030 (640) %52 0 000 000 (645) %53 0 000 000 (650) %54 0 000 000 (655) %55 0 000 000 (660) %56 0 000 000 (665) %57 0 000 000 (670) %58 0 000 000 (675) %59 0 000 000 (680) %60 0 000 000 (685) %61 0 000 000 (690) %62 0 000 000 (695) %63 1 100 -50 (700) %64 ] def 0 1 64 {/i exch def %i=5,1,60 /i40 i 4 mul def xytshift i40 get 1 eq {%xytshift=1 0 0 0 0 setcmykcolor AANSi i get fakt mul BANSi i get fakt mul 30 0 360 arc fill %400,425,...,700 0 0 0 1 setcmykcolor AANSi i get fakt mul BANSi i get fakt mul 30 0 360 arc stroke %400,425,...,700 } if %xytshift=1 } for %i=5,1,60 TBIL 0 1 59 {/i exch def %i=0,65 /i40 i 4 mul def /i41 i40 1 add def /i42 i40 2 add def /i43 i40 3 add def xytshift i40 get 1 eq {%xytshift=1 AANSi i get fakt mul xytshift i41 get add BANSi i get fakt mul xytshift i42 get add moveto xytshift i43 get show } if %xytshift=1 } for %i=0,65 newpath /xytshiftZ 320 array def %min 4x65 /xytshiftZ [ 1 100 -50 (700) %0 see normal 1 050 -100 (495c,E) %1 1 050 -100 (500c,E) %2 0 050 -100 (505c,E) %3 1 100 -60 (510c,E) %4 0 050 -100 (515c,E) %5 0 050 -100 (520c,E) %6 1 050 -100 (525c,E) %7 0 050 -100 (530c,E) %8 0 050 -100 (535c,E) %9 0 050 -100 (540c,E) %10 0 050 -100 (545c,E) %11 1 050 -100 (550c,E) %12 0 050 -100 (555c,E) %13 0 050 -100 (560c,E) %14 S 1 050 -100 (565c,E) %15 0 -100 -150 (400) %16 see normal ] def 0 1 16 {/i exch def %i=5,5,60 /i40 i 4 mul def xytshiftZ i40 get 1 eq {%xytshiftZ=1 0 0 0 0 setcmykcolor AANZi i get fakt mul BANZi i get fakt mul 30 0 360 arc fill %400,405,...,700 0 0 0 1 setcmykcolor AANZi i get fakt mul BANZi i get fakt mul 30 0 360 arc stroke %400,405,...,700 } if %xytshiftZ=1 } for %i=0,1,16 TBIL 0 1 16 {/i exch def %i=0,16 /i40 i 4 mul def /i41 i40 1 add def /i42 i40 2 add def /i43 i40 3 add def xytshiftZ i40 get 1 eq {%xytshiftZ=1 AANZi i get fakt mul xytshiftZ i41 get add BANZi i get fakt mul xytshiftZ i42 get add moveto xytshiftZ i43 get show } if %xytshiftZ=1 } for %i=0,16 xtrans8 neg ytrans8 neg translate %scala & graphic (x,y) 0600 0400 } bind def %END proz_chromaticity_xy %************************************************ /proz_chromaticity_a2b2 {%BEG proz_chromaticity_a2b2 /FL 0.00001 def /fakt 1000 def /xtrans8 0500 def /ytrans8 3200 def xtrans8 ytrans8 translate %scala & graphic (a2,b2) 0500 3200 0 400 moveto 4000 0 rlineto stroke 0 400 moveto 0 -3600 rlineto stroke %! 100 S-Einheiten = 2000 Skalen-Einheiten TBS 0 350 moveto 0 100 rlineto stroke 800 350 moveto 0 100 rlineto stroke 1600 350 moveto 0 100 rlineto stroke 2400 350 moveto 0 100 rlineto stroke 3200 350 moveto 0 100 rlineto stroke 4000 350 moveto 0 100 rlineto stroke -150 500 moveto (-0,8) show 650 500 moveto (0,0) show 1450 500 moveto (0,8) show 2250 500 moveto (1,6) show 3050 500 moveto (2,4) show 3850 500 moveto (3,2) show %! 100 S-Einheiten = 2000 Skalen-Einheiten -50 0 moveto 100 0 rlineto stroke -50 -800 moveto 100 0 rlineto stroke -50 -1600 moveto 100 0 rlineto stroke -50 -2400 moveto 100 0 rlineto stroke -50 -3200 moveto 100 0 rlineto stroke -450 -100 moveto ( 0,0) show -450 -900 moveto (-0,8) show -450 -1700 moveto (-1,6) show %-450 -2500 moveto (-2,4) show -175 -3050 moveto 90 rotate TBIS (b) show TL 0 -40 rmoveto (2) show 0 40 rmoveto TIS 20 0 rmoveto xcolorl 1 eq {TL 0 -40 rmoveto (,10) show 0 40 rmoveto TIS} if TBS (=-0,40) show 20 0 rmoveto TBIS (z) show 20 0 rmoveto xcolorl 1 eq {TL 0 -40 rmoveto (10) show 0 40 rmoveto TIS} if TBIS (/y) show xcolorl 1 eq {TL 0 -40 rmoveto (10) show 0 40 rmoveto TIS} if -90 rotate 3450 150 moveto TBIS (a) show 20 0 rmoveto TL 0 -40 rmoveto (2) show 0 40 rmoveto TIS 20 0 rmoveto xcolorl 1 eq {TL 0 -40 rmoveto (,10) show 0 40 rmoveto TIS} if TBS (=\050) show 20 0 rmoveto TBIS (x) show 20 0 rmoveto xcolorl 1 eq {TL 0 -40 rmoveto (10) show 0 40 rmoveto TIS} if TBS (-0,110\051/) show 20 0 rmoveto TBIS (y) show 20 0 rmoveto xcolorl 1 eq {TL 0 -40 rmoveto (10) show 0 40 rmoveto TIS} if xtrans8 neg ytrans8 neg translate %scala & graphic (a2,b2) 0500 3200 newpath /fakt 1000 def /xtrans8 1300 def /ytrans8 3200 def xtrans8 ytrans8 translate %scala & graphic (a2,b2) 1300 3200 5 1 60 {/i exch def %i=5,60 AANSi i get fakt mul BANSi i get fakt mul i 05 eq {moveto} if i 06 ge i 59 le and {lineto} if i 60 eq {lineto closepath stroke} if } for %i=5,60 /xytshift 320 array def %min 4x65 /xytshift [ 0 000 000 (380) %0 0 000 000 (385) %1 0 000 000 (390) %2 0 000 000 (395) %3 1 -170 -170 (400) %4 0 000 000 (405) %5 0 000 000 (410) %6 0 000 000 (415) %7 0 000 000 (420) %8 0 000 000 (425) %9 0 000 000 (430) %10 0 000 000 (435) %11 0 000 000 (440) %12 0 000 000 (445) %13 1 -300 -050 (450) %14 S 0 000 000 (455) %15 0 000 000 (460) %16 0 000 000 (465) %17 0 000 000 (470) %18 1 -300 -030 (475) %19 0 000 000 (480) %20 0 000 000 (485) %21 1 -330 -050 (490) %22 1 -270 000 (495) %23 M=S 1 -300 -050 (500) %24 0 -300 -050 (505) %25 1 -330 -050 (510) %26 L=S 0 -300 050 (515) %27 1 -150 070 (520) %28 0 100 000 (525) %29 0 000 000 ( ) %30 0 050 000 (535) %31 1 -80 070 (540) %32 M 0 000 000 ( ) %33 0 000 030 (550) %34 0 000 000 ( ) %35 1 -80 070 (560) %36 0 000 000 ( ) %37 0 050 000 (570) %38 L 0 000 000 ( ) %39 1 050 070 (580) %40 0 050 050 ( ) %41 0 050 030 (590) %42 0 050 050 ( ) %43 1 -80 070 (600) %44 0 000 000 ( ) %45 0 050 070 (610) %46 0 000 000 ( ) %47 1 -80 050 (620) %48 0 000 000 ( ) %49 0 000 000 (630) %50 0 000 000 ( ) %51 1 -80 030 (640) %52 0 000 000 (645) %53 0 000 000 (650) %54 0 000 000 (655) %55 0 000 000 (660) %56 0 000 000 (665) %57 0 000 000 (670) %58 0 000 000 (675) %59 0 000 000 (680) %60 0 000 000 (685) %61 0 000 000 (690) %62 0 000 000 (695) %63 1 100 -50 (700) %64 ] def 0 1 64 {/i exch def %i=5,1,60 /i40 i 4 mul def xytshift i40 get 1 eq {%xytshift=1 0 0 0 0 setcmykcolor AANSi i get fakt mul BANSi i get fakt mul 30 0 360 arc fill %400,425,...,700 0 0 0 1 setcmykcolor AANSi i get fakt mul BANSi i get fakt mul 30 0 360 arc stroke %400,425,...,700 } if %xytshift=1 } for %i=5,1,60 TBIL 0 1 59 {/i exch def %i=0,65 /i40 i 4 mul def /i41 i40 1 add def /i42 i40 2 add def /i43 i40 3 add def xytshift i40 get 1 eq {%xytshift=1 AANSi i get fakt mul xytshift i41 get add BANSi i get fakt mul xytshift i42 get add moveto xytshift i43 get show } if %xytshift=1 } for %i=0,65 newpath /xytshiftZ 320 array def %min 4x65 /xytshiftZ [ 1 100 -50 (700) %0 see normal 1 050 -100 (495c,E) %1 1 050 -100 (500c,E) %2 0 050 -100 (505c,E) %3 1 100 -60 (510c,E) %4 0 050 -100 (515c,E) %5 0 050 -100 (520c,E) %6 1 050 -100 (525c,E) %7 0 050 -100 (530c,E) %8 0 050 -100 (535c,E) %9 0 050 -100 (540c,E) %10 0 050 -100 (545c,E) %11 1 050 -100 (550c,E) %12 0 050 -100 (555c,E) %13 0 050 -100 (560c,E) %14 S 1 050 -100 (565c,E) %15 0 -100 -150 (400) %16 see normal ] def 0 1 16 {/i exch def %i=5,5,60 /i40 i 4 mul def xytshiftZ i40 get 1 eq {%xytshiftZ=1 0 0 0 0 setcmykcolor AANZi i get fakt mul BANZi i get fakt mul 30 0 360 arc fill %400,405,...,700 0 0 0 1 setcmykcolor AANZi i get fakt mul BANZi i get fakt mul 30 0 360 arc stroke %400,405,...,700 } if %xytshiftZ=1 } for %i=0,1,16 TBIL 0 1 16 {/i exch def %i=0,16 /i40 i 4 mul def /i41 i40 1 add def /i42 i40 2 add def /i43 i40 3 add def xytshiftZ i40 get 1 eq {%xytshiftZ=1 AANZi i get fakt mul xytshiftZ i41 get add BANZi i get fakt mul xytshiftZ i42 get add moveto xytshiftZ i43 get show } if %xytshiftZ=1 } for %i=0,16 xtrans8 neg ytrans8 neg translate %scala & graphic (a2,b2) 1300 3200 } bind def %END proz_chromaticity_a2,b2 %***************************************************************** %%EndProlog gsave %lanindL2.EPS START 20000505 /lanind 0 def /lantex [(G) (E) (S) (F) (I) (J) (M)] def /showde {0 lanind eq {show} {pop} ifelse} bind def /showen {1 lanind eq {show} {pop} ifelse} bind def /showes {2 lanind eq {show} {pop} ifelse} bind def /showfr {3 lanind eq {show} {pop} ifelse} bind def /showit {4 lanind eq {show} {pop} ifelse} bind def /showjp {5 lanind eq {show} {pop} ifelse} bind def /showea {1 lanind le {show} {pop} ifelse} bind def /lanindf where {pop /lanind1 lanindf def /lanind2 lanindf def /lanindd laninddf def} {/lanind1 0 def /lanind2 0 def} ifelse /colormf where {pop /colorm1 colormf def /colorm2 colormf def /colormd colormdf def} {/colorm1 0 def} ifelse /deintpf where {pop /deintp1 deintpf def /deintp2 deintpf def /deintpd deintpdf def} {/deintp1 0 def} ifelse /xcolorf where {pop /xcolor1 xcolorf def /xcolor2 xcolorf def /xcolord xcolordf def} {/xcolor1 0 def} ifelse /xchartf where {pop /xchart1 xchartf def /xchart2 xchartf def /xchartd xchartdf def /xchartm xchart2f xchart1f sub 1 add def} {/xchart1 1 def /xchartm 1 def} ifelse /xchart3f where {pop /xchart3 xchart3f def} {/xchart3 0 def} ifelse /xchart4f where {pop /xchart4 xchart4f def} {/xchart4 0 def} ifelse /pchartf where {pop /pchart1 pchartf def /pchart2 pchartf def /pchartd pchartdf def} {/pchart1 3 def} ifelse /colsepf where {pop /colsep1 colsepf def /colsep2 colsepf def /colsepd colsepdf def} {/colsep1 0 def} ifelse /pmetamf where {pop /pmetam1 pmetamf def /pmetam2 pmetamf def /pmetamd pmetamdf def} {/pmetam1 0 def} ifelse %either defaul values for xchart=0 or values for xchart=1 /lanind lanind1 def % /colorm colorm1 def % /deintp deintp1 def % /xcolor xcolor1 def % /xchart xchart1 def % /pchart pchart1 def % /colsep colsep1 def % /pmetam pmetam1 def % colorm 0 eq deintp 0 eq and {/Txx (d) def} if %colorm=0, deintp=0 colorm 0 eq deintp 1 eq and {/Txx (e) def} if %colorm=0, deintp=1 colorm 1 eq deintp 0 eq and {/Txx (dd) def} if %colorm=1, deintp=0 colorm 1 eq deintp 1 eq and {/Txx (de) def} if %colorm=1, deintp=1 xchart 0 eq {/Txx (-) def} if %always independent of intended output gsave %LANINDL2 END /cvishow {cvi 6 string cvs show ( ) show} def /cvsshow1 {10 mul cvi 0.1 mul 9 string cvs show ( ) show} def /cvsshow2 {100 mul cvi 0.01 mul 9 string cvs show ( ) show} def /cvsshow3 {1000 mul cvi 0.001 mul 9 string cvs show ( ) show} def /cvsshow4 {10000 mul cvi 0.0001 mul 9 string cvs show ( ) show} def /cvsshow5 {100000 mul cvi 0.00001 mul 9 string cvs show ( ) show} def /TELi 8 array def /xchart8 1 def %0:Pxx, 1:Dxx xchart8 0 eq {%xchart8=0 Pxx /TELi [(P60) (P55) (P50) (P45) (P40) (P35) (P30) (P25)] def %7 illumin. } if %xchart8=0 xchart8 1 eq {%xchart8=1 Dxx /TELi [(D65) (D50) (P40) (A00) (E00) (C00) (P00) (Q00)] def %7 illumin. } if %xchart8=1 /SD65 82 array def %380 bis 775 mit deltalambda=05 /SD50 82 array def %380 bis 775 mit deltalambda=05 /SP40 82 array def %380 bis 775 mit deltalambda=05 /SA00 82 array def %380 bis 775 mit deltalambda=05 /SE00 82 array def %380 bis 775 mit deltalambda=05 /SC00 82 array def %380 bis 775 mit deltalambda=05 /SP00 82 array def %380 bis 775 mit deltalambda=05 /SQ00 82 array def %380 bis 775 mit deltalambda=05 /SDAK 82 array def %380 bis 775 mit deltalambda=05 /RA 82 array def %380 bis 770 nm /F2 240 array def %3 x 80 Daten fuer Bereich 380 bis 770nm /F2N 240 array def %normiert auf Y=100 fuer D65 und 10nm /F10 240 array def %3 x 80 Daten fuer Bereich 380 bis 770nm %C %C LITERATURQUELLEN LICHTARTEN %C SA,SC,SD65, CIE-DOKUMENT NR.15 FARBMESSUNG, 1971 %C TABELLE 1.1.1, SEITE 81 %C SD55,SD75, CIE-DOKUMENT NR.15 FARBMESSUNG, 1971 %C TABELLE 1.1.4, SEITE 85 %C LINEAR INTERPOLIERT VON 5 ZU 5NM %C SG,SP,SXE, DIN 5033, BLATT 7 ,SEITE 8-9 %C AUSGABE 1966 /SD65 %80 data 5 nm [50.0 52.3 54.6 68.7 82.8 87.1 91.5 92.5 93.4 90.1 86.7 95.8 104.9 110.9 117.0 117.4 117.8 116.3 114.9 115.4 115.9 112.4 108.8 109.1 109.4 108.6 107.8 106.3 104.8 106.2 107.7 106.0 104.4 104.2 104.0 102.0 100.0 98.2 96.3 96.1 95.8 92.2 88.7 89.3 90.0 89.8 89.6 88.6 87.7 85.5 83.3 83.5 83.7 81.9 80.0 80.1 80.2 81.2 82.3 80.3 78.3 74.0 69.7 70.7 71.6 73.0 74.3 68.0 61.6 65.7 69.9 72.5 75.1 69.3 63.6 55.0 46.4 56.6 66.8 65.1] def /SD50 %80 data 5 nm CIE 15.3, Seite 30; aus JE540-1N.PS [24.5 27.2 29.9 39.6 49.3 52.9 56.5 58.3 60.0 58.9 57.8 66.3 74.8 81.0 87.2 88.9 90.6 91.0 91.4 93.2 95.1 93.5 92.0 93.8 95.7 96.2 96.6 96.8 97.1 99.6 102.1 101.4 100.8 101.5 102.3 101.2 100.0 98.9 97.7 98.3 98.9 96.2 93.5 95.6 97.7 98.5 99.3 99.2 99.0 97.4 95.7 97.3 98.9 97.3 95.7 96.9 98.2 100.6 103.0 101.1 99.1 93.3 87.4 89.5 91.6 92.2 92.9 84.9 76.9 81.7 86.5 89.5 92.6 85.4 78.2 68.0 57.7 70.3 82.9 0.0] def %0.0 not used /SA00 %80 data 5 nm CIE 15.3 Seite 30; aus JE540-1N.PS [9.80 10.90 12.09 13.35 14.71 16.15 17.68 19.29 20.99 22.79 24.67 26.64 28.70 30.85 33.09 35.41 37.81 40.30 42.87 45.52 48.24 51.04 53.91 56.85 59.86 62.93 66.06 69.25 72.50 75.79 79.13 82.52 85.95 89.41 92.91 96.44 100.00 103.58 107.18 110.80 114.44 118.08 121.73 125.39 129.04 132.70 136.35 139.99 143.62 147.24 150.84 154.42 157.98 161.52 165.03 168.51 171.96 175.38 178.77 182.12 185.43 188.70 191.93 195.12 198.26 201.36 204.41 207.41 210.36 213.27 216.12 218.92 221.67 224.36 227.00 229.59 232.12 234.59 237.01 239.37 0.0] def %0.0 not used % AUS BILDPLA.FOR aus vrbam/wrpos:KRPROG.FOR, 5987-6023 5.10.92 %C PROGRAMM ZUR BERECHNUNG DER RELATIVEN SPEKTRALEN STRAHLUNGSVERTEI- %C LUNG EINES HOHLRAUMSTRAHLERS ALS FUNKTION DER WELLENLAENGE LAMDA %C BEI GEGEBENER TEMPERATUR T %C VERWENDETE VARIABLE %C T TEMPERATUR %C C2 PLANCKSCHE KONSTANTE (=1.4388 CM K (1967)) %C LAMDA(I) WELLENLAENGE %C S(I) STRAHLUNGSVERTEILUNG DES HOHLRAUMSTRAHLERS %C %C LITERATUR OFFIZIELLE EMPFEHLUNGEN DER CIE,DEUTSCHE VERSION, %C CA. 1969, SEITE 21 UND TABELLE 1.1.1 %C %SDP4 82 array def %380 bis 775 mit deltalambda=05 % DO 50 I=1,54 % 50 S(I)=100. % 1*(560./FLOAT(LAMDA(I)))**5 % 2*(EXP(C2/(560.*10.**(-7)*T))-1.) % 3/(EXP(C2/(FLOAT(LAMDA(I))*10.**(-7)*T))-1.) %new CIE 15.3:2004, Eq. (3.1) page 2 %S(I) = [100{560/lambda}**5] [exp{(c2*10**7)/(TNC*560 )} - 1] % /[exp{(c2*10**7)/(TNC*lambda)} - 1] % exp = e {...} = 2.71 {...} %/TNC 2848 def %NLA /EE 2.718281 def %e=mac pocket calculator /C2 1.4350000 10 7 exp mul def /lamd 82 array def xchart8 1 eq {%xchart8=1 Dxx /TNC 4000 def %******************************************** 0 1 79 {%i=0,79 /i exch def /lambda 380 i 5 mul add def lamd i lambda put /E1 560 lambda div 5 exp def /E4 C2 TNC 560 mul div def /E5 C2 TNC lambda mul div def /E6 EE E4 exp def /E7 EE E5 exp def SP40 i E1 100 mul E6 1 sub E7 1 sub div mul put } for %i=0,79 } if %xchart8=1 Dxx %****************************************** xchart8 0 eq {%xchart8=0 Pxx %defined only for xchart8=0 Pxx /TNCj 8 array def /TNCj [6000 5500 5000 4500 4000 3500 3000 2500] def /SP60 82 array def %380 bis 775 mit deltalambda=05 /SP55 82 array def %380 bis 775 mit deltalambda=05 /SP50 82 array def %380 bis 775 mit deltalambda=05 /SP45 82 array def %380 bis 775 mit deltalambda=05 /SP40 82 array def %380 bis 775 mit deltalambda=05 /SP35 82 array def %380 bis 775 mit deltalambda=05 /SP30 82 array def %380 bis 775 mit deltalambda=05 /SP25 82 array def %380 bis 775 mit deltalambda=05 0 1 7 {/j exch def %j=0,7 0 1 79 {%i=0,79 /i exch def /lambda 380 i 5 mul add def lamd i lambda put /E1 560 lambda div 5 exp def /E4 C2 TNCj j get 560 mul div def /E5 C2 TNCj j get lambda mul div def /E6 EE E4 exp def /E7 EE E5 exp def j 0 eq {SP60 i} if j 1 eq {SP55 i} if j 2 eq {SP50 i} if j 3 eq {SP45 i} if j 4 eq {SP40 i} if j 5 eq {SP35 i} if j 6 eq {SP30 i} if j 7 eq {SP25 i} if E1 100 mul E6 1 sub E7 1 sub div mul put } for %i=0,79 } for %j=0,7 } if %xchart8=0 %************************************************* /SE00 %80 data 5 nm [100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0] def %0.0 not used /SC00 %80 data 5 nm [ 33.00 39.92 47.40 55.17 63.30 71.81 80.60 89.53 98.10 105.80 112.40 117.75 121.50 123.45 124.00 123.60 123.10 123.30 123.80 124.09 123.90 122.92 120.70 116.90 112.10 106.98 102.30 98.81 96.90 96.78 98.00 99.94 102.10 103.95 105.20 105.67 105.30 104.11 102.30 100.15 97.80 95.43 93.20 91.22 89.70 88.83 88.40 88.19 88.10 88.06 88.00 87.86 87.80 87.99 88.20 88.20 87.90 87.22 86.30 85.30 84.00 82.21 80.20 78.24 76.30 74.36 72.40 70.40 68.30 66.30 64.40 62.80 61.50 60.20 59.20 58.50 58.10 58.00 58.20 58.50 ] def %0.0 not used 0 1 79 {/i exch def %i=0,79 /lamda 380 i 5 mul add def SP00 i SE00 i get lamda 560 div mul put SQ00 i SE00 i get 1120 lamda sub 560 div mul put } for %i=0,79 %C LITERATURQUELLEN SPEKTRALWERTE %C F2 CIE-DOKUMENT NR.15 FARBMESSUNG, 1971 %C TABELLE 2.1, SEITE 93-102 /F2 %3x80 data [.001368 .002236 .004243 .007650 .01431 .02319 .04351 .07763 .1344 .2148 .2839 .3285 .3483 .3481 .3362 .3187 .2908 .2511 .1954 .1421 .09564 .05795 .03201 .01470 .0049 .0024 .0093 .0291 .06327 .1096 .1655 .2257 .2904 .3597 .4334 .5121 .5945 .6784 .7621 .8425 .9163 .9786 1.0263 1.0567 1.0622 1.0456 1.0026 .9384 .8544 .7514 .6424 .5419 .4479 .3608 .2835 .2187 .1649 .1212 .0874 .0636 .04677 .03290 .02270 .01584 .01136 .00811 .00579 .004109 .002899 .002049 .001440 .0009999 .0006901 .000476 .0003323 .0002348 .0001662 .0001174 .00008308 .00005871 .000039 .000064 .00012 .000217 .000396 .00064 .00121 .00218 .004 .0073 .0116 .01684 .023 .0298 .0380 .048 .06 .0739 .09098 .1126 .139 .1693 .208 .2586 .323 .4073 .503 .6082 .71 .7932 .862 .9149 .954 .9803 .995 1.0 .995 .9786 .952 .9154 .870 .8163 .757 .6949 .631 .5668 .503 .4412 .381 .321 .265 .217 .175 .1382 .107 .0816 .061 .04458 .032 .0232 .017 .01192 .00821 .005723 .004102 .002929 .002091 .001484 .001047 .00074 .00052 .0003611 .0002492 .0001719 .00012 .0000848 .00006 .0000424 .00003 .0000212 .00645 .01055 .02005 .03621 .06785 .1102 .2074 .3713 .6456 1.0391 1.3856 1.623 1.7471 1.7826 1.7721 1.7441 1.6692 1.5281 1.2876 1.0419 .8130 .6162 .4652 .3533 .2720 .2123 .1582 .1117 .07825 .05725 .04216 .02984 .0203 .0134 .00875 .00575 .0039 .00275 .0021 .0018 .00165 .0014 .0011 .0010 .0008 .0006 .00034 .00024 .00019 .0001 .00005 .00003 .00002 .00001 % 26*0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 %10 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 %20 0.0 0.0 0.0 0.0 0.0 0.0 %26 ] def /F10 %3x80 data [.00016 .0006624 .002362 .007242 .01911 .0434 .08474 .1406 .2045 .2647 .3147 .3577 .3837 .3867 .3707 .343 .3023 .2541 .1956 .1323 .08051 .04107 .01617 .005132 .003816 .01544 .03746 .07136 .1177 .173 .2365 .3042 .3768 .4516 .5298 .6161 .7052 .7938 .8787 .9512 1.0142 1.0743 1.1185 1.1343 1.124 1.0891 1.0305 .9507 .8563 .7549 .6475 .5351 .4316 .3437 .2683 .2043 .1526 .1122 .08126 .05793 .04085 .02862 .019941 .01384 .0100 .006605 .004552 .003145 .002175 .001506 .001045 .0007274 .0005083 .0003564 .000251 .0001777 .0001264 .00009015 .00006453 .00004634 .00001736 .00007156 .0002534 .0007685 .002004 .004509 .008756 .01446 .02139 .0295 .03868 .0496 .06208 .0747 .08946 .1063 .1282 .1528 .1852 .2199 .2536 .2977 .3391 .3954 .4608 .5314 .6067 .6857 .7618 .8233 .8752 .9238 .962 .9822 .9918 .9991 .9973 .9824 .9555 .9152 .8689 .8256 .7774 .7203 .6583 .5939 .528 .4618 .3981 .3395 .2835 .2282 .1798 .1402 .1076 .08119 .06028 .0441 .0318 .0226 .0159 .01113 .007749 .0053751 .0037177 .002565 .001768 .001222 .0008462 .0005864 .0004074 .000284 .0001987 .0001395 .00009843 .00006982 .00004974 .00003554 .00002549 .00001834 .0007048 .002928 .01048 .03234 .08601 .1971 .3894 .6568 .9725 1.2825 1.5535 1.7985 1.9673 2.0273 1.9948 1.9007 1.7454 1.5549 1.3176 1.0302 .7721 .5701 .4152 .3024 .2185 .1592 .112 .08225 .06071 .04305 .03045 .02058 .01368 .007918 .003988 .001091 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 %10 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 %20 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 %30 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 %40 0.0 0.0 0.0 0.0 %44 ] def %calculation of transformation data /FARBE 30 array def /FARBE [(R) (m) ( 561_770) %00 (Y) (m) ( 520_770) %01 (G) (m) ( 475_573) %02 (C) (m) ( 380_561) %03 (B) (m) ( 380_520) %04 (M) (m) ( 573_475) %05 (G) (o) ( 520_570) %06 (M) (o) ( 570_520) %07 (W) (0) ( 380_770) %08 (N) (0) ( 380_770) %09 ] def /xshift 10 array def %max 6 device + 4 elementary /yshift 10 array def /colori 10 array def /RX0 720 array def %9x80 /RX0 [ %(%Rm 00 560_770) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0036 0036 0036 0036 0036 0036 0468 0900 0900 0900 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %(%Ym 01 520_770) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0036 0036 0036 0036 0036 0036 0036 0036 0468 0900 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %(%Gm 02 475_575) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0036 0036 0036 0036 0036 0036 0036 0036 0036 0468 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0900 0900 0900 0900 0900 0900 0900 0900 0900 0468 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %(%Cm 03 380_560) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0900 0900 0900 0900 0900 0900 0468 0036 0036 0036 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %(%Bm 04 380_520) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0900 0900 0900 0900 0900 0900 0900 0900 0468 0036 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %(%Mm 05 575_475) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0900 0900 0900 0900 0900 0900 0900 0900 0900 0468 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0036 0036 0036 0036 0036 0036 0036 0036 0036 0468 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %(%Go 06 520_570) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0036 0036 0036 0036 0036 0036 0036 0036 0468 0900 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0900 0900 0900 0900 0900 0900 0900 0900 0468 0036 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %(%Mo 07 570_520) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0900 0900 0900 0900 0900 0900 0900 0900 0468 0036 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0036 0036 0036 0036 0036 0036 0036 0036 0468 0900 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %(%W0(r=0,900) 08 380_770) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %(%N0(r=0,036) 09 380_770) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 ] def /xcol10_BS {TBL 0 -50 rmoveto (10) show 0 50 rmoveto TBS} bind def /xcol10KBS {TBL 0 -50 rmoveto (,10) show 0 50 rmoveto TBS} bind def /xcolorl xcolor def 0 1 0 {/xcolorl exch def %xcolorl=0,0 xcolorl 1 eq {0 1 239 {/i exch def %i=0,239 F2 i F10 i get put } for %i=0,239 } if /YKSUM 0 def %For CIE Illuminant E 0 1 79 {/i exch def %i=0,1,79 /YKSUM YKSUM F2 80 i add get add def } for %i=0,1,79 /F2N 240 array def 0 1 79 {/i exch def %i=0,1,79 F2N 00 i add F2 00 i add get YKSUM div 100 mul put F2N 80 i add F2 80 i add get YKSUM div 100 mul put F2N 160 i add F2 160 i add get YKSUM div 100 mul put } for %i=0,1,79 /FXN 82 array def %FXN 0 = F2N imax /FYN 82 array def /FZN 82 array def %defines FXN, FYN, FZN 0 to 79 0 1 79 {/i exch def %i=0,79 FXN i F2N 000 i add get put FYN i F2N 080 i add get put FZN i F2N 160 i add get put } for %i=0,79 %special wavelength range with complementary colours for E? /FXD 63 array def /FYD 63 array def /FZD 63 array def /DOW 63 array def 00 1 60 {/i exch def %i=0,60 %range 400..700nm FXD i FXN 005 i add get put FYD i FYN 005 i add get put FZD i FZN 005 i add get put DOW i 400 i 5 mul add put %range 400 to 700 } for %i=0,60 %for interpolation FXD 61 FXD 60 get put FYD 61 FYD 60 get put FZD 61 FZD 60 get put FXD 62 FXD 60 get put FYD 62 FYD 60 get put FZD 62 FZD 60 get put /FAD 63 array def /FBD 63 array def /FCD 63 array def 20 setlinewidth /xdel 1005 def /ydel 395 def /x0 050 def /x1 -150 def /Xi 82 array def %80 spectral colours 380 to 775nm /Yi 82 array def /Zi 82 array def /XANi 82 array def /YANi 82 array def /ZANi 82 array def /AANi 82 array def %actual data for plot, spectral colours /BANi 82 array def /FXNZ 17 array def /FYNZ 17 array def /FZNZ 17 array def /XZi 17 array def /YZi 17 array def /ZZi 17 array def /XANZi 17 array def /YANZi 17 array def /ZANZi 17 array def /AANZi 17 array def %actual data for plot, purple colours /BANZi 17 array def /XRj 10 array def %10 spectral or max 10 device colours /YRj 10 array def /ZRj 10 array def /XANRj 10 array def /YANRj 10 array def /ZANRj 10 array def /XSj 10 array def %10 spectral or max 10 device atagonistic colours /YSj 10 array def /ZSj 10 array def /XANSj 10 array def /YANSj 10 array def /ZANSj 10 array def /XCj 10 array def %10 spectral from continuous colours /YCj 10 array def /ZCj 10 array def /XANCj 10 array def /YANCj 10 array def /ZANCj 10 array def /XAj 10 array def %10 spectral from continuous colours /YAj 10 array def /ZAj 10 array def /XANAj 10 array def /YANAj 10 array def /ZANAj 10 array def /RAk 82 array def 5 1 5 {/xchart4 exch def %xchart4=0,7 /xchartl xchart def %0 1 7 {/xchartl exch def %xchartl=0,7 %/YF 0 def %for normalization 1 /YF 1 def %for normalization 0,900 YF 0 eq {/YFR 1.00 def}{/YFR 0.90 def} ifelse gsave 5 /Times-ISOL1 FS /cvishow {cvi 6 string cvs show} def %75 85 moveto %lanind cvishow (-) show %colorm cvishow %deintp cvishow %xcolorl cvishow %xchart cvishow %pchart cvishow %colsep cvishow (-L) show pmetam cvishow 5 /Times-ISOL1 FS 72 86 moveto (egw41-6a enh31-6n) show 72 90 translate 0.010 MM dup scale 25 setlinewidth 0 0 0 0 setcmyk_olvcolor 0 0 moveto 6000 0 rlineto 0 4000 rlineto 6000 neg 0 rlineto closepath fill 0 0 moveto 6000 0 rlineto 0 4000 rlineto -6000 0 rlineto closepath clip 0 0 0 1 setcmyk_olvcolor 0 0 moveto 6000 0 rlineto 0 4000 rlineto 6000 neg 0 rlineto closepath stroke %calculation of XW,YW,ZW for 8 illuminants Dxx or Pxx 0 1 79 {/i exch def %i=0,79 SDAK i xchart8 0 eq {%xchart8=0 Pxx xchartl 0 eq {SP60 i get put} if xchartl 1 eq {SP55 i get put} if xchartl 2 eq {SP50 i get put} if xchartl 3 eq {SP45 i get put} if xchartl 4 eq {SP40 i get put} if xchartl 5 eq {SP35 i get put} if xchartl 6 eq {SP30 i get put} if xchartl 7 eq {SP25 i get put} if }%xchart8=0 Pxx {%xchart8=1 Dxx xchartl 0 eq {SD65 i get put} if xchartl 1 eq {SD50 i get put} if xchartl 2 eq {SP40 i get put} if xchartl 3 eq {SA00 i get put} if xchartl 4 eq {SE00 i get put} if xchartl 5 eq {SC00 i get put} if xchartl 6 eq {SP00 i get put} if xchartl 7 eq {SQ00 i get put} if } ifelse %xchart8=1 Dxx } for %i=0,79 /YKSUM 0 def 0 1 79 {/i exch def %i=0,1,79 /YKSUM YKSUM SDAK i get F2 80 i add get mul add def } for %i=0,1,79 0 1 79 {/i exch def %i=0,1,79 F2N 00 i add SDAK i get F2 00 i add get mul YKSUM div 100 mul put F2N 80 i add SDAK i get F2 80 i add get mul YKSUM div 100 mul put F2N 160 i add SDAK i get F2 160 i add get mul YKSUM div 100 mul put } for %i=0,1,79 %XW,YW,ZW for white /XW 0 def /YW 0 def /ZW 0 def 0 1 079 {/i exch def %i=0,79 /XW XW F2N 00 i add get add def /YW YW F2N 80 i add get add def /ZW ZW F2N 160 i add get add def } for %i=0,79 /SUMW XW YW add ZW add def %for D65, D50, P40, A00, E00 /XANW XW SUMW div def /YANW YW SUMW div def /ZANW ZW SUMW div def /AANW XW YW 0.0001 add div def /BANW ZW YW 0.0001 add div 0.4 mul neg def %************************************************ %XYZRj for 10 reflections 0 1 09 {/j exch def %j=0,9 %10 Reflections /jx j 80 mul def 0 1 79 {/i exch def %i=0,79 RAk i RX0 jx i add get 1000 div put } for %i=0,79 /XR 0 def /YR 0 def /ZR 0 def 0 1 079 {/i exch def %i=0,79 /XR XR F2N 00 i add get RAk i get mul add def /YR YR F2N 80 i add get RAk i get mul add def /ZR ZR F2N 160 i add get RAk i get mul add def } for %i=0,79 XRj j XR put YRj j YR put ZRj j ZR put /SUMR XR YR add ZR add def XANRj j XR SUMR 0.0001 add div put YANRj j YR SUMR 0.0001 add div put ZANRj j ZR SUMR 0.0001 add div put } for %j=0,9 %******************************************* 0 1 62 {/i exch def %i=0,62 FAD i FXD i get put FBD i FYD i get put FCD i FZD i get put } for %i=0,62 % FXU(1)=FF(2)*U(3)-FF(3)*U(2) % FXU(2)=FF(3)*U(1)-FF(1)*U(3) % FXU(3)=FF(1)*U(2)-FF(2)*U(1) % SUBROUTINE DOWEL (F,FXU,IMAX,IO) % DIMENSION F(99,3),FXU(3) % I=1 % T2=F(1,1)*FXU(1)+F(1,2)*FXU(2)+F(1,3)*FXU(3) % IF(T2) 1,1,4 % 1 T1=T2 % I=I+1 % T2=F(I,1)*FXU(1)+F(I,2)*FXU(2)+F(I,3)*FXU(3) % IF(T2) 1,1,2 % 2 IF(T1) 3,3,1 % 3 IO=I-1 % RETURN % 4 T1=F(IMAX,1)*FXU(1)+F(IMAX,2)*FXU(2)+F(IMAX,3)*FXU(3) % IF(T1) 5,5,1 % 5 IO=IMAX % RETURN % END %********************************************************* /proc_ABC_KNP_FWERTiX {%BEG proc_ABC_KNP_FWERT %input FAD,FBD,FCD, KNP %output FWERTiX/Y/Z (i=1,4) kNP 1 ge {/FWERT1X FAD kNP 1 sub get def /FWERT1Y FBD kNP 1 sub get def /FWERT1Z FCD kNP 1 sub get def} {/FWERT1X FAD 0 get def %again 400nm for i=0 /FWERT1Y FBD 0 get def /FWERT1Z FCD 0 get def} ifelse /FWERT2X FAD kNP get def /FWERT2Y FBD kNP get def /FWERT2Z FCD kNP get def /FWERT3X FAD kNP 1 add get def /FWERT3Y FBD kNP 1 add get def /FWERT3Z FCD kNP 1 add get def /FWERT4X FAD kNP 2 add get def /FWERT4Y FBD kNP 2 add get def /FWERT4Z FCD kNP 2 add get def } bind def %END proc_ABC_KNP_FWERTiX %********************************************************* /proc_XIE_TN1 {%BEG proc_XIE_TN1 %input XIE, FWERTiX/Y/Z (i=1,4) %output TN1 /A1N XIE 1 XIE sub mul XIE 2 sub mul 6 div def /A2N XIE 1 add XIE 1 sub mul XIE 2 sub mul 0.5 mul def /A3N XIE 1 add XIE mul 2 XIE sub mul 0.5 mul def /A4N XIE 1 add XIE mul XIE 1 sub mul 6 div def /FNX A1N FWERT1X mul A2N FWERT2X mul add A3N FWERT3X mul add A4N FWERT4X mul add def /FNY A1N FWERT1Y mul A2N FWERT2Y mul add A3N FWERT3Y mul add A4N FWERT4Y mul add def /FNZ A1N FWERT1Z mul A2N FWERT2Z mul add A3N FWERT3Z mul add A4N FWERT4Z mul add def /TNX FNX FXU1 mul FNY FXU2 mul add FNZ FXU3 mul add def } bind def %END proc_XIE_TN1 %********************************************************* /WEL1 60 array def %irregular definition /WEL2 60 array def %irregular definition %0 1 2 3 4 5 6 7 8 9 /WEL1 [405 435 450 460 465 470 475 480 485 490 495 500 510 520 530 540 545 550 555 560 ] def 0 1 19 {/k exch def %k=0,19 %wavelength 405..700nm /j WEL1 k get 400 sub 5 idiv def /LP k def /LPP 20.5 k add def /FF1 FXD j get def %start at 405..700nm /FF2 FYD j get def /FF3 FZD j get def /U1 XW def /U2 YW def /U3 ZW def /FXU1 FF2 U3 mul FF3 U2 mul sub def /FXU2 FF3 U1 mul FF1 U3 mul sub def /FXU3 FF1 U2 mul FF2 U1 mul sub def /INP -1 def /IPN -1 def %assumption jump from TN to TP from negativ to positiv 0 1 60 {/i exch def %i=1,60 /TN FAD i get FXU1 mul FBD i get FXU2 mul add FCD i get FXU3 mul add def /TP FAD i 1 add get FXU1 mul FBD i 1 add get FXU2 mul add FCD i 1 add get FXU3 mul add def TN 0 le TP 0 gt and {/INP i def exit} if } for %i=1,60 0 1 60 {/i exch def %i=1,60 /TN FAD i get FXU1 mul FBD i get FXU2 mul add FCD i get FXU3 mul add neg def /TP FAD i 1 add get FXU1 mul FBD i 1 add get FXU2 mul add FCD i 1 add get FXU3 mul add neg def TN 0 le TP 0 gt and {/IPN i def exit} if } for %i=1,60 %********************************************************* /kNP INP def kNP 0 ge {%kNP>=0 proc_ABC_KNP_FWERTiX %input FAD,KNP, output FWERTiXYZ (i=1,4) /XIE1 0 def %start values TN=0 for XIE1, TP>0 for XIE2 /XIE2 1 def 0 1 9 {/mk exch def %mk=0,9 /XIE XIE1 XIE2 add 0.5 mul def proc_XIE_TN1 %input XIE, ouput TN1 TNX 0 le {/XIE1 XIE def /TN1 TNX def} {/XIE2 XIE def /TP1 TNX def} ifelse } for %mk=0,9 /XIE XIE1 XIE2 add 0.5 mul def /DOWXIE1 DOW INP get DOW INP 1 add get DOW INP get sub XIE mul add def /XIENP XIE def } if %kNP>=0 %********************************************************* /kNP IPN def kNP 0 ge {%kNP>=0 proc_ABC_KNP_FWERTiX %input FAD,KNP, output FWERTiXYZ (i=1,4) /XIE1 0 def %start values TN=0 for XIE1, TP>0 for XIE2 /XIE2 1 def /FXU1 FXU1 neg def /FXU2 FXU2 neg def /FXU3 FXU3 neg def 0 1 9 {/mk exch def %mk=0,9 /XIE XIE1 XIE2 add 0.5 mul def proc_XIE_TN1 %input XIE, ouput TN1 TNX 0 le {/XIE1 XIE def /TN1 TNX def} {/XIE2 XIE def /TP1 TNX def} ifelse } for %mk=0,9 /XIE XIE1 XIE2 add 0.5 mul def /DOWXIE2 DOW IPN get DOW IPN 1 add get DOW IPN get sub XIE mul add def /XIEPN XIE def } if %kNP>=0 %********************************************************* 0 1 79 {/i exch def %i=0,79 RA i 0.036 put } for %i=0,79 INP -1 eq {/i1 0 def} %380nm {/i1 INP 5 add def} ifelse %405..700nm IPN -1 eq {/i2 79 def} %770nm {/i2 IPN 5 add def} ifelse %405..700nm i2 i1 ge {%i1i2 i1 1 79 {/i exch def %i=i1,79 RA i 0.900 put } for %i=i1,79 0 1 i2 {/i exch def %i=0,i2 RA i 0.900 put } for %i=0,i2 } ifelse %i1>i2 %correction (0.900+0.036)/2=0.648 i2 i1 ge {%i1i2 RA i1 0.468 put RA i2 0.468 XIEPN 0.5 sub add put } ifelse %i1>i2 %*************************************************** /X 0 def /Y 0 def /Z 0 def 0 1 079 {/i exch def %i=0,79 /X X F2N 00 i add get RA i get mul add def /Y Y F2N 80 i add get RA i get mul add def /Z Z F2N 160 i add get RA i get mul add def } for %i=0,79 /SUM X Y add Z add def /XAN X SUM 0.0001 add div def /YAN Y SUM 0.0001 add div def /ZAN Z SUM 0.0001 add div def %************************************************* 0 0 0 1 setcmyk_olvcolor 0 1 1 {/Icom exch def %Icom=0,1 Icom 0 eq {%Icom=0,1 Xi k X put Yi k Y put Zi k Z put XANi k XAN put YANi k YAN put ZANi k ZAN put }%Icom=0 {%Icom=1 /kP 20 k add def Xi kP XW X sub put Yi kP YW Y sub put Zi kP ZW Z sub put /SUMi Xi kP get Yi kP get add Zi kP get add def XANi kP Xi kP get SUMi 0.0001 add div put YANi kP Yi kP get SUMi 0.0001 add div put ZANi kP Zi kP get SUMi 0.0001 add div put } ifelse %Icom=1 } for %Icom=0,1 YF 1 eq {%YF=1 Xi k Xi k get 0.9000 mul put Yi k Yi k get 0.9000 mul put Zi k Zi k get 0.9000 mul put Xi kP Xi kP get 0.9000 mul put Yi kP Yi kP get 0.9000 mul put Zi kP Zi kP get 0.9000 mul put } if %YF=1 } for %k=0,19 %********************************************************************** %XW,YW,ZW and XK,YK,ZK for white /XW 0 def /YW 0 def /ZW 0 def 0 1 079 {/i exch def %i=0,79 /XW XW F2N 00 i add get add def /YW YW F2N 80 i add get add def /ZW ZW F2N 160 i add get add def } for %i=0,79 YF 0 eq {%YF=0 /XK XW def /YK YW def /ZK ZW def }%YF=0 {%YF=1 /XK XW YFR mul def /YK YW YFR mul def /ZK ZW YFR mul def } ifelse %YF=1 /SUMK XK YK add ZK add def %for D65, D50, P40, A00, E00 /XANK XK SUMK div def /YANK YK SUMK div def /ZANK ZK SUMK div def /LP LP 1 add def /xtexti 96 array def /ytexti 96 array def /xtexti [ %T00 T10 T20 T30 T40 T41 T50 T51 T60 T61 T70 T71 %0 1 2 3 4 5 6 7 8 9 10 11 1700 2000 2000 3000 3200 4300 3200 4300 3200 4300 3200 4300 %0 (x,y) 1700 2000 2000 3000 3200 4300 3200 4300 3200 4300 3200 4300 %1 (x,y) 0050 0050 0050 0050 0050 1300 0050 1300 0050 1300 0050 1300 %2 (a2,b2) 0050 0050 0050 0050 0050 1300 0050 1300 0050 1300 0050 1300 %3 (a2,b2) 0050 0050 0050 0050 0050 1300 0050 1300 0050 1300 0050 1300 %4 (A,B) 0050 0050 0050 0050 0050 1300 0050 1300 0050 1300 0050 1300 %5 (A,B) 0050 0050 0050 0050 0050 1300 0050 1300 0050 1300 0050 1300 %6 (A1,B1) 0050 0050 0050 0050 0050 1300 0050 1300 0050 1300 0050 1300 %7 (a2,b2) ] def /ytexti [ 3800 3580 3360 3140 2920 2920 2700 2700 2480 2480 2260 2260 %0 (x,y) 3800 3580 3360 3140 2920 2920 2700 2700 2480 2480 2260 2260 %1 (x,y) 0500 0290 0080 1600 1380 1380 1160 1160 0940 0940 0720 0720 %3 (a2,b2) 0500 0290 0080 1600 1380 1380 1160 1160 0940 0940 0720 0720 %4 (a2,b2) 0500 0290 0080 1600 1380 1380 1160 1160 0940 0940 0720 0720 %4 (A,B) 0500 0290 0080 1600 1380 1380 1160 1160 0940 0940 0720 0720 %5 (A,B) 0500 0290 0080 1600 1380 1380 1160 1160 0940 0940 0720 0720 %6 (A1,B1) 0500 0290 0080 1600 1380 1380 1160 1160 0940 0940 0720 0720 %7 (a2,b2) ] def %*********************************************************** /icolor 9 array def %Rm %Ym %Gm %Cm %Bm %Mm %Go %Mo %W /icolor [20 10 06 00 30 26 06 26 40] def /imshow {-20 -50 rmoveto TBL (m) show 0 50 rmoveto TBIS} def /ioshow {0 -50 rmoveto TBL (o) show 0 50 rmoveto TBIS} def %************************************************* %allways /kxi 8 array def /xci 8 array def /Bci 8 array def /xcti 8 array def /Bcti 8 array def % 0 1 2 3 4 5 6 7 % (P60)(P55)(P50)(P45)(P40)(P35)(P30)(P25) %or (D65)(D50)(P40)(A00)(E00)(C00)(P00)(Q00) /kxi [9 10 10 11 9 9 10 9] def /kx kxi xchartl get def xchart4 0 eq xchart4 1 eq or xchart4 4 eq or xchart4 5 eq or {%xchart4=0,1 (x,y); 4,5 (A, B) % (P60) (P55) (P50) (P45) (P40) (P35) (P30) (P25) %or (D65) (D50) (P40) (A00) (E00) (C00) (P00) (Q00) % 0 1 2 3 4 5 6 7 /xci [ 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 ] def /xcti [(0,000) (0,000) (0,000) (0,000) (0,000) (0,000) (0,000) (0,000)] def /Bci [ 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 ] def /Bcti [(1,000) (1,000) (1,000) (1,000) (1,000) (1,000) (1,000) (1,000)] def } if %xchart4=1 xchart4 6 eq {%xchart4=6 (A1, B1) % (P60) (P55) (P50) (P45) (P40) (P35) (P30) (P25) %or (D65) (D50) (P40) (A00) (E00) (C00) (P00) (Q00) % 0 1 2 3 4 5 6 7 /xci [ 0.110 0.110 0.110 0.110 0.110 0.110 0.110 0.110 ] def /xcti [(0,110) (0,110) (0,110) (0,110) (0,110) (0,110) (0,110) (0,110)] def /Bci [ 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 ] def /Bcti [(1,000) (1,000) (1,000) (1,000) (1,000) (1,000) (1,000) (1,000)] def } if %xchart4=6 xchart4 2 eq xchart4 3 eq or xchart4 7 eq or {%xchart4=2,3,7 % (P60) (P55) (P50) (P45) (P40) (P35) (P30) (P25) %or (D65) (D50) (P40) (A00) (E00) (C00) (P00) (Q00) % 0 1 2 3 4 5 6 7 /xci [ 0.110 0.110 0.110 0.110 0.110 0.110 0.110 0.110 ] def /xcti [(0,110) (0,110) (0,110) (0,110) (0,110) (0,110) (0,110) (0,110)] def /Bci [ 0.800 1.000 1.300 2.500 0.900 0.700 1.000 0.700 ] def /Bcti [(0,800) (1,000) (1,300) (2,500) (0,900) (0,700) (1,000) (0,700)] def } if %xchart4=2,3,7 /xc xci xchartl get def /xct xcti xchartl get def /Bc Bci xchartl get def /Bct Bcti xchartl get def xchart4 0 eq xchart4 1 eq or {%xchart4=0,1 4600 1600 moveto TBS (Parame\255) show 4600 1400 moveto TBS (ter:) show TBIS xchart4 0 eq {( N) show} if xchart4 1 eq {( Y) show} if proz_chromaticity_data proz_chromaticity_xy } if %xchart4=0,1 xchart4 2 eq {%xchart4=2 proz_chromaticity_data proz_chromaticity_a2b2 } if %xchart4=2 xchart4 3 eq {%xchart4=3 proz_chromaticity_data proz_chromaticity_a2b2 } if %xchart4=3 %*********************************************************** xchart4 0 eq xchart4 1 eq or {%xchart4=0,1 %only for (x,y) /fakt 4000 def proz_name_range proz_opti 600 400 translate %scala & graphic (x,y) 600 400 0 1 39 {/i exch def %i=0,39 /An XANi i get def /Bn YANi i get def An fakt mul Bn fakt mul i 0 eq {moveto} if i 1 ge i 38 le and {lineto} if i 39 eq {lineto closepath stroke} if } for %i=0,39 XANW fakt mul YANW fakt mul 90 0 360 arc stroke XANW fakt mul 200 sub YANW fakt mul 250 sub moveto TBS TELi xchartl get show TBIS 0 1 4 {/j exch def %j=0,4 j 0 eq {/i 0 def} if %Cm-Rm j 1 eq {/i 6 def} if %Gm-Mm j 2 eq {/i 13 def} if %Ym-Bm j 3 eq {/i kx def} if %Max-Min j 4 eq {%new only for i=40 /i 40 def /k 6 def %Go Xi i XRj k get put Yi i YRj k get put Zi i ZRj k get put } if /SUM Xi i get Yi i get add Zi i get add 0.0001 add def XANCj j Xi i get SUM div put YANCj j Yi i get SUM div put ZANCj j Zi i get SUM div put /An XANCj j get def /Bn YANCj j get def /AnY An fakt mul def %xan /BnY Bn fakt mul def %yan /Paramshow {Yi i get cvishow} bind def j 0 eq {AnY 400 sub BnY 050 sub moveto xchart4 0 eq {(C) show imshow} if xchart4 1 eq {Paramshow} if 1 0 0 0 setcmykcolor} if %Cm j 1 eq {AnY 400 sub BnY 050 sub moveto xchart4 0 eq {(G) show imshow} if xchart4 1 eq {Paramshow} if 1 0 1 0 setcmykcolor} if %Gm j 2 eq {AnY 100 sub BnY 250 sub moveto xchart4 0 eq {(Y) show imshow} if xchart4 1 eq {Paramshow} if 0 0 1 0 setcmykcolor} if %Ym j 3 eq {AnY 500 sub xchart4 1 eq {100 add} if BnY 050 sub moveto xchart4 0 eq {(max) show} if xchart4 1 eq {Paramshow} if 0.3 0 1 0 setcmykcolor} if %Ymax j 4 eq {AnY 370 sub xchart4 1 eq {100 add} if BnY 000 add moveto xchart4 0 eq {(G) show ioshow} if xchart4 1 eq {Paramshow} if 1 0.5 1 0 setcmykcolor} if %Go newpath AnY BnY 90 0 360 arc fill 0 setgray newpath AnY BnY 90 0 360 arc stroke } for %j=0,4 %continue j=0,4 for antagonistic (A) colours 0 1 4 {/j exch def %j=0,4 j 0 eq {/i 0 def} if %Cm-Rm j 1 eq {/i 6 def} if %Gm-Mm j 2 eq {/i 13 def} if %Ym-Bm j 3 eq {/i kx def} if %Max-Min j 4 eq {%new only for i=40 /i 40 def /k 6 def %Mo Xi i XRj k get put %special Yi i YRj k get put Zi i ZRj k get put } if /SUM XK Xi i get sub YK Yi i get sub add ZK Zi i get sub add 0.0001 add abs def XANAj j XK Xi i get sub SUM div put YANAj j YK Yi i get sub SUM div put ZANAj j ZK Zi i get sub SUM div put /An XANAj j get def /Bn YANAj j get def /AnY An fakt mul def %xan /BnY Bn fakt mul def %yan /Paramshow {YK Yi i get sub cvishow} bind def j 0 eq {AnY 150 add BnY 150 sub moveto xchart4 0 eq {(R) show imshow} if xchart4 1 eq {Paramshow} if 0 1 1 0 setcmykcolor} if %Rm j 1 eq {AnY 150 add BnY 050 sub moveto xchart4 0 eq {(M) show imshow} if xchart4 1 eq {Paramshow} if 0 1 0 0 setcmykcolor} if %Mm j 2 eq {AnY 350 sub BnY 100 add moveto xchart4 0 eq {(B) show imshow} if xchart4 1 eq {Paramshow} if 1 1 0 0 setcmykcolor} if %Bm j 3 eq {AnY 150 sub BnY 250 sub moveto xchart4 0 eq {(min) show} if xchart4 1 eq {Paramshow} if 0.7 1 0 0 setcmykcolor} if %Ymin j 4 eq {AnY 250 sub BnY 150 sub moveto xchart4 0 eq {(M) show ioshow} if xchart4 1 eq {Paramshow} if 0 0.5 0 0 setcmykcolor} if %Mo newpath AnY BnY 90 0 360 arc fill 0 setgray newpath AnY BnY 90 0 360 arc stroke } for %j=0,4 -600 -400 translate %scala & graphic (x,y) } if %xchart4=0,1 %************************************************************** xchart4 2 eq xchart4 3 eq or {%xchart4=2,3 %only for (a2,b2), (a2s,b2s) /fakt 1000 def /a2 1.00 def /b2 -0.4 def 500 0 translate proz_name_range proz_opti -500 0 translate proz_param /xtrans8 1300 def /ytrans8 3200 def xtrans8 ytrans8 translate %scala & graphic (a2,b2) 1300 3200 %0600 3100 translate %proz_axis_scales4_7 0 1 39 {/i exch def %i=0,39 /An XANi i get xc sub YANi i get 0.0001 add div def /Bn ZANi i get YANi i get 0.0001 add div 0.4 mul neg % Bc mul def /AnK XANK xc sub YANK 0.0001 add div def /BnK ZANK YANK 0.0001 add div 0.4 mul neg % Bc mul def /AnY An def /BnY Bn def An fakt mul Bn fakt mul i 0 eq {moveto} if i 1 ge i 38 le and {lineto} if i 39 eq {lineto closepath stroke} if } for %i=0,39 XANW xc sub YANW 0.0001 add div fakt mul %a2 ZANW YANW 0.0001 add div 0.4 mul neg fakt mul %b2 90 0 360 arc stroke XANW xc sub YANW 0.0001 add div fakt mul 100 add ZANW YANW 0.0001 add div 0.4 mul neg fakt mul 000 add moveto TBS TELi xchartl get show %10 chromatic colours from continuous colours TBIS 0 1 4 {/j exch def %j=0,4 j 0 eq {/i 0 def} if %Cm-Rm j 1 eq {/i 6 def} if %Gm-Mm j 2 eq {/i 13 def} if %Ym-Bm j 3 eq {/i kx def} if %Max-Min j 4 eq {/i 40 def /k 6 def %Go Xi i XRj k get put %special Yi i YRj k get put Zi i ZRj k get put } if /SUM Xi i get Yi i get add Zi i get add 0.0001 add def XANCj j Xi i get SUM div put YANCj j Yi i get SUM div put ZANCj j Zi i get SUM div put /An XANCj j get xc sub YANCj j get 0.0001 add div def %a2 /Bn ZANCj j get YANCj j get 0.0001 add div 0.4 mul neg %b2 % Bc mul def /AnY An fakt mul def /BnY Bn fakt mul def %dAB, CAB not used /dAB An dup mul Bn dup mul add 0.0001 add sqrt def %/CAB dAB Yi i get mul def /Paramshow {Yi i get cvishow} bind def j 0 eq {AnY 350 sub BnY 100 sub moveto xchart4 2 eq {(C) show imshow} if xchart4 3 eq {Paramshow} if 1 0 0 0 setcmykcolor} if %Cm j 1 eq {AnY 350 sub BnY 150 sub moveto xchart4 2 eq {(G) show imshow} if xchart4 3 eq {Paramshow} if 1 0 1 0 setcmykcolor} if %Gm j 2 eq {AnY 150 sub BnY 200 add moveto xchart4 2 eq {(Y) show imshow} if xchart4 3 eq {Paramshow} if 0 0 1 0 setcmykcolor} if %Ym j 3 eq {AnY 500 sub BnY 050 add moveto xchart4 2 eq {(max) show} if xchart4 3 eq {Paramshow} if 0.3 0 1 0 setcmykcolor} if %Ymax j 4 eq {AnY 050 add BnY 250 sub moveto xchart4 2 eq {(G) show ioshow} if xchart4 3 eq {Paramshow} if 1 0.5 1 0 setcmykcolor} if %Go newpath AnY BnY 90 0 360 arc fill 0 setgray newpath AnY BnY 90 0 360 arc stroke /SUM XK Xi i get sub YK Yi i get sub add ZK Zi i get sub add 0.0001 add def XANCj j XK Xi i get sub SUM div put YANCj j YK Yi i get sub SUM div put ZANCj j ZK Zi i get sub SUM div put /An XANCj j get xc sub YANCj j get 0.0001 add div def %a2 /Bn ZANCj j get YANCj j get 0.0001 add div 0.4 mul neg %b2 % Bc mul def /AnY An fakt mul def %a2 /BnY Bn fakt mul def %b2 %dAB, CAB not used /dAB An dup mul Bn dup mul add 0.0001 add sqrt def %/CAB dAB YK Yi i get sub mul def /Paramshow {YK Yi i get sub cvishow} bind def j 0 eq {AnY 120 add BnY 050 sub moveto xchart4 2 eq {(R) show imshow} if xchart4 3 eq {Paramshow} if 0 1 1 0 setcmykcolor} if %Rm j 1 eq {AnY 120 add BnY 050 sub moveto xchart4 2 eq {(M) show imshow} if xchart4 3 eq {Paramshow} if 0 1 0 0 setcmykcolor} if %Mm j 2 eq {AnY 300 sub BnY 100 add moveto xchart4 2 eq {(B) show imshow} if xchart4 3 eq {Paramshow} if 1 1 0 0 setcmykcolor} if %Bm j 3 eq {AnY 100 sub xchart4 3 eq {100 add} if BnY 250 sub moveto xchart4 2 eq {(min) show} if xchart4 3 eq {Paramshow} if 0.7 1 0 0 setcmykcolor} if %Bmin j 4 eq {AnY 100 sub BnY 250 sub moveto xchart4 2 eq {(M) show ioshow} if xchart4 3 eq {Paramshow} if 0 0.5 0 0 setcmykcolor} if %Mo newpath AnY BnY 90 0 360 arc fill 0 setgray newpath AnY BnY 90 0 360 arc stroke } for %j=0,4 xtrans8 neg ytrans8 neg translate %text & graphic (a2, b2) 1300 3200 %-600 400 translate } if %xchart4=2,3 only for (a2,b2), (a2s,b2s) %******************************************************* xchart4 4 eq xchart4 5 eq or {%xchart4=4,5 %only for (A,B) /fakt 40 def /a2 1.00 def /b2 -0.4 def proz_name_range proz_opti proz_param /xtrans8 3500 def /ytrans8 2100 def xtrans8 ytrans8 translate %text & graphic (A,B) 3500 2100 proz_axis_scales4_7 0 1 39 {/i exch def %i=0,39 /An XANi i get YANi i get 0.0001 add div def /Bn ZANi i get YANi i get 0.0001 add div 0.4 mul neg def /AnK XK YK 0.0001 add div def /BnK ZK YK 0.0001 add div 0.4 mul neg def /AnY An AnK sub Yi i get mul def /BnY Bn BnK sub Yi i get mul def AnY fakt mul BnY fakt mul i 0 eq {moveto} if i 1 ge i 38 le and {lineto} if i 39 eq {lineto closepath stroke} if } for %i=0,39 XANW YANW 0.0001 add div %(a-an)YW XANK YANK 0.0001 add div sub YW mul fakt mul ZANW YANW 0.0001 add div %(b-an)YW ZANK YANK 0.0001 add div sub 0.4 mul neg YW mul fakt mul 90 0 360 arc stroke 0 080 add 0 080 add moveto TBS TELi xchartl get show %10 chromatic colours from continuous colours TBIS 0 1 4 {/j exch def %j=0,4 j 0 eq {/i 0 def} if %Cm-Rm j 1 eq {/i 6 def} if %Gm-Mm j 2 eq {/i 13 def} if %Ym-Bm j 3 eq {/i kx def} if %Max-Min j 4 eq {/i 40 def /k 6 def %Go Xi i XRj k get put %special Yi i YRj k get put Zi i ZRj k get put } if /SUM Xi i get Yi i get add Zi i get add 0.0001 add def XANCj j Xi i get SUM div put YANCj j Yi i get SUM div put ZANCj j Zi i get SUM div put /An XANCj j get YANCj j get 0.0001 add div %2.5(a-an)Y XANK YANK 0.0001 add div sub def /Bn ZANCj j get YANCj j get 0.0001 add div %2.5(b-bn)Y ZANK YANK 0.0001 add div sub 0.4 mul neg def /AnY An Yi i get mul fakt mul def /BnY Bn Yi i get mul fakt mul def %dAB, CAB not used /dAB An dup mul Bn dup mul add 0.0001 add sqrt def /CAB dAB Yi i get mul def /Paramshow {Yi i get cvishow} bind def j 0 eq {AnY 350 sub BnY 050 sub moveto xchart4 4 eq {(C) show imshow} if xchart4 5 eq {Paramshow} if 1 0 0 0 setcmykcolor} if %Cm j 1 eq {AnY 370 sub BnY 050 sub moveto xchart4 4 eq {(G) show imshow} if xchart4 5 eq {Paramshow} if 1 0 1 0 setcmykcolor} if %Gm j 2 eq {AnY 050 sub BnY 150 add moveto xchart4 4 eq {(Y) show imshow} if xchart4 5 eq {Paramshow} if 0 0 1 0 setcmykcolor} if %Ym j 3 eq {AnY 100 sub BnY 300 sub moveto xchart4 4 eq {(max) show} if xchart4 5 eq {Paramshow} if 0.3 0 1 0 setcmykcolor} if %Ymax j 4 eq {AnY 100 sub BnY 250 sub moveto xchart4 4 eq {(G) show ioshow} if xchart4 5 eq {Paramshow} if 1 0.5 1 0 setcmykcolor} if %Go newpath AnY BnY 90 0 360 arc fill 0 setgray newpath AnY BnY 90 0 360 arc stroke /SUM XK Xi i get sub YK Yi i get sub add ZK Zi i get sub add 0.0001 add def XANCj j XK Xi i get sub SUM div put YANCj j YK Yi i get sub SUM div put ZANCj j ZK Zi i get sub SUM div put /An XANCj j get YANCj j get 0.0001 add div %(a-an) XANK YANK 0.0001 add div sub def /Bn ZANCj j get YANCj j get 0.0001 add div %(b-bn) ZANK YANK 0.0001 add div sub 0.4 mul neg def /AnY An YK Yi i get sub mul fakt mul def %(a-an)Y /BnY Bn YK Yi i get sub mul fakt mul def %(b-bn)Y %dAB, CAB not used /dAB An dup mul Bn dup mul add 0.0001 add sqrt def /CAB dAB YK Yi i get sub mul def /Paramshow {YK Yi i get sub cvishow} bind def j 0 eq {AnY 120 add BnY 050 sub moveto xchart4 4 eq {(R) show imshow} if xchart4 5 eq {Paramshow} if 0 1 1 0 setcmykcolor} if %Rm j 1 eq {AnY 120 add BnY 050 sub moveto xchart4 4 eq {(M) show imshow} if xchart4 5 eq {Paramshow} if 0 1 0 0 setcmykcolor} if %Mm j 2 eq {AnY 200 sub BnY 250 sub moveto xchart4 4 eq {(B) show imshow} if xchart4 5 eq {Paramshow} if 1 1 0 0 setcmykcolor} if %Bm j 3 eq {AnY 100 sub BnY 150 add moveto xchart4 4 eq {(min) show} if xchart4 5 eq {Paramshow} if 0.7 1 0 0 setcmykcolor} if %Bmin j 4 eq {AnY 100 sub BnY 150 add moveto xchart4 4 eq {(M) show ioshow} if xchart4 5 eq {Paramshow} if 0 0.5 0 0 setcmykcolor} if %Mo newpath AnY BnY 90 0 360 arc fill 0 setgray newpath AnY BnY 90 0 360 arc stroke } for %j=0,4 xtrans8 neg ytrans8 neg translate %text & graphic (A,B) 3500 2100 } if %xchart4=4,5 %************************************************************** xchart4 6 eq xchart4 7 eq or {%xchart4=6,7 %only for (A1/2,B1/2) /fakt 40 def /a2 1.00 def /b2 -0.4 def proz_name_range proz_opti proz_param /xtrans8 3500 def /ytrans8 2100 def xtrans8 ytrans8 translate %text & graphic (A1/2,B1/2) 3500 2100 proz_axis_scales4_7 0 1 39 {/i exch def %i=0,39 /An XANi i get xc sub YANi i get 0.0001 add div def /Bn ZANi i get YANi i get 0.0001 add div 0.4 mul neg Bc mul def /AnK XANK xc sub YANK 0.0001 add div def /BnK ZANK YANK 0.0001 add div 0.4 mul neg Bc mul def /AnY An AnK sub Yi i get mul def /BnY Bn BnK sub Yi i get mul def AnY fakt mul BnY fakt mul i 0 eq {moveto} if i 1 ge i 38 le and {lineto} if i 39 eq {lineto closepath stroke} if } for %i=0,39 XANW xc sub YANW 0.0001 add div %(a-an)YW XANK xc sub YANK 0.0001 add div sub YW mul fakt mul ZANW YANW 0.0001 add div %(b-an)YW ZANK YANK 0.0001 add div sub 0.4 mul neg Bc mul YW mul fakt mul 90 0 360 arc stroke 0 080 add 0 080 add moveto TBS TELi xchartl get show %10 chromatic colours from continuous colours TBIS 0 1 4 {/j exch def %j=0,4 j 0 eq {/i 0 def} if %Cm-Rm j 1 eq {/i 6 def} if %Gm-Mm j 2 eq {/i 13 def} if %Ym-Bm j 3 eq {/i kx def} if %Max-Min j 4 eq {/i 40 def /k 6 def %Go Xi i XRj k get put %special Yi i YRj k get put Zi i ZRj k get put } if /SUM Xi i get Yi i get add Zi i get add 0.0001 add def XANCj j Xi i get SUM div put YANCj j Yi i get SUM div put ZANCj j Zi i get SUM div put /An XANCj j get xc sub YANCj j get 0.0001 add div %2.5(a-an)Y XANK xc sub YANK 0.0001 add div sub def /Bn ZANCj j get YANCj j get 0.0001 add div %2.5(b-bn)Y ZANK YANK 0.0001 add div sub 0.4 mul neg Bc mul def /AnY An Yi i get mul fakt mul def /BnY Bn Yi i get mul fakt mul def %dAB, CAB not used /dAB An dup mul Bn dup mul add 0.0001 add sqrt def /CAB dAB Yi i get mul def /Paramshow {Yi i get cvishow} bind def j 0 eq {AnY 350 sub BnY 050 sub moveto xchart4 6 eq {(C) show imshow} if xchart4 7 eq {Paramshow} if 1 0 0 0 setcmykcolor} if %Cm j 1 eq {AnY 370 sub BnY 050 sub moveto xchart4 6 eq {(G) show imshow} if xchart4 7 eq {Paramshow} if 1 0 1 0 setcmykcolor} if %Gm j 2 eq {AnY 050 sub BnY 150 add moveto xchart4 6 eq {(Y) show imshow} if xchart4 7 eq {Paramshow} if 0 0 1 0 setcmykcolor} if %Ym j 3 eq {AnY 500 sub xchart4 7 eq {150 add} if BnY 050 add moveto xchart4 6 eq {(max) show} if xchart4 7 eq {Paramshow} if 0.3 0 1 0 setcmykcolor} if %Ymax j 4 eq {AnY 100 sub BnY 150 add moveto xchart4 6 eq {(G) show ioshow} if xchart4 7 eq {Paramshow} if 1 0.5 1 0 setcmykcolor} if %Go newpath AnY BnY 90 0 360 arc fill 0 setgray newpath AnY BnY 90 0 360 arc stroke /SUM XK Xi i get sub YK Yi i get sub add ZK Zi i get sub add 0.0001 add def XANCj j XK Xi i get sub SUM div put YANCj j YK Yi i get sub SUM div put ZANCj j ZK Zi i get sub SUM div put /An XANCj j get xc sub YANCj j get 0.0001 add div %(a-an) XANK xc sub YANK 0.0001 add div sub def /Bn ZANCj j get YANCj j get 0.0001 add div %(b-bn) ZANK YANK 0.0001 add div sub 0.4 mul neg Bc mul def /AnY An YK Yi i get sub mul fakt mul def %(a-an)Y /BnY Bn YK Yi i get sub mul fakt mul def %(b-bn)Y %dAB, CAB not used /dAB An dup mul Bn dup mul add 0.0001 add sqrt def /CAB dAB YK Yi i get sub mul def /Paramshow {YK Yi i get sub cvishow} bind def j 0 eq {AnY 120 add BnY 050 sub moveto xchart4 6 eq {(R) show imshow} if xchart4 7 eq {Paramshow} if 0 1 1 0 setcmykcolor} if %Rm j 1 eq {AnY 120 add BnY 050 sub moveto xchart4 6 eq {(M) show imshow} if xchart4 7 eq {Paramshow} if 0 1 0 0 setcmykcolor} if %Mm j 2 eq {AnY 200 sub BnY 250 sub moveto xchart4 6 eq {(B) show imshow} if xchart4 7 eq {Paramshow} if 1 1 0 0 setcmykcolor} if %Bm j 3 eq {AnY 100 add BnY 150 sub moveto xchart4 6 eq {(min) show} if xchart4 7 eq {Paramshow} if 0.7 1 0 0 setcmykcolor} if %Bmin j 4 eq {AnY 100 sub BnY 250 sub moveto xchart4 6 eq {(M) show ioshow} if xchart4 7 eq {Paramshow} if 0 0.5 0 0 setcmykcolor} if %Mo newpath AnY BnY 90 0 360 arc fill 0 setgray newpath AnY BnY 90 0 360 arc stroke } for %j=0,4 xtrans8 neg ytrans8 neg translate %text & graphic (A1/2,B1/2) 3500 2100 } if %xchart4=6,7 showpage grestore %} for %xchartl=0,7 } for %xchart4=0,7 } for %xcolorl=0,0 %%Trailer %line 249 %%EndDocument EndEPSF grestore gsave BeginEPSF /xc1 16 def /yc1 12 def /xt 1 def xchart 1 eq {/xt 1 def} if 28 SHSl sub MM 020 STAl add MM translate 10 /Times-ISOL1 FS 53 MM 1 MM moveto ( ) show 1 1 scale -77 -91 translate %%BeginDocument: Bild 17 %!PS-Adobe-3.0 EPSF-3.0 egw41-7a enh31-7n %%BoundingBox: 70 83 228 206 %START PDFDE011.EPS /pdfmark17 where {pop} {userdict /pdfmark17 /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/egw4/egw4.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 pdfmark17 [ /View [ /Fit ] /DOCVIEW pdfmark17 %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 /Courier findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /Courier-ISOL1 exch definefont pop /Courier-Oblique findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /CourierI-ISOL1 exch definefont pop /Courier-Bold findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /CourierB-ISOL1 exch definefont pop /Courier-BoldOblique findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /CourierBI-ISOL1 exch definefont pop /TG {350 /Times-ISOL1 FS} bind def /TM {280 /Times-ISOL1 FS} bind def /TK {240 /Times-ISOL1 FS} bind def /TS {200 /Times-ISOL1 FS} bind def /TL {160 /Times-ISOL1 FS} bind def /TIG {350 /TimesI-ISOL1 FS} bind def /TIM {280 /TimesI-ISOL1 FS} bind def /TIK {240 /TimesI-ISOL1 FS} bind def /TIS {200 /TimesI-ISOL1 FS} bind def /TIL {160 /TimesI-ISOL1 FS} bind def /TBG {350 /TimesB-ISOL1 FS} bind def /TBM {280 /TimesB-ISOL1 FS} bind def /TBK {240 /TimesB-ISOL1 FS} bind def /TBS {200 /TimesB-ISOL1 FS} bind def /TBL {160 /TimesB-ISOL1 FS} bind def /TBIG {350 /TimesBI-ISOL1 FS} bind def /TBIM {280 /TimesBI-ISOL1 FS} bind def /TBIK {240 /TimesBI-ISOL1 FS} bind def /TBIS {200 /TimesBI-ISOL1 FS} bind def /TBIL {160 /TimesBI-ISOL1 FS} bind def /SG {350 /Symbol FS} bind def /SM {280 /Symbol FS} bind def /SK {240 /Symbol FS} bind def /SS {200 /Symbol FS} bind def /SL {160 /Symbol FS} bind def %********************************************************* /proz_param {%proz_param 4650 3800 moveto TBS (Parame\255) show 4650 3600 moveto TBS (ter:) show xchart4 2 eq xchart4 4 eq or xchart4 6 eq or {TBIS ( N) show} if xchart4 3 eq xchart4 5 eq or xchart4 7 eq or {TBIS ( Y) show xcolorl 1 eq {xcol10_BS} if} if /kx kxi xchartl get def /kxx 445 kx 5 mul add def 4150 300 moveto TBS (max: ) show kxx cvishow (_770) show 4150 080 moveto TBS (min: 380_) show kxx cvishow /index2_7 {%index2_7 xchart4 2 eq xchart4 3 eq or xchart4 7 eq or {0 -50 rmoveto TBL (2) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if } if xchart4 4 eq xchart4 5 eq or {0 -50 rmoveto TBL () show 0 50 rmoveto xcolorl 1 eq {xcol10_BS} if } if xchart4 6 eq {0 -50 rmoveto TBL (1) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if } if } bind def %index2_7 /index2_7n {%index2_7n xchart4 2 eq xchart4 3 eq or xchart4 7 eq or {0 -50 rmoveto TBL (2,n) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if } if xchart4 4 eq xchart4 5 eq or {0 -50 rmoveto TBL (n) show 0 50 rmoveto xcolorl 1 eq {xcol10_BS} if } if xchart4 6 eq {0 -50 rmoveto TBL (1,n) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if } if } bind def %index2_7n xchart4 1 le xchart4 4 ge or {%xchart4<=1, xchart4>=4 /x0p 50 def x0p 3800 moveto TBIS (XYZ) show 0 -50 rmoveto TBL (W) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if TBS (=) show XK cvsshow2 (, ) show YK cvsshow2 (, ) show ZK cvsshow2 x0p 3550 moveto TBIS (A) show index2_7 TBS ( = 2,5 \050) show TBIS (a) show index2_7 TBS ( - ) show TBIS (a) show index2_7n TBS (\051 ) show TBIS (Y) show xcolorl 1 eq {xcol10_BS} if x0p 3300 moveto TBIS (B) show index2_7 TBS ( = 2,5 ) show TBIS (B) show 0 -50 rmoveto TBL (c) show 0 50 rmoveto TBS ( \050) show TBIS (b) show index2_7 TBS ( - ) show TBIS (b) show index2_7n TBS (\051 ) show TBIS (Y) show xcolorl 1 eq {xcol10_BS} if x0p 3050 moveto TBIS (a) show index2_7 TBS ( = ) show TBIS (a) show 0 -50 rmoveto TBL (20) show 0 50 rmoveto TBS ( [) show TBIS (\050x) show xcolorl 1 eq {xcol10_BS} if TBS (-) show TBIS (x) show 0 -50 rmoveto TBL (c) show 0 50 rmoveto TBIS (\051/y) show xcolorl 1 eq {xcol10_BS} if TBS (]) show x0p 2800 moveto TBIS (b) show index2_7 TBS ( = ) show TBIS (b) show 0 -50 rmoveto TBL (20) show 0 50 rmoveto TBS ( [) show TBIS (z) show xcolorl 1 eq {xcol10_BS} if TBIS (/y) show xcolorl 1 eq {xcol10_BS} if TBS (]) show x0p 2550 moveto TBIS (a) show 0 -50 rmoveto TBL (20) show 0 50 rmoveto TBS ( = 1, ) show TBIS (b) show 0 -50 rmoveto TBL (20) show 0 50 rmoveto TBS ( = -0,4) show x0p 2300 moveto TBIS (x) show 0 -50 rmoveto TBL (c) show 0 50 rmoveto TBS ( = ) show xct show (, ) show TBIS (B) show 0 -50 rmoveto TBL (c) show 0 50 rmoveto TBS ( = ) show Bct show x0p 2080 moveto TBIS (n) show TBS ( = ) show TELi xchartl get show x0p 1860 moveto TBIS (C) show TBL 0 -50 rmoveto (AB,) show 0 50 rmoveto index2_7 TBS (=[) show TBIS (A) show index2_7 TBL -20 100 rmoveto (2) show 0 -100 rmoveto TBS (+) show TBIS (B) show index2_7 TBL -20 100 rmoveto (2) show 0 -100 rmoveto TBS (]) show TBL 0 100 rmoveto (1/2) show 0 -100 rmoveto } if %xchart4<=1, xchart4>=4 } bind def %proz_param %**************************************************************** /proz_opti {%proz_opti TBS 0 0 0 1 setcmyk_olvcolor /xchart12 xchart4 12 mul def xtexti xchart12 0 add get ytexti xchart12 0 add get moveto TBS (10 Optimalfarben (o)) showde %0egw41-7 02581 (10 optimal colours (o)) showen %1egw41-7 02581 (10 colores \363ptimos (o)) showes %2egw41-7 02581 (10 couleurs optimales (o)) showfr %3egw41-7 02581 (10 colori ottimi (o)) showit %4egw41-7 02581 (10 optimal colours (o)) showjp %5egw41-7 02581 TBIS (, Y) show TBL 0 -60 rmoveto (W) show 0 60 rmoveto xchartl 1 eq {xcol10KBS} if TBS YF 0 eq {(=100) show}{(=90) show} ifelse TBIS (, Y) show TBL 0 -60 rmoveto (N) show 0 60 rmoveto xchartl 1 eq {xcol10KBS} if TBS YF 0 eq {(=0) show}{(=3,6) show} ifelse xtexti xchart12 1 add get ytexti xchart12 1 add get moveto (8 von maximalem (m)) showde %0egw41-7 03581 (8 of maximum (m)) showen %1egw41-7 03581 (8 de m\341ximo (m)) showes %2egw41-7 03581 (8 de la maximum (m)) showfr %3egw41-7 03581 (8 di massimo (m)) showit %4egw41-7 03581 (8 of maximum (m)) showjp %5egw41-7 03581 TBIS ( C) show TBL 0 -60 rmoveto (AB) show 0 60 rmoveto TBS ( f\374r ) showde %0egw41-7 03581 ( for ) showen %1egw41-7 03581 ( bajo ) showes %2egw41-7 03581 ( pour ) showfr %3egw41-7 03581 ( per ) showit %4egw41-7 03581 ( for ) showjp %5egw41-7 03581 TELi xchartl get show xtexti xchart12 2 add get ytexti xchart12 2 add get moveto xchart4 0 eq xchart4 1 eq or {%xchart4=0,1 (in der Normfarbtafel) showde %0egw41-7 04581 (in the chromaticity diagram) showen %1egw41-7 04581 (en el diagrama de chromaticidad) showes %2egw41-7 04581 (dans le diagramme de chromaticit\351) showfr %3egw41-7 04581 (nel diagramma di cromaticit\340) showit %4egw41-7 04581 (in the chromaticity diagram) showjp %5egw41-7 04581 TBIS ( (x, y)) show } if %xchart4=0,1 xchart4 2 eq xchart4 3 eq or {%xchart4=2,3 (in linearer Farbtafel ) showde %0egw41-7 06581 (in linear chromaticity diagram ) showea %1egw41-7 06581 TBS (\050) show TBIS (a) show TBL 0 -50 rmoveto (2) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if TBIS (, b) show TBL 0 -50 rmoveto (2) show 0 50 rmoveto xcolorl 1 eq {xcol10_BS} if TBS (\051) show } if %xchart4=2,3 xchart4 4 eq xchart4 5 eq or {%xchart4=4,5 (in Buntwertdiagramm) showde %0egw41-7 08581 (in chromatic value diagram) showen %1egw41-7 08581 (en el diagrama valor crom\341tico) showes %2egw41-7 08581 (dans la valeur chromatique le diagramme) showfr %3egw41-7 08581 (nel diagramma di valore cromatico) showit %4egw41-7 08581 (in chromatic value diagram) showjp %5egw41-7 08581 TBIS ( (A, B)) show } if %xchart4=4,5 xchart4 6 eq {%xchart4=6 (in Buntwertdiagram) showde %0egw41-7 10581 (in chromatc value diagram) showen %1egw41-7 10581 (en el diagrama croma) showes %2egw41-7 10581 (dans le diagramme de chroma) showfr %3egw41-7 10581 (nel diagramma di chroma) showit %4egw41-7 10581 (in chromactic value diagram) showjp %5egw41-7 10581 TBIS ( \050A) show 0 -50 rmoveto TBL (1) show 0 50 rmoveto TBS (, ) show TBIS (B) show 0 -50 rmoveto TBL (1) show 0 50 rmoveto TBS (\051) show } if %xchart4=6 xchart4 7 eq {%xchart4=7 (in Buntwertdiagram) showde %0egw41-7 11581 (in chromatic value diagram) showen %1egw41-7 11581 (en el diagrama croma) showes %2egw41-7 11581 (dans le diagramme de chroma) showfr %3egw41-7 11581 (nel diagramma di chroma) showit %4egw41-7 11581 (in chroma diagram) showjp %5egw41-7 11581 TBIS ( \050A) show 0 -50 rmoveto TBL (2) show 0 50 rmoveto TBS (, ) show TBIS (B) show 0 -50 rmoveto TBL (2) show 0 50 rmoveto TBS (\051) show } if %xchart4=7 } bind def %proz_opti %**************************************************************************** /proz_name_range {%proz_name_range /xchart12 xchart4 12 mul def xtexti xchart12 3 add get ytexti xchart12 3 add get moveto TBS (Name & Spektralbereich) showde %0egw41-7 00581 (name and spectral range) showen %1egw41-7 00581 (Nombre y gama espectral) showes %2egw41-7 00581 (Nom et la gamma spectrale) showfr %3egw41-7 00581 (Nome e la gamma spettrale) showit %4egw41-7 00581 (name and spectral range) showjp %5egw41-7 00581 xtexti xchart12 4 add get ytexti xchart12 4 add get moveto TBIS FARBE 0 get show TBL 0 -40 rmoveto FARBE 1 get show 0 40 rmoveto TBIS FARBE 2 get show xtexti xchart12 5 add get ytexti xchart12 5 add get moveto TBIS FARBE 3 get show TBL 0 -40 rmoveto FARBE 4 get show 0 40 rmoveto TBIS FARBE 5 get show xtexti xchart12 6 add get ytexti xchart12 6 add get moveto TBIS FARBE 6 get show TBL 0 -40 rmoveto FARBE 7 get show 0 40 rmoveto TBIS FARBE 8 get show xtexti xchart12 7 add get ytexti xchart12 7 add get moveto TBIS FARBE 9 get show TBL 0 -40 rmoveto FARBE 10 get show 0 40 rmoveto TBIS FARBE 11 get show xtexti xchart12 8 add get ytexti xchart12 8 add get moveto TBIS FARBE 12 get show TBL 0 -40 rmoveto FARBE 13 get show 0 40 rmoveto TBIS FARBE 14 get show xtexti xchart12 9 add get ytexti xchart12 9 add get moveto TBIS FARBE 15 get show TBL 0 -40 rmoveto FARBE 16 get show 0 40 rmoveto TBIS FARBE 17 get show xtexti xchart12 10 add get ytexti xchart12 10 add get moveto TBIS FARBE 18 get show TBL 0 -40 rmoveto FARBE 19 get show 0 40 rmoveto TBIS FARBE 20 get show xtexti xchart12 11 add get ytexti xchart12 11 add get moveto TBIS FARBE 21 get show TBL 0 -40 rmoveto FARBE 22 get show 0 40 rmoveto TBIS FARBE 23 get show } bind def %proz_name_range %**************************************************************** /proz_axis_scales4_7 {%proz_axis_scales4_7 %axis and scales 0 0 0 1 setcmyk_olvcolor -1000 0 moveto 2800 0 rlineto stroke 0 -1880 moveto 0 3600 rlineto stroke 1800 100 sub 50 moveto 100 -50 rlineto -100 -50 rlineto closepath fill 0 50 sub 1800 100 sub moveto 50 100 rlineto 50 -100 rlineto closepath fill /xt10x 5 array def /yt10x 5 array def /xt10x [() ( -50) ( ) ( ) ( 100)] def /yt10x [(-100) ( ) ( ) ( ) (100)] def 0 0 0 1 setcmyk_olvcolor 1 1 4 {/i exch def %i=0,4 x-axis -1600 i 800 mul add -75 moveto 0 150 rlineto stroke -1800 i 800 mul add -250 moveto TBS xt10x i get show i 4 eq {-1600 i 800 mul add 0 moveto xchart4 4 eq { %xchart4=4 -100 200 rmoveto TBIK (A) show xcolorl 1 eq {xcol10_BS} if } if %xchart4=4 xchart4 5 eq { %xchart4=5 -100 200 rmoveto TBIK (A) show xcolorl 1 eq {xcol10_BS} if } if %xchart4=5 xchart4 6 eq { %xchart4=6 -200 200 rmoveto TBIK (A) show -10 -50 rmoveto TBS (1) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if } if %xchart4=6 xchart4 7 eq { %xchart4=7 -200 200 rmoveto TBIK (A) show -10 -50 rmoveto TBS (2) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if } if %xchart4=7 } if } for %i=0,4 0 1 4 {/i exch def %i=0,4 y-axis -75 -1600 i 800 mul add moveto 150 0 rlineto stroke 100 -1650 i 800 mul add 100 sub moveto TBS yt10x i get show i 4 eq {0 -1650 i 800 mul add moveto xchart4 4 eq { %xchart4=4 100 150 rmoveto TBIK (B) show TM xcolorl 1 eq {xcol10_BS} if } if %xchart4=4 xchart4 5 eq { %xchart4=5 100 150 rmoveto TBIK (B) show xcolorl 1 eq {xcol10_BS} if 0 1150 add 1600 0200 add moveto } if %xchart4=5 xchart4 6 eq { %xchart4=6 100 150 rmoveto TBIK (B) show -10 -50 rmoveto TBS (1) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if } if %xchart4=6 xchart4 7 eq { %xchart4=7 100 150 rmoveto TBIK (B) show -10 -50 rmoveto TBS (2) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if } if %xchart4=7 } if } for %i=0,4 } bind def %proz_axis_scales4_7 %*********************************************************** /proz_chromaticity_data {%BEG proz_chromaticity_data /FL 0.00001 def /DOW 82 array def /DOWZ 17 array def /F02Z 51 array def /F10Z 51 array def %TRISTIMULUS VALUES FOR PURPLE COLORS from 'dmyy'KRPROG.FOR %FOR 02- AND 10-DEGREE-OBSERVER, ILLUMINANT E 0 1 79 {/i exch def %i=0,79 = 380_775 DOW i 380 i 5 mul add put } for %i=0,79 /DOWZ %17 data [700 -495 -500 -505 -510 -515 -520 -525 -530 -535 -540 -545 -550 -555 -560 -565 400] def /F02Z %3x17 data 700 ... 400 [.01136 .01141 .01158 .01169 .01176 .01182 .01187 .01191 .01195 .01199 .01204 .01210 .01219 .01232 .01254 .01300 .01431 .00410 .00404 .00383 .00369 .00359 .00352 .00346 .00342 .00337 .00331 .00325 .00317 .00306 .00289 .00262 .00205 .00040 .00000 .00118 .00507 .00754 .00930 .01064 .01167 .01256 .01346 .01445 .01562 .01709 .01910 .02210 .02718 .03765 .06785] def /F10Z %3x17 data 700 ... 400 [.00958 .01015 .01037 .01053 .01065 .01075 .01085 .01096 .01108 .01122 .01139 .01163 .01201 .01268 .01416 .02078 .01911 .00372 .00361 .00357 .00355 .00352 .00351 .00349 .00347 .00345 .00342 .00339 .00335 .00328 .00316 .00289 .00170 .00200 .00000 .00517 .00718 .00858 .00972 .01063 .01150 .01245 .01354 .01478 .01635 .01856 .02194 .02795 .04136 .10106 .08601] def %*************************************************** /FXYZ 240 array def /XSi 82 array def /YSi 82 array def /ZSi 82 array def /XANSi 82 array def /YANSi 82 array def /ZANSi 82 array def /AANSi 82 array def %actual data for plot, purple colours /BANSi 82 array def 0 1 239 {/i exch def %i=0,239 FXYZ i xcolorl 0 eq {F2 i get put} {F10 i get put} ifelse } for %i=0,239 /YKSUM 0 def %For CIE Illuminant E 0 1 79 {/i exch def %i=0,1,79 /YKSUM YKSUM FXYZ 80 i add get add def } for %i=0,1,79 0 1 79 {/i exch def %i=0,1,79 XSi i FXYZ 00 i add get YKSUM div 100 mul put YSi i FXYZ 80 i add get YKSUM div 100 mul put ZSi i FXYZ 160 i add get YKSUM div 100 mul put /SUM XSi i get YSi i get add ZSi i get add 0.0001 add def XANSi i XSi i get SUM div put YANSi i YSi i get SUM div put ZANSi i ZSi i get SUM div put xchart4 1 le {%xchart4<=1 AANSi i XANSi i get put BANSi i YANSi i get put } if %xchart4<=1 xchart4 2 eq {%xchart4=2 AANSi i XANSi i get xc sub YANSi i get FL add div put BANSi i ZANSi i get YANSi i get FL add div -0.4 mul put } if %xchart4=2 xchart4 3 eq {%xchart4=3 AANSi i XANSi i get xc sub YANSi i get FL add div put BANSi i ZANSi i get YANSi i get FL add div -0.4 mul put } if %xchart4=3 } for %i=0,1,79 /XZi 17 array def /YZi 17 array def /ZZi 17 array def /XANZi 17 array def /YANZi 17 array def /ZANZi 17 array def /AANZi 17 array def %actual data for plot, purple colours /BANZi 17 array def 0 1 16 {/i exch def %i=0,16 %for illuminant E: S(lamdda=100) XZi i xcolorl 0 eq {F02Z} {F10Z} ifelse 00 i add get YKSUM div 100 mul put YZi i xcolorl 0 eq {F02Z} {F10Z} ifelse 17 i add get YKSUM div 100 mul put ZZi i xcolorl 0 eq {F02Z} {F10Z} ifelse 34 i add get YKSUM div 100 mul put /SUM XZi i get YZi i get add ZZi i get add 0.0001 add def XANZi i XZi i get SUM div put YANZi i YZi i get SUM div put ZANZi i ZZi i get SUM div put xchart4 1 le {%xchart4<=1 AANZi i XANZi i get put BANZi i YANZi i get put } if %xchart4<=1 xchart4 2 eq {%xchart4=2 AANZi i XANZi i get xc sub YANZi i get FL add div put BANZi i ZANZi i get YANZi i get FL add div -0.4 mul put } if %xchart4=2 xchart4 3 eq {%xchart4=3 AANZi i XANZi i get xc sub YANZi i get FL add div put BANZi i ZANZi i get YANZi i get FL add div -0.4 mul put } if %xchart4=3 } for %i=0,16 /FL 0.00001 def } bind def %END proz_chromaticity_data %************************************************ /proz_chromaticity_xy {%BEG proz_chromaticity_xy /xtrans8 600 def /ytrans8 400 def xtrans8 ytrans8 translate %for scala and graphic (x,y) 0600 0400 0 0 moveto 4000 0 rlineto stroke 0 0 moveto 0 3200 rlineto stroke %! 100 S-Einheiten = 2000 Skalen-Einheiten TBS 0 -50 moveto 0 100 rlineto stroke 800 -50 moveto 0 100 rlineto stroke 1600 -50 moveto 0 100 rlineto stroke 2400 -50 moveto 0 100 rlineto stroke 3200 -50 moveto 0 100 rlineto stroke 4000 -50 moveto 0 100 rlineto stroke -100 -300 moveto (0,0) show 700 -300 moveto (0,2) show 1500 -300 moveto (0,4) show 2300 -300 moveto (0,6) show 3100 -300 moveto (0,8) show 3900 -300 moveto (1,0) show %! 100 S-Einheiten = 2000 Skalen-Einheiten -50 0 moveto 100 0 rlineto stroke -50 800 moveto 100 0 rlineto stroke -50 1600 moveto 100 0 rlineto stroke -50 2400 moveto 100 0 rlineto stroke -50 3200 moveto 100 0 rlineto stroke -450 -80 moveto (0,0) show -450 720 moveto (0,2) show -450 1520 moveto (0,4) show -450 2320 moveto (0,6) show -450 3120 moveto (0,8) show TIS 4200 150 moveto (x) show xcolorl 1 eq {TL 0 -40 rmoveto (10) show 0 40 rmoveto TIS} if -300 2800 moveto (y) show xcolorl 1 eq {TL 0 -40 rmoveto (10) show 0 40 rmoveto TIS} if TBIS 2600 150 moveto xcolorl 0 eq {(CIE 1931) show} if xcolorl 1 eq {(CIE 1964) show} if newpath /fakt 4000 def 5 1 60 {/i exch def %i=5,60 AANSi i get fakt mul BANSi i get fakt mul i 05 eq {moveto} if i 06 ge i 59 le and {lineto} if i 60 eq {lineto closepath stroke} if } for %i=5,60 /xytshift 320 array def %min 4x65 /xytshift [ 0 000 000 (380) %0 0 000 000 (385) %1 0 000 000 (390) %2 0 000 000 (395) %3 1 -170 -170 (400) %4 0 000 000 (405) %5 0 000 000 (410) %6 0 000 000 (415) %7 0 000 000 (420) %8 0 000 000 (425) %9 0 000 000 (430) %10 0 000 000 (435) %11 0 000 000 (440) %12 0 000 000 (445) %13 1 -300 -050 (450) %14 S 0 000 000 (455) %15 0 000 000 (460) %16 0 000 000 (465) %17 0 000 000 (470) %18 1 -300 -030 (475) %19 0 000 000 (480) %20 0 000 000 (485) %21 1 -330 -050 (490) %22 1 -270 000 (495) %23 M=S 1 -300 -050 (500) %24 1 -300 -050 (505) %25 1 -330 -050 (510) %26 L=S 1 -300 050 (515) %27 1 -100 070 (520) %28 1 100 000 (525) %29 1 000 000 ( ) %30 1 050 000 (535) %31 1 000 000 ( ) %32 M 1 000 000 ( ) %33 1 050 030 (550) %34 1 000 000 ( ) %35 1 050 030 (560) %36 1 000 000 ( ) %37 1 050 030 (570) %38 L 1 000 000 ( ) %39 1 050 030 (580) %40 1 050 050 ( ) %41 1 050 030 (590) %42 1 050 050 ( ) %43 1 050 030 (600) %44 0 000 000 ( ) %45 1 050 070 (610) %46 0 000 000 ( ) %47 1 050 050 (620) %48 0 000 000 ( ) %49 0 000 000 (630) %50 0 000 000 ( ) %51 1 050 030 (640) %52 0 000 000 (645) %53 0 000 000 (650) %54 0 000 000 (655) %55 0 000 000 (660) %56 0 000 000 (665) %57 0 000 000 (670) %58 0 000 000 (675) %59 0 000 000 (680) %60 0 000 000 (685) %61 0 000 000 (690) %62 0 000 000 (695) %63 1 100 -50 (700) %64 ] def 0 1 64 {/i exch def %i=5,1,60 /i40 i 4 mul def xytshift i40 get 1 eq {%xytshift=1 0 0 0 0 setcmykcolor AANSi i get fakt mul BANSi i get fakt mul 30 0 360 arc fill %400,425,...,700 0 0 0 1 setcmykcolor AANSi i get fakt mul BANSi i get fakt mul 30 0 360 arc stroke %400,425,...,700 } if %xytshift=1 } for %i=5,1,60 TBIL 0 1 59 {/i exch def %i=0,65 /i40 i 4 mul def /i41 i40 1 add def /i42 i40 2 add def /i43 i40 3 add def xytshift i40 get 1 eq {%xytshift=1 AANSi i get fakt mul xytshift i41 get add BANSi i get fakt mul xytshift i42 get add moveto xytshift i43 get show } if %xytshift=1 } for %i=0,65 newpath /xytshiftZ 320 array def %min 4x65 /xytshiftZ [ 1 100 -50 (700) %0 see normal 1 050 -100 (495c,E) %1 1 050 -100 (500c,E) %2 0 050 -100 (505c,E) %3 1 100 -60 (510c,E) %4 0 050 -100 (515c,E) %5 0 050 -100 (520c,E) %6 1 050 -100 (525c,E) %7 0 050 -100 (530c,E) %8 0 050 -100 (535c,E) %9 0 050 -100 (540c,E) %10 0 050 -100 (545c,E) %11 1 050 -100 (550c,E) %12 0 050 -100 (555c,E) %13 0 050 -100 (560c,E) %14 S 1 050 -100 (565c,E) %15 0 -100 -150 (400) %16 see normal ] def 0 1 16 {/i exch def %i=5,5,60 /i40 i 4 mul def xytshiftZ i40 get 1 eq {%xytshiftZ=1 0 0 0 0 setcmykcolor AANZi i get fakt mul BANZi i get fakt mul 30 0 360 arc fill %400,405,...,700 0 0 0 1 setcmykcolor AANZi i get fakt mul BANZi i get fakt mul 30 0 360 arc stroke %400,405,...,700 } if %xytshiftZ=1 } for %i=0,1,16 TBIL 0 1 16 {/i exch def %i=0,16 /i40 i 4 mul def /i41 i40 1 add def /i42 i40 2 add def /i43 i40 3 add def xytshiftZ i40 get 1 eq {%xytshiftZ=1 AANZi i get fakt mul xytshiftZ i41 get add BANZi i get fakt mul xytshiftZ i42 get add moveto xytshiftZ i43 get show } if %xytshiftZ=1 } for %i=0,16 xtrans8 neg ytrans8 neg translate %scala & graphic (x,y) 0600 0400 } bind def %END proz_chromaticity_xy %************************************************ /proz_chromaticity_a2b2 {%BEG proz_chromaticity_a2b2 /FL 0.00001 def /fakt 1000 def /xtrans8 0500 def /ytrans8 3200 def xtrans8 ytrans8 translate %scala & graphic (a2,b2) 0500 3200 0 400 moveto 4000 0 rlineto stroke 0 400 moveto 0 -3600 rlineto stroke %! 100 S-Einheiten = 2000 Skalen-Einheiten TBS 0 350 moveto 0 100 rlineto stroke 800 350 moveto 0 100 rlineto stroke 1600 350 moveto 0 100 rlineto stroke 2400 350 moveto 0 100 rlineto stroke 3200 350 moveto 0 100 rlineto stroke 4000 350 moveto 0 100 rlineto stroke -150 500 moveto (-0,8) show 650 500 moveto (0,0) show 1450 500 moveto (0,8) show 2250 500 moveto (1,6) show 3050 500 moveto (2,4) show 3850 500 moveto (3,2) show %! 100 S-Einheiten = 2000 Skalen-Einheiten -50 0 moveto 100 0 rlineto stroke -50 -800 moveto 100 0 rlineto stroke -50 -1600 moveto 100 0 rlineto stroke -50 -2400 moveto 100 0 rlineto stroke -50 -3200 moveto 100 0 rlineto stroke -450 -100 moveto ( 0,0) show -450 -900 moveto (-0,8) show -450 -1700 moveto (-1,6) show %-450 -2500 moveto (-2,4) show -175 -3050 moveto 90 rotate TBIS (b) show TL 0 -40 rmoveto (2) show 0 40 rmoveto TIS 20 0 rmoveto xcolorl 1 eq {TL 0 -40 rmoveto (,10) show 0 40 rmoveto TIS} if TBS (=-0,40) show 20 0 rmoveto TBIS (z) show 20 0 rmoveto xcolorl 1 eq {TL 0 -40 rmoveto (10) show 0 40 rmoveto TIS} if TBIS (/y) show xcolorl 1 eq {TL 0 -40 rmoveto (10) show 0 40 rmoveto TIS} if -90 rotate 3450 150 moveto TBIS (a) show 20 0 rmoveto TL 0 -40 rmoveto (2) show 0 40 rmoveto TIS 20 0 rmoveto xcolorl 1 eq {TL 0 -40 rmoveto (,10) show 0 40 rmoveto TIS} if TBS (=\050) show 20 0 rmoveto TBIS (x) show 20 0 rmoveto xcolorl 1 eq {TL 0 -40 rmoveto (10) show 0 40 rmoveto TIS} if TBS (-0,110\051/) show 20 0 rmoveto TBIS (y) show 20 0 rmoveto xcolorl 1 eq {TL 0 -40 rmoveto (10) show 0 40 rmoveto TIS} if xtrans8 neg ytrans8 neg translate %scala & graphic (a2,b2) 0500 3200 newpath /fakt 1000 def /xtrans8 1300 def /ytrans8 3200 def xtrans8 ytrans8 translate %scala & graphic (a2,b2) 1300 3200 5 1 60 {/i exch def %i=5,60 AANSi i get fakt mul BANSi i get fakt mul i 05 eq {moveto} if i 06 ge i 59 le and {lineto} if i 60 eq {lineto closepath stroke} if } for %i=5,60 /xytshift 320 array def %min 4x65 /xytshift [ 0 000 000 (380) %0 0 000 000 (385) %1 0 000 000 (390) %2 0 000 000 (395) %3 1 -170 -170 (400) %4 0 000 000 (405) %5 0 000 000 (410) %6 0 000 000 (415) %7 0 000 000 (420) %8 0 000 000 (425) %9 0 000 000 (430) %10 0 000 000 (435) %11 0 000 000 (440) %12 0 000 000 (445) %13 1 -300 -050 (450) %14 S 0 000 000 (455) %15 0 000 000 (460) %16 0 000 000 (465) %17 0 000 000 (470) %18 1 -300 -030 (475) %19 0 000 000 (480) %20 0 000 000 (485) %21 1 -330 -050 (490) %22 1 -270 000 (495) %23 M=S 1 -300 -050 (500) %24 0 -300 -050 (505) %25 1 -330 -050 (510) %26 L=S 0 -300 050 (515) %27 1 -150 070 (520) %28 0 100 000 (525) %29 0 000 000 ( ) %30 0 050 000 (535) %31 1 -80 070 (540) %32 M 0 000 000 ( ) %33 0 000 030 (550) %34 0 000 000 ( ) %35 1 -80 070 (560) %36 0 000 000 ( ) %37 0 050 000 (570) %38 L 0 000 000 ( ) %39 1 050 070 (580) %40 0 050 050 ( ) %41 0 050 030 (590) %42 0 050 050 ( ) %43 1 -80 070 (600) %44 0 000 000 ( ) %45 0 050 070 (610) %46 0 000 000 ( ) %47 1 -80 050 (620) %48 0 000 000 ( ) %49 0 000 000 (630) %50 0 000 000 ( ) %51 1 -80 030 (640) %52 0 000 000 (645) %53 0 000 000 (650) %54 0 000 000 (655) %55 0 000 000 (660) %56 0 000 000 (665) %57 0 000 000 (670) %58 0 000 000 (675) %59 0 000 000 (680) %60 0 000 000 (685) %61 0 000 000 (690) %62 0 000 000 (695) %63 1 100 -50 (700) %64 ] def 0 1 64 {/i exch def %i=5,1,60 /i40 i 4 mul def xytshift i40 get 1 eq {%xytshift=1 0 0 0 0 setcmykcolor AANSi i get fakt mul BANSi i get fakt mul 30 0 360 arc fill %400,425,...,700 0 0 0 1 setcmykcolor AANSi i get fakt mul BANSi i get fakt mul 30 0 360 arc stroke %400,425,...,700 } if %xytshift=1 } for %i=5,1,60 TBIL 0 1 59 {/i exch def %i=0,65 /i40 i 4 mul def /i41 i40 1 add def /i42 i40 2 add def /i43 i40 3 add def xytshift i40 get 1 eq {%xytshift=1 AANSi i get fakt mul xytshift i41 get add BANSi i get fakt mul xytshift i42 get add moveto xytshift i43 get show } if %xytshift=1 } for %i=0,65 newpath /xytshiftZ 320 array def %min 4x65 /xytshiftZ [ 1 100 -50 (700) %0 see normal 1 050 -100 (495c,E) %1 1 050 -100 (500c,E) %2 0 050 -100 (505c,E) %3 1 100 -60 (510c,E) %4 0 050 -100 (515c,E) %5 0 050 -100 (520c,E) %6 1 050 -100 (525c,E) %7 0 050 -100 (530c,E) %8 0 050 -100 (535c,E) %9 0 050 -100 (540c,E) %10 0 050 -100 (545c,E) %11 1 050 -100 (550c,E) %12 0 050 -100 (555c,E) %13 0 050 -100 (560c,E) %14 S 1 050 -100 (565c,E) %15 0 -100 -150 (400) %16 see normal ] def 0 1 16 {/i exch def %i=5,5,60 /i40 i 4 mul def xytshiftZ i40 get 1 eq {%xytshiftZ=1 0 0 0 0 setcmykcolor AANZi i get fakt mul BANZi i get fakt mul 30 0 360 arc fill %400,405,...,700 0 0 0 1 setcmykcolor AANZi i get fakt mul BANZi i get fakt mul 30 0 360 arc stroke %400,405,...,700 } if %xytshiftZ=1 } for %i=0,1,16 TBIL 0 1 16 {/i exch def %i=0,16 /i40 i 4 mul def /i41 i40 1 add def /i42 i40 2 add def /i43 i40 3 add def xytshiftZ i40 get 1 eq {%xytshiftZ=1 AANZi i get fakt mul xytshiftZ i41 get add BANZi i get fakt mul xytshiftZ i42 get add moveto xytshiftZ i43 get show } if %xytshiftZ=1 } for %i=0,16 xtrans8 neg ytrans8 neg translate %scala & graphic (a2,b2) 1300 3200 } bind def %END proz_chromaticity_a2,b2 %***************************************************************** %%EndProlog gsave %lanindL2.EPS START 20000505 /lanind 0 def /lantex [(G) (E) (S) (F) (I) (J) (M)] def /showde {0 lanind eq {show} {pop} ifelse} bind def /showen {1 lanind eq {show} {pop} ifelse} bind def /showes {2 lanind eq {show} {pop} ifelse} bind def /showfr {3 lanind eq {show} {pop} ifelse} bind def /showit {4 lanind eq {show} {pop} ifelse} bind def /showjp {5 lanind eq {show} {pop} ifelse} bind def /showea {1 lanind le {show} {pop} ifelse} bind def /lanindf where {pop /lanind1 lanindf def /lanind2 lanindf def /lanindd laninddf def} {/lanind1 0 def /lanind2 0 def} ifelse /colormf where {pop /colorm1 colormf def /colorm2 colormf def /colormd colormdf def} {/colorm1 0 def} ifelse /deintpf where {pop /deintp1 deintpf def /deintp2 deintpf def /deintpd deintpdf def} {/deintp1 0 def} ifelse /xcolorf where {pop /xcolor1 xcolorf def /xcolor2 xcolorf def /xcolord xcolordf def} {/xcolor1 0 def} ifelse /xchartf where {pop /xchart1 xchartf def /xchart2 xchartf def /xchartd xchartdf def /xchartm xchart2f xchart1f sub 1 add def} {/xchart1 1 def /xchartm 1 def} ifelse /xchart3f where {pop /xchart3 xchart3f def} {/xchart3 0 def} ifelse /xchart4f where {pop /xchart4 xchart4f def} {/xchart4 0 def} ifelse /pchartf where {pop /pchart1 pchartf def /pchart2 pchartf def /pchartd pchartdf def} {/pchart1 3 def} ifelse /colsepf where {pop /colsep1 colsepf def /colsep2 colsepf def /colsepd colsepdf def} {/colsep1 0 def} ifelse /pmetamf where {pop /pmetam1 pmetamf def /pmetam2 pmetamf def /pmetamd pmetamdf def} {/pmetam1 0 def} ifelse %either defaul values for xchart=0 or values for xchart=1 /lanind lanind1 def % /colorm colorm1 def % /deintp deintp1 def % /xcolor xcolor1 def % /xchart xchart1 def % /pchart pchart1 def % /colsep colsep1 def % /pmetam pmetam1 def % colorm 0 eq deintp 0 eq and {/Txx (d) def} if %colorm=0, deintp=0 colorm 0 eq deintp 1 eq and {/Txx (e) def} if %colorm=0, deintp=1 colorm 1 eq deintp 0 eq and {/Txx (dd) def} if %colorm=1, deintp=0 colorm 1 eq deintp 1 eq and {/Txx (de) def} if %colorm=1, deintp=1 xchart 0 eq {/Txx (-) def} if %always independent of intended output gsave %LANINDL2 END /cvishow {cvi 6 string cvs show ( ) show} def /cvsshow1 {10 mul cvi 0.1 mul 9 string cvs show ( ) show} def /cvsshow2 {100 mul cvi 0.01 mul 9 string cvs show ( ) show} def /cvsshow3 {1000 mul cvi 0.001 mul 9 string cvs show ( ) show} def /cvsshow4 {10000 mul cvi 0.0001 mul 9 string cvs show ( ) show} def /cvsshow5 {100000 mul cvi 0.00001 mul 9 string cvs show ( ) show} def /TELi 8 array def /xchart8 1 def %0:Pxx, 1:Dxx xchart8 0 eq {%xchart8=0 Pxx /TELi [(P60) (P55) (P50) (P45) (P40) (P35) (P30) (P25)] def %7 illumin. } if %xchart8=0 xchart8 1 eq {%xchart8=1 Dxx /TELi [(D65) (D50) (P40) (A00) (E00) (C00) (P00) (Q00)] def %7 illumin. } if %xchart8=1 /SD65 82 array def %380 bis 775 mit deltalambda=05 /SD50 82 array def %380 bis 775 mit deltalambda=05 /SP40 82 array def %380 bis 775 mit deltalambda=05 /SA00 82 array def %380 bis 775 mit deltalambda=05 /SE00 82 array def %380 bis 775 mit deltalambda=05 /SC00 82 array def %380 bis 775 mit deltalambda=05 /SP00 82 array def %380 bis 775 mit deltalambda=05 /SQ00 82 array def %380 bis 775 mit deltalambda=05 /SDAK 82 array def %380 bis 775 mit deltalambda=05 /RA 82 array def %380 bis 770 nm /F2 240 array def %3 x 80 Daten fuer Bereich 380 bis 770nm /F2N 240 array def %normiert auf Y=100 fuer D65 und 10nm /F10 240 array def %3 x 80 Daten fuer Bereich 380 bis 770nm %C %C LITERATURQUELLEN LICHTARTEN %C SA,SC,SD65, CIE-DOKUMENT NR.15 FARBMESSUNG, 1971 %C TABELLE 1.1.1, SEITE 81 %C SD55,SD75, CIE-DOKUMENT NR.15 FARBMESSUNG, 1971 %C TABELLE 1.1.4, SEITE 85 %C LINEAR INTERPOLIERT VON 5 ZU 5NM %C SG,SP,SXE, DIN 5033, BLATT 7 ,SEITE 8-9 %C AUSGABE 1966 /SD65 %80 data 5 nm [50.0 52.3 54.6 68.7 82.8 87.1 91.5 92.5 93.4 90.1 86.7 95.8 104.9 110.9 117.0 117.4 117.8 116.3 114.9 115.4 115.9 112.4 108.8 109.1 109.4 108.6 107.8 106.3 104.8 106.2 107.7 106.0 104.4 104.2 104.0 102.0 100.0 98.2 96.3 96.1 95.8 92.2 88.7 89.3 90.0 89.8 89.6 88.6 87.7 85.5 83.3 83.5 83.7 81.9 80.0 80.1 80.2 81.2 82.3 80.3 78.3 74.0 69.7 70.7 71.6 73.0 74.3 68.0 61.6 65.7 69.9 72.5 75.1 69.3 63.6 55.0 46.4 56.6 66.8 65.1] def /SD50 %80 data 5 nm CIE 15.3, Seite 30; aus JE540-1N.PS [24.5 27.2 29.9 39.6 49.3 52.9 56.5 58.3 60.0 58.9 57.8 66.3 74.8 81.0 87.2 88.9 90.6 91.0 91.4 93.2 95.1 93.5 92.0 93.8 95.7 96.2 96.6 96.8 97.1 99.6 102.1 101.4 100.8 101.5 102.3 101.2 100.0 98.9 97.7 98.3 98.9 96.2 93.5 95.6 97.7 98.5 99.3 99.2 99.0 97.4 95.7 97.3 98.9 97.3 95.7 96.9 98.2 100.6 103.0 101.1 99.1 93.3 87.4 89.5 91.6 92.2 92.9 84.9 76.9 81.7 86.5 89.5 92.6 85.4 78.2 68.0 57.7 70.3 82.9 0.0] def %0.0 not used /SA00 %80 data 5 nm CIE 15.3 Seite 30; aus JE540-1N.PS [9.80 10.90 12.09 13.35 14.71 16.15 17.68 19.29 20.99 22.79 24.67 26.64 28.70 30.85 33.09 35.41 37.81 40.30 42.87 45.52 48.24 51.04 53.91 56.85 59.86 62.93 66.06 69.25 72.50 75.79 79.13 82.52 85.95 89.41 92.91 96.44 100.00 103.58 107.18 110.80 114.44 118.08 121.73 125.39 129.04 132.70 136.35 139.99 143.62 147.24 150.84 154.42 157.98 161.52 165.03 168.51 171.96 175.38 178.77 182.12 185.43 188.70 191.93 195.12 198.26 201.36 204.41 207.41 210.36 213.27 216.12 218.92 221.67 224.36 227.00 229.59 232.12 234.59 237.01 239.37 0.0] def %0.0 not used % AUS BILDPLA.FOR aus vrbam/wrpos:KRPROG.FOR, 5987-6023 5.10.92 %C PROGRAMM ZUR BERECHNUNG DER RELATIVEN SPEKTRALEN STRAHLUNGSVERTEI- %C LUNG EINES HOHLRAUMSTRAHLERS ALS FUNKTION DER WELLENLAENGE LAMDA %C BEI GEGEBENER TEMPERATUR T %C VERWENDETE VARIABLE %C T TEMPERATUR %C C2 PLANCKSCHE KONSTANTE (=1.4388 CM K (1967)) %C LAMDA(I) WELLENLAENGE %C S(I) STRAHLUNGSVERTEILUNG DES HOHLRAUMSTRAHLERS %C %C LITERATUR OFFIZIELLE EMPFEHLUNGEN DER CIE,DEUTSCHE VERSION, %C CA. 1969, SEITE 21 UND TABELLE 1.1.1 %C %SDP4 82 array def %380 bis 775 mit deltalambda=05 % DO 50 I=1,54 % 50 S(I)=100. % 1*(560./FLOAT(LAMDA(I)))**5 % 2*(EXP(C2/(560.*10.**(-7)*T))-1.) % 3/(EXP(C2/(FLOAT(LAMDA(I))*10.**(-7)*T))-1.) %new CIE 15.3:2004, Eq. (3.1) page 2 %S(I) = [100{560/lambda}**5] [exp{(c2*10**7)/(TNC*560 )} - 1] % /[exp{(c2*10**7)/(TNC*lambda)} - 1] % exp = e {...} = 2.71 {...} %/TNC 2848 def %NLA /EE 2.718281 def %e=mac pocket calculator /C2 1.4350000 10 7 exp mul def /lamd 82 array def xchart8 1 eq {%xchart8=1 Dxx /TNC 4000 def %******************************************** 0 1 79 {%i=0,79 /i exch def /lambda 380 i 5 mul add def lamd i lambda put /E1 560 lambda div 5 exp def /E4 C2 TNC 560 mul div def /E5 C2 TNC lambda mul div def /E6 EE E4 exp def /E7 EE E5 exp def SP40 i E1 100 mul E6 1 sub E7 1 sub div mul put } for %i=0,79 } if %xchart8=1 Dxx %****************************************** xchart8 0 eq {%xchart8=0 Pxx %defined only for xchart8=0 Pxx /TNCj 8 array def /TNCj [6000 5500 5000 4500 4000 3500 3000 2500] def /SP60 82 array def %380 bis 775 mit deltalambda=05 /SP55 82 array def %380 bis 775 mit deltalambda=05 /SP50 82 array def %380 bis 775 mit deltalambda=05 /SP45 82 array def %380 bis 775 mit deltalambda=05 /SP40 82 array def %380 bis 775 mit deltalambda=05 /SP35 82 array def %380 bis 775 mit deltalambda=05 /SP30 82 array def %380 bis 775 mit deltalambda=05 /SP25 82 array def %380 bis 775 mit deltalambda=05 0 1 7 {/j exch def %j=0,7 0 1 79 {%i=0,79 /i exch def /lambda 380 i 5 mul add def lamd i lambda put /E1 560 lambda div 5 exp def /E4 C2 TNCj j get 560 mul div def /E5 C2 TNCj j get lambda mul div def /E6 EE E4 exp def /E7 EE E5 exp def j 0 eq {SP60 i} if j 1 eq {SP55 i} if j 2 eq {SP50 i} if j 3 eq {SP45 i} if j 4 eq {SP40 i} if j 5 eq {SP35 i} if j 6 eq {SP30 i} if j 7 eq {SP25 i} if E1 100 mul E6 1 sub E7 1 sub div mul put } for %i=0,79 } for %j=0,7 } if %xchart8=0 %************************************************* /SE00 %80 data 5 nm [100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0] def %0.0 not used /SC00 %80 data 5 nm [ 33.00 39.92 47.40 55.17 63.30 71.81 80.60 89.53 98.10 105.80 112.40 117.75 121.50 123.45 124.00 123.60 123.10 123.30 123.80 124.09 123.90 122.92 120.70 116.90 112.10 106.98 102.30 98.81 96.90 96.78 98.00 99.94 102.10 103.95 105.20 105.67 105.30 104.11 102.30 100.15 97.80 95.43 93.20 91.22 89.70 88.83 88.40 88.19 88.10 88.06 88.00 87.86 87.80 87.99 88.20 88.20 87.90 87.22 86.30 85.30 84.00 82.21 80.20 78.24 76.30 74.36 72.40 70.40 68.30 66.30 64.40 62.80 61.50 60.20 59.20 58.50 58.10 58.00 58.20 58.50 ] def %0.0 not used 0 1 79 {/i exch def %i=0,79 /lamda 380 i 5 mul add def SP00 i SE00 i get lamda 560 div mul put SQ00 i SE00 i get 1120 lamda sub 560 div mul put } for %i=0,79 %C LITERATURQUELLEN SPEKTRALWERTE %C F2 CIE-DOKUMENT NR.15 FARBMESSUNG, 1971 %C TABELLE 2.1, SEITE 93-102 /F2 %3x80 data [.001368 .002236 .004243 .007650 .01431 .02319 .04351 .07763 .1344 .2148 .2839 .3285 .3483 .3481 .3362 .3187 .2908 .2511 .1954 .1421 .09564 .05795 .03201 .01470 .0049 .0024 .0093 .0291 .06327 .1096 .1655 .2257 .2904 .3597 .4334 .5121 .5945 .6784 .7621 .8425 .9163 .9786 1.0263 1.0567 1.0622 1.0456 1.0026 .9384 .8544 .7514 .6424 .5419 .4479 .3608 .2835 .2187 .1649 .1212 .0874 .0636 .04677 .03290 .02270 .01584 .01136 .00811 .00579 .004109 .002899 .002049 .001440 .0009999 .0006901 .000476 .0003323 .0002348 .0001662 .0001174 .00008308 .00005871 .000039 .000064 .00012 .000217 .000396 .00064 .00121 .00218 .004 .0073 .0116 .01684 .023 .0298 .0380 .048 .06 .0739 .09098 .1126 .139 .1693 .208 .2586 .323 .4073 .503 .6082 .71 .7932 .862 .9149 .954 .9803 .995 1.0 .995 .9786 .952 .9154 .870 .8163 .757 .6949 .631 .5668 .503 .4412 .381 .321 .265 .217 .175 .1382 .107 .0816 .061 .04458 .032 .0232 .017 .01192 .00821 .005723 .004102 .002929 .002091 .001484 .001047 .00074 .00052 .0003611 .0002492 .0001719 .00012 .0000848 .00006 .0000424 .00003 .0000212 .00645 .01055 .02005 .03621 .06785 .1102 .2074 .3713 .6456 1.0391 1.3856 1.623 1.7471 1.7826 1.7721 1.7441 1.6692 1.5281 1.2876 1.0419 .8130 .6162 .4652 .3533 .2720 .2123 .1582 .1117 .07825 .05725 .04216 .02984 .0203 .0134 .00875 .00575 .0039 .00275 .0021 .0018 .00165 .0014 .0011 .0010 .0008 .0006 .00034 .00024 .00019 .0001 .00005 .00003 .00002 .00001 % 26*0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 %10 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 %20 0.0 0.0 0.0 0.0 0.0 0.0 %26 ] def /F10 %3x80 data [.00016 .0006624 .002362 .007242 .01911 .0434 .08474 .1406 .2045 .2647 .3147 .3577 .3837 .3867 .3707 .343 .3023 .2541 .1956 .1323 .08051 .04107 .01617 .005132 .003816 .01544 .03746 .07136 .1177 .173 .2365 .3042 .3768 .4516 .5298 .6161 .7052 .7938 .8787 .9512 1.0142 1.0743 1.1185 1.1343 1.124 1.0891 1.0305 .9507 .8563 .7549 .6475 .5351 .4316 .3437 .2683 .2043 .1526 .1122 .08126 .05793 .04085 .02862 .019941 .01384 .0100 .006605 .004552 .003145 .002175 .001506 .001045 .0007274 .0005083 .0003564 .000251 .0001777 .0001264 .00009015 .00006453 .00004634 .00001736 .00007156 .0002534 .0007685 .002004 .004509 .008756 .01446 .02139 .0295 .03868 .0496 .06208 .0747 .08946 .1063 .1282 .1528 .1852 .2199 .2536 .2977 .3391 .3954 .4608 .5314 .6067 .6857 .7618 .8233 .8752 .9238 .962 .9822 .9918 .9991 .9973 .9824 .9555 .9152 .8689 .8256 .7774 .7203 .6583 .5939 .528 .4618 .3981 .3395 .2835 .2282 .1798 .1402 .1076 .08119 .06028 .0441 .0318 .0226 .0159 .01113 .007749 .0053751 .0037177 .002565 .001768 .001222 .0008462 .0005864 .0004074 .000284 .0001987 .0001395 .00009843 .00006982 .00004974 .00003554 .00002549 .00001834 .0007048 .002928 .01048 .03234 .08601 .1971 .3894 .6568 .9725 1.2825 1.5535 1.7985 1.9673 2.0273 1.9948 1.9007 1.7454 1.5549 1.3176 1.0302 .7721 .5701 .4152 .3024 .2185 .1592 .112 .08225 .06071 .04305 .03045 .02058 .01368 .007918 .003988 .001091 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 %10 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 %20 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 %30 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 %40 0.0 0.0 0.0 0.0 %44 ] def %calculation of transformation data /FARBE 30 array def /FARBE [(R) (m) ( 561_770) %00 (Y) (m) ( 520_770) %01 (G) (m) ( 475_573) %02 (C) (m) ( 380_561) %03 (B) (m) ( 380_520) %04 (M) (m) ( 573_475) %05 (G) (o) ( 520_570) %06 (M) (o) ( 570_520) %07 (W) (0) ( 380_770) %08 (N) (0) ( 380_770) %09 ] def /xshift 10 array def %max 6 device + 4 elementary /yshift 10 array def /colori 10 array def /RX0 720 array def %9x80 /RX0 [ %(%Rm 00 560_770) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0036 0036 0036 0036 0036 0036 0468 0900 0900 0900 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %(%Ym 01 520_770) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0036 0036 0036 0036 0036 0036 0036 0036 0468 0900 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %(%Gm 02 475_575) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0036 0036 0036 0036 0036 0036 0036 0036 0036 0468 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0900 0900 0900 0900 0900 0900 0900 0900 0900 0468 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %(%Cm 03 380_560) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0900 0900 0900 0900 0900 0900 0468 0036 0036 0036 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %(%Bm 04 380_520) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0900 0900 0900 0900 0900 0900 0900 0900 0468 0036 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %(%Mm 05 575_475) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0900 0900 0900 0900 0900 0900 0900 0900 0900 0468 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0036 0036 0036 0036 0036 0036 0036 0036 0036 0468 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %(%Go 06 520_570) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0036 0036 0036 0036 0036 0036 0036 0036 0468 0900 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0900 0900 0900 0900 0900 0900 0900 0900 0468 0036 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %(%Mo 07 570_520) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0900 0900 0900 0900 0900 0900 0900 0900 0468 0036 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0036 0036 0036 0036 0036 0036 0036 0036 0468 0900 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %(%W0(r=0,900) 08 380_770) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %(%N0(r=0,036) 09 380_770) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 ] def /xcol10_BS {TBL 0 -50 rmoveto (10) show 0 50 rmoveto TBS} bind def /xcol10KBS {TBL 0 -50 rmoveto (,10) show 0 50 rmoveto TBS} bind def /xcolorl xcolor def 0 1 0 {/xcolorl exch def %xcolorl=0,0 xcolorl 1 eq {0 1 239 {/i exch def %i=0,239 F2 i F10 i get put } for %i=0,239 } if /YKSUM 0 def %For CIE Illuminant E 0 1 79 {/i exch def %i=0,1,79 /YKSUM YKSUM F2 80 i add get add def } for %i=0,1,79 /F2N 240 array def 0 1 79 {/i exch def %i=0,1,79 F2N 00 i add F2 00 i add get YKSUM div 100 mul put F2N 80 i add F2 80 i add get YKSUM div 100 mul put F2N 160 i add F2 160 i add get YKSUM div 100 mul put } for %i=0,1,79 /FXN 82 array def %FXN 0 = F2N imax /FYN 82 array def /FZN 82 array def %defines FXN, FYN, FZN 0 to 79 0 1 79 {/i exch def %i=0,79 FXN i F2N 000 i add get put FYN i F2N 080 i add get put FZN i F2N 160 i add get put } for %i=0,79 %special wavelength range with complementary colours for E? /FXD 63 array def /FYD 63 array def /FZD 63 array def /DOW 63 array def 00 1 60 {/i exch def %i=0,60 %range 400..700nm FXD i FXN 005 i add get put FYD i FYN 005 i add get put FZD i FZN 005 i add get put DOW i 400 i 5 mul add put %range 400 to 700 } for %i=0,60 %for interpolation FXD 61 FXD 60 get put FYD 61 FYD 60 get put FZD 61 FZD 60 get put FXD 62 FXD 60 get put FYD 62 FYD 60 get put FZD 62 FZD 60 get put /FAD 63 array def /FBD 63 array def /FCD 63 array def 20 setlinewidth /xdel 1005 def /ydel 395 def /x0 050 def /x1 -150 def /Xi 82 array def %80 spectral colours 380 to 775nm /Yi 82 array def /Zi 82 array def /XANi 82 array def /YANi 82 array def /ZANi 82 array def /AANi 82 array def %actual data for plot, spectral colours /BANi 82 array def /FXNZ 17 array def /FYNZ 17 array def /FZNZ 17 array def /XZi 17 array def /YZi 17 array def /ZZi 17 array def /XANZi 17 array def /YANZi 17 array def /ZANZi 17 array def /AANZi 17 array def %actual data for plot, purple colours /BANZi 17 array def /XRj 10 array def %10 spectral or max 10 device colours /YRj 10 array def /ZRj 10 array def /XANRj 10 array def /YANRj 10 array def /ZANRj 10 array def /XSj 10 array def %10 spectral or max 10 device atagonistic colours /YSj 10 array def /ZSj 10 array def /XANSj 10 array def /YANSj 10 array def /ZANSj 10 array def /XCj 10 array def %10 spectral from continuous colours /YCj 10 array def /ZCj 10 array def /XANCj 10 array def /YANCj 10 array def /ZANCj 10 array def /XAj 10 array def %10 spectral from continuous colours /YAj 10 array def /ZAj 10 array def /XANAj 10 array def /YANAj 10 array def /ZANAj 10 array def /RAk 82 array def 6 1 6 {/xchart4 exch def %xchart4=0,7 /xchartl xchart def %0 1 7 {/xchartl exch def %xchartl=0,7 %/YF 0 def %for normalization 1 /YF 1 def %for normalization 0,900 YF 0 eq {/YFR 1.00 def}{/YFR 0.90 def} ifelse gsave 5 /Times-ISOL1 FS /cvishow {cvi 6 string cvs show} def %75 85 moveto %lanind cvishow (-) show %colorm cvishow %deintp cvishow %xcolorl cvishow %xchart cvishow %pchart cvishow %colsep cvishow (-L) show pmetam cvishow 5 /Times-ISOL1 FS 72 86 moveto (egw41-7a enh31-7n) show 72 90 translate 0.010 MM dup scale 25 setlinewidth 0 0 0 0 setcmyk_olvcolor 0 0 moveto 6000 0 rlineto 0 4000 rlineto 6000 neg 0 rlineto closepath fill 0 0 moveto 6000 0 rlineto 0 4000 rlineto -6000 0 rlineto closepath clip 0 0 0 1 setcmyk_olvcolor 0 0 moveto 6000 0 rlineto 0 4000 rlineto 6000 neg 0 rlineto closepath stroke %calculation of XW,YW,ZW for 8 illuminants Dxx or Pxx 0 1 79 {/i exch def %i=0,79 SDAK i xchart8 0 eq {%xchart8=0 Pxx xchartl 0 eq {SP60 i get put} if xchartl 1 eq {SP55 i get put} if xchartl 2 eq {SP50 i get put} if xchartl 3 eq {SP45 i get put} if xchartl 4 eq {SP40 i get put} if xchartl 5 eq {SP35 i get put} if xchartl 6 eq {SP30 i get put} if xchartl 7 eq {SP25 i get put} if }%xchart8=0 Pxx {%xchart8=1 Dxx xchartl 0 eq {SD65 i get put} if xchartl 1 eq {SD50 i get put} if xchartl 2 eq {SP40 i get put} if xchartl 3 eq {SA00 i get put} if xchartl 4 eq {SE00 i get put} if xchartl 5 eq {SC00 i get put} if xchartl 6 eq {SP00 i get put} if xchartl 7 eq {SQ00 i get put} if } ifelse %xchart8=1 Dxx } for %i=0,79 /YKSUM 0 def 0 1 79 {/i exch def %i=0,1,79 /YKSUM YKSUM SDAK i get F2 80 i add get mul add def } for %i=0,1,79 0 1 79 {/i exch def %i=0,1,79 F2N 00 i add SDAK i get F2 00 i add get mul YKSUM div 100 mul put F2N 80 i add SDAK i get F2 80 i add get mul YKSUM div 100 mul put F2N 160 i add SDAK i get F2 160 i add get mul YKSUM div 100 mul put } for %i=0,1,79 %XW,YW,ZW for white /XW 0 def /YW 0 def /ZW 0 def 0 1 079 {/i exch def %i=0,79 /XW XW F2N 00 i add get add def /YW YW F2N 80 i add get add def /ZW ZW F2N 160 i add get add def } for %i=0,79 /SUMW XW YW add ZW add def %for D65, D50, P40, A00, E00 /XANW XW SUMW div def /YANW YW SUMW div def /ZANW ZW SUMW div def /AANW XW YW 0.0001 add div def /BANW ZW YW 0.0001 add div 0.4 mul neg def %************************************************ %XYZRj for 10 reflections 0 1 09 {/j exch def %j=0,9 %10 Reflections /jx j 80 mul def 0 1 79 {/i exch def %i=0,79 RAk i RX0 jx i add get 1000 div put } for %i=0,79 /XR 0 def /YR 0 def /ZR 0 def 0 1 079 {/i exch def %i=0,79 /XR XR F2N 00 i add get RAk i get mul add def /YR YR F2N 80 i add get RAk i get mul add def /ZR ZR F2N 160 i add get RAk i get mul add def } for %i=0,79 XRj j XR put YRj j YR put ZRj j ZR put /SUMR XR YR add ZR add def XANRj j XR SUMR 0.0001 add div put YANRj j YR SUMR 0.0001 add div put ZANRj j ZR SUMR 0.0001 add div put } for %j=0,9 %******************************************* 0 1 62 {/i exch def %i=0,62 FAD i FXD i get put FBD i FYD i get put FCD i FZD i get put } for %i=0,62 % FXU(1)=FF(2)*U(3)-FF(3)*U(2) % FXU(2)=FF(3)*U(1)-FF(1)*U(3) % FXU(3)=FF(1)*U(2)-FF(2)*U(1) % SUBROUTINE DOWEL (F,FXU,IMAX,IO) % DIMENSION F(99,3),FXU(3) % I=1 % T2=F(1,1)*FXU(1)+F(1,2)*FXU(2)+F(1,3)*FXU(3) % IF(T2) 1,1,4 % 1 T1=T2 % I=I+1 % T2=F(I,1)*FXU(1)+F(I,2)*FXU(2)+F(I,3)*FXU(3) % IF(T2) 1,1,2 % 2 IF(T1) 3,3,1 % 3 IO=I-1 % RETURN % 4 T1=F(IMAX,1)*FXU(1)+F(IMAX,2)*FXU(2)+F(IMAX,3)*FXU(3) % IF(T1) 5,5,1 % 5 IO=IMAX % RETURN % END %********************************************************* /proc_ABC_KNP_FWERTiX {%BEG proc_ABC_KNP_FWERT %input FAD,FBD,FCD, KNP %output FWERTiX/Y/Z (i=1,4) kNP 1 ge {/FWERT1X FAD kNP 1 sub get def /FWERT1Y FBD kNP 1 sub get def /FWERT1Z FCD kNP 1 sub get def} {/FWERT1X FAD 0 get def %again 400nm for i=0 /FWERT1Y FBD 0 get def /FWERT1Z FCD 0 get def} ifelse /FWERT2X FAD kNP get def /FWERT2Y FBD kNP get def /FWERT2Z FCD kNP get def /FWERT3X FAD kNP 1 add get def /FWERT3Y FBD kNP 1 add get def /FWERT3Z FCD kNP 1 add get def /FWERT4X FAD kNP 2 add get def /FWERT4Y FBD kNP 2 add get def /FWERT4Z FCD kNP 2 add get def } bind def %END proc_ABC_KNP_FWERTiX %********************************************************* /proc_XIE_TN1 {%BEG proc_XIE_TN1 %input XIE, FWERTiX/Y/Z (i=1,4) %output TN1 /A1N XIE 1 XIE sub mul XIE 2 sub mul 6 div def /A2N XIE 1 add XIE 1 sub mul XIE 2 sub mul 0.5 mul def /A3N XIE 1 add XIE mul 2 XIE sub mul 0.5 mul def /A4N XIE 1 add XIE mul XIE 1 sub mul 6 div def /FNX A1N FWERT1X mul A2N FWERT2X mul add A3N FWERT3X mul add A4N FWERT4X mul add def /FNY A1N FWERT1Y mul A2N FWERT2Y mul add A3N FWERT3Y mul add A4N FWERT4Y mul add def /FNZ A1N FWERT1Z mul A2N FWERT2Z mul add A3N FWERT3Z mul add A4N FWERT4Z mul add def /TNX FNX FXU1 mul FNY FXU2 mul add FNZ FXU3 mul add def } bind def %END proc_XIE_TN1 %********************************************************* /WEL1 60 array def %irregular definition /WEL2 60 array def %irregular definition %0 1 2 3 4 5 6 7 8 9 /WEL1 [405 435 450 460 465 470 475 480 485 490 495 500 510 520 530 540 545 550 555 560 ] def 0 1 19 {/k exch def %k=0,19 %wavelength 405..700nm /j WEL1 k get 400 sub 5 idiv def /LP k def /LPP 20.5 k add def /FF1 FXD j get def %start at 405..700nm /FF2 FYD j get def /FF3 FZD j get def /U1 XW def /U2 YW def /U3 ZW def /FXU1 FF2 U3 mul FF3 U2 mul sub def /FXU2 FF3 U1 mul FF1 U3 mul sub def /FXU3 FF1 U2 mul FF2 U1 mul sub def /INP -1 def /IPN -1 def %assumption jump from TN to TP from negativ to positiv 0 1 60 {/i exch def %i=1,60 /TN FAD i get FXU1 mul FBD i get FXU2 mul add FCD i get FXU3 mul add def /TP FAD i 1 add get FXU1 mul FBD i 1 add get FXU2 mul add FCD i 1 add get FXU3 mul add def TN 0 le TP 0 gt and {/INP i def exit} if } for %i=1,60 0 1 60 {/i exch def %i=1,60 /TN FAD i get FXU1 mul FBD i get FXU2 mul add FCD i get FXU3 mul add neg def /TP FAD i 1 add get FXU1 mul FBD i 1 add get FXU2 mul add FCD i 1 add get FXU3 mul add neg def TN 0 le TP 0 gt and {/IPN i def exit} if } for %i=1,60 %********************************************************* /kNP INP def kNP 0 ge {%kNP>=0 proc_ABC_KNP_FWERTiX %input FAD,KNP, output FWERTiXYZ (i=1,4) /XIE1 0 def %start values TN=0 for XIE1, TP>0 for XIE2 /XIE2 1 def 0 1 9 {/mk exch def %mk=0,9 /XIE XIE1 XIE2 add 0.5 mul def proc_XIE_TN1 %input XIE, ouput TN1 TNX 0 le {/XIE1 XIE def /TN1 TNX def} {/XIE2 XIE def /TP1 TNX def} ifelse } for %mk=0,9 /XIE XIE1 XIE2 add 0.5 mul def /DOWXIE1 DOW INP get DOW INP 1 add get DOW INP get sub XIE mul add def /XIENP XIE def } if %kNP>=0 %********************************************************* /kNP IPN def kNP 0 ge {%kNP>=0 proc_ABC_KNP_FWERTiX %input FAD,KNP, output FWERTiXYZ (i=1,4) /XIE1 0 def %start values TN=0 for XIE1, TP>0 for XIE2 /XIE2 1 def /FXU1 FXU1 neg def /FXU2 FXU2 neg def /FXU3 FXU3 neg def 0 1 9 {/mk exch def %mk=0,9 /XIE XIE1 XIE2 add 0.5 mul def proc_XIE_TN1 %input XIE, ouput TN1 TNX 0 le {/XIE1 XIE def /TN1 TNX def} {/XIE2 XIE def /TP1 TNX def} ifelse } for %mk=0,9 /XIE XIE1 XIE2 add 0.5 mul def /DOWXIE2 DOW IPN get DOW IPN 1 add get DOW IPN get sub XIE mul add def /XIEPN XIE def } if %kNP>=0 %********************************************************* 0 1 79 {/i exch def %i=0,79 RA i 0.036 put } for %i=0,79 INP -1 eq {/i1 0 def} %380nm {/i1 INP 5 add def} ifelse %405..700nm IPN -1 eq {/i2 79 def} %770nm {/i2 IPN 5 add def} ifelse %405..700nm i2 i1 ge {%i1i2 i1 1 79 {/i exch def %i=i1,79 RA i 0.900 put } for %i=i1,79 0 1 i2 {/i exch def %i=0,i2 RA i 0.900 put } for %i=0,i2 } ifelse %i1>i2 %correction (0.900+0.036)/2=0.648 i2 i1 ge {%i1i2 RA i1 0.468 put RA i2 0.468 XIEPN 0.5 sub add put } ifelse %i1>i2 %*************************************************** /X 0 def /Y 0 def /Z 0 def 0 1 079 {/i exch def %i=0,79 /X X F2N 00 i add get RA i get mul add def /Y Y F2N 80 i add get RA i get mul add def /Z Z F2N 160 i add get RA i get mul add def } for %i=0,79 /SUM X Y add Z add def /XAN X SUM 0.0001 add div def /YAN Y SUM 0.0001 add div def /ZAN Z SUM 0.0001 add div def %************************************************* 0 0 0 1 setcmyk_olvcolor 0 1 1 {/Icom exch def %Icom=0,1 Icom 0 eq {%Icom=0,1 Xi k X put Yi k Y put Zi k Z put XANi k XAN put YANi k YAN put ZANi k ZAN put }%Icom=0 {%Icom=1 /kP 20 k add def Xi kP XW X sub put Yi kP YW Y sub put Zi kP ZW Z sub put /SUMi Xi kP get Yi kP get add Zi kP get add def XANi kP Xi kP get SUMi 0.0001 add div put YANi kP Yi kP get SUMi 0.0001 add div put ZANi kP Zi kP get SUMi 0.0001 add div put } ifelse %Icom=1 } for %Icom=0,1 YF 1 eq {%YF=1 Xi k Xi k get 0.9000 mul put Yi k Yi k get 0.9000 mul put Zi k Zi k get 0.9000 mul put Xi kP Xi kP get 0.9000 mul put Yi kP Yi kP get 0.9000 mul put Zi kP Zi kP get 0.9000 mul put } if %YF=1 } for %k=0,19 %********************************************************************** %XW,YW,ZW and XK,YK,ZK for white /XW 0 def /YW 0 def /ZW 0 def 0 1 079 {/i exch def %i=0,79 /XW XW F2N 00 i add get add def /YW YW F2N 80 i add get add def /ZW ZW F2N 160 i add get add def } for %i=0,79 YF 0 eq {%YF=0 /XK XW def /YK YW def /ZK ZW def }%YF=0 {%YF=1 /XK XW YFR mul def /YK YW YFR mul def /ZK ZW YFR mul def } ifelse %YF=1 /SUMK XK YK add ZK add def %for D65, D50, P40, A00, E00 /XANK XK SUMK div def /YANK YK SUMK div def /ZANK ZK SUMK div def /LP LP 1 add def /xtexti 96 array def /ytexti 96 array def /xtexti [ %T00 T10 T20 T30 T40 T41 T50 T51 T60 T61 T70 T71 %0 1 2 3 4 5 6 7 8 9 10 11 1700 2000 2000 3000 3200 4300 3200 4300 3200 4300 3200 4300 %0 (x,y) 1700 2000 2000 3000 3200 4300 3200 4300 3200 4300 3200 4300 %1 (x,y) 0050 0050 0050 0050 0050 1300 0050 1300 0050 1300 0050 1300 %2 (a2,b2) 0050 0050 0050 0050 0050 1300 0050 1300 0050 1300 0050 1300 %3 (a2,b2) 0050 0050 0050 0050 0050 1300 0050 1300 0050 1300 0050 1300 %4 (A,B) 0050 0050 0050 0050 0050 1300 0050 1300 0050 1300 0050 1300 %5 (A,B) 0050 0050 0050 0050 0050 1300 0050 1300 0050 1300 0050 1300 %6 (A1,B1) 0050 0050 0050 0050 0050 1300 0050 1300 0050 1300 0050 1300 %7 (a2,b2) ] def /ytexti [ 3800 3580 3360 3140 2920 2920 2700 2700 2480 2480 2260 2260 %0 (x,y) 3800 3580 3360 3140 2920 2920 2700 2700 2480 2480 2260 2260 %1 (x,y) 0500 0290 0080 1600 1380 1380 1160 1160 0940 0940 0720 0720 %3 (a2,b2) 0500 0290 0080 1600 1380 1380 1160 1160 0940 0940 0720 0720 %4 (a2,b2) 0500 0290 0080 1600 1380 1380 1160 1160 0940 0940 0720 0720 %4 (A,B) 0500 0290 0080 1600 1380 1380 1160 1160 0940 0940 0720 0720 %5 (A,B) 0500 0290 0080 1600 1380 1380 1160 1160 0940 0940 0720 0720 %6 (A1,B1) 0500 0290 0080 1600 1380 1380 1160 1160 0940 0940 0720 0720 %7 (a2,b2) ] def %*********************************************************** /icolor 9 array def %Rm %Ym %Gm %Cm %Bm %Mm %Go %Mo %W /icolor [20 10 06 00 30 26 06 26 40] def /imshow {-20 -50 rmoveto TBL (m) show 0 50 rmoveto TBIS} def /ioshow {0 -50 rmoveto TBL (o) show 0 50 rmoveto TBIS} def %************************************************* %allways /kxi 8 array def /xci 8 array def /Bci 8 array def /xcti 8 array def /Bcti 8 array def % 0 1 2 3 4 5 6 7 % (P60)(P55)(P50)(P45)(P40)(P35)(P30)(P25) %or (D65)(D50)(P40)(A00)(E00)(C00)(P00)(Q00) /kxi [9 10 10 11 9 9 10 9] def /kx kxi xchartl get def xchart4 0 eq xchart4 1 eq or xchart4 4 eq or xchart4 5 eq or {%xchart4=0,1 (x,y); 4,5 (A, B) % (P60) (P55) (P50) (P45) (P40) (P35) (P30) (P25) %or (D65) (D50) (P40) (A00) (E00) (C00) (P00) (Q00) % 0 1 2 3 4 5 6 7 /xci [ 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 ] def /xcti [(0,000) (0,000) (0,000) (0,000) (0,000) (0,000) (0,000) (0,000)] def /Bci [ 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 ] def /Bcti [(1,000) (1,000) (1,000) (1,000) (1,000) (1,000) (1,000) (1,000)] def } if %xchart4=1 xchart4 6 eq {%xchart4=6 (A1, B1) % (P60) (P55) (P50) (P45) (P40) (P35) (P30) (P25) %or (D65) (D50) (P40) (A00) (E00) (C00) (P00) (Q00) % 0 1 2 3 4 5 6 7 /xci [ 0.110 0.110 0.110 0.110 0.110 0.110 0.110 0.110 ] def /xcti [(0,110) (0,110) (0,110) (0,110) (0,110) (0,110) (0,110) (0,110)] def /Bci [ 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 ] def /Bcti [(1,000) (1,000) (1,000) (1,000) (1,000) (1,000) (1,000) (1,000)] def } if %xchart4=6 xchart4 2 eq xchart4 3 eq or xchart4 7 eq or {%xchart4=2,3,7 % (P60) (P55) (P50) (P45) (P40) (P35) (P30) (P25) %or (D65) (D50) (P40) (A00) (E00) (C00) (P00) (Q00) % 0 1 2 3 4 5 6 7 /xci [ 0.110 0.110 0.110 0.110 0.110 0.110 0.110 0.110 ] def /xcti [(0,110) (0,110) (0,110) (0,110) (0,110) (0,110) (0,110) (0,110)] def /Bci [ 0.800 1.000 1.300 2.500 0.900 0.700 1.000 0.700 ] def /Bcti [(0,800) (1,000) (1,300) (2,500) (0,900) (0,700) (1,000) (0,700)] def } if %xchart4=2,3,7 /xc xci xchartl get def /xct xcti xchartl get def /Bc Bci xchartl get def /Bct Bcti xchartl get def xchart4 0 eq xchart4 1 eq or {%xchart4=0,1 4600 1600 moveto TBS (Parame\255) show 4600 1400 moveto TBS (ter:) show TBIS xchart4 0 eq {( N) show} if xchart4 1 eq {( Y) show} if proz_chromaticity_data proz_chromaticity_xy } if %xchart4=0,1 xchart4 2 eq {%xchart4=2 proz_chromaticity_data proz_chromaticity_a2b2 } if %xchart4=2 xchart4 3 eq {%xchart4=3 proz_chromaticity_data proz_chromaticity_a2b2 } if %xchart4=3 %*********************************************************** xchart4 0 eq xchart4 1 eq or {%xchart4=0,1 %only for (x,y) /fakt 4000 def proz_name_range proz_opti 600 400 translate %scala & graphic (x,y) 600 400 0 1 39 {/i exch def %i=0,39 /An XANi i get def /Bn YANi i get def An fakt mul Bn fakt mul i 0 eq {moveto} if i 1 ge i 38 le and {lineto} if i 39 eq {lineto closepath stroke} if } for %i=0,39 XANW fakt mul YANW fakt mul 90 0 360 arc stroke XANW fakt mul 200 sub YANW fakt mul 250 sub moveto TBS TELi xchartl get show TBIS 0 1 4 {/j exch def %j=0,4 j 0 eq {/i 0 def} if %Cm-Rm j 1 eq {/i 6 def} if %Gm-Mm j 2 eq {/i 13 def} if %Ym-Bm j 3 eq {/i kx def} if %Max-Min j 4 eq {%new only for i=40 /i 40 def /k 6 def %Go Xi i XRj k get put Yi i YRj k get put Zi i ZRj k get put } if /SUM Xi i get Yi i get add Zi i get add 0.0001 add def XANCj j Xi i get SUM div put YANCj j Yi i get SUM div put ZANCj j Zi i get SUM div put /An XANCj j get def /Bn YANCj j get def /AnY An fakt mul def %xan /BnY Bn fakt mul def %yan /Paramshow {Yi i get cvishow} bind def j 0 eq {AnY 400 sub BnY 050 sub moveto xchart4 0 eq {(C) show imshow} if xchart4 1 eq {Paramshow} if 1 0 0 0 setcmykcolor} if %Cm j 1 eq {AnY 400 sub BnY 050 sub moveto xchart4 0 eq {(G) show imshow} if xchart4 1 eq {Paramshow} if 1 0 1 0 setcmykcolor} if %Gm j 2 eq {AnY 100 sub BnY 250 sub moveto xchart4 0 eq {(Y) show imshow} if xchart4 1 eq {Paramshow} if 0 0 1 0 setcmykcolor} if %Ym j 3 eq {AnY 500 sub xchart4 1 eq {100 add} if BnY 050 sub moveto xchart4 0 eq {(max) show} if xchart4 1 eq {Paramshow} if 0.3 0 1 0 setcmykcolor} if %Ymax j 4 eq {AnY 370 sub xchart4 1 eq {100 add} if BnY 000 add moveto xchart4 0 eq {(G) show ioshow} if xchart4 1 eq {Paramshow} if 1 0.5 1 0 setcmykcolor} if %Go newpath AnY BnY 90 0 360 arc fill 0 setgray newpath AnY BnY 90 0 360 arc stroke } for %j=0,4 %continue j=0,4 for antagonistic (A) colours 0 1 4 {/j exch def %j=0,4 j 0 eq {/i 0 def} if %Cm-Rm j 1 eq {/i 6 def} if %Gm-Mm j 2 eq {/i 13 def} if %Ym-Bm j 3 eq {/i kx def} if %Max-Min j 4 eq {%new only for i=40 /i 40 def /k 6 def %Mo Xi i XRj k get put %special Yi i YRj k get put Zi i ZRj k get put } if /SUM XK Xi i get sub YK Yi i get sub add ZK Zi i get sub add 0.0001 add abs def XANAj j XK Xi i get sub SUM div put YANAj j YK Yi i get sub SUM div put ZANAj j ZK Zi i get sub SUM div put /An XANAj j get def /Bn YANAj j get def /AnY An fakt mul def %xan /BnY Bn fakt mul def %yan /Paramshow {YK Yi i get sub cvishow} bind def j 0 eq {AnY 150 add BnY 150 sub moveto xchart4 0 eq {(R) show imshow} if xchart4 1 eq {Paramshow} if 0 1 1 0 setcmykcolor} if %Rm j 1 eq {AnY 150 add BnY 050 sub moveto xchart4 0 eq {(M) show imshow} if xchart4 1 eq {Paramshow} if 0 1 0 0 setcmykcolor} if %Mm j 2 eq {AnY 350 sub BnY 100 add moveto xchart4 0 eq {(B) show imshow} if xchart4 1 eq {Paramshow} if 1 1 0 0 setcmykcolor} if %Bm j 3 eq {AnY 150 sub BnY 250 sub moveto xchart4 0 eq {(min) show} if xchart4 1 eq {Paramshow} if 0.7 1 0 0 setcmykcolor} if %Ymin j 4 eq {AnY 250 sub BnY 150 sub moveto xchart4 0 eq {(M) show ioshow} if xchart4 1 eq {Paramshow} if 0 0.5 0 0 setcmykcolor} if %Mo newpath AnY BnY 90 0 360 arc fill 0 setgray newpath AnY BnY 90 0 360 arc stroke } for %j=0,4 -600 -400 translate %scala & graphic (x,y) } if %xchart4=0,1 %************************************************************** xchart4 2 eq xchart4 3 eq or {%xchart4=2,3 %only for (a2,b2), (a2s,b2s) /fakt 1000 def /a2 1.00 def /b2 -0.4 def 500 0 translate proz_name_range proz_opti -500 0 translate proz_param /xtrans8 1300 def /ytrans8 3200 def xtrans8 ytrans8 translate %scala & graphic (a2,b2) 1300 3200 %0600 3100 translate %proz_axis_scales4_7 0 1 39 {/i exch def %i=0,39 /An XANi i get xc sub YANi i get 0.0001 add div def /Bn ZANi i get YANi i get 0.0001 add div 0.4 mul neg % Bc mul def /AnK XANK xc sub YANK 0.0001 add div def /BnK ZANK YANK 0.0001 add div 0.4 mul neg % Bc mul def /AnY An def /BnY Bn def An fakt mul Bn fakt mul i 0 eq {moveto} if i 1 ge i 38 le and {lineto} if i 39 eq {lineto closepath stroke} if } for %i=0,39 XANW xc sub YANW 0.0001 add div fakt mul %a2 ZANW YANW 0.0001 add div 0.4 mul neg fakt mul %b2 90 0 360 arc stroke XANW xc sub YANW 0.0001 add div fakt mul 100 add ZANW YANW 0.0001 add div 0.4 mul neg fakt mul 000 add moveto TBS TELi xchartl get show %10 chromatic colours from continuous colours TBIS 0 1 4 {/j exch def %j=0,4 j 0 eq {/i 0 def} if %Cm-Rm j 1 eq {/i 6 def} if %Gm-Mm j 2 eq {/i 13 def} if %Ym-Bm j 3 eq {/i kx def} if %Max-Min j 4 eq {/i 40 def /k 6 def %Go Xi i XRj k get put %special Yi i YRj k get put Zi i ZRj k get put } if /SUM Xi i get Yi i get add Zi i get add 0.0001 add def XANCj j Xi i get SUM div put YANCj j Yi i get SUM div put ZANCj j Zi i get SUM div put /An XANCj j get xc sub YANCj j get 0.0001 add div def %a2 /Bn ZANCj j get YANCj j get 0.0001 add div 0.4 mul neg %b2 % Bc mul def /AnY An fakt mul def /BnY Bn fakt mul def %dAB, CAB not used /dAB An dup mul Bn dup mul add 0.0001 add sqrt def %/CAB dAB Yi i get mul def /Paramshow {Yi i get cvishow} bind def j 0 eq {AnY 350 sub BnY 100 sub moveto xchart4 2 eq {(C) show imshow} if xchart4 3 eq {Paramshow} if 1 0 0 0 setcmykcolor} if %Cm j 1 eq {AnY 350 sub BnY 150 sub moveto xchart4 2 eq {(G) show imshow} if xchart4 3 eq {Paramshow} if 1 0 1 0 setcmykcolor} if %Gm j 2 eq {AnY 150 sub BnY 200 add moveto xchart4 2 eq {(Y) show imshow} if xchart4 3 eq {Paramshow} if 0 0 1 0 setcmykcolor} if %Ym j 3 eq {AnY 500 sub BnY 050 add moveto xchart4 2 eq {(max) show} if xchart4 3 eq {Paramshow} if 0.3 0 1 0 setcmykcolor} if %Ymax j 4 eq {AnY 050 add BnY 250 sub moveto xchart4 2 eq {(G) show ioshow} if xchart4 3 eq {Paramshow} if 1 0.5 1 0 setcmykcolor} if %Go newpath AnY BnY 90 0 360 arc fill 0 setgray newpath AnY BnY 90 0 360 arc stroke /SUM XK Xi i get sub YK Yi i get sub add ZK Zi i get sub add 0.0001 add def XANCj j XK Xi i get sub SUM div put YANCj j YK Yi i get sub SUM div put ZANCj j ZK Zi i get sub SUM div put /An XANCj j get xc sub YANCj j get 0.0001 add div def %a2 /Bn ZANCj j get YANCj j get 0.0001 add div 0.4 mul neg %b2 % Bc mul def /AnY An fakt mul def %a2 /BnY Bn fakt mul def %b2 %dAB, CAB not used /dAB An dup mul Bn dup mul add 0.0001 add sqrt def %/CAB dAB YK Yi i get sub mul def /Paramshow {YK Yi i get sub cvishow} bind def j 0 eq {AnY 120 add BnY 050 sub moveto xchart4 2 eq {(R) show imshow} if xchart4 3 eq {Paramshow} if 0 1 1 0 setcmykcolor} if %Rm j 1 eq {AnY 120 add BnY 050 sub moveto xchart4 2 eq {(M) show imshow} if xchart4 3 eq {Paramshow} if 0 1 0 0 setcmykcolor} if %Mm j 2 eq {AnY 300 sub BnY 100 add moveto xchart4 2 eq {(B) show imshow} if xchart4 3 eq {Paramshow} if 1 1 0 0 setcmykcolor} if %Bm j 3 eq {AnY 100 sub xchart4 3 eq {100 add} if BnY 250 sub moveto xchart4 2 eq {(min) show} if xchart4 3 eq {Paramshow} if 0.7 1 0 0 setcmykcolor} if %Bmin j 4 eq {AnY 100 sub BnY 250 sub moveto xchart4 2 eq {(M) show ioshow} if xchart4 3 eq {Paramshow} if 0 0.5 0 0 setcmykcolor} if %Mo newpath AnY BnY 90 0 360 arc fill 0 setgray newpath AnY BnY 90 0 360 arc stroke } for %j=0,4 xtrans8 neg ytrans8 neg translate %text & graphic (a2, b2) 1300 3200 %-600 400 translate } if %xchart4=2,3 only for (a2,b2), (a2s,b2s) %******************************************************* xchart4 4 eq xchart4 5 eq or {%xchart4=4,5 %only for (A,B) /fakt 40 def /a2 1.00 def /b2 -0.4 def proz_name_range proz_opti proz_param /xtrans8 3500 def /ytrans8 2100 def xtrans8 ytrans8 translate %text & graphic (A,B) 3500 2100 proz_axis_scales4_7 0 1 39 {/i exch def %i=0,39 /An XANi i get YANi i get 0.0001 add div def /Bn ZANi i get YANi i get 0.0001 add div 0.4 mul neg def /AnK XK YK 0.0001 add div def /BnK ZK YK 0.0001 add div 0.4 mul neg def /AnY An AnK sub Yi i get mul def /BnY Bn BnK sub Yi i get mul def AnY fakt mul BnY fakt mul i 0 eq {moveto} if i 1 ge i 38 le and {lineto} if i 39 eq {lineto closepath stroke} if } for %i=0,39 XANW YANW 0.0001 add div %(a-an)YW XANK YANK 0.0001 add div sub YW mul fakt mul ZANW YANW 0.0001 add div %(b-an)YW ZANK YANK 0.0001 add div sub 0.4 mul neg YW mul fakt mul 90 0 360 arc stroke 0 080 add 0 080 add moveto TBS TELi xchartl get show %10 chromatic colours from continuous colours TBIS 0 1 4 {/j exch def %j=0,4 j 0 eq {/i 0 def} if %Cm-Rm j 1 eq {/i 6 def} if %Gm-Mm j 2 eq {/i 13 def} if %Ym-Bm j 3 eq {/i kx def} if %Max-Min j 4 eq {/i 40 def /k 6 def %Go Xi i XRj k get put %special Yi i YRj k get put Zi i ZRj k get put } if /SUM Xi i get Yi i get add Zi i get add 0.0001 add def XANCj j Xi i get SUM div put YANCj j Yi i get SUM div put ZANCj j Zi i get SUM div put /An XANCj j get YANCj j get 0.0001 add div %2.5(a-an)Y XANK YANK 0.0001 add div sub def /Bn ZANCj j get YANCj j get 0.0001 add div %2.5(b-bn)Y ZANK YANK 0.0001 add div sub 0.4 mul neg def /AnY An Yi i get mul fakt mul def /BnY Bn Yi i get mul fakt mul def %dAB, CAB not used /dAB An dup mul Bn dup mul add 0.0001 add sqrt def /CAB dAB Yi i get mul def /Paramshow {Yi i get cvishow} bind def j 0 eq {AnY 350 sub BnY 050 sub moveto xchart4 4 eq {(C) show imshow} if xchart4 5 eq {Paramshow} if 1 0 0 0 setcmykcolor} if %Cm j 1 eq {AnY 370 sub BnY 050 sub moveto xchart4 4 eq {(G) show imshow} if xchart4 5 eq {Paramshow} if 1 0 1 0 setcmykcolor} if %Gm j 2 eq {AnY 050 sub BnY 150 add moveto xchart4 4 eq {(Y) show imshow} if xchart4 5 eq {Paramshow} if 0 0 1 0 setcmykcolor} if %Ym j 3 eq {AnY 100 sub BnY 300 sub moveto xchart4 4 eq {(max) show} if xchart4 5 eq {Paramshow} if 0.3 0 1 0 setcmykcolor} if %Ymax j 4 eq {AnY 100 sub BnY 250 sub moveto xchart4 4 eq {(G) show ioshow} if xchart4 5 eq {Paramshow} if 1 0.5 1 0 setcmykcolor} if %Go newpath AnY BnY 90 0 360 arc fill 0 setgray newpath AnY BnY 90 0 360 arc stroke /SUM XK Xi i get sub YK Yi i get sub add ZK Zi i get sub add 0.0001 add def XANCj j XK Xi i get sub SUM div put YANCj j YK Yi i get sub SUM div put ZANCj j ZK Zi i get sub SUM div put /An XANCj j get YANCj j get 0.0001 add div %(a-an) XANK YANK 0.0001 add div sub def /Bn ZANCj j get YANCj j get 0.0001 add div %(b-bn) ZANK YANK 0.0001 add div sub 0.4 mul neg def /AnY An YK Yi i get sub mul fakt mul def %(a-an)Y /BnY Bn YK Yi i get sub mul fakt mul def %(b-bn)Y %dAB, CAB not used /dAB An dup mul Bn dup mul add 0.0001 add sqrt def /CAB dAB YK Yi i get sub mul def /Paramshow {YK Yi i get sub cvishow} bind def j 0 eq {AnY 120 add BnY 050 sub moveto xchart4 4 eq {(R) show imshow} if xchart4 5 eq {Paramshow} if 0 1 1 0 setcmykcolor} if %Rm j 1 eq {AnY 120 add BnY 050 sub moveto xchart4 4 eq {(M) show imshow} if xchart4 5 eq {Paramshow} if 0 1 0 0 setcmykcolor} if %Mm j 2 eq {AnY 200 sub BnY 250 sub moveto xchart4 4 eq {(B) show imshow} if xchart4 5 eq {Paramshow} if 1 1 0 0 setcmykcolor} if %Bm j 3 eq {AnY 100 sub BnY 150 add moveto xchart4 4 eq {(min) show} if xchart4 5 eq {Paramshow} if 0.7 1 0 0 setcmykcolor} if %Bmin j 4 eq {AnY 100 sub BnY 150 add moveto xchart4 4 eq {(M) show ioshow} if xchart4 5 eq {Paramshow} if 0 0.5 0 0 setcmykcolor} if %Mo newpath AnY BnY 90 0 360 arc fill 0 setgray newpath AnY BnY 90 0 360 arc stroke } for %j=0,4 xtrans8 neg ytrans8 neg translate %text & graphic (A,B) 3500 2100 } if %xchart4=4,5 %************************************************************** xchart4 6 eq xchart4 7 eq or {%xchart4=6,7 %only for (A1/2,B1/2) /fakt 40 def /a2 1.00 def /b2 -0.4 def proz_name_range proz_opti proz_param /xtrans8 3500 def /ytrans8 2100 def xtrans8 ytrans8 translate %text & graphic (A1/2,B1/2) 3500 2100 proz_axis_scales4_7 0 1 39 {/i exch def %i=0,39 /An XANi i get xc sub YANi i get 0.0001 add div def /Bn ZANi i get YANi i get 0.0001 add div 0.4 mul neg Bc mul def /AnK XANK xc sub YANK 0.0001 add div def /BnK ZANK YANK 0.0001 add div 0.4 mul neg Bc mul def /AnY An AnK sub Yi i get mul def /BnY Bn BnK sub Yi i get mul def AnY fakt mul BnY fakt mul i 0 eq {moveto} if i 1 ge i 38 le and {lineto} if i 39 eq {lineto closepath stroke} if } for %i=0,39 XANW xc sub YANW 0.0001 add div %(a-an)YW XANK xc sub YANK 0.0001 add div sub YW mul fakt mul ZANW YANW 0.0001 add div %(b-an)YW ZANK YANK 0.0001 add div sub 0.4 mul neg Bc mul YW mul fakt mul 90 0 360 arc stroke 0 080 add 0 080 add moveto TBS TELi xchartl get show %10 chromatic colours from continuous colours TBIS 0 1 4 {/j exch def %j=0,4 j 0 eq {/i 0 def} if %Cm-Rm j 1 eq {/i 6 def} if %Gm-Mm j 2 eq {/i 13 def} if %Ym-Bm j 3 eq {/i kx def} if %Max-Min j 4 eq {/i 40 def /k 6 def %Go Xi i XRj k get put %special Yi i YRj k get put Zi i ZRj k get put } if /SUM Xi i get Yi i get add Zi i get add 0.0001 add def XANCj j Xi i get SUM div put YANCj j Yi i get SUM div put ZANCj j Zi i get SUM div put /An XANCj j get xc sub YANCj j get 0.0001 add div %2.5(a-an)Y XANK xc sub YANK 0.0001 add div sub def /Bn ZANCj j get YANCj j get 0.0001 add div %2.5(b-bn)Y ZANK YANK 0.0001 add div sub 0.4 mul neg Bc mul def /AnY An Yi i get mul fakt mul def /BnY Bn Yi i get mul fakt mul def %dAB, CAB not used /dAB An dup mul Bn dup mul add 0.0001 add sqrt def /CAB dAB Yi i get mul def /Paramshow {Yi i get cvishow} bind def j 0 eq {AnY 350 sub BnY 050 sub moveto xchart4 6 eq {(C) show imshow} if xchart4 7 eq {Paramshow} if 1 0 0 0 setcmykcolor} if %Cm j 1 eq {AnY 370 sub BnY 050 sub moveto xchart4 6 eq {(G) show imshow} if xchart4 7 eq {Paramshow} if 1 0 1 0 setcmykcolor} if %Gm j 2 eq {AnY 050 sub BnY 150 add moveto xchart4 6 eq {(Y) show imshow} if xchart4 7 eq {Paramshow} if 0 0 1 0 setcmykcolor} if %Ym j 3 eq {AnY 500 sub xchart4 7 eq {150 add} if BnY 050 add moveto xchart4 6 eq {(max) show} if xchart4 7 eq {Paramshow} if 0.3 0 1 0 setcmykcolor} if %Ymax j 4 eq {AnY 100 sub BnY 150 add moveto xchart4 6 eq {(G) show ioshow} if xchart4 7 eq {Paramshow} if 1 0.5 1 0 setcmykcolor} if %Go newpath AnY BnY 90 0 360 arc fill 0 setgray newpath AnY BnY 90 0 360 arc stroke /SUM XK Xi i get sub YK Yi i get sub add ZK Zi i get sub add 0.0001 add def XANCj j XK Xi i get sub SUM div put YANCj j YK Yi i get sub SUM div put ZANCj j ZK Zi i get sub SUM div put /An XANCj j get xc sub YANCj j get 0.0001 add div %(a-an) XANK xc sub YANK 0.0001 add div sub def /Bn ZANCj j get YANCj j get 0.0001 add div %(b-bn) ZANK YANK 0.0001 add div sub 0.4 mul neg Bc mul def /AnY An YK Yi i get sub mul fakt mul def %(a-an)Y /BnY Bn YK Yi i get sub mul fakt mul def %(b-bn)Y %dAB, CAB not used /dAB An dup mul Bn dup mul add 0.0001 add sqrt def /CAB dAB YK Yi i get sub mul def /Paramshow {YK Yi i get sub cvishow} bind def j 0 eq {AnY 120 add BnY 050 sub moveto xchart4 6 eq {(R) show imshow} if xchart4 7 eq {Paramshow} if 0 1 1 0 setcmykcolor} if %Rm j 1 eq {AnY 120 add BnY 050 sub moveto xchart4 6 eq {(M) show imshow} if xchart4 7 eq {Paramshow} if 0 1 0 0 setcmykcolor} if %Mm j 2 eq {AnY 200 sub BnY 250 sub moveto xchart4 6 eq {(B) show imshow} if xchart4 7 eq {Paramshow} if 1 1 0 0 setcmykcolor} if %Bm j 3 eq {AnY 100 add BnY 150 sub moveto xchart4 6 eq {(min) show} if xchart4 7 eq {Paramshow} if 0.7 1 0 0 setcmykcolor} if %Bmin j 4 eq {AnY 100 sub BnY 250 sub moveto xchart4 6 eq {(M) show ioshow} if xchart4 7 eq {Paramshow} if 0 0.5 0 0 setcmykcolor} if %Mo newpath AnY BnY 90 0 360 arc fill 0 setgray newpath AnY BnY 90 0 360 arc stroke } for %j=0,4 xtrans8 neg ytrans8 neg translate %text & graphic (A1/2,B1/2) 3500 2100 } if %xchart4=6,7 showpage grestore %} for %xchartl=0,7 } for %xchart4=0,7 } for %xcolorl=0,0 %%Trailer %line 259 %%EndDocument EndEPSF grestore gsave BeginEPSF 86 SHAl add MM 020 STAl add MM translate 12 /Times-ISOL1 FS -9 MM -7 MM moveto ( ) show 10 /Times-ISOL1 FS 53 MM 1 MM moveto ( ) show 1 1 scale -77 -91 translate %%BeginDocument: Bild 18 %!PS-Adobe-3.0 EPSF-3.0 egw41-8a enh31-8n %%BoundingBox: 70 83 228 206 %START PDFDE011.EPS /pdfmark18 where {pop} {userdict /pdfmark18 /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/egw4/egw4.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 pdfmark18 [ /View [ /Fit ] /DOCVIEW pdfmark18 %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 /Courier findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /Courier-ISOL1 exch definefont pop /Courier-Oblique findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /CourierI-ISOL1 exch definefont pop /Courier-Bold findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /CourierB-ISOL1 exch definefont pop /Courier-BoldOblique findfont dup length dict begin {1 index /FID ne {def} {pop pop} ifelse }forall /Encoding ISOLatin1Encoding def currentdict end /CourierBI-ISOL1 exch definefont pop /TG {350 /Times-ISOL1 FS} bind def /TM {280 /Times-ISOL1 FS} bind def /TK {240 /Times-ISOL1 FS} bind def /TS {200 /Times-ISOL1 FS} bind def /TL {160 /Times-ISOL1 FS} bind def /TIG {350 /TimesI-ISOL1 FS} bind def /TIM {280 /TimesI-ISOL1 FS} bind def /TIK {240 /TimesI-ISOL1 FS} bind def /TIS {200 /TimesI-ISOL1 FS} bind def /TIL {160 /TimesI-ISOL1 FS} bind def /TBG {350 /TimesB-ISOL1 FS} bind def /TBM {280 /TimesB-ISOL1 FS} bind def /TBK {240 /TimesB-ISOL1 FS} bind def /TBS {200 /TimesB-ISOL1 FS} bind def /TBL {160 /TimesB-ISOL1 FS} bind def /TBIG {350 /TimesBI-ISOL1 FS} bind def /TBIM {280 /TimesBI-ISOL1 FS} bind def /TBIK {240 /TimesBI-ISOL1 FS} bind def /TBIS {200 /TimesBI-ISOL1 FS} bind def /TBIL {160 /TimesBI-ISOL1 FS} bind def /SG {350 /Symbol FS} bind def /SM {280 /Symbol FS} bind def /SK {240 /Symbol FS} bind def /SS {200 /Symbol FS} bind def /SL {160 /Symbol FS} bind def %********************************************************* /proz_param {%proz_param 4650 3800 moveto TBS (Parame\255) show 4650 3600 moveto TBS (ter:) show xchart4 2 eq xchart4 4 eq or xchart4 6 eq or {TBIS ( N) show} if xchart4 3 eq xchart4 5 eq or xchart4 7 eq or {TBIS ( Y) show xcolorl 1 eq {xcol10_BS} if} if /kx kxi xchartl get def /kxx 445 kx 5 mul add def 4150 300 moveto TBS (max: ) show kxx cvishow (_770) show 4150 080 moveto TBS (min: 380_) show kxx cvishow /index2_7 {%index2_7 xchart4 2 eq xchart4 3 eq or xchart4 7 eq or {0 -50 rmoveto TBL (2) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if } if xchart4 4 eq xchart4 5 eq or {0 -50 rmoveto TBL () show 0 50 rmoveto xcolorl 1 eq {xcol10_BS} if } if xchart4 6 eq {0 -50 rmoveto TBL (1) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if } if } bind def %index2_7 /index2_7n {%index2_7n xchart4 2 eq xchart4 3 eq or xchart4 7 eq or {0 -50 rmoveto TBL (2,n) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if } if xchart4 4 eq xchart4 5 eq or {0 -50 rmoveto TBL (n) show 0 50 rmoveto xcolorl 1 eq {xcol10_BS} if } if xchart4 6 eq {0 -50 rmoveto TBL (1,n) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if } if } bind def %index2_7n xchart4 1 le xchart4 4 ge or {%xchart4<=1, xchart4>=4 /x0p 50 def x0p 3800 moveto TBIS (XYZ) show 0 -50 rmoveto TBL (W) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if TBS (=) show XK cvsshow2 (, ) show YK cvsshow2 (, ) show ZK cvsshow2 x0p 3550 moveto TBIS (A) show index2_7 TBS ( = 2,5 \050) show TBIS (a) show index2_7 TBS ( - ) show TBIS (a) show index2_7n TBS (\051 ) show TBIS (Y) show xcolorl 1 eq {xcol10_BS} if x0p 3300 moveto TBIS (B) show index2_7 TBS ( = 2,5 ) show TBIS (B) show 0 -50 rmoveto TBL (c) show 0 50 rmoveto TBS ( \050) show TBIS (b) show index2_7 TBS ( - ) show TBIS (b) show index2_7n TBS (\051 ) show TBIS (Y) show xcolorl 1 eq {xcol10_BS} if x0p 3050 moveto TBIS (a) show index2_7 TBS ( = ) show TBIS (a) show 0 -50 rmoveto TBL (20) show 0 50 rmoveto TBS ( [) show TBIS (\050x) show xcolorl 1 eq {xcol10_BS} if TBS (-) show TBIS (x) show 0 -50 rmoveto TBL (c) show 0 50 rmoveto TBIS (\051/y) show xcolorl 1 eq {xcol10_BS} if TBS (]) show x0p 2800 moveto TBIS (b) show index2_7 TBS ( = ) show TBIS (b) show 0 -50 rmoveto TBL (20) show 0 50 rmoveto TBS ( [) show TBIS (z) show xcolorl 1 eq {xcol10_BS} if TBIS (/y) show xcolorl 1 eq {xcol10_BS} if TBS (]) show x0p 2550 moveto TBIS (a) show 0 -50 rmoveto TBL (20) show 0 50 rmoveto TBS ( = 1, ) show TBIS (b) show 0 -50 rmoveto TBL (20) show 0 50 rmoveto TBS ( = -0,4) show x0p 2300 moveto TBIS (x) show 0 -50 rmoveto TBL (c) show 0 50 rmoveto TBS ( = ) show xct show (, ) show TBIS (B) show 0 -50 rmoveto TBL (c) show 0 50 rmoveto TBS ( = ) show Bct show x0p 2080 moveto TBIS (n) show TBS ( = ) show TELi xchartl get show x0p 1860 moveto TBIS (C) show TBL 0 -50 rmoveto (AB,) show 0 50 rmoveto index2_7 TBS (=[) show TBIS (A) show index2_7 TBL -20 100 rmoveto (2) show 0 -100 rmoveto TBS (+) show TBIS (B) show index2_7 TBL -20 100 rmoveto (2) show 0 -100 rmoveto TBS (]) show TBL 0 100 rmoveto (1/2) show 0 -100 rmoveto } if %xchart4<=1, xchart4>=4 } bind def %proz_param %**************************************************************** /proz_opti {%proz_opti TBS 0 0 0 1 setcmyk_olvcolor /xchart12 xchart4 12 mul def xtexti xchart12 0 add get ytexti xchart12 0 add get moveto TBS (10 Optimalfarben (o)) showde %0egw41-7 02581 (10 optimal colours (o)) showen %1egw41-7 02581 (10 colores \363ptimos (o)) showes %2egw41-7 02581 (10 couleurs optimales (o)) showfr %3egw41-7 02581 (10 colori ottimi (o)) showit %4egw41-7 02581 (10 optimal colours (o)) showjp %5egw41-7 02581 TBIS (, Y) show TBL 0 -60 rmoveto (W) show 0 60 rmoveto xchartl 1 eq {xcol10KBS} if TBS YF 0 eq {(=100) show}{(=90) show} ifelse TBIS (, Y) show TBL 0 -60 rmoveto (N) show 0 60 rmoveto xchartl 1 eq {xcol10KBS} if TBS YF 0 eq {(=0) show}{(=3,6) show} ifelse xtexti xchart12 1 add get ytexti xchart12 1 add get moveto (8 von maximalem (m)) showde %0egw41-7 03581 (8 of maximum (m)) showen %1egw41-7 03581 (8 de m\341ximo (m)) showes %2egw41-7 03581 (8 de la maximum (m)) showfr %3egw41-7 03581 (8 di massimo (m)) showit %4egw41-7 03581 (8 of maximum (m)) showjp %5egw41-7 03581 TBIS ( C) show TBL 0 -60 rmoveto (AB) show 0 60 rmoveto TBS ( f\374r ) showde %0egw41-7 03581 ( for ) showen %1egw41-7 03581 ( bajo ) showes %2egw41-7 03581 ( pour ) showfr %3egw41-7 03581 ( per ) showit %4egw41-7 03581 ( for ) showjp %5egw41-7 03581 TELi xchartl get show xtexti xchart12 2 add get ytexti xchart12 2 add get moveto xchart4 0 eq xchart4 1 eq or {%xchart4=0,1 (in der Normfarbtafel) showde %0egw41-7 04581 (in the chromaticity diagram) showen %1egw41-7 04581 (en el diagrama de chromaticidad) showes %2egw41-7 04581 (dans le diagramme de chromaticit\351) showfr %3egw41-7 04581 (nel diagramma di cromaticit\340) showit %4egw41-7 04581 (in the chromaticity diagram) showjp %5egw41-7 04581 TBIS ( (x, y)) show } if %xchart4=0,1 xchart4 2 eq xchart4 3 eq or {%xchart4=2,3 (in linearer Farbtafel ) showde %0egw41-7 06581 (in linear chromaticity diagram ) showea %1egw41-7 06581 TBS (\050) show TBIS (a) show TBL 0 -50 rmoveto (2) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if TBIS (, b) show TBL 0 -50 rmoveto (2) show 0 50 rmoveto xcolorl 1 eq {xcol10_BS} if TBS (\051) show } if %xchart4=2,3 xchart4 4 eq xchart4 5 eq or {%xchart4=4,5 (in Buntwertdiagramm) showde %0egw41-7 08581 (in chromatic value diagram) showen %1egw41-7 08581 (en el diagrama valor crom\341tico) showes %2egw41-7 08581 (dans la valeur chromatique le diagramme) showfr %3egw41-7 08581 (nel diagramma di valore cromatico) showit %4egw41-7 08581 (in chromatic value diagram) showjp %5egw41-7 08581 TBIS ( (A, B)) show } if %xchart4=4,5 xchart4 6 eq {%xchart4=6 (in Buntwertdiagram) showde %0egw41-7 10581 (in chromatc value diagram) showen %1egw41-7 10581 (en el diagrama croma) showes %2egw41-7 10581 (dans le diagramme de chroma) showfr %3egw41-7 10581 (nel diagramma di chroma) showit %4egw41-7 10581 (in chromactic value diagram) showjp %5egw41-7 10581 TBIS ( \050A) show 0 -50 rmoveto TBL (1) show 0 50 rmoveto TBS (, ) show TBIS (B) show 0 -50 rmoveto TBL (1) show 0 50 rmoveto TBS (\051) show } if %xchart4=6 xchart4 7 eq {%xchart4=7 (in Buntwertdiagram) showde %0egw41-7 11581 (in chromatic value diagram) showen %1egw41-7 11581 (en el diagrama croma) showes %2egw41-7 11581 (dans le diagramme de chroma) showfr %3egw41-7 11581 (nel diagramma di chroma) showit %4egw41-7 11581 (in chroma diagram) showjp %5egw41-7 11581 TBIS ( \050A) show 0 -50 rmoveto TBL (2) show 0 50 rmoveto TBS (, ) show TBIS (B) show 0 -50 rmoveto TBL (2) show 0 50 rmoveto TBS (\051) show } if %xchart4=7 } bind def %proz_opti %**************************************************************************** /proz_name_range {%proz_name_range /xchart12 xchart4 12 mul def xtexti xchart12 3 add get ytexti xchart12 3 add get moveto TBS (Name & Spektralbereich) showde %0egw41-7 00581 (name and spectral range) showen %1egw41-7 00581 (Nombre y gama espectral) showes %2egw41-7 00581 (Nom et la gamma spectrale) showfr %3egw41-7 00581 (Nome e la gamma spettrale) showit %4egw41-7 00581 (name and spectral range) showjp %5egw41-7 00581 xtexti xchart12 4 add get ytexti xchart12 4 add get moveto TBIS FARBE 0 get show TBL 0 -40 rmoveto FARBE 1 get show 0 40 rmoveto TBIS FARBE 2 get show xtexti xchart12 5 add get ytexti xchart12 5 add get moveto TBIS FARBE 3 get show TBL 0 -40 rmoveto FARBE 4 get show 0 40 rmoveto TBIS FARBE 5 get show xtexti xchart12 6 add get ytexti xchart12 6 add get moveto TBIS FARBE 6 get show TBL 0 -40 rmoveto FARBE 7 get show 0 40 rmoveto TBIS FARBE 8 get show xtexti xchart12 7 add get ytexti xchart12 7 add get moveto TBIS FARBE 9 get show TBL 0 -40 rmoveto FARBE 10 get show 0 40 rmoveto TBIS FARBE 11 get show xtexti xchart12 8 add get ytexti xchart12 8 add get moveto TBIS FARBE 12 get show TBL 0 -40 rmoveto FARBE 13 get show 0 40 rmoveto TBIS FARBE 14 get show xtexti xchart12 9 add get ytexti xchart12 9 add get moveto TBIS FARBE 15 get show TBL 0 -40 rmoveto FARBE 16 get show 0 40 rmoveto TBIS FARBE 17 get show xtexti xchart12 10 add get ytexti xchart12 10 add get moveto TBIS FARBE 18 get show TBL 0 -40 rmoveto FARBE 19 get show 0 40 rmoveto TBIS FARBE 20 get show xtexti xchart12 11 add get ytexti xchart12 11 add get moveto TBIS FARBE 21 get show TBL 0 -40 rmoveto FARBE 22 get show 0 40 rmoveto TBIS FARBE 23 get show } bind def %proz_name_range %**************************************************************** /proz_axis_scales4_7 {%proz_axis_scales4_7 %axis and scales 0 0 0 1 setcmyk_olvcolor -1000 0 moveto 2800 0 rlineto stroke 0 -1880 moveto 0 3600 rlineto stroke 1800 100 sub 50 moveto 100 -50 rlineto -100 -50 rlineto closepath fill 0 50 sub 1800 100 sub moveto 50 100 rlineto 50 -100 rlineto closepath fill /xt10x 5 array def /yt10x 5 array def /xt10x [() ( -50) ( ) ( ) ( 100)] def /yt10x [(-100) ( ) ( ) ( ) (100)] def 0 0 0 1 setcmyk_olvcolor 1 1 4 {/i exch def %i=0,4 x-axis -1600 i 800 mul add -75 moveto 0 150 rlineto stroke -1800 i 800 mul add -250 moveto TBS xt10x i get show i 4 eq {-1600 i 800 mul add 0 moveto xchart4 4 eq { %xchart4=4 -100 200 rmoveto TBIK (A) show xcolorl 1 eq {xcol10_BS} if } if %xchart4=4 xchart4 5 eq { %xchart4=5 -100 200 rmoveto TBIK (A) show xcolorl 1 eq {xcol10_BS} if } if %xchart4=5 xchart4 6 eq { %xchart4=6 -200 200 rmoveto TBIK (A) show -10 -50 rmoveto TBS (1) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if } if %xchart4=6 xchart4 7 eq { %xchart4=7 -200 200 rmoveto TBIK (A) show -10 -50 rmoveto TBS (2) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if } if %xchart4=7 } if } for %i=0,4 0 1 4 {/i exch def %i=0,4 y-axis -75 -1600 i 800 mul add moveto 150 0 rlineto stroke 100 -1650 i 800 mul add 100 sub moveto TBS yt10x i get show i 4 eq {0 -1650 i 800 mul add moveto xchart4 4 eq { %xchart4=4 100 150 rmoveto TBIK (B) show TM xcolorl 1 eq {xcol10_BS} if } if %xchart4=4 xchart4 5 eq { %xchart4=5 100 150 rmoveto TBIK (B) show xcolorl 1 eq {xcol10_BS} if 0 1150 add 1600 0200 add moveto } if %xchart4=5 xchart4 6 eq { %xchart4=6 100 150 rmoveto TBIK (B) show -10 -50 rmoveto TBS (1) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if } if %xchart4=6 xchart4 7 eq { %xchart4=7 100 150 rmoveto TBIK (B) show -10 -50 rmoveto TBS (2) show 0 50 rmoveto xcolorl 1 eq {xcol10KBS} if } if %xchart4=7 } if } for %i=0,4 } bind def %proz_axis_scales4_7 %*********************************************************** /proz_chromaticity_data {%BEG proz_chromaticity_data /FL 0.00001 def /DOW 82 array def /DOWZ 17 array def /F02Z 51 array def /F10Z 51 array def %TRISTIMULUS VALUES FOR PURPLE COLORS from 'dmyy'KRPROG.FOR %FOR 02- AND 10-DEGREE-OBSERVER, ILLUMINANT E 0 1 79 {/i exch def %i=0,79 = 380_775 DOW i 380 i 5 mul add put } for %i=0,79 /DOWZ %17 data [700 -495 -500 -505 -510 -515 -520 -525 -530 -535 -540 -545 -550 -555 -560 -565 400] def /F02Z %3x17 data 700 ... 400 [.01136 .01141 .01158 .01169 .01176 .01182 .01187 .01191 .01195 .01199 .01204 .01210 .01219 .01232 .01254 .01300 .01431 .00410 .00404 .00383 .00369 .00359 .00352 .00346 .00342 .00337 .00331 .00325 .00317 .00306 .00289 .00262 .00205 .00040 .00000 .00118 .00507 .00754 .00930 .01064 .01167 .01256 .01346 .01445 .01562 .01709 .01910 .02210 .02718 .03765 .06785] def /F10Z %3x17 data 700 ... 400 [.00958 .01015 .01037 .01053 .01065 .01075 .01085 .01096 .01108 .01122 .01139 .01163 .01201 .01268 .01416 .02078 .01911 .00372 .00361 .00357 .00355 .00352 .00351 .00349 .00347 .00345 .00342 .00339 .00335 .00328 .00316 .00289 .00170 .00200 .00000 .00517 .00718 .00858 .00972 .01063 .01150 .01245 .01354 .01478 .01635 .01856 .02194 .02795 .04136 .10106 .08601] def %*************************************************** /FXYZ 240 array def /XSi 82 array def /YSi 82 array def /ZSi 82 array def /XANSi 82 array def /YANSi 82 array def /ZANSi 82 array def /AANSi 82 array def %actual data for plot, purple colours /BANSi 82 array def 0 1 239 {/i exch def %i=0,239 FXYZ i xcolorl 0 eq {F2 i get put} {F10 i get put} ifelse } for %i=0,239 /YKSUM 0 def %For CIE Illuminant E 0 1 79 {/i exch def %i=0,1,79 /YKSUM YKSUM FXYZ 80 i add get add def } for %i=0,1,79 0 1 79 {/i exch def %i=0,1,79 XSi i FXYZ 00 i add get YKSUM div 100 mul put YSi i FXYZ 80 i add get YKSUM div 100 mul put ZSi i FXYZ 160 i add get YKSUM div 100 mul put /SUM XSi i get YSi i get add ZSi i get add 0.0001 add def XANSi i XSi i get SUM div put YANSi i YSi i get SUM div put ZANSi i ZSi i get SUM div put xchart4 1 le {%xchart4<=1 AANSi i XANSi i get put BANSi i YANSi i get put } if %xchart4<=1 xchart4 2 eq {%xchart4=2 AANSi i XANSi i get xc sub YANSi i get FL add div put BANSi i ZANSi i get YANSi i get FL add div -0.4 mul put } if %xchart4=2 xchart4 3 eq {%xchart4=3 AANSi i XANSi i get xc sub YANSi i get FL add div put BANSi i ZANSi i get YANSi i get FL add div -0.4 mul put } if %xchart4=3 } for %i=0,1,79 /XZi 17 array def /YZi 17 array def /ZZi 17 array def /XANZi 17 array def /YANZi 17 array def /ZANZi 17 array def /AANZi 17 array def %actual data for plot, purple colours /BANZi 17 array def 0 1 16 {/i exch def %i=0,16 %for illuminant E: S(lamdda=100) XZi i xcolorl 0 eq {F02Z} {F10Z} ifelse 00 i add get YKSUM div 100 mul put YZi i xcolorl 0 eq {F02Z} {F10Z} ifelse 17 i add get YKSUM div 100 mul put ZZi i xcolorl 0 eq {F02Z} {F10Z} ifelse 34 i add get YKSUM div 100 mul put /SUM XZi i get YZi i get add ZZi i get add 0.0001 add def XANZi i XZi i get SUM div put YANZi i YZi i get SUM div put ZANZi i ZZi i get SUM div put xchart4 1 le {%xchart4<=1 AANZi i XANZi i get put BANZi i YANZi i get put } if %xchart4<=1 xchart4 2 eq {%xchart4=2 AANZi i XANZi i get xc sub YANZi i get FL add div put BANZi i ZANZi i get YANZi i get FL add div -0.4 mul put } if %xchart4=2 xchart4 3 eq {%xchart4=3 AANZi i XANZi i get xc sub YANZi i get FL add div put BANZi i ZANZi i get YANZi i get FL add div -0.4 mul put } if %xchart4=3 } for %i=0,16 /FL 0.00001 def } bind def %END proz_chromaticity_data %************************************************ /proz_chromaticity_xy {%BEG proz_chromaticity_xy /xtrans8 600 def /ytrans8 400 def xtrans8 ytrans8 translate %for scala and graphic (x,y) 0600 0400 0 0 moveto 4000 0 rlineto stroke 0 0 moveto 0 3200 rlineto stroke %! 100 S-Einheiten = 2000 Skalen-Einheiten TBS 0 -50 moveto 0 100 rlineto stroke 800 -50 moveto 0 100 rlineto stroke 1600 -50 moveto 0 100 rlineto stroke 2400 -50 moveto 0 100 rlineto stroke 3200 -50 moveto 0 100 rlineto stroke 4000 -50 moveto 0 100 rlineto stroke -100 -300 moveto (0,0) show 700 -300 moveto (0,2) show 1500 -300 moveto (0,4) show 2300 -300 moveto (0,6) show 3100 -300 moveto (0,8) show 3900 -300 moveto (1,0) show %! 100 S-Einheiten = 2000 Skalen-Einheiten -50 0 moveto 100 0 rlineto stroke -50 800 moveto 100 0 rlineto stroke -50 1600 moveto 100 0 rlineto stroke -50 2400 moveto 100 0 rlineto stroke -50 3200 moveto 100 0 rlineto stroke -450 -80 moveto (0,0) show -450 720 moveto (0,2) show -450 1520 moveto (0,4) show -450 2320 moveto (0,6) show -450 3120 moveto (0,8) show TIS 4200 150 moveto (x) show xcolorl 1 eq {TL 0 -40 rmoveto (10) show 0 40 rmoveto TIS} if -300 2800 moveto (y) show xcolorl 1 eq {TL 0 -40 rmoveto (10) show 0 40 rmoveto TIS} if TBIS 2600 150 moveto xcolorl 0 eq {(CIE 1931) show} if xcolorl 1 eq {(CIE 1964) show} if newpath /fakt 4000 def 5 1 60 {/i exch def %i=5,60 AANSi i get fakt mul BANSi i get fakt mul i 05 eq {moveto} if i 06 ge i 59 le and {lineto} if i 60 eq {lineto closepath stroke} if } for %i=5,60 /xytshift 320 array def %min 4x65 /xytshift [ 0 000 000 (380) %0 0 000 000 (385) %1 0 000 000 (390) %2 0 000 000 (395) %3 1 -170 -170 (400) %4 0 000 000 (405) %5 0 000 000 (410) %6 0 000 000 (415) %7 0 000 000 (420) %8 0 000 000 (425) %9 0 000 000 (430) %10 0 000 000 (435) %11 0 000 000 (440) %12 0 000 000 (445) %13 1 -300 -050 (450) %14 S 0 000 000 (455) %15 0 000 000 (460) %16 0 000 000 (465) %17 0 000 000 (470) %18 1 -300 -030 (475) %19 0 000 000 (480) %20 0 000 000 (485) %21 1 -330 -050 (490) %22 1 -270 000 (495) %23 M=S 1 -300 -050 (500) %24 1 -300 -050 (505) %25 1 -330 -050 (510) %26 L=S 1 -300 050 (515) %27 1 -100 070 (520) %28 1 100 000 (525) %29 1 000 000 ( ) %30 1 050 000 (535) %31 1 000 000 ( ) %32 M 1 000 000 ( ) %33 1 050 030 (550) %34 1 000 000 ( ) %35 1 050 030 (560) %36 1 000 000 ( ) %37 1 050 030 (570) %38 L 1 000 000 ( ) %39 1 050 030 (580) %40 1 050 050 ( ) %41 1 050 030 (590) %42 1 050 050 ( ) %43 1 050 030 (600) %44 0 000 000 ( ) %45 1 050 070 (610) %46 0 000 000 ( ) %47 1 050 050 (620) %48 0 000 000 ( ) %49 0 000 000 (630) %50 0 000 000 ( ) %51 1 050 030 (640) %52 0 000 000 (645) %53 0 000 000 (650) %54 0 000 000 (655) %55 0 000 000 (660) %56 0 000 000 (665) %57 0 000 000 (670) %58 0 000 000 (675) %59 0 000 000 (680) %60 0 000 000 (685) %61 0 000 000 (690) %62 0 000 000 (695) %63 1 100 -50 (700) %64 ] def 0 1 64 {/i exch def %i=5,1,60 /i40 i 4 mul def xytshift i40 get 1 eq {%xytshift=1 0 0 0 0 setcmykcolor AANSi i get fakt mul BANSi i get fakt mul 30 0 360 arc fill %400,425,...,700 0 0 0 1 setcmykcolor AANSi i get fakt mul BANSi i get fakt mul 30 0 360 arc stroke %400,425,...,700 } if %xytshift=1 } for %i=5,1,60 TBIL 0 1 59 {/i exch def %i=0,65 /i40 i 4 mul def /i41 i40 1 add def /i42 i40 2 add def /i43 i40 3 add def xytshift i40 get 1 eq {%xytshift=1 AANSi i get fakt mul xytshift i41 get add BANSi i get fakt mul xytshift i42 get add moveto xytshift i43 get show } if %xytshift=1 } for %i=0,65 newpath /xytshiftZ 320 array def %min 4x65 /xytshiftZ [ 1 100 -50 (700) %0 see normal 1 050 -100 (495c,E) %1 1 050 -100 (500c,E) %2 0 050 -100 (505c,E) %3 1 100 -60 (510c,E) %4 0 050 -100 (515c,E) %5 0 050 -100 (520c,E) %6 1 050 -100 (525c,E) %7 0 050 -100 (530c,E) %8 0 050 -100 (535c,E) %9 0 050 -100 (540c,E) %10 0 050 -100 (545c,E) %11 1 050 -100 (550c,E) %12 0 050 -100 (555c,E) %13 0 050 -100 (560c,E) %14 S 1 050 -100 (565c,E) %15 0 -100 -150 (400) %16 see normal ] def 0 1 16 {/i exch def %i=5,5,60 /i40 i 4 mul def xytshiftZ i40 get 1 eq {%xytshiftZ=1 0 0 0 0 setcmykcolor AANZi i get fakt mul BANZi i get fakt mul 30 0 360 arc fill %400,405,...,700 0 0 0 1 setcmykcolor AANZi i get fakt mul BANZi i get fakt mul 30 0 360 arc stroke %400,405,...,700 } if %xytshiftZ=1 } for %i=0,1,16 TBIL 0 1 16 {/i exch def %i=0,16 /i40 i 4 mul def /i41 i40 1 add def /i42 i40 2 add def /i43 i40 3 add def xytshiftZ i40 get 1 eq {%xytshiftZ=1 AANZi i get fakt mul xytshiftZ i41 get add BANZi i get fakt mul xytshiftZ i42 get add moveto xytshiftZ i43 get show } if %xytshiftZ=1 } for %i=0,16 xtrans8 neg ytrans8 neg translate %scala & graphic (x,y) 0600 0400 } bind def %END proz_chromaticity_xy %************************************************ /proz_chromaticity_a2b2 {%BEG proz_chromaticity_a2b2 /FL 0.00001 def /fakt 1000 def /xtrans8 0500 def /ytrans8 3200 def xtrans8 ytrans8 translate %scala & graphic (a2,b2) 0500 3200 0 400 moveto 4000 0 rlineto stroke 0 400 moveto 0 -3600 rlineto stroke %! 100 S-Einheiten = 2000 Skalen-Einheiten TBS 0 350 moveto 0 100 rlineto stroke 800 350 moveto 0 100 rlineto stroke 1600 350 moveto 0 100 rlineto stroke 2400 350 moveto 0 100 rlineto stroke 3200 350 moveto 0 100 rlineto stroke 4000 350 moveto 0 100 rlineto stroke -150 500 moveto (-0,8) show 650 500 moveto (0,0) show 1450 500 moveto (0,8) show 2250 500 moveto (1,6) show 3050 500 moveto (2,4) show 3850 500 moveto (3,2) show %! 100 S-Einheiten = 2000 Skalen-Einheiten -50 0 moveto 100 0 rlineto stroke -50 -800 moveto 100 0 rlineto stroke -50 -1600 moveto 100 0 rlineto stroke -50 -2400 moveto 100 0 rlineto stroke -50 -3200 moveto 100 0 rlineto stroke -450 -100 moveto ( 0,0) show -450 -900 moveto (-0,8) show -450 -1700 moveto (-1,6) show %-450 -2500 moveto (-2,4) show -175 -3050 moveto 90 rotate TBIS (b) show TL 0 -40 rmoveto (2) show 0 40 rmoveto TIS 20 0 rmoveto xcolorl 1 eq {TL 0 -40 rmoveto (,10) show 0 40 rmoveto TIS} if TBS (=-0,40) show 20 0 rmoveto TBIS (z) show 20 0 rmoveto xcolorl 1 eq {TL 0 -40 rmoveto (10) show 0 40 rmoveto TIS} if TBIS (/y) show xcolorl 1 eq {TL 0 -40 rmoveto (10) show 0 40 rmoveto TIS} if -90 rotate 3450 150 moveto TBIS (a) show 20 0 rmoveto TL 0 -40 rmoveto (2) show 0 40 rmoveto TIS 20 0 rmoveto xcolorl 1 eq {TL 0 -40 rmoveto (,10) show 0 40 rmoveto TIS} if TBS (=\050) show 20 0 rmoveto TBIS (x) show 20 0 rmoveto xcolorl 1 eq {TL 0 -40 rmoveto (10) show 0 40 rmoveto TIS} if TBS (-0,110\051/) show 20 0 rmoveto TBIS (y) show 20 0 rmoveto xcolorl 1 eq {TL 0 -40 rmoveto (10) show 0 40 rmoveto TIS} if xtrans8 neg ytrans8 neg translate %scala & graphic (a2,b2) 0500 3200 newpath /fakt 1000 def /xtrans8 1300 def /ytrans8 3200 def xtrans8 ytrans8 translate %scala & graphic (a2,b2) 1300 3200 5 1 60 {/i exch def %i=5,60 AANSi i get fakt mul BANSi i get fakt mul i 05 eq {moveto} if i 06 ge i 59 le and {lineto} if i 60 eq {lineto closepath stroke} if } for %i=5,60 /xytshift 320 array def %min 4x65 /xytshift [ 0 000 000 (380) %0 0 000 000 (385) %1 0 000 000 (390) %2 0 000 000 (395) %3 1 -170 -170 (400) %4 0 000 000 (405) %5 0 000 000 (410) %6 0 000 000 (415) %7 0 000 000 (420) %8 0 000 000 (425) %9 0 000 000 (430) %10 0 000 000 (435) %11 0 000 000 (440) %12 0 000 000 (445) %13 1 -300 -050 (450) %14 S 0 000 000 (455) %15 0 000 000 (460) %16 0 000 000 (465) %17 0 000 000 (470) %18 1 -300 -030 (475) %19 0 000 000 (480) %20 0 000 000 (485) %21 1 -330 -050 (490) %22 1 -270 000 (495) %23 M=S 1 -300 -050 (500) %24 0 -300 -050 (505) %25 1 -330 -050 (510) %26 L=S 0 -300 050 (515) %27 1 -150 070 (520) %28 0 100 000 (525) %29 0 000 000 ( ) %30 0 050 000 (535) %31 1 -80 070 (540) %32 M 0 000 000 ( ) %33 0 000 030 (550) %34 0 000 000 ( ) %35 1 -80 070 (560) %36 0 000 000 ( ) %37 0 050 000 (570) %38 L 0 000 000 ( ) %39 1 050 070 (580) %40 0 050 050 ( ) %41 0 050 030 (590) %42 0 050 050 ( ) %43 1 -80 070 (600) %44 0 000 000 ( ) %45 0 050 070 (610) %46 0 000 000 ( ) %47 1 -80 050 (620) %48 0 000 000 ( ) %49 0 000 000 (630) %50 0 000 000 ( ) %51 1 -80 030 (640) %52 0 000 000 (645) %53 0 000 000 (650) %54 0 000 000 (655) %55 0 000 000 (660) %56 0 000 000 (665) %57 0 000 000 (670) %58 0 000 000 (675) %59 0 000 000 (680) %60 0 000 000 (685) %61 0 000 000 (690) %62 0 000 000 (695) %63 1 100 -50 (700) %64 ] def 0 1 64 {/i exch def %i=5,1,60 /i40 i 4 mul def xytshift i40 get 1 eq {%xytshift=1 0 0 0 0 setcmykcolor AANSi i get fakt mul BANSi i get fakt mul 30 0 360 arc fill %400,425,...,700 0 0 0 1 setcmykcolor AANSi i get fakt mul BANSi i get fakt mul 30 0 360 arc stroke %400,425,...,700 } if %xytshift=1 } for %i=5,1,60 TBIL 0 1 59 {/i exch def %i=0,65 /i40 i 4 mul def /i41 i40 1 add def /i42 i40 2 add def /i43 i40 3 add def xytshift i40 get 1 eq {%xytshift=1 AANSi i get fakt mul xytshift i41 get add BANSi i get fakt mul xytshift i42 get add moveto xytshift i43 get show } if %xytshift=1 } for %i=0,65 newpath /xytshiftZ 320 array def %min 4x65 /xytshiftZ [ 1 100 -50 (700) %0 see normal 1 050 -100 (495c,E) %1 1 050 -100 (500c,E) %2 0 050 -100 (505c,E) %3 1 100 -60 (510c,E) %4 0 050 -100 (515c,E) %5 0 050 -100 (520c,E) %6 1 050 -100 (525c,E) %7 0 050 -100 (530c,E) %8 0 050 -100 (535c,E) %9 0 050 -100 (540c,E) %10 0 050 -100 (545c,E) %11 1 050 -100 (550c,E) %12 0 050 -100 (555c,E) %13 0 050 -100 (560c,E) %14 S 1 050 -100 (565c,E) %15 0 -100 -150 (400) %16 see normal ] def 0 1 16 {/i exch def %i=5,5,60 /i40 i 4 mul def xytshiftZ i40 get 1 eq {%xytshiftZ=1 0 0 0 0 setcmykcolor AANZi i get fakt mul BANZi i get fakt mul 30 0 360 arc fill %400,405,...,700 0 0 0 1 setcmykcolor AANZi i get fakt mul BANZi i get fakt mul 30 0 360 arc stroke %400,405,...,700 } if %xytshiftZ=1 } for %i=0,1,16 TBIL 0 1 16 {/i exch def %i=0,16 /i40 i 4 mul def /i41 i40 1 add def /i42 i40 2 add def /i43 i40 3 add def xytshiftZ i40 get 1 eq {%xytshiftZ=1 AANZi i get fakt mul xytshiftZ i41 get add BANZi i get fakt mul xytshiftZ i42 get add moveto xytshiftZ i43 get show } if %xytshiftZ=1 } for %i=0,16 xtrans8 neg ytrans8 neg translate %scala & graphic (a2,b2) 1300 3200 } bind def %END proz_chromaticity_a2,b2 %***************************************************************** %%EndProlog gsave %lanindL2.EPS START 20000505 /lanind 0 def /lantex [(G) (E) (S) (F) (I) (J) (M)] def /showde {0 lanind eq {show} {pop} ifelse} bind def /showen {1 lanind eq {show} {pop} ifelse} bind def /showes {2 lanind eq {show} {pop} ifelse} bind def /showfr {3 lanind eq {show} {pop} ifelse} bind def /showit {4 lanind eq {show} {pop} ifelse} bind def /showjp {5 lanind eq {show} {pop} ifelse} bind def /showea {1 lanind le {show} {pop} ifelse} bind def /lanindf where {pop /lanind1 lanindf def /lanind2 lanindf def /lanindd laninddf def} {/lanind1 0 def /lanind2 0 def} ifelse /colormf where {pop /colorm1 colormf def /colorm2 colormf def /colormd colormdf def} {/colorm1 0 def} ifelse /deintpf where {pop /deintp1 deintpf def /deintp2 deintpf def /deintpd deintpdf def} {/deintp1 0 def} ifelse /xcolorf where {pop /xcolor1 xcolorf def /xcolor2 xcolorf def /xcolord xcolordf def} {/xcolor1 0 def} ifelse /xchartf where {pop /xchart1 xchartf def /xchart2 xchartf def /xchartd xchartdf def /xchartm xchart2f xchart1f sub 1 add def} {/xchart1 1 def /xchartm 1 def} ifelse /xchart3f where {pop /xchart3 xchart3f def} {/xchart3 0 def} ifelse /xchart4f where {pop /xchart4 xchart4f def} {/xchart4 0 def} ifelse /pchartf where {pop /pchart1 pchartf def /pchart2 pchartf def /pchartd pchartdf def} {/pchart1 3 def} ifelse /colsepf where {pop /colsep1 colsepf def /colsep2 colsepf def /colsepd colsepdf def} {/colsep1 0 def} ifelse /pmetamf where {pop /pmetam1 pmetamf def /pmetam2 pmetamf def /pmetamd pmetamdf def} {/pmetam1 0 def} ifelse %either defaul values for xchart=0 or values for xchart=1 /lanind lanind1 def % /colorm colorm1 def % /deintp deintp1 def % /xcolor xcolor1 def % /xchart xchart1 def % /pchart pchart1 def % /colsep colsep1 def % /pmetam pmetam1 def % colorm 0 eq deintp 0 eq and {/Txx (d) def} if %colorm=0, deintp=0 colorm 0 eq deintp 1 eq and {/Txx (e) def} if %colorm=0, deintp=1 colorm 1 eq deintp 0 eq and {/Txx (dd) def} if %colorm=1, deintp=0 colorm 1 eq deintp 1 eq and {/Txx (de) def} if %colorm=1, deintp=1 xchart 0 eq {/Txx (-) def} if %always independent of intended output gsave %LANINDL2 END /cvishow {cvi 6 string cvs show ( ) show} def /cvsshow1 {10 mul cvi 0.1 mul 9 string cvs show ( ) show} def /cvsshow2 {100 mul cvi 0.01 mul 9 string cvs show ( ) show} def /cvsshow3 {1000 mul cvi 0.001 mul 9 string cvs show ( ) show} def /cvsshow4 {10000 mul cvi 0.0001 mul 9 string cvs show ( ) show} def /cvsshow5 {100000 mul cvi 0.00001 mul 9 string cvs show ( ) show} def /TELi 8 array def /xchart8 1 def %0:Pxx, 1:Dxx xchart8 0 eq {%xchart8=0 Pxx /TELi [(P60) (P55) (P50) (P45) (P40) (P35) (P30) (P25)] def %7 illumin. } if %xchart8=0 xchart8 1 eq {%xchart8=1 Dxx /TELi [(D65) (D50) (P40) (A00) (E00) (C00) (P00) (Q00)] def %7 illumin. } if %xchart8=1 /SD65 82 array def %380 bis 775 mit deltalambda=05 /SD50 82 array def %380 bis 775 mit deltalambda=05 /SP40 82 array def %380 bis 775 mit deltalambda=05 /SA00 82 array def %380 bis 775 mit deltalambda=05 /SE00 82 array def %380 bis 775 mit deltalambda=05 /SC00 82 array def %380 bis 775 mit deltalambda=05 /SP00 82 array def %380 bis 775 mit deltalambda=05 /SQ00 82 array def %380 bis 775 mit deltalambda=05 /SDAK 82 array def %380 bis 775 mit deltalambda=05 /RA 82 array def %380 bis 770 nm /F2 240 array def %3 x 80 Daten fuer Bereich 380 bis 770nm /F2N 240 array def %normiert auf Y=100 fuer D65 und 10nm /F10 240 array def %3 x 80 Daten fuer Bereich 380 bis 770nm %C %C LITERATURQUELLEN LICHTARTEN %C SA,SC,SD65, CIE-DOKUMENT NR.15 FARBMESSUNG, 1971 %C TABELLE 1.1.1, SEITE 81 %C SD55,SD75, CIE-DOKUMENT NR.15 FARBMESSUNG, 1971 %C TABELLE 1.1.4, SEITE 85 %C LINEAR INTERPOLIERT VON 5 ZU 5NM %C SG,SP,SXE, DIN 5033, BLATT 7 ,SEITE 8-9 %C AUSGABE 1966 /SD65 %80 data 5 nm [50.0 52.3 54.6 68.7 82.8 87.1 91.5 92.5 93.4 90.1 86.7 95.8 104.9 110.9 117.0 117.4 117.8 116.3 114.9 115.4 115.9 112.4 108.8 109.1 109.4 108.6 107.8 106.3 104.8 106.2 107.7 106.0 104.4 104.2 104.0 102.0 100.0 98.2 96.3 96.1 95.8 92.2 88.7 89.3 90.0 89.8 89.6 88.6 87.7 85.5 83.3 83.5 83.7 81.9 80.0 80.1 80.2 81.2 82.3 80.3 78.3 74.0 69.7 70.7 71.6 73.0 74.3 68.0 61.6 65.7 69.9 72.5 75.1 69.3 63.6 55.0 46.4 56.6 66.8 65.1] def /SD50 %80 data 5 nm CIE 15.3, Seite 30; aus JE540-1N.PS [24.5 27.2 29.9 39.6 49.3 52.9 56.5 58.3 60.0 58.9 57.8 66.3 74.8 81.0 87.2 88.9 90.6 91.0 91.4 93.2 95.1 93.5 92.0 93.8 95.7 96.2 96.6 96.8 97.1 99.6 102.1 101.4 100.8 101.5 102.3 101.2 100.0 98.9 97.7 98.3 98.9 96.2 93.5 95.6 97.7 98.5 99.3 99.2 99.0 97.4 95.7 97.3 98.9 97.3 95.7 96.9 98.2 100.6 103.0 101.1 99.1 93.3 87.4 89.5 91.6 92.2 92.9 84.9 76.9 81.7 86.5 89.5 92.6 85.4 78.2 68.0 57.7 70.3 82.9 0.0] def %0.0 not used /SA00 %80 data 5 nm CIE 15.3 Seite 30; aus JE540-1N.PS [9.80 10.90 12.09 13.35 14.71 16.15 17.68 19.29 20.99 22.79 24.67 26.64 28.70 30.85 33.09 35.41 37.81 40.30 42.87 45.52 48.24 51.04 53.91 56.85 59.86 62.93 66.06 69.25 72.50 75.79 79.13 82.52 85.95 89.41 92.91 96.44 100.00 103.58 107.18 110.80 114.44 118.08 121.73 125.39 129.04 132.70 136.35 139.99 143.62 147.24 150.84 154.42 157.98 161.52 165.03 168.51 171.96 175.38 178.77 182.12 185.43 188.70 191.93 195.12 198.26 201.36 204.41 207.41 210.36 213.27 216.12 218.92 221.67 224.36 227.00 229.59 232.12 234.59 237.01 239.37 0.0] def %0.0 not used % AUS BILDPLA.FOR aus vrbam/wrpos:KRPROG.FOR, 5987-6023 5.10.92 %C PROGRAMM ZUR BERECHNUNG DER RELATIVEN SPEKTRALEN STRAHLUNGSVERTEI- %C LUNG EINES HOHLRAUMSTRAHLERS ALS FUNKTION DER WELLENLAENGE LAMDA %C BEI GEGEBENER TEMPERATUR T %C VERWENDETE VARIABLE %C T TEMPERATUR %C C2 PLANCKSCHE KONSTANTE (=1.4388 CM K (1967)) %C LAMDA(I) WELLENLAENGE %C S(I) STRAHLUNGSVERTEILUNG DES HOHLRAUMSTRAHLERS %C %C LITERATUR OFFIZIELLE EMPFEHLUNGEN DER CIE,DEUTSCHE VERSION, %C CA. 1969, SEITE 21 UND TABELLE 1.1.1 %C %SDP4 82 array def %380 bis 775 mit deltalambda=05 % DO 50 I=1,54 % 50 S(I)=100. % 1*(560./FLOAT(LAMDA(I)))**5 % 2*(EXP(C2/(560.*10.**(-7)*T))-1.) % 3/(EXP(C2/(FLOAT(LAMDA(I))*10.**(-7)*T))-1.) %new CIE 15.3:2004, Eq. (3.1) page 2 %S(I) = [100{560/lambda}**5] [exp{(c2*10**7)/(TNC*560 )} - 1] % /[exp{(c2*10**7)/(TNC*lambda)} - 1] % exp = e {...} = 2.71 {...} %/TNC 2848 def %NLA /EE 2.718281 def %e=mac pocket calculator /C2 1.4350000 10 7 exp mul def /lamd 82 array def xchart8 1 eq {%xchart8=1 Dxx /TNC 4000 def %******************************************** 0 1 79 {%i=0,79 /i exch def /lambda 380 i 5 mul add def lamd i lambda put /E1 560 lambda div 5 exp def /E4 C2 TNC 560 mul div def /E5 C2 TNC lambda mul div def /E6 EE E4 exp def /E7 EE E5 exp def SP40 i E1 100 mul E6 1 sub E7 1 sub div mul put } for %i=0,79 } if %xchart8=1 Dxx %****************************************** xchart8 0 eq {%xchart8=0 Pxx %defined only for xchart8=0 Pxx /TNCj 8 array def /TNCj [6000 5500 5000 4500 4000 3500 3000 2500] def /SP60 82 array def %380 bis 775 mit deltalambda=05 /SP55 82 array def %380 bis 775 mit deltalambda=05 /SP50 82 array def %380 bis 775 mit deltalambda=05 /SP45 82 array def %380 bis 775 mit deltalambda=05 /SP40 82 array def %380 bis 775 mit deltalambda=05 /SP35 82 array def %380 bis 775 mit deltalambda=05 /SP30 82 array def %380 bis 775 mit deltalambda=05 /SP25 82 array def %380 bis 775 mit deltalambda=05 0 1 7 {/j exch def %j=0,7 0 1 79 {%i=0,79 /i exch def /lambda 380 i 5 mul add def lamd i lambda put /E1 560 lambda div 5 exp def /E4 C2 TNCj j get 560 mul div def /E5 C2 TNCj j get lambda mul div def /E6 EE E4 exp def /E7 EE E5 exp def j 0 eq {SP60 i} if j 1 eq {SP55 i} if j 2 eq {SP50 i} if j 3 eq {SP45 i} if j 4 eq {SP40 i} if j 5 eq {SP35 i} if j 6 eq {SP30 i} if j 7 eq {SP25 i} if E1 100 mul E6 1 sub E7 1 sub div mul put } for %i=0,79 } for %j=0,7 } if %xchart8=0 %************************************************* /SE00 %80 data 5 nm [100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0] def %0.0 not used /SC00 %80 data 5 nm [ 33.00 39.92 47.40 55.17 63.30 71.81 80.60 89.53 98.10 105.80 112.40 117.75 121.50 123.45 124.00 123.60 123.10 123.30 123.80 124.09 123.90 122.92 120.70 116.90 112.10 106.98 102.30 98.81 96.90 96.78 98.00 99.94 102.10 103.95 105.20 105.67 105.30 104.11 102.30 100.15 97.80 95.43 93.20 91.22 89.70 88.83 88.40 88.19 88.10 88.06 88.00 87.86 87.80 87.99 88.20 88.20 87.90 87.22 86.30 85.30 84.00 82.21 80.20 78.24 76.30 74.36 72.40 70.40 68.30 66.30 64.40 62.80 61.50 60.20 59.20 58.50 58.10 58.00 58.20 58.50 ] def %0.0 not used 0 1 79 {/i exch def %i=0,79 /lamda 380 i 5 mul add def SP00 i SE00 i get lamda 560 div mul put SQ00 i SE00 i get 1120 lamda sub 560 div mul put } for %i=0,79 %C LITERATURQUELLEN SPEKTRALWERTE %C F2 CIE-DOKUMENT NR.15 FARBMESSUNG, 1971 %C TABELLE 2.1, SEITE 93-102 /F2 %3x80 data [.001368 .002236 .004243 .007650 .01431 .02319 .04351 .07763 .1344 .2148 .2839 .3285 .3483 .3481 .3362 .3187 .2908 .2511 .1954 .1421 .09564 .05795 .03201 .01470 .0049 .0024 .0093 .0291 .06327 .1096 .1655 .2257 .2904 .3597 .4334 .5121 .5945 .6784 .7621 .8425 .9163 .9786 1.0263 1.0567 1.0622 1.0456 1.0026 .9384 .8544 .7514 .6424 .5419 .4479 .3608 .2835 .2187 .1649 .1212 .0874 .0636 .04677 .03290 .02270 .01584 .01136 .00811 .00579 .004109 .002899 .002049 .001440 .0009999 .0006901 .000476 .0003323 .0002348 .0001662 .0001174 .00008308 .00005871 .000039 .000064 .00012 .000217 .000396 .00064 .00121 .00218 .004 .0073 .0116 .01684 .023 .0298 .0380 .048 .06 .0739 .09098 .1126 .139 .1693 .208 .2586 .323 .4073 .503 .6082 .71 .7932 .862 .9149 .954 .9803 .995 1.0 .995 .9786 .952 .9154 .870 .8163 .757 .6949 .631 .5668 .503 .4412 .381 .321 .265 .217 .175 .1382 .107 .0816 .061 .04458 .032 .0232 .017 .01192 .00821 .005723 .004102 .002929 .002091 .001484 .001047 .00074 .00052 .0003611 .0002492 .0001719 .00012 .0000848 .00006 .0000424 .00003 .0000212 .00645 .01055 .02005 .03621 .06785 .1102 .2074 .3713 .6456 1.0391 1.3856 1.623 1.7471 1.7826 1.7721 1.7441 1.6692 1.5281 1.2876 1.0419 .8130 .6162 .4652 .3533 .2720 .2123 .1582 .1117 .07825 .05725 .04216 .02984 .0203 .0134 .00875 .00575 .0039 .00275 .0021 .0018 .00165 .0014 .0011 .0010 .0008 .0006 .00034 .00024 .00019 .0001 .00005 .00003 .00002 .00001 % 26*0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 %10 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 %20 0.0 0.0 0.0 0.0 0.0 0.0 %26 ] def /F10 %3x80 data [.00016 .0006624 .002362 .007242 .01911 .0434 .08474 .1406 .2045 .2647 .3147 .3577 .3837 .3867 .3707 .343 .3023 .2541 .1956 .1323 .08051 .04107 .01617 .005132 .003816 .01544 .03746 .07136 .1177 .173 .2365 .3042 .3768 .4516 .5298 .6161 .7052 .7938 .8787 .9512 1.0142 1.0743 1.1185 1.1343 1.124 1.0891 1.0305 .9507 .8563 .7549 .6475 .5351 .4316 .3437 .2683 .2043 .1526 .1122 .08126 .05793 .04085 .02862 .019941 .01384 .0100 .006605 .004552 .003145 .002175 .001506 .001045 .0007274 .0005083 .0003564 .000251 .0001777 .0001264 .00009015 .00006453 .00004634 .00001736 .00007156 .0002534 .0007685 .002004 .004509 .008756 .01446 .02139 .0295 .03868 .0496 .06208 .0747 .08946 .1063 .1282 .1528 .1852 .2199 .2536 .2977 .3391 .3954 .4608 .5314 .6067 .6857 .7618 .8233 .8752 .9238 .962 .9822 .9918 .9991 .9973 .9824 .9555 .9152 .8689 .8256 .7774 .7203 .6583 .5939 .528 .4618 .3981 .3395 .2835 .2282 .1798 .1402 .1076 .08119 .06028 .0441 .0318 .0226 .0159 .01113 .007749 .0053751 .0037177 .002565 .001768 .001222 .0008462 .0005864 .0004074 .000284 .0001987 .0001395 .00009843 .00006982 .00004974 .00003554 .00002549 .00001834 .0007048 .002928 .01048 .03234 .08601 .1971 .3894 .6568 .9725 1.2825 1.5535 1.7985 1.9673 2.0273 1.9948 1.9007 1.7454 1.5549 1.3176 1.0302 .7721 .5701 .4152 .3024 .2185 .1592 .112 .08225 .06071 .04305 .03045 .02058 .01368 .007918 .003988 .001091 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 %10 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 %20 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 %30 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 %40 0.0 0.0 0.0 0.0 %44 ] def %calculation of transformation data /FARBE 30 array def /FARBE [(R) (m) ( 561_770) %00 (Y) (m) ( 520_770) %01 (G) (m) ( 475_573) %02 (C) (m) ( 380_561) %03 (B) (m) ( 380_520) %04 (M) (m) ( 573_475) %05 (G) (o) ( 520_570) %06 (M) (o) ( 570_520) %07 (W) (0) ( 380_770) %08 (N) (0) ( 380_770) %09 ] def /xshift 10 array def %max 6 device + 4 elementary /yshift 10 array def /colori 10 array def /RX0 720 array def %9x80 /RX0 [ %(%Rm 00 560_770) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0036 0036 0036 0036 0036 0036 0468 0900 0900 0900 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %(%Ym 01 520_770) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0036 0036 0036 0036 0036 0036 0036 0036 0468 0900 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %(%Gm 02 475_575) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0036 0036 0036 0036 0036 0036 0036 0036 0036 0468 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0900 0900 0900 0900 0900 0900 0900 0900 0900 0468 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %(%Cm 03 380_560) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0900 0900 0900 0900 0900 0900 0468 0036 0036 0036 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %(%Bm 04 380_520) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0900 0900 0900 0900 0900 0900 0900 0900 0468 0036 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %(%Mm 05 575_475) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0900 0900 0900 0900 0900 0900 0900 0900 0900 0468 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0036 0036 0036 0036 0036 0036 0036 0036 0036 0468 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %(%Go 06 520_570) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0036 0036 0036 0036 0036 0036 0036 0036 0468 0900 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0900 0900 0900 0900 0900 0900 0900 0900 0468 0036 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %(%Mo 07 570_520) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0900 0900 0900 0900 0900 0900 0900 0900 0468 0036 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0036 0036 0036 0036 0036 0036 0036 0036 0468 0900 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %(%W0(r=0,900) 08 380_770) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0900 0900 0900 0900 0900 0900 0900 0900 0900 0900 %(%N0(r=0,036) 09 380_770) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0036 0036 0036 0036 0036 0036 0036 0036 0036 0036 ] def /xcol10_BS {TBL 0 -50 rmoveto (10) show 0 50 rmoveto TBS} bind def /xcol10KBS {TBL 0 -50 rmoveto (,10) show 0 50 rmoveto TBS} bind def /xcolorl xcolor def 0 1 0 {/xcolorl exch def %xcolorl=0,0 xcolorl 1 eq {0 1 239 {/i exch def %i=0,239 F2 i F10 i get put } for %i=0,239 } if /YKSUM 0 def %For CIE Illuminant E 0 1 79 {/i exch def %i=0,1,79 /YKSUM YKSUM F2 80 i add get add def } for %i=0,1,79 /F2N 240 array def 0 1 79 {/i exch def %i=0,1,79 F2N 00 i add F2 00 i add get YKSUM div 100 mul put F2N 80 i add F2 80 i add get YKSUM div 100 mul put F2N 160 i add F2 160 i add get YKSUM div 100 mul put } for %i=0,1,79 /FXN 82 array def %FXN 0 = F2N imax /FYN 82 array def /FZN 82 array def %defines FXN, FYN, FZN 0 to 79 0 1 79 {/i exch def %i=0,79 FXN i F2N 000 i add get put FYN i F2N 080 i add get put FZN i F2N 160 i add get put } for %i=0,79 %special wavelength range with complementary colours for E? /FXD 63 array def /FYD 63 array def /FZD 63 array def /DOW 63 array def 00 1 60 {/i exch def %i=0,60 %range 400..700nm FXD i FXN 005 i add get put FYD i FYN 005 i add get put FZD i FZN 005 i add get put DOW i 400 i 5 mul add put %range 400 to 700 } for %i=0,60 %for interpolation FXD 61 FXD 60 get put FYD 61 FYD 60 get put FZD 61 FZD 60 get put FXD 62 FXD 60 get put FYD 62 FYD 60 get put FZD 62 FZD 60 get put /FAD 63 array def /FBD 63 array def /FCD 63 array def 20 setlinewidth /xdel 1005 def /ydel 395 def /x0 050 def /x1 -150 def /Xi 82 array def %80 spectral colours 380 to 775nm /Yi 82 array def /Zi 82 array def /XANi 82 array def /YANi 82 array def /ZANi 82 array def /AANi 82 array def %actual data for plot, spectral colours /BANi 82 array def /FXNZ 17 array def /FYNZ 17 array def /FZNZ 17 array def /XZi 17 array def /YZi 17 array def /ZZi 17 array def /XANZi 17 array def /YANZi 17 array def /ZANZi 17 array def /AANZi 17 array def %actual data for plot, purple colours /BANZi 17 array def /XRj 10 array def %10 spectral or max 10 device colours /YRj 10 array def /ZRj 10 array def /XANRj 10 array def /YANRj 10 array def /ZANRj 10 array def /XSj 10 array def %10 spectral or max 10 device atagonistic colours /YSj 10 array def /ZSj 10 array def /XANSj 10 array def /YANSj 10 array def /ZANSj 10 array def /XCj 10 array def %10 spectral from continuous colours /YCj 10 array def /ZCj 10 array def /XANCj 10 array def /YANCj 10 array def /ZANCj 10 array def /XAj 10 array def %10 spectral from continuous colours /YAj 10 array def /ZAj 10 array def /XANAj 10 array def /YANAj 10 array def /ZANAj 10 array def /RAk 82 array def 7 1 7 {/xchart4 exch def %xchart4=0,7 /xchartl xchart def %0 1 7 {/xchartl exch def %xchartl=0,7 %/YF 0 def %for normalization 1 /YF 1 def %for normalization 0,900 YF 0 eq {/YFR 1.00 def}{/YFR 0.90 def} ifelse gsave 5 /Times-ISOL1 FS /cvishow {cvi 6 string cvs show} def %75 85 moveto %lanind cvishow (-) show %colorm cvishow %deintp cvishow %xcolorl cvishow %xchart cvishow %pchart cvishow %colsep cvishow (-L) show pmetam cvishow 5 /Times-ISOL1 FS 72 86 moveto (egw41-8a enh31-8n) show 72 90 translate 0.010 MM dup scale 25 setlinewidth 0 0 0 0 setcmyk_olvcolor 0 0 moveto 6000 0 rlineto 0 4000 rlineto 6000 neg 0 rlineto closepath fill 0 0 moveto 6000 0 rlineto 0 4000 rlineto -6000 0 rlineto closepath clip 0 0 0 1 setcmyk_olvcolor 0 0 moveto 6000 0 rlineto 0 4000 rlineto 6000 neg 0 rlineto closepath stroke %calculation of XW,YW,ZW for 8 illuminants Dxx or Pxx 0 1 79 {/i exch def %i=0,79 SDAK i xchart8 0 eq {%xchart8=0 Pxx xchartl 0 eq {SP60 i get put} if xchartl 1 eq {SP55 i get put} if xchartl 2 eq {SP50 i get put} if xchartl 3 eq {SP45 i get put} if xchartl 4 eq {SP40 i get put} if xchartl 5 eq {SP35 i get put} if xchartl 6 eq {SP30 i get put} if xchartl 7 eq {SP25 i get put} if }%xchart8=0 Pxx {%xchart8=1 Dxx xchartl 0 eq {SD65 i get put} if xchartl 1 eq {SD50 i get put} if xchartl 2 eq {SP40 i get put} if xchartl 3 eq {SA00 i get put} if xchartl 4 eq {SE00 i get put} if xchartl 5 eq {SC00 i get put} if xchartl 6 eq {SP00 i get put} if xchartl 7 eq {SQ00 i get put} if } ifelse %xchart8=1 Dxx } for %i=0,79 /YKSUM 0 def 0 1 79 {/i exch def %i=0,1,79 /YKSUM YKSUM SDAK i get F2 80 i add get mul add def } for %i=0,1,79 0 1 79 {/i exch def %i=0,1,79 F2N 00 i add SDAK i get F2 00 i add get mul YKSUM div 100 mul put F2N 80 i add SDAK i get F2 80 i add get mul YKSUM div 100 mul put F2N 160 i add SDAK i get F2 160 i add get mul YKSUM div 100 mul put } for %i=0,1,79 %XW,YW,ZW for white /XW 0 def /YW 0 def /ZW 0 def 0 1 079 {/i exch def %i=0,79 /XW XW F2N 00 i add get add def /YW YW F2N 80 i add get add def /ZW ZW F2N 160 i add get add def } for %i=0,79 /SUMW XW YW add ZW add def %for D65, D50, P40, A00, E00 /XANW XW SUMW div def /YANW YW SUMW div def /ZANW ZW SUMW div def /AANW XW YW 0.0001 add div def /BANW ZW YW 0.0001 add div 0.4 mul neg def %************************************************ %XYZRj for 10 reflections 0 1 09 {/j exch def %j=0,9 %10 Reflections /jx j 80 mul def 0 1 79 {/i exch def %i=0,79 RAk i RX0 jx i add get 1000 div put } for %i=0,79 /XR 0 def /YR 0 def /ZR 0 def 0 1 079 {/i exch def %i=0,79 /XR XR F2N 00 i add get RAk i get mul add def /YR YR F2N 80 i add get RAk i get mul add def /ZR ZR F2N 160 i add get RAk i get mul add def } for %i=0,79 XRj j XR put YRj j YR put ZRj j ZR put /SUMR XR YR add ZR add def XANRj j XR SUMR 0.0001 add div put YANRj j YR SUMR 0.0001 add div put ZANRj j ZR SUMR 0.0001 add div put } for %j=0,9 %******************************************* 0 1 62 {/i exch def %i=0,62 FAD i FXD i get put FBD i FYD i get put FCD i FZD i get put } for %i=0,62 % FXU(1)=FF(2)*U(3)-FF(3)*U(2) % FXU(2)=FF(3)*U(1)-FF(1)*U(3) % FXU(3)=FF(1)*U(2)-FF(2)*U(1) % SUBROUTINE DOWEL (F,FXU,IMAX,IO) % DIMENSION F(99,3),FXU(3) % I=1 % T2=F(1,1)*FXU(1)+F(1,2)*FXU(2)+F(1,3)*FXU(3) % IF(T2) 1,1,4 % 1 T1=T2 % I=I+1 % T2=F(I,1)*FXU(1)+F(I,2)*FXU(2)+F(I,3)*FXU(3) % IF(T2) 1,1,2 % 2 IF(T1) 3,3,1 % 3 IO=I-1 % RETURN % 4 T1=F(IMAX,1)*FXU(1)+F(IMAX,2)*FXU(2)+F(IMAX,3)*FXU(3) % IF(T1) 5,5,1 % 5 IO=IMAX % RETURN % END %********************************************************* /proc_ABC_KNP_FWERTiX {%BEG proc_ABC_KNP_FWERT %input FAD,FBD,FCD, KNP %output FWERTiX/Y/Z (i=1,4) kNP 1 ge {/FWERT1X FAD kNP 1 sub get def /FWERT1Y FBD kNP 1 sub get def /FWERT1Z FCD kNP 1 sub get def} {/FWERT1X FAD 0 get def %again 400nm for i=0 /FWERT1Y FBD 0 get def /FWERT1Z FCD 0 get def} ifelse /FWERT2X FAD kNP get def /FWERT2Y FBD kNP get def /FWERT2Z FCD kNP get def /FWERT3X FAD kNP 1 add get def /FWERT3Y FBD kNP 1 add get def /FWERT3Z FCD kNP 1 add get def /FWERT4X FAD kNP 2 add get def /FWERT4Y FBD kNP 2 add get def /FWERT4Z FCD kNP 2 add get def } bind def %END proc_ABC_KNP_FWERTiX %********************************************************* /proc_XIE_TN1 {%BEG proc_XIE_TN1 %input XIE, FWERTiX/Y/Z (i=1,4) %output TN1 /A1N XIE 1 XIE sub mul XIE 2 sub mul 6 div def /A2N XIE 1 add XIE 1 sub mul XIE 2 sub mul 0.5 mul def /A3N XIE 1 add XIE mul 2 XIE sub mul 0.5 mul def /A4N XIE 1 add XIE mul XIE 1 sub mul 6 div def /FNX A1N FWERT1X mul A2N FWERT2X mul add A3N FWERT3X mul add A4N FWERT4X mul add def /FNY A1N FWERT1Y mul A2N FWERT2Y mul add A3N FWERT3Y mul add A4N FWERT4Y mul add def /FNZ A1N FWERT1Z mul A2N FWERT2Z mul add A3N FWERT3Z mul add A4N FWERT4Z mul add def /TNX FNX FXU1 mul FNY FXU2 mul add FNZ FXU3 mul add def } bind def %END proc_XIE_TN1 %********************************************************* /WEL1 60 array def %irregular definition /WEL2 60 array def %irregular definition %0 1 2 3 4 5 6 7 8 9 /WEL1 [405 435 450 460 465 470 475 480 485 490 495 500 510 520 530 540 545 550 555 560 ] def 0 1 19 {/k exch def %k=0,19 %wavelength 405..700nm /j WEL1 k get 400 sub 5 idiv def /LP k def /LPP 20.5 k add def /FF1 FXD j get def %start at 405..700nm /FF2 FYD j get def /FF3 FZD j get def /U1 XW def /U2 YW def /U3 ZW def /FXU1 FF2 U3 mul FF3 U2 mul sub def /FXU2 FF3 U1 mul FF1 U3 mul sub def /FXU3 FF1 U2 mul FF2 U1 mul sub def /INP -1 def /IPN -1 def %assumption jump from TN to TP from negativ to positiv 0 1 60 {/i exch def %i=1,60 /TN FAD i get FXU1 mul FBD i get FXU2 mul add FCD i get FXU3 mul add def /TP FAD i 1 add get FXU1 mul FBD i 1 add get FXU2 mul add FCD i 1 add get FXU3 mul add def TN 0 le TP 0 gt and {/INP i def exit} if } for %i=1,60 0 1 60 {/i exch def %i=1,60 /TN FAD i get FXU1 mul FBD i get FXU2 mul add FCD i get FXU3 mul add neg def /TP FAD i 1 add get FXU1 mul FBD i 1 add get FXU2 mul add FCD i 1 add get FXU3 mul add neg def TN 0 le TP 0 gt and {/IPN i def exit} if } for %i=1,60 %********************************************************* /kNP INP def kNP 0 ge {%kNP>=0 proc_ABC_KNP_FWERTiX %input FAD,KNP, output FWERTiXYZ (i=1,4) /XIE1 0 def %start values TN=0 for XIE1, TP>0 for XIE2 /XIE2 1 def 0 1 9 {/mk exch def %mk=0,9 /XIE XIE1 XIE2 add 0.5 mul def proc_XIE_TN1 %input XIE, ouput TN1 TNX 0 le {/XIE1 XIE def /TN1 TNX def} {/XIE2 XIE def /TP1 TNX def} ifelse } for %mk=0,9 /XIE XIE1 XIE2 add 0.5 mul def /DOWXIE1 DOW INP get DOW INP 1 add get DOW INP get sub XIE mul add def /XIENP XIE def } if %kNP>=0 %********************************************************* /kNP IPN def kNP 0 ge {%kNP>=0 proc_ABC_KNP_FWERTiX %input FAD,KNP, output FWERTiXYZ (i=1,4) /XIE1 0 def %start values TN=0 for XIE1, TP>0 for XIE2 /XIE2 1 def /FXU1 FXU1 neg def /FXU2 FXU2 neg def /FXU3 FXU3 neg def 0 1 9 {/mk exch def %mk=0,9 /XIE XIE1 XIE2 add 0.5 mul def proc_XIE_TN1 %input XIE, ouput TN1 TNX 0 le {/XIE1 XIE def /TN1 TNX def} {/XIE2 XIE def /TP1 TNX def} ifelse } for %mk=0,9 /XIE XIE1 XIE2 add 0.5 mul def /DOWXIE2 DOW IPN get DOW IPN 1 add get DOW IPN get sub XIE mul add def /XIEPN XIE def } if %kNP>=0 %********************************************************* 0 1 79 {/i exch def %i=0,79 RA i 0.036 put } for %i=0,79 INP -1 eq {/i1 0 def} %380nm {/i1 INP 5 add def} ifelse %405..700nm IPN -1 eq {/i2 79 def} %770nm {/i2 IPN 5 add def} ifelse %405..700nm i2 i1 ge {%i1i2 i1 1 79 {/i exch def %i=i1,79 RA i 0.900 put } for %i=i1,79 0 1 i2 {/i exch def %i=0,i2 RA i 0.900 put } for %i=0,i2 } ifelse %i1>i2 %correction (0.900+0.036)/2=0.648 i2 i1 ge {%i1i2 RA i1 0.468 put RA i2 0.468 XIEPN 0.5 sub add put } ifelse %i1>i2 %*************************************************** /X 0 def /Y 0 def /Z 0 def 0 1 079 {/i exch def %i=0,79 /X X F2N 00 i add get RA i get mul add def /Y Y F2N 80 i add get RA i get mul add def /Z Z F2N 160 i add get RA i get mul add def } for %i=0,79 /SUM X Y add Z add def /XAN X SUM 0.0001 add div def /YAN Y SUM 0.0001 add div def /ZAN Z SUM 0.0001 add div def %************************************************* 0 0 0 1 setcmyk_olvcolor 0 1 1 {/Icom exch def %Icom=0,1 Icom 0 eq {%Icom=0,1 Xi k X put Yi k Y put Zi k Z put XANi k XAN put YANi k YAN put ZANi k ZAN put }%Icom=0 {%Icom=1 /kP 20 k add def Xi kP XW X sub put Yi kP YW Y sub put Zi kP ZW Z sub put /SUMi Xi kP get Yi kP get add Zi kP get add def XANi kP Xi kP get SUMi 0.0001 add div put YANi kP Yi kP get SUMi 0.0001 add div put ZANi kP Zi kP get SUMi 0.0001 add div put } ifelse %Icom=1 } for %Icom=0,1 YF 1 eq {%YF=1 Xi k Xi k get 0.9000 mul put Yi k Yi k get 0.9000 mul put Zi k Zi k get 0.9000 mul put Xi kP Xi kP get 0.9000 mul put Yi kP Yi kP get 0.9000 mul put Zi kP Zi kP get 0.9000 mul put } if %YF=1 } for %k=0,19 %********************************************************************** %XW,YW,ZW and XK,YK,ZK for white /XW 0 def /YW 0 def /ZW 0 def 0 1 079 {/i exch def %i=0,79 /XW XW F2N 00 i add get add def /YW YW F2N 80 i add get add def /ZW ZW F2N 160 i add get add def } for %i=0,79 YF 0 eq {%YF=0 /XK XW def /YK YW def /ZK ZW def }%YF=0 {%YF=1 /XK XW YFR mul def /YK YW YFR mul def /ZK ZW YFR mul def } ifelse %YF=1 /SUMK XK YK add ZK add def %for D65, D50, P40, A00, E00 /XANK XK SUMK div def /YANK YK SUMK div def /ZANK ZK SUMK div def /LP LP 1 add def /xtexti 96 array def /ytexti 96 array def /xtexti [ %T00 T10 T20 T30 T40 T41 T50 T51 T60 T61 T70 T71 %0 1 2 3 4 5 6 7 8 9 10 11 1700 2000 2000 3000 3200 4300 3200 4300 3200 4300 3200 4300 %0 (x,y) 1700 2000 2000 3000 3200 4300 3200 4300 3200 4300 3200 4300 %1 (x,y) 0050 0050 0050 0050 0050 1300 0050 1300 0050 1300 0050 1300 %2 (a2,b2) 0050 0050 0050 0050 0050 1300 0050 1300 0050 1300 0050 1300 %3 (a2,b2) 0050 0050 0050 0050 0050 1300 0050 1300 0050 1300 0050 1300 %4 (A,B) 0050 0050 0050 0050 0050 1300 0050 1300 0050 1300 0050 1300 %5 (A,B) 0050 0050 0050 0050 0050 1300 0050 1300 0050 1300 0050 1300 %6 (A1,B1) 0050 0050 0050 0050 0050 1300 0050 1300 0050 1300 0050 1300 %7 (a2,b2) ] def /ytexti [ 3800 3580 3360 3140 2920 2920 2700 2700 2480 2480 2260 2260 %0 (x,y) 3800 3580 3360 3140 2920 2920 2700 2700 2480 2480 2260 2260 %1 (x,y) 0500 0290 0080 1600 1380 1380 1160 1160 0940 0940 0720 0720 %3 (a2,b2) 0500 0290 0080 1600 1380 1380 1160 1160 0940 0940 0720 0720 %4 (a2,b2) 0500 0290 0080 1600 1380 1380 1160 1160 0940 0940 0720 0720 %4 (A,B) 0500 0290 0080 1600 1380 1380 1160 1160 0940 0940 0720 0720 %5 (A,B) 0500 0290 0080 1600 1380 1380 1160 1160 0940 0940 0720 0720 %6 (A1,B1) 0500 0290 0080 1600 1380 1380 1160 1160 0940 0940 0720 0720 %7 (a2,b2) ] def %*********************************************************** /icolor 9 array def %Rm %Ym %Gm %Cm %Bm %Mm %Go %Mo %W /icolor [20 10 06 00 30 26 06 26 40] def /imshow {-20 -50 rmoveto TBL (m) show 0 50 rmoveto TBIS} def /ioshow {0 -50 rmoveto TBL (o) show 0 50 rmoveto TBIS} def %************************************************* %allways /kxi 8 array def /xci 8 array def /Bci 8 array def /xcti 8 array def /Bcti 8 array def % 0 1 2 3 4 5 6 7 % (P60)(P55)(P50)(P45)(P40)(P35)(P30)(P25) %or (D65)(D50)(P40)(A00)(E00)(C00)(P00)(Q00) /kxi [9 10 10 11 9 9 10 9] def /kx kxi xchartl get def xchart4 0 eq xchart4 1 eq or xchart4 4 eq or xchart4 5 eq or {%xchart4=0,1 (x,y); 4,5 (A, B) % (P60) (P55) (P50) (P45) (P40) (P35) (P30) (P25) %or (D65) (D50) (P40) (A00) (E00) (C00) (P00) (Q00) % 0 1 2 3 4 5 6 7 /xci [ 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 ] def /xcti [(0,000) (0,000) (0,000) (0,000) (0,000) (0,000) (0,000) (0,000)] def /Bci [ 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 ] def /Bcti [(1,000) (1,000) (1,000) (1,000) (1,000) (1,000) (1,000) (1,000)] def } if %xchart4=1 xchart4 6 eq {%xchart4=6 (A1, B1) % (P60) (P55) (P50) (P45) (P40) (P35) (P30) (P25) %or (D65) (D50) (P40) (A00) (E00) (C00) (P00) (Q00) % 0 1 2 3 4 5 6 7 /xci [ 0.110 0.110 0.110 0.110 0.110 0.110 0.110 0.110 ] def /xcti [(0,110) (0,110) (0,110) (0,110) (0,110) (0,110) (0,110) (0,110)] def /Bci [ 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 ] def /Bcti [(1,000) (1,000) (1,000) (1,000) (1,000) (1,000) (1,000) (1,000)] def } if %xchart4=6 xchart4 2 eq xchart4 3 eq or xchart4 7 eq or {%xchart4=2,3,7 % (P60) (P55) (P50) (P45) (P40) (P35) (P30) (P25) %or (D65) (D50) (P40) (A00) (E00) (C00) (P00) (Q00) % 0 1 2 3 4 5 6 7 /xci [ 0.110 0.110 0.110 0.110 0.110 0.110 0.110 0.110 ] def /xcti [(0,110) (0,110) (0,110) (0,110) (0,110) (0,110) (0,110) (0,110)] def /Bci [ 0.800 1.000 1.300 2.500 0.900 0.700 1.000 0.700 ] def /Bcti [(0,800) (1,000) (1,300) (2,500) (0,900) (0,700) (1,000) (0,700)] def } if %xchart4=2,3,7 /xc xci xchartl get def /xct xcti xchartl get def /Bc Bci xchartl get def /Bct Bcti xchartl get def xchart4 0 eq xchart4 1 eq or {%xchart4=0,1 4600 1600 moveto TBS (Parame\255) show 4600 1400 moveto TBS (ter:) show TBIS xchart4 0 eq {( N) show} if xchart4 1 eq {( Y) show} if proz_chromaticity_data proz_chromaticity_xy } if %xchart4=0,1 xchart4 2 eq {%xchart4=2 proz_chromaticity_data proz_chromaticity_a2b2 } if %xchart4=2 xchart4 3 eq {%xchart4=3 proz_chromaticity_data proz_chromaticity_a2b2 } if %xchart4=3 %*********************************************************** xchart4 0 eq xchart4 1 eq or {%xchart4=0,1 %only for (x,y) /fakt 4000 def proz_name_range proz_opti 600 400 translate %scala & graphic (x,y) 600 400 0 1 39 {/i exch def %i=0,39 /An XANi i get def /Bn YANi i get def An fakt mul Bn fakt mul i 0 eq {moveto} if i 1 ge i 38 le and {lineto} if i 39 eq {lineto closepath stroke} if } for %i=0,39 XANW fakt mul YANW fakt mul 90 0 360 arc stroke XANW fakt mul 200 sub YANW fakt mul 250 sub moveto TBS TELi xchartl get show TBIS 0 1 4 {/j exch def %j=0,4 j 0 eq {/i 0 def} if %Cm-Rm j 1 eq {/i 6 def} if %Gm-Mm j 2 eq {/i 13 def} if %Ym-Bm j 3 eq {/i kx def} if %Max-Min j 4 eq {%new only for i=40 /i 40 def /k 6 def %Go Xi i XRj k get put Yi i YRj k get put Zi i ZRj k get put } if /SUM Xi i get Yi i get add Zi i get add 0.0001 add def XANCj j Xi i get SUM div put YANCj j Yi i get SUM div put ZANCj j Zi i get SUM div put /An XANCj j get def /Bn YANCj j get def /AnY An fakt mul def %xan /BnY Bn fakt mul def %yan /Paramshow {Yi i get cvishow} bind def j 0 eq {AnY 400 sub BnY 050 sub moveto xchart4 0 eq {(C) show imshow} if xchart4 1 eq {Paramshow} if 1 0 0 0 setcmykcolor} if %Cm j 1 eq {AnY 400 sub BnY 050 sub moveto xchart4 0 eq {(G) show imshow} if xchart4 1 eq {Paramshow} if 1 0 1 0 setcmykcolor} if %Gm j 2 eq {AnY 100 sub BnY 250 sub moveto xchart4 0 eq {(Y) show imshow} if xchart4 1 eq {Paramshow} if 0 0 1 0 setcmykcolor} if %Ym j 3 eq {AnY 500 sub xchart4 1 eq {100 add} if BnY 050 sub moveto xchart4 0 eq {(max) show} if xchart4 1 eq {Paramshow} if 0.3 0 1 0 setcmykcolor} if %Ymax j 4 eq {AnY 370 sub xchart4 1 eq {100 add} if BnY 000 add moveto xchart4 0 eq {(G) show ioshow} if xchart4 1 eq {Paramshow} if 1 0.5 1 0 setcmykcolor} if %Go newpath AnY BnY 90 0 360 arc fill 0 setgray newpath AnY BnY 90 0 360 arc stroke } for %j=0,4 %continue j=0,4 for antagonistic (A) colours 0 1 4 {/j exch def %j=0,4 j 0 eq {/i 0 def} if %Cm-Rm j 1 eq {/i 6 def} if %Gm-Mm j 2 eq {/i 13 def} if %Ym-Bm j 3 eq {/i kx def} if %Max-Min j 4 eq {%new only for i=40 /i 40 def /k 6 def %Mo Xi i XRj k get put %special Yi i YRj k get put Zi i ZRj k get put } if /SUM XK Xi i get sub YK Yi i get sub add ZK Zi i get sub add 0.0001 add abs def XANAj j XK Xi i get sub SUM div put YANAj j YK Yi i get sub SUM div put ZANAj j ZK Zi i get sub SUM div put /An XANAj j get def /Bn YANAj j get def /AnY An fakt mul def %xan /BnY Bn fakt mul def %yan /Paramshow {YK Yi i get sub cvishow} bind def j 0 eq {AnY 150 add BnY 150 sub moveto xchart4 0 eq {(R) show imshow} if xchart4 1 eq {Paramshow} if 0 1 1 0 setcmykcolor} if %Rm j 1 eq {AnY 150 add BnY 050 sub moveto xchart4 0 eq {(M) show imshow} if xchart4 1 eq {Paramshow} if 0 1 0 0 setcmykcolor} if %Mm j 2 eq {AnY 350 sub BnY 100 add moveto xchart4 0 eq {(B) show imshow} if xchart4 1 eq {Paramshow} if 1 1 0 0 setcmykcolor} if %Bm j 3 eq {AnY 150 sub BnY 250 sub moveto xchart4 0 eq {(min) show} if xchart4 1 eq {Paramshow} if 0.7 1 0 0 setcmykcolor} if %Ymin j 4 eq {AnY 250 sub BnY 150 sub moveto xchart4 0 eq {(M) show ioshow} if xchart4 1 eq {Paramshow} if 0 0.5 0 0 setcmykcolor} if %Mo newpath AnY BnY 90 0 360 arc fill 0 setgray newpath AnY BnY 90 0 360 arc stroke } for %j=0,4 -600 -400 translate %scala & graphic (x,y) } if %xchart4=0,1 %************************************************************** xchart4 2 eq xchart4 3 eq or {%xchart4=2,3 %only for (a2,b2), (a2s,b2s) /fakt 1000 def /a2 1.00 def /b2 -0.4 def 500 0 translate proz_name_range proz_opti -500 0 translate proz_param /xtrans8 1300 def /ytrans8 3200 def xtrans8 ytrans8 translate %scala & graphic (a2,b2) 1300 3200 %0600 3100 translate %proz_axis_scales4_7 0 1 39 {/i exch def %i=0,39 /An XANi i get xc sub YANi i get 0.0001 add div def /Bn ZANi i get YANi i get 0.0001 add div 0.4 mul neg % Bc mul def /AnK XANK xc sub YANK 0.0001 add div def /BnK ZANK YANK 0.0001 add div 0.4 mul neg % Bc mul def /AnY An def /BnY Bn def An fakt mul Bn fakt mul i 0 eq {moveto} if i 1 ge i 38 le and {lineto} if i 39 eq {lineto closepath stroke} if } for %i=0,39 XANW xc sub YANW 0.0001 add div fakt mul %a2 ZANW YANW 0.0001 add div 0.4 mul neg fakt mul %b2 90 0 360 arc stroke XANW xc sub YANW 0.0001 add div fakt mul 100 add ZANW YANW 0.0001 add div 0.4 mul neg fakt mul 000 add moveto TBS TELi xchartl get show %10 chromatic colours from continuous colours TBIS 0 1 4 {/j exch def %j=0,4 j 0 eq {/i 0 def} if %Cm-Rm j 1 eq {/i 6 def} if %Gm-Mm j 2 eq {/i 13 def} if %Ym-Bm j 3 eq {/i kx def} if %Max-Min j 4 eq {/i 40 def /k 6 def %Go Xi i XRj k get put %special Yi i YRj k get put Zi i ZRj k get put } if /SUM Xi i get Yi i get add Zi i get add 0.0001 add def XANCj j Xi i get SUM div put YANCj j Yi i get SUM div put ZANCj j Zi i get SUM div put /An XANCj j get xc sub YANCj j get 0.0001 add div def %a2 /Bn ZANCj j get YANCj j get 0.0001 add div 0.4 mul neg %b2 % Bc mul def /AnY An fakt mul def /BnY Bn fakt mul def %dAB, CAB not used /dAB An dup mul Bn dup mul add 0.0001 add sqrt def %/CAB dAB Yi i get mul def /Paramshow {Yi i get cvishow} bind def j 0 eq {AnY 350 sub BnY 100 sub moveto xchart4 2 eq {(C) show imshow} if xchart4 3 eq {Paramshow} if 1 0 0 0 setcmykcolor} if %Cm j 1 eq {AnY 350 sub BnY 150 sub moveto xchart4 2 eq {(G) show imshow} if xchart4 3 eq {Paramshow} if 1 0 1 0 setcmykcolor} if %Gm j 2 eq {AnY 150 sub BnY 200 add moveto xchart4 2 eq {(Y) show imshow} if xchart4 3 eq {Paramshow} if 0 0 1 0 setcmykcolor} if %Ym j 3 eq {AnY 500 sub BnY 050 add moveto xchart4 2 eq {(max) show} if xchart4 3 eq {Paramshow} if 0.3 0 1 0 setcmykcolor} if %Ymax j 4 eq {AnY 050 add BnY 250 sub moveto xchart4 2 eq {(G) show ioshow} if xchart4 3 eq {Paramshow} if 1 0.5 1 0 setcmykcolor} if %Go newpath AnY BnY 90 0 360 arc fill 0 setgray newpath AnY BnY 90 0 360 arc stroke /SUM XK Xi i get sub YK Yi i get sub add ZK Zi i get sub add 0.0001 add def XANCj j XK Xi i get sub SUM div put YANCj j YK Yi i get sub SUM div put ZANCj j ZK Zi i get sub SUM div put /An XANCj j get xc sub YANCj j get 0.0001 add div def %a2 /Bn ZANCj j get YANCj j get 0.0001 add div 0.4 mul neg %b2 % Bc mul def /AnY An fakt mul def %a2 /BnY Bn fakt mul def %b2 %dAB, CAB not used /dAB An dup mul Bn dup mul add 0.0001 add sqrt def %/CAB dAB YK Yi i get sub mul def /Paramshow {YK Yi i get sub cvishow} bind def j 0 eq {AnY 120 add BnY 050 sub moveto xchart4 2 eq {(R) show imshow} if xchart4 3 eq {Paramshow} if 0 1 1 0 setcmykcolor} if %Rm j 1 eq {AnY 120 add BnY 050 sub moveto xchart4 2 eq {(M) show imshow} if xchart4 3 eq {Paramshow} if 0 1 0 0 setcmykcolor} if %Mm j 2 eq {AnY 300 sub BnY 100 add moveto xchart4 2 eq {(B) show imshow} if xchart4 3 eq {Paramshow} if 1 1 0 0 setcmykcolor} if %Bm j 3 eq {AnY 100 sub xchart4 3 eq {100 add} if BnY 250 sub moveto xchart4 2 eq {(min) show} if xchart4 3 eq {Paramshow} if 0.7 1 0 0 setcmykcolor} if %Bmin j 4 eq {AnY 100 sub BnY 250 sub moveto xchart4 2 eq {(M) show ioshow} if xchart4 3 eq {Paramshow} if 0 0.5 0 0 setcmykcolor} if %Mo newpath AnY BnY 90 0 360 arc fill 0 setgray newpath AnY BnY 90 0 360 arc stroke } for %j=0,4 xtrans8 neg ytrans8 neg translate %text & graphic (a2, b2) 1300 3200 %-600 400 translate } if %xchart4=2,3 only for (a2,b2), (a2s,b2s) %******************************************************* xchart4 4 eq xchart4 5 eq or {%xchart4=4,5 %only for (A,B) /fakt 40 def /a2 1.00 def /b2 -0.4 def proz_name_range proz_opti proz_param /xtrans8 3500 def /ytrans8 2100 def xtrans8 ytrans8 translate %text & graphic (A,B) 3500 2100 proz_axis_scales4_7 0 1 39 {/i exch def %i=0,39 /An XANi i get YANi i get 0.0001 add div def /Bn ZANi i get YANi i get 0.0001 add div 0.4 mul neg def /AnK XK YK 0.0001 add div def /BnK ZK YK 0.0001 add div 0.4 mul neg def /AnY An AnK sub Yi i get mul def /BnY Bn BnK sub Yi i get mul def AnY fakt mul BnY fakt mul i 0 eq {moveto} if i 1 ge i 38 le and {lineto} if i 39 eq {lineto closepath stroke} if } for %i=0,39 XANW YANW 0.0001 add div %(a-an)YW XANK YANK 0.0001 add div sub YW mul fakt mul ZANW YANW 0.0001 add div %(b-an)YW ZANK YANK 0.0001 add div sub 0.4 mul neg YW mul fakt mul 90 0 360 arc stroke 0 080 add 0 080 add moveto TBS TELi xchartl get show %10 chromatic colours from continuous colours TBIS 0 1 4 {/j exch def %j=0,4 j 0 eq {/i 0 def} if %Cm-Rm j 1 eq {/i 6 def} if %Gm-Mm j 2 eq {/i 13 def} if %Ym-Bm j 3 eq {/i kx def} if %Max-Min j 4 eq {/i 40 def /k 6 def %Go Xi i XRj k get put %special Yi i YRj k get put Zi i ZRj k get put } if /SUM Xi i get Yi i get add Zi i get add 0.0001 add def XANCj j Xi i get SUM div put YANCj j Yi i get SUM div put ZANCj j Zi i get SUM div put /An XANCj j get YANCj j get 0.0001 add div %2.5(a-an)Y XANK YANK 0.0001 add div sub def /Bn ZANCj j get YANCj j get 0.0001 add div %2.5(b-bn)Y ZANK YANK 0.0001 add div sub 0.4 mul neg def /AnY An Yi i get mul fakt mul def /BnY Bn Yi i get mul fakt mul def %dAB, CAB not used /dAB An dup mul Bn dup mul add 0.0001 add sqrt def /CAB dAB Yi i get mul def /Paramshow {Yi i get cvishow} bind def j 0 eq {AnY 350 sub BnY 050 sub moveto xchart4 4 eq {(C) show imshow} if xchart4 5 eq {Paramshow} if 1 0 0 0 setcmykcolor} if %Cm j 1 eq {AnY 370 sub BnY 050 sub moveto xchart4 4 eq {(G) show imshow} if xchart4 5 eq {Paramshow} if 1 0 1 0 setcmykcolor} if %Gm j 2 eq {AnY 050 sub BnY 150 add moveto xchart4 4 eq {(Y) show imshow} if xchart4 5 eq {Paramshow} if 0 0 1 0 setcmykcolor} if %Ym j 3 eq {AnY 100 sub BnY 300 sub moveto xchart4 4 eq {(max) show} if xchart4 5 eq {Paramshow} if 0.3 0 1 0 setcmykcolor} if %Ymax j 4 eq {AnY 100 sub BnY 250 sub moveto xchart4 4 eq {(G) show ioshow} if xchart4 5 eq {Paramshow} if 1 0.5 1 0 setcmykcolor} if %Go newpath AnY BnY 90 0 360 arc fill 0 setgray newpath AnY BnY 90 0 360 arc stroke /SUM XK Xi i get sub YK Yi i get sub add ZK Zi i get sub add 0.0001 add def XANCj j XK Xi i get sub SUM div put YANCj j YK Yi i get sub SUM div put ZANCj j ZK Zi i get sub SUM div put /An XANCj j get YANCj j get 0.0001 add div %(a-an) XANK YANK 0.0001 add div sub def /Bn ZANCj j get YANCj j get 0.0001 add div %(b-bn) ZANK YANK 0.0001 add div sub 0.4 mul neg def /AnY An YK Yi i get sub mul fakt mul def %(a-an)Y /BnY Bn YK Yi i get sub mul fakt mul def %(b-bn)Y %dAB, CAB not used /dAB An dup mul Bn dup mul add 0.0001 add sqrt def /CAB dAB YK Yi i get sub mul def /Paramshow {YK Yi i get sub cvishow} bind def j 0 eq {AnY 120 add BnY 050 sub moveto xchart4 4 eq {(R) show imshow} if xchart4 5 eq {Paramshow} if 0 1 1 0 setcmykcolor} if %Rm j 1 eq {AnY 120 add BnY 050 sub moveto xchart4 4 eq {(M) show imshow} if xchart4 5 eq {Paramshow} if 0 1 0 0 setcmykcolor} if %Mm j 2 eq {AnY 200 sub BnY 250 sub moveto xchart4 4 eq {(B) show imshow} if xchart4 5 eq {Paramshow} if 1 1 0 0 setcmykcolor} if %Bm j 3 eq {AnY 100 sub BnY 150 add moveto xchart4 4 eq {(min) show} if xchart4 5 eq {Paramshow} if 0.7 1 0 0 setcmykcolor} if %Bmin j 4 eq {AnY 100 sub BnY 150 add moveto xchart4 4 eq {(M) show ioshow} if xchart4 5 eq {Paramshow} if 0 0.5 0 0 setcmykcolor} if %Mo newpath AnY BnY 90 0 360 arc fill 0 setgray newpath AnY BnY 90 0 360 arc stroke } for %j=0,4 xtrans8 neg ytrans8 neg translate %text & graphic (A,B) 3500 2100 } if %xchart4=4,5 %************************************************************** xchart4 6 eq xchart4 7 eq or {%xchart4=6,7 %only for (A1/2,B1/2) /fakt 40 def /a2 1.00 def /b2 -0.4 def proz_name_range proz_opti proz_param /xtrans8 3500 def /ytrans8 2100 def xtrans8 ytrans8 translate %text & graphic (A1/2,B1/2) 3500 2100 proz_axis_scales4_7 0 1 39 {/i exch def %i=0,39 /An XANi i get xc sub YANi i get 0.0001 add div def /Bn ZANi i get YANi i get 0.0001 add div 0.4 mul neg Bc mul def /AnK XANK xc sub YANK 0.0001 add div def /BnK ZANK YANK 0.0001 add div 0.4 mul neg Bc mul def /AnY An AnK sub Yi i get mul def /BnY Bn BnK sub Yi i get mul def AnY fakt mul BnY fakt mul i 0 eq {moveto} if i 1 ge i 38 le and {lineto} if i 39 eq {lineto closepath stroke} if } for %i=0,39 XANW xc sub YANW 0.0001 add div %(a-an)YW XANK xc sub YANK 0.0001 add div sub YW mul fakt mul ZANW YANW 0.0001 add div %(b-an)YW ZANK YANK 0.0001 add div sub 0.4 mul neg Bc mul YW mul fakt mul 90 0 360 arc stroke 0 080 add 0 080 add moveto TBS TELi xchartl get show %10 chromatic colours from continuous colours TBIS 0 1 4 {/j exch def %j=0,4 j 0 eq {/i 0 def} if %Cm-Rm j 1 eq {/i 6 def} if %Gm-Mm j 2 eq {/i 13 def} if %Ym-Bm j 3 eq {/i kx def} if %Max-Min j 4 eq {/i 40 def /k 6 def %Go Xi i XRj k get put %special Yi i YRj k get put Zi i ZRj k get put } if /SUM Xi i get Yi i get add Zi i get add 0.0001 add def XANCj j Xi i get SUM div put YANCj j Yi i get SUM div put ZANCj j Zi i get SUM div put /An XANCj j get xc sub YANCj j get 0.0001 add div %2.5(a-an)Y XANK xc sub YANK 0.0001 add div sub def /Bn ZANCj j get YANCj j get 0.0001 add div %2.5(b-bn)Y ZANK YANK 0.0001 add div sub 0.4 mul neg Bc mul def /AnY An Yi i get mul fakt mul def /BnY Bn Yi i get mul fakt mul def %dAB, CAB not used /dAB An dup mul Bn dup mul add 0.0001 add sqrt def /CAB dAB Yi i get mul def /Paramshow {Yi i get cvishow} bind def j 0 eq {AnY 350 sub BnY 050 sub moveto xchart4 6 eq {(C) show imshow} if xchart4 7 eq {Paramshow} if 1 0 0 0 setcmykcolor} if %Cm j 1 eq {AnY 370 sub BnY 050 sub moveto xchart4 6 eq {(G) show imshow} if xchart4 7 eq {Paramshow} if 1 0 1 0 setcmykcolor} if %Gm j 2 eq {AnY 050 sub BnY 150 add moveto xchart4 6 eq {(Y) show imshow} if xchart4 7 eq {Paramshow} if 0 0 1 0 setcmykcolor} if %Ym j 3 eq {AnY 500 sub xchart4 7 eq {150 add} if BnY 050 add moveto xchart4 6 eq {(max) show} if xchart4 7 eq {Paramshow} if 0.3 0 1 0 setcmykcolor} if %Ymax j 4 eq {AnY 100 sub BnY 150 add moveto xchart4 6 eq {(G) show ioshow} if xchart4 7 eq {Paramshow} if 1 0.5 1 0 setcmykcolor} if %Go newpath AnY BnY 90 0 360 arc fill 0 setgray newpath AnY BnY 90 0 360 arc stroke /SUM XK Xi i get sub YK Yi i get sub add ZK Zi i get sub add 0.0001 add def XANCj j XK Xi i get sub SUM div put YANCj j YK Yi i get sub SUM div put ZANCj j ZK Zi i get sub SUM div put /An XANCj j get xc sub YANCj j get 0.0001 add div %(a-an) XANK xc sub YANK 0.0001 add div sub def /Bn ZANCj j get YANCj j get 0.0001 add div %(b-bn) ZANK YANK 0.0001 add div sub 0.4 mul neg Bc mul def /AnY An YK Yi i get sub mul fakt mul def %(a-an)Y /BnY Bn YK Yi i get sub mul fakt mul def %(b-bn)Y %dAB, CAB not used /dAB An dup mul Bn dup mul add 0.0001 add sqrt def /CAB dAB YK Yi i get sub mul def /Paramshow {YK Yi i get sub cvishow} bind def j 0 eq {AnY 120 add BnY 050 sub moveto xchart4 6 eq {(R) show imshow} if xchart4 7 eq {Paramshow} if 0 1 1 0 setcmykcolor} if %Rm j 1 eq {AnY 120 add BnY 050 sub moveto xchart4 6 eq {(M) show imshow} if xchart4 7 eq {Paramshow} if 0 1 0 0 setcmykcolor} if %Mm j 2 eq {AnY 200 sub BnY 250 sub moveto xchart4 6 eq {(B) show imshow} if xchart4 7 eq {Paramshow} if 1 1 0 0 setcmykcolor} if %Bm j 3 eq {AnY 100 add BnY 150 sub moveto xchart4 6 eq {(min) show} if xchart4 7 eq {Paramshow} if 0.7 1 0 0 setcmykcolor} if %Bmin j 4 eq {AnY 100 sub BnY 250 sub moveto xchart4 6 eq {(M) show ioshow} if xchart4 7 eq {Paramshow} if 0 0.5 0 0 setcmykcolor} if %Mo newpath AnY BnY 90 0 360 arc fill 0 setgray newpath AnY BnY 90 0 360 arc stroke } for %j=0,4 xtrans8 neg ytrans8 neg translate %text & graphic (A1/2,B1/2) 3500 2100 } if %xchart4=6,7 showpage grestore %} for %xchartl=0,7 } for %xchart4=0,7 } for %xcolorl=0,0 %%Trailer %line 269 %%EndDocument EndEPSF grestore gsave showpage grestore %%Trailer %%EndDocument EndEPSF grestore gsave BeginEPSF 219 MM 06 MM sub SHAr add 020 MM translate 12 /Times-ISOL1 FS -9 MM -7 MM moveto ( ) show 10 /Times-ISOL1 FS 53 MM 1 MM moveto ( ) show 1 1 scale -77 -91 translate %%BeginDocument: Bild 28 %line 499 %!PS-Adobe-3.0 EPSF-3.0 egw41-8N %%BoundingBox: 70 85 246 206 /FS {findfont exch scalefont setfont} bind def /MM {72 25.4 div mul} def %%EndProlog gsave /ioutx 0 def ioutx 1 eq {%ioutx=1 4 /Times-Roman FS 72 86 moveto (egw41-8N) show 72 90 translate 0.01 MM dup scale 20 setlinewidth /xwidth 6100 def /ywidth 4000 def 1 setgray 0 0 moveto xwidth 0 rlineto 0 ywidth rlineto xwidth neg 0 rlineto closepath fill 0 setgray 0 0 moveto xwidth 0 rlineto 0 ywidth rlineto xwidth neg 0 rlineto closepath stroke } if %ioutx=1 grestore showpage %%Trailer %%EndDocument EndEPSF grestore gsave BeginEPSF 219 MM 080 MM add 008 MM translate %80 MM Breite von TestStreifen 10 /Times-ISOL1 FS 53 MM 1 MM moveto () show 1 1 scale -77 21 MM sub -91 translate %%BeginDocument: Bild 29 Teststreifen Ueberlaenge %line 509 %%EndDocument EndEPSF grestore gsave BeginEPSF -0.0 MM -0.0 MM translate %xy-Verschiebung Rechteckrahmen nach innen% %%BeginDocument: Bild 30 %Rechteckrahmen %line 519 %!PS-Adobe-3.0 EPSF-3.0 Frame arround with Internet text DG02 20070101 %%BoundingBox: 0 0 598 845 %%EndProlog gsave /lanind 1 def /lantex [(G) (E) (S) (N) (I) (J) (M)] def /showde {0 lanind eq {show} {pop} ifelse} bind def /showen {1 lanind eq {show} {pop} ifelse} bind def /showes {2 lanind eq {show} {pop} ifelse} bind def /showfr {3 lanind eq {show} {pop} ifelse} bind def /showit {4 lanind eq {show} {pop} ifelse} bind def /showjp {5 lanind eq {show} {pop} ifelse} bind def /showea {1 lanind le {show} {pop} ifelse} bind def /lanind1 01 def /lanind2 01 def /lanindd 01 def /colorm1 00 def /colorm2 00 def /colormd 01 def /deintp1 00 def /deintp2 00 def /deintpd 01 def /xcolor1 00 def /xcolor2 00 def /xcolord 01 def /xchart1 00 def /xchart2 00 def /xchartd 01 def /pchart1 00 def /pchart2 00 def /pchartd 01 def /colsep1 00 def /colsep2 00 def /colsepd 01 def /pmetam1 00 def /pmetam2 00 def /pmetamd 01 def /lanindf where {pop /lanind1 lanindf def /lanind2 lanindf def /lanindd laninddf def} if /colormf where {pop /colorm1 colormf def /colorm2 colormf def /colormd colormdf def} if /deintpf where {pop /deintp1 deintpf def /deintp2 deintpf def /deintpd deintpdf def} if /xcolorf where {pop /xcolor1 xcolorf def /xcolor2 xcolorf def /xcolord xcolordf def} if /xchartf where {pop /xchart1 xchartf def /xchart2 xchartf def /xchartd xchartdf def /xchartm xchart2f xchart1f sub 1 add def} {/xchartm 1 def} ifelse /xchart3f where {pop /xchart3 xchart3f def} {/xchart3 1 def} ifelse /xchart4f where {pop /xchart4 xchart4f def} {/xchart4 0 def} ifelse /pchartf where {pop /pchart1 pchartf def /pchart2 pchartf def /pchartd pchartdf def} if /colsepf where {pop /colsep1 colsepf def /colsep2 colsepf def /colsepd colsepdf def} if /pmetamf where {pop /pmetam1 pmetamf def /pmetam2 pmetamf def /pmetamd pmetamdf def} if /lanind lanind1 def % /colorm colorm1 def % /deintp deintp1 def % /xcolor xcolor1 def % /xchart xchart1 def % /pchart pchart1 def % /colsep colsep1 def % /pmetam pmetam1 def % /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 0 def /i*ptrsc 0 def gsave 0 setgray 1.0 1.0 scale 0.0 MM 1.0 MM translate %page shift down 0.15 MM setlinewidth /x 20 array def /y 20 array def /d 20 array def /x [000 296 296 000 002 294 294 002 005 291 291 005 %speziell 006 290 290 006 008 288 288 008 ] def /y [000 000 210 210 002 002 208 208 005 005 205 205 %speziell 006 006 204 204 008 008 202 202 ] def /d [060 017 -60 -17 058 015 -58 -15 056 013 -56 -13 054 011 -54 -11 052 009 -52 -09 ] def colorm 0 eq deintp 0 eq and {/Txx (d) def /Fxx (d) def} if %colorm=0, deintp=0 colorm 0 eq deintp 1 eq and {/Txx (e) def /Fxx (e) def} if %colorm=0, deintp=1 colorm 1 eq deintp 0 eq and {/Txx (dd) def /Fxx (d) def} if %colorm=1, deintp=0 colorm 1 eq deintp 1 eq and {/Txx (de) def /Fxx (e) def} if %colorm=1, deintp=1 xchart 0 eq {/Txx (-) def /Fxx (-) def} if xchart 1 ge {%xchart>=1 /i0 12 def /i1 i0 1 add def /i2 i0 2 add def /i3 i0 3 add def 2.5 MM /Times-ISOL1 FS x i0 get MM 40 MM add y i0 get MM 1 MM sub moveto lanind cvishow (-) show colorm cvishow deintp cvishow xcolor cvishow xchart cvishow pchart cvishow colsep cvishow (-F) show pmetam cvishow } if %xchart>=1 /xlu 017 MM def /ylu 017 MM def /xro 279 MM def /yro 193 MM def /xlo 017 MM def /ylo 193 MM def /xru 279 MM def /yru 017 MM def /xmo xlo xro xlo sub 0.5 mul add def /ymo yro 1 MM sub def xmo 1 MM sub ymo moveto 2 MM 0 rlineto stroke xmo ymo 1 MM sub moveto 0 1 MM rlineto stroke xlu 8 MM sub ylu moveto 16 MM 0 rlineto stroke xlu ylu 8 MM sub moveto 0 16 MM rlineto stroke xro 8 MM add yro moveto -16 MM 0 rlineto stroke xro yro 8 MM add moveto 0 -16 MM rlineto stroke xru 8 MM sub yru moveto 16 MM 0 rlineto stroke xru yru 8 MM sub moveto 0 16 MM rlineto stroke xlo 8 MM add ylo moveto -16 MM 0 rlineto stroke xlo ylo 8 MM add moveto 0 -16 MM rlineto stroke 1 2 7 {/i exch def %Zentrierkreise xlu ylu i MM 0 360 arc stroke xro yro i MM 0 360 arc stroke xru yru i MM 0 360 arc stroke xlo ylo i MM 0 360 arc stroke } for %i 12 4 16 {/i exch def /i0 i def %i=0,16 %0 4 16 {/i exch def /i0 i def %i=0,16 /i1 i0 1 add def /i2 i0 2 add def /i3 i0 3 add def i 16 eq {0.30 MM setlinewidth} {0.15 MM setlinewidth} ifelse 0 setgray x i0 get MM y i0 get MM moveto x i1 get MM y i1 get MM lineto x i2 get MM y i2 get MM lineto x i3 get MM y i3 get MM lineto x i0 get MM y i0 get MM lineto stroke i 16 eq {6 /Times-ISOL1 FS /x00 67 def /xdif 32 def /y0o 202.3 def /y0u 6.3 def /x0l 6.1 def /x0r 288 def /y00 22 def /ydif 32 def x00 xdif 0 mul add MM y0o MM moveto (V) show x00 xdif 0 mul add MM y0u MM moveto (C) show x00 xdif 1 mul add MM y0o MM moveto (L) show x00 xdif 1 mul add MM y0u MM moveto (M) show x00 xdif 2 mul add MM y0o MM moveto (O) show x00 xdif 2 mul add MM y0u MM moveto (Y) show x00 xdif 3 mul add MM y0o MM moveto (Y) show x00 xdif 3 mul add MM y0u MM moveto (O) show x00 xdif 4 mul add MM y0o MM moveto (M) show x00 xdif 4 mul add MM y0u MM moveto (L) show x00 xdif 5 mul add MM y0o MM moveto (C) show x00 xdif 5 mul add MM y0u MM moveto (V) show x0l MM y00 ydif 0 mul add MM moveto (V) show x0r MM y00 ydif 0 mul add MM moveto (C) show x0l MM y00 ydif 1 mul add MM moveto (L) show x0r MM y00 ydif 1 mul add MM moveto (M) show x0l MM y00 ydif 2 mul add MM moveto (O) show x0r MM y00 ydif 2 mul add MM moveto (Y) show x0l MM y00 ydif 3 mul add MM moveto (Y) show x0r MM y00 ydif 3 mul add MM moveto (O) show x0l MM y00 ydif 4 mul add MM moveto (M) show x0r MM y00 ydif 4 mul add MM moveto (L) show x0l MM y00 ydif 5 mul add MM moveto (C) show x0r MM y00 ydif 5 mul add MM moveto (V) show } if } for %i=0,16 0 1 10 {/j0 exch def /j1 j0 1 add def %j0 j0 0 eq {tzccmy0* setcmykcolor} if j0 1 eq {0 setgray} if j0 2 eq {tzmcmy0* setcmykcolor} if j0 3 eq {0 setgray} if j0 4 eq {tzycmy0* setcmykcolor} if j0 5 eq {0 setgray} if j0 6 eq {tzocmy0* setcmykcolor} if j0 7 eq {0 setgray} if j0 8 eq {tzlcmy0* setcmykcolor} if j0 9 eq {0 setgray} if j0 10 eq {tzvcmy0* setcmykcolor} if 12 4 16 {/i exch def /i0 i def %i=0,16 %0 4 16 {/i exch def /i0 i def %i=0,16 /i1 i0 1 add def /i2 i0 2 add def /i3 i0 3 add def i 16 eq {0.30 MM setlinewidth} {0.15 MM setlinewidth} ifelse x i0 get d i0 get add 16 j0 mul add MM y i0 get MM moveto x i0 get d i0 get add 16 j1 mul add MM y i0 get MM lineto stroke x i1 get MM y i1 get d i1 get add 16 j0 mul add MM moveto x i1 get MM y i1 get d i1 get add 16 j1 mul add MM lineto stroke x i2 get d i2 get add 16 j0 mul sub MM y i2 get MM moveto x i2 get d i2 get add 16 j1 mul sub MM y i2 get MM lineto stroke x i3 get MM y i3 get d i3 get add 16 j0 mul sub MM moveto x i3 get MM y i3 get d i3 get add 16 j1 mul sub MM lineto stroke } for %i=0,16 } for %j0 0.15 MM setlinewidth /s 7 MM def /s1 8 MM def /s5 36 MM def 16 1 20 {/j exch def /j0 j 16 sub def %j=16,20 /ix0 xlu 8 MM add j0 7 MM mul add def /iy0 ylu 8 MM sub def 0 1 3 {/ij exch def %ij=0,3 ij 0 eq {/ix0 xlu 8 MM add j0 7 MM mul add def /iy0 ylu 8 MM sub def} if ij 1 eq {/ix0 xru 43 MM sub j0 7 MM mul add def /iy0 yru 8 MM sub def} if ij 2 eq {/ix0 xlo 8 MM add j0 7 MM mul add def /iy0 ylo 1 MM add def} if ij 3 eq {/ix0 xro 43 MM sub j0 7 MM mul add def /iy0 yro 1 MM add def} if i*ptrsc 0 eq i*ptrsc 2 eq or {%i*ptrsc=0,2 cmy0* setcmykcolor j 16 eq {tzan j get dup dup 0 setcmykcolor ix0 0.5 MM sub iy0 0.5 MM sub s5 s1 rec fill} if tzan j get dup dup 0 setcmykcolor ix0 iy0 s s rec fill } if %i*ptrsc=0,2 i*ptrsc 1 eq i*ptrsc 3 eq or {%i*ptrsc=1,3 www* setrgbcolor j 16 eq {1 tzan j get 1 sub dup dup setrgbcolor %N ix0 0.5 MM sub iy0 0.5 MM sub s5 s1 rec fill} if 1 tzan j get sub dup dup setrgbcolor %N ix0 iy0 s s rec fill } if %i*ptrsc=1,3 i*ptrsc 4 eq i*ptrsc 5 eq or {%i*ptrsc=4,5 [/CIEBasedABC << %Farbraum und Grenzen fuer D65 /RangeABC [0 100 -128 127 -128 127] /DecodeABC [{16 add 116 div} bind {500 div} bind {200 div} bind] /MatrixABC [1 1 1 1 0 0 0 0 -1] /DecodeLMN [{dup 6 29 div ge {dup dup mul mul} {4 29 div sub 108 841 div mul} ifelse 0.9505 mul} bind {dup 6 29 div ge {dup dup mul mul} {4 29 div sub 108 841 div mul} ifelse} bind {dup 6 29 div ge {dup dup mul mul} {4 29 div sub 108 841 div mul} ifelse 1.0890 mul} bind] /WhitePoint [0.9505 1 1.089] %CIEXYZ fuer D65 >>] setcolorspace j 16 eq {tznLAB* 0 get tzwLAB* 0 get tznLAB* 0 get sub 0.25 j0 mul mul add tznLAB* 1 get tzwLAB* 1 get tznLAB* 1 get sub 0.25 j0 mul mul add tznLAB* 2 get tzwLAB* 2 get tznLAB* 2 get sub 0.25 j0 mul mul add setcolor %N ix0 0.5 MM sub iy0 0.5 MM sub s5 s1 rec fill} if tznLAB* 0 get tzwLAB* 0 get tznLAB* 0 get sub 0.25 j0 mul mul add tznLAB* 1 get tzwLAB* 1 get tznLAB* 1 get sub 0.25 j0 mul mul add tznLAB* 2 get tzwLAB* 2 get tznLAB* 2 get sub 0.25 j0 mul mul add setcolor %N ix0 iy0 s s rec fill } if %i*ptrsc=4,5 i*ptrsc 6 eq {%i*ptrsc=6 000n* setcmykcolor j 16 eq {0 0 0 tzan j get setcmykcolor ix0 0.5 MM sub iy0 0.5 MM sub s5 s1 rec fill} if 0 0 0 tzan j get setcmykcolor ix0 iy0 s s rec fill } if %i*ptrsc=6 i*ptrsc 7 eq {%i*ptrsc=7 w* setgray j 16 eq {1 tzan j get sub setgray ix0 0.5 MM sub iy0 0.5 MM sub s5 s1 rec fill} if 1 tzan j get sub setgray ix0 iy0 s s rec fill } if %i*ptrsc=7 } for %ij=0,3 } for %j=16,20 0 setgray 018 MM 008.2 MM moveto 6 /Times-Roman FS (-8) show 018 MM 006.2 MM moveto 6 /Times-Roman FS (-6) show 276 MM 008.2 MM moveto 6 /Times-Roman FS (-8) show 276 MM 006.2 MM moveto 6 /Times-Roman FS (-6) show 018 MM 202.2 MM moveto 6 /Times-Roman FS (-8) show 018 MM 204.2 MM moveto 6 /Times-Roman FS (-6) show 276 MM 202.2 MM moveto 6 /Times-Roman FS (-8) show 276 MM 204.2 MM moveto 6 /Times-Roman FS (-6) show /10TIN {10 /Times-ISOL1 FS} def /10TRN {10 /Times-Roman FS} def /12TIN {12 /Times-ISOL1 FS} def /12TRN {12 /Times-Roman FS} def /10TII {10 /TimesI-ISOL1 FS} def /10TRI {10 /Times-Italic FS} def /12TII {12 /TimesI-ISOL1 FS} def /12TRI {12 /Times-Italic FS} def /10TIB {10 /TimesB-ISOL1 FS} def /10TRB {10 /Times-Bold FS} def /12TIB {12 /TimesB-ISOL1 FS} def /12TRB {12 /Times-Bold FS} def /10TIBI {10 /TimesBI-ISOL1 FS} def /10TRBI {10 /Times-BoldItalic FS} def /12TIBI {12 /TimesBI-ISOL1 FS} def /12TRBI {12 /Times-BoldItalic FS} def /12RN {12 /Times-Roman FS} bind def /10RN {10 /Times-Roman FS} bind def /12RI {12 /Times-Italic FS} bind def /10RI {10 /Times-Italic FS} bind def /12RB {12 /Times-Bold FS} bind def /10RB {10 /Times-Bold FS} bind def /12RBI {12 /Times-BoldItalic FS} bind def /10RBI {10 /Times-BoldItalic FS} bind def /12TN {12 /Times-ISOL1 FS} bind def /10TN {10 /Times-ISOL1 FS} bind def /12TI {12 /TimesI-ISOL1 FS} bind def /10TI {10 /TimesI-ISOL1 FS} bind def /12TB {12 /TimesB-ISOL1 FS} bind def /10TB {10 /TimesB-ISOL1 FS} bind def /12TBI {12 /TimesBI-ISOL1 FS} bind def /10TBI {10 /TimesBI-ISOL1 FS} bind def %special /10TIN_10 {10TIN 0 -2 rmoveto xcolor 1 eq {(10) show} if 0 2 rmoveto} def /10TINK10 {10TIN 0 -2 rmoveto xcolor 1 eq {(,10) show} if 0 2 rmoveto} def /10SN {10 /Symbol FS} def /12SN {12 /Symbol FS} def /TELi0 8 array def /TELi1 8 array def /TELi 8 array def /TELi0 [(P65) (P60) (P55) (P50) (P45) (P40) (P35) (P30)] def %7 illumin. /TELi1 [(D65) (D50) (P40) (A00) (E00) (C00) (P00) (Q00)] def %7 illumin. /xchart8 0 def %xchart8=0: Pxx, xchart8=1: Dxx 0 1 7 {/i exch def %i=0,7 xchart8 0 eq {%xchart8=0 TELi i TELi0 i get put }%xchart8=0 {%xchart8=1 TELi i TELi1 i get put } ifelse %xchart8=1 } for %i=0,7 0 setgray 12TIN 61 MM 13.5 MM moveto (TUB\255Pr\374fvorlage egw4; ) showde (TUB\255test chart egw4; ) showen (gr\341fico TUB\255egw4; ) showes (TUB\255test graphique egw4; ) showfr (grafico TUB\255egw4; ) showit (TUB\255test chart egw4; ) showjp /xchart40 0 def %allways /xchart41 0 def %0:%case1, 1:%case2, 2:%case3 xchart40 0 eq {%xchart40=0 (Mischung von 4x4 Bildern f\374r verschiedene Anwendungen) showde (Mixture of 4 x 4 images for different applications) showen } if %xchart40=0 12TIN 61 MM 09.5 MM moveto xchart41 0 eq {%xchart41=0 %case1 (Dies ist ein beispieltext "case1" f\374r viele Anwendungen) showde (This is an example text "case1" for many applications) showen (; Kurzzeile nicht erlaubt) showde (; very short line not allowed) showen } if %xchart41=0 xchart41 1 eq {%xchart41=1 (text case2 ) showde (text case2 ) showen } if %xchart41=2 xchart41 2 eq {%xchart41=2 (text case3 ) showde (text case3 ) showen } if %xchart41=2 62 MM 198.5 MM moveto 12RN tfb (http://farbe.li.tu-berlin.de/egw4/egw4l) show 12TN (0) show % LSC$ show LEX$ show tfn (; only vector graphic VG) showen (; nur Vektorgrafik VG) showde %1 setgray %start white and unvisible (; ) show xchart 0 eq { (Start\255Ausgabe) showde (start output) showen (comience salida) showes (sortie de production) showfr (cominciare l'uscita) showit (start output) showjp } if 62 MM 194 MM moveto (Siehe separate Bilder dieser Seite: ) showde (see separate images of this page: ) showen (vea archivos semejantes: ) showes (voir des fichiers similaires: ) showfr (vedere dei file simili: ) showit (see similar files: ) showjp 12RN tfb (http://farbe.li.tu-berlin.de/egw4/egw4.htm) show tfn 12TN 16 MM 185 MM moveto -90 rotate (Siehe \344hnliche Dateien der ganzen Serie: ) showde (see similar files of the whole serie: ) showen (vea archivos semejantes: ) showes (voir des fichiers similaires de serie: ) showfr (vedere dei file simili: ) showit (see similar files: ) showjp 12RN tfb (http://farbe.li.tu-berlin.de/egws.htm) show tfn 12TN 90 rotate 12 MM 185 MM moveto -90 rotate (Technische Information: ) showde (technical information: ) showen (informaci\363n t\351cnica: ) showes (informations techniques: ) showfr (informazioni tecniche: ) showit (technical information: ) showjp 12RN tfb (http://farbe.li.tu-berlin.de) show tfn 12TN ( oder ) showde ( or ) showen ( o ) showes ( ou ) showfr ( o ) showit ( or ) showjp 12RN tfb (http://color.li.tu-berlin.de) show tfn 12TN 90 rotate 281 MM 185 MM moveto -90 rotate (TUB\255Registrierung: 20230801\255egw4/egw4l) showde (TUB registration: 20230801\255egw4/egw4l) showen (TUB matr\355cula: 20230801\255egw4/egw4l) showes (TUB enregistrement: 20230801\255egw4/egw4l) showfr (TUB iscrizione: 20230801\255egw4/egw4l) showit (TUB registration: 20230801\255egw4/egw4l) showjp (0) show % LSC$ show LEX$ show 90 rotate 281 MM 74 MM moveto -90 rotate (TUB\255Material: Code=rha4ta) showde (TUB material: code=rha4ta) showen (TUB material: code=rha4ta) showes (TUB mat\351riel: code=rha4ta) showfr (TUB materiale: code=rha4ta) showit (TUB material: code=rha4ta) showjp 90 rotate 277 MM 185 MM moveto -90 rotate /cvishow {cvi 6 string cvs show} def /cvsshow1 {10 mul cvi 0.1 mul 7 string cvs show} def ( Anwendung f\374r Beurteilung und Messung ) showde ( application for evaluation and measurement ) showen ( aplicaci\363n para la medida ) showes ( application pour la mesure ) showfr ( la domanda per la misura ) showit ( application for measurement ) showjp (von Display\255 oder Druck\255Ausgabe) showde (of display or print output) showen (de display output) showes (de sortie sur \350cran) showfr (di stampa di display) showit (of display output) showjp 90 rotate /i0 8 def /i1 i0 1 add def /i2 i0 2 add def /i3 i0 3 add def 0.30 MM setlinewidth 0 setgray x i0 get MM y i0 get MM moveto x i1 get MM y i1 get MM lineto x i2 get MM y i2 get MM lineto x i3 get MM y i3 get MM lineto x i0 get MM y i0 get MM lineto stroke grestore gsave %********************************************************** %%Trailer %%EndDocument EndEPSF grestore gsave showpage grestore %} for %colsepf=0,1 %} for %pchartf=0,0 %} for %xchartf=0,0 %} for %xcolorf=0,1 %} for %deintpf=0,1 %} for %colormf=0,1 %} for %lanindf=0,0 %%Trailer