%!PS-Adobe-3.0 EPSF-3.0 DGO3/Y10G00NA.PS6.PS 20230201 %%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: farbe.li.tu-berlin.de/DGO3/DGO3.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:2023020112000) /ModDate (D:20230201112000) /DOCINFO pdfmark [ /View [ /Fit ] /DOCVIEW pdfmark /sfgray {setgray} bind def %Early Frame File (f) definition /sfrgbcolor {setrgbcolor} bind def /sfcmykcolor {setcmykcolor} bind def %line 20****************************************************** %BEG DGO3/OUTLIN10.PS Emty 20210418 %END DGO3/OUTLIN10.PS Emty 20210418 %BEG DGO3/OUTLIN1X.PS 20210418 %EMPTY %END DGO3/OUTLIN1X.PS 20210418 %BEG DGO3/OUTLIN1Y2.PS Emty 20210418 %END DGO3/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 /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 /colorm1f 00 def /colorm2f 00 def /colormdf 01 def /deintp1f 00 def /deintp2f 00 def /deintpdf 01 def /xcolor1f 00 def /xcolor2f 00 def /xcolordf 01 def %2/10 degree observer /xchart1f 00 def /xchart2f 00 def /xchartdf 01 def %1 illuminants sub-defined /xchart3f 00 def /xchart4f 02 def /xchart5f 00 def %xchart8/3=1/0:D65 /pchart1f 03 def /pchart2f 03 def /pchartdf 01 def %=3 for sRGB, Lr=0 /colsep1f 00 def /colsep2f 00 def /colsepdf 01 def /pmetam1f 00 def /pmetam2f 00 def /pmetamdf 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 % xcolor1f xcolordf xcolor2f {/xcolorf exch 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 BeginEPSF 28 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 DGO30-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 (DGO30-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 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 DGO30-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 (DGO30-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 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 http://farbe.li.tu-berlin.de/DGO3/DGO30-3N 202210 %%BoundingBox: 70 83 415 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/DGO3/DGO3.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:2022100112200) /ModDate (D:20221001112200) /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 /TV {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 /TIV {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 /TBV {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 /TBIV {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 /SV {160 /Symbol FS} bind def /CV {160 /Courier-ISOL1 FS} bind def /CS {200 /Courier-ISOL1 FS} bind def /CK {240 /Courier-ISOL1 FS} bind def /CM {280 /Courier-ISOL1 FS} bind def /CG {350 /Courier-ISOL1 FS} bind def /CBV {160 /CourierB-ISOL1 FS} bind def /CBS {200 /CourierB-ISOL1 FS} bind def /CBK {240 /CourierB-ISOL1 FS} bind def /CBM {280 /CourierB-ISOL1 FS} bind def /CBG {350 /CourierB-ISOL1 FS} bind def /ns {350 /Times-ISOL1 FS show} bind def /ks {350 /TimesI-ISOL1 FS show} bind def /bs {350 /TimesB-ISOL1 FS show} bind def /js {350 /TimesBI-ISOL1 FS show} bind def /sy {350 /Symbol FS show} bind def /is {280 /Times-ISOL1 FS 0 -90 rmoveto show 0 90 rmoveto} bind def /es {280 /Times-ISOL1 FS 0 200 rmoveto show 0 -200 rmoveto} bind def /ib {280 /TimesB-ISOL1 FS 0 -90 rmoveto show 0 90 rmoveto} bind def /eb {280 /TimesB-ISOL1 FS 0 200 rmoveto show 0 -200 rmoveto} bind def /ip {280 /Times-ISOL1 FS 50 50 rmoveto (\267) show 50 -50 rmoveto} bind def %20% kleiner /ns2 {280 /Times-ISOL1 FS show TM} bind def /ks2 {280 /TimesI-ISOL1 FS show TM} bind def /bs2 {280 /TimesB-ISOL1 FS show TM} bind def /js2 {280 /TimesBI-ISOL1 FS show TM} bind def /sy2 {280 /Symbol FS show TM} bind def /is2 {240 /Times-ISOL1 FS 0 -70 rmoveto show 0 70 rmoveto TM} bind def /es2 {240 /Times-ISOL1 FS 0 160 rmoveto show 0 -160 rmoveto TM} bind def /ib2 {240 /TimesB-ISOL1 FS 0 -70 rmoveto show 0 70 rmoveto TM} bind def /eb2 {240 /TimesB-ISOL1 FS 0 160 rmoveto show 0 -160 rmoveto TM} bind def /ip2 {240 /Times-ISOL1 FS 40 40 rmoveto (\267) show 40 -40 rmoveto TM} bind def /iy2 {240 /Symbol FS 0 -70 rmoveto show 0 70 rmoveto TM} bind def %40% kleiner /ns4 {240 /Times-ISOL1 FS show TK} bind def /ks4 {240 /TimesI-ISOL1 FS show TK} bind def /bs4 {240 /TimesB-ISOL1 FS show TK} bind def /js4 {240 /TimesBI-ISOL1 FS show TK} bind def /ss4 {240 /Symbol FS show TK} bind def /is4 {200 /Times-ISOL1 FS 0 -60 rmoveto show 0 60 rmoveto TK} bind def /es4 {200 /Times-ISOL1 FS 0 130 rmoveto show 0 -130 rmoveto TK} bind def /ib4 {200 /TimesB-ISOL1 FS 0 -60 rmoveto show 0 60 rmoveto TK} bind def /eb4 {200 /TimesB-ISOL1 FS 0 130 rmoveto show 0 -130 rmoveto TK} bind def /ip4 {200 /Times-ISOL1 FS 30 30 rmoveto (\267) show 30 -30 rmoveto TK} bind def /iy4 {200 /Symbol FS 0 -60 rmoveto show 0 60 rmoveto TK} bind def %60% kleiner /ns6 {200 /Times-ISOL1 FS show TS} bind def /ks6 {200 /TimesI-ISOL1 FS show TS} bind def /bs6 {200 /TimesB-ISOL1 FS show TS} bind def /js6 {200 /TimesBI-ISOL1 FS show TS} bind def /ss6 {200 /Symbol FS show TS} bind def /is6 {160 /Times-ISOL1 FS 0 -50 rmoveto show 0 50 rmoveto TS} bind def /es6 {160 /Times-ISOL1 FS 0 110 rmoveto show 0 -110 rmoveto TS} bind def /ib6 {160 /TimesB-ISOL1 FS 0 -50 rmoveto show 0 50 rmoveto TS} bind def /eb6 {160 /TimesB-ISOL1 FS 0 110 rmoveto show 0 -110 rmoveto TS} bind def /ip6 {160 /Times-ISOL1 FS 24 24 rmoveto (\267) show 24 -24 rmoveto TS} bind def /iy6 {160 /Symbol FS 0 -50 rmoveto show 0 50 rmoveto TS} bind def %80% kleiner /ns8 {160 /Times-ISOL1 FS show TS} bind def /ks8 {160 /TimesI-ISOL1 FS show TS} bind def /bs8 {160 /TimesB-ISOL1 FS show TS} bind def /js8 {160 /TimesBI-ISOL1 FS show TS} bind def /ss8 {160 /Symbol FS show TS} bind def /is8 {120 /Times-ISOL1 FS 0 -40 rmoveto show 0 40 rmoveto TS} bind def /es8 {120 /Times-ISOL1 FS 0 90 rmoveto show 0 -90 rmoveto TS} bind def /ib8 {120 /TimesB-ISOL1 FS 0 -40 rmoveto show 0 40 rmoveto TS} bind def /eb8 {120 /TimesB-ISOL1 FS 0 90 rmoveto show 0 -90 rmoveto TS} bind def /ip8 {120 /Times-ISOL1 FS 24 24 rmoveto (\267) show 24 -24 rmoveto TS} bind def /iy8 {120 /Symbol FS 0 -50 rmoveto show 0 50 rmoveto TS} bind def /cvicvs {cvi 6 string cvs} def /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 /cvsshow1x {/nxx exch def %example nxx=99.1/99.0 nxx 0 lt {(-) show /nxx nxx abs def} if nxx 10 mul cvi /nxi exch def %nxi=991/990 nxi 10 idiv /nxa exch def %nxa=99 nxi nxa 10 mul sub /nxb exch def %nxb=1/0 nxa cvishow (,) show %nxa=99 nxb cvishow %nxb=1/0 } def /cvsshow2x {/nxx exch def %example nxx=99.12/99,02/99,00 nxx 0 lt {(-) show /nxx nxx abs def} if nxx 100 mul cvi /nxi exch def %nxi=9912/9902/00 nxi 100 idiv /nxa exch def %nxa=99 nxi nxa 100 mul sub /nxb exch def %nxb=12/02/00 nxa cvishow (,) show %nxb=99, nxb 10 ge {nxb cvishow} if %nxb=12 nxb 1 ge nxb 9 le and {(0) show nxb cvishow} if %nxb=02 nxb 0 eq {(00) show} if %nxb=00 } def /cvsshow3x {/nxx exch def %example nxx=99.123/99.012/99.001/99.000 nxx 0 lt {(-) show /nxx nxx abs def} if nxx 1000 mul cvi /nxi exch def %nxi=99123/99012/99001/99000 nxi 1000 idiv /nxa exch def %nxa=99 nxi nxa 1000 mul sub /nxb exch def %nxb=123/012/001/000 nxa cvishow (,) show %nxb=99, nxb 100 ge {nxb cvishow} if %nxb=123/012/001/000 nxb 10 ge nxb 99 le and {(0) show nxb cvishow} if %nxb=012 nxb 1 ge nxb 9 le and {(00) show nxb cvishow} if %nxb=001 nxb 0 eq {(000) show} if %nxb=000 } def /cvsshow4x {/nxx exch def %example nxx=99.1234/99.0123/99.0010/99.0001 nxx 0 lt {(-) show /nxx nxx abs def} if nxx 10000 mul cvi /nxi exch def %nxi=991234/990123/990010/990000 nxi 10000 idiv /nxa exch def %nxa=99 nxi nxa 10000 mul sub /nxb exch def %nxb=1234/0123/0010/0001 nxa cvishow (,) show %nxb=99, nxb 1000 ge {nxb cvishow} if %nxb=1234/0123/0010/0001 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 {(000) show} if %nxb=000 } def /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 {setcmykcolor rec fill} bind def /colrecst %x y width heigth c m y k {setcmykcolor rec stroke} bind def /tzo {0.0 1.0 1.0 0.0} bind def %Reproduktionsfarben /tzl {1.0 0.0 1.0 0.0} bind def /tzv {1.0 1.0 0.0 0.0} bind def /tzc {1.0 0.0 0.0 0.0} bind def /tzm {0.0 1.0 0.0 0.0} bind def /tzy {0.0 0.0 1.0 0.0} bind def /tzn {0.0 0.0 0.0 1.00} bind def %Graureihe /tzd {0.0 0.0 0.0 0.75} bind def /tzz {0.0 0.0 0.0 0.50} bind def /tzh {0.0 0.0 0.0 0.25} bind def /tzw {0.0 0.0 0.0 0.00} bind def /tzr {0.0 1.0 0.5 0.0} bind def %Elementarfarben /tzg {1.0 0.0 0.5 0.0} bind def /tzb {1.0 0.5 0.0 0.0} bind def /tzj {0.0 0.0 1.0 0.0} bind def /tzrz {0.0 1.0 0.5 0.5} bind def %Elementarfarben vergraut /tzgz {1.0 0.0 0.5 0.5} bind def /tzbz {1.0 0.5 0.0 0.5} bind def /tzjz {0.0 0.0 1.0 0.5} bind def /tfo {tzo setcmykcolor} bind def /tfl {tzl setcmykcolor} bind def /tfv {tzv setcmykcolor} bind def /tfc {tzc setcmykcolor} bind def /tfm {tzm setcmykcolor} bind def /tfy {tzy setcmykcolor} bind def /tfn {tzn setcmykcolor} bind def /tfd {tzd setcmykcolor} bind def /tfz {tzz setcmykcolor} bind def /tfh {tzh setcmykcolor} bind def /tfw {tzw setcmykcolor} bind def /tfr {tzr setcmykcolor} bind def /tfg {tzg setcmykcolor} bind def /tfb {tzb setcmykcolor} bind def /tfj {tzj setcmykcolor} bind def /tfrz {tzrz setcmykcolor} bind def /tfgz {tzgz setcmykcolor} bind def /tfbz {tzbz setcmykcolor} bind def /tfjz {tzjz setcmykcolor} bind def %allways after %Prolog /proc_XYZ_colours {%BEG proc_XYZ_colours %for xchart8=0 /SP25 80 array def %380 bis 775 mit deltalambda=05 /SP30 80 array def %380 bis 775 mit deltalambda=05 /SP35 80 array def %380 bis 775 mit deltalambda=05 /SP40 80 array def %380 bis 775 mit deltalambda=05 /SP45 80 array def %380 bis 775 mit deltalambda=05 /SP50 80 array def %380 bis 775 mit deltalambda=05 /SP55 80 array def %380 bis 775 mit deltalambda=05 /SP60 80 array def %380 bis 775 mit deltalambda=05 %for xchart8=1 /SD65 80 array def %380 bis 775 mit deltalambda=05 /SD50 80 array def %380 bis 775 mit deltalambda=05 /SP40 80 array def %380 bis 775 mit deltalambda=05 /SA00 80 array def %380 bis 775 mit deltalambda=05 /SE00 80 array def %380 bis 775 mit deltalambda=05 /SC00 80 array def %380 bis 775 mit deltalambda=05 /SP00 80 array def %380 bis 775 mit deltalambda=05 /SQ00 80 array def %380 bis 775 mit deltalambda=05 %for combined /SX00 80 array def %380 bis 775 mit deltalambda=05 /SX01 80 array def %380 bis 775 mit deltalambda=05 /SX02 80 array def %380 bis 775 mit deltalambda=05 /SX03 80 array def %380 bis 775 mit deltalambda=05 /SX04 80 array def %380 bis 775 mit deltalambda=05 /SX05 80 array def %380 bis 775 mit deltalambda=05 /SX06 80 array def %380 bis 775 mit deltalambda=05 /SX07 80 array def %380 bis 775 mit deltalambda=05 /SDAK 80 array def %380 bis 775 mit deltalambda=05 /RA 80 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 80 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 /TNC 4000 def /EE 2.718281 def %e=mac pocket calculator /C2 1.4350000 10 7 exp mul def /lamd 80 array def /TNCj 8 array def /TNCj [6000 5500 5000 4500 4000 3500 3000 2500] def xchart8 0 eq {%xchart8=0 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 } %xchart8=0 { %xchart8=1 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 } ifelse %xchart8=1 /xex 10 2 exp def /yex EE 2 exp def /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 /FARBEO 27 array def %Ostwald /FARBEO [(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 (N) (0) ( 380_770) %06 (W) (0) ( 380_770) %07 (W) (1) ( 380_770) %08 ] 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 %*************************************************** /TELI0 8 array def /TELI1 8 array def /TELI 8 array def /TELI0 [(P60) (P55) (P50) (P45) (P40) (P35) (P30) (P25)] def %7 illumin /TELI1 [(D65) (D50) (P40) (A00) (E00) (C00) (P00) (Q00)] def %7 illumin. 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 /FXN 82 array def /FYN 82 array def /FZN 82 array def /Xi 475 array def /Yi 475 array def /Zi 475 array def /XANi 475 array def /YANi 475 array def /ZANi 475 array def /AANi 475 array def %actual data for plot, spectral colours /BANi 475 array def /AAN1i 475 array def %actual data for plot, Illuminants colours (M=1) /BAN1i 475 array def /AANXi 475 array def %either from (XAN/YAN/ZAN)Mi, or (XAN/YAN/ZAN)Oi /BANXi 475 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 /XAND65 0.3127 def /YAND65 0.3290 def /ZAND65 1. XAND65 sub YAND65 sub def /XAND50 0.3457 def /YAND50 0.3585 def /ZAND50 1. XAND50 sub YAND50 sub def /XANP40 0.3799 def /YANP40 0.3764 def /ZANP40 1. XANP40 sub YANP40 sub def /XANA00 0.4475 def /YANA00 0.4074 def /ZANA00 1. XANA00 sub YANA00 sub def /XANE00 0.3333 def /YANE00 0.3333 def /ZANE00 1. XANE00 sub YANE00 sub def /XANC00 0.3100 def /YANC00 0.3161 def /ZANC00 1. XANC00 sub YANC00 sub def /XANP00 0.3604 def /YANP00 0.3531 def /ZANP00 1. XANP00 sub YANP00 sub def /XANQ00 0.3090 def /YANQ00 0.3155 def /ZANQ00 1. XANQ00 sub YANQ00 sub def xcolor 1 eq {0 1 239 {/i exch def %i=0,239 F2 i F10 i get put } for %i=0,239 0 1 050 {/i exch def %i=0,50 F02Z i F10Z i get put } for %i=0,50 } if /InCS 16 array def %16 colour spaces (Index) /InCS [(0) (0) (1) (2) (3) (4) (5) (6) (0) (0) (1) (2) (3) (4) (5) (6)] def %calculation of XW,YW,ZW for illuminant D65, D50, ... 0 1 79 {/i exch def %i=0,79 xchart8 0 eq {%xchart8=0 xchartx 0 eq {SX00 i SP60 i get put} if xchartx 1 eq {SX01 i SP55 i get put} if xchartx 2 eq {SX02 i SP50 i get put} if xchartx 3 eq {SX03 i SP45 i get put} if xchartx 4 eq {SX04 i SP40 i get put} if xchartx 5 eq {SX05 i SP35 i get put} if xchartx 6 eq {SX06 i SP30 i get put} if xchartx 7 eq {SX07 i SP25 i get put} if } %xchart8=0 { %xchart8=1 xchartx 0 eq {SX00 i SD65 i get put} if xchartx 1 eq {SX01 i SD50 i get put} if xchartx 2 eq {SX02 i SP40 i get put} if xchartx 3 eq {SX03 i SA00 i get put} if xchartx 4 eq {SX04 i SE00 i get put} if xchartx 5 eq {SX05 i SC00 i get put} if xchartx 6 eq {SX06 i SP00 i get put} if xchartx 7 eq {SX07 i SQ00 i get put} if } ifelse %xchart8=1 } for %i=0,79 0 1 79 {/i exch def %i=0,79 SDAK i xchartx 0 eq {SX00 i get} if xchartx 1 eq {SX01 i get} if xchartx 2 eq {SX02 i get} if xchartx 3 eq {SX03 i get} if xchartx 4 eq {SX04 i get} if xchartx 5 eq {SX05 i get} if xchartx 6 eq {SX06 i get} if xchartx 7 eq {SX07 i get} if put } for %i=0,79 /YKSUM 0 def %For CIE Illuminant E 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,79 FXN i SDAK i get F2 00 i add get mul YKSUM div 100 mul put FYN i SDAK i get F2 80 i add get mul YKSUM div 100 mul put FZN i SDAK i get F2 160 i add get mul YKSUM div 100 mul put } for %i=0,79 FXN 80 FXN 79 get put FYN 80 FYN 79 get put FZN 80 FZN 79 get put DOW 80 DOW 79 get put 0 1 80 {/i exch def %i=0,80 %for any illuminant Xi i FXN i get put Yi i FYN i get put Zi i FZN i get put /SUM FXN i get FYN i get add FZN i get add 0.00001 add def XANi i FXN i get SUM div put YANi i FYN i get SUM div put ZANi i FZN i get SUM div put } for %i=0,80 0 1 16 {/i exch def %i=0,16 %for illuminant E: S(lamdda=100) FXNZ i F02Z 00 i add get 100 mul YKSUM div 100 mul put FYNZ i F02Z 17 i add get 100 mul YKSUM div 100 mul put FZNZ i F02Z 34 i add get 100 mul YKSUM div 100 mul put } for %i=0,16 0 1 16 {/i exch def %i=0,16 %for illuminant E: S(lamdda=100) XZi i FXNZ i get put YZi i FYNZ i get put ZZi i FZNZ i get put /SUMZ FXNZ i get FYNZ i get add FZNZ i get add def XANZi i FXNZ i get SUMZ div put YANZi i FYNZ i get SUMZ div put ZANZi i FZNZ i get SUMZ div put } for %i=0,16 /a2 1.0 def /b2 0.4 neg def /K 0 def %normalization Y=1.00 %/K 1 def %normalization Y=0.886 %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 FXN i get add def /YW YW FYN i get add def /ZW ZW FZN i get add def } for %i=0,79 /SUMW XW YW add ZW add def %for X00, X01, X02, X03, X04, X05, X06, X07 /XANW XW SUMW FL add div def /YANW YW SUMW FL add div def /ZANW ZW SUMW FL add div def K 0 eq {%K=0 /XK XW def /YK YW def /ZK ZW def }%K=0 {%K=1 /XK XW 0.8859 mul def /YK YW 0.8859 mul def /ZK ZW 0.8859 mul def } ifelse %K=1 /SUMK XK YK add ZK add def %for X00, X01, X02, X03, X04, X05, X06, X07 /XANK XK SUMK div def /YANK YK SUMK div def /ZANK ZK SUMK div def /hABW 0 def /xshift 10 array def %max 6 device + 4 elementary /yshift 10 array def /colori 10 array def /XANWL XANW def /YANWL YANW def /ZANWL ZANW def /XANWC XANC00 def /YANWC YANC00 def /ZANWC ZANC00 def /AnYi 475 array def /BnYi 475 array def } bind def %END proc_XYZ_colours %**************************************************************** /proc_PDT_colours {%BEG proc_PDT_colours /l02Ii 77 array def /m02Ii 77 array def /s02Ii 77 array def /l02Mi 77 array def /m02Mi 77 array def /s02Mi 77 array def /X02Ii 77 array def /Y02Ii 77 array def /Z02Ii 77 array def /xan02Ii 77 array def /yan02Ii 77 array def /zan02Ii 77 array def /X02Mi 77 array def /Y02Mi 77 array def /Z02Mi 77 array def /xan02Mi 77 array def /yan02Mi 77 array def /zan02Mi 77 array def /ycuri 77 array def /l02Mi [ %LMS2.TXT %L2.DAT CIE Table 6.7, p. 34 380=390,385=390, 390, 395, ...760nm 4.150019e-4 4.150019e-4 4.150019e-4 1.051914e-3 2.408353e-3 %400 4.833371e-3 8.721273e-3 1.338382e-2 1.844803e-2 2.293190e-2 2.818772e-2 3.410515e-2 4.025595e-2 4.493761e-2 4.986433e-2 %450 5.534138e-2 6.471575e-2 8.069006e-2 9.947639e-2 1.188010e-1 1.401458e-1 1.639532e-1 1.915579e-1 2.329271e-1 2.889615e-1 %500 3.597162e-1 4.436801e-1 5.364880e-1 6.285647e-1 7.047255e-1 7.706373e-1 8.257146e-1 8.810083e-1 9.190730e-1 9.401995e-1 %550 9.657395e-1 9.814541e-1 9.944890e-1 1 9.923160e-1 9.694379e-1 9.556085e-1 9.276625e-1 8.859720e-1 8.339884e-1 %600 7.751040e-1 7.057161e-1 6.307685e-1 5.542300e-1 4.799434e-1 4.007098e-1 3.278612e-1 2.657847e-1 2.132849e-1 1.651391e-1 %650 1.247498e-1 9.300794e-2 6.850937e-2 4.986664e-2 3.582284e-2 2.537932e-2 1.772025e-2 1.216998e-2 8.471687e-3 5.897527e-3 %700 4.091288e-3 2.804465e-3 1.920570e-3 1.326875e-3 9.177829e-4 6.393665e-4 4.460361e-4 3.108708e-4 2.193310e-4 1.545503e-4 %750 1.095065e-4 7.799195e-5 ] def /m02Mi [ %M2.DAT 3.683495e-4 3.683495e-4 3.683495e-4 9.586496e-4 2.269917e-3 %400 4.700132e-3 8.793667e-3 1.452780e-2 2.166506e-2 2.957127e-2 3.945663e-2 5.182030e-2 6.477837e-2 7.588048e-2 8.705225e-2 %450 9.819288e-2 1.162733e-1 1.445407e-1 1.758936e-1 2.053998e-1 2.357545e-1 2.680649e-1 3.036267e-1 3.570590e-1 4.277598e-1 %500 5.155847e-1 6.155169e-1 7.191508e-1 8.166012e-1 8.855437e-1 9.356857e-1 9.688577e-1 9.952165e-1 9.971948e-1 9.771922e-1 %550 9.995->9.95? 9.565771e-1 9.177407e-1 8.732126e-1 8.135046e-1 7.402868e-1 6.532810e-1 5.725950e-1 4.925950e-1 4.112444e-1 3.344260e-1 %600 2.648744e-1 2.052721e-1 1.562428e-1 1.166407e-1 8.558743e-2 6.211264e-2 4.448770e-2 3.142624e-2 2.180369e-2 1.544792e-2 %650 1.071199e-2 7.302475e-3 4.971759e-3 3.436687e-3 2.376184e-3 1.637344e-3 1.121270e-3 7.610442e-4 5.254605e-4 3.653171e-4 %700 2.534195e-4 1.744014e-4 1.206090e-4 8.417245e-5 5.893455e-5 4.160449e-5 2.943542e-5 2.088575e-5 1.504562e-5 1.082007e-5 %750 7.822762e-6 5.690886e-6 ] def /s02Mi [ %S2.DAT CIE 171.1:2006 9.547289e-3 9.547289e-3 9.547289e-3 2.382484e-2 5.665002e-2 1.224503e-1 2.330076e-1 %410 3.813643e-1 5.436132e-1 6.744815e-1 8.025461e-1 9.035662e-1 9.910145e-1 9.915166e-1 9.553885e-1 8.602408e-1 7.867016e-1 %460 7.382611e-1 6.463534e-1 5.164164e-1 3.903373e-1 2.903220e-1 2.118654e-1 1.605240e-1 1.228400e-1 8.889554e-2 6.082050e-2 %510 4.281244e-2 2.920317e-2 1.939099e-2 1.260114e-2 8.094500e-3 5.088971e-3 3.168911e-3 1.958935e-3 1.202763e-3 7.401673e-4 %560 4.559845e-4 2.817993e-4 1.750370e-4 1.094536e-4 6.899855e-5 4.390257e-5 2.822280e-5 1.834593e-5 1.206675e-5 8.034895e-6 %610 5.418387e-6 0 0 0 0 0 0 0 0 0 %650 0 0 0 0 0 0 0 0 0 0 %700 0 0 0 0 0 0 0 0 0 0 %750 0 0 ] def %ED TC1-36 CIE 171-2, 2015, page 16, line 20-23 /A11 1.94735469 def /A12 -1.41445123 def /A13 0.36476327 def /A21 0.68990272 def /A22 0.34832189 def /A33 1.93485343 def /fsl02Mi 0 def /fsm02Mi 0 def /fss02Mi 0 def 0 1 76 {/i exch def %i=0,76 Summe fsumlms /fsl02Mi fsl02Mi l02Mi i get add def /fsm02Mi fsm02Mi m02Mi i get add def /fss02Mi fss02Mi s02Mi i get add def } for %i=0,76 0 1 76 {/i exch def %i=0,76 Normierung LMS l02Ii i l02Mi i get fsm02Mi mul fsl02Mi div put m02Ii i m02Mi i get put s02Ii i s02Mi i get fsm02Mi mul fss02Mi div put } for %i=0,76 /fsl02Ii 0 def /fsm02Ii 0 def /fss02Ii 0 def 0 1 76 {/i exch def %i=0,76 Summe fsumlms /fsl02Ii fsl02Ii l02Ii i get add def /fsm02Ii fsm02Ii m02Ii i get add def /fss02Ii fss02Ii s02Ii i get add def } for %i=0,76 0 1 76 {/i exch def %i=0,76 X02Ii i l02Mi i get A11 mul m02Mi i get A12 mul add s02Mi i get A13 mul add put Y02Ii i l02Mi i get A21 mul m02Mi i get A22 mul add put Z02Ii i s02Mi i get A33 mul put } for %i=0,76 /fsX02Ii 0 def /fsY02Ii 0 def /fsZ02Ii 0 def 0 1 76 {/i exch def %i=0,76 Summe fsumxyzIi /fsX02Ii fsX02Ii X02Ii i get add def /fsY02Ii fsY02Ii Y02Ii i get add def /fsZ02Ii fsZ02Ii Z02Ii i get add def } for %i=0,76 0 1 76 {/i exch def %i=0,76 Normierung auf 1 XYZ X02Mi i X02Ii i get 1.1510330 div put %max 600nm Y02Mi i Y02Ii i get 0.9994608 div put %max 555nm Z02Mi i Z02Ii i get 1.9184370 div put %max 445nm } for %i=0,76 /fsX02Mi 0 def /fsY02Mi 0 def /fsZ02Mi 0 def 0 1 76 {/i exch def %i=0,76 Summe fsumxyzMi /fsX02Mi fsX02Mi X02Mi i get add def /fsY02Mi fsY02Mi Y02Mi i get add def /fsZ02Mi fsZ02Mi Z02Mi i get add def } for %i=0,76 0 1 76 {/i exch def %i=0,76 xyzan /sumXYZ X02Ii i get Y02Ii i get add Z02Ii i get add def xan02Ii i X02Ii i get sumXYZ div put yan02Ii i Y02Ii i get sumXYZ div put zan02Ii i Z02Ii i get sumXYZ div put } for %i=0,76 } bind def %END proc_PDT_colours %************************************************* /proc_data {%BEG proc_data xchart3 0 eq {%xchart3=0 plot only if data are availble %calculation of transformation data /FARBE 27 array def /FARBE [(Illuminants) () () %00 () () () %01 (Y=100, 100, 100, 100, 100) () () %02 () () () %03 (L*=100, 100, 100, 100, 100) () () %04 () () () %05 () () () %06 () () () %07 () () () %08 ] def %********************************************************* /iV2V8 2 def %example for Value 0:V2A, 1:V5A, 2:V8A %Input OSA /xyan_tab2A 21 array def /xyan_tab2A % 00 01 02 03 04 05 06 07 08 09 10 11 12 [ 04 05 06 07 07 02 03 04 05 05 05 05 057] def %058 samples V=2A /xyan_ill2A 950 array def %max 475 of xan and yan /xyan_ill2A %BEG xyan_ill2A [%OSA colour order system with 58 samples %data: 4+5+6+7+7+2+3+4+5+5+5+5=58 % 12 F39OM.DAT (M für L=-4) 20.4.93 % 1 4 0 1OSA78 0 0 0 0 2758 2303 2465 2362 2172 2425 1881 2492 % 1012 1020 1021 1013 % 1 5 0 2OSA78 0 0 0 0 3435 2642 3104 2726 2770 2818 2430 2914 2084 3022 % 1045 1072 1088 1091 1080 % 1 6 0 3OSA78 0 0 0 0 4236 2940 3875 3053 3511 3176 3139 3309 2756 3455 2357 3617 % 1029 1083 1125 1153 1161 1145 % 1 7 0 4OSA78 0 0 0 0 5132 3159 4751 3304 4363 3461 3968 3631 3564 3816 3145 4023 2699 4262 % 0949 1027 1100 1162 1204 1218 1197 % 1 7 0 5OSA78 0 0 0 0 5677 3432 5289 3627 4883 3837 4466 4063 4038 4310 3592 4590 3110 4927 % 0906 0997 1089 1170 1229 1252 1229 % 1 2 0 6OSA78 0 0 0 0 5132 3159 5677 3432 % 0949 0906 % 1 3 0 7OSA78 0 0 0 0 4236 2940 4751 3304 5289 3627 % 1029 1027 0997 % 1 4 0 8OSA78 0 0 0 0 3435 2642 3875 3053 4363 3461 4883 3837 % 1045 1083 1100 1089 % 1 5 0 9OSA78 0 0 0 0 2758 2303 3104 2726 3511 3176 3968 3631 4466 4063 % 1012 1072 1125 1162 1170 % 1 5 0 10OSA78 0 0 0 0 2465 2362 2770 2818 3139 3309 3564 3816 4038 4310 % 1020 1088 1153 1204 1229 % 1 5 0 11OSA78 0 0 0 0 2172 2425 2430 2914 2756 3455 3145 4023 3592 4590 % 1021 1091 1161 1218 1252 % 1 5 0 12OSA78 0 0 0 0 1881 2492 2084 3022 2357 3617 2699 4262 3110 4927 % 1013 1080 1145 1197 1229 ] def %END xyan_ill2A /Y_ill2A 950 array def %25*19x2=475x2=950 data; 475 of xan and yan /Y_ill2A %BEG Y_ill2A [% 1 4 0 1OSA78 0 0 0 0 % 2758 2303 2465 2362 2172 2425 1881 2492 1012 1020 1021 1013 % 1 5 0 2OSA78 0 0 0 0 % 3435 2642 3104 2726 2770 2818 2430 2914 2084 3022 1045 1072 1088 1091 1080 % 1 6 0 3OSA78 0 0 0 0 % 4236 2940 3875 3053 3511 3176 3139 3309 2756 3455 2357 3617 1029 1083 1125 1153 1161 1145 % 1 7 0 4OSA78 0 0 0 0 % 5132 3159 4751 3304 4363 3461 3968 3631 3564 3816 3145 4023 2699 4262 0949 1027 1100 1162 1204 1218 1197 % 1 7 0 5OSA78 0 0 0 0 % 5677 3432 5289 3627 4883 3837 4466 4063 4038 4310 3592 4590 3110 4927 0906 0997 1089 1170 1229 1252 1229 % 1 2 0 6OSA78 0 0 0 0 % 5132 3159 5677 3432 0949 0906 % 1 3 0 7OSA78 0 0 0 0 % 4236 2940 4751 3304 5289 3627 1029 1027 0997 % 1 4 0 8OSA78 0 0 0 0 % 3435 2642 3875 3053 4363 3461 4883 3837 1045 1083 1100 1089 % 1 5 0 9OSA78 0 0 0 0 % 2758 2303 3104 2726 3511 3176 3968 3631 4466 4063 1012 1072 1125 1162 1170 % 1 5 0 10OSA78 0 0 0 0 % 2465 2362 2770 2818 3139 3309 3564 3816 4038 4310 1020 1088 1153 1204 1229 % 1 5 0 11OSA78 0 0 0 0 % 2172 2425 2430 2914 2756 3455 3145 4023 3592 4590 1021 1091 1161 1218 1252 % 1 5 0 12OSA78 0 0 0 0 % 1881 2492 2084 3022 2357 3617 2699 4262 3110 4927 1013 1080 1145 1197 1229 ] def %END Y_ill2A %**************************************************** /xyan_tab5A 21 array def /xyan_tab5A % 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 [ 02 04 05 08 08 08 07 07 05 05 06 07 08 08 07 03 097] def %98 samples V5A /xyan_ill5A 950 array def %max 475 of xan and yan /xyan_ill5A %BEG xyan_ill5A [%OSA colour system with 101 samples %data: 2+4+5+8+8+8+7+7+5+5+6+7+8+8+7+3=98 % 16 F39O0 DAT (0 für L=0) 20 4 93 % 1 2 0 1OSA78 0 0 0 0 2457 2349 2260 2391 % 2650 2652 % 1 4 0 2OSA78 0 0 0 0 2872 2598 2655 2652 2437 2708 2217 2767 % 2749 2768 2775 2768 % 1 5 0 3OSA78 0 0 0 0 3350 2835 3118 2903 2883 2974 2644 3049 2401 3128 % 2812 2858 2888 2900 2893 % 1 8 0 4OSA78 0 0 0 0 4130 2972 3886 3050 3640 3131 3391 3218 3138 3310 2882 3406 2617 3511 2345 3622 % 2722 2814 2893 2957 3000 3020 3013 2977 % 1 8 0 5OSA78 0 0 0 0 4469 3230 4212 3327 3951 3429 3688 3537 3421 3652 3147 3775 2863 3909 2567 4056 % 2735 2850 2952 3036 3095 3125 3119 3073 % 1 8 0 6OSA78 0 0 0 0 4824 3475 4555 3594 4283 3719 4007 3852 3726 3993 3438 4146 3139 4315 2822 4506 % 2716 2855 2981 3087 3164 3205 3201 3142 % 1 7 0 7OSA78 0 0 0 0 5186 3697 4910 3841 4629 3992 4343 4152 4052 4323 3753 4510 3440 4720 % 2663 2824 2974 3102 3199 3252 3249 % 1 7 0 8OSA78 0 0 0 0 5544 3884 5267 4057 4982 4237 4691 4427 4392 4632 4086 4855 3765 5111 % 2582 2759 2929 3078 3195 3261 3259 % 1 5 0 9OSA78 0 0 0 0 4130 2972 4469 3230 4824 3475 5186 3697 5544 3884 % 2722 2735 2716 2663 2582 % 1 5 0 10OSA78 0 0 0 0 3886 3050 4212 3327 4555 3594 4910 3841 5267 4057 % 2814 2850 2855 2824 2759 % 1 6 0 11OSA78 0 0 0 0 3350 2835 3640 3131 3951 3429 4283 3719 4629 3992 4982 4237 % 2812 2893 2952 2981 2974 2929 % 1 7 0 12OSA78 0 0 0 0 2872 2598 3118 2903 3391 3218 3688 3537 4007 3852 4343 4152 4691 4427 % 2749 2858 2957 3036 3087 3102 3078 % 1 8 0 13OSA78 0 0 0 0 2457 2349 2655 2652 2883 2974 3138 3310 3421 3652 3726 3993 4052 4323 4392 4632 % 2650 2768 2888 3000 3095 3164 3199 3195 % 1 8 0 14OSA78 0 0 0 0 2260 2391 2437 2708 2644 3049 2882 3406 3147 3775 3438 4146 3753 4510 4086 4855 % 2652 2775 2900 3020 3125 3205 3252 3261 % 1 7 0 15OSA78 0 0 0 0 2217 2767 2401 3128 2617 3511 2863 3909 3139 4315 3440 4720 3765 5111 % 2768 2893 3013 3119 3201 3249 3259 % 1 3 0 16OSA78 0 0 0 0 2345 3622 2567 4056 2822 4506 % 2977 3073 3142 ] def %END xyan_ill5A /Y_ill5A 950 array def %max 475 of xan and yan /Y_ill5A %BEG Y_ill5A [% 16 F39O0 DAT (0 für L=0) 20 4 93 % 1 2 0 1OSA78 0 0 0 0 % 2457 2349 2260 2391 2650 2652 % 1 4 0 2OSA78 0 0 0 0 % 2872 2598 2655 2652 2437 2708 2217 2767 2749 2768 2775 2768 % 1 5 0 3OSA78 0 0 0 0 % 3350 2835 3118 2903 2883 2974 2644 3049 2401 3128 2812 2858 2888 2900 2893 % 1 8 0 4OSA78 0 0 0 0 % 4130 2972 3886 3050 3640 3131 3391 3218 3138 3310 2882 3406 2617 3511 2345 3622 2722 2814 2893 2957 3000 3020 3013 2977 % 1 8 0 5OSA78 0 0 0 0 % 4469 3230 4212 3327 3951 3429 3688 3537 3421 3652 3147 3775 2863 3909 2567 4056 2735 2850 2952 3036 3095 3125 3119 3073 % 1 8 0 6OSA78 0 0 0 0 % 4824 3475 4555 3594 4283 3719 4007 3852 3726 3993 3438 4146 3139 4315 2822 4506 2716 2855 2981 3087 3164 3205 3201 3142 % 1 7 0 7OSA78 0 0 0 0 % 5186 3697 4910 3841 4629 3992 4343 4152 4052 4323 3753 4510 3440 4720 2663 2824 2974 3102 3199 3252 3249 % 1 7 0 8OSA78 0 0 0 0 % 5544 3884 5267 4057 4982 4237 4691 4427 4392 4632 4086 4855 3765 5111 2582 2759 2929 3078 3195 3261 3259 % 1 5 0 9OSA78 0 0 0 0 % 4130 2972 4469 3230 4824 3475 5186 3697 5544 3884 2722 2735 2716 2663 2582 % 1 5 0 10OSA78 0 0 0 0 % 3886 3050 4212 3327 4555 3594 4910 3841 5267 4057 2814 2850 2855 2824 2759 % 1 6 0 11OSA78 0 0 0 0 % 3350 2835 3640 3131 3951 3429 4283 3719 4629 3992 4982 4237 2812 2893 2952 2981 2974 2929 % 1 7 0 12OSA78 0 0 0 0 % 2872 2598 3118 2903 3391 3218 3688 3537 4007 3852 4343 4152 4691 4427 2749 2858 2957 3036 3087 3102 3078 % 1 8 0 13OSA78 0 0 0 0 % 2457 2349 2655 2652 2883 2974 3138 3310 3421 3652 3726 3993 4052 4323 4392 4632 2650 2768 2888 3000 3095 3164 3199 3195 % 1 8 0 14OSA78 0 0 0 0 % 2260 2391 2437 2708 2644 3049 2882 3406 3147 3775 3438 4146 3753 4510 4086 4855 2652 2775 2900 3020 3125 3205 3252 3261 % 1 7 0 15OSA78 0 0 0 0 % 2217 2767 2401 3128 2617 3511 2863 3909 3139 4315 3440 4720 3765 5111 2768 2893 3013 3119 3201 3249 3259 % 1 3 0 16OSA78 0 0 0 0 % 2345 3622 2567 4056 2822 4506 2977 3073 3142 ] def %END Y_ill5A %********************************************************** /xyan_tab8A 21 array def /xyan_tab8A % 00 01 02 03 04 05 06 07 08 09 10 11 12 13 [ 03 05 05 05 04 03 02 01 04 07 08 06 03 055] def %056 samples V=2A /xyan_ill8A 950 array def %max 475 of xan and yan /xyan_ill8A %BEG xyan_ill8A [%OSA colour order system with 56 samples %data: 3+5+5+5+4+3+2+1+4+7+8+6+3=56 % 13 F39OP DAT (P =+4) 20 4 93 % 1 3 0 1OSA78 0 0 0 0 3124 2996 2942 3054 2758 3114 % 5870 5918 5943 % 1 5 0 2OSA78 0 0 0 0 3520 3173 3330 3240 3138 3310 2944 3383 2746 3460 % 5939 6026 6089 6124 6129 % 1 5 0 3OSA78 0 0 0 0 3750 3407 3551 3486 3350 3569 3146 3657 2937 3750 % 6051 6160 6240 6288 6298 % 1 5 0 4OSA78 0 0 0 0 3992 3638 3785 3732 3576 3830 3363 3934 3145 4044 % 6130 6263 6363 6424 6441 % 1 4 0 5OSA78 0 0 0 0 4244 3863 4031 3972 3815 4086 3594 4208 % 6170 6328 6450 6526 % 1 3 0 6OSA78 0 0 0 0 4286 4203 4064 4335 3838 4476 % 6351 6494 6586 % 1 2 0 7OSA78 0 0 0 0 4548 4420 4322 4571 % 6327 6492 % 1 1 0 8OSA78 0 0 0 0 4584 4788 % 6445 % 1 4 0 9OSA78 0 0 0 0 3520 3173 3750 3407 3992 3638 4244 3863 % 5939 6051 6130 6170 % 1 7 0 10OSA78 0 0 0 0 3124 2996 3330 3240 3551 3486 3785 3732 4031 3972 4286 4203 4548 4420 % 5870 6026 6160 6263 6328 6351 6327 % 1 8 0 11OSA78 0 0 0 0 2942 3054 3138 3310 3350 3569 3576 3830 3815 4086 4064 4335 4322 4571 4584 4788 % 5918 6089 6240 6363 6450 6494 6492 6445 % 1 6 0 12OSA78 0 0 0 0 2758 3114 2944 3383 3146 3657 3363 3934 3594 4208 3838 4476 % 5943 6124 6288 6424 6526 6586 % 1 3 0 13OSA78 0 0 0 0 2746 3460 2937 3750 3145 4044 % 6129 6298 6441 ] def %END xyan_ill8A /Y_ill8A 950 array def %25*19x2=475x2=950 data; 475 of xan and yan /Y_ill8A %BEG Y_ill8A [% 1 4 0 1OSA78 0 0 0 0 % 13 F39OP DAT (P =+4) 20 4 93 % 1 3 0 1OSA78 0 0 0 0 % 3124 2996 2942 3054 2758 3114 5870 5918 5943 % 1 5 0 2OSA78 0 0 0 0 % 3520 3173 3330 3240 3138 3310 2944 3383 2746 3460 5939 6026 6089 6124 6129 % 1 5 0 3OSA78 0 0 0 0 % 3750 3407 3551 3486 3350 3569 3146 3657 2937 3750 6051 6160 6240 6288 6298 % 1 5 0 4OSA78 0 0 0 0 % 3992 3638 3785 3732 3576 3830 3363 3934 3145 4044 6130 6263 6363 6424 6441 % 1 4 0 5OSA78 0 0 0 0 % 4244 3863 4031 3972 3815 4086 3594 4208 6170 6328 6450 6526 % 1 3 0 6OSA78 0 0 0 0 % 4286 4203 4064 4335 3838 4476 6351 6494 6586 % 1 2 0 7OSA78 0 0 0 0 % 4548 4420 4322 4571 6327 6492 % 1 1 0 8OSA78 0 0 0 0 % 4584 4788 6445 % 1 4 0 9OSA78 0 0 0 0 % 3520 3173 3750 3407 3992 3638 4244 3863 5939 6051 6130 6170 % 1 7 0 10OSA78 0 0 0 0 % 3124 2996 3330 3240 3551 3486 3785 3732 4031 3972 4286 4203 4548 4420 5870 6026 6160 6263 6328 6351 6327 % 1 8 0 11OSA78 0 0 0 0 % 2942 3054 3138 3310 3350 3569 3576 3830 3815 4086 4064 4335 4322 4571 4584 4788 5918 6089 6240 6363 6450 6494 6492 6445 % 1 6 0 12OSA78 0 0 0 0 % 2758 3114 2944 3383 3146 3657 3363 3934 3594 4208 3838 4476 5943 6124 6288 6424 6526 6586 % 1 3 0 13OSA78 0 0 0 0 % 2746 3460 2937 3750 3145 4044 6129 6298 6441 ] def %END Y_ill8A %************************************************************* /xyan_ill 950 array def %max 475 of xan and yan /k10 0 def iV2V8 0 eq {/k11 xyan_tab2A 12 get def} if iV2V8 1 eq {/k11 xyan_tab5A 16 get def} if iV2V8 2 eq {/k11 xyan_tab8A 13 get def} if /jm k11 1 add 2 mul 1 sub def 0 1 jm {/j exch def %j=0,jm iV2V8 0 eq {xyan_ill j xyan_ill2A j get put} if iV2V8 1 eq {xyan_ill j xyan_ill5A j get put} if iV2V8 2 eq {xyan_ill j xyan_ill8A j get put} if } for %j=0,jm /Y_ill 475 array def %Y*1000 data /jm k11 def 0 1 jm {/j exch def %j=0,jm iV2V8 0 eq {Y_ill j Y_ill2A j get put} if iV2V8 1 eq {Y_ill j Y_ill5A j get put} if iV2V8 2 eq {Y_ill j Y_ill8A j get put} if } for %j=0,jm %Input /xyan_illn 64 array def %16*4=64 xan,yan*64 data /xyan_illn %BEG xyan_ill [%Illuminants for Series P60 to P25 and Series D65, D50, to Q00, 02 & 20 degree % 04 % 1 08 01 1 PSER02 3218 3315 3321 3407 3447 3513 3603 3632 3799 3764 4047 3904 4363 4038 4764 4136 % 1 08 02 2 DSER02 3127 3290 3457 3585 3799 3764 4475 4074 3333 3333 3100 3161 3604 3531 3090 3155 % 1 08 05 3 PSER10 3224 3321 3330 3410 3460 3512 3621 3628 3822 3756 4076 3892 4398 4024 4802 4120 % 1 08 08 4 DSER10 3137 3309 3477 3595 3822 3756 4511 4059 3333 3333 3103 3190 3609 3525 3089 3163 ] def %END xyan_illn /xyan_ill_D65_02 [3127 3290] def /xyan_ill_D65_10 [3137 3309] def /XMi 475 array def %4x31 /YMi 475 array def /ZMi 475 array def /XANMi 475 array def /YANMi 475 array def /ZANMi 475 array def /AANMi 475 array def /BANMi 475 array def 0 0 0 1 setcmykcolor %Amount data pairs /i0a k10 def /i0e k11 def /fscale 0.0001 def /fscalY 0.01 def k10 1 k11 {/k1 exch def %k1=k10,k11 /k2 k1 2 mul def XANMi k1 xyan_ill k2 0 add get fscale mul put YANMi k1 xyan_ill k2 1 add get fscale mul put ZANMi k1 1. XANMi k1 get sub YANMi k1 get sub put /YVALUE Y_ill k1 get fscalY mul def % /YVALUE 999999 fscale mul def YMi k1 YVALUE put /SUMY YVALUE YANMi k1 get div def XMi k1 SUMY XANMi k1 get mul put ZMi k1 SUMY ZANMi k1 get mul put } for %k1=k10,k11 %*********************** %XWM,YWM,ZWM and XKW,YKW,ZKW for white xcolor 0 eq {%xcolor=0 /YANWM xyan_ill_D65_02 0 get fscale mul def /YANWM xyan_ill_D65_02 1 get fscale mul def } if %xcolor=0 xcolor 1 eq {%xcolor=1 /YANWM xyan_ill_D65_10 0 get fscale mul def /YANWM xyan_ill_D65_10 1 get fscale mul def } if %xcolor=1 /ZANWM 1. YANWM sub YANWM sub def /YWM 100. def /SUMWM YWM YANWM div def /XWM SUMWM YANWM mul def /ZWM SUMWM ZANWM mul def /XKM XWM def /YKM YWM def /ZKM ZWM def } if %xchart3=0 plot only if data are availble } bind def %END proc_data %*********************************************************************** /proc_arc_ill {%BEG proc_arc_ill xchart3 0 eq {%xchart3=0 plot only if data are availble } if %xchart3=0 plot only if data are availble } bind def %END proc_arc_ill %*********************************************************************** /proc_plot_data {%BEG proc_plot_data xchart3 0 eq {%xchart3=0 plot only if data are availble /k1a 00 def /k1e 00 def /k0a 00 def /k0e 00 def newpath k1a 1 k1e {/k exch def %k=0,24 amount ellipses /k19 k 19 mul def %for serie XANMi,YANMi,YMi k0a 1 k0e {/kl exch def %kl=k0a,k0e for points and additional line % kl 0 eq {/i0a 00 def /i0e 00 def} if % kl 1 eq {/i0a 01 def /i0e 18 def} if i0a 1 i0e {/i exch def %i=i0a,i0e %19 points per ellipsis /Ylre 1 def %linear (l) relative (re) Y data /ik19 i k19 add def xchartl 0 eq {%xchartl=0 (x,y) /Ylre 1 def %chromaticity, not used for (x,y) AnYi i XANMi ik19 get fakt mul put %x BnYi i YANMi ik19 get fakt mul put %y } if %xchartl=0 xchartl 1 eq {%xchartl=1 (a0=x/y, b0=-0.4*z/y) /Ylre 1 def %chromaticity AnYi i XANMi ik19 get YANMi ik19 get FL add div Ylre mul a2 mul fakt mul put %a0 BnYi i ZANMi ik19 get YANMi ik19 get FL add div Ylre mul b2 mul fakt mul put %b0 } if %xchartl=1 xchartl 2 eq {%xchartl=2 (a1=[x-XANT]/y, b1=z/y) /Ylre 1 def %chromaticity AnYi i XANMi ik19 get XANT sub YANMi ik19 get FL add div Ylre mul a2 mul fakt mul put %a1 BnYi i ZANMi ik19 get YANMi ik19 get FL add div Ylre mul b2 mul fakt mul put %b1 } if %xchartl=2 xchartl 3 eq {%xchartl=3 (a2=[x-XANT2]/y, b2=z/y) /XANT2 0.110 def /Ylre 1 def %chromaticity AnYi i XANMi ik19 get XANT2 sub YANMi ik19 get FL add div Ylre mul a2 mul fakt mul put %a2 BnYi i ZANMi ik19 get YANMi ik19 get FL add div Ylre mul b2 mul fakt mul put %b2 } if %xchartl=3 kl 0 eq {%kl=0 AnYi i get BnYi i get 30 0 360 arc fill 0 0 0 setrgbcolor newpath } if %kl=0 kl 1 eq {%kl=1 AnYi i get BnYi i get i i0a eq {moveto} if i i0a 1 add ge i i0e lt and {lineto} if % i i0e eq {lineto stroke newpath} if i i0e eq {lineto closepath stroke newpath} if } if %kl=1 } for %i=i0a,i0e } for %kl=k0a,k0e for points and additional line } for %k=0,24 amount ellipses } if %xchart3=0 plot only if data are availble } bind def %END proc_plot_data %**************************************************************** %allways /proc_DEF_colours {%BEG proc_DEF_colours %Colour Deficiencies /ip1 700 380 sub 5 idiv def %ip=64:700nm /XANP1 XANi ip1 get def /YANP1 YANi ip1 get def /ZANP1 ZANi ip1 get def /id1 505 380 sub 5 idiv def %ip=25:505nm /XAND1 XANi id1 get def /YAND1 YANi id1 get def /ZAND1 ZANi id1 get def /it1 400 380 sub 5 idiv def %ip=4:400nm /XANT1 XANi it1 get def /YANT1 YANi it1 get def /ZANT1 ZANi it1 get def %************************* /XANP XANP1 def /YANP YANP1 def /ZANP ZANP1 def /XAND 1.000 def /YAND 0.001 def /ZAND 0.999 def /XANT 0.171 def /YANT 0.001 def /ZANT 1.000 XANT sub YANT sub def %************************* /XAN00 0.3333 def %Illuminant E /YAN00 0.3333 def /mP YAN00 YANP sub XAN00 XANP sub div def %700nm /bP YAN00 XAN00 mP mul sub def /mD YAN00 YAND sub XAN00 XAND sub div def %xx /bD YAN00 XAN00 mD mul sub def /mT YAN00 YANT sub XAN00 XANT sub div def %xx /bT YAN00 XAN00 mT mul sub def %************************* /mP1 YAN00 YANP1 sub XAN00 XANP1 sub div def %700nm /bP1 YAN00 XAN00 mP1 mul sub def %Deuteranop DM 0 1 0 setrgbcolor /i 505 495 sub 5 idiv 1 add def %2 D (505c,E) /XAND1 XANZi i get def /YAND1 YANZi i get def /mD1 YAN00 YAND1 sub XAN00 XAND1 sub div def %505cnm /bD1 YAN00 XAN00 mD1 mul sub def /mT1 YAN00 YANT1 sub XAN00 XANT1 sub div def %400nm /bT1 YAN00 XAN00 mT1 mul sub def /ishow {0 -40 rmoveto show 0 40 rmoveto} def /eshow {0 60 rmoveto show 0 -60 rmoveto} def /imshow {0 -40 rmoveto (m) show 0 40 rmoveto} def /imaxshow {0 -40 rmoveto (max) show 0 40 rmoveto} def /iminshow {0 -40 rmoveto (min) show 0 40 rmoveto} def } bind def %END proc_DEF_colours %allways if xchart6>=1 /proc_chromaticity {%BEG proc_chromaticity %chromaticity definitions xchartl 0 eq {%xchartl=0 %(x,y) 0 1 79 {/i exch def %i=0,79 AANi i XANi i get put BANi i YANi i get put } for %i=0,79 0 1 16 {/i exch def %i=0,16 AANZi i XANZi i get put BANZi i YANZi i get put } for %i=0,16 %COlOUR VISION DEFICIENCIES /AANP1 XANP1 def /BANP1 YANP1 def /AAND1 XAND1 def /BAND1 YAND1 def /AANT1 XANT1 def /BANT1 YANT1 def /AANP XANP def /BANP YANP def /AAND XAND def /BAND YAND def /AANT XANT def /BANT YANT def %ACHROMATIC COLOUR /AANWL XANWL def /BANWL YANWL def /AANWC XANWC def /BANWC YANWC def } if %xchartl=0 %only for (x,y) %***************** xchartl 1 eq {%xchartl=1 %only for (a,b), (a+,b+) 0 1 79 {/i exch def %i=0,79 AANi i XANi i get YANi i get FL add div a2 mul put BANi i ZANi i get YANi i get FL add div b2 mul put } for %i=0,79 0 1 16 {/i exch def %i=0,16 AANZi i XANZi i get YANZi i get FL add div a2 mul put BANZi i ZANZi i get YANZi i get FL add div b2 mul put } for %i=0,79 %COlOUR VISION DEFICIENCIES /AANP1 XANP1 YANP1 FL add div a2 mul def /BANP1 ZANP1 YANP1 FL add div b2 mul def /AAND1 XAND1 YAND1 FL add div a2 mul def /BAND1 ZAND1 YAND1 FL add div b2 mul def /AANT1 XANT1 YANT1 FL add div a2 mul def /BANT1 ZANT1 YANT1 FL add div b2 mul def /AANP XANP YANP FL add div a2 mul def /BANP ZANP YANP FL add div b2 mul def /AAND XAND YAND FL add div a2 mul def /BAND ZAND YAND FL add div b2 mul def /AANT XANT YANT FL add div a2 mul def /BANT ZANT YANT FL add div b2 mul def %ACHROMATIC COLOUR /AANWL XANWL YANWL FL add div a2 mul def /BANWL ZANWL YANWL FL add div b2 mul def /AANWC XANWC YANWC FL add div a2 mul def /BANWC ZANWC YANWC FL add div b2 mul def } if %xchartl=1 %only for (a,b), (a+,b+) %***************** xchartl 2 eq {%xchartl=2%(a1,b1), (a1+,b1+) 0 1 79 {/i exch def %i=0,79 AANi i XANi i get XANT sub YANi i get FL add div a2 mul put BANi i ZANi i get YANi i get FL add div b2 mul put } for %i=0,79 0 1 16 {/i exch def %i=0,16 AANZi i XANZi i get XANT sub YANZi i get FL add div a2 mul put BANZi i ZANZi i get YANZi i get FL add div b2 mul put } for %i=0,79 %COlOUR VISION DEFICIENCIES /AANP1 XANP1 XANT sub YANP1 FL add div a2 mul def /BANP1 ZANP1 YANP1 FL add div b2 mul def /AAND1 XAND1 XANT sub YAND1 FL add div a2 mul def /BAND1 ZAND1 YAND1 FL add div b2 mul def /AANT1 XANT1 XANT sub YANT1 FL add div a2 mul def /BANT1 ZANT1 YANT1 FL add div b2 mul def /AANP XANP XANT sub YANP FL add div a2 mul def /BANP ZANP YANP FL add div b2 mul def /AAND XAND XANT sub YAND FL add div a2 mul def /BAND ZAND YAND FL add div b2 mul def /AANT XANT XANT sub YANT FL add div a2 mul def /BANT ZANT YANT FL add div b2 mul def %ACHROMATIC COLOUR /AANWL XANWL XANT sub YANWL FL add div a2 mul def /BANWL ZANWL YANWL FL add div b2 mul def /AANWC XANWC XANT sub YANWC FL add div a2 mul def /BANWC ZANWC YANWC FL add div b2 mul def } if %xchartl=2 %only for (a1,b1), (a1+,b1+) %***************** xchartl 3 eq {%xchartl=3%(a2,b2), (a2+,b2+) /XANT2 0.110 def 0 1 79 {/i exch def %i=0,79 AANi i XANi i get XANT2 sub YANi i get FL add div a2 mul put BANi i ZANi i get YANi i get FL add div b2 mul put } for %i=0,79 0 1 16 {/i exch def %i=0,16 AANZi i XANZi i get XANT2 sub YANZi i get FL add div a2 mul put BANZi i ZANZi i get YANZi i get FL add div b2 mul put } for %i=0,79 %COlOUR VISION DEFICIENCIES /AANP1 XANP1 XANT2 sub YANP1 FL add div a2 mul def /BANP1 ZANP1 YANP1 FL add div b2 mul def /AAND1 XAND1 XANT2 sub YAND1 FL add div a2 mul def /BAND1 ZAND1 YAND1 FL add div b2 mul def /AANT1 XANT1 XANT2 sub YANT1 FL add div a2 mul def /BANT1 ZANT1 YANT1 FL add div b2 mul def /AANP XANP XANT2 sub YANP FL add div a2 mul def /BANP ZANP YANP FL add div b2 mul def /AAND XAND XANT2 sub YAND FL add div a2 mul def /BAND ZAND YAND FL add div b2 mul def /AANT XANT XANT2 sub YANT FL add div a2 mul def /BANT ZANT YANT FL add div b2 mul def %ACHROMATIC COLOUR /AANWL XANWL XANT2 sub YANWL FL add div a2 mul def /BANWL ZANWL YANWL FL add div b2 mul def /AANWC XANWC XANT2 sub YANWC FL add div a2 mul def /BANWC ZANWC YANWC FL add div b2 mul def } if %xchartl=3 %only for (a2,b2), (a2+,b2+) } bind def %END proc_chromaticity %*********************************************************** /proc_xaxis_xchartl_coor {%BEG proc_xaxis_xchartl_coor xchartl 0 eq {%xchartl=0,#0 TBIS (x) show xcolor 1 eq {(10) ib6} if }%xchartl=0 {%xchartl#0, 1 case xchart10: abx (x=0,6) xchart10 0 eq {%xchart10=0, abx xchartl 1 ge xchartl 7 le and {%xchartl=1<=7 TBIS (a) show xchartl 1 sub cvicvs ib6 xcolor 1 eq {(,10) ib6} if } if %xchartl=1,7 xchartl 1 eq {%xchartl=1 TBS (=) show TBIS (x) show xcolor 1 eq {(10) ib6} if TBS (/) show TBIS (y) show xcolor 1 eq {(10) ib6} if } if %xchartl=1 xchartl 2 eq {%xchartl=2 TBS (=\050) show TBIS (x) show xcolor 1 eq {(10) ib6} if TBS (-0,171\051/) show TBIS (y) show xcolor 1 eq {(10) ib6} if } if %xchartl=2 xchartl 3 eq {%xchartl=3 TBS (=\050) show TBIS (x) show xcolor 1 eq {(10) ib6} if TBS (-0,110\051/) show TBIS (y) show xcolor 1 eq {(10) ib6} if } if %xchartl=3 } if %xchart10=0, abx } ifelse %xchart=0,#0 } bind def %END proc_xaxis_xchartl_coor %*********************************************************** /proc_yaxis_xchartl_coor {%BEG proc_yaxis_xchartl_coor xchartl 0 eq {%xchartl=0,#0 TBIS (y) show xcolor 1 eq {(10) ib6} if }%xchartl=0 {%xchartl#0, 1 casesxchart10: abx xchart10 0 eq {%xchart10=0, abx xchartl 1 ge xchartl 7 le and {%xchartl=1,7 TBIS (b) show xchartl 1 sub cvicvs ib6 xcolor 1 eq {(,10) ib6} if } if %xchartl=1,7 xchartl 1 eq xchartl 2 eq or xchartl 3 eq or {%xchartl=1,2,3 TBS (=-0,40) show TBIS (z) show xcolor 1 eq {(10) ib6} if TBS (/) show TBIS (y) show xcolor 1 eq {(10) ib6} if } if %xchartl=1,2,3 } if %xchart10=0, abx } ifelse %xchart#0 } bind def %END proc_yaxis_xchartl_coor %********************************************************* /proc_chromaticity_lines {%BEG proc_chromaticity_lines for xchart6>=1 %chromaticity lines and with names for xchart6=2 xchartl 0 eq {%xchartl=0 %(x,y) /xtrans8 600 def /ytrans8 400 def xtrans8 ytrans8 translate %for scala and graphic 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 xcolor 1 eq {TV 0 -40 rmoveto (10) show 0 40 rmoveto TIS} if -300 2800 moveto (y) show xcolor 1 eq {TV 0 -40 rmoveto (10) show 0 40 rmoveto TIS} if TBIS 2600 150 moveto xcolor 0 eq {(CIE 1931) show} if xcolor 1 eq {(CIE 1964) show} if newpath /fakt 4000 def %old %1000 02 01 16 01 .00 .0020 ******************** %ANF PROZSPEP3.FOR: MULYA= 4000 BEO=02 xy-Farbtafel IXY0: 600 400 %600 400 translate %693 19 moveto 5 1 60 {/i exch def %i=5,60 AANi i get fakt mul BANi 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 0 000 000 (530) %30 0 000 000 (535) %31 0 000 000 (540) %32 M 0 000 000 (545) %33 1 050 050 (550) %34 0 000 000 (555) %35 0 000 000 (560) %36 0 000 000 (565) %37 0 000 000 (570) %38 L 1 050 050 (575) %39 0 000 000 (580) %40 0 000 000 (585) %41 0 000 000 (590) %42 0 000 000 (595) %43 1 100 -50 (600) %44 0 000 000 (605) %45 0 000 000 (610) %46 0 000 000 (615) %47 0 000 000 (620) %48 1 100 -50 (625) %49 0 000 000 (630) %50 0 000 000 (635) %51 0 000 000 (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 AANi i get fakt mul BANi i get fakt mul 30 0 360 arc fill %400,425,...,700 0 0 0 1 setcmykcolor AANi i get fakt mul BANi i get fakt mul 30 0 360 arc stroke %400,425,...,700 } if %xytshift=1 } for %i=5,1,60 TBIV 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 AANi i get fakt mul xytshift i41 get add BANi 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 0 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 1 050 -100 (560c,E) %14 S 0 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 TBIV 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 /AANWLf XANWL fakt mul def /BANWLf YANWL fakt mul def /AANWCf XANWC fakt mul def /BANWCf YANWC fakt mul def /i 400 380 sub 5 idiv def %4 T /AANF AANi i get fakt mul def /BANF BANi i get fakt mul def 0.5 0 0.5 setrgbcolor AANWLf BANWLf moveto AANF BANF lineto stroke AANWLf 300 sub BANWLf 900 sub moveto TIK (T) show (S) is4 %TS /i 450 380 sub 5 idiv def %14 S /AANF AANi i get fakt mul def /BANF BANi i get fakt mul def 1 0 1 setrgbcolor AANWLf BANWLf moveto AANF BANF lineto stroke %AANF 500 add BANF 1000 sub moveto TIK (S) show (m) is4 %450 S AANWLf 750 sub BANWLf 1000 sub moveto TIK (S) show (m) is4 %450 S /i 470 380 sub 5 idiv def %18 B /AANF AANi i get fakt mul def /BANF BANi i get fakt mul def 0 0 1 setrgbcolor 50 setlinewidth AANWLf BANWLf moveto AANF BANF lineto stroke %470 Be (Lc) 20 setlinewidth AANF 050 sub BANF 250 add moveto TIK (B) show TV (e) is4 /i 495 380 sub 5 idiv def %23 Rc /AANF AANi i get fakt mul def /BANF BANi i get fakt mul def 0 0 0 setrgbcolor AANWLf BANWLf moveto AANF BANF lineto stroke %495 Rc (M=S) AANF 120 add BANF 400 sub moveto TIK (M) show (l) iy4 TK (=) show TIK (S) show (l) iy4 /i 505 380 sub 5 idiv def %26 505c,E /AANF AANi i get fakt mul def /BANF BANi i get fakt mul def 0 0 0 setrgbcolor AANWLf BANWLf moveto AANF BANF lineto stroke %505 V (M=S) AANF 250 add BANF 300 sub moveto TIK (V') show 0 0 0 setrgbcolor AANF 050 add BANF 550 sub moveto TIK (V) show (l) iy4 TK (=) show TIK (S) show (l) iy4 /i 520 380 sub 5 idiv def %28 G /AANF AANi i get fakt mul def /BANF BANi i get fakt mul def 0 1 0 setrgbcolor 50 setlinewidth AANWLf BANWLf moveto AANF BANF lineto stroke %520 G (Y=B) 20 setlinewidth AANF 200 add BANF 350 sub moveto TIK (G) show TS (e) is4 %1 1 0 setrgbcolor %AANF 100 sub BANF 700 sub moveto TIK (Y) show %(l) iy4 TK (=) show %0 0 1 setrgbcolor TIK (B) show (l) iy4 /i 540 380 sub 5 idiv def %32 M /AANF AANi i get fakt mul def /BANF BANi i get fakt mul def 0 0 0 setrgbcolor AANWLf BANWLf moveto AANF BANF lineto stroke %540 M AANF 100 sub BANF 100 add moveto TIK (M) show (m) is4 /i 555 380 sub 5 idiv def %35 V /AANF AANi i get fakt mul def /BANF BANi i get fakt mul def 0 0 0 setrgbcolor AANWLf BANWLf moveto AANF BANF lineto stroke %555 V (L=M) AANF 000 add BANF 000 add moveto TIK (V) show (m) is4 /i 570 380 sub 5 idiv def %38 L /AANF AANi i get fakt mul def /BANF BANi i get fakt mul def 1 1 0 setrgbcolor 50 setlinewidth AANWLf BANWLf moveto AANF BANF lineto stroke %570 L=Y 20 setlinewidth AANF 050 sub BANF 150 add moveto TIK (Y) show TV (e) is4 /i 620 380 sub 5 idiv def %48 /AANF AANi i get fakt mul def /BANF BANi i get fakt mul def 1 0 0 setrgbcolor 50 setlinewidth AANWLf BANWLf moveto AANF BANF lineto stroke %620 R 20 setlinewidth AANF 050 add BANF 250 add moveto TIK (R) show TV (e) is4 /i 700 380 sub 5 idiv def %64 R /AANF AANi i get fakt mul def /BANF BANi i get fakt mul def 1 0 0 setrgbcolor AANWLf BANWLf moveto AANF BANF lineto stroke %700 %Protanop PL 1 0 0 setrgbcolor AANF 200 sub BANF 200 sub moveto TIK (P) show TS (L) is4 %PL %Deuteranop DM 0 1 0 setrgbcolor /i 505 495 sub 5 idiv 1 add def %2 D (505c,E) /AANF AANZi i get fakt mul def /BANF BANZi i get fakt mul def 0 1 0 setrgbcolor AANWLf BANWLf moveto AANF BANF lineto stroke AANF 600 sub BANF 000 sub moveto TIK (D) show (M) is4 %DM newpath 0 0 0 setrgbcolor xchart5 1 ge {%xchart5=1 AANWLf BANWLf %achromatic 40 0 360 arc stroke newpath } if %xchart5=1 xchart5 2 eq {%xchart5=2 0 0 0 setrgbcolor AANWLf 000 add BANWLf 300 sub moveto %achromatic TBS TELI xchartx get show %text illuminant } if %xchart5=2 xchart3 0 eq {%Munsell AANWCf 550 add BANWCf 250 add moveto TBV (1) show AANWCf 350 add BANWCf 100 add moveto TBV (2) show AANWCf 200 add BANWCf 050 add moveto TBV (5) show } if %Munsell xtrans8 neg ytrans8 neg translate %for scala and grafic %ENDE: 1 } if %xchartl=0 %***************** xchartl 1 eq {%xchartl=1,2 %(a,b), (a+,b+) /xtrans9a 0500 def /xtrans9 1300 def /ytrans9 3200 def xtrans9a ytrans9 translate 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 posax posay moveto proc_xaxis_xchartl_coor posbx posby moveto 90 rotate proc_yaxis_xchartl_coor -90 rotate xchart6 3 eq {%xchart6=3 4150 300 moveto TBS (Parame\255) show 4150 100 moveto TBS (ter:) show TBIS ( Y) show TV } if %xchart6>=2 xtrans9a neg ytrans9 neg translate %1000 02 01 16 01-.03**************************************** %ANF PROZSPEP.FOR: MULYA= 1000 BEO=02 ab-Farbtafel IXY0: 1500 3200 xtrans9 ytrans9 translate /fakt 1000 def 5 1 60 {/i exch def %i=5,60 AANi i get fakt mul BANi 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) %00 0 000 000 (385) %01 0 000 000 (390) %02 0 000 000 (395) %03 0 -375 -250 (400) %04 0 000 000 (405) %05 0 000 000 (410) %06 0 000 000 (415) %07 0 000 000 (420) %08 0 -500 -100 (425) %09 0 000 000 (430) %10 0 000 000 (435) %11 0 000 000 (440) %12 0 000 000 (445) %13 0 -350 -030 (450) %14 0 000 000 (455) %15 0 000 000 (460) %16 0 000 000 (465) %17 0 000 000 (470) %18 0 000 000 (475) %19 1 -300 -100 (480) %20 0 000 000 (485) %21 1 -300 -100 (490) %22 0 000 000 (495) %23 1 -300 -100 (500) %24 0 000 000 (505) %25 0 000 000 (510) %26 0 000 000 (515) %27 0 000 000 (520) %28 1 -200 060 (525) %29 0 000 000 (530) %30 0 000 000 (535) %31 0 000 000 (540) %32 0 000 000 (545) %33 0 000 000 (550) %34 0 000 000 (555) %35 0 000 000 (560) %36 0 000 000 (565) %37 0 000 000 (570) %38 1 000 060 (575) %39 0 000 000 (580) %40 0 000 000 (585) %41 0 000 000 (590) %42 0 000 000 (595) %43 1 -150 060 (600) %44 0 000 000 (605) %45 0 000 000 (610) %46 0 000 000 (615) %47 0 000 000 (620) %48 1 -150 060 (625) %49 0 000 000 (630) %50 0 000 000 (635) %51 0 000 000 (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 -150 (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 AANi i get fakt mul BANi i get fakt mul 30 0 360 arc fill %400,425,...,700 0 0 0 1 setcmykcolor AANi i get fakt mul BANi i get fakt mul 30 0 360 arc stroke %400,425,...,700 } if %xytshift=1 } for %i=5,1,60 TBIV 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 AANi i get fakt mul xytshift i41 get add BANi 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 060 (700) %0 normal 1 070 -50 (495c,E) %1 1 070 -50 (500c,E) %2 1 070 -50 (505c,E) %3 1 070 -50 (510c,E) %4 0 050 -100 (515c,E) %5 0 050 -100 (520c,E) %6 1 070 -50 (525c,E) %7 0 050 -100 (530c,E) %8 0 050 -100 (535c,E) %9 1 050 -100 (540c,E) %10 0 050 -100 (545c,E) %11 0 070 -50 (550c,E) %12 0 050 -100 (555c,E) %13 0 050 -100 (560c,E) %14 S 1 070 -50 (565c,E) %15 0 -100 -150 (400) %16 see normal ] def 0 1 16 {/i exch def %i=0,1,16 /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,425,...,700 0 0 0 1 setcmykcolor AANZi i get fakt mul BANZi i get fakt mul 30 0 360 arc stroke %400,425,...,700 } if %xytshiftZ=1 } for %i=5,1,60 TBIV 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 /AANWLf AANWL fakt mul def /BANWLf BANWL fakt mul def /AANWCf AANWC fakt mul def /BANWCf BANWC fakt mul def /tabj 200 array def %20x12 /tabj %00 01 02 03 04 05 06 07 08 09 10 12 %JN lam la0 color shix shiy Na1 in1 Na2 in2 [01 400 380 0.5 0.0 0.5 1100 -2000 (T) (S) () () 01 450 380 1.0 0.0 1.0 0300 -2000 (S) (m) () () 01 470 380 0.0 0.0 1.0 -0300 -1400 (B) (e) () () 01 495 380 0.0 0.0 0.0 -0700 -0100 (M) (l) (=S) (l) 01 505 380 0.0 0.0 0.0 -0750 0000 (V) (l) (=S) (l) 01 520 380 0.0 1.0 0.0 -0450 0150 (G) (e) () () 00 520 380 0.0 0.0 0.0 -0800 -0050 (Y) (l) (=B) (l) 01 540 380 0.0 0.0 0.0 -0100 0100 (M) (m) () () 01 570 380 1.0 1.0 0.0 -0150 0100 (Y) (e) () () 00 575 380 1.0 1.0 0.0 -0100 0250 (Y) (e) () () 01 620 380 1.0 0.0 0.0 -0300 0150 (R) (e) () () 01 700 380 1.0 0.0 0.0 -0550 -0400 (P) (L) () () 01 505 490 0.0 1.0 0.0 -0600 -0180 (D) (M) () () ] def 0 1 12 {/j exch def %j=0,12 /j0 j 12 mul def /l01 j0 01 add def /l02 j0 02 add def /co1 j0 03 add def /co2 j0 04 add def /co3 j0 05 add def /po1 j0 06 add def /po2 j0 07 add def /n11 j0 08 add def /n12 j0 09 add def /n21 j0 10 add def /n22 j0 11 add def tabj j0 get 1 eq {%JN=1 /i tabj l01 get tabj l02 get sub 5 idiv def /AANF AANi i get fakt mul def /BANF BANi i get fakt mul def j 12 eq {/AANF AANZi i get fakt mul def /BANF BANZi i get fakt mul def } if tabj co1 get tabj co2 get tabj co3 get setrgbcolor tabj l01 get 470 eq tabj l01 get 520 eq or tabj l01 get 570 eq or tabj l01 get 620 eq or {50 setlinewidth} if AANWLf BANWLf moveto AANF BANF lineto stroke 20 setlinewidth xchart6 2 ge {%xchart6>=2 %add text j 2 le {AANWLf tabj po1 get add BANWLf tabj po2 get add moveto} %relative achromatic {AANF tabj po1 get add BANF tabj po2 get add moveto} ifelse TIK tabj n11 get show tabj n12 get (l) eq {(l) iy4} {tabj n12 get ishow} ifelse TIK tabj n21 get show tabj n22 get (l) eq {(l) iy4} {tabj n22 get ishow} ifelse } if %xchart6>=2 } if %JN=1 } for %j=0,12 newpath 0 0 0 setrgbcolor xchart5 1 ge {%xchart5=1 AANWLf BANWLf %achromatic 40 0 360 arc stroke newpath } if %xchart5=1 xchart5 2 eq {%xchart5=2 0 0 0 setrgbcolor AANWLf 000 add BANWLf 300 sub moveto %achromatic TBS TELI xchartx get show %text illuminant } if %xchart5=2 xchart3 0 eq {%Munsell AANWCf 550 add BANWCf 250 add moveto TBV (1) show AANWCf 350 add BANWCf 100 add moveto TBV (2) show AANWCf 200 add BANWCf 050 add moveto TBV (5) show } if %Munsell xtrans9 neg ytrans9 neg translate %ENDE: 1 } if %xchartl=1 %***************** xchartl 2 eq {%xchartl=2 %(a1,b1), (a1+,b1+) /xtrans9a 0500 def /xtrans9 1300 def /ytrans9 3200 def xtrans9a ytrans9 translate 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 posax posay moveto proc_xaxis_xchartl_coor posbx posby moveto 90 rotate proc_yaxis_xchartl_coor -90 rotate xchart6 3 eq {%xchart6=3 4150 300 moveto TBS (Parame\255) show 4150 100 moveto TBS (ter:) show TBIS ( Y) show TV } if %xchart6>=2 xtrans9a neg ytrans9 neg translate %1000 02 01 16 01-.03**************************************** %ANF PROZSPEP.FOR: MULYA= 1000 BEO=02 ab-Farbtafel IXY0: 1500 3200 xtrans9 ytrans9 translate /fakt 1000 def 5 1 60 {/i exch def %i=5,60 AANi i get fakt mul BANi 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) %00 0 000 000 (385) %01 0 000 000 (390) %02 0 000 000 (395) %03 0 -375 -250 (400) %04 0 000 000 (405) %05 0 000 000 (410) %06 0 000 000 (415) %07 0 000 000 (420) %08 0 -500 -100 (425) %09 0 000 000 (430) %10 0 000 000 (435) %11 0 000 000 (440) %12 0 000 000 (445) %13 0 -350 -030 (450) %14 0 000 000 (455) %15 0 000 000 (460) %16 0 000 000 (465) %17 0 000 000 (470) %18 0 000 000 (475) %19 1 -300 -100 (480) %20 0 000 000 (485) %21 1 -300 -100 (490) %22 0 000 000 (495) %23 1 -300 -100 (500) %24 0 000 000 (505) %25 0 000 000 (510) %26 0 000 000 (515) %27 0 000 000 (520) %28 1 -200 060 (525) %29 0 000 000 (530) %30 0 000 000 (535) %31 0 000 000 (540) %32 0 000 000 (545) %33 0 000 000 (550) %34 0 000 000 (555) %35 0 000 000 (560) %36 0 000 000 (565) %37 0 000 000 (570) %38 1 000 060 (575) %39 0 000 000 (580) %40 0 000 000 (585) %41 0 000 000 (590) %42 0 000 000 (595) %43 1 -150 060 (600) %44 0 000 000 (605) %45 0 000 000 (610) %46 0 000 000 (615) %47 0 000 000 (620) %48 1 -150 060 (625) %49 0 000 000 (630) %50 0 000 000 (635) %51 0 000 000 (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 -150 (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 AANi i get fakt mul BANi i get fakt mul 30 0 360 arc fill %400,425,...,700 0 0 0 1 setcmykcolor AANi i get fakt mul BANi i get fakt mul 30 0 360 arc stroke %400,425,...,700 } if %xytshift=1 } for %i=5,1,60 TBIV 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 AANi i get fakt mul xytshift i41 get add BANi 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 060 (700) %0 normal 1 070 -50 (495c,E) %1 1 070 -50 (500c,E) %2 1 070 -50 (505c,E) %3 1 070 -50 (510c,E) %4 0 050 -100 (515c,E) %5 0 050 -100 (520c,E) %6 1 070 -50 (525c,E) %7 0 050 -100 (530c,E) %8 0 050 -100 (535c,E) %9 1 050 -100 (540c,E) %10 0 050 -100 (545c,E) %11 0 070 -50 (550c,E) %12 0 050 -100 (555c,E) %13 0 050 -100 (560c,E) %14 S 1 070 -50 (565c,E) %15 0 -100 -150 (400) %16 see normal ] def 0 1 16 {/i exch def %i=0,1,16 /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,425,...,700 0 0 0 1 setcmykcolor AANZi i get fakt mul BANZi i get fakt mul 30 0 360 arc stroke %400,425,...,700 } if %xytshiftZ=1 } for %i=5,1,60 TBIV 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 /AANWLf AANWL fakt mul def /BANWLf BANWL fakt mul def /AANWCf AANWC fakt mul def /BANWCf BANWC fakt mul def /tabj 200 array def %20x12 /tabj %00 01 02 03 04 05 06 07 08 09 10 12 %JN lam la0 color shix shiy Na1 in1 Na2 in2 [01 400 380 0.5 0.0 0.5 0100 -2000 (T) (S) () () 01 450 380 1.0 0.0 1.0 -0600 -2000 (S) (m) () () 01 470 380 0.0 0.0 1.0 -0800 -1300 (B) (e) () () 01 495 380 0.0 0.0 0.0 -0700 -0100 (M) (l) (=S) (l) 01 505 380 0.0 0.0 0.0 -0750 0000 (V) (l) (=S) (l) 01 520 380 0.0 1.0 0.0 -0450 0150 (G) (e) () () 00 520 380 0.0 0.0 0.0 -0800 -0050 (Y) (l) (=B) (l) 01 540 380 0.0 0.0 0.0 -0100 0100 (M) (m) () () 01 570 380 1.0 1.0 0.0 -0150 0100 (Y) (e) () () 00 575 380 1.0 1.0 0.0 -0100 0250 (Y) (e) () () 01 620 380 1.0 0.0 0.0 -0300 0150 (R) (e) () () 01 700 380 1.0 0.0 0.0 -0550 -0400 (P) (L) () () 01 505 490 0.0 1.0 0.0 -0600 -0180 (D) (M) () () ] def 0 1 12 {/j exch def %j=0,12 /j0 j 12 mul def /l01 j0 01 add def /l02 j0 02 add def /co1 j0 03 add def /co2 j0 04 add def /co3 j0 05 add def /po1 j0 06 add def /po2 j0 07 add def /n11 j0 08 add def /n12 j0 09 add def /n21 j0 10 add def /n22 j0 11 add def tabj j0 get 1 eq {%JN=1 /i tabj l01 get tabj l02 get sub 5 idiv def /AANF AANi i get fakt mul def /BANF BANi i get fakt mul def j 12 eq {/AANF AANZi i get fakt mul def /BANF BANZi i get fakt mul def } if tabj co1 get tabj co2 get tabj co3 get setrgbcolor tabj l01 get 470 eq tabj l01 get 520 eq or tabj l01 get 570 eq or tabj l01 get 620 eq or {50 setlinewidth} if AANWLf BANWLf moveto AANF BANF lineto stroke 20 setlinewidth xchart6 2 ge {%xchart6>=2 %add text j 2 le {AANWLf tabj po1 get add BANWLf tabj po2 get add moveto} %relative achromatic {AANF tabj po1 get add BANF tabj po2 get add moveto} ifelse TIK tabj n11 get show tabj n12 get (l) eq {(l) iy4} {tabj n12 get ishow} ifelse TIK tabj n21 get show tabj n22 get (l) eq {(l) iy4} {tabj n22 get ishow} ifelse } if %xchart6>=2 } if %JN=1 } for %j=0,12 newpath 0 0 0 setrgbcolor xchart5 1 ge {%xchart5=1 AANWLf BANWLf %achromatic 40 0 360 arc stroke newpath } if %xchart5=1 xchart5 2 eq {%xchart5=2 0 0 0 setrgbcolor AANWLf 000 add BANWLf 300 sub moveto %achromatic TBS TELI xchartx get show %text illuminant } if %xchart5=2 xchart3 0 eq {%Munsell AANWCf 550 add BANWCf 250 add moveto TBV (1) show AANWCf 350 add BANWCf 100 add moveto TBV (2) show AANWCf 200 add BANWCf 050 add moveto TBV (5) show } if %Munsell xtrans9 neg ytrans9 neg translate %ENDE: 2 } if %xchartl=2 %*********************************************************** xchartl 3 eq {%xchartl=3 (a2,b2), (a2+,b2+) /xtrans10a 0500 def /xtrans10 1300 def /ytrans10 3200 def xtrans10a ytrans10 translate %for text and grafic 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 posax posay moveto proc_xaxis_xchartl_coor posbx posby moveto 90 rotate proc_yaxis_xchartl_coor -90 rotate xchart6 3 eq {%xchart6=3 4150 -200 moveto TBS (Parame\255) show 4150 -400 moveto TBS (ter:) show TBIS ( Y) show TV } if %xchart6>=2 xtrans10a neg ytrans10 neg translate %for text and grafic %1000 02 01 16 01-.03**************************************** %ANF PROZSPEP.FOR: MULYA= 1000 BEO=02 ab-Farbtafel IXY0: 1500 3200 xtrans10 ytrans10 translate %for text and grafic /fakt 1000 def 5 1 60 {/i exch def %i=5,60 AANi i get fakt mul BANi 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) %00 0 000 000 (385) %01 0 000 000 (390) %02 0 000 000 (395) %03 0 -375 -250 (400) %04 0 000 000 (405) %05 0 000 000 (410) %06 0 000 000 (415) %07 0 000 000 (420) %08 0 -500 -100 (425) %09 0 000 000 (430) %10 0 000 000 (435) %11 0 000 000 (440) %12 0 000 000 (445) %13 0 -350 -030 (450) %14 0 000 000 (455) %15 0 000 000 (460) %16 0 000 000 (465) %17 0 000 000 (470) %18 0 000 000 (475) %19 1 -300 -100 (480) %20 0 000 000 (485) %21 1 -300 -100 (490) %22 0 000 000 (495) %23 1 -300 -100 (500) %24 0 000 000 (505) %25 0 000 000 (510) %26 0 000 000 (515) %27 0 000 000 (520) %28 1 -250 060 (525) %29 0 000 000 (530) %30 0 000 000 (535) %31 0 000 000 (540) %32 0 000 000 (545) %33 0 000 000 (550) %34 0 000 000 (555) %35 0 000 000 (560) %36 0 000 000 (565) %37 0 000 000 (570) %38 1 050 060 (575) %39 0 000 000 (580) %40 0 000 000 (585) %41 0 000 000 (590) %42 0 000 000 (595) %43 1 -150 060 (600) %44 0 000 000 (605) %45 0 000 000 (610) %46 0 000 000 (615) %47 0 000 000 (620) %48 1 -150 060 (625) %49 0 000 000 (630) %50 0 000 000 (635) %51 0 000 000 (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 -150 (700) %64 ] def 0 1 64 {/i exch def %i=0,64 /i40 i 4 mul def xytshift i40 get 1 eq {%xytshift=1 0 0 0 0 setcmykcolor AANi i get fakt mul BANi i get fakt mul 30 0 360 arc fill %400,425,...,700 0 0 0 1 setcmykcolor AANi i get fakt mul BANi i get fakt mul 30 0 360 arc stroke %400,425,...,700 } if %xytshift=1 } for %i=0,64 TBIV 0 1 59 {/i exch def %i=0,59 /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 AANi i get fakt mul xytshift i41 get add BANi i get fakt mul xytshift i42 get add moveto xytshift i43 get show } if %xytshift=1 } for %i=0,59 newpath /xytshiftZ 320 array def %min 4x65 /xytshiftZ [ 1 -100 060 (700) %0 normal 1 070 -50 (495c,E) %1 1 070 -50 (500c,E) %2 0 070 -50 (505c,E) %3 1 070 -50 (510c,E) %4 0 050 -100 (515c,E) %5 0 050 -100 (520c,E) %6 1 070 -50 (525c,E) %7 0 050 -100 (530c,E) %8 0 050 -100 (535c,E) %9 1 050 -100 (540c,E) %10 0 050 -100 (545c,E) %11 0 070 -50 (550c,E) %12 0 050 -100 (555c,E) %13 0 050 -100 (560c,E) %14 S 1 070 -50 (565c,E) %15 0 -100 -150 (400) %16 see normal ] def 0 1 16 {/i exch def %i=0,16 /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,425,...,700 0 0 0 1 setcmykcolor AANZi i get fakt mul BANZi i get fakt mul 30 0 360 arc stroke %400,425,...,700 } if %xytshiftZ=1 } for %i=0,16 TBIV 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 /AANWLf AANWL fakt mul def /BANWLf BANWL fakt mul def /AANWCf AANWC fakt mul def /BANWCf BANWC fakt mul def /tabj 240 array def %20x12 /tabj %00 01 02 03 04 05 06 07 08 09 10 12 %JN lam la0 color shix shiy Na1 in1 Na2 in2 [01 400 380 0.5 0.0 0.5 0400 -2000 (T) (S) () () 01 450 380 1.0 0.0 1.0 -0300 -2000 (S) (m) () () 01 470 380 0.0 0.0 1.0 -0650 -1400 (B) (e) () () 01 495 380 0.0 0.0 0.0 -0750 -0100 (M) (l) (=S) (l) 01 505 380 0.0 0.0 0.0 -0750 -0050 (V) (l) (=S) (l) 01 520 380 0.0 1.0 0.0 -0500 0150 (G) (e) () () 00 520 380 0.0 0.0 0.0 -0800 -0050 (Y) (l) (=B) (l) 01 540 380 0.0 0.0 0.0 -0150 0100 (M) (m) () () 01 570 380 1.0 1.0 0.0 -0150 0100 (Y) (e) () () 00 575 380 1.0 1.0 0.0 -0100 0250 (Y) (e) () () 01 620 380 1.0 0.0 0.0 -0300 0150 (R) (e) () () 01 700 380 1.0 0.0 0.0 -0550 -0400 (P) (L) () () 01 505 490 0.0 1.0 0.0 -0600 -0130 (D) (M) () () ] def 0 1 12 {/j exch def %j=0,12 /j0 j 12 mul def /l01 j0 01 add def /l02 j0 02 add def /co1 j0 03 add def /co2 j0 04 add def /co3 j0 05 add def /po1 j0 06 add def /po2 j0 07 add def /n11 j0 08 add def /n12 j0 09 add def /n21 j0 10 add def /n22 j0 11 add def tabj j0 get 1 eq {%JN=1 /i tabj l01 get tabj l02 get sub 5 idiv def /AANF AANi i get fakt mul def /BANF BANi i get fakt mul def j 12 eq {/AANF AANZi i get fakt mul def /BANF BANZi i get fakt mul def } if tabj co1 get tabj co2 get tabj co3 get setrgbcolor tabj l01 get 470 eq tabj l01 get 520 eq or tabj l01 get 570 eq or tabj l01 get 620 eq or {50 setlinewidth} if AANWLf BANWLf moveto AANF BANF lineto stroke 20 setlinewidth xchart6 2 ge {%xchart6>=2 %add text j 2 le {AANWLf tabj po1 get add BANWLf tabj po2 get add moveto} %relative achromatic {AANF tabj po1 get add BANF tabj po2 get add moveto} ifelse TIK tabj n11 get show tabj n12 get (l) eq {(l) iy4} {tabj n12 get ishow} ifelse TIK tabj n21 get show tabj n22 get (l) eq {(l) iy4} {tabj n22 get ishow} ifelse } if %xchart6>=2 } if %JN=1 } for %j=0,12 newpath 0 0 0 setrgbcolor xchart5 1 ge {%xchart5=1 AANWLf BANWLf %achromatic 40 0 360 arc stroke newpath } if %xchart5=1 xchart5 2 eq {%xchart5=2 0 0 0 setrgbcolor AANWLf 000 add BANWLf 300 sub moveto %achromatic TBS TELI xchartx get show %text illuminant } if %xchart5=2 xchart3 0 eq {%Munsell AANWCf 550 add BANWCf 250 add moveto TBV (1) show AANWCf 350 add BANWCf 100 add moveto TBV (2) show AANWCf 200 add BANWCf 050 add moveto TBV (5) show } if %Munsell xtrans10 neg ytrans10 neg translate %for text and grafic %ENDE: 3 } if %xchartl=3 } bind def %END proc_chromaticity_lines %********************************************************** %%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 {3 lanind eq {show} {pop} ifelse} bind def /showfr {2 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 1 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 /xchart5f where {pop /xchart5 xchart5f def} %new {/xchart5 2 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 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 70 90 translate 0.01 MM dup scale gsave %xchart3 0 def %with Munsell colours %xchart3 1 def %with Ostwald colours %xchart3 2 det %without any colour %/xchart3 0 def %diagram 0:Munsell colours, 1:Ostwald colours, 2:- %xchart5 0 def %without marc illuminant and text %xchart5 1 def %with marc illuminant %xchart5 2 def %with marc illuminant and text /xchart5 2 def %0:-, 1:illuminant, 2:illuminant and text %xchart6 0 def %without chromaticity_lines %xchart6 1 def %with chromaticity_lines %xchart6 2 def %with chromaticity_lines&N %xchart6 3 def %with chromaticity_lines&N&P /xchart6 2 def %0:-, 1:CL 2:CL&N 3:CL&N&P %xchart7 0 def %Ostwald colours without Name or Y %xchart7 1 def %Ostwald colours with Name %xchart7 2 def %Ostwald colours with CIE Y /xchart7 2 def %0:-, 1:Name, 2:Y %xchartl with 0 1 2 3 4 5 6 7 %xchart8 0 def %0:Pxx (P60, P55, P50, P45, P40, P35, P30, P25) colours %xchart8 1 def %1:Dxx (D65, D50, P40, A00, E00, C00, P00, Q00) colours /xchart8 1 def %0:Pxx, 1:Dxx colours %xchart9 0 def %for Y10-3R.EPS -> Table XYZ, not used here %xchart9 1 def %for Y10-3R.EPS -> Table CAB, not used here %xchart9 2 def %for Y10-3R.EPS -> Table (a,b), not used here /xchart9 0 def %Table 0:(XYZ), 1:(CAB), 2(ab) %xchart10 0 def %for Y10G00NA.PS6.PS -> chromaticity coordinates (ai,bi) %xchart10 1 def %for Y10G00NA.PS6.PS -> chromatic values (Ai,Bi) %xchart10 2 def %for Y10G00NA.PS6.PS -> chroma (A*i,B*i) /xchart10 0 def %diagram 0:(ai,bi), 1:(Ai,Bi), 2:(A*i,B*i) /posax 2600 def /posay 0550 def /posbx -275 def /posby -3150 def /FL 0.00001 def /Y18 18 def %grey background /n0e 0.3333 def /n1e 1.0000 def %with (a, b) %/n1e 0.3333 def %with (a', b') %/xchart3 2 def %without any colour only diagrams %if xchart3=2 %/xchart5 0 def %without marc illuminant and text %/xchart5 1 def %with marc illuminant %/xchart5 2 def %with marc illuminant and text %/xchart6 0 def %without chromaticity_lines %/xchart6 1 def %with chromaticity_lines %/xchart6 2 def %with chromaticity_lines and names /xchart3 0 def %Illuminants colours %if xchart3=0 %Illuminants colours %/xchart5 0 def %without marc illuminant and text %/xchart5 1 def %with marc illuminant /xchart5 2 def %with marc illuminant and text %/xchart6 0 def %without chromaticity_lines %/xchart6 1 def %with chromaticity_lines /xchart6 2 def %with chromaticity_lines and names %/xchart3 1 def %not used /xchart3 2 def %without any colours %/TELI0 [(P60) (P55) (P50) (P45) (P40) (P35) (P30) (P25)] def %7 illumin %/TELI1 [(D65) (D50) (P40) (A00) (E00) (C00) (P00) (Q00)] def %7 illumin. /xchart7 0 def %0:P60, 1:P55, 2:P50, 3:P45, 4:P40, 5:P35, 6:P30, 7:P25 %0:D65, 1:D50, 2:P40, 3:A00, 4:E00, 5:C00, 6:P00, 7:Q00 /xchart8 1 def %0:Pxx colour series, 1:Dxx colour series %xchart9 0 def %for Y10-3R.EPS -> Table XYZ, not used here %xchart9 1 def %for Y10-3R.EPS -> Table CAB, not used here %xchart9 2 def %for Y10-3R.EPS -> Table (a,b), not used here %xchart10 0 def %for Y10G00NA.PS6.PS -> chromaticity coordinates (ai,bi) %xchart10 1 def %for Y10G00NA.PS6.PS -> chromatic values (Ai,Bi) %xchart10 2 def %for Y10G00NA.PS6.PS -> chroma (A*i,B*i) /xchartx xchart7 def %1 1 1 {/xchartx exch def %xchartx=0,7 %max 8 illuminants gsave /xbtex0 1 def xbtex0 1 eq {%xbtex0=1 TV 0 setgray 20 setlinewidth 0 0 12100 08600 0.0 0.0 0.0 0.0 colrecfi %area white grey 0 0 12100 08600 0.0 0.0 0.0 1.0 colrecst %Rahmen Schwarz 100 -150 moveto (DGO30-3N) show } if %xbtex0=1 /k0a 0 def xchart8 0 eq {/k0e 1 def}{/k0e 0 def} ifelse %allways proc_XYZ_colours proc_DEF_colours xchart3 0 eq {%BEG proc_data proc_data } if %END proc_data /xchartl xchart def %shift at beginn for later change 0 1 3 {/xchartl exch def %xchartl=0,3 gsave xchartl 0 eq { 100 4500 translate} if xchartl 1 eq { 6100 4500 translate} if xchartl 2 eq { 100 0250 translate} if xchartl 3 eq { 6100 0250 translate} if 150 /Times-ISOL1 FS 0 setgray 100 -150 moveto (DGO30-) show xchartl 1 add cvishow (A) show %A /xwidth 5900 def /ywidth 4000 def 0.0 0.0 0.0 0.3 setcmykcolor 0 0 moveto xwidth 0 rlineto 0 ywidth rlineto xwidth neg 0 rlineto closepath fill 0 setlinewidth 0 0 moveto xwidth 0 rlineto 0 ywidth rlineto xwidth neg 0 rlineto closepath clip 20 setlinewidth 0 0 xwidth ywidth 0.0 0.0 0.0 1.0 colrecst %frame black /xtexti 96 array def /ytexti 96 array def 0 0 0 1 setcmykcolor /xchart12 xchartl 12 mul def %xchart3 0 eq {%xchart3=0 %Illuminants /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 2000 2000 2000 2800 2800 4000 2800 4000 2800 4000 2800 4000 %0 3000 3000 3000 1700 1700 1800 0600 1800 0600 1800 0600 1800 %1 3000 3000 3000 1700 1700 1900 0700 1900 0700 1900 0700 1900 %2 3000 3000 3000 0600 0600 1900 0600 1900 0600 1900 0600 1900 %3 3000 3000 3000 1700 1700 1900 0700 1900 0700 1900 0700 1900 %4 3000 3000 3000 1700 1700 1900 0700 1900 0700 1900 0700 1900 %5 3000 3000 3000 1700 1700 1900 0700 1900 0700 1900 0700 1900 %6 3000 3000 3000 0600 0600 1900 0600 1900 0600 1900 0600 1900 %7 ] def /ytexti [ 3800 3580 3360 3140 2920 2920 2700 2700 2480 2480 2260 2260 %0 0500 0280 0060 1600 1380 1380 1160 1160 0940 0940 0720 0720 %1 0500 0280 0060 1600 1380 1380 1160 1160 0940 0940 0720 0720 %2 0500 0280 0060 1600 1380 1380 1160 1160 0940 0940 0720 0720 %3 0500 0280 0060 1600 1380 1380 1160 1160 0940 0940 0720 0720 %4 0500 0280 0060 1600 1380 1380 1160 1160 0940 0940 0720 0720 %5 0500 0280 0060 1600 1380 1380 1160 1160 0940 0940 0720 0720 %6 0500 0280 0060 1600 1380 1380 1160 1160 0940 0940 0720 0720 %7 ] def %} if %xchart3=0 %Illuminants TBS 0 0 0 1 setcmykcolor xchart3 0 eq {%xchart3=0 %Illuminants xtexti xchart12 0 add get ytexti xchart12 0 add get moveto TBIS (OSA) show TBS (\255System) showde %0DGO30-7 02581 ( System) showea %1DGO30-7 02581 TBIS (, Y) show TBV (W) ishow TBS K 0 eq {(=100) show}{(=88,6) show} ifelse xtexti xchart12 1 add get ytexti xchart12 1 add get moveto xchart8 0 eq {(P\255series) showea (P\255Serie) showde} {(D\255series) showea (D\255Serie) showde} ifelse xcolor 0 eq {(, 2\255degree, ) showea ( 2\255Grad, ) showde} {(, 10\255degree, ) showea (10\255Grad, ) showde} ifelse TELI xchartx get show } if %xchart3=0 %Illuminants xchart3 2 eq {%xchart3=2 %Any_colours xtexti xchart12 0 add get ytexti xchart12 0 add get moveto TBS (F\374r jede Farbe) showde %0DGO30-7 02581 TBS (For any colour) showea %1DGO30-7 02581 TBIS (, Y) show TBV (W) ishow xcolor 1 eq {TBV (,10) ishow} if TBS K 0 eq {(=100, ) show}{(=88,6, ) show} ifelse TELI xchartx get show xtexti xchart12 1 add get ytexti xchart12 1 add get moveto ([max (m) Buntwert?], ) showde %0DGO30-7 03581 ([max (m) chromatic value?], ) showea %1DGO30-7 03581 } if %xchart3=2 %Any_colour %BEG For All Colours last line xtexti xchart12 2 add get ytexti xchart12 2 add get moveto xchartl 0 eq {%xchartl=0 %(x,y) (in der Normfarbtafel) showde %0DGO30-7 04581 (in the chromaticity diagram) showen %1DGO30-7 04581 (en el diagrama de chromaticidad) showes %2DGO30-7 04581 (dans le diagramme de chromaticit\351) showfr %3DGO30-7 04581 (nel diagramma di cromaticit\340) showit %4DGO30-7 04581 (in the chromaticity diagram) showjp %5DGO30-7 04581 TBIS ( \050x) show %TBV (6) ishow xcolor 1 eq {TBV (10) ishow} if TBIS (, y) show %TBV (6) ishow xcolor 1 eq {TBV (10) ishow} if TBIS (\051) show proc_arc_ill } if %xchartl=0 xchartl 1 ge {%xchartl>=1 (in der Farbtafel) showde %0DGO30-7 05581 (chromaticity diagram) showen %1DGO30-7 05581 (en el diagrama de chromaticidad) showes %2DGO30-7 05581 (dans le diagramme de chromaticit\351) showfr %3DGO30-7 05581 (nel diagramma di cromaticit\340) showit %4DGO30-7 05581 (in the chromaticity diagram) showjp %5DGO30-7 05581 TBIS ( \050a) show xchartl 2 ge {TBV xchartl 1 sub cvishow} if xcolor 1 eq {TBV (,10) ishow} if TBIS (, b) show xchartl 2 ge {TBV xchartl 1 sub cvishow} if xcolor 1 eq {TBV (,10) ishow} if TBIS (\051) show proc_arc_ill } if %xchartl>=1 %END For All Colours last line %*********************************************************** /imM 007 def %maximum Illuminants Colours %********************************************************** 0 setgray xchart6 1 ge {%xchart6>=1 proc_chromaticity xchart6 2 eq {%xchart6=2 proc_chromaticity_lines } if %xchart6=2 } if %xchart6>=1 xchart3 0 eq {%xchart3=0 %plot data /ilin 1 def %0(point), 1(line), 2(both) xchartl 0 eq {%xchartl=0 %(x,y) /fakt 4000 def /xtrans8 600 def /ytrans8 400 def xtrans8 ytrans8 translate %for scala and graphic proc_plot_data xtrans8 neg ytrans8 neg translate %for scala and grafic } if %xchartl=0 %************************ xchartl 1 eq {%xchartl=1 %(a,b), (a+,b+) -> (a0=x/y, b0=-0.4*z/y) /fakt 1000 def /a2 1.00 def /b2 -0.4 def /xtrans9 1300 def /ytrans9 3200 def xtrans9 ytrans9 translate proc_plot_data xtrans9 neg ytrans9 neg translate %for text and grafic } if %xchartl=1 %************************ xchartl 2 eq {%xchartl=2 %(a1=[x-XANT]/y, b1=z/y), (a1+,b1+) /fakt 1000 def /a2 1.00 def /b2 -0.4 def /xtrans9 1300 def /ytrans9 3200 def xtrans9 ytrans9 translate proc_plot_data xtrans9 neg ytrans9 neg translate %for text and grafic } if %xchartl=2 %***************************************************************** xchartl 3 eq {%xchartl=3 %(a2=[x-XANT2]/y, b2=z/y), (a2+,b2+) /fakt 1000 def /a2 1.0 def /b2 -0.4 def /xtrans10 1300 def /ytrans10 3200 def xtrans10 ytrans10 translate %for text and grafic proc_plot_data xtrans10 neg ytrans10 neg translate %for text and grafic } if %xchartl=3 } if %xchart3=0 plot data %************************ %special space for 'xm03'PROZ0.COM 2x before/after xchartl xchartl 0 eq { 100 neg 4500 neg translate} if xchartl 1 eq { 6100 neg 4500 neg translate} if xchartl 2 eq { 100 neg 0250 neg translate} if xchartl 3 eq { 6100 neg 0250 neg translate} if %showpage %XA !important grestore } for %xchartl=0,3 %8 chromaticity diagrams showpage %7R&7N grestore %} for %xchartx=0,7 %P50:xchartx=2/D50:xchartx=1 %%Trailer %%EndDocument EndEPSF grestore gsave BeginEPSF 86 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 DGO30-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 (DGO30-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 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 DGO30-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 (DGO30-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 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 DGO30-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 (DGO30-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 MM xt 0 eq {16 MM sub} if 20 MM xt 0 eq {12 MM sub} if 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 http://farbe.li.tu-berlin.de/DGO3/DGO30-7N 202210 %%BoundingBox: 70 83 415 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/DGO3/DGO3.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:2022100112200) /ModDate (D:20221001112200) /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 /TV {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 /TIV {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 /TBV {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 /TBIV {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 /SV {160 /Symbol FS} bind def /CV {160 /Courier-ISOL1 FS} bind def /CS {200 /Courier-ISOL1 FS} bind def /CK {240 /Courier-ISOL1 FS} bind def /CM {280 /Courier-ISOL1 FS} bind def /CG {350 /Courier-ISOL1 FS} bind def /CBV {160 /CourierB-ISOL1 FS} bind def /CBS {200 /CourierB-ISOL1 FS} bind def /CBK {240 /CourierB-ISOL1 FS} bind def /CBM {280 /CourierB-ISOL1 FS} bind def /CBG {350 /CourierB-ISOL1 FS} bind def /ns {350 /Times-ISOL1 FS show} bind def /ks {350 /TimesI-ISOL1 FS show} bind def /bs {350 /TimesB-ISOL1 FS show} bind def /js {350 /TimesBI-ISOL1 FS show} bind def /sy {350 /Symbol FS show} bind def /is {280 /Times-ISOL1 FS 0 -90 rmoveto show 0 90 rmoveto} bind def /es {280 /Times-ISOL1 FS 0 200 rmoveto show 0 -200 rmoveto} bind def /ib {280 /TimesB-ISOL1 FS 0 -90 rmoveto show 0 90 rmoveto} bind def /eb {280 /TimesB-ISOL1 FS 0 200 rmoveto show 0 -200 rmoveto} bind def /ip {280 /Times-ISOL1 FS 50 50 rmoveto (\267) show 50 -50 rmoveto} bind def %20% kleiner /ns2 {280 /Times-ISOL1 FS show TM} bind def /ks2 {280 /TimesI-ISOL1 FS show TM} bind def /bs2 {280 /TimesB-ISOL1 FS show TM} bind def /js2 {280 /TimesBI-ISOL1 FS show TM} bind def /sy2 {280 /Symbol FS show TM} bind def /is2 {240 /Times-ISOL1 FS 0 -70 rmoveto show 0 70 rmoveto TM} bind def /es2 {240 /Times-ISOL1 FS 0 160 rmoveto show 0 -160 rmoveto TM} bind def /ib2 {240 /TimesB-ISOL1 FS 0 -70 rmoveto show 0 70 rmoveto TM} bind def /eb2 {240 /TimesB-ISOL1 FS 0 160 rmoveto show 0 -160 rmoveto TM} bind def /ip2 {240 /Times-ISOL1 FS 40 40 rmoveto (\267) show 40 -40 rmoveto TM} bind def /iy2 {240 /Symbol FS 0 -70 rmoveto show 0 70 rmoveto TM} bind def %40% kleiner /ns4 {240 /Times-ISOL1 FS show TK} bind def /ks4 {240 /TimesI-ISOL1 FS show TK} bind def /bs4 {240 /TimesB-ISOL1 FS show TK} bind def /js4 {240 /TimesBI-ISOL1 FS show TK} bind def /ss4 {240 /Symbol FS show TK} bind def /is4 {200 /Times-ISOL1 FS 0 -60 rmoveto show 0 60 rmoveto TK} bind def /es4 {200 /Times-ISOL1 FS 0 130 rmoveto show 0 -130 rmoveto TK} bind def /ib4 {200 /TimesB-ISOL1 FS 0 -60 rmoveto show 0 60 rmoveto TK} bind def /eb4 {200 /TimesB-ISOL1 FS 0 130 rmoveto show 0 -130 rmoveto TK} bind def /ip4 {200 /Times-ISOL1 FS 30 30 rmoveto (\267) show 30 -30 rmoveto TK} bind def /iy4 {200 /Symbol FS 0 -60 rmoveto show 0 60 rmoveto TK} bind def %60% kleiner /ns6 {200 /Times-ISOL1 FS show TS} bind def /ks6 {200 /TimesI-ISOL1 FS show TS} bind def /bs6 {200 /TimesB-ISOL1 FS show TS} bind def /js6 {200 /TimesBI-ISOL1 FS show TS} bind def /ss6 {200 /Symbol FS show TS} bind def /is6 {160 /Times-ISOL1 FS 0 -50 rmoveto show 0 50 rmoveto TS} bind def /es6 {160 /Times-ISOL1 FS 0 110 rmoveto show 0 -110 rmoveto TS} bind def /ib6 {160 /TimesB-ISOL1 FS 0 -50 rmoveto show 0 50 rmoveto TS} bind def /eb6 {160 /TimesB-ISOL1 FS 0 110 rmoveto show 0 -110 rmoveto TS} bind def /ip6 {160 /Times-ISOL1 FS 24 24 rmoveto (\267) show 24 -24 rmoveto TS} bind def /iy6 {160 /Symbol FS 0 -50 rmoveto show 0 50 rmoveto TS} bind def %80% kleiner /ns8 {160 /Times-ISOL1 FS show TS} bind def /ks8 {160 /TimesI-ISOL1 FS show TS} bind def /bs8 {160 /TimesB-ISOL1 FS show TS} bind def /js8 {160 /TimesBI-ISOL1 FS show TS} bind def /ss8 {160 /Symbol FS show TS} bind def /is8 {120 /Times-ISOL1 FS 0 -40 rmoveto show 0 40 rmoveto TS} bind def /es8 {120 /Times-ISOL1 FS 0 90 rmoveto show 0 -90 rmoveto TS} bind def /ib8 {120 /TimesB-ISOL1 FS 0 -40 rmoveto show 0 40 rmoveto TS} bind def /eb8 {120 /TimesB-ISOL1 FS 0 90 rmoveto show 0 -90 rmoveto TS} bind def /ip8 {120 /Times-ISOL1 FS 24 24 rmoveto (\267) show 24 -24 rmoveto TS} bind def /iy8 {120 /Symbol FS 0 -50 rmoveto show 0 50 rmoveto TS} bind def /cvicvs {cvi 6 string cvs} def /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 /cvsshow1x {/nxx exch def %example nxx=99.1/99.0 nxx 0 lt {(-) show /nxx nxx abs def} if nxx 10 mul cvi /nxi exch def %nxi=991/990 nxi 10 idiv /nxa exch def %nxa=99 nxi nxa 10 mul sub /nxb exch def %nxb=1/0 nxa cvishow (,) show %nxa=99 nxb cvishow %nxb=1/0 } def /cvsshow2x {/nxx exch def %example nxx=99.12/99,02/99,00 nxx 0 lt {(-) show /nxx nxx abs def} if nxx 100 mul cvi /nxi exch def %nxi=9912/9902/00 nxi 100 idiv /nxa exch def %nxa=99 nxi nxa 100 mul sub /nxb exch def %nxb=12/02/00 nxa cvishow (,) show %nxb=99, nxb 10 ge {nxb cvishow} if %nxb=12 nxb 1 ge nxb 9 le and {(0) show nxb cvishow} if %nxb=02 nxb 0 eq {(00) show} if %nxb=00 } def /cvsshow3x {/nxx exch def %example nxx=99.123/99.012/99.001/99.000 nxx 0 lt {(-) show /nxx nxx abs def} if nxx 1000 mul cvi /nxi exch def %nxi=99123/99012/99001/99000 nxi 1000 idiv /nxa exch def %nxa=99 nxi nxa 1000 mul sub /nxb exch def %nxb=123/012/001/000 nxa cvishow (,) show %nxb=99, nxb 100 ge {nxb cvishow} if %nxb=123/012/001/000 nxb 10 ge nxb 99 le and {(0) show nxb cvishow} if %nxb=012 nxb 1 ge nxb 9 le and {(00) show nxb cvishow} if %nxb=001 nxb 0 eq {(000) show} if %nxb=000 } def /cvsshow4x {/nxx exch def %example nxx=99.1234/99.0123/99.0010/99.0001 nxx 0 lt {(-) show /nxx nxx abs def} if nxx 10000 mul cvi /nxi exch def %nxi=991234/990123/990010/990000 nxi 10000 idiv /nxa exch def %nxa=99 nxi nxa 10000 mul sub /nxb exch def %nxb=1234/0123/0010/0001 nxa cvishow (,) show %nxb=99, nxb 1000 ge {nxb cvishow} if %nxb=1234/0123/0010/0001 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 {(000) show} if %nxb=000 } def /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 {setcmykcolor rec fill} bind def /colrecst %x y width heigth c m y k {setcmykcolor rec stroke} bind def /tzo {0.0 1.0 1.0 0.0} bind def %Reproduktionsfarben /tzl {1.0 0.0 1.0 0.0} bind def /tzv {1.0 1.0 0.0 0.0} bind def /tzc {1.0 0.0 0.0 0.0} bind def /tzm {0.0 1.0 0.0 0.0} bind def /tzy {0.0 0.0 1.0 0.0} bind def /tzn {0.0 0.0 0.0 1.00} bind def %Graureihe /tzd {0.0 0.0 0.0 0.75} bind def /tzz {0.0 0.0 0.0 0.50} bind def /tzh {0.0 0.0 0.0 0.25} bind def /tzw {0.0 0.0 0.0 0.00} bind def /tzr {0.0 1.0 0.5 0.0} bind def %Elementarfarben /tzg {1.0 0.0 0.5 0.0} bind def /tzb {1.0 0.5 0.0 0.0} bind def /tzj {0.0 0.0 1.0 0.0} bind def /tzrz {0.0 1.0 0.5 0.5} bind def %Elementarfarben vergraut /tzgz {1.0 0.0 0.5 0.5} bind def /tzbz {1.0 0.5 0.0 0.5} bind def /tzjz {0.0 0.0 1.0 0.5} bind def /tfo {tzo setcmykcolor} bind def /tfl {tzl setcmykcolor} bind def /tfv {tzv setcmykcolor} bind def /tfc {tzc setcmykcolor} bind def /tfm {tzm setcmykcolor} bind def /tfy {tzy setcmykcolor} bind def /tfn {tzn setcmykcolor} bind def /tfd {tzd setcmykcolor} bind def /tfz {tzz setcmykcolor} bind def /tfh {tzh setcmykcolor} bind def /tfw {tzw setcmykcolor} bind def /tfr {tzr setcmykcolor} bind def /tfg {tzg setcmykcolor} bind def /tfb {tzb setcmykcolor} bind def /tfj {tzj setcmykcolor} bind def /tfrz {tzrz setcmykcolor} bind def /tfgz {tzgz setcmykcolor} bind def /tfbz {tzbz setcmykcolor} bind def /tfjz {tzjz setcmykcolor} bind def %allways after %Prolog /proc_XYZ_colours {%BEG proc_XYZ_colours %for xchart8=0 /SP25 80 array def %380 bis 775 mit deltalambda=05 /SP30 80 array def %380 bis 775 mit deltalambda=05 /SP35 80 array def %380 bis 775 mit deltalambda=05 /SP40 80 array def %380 bis 775 mit deltalambda=05 /SP45 80 array def %380 bis 775 mit deltalambda=05 /SP50 80 array def %380 bis 775 mit deltalambda=05 /SP55 80 array def %380 bis 775 mit deltalambda=05 /SP60 80 array def %380 bis 775 mit deltalambda=05 %for xchart8=1 /SD65 80 array def %380 bis 775 mit deltalambda=05 /SD50 80 array def %380 bis 775 mit deltalambda=05 /SP40 80 array def %380 bis 775 mit deltalambda=05 /SA00 80 array def %380 bis 775 mit deltalambda=05 /SE00 80 array def %380 bis 775 mit deltalambda=05 /SC00 80 array def %380 bis 775 mit deltalambda=05 /SP00 80 array def %380 bis 775 mit deltalambda=05 /SQ00 80 array def %380 bis 775 mit deltalambda=05 %for combined /SX00 80 array def %380 bis 775 mit deltalambda=05 /SX01 80 array def %380 bis 775 mit deltalambda=05 /SX02 80 array def %380 bis 775 mit deltalambda=05 /SX03 80 array def %380 bis 775 mit deltalambda=05 /SX04 80 array def %380 bis 775 mit deltalambda=05 /SX05 80 array def %380 bis 775 mit deltalambda=05 /SX06 80 array def %380 bis 775 mit deltalambda=05 /SX07 80 array def %380 bis 775 mit deltalambda=05 /SDAK 80 array def %380 bis 775 mit deltalambda=05 /RA 80 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 80 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 /TNC 4000 def /EE 2.718281 def %e=mac pocket calculator /C2 1.4350000 10 7 exp mul def /lamd 80 array def /TNCj 8 array def /TNCj [6000 5500 5000 4500 4000 3500 3000 2500] def xchart8 0 eq {%xchart8=0 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 } %xchart8=0 { %xchart8=1 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 } ifelse %xchart8=1 /xex 10 2 exp def /yex EE 2 exp def /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 /FARBEO 27 array def %Ostwald /FARBEO [(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 (N) (0) ( 380_770) %06 (W) (0) ( 380_770) %07 (W) (1) ( 380_770) %08 ] 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 %*************************************************** /TELI0 8 array def /TELI1 8 array def /TELI 8 array def /TELI0 [(P60) (P55) (P50) (P45) (P40) (P35) (P30) (P25)] def %7 illumin /TELI1 [(D65) (D50) (P40) (A00) (E00) (C00) (P00) (Q00)] def %7 illumin. 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 /FXN 82 array def /FYN 82 array def /FZN 82 array def /Xi 475 array def /Yi 475 array def /Zi 475 array def /XANi 475 array def /YANi 475 array def /ZANi 475 array def /AANi 475 array def %actual data for plot, spectral colours /BANi 475 array def /AAN1i 475 array def %actual data for plot, Illuminants colours (M=1) /BAN1i 475 array def /AANXi 475 array def %either from (XAN/YAN/ZAN)Mi, or (XAN/YAN/ZAN)Oi /BANXi 475 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 /XAND65 0.3127 def /YAND65 0.3290 def /ZAND65 1. XAND65 sub YAND65 sub def /XAND50 0.3457 def /YAND50 0.3585 def /ZAND50 1. XAND50 sub YAND50 sub def /XANP40 0.3799 def /YANP40 0.3764 def /ZANP40 1. XANP40 sub YANP40 sub def /XANA00 0.4475 def /YANA00 0.4074 def /ZANA00 1. XANA00 sub YANA00 sub def /XANE00 0.3333 def /YANE00 0.3333 def /ZANE00 1. XANE00 sub YANE00 sub def /XANC00 0.3100 def /YANC00 0.3161 def /ZANC00 1. XANC00 sub YANC00 sub def /XANP00 0.3604 def /YANP00 0.3531 def /ZANP00 1. XANP00 sub YANP00 sub def /XANQ00 0.3090 def /YANQ00 0.3155 def /ZANQ00 1. XANQ00 sub YANQ00 sub def xcolor 1 eq {0 1 239 {/i exch def %i=0,239 F2 i F10 i get put } for %i=0,239 0 1 050 {/i exch def %i=0,50 F02Z i F10Z i get put } for %i=0,50 } if /InCS 16 array def %16 colour spaces (Index) /InCS [(0) (0) (1) (2) (3) (4) (5) (6) (0) (0) (1) (2) (3) (4) (5) (6)] def %calculation of XW,YW,ZW for illuminant D65, D50, ... 0 1 79 {/i exch def %i=0,79 xchart8 0 eq {%xchart8=0 xchartx 0 eq {SX00 i SP60 i get put} if xchartx 1 eq {SX01 i SP55 i get put} if xchartx 2 eq {SX02 i SP50 i get put} if xchartx 3 eq {SX03 i SP45 i get put} if xchartx 4 eq {SX04 i SP40 i get put} if xchartx 5 eq {SX05 i SP35 i get put} if xchartx 6 eq {SX06 i SP30 i get put} if xchartx 7 eq {SX07 i SP25 i get put} if } %xchart8=0 { %xchart8=1 xchartx 0 eq {SX00 i SD65 i get put} if xchartx 1 eq {SX01 i SD50 i get put} if xchartx 2 eq {SX02 i SP40 i get put} if xchartx 3 eq {SX03 i SA00 i get put} if xchartx 4 eq {SX04 i SE00 i get put} if xchartx 5 eq {SX05 i SC00 i get put} if xchartx 6 eq {SX06 i SP00 i get put} if xchartx 7 eq {SX07 i SQ00 i get put} if } ifelse %xchart8=1 } for %i=0,79 0 1 79 {/i exch def %i=0,79 SDAK i xchartx 0 eq {SX00 i get} if xchartx 1 eq {SX01 i get} if xchartx 2 eq {SX02 i get} if xchartx 3 eq {SX03 i get} if xchartx 4 eq {SX04 i get} if xchartx 5 eq {SX05 i get} if xchartx 6 eq {SX06 i get} if xchartx 7 eq {SX07 i get} if put } for %i=0,79 /YKSUM 0 def %For CIE Illuminant E 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,79 FXN i SDAK i get F2 00 i add get mul YKSUM div 100 mul put FYN i SDAK i get F2 80 i add get mul YKSUM div 100 mul put FZN i SDAK i get F2 160 i add get mul YKSUM div 100 mul put } for %i=0,79 FXN 80 FXN 79 get put FYN 80 FYN 79 get put FZN 80 FZN 79 get put DOW 80 DOW 79 get put 0 1 80 {/i exch def %i=0,80 %for any illuminant Xi i FXN i get put Yi i FYN i get put Zi i FZN i get put /SUM FXN i get FYN i get add FZN i get add 0.00001 add def XANi i FXN i get SUM div put YANi i FYN i get SUM div put ZANi i FZN i get SUM div put } for %i=0,80 0 1 16 {/i exch def %i=0,16 %for illuminant E: S(lamdda=100) FXNZ i F02Z 00 i add get 100 mul YKSUM div 100 mul put FYNZ i F02Z 17 i add get 100 mul YKSUM div 100 mul put FZNZ i F02Z 34 i add get 100 mul YKSUM div 100 mul put } for %i=0,16 0 1 16 {/i exch def %i=0,16 %for illuminant E: S(lamdda=100) XZi i FXNZ i get put YZi i FYNZ i get put ZZi i FZNZ i get put /SUMZ FXNZ i get FYNZ i get add FZNZ i get add def XANZi i FXNZ i get SUMZ div put YANZi i FYNZ i get SUMZ div put ZANZi i FZNZ i get SUMZ div put } for %i=0,16 /a2 1.0 def /b2 0.4 neg def /K 0 def %normalization Y=1.00 %/K 1 def %normalization Y=0.886 %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 FXN i get add def /YW YW FYN i get add def /ZW ZW FZN i get add def } for %i=0,79 /SUMW XW YW add ZW add def %for X00, X01, X02, X03, X04, X05, X06, X07 /XANW XW SUMW FL add div def /YANW YW SUMW FL add div def /ZANW ZW SUMW FL add div def K 0 eq {%K=0 /XK XW def /YK YW def /ZK ZW def }%K=0 {%K=1 /XK XW 0.8859 mul def /YK YW 0.8859 mul def /ZK ZW 0.8859 mul def } ifelse %K=1 /SUMK XK YK add ZK add def %for X00, X01, X02, X03, X04, X05, X06, X07 /XANK XK SUMK div def /YANK YK SUMK div def /ZANK ZK SUMK div def /hABW 0 def /xshift 10 array def %max 6 device + 4 elementary /yshift 10 array def /colori 10 array def /XANWL XANW def /YANWL YANW def /ZANWL ZANW def /XANWC XANC00 def /YANWC YANC00 def /ZANWC ZANC00 def /AnYi 475 array def /BnYi 475 array def } bind def %END proc_XYZ_colours %**************************************************************** /proc_PDT_colours {%BEG proc_PDT_colours /l02Ii 77 array def /m02Ii 77 array def /s02Ii 77 array def /l02Mi 77 array def /m02Mi 77 array def /s02Mi 77 array def /X02Ii 77 array def /Y02Ii 77 array def /Z02Ii 77 array def /xan02Ii 77 array def /yan02Ii 77 array def /zan02Ii 77 array def /X02Mi 77 array def /Y02Mi 77 array def /Z02Mi 77 array def /xan02Mi 77 array def /yan02Mi 77 array def /zan02Mi 77 array def /ycuri 77 array def /l02Mi [ %LMS2.TXT %L2.DAT CIE Table 6.7, p. 34 380=390,385=390, 390, 395, ...760nm 4.150019e-4 4.150019e-4 4.150019e-4 1.051914e-3 2.408353e-3 %400 4.833371e-3 8.721273e-3 1.338382e-2 1.844803e-2 2.293190e-2 2.818772e-2 3.410515e-2 4.025595e-2 4.493761e-2 4.986433e-2 %450 5.534138e-2 6.471575e-2 8.069006e-2 9.947639e-2 1.188010e-1 1.401458e-1 1.639532e-1 1.915579e-1 2.329271e-1 2.889615e-1 %500 3.597162e-1 4.436801e-1 5.364880e-1 6.285647e-1 7.047255e-1 7.706373e-1 8.257146e-1 8.810083e-1 9.190730e-1 9.401995e-1 %550 9.657395e-1 9.814541e-1 9.944890e-1 1 9.923160e-1 9.694379e-1 9.556085e-1 9.276625e-1 8.859720e-1 8.339884e-1 %600 7.751040e-1 7.057161e-1 6.307685e-1 5.542300e-1 4.799434e-1 4.007098e-1 3.278612e-1 2.657847e-1 2.132849e-1 1.651391e-1 %650 1.247498e-1 9.300794e-2 6.850937e-2 4.986664e-2 3.582284e-2 2.537932e-2 1.772025e-2 1.216998e-2 8.471687e-3 5.897527e-3 %700 4.091288e-3 2.804465e-3 1.920570e-3 1.326875e-3 9.177829e-4 6.393665e-4 4.460361e-4 3.108708e-4 2.193310e-4 1.545503e-4 %750 1.095065e-4 7.799195e-5 ] def /m02Mi [ %M2.DAT 3.683495e-4 3.683495e-4 3.683495e-4 9.586496e-4 2.269917e-3 %400 4.700132e-3 8.793667e-3 1.452780e-2 2.166506e-2 2.957127e-2 3.945663e-2 5.182030e-2 6.477837e-2 7.588048e-2 8.705225e-2 %450 9.819288e-2 1.162733e-1 1.445407e-1 1.758936e-1 2.053998e-1 2.357545e-1 2.680649e-1 3.036267e-1 3.570590e-1 4.277598e-1 %500 5.155847e-1 6.155169e-1 7.191508e-1 8.166012e-1 8.855437e-1 9.356857e-1 9.688577e-1 9.952165e-1 9.971948e-1 9.771922e-1 %550 9.995->9.95? 9.565771e-1 9.177407e-1 8.732126e-1 8.135046e-1 7.402868e-1 6.532810e-1 5.725950e-1 4.925950e-1 4.112444e-1 3.344260e-1 %600 2.648744e-1 2.052721e-1 1.562428e-1 1.166407e-1 8.558743e-2 6.211264e-2 4.448770e-2 3.142624e-2 2.180369e-2 1.544792e-2 %650 1.071199e-2 7.302475e-3 4.971759e-3 3.436687e-3 2.376184e-3 1.637344e-3 1.121270e-3 7.610442e-4 5.254605e-4 3.653171e-4 %700 2.534195e-4 1.744014e-4 1.206090e-4 8.417245e-5 5.893455e-5 4.160449e-5 2.943542e-5 2.088575e-5 1.504562e-5 1.082007e-5 %750 7.822762e-6 5.690886e-6 ] def /s02Mi [ %S2.DAT CIE 171.1:2006 9.547289e-3 9.547289e-3 9.547289e-3 2.382484e-2 5.665002e-2 1.224503e-1 2.330076e-1 %410 3.813643e-1 5.436132e-1 6.744815e-1 8.025461e-1 9.035662e-1 9.910145e-1 9.915166e-1 9.553885e-1 8.602408e-1 7.867016e-1 %460 7.382611e-1 6.463534e-1 5.164164e-1 3.903373e-1 2.903220e-1 2.118654e-1 1.605240e-1 1.228400e-1 8.889554e-2 6.082050e-2 %510 4.281244e-2 2.920317e-2 1.939099e-2 1.260114e-2 8.094500e-3 5.088971e-3 3.168911e-3 1.958935e-3 1.202763e-3 7.401673e-4 %560 4.559845e-4 2.817993e-4 1.750370e-4 1.094536e-4 6.899855e-5 4.390257e-5 2.822280e-5 1.834593e-5 1.206675e-5 8.034895e-6 %610 5.418387e-6 0 0 0 0 0 0 0 0 0 %650 0 0 0 0 0 0 0 0 0 0 %700 0 0 0 0 0 0 0 0 0 0 %750 0 0 ] def %ED TC1-36 CIE 171-2, 2015, page 16, line 20-23 /A11 1.94735469 def /A12 -1.41445123 def /A13 0.36476327 def /A21 0.68990272 def /A22 0.34832189 def /A33 1.93485343 def /fsl02Mi 0 def /fsm02Mi 0 def /fss02Mi 0 def 0 1 76 {/i exch def %i=0,76 Summe fsumlms /fsl02Mi fsl02Mi l02Mi i get add def /fsm02Mi fsm02Mi m02Mi i get add def /fss02Mi fss02Mi s02Mi i get add def } for %i=0,76 0 1 76 {/i exch def %i=0,76 Normierung LMS l02Ii i l02Mi i get fsm02Mi mul fsl02Mi div put m02Ii i m02Mi i get put s02Ii i s02Mi i get fsm02Mi mul fss02Mi div put } for %i=0,76 /fsl02Ii 0 def /fsm02Ii 0 def /fss02Ii 0 def 0 1 76 {/i exch def %i=0,76 Summe fsumlms /fsl02Ii fsl02Ii l02Ii i get add def /fsm02Ii fsm02Ii m02Ii i get add def /fss02Ii fss02Ii s02Ii i get add def } for %i=0,76 0 1 76 {/i exch def %i=0,76 X02Ii i l02Mi i get A11 mul m02Mi i get A12 mul add s02Mi i get A13 mul add put Y02Ii i l02Mi i get A21 mul m02Mi i get A22 mul add put Z02Ii i s02Mi i get A33 mul put } for %i=0,76 /fsX02Ii 0 def /fsY02Ii 0 def /fsZ02Ii 0 def 0 1 76 {/i exch def %i=0,76 Summe fsumxyzIi /fsX02Ii fsX02Ii X02Ii i get add def /fsY02Ii fsY02Ii Y02Ii i get add def /fsZ02Ii fsZ02Ii Z02Ii i get add def } for %i=0,76 0 1 76 {/i exch def %i=0,76 Normierung auf 1 XYZ X02Mi i X02Ii i get 1.1510330 div put %max 600nm Y02Mi i Y02Ii i get 0.9994608 div put %max 555nm Z02Mi i Z02Ii i get 1.9184370 div put %max 445nm } for %i=0,76 /fsX02Mi 0 def /fsY02Mi 0 def /fsZ02Mi 0 def 0 1 76 {/i exch def %i=0,76 Summe fsumxyzMi /fsX02Mi fsX02Mi X02Mi i get add def /fsY02Mi fsY02Mi Y02Mi i get add def /fsZ02Mi fsZ02Mi Z02Mi i get add def } for %i=0,76 0 1 76 {/i exch def %i=0,76 xyzan /sumXYZ X02Ii i get Y02Ii i get add Z02Ii i get add def xan02Ii i X02Ii i get sumXYZ div put yan02Ii i Y02Ii i get sumXYZ div put zan02Ii i Z02Ii i get sumXYZ div put } for %i=0,76 } bind def %END proc_PDT_colours %************************************************* /proc_data {%BEG proc_data xchart3 0 eq {%xchart3=0 plot only if data are availble %calculation of transformation data /FARBE 27 array def /FARBE [(Illuminants) () () %00 () () () %01 (Y=100, 100, 100, 100, 100) () () %02 () () () %03 (L*=100, 100, 100, 100, 100) () () %04 () () () %05 () () () %06 () () () %07 () () () %08 ] def %********************************************************* /iV2V8 2 def %example for Value 0:V2A, 1:V5A, 2:V8A %Input OSA /xyan_tab2A 21 array def /xyan_tab2A % 00 01 02 03 04 05 06 07 08 09 10 11 12 [ 04 05 06 07 07 02 03 04 05 05 05 05 057] def %058 samples V=2A /xyan_ill2A 950 array def %max 475 of xan and yan /xyan_ill2A %BEG xyan_ill2A [%OSA colour order system with 58 samples %data: 4+5+6+7+7+2+3+4+5+5+5+5=58 % 12 F39OM.DAT (M für L=-4) 20.4.93 % 1 4 0 1OSA78 0 0 0 0 2758 2303 2465 2362 2172 2425 1881 2492 % 1012 1020 1021 1013 % 1 5 0 2OSA78 0 0 0 0 3435 2642 3104 2726 2770 2818 2430 2914 2084 3022 % 1045 1072 1088 1091 1080 % 1 6 0 3OSA78 0 0 0 0 4236 2940 3875 3053 3511 3176 3139 3309 2756 3455 2357 3617 % 1029 1083 1125 1153 1161 1145 % 1 7 0 4OSA78 0 0 0 0 5132 3159 4751 3304 4363 3461 3968 3631 3564 3816 3145 4023 2699 4262 % 0949 1027 1100 1162 1204 1218 1197 % 1 7 0 5OSA78 0 0 0 0 5677 3432 5289 3627 4883 3837 4466 4063 4038 4310 3592 4590 3110 4927 % 0906 0997 1089 1170 1229 1252 1229 % 1 2 0 6OSA78 0 0 0 0 5132 3159 5677 3432 % 0949 0906 % 1 3 0 7OSA78 0 0 0 0 4236 2940 4751 3304 5289 3627 % 1029 1027 0997 % 1 4 0 8OSA78 0 0 0 0 3435 2642 3875 3053 4363 3461 4883 3837 % 1045 1083 1100 1089 % 1 5 0 9OSA78 0 0 0 0 2758 2303 3104 2726 3511 3176 3968 3631 4466 4063 % 1012 1072 1125 1162 1170 % 1 5 0 10OSA78 0 0 0 0 2465 2362 2770 2818 3139 3309 3564 3816 4038 4310 % 1020 1088 1153 1204 1229 % 1 5 0 11OSA78 0 0 0 0 2172 2425 2430 2914 2756 3455 3145 4023 3592 4590 % 1021 1091 1161 1218 1252 % 1 5 0 12OSA78 0 0 0 0 1881 2492 2084 3022 2357 3617 2699 4262 3110 4927 % 1013 1080 1145 1197 1229 ] def %END xyan_ill2A /Y_ill2A 950 array def %25*19x2=475x2=950 data; 475 of xan and yan /Y_ill2A %BEG Y_ill2A [% 1 4 0 1OSA78 0 0 0 0 % 2758 2303 2465 2362 2172 2425 1881 2492 1012 1020 1021 1013 % 1 5 0 2OSA78 0 0 0 0 % 3435 2642 3104 2726 2770 2818 2430 2914 2084 3022 1045 1072 1088 1091 1080 % 1 6 0 3OSA78 0 0 0 0 % 4236 2940 3875 3053 3511 3176 3139 3309 2756 3455 2357 3617 1029 1083 1125 1153 1161 1145 % 1 7 0 4OSA78 0 0 0 0 % 5132 3159 4751 3304 4363 3461 3968 3631 3564 3816 3145 4023 2699 4262 0949 1027 1100 1162 1204 1218 1197 % 1 7 0 5OSA78 0 0 0 0 % 5677 3432 5289 3627 4883 3837 4466 4063 4038 4310 3592 4590 3110 4927 0906 0997 1089 1170 1229 1252 1229 % 1 2 0 6OSA78 0 0 0 0 % 5132 3159 5677 3432 0949 0906 % 1 3 0 7OSA78 0 0 0 0 % 4236 2940 4751 3304 5289 3627 1029 1027 0997 % 1 4 0 8OSA78 0 0 0 0 % 3435 2642 3875 3053 4363 3461 4883 3837 1045 1083 1100 1089 % 1 5 0 9OSA78 0 0 0 0 % 2758 2303 3104 2726 3511 3176 3968 3631 4466 4063 1012 1072 1125 1162 1170 % 1 5 0 10OSA78 0 0 0 0 % 2465 2362 2770 2818 3139 3309 3564 3816 4038 4310 1020 1088 1153 1204 1229 % 1 5 0 11OSA78 0 0 0 0 % 2172 2425 2430 2914 2756 3455 3145 4023 3592 4590 1021 1091 1161 1218 1252 % 1 5 0 12OSA78 0 0 0 0 % 1881 2492 2084 3022 2357 3617 2699 4262 3110 4927 1013 1080 1145 1197 1229 ] def %END Y_ill2A %**************************************************** /xyan_tab5A 21 array def /xyan_tab5A % 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 [ 02 04 05 08 08 08 07 07 05 05 06 07 08 08 07 03 097] def %98 samples V5A /xyan_ill5A 950 array def %max 475 of xan and yan /xyan_ill5A %BEG xyan_ill5A [%OSA colour system with 101 samples %data: 2+4+5+8+8+8+7+7+5+5+6+7+8+8+7+3=98 % 16 F39O0 DAT (0 für L=0) 20 4 93 % 1 2 0 1OSA78 0 0 0 0 2457 2349 2260 2391 % 2650 2652 % 1 4 0 2OSA78 0 0 0 0 2872 2598 2655 2652 2437 2708 2217 2767 % 2749 2768 2775 2768 % 1 5 0 3OSA78 0 0 0 0 3350 2835 3118 2903 2883 2974 2644 3049 2401 3128 % 2812 2858 2888 2900 2893 % 1 8 0 4OSA78 0 0 0 0 4130 2972 3886 3050 3640 3131 3391 3218 3138 3310 2882 3406 2617 3511 2345 3622 % 2722 2814 2893 2957 3000 3020 3013 2977 % 1 8 0 5OSA78 0 0 0 0 4469 3230 4212 3327 3951 3429 3688 3537 3421 3652 3147 3775 2863 3909 2567 4056 % 2735 2850 2952 3036 3095 3125 3119 3073 % 1 8 0 6OSA78 0 0 0 0 4824 3475 4555 3594 4283 3719 4007 3852 3726 3993 3438 4146 3139 4315 2822 4506 % 2716 2855 2981 3087 3164 3205 3201 3142 % 1 7 0 7OSA78 0 0 0 0 5186 3697 4910 3841 4629 3992 4343 4152 4052 4323 3753 4510 3440 4720 % 2663 2824 2974 3102 3199 3252 3249 % 1 7 0 8OSA78 0 0 0 0 5544 3884 5267 4057 4982 4237 4691 4427 4392 4632 4086 4855 3765 5111 % 2582 2759 2929 3078 3195 3261 3259 % 1 5 0 9OSA78 0 0 0 0 4130 2972 4469 3230 4824 3475 5186 3697 5544 3884 % 2722 2735 2716 2663 2582 % 1 5 0 10OSA78 0 0 0 0 3886 3050 4212 3327 4555 3594 4910 3841 5267 4057 % 2814 2850 2855 2824 2759 % 1 6 0 11OSA78 0 0 0 0 3350 2835 3640 3131 3951 3429 4283 3719 4629 3992 4982 4237 % 2812 2893 2952 2981 2974 2929 % 1 7 0 12OSA78 0 0 0 0 2872 2598 3118 2903 3391 3218 3688 3537 4007 3852 4343 4152 4691 4427 % 2749 2858 2957 3036 3087 3102 3078 % 1 8 0 13OSA78 0 0 0 0 2457 2349 2655 2652 2883 2974 3138 3310 3421 3652 3726 3993 4052 4323 4392 4632 % 2650 2768 2888 3000 3095 3164 3199 3195 % 1 8 0 14OSA78 0 0 0 0 2260 2391 2437 2708 2644 3049 2882 3406 3147 3775 3438 4146 3753 4510 4086 4855 % 2652 2775 2900 3020 3125 3205 3252 3261 % 1 7 0 15OSA78 0 0 0 0 2217 2767 2401 3128 2617 3511 2863 3909 3139 4315 3440 4720 3765 5111 % 2768 2893 3013 3119 3201 3249 3259 % 1 3 0 16OSA78 0 0 0 0 2345 3622 2567 4056 2822 4506 % 2977 3073 3142 ] def %END xyan_ill5A /Y_ill5A 950 array def %max 475 of xan and yan /Y_ill5A %BEG Y_ill5A [% 16 F39O0 DAT (0 für L=0) 20 4 93 % 1 2 0 1OSA78 0 0 0 0 % 2457 2349 2260 2391 2650 2652 % 1 4 0 2OSA78 0 0 0 0 % 2872 2598 2655 2652 2437 2708 2217 2767 2749 2768 2775 2768 % 1 5 0 3OSA78 0 0 0 0 % 3350 2835 3118 2903 2883 2974 2644 3049 2401 3128 2812 2858 2888 2900 2893 % 1 8 0 4OSA78 0 0 0 0 % 4130 2972 3886 3050 3640 3131 3391 3218 3138 3310 2882 3406 2617 3511 2345 3622 2722 2814 2893 2957 3000 3020 3013 2977 % 1 8 0 5OSA78 0 0 0 0 % 4469 3230 4212 3327 3951 3429 3688 3537 3421 3652 3147 3775 2863 3909 2567 4056 2735 2850 2952 3036 3095 3125 3119 3073 % 1 8 0 6OSA78 0 0 0 0 % 4824 3475 4555 3594 4283 3719 4007 3852 3726 3993 3438 4146 3139 4315 2822 4506 2716 2855 2981 3087 3164 3205 3201 3142 % 1 7 0 7OSA78 0 0 0 0 % 5186 3697 4910 3841 4629 3992 4343 4152 4052 4323 3753 4510 3440 4720 2663 2824 2974 3102 3199 3252 3249 % 1 7 0 8OSA78 0 0 0 0 % 5544 3884 5267 4057 4982 4237 4691 4427 4392 4632 4086 4855 3765 5111 2582 2759 2929 3078 3195 3261 3259 % 1 5 0 9OSA78 0 0 0 0 % 4130 2972 4469 3230 4824 3475 5186 3697 5544 3884 2722 2735 2716 2663 2582 % 1 5 0 10OSA78 0 0 0 0 % 3886 3050 4212 3327 4555 3594 4910 3841 5267 4057 2814 2850 2855 2824 2759 % 1 6 0 11OSA78 0 0 0 0 % 3350 2835 3640 3131 3951 3429 4283 3719 4629 3992 4982 4237 2812 2893 2952 2981 2974 2929 % 1 7 0 12OSA78 0 0 0 0 % 2872 2598 3118 2903 3391 3218 3688 3537 4007 3852 4343 4152 4691 4427 2749 2858 2957 3036 3087 3102 3078 % 1 8 0 13OSA78 0 0 0 0 % 2457 2349 2655 2652 2883 2974 3138 3310 3421 3652 3726 3993 4052 4323 4392 4632 2650 2768 2888 3000 3095 3164 3199 3195 % 1 8 0 14OSA78 0 0 0 0 % 2260 2391 2437 2708 2644 3049 2882 3406 3147 3775 3438 4146 3753 4510 4086 4855 2652 2775 2900 3020 3125 3205 3252 3261 % 1 7 0 15OSA78 0 0 0 0 % 2217 2767 2401 3128 2617 3511 2863 3909 3139 4315 3440 4720 3765 5111 2768 2893 3013 3119 3201 3249 3259 % 1 3 0 16OSA78 0 0 0 0 % 2345 3622 2567 4056 2822 4506 2977 3073 3142 ] def %END Y_ill5A %********************************************************** /xyan_tab8A 21 array def /xyan_tab8A % 00 01 02 03 04 05 06 07 08 09 10 11 12 13 [ 03 05 05 05 04 03 02 01 04 07 08 06 03 055] def %056 samples V=2A /xyan_ill8A 950 array def %max 475 of xan and yan /xyan_ill8A %BEG xyan_ill8A [%OSA colour order system with 56 samples %data: 3+5+5+5+4+3+2+1+4+7+8+6+3=56 % 13 F39OP DAT (P =+4) 20 4 93 % 1 3 0 1OSA78 0 0 0 0 3124 2996 2942 3054 2758 3114 % 5870 5918 5943 % 1 5 0 2OSA78 0 0 0 0 3520 3173 3330 3240 3138 3310 2944 3383 2746 3460 % 5939 6026 6089 6124 6129 % 1 5 0 3OSA78 0 0 0 0 3750 3407 3551 3486 3350 3569 3146 3657 2937 3750 % 6051 6160 6240 6288 6298 % 1 5 0 4OSA78 0 0 0 0 3992 3638 3785 3732 3576 3830 3363 3934 3145 4044 % 6130 6263 6363 6424 6441 % 1 4 0 5OSA78 0 0 0 0 4244 3863 4031 3972 3815 4086 3594 4208 % 6170 6328 6450 6526 % 1 3 0 6OSA78 0 0 0 0 4286 4203 4064 4335 3838 4476 % 6351 6494 6586 % 1 2 0 7OSA78 0 0 0 0 4548 4420 4322 4571 % 6327 6492 % 1 1 0 8OSA78 0 0 0 0 4584 4788 % 6445 % 1 4 0 9OSA78 0 0 0 0 3520 3173 3750 3407 3992 3638 4244 3863 % 5939 6051 6130 6170 % 1 7 0 10OSA78 0 0 0 0 3124 2996 3330 3240 3551 3486 3785 3732 4031 3972 4286 4203 4548 4420 % 5870 6026 6160 6263 6328 6351 6327 % 1 8 0 11OSA78 0 0 0 0 2942 3054 3138 3310 3350 3569 3576 3830 3815 4086 4064 4335 4322 4571 4584 4788 % 5918 6089 6240 6363 6450 6494 6492 6445 % 1 6 0 12OSA78 0 0 0 0 2758 3114 2944 3383 3146 3657 3363 3934 3594 4208 3838 4476 % 5943 6124 6288 6424 6526 6586 % 1 3 0 13OSA78 0 0 0 0 2746 3460 2937 3750 3145 4044 % 6129 6298 6441 ] def %END xyan_ill8A /Y_ill8A 950 array def %25*19x2=475x2=950 data; 475 of xan and yan /Y_ill8A %BEG Y_ill8A [% 1 4 0 1OSA78 0 0 0 0 % 13 F39OP DAT (P =+4) 20 4 93 % 1 3 0 1OSA78 0 0 0 0 % 3124 2996 2942 3054 2758 3114 5870 5918 5943 % 1 5 0 2OSA78 0 0 0 0 % 3520 3173 3330 3240 3138 3310 2944 3383 2746 3460 5939 6026 6089 6124 6129 % 1 5 0 3OSA78 0 0 0 0 % 3750 3407 3551 3486 3350 3569 3146 3657 2937 3750 6051 6160 6240 6288 6298 % 1 5 0 4OSA78 0 0 0 0 % 3992 3638 3785 3732 3576 3830 3363 3934 3145 4044 6130 6263 6363 6424 6441 % 1 4 0 5OSA78 0 0 0 0 % 4244 3863 4031 3972 3815 4086 3594 4208 6170 6328 6450 6526 % 1 3 0 6OSA78 0 0 0 0 % 4286 4203 4064 4335 3838 4476 6351 6494 6586 % 1 2 0 7OSA78 0 0 0 0 % 4548 4420 4322 4571 6327 6492 % 1 1 0 8OSA78 0 0 0 0 % 4584 4788 6445 % 1 4 0 9OSA78 0 0 0 0 % 3520 3173 3750 3407 3992 3638 4244 3863 5939 6051 6130 6170 % 1 7 0 10OSA78 0 0 0 0 % 3124 2996 3330 3240 3551 3486 3785 3732 4031 3972 4286 4203 4548 4420 5870 6026 6160 6263 6328 6351 6327 % 1 8 0 11OSA78 0 0 0 0 % 2942 3054 3138 3310 3350 3569 3576 3830 3815 4086 4064 4335 4322 4571 4584 4788 5918 6089 6240 6363 6450 6494 6492 6445 % 1 6 0 12OSA78 0 0 0 0 % 2758 3114 2944 3383 3146 3657 3363 3934 3594 4208 3838 4476 5943 6124 6288 6424 6526 6586 % 1 3 0 13OSA78 0 0 0 0 % 2746 3460 2937 3750 3145 4044 6129 6298 6441 ] def %END Y_ill8A %************************************************************* /xyan_ill 950 array def %max 475 of xan and yan /k10 0 def iV2V8 0 eq {/k11 xyan_tab2A 12 get def} if iV2V8 1 eq {/k11 xyan_tab5A 16 get def} if iV2V8 2 eq {/k11 xyan_tab8A 13 get def} if /jm k11 1 add 2 mul 1 sub def 0 1 jm {/j exch def %j=0,jm iV2V8 0 eq {xyan_ill j xyan_ill2A j get put} if iV2V8 1 eq {xyan_ill j xyan_ill5A j get put} if iV2V8 2 eq {xyan_ill j xyan_ill8A j get put} if } for %j=0,jm /Y_ill 475 array def %Y*1000 data /jm k11 def 0 1 jm {/j exch def %j=0,jm iV2V8 0 eq {Y_ill j Y_ill2A j get put} if iV2V8 1 eq {Y_ill j Y_ill5A j get put} if iV2V8 2 eq {Y_ill j Y_ill8A j get put} if } for %j=0,jm %Input /xyan_illn 64 array def %16*4=64 xan,yan*64 data /xyan_illn %BEG xyan_ill [%Illuminants for Series P60 to P25 and Series D65, D50, to Q00, 02 & 20 degree % 04 % 1 08 01 1 PSER02 3218 3315 3321 3407 3447 3513 3603 3632 3799 3764 4047 3904 4363 4038 4764 4136 % 1 08 02 2 DSER02 3127 3290 3457 3585 3799 3764 4475 4074 3333 3333 3100 3161 3604 3531 3090 3155 % 1 08 05 3 PSER10 3224 3321 3330 3410 3460 3512 3621 3628 3822 3756 4076 3892 4398 4024 4802 4120 % 1 08 08 4 DSER10 3137 3309 3477 3595 3822 3756 4511 4059 3333 3333 3103 3190 3609 3525 3089 3163 ] def %END xyan_illn /xyan_ill_D65_02 [3127 3290] def /xyan_ill_D65_10 [3137 3309] def /XMi 475 array def %4x31 /YMi 475 array def /ZMi 475 array def /XANMi 475 array def /YANMi 475 array def /ZANMi 475 array def /AANMi 475 array def /BANMi 475 array def 0 0 0 1 setcmykcolor %Amount data pairs /i0a k10 def /i0e k11 def /fscale 0.0001 def /fscalY 0.01 def k10 1 k11 {/k1 exch def %k1=k10,k11 /k2 k1 2 mul def XANMi k1 xyan_ill k2 0 add get fscale mul put YANMi k1 xyan_ill k2 1 add get fscale mul put ZANMi k1 1. XANMi k1 get sub YANMi k1 get sub put /YVALUE Y_ill k1 get fscalY mul def % /YVALUE 999999 fscale mul def YMi k1 YVALUE put /SUMY YVALUE YANMi k1 get div def XMi k1 SUMY XANMi k1 get mul put ZMi k1 SUMY ZANMi k1 get mul put } for %k1=k10,k11 %*********************** %XWM,YWM,ZWM and XKW,YKW,ZKW for white xcolor 0 eq {%xcolor=0 /YANWM xyan_ill_D65_02 0 get fscale mul def /YANWM xyan_ill_D65_02 1 get fscale mul def } if %xcolor=0 xcolor 1 eq {%xcolor=1 /YANWM xyan_ill_D65_10 0 get fscale mul def /YANWM xyan_ill_D65_10 1 get fscale mul def } if %xcolor=1 /ZANWM 1. YANWM sub YANWM sub def /YWM 100. def /SUMWM YWM YANWM div def /XWM SUMWM YANWM mul def /ZWM SUMWM ZANWM mul def /XKM XWM def /YKM YWM def /ZKM ZWM def } if %xchart3=0 plot only if data are availble } bind def %END proc_data %*********************************************************************** /proc_arc_ill {%BEG proc_arc_ill xchart3 0 eq {%xchart3=0 plot only if data are availble } if %xchart3=0 plot only if data are availble } bind def %END proc_arc_ill %*********************************************************************** /proc_plot_data {%BEG proc_plot_data xchart3 0 eq {%xchart3=0 plot only if data are availble /k1a 00 def /k1e 00 def /k0a 00 def /k0e 00 def newpath k1a 1 k1e {/k exch def %k=0,24 amount ellipses /k19 k 19 mul def %for serie XANMi,YANMi,YMi k0a 1 k0e {/kl exch def %kl=k0a,k0e for points and additional line % kl 0 eq {/i0a 00 def /i0e 00 def} if % kl 1 eq {/i0a 01 def /i0e 18 def} if i0a 1 i0e {/i exch def %i=i0a,i0e %19 points per ellipsis /Ylre 1 def %linear (l) relative (re) Y data /ik19 i k19 add def xchartl 0 eq {%xchartl=0 (x,y) /Ylre 1 def %chromaticity, not used for (x,y) AnYi i XANMi ik19 get fakt mul put %x BnYi i YANMi ik19 get fakt mul put %y } if %xchartl=0 xchartl 1 eq {%xchartl=1 (a0=x/y, b0=-0.4*z/y) /Ylre 1 def %chromaticity AnYi i XANMi ik19 get YANMi ik19 get FL add div Ylre mul a2 mul fakt mul put %a0 BnYi i ZANMi ik19 get YANMi ik19 get FL add div Ylre mul b2 mul fakt mul put %b0 } if %xchartl=1 xchartl 2 eq {%xchartl=2 (a1=[x-XANT]/y, b1=z/y) /Ylre 1 def %chromaticity AnYi i XANMi ik19 get XANT sub YANMi ik19 get FL add div Ylre mul a2 mul fakt mul put %a1 BnYi i ZANMi ik19 get YANMi ik19 get FL add div Ylre mul b2 mul fakt mul put %b1 } if %xchartl=2 xchartl 3 eq {%xchartl=3 (a2=[x-XANT2]/y, b2=z/y) /XANT2 0.110 def /Ylre 1 def %chromaticity AnYi i XANMi ik19 get XANT2 sub YANMi ik19 get FL add div Ylre mul a2 mul fakt mul put %a2 BnYi i ZANMi ik19 get YANMi ik19 get FL add div Ylre mul b2 mul fakt mul put %b2 } if %xchartl=3 kl 0 eq {%kl=0 AnYi i get BnYi i get 30 0 360 arc fill 0 0 0 setrgbcolor newpath } if %kl=0 kl 1 eq {%kl=1 AnYi i get BnYi i get i i0a eq {moveto} if i i0a 1 add ge i i0e lt and {lineto} if % i i0e eq {lineto stroke newpath} if i i0e eq {lineto closepath stroke newpath} if } if %kl=1 } for %i=i0a,i0e } for %kl=k0a,k0e for points and additional line } for %k=0,24 amount ellipses } if %xchart3=0 plot only if data are availble } bind def %END proc_plot_data %**************************************************************** %allways /proc_DEF_colours {%BEG proc_DEF_colours %Colour Deficiencies /ip1 700 380 sub 5 idiv def %ip=64:700nm /XANP1 XANi ip1 get def /YANP1 YANi ip1 get def /ZANP1 ZANi ip1 get def /id1 505 380 sub 5 idiv def %ip=25:505nm /XAND1 XANi id1 get def /YAND1 YANi id1 get def /ZAND1 ZANi id1 get def /it1 400 380 sub 5 idiv def %ip=4:400nm /XANT1 XANi it1 get def /YANT1 YANi it1 get def /ZANT1 ZANi it1 get def %************************* /XANP XANP1 def /YANP YANP1 def /ZANP ZANP1 def /XAND 1.000 def /YAND 0.001 def /ZAND 0.999 def /XANT 0.171 def /YANT 0.001 def /ZANT 1.000 XANT sub YANT sub def %************************* /XAN00 0.3333 def %Illuminant E /YAN00 0.3333 def /mP YAN00 YANP sub XAN00 XANP sub div def %700nm /bP YAN00 XAN00 mP mul sub def /mD YAN00 YAND sub XAN00 XAND sub div def %xx /bD YAN00 XAN00 mD mul sub def /mT YAN00 YANT sub XAN00 XANT sub div def %xx /bT YAN00 XAN00 mT mul sub def %************************* /mP1 YAN00 YANP1 sub XAN00 XANP1 sub div def %700nm /bP1 YAN00 XAN00 mP1 mul sub def %Deuteranop DM 0 1 0 setrgbcolor /i 505 495 sub 5 idiv 1 add def %2 D (505c,E) /XAND1 XANZi i get def /YAND1 YANZi i get def /mD1 YAN00 YAND1 sub XAN00 XAND1 sub div def %505cnm /bD1 YAN00 XAN00 mD1 mul sub def /mT1 YAN00 YANT1 sub XAN00 XANT1 sub div def %400nm /bT1 YAN00 XAN00 mT1 mul sub def /ishow {0 -40 rmoveto show 0 40 rmoveto} def /eshow {0 60 rmoveto show 0 -60 rmoveto} def /imshow {0 -40 rmoveto (m) show 0 40 rmoveto} def /imaxshow {0 -40 rmoveto (max) show 0 40 rmoveto} def /iminshow {0 -40 rmoveto (min) show 0 40 rmoveto} def } bind def %END proc_DEF_colours %allways if xchart6>=1 /proc_chromaticity {%BEG proc_chromaticity %chromaticity definitions xchartl 0 eq {%xchartl=0 %(x,y) 0 1 79 {/i exch def %i=0,79 AANi i XANi i get put BANi i YANi i get put } for %i=0,79 0 1 16 {/i exch def %i=0,16 AANZi i XANZi i get put BANZi i YANZi i get put } for %i=0,16 %COlOUR VISION DEFICIENCIES /AANP1 XANP1 def /BANP1 YANP1 def /AAND1 XAND1 def /BAND1 YAND1 def /AANT1 XANT1 def /BANT1 YANT1 def /AANP XANP def /BANP YANP def /AAND XAND def /BAND YAND def /AANT XANT def /BANT YANT def %ACHROMATIC COLOUR /AANWL XANWL def /BANWL YANWL def /AANWC XANWC def /BANWC YANWC def } if %xchartl=0 %only for (x,y) %***************** xchartl 1 eq {%xchartl=1 %only for (a,b), (a+,b+) 0 1 79 {/i exch def %i=0,79 AANi i XANi i get YANi i get FL add div a2 mul put BANi i ZANi i get YANi i get FL add div b2 mul put } for %i=0,79 0 1 16 {/i exch def %i=0,16 AANZi i XANZi i get YANZi i get FL add div a2 mul put BANZi i ZANZi i get YANZi i get FL add div b2 mul put } for %i=0,79 %COlOUR VISION DEFICIENCIES /AANP1 XANP1 YANP1 FL add div a2 mul def /BANP1 ZANP1 YANP1 FL add div b2 mul def /AAND1 XAND1 YAND1 FL add div a2 mul def /BAND1 ZAND1 YAND1 FL add div b2 mul def /AANT1 XANT1 YANT1 FL add div a2 mul def /BANT1 ZANT1 YANT1 FL add div b2 mul def /AANP XANP YANP FL add div a2 mul def /BANP ZANP YANP FL add div b2 mul def /AAND XAND YAND FL add div a2 mul def /BAND ZAND YAND FL add div b2 mul def /AANT XANT YANT FL add div a2 mul def /BANT ZANT YANT FL add div b2 mul def %ACHROMATIC COLOUR /AANWL XANWL YANWL FL add div a2 mul def /BANWL ZANWL YANWL FL add div b2 mul def /AANWC XANWC YANWC FL add div a2 mul def /BANWC ZANWC YANWC FL add div b2 mul def } if %xchartl=1 %only for (a,b), (a+,b+) %***************** xchartl 2 eq {%xchartl=2%(a1,b1), (a1+,b1+) 0 1 79 {/i exch def %i=0,79 AANi i XANi i get XANT sub YANi i get FL add div a2 mul put BANi i ZANi i get YANi i get FL add div b2 mul put } for %i=0,79 0 1 16 {/i exch def %i=0,16 AANZi i XANZi i get XANT sub YANZi i get FL add div a2 mul put BANZi i ZANZi i get YANZi i get FL add div b2 mul put } for %i=0,79 %COlOUR VISION DEFICIENCIES /AANP1 XANP1 XANT sub YANP1 FL add div a2 mul def /BANP1 ZANP1 YANP1 FL add div b2 mul def /AAND1 XAND1 XANT sub YAND1 FL add div a2 mul def /BAND1 ZAND1 YAND1 FL add div b2 mul def /AANT1 XANT1 XANT sub YANT1 FL add div a2 mul def /BANT1 ZANT1 YANT1 FL add div b2 mul def /AANP XANP XANT sub YANP FL add div a2 mul def /BANP ZANP YANP FL add div b2 mul def /AAND XAND XANT sub YAND FL add div a2 mul def /BAND ZAND YAND FL add div b2 mul def /AANT XANT XANT sub YANT FL add div a2 mul def /BANT ZANT YANT FL add div b2 mul def %ACHROMATIC COLOUR /AANWL XANWL XANT sub YANWL FL add div a2 mul def /BANWL ZANWL YANWL FL add div b2 mul def /AANWC XANWC XANT sub YANWC FL add div a2 mul def /BANWC ZANWC YANWC FL add div b2 mul def } if %xchartl=2 %only for (a1,b1), (a1+,b1+) %***************** xchartl 3 eq {%xchartl=3%(a2,b2), (a2+,b2+) /XANT2 0.110 def 0 1 79 {/i exch def %i=0,79 AANi i XANi i get XANT2 sub YANi i get FL add div a2 mul put BANi i ZANi i get YANi i get FL add div b2 mul put } for %i=0,79 0 1 16 {/i exch def %i=0,16 AANZi i XANZi i get XANT2 sub YANZi i get FL add div a2 mul put BANZi i ZANZi i get YANZi i get FL add div b2 mul put } for %i=0,79 %COlOUR VISION DEFICIENCIES /AANP1 XANP1 XANT2 sub YANP1 FL add div a2 mul def /BANP1 ZANP1 YANP1 FL add div b2 mul def /AAND1 XAND1 XANT2 sub YAND1 FL add div a2 mul def /BAND1 ZAND1 YAND1 FL add div b2 mul def /AANT1 XANT1 XANT2 sub YANT1 FL add div a2 mul def /BANT1 ZANT1 YANT1 FL add div b2 mul def /AANP XANP XANT2 sub YANP FL add div a2 mul def /BANP ZANP YANP FL add div b2 mul def /AAND XAND XANT2 sub YAND FL add div a2 mul def /BAND ZAND YAND FL add div b2 mul def /AANT XANT XANT2 sub YANT FL add div a2 mul def /BANT ZANT YANT FL add div b2 mul def %ACHROMATIC COLOUR /AANWL XANWL XANT2 sub YANWL FL add div a2 mul def /BANWL ZANWL YANWL FL add div b2 mul def /AANWC XANWC XANT2 sub YANWC FL add div a2 mul def /BANWC ZANWC YANWC FL add div b2 mul def } if %xchartl=3 %only for (a2,b2), (a2+,b2+) } bind def %END proc_chromaticity %*********************************************************** /proc_xaxis_xchartl_coor {%BEG proc_xaxis_xchartl_coor xchartl 0 eq {%xchartl=0,#0 TBIS (x) show xcolor 1 eq {(10) ib6} if }%xchartl=0 {%xchartl#0, 1 case xchart10: abx (x=0,6) xchart10 0 eq {%xchart10=0, abx xchartl 1 ge xchartl 7 le and {%xchartl=1<=7 TBIS (a) show xchartl 1 sub cvicvs ib6 xcolor 1 eq {(,10) ib6} if } if %xchartl=1,7 xchartl 1 eq {%xchartl=1 TBS (=) show TBIS (x) show xcolor 1 eq {(10) ib6} if TBS (/) show TBIS (y) show xcolor 1 eq {(10) ib6} if } if %xchartl=1 xchartl 2 eq {%xchartl=2 TBS (=\050) show TBIS (x) show xcolor 1 eq {(10) ib6} if TBS (-0,171\051/) show TBIS (y) show xcolor 1 eq {(10) ib6} if } if %xchartl=2 xchartl 3 eq {%xchartl=3 TBS (=\050) show TBIS (x) show xcolor 1 eq {(10) ib6} if TBS (-0,110\051/) show TBIS (y) show xcolor 1 eq {(10) ib6} if } if %xchartl=3 } if %xchart10=0, abx } ifelse %xchart=0,#0 } bind def %END proc_xaxis_xchartl_coor %*********************************************************** /proc_yaxis_xchartl_coor {%BEG proc_yaxis_xchartl_coor xchartl 0 eq {%xchartl=0,#0 TBIS (y) show xcolor 1 eq {(10) ib6} if }%xchartl=0 {%xchartl#0, 1 casesxchart10: abx xchart10 0 eq {%xchart10=0, abx xchartl 1 ge xchartl 7 le and {%xchartl=1,7 TBIS (b) show xchartl 1 sub cvicvs ib6 xcolor 1 eq {(,10) ib6} if } if %xchartl=1,7 xchartl 1 eq xchartl 2 eq or xchartl 3 eq or {%xchartl=1,2,3 TBS (=-0,40) show TBIS (z) show xcolor 1 eq {(10) ib6} if TBS (/) show TBIS (y) show xcolor 1 eq {(10) ib6} if } if %xchartl=1,2,3 } if %xchart10=0, abx } ifelse %xchart#0 } bind def %END proc_yaxis_xchartl_coor %********************************************************* /proc_chromaticity_lines {%BEG proc_chromaticity_lines for xchart6>=1 %chromaticity lines and with names for xchart6=2 xchartl 0 eq {%xchartl=0 %(x,y) /xtrans8 600 def /ytrans8 400 def xtrans8 ytrans8 translate %for scala and graphic 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 xcolor 1 eq {TV 0 -40 rmoveto (10) show 0 40 rmoveto TIS} if -300 2800 moveto (y) show xcolor 1 eq {TV 0 -40 rmoveto (10) show 0 40 rmoveto TIS} if TBIS 2600 150 moveto xcolor 0 eq {(CIE 1931) show} if xcolor 1 eq {(CIE 1964) show} if newpath /fakt 4000 def %old %1000 02 01 16 01 .00 .0020 ******************** %ANF PROZSPEP3.FOR: MULYA= 4000 BEO=02 xy-Farbtafel IXY0: 600 400 %600 400 translate %693 19 moveto 5 1 60 {/i exch def %i=5,60 AANi i get fakt mul BANi 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 0 000 000 (530) %30 0 000 000 (535) %31 0 000 000 (540) %32 M 0 000 000 (545) %33 1 050 050 (550) %34 0 000 000 (555) %35 0 000 000 (560) %36 0 000 000 (565) %37 0 000 000 (570) %38 L 1 050 050 (575) %39 0 000 000 (580) %40 0 000 000 (585) %41 0 000 000 (590) %42 0 000 000 (595) %43 1 100 -50 (600) %44 0 000 000 (605) %45 0 000 000 (610) %46 0 000 000 (615) %47 0 000 000 (620) %48 1 100 -50 (625) %49 0 000 000 (630) %50 0 000 000 (635) %51 0 000 000 (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 AANi i get fakt mul BANi i get fakt mul 30 0 360 arc fill %400,425,...,700 0 0 0 1 setcmykcolor AANi i get fakt mul BANi i get fakt mul 30 0 360 arc stroke %400,425,...,700 } if %xytshift=1 } for %i=5,1,60 TBIV 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 AANi i get fakt mul xytshift i41 get add BANi 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 0 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 1 050 -100 (560c,E) %14 S 0 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 TBIV 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 /AANWLf XANWL fakt mul def /BANWLf YANWL fakt mul def /AANWCf XANWC fakt mul def /BANWCf YANWC fakt mul def /i 400 380 sub 5 idiv def %4 T /AANF AANi i get fakt mul def /BANF BANi i get fakt mul def 0.5 0 0.5 setrgbcolor AANWLf BANWLf moveto AANF BANF lineto stroke AANWLf 300 sub BANWLf 900 sub moveto TIK (T) show (S) is4 %TS /i 450 380 sub 5 idiv def %14 S /AANF AANi i get fakt mul def /BANF BANi i get fakt mul def 1 0 1 setrgbcolor AANWLf BANWLf moveto AANF BANF lineto stroke %AANF 500 add BANF 1000 sub moveto TIK (S) show (m) is4 %450 S AANWLf 750 sub BANWLf 1000 sub moveto TIK (S) show (m) is4 %450 S /i 470 380 sub 5 idiv def %18 B /AANF AANi i get fakt mul def /BANF BANi i get fakt mul def 0 0 1 setrgbcolor 50 setlinewidth AANWLf BANWLf moveto AANF BANF lineto stroke %470 Be (Lc) 20 setlinewidth AANF 050 sub BANF 250 add moveto TIK (B) show TV (e) is4 /i 495 380 sub 5 idiv def %23 Rc /AANF AANi i get fakt mul def /BANF BANi i get fakt mul def 0 0 0 setrgbcolor AANWLf BANWLf moveto AANF BANF lineto stroke %495 Rc (M=S) AANF 120 add BANF 400 sub moveto TIK (M) show (l) iy4 TK (=) show TIK (S) show (l) iy4 /i 505 380 sub 5 idiv def %26 505c,E /AANF AANi i get fakt mul def /BANF BANi i get fakt mul def 0 0 0 setrgbcolor AANWLf BANWLf moveto AANF BANF lineto stroke %505 V (M=S) AANF 250 add BANF 300 sub moveto TIK (V') show 0 0 0 setrgbcolor AANF 050 add BANF 550 sub moveto TIK (V) show (l) iy4 TK (=) show TIK (S) show (l) iy4 /i 520 380 sub 5 idiv def %28 G /AANF AANi i get fakt mul def /BANF BANi i get fakt mul def 0 1 0 setrgbcolor 50 setlinewidth AANWLf BANWLf moveto AANF BANF lineto stroke %520 G (Y=B) 20 setlinewidth AANF 200 add BANF 350 sub moveto TIK (G) show TS (e) is4 %1 1 0 setrgbcolor %AANF 100 sub BANF 700 sub moveto TIK (Y) show %(l) iy4 TK (=) show %0 0 1 setrgbcolor TIK (B) show (l) iy4 /i 540 380 sub 5 idiv def %32 M /AANF AANi i get fakt mul def /BANF BANi i get fakt mul def 0 0 0 setrgbcolor AANWLf BANWLf moveto AANF BANF lineto stroke %540 M AANF 100 sub BANF 100 add moveto TIK (M) show (m) is4 /i 555 380 sub 5 idiv def %35 V /AANF AANi i get fakt mul def /BANF BANi i get fakt mul def 0 0 0 setrgbcolor AANWLf BANWLf moveto AANF BANF lineto stroke %555 V (L=M) AANF 000 add BANF 000 add moveto TIK (V) show (m) is4 /i 570 380 sub 5 idiv def %38 L /AANF AANi i get fakt mul def /BANF BANi i get fakt mul def 1 1 0 setrgbcolor 50 setlinewidth AANWLf BANWLf moveto AANF BANF lineto stroke %570 L=Y 20 setlinewidth AANF 050 sub BANF 150 add moveto TIK (Y) show TV (e) is4 /i 620 380 sub 5 idiv def %48 /AANF AANi i get fakt mul def /BANF BANi i get fakt mul def 1 0 0 setrgbcolor 50 setlinewidth AANWLf BANWLf moveto AANF BANF lineto stroke %620 R 20 setlinewidth AANF 050 add BANF 250 add moveto TIK (R) show TV (e) is4 /i 700 380 sub 5 idiv def %64 R /AANF AANi i get fakt mul def /BANF BANi i get fakt mul def 1 0 0 setrgbcolor AANWLf BANWLf moveto AANF BANF lineto stroke %700 %Protanop PL 1 0 0 setrgbcolor AANF 200 sub BANF 200 sub moveto TIK (P) show TS (L) is4 %PL %Deuteranop DM 0 1 0 setrgbcolor /i 505 495 sub 5 idiv 1 add def %2 D (505c,E) /AANF AANZi i get fakt mul def /BANF BANZi i get fakt mul def 0 1 0 setrgbcolor AANWLf BANWLf moveto AANF BANF lineto stroke AANF 600 sub BANF 000 sub moveto TIK (D) show (M) is4 %DM newpath 0 0 0 setrgbcolor xchart5 1 ge {%xchart5=1 AANWLf BANWLf %achromatic 40 0 360 arc stroke newpath } if %xchart5=1 xchart5 2 eq {%xchart5=2 0 0 0 setrgbcolor AANWLf 000 add BANWLf 300 sub moveto %achromatic TBS TELI xchartx get show %text illuminant } if %xchart5=2 xchart3 0 eq {%Munsell AANWCf 550 add BANWCf 250 add moveto TBV (1) show AANWCf 350 add BANWCf 100 add moveto TBV (2) show AANWCf 200 add BANWCf 050 add moveto TBV (5) show } if %Munsell xtrans8 neg ytrans8 neg translate %for scala and grafic %ENDE: 1 } if %xchartl=0 %***************** xchartl 1 eq {%xchartl=1,2 %(a,b), (a+,b+) /xtrans9a 0500 def /xtrans9 1300 def /ytrans9 3200 def xtrans9a ytrans9 translate 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 posax posay moveto proc_xaxis_xchartl_coor posbx posby moveto 90 rotate proc_yaxis_xchartl_coor -90 rotate xchart6 3 eq {%xchart6=3 4150 300 moveto TBS (Parame\255) show 4150 100 moveto TBS (ter:) show TBIS ( Y) show TV } if %xchart6>=2 xtrans9a neg ytrans9 neg translate %1000 02 01 16 01-.03**************************************** %ANF PROZSPEP.FOR: MULYA= 1000 BEO=02 ab-Farbtafel IXY0: 1500 3200 xtrans9 ytrans9 translate /fakt 1000 def 5 1 60 {/i exch def %i=5,60 AANi i get fakt mul BANi 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) %00 0 000 000 (385) %01 0 000 000 (390) %02 0 000 000 (395) %03 0 -375 -250 (400) %04 0 000 000 (405) %05 0 000 000 (410) %06 0 000 000 (415) %07 0 000 000 (420) %08 0 -500 -100 (425) %09 0 000 000 (430) %10 0 000 000 (435) %11 0 000 000 (440) %12 0 000 000 (445) %13 0 -350 -030 (450) %14 0 000 000 (455) %15 0 000 000 (460) %16 0 000 000 (465) %17 0 000 000 (470) %18 0 000 000 (475) %19 1 -300 -100 (480) %20 0 000 000 (485) %21 1 -300 -100 (490) %22 0 000 000 (495) %23 1 -300 -100 (500) %24 0 000 000 (505) %25 0 000 000 (510) %26 0 000 000 (515) %27 0 000 000 (520) %28 1 -200 060 (525) %29 0 000 000 (530) %30 0 000 000 (535) %31 0 000 000 (540) %32 0 000 000 (545) %33 0 000 000 (550) %34 0 000 000 (555) %35 0 000 000 (560) %36 0 000 000 (565) %37 0 000 000 (570) %38 1 000 060 (575) %39 0 000 000 (580) %40 0 000 000 (585) %41 0 000 000 (590) %42 0 000 000 (595) %43 1 -150 060 (600) %44 0 000 000 (605) %45 0 000 000 (610) %46 0 000 000 (615) %47 0 000 000 (620) %48 1 -150 060 (625) %49 0 000 000 (630) %50 0 000 000 (635) %51 0 000 000 (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 -150 (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 AANi i get fakt mul BANi i get fakt mul 30 0 360 arc fill %400,425,...,700 0 0 0 1 setcmykcolor AANi i get fakt mul BANi i get fakt mul 30 0 360 arc stroke %400,425,...,700 } if %xytshift=1 } for %i=5,1,60 TBIV 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 AANi i get fakt mul xytshift i41 get add BANi 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 060 (700) %0 normal 1 070 -50 (495c,E) %1 1 070 -50 (500c,E) %2 1 070 -50 (505c,E) %3 1 070 -50 (510c,E) %4 0 050 -100 (515c,E) %5 0 050 -100 (520c,E) %6 1 070 -50 (525c,E) %7 0 050 -100 (530c,E) %8 0 050 -100 (535c,E) %9 1 050 -100 (540c,E) %10 0 050 -100 (545c,E) %11 0 070 -50 (550c,E) %12 0 050 -100 (555c,E) %13 0 050 -100 (560c,E) %14 S 0 070 -50 (565c,E) %15 0 -100 -150 (400) %16 see normal ] def 0 1 16 {/i exch def %i=0,1,16 /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,425,...,700 0 0 0 1 setcmykcolor AANZi i get fakt mul BANZi i get fakt mul 30 0 360 arc stroke %400,425,...,700 } if %xytshiftZ=1 } for %i=5,1,60 TBIV 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 /AANWLf AANWL fakt mul def /BANWLf BANWL fakt mul def /AANWCf AANWC fakt mul def /BANWCf BANWC fakt mul def /tabj 200 array def %20x12 /tabj %00 01 02 03 04 05 06 07 08 09 10 12 %JN lam la0 color shix shiy Na1 in1 Na2 in2 [01 400 380 0.5 0.0 0.5 1100 -2000 (T) (S) () () 01 450 380 1.0 0.0 1.0 0300 -2000 (S) (m) () () 01 470 380 0.0 0.0 1.0 -0300 -1400 (B) (e) () () 01 495 380 0.0 0.0 0.0 -0700 -0100 (M) (l) (=S) (l) 01 505 380 0.0 0.0 0.0 -0750 0000 (V) (l) (=S) (l) 01 520 380 0.0 1.0 0.0 -0450 0150 (G) (e) () () 00 520 380 0.0 0.0 0.0 -0800 -0050 (Y) (l) (=B) (l) 01 540 380 0.0 0.0 0.0 -0100 0100 (M) (m) () () 01 570 380 1.0 1.0 0.0 -0150 0100 (Y) (e) () () 00 575 380 1.0 1.0 0.0 -0100 0250 (Y) (e) () () 01 620 380 1.0 0.0 0.0 -0300 0150 (R) (e) () () 01 700 380 1.0 0.0 0.0 -0550 -0400 (P) (L) () () 01 505 490 0.0 1.0 0.0 -0600 -0180 (D) (M) () () ] def 0 1 12 {/j exch def %j=0,12 /j0 j 12 mul def /l01 j0 01 add def /l02 j0 02 add def /co1 j0 03 add def /co2 j0 04 add def /co3 j0 05 add def /po1 j0 06 add def /po2 j0 07 add def /n11 j0 08 add def /n12 j0 09 add def /n21 j0 10 add def /n22 j0 11 add def tabj j0 get 1 eq {%JN=1 /i tabj l01 get tabj l02 get sub 5 idiv def /AANF AANi i get fakt mul def /BANF BANi i get fakt mul def j 12 eq {/AANF AANZi i get fakt mul def /BANF BANZi i get fakt mul def } if tabj co1 get tabj co2 get tabj co3 get setrgbcolor tabj l01 get 470 eq tabj l01 get 520 eq or tabj l01 get 570 eq or tabj l01 get 620 eq or {50 setlinewidth} if AANWLf BANWLf moveto AANF BANF lineto stroke 20 setlinewidth xchart6 2 ge {%xchart6>=2 %add text j 2 le {AANWLf tabj po1 get add BANWLf tabj po2 get add moveto} %relative achromatic {AANF tabj po1 get add BANF tabj po2 get add moveto} ifelse TIK tabj n11 get show tabj n12 get (l) eq {(l) iy4} {tabj n12 get ishow} ifelse TIK tabj n21 get show tabj n22 get (l) eq {(l) iy4} {tabj n22 get ishow} ifelse } if %xchart6>=2 } if %JN=1 } for %j=0,12 newpath 0 0 0 setrgbcolor xchart5 1 ge {%xchart5=1 AANWLf BANWLf %achromatic 40 0 360 arc stroke newpath } if %xchart5=1 xchart5 2 eq {%xchart5=2 0 0 0 setrgbcolor AANWLf 000 add BANWLf 300 sub moveto %achromatic TBS TELI xchartx get show %text illuminant } if %xchart5=2 xchart3 0 eq {%Munsell AANWCf 550 add BANWCf 250 add moveto TBV (1) show AANWCf 350 add BANWCf 100 add moveto TBV (2) show AANWCf 200 add BANWCf 050 add moveto TBV (5) show } if %Munsell xtrans9 neg ytrans9 neg translate %ENDE: 1 } if %xchartl=1 %***************** xchartl 2 eq {%xchartl=2 %(a1,b1), (a1+,b1+) /xtrans9a 0500 def /xtrans9 1300 def /ytrans9 3200 def xtrans9a ytrans9 translate 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 posax posay moveto proc_xaxis_xchartl_coor posbx posby moveto 90 rotate proc_yaxis_xchartl_coor -90 rotate xchart6 3 eq {%xchart6=3 4150 300 moveto TBS (Parame\255) show 4150 100 moveto TBS (ter:) show TBIS ( Y) show TV } if %xchart6>=2 xtrans9a neg ytrans9 neg translate %1000 02 01 16 01-.03**************************************** %ANF PROZSPEP.FOR: MULYA= 1000 BEO=02 ab-Farbtafel IXY0: 1500 3200 xtrans9 ytrans9 translate /fakt 1000 def 5 1 60 {/i exch def %i=5,60 AANi i get fakt mul BANi 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) %00 0 000 000 (385) %01 0 000 000 (390) %02 0 000 000 (395) %03 0 -375 -250 (400) %04 0 000 000 (405) %05 0 000 000 (410) %06 0 000 000 (415) %07 0 000 000 (420) %08 0 -500 -100 (425) %09 0 000 000 (430) %10 0 000 000 (435) %11 0 000 000 (440) %12 0 000 000 (445) %13 0 -350 -030 (450) %14 0 000 000 (455) %15 0 000 000 (460) %16 0 000 000 (465) %17 0 000 000 (470) %18 0 000 000 (475) %19 1 -300 -100 (480) %20 0 000 000 (485) %21 1 -300 -100 (490) %22 0 000 000 (495) %23 1 -300 -100 (500) %24 0 000 000 (505) %25 0 000 000 (510) %26 0 000 000 (515) %27 0 000 000 (520) %28 1 -200 060 (525) %29 0 000 000 (530) %30 0 000 000 (535) %31 0 000 000 (540) %32 0 000 000 (545) %33 0 000 000 (550) %34 0 000 000 (555) %35 0 000 000 (560) %36 0 000 000 (565) %37 0 000 000 (570) %38 1 000 060 (575) %39 0 000 000 (580) %40 0 000 000 (585) %41 0 000 000 (590) %42 0 000 000 (595) %43 1 -150 060 (600) %44 0 000 000 (605) %45 0 000 000 (610) %46 0 000 000 (615) %47 0 000 000 (620) %48 1 -150 060 (625) %49 0 000 000 (630) %50 0 000 000 (635) %51 0 000 000 (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 -150 (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 AANi i get fakt mul BANi i get fakt mul 30 0 360 arc fill %400,425,...,700 0 0 0 1 setcmykcolor AANi i get fakt mul BANi i get fakt mul 30 0 360 arc stroke %400,425,...,700 } if %xytshift=1 } for %i=5,1,60 TBIV 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 AANi i get fakt mul xytshift i41 get add BANi 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 060 (700) %0 normal 1 070 -50 (495c,E) %1 1 070 -50 (500c,E) %2 1 070 -50 (505c,E) %3 1 070 -50 (510c,E) %4 0 050 -100 (515c,E) %5 0 050 -100 (520c,E) %6 1 070 -50 (525c,E) %7 0 050 -100 (530c,E) %8 0 050 -100 (535c,E) %9 1 050 -100 (540c,E) %10 0 050 -100 (545c,E) %11 0 070 -50 (550c,E) %12 0 050 -100 (555c,E) %13 0 050 -100 (560c,E) %14 S 0 070 -50 (565c,E) %15 0 -100 -150 (400) %16 see normal ] def 0 1 16 {/i exch def %i=0,1,16 /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,425,...,700 0 0 0 1 setcmykcolor AANZi i get fakt mul BANZi i get fakt mul 30 0 360 arc stroke %400,425,...,700 } if %xytshiftZ=1 } for %i=5,1,60 TBIV 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 /AANWLf AANWL fakt mul def /BANWLf BANWL fakt mul def /AANWCf AANWC fakt mul def /BANWCf BANWC fakt mul def /tabj 200 array def %20x12 /tabj %00 01 02 03 04 05 06 07 08 09 10 12 %JN lam la0 color shix shiy Na1 in1 Na2 in2 [01 400 380 0.5 0.0 0.5 0100 -2000 (T) (S) () () 01 450 380 1.0 0.0 1.0 -0600 -2000 (S) (m) () () 01 470 380 0.0 0.0 1.0 -0800 -1300 (B) (e) () () 01 495 380 0.0 0.0 0.0 -0700 -0100 (M) (l) (=S) (l) 01 505 380 0.0 0.0 0.0 -0750 0000 (V) (l) (=S) (l) 01 520 380 0.0 1.0 0.0 -0450 0150 (G) (e) () () 00 520 380 0.0 0.0 0.0 -0800 -0050 (Y) (l) (=B) (l) 01 540 380 0.0 0.0 0.0 -0100 0100 (M) (m) () () 01 570 380 1.0 1.0 0.0 -0150 0100 (Y) (e) () () 00 575 380 1.0 1.0 0.0 -0100 0250 (Y) (e) () () 01 620 380 1.0 0.0 0.0 -0300 0150 (R) (e) () () 01 700 380 1.0 0.0 0.0 -0550 -0400 (P) (L) () () 01 505 490 0.0 1.0 0.0 -0600 -0180 (D) (M) () () ] def 0 1 12 {/j exch def %j=0,12 /j0 j 12 mul def /l01 j0 01 add def /l02 j0 02 add def /co1 j0 03 add def /co2 j0 04 add def /co3 j0 05 add def /po1 j0 06 add def /po2 j0 07 add def /n11 j0 08 add def /n12 j0 09 add def /n21 j0 10 add def /n22 j0 11 add def tabj j0 get 1 eq {%JN=1 /i tabj l01 get tabj l02 get sub 5 idiv def /AANF AANi i get fakt mul def /BANF BANi i get fakt mul def j 12 eq {/AANF AANZi i get fakt mul def /BANF BANZi i get fakt mul def } if tabj co1 get tabj co2 get tabj co3 get setrgbcolor tabj l01 get 470 eq tabj l01 get 520 eq or tabj l01 get 570 eq or tabj l01 get 620 eq or {50 setlinewidth} if AANWLf BANWLf moveto AANF BANF lineto stroke 20 setlinewidth xchart6 2 ge {%xchart6>=2 %add text j 2 le {AANWLf tabj po1 get add BANWLf tabj po2 get add moveto} %relative achromatic {AANF tabj po1 get add BANF tabj po2 get add moveto} ifelse TIK tabj n11 get show tabj n12 get (l) eq {(l) iy4} {tabj n12 get ishow} ifelse TIK tabj n21 get show tabj n22 get (l) eq {(l) iy4} {tabj n22 get ishow} ifelse } if %xchart6>=2 } if %JN=1 } for %j=0,12 newpath 0 0 0 setrgbcolor xchart5 1 ge {%xchart5=1 AANWLf BANWLf %achromatic 40 0 360 arc stroke newpath } if %xchart5=1 xchart5 2 eq {%xchart5=2 0 0 0 setrgbcolor AANWLf 000 add BANWLf 300 sub moveto %achromatic TBS TELI xchartx get show %text illuminant } if %xchart5=2 xchart3 0 eq {%Munsell AANWCf 550 add BANWCf 250 add moveto TBV (1) show AANWCf 350 add BANWCf 100 add moveto TBV (2) show AANWCf 200 add BANWCf 050 add moveto TBV (5) show } if %Munsell xtrans9 neg ytrans9 neg translate %ENDE: 2 } if %xchartl=2 %*********************************************************** xchartl 3 eq {%xchartl=3 (a2,b2), (a2+,b2+) /xtrans10a 0500 def /xtrans10 1300 def /ytrans10 3200 def xtrans10a ytrans10 translate %for text and grafic 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 posax posay moveto proc_xaxis_xchartl_coor posbx posby moveto 90 rotate proc_yaxis_xchartl_coor -90 rotate xchart6 3 eq {%xchart6=3 4150 -200 moveto TBS (Parame\255) show 4150 -400 moveto TBS (ter:) show TBIS ( Y) show TV } if %xchart6>=2 xtrans10a neg ytrans10 neg translate %for text and grafic %1000 02 01 16 01-.03**************************************** %ANF PROZSPEP.FOR: MULYA= 1000 BEO=02 ab-Farbtafel IXY0: 1500 3200 xtrans10 ytrans10 translate %for text and grafic /fakt 1000 def 5 1 60 {/i exch def %i=5,60 AANi i get fakt mul BANi 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) %00 0 000 000 (385) %01 0 000 000 (390) %02 0 000 000 (395) %03 0 -375 -250 (400) %04 0 000 000 (405) %05 0 000 000 (410) %06 0 000 000 (415) %07 0 000 000 (420) %08 0 -500 -100 (425) %09 0 000 000 (430) %10 0 000 000 (435) %11 0 000 000 (440) %12 0 000 000 (445) %13 0 -350 -030 (450) %14 0 000 000 (455) %15 0 000 000 (460) %16 0 000 000 (465) %17 0 000 000 (470) %18 0 000 000 (475) %19 1 -300 -100 (480) %20 0 000 000 (485) %21 1 -300 -100 (490) %22 0 000 000 (495) %23 1 -300 -100 (500) %24 0 000 000 (505) %25 0 000 000 (510) %26 0 000 000 (515) %27 0 000 000 (520) %28 1 -250 060 (525) %29 0 000 000 (530) %30 0 000 000 (535) %31 0 000 000 (540) %32 0 000 000 (545) %33 0 000 000 (550) %34 0 000 000 (555) %35 0 000 000 (560) %36 0 000 000 (565) %37 0 000 000 (570) %38 1 050 060 (575) %39 0 000 000 (580) %40 0 000 000 (585) %41 0 000 000 (590) %42 0 000 000 (595) %43 1 -150 060 (600) %44 0 000 000 (605) %45 0 000 000 (610) %46 0 000 000 (615) %47 0 000 000 (620) %48 1 -150 060 (625) %49 0 000 000 (630) %50 0 000 000 (635) %51 0 000 000 (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 -150 (700) %64 ] def 0 1 64 {/i exch def %i=0,64 /i40 i 4 mul def xytshift i40 get 1 eq {%xytshift=1 0 0 0 0 setcmykcolor AANi i get fakt mul BANi i get fakt mul 30 0 360 arc fill %400,425,...,700 0 0 0 1 setcmykcolor AANi i get fakt mul BANi i get fakt mul 30 0 360 arc stroke %400,425,...,700 } if %xytshift=1 } for %i=0,64 TBIV 0 1 59 {/i exch def %i=0,59 /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 AANi i get fakt mul xytshift i41 get add BANi i get fakt mul xytshift i42 get add moveto xytshift i43 get show } if %xytshift=1 } for %i=0,59 newpath /xytshiftZ 320 array def %min 4x65 /xytshiftZ [ 1 -100 060 (700) %0 normal 1 070 -50 (495c,E) %1 1 070 -50 (500c,E) %2 0 070 -50 (505c,E) %3 1 070 -50 (510c,E) %4 0 050 -100 (515c,E) %5 0 050 -100 (520c,E) %6 1 070 -50 (525c,E) %7 0 050 -100 (530c,E) %8 0 050 -100 (535c,E) %9 1 050 -100 (540c,E) %10 0 050 -100 (545c,E) %11 0 070 -50 (550c,E) %12 0 050 -100 (555c,E) %13 0 050 -100 (560c,E) %14 S 0 070 -50 (565c,E) %15 0 -100 -150 (400) %16 see normal ] def 0 1 16 {/i exch def %i=0,16 /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,425,...,700 0 0 0 1 setcmykcolor AANZi i get fakt mul BANZi i get fakt mul 30 0 360 arc stroke %400,425,...,700 } if %xytshiftZ=1 } for %i=0,16 TBIV 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 /AANWLf AANWL fakt mul def /BANWLf BANWL fakt mul def /AANWCf AANWC fakt mul def /BANWCf BANWC fakt mul def /tabj 240 array def %20x12 /tabj %00 01 02 03 04 05 06 07 08 09 10 12 %JN lam la0 color shix shiy Na1 in1 Na2 in2 [01 400 380 0.5 0.0 0.5 0400 -2000 (T) (S) () () 01 450 380 1.0 0.0 1.0 -0300 -2000 (S) (m) () () 01 470 380 0.0 0.0 1.0 -0650 -1400 (B) (e) () () 01 495 380 0.0 0.0 0.0 -0750 -0100 (M) (l) (=S) (l) 01 505 380 0.0 0.0 0.0 -0750 -0050 (V) (l) (=S) (l) 01 520 380 0.0 1.0 0.0 -0500 0150 (G) (e) () () 00 520 380 0.0 0.0 0.0 -0800 -0050 (Y) (l) (=B) (l) 01 540 380 0.0 0.0 0.0 -0150 0100 (M) (m) () () 01 570 380 1.0 1.0 0.0 -0150 0100 (Y) (e) () () 00 575 380 1.0 1.0 0.0 -0100 0250 (Y) (e) () () 01 620 380 1.0 0.0 0.0 -0300 0150 (R) (e) () () 01 700 380 1.0 0.0 0.0 -0550 -0400 (P) (L) () () 01 505 490 0.0 1.0 0.0 -0600 -0130 (D) (M) () () ] def 0 1 12 {/j exch def %j=0,12 /j0 j 12 mul def /l01 j0 01 add def /l02 j0 02 add def /co1 j0 03 add def /co2 j0 04 add def /co3 j0 05 add def /po1 j0 06 add def /po2 j0 07 add def /n11 j0 08 add def /n12 j0 09 add def /n21 j0 10 add def /n22 j0 11 add def tabj j0 get 1 eq {%JN=1 /i tabj l01 get tabj l02 get sub 5 idiv def /AANF AANi i get fakt mul def /BANF BANi i get fakt mul def j 12 eq {/AANF AANZi i get fakt mul def /BANF BANZi i get fakt mul def } if tabj co1 get tabj co2 get tabj co3 get setrgbcolor tabj l01 get 470 eq tabj l01 get 520 eq or tabj l01 get 570 eq or tabj l01 get 620 eq or {50 setlinewidth} if AANWLf BANWLf moveto AANF BANF lineto stroke 20 setlinewidth xchart6 2 ge {%xchart6>=2 %add text j 2 le {AANWLf tabj po1 get add BANWLf tabj po2 get add moveto} %relative achromatic {AANF tabj po1 get add BANF tabj po2 get add moveto} ifelse TIK tabj n11 get show tabj n12 get (l) eq {(l) iy4} {tabj n12 get ishow} ifelse TIK tabj n21 get show tabj n22 get (l) eq {(l) iy4} {tabj n22 get ishow} ifelse } if %xchart6>=2 } if %JN=1 } for %j=0,12 newpath 0 0 0 setrgbcolor xchart5 1 ge {%xchart5=1 AANWLf BANWLf %achromatic 40 0 360 arc stroke newpath } if %xchart5=1 xchart5 2 eq {%xchart5=2 0 0 0 setrgbcolor AANWLf 000 add BANWLf 300 sub moveto %achromatic TBS TELI xchartx get show %text illuminant } if %xchart5=2 xchart3 0 eq {%Munsell AANWCf 550 add BANWCf 250 add moveto TBV (1) show AANWCf 350 add BANWCf 100 add moveto TBV (2) show AANWCf 200 add BANWCf 050 add moveto TBV (5) show } if %Munsell xtrans10 neg ytrans10 neg translate %for text and grafic %ENDE: 3 } if %xchartl=3 } bind def %END proc_chromaticity_lines %********************************************************** %%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 {3 lanind eq {show} {pop} ifelse} bind def /showfr {2 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 1 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 /xchart5f where {pop /xchart5 xchart5f def} %new {/xchart5 2 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 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 71 90 translate 0.01 MM dup scale gsave %xchart3 0 def %with Munsell colours %xchart3 1 def %with Ostwald colours %xchart3 2 det %without any colour %/xchart3 0 def %diagram 0:Munsell colours, 1:Ostwald colours, 2:- %xchart5 0 def %without marc illuminant and text %xchart5 1 def %with marc illuminant %xchart5 2 def %with marc illuminant and text /xchart5 2 def %0:-, 1:illuminant, 2:illuminant and text %xchart6 0 def %without chromaticity_lines %xchart6 1 def %with chromaticity_lines %xchart6 2 def %with chromaticity_lines&N %xchart6 3 def %with chromaticity_lines&N&P /xchart6 2 def %0:-, 1:CL 2:CL&N 3:CL&N&P %xchart7 0 def %Ostwald colours without Name or Y %xchart7 1 def %Ostwald colours with Name %xchart7 2 def %Ostwald colours with CIE Y /xchart7 2 def %0:-, 1:Name, 2:Y %xchartl with 0 1 2 3 4 5 6 7 %xchart8 0 def %0:Pxx (P60, P55, P50, P45, P40, P35, P30, P25) colours %xchart8 1 def %1:Dxx (D65, D50, P40, A00, E00, C00, P00, Q00) colours /xchart8 1 def %0:Pxx, 1:Dxx colours %xchart9 0 def %for Y10-7R.EPS -> Table XYZ, not used here %xchart9 1 def %for Y10-7R.EPS -> Table CAB, not used here %xchart9 2 def %for Y10-7R.EPS -> Table (a,b), not used here /xchart9 0 def %Table 0:(XYZ), 1:(CAB), 2(ab) %xchart10 0 def %for Y10G00NA.PS6.PS -> chromaticity coordinates (ai,bi) %xchart10 1 def %for Y10G00NA.PS6.PS -> chromatic values (Ai,Bi) %xchart10 2 def %for Y10G00NA.PS6.PS -> chroma (A*i,B*i) /xchart10 0 def %diagram 0:(ai,bi), 1:(Ai,Bi), 2:(A*i,B*i) /posax 2600 def /posay 0550 def /posbx -275 def /posby -3150 def /FL 0.00001 def /Y18 18 def %grey background /n0e 0.3333 def /n1e 1.0000 def %with (a, b) %/n1e 0.3333 def %with (a', b') %/xchart3 2 def %without any colour only diagrams %if xchart3=2 %/xchart5 0 def %without marc illuminant and text %/xchart5 1 def %with marc illuminant %/xchart5 2 def %with marc illuminant and text %/xchart6 0 def %without chromaticity_lines %/xchart6 1 def %with chromaticity_lines %/xchart6 2 def %with chromaticity_lines and names /xchart3 0 def %Illuminants colours %if xchart3=0 %Illuminants colours %/xchart5 0 def %without marc illuminant and text %/xchart5 1 def %with marc illuminant /xchart5 2 def %with marc illuminant and text %/xchart6 0 def %without chromaticity_lines %/xchart6 1 def %with chromaticity_lines /xchart6 2 def %with chromaticity_lines and names %/xchart3 1 def %not used /xchart3 2 def %without any colours %/TELI0 [(P60) (P55) (P50) (P45) (P40) (P35) (P30) (P25)] def %7 illumin %/TELI1 [(D65) (D50) (P40) (A00) (E00) (C00) (P00) (Q00)] def %7 illumin. /xchart7 0 def %0:P60, 1:P55, 2:P50, 3:P45, 4:P40, 5:P35, 6:P30, 7:P25 %0:D65, 1:D50, 2:P40, 3:A00, 4:E00, 5:C00, 6:P00, 7:Q00 /xchart8 1 def %0:Pxx colour series, 1:Dxx colour series %xchart9 0 def %for Y10-7R.EPS -> Table XYZ, not used here %xchart9 1 def %for Y10-7R.EPS -> Table CAB, not used here %xchart9 2 def %for Y10-7R.EPS -> Table (a,b), not used here %xchart10 0 def %for Y10G00NA.PS6.PS -> chromaticity coordinates (ai,bi) %xchart10 1 def %for Y10G00NA.PS6.PS -> chromatic values (Ai,Bi) %xchart10 2 def %for Y10G00NA.PS6.PS -> chroma (A*i,B*i) /xchartx xchart7 def %1 1 1 {/xchartx exch def %xchartx=0,7 %max 8 illuminants gsave /xbtex0 1 def xbtex0 1 eq {%xbtex0=1 TV 0 setgray 20 setlinewidth 0 0 12100 08600 0.0 0.0 0.0 0.0 colrecfi %area white grey 0 0 12100 08600 0.0 0.0 0.0 1.0 colrecst %Rahmen Schwarz 100 -150 moveto (DGO30-7N) show } if %xbtex0=1 /k0a 0 def xchart8 0 eq {/k0e 1 def}{/k0e 0 def} ifelse %allways proc_XYZ_colours proc_DEF_colours xchart3 0 eq {%BEG proc_data proc_data } if %END proc_data /xchartl xchart def %shift at beginn for later change 0 1 3 {/xchartl exch def %xchartl=0,3 gsave xchartl 0 eq { 100 4500 translate} if xchartl 1 eq { 6100 4500 translate} if xchartl 2 eq { 100 0250 translate} if xchartl 3 eq { 6100 0250 translate} if 150 /Times-ISOL1 FS 0 setgray 100 -150 moveto (DGO30-) show xchartl 5 add cvishow (A) show %A /xwidth 5900 def /ywidth 4000 def 0.0 0.0 0.0 0.3 setcmykcolor 0 0 moveto xwidth 0 rlineto 0 ywidth rlineto xwidth neg 0 rlineto closepath fill 0 setlinewidth 0 0 moveto xwidth 0 rlineto 0 ywidth rlineto xwidth neg 0 rlineto closepath clip 20 setlinewidth 0 0 xwidth ywidth 0.0 0.0 0.0 1.0 colrecst %frame black /xtexti 96 array def /ytexti 96 array def 0 0 0 1 setcmykcolor /xchart12 xchartl 12 mul def %xchart3 0 eq {%xchart3=0 %Illuminants /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 2000 2000 2000 2800 2800 4000 2800 4000 2800 4000 2800 4000 %0 3000 3000 3000 1700 1700 1800 0600 1800 0600 1800 0600 1800 %1 3000 3000 3000 1700 1700 1900 0700 1900 0700 1900 0700 1900 %2 3000 3000 3000 0600 0600 1900 0600 1900 0600 1900 0600 1900 %3 3000 3000 3000 1700 1700 1900 0700 1900 0700 1900 0700 1900 %4 3000 3000 3000 1700 1700 1900 0700 1900 0700 1900 0700 1900 %5 3000 3000 3000 1700 1700 1900 0700 1900 0700 1900 0700 1900 %6 3000 3000 3000 0600 0600 1900 0600 1900 0600 1900 0600 1900 %7 ] def /ytexti [ 3800 3580 3360 3140 2920 2920 2700 2700 2480 2480 2260 2260 %0 0500 0280 0060 1600 1380 1380 1160 1160 0940 0940 0720 0720 %1 0500 0280 0060 1600 1380 1380 1160 1160 0940 0940 0720 0720 %2 0500 0280 0060 1600 1380 1380 1160 1160 0940 0940 0720 0720 %3 0500 0280 0060 1600 1380 1380 1160 1160 0940 0940 0720 0720 %4 0500 0280 0060 1600 1380 1380 1160 1160 0940 0940 0720 0720 %5 0500 0280 0060 1600 1380 1380 1160 1160 0940 0940 0720 0720 %6 0500 0280 0060 1600 1380 1380 1160 1160 0940 0940 0720 0720 %7 ] def %} if %xchart3=0 %Illuminants TBS 0 0 0 1 setcmykcolor xchart3 0 eq {%xchart3=0 %Illuminants xtexti xchart12 0 add get ytexti xchart12 0 add get moveto TBIS (OSA) show TBS (\255System) showde %0DGO30-7 02581 ( System) showea %1DGO30-7 02581 TBIS (, Y) show TBV (W) ishow TBS K 0 eq {(=100) show}{(=88,6) show} ifelse xtexti xchart12 1 add get ytexti xchart12 1 add get moveto xchart8 0 eq {(P\255series) showea (P\255Serie) showde} {(D\255series) showea (D\255Serie) showde} ifelse xcolor 0 eq {(, 2\255degree, ) showea ( 2\255Grad, ) showde} {(, 10\255degree, ) showea (10\255Grad, ) showde} ifelse TELI xchartx get show } if %xchart3=0 %Illuminants xchart3 2 eq {%xchart3=2 %Any_colours xtexti xchart12 0 add get ytexti xchart12 0 add get moveto TBS (F\374r jede Farbe) showde %0DGO30-7 02581 TBS (For any colour) showea %1DGO30-7 02581 TBIS (, Y) show TBV (W) ishow xcolor 1 eq {TBV (,10) ishow} if TBS K 0 eq {(=100, ) show}{(=88,6, ) show} ifelse TELI xchartx get show xtexti xchart12 1 add get ytexti xchart12 1 add get moveto ([max (m) Buntwert?], ) showde %0DGO30-7 03581 ([max (m) chromatic value?], ) showea %1DGO30-7 03581 } if %xchart3=2 %Any_colour %BEG For All Colours last line xtexti xchart12 2 add get ytexti xchart12 2 add get moveto xchartl 0 eq {%xchartl=0 %(x,y) (in der Normfarbtafel) showde %0DGO30-7 04581 (in the chromaticity diagram) showen %1DGO30-7 04581 (en el diagrama de chromaticidad) showes %2DGO30-7 04581 (dans le diagramme de chromaticit\351) showfr %3DGO30-7 04581 (nel diagramma di cromaticit\340) showit %4DGO30-7 04581 (in the chromaticity diagram) showjp %5DGO30-7 04581 TBIS ( \050x) show %TBV (6) ishow xcolor 1 eq {TBV (10) ishow} if TBIS (, y) show %TBV (6) ishow xcolor 1 eq {TBV (10) ishow} if TBIS (\051) show proc_arc_ill } if %xchartl=0 xchartl 1 ge {%xchartl>=1 (in der Farbtafel) showde %0DGO30-7 05581 (chromaticity diagram) showen %1DGO30-7 05581 (en el diagrama de chromaticidad) showes %2DGO30-7 05581 (dans le diagramme de chromaticit\351) showfr %3DGO30-7 05581 (nel diagramma di cromaticit\340) showit %4DGO30-7 05581 (in the chromaticity diagram) showjp %5DGO30-7 05581 TBIS ( \050a) show xchartl 2 ge {TBV xchartl 1 sub cvishow} if xcolor 1 eq {TBV (,10) ishow} if TBIS (, b) show xchartl 2 ge {TBV xchartl 1 sub cvishow} if xcolor 1 eq {TBV (,10) ishow} if TBIS (\051) show proc_arc_ill } if %xchartl>=1 %END For All Colours last line %*********************************************************** /imM 007 def %maximum Illuminants Colours %********************************************************** 0 setgray xchart6 1 ge {%xchart6>=1 proc_chromaticity xchart6 2 eq {%xchart6=2 proc_chromaticity_lines } if %xchart6=2 } if %xchart6>=1 xchart3 0 eq {%xchart3=0 %plot data /ilin 1 def %0(point), 1(line), 2(both) xchartl 0 eq {%xchartl=0 %(x,y) /fakt 4000 def /xtrans8 600 def /ytrans8 400 def xtrans8 ytrans8 translate %for scala and graphic proc_plot_data xtrans8 neg ytrans8 neg translate %for scala and grafic } if %xchartl=0 %************************ xchartl 1 eq {%xchartl=1 %(a,b), (a+,b+) -> (a0=x/y, b0=-0.4*z/y) /fakt 1000 def /a2 1.00 def /b2 -0.4 def /xtrans9 1300 def /ytrans9 3200 def xtrans9 ytrans9 translate proc_plot_data xtrans9 neg ytrans9 neg translate %for text and grafic } if %xchartl=1 %************************ xchartl 2 eq {%xchartl=2 %(a1=[x-XANT]/y, b1=z/y), (a1+,b1+) /fakt 1000 def /a2 1.00 def /b2 -0.4 def /xtrans9 1300 def /ytrans9 3200 def xtrans9 ytrans9 translate proc_plot_data xtrans9 neg ytrans9 neg translate %for text and grafic } if %xchartl=2 %***************************************************************** xchartl 3 eq {%xchartl=3 %(a2=[x-XANT2]/y, b2=z/y), (a2+,b2+) /fakt 1000 def /a2 1.0 def /b2 -0.4 def /xtrans10 1300 def /ytrans10 3200 def xtrans10 ytrans10 translate %for text and grafic proc_plot_data xtrans10 neg ytrans10 neg translate %for text and grafic } if %xchartl=3 } if %xchart3=0 plot data %************************ %special space for 'xm03'PROZ0.COM 2x before/after xchartl xchartl 0 eq { 100 neg 4500 neg translate} if xchartl 1 eq { 6100 neg 4500 neg translate} if xchartl 2 eq { 100 neg 0250 neg translate} if xchartl 3 eq { 6100 neg 0250 neg translate} if %showpage %XA !important grestore } for %xchartl=0,3 %8 chromaticity diagrams showpage %7R&7N grestore %} for %xchartx=0,7 %P50:xchartx=2/D50:xchartx=1 %%Trailer %%EndDocument EndEPSF grestore gsave BeginEPSF 86 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 DGO30-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 (DGO30-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 BeginEPSF 161 MM 08 MM 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 DGO31-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 (DGO31-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 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 DGO31-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 (DGO31-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 08 MM 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 http://farbe.li.tu-berlin.de/DGO3/DGO31-3N 202210 %%BoundingBox: 70 83 415 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/DGO3/DGO3.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:2022100112200) /ModDate (D:20221001112200) /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 /TV {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 /TIV {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 /TBV {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 /TBIV {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 /SV {160 /Symbol FS} bind def /CV {160 /Courier-ISOL1 FS} bind def /CS {200 /Courier-ISOL1 FS} bind def /CK {240 /Courier-ISOL1 FS} bind def /CM {280 /Courier-ISOL1 FS} bind def /CG {350 /Courier-ISOL1 FS} bind def /CBV {160 /CourierB-ISOL1 FS} bind def /CBS {200 /CourierB-ISOL1 FS} bind def /CBK {240 /CourierB-ISOL1 FS} bind def /CBM {280 /CourierB-ISOL1 FS} bind def /CBG {350 /CourierB-ISOL1 FS} bind def /ns {350 /Times-ISOL1 FS show} bind def /ks {350 /TimesI-ISOL1 FS show} bind def /bs {350 /TimesB-ISOL1 FS show} bind def /js {350 /TimesBI-ISOL1 FS show} bind def /sy {350 /Symbol FS show} bind def /is {280 /Times-ISOL1 FS 0 -90 rmoveto show 0 90 rmoveto} bind def /es {280 /Times-ISOL1 FS 0 200 rmoveto show 0 -200 rmoveto} bind def /ib {280 /TimesB-ISOL1 FS 0 -90 rmoveto show 0 90 rmoveto} bind def /eb {280 /TimesB-ISOL1 FS 0 200 rmoveto show 0 -200 rmoveto} bind def /ip {280 /Times-ISOL1 FS 50 50 rmoveto (\267) show 50 -50 rmoveto} bind def %20% kleiner /ns2 {280 /Times-ISOL1 FS show TM} bind def /ks2 {280 /TimesI-ISOL1 FS show TM} bind def /bs2 {280 /TimesB-ISOL1 FS show TM} bind def /js2 {280 /TimesBI-ISOL1 FS show TM} bind def /sy2 {280 /Symbol FS show TM} bind def /is2 {240 /Times-ISOL1 FS 0 -70 rmoveto show 0 70 rmoveto TM} bind def /es2 {240 /Times-ISOL1 FS 0 160 rmoveto show 0 -160 rmoveto TM} bind def /ib2 {240 /TimesB-ISOL1 FS 0 -70 rmoveto show 0 70 rmoveto TM} bind def /eb2 {240 /TimesB-ISOL1 FS 0 160 rmoveto show 0 -160 rmoveto TM} bind def /ip2 {240 /Times-ISOL1 FS 40 40 rmoveto (\267) show 40 -40 rmoveto TM} bind def /iy2 {240 /Symbol FS 0 -70 rmoveto show 0 70 rmoveto TM} bind def %40% kleiner /ns4 {240 /Times-ISOL1 FS show TK} bind def /ks4 {240 /TimesI-ISOL1 FS show TK} bind def /bs4 {240 /TimesB-ISOL1 FS show TK} bind def /js4 {240 /TimesBI-ISOL1 FS show TK} bind def /ss4 {240 /Symbol FS show TK} bind def /is4 {200 /Times-ISOL1 FS 0 -60 rmoveto show 0 60 rmoveto TK} bind def /es4 {200 /Times-ISOL1 FS 0 130 rmoveto show 0 -130 rmoveto TK} bind def /ib4 {200 /TimesB-ISOL1 FS 0 -60 rmoveto show 0 60 rmoveto TK} bind def /eb4 {200 /TimesB-ISOL1 FS 0 130 rmoveto show 0 -130 rmoveto TK} bind def /ip4 {200 /Times-ISOL1 FS 30 30 rmoveto (\267) show 30 -30 rmoveto TK} bind def /iy4 {200 /Symbol FS 0 -60 rmoveto show 0 60 rmoveto TK} bind def %60% kleiner /ns6 {200 /Times-ISOL1 FS show TS} bind def /ks6 {200 /TimesI-ISOL1 FS show TS} bind def /bs6 {200 /TimesB-ISOL1 FS show TS} bind def /js6 {200 /TimesBI-ISOL1 FS show TS} bind def /ss6 {200 /Symbol FS show TS} bind def /is6 {160 /Times-ISOL1 FS 0 -50 rmoveto show 0 50 rmoveto TS} bind def /es6 {160 /Times-ISOL1 FS 0 110 rmoveto show 0 -110 rmoveto TS} bind def /ib6 {160 /TimesB-ISOL1 FS 0 -50 rmoveto show 0 50 rmoveto TS} bind def /eb6 {160 /TimesB-ISOL1 FS 0 110 rmoveto show 0 -110 rmoveto TS} bind def /ip6 {160 /Times-ISOL1 FS 24 24 rmoveto (\267) show 24 -24 rmoveto TS} bind def /iy6 {160 /Symbol FS 0 -50 rmoveto show 0 50 rmoveto TS} bind def %80% kleiner /ns8 {160 /Times-ISOL1 FS show TS} bind def /ks8 {160 /TimesI-ISOL1 FS show TS} bind def /bs8 {160 /TimesB-ISOL1 FS show TS} bind def /js8 {160 /TimesBI-ISOL1 FS show TS} bind def /ss8 {160 /Symbol FS show TS} bind def /is8 {120 /Times-ISOL1 FS 0 -40 rmoveto show 0 40 rmoveto TS} bind def /es8 {120 /Times-ISOL1 FS 0 90 rmoveto show 0 -90 rmoveto TS} bind def /ib8 {120 /TimesB-ISOL1 FS 0 -40 rmoveto show 0 40 rmoveto TS} bind def /eb8 {120 /TimesB-ISOL1 FS 0 90 rmoveto show 0 -90 rmoveto TS} bind def /ip8 {120 /Times-ISOL1 FS 24 24 rmoveto (\267) show 24 -24 rmoveto TS} bind def /iy8 {120 /Symbol FS 0 -50 rmoveto show 0 50 rmoveto TS} bind def /cvicvs {cvi 6 string cvs} def /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 /cvsshow1x {/nxx exch def %example nxx=99.1/99.0 nxx 0 lt {(-) show /nxx nxx abs def} if nxx 10 mul cvi /nxi exch def %nxi=991/990 nxi 10 idiv /nxa exch def %nxa=99 nxi nxa 10 mul sub /nxb exch def %nxb=1/0 nxa cvishow (,) show %nxa=99 nxb cvishow %nxb=1/0 } def /cvsshow2x {/nxx exch def %example nxx=99.12/99,02/99,00 nxx 0 lt {(-) show /nxx nxx abs def} if nxx 100 mul cvi /nxi exch def %nxi=9912/9902/00 nxi 100 idiv /nxa exch def %nxa=99 nxi nxa 100 mul sub /nxb exch def %nxb=12/02/00 nxa cvishow (,) show %nxb=99, nxb 10 ge {nxb cvishow} if %nxb=12 nxb 1 ge nxb 9 le and {(0) show nxb cvishow} if %nxb=02 nxb 0 eq {(00) show} if %nxb=00 } def /cvsshow3x {/nxx exch def %example nxx=99.123/99.012/99.001/99.000 nxx 0 lt {(-) show /nxx nxx abs def} if nxx 1000 mul cvi /nxi exch def %nxi=99123/99012/99001/99000 nxi 1000 idiv /nxa exch def %nxa=99 nxi nxa 1000 mul sub /nxb exch def %nxb=123/012/001/000 nxa cvishow (,) show %nxb=99, nxb 100 ge {nxb cvishow} if %nxb=123/012/001/000 nxb 10 ge nxb 99 le and {(0) show nxb cvishow} if %nxb=012 nxb 1 ge nxb 9 le and {(00) show nxb cvishow} if %nxb=001 nxb 0 eq {(000) show} if %nxb=000 } def /cvsshow4x {/nxx exch def %example nxx=99.1234/99.0123/99.0010/99.0001 nxx 0 lt {(-) show /nxx nxx abs def} if nxx 10000 mul cvi /nxi exch def %nxi=991234/990123/990010/990000 nxi 10000 idiv /nxa exch def %nxa=99 nxi nxa 10000 mul sub /nxb exch def %nxb=1234/0123/0010/0001 nxa cvishow (,) show %nxb=99, nxb 1000 ge {nxb cvishow} if %nxb=1234/0123/0010/0001 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 {(000) show} if %nxb=000 } def /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 {setcmykcolor rec fill} bind def /colrecst %x y width heigth c m y k {setcmykcolor rec stroke} bind def /tzo {0.0 1.0 1.0 0.0} bind def %Reproduktionsfarben /tzl {1.0 0.0 1.0 0.0} bind def /tzv {1.0 1.0 0.0 0.0} bind def /tzc {1.0 0.0 0.0 0.0} bind def /tzm {0.0 1.0 0.0 0.0} bind def /tzy {0.0 0.0 1.0 0.0} bind def /tzn {0.0 0.0 0.0 1.00} bind def %Graureihe /tzd {0.0 0.0 0.0 0.75} bind def /tzz {0.0 0.0 0.0 0.50} bind def /tzh {0.0 0.0 0.0 0.25} bind def /tzw {0.0 0.0 0.0 0.00} bind def /tzr {0.0 1.0 0.5 0.0} bind def %Elementarfarben /tzg {1.0 0.0 0.5 0.0} bind def /tzb {1.0 0.5 0.0 0.0} bind def /tzj {0.0 0.0 1.0 0.0} bind def /tzrz {0.0 1.0 0.5 0.5} bind def %Elementarfarben vergraut /tzgz {1.0 0.0 0.5 0.5} bind def /tzbz {1.0 0.5 0.0 0.5} bind def /tzjz {0.0 0.0 1.0 0.5} bind def /tfo {tzo setcmykcolor} bind def /tfl {tzl setcmykcolor} bind def /tfv {tzv setcmykcolor} bind def /tfc {tzc setcmykcolor} bind def /tfm {tzm setcmykcolor} bind def /tfy {tzy setcmykcolor} bind def /tfn {tzn setcmykcolor} bind def /tfd {tzd setcmykcolor} bind def /tfz {tzz setcmykcolor} bind def /tfh {tzh setcmykcolor} bind def /tfw {tzw setcmykcolor} bind def /tfr {tzr setcmykcolor} bind def /tfg {tzg setcmykcolor} bind def /tfb {tzb setcmykcolor} bind def /tfj {tzj setcmykcolor} bind def /tfrz {tzrz setcmykcolor} bind def /tfgz {tzgz setcmykcolor} bind def /tfbz {tzbz setcmykcolor} bind def /tfjz {tzjz setcmykcolor} bind def %allways after %Prolog /proc_XYZ_colours {%BEG proc_XYZ_colours %for xchart8=0 /SP25 80 array def %380 bis 775 mit deltalambda=05 /SP30 80 array def %380 bis 775 mit deltalambda=05 /SP35 80 array def %380 bis 775 mit deltalambda=05 /SP40 80 array def %380 bis 775 mit deltalambda=05 /SP45 80 array def %380 bis 775 mit deltalambda=05 /SP50 80 array def %380 bis 775 mit deltalambda=05 /SP55 80 array def %380 bis 775 mit deltalambda=05 /SP60 80 array def %380 bis 775 mit deltalambda=05 %for xchart8=1 /SD65 80 array def %380 bis 775 mit deltalambda=05 /SD50 80 array def %380 bis 775 mit deltalambda=05 /SP40 80 array def %380 bis 775 mit deltalambda=05 /SA00 80 array def %380 bis 775 mit deltalambda=05 /SE00 80 array def %380 bis 775 mit deltalambda=05 /SC00 80 array def %380 bis 775 mit deltalambda=05 /SP00 80 array def %380 bis 775 mit deltalambda=05 /SQ00 80 array def %380 bis 775 mit deltalambda=05 %for combined /SX00 80 array def %380 bis 775 mit deltalambda=05 /SX01 80 array def %380 bis 775 mit deltalambda=05 /SX02 80 array def %380 bis 775 mit deltalambda=05 /SX03 80 array def %380 bis 775 mit deltalambda=05 /SX04 80 array def %380 bis 775 mit deltalambda=05 /SX05 80 array def %380 bis 775 mit deltalambda=05 /SX06 80 array def %380 bis 775 mit deltalambda=05 /SX07 80 array def %380 bis 775 mit deltalambda=05 /SDAK 80 array def %380 bis 775 mit deltalambda=05 /RA 80 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 80 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 /TNC 4000 def /EE 2.718281 def %e=mac pocket calculator /C2 1.4350000 10 7 exp mul def /lamd 80 array def /TNCj 8 array def /TNCj [6000 5500 5000 4500 4000 3500 3000 2500] def xchart8 0 eq {%xchart8=0 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 } %xchart8=0 { %xchart8=1 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 } ifelse %xchart8=1 /xex 10 2 exp def /yex EE 2 exp def /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 /FARBEO 27 array def %Ostwald /FARBEO [(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 (N) (0) ( 380_770) %06 (W) (0) ( 380_770) %07 (W) (1) ( 380_770) %08 ] 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 %*************************************************** /TELI0 8 array def /TELI1 8 array def /TELI 8 array def /TELI0 [(P60) (P55) (P50) (P45) (P40) (P35) (P30) (P25)] def %7 illumin /TELI1 [(D65) (D50) (P40) (A00) (E00) (C00) (P00) (Q00)] def %7 illumin. 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 /FXN 82 array def /FYN 82 array def /FZN 82 array def /Xi 475 array def /Yi 475 array def /Zi 475 array def /XANi 475 array def /YANi 475 array def /ZANi 475 array def /AANi 475 array def %actual data for plot, spectral colours /BANi 475 array def /AAN1i 475 array def %actual data for plot, Illuminants colours (M=1) /BAN1i 475 array def /AANXi 475 array def %either from (XAN/YAN/ZAN)Mi, or (XAN/YAN/ZAN)Oi /BANXi 475 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 /XAND65 0.3127 def /YAND65 0.3290 def /ZAND65 1. XAND65 sub YAND65 sub def /XAND50 0.3457 def /YAND50 0.3585 def /ZAND50 1. XAND50 sub YAND50 sub def /XANP40 0.3799 def /YANP40 0.3764 def /ZANP40 1. XANP40 sub YANP40 sub def /XANA00 0.4475 def /YANA00 0.4074 def /ZANA00 1. XANA00 sub YANA00 sub def /XANE00 0.3333 def /YANE00 0.3333 def /ZANE00 1. XANE00 sub YANE00 sub def /XANC00 0.3100 def /YANC00 0.3161 def /ZANC00 1. XANC00 sub YANC00 sub def /XANP00 0.3604 def /YANP00 0.3531 def /ZANP00 1. XANP00 sub YANP00 sub def /XANQ00 0.3090 def /YANQ00 0.3155 def /ZANQ00 1. XANQ00 sub YANQ00 sub def xcolor 1 eq {0 1 239 {/i exch def %i=0,239 F2 i F10 i get put } for %i=0,239 0 1 050 {/i exch def %i=0,50 F02Z i F10Z i get put } for %i=0,50 } if /InCS 16 array def %16 colour spaces (Index) /InCS [(0) (0) (1) (2) (3) (4) (5) (6) (0) (0) (1) (2) (3) (4) (5) (6)] def %calculation of XW,YW,ZW for illuminant D65, D50, ... 0 1 79 {/i exch def %i=0,79 xchart8 0 eq {%xchart8=0 xchartx 0 eq {SX00 i SP60 i get put} if xchartx 1 eq {SX01 i SP55 i get put} if xchartx 2 eq {SX02 i SP50 i get put} if xchartx 3 eq {SX03 i SP45 i get put} if xchartx 4 eq {SX04 i SP40 i get put} if xchartx 5 eq {SX05 i SP35 i get put} if xchartx 6 eq {SX06 i SP30 i get put} if xchartx 7 eq {SX07 i SP25 i get put} if } %xchart8=0 { %xchart8=1 xchartx 0 eq {SX00 i SD65 i get put} if xchartx 1 eq {SX01 i SD50 i get put} if xchartx 2 eq {SX02 i SP40 i get put} if xchartx 3 eq {SX03 i SA00 i get put} if xchartx 4 eq {SX04 i SE00 i get put} if xchartx 5 eq {SX05 i SC00 i get put} if xchartx 6 eq {SX06 i SP00 i get put} if xchartx 7 eq {SX07 i SQ00 i get put} if } ifelse %xchart8=1 } for %i=0,79 0 1 79 {/i exch def %i=0,79 SDAK i xchartx 0 eq {SX00 i get} if xchartx 1 eq {SX01 i get} if xchartx 2 eq {SX02 i get} if xchartx 3 eq {SX03 i get} if xchartx 4 eq {SX04 i get} if xchartx 5 eq {SX05 i get} if xchartx 6 eq {SX06 i get} if xchartx 7 eq {SX07 i get} if put } for %i=0,79 /YKSUM 0 def %For CIE Illuminant E 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,79 FXN i SDAK i get F2 00 i add get mul YKSUM div 100 mul put FYN i SDAK i get F2 80 i add get mul YKSUM div 100 mul put FZN i SDAK i get F2 160 i add get mul YKSUM div 100 mul put } for %i=0,79 FXN 80 FXN 79 get put FYN 80 FYN 79 get put FZN 80 FZN 79 get put DOW 80 DOW 79 get put 0 1 80 {/i exch def %i=0,80 %for any illuminant Xi i FXN i get put Yi i FYN i get put Zi i FZN i get put /SUM FXN i get FYN i get add FZN i get add 0.00001 add def XANi i FXN i get SUM div put YANi i FYN i get SUM div put ZANi i FZN i get SUM div put } for %i=0,80 0 1 16 {/i exch def %i=0,16 %for illuminant E: S(lamdda=100) FXNZ i F02Z 00 i add get 100 mul YKSUM div 100 mul put FYNZ i F02Z 17 i add get 100 mul YKSUM div 100 mul put FZNZ i F02Z 34 i add get 100 mul YKSUM div 100 mul put } for %i=0,16 0 1 16 {/i exch def %i=0,16 %for illuminant E: S(lamdda=100) XZi i FXNZ i get put YZi i FYNZ i get put ZZi i FZNZ i get put /SUMZ FXNZ i get FYNZ i get add FZNZ i get add def XANZi i FXNZ i get SUMZ div put YANZi i FYNZ i get SUMZ div put ZANZi i FZNZ i get SUMZ div put } for %i=0,16 /a2 1.0 def /b2 0.4 neg def /K 0 def %normalization Y=1.00 %/K 1 def %normalization Y=0.886 %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 FXN i get add def /YW YW FYN i get add def /ZW ZW FZN i get add def } for %i=0,79 /SUMW XW YW add ZW add def %for X00, X01, X02, X03, X04, X05, X06, X07 /XANW XW SUMW FL add div def /YANW YW SUMW FL add div def /ZANW ZW SUMW FL add div def K 0 eq {%K=0 /XK XW def /YK YW def /ZK ZW def }%K=0 {%K=1 /XK XW 0.8859 mul def /YK YW 0.8859 mul def /ZK ZW 0.8859 mul def } ifelse %K=1 /SUMK XK YK add ZK add def %for X00, X01, X02, X03, X04, X05, X06, X07 /XANK XK SUMK div def /YANK YK SUMK div def /ZANK ZK SUMK div def /hABW 0 def /xshift 10 array def %max 6 device + 4 elementary /yshift 10 array def /colori 10 array def /XANWL XANW def /YANWL YANW def /ZANWL ZANW def /XANWC XANC00 def /YANWC YANC00 def /ZANWC ZANC00 def /AnYi 475 array def /BnYi 475 array def } bind def %END proc_XYZ_colours %**************************************************************** /proc_PDT_colours {%BEG proc_PDT_colours /l02Ii 77 array def /m02Ii 77 array def /s02Ii 77 array def /l02Mi 77 array def /m02Mi 77 array def /s02Mi 77 array def /X02Ii 77 array def /Y02Ii 77 array def /Z02Ii 77 array def /xan02Ii 77 array def /yan02Ii 77 array def /zan02Ii 77 array def /X02Mi 77 array def /Y02Mi 77 array def /Z02Mi 77 array def /xan02Mi 77 array def /yan02Mi 77 array def /zan02Mi 77 array def /ycuri 77 array def /l02Mi [ %LMS2.TXT %L2.DAT CIE Table 6.7, p. 34 380=390,385=390, 390, 395, ...760nm 4.150019e-4 4.150019e-4 4.150019e-4 1.051914e-3 2.408353e-3 %400 4.833371e-3 8.721273e-3 1.338382e-2 1.844803e-2 2.293190e-2 2.818772e-2 3.410515e-2 4.025595e-2 4.493761e-2 4.986433e-2 %450 5.534138e-2 6.471575e-2 8.069006e-2 9.947639e-2 1.188010e-1 1.401458e-1 1.639532e-1 1.915579e-1 2.329271e-1 2.889615e-1 %500 3.597162e-1 4.436801e-1 5.364880e-1 6.285647e-1 7.047255e-1 7.706373e-1 8.257146e-1 8.810083e-1 9.190730e-1 9.401995e-1 %550 9.657395e-1 9.814541e-1 9.944890e-1 1 9.923160e-1 9.694379e-1 9.556085e-1 9.276625e-1 8.859720e-1 8.339884e-1 %600 7.751040e-1 7.057161e-1 6.307685e-1 5.542300e-1 4.799434e-1 4.007098e-1 3.278612e-1 2.657847e-1 2.132849e-1 1.651391e-1 %650 1.247498e-1 9.300794e-2 6.850937e-2 4.986664e-2 3.582284e-2 2.537932e-2 1.772025e-2 1.216998e-2 8.471687e-3 5.897527e-3 %700 4.091288e-3 2.804465e-3 1.920570e-3 1.326875e-3 9.177829e-4 6.393665e-4 4.460361e-4 3.108708e-4 2.193310e-4 1.545503e-4 %750 1.095065e-4 7.799195e-5 ] def /m02Mi [ %M2.DAT 3.683495e-4 3.683495e-4 3.683495e-4 9.586496e-4 2.269917e-3 %400 4.700132e-3 8.793667e-3 1.452780e-2 2.166506e-2 2.957127e-2 3.945663e-2 5.182030e-2 6.477837e-2 7.588048e-2 8.705225e-2 %450 9.819288e-2 1.162733e-1 1.445407e-1 1.758936e-1 2.053998e-1 2.357545e-1 2.680649e-1 3.036267e-1 3.570590e-1 4.277598e-1 %500 5.155847e-1 6.155169e-1 7.191508e-1 8.166012e-1 8.855437e-1 9.356857e-1 9.688577e-1 9.952165e-1 9.971948e-1 9.771922e-1 %550 9.995->9.95? 9.565771e-1 9.177407e-1 8.732126e-1 8.135046e-1 7.402868e-1 6.532810e-1 5.725950e-1 4.925950e-1 4.112444e-1 3.344260e-1 %600 2.648744e-1 2.052721e-1 1.562428e-1 1.166407e-1 8.558743e-2 6.211264e-2 4.448770e-2 3.142624e-2 2.180369e-2 1.544792e-2 %650 1.071199e-2 7.302475e-3 4.971759e-3 3.436687e-3 2.376184e-3 1.637344e-3 1.121270e-3 7.610442e-4 5.254605e-4 3.653171e-4 %700 2.534195e-4 1.744014e-4 1.206090e-4 8.417245e-5 5.893455e-5 4.160449e-5 2.943542e-5 2.088575e-5 1.504562e-5 1.082007e-5 %750 7.822762e-6 5.690886e-6 ] def /s02Mi [ %S2.DAT CIE 171.1:2006 9.547289e-3 9.547289e-3 9.547289e-3 2.382484e-2 5.665002e-2 1.224503e-1 2.330076e-1 %410 3.813643e-1 5.436132e-1 6.744815e-1 8.025461e-1 9.035662e-1 9.910145e-1 9.915166e-1 9.553885e-1 8.602408e-1 7.867016e-1 %460 7.382611e-1 6.463534e-1 5.164164e-1 3.903373e-1 2.903220e-1 2.118654e-1 1.605240e-1 1.228400e-1 8.889554e-2 6.082050e-2 %510 4.281244e-2 2.920317e-2 1.939099e-2 1.260114e-2 8.094500e-3 5.088971e-3 3.168911e-3 1.958935e-3 1.202763e-3 7.401673e-4 %560 4.559845e-4 2.817993e-4 1.750370e-4 1.094536e-4 6.899855e-5 4.390257e-5 2.822280e-5 1.834593e-5 1.206675e-5 8.034895e-6 %610 5.418387e-6 0 0 0 0 0 0 0 0 0 %650 0 0 0 0 0 0 0 0 0 0 %700 0 0 0 0 0 0 0 0 0 0 %750 0 0 ] def %ED TC1-36 CIE 171-2, 2015, page 16, line 20-23 /A11 1.94735469 def /A12 -1.41445123 def /A13 0.36476327 def /A21 0.68990272 def /A22 0.34832189 def /A33 1.93485343 def /fsl02Mi 0 def /fsm02Mi 0 def /fss02Mi 0 def 0 1 76 {/i exch def %i=0,76 Summe fsumlms /fsl02Mi fsl02Mi l02Mi i get add def /fsm02Mi fsm02Mi m02Mi i get add def /fss02Mi fss02Mi s02Mi i get add def } for %i=0,76 0 1 76 {/i exch def %i=0,76 Normierung LMS l02Ii i l02Mi i get fsm02Mi mul fsl02Mi div put m02Ii i m02Mi i get put s02Ii i s02Mi i get fsm02Mi mul fss02Mi div put } for %i=0,76 /fsl02Ii 0 def /fsm02Ii 0 def /fss02Ii 0 def 0 1 76 {/i exch def %i=0,76 Summe fsumlms /fsl02Ii fsl02Ii l02Ii i get add def /fsm02Ii fsm02Ii m02Ii i get add def /fss02Ii fss02Ii s02Ii i get add def } for %i=0,76 0 1 76 {/i exch def %i=0,76 X02Ii i l02Mi i get A11 mul m02Mi i get A12 mul add s02Mi i get A13 mul add put Y02Ii i l02Mi i get A21 mul m02Mi i get A22 mul add put Z02Ii i s02Mi i get A33 mul put } for %i=0,76 /fsX02Ii 0 def /fsY02Ii 0 def /fsZ02Ii 0 def 0 1 76 {/i exch def %i=0,76 Summe fsumxyzIi /fsX02Ii fsX02Ii X02Ii i get add def /fsY02Ii fsY02Ii Y02Ii i get add def /fsZ02Ii fsZ02Ii Z02Ii i get add def } for %i=0,76 0 1 76 {/i exch def %i=0,76 Normierung auf 1 XYZ X02Mi i X02Ii i get 1.1510330 div put %max 600nm Y02Mi i Y02Ii i get 0.9994608 div put %max 555nm Z02Mi i Z02Ii i get 1.9184370 div put %max 445nm } for %i=0,76 /fsX02Mi 0 def /fsY02Mi 0 def /fsZ02Mi 0 def 0 1 76 {/i exch def %i=0,76 Summe fsumxyzMi /fsX02Mi fsX02Mi X02Mi i get add def /fsY02Mi fsY02Mi Y02Mi i get add def /fsZ02Mi fsZ02Mi Z02Mi i get add def } for %i=0,76 0 1 76 {/i exch def %i=0,76 xyzan /sumXYZ X02Ii i get Y02Ii i get add Z02Ii i get add def xan02Ii i X02Ii i get sumXYZ div put yan02Ii i Y02Ii i get sumXYZ div put zan02Ii i Z02Ii i get sumXYZ div put } for %i=0,76 } bind def %END proc_PDT_colours %************************************************* /proc_data {%BEG proc_data xchart3 0 eq {%xchart3=0 plot only if data are availble %calculation of transformation data /FARBE 27 array def /FARBE [(Illuminants) () () %00 () () () %01 (Y=100, 100, 100, 100, 100) () () %02 () () () %03 (L*=100, 100, 100, 100, 100) () () %04 () () () %05 () () () %06 () () () %07 () () () %08 ] def %********************************************************* /iV2V8 2 def %example for Value 0:V2A, 1:V5A, 2:V8A %Input OSA /xyan_tab2A 21 array def /xyan_tab2A % 00 01 02 03 04 05 06 07 08 09 10 11 12 [ 04 05 06 07 07 02 03 04 05 05 05 05 057] def %058 samples V=2A /xyan_ill2A 950 array def %max 475 of xan and yan /xyan_ill2A %BEG xyan_ill2A [%OSA colour order system with 58 samples %data: 4+5+6+7+7+2+3+4+5+5+5+5=58 % 12 F39OM.DAT (M für L=-4) 20.4.93 % 1 4 0 1OSA78 0 0 0 0 2758 2303 2465 2362 2172 2425 1881 2492 % 1012 1020 1021 1013 % 1 5 0 2OSA78 0 0 0 0 3435 2642 3104 2726 2770 2818 2430 2914 2084 3022 % 1045 1072 1088 1091 1080 % 1 6 0 3OSA78 0 0 0 0 4236 2940 3875 3053 3511 3176 3139 3309 2756 3455 2357 3617 % 1029 1083 1125 1153 1161 1145 % 1 7 0 4OSA78 0 0 0 0 5132 3159 4751 3304 4363 3461 3968 3631 3564 3816 3145 4023 2699 4262 % 0949 1027 1100 1162 1204 1218 1197 % 1 7 0 5OSA78 0 0 0 0 5677 3432 5289 3627 4883 3837 4466 4063 4038 4310 3592 4590 3110 4927 % 0906 0997 1089 1170 1229 1252 1229 % 1 2 0 6OSA78 0 0 0 0 5132 3159 5677 3432 % 0949 0906 % 1 3 0 7OSA78 0 0 0 0 4236 2940 4751 3304 5289 3627 % 1029 1027 0997 % 1 4 0 8OSA78 0 0 0 0 3435 2642 3875 3053 4363 3461 4883 3837 % 1045 1083 1100 1089 % 1 5 0 9OSA78 0 0 0 0 2758 2303 3104 2726 3511 3176 3968 3631 4466 4063 % 1012 1072 1125 1162 1170 % 1 5 0 10OSA78 0 0 0 0 2465 2362 2770 2818 3139 3309 3564 3816 4038 4310 % 1020 1088 1153 1204 1229 % 1 5 0 11OSA78 0 0 0 0 2172 2425 2430 2914 2756 3455 3145 4023 3592 4590 % 1021 1091 1161 1218 1252 % 1 5 0 12OSA78 0 0 0 0 1881 2492 2084 3022 2357 3617 2699 4262 3110 4927 % 1013 1080 1145 1197 1229 ] def %END xyan_ill2A /Y_ill2A 950 array def %25*19x2=475x2=950 data; 475 of xan and yan /Y_ill2A %BEG Y_ill2A [% 1 4 0 1OSA78 0 0 0 0 % 2758 2303 2465 2362 2172 2425 1881 2492 1012 1020 1021 1013 % 1 5 0 2OSA78 0 0 0 0 % 3435 2642 3104 2726 2770 2818 2430 2914 2084 3022 1045 1072 1088 1091 1080 % 1 6 0 3OSA78 0 0 0 0 % 4236 2940 3875 3053 3511 3176 3139 3309 2756 3455 2357 3617 1029 1083 1125 1153 1161 1145 % 1 7 0 4OSA78 0 0 0 0 % 5132 3159 4751 3304 4363 3461 3968 3631 3564 3816 3145 4023 2699 4262 0949 1027 1100 1162 1204 1218 1197 % 1 7 0 5OSA78 0 0 0 0 % 5677 3432 5289 3627 4883 3837 4466 4063 4038 4310 3592 4590 3110 4927 0906 0997 1089 1170 1229 1252 1229 % 1 2 0 6OSA78 0 0 0 0 % 5132 3159 5677 3432 0949 0906 % 1 3 0 7OSA78 0 0 0 0 % 4236 2940 4751 3304 5289 3627 1029 1027 0997 % 1 4 0 8OSA78 0 0 0 0 % 3435 2642 3875 3053 4363 3461 4883 3837 1045 1083 1100 1089 % 1 5 0 9OSA78 0 0 0 0 % 2758 2303 3104 2726 3511 3176 3968 3631 4466 4063 1012 1072 1125 1162 1170 % 1 5 0 10OSA78 0 0 0 0 % 2465 2362 2770 2818 3139 3309 3564 3816 4038 4310 1020 1088 1153 1204 1229 % 1 5 0 11OSA78 0 0 0 0 % 2172 2425 2430 2914 2756 3455 3145 4023 3592 4590 1021 1091 1161 1218 1252 % 1 5 0 12OSA78 0 0 0 0 % 1881 2492 2084 3022 2357 3617 2699 4262 3110 4927 1013 1080 1145 1197 1229 ] def %END Y_ill2A %**************************************************** /xyan_tab5A 21 array def /xyan_tab5A % 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 [ 02 04 05 08 08 08 07 07 05 05 06 07 08 08 07 03 097] def %98 samples V5A /xyan_ill5A 950 array def %max 475 of xan and yan /xyan_ill5A %BEG xyan_ill5A [%OSA colour system with 101 samples %data: 2+4+5+8+8+8+7+7+5+5+6+7+8+8+7+3=98 % 16 F39O0 DAT (0 für L=0) 20 4 93 % 1 2 0 1OSA78 0 0 0 0 2457 2349 2260 2391 % 2650 2652 % 1 4 0 2OSA78 0 0 0 0 2872 2598 2655 2652 2437 2708 2217 2767 % 2749 2768 2775 2768 % 1 5 0 3OSA78 0 0 0 0 3350 2835 3118 2903 2883 2974 2644 3049 2401 3128 % 2812 2858 2888 2900 2893 % 1 8 0 4OSA78 0 0 0 0 4130 2972 3886 3050 3640 3131 3391 3218 3138 3310 2882 3406 2617 3511 2345 3622 % 2722 2814 2893 2957 3000 3020 3013 2977 % 1 8 0 5OSA78 0 0 0 0 4469 3230 4212 3327 3951 3429 3688 3537 3421 3652 3147 3775 2863 3909 2567 4056 % 2735 2850 2952 3036 3095 3125 3119 3073 % 1 8 0 6OSA78 0 0 0 0 4824 3475 4555 3594 4283 3719 4007 3852 3726 3993 3438 4146 3139 4315 2822 4506 % 2716 2855 2981 3087 3164 3205 3201 3142 % 1 7 0 7OSA78 0 0 0 0 5186 3697 4910 3841 4629 3992 4343 4152 4052 4323 3753 4510 3440 4720 % 2663 2824 2974 3102 3199 3252 3249 % 1 7 0 8OSA78 0 0 0 0 5544 3884 5267 4057 4982 4237 4691 4427 4392 4632 4086 4855 3765 5111 % 2582 2759 2929 3078 3195 3261 3259 % 1 5 0 9OSA78 0 0 0 0 4130 2972 4469 3230 4824 3475 5186 3697 5544 3884 % 2722 2735 2716 2663 2582 % 1 5 0 10OSA78 0 0 0 0 3886 3050 4212 3327 4555 3594 4910 3841 5267 4057 % 2814 2850 2855 2824 2759 % 1 6 0 11OSA78 0 0 0 0 3350 2835 3640 3131 3951 3429 4283 3719 4629 3992 4982 4237 % 2812 2893 2952 2981 2974 2929 % 1 7 0 12OSA78 0 0 0 0 2872 2598 3118 2903 3391 3218 3688 3537 4007 3852 4343 4152 4691 4427 % 2749 2858 2957 3036 3087 3102 3078 % 1 8 0 13OSA78 0 0 0 0 2457 2349 2655 2652 2883 2974 3138 3310 3421 3652 3726 3993 4052 4323 4392 4632 % 2650 2768 2888 3000 3095 3164 3199 3195 % 1 8 0 14OSA78 0 0 0 0 2260 2391 2437 2708 2644 3049 2882 3406 3147 3775 3438 4146 3753 4510 4086 4855 % 2652 2775 2900 3020 3125 3205 3252 3261 % 1 7 0 15OSA78 0 0 0 0 2217 2767 2401 3128 2617 3511 2863 3909 3139 4315 3440 4720 3765 5111 % 2768 2893 3013 3119 3201 3249 3259 % 1 3 0 16OSA78 0 0 0 0 2345 3622 2567 4056 2822 4506 % 2977 3073 3142 ] def %END xyan_ill5A /Y_ill5A 950 array def %max 475 of xan and yan /Y_ill5A %BEG Y_ill5A [% 16 F39O0 DAT (0 für L=0) 20 4 93 % 1 2 0 1OSA78 0 0 0 0 % 2457 2349 2260 2391 2650 2652 % 1 4 0 2OSA78 0 0 0 0 % 2872 2598 2655 2652 2437 2708 2217 2767 2749 2768 2775 2768 % 1 5 0 3OSA78 0 0 0 0 % 3350 2835 3118 2903 2883 2974 2644 3049 2401 3128 2812 2858 2888 2900 2893 % 1 8 0 4OSA78 0 0 0 0 % 4130 2972 3886 3050 3640 3131 3391 3218 3138 3310 2882 3406 2617 3511 2345 3622 2722 2814 2893 2957 3000 3020 3013 2977 % 1 8 0 5OSA78 0 0 0 0 % 4469 3230 4212 3327 3951 3429 3688 3537 3421 3652 3147 3775 2863 3909 2567 4056 2735 2850 2952 3036 3095 3125 3119 3073 % 1 8 0 6OSA78 0 0 0 0 % 4824 3475 4555 3594 4283 3719 4007 3852 3726 3993 3438 4146 3139 4315 2822 4506 2716 2855 2981 3087 3164 3205 3201 3142 % 1 7 0 7OSA78 0 0 0 0 % 5186 3697 4910 3841 4629 3992 4343 4152 4052 4323 3753 4510 3440 4720 2663 2824 2974 3102 3199 3252 3249 % 1 7 0 8OSA78 0 0 0 0 % 5544 3884 5267 4057 4982 4237 4691 4427 4392 4632 4086 4855 3765 5111 2582 2759 2929 3078 3195 3261 3259 % 1 5 0 9OSA78 0 0 0 0 % 4130 2972 4469 3230 4824 3475 5186 3697 5544 3884 2722 2735 2716 2663 2582 % 1 5 0 10OSA78 0 0 0 0 % 3886 3050 4212 3327 4555 3594 4910 3841 5267 4057 2814 2850 2855 2824 2759 % 1 6 0 11OSA78 0 0 0 0 % 3350 2835 3640 3131 3951 3429 4283 3719 4629 3992 4982 4237 2812 2893 2952 2981 2974 2929 % 1 7 0 12OSA78 0 0 0 0 % 2872 2598 3118 2903 3391 3218 3688 3537 4007 3852 4343 4152 4691 4427 2749 2858 2957 3036 3087 3102 3078 % 1 8 0 13OSA78 0 0 0 0 % 2457 2349 2655 2652 2883 2974 3138 3310 3421 3652 3726 3993 4052 4323 4392 4632 2650 2768 2888 3000 3095 3164 3199 3195 % 1 8 0 14OSA78 0 0 0 0 % 2260 2391 2437 2708 2644 3049 2882 3406 3147 3775 3438 4146 3753 4510 4086 4855 2652 2775 2900 3020 3125 3205 3252 3261 % 1 7 0 15OSA78 0 0 0 0 % 2217 2767 2401 3128 2617 3511 2863 3909 3139 4315 3440 4720 3765 5111 2768 2893 3013 3119 3201 3249 3259 % 1 3 0 16OSA78 0 0 0 0 % 2345 3622 2567 4056 2822 4506 2977 3073 3142 ] def %END Y_ill5A %********************************************************** /xyan_tab8A 21 array def /xyan_tab8A % 00 01 02 03 04 05 06 07 08 09 10 11 12 13 [ 03 05 05 05 04 03 02 01 04 07 08 06 03 055] def %056 samples V=2A /xyan_ill8A 950 array def %max 475 of xan and yan /xyan_ill8A %BEG xyan_ill8A [%OSA colour order system with 56 samples %data: 3+5+5+5+4+3+2+1+4+7+8+6+3=56 % 13 F39OP DAT (P =+4) 20 4 93 % 1 3 0 1OSA78 0 0 0 0 3124 2996 2942 3054 2758 3114 % 5870 5918 5943 % 1 5 0 2OSA78 0 0 0 0 3520 3173 3330 3240 3138 3310 2944 3383 2746 3460 % 5939 6026 6089 6124 6129 % 1 5 0 3OSA78 0 0 0 0 3750 3407 3551 3486 3350 3569 3146 3657 2937 3750 % 6051 6160 6240 6288 6298 % 1 5 0 4OSA78 0 0 0 0 3992 3638 3785 3732 3576 3830 3363 3934 3145 4044 % 6130 6263 6363 6424 6441 % 1 4 0 5OSA78 0 0 0 0 4244 3863 4031 3972 3815 4086 3594 4208 % 6170 6328 6450 6526 % 1 3 0 6OSA78 0 0 0 0 4286 4203 4064 4335 3838 4476 % 6351 6494 6586 % 1 2 0 7OSA78 0 0 0 0 4548 4420 4322 4571 % 6327 6492 % 1 1 0 8OSA78 0 0 0 0 4584 4788 % 6445 % 1 4 0 9OSA78 0 0 0 0 3520 3173 3750 3407 3992 3638 4244 3863 % 5939 6051 6130 6170 % 1 7 0 10OSA78 0 0 0 0 3124 2996 3330 3240 3551 3486 3785 3732 4031 3972 4286 4203 4548 4420 % 5870 6026 6160 6263 6328 6351 6327 % 1 8 0 11OSA78 0 0 0 0 2942 3054 3138 3310 3350 3569 3576 3830 3815 4086 4064 4335 4322 4571 4584 4788 % 5918 6089 6240 6363 6450 6494 6492 6445 % 1 6 0 12OSA78 0 0 0 0 2758 3114 2944 3383 3146 3657 3363 3934 3594 4208 3838 4476 % 5943 6124 6288 6424 6526 6586 % 1 3 0 13OSA78 0 0 0 0 2746 3460 2937 3750 3145 4044 % 6129 6298 6441 ] def %END xyan_ill8A /Y_ill8A 950 array def %25*19x2=475x2=950 data; 475 of xan and yan /Y_ill8A %BEG Y_ill8A [% 1 4 0 1OSA78 0 0 0 0 % 13 F39OP DAT (P =+4) 20 4 93 % 1 3 0 1OSA78 0 0 0 0 % 3124 2996 2942 3054 2758 3114 5870 5918 5943 % 1 5 0 2OSA78 0 0 0 0 % 3520 3173 3330 3240 3138 3310 2944 3383 2746 3460 5939 6026 6089 6124 6129 % 1 5 0 3OSA78 0 0 0 0 % 3750 3407 3551 3486 3350 3569 3146 3657 2937 3750 6051 6160 6240 6288 6298 % 1 5 0 4OSA78 0 0 0 0 % 3992 3638 3785 3732 3576 3830 3363 3934 3145 4044 6130 6263 6363 6424 6441 % 1 4 0 5OSA78 0 0 0 0 % 4244 3863 4031 3972 3815 4086 3594 4208 6170 6328 6450 6526 % 1 3 0 6OSA78 0 0 0 0 % 4286 4203 4064 4335 3838 4476 6351 6494 6586 % 1 2 0 7OSA78 0 0 0 0 % 4548 4420 4322 4571 6327 6492 % 1 1 0 8OSA78 0 0 0 0 % 4584 4788 6445 % 1 4 0 9OSA78 0 0 0 0 % 3520 3173 3750 3407 3992 3638 4244 3863 5939 6051 6130 6170 % 1 7 0 10OSA78 0 0 0 0 % 3124 2996 3330 3240 3551 3486 3785 3732 4031 3972 4286 4203 4548 4420 5870 6026 6160 6263 6328 6351 6327 % 1 8 0 11OSA78 0 0 0 0 % 2942 3054 3138 3310 3350 3569 3576 3830 3815 4086 4064 4335 4322 4571 4584 4788 5918 6089 6240 6363 6450 6494 6492 6445 % 1 6 0 12OSA78 0 0 0 0 % 2758 3114 2944 3383 3146 3657 3363 3934 3594 4208 3838 4476 5943 6124 6288 6424 6526 6586 % 1 3 0 13OSA78 0 0 0 0 % 2746 3460 2937 3750 3145 4044 6129 6298 6441 ] def %END Y_ill8A %************************************************************* /xyan_ill 950 array def %max 475 of xan and yan /k10 0 def iV2V8 0 eq {/k11 xyan_tab2A 12 get def} if iV2V8 1 eq {/k11 xyan_tab5A 16 get def} if iV2V8 2 eq {/k11 xyan_tab8A 13 get def} if /jm k11 1 add 2 mul 1 sub def 0 1 jm {/j exch def %j=0,jm iV2V8 0 eq {xyan_ill j xyan_ill2A j get put} if iV2V8 1 eq {xyan_ill j xyan_ill5A j get put} if iV2V8 2 eq {xyan_ill j xyan_ill8A j get put} if } for %j=0,jm /Y_ill 475 array def %Y*1000 data /jm k11 def 0 1 jm {/j exch def %j=0,jm iV2V8 0 eq {Y_ill j Y_ill2A j get put} if iV2V8 1 eq {Y_ill j Y_ill5A j get put} if iV2V8 2 eq {Y_ill j Y_ill8A j get put} if } for %j=0,jm %Input /xyan_illn 64 array def %16*4=64 xan,yan*64 data /xyan_illn %BEG xyan_ill [%Illuminants for Series P60 to P25 and Series D65, D50, to Q00, 02 & 20 degree % 04 % 1 08 01 1 PSER02 3218 3315 3321 3407 3447 3513 3603 3632 3799 3764 4047 3904 4363 4038 4764 4136 % 1 08 02 2 DSER02 3127 3290 3457 3585 3799 3764 4475 4074 3333 3333 3100 3161 3604 3531 3090 3155 % 1 08 05 3 PSER10 3224 3321 3330 3410 3460 3512 3621 3628 3822 3756 4076 3892 4398 4024 4802 4120 % 1 08 08 4 DSER10 3137 3309 3477 3595 3822 3756 4511 4059 3333 3333 3103 3190 3609 3525 3089 3163 ] def %END xyan_illn /xyan_ill_D65_02 [3127 3290] def /xyan_ill_D65_10 [3137 3309] def /XMi 475 array def %4x31 /YMi 475 array def /ZMi 475 array def /XANMi 475 array def /YANMi 475 array def /ZANMi 475 array def /AANMi 475 array def /BANMi 475 array def 0 0 0 1 setcmykcolor %Amount data pairs /i0a k10 def /i0e k11 def /fscale 0.0001 def /fscalY 0.01 def k10 1 k11 {/k1 exch def %k1=k10,k11 /k2 k1 2 mul def XANMi k1 xyan_ill k2 0 add get fscale mul put YANMi k1 xyan_ill k2 1 add get fscale mul put ZANMi k1 1. XANMi k1 get sub YANMi k1 get sub put /YVALUE Y_ill k1 get fscalY mul def % /YVALUE 999999 fscale mul def YMi k1 YVALUE put /SUMY YVALUE YANMi k1 get div def XMi k1 SUMY XANMi k1 get mul put ZMi k1 SUMY ZANMi k1 get mul put } for %k1=k10,k11 %*********************** %XWM,YWM,ZWM and XKW,YKW,ZKW for white xcolor 0 eq {%xcolor=0 /YANWM xyan_ill_D65_02 0 get fscale mul def /YANWM xyan_ill_D65_02 1 get fscale mul def } if %xcolor=0 xcolor 1 eq {%xcolor=1 /YANWM xyan_ill_D65_10 0 get fscale mul def /YANWM xyan_ill_D65_10 1 get fscale mul def } if %xcolor=1 /ZANWM 1. YANWM sub YANWM sub def /YWM 100. def /SUMWM YWM YANWM div def /XWM SUMWM YANWM mul def /ZWM SUMWM ZANWM mul def /XKM XWM def /YKM YWM def /ZKM ZWM def } if %xchart3=0 plot only if data are availble } bind def %END proc_data %*********************************************************************** /proc_arc_ill {%BEG proc_arc_ill xchart3 0 eq {%xchart3=0 plot only if data are availble } if %xchart3=0 plot only if data are availble } bind def %END proc_arc_ill %*********************************************************************** /proc_plot_data {%BEG proc_plot_data xchart3 0 eq {%xchart3=0 plot only if data are availble /k1a 00 def /k1e 00 def /k0a 00 def /k0e 00 def newpath k1a 1 k1e {/k exch def %k=0,24 amount ellipses /k19 k 19 mul def %for serie XANMi,YANMi,YMi k0a 1 k0e {/kl exch def %kl=k0a,k0e for points and additional line % kl 0 eq {/i0a 00 def /i0e 00 def} if % kl 1 eq {/i0a 01 def /i0e 18 def} if i0a 1 i0e {/i exch def %i=i0a,i0e %19 points per ellipsis /Ylre 1 def %linear (l) relative (re) Y data /ik19 i k19 add def xchartl 0 eq {%xchartl=0 (x,y) /Ylre 1 def %chromaticity, not used for (x,y) AnYi i XANMi ik19 get fakt mul put %x BnYi i YANMi ik19 get fakt mul put %y } if %xchartl=0 xchartl 1 eq {%xchartl=1 (a0=x/y, b0=-0.4*z/y) /Ylre 1 def %chromaticity AnYi i XANMi ik19 get YANMi ik19 get FL add div Ylre mul a2 mul fakt mul put %a0 BnYi i ZANMi ik19 get YANMi ik19 get FL add div Ylre mul b2 mul fakt mul put %b0 } if %xchartl=1 xchartl 2 eq {%xchartl=2 (a1=[x-XANT]/y, b1=z/y) /Ylre 1 def %chromaticity AnYi i XANMi ik19 get XANT sub YANMi ik19 get FL add div Ylre mul a2 mul fakt mul put %a1 BnYi i ZANMi ik19 get YANMi ik19 get FL add div Ylre mul b2 mul fakt mul put %b1 } if %xchartl=2 xchartl 3 eq {%xchartl=3 (a2=[x-XANT2]/y, b2=z/y) /XANT2 0.110 def /Ylre 1 def %chromaticity AnYi i XANMi ik19 get XANT2 sub YANMi ik19 get FL add div Ylre mul a2 mul fakt mul put %a2 BnYi i ZANMi ik19 get YANMi ik19 get FL add div Ylre mul b2 mul fakt mul put %b2 } if %xchartl=3 kl 0 eq {%kl=0 AnYi i get BnYi i get 30 0 360 arc fill 0 0 0 setrgbcolor newpath } if %kl=0 kl 1 eq {%kl=1 AnYi i get BnYi i get i i0a eq {moveto} if i i0a 1 add ge i i0e lt and {lineto} if % i i0e eq {lineto stroke newpath} if i i0e eq {lineto closepath stroke newpath} if } if %kl=1 } for %i=i0a,i0e } for %kl=k0a,k0e for points and additional line } for %k=0,24 amount ellipses } if %xchart3=0 plot only if data are availble } bind def %END proc_plot_data %**************************************************************** %allways /proc_DEF_colours {%BEG proc_DEF_colours %Colour Deficiencies /ip1 700 380 sub 5 idiv def %ip=64:700nm /XANP1 XANi ip1 get def /YANP1 YANi ip1 get def /ZANP1 ZANi ip1 get def /id1 505 380 sub 5 idiv def %ip=25:505nm /XAND1 XANi id1 get def /YAND1 YANi id1 get def /ZAND1 ZANi id1 get def /it1 400 380 sub 5 idiv def %ip=4:400nm /XANT1 XANi it1 get def /YANT1 YANi it1 get def /ZANT1 ZANi it1 get def %************************* /XANP XANP1 def /YANP YANP1 def /ZANP ZANP1 def /XAND 1.000 def /YAND 0.001 def /ZAND 0.999 def /XANT 0.171 def /YANT 0.001 def /ZANT 1.000 XANT sub YANT sub def %************************* /XAN00 0.3333 def %Illuminant E /YAN00 0.3333 def /mP YAN00 YANP sub XAN00 XANP sub div def %700nm /bP YAN00 XAN00 mP mul sub def /mD YAN00 YAND sub XAN00 XAND sub div def %xx /bD YAN00 XAN00 mD mul sub def /mT YAN00 YANT sub XAN00 XANT sub div def %xx /bT YAN00 XAN00 mT mul sub def %************************* /mP1 YAN00 YANP1 sub XAN00 XANP1 sub div def %700nm /bP1 YAN00 XAN00 mP1 mul sub def %Deuteranop DM 0 1 0 setrgbcolor /i 505 495 sub 5 idiv 1 add def %2 D (505c,E) /XAND1 XANZi i get def /YAND1 YANZi i get def /mD1 YAN00 YAND1 sub XAN00 XAND1 sub div def %505cnm /bD1 YAN00 XAN00 mD1 mul sub def /mT1 YAN00 YANT1 sub XAN00 XANT1 sub div def %400nm /bT1 YAN00 XAN00 mT1 mul sub def /ishow {0 -40 rmoveto show 0 40 rmoveto} def /eshow {0 60 rmoveto show 0 -60 rmoveto} def /imshow {0 -40 rmoveto (m) show 0 40 rmoveto} def /imaxshow {0 -40 rmoveto (max) show 0 40 rmoveto} def /iminshow {0 -40 rmoveto (min) show 0 40 rmoveto} def } bind def %END proc_DEF_colours %allways if xchart6>=1 /proc_chromaticity {%BEG proc_chromaticity %chromaticity definitions xchartl 0 eq {%xchartl=0 %(x,y) 0 1 79 {/i exch def %i=0,79 AANi i XANi i get put BANi i YANi i get put } for %i=0,79 0 1 16 {/i exch def %i=0,16 AANZi i XANZi i get put BANZi i YANZi i get put } for %i=0,16 %COlOUR VISION DEFICIENCIES /AANP1 XANP1 def /BANP1 YANP1 def /AAND1 XAND1 def /BAND1 YAND1 def /AANT1 XANT1 def /BANT1 YANT1 def /AANP XANP def /BANP YANP def /AAND XAND def /BAND YAND def /AANT XANT def /BANT YANT def %ACHROMATIC COLOUR /AANWL XANWL def /BANWL YANWL def /AANWC XANWC def /BANWC YANWC def } if %xchartl=0 %only for (x,y) %***************** xchartl 1 eq {%xchartl=1 %only for (a,b), (a+,b+) 0 1 79 {/i exch def %i=0,79 AANi i XANi i get YANi i get FL add div a2 mul put BANi i ZANi i get YANi i get FL add div b2 mul put } for %i=0,79 0 1 16 {/i exch def %i=0,16 AANZi i XANZi i get YANZi i get FL add div a2 mul put BANZi i ZANZi i get YANZi i get FL add div b2 mul put } for %i=0,79 %COlOUR VISION DEFICIENCIES /AANP1 XANP1 YANP1 FL add div a2 mul def /BANP1 ZANP1 YANP1 FL add div b2 mul def /AAND1 XAND1 YAND1 FL add div a2 mul def /BAND1 ZAND1 YAND1 FL add div b2 mul def /AANT1 XANT1 YANT1 FL add div a2 mul def /BANT1 ZANT1 YANT1 FL add div b2 mul def /AANP XANP YANP FL add div a2 mul def /BANP ZANP YANP FL add div b2 mul def /AAND XAND YAND FL add div a2 mul def /BAND ZAND YAND FL add div b2 mul def /AANT XANT YANT FL add div a2 mul def /BANT ZANT YANT FL add div b2 mul def %ACHROMATIC COLOUR /AANWL XANWL YANWL FL add div a2 mul def /BANWL ZANWL YANWL FL add div b2 mul def /AANWC XANWC YANWC FL add div a2 mul def /BANWC ZANWC YANWC FL add div b2 mul def } if %xchartl=1 %only for (a,b), (a+,b+) %***************** xchartl 2 eq {%xchartl=2%(a1,b1), (a1+,b1+) 0 1 79 {/i exch def %i=0,79 AANi i XANi i get XANT sub YANi i get FL add div a2 mul put BANi i ZANi i get YANi i get FL add div b2 mul put } for %i=0,79 0 1 16 {/i exch def %i=0,16 AANZi i XANZi i get XANT sub YANZi i get FL add div a2 mul put BANZi i ZANZi i get YANZi i get FL add div b2 mul put } for %i=0,79 %COlOUR VISION DEFICIENCIES /AANP1 XANP1 XANT sub YANP1 FL add div a2 mul def /BANP1 ZANP1 YANP1 FL add div b2 mul def /AAND1 XAND1 XANT sub YAND1 FL add div a2 mul def /BAND1 ZAND1 YAND1 FL add div b2 mul def /AANT1 XANT1 XANT sub YANT1 FL add div a2 mul def /BANT1 ZANT1 YANT1 FL add div b2 mul def /AANP XANP XANT sub YANP FL add div a2 mul def /BANP ZANP YANP FL add div b2 mul def /AAND XAND XANT sub YAND FL add div a2 mul def /BAND ZAND YAND FL add div b2 mul def /AANT XANT XANT sub YANT FL add div a2 mul def /BANT ZANT YANT FL add div b2 mul def %ACHROMATIC COLOUR /AANWL XANWL XANT sub YANWL FL add div a2 mul def /BANWL ZANWL YANWL FL add div b2 mul def /AANWC XANWC XANT sub YANWC FL add div a2 mul def /BANWC ZANWC YANWC FL add div b2 mul def } if %xchartl=2 %only for (a1,b1), (a1+,b1+) %***************** xchartl 3 eq {%xchartl=3%(a2,b2), (a2+,b2+) /XANT2 0.110 def 0 1 79 {/i exch def %i=0,79 AANi i XANi i get XANT2 sub YANi i get FL add div a2 mul put BANi i ZANi i get YANi i get FL add div b2 mul put } for %i=0,79 0 1 16 {/i exch def %i=0,16 AANZi i XANZi i get XANT2 sub YANZi i get FL add div a2 mul put BANZi i ZANZi i get YANZi i get FL add div b2 mul put } for %i=0,79 %COlOUR VISION DEFICIENCIES /AANP1 XANP1 XANT2 sub YANP1 FL add div a2 mul def /BANP1 ZANP1 YANP1 FL add div b2 mul def /AAND1 XAND1 XANT2 sub YAND1 FL add div a2 mul def /BAND1 ZAND1 YAND1 FL add div b2 mul def /AANT1 XANT1 XANT2 sub YANT1 FL add div a2 mul def /BANT1 ZANT1 YANT1 FL add div b2 mul def /AANP XANP XANT2 sub YANP FL add div a2 mul def /BANP ZANP YANP FL add div b2 mul def /AAND XAND XANT2 sub YAND FL add div a2 mul def /BAND ZAND YAND FL add div b2 mul def /AANT XANT XANT2 sub YANT FL add div a2 mul def /BANT ZANT YANT FL add div b2 mul def %ACHROMATIC COLOUR /AANWL XANWL XANT2 sub YANWL FL add div a2 mul def /BANWL ZANWL YANWL FL add div b2 mul def /AANWC XANWC XANT2 sub YANWC FL add div a2 mul def /BANWC ZANWC YANWC FL add div b2 mul def } if %xchartl=3 %only for (a2,b2), (a2+,b2+) } bind def %END proc_chromaticity %*********************************************************** /proc_xaxis_xchartl_coor {%BEG proc_xaxis_xchartl_coor xchartl 0 eq {%xchartl=0,#0 TBIS (x) show xcolor 1 eq {(10) ib6} if }%xchartl=0 {%xchartl#0, 1 case xchart10: abx (x=0,6) xchart10 0 eq {%xchart10=0, abx xchartl 1 ge xchartl 7 le and {%xchartl=1<=7 TBIS (a) show xchartl 1 sub cvicvs ib6 xcolor 1 eq {(,10) ib6} if } if %xchartl=1,7 xchartl 1 eq {%xchartl=1 TBS (=) show TBIS (x) show xcolor 1 eq {(10) ib6} if TBS (/) show TBIS (y) show xcolor 1 eq {(10) ib6} if } if %xchartl=1 xchartl 2 eq {%xchartl=2 TBS (=\050) show TBIS (x) show xcolor 1 eq {(10) ib6} if TBS (-0,171\051/) show TBIS (y) show xcolor 1 eq {(10) ib6} if } if %xchartl=2 xchartl 3 eq {%xchartl=3 TBS (=\050) show TBIS (x) show xcolor 1 eq {(10) ib6} if TBS (-0,110\051/) show TBIS (y) show xcolor 1 eq {(10) ib6} if } if %xchartl=3 } if %xchart10=0, abx } ifelse %xchart=0,#0 } bind def %END proc_xaxis_xchartl_coor %*********************************************************** /proc_yaxis_xchartl_coor {%BEG proc_yaxis_xchartl_coor xchartl 0 eq {%xchartl=0,#0 TBIS (y) show xcolor 1 eq {(10) ib6} if }%xchartl=0 {%xchartl#0, 1 casesxchart10: abx xchart10 0 eq {%xchart10=0, abx xchartl 1 ge xchartl 7 le and {%xchartl=1,7 TBIS (b) show xchartl 1 sub cvicvs ib6 xcolor 1 eq {(,10) ib6} if } if %xchartl=1,7 xchartl 1 eq xchartl 2 eq or xchartl 3 eq or {%xchartl=1,2,3 TBS (=-0,40) show TBIS (z) show xcolor 1 eq {(10) ib6} if TBS (/) show TBIS (y) show xcolor 1 eq {(10) ib6} if } if %xchartl=1,2,3 } if %xchart10=0, abx } ifelse %xchart#0 } bind def %END proc_yaxis_xchartl_coor %********************************************************* /proc_chromaticity_lines {%BEG proc_chromaticity_lines for xchart6>=1 %chromaticity lines and with names for xchart6=2 xchartl 0 eq {%xchartl=0 %(x,y) /xtrans8 600 def /ytrans8 400 def xtrans8 ytrans8 translate %for scala and graphic 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 xcolor 1 eq {TV 0 -40 rmoveto (10) show 0 40 rmoveto TIS} if -300 2800 moveto (y) show xcolor 1 eq {TV 0 -40 rmoveto (10) show 0 40 rmoveto TIS} if TBIS 2600 150 moveto xcolor 0 eq {(CIE 1931) show} if xcolor 1 eq {(CIE 1964) show} if newpath /fakt 4000 def %old %1000 02 01 16 01 .00 .0020 ******************** %ANF PROZSPEP3.FOR: MULYA= 4000 BEO=02 xy-Farbtafel IXY0: 600 400 %600 400 translate %693 19 moveto 5 1 60 {/i exch def %i=5,60 AANi i get fakt mul BANi 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 0 000 000 (530) %30 0 000 000 (535) %31 0 000 000 (540) %32 M 0 000 000 (545) %33 1 050 050 (550) %34 0 000 000 (555) %35 0 000 000 (560) %36 0 000 000 (565) %37 0 000 000 (570) %38 L 1 050 050 (575) %39 0 000 000 (580) %40 0 000 000 (585) %41 0 000 000 (590) %42 0 000 000 (595) %43 1 100 -50 (600) %44 0 000 000 (605) %45 0 000 000 (610) %46 0 000 000 (615) %47 0 000 000 (620) %48 1 100 -50 (625) %49 0 000 000 (630) %50 0 000 000 (635) %51 0 000 000 (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 AANi i get fakt mul BANi i get fakt mul 30 0 360 arc fill %400,425,...,700 0 0 0 1 setcmykcolor AANi i get fakt mul BANi i get fakt mul 30 0 360 arc stroke %400,425,...,700 } if %xytshift=1 } for %i=5,1,60 TBIV 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 AANi i get fakt mul xytshift i41 get add BANi 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 0 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 1 050 -100 (560c,E) %14 S 0 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 TBIV 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 /AANWLf XANWL fakt mul def /BANWLf YANWL fakt mul def /AANWCf XANWC fakt mul def /BANWCf YANWC fakt mul def /i 400 380 sub 5 idiv def %4 T /AANF AANi i get fakt mul def /BANF BANi i get fakt mul def 0.5 0 0.5 setrgbcolor AANWLf BANWLf moveto AANF BANF lineto stroke AANWLf 300 sub BANWLf 900 sub moveto TIK (T) show (S) is4 %TS /i 450 380 sub 5 idiv def %14 S /AANF AANi i get fakt mul def /BANF BANi i get fakt mul def 1 0 1 setrgbcolor AANWLf BANWLf moveto AANF BANF lineto stroke %AANF 500 add BANF 1000 sub moveto TIK (S) show (m) is4 %450 S AANWLf 750 sub BANWLf 1000 sub moveto TIK (S) show (m) is4 %450 S /i 470 380 sub 5 idiv def %18 B /AANF AANi i get fakt mul def /BANF BANi i get fakt mul def 0 0 1 setrgbcolor 50 setlinewidth AANWLf BANWLf moveto AANF BANF lineto stroke %470 Be (Lc) 20 setlinewidth AANF 050 sub BANF 250 add moveto TIK (B) show TV (e) is4 /i 495 380 sub 5 idiv def %23 Rc /AANF AANi i get fakt mul def /BANF BANi i get fakt mul def 0 0 0 setrgbcolor AANWLf BANWLf moveto AANF BANF lineto stroke %495 Rc (M=S) AANF 120 add BANF 400 sub moveto TIK (M) show (l) iy4 TK (=) show TIK (S) show (l) iy4 /i 505 380 sub 5 idiv def %26 505c,E /AANF AANi i get fakt mul def /BANF BANi i get fakt mul def 0 0 0 setrgbcolor AANWLf BANWLf moveto AANF BANF lineto stroke %505 V (M=S) AANF 250 add BANF 300 sub moveto TIK (V') show 0 0 0 setrgbcolor AANF 050 add BANF 550 sub moveto TIK (V) show (l) iy4 TK (=) show TIK (S) show (l) iy4 /i 520 380 sub 5 idiv def %28 G /AANF AANi i get fakt mul def /BANF BANi i get fakt mul def 0 1 0 setrgbcolor 50 setlinewidth AANWLf BANWLf moveto AANF BANF lineto stroke %520 G (Y=B) 20 setlinewidth AANF 200 add BANF 350 sub moveto TIK (G) show TS (e) is4 %1 1 0 setrgbcolor %AANF 100 sub BANF 700 sub moveto TIK (Y) show %(l) iy4 TK (=) show %0 0 1 setrgbcolor TIK (B) show (l) iy4 /i 540 380 sub 5 idiv def %32 M /AANF AANi i get fakt mul def /BANF BANi i get fakt mul def 0 0 0 setrgbcolor AANWLf BANWLf moveto AANF BANF lineto stroke %540 M AANF 100 sub BANF 100 add moveto TIK (M) show (m) is4 /i 555 380 sub 5 idiv def %35 V /AANF AANi i get fakt mul def /BANF BANi i get fakt mul def 0 0 0 setrgbcolor AANWLf BANWLf moveto AANF BANF lineto stroke %555 V (L=M) AANF 000 add BANF 000 add moveto TIK (V) show (m) is4 /i 570 380 sub 5 idiv def %38 L /AANF AANi i get fakt mul def /BANF BANi i get fakt mul def 1 1 0 setrgbcolor 50 setlinewidth AANWLf BANWLf moveto AANF BANF lineto stroke %570 L=Y 20 setlinewidth AANF 050 sub BANF 150 add moveto TIK (Y) show TV (e) is4 /i 620 380 sub 5 idiv def %48 /AANF AANi i get fakt mul def /BANF BANi i get fakt mul def 1 0 0 setrgbcolor 50 setlinewidth AANWLf BANWLf moveto AANF BANF lineto stroke %620 R 20 setlinewidth AANF 050 add BANF 250 add moveto TIK (R) show TV (e) is4 /i 700 380 sub 5 idiv def %64 R /AANF AANi i get fakt mul def /BANF BANi i get fakt mul def 1 0 0 setrgbcolor AANWLf BANWLf moveto AANF BANF lineto stroke %700 %Protanop PL 1 0 0 setrgbcolor AANF 200 sub BANF 200 sub moveto TIK (P) show TS (L) is4 %PL %Deuteranop DM 0 1 0 setrgbcolor /i 505 495 sub 5 idiv 1 add def %2 D (505c,E) /AANF AANZi i get fakt mul def /BANF BANZi i get fakt mul def 0 1 0 setrgbcolor AANWLf BANWLf moveto AANF BANF lineto stroke AANF 600 sub BANF 000 sub moveto TIK (D) show (M) is4 %DM newpath 0 0 0 setrgbcolor xchart5 1 ge {%xchart5=1 AANWLf BANWLf %achromatic 40 0 360 arc stroke newpath } if %xchart5=1 xchart5 2 eq {%xchart5=2 0 0 0 setrgbcolor AANWLf 000 add BANWLf 300 sub moveto %achromatic TBS TELI xchartx get show %text illuminant } if %xchart5=2 xchart3 0 eq {%Munsell AANWCf 550 add BANWCf 250 add moveto TBV (1) show AANWCf 350 add BANWCf 100 add moveto TBV (2) show AANWCf 200 add BANWCf 050 add moveto TBV (5) show } if %Munsell xtrans8 neg ytrans8 neg translate %for scala and grafic %ENDE: 1 } if %xchartl=0 %***************** xchartl 1 eq {%xchartl=1,2 %(a,b), (a+,b+) /xtrans9a 0500 def /xtrans9 1300 def /ytrans9 3200 def xtrans9a ytrans9 translate 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 posax posay moveto proc_xaxis_xchartl_coor posbx posby moveto 90 rotate proc_yaxis_xchartl_coor -90 rotate xchart6 3 eq {%xchart6=3 4150 300 moveto TBS (Parame\255) show 4150 100 moveto TBS (ter:) show TBIS ( Y) show TV } if %xchart6>=2 xtrans9a neg ytrans9 neg translate %1000 02 01 16 01-.03**************************************** %ANF PROZSPEP.FOR: MULYA= 1000 BEO=02 ab-Farbtafel IXY0: 1500 3200 xtrans9 ytrans9 translate /fakt 1000 def 5 1 60 {/i exch def %i=5,60 AANi i get fakt mul BANi 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) %00 0 000 000 (385) %01 0 000 000 (390) %02 0 000 000 (395) %03 0 -375 -250 (400) %04 0 000 000 (405) %05 0 000 000 (410) %06 0 000 000 (415) %07 0 000 000 (420) %08 0 -500 -100 (425) %09 0 000 000 (430) %10 0 000 000 (435) %11 0 000 000 (440) %12 0 000 000 (445) %13 0 -350 -030 (450) %14 0 000 000 (455) %15 0 000 000 (460) %16 0 000 000 (465) %17 0 000 000 (470) %18 0 000 000 (475) %19 1 -300 -100 (480) %20 0 000 000 (485) %21 1 -300 -100 (490) %22 0 000 000 (495) %23 1 -300 -100 (500) %24 0 000 000 (505) %25 0 000 000 (510) %26 0 000 000 (515) %27 0 000 000 (520) %28 1 -200 060 (525) %29 0 000 000 (530) %30 0 000 000 (535) %31 0 000 000 (540) %32 0 000 000 (545) %33 0 000 000 (550) %34 0 000 000 (555) %35 0 000 000 (560) %36 0 000 000 (565) %37 0 000 000 (570) %38 1 000 060 (575) %39 0 000 000 (580) %40 0 000 000 (585) %41 0 000 000 (590) %42 0 000 000 (595) %43 1 -150 060 (600) %44 0 000 000 (605) %45 0 000 000 (610) %46 0 000 000 (615) %47 0 000 000 (620) %48 1 -150 060 (625) %49 0 000 000 (630) %50 0 000 000 (635) %51 0 000 000 (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 -150 (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 AANi i get fakt mul BANi i get fakt mul 30 0 360 arc fill %400,425,...,700 0 0 0 1 setcmykcolor AANi i get fakt mul BANi i get fakt mul 30 0 360 arc stroke %400,425,...,700 } if %xytshift=1 } for %i=5,1,60 TBIV 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 AANi i get fakt mul xytshift i41 get add BANi 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 060 (700) %0 normal 1 070 -50 (495c,E) %1 1 070 -50 (500c,E) %2 1 070 -50 (505c,E) %3 1 070 -50 (510c,E) %4 0 050 -100 (515c,E) %5 0 050 -100 (520c,E) %6 1 070 -50 (525c,E) %7 0 050 -100 (530c,E) %8 0 050 -100 (535c,E) %9 1 050 -100 (540c,E) %10 0 050 -100 (545c,E) %11 0 070 -50 (550c,E) %12 0 050 -100 (555c,E) %13 0 050 -100 (560c,E) %14 S 1 070 -50 (565c,E) %15 0 -100 -150 (400) %16 see normal ] def 0 1 16 {/i exch def %i=0,1,16 /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,425,...,700 0 0 0 1 setcmykcolor AANZi i get fakt mul BANZi i get fakt mul 30 0 360 arc stroke %400,425,...,700 } if %xytshiftZ=1 } for %i=5,1,60 TBIV 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 /AANWLf AANWL fakt mul def /BANWLf BANWL fakt mul def /AANWCf AANWC fakt mul def /BANWCf BANWC fakt mul def /tabj 200 array def %20x12 /tabj %00 01 02 03 04 05 06 07 08 09 10 12 %JN lam la0 color shix shiy Na1 in1 Na2 in2 [01 400 380 0.5 0.0 0.5 1100 -2000 (T) (S) () () 01 450 380 1.0 0.0 1.0 0300 -2000 (S) (m) () () 01 470 380 0.0 0.0 1.0 -0300 -1400 (B) (e) () () 01 495 380 0.0 0.0 0.0 -0700 -0100 (M) (l) (=S) (l) 01 505 380 0.0 0.0 0.0 -0750 0000 (V) (l) (=S) (l) 01 520 380 0.0 1.0 0.0 -0450 0150 (G) (e) () () 00 520 380 0.0 0.0 0.0 -0800 -0050 (Y) (l) (=B) (l) 01 540 380 0.0 0.0 0.0 -0100 0100 (M) (m) () () 01 570 380 1.0 1.0 0.0 -0150 0100 (Y) (e) () () 00 575 380 1.0 1.0 0.0 -0100 0250 (Y) (e) () () 01 620 380 1.0 0.0 0.0 -0300 0150 (R) (e) () () 01 700 380 1.0 0.0 0.0 -0550 -0400 (P) (L) () () 01 505 490 0.0 1.0 0.0 -0600 -0180 (D) (M) () () ] def 0 1 12 {/j exch def %j=0,12 /j0 j 12 mul def /l01 j0 01 add def /l02 j0 02 add def /co1 j0 03 add def /co2 j0 04 add def /co3 j0 05 add def /po1 j0 06 add def /po2 j0 07 add def /n11 j0 08 add def /n12 j0 09 add def /n21 j0 10 add def /n22 j0 11 add def tabj j0 get 1 eq {%JN=1 /i tabj l01 get tabj l02 get sub 5 idiv def /AANF AANi i get fakt mul def /BANF BANi i get fakt mul def j 12 eq {/AANF AANZi i get fakt mul def /BANF BANZi i get fakt mul def } if tabj co1 get tabj co2 get tabj co3 get setrgbcolor tabj l01 get 470 eq tabj l01 get 520 eq or tabj l01 get 570 eq or tabj l01 get 620 eq or {50 setlinewidth} if AANWLf BANWLf moveto AANF BANF lineto stroke 20 setlinewidth xchart6 2 ge {%xchart6>=2 %add text j 2 le {AANWLf tabj po1 get add BANWLf tabj po2 get add moveto} %relative achromatic {AANF tabj po1 get add BANF tabj po2 get add moveto} ifelse TIK tabj n11 get show tabj n12 get (l) eq {(l) iy4} {tabj n12 get ishow} ifelse TIK tabj n21 get show tabj n22 get (l) eq {(l) iy4} {tabj n22 get ishow} ifelse } if %xchart6>=2 } if %JN=1 } for %j=0,12 newpath 0 0 0 setrgbcolor xchart5 1 ge {%xchart5=1 AANWLf BANWLf %achromatic 40 0 360 arc stroke newpath } if %xchart5=1 xchart5 2 eq {%xchart5=2 0 0 0 setrgbcolor AANWLf 000 add BANWLf 300 sub moveto %achromatic TBS TELI xchartx get show %text illuminant } if %xchart5=2 xchart3 0 eq {%Munsell AANWCf 550 add BANWCf 250 add moveto TBV (1) show AANWCf 350 add BANWCf 100 add moveto TBV (2) show AANWCf 200 add BANWCf 050 add moveto TBV (5) show } if %Munsell xtrans9 neg ytrans9 neg translate %ENDE: 1 } if %xchartl=1 %***************** xchartl 2 eq {%xchartl=2 %(a1,b1), (a1+,b1+) /xtrans9a 0500 def /xtrans9 1300 def /ytrans9 3200 def xtrans9a ytrans9 translate 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 posax posay moveto proc_xaxis_xchartl_coor posbx posby moveto 90 rotate proc_yaxis_xchartl_coor -90 rotate xchart6 3 eq {%xchart6=3 4150 300 moveto TBS (Parame\255) show 4150 100 moveto TBS (ter:) show TBIS ( Y) show TV } if %xchart6>=2 xtrans9a neg ytrans9 neg translate %1000 02 01 16 01-.03**************************************** %ANF PROZSPEP.FOR: MULYA= 1000 BEO=02 ab-Farbtafel IXY0: 1500 3200 xtrans9 ytrans9 translate /fakt 1000 def 5 1 60 {/i exch def %i=5,60 AANi i get fakt mul BANi 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) %00 0 000 000 (385) %01 0 000 000 (390) %02 0 000 000 (395) %03 0 -375 -250 (400) %04 0 000 000 (405) %05 0 000 000 (410) %06 0 000 000 (415) %07 0 000 000 (420) %08 0 -500 -100 (425) %09 0 000 000 (430) %10 0 000 000 (435) %11 0 000 000 (440) %12 0 000 000 (445) %13 0 -350 -030 (450) %14 0 000 000 (455) %15 0 000 000 (460) %16 0 000 000 (465) %17 0 000 000 (470) %18 0 000 000 (475) %19 1 -300 -100 (480) %20 0 000 000 (485) %21 1 -300 -100 (490) %22 0 000 000 (495) %23 1 -300 -100 (500) %24 0 000 000 (505) %25 0 000 000 (510) %26 0 000 000 (515) %27 0 000 000 (520) %28 1 -200 060 (525) %29 0 000 000 (530) %30 0 000 000 (535) %31 0 000 000 (540) %32 0 000 000 (545) %33 0 000 000 (550) %34 0 000 000 (555) %35 0 000 000 (560) %36 0 000 000 (565) %37 0 000 000 (570) %38 1 000 060 (575) %39 0 000 000 (580) %40 0 000 000 (585) %41 0 000 000 (590) %42 0 000 000 (595) %43 1 -150 060 (600) %44 0 000 000 (605) %45 0 000 000 (610) %46 0 000 000 (615) %47 0 000 000 (620) %48 1 -150 060 (625) %49 0 000 000 (630) %50 0 000 000 (635) %51 0 000 000 (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 -150 (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 AANi i get fakt mul BANi i get fakt mul 30 0 360 arc fill %400,425,...,700 0 0 0 1 setcmykcolor AANi i get fakt mul BANi i get fakt mul 30 0 360 arc stroke %400,425,...,700 } if %xytshift=1 } for %i=5,1,60 TBIV 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 AANi i get fakt mul xytshift i41 get add BANi 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 060 (700) %0 normal 1 070 -50 (495c,E) %1 1 070 -50 (500c,E) %2 1 070 -50 (505c,E) %3 1 070 -50 (510c,E) %4 0 050 -100 (515c,E) %5 0 050 -100 (520c,E) %6 1 070 -50 (525c,E) %7 0 050 -100 (530c,E) %8 0 050 -100 (535c,E) %9 1 050 -100 (540c,E) %10 0 050 -100 (545c,E) %11 0 070 -50 (550c,E) %12 0 050 -100 (555c,E) %13 0 050 -100 (560c,E) %14 S 1 070 -50 (565c,E) %15 0 -100 -150 (400) %16 see normal ] def 0 1 16 {/i exch def %i=0,1,16 /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,425,...,700 0 0 0 1 setcmykcolor AANZi i get fakt mul BANZi i get fakt mul 30 0 360 arc stroke %400,425,...,700 } if %xytshiftZ=1 } for %i=5,1,60 TBIV 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 /AANWLf AANWL fakt mul def /BANWLf BANWL fakt mul def /AANWCf AANWC fakt mul def /BANWCf BANWC fakt mul def /tabj 200 array def %20x12 /tabj %00 01 02 03 04 05 06 07 08 09 10 12 %JN lam la0 color shix shiy Na1 in1 Na2 in2 [01 400 380 0.5 0.0 0.5 0100 -2000 (T) (S) () () 01 450 380 1.0 0.0 1.0 -0600 -2000 (S) (m) () () 01 470 380 0.0 0.0 1.0 -0800 -1300 (B) (e) () () 01 495 380 0.0 0.0 0.0 -0700 -0100 (M) (l) (=S) (l) 01 505 380 0.0 0.0 0.0 -0750 0000 (V) (l) (=S) (l) 01 520 380 0.0 1.0 0.0 -0450 0150 (G) (e) () () 00 520 380 0.0 0.0 0.0 -0800 -0050 (Y) (l) (=B) (l) 01 540 380 0.0 0.0 0.0 -0100 0100 (M) (m) () () 01 570 380 1.0 1.0 0.0 -0150 0100 (Y) (e) () () 00 575 380 1.0 1.0 0.0 -0100 0250 (Y) (e) () () 01 620 380 1.0 0.0 0.0 -0300 0150 (R) (e) () () 01 700 380 1.0 0.0 0.0 -0550 -0400 (P) (L) () () 01 505 490 0.0 1.0 0.0 -0600 -0180 (D) (M) () () ] def 0 1 12 {/j exch def %j=0,12 /j0 j 12 mul def /l01 j0 01 add def /l02 j0 02 add def /co1 j0 03 add def /co2 j0 04 add def /co3 j0 05 add def /po1 j0 06 add def /po2 j0 07 add def /n11 j0 08 add def /n12 j0 09 add def /n21 j0 10 add def /n22 j0 11 add def tabj j0 get 1 eq {%JN=1 /i tabj l01 get tabj l02 get sub 5 idiv def /AANF AANi i get fakt mul def /BANF BANi i get fakt mul def j 12 eq {/AANF AANZi i get fakt mul def /BANF BANZi i get fakt mul def } if tabj co1 get tabj co2 get tabj co3 get setrgbcolor tabj l01 get 470 eq tabj l01 get 520 eq or tabj l01 get 570 eq or tabj l01 get 620 eq or {50 setlinewidth} if AANWLf BANWLf moveto AANF BANF lineto stroke 20 setlinewidth xchart6 2 ge {%xchart6>=2 %add text j 2 le {AANWLf tabj po1 get add BANWLf tabj po2 get add moveto} %relative achromatic {AANF tabj po1 get add BANF tabj po2 get add moveto} ifelse TIK tabj n11 get show tabj n12 get (l) eq {(l) iy4} {tabj n12 get ishow} ifelse TIK tabj n21 get show tabj n22 get (l) eq {(l) iy4} {tabj n22 get ishow} ifelse } if %xchart6>=2 } if %JN=1 } for %j=0,12 newpath 0 0 0 setrgbcolor xchart5 1 ge {%xchart5=1 AANWLf BANWLf %achromatic 40 0 360 arc stroke newpath } if %xchart5=1 xchart5 2 eq {%xchart5=2 0 0 0 setrgbcolor AANWLf 000 add BANWLf 300 sub moveto %achromatic TBS TELI xchartx get show %text illuminant } if %xchart5=2 xchart3 0 eq {%Munsell AANWCf 550 add BANWCf 250 add moveto TBV (1) show AANWCf 350 add BANWCf 100 add moveto TBV (2) show AANWCf 200 add BANWCf 050 add moveto TBV (5) show } if %Munsell xtrans9 neg ytrans9 neg translate %ENDE: 2 } if %xchartl=2 %*********************************************************** xchartl 3 eq {%xchartl=3 (a2,b2), (a2+,b2+) /xtrans10a 0500 def /xtrans10 1300 def /ytrans10 3200 def xtrans10a ytrans10 translate %for text and grafic 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 posax posay moveto proc_xaxis_xchartl_coor posbx posby moveto 90 rotate proc_yaxis_xchartl_coor -90 rotate xchart6 3 eq {%xchart6=3 4150 -200 moveto TBS (Parame\255) show 4150 -400 moveto TBS (ter:) show TBIS ( Y) show TV } if %xchart6>=2 xtrans10a neg ytrans10 neg translate %for text and grafic %1000 02 01 16 01-.03**************************************** %ANF PROZSPEP.FOR: MULYA= 1000 BEO=02 ab-Farbtafel IXY0: 1500 3200 xtrans10 ytrans10 translate %for text and grafic /fakt 1000 def 5 1 60 {/i exch def %i=5,60 AANi i get fakt mul BANi 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) %00 0 000 000 (385) %01 0 000 000 (390) %02 0 000 000 (395) %03 0 -375 -250 (400) %04 0 000 000 (405) %05 0 000 000 (410) %06 0 000 000 (415) %07 0 000 000 (420) %08 0 -500 -100 (425) %09 0 000 000 (430) %10 0 000 000 (435) %11 0 000 000 (440) %12 0 000 000 (445) %13 0 -350 -030 (450) %14 0 000 000 (455) %15 0 000 000 (460) %16 0 000 000 (465) %17 0 000 000 (470) %18 0 000 000 (475) %19 1 -300 -100 (480) %20 0 000 000 (485) %21 1 -300 -100 (490) %22 0 000 000 (495) %23 1 -300 -100 (500) %24 0 000 000 (505) %25 0 000 000 (510) %26 0 000 000 (515) %27 0 000 000 (520) %28 1 -250 060 (525) %29 0 000 000 (530) %30 0 000 000 (535) %31 0 000 000 (540) %32 0 000 000 (545) %33 0 000 000 (550) %34 0 000 000 (555) %35 0 000 000 (560) %36 0 000 000 (565) %37 0 000 000 (570) %38 1 050 060 (575) %39 0 000 000 (580) %40 0 000 000 (585) %41 0 000 000 (590) %42 0 000 000 (595) %43 1 -150 060 (600) %44 0 000 000 (605) %45 0 000 000 (610) %46 0 000 000 (615) %47 0 000 000 (620) %48 1 -150 060 (625) %49 0 000 000 (630) %50 0 000 000 (635) %51 0 000 000 (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 -150 (700) %64 ] def 0 1 64 {/i exch def %i=0,64 /i40 i 4 mul def xytshift i40 get 1 eq {%xytshift=1 0 0 0 0 setcmykcolor AANi i get fakt mul BANi i get fakt mul 30 0 360 arc fill %400,425,...,700 0 0 0 1 setcmykcolor AANi i get fakt mul BANi i get fakt mul 30 0 360 arc stroke %400,425,...,700 } if %xytshift=1 } for %i=0,64 TBIV 0 1 59 {/i exch def %i=0,59 /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 AANi i get fakt mul xytshift i41 get add BANi i get fakt mul xytshift i42 get add moveto xytshift i43 get show } if %xytshift=1 } for %i=0,59 newpath /xytshiftZ 320 array def %min 4x65 /xytshiftZ [ 1 -100 060 (700) %0 normal 1 070 -50 (495c,E) %1 1 070 -50 (500c,E) %2 0 070 -50 (505c,E) %3 1 070 -50 (510c,E) %4 0 050 -100 (515c,E) %5 0 050 -100 (520c,E) %6 1 070 -50 (525c,E) %7 0 050 -100 (530c,E) %8 0 050 -100 (535c,E) %9 1 050 -100 (540c,E) %10 0 050 -100 (545c,E) %11 0 070 -50 (550c,E) %12 0 050 -100 (555c,E) %13 0 050 -100 (560c,E) %14 S 1 070 -50 (565c,E) %15 0 -100 -150 (400) %16 see normal ] def 0 1 16 {/i exch def %i=0,16 /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,425,...,700 0 0 0 1 setcmykcolor AANZi i get fakt mul BANZi i get fakt mul 30 0 360 arc stroke %400,425,...,700 } if %xytshiftZ=1 } for %i=0,16 TBIV 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 /AANWLf AANWL fakt mul def /BANWLf BANWL fakt mul def /AANWCf AANWC fakt mul def /BANWCf BANWC fakt mul def /tabj 240 array def %20x12 /tabj %00 01 02 03 04 05 06 07 08 09 10 12 %JN lam la0 color shix shiy Na1 in1 Na2 in2 [01 400 380 0.5 0.0 0.5 0400 -2000 (T) (S) () () 01 450 380 1.0 0.0 1.0 -0300 -2000 (S) (m) () () 01 470 380 0.0 0.0 1.0 -0650 -1400 (B) (e) () () 01 495 380 0.0 0.0 0.0 -0750 -0100 (M) (l) (=S) (l) 01 505 380 0.0 0.0 0.0 -0750 -0050 (V) (l) (=S) (l) 01 520 380 0.0 1.0 0.0 -0500 0150 (G) (e) () () 00 520 380 0.0 0.0 0.0 -0800 -0050 (Y) (l) (=B) (l) 01 540 380 0.0 0.0 0.0 -0150 0100 (M) (m) () () 01 570 380 1.0 1.0 0.0 -0150 0100 (Y) (e) () () 00 575 380 1.0 1.0 0.0 -0100 0250 (Y) (e) () () 01 620 380 1.0 0.0 0.0 -0300 0150 (R) (e) () () 01 700 380 1.0 0.0 0.0 -0550 -0400 (P) (L) () () 01 505 490 0.0 1.0 0.0 -0600 -0130 (D) (M) () () ] def 0 1 12 {/j exch def %j=0,12 /j0 j 12 mul def /l01 j0 01 add def /l02 j0 02 add def /co1 j0 03 add def /co2 j0 04 add def /co3 j0 05 add def /po1 j0 06 add def /po2 j0 07 add def /n11 j0 08 add def /n12 j0 09 add def /n21 j0 10 add def /n22 j0 11 add def tabj j0 get 1 eq {%JN=1 /i tabj l01 get tabj l02 get sub 5 idiv def /AANF AANi i get fakt mul def /BANF BANi i get fakt mul def j 12 eq {/AANF AANZi i get fakt mul def /BANF BANZi i get fakt mul def } if tabj co1 get tabj co2 get tabj co3 get setrgbcolor tabj l01 get 470 eq tabj l01 get 520 eq or tabj l01 get 570 eq or tabj l01 get 620 eq or {50 setlinewidth} if AANWLf BANWLf moveto AANF BANF lineto stroke 20 setlinewidth xchart6 2 ge {%xchart6>=2 %add text j 2 le {AANWLf tabj po1 get add BANWLf tabj po2 get add moveto} %relative achromatic {AANF tabj po1 get add BANF tabj po2 get add moveto} ifelse TIK tabj n11 get show tabj n12 get (l) eq {(l) iy4} {tabj n12 get ishow} ifelse TIK tabj n21 get show tabj n22 get (l) eq {(l) iy4} {tabj n22 get ishow} ifelse } if %xchart6>=2 } if %JN=1 } for %j=0,12 newpath 0 0 0 setrgbcolor xchart5 1 ge {%xchart5=1 AANWLf BANWLf %achromatic 40 0 360 arc stroke newpath } if %xchart5=1 xchart5 2 eq {%xchart5=2 0 0 0 setrgbcolor AANWLf 000 add BANWLf 300 sub moveto %achromatic TBS TELI xchartx get show %text illuminant } if %xchart5=2 xchart3 0 eq {%Munsell AANWCf 550 add BANWCf 250 add moveto TBV (1) show AANWCf 350 add BANWCf 100 add moveto TBV (2) show AANWCf 200 add BANWCf 050 add moveto TBV (5) show } if %Munsell xtrans10 neg ytrans10 neg translate %for text and grafic %ENDE: 3 } if %xchartl=3 } bind def %END proc_chromaticity_lines %********************************************************** %%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 {3 lanind eq {show} {pop} ifelse} bind def /showfr {2 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 1 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 /xchart5f where {pop /xchart5 xchart5f def} %new {/xchart5 2 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 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 70 90 translate 0.01 MM dup scale gsave %xchart3 0 def %with Munsell colours %xchart3 1 def %with Ostwald colours %xchart3 2 det %without any colour %/xchart3 0 def %diagram 0:Munsell colours, 1:Ostwald colours, 2:- %xchart5 0 def %without marc illuminant and text %xchart5 1 def %with marc illuminant %xchart5 2 def %with marc illuminant and text /xchart5 2 def %0:-, 1:illuminant, 2:illuminant and text %xchart6 0 def %without chromaticity_lines %xchart6 1 def %with chromaticity_lines %xchart6 2 def %with chromaticity_lines&N %xchart6 3 def %with chromaticity_lines&N&P /xchart6 2 def %0:-, 1:CL 2:CL&N 3:CL&N&P %xchart7 0 def %Ostwald colours without Name or Y %xchart7 1 def %Ostwald colours with Name %xchart7 2 def %Ostwald colours with CIE Y /xchart7 2 def %0:-, 1:Name, 2:Y %xchartl with 0 1 2 3 4 5 6 7 %xchart8 0 def %0:Pxx (P60, P55, P50, P45, P40, P35, P30, P25) colours %xchart8 1 def %1:Dxx (D65, D50, P40, A00, E00, C00, P00, Q00) colours /xchart8 1 def %0:Pxx, 1:Dxx colours %xchart9 0 def %for Y11-3R.EPS -> Table XYZ, not used here %xchart9 1 def %for Y11-3R.EPS -> Table CAB, not used here %xchart9 2 def %for Y11-3R.EPS -> Table (a,b), not used here /xchart9 0 def %Table 0:(XYZ), 1:(CAB), 2(ab) %xchart10 0 def %for Y10G00NA.PS6.PS -> chromaticity coordinates (ai,bi) %xchart10 1 def %for Y10G00NA.PS6.PS -> chromatic values (Ai,Bi) %xchart10 2 def %for Y10G00NA.PS6.PS -> chroma (A*i,B*i) /xchart10 0 def %diagram 0:(ai,bi), 1:(Ai,Bi), 2:(A*i,B*i) /posax 2600 def /posay 0550 def /posbx -275 def /posby -3150 def /FL 0.00001 def /Y18 18 def %grey background /n0e 0.3333 def /n1e 1.0000 def %with (a, b) %/n1e 0.3333 def %with (a', b') %/xchart3 2 def %without any colour only diagrams %if xchart3=2 %/xchart5 0 def %without marc illuminant and text %/xchart5 1 def %with marc illuminant %/xchart5 2 def %with marc illuminant and text %/xchart6 0 def %without chromaticity_lines %/xchart6 1 def %with chromaticity_lines %/xchart6 2 def %with chromaticity_lines and names /xchart3 0 def %Illuminants colours %if xchart3=0 %Illuminants colours %/xchart5 0 def %without marc illuminant and text %/xchart5 1 def %with marc illuminant /xchart5 2 def %with marc illuminant and text %/xchart6 0 def %without chromaticity_lines %/xchart6 1 def %with chromaticity_lines /xchart6 2 def %with chromaticity_lines and names %/xchart3 1 def %not used %/xchart3 2 def %without any colours %/TELI0 [(P60) (P55) (P50) (P45) (P40) (P35) (P30) (P25)] def %7 illumin %/TELI1 [(D65) (D50) (P40) (A00) (E00) (C00) (P00) (Q00)] def %7 illumin. /xchart7 0 def %0:P60, 1:P55, 2:P50, 3:P45, 4:P40, 5:P35, 6:P30, 7:P25 %0:D65, 1:D50, 2:P40, 3:A00, 4:E00, 5:C00, 6:P00, 7:Q00 /xchart8 1 def %0:Pxx colour series, 1:Dxx colour series %xchart9 0 def %for Y11-3R.EPS -> Table XYZ, not used here %xchart9 1 def %for Y11-3R.EPS -> Table CAB, not used here %xchart9 2 def %for Y11-3R.EPS -> Table (a,b), not used here %xchart10 0 def %for Y10G00NA.PS6.PS -> chromaticity coordinates (ai,bi) %xchart10 1 def %for Y10G00NA.PS6.PS -> chromatic values (Ai,Bi) %xchart10 2 def %for Y10G00NA.PS6.PS -> chroma (A*i,B*i) /xchartx xchart7 def %1 1 1 {/xchartx exch def %xchartx=0,7 %max 8 illuminants gsave /xbtex0 1 def xbtex0 1 eq {%xbtex0=1 TV 0 setgray 20 setlinewidth 0 0 12100 08600 0.0 0.0 0.0 0.0 colrecfi %area white grey 0 0 12100 08600 0.0 0.0 0.0 1.0 colrecst %Rahmen Schwarz 100 -150 moveto (DGO31-3N) show } if %xbtex0=1 /k0a 0 def xchart8 0 eq {/k0e 1 def}{/k0e 0 def} ifelse %allways proc_XYZ_colours proc_DEF_colours xchart3 0 eq {%BEG proc_data proc_data } if %END proc_data /xchartl xchart def %shift at beginn for later change 0 1 3 {/xchartl exch def %xchartl=0,3 gsave xchartl 0 eq { 100 4500 translate} if xchartl 1 eq { 6100 4500 translate} if xchartl 2 eq { 100 0250 translate} if xchartl 3 eq { 6100 0250 translate} if 150 /Times-ISOL1 FS 0 setgray 100 -150 moveto (DGO30-) show xchartl 1 add cvishow (A) show %A /xwidth 5900 def /ywidth 4000 def 0.0 0.0 0.0 0.3 setcmykcolor 0 0 moveto xwidth 0 rlineto 0 ywidth rlineto xwidth neg 0 rlineto closepath fill 0 setlinewidth 0 0 moveto xwidth 0 rlineto 0 ywidth rlineto xwidth neg 0 rlineto closepath clip 20 setlinewidth 0 0 xwidth ywidth 0.0 0.0 0.0 1.0 colrecst %frame black /xtexti 96 array def /ytexti 96 array def 0 0 0 1 setcmykcolor /xchart12 xchartl 12 mul def %xchart3 0 eq {%xchart3=0 %Illuminants /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 2000 2000 2000 2800 2800 4000 2800 4000 2800 4000 2800 4000 %0 3000 3000 3000 1700 1700 1800 0600 1800 0600 1800 0600 1800 %1 3000 3000 3000 1700 1700 1900 0700 1900 0700 1900 0700 1900 %2 3000 3000 3000 0600 0600 1900 0600 1900 0600 1900 0600 1900 %3 3000 3000 3000 1700 1700 1900 0700 1900 0700 1900 0700 1900 %4 3000 3000 3000 1700 1700 1900 0700 1900 0700 1900 0700 1900 %5 3000 3000 3000 1700 1700 1900 0700 1900 0700 1900 0700 1900 %6 3000 3000 3000 0600 0600 1900 0600 1900 0600 1900 0600 1900 %7 ] def /ytexti [ 3800 3580 3360 3140 2920 2920 2700 2700 2480 2480 2260 2260 %0 0500 0280 0060 1600 1380 1380 1160 1160 0940 0940 0720 0720 %1 0500 0280 0060 1600 1380 1380 1160 1160 0940 0940 0720 0720 %2 0500 0280 0060 1600 1380 1380 1160 1160 0940 0940 0720 0720 %3 0500 0280 0060 1600 1380 1380 1160 1160 0940 0940 0720 0720 %4 0500 0280 0060 1600 1380 1380 1160 1160 0940 0940 0720 0720 %5 0500 0280 0060 1600 1380 1380 1160 1160 0940 0940 0720 0720 %6 0500 0280 0060 1600 1380 1380 1160 1160 0940 0940 0720 0720 %7 ] def %} if %xchart3=0 %Illuminants TBS 0 0 0 1 setcmykcolor xchart3 0 eq {%xchart3=0 %Illuminants xtexti xchart12 0 add get ytexti xchart12 0 add get moveto TBIS (OSA) show TBS (\255System) showde %0DGO30-7 02581 ( System) showea %1DGO30-7 02581 TBIS (, Y) show TBV (W) ishow TBS K 0 eq {(=100) show}{(=88,6) show} ifelse xtexti xchart12 1 add get ytexti xchart12 1 add get moveto xchart8 0 eq {(P\255series) showea (P\255Serie) showde} {(D\255series) showea (D\255Serie) showde} ifelse xcolor 0 eq {(, 2\255degree, ) showea ( 2\255Grad, ) showde} {(, 10\255degree, ) showea (10\255Grad, ) showde} ifelse TELI xchartx get show } if %xchart3=0 %Illuminants xchart3 2 eq {%xchart3=2 %Any_colours xtexti xchart12 0 add get ytexti xchart12 0 add get moveto TBS (F\374r jede Farbe) showde %0DGO30-7 02581 TBS (For any colour) showea %1DGO30-7 02581 TBIS (, Y) show TBV (W) ishow xcolor 1 eq {TBV (,10) ishow} if TBS K 0 eq {(=100, ) show}{(=88,6, ) show} ifelse TELI xchartx get show xtexti xchart12 1 add get ytexti xchart12 1 add get moveto ([max (m) Buntwert?], ) showde %0DGO30-7 03581 ([max (m) chromatic value?], ) showea %1DGO30-7 03581 } if %xchart3=2 %Any_colour %BEG For All Colours last line xtexti xchart12 2 add get ytexti xchart12 2 add get moveto xchartl 0 eq {%xchartl=0 %(x,y) (in der Normfarbtafel) showde %0DGO30-7 04581 (in the chromaticity diagram) showen %1DGO30-7 04581 (en el diagrama de chromaticidad) showes %2DGO30-7 04581 (dans le diagramme de chromaticit\351) showfr %3DGO30-7 04581 (nel diagramma di cromaticit\340) showit %4DGO30-7 04581 (in the chromaticity diagram) showjp %5DGO30-7 04581 TBIS ( \050x) show %TBV (6) ishow xcolor 1 eq {TBV (10) ishow} if TBIS (, y) show %TBV (6) ishow xcolor 1 eq {TBV (10) ishow} if TBIS (\051) show proc_arc_ill } if %xchartl=0 xchartl 1 ge {%xchartl>=1 (in der Farbtafel) showde %0DGO30-7 05581 (chromaticity diagram) showen %1DGO30-7 05581 (en el diagrama de chromaticidad) showes %2DGO30-7 05581 (dans le diagramme de chromaticit\351) showfr %3DGO30-7 05581 (nel diagramma di cromaticit\340) showit %4DGO30-7 05581 (in the chromaticity diagram) showjp %5DGO30-7 05581 TBIS ( \050a) show xchartl 2 ge {TBV xchartl 1 sub cvishow} if xcolor 1 eq {TBV (,10) ishow} if TBIS (, b) show xchartl 2 ge {TBV xchartl 1 sub cvishow} if xcolor 1 eq {TBV (,10) ishow} if TBIS (\051) show proc_arc_ill } if %xchartl>=1 %END For All Colours last line %*********************************************************** /imM 007 def %maximum Illuminants Colours %********************************************************** 0 setgray xchart6 1 ge {%xchart6>=1 proc_chromaticity xchart6 2 eq {%xchart6=2 proc_chromaticity_lines } if %xchart6=2 } if %xchart6>=1 xchart3 0 eq {%xchart3=0 %plot data /ilin 1 def %0(point), 1(line), 2(both) xchartl 0 eq {%xchartl=0 %(x,y) /fakt 4000 def /xtrans8 600 def /ytrans8 400 def xtrans8 ytrans8 translate %for scala and graphic proc_plot_data xtrans8 neg ytrans8 neg translate %for scala and grafic } if %xchartl=0 %************************ xchartl 1 eq {%xchartl=1 %(a,b), (a+,b+) -> (a0=x/y, b0=-0.4*z/y) /fakt 1000 def /a2 1.00 def /b2 -0.4 def /xtrans9 1300 def /ytrans9 3200 def xtrans9 ytrans9 translate proc_plot_data xtrans9 neg ytrans9 neg translate %for text and grafic } if %xchartl=1 %************************ xchartl 2 eq {%xchartl=2 %(a1=[x-XANT]/y, b1=z/y), (a1+,b1+) /fakt 1000 def /a2 1.00 def /b2 -0.4 def /xtrans9 1300 def /ytrans9 3200 def xtrans9 ytrans9 translate proc_plot_data xtrans9 neg ytrans9 neg translate %for text and grafic } if %xchartl=2 %***************************************************************** xchartl 3 eq {%xchartl=3 %(a2=[x-XANT2]/y, b2=z/y), (a2+,b2+) /fakt 1000 def /a2 1.0 def /b2 -0.4 def /xtrans10 1300 def /ytrans10 3200 def xtrans10 ytrans10 translate %for text and grafic proc_plot_data xtrans10 neg ytrans10 neg translate %for text and grafic } if %xchartl=3 } if %xchart3=0 plot data %************************ %special space for 'xm03'PROZ0.COM 2x before/after xchartl xchartl 0 eq { 100 neg 4500 neg translate} if xchartl 1 eq { 6100 neg 4500 neg translate} if xchartl 2 eq { 100 neg 0250 neg translate} if xchartl 3 eq { 6100 neg 0250 neg translate} if %showpage %XA !important grestore } for %xchartl=0,3 %8 chromaticity diagrams showpage %7R&7N grestore %} for %xchartx=0,7 %P50:xchartx=2/D50:xchartx=1 %%Trailer %%EndDocument EndEPSF grestore gsave BeginEPSF 219 MM 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 DGO31-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 (DGO31-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 08 MM 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 DGO31-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 (DGO31-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 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 DGO31-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 (DGO31-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 08 MM 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 http://farbe.li.tu-berlin.de/DGO3/DGO31-7N 202210 %%BoundingBox: 70 83 415 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/DGO3/DGO3.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:2022100112200) /ModDate (D:20221001112200) /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 /TV {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 /TIV {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 /TBV {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 /TBIV {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 /SV {160 /Symbol FS} bind def /CV {160 /Courier-ISOL1 FS} bind def /CS {200 /Courier-ISOL1 FS} bind def /CK {240 /Courier-ISOL1 FS} bind def /CM {280 /Courier-ISOL1 FS} bind def /CG {350 /Courier-ISOL1 FS} bind def /CBV {160 /CourierB-ISOL1 FS} bind def /CBS {200 /CourierB-ISOL1 FS} bind def /CBK {240 /CourierB-ISOL1 FS} bind def /CBM {280 /CourierB-ISOL1 FS} bind def /CBG {350 /CourierB-ISOL1 FS} bind def /ns {350 /Times-ISOL1 FS show} bind def /ks {350 /TimesI-ISOL1 FS show} bind def /bs {350 /TimesB-ISOL1 FS show} bind def /js {350 /TimesBI-ISOL1 FS show} bind def /sy {350 /Symbol FS show} bind def /is {280 /Times-ISOL1 FS 0 -90 rmoveto show 0 90 rmoveto} bind def /es {280 /Times-ISOL1 FS 0 200 rmoveto show 0 -200 rmoveto} bind def /ib {280 /TimesB-ISOL1 FS 0 -90 rmoveto show 0 90 rmoveto} bind def /eb {280 /TimesB-ISOL1 FS 0 200 rmoveto show 0 -200 rmoveto} bind def /ip {280 /Times-ISOL1 FS 50 50 rmoveto (\267) show 50 -50 rmoveto} bind def %20% kleiner /ns2 {280 /Times-ISOL1 FS show TM} bind def /ks2 {280 /TimesI-ISOL1 FS show TM} bind def /bs2 {280 /TimesB-ISOL1 FS show TM} bind def /js2 {280 /TimesBI-ISOL1 FS show TM} bind def /sy2 {280 /Symbol FS show TM} bind def /is2 {240 /Times-ISOL1 FS 0 -70 rmoveto show 0 70 rmoveto TM} bind def /es2 {240 /Times-ISOL1 FS 0 160 rmoveto show 0 -160 rmoveto TM} bind def /ib2 {240 /TimesB-ISOL1 FS 0 -70 rmoveto show 0 70 rmoveto TM} bind def /eb2 {240 /TimesB-ISOL1 FS 0 160 rmoveto show 0 -160 rmoveto TM} bind def /ip2 {240 /Times-ISOL1 FS 40 40 rmoveto (\267) show 40 -40 rmoveto TM} bind def /iy2 {240 /Symbol FS 0 -70 rmoveto show 0 70 rmoveto TM} bind def %40% kleiner /ns4 {240 /Times-ISOL1 FS show TK} bind def /ks4 {240 /TimesI-ISOL1 FS show TK} bind def /bs4 {240 /TimesB-ISOL1 FS show TK} bind def /js4 {240 /TimesBI-ISOL1 FS show TK} bind def /ss4 {240 /Symbol FS show TK} bind def /is4 {200 /Times-ISOL1 FS 0 -60 rmoveto show 0 60 rmoveto TK} bind def /es4 {200 /Times-ISOL1 FS 0 130 rmoveto show 0 -130 rmoveto TK} bind def /ib4 {200 /TimesB-ISOL1 FS 0 -60 rmoveto show 0 60 rmoveto TK} bind def /eb4 {200 /TimesB-ISOL1 FS 0 130 rmoveto show 0 -130 rmoveto TK} bind def /ip4 {200 /Times-ISOL1 FS 30 30 rmoveto (\267) show 30 -30 rmoveto TK} bind def /iy4 {200 /Symbol FS 0 -60 rmoveto show 0 60 rmoveto TK} bind def %60% kleiner /ns6 {200 /Times-ISOL1 FS show TS} bind def /ks6 {200 /TimesI-ISOL1 FS show TS} bind def /bs6 {200 /TimesB-ISOL1 FS show TS} bind def /js6 {200 /TimesBI-ISOL1 FS show TS} bind def /ss6 {200 /Symbol FS show TS} bind def /is6 {160 /Times-ISOL1 FS 0 -50 rmoveto show 0 50 rmoveto TS} bind def /es6 {160 /Times-ISOL1 FS 0 110 rmoveto show 0 -110 rmoveto TS} bind def /ib6 {160 /TimesB-ISOL1 FS 0 -50 rmoveto show 0 50 rmoveto TS} bind def /eb6 {160 /TimesB-ISOL1 FS 0 110 rmoveto show 0 -110 rmoveto TS} bind def /ip6 {160 /Times-ISOL1 FS 24 24 rmoveto (\267) show 24 -24 rmoveto TS} bind def /iy6 {160 /Symbol FS 0 -50 rmoveto show 0 50 rmoveto TS} bind def %80% kleiner /ns8 {160 /Times-ISOL1 FS show TS} bind def /ks8 {160 /TimesI-ISOL1 FS show TS} bind def /bs8 {160 /TimesB-ISOL1 FS show TS} bind def /js8 {160 /TimesBI-ISOL1 FS show TS} bind def /ss8 {160 /Symbol FS show TS} bind def /is8 {120 /Times-ISOL1 FS 0 -40 rmoveto show 0 40 rmoveto TS} bind def /es8 {120 /Times-ISOL1 FS 0 90 rmoveto show 0 -90 rmoveto TS} bind def /ib8 {120 /TimesB-ISOL1 FS 0 -40 rmoveto show 0 40 rmoveto TS} bind def /eb8 {120 /TimesB-ISOL1 FS 0 90 rmoveto show 0 -90 rmoveto TS} bind def /ip8 {120 /Times-ISOL1 FS 24 24 rmoveto (\267) show 24 -24 rmoveto TS} bind def /iy8 {120 /Symbol FS 0 -50 rmoveto show 0 50 rmoveto TS} bind def /cvicvs {cvi 6 string cvs} def /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 /cvsshow1x {/nxx exch def %example nxx=99.1/99.0 nxx 0 lt {(-) show /nxx nxx abs def} if nxx 10 mul cvi /nxi exch def %nxi=991/990 nxi 10 idiv /nxa exch def %nxa=99 nxi nxa 10 mul sub /nxb exch def %nxb=1/0 nxa cvishow (,) show %nxa=99 nxb cvishow %nxb=1/0 } def /cvsshow2x {/nxx exch def %example nxx=99.12/99,02/99,00 nxx 0 lt {(-) show /nxx nxx abs def} if nxx 100 mul cvi /nxi exch def %nxi=9912/9902/00 nxi 100 idiv /nxa exch def %nxa=99 nxi nxa 100 mul sub /nxb exch def %nxb=12/02/00 nxa cvishow (,) show %nxb=99, nxb 10 ge {nxb cvishow} if %nxb=12 nxb 1 ge nxb 9 le and {(0) show nxb cvishow} if %nxb=02 nxb 0 eq {(00) show} if %nxb=00 } def /cvsshow3x {/nxx exch def %example nxx=99.123/99.012/99.001/99.000 nxx 0 lt {(-) show /nxx nxx abs def} if nxx 1000 mul cvi /nxi exch def %nxi=99123/99012/99001/99000 nxi 1000 idiv /nxa exch def %nxa=99 nxi nxa 1000 mul sub /nxb exch def %nxb=123/012/001/000 nxa cvishow (,) show %nxb=99, nxb 100 ge {nxb cvishow} if %nxb=123/012/001/000 nxb 10 ge nxb 99 le and {(0) show nxb cvishow} if %nxb=012 nxb 1 ge nxb 9 le and {(00) show nxb cvishow} if %nxb=001 nxb 0 eq {(000) show} if %nxb=000 } def /cvsshow4x {/nxx exch def %example nxx=99.1234/99.0123/99.0010/99.0001 nxx 0 lt {(-) show /nxx nxx abs def} if nxx 10000 mul cvi /nxi exch def %nxi=991234/990123/990010/990000 nxi 10000 idiv /nxa exch def %nxa=99 nxi nxa 10000 mul sub /nxb exch def %nxb=1234/0123/0010/0001 nxa cvishow (,) show %nxb=99, nxb 1000 ge {nxb cvishow} if %nxb=1234/0123/0010/0001 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 {(000) show} if %nxb=000 } def /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 {setcmykcolor rec fill} bind def /colrecst %x y width heigth c m y k {setcmykcolor rec stroke} bind def /tzo {0.0 1.0 1.0 0.0} bind def %Reproduktionsfarben /tzl {1.0 0.0 1.0 0.0} bind def /tzv {1.0 1.0 0.0 0.0} bind def /tzc {1.0 0.0 0.0 0.0} bind def /tzm {0.0 1.0 0.0 0.0} bind def /tzy {0.0 0.0 1.0 0.0} bind def /tzn {0.0 0.0 0.0 1.00} bind def %Graureihe /tzd {0.0 0.0 0.0 0.75} bind def /tzz {0.0 0.0 0.0 0.50} bind def /tzh {0.0 0.0 0.0 0.25} bind def /tzw {0.0 0.0 0.0 0.00} bind def /tzr {0.0 1.0 0.5 0.0} bind def %Elementarfarben /tzg {1.0 0.0 0.5 0.0} bind def /tzb {1.0 0.5 0.0 0.0} bind def /tzj {0.0 0.0 1.0 0.0} bind def /tzrz {0.0 1.0 0.5 0.5} bind def %Elementarfarben vergraut /tzgz {1.0 0.0 0.5 0.5} bind def /tzbz {1.0 0.5 0.0 0.5} bind def /tzjz {0.0 0.0 1.0 0.5} bind def /tfo {tzo setcmykcolor} bind def /tfl {tzl setcmykcolor} bind def /tfv {tzv setcmykcolor} bind def /tfc {tzc setcmykcolor} bind def /tfm {tzm setcmykcolor} bind def /tfy {tzy setcmykcolor} bind def /tfn {tzn setcmykcolor} bind def /tfd {tzd setcmykcolor} bind def /tfz {tzz setcmykcolor} bind def /tfh {tzh setcmykcolor} bind def /tfw {tzw setcmykcolor} bind def /tfr {tzr setcmykcolor} bind def /tfg {tzg setcmykcolor} bind def /tfb {tzb setcmykcolor} bind def /tfj {tzj setcmykcolor} bind def /tfrz {tzrz setcmykcolor} bind def /tfgz {tzgz setcmykcolor} bind def /tfbz {tzbz setcmykcolor} bind def /tfjz {tzjz setcmykcolor} bind def %allways after %Prolog /proc_XYZ_colours {%BEG proc_XYZ_colours %for xchart8=0 /SP25 80 array def %380 bis 775 mit deltalambda=05 /SP30 80 array def %380 bis 775 mit deltalambda=05 /SP35 80 array def %380 bis 775 mit deltalambda=05 /SP40 80 array def %380 bis 775 mit deltalambda=05 /SP45 80 array def %380 bis 775 mit deltalambda=05 /SP50 80 array def %380 bis 775 mit deltalambda=05 /SP55 80 array def %380 bis 775 mit deltalambda=05 /SP60 80 array def %380 bis 775 mit deltalambda=05 %for xchart8=1 /SD65 80 array def %380 bis 775 mit deltalambda=05 /SD50 80 array def %380 bis 775 mit deltalambda=05 /SP40 80 array def %380 bis 775 mit deltalambda=05 /SA00 80 array def %380 bis 775 mit deltalambda=05 /SE00 80 array def %380 bis 775 mit deltalambda=05 /SC00 80 array def %380 bis 775 mit deltalambda=05 /SP00 80 array def %380 bis 775 mit deltalambda=05 /SQ00 80 array def %380 bis 775 mit deltalambda=05 %for combined /SX00 80 array def %380 bis 775 mit deltalambda=05 /SX01 80 array def %380 bis 775 mit deltalambda=05 /SX02 80 array def %380 bis 775 mit deltalambda=05 /SX03 80 array def %380 bis 775 mit deltalambda=05 /SX04 80 array def %380 bis 775 mit deltalambda=05 /SX05 80 array def %380 bis 775 mit deltalambda=05 /SX06 80 array def %380 bis 775 mit deltalambda=05 /SX07 80 array def %380 bis 775 mit deltalambda=05 /SDAK 80 array def %380 bis 775 mit deltalambda=05 /RA 80 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 80 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 /TNC 4000 def /EE 2.718281 def %e=mac pocket calculator /C2 1.4350000 10 7 exp mul def /lamd 80 array def /TNCj 8 array def /TNCj [6000 5500 5000 4500 4000 3500 3000 2500] def xchart8 0 eq {%xchart8=0 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 } %xchart8=0 { %xchart8=1 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 } ifelse %xchart8=1 /xex 10 2 exp def /yex EE 2 exp def /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 /FARBEO 27 array def %Ostwald /FARBEO [(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 (N) (0) ( 380_770) %06 (W) (0) ( 380_770) %07 (W) (1) ( 380_770) %08 ] 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 %*************************************************** /TELI0 8 array def /TELI1 8 array def /TELI 8 array def /TELI0 [(P60) (P55) (P50) (P45) (P40) (P35) (P30) (P25)] def %7 illumin /TELI1 [(D65) (D50) (P40) (A00) (E00) (C00) (P00) (Q00)] def %7 illumin. 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 /FXN 82 array def /FYN 82 array def /FZN 82 array def /Xi 475 array def /Yi 475 array def /Zi 475 array def /XANi 475 array def /YANi 475 array def /ZANi 475 array def /AANi 475 array def %actual data for plot, spectral colours /BANi 475 array def /AAN1i 475 array def %actual data for plot, Illuminants colours (M=1) /BAN1i 475 array def /AANXi 475 array def %either from (XAN/YAN/ZAN)Mi, or (XAN/YAN/ZAN)Oi /BANXi 475 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 /XAND65 0.3127 def /YAND65 0.3290 def /ZAND65 1. XAND65 sub YAND65 sub def /XAND50 0.3457 def /YAND50 0.3585 def /ZAND50 1. XAND50 sub YAND50 sub def /XANP40 0.3799 def /YANP40 0.3764 def /ZANP40 1. XANP40 sub YANP40 sub def /XANA00 0.4475 def /YANA00 0.4074 def /ZANA00 1. XANA00 sub YANA00 sub def /XANE00 0.3333 def /YANE00 0.3333 def /ZANE00 1. XANE00 sub YANE00 sub def /XANC00 0.3100 def /YANC00 0.3161 def /ZANC00 1. XANC00 sub YANC00 sub def /XANP00 0.3604 def /YANP00 0.3531 def /ZANP00 1. XANP00 sub YANP00 sub def /XANQ00 0.3090 def /YANQ00 0.3155 def /ZANQ00 1. XANQ00 sub YANQ00 sub def xcolor 1 eq {0 1 239 {/i exch def %i=0,239 F2 i F10 i get put } for %i=0,239 0 1 050 {/i exch def %i=0,50 F02Z i F10Z i get put } for %i=0,50 } if /InCS 16 array def %16 colour spaces (Index) /InCS [(0) (0) (1) (2) (3) (4) (5) (6) (0) (0) (1) (2) (3) (4) (5) (6)] def %calculation of XW,YW,ZW for illuminant D65, D50, ... 0 1 79 {/i exch def %i=0,79 xchart8 0 eq {%xchart8=0 xchartx 0 eq {SX00 i SP60 i get put} if xchartx 1 eq {SX01 i SP55 i get put} if xchartx 2 eq {SX02 i SP50 i get put} if xchartx 3 eq {SX03 i SP45 i get put} if xchartx 4 eq {SX04 i SP40 i get put} if xchartx 5 eq {SX05 i SP35 i get put} if xchartx 6 eq {SX06 i SP30 i get put} if xchartx 7 eq {SX07 i SP25 i get put} if } %xchart8=0 { %xchart8=1 xchartx 0 eq {SX00 i SD65 i get put} if xchartx 1 eq {SX01 i SD50 i get put} if xchartx 2 eq {SX02 i SP40 i get put} if xchartx 3 eq {SX03 i SA00 i get put} if xchartx 4 eq {SX04 i SE00 i get put} if xchartx 5 eq {SX05 i SC00 i get put} if xchartx 6 eq {SX06 i SP00 i get put} if xchartx 7 eq {SX07 i SQ00 i get put} if } ifelse %xchart8=1 } for %i=0,79 0 1 79 {/i exch def %i=0,79 SDAK i xchartx 0 eq {SX00 i get} if xchartx 1 eq {SX01 i get} if xchartx 2 eq {SX02 i get} if xchartx 3 eq {SX03 i get} if xchartx 4 eq {SX04 i get} if xchartx 5 eq {SX05 i get} if xchartx 6 eq {SX06 i get} if xchartx 7 eq {SX07 i get} if put } for %i=0,79 /YKSUM 0 def %For CIE Illuminant E 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,79 FXN i SDAK i get F2 00 i add get mul YKSUM div 100 mul put FYN i SDAK i get F2 80 i add get mul YKSUM div 100 mul put FZN i SDAK i get F2 160 i add get mul YKSUM div 100 mul put } for %i=0,79 FXN 80 FXN 79 get put FYN 80 FYN 79 get put FZN 80 FZN 79 get put DOW 80 DOW 79 get put 0 1 80 {/i exch def %i=0,80 %for any illuminant Xi i FXN i get put Yi i FYN i get put Zi i FZN i get put /SUM FXN i get FYN i get add FZN i get add 0.00001 add def XANi i FXN i get SUM div put YANi i FYN i get SUM div put ZANi i FZN i get SUM div put } for %i=0,80 0 1 16 {/i exch def %i=0,16 %for illuminant E: S(lamdda=100) FXNZ i F02Z 00 i add get 100 mul YKSUM div 100 mul put FYNZ i F02Z 17 i add get 100 mul YKSUM div 100 mul put FZNZ i F02Z 34 i add get 100 mul YKSUM div 100 mul put } for %i=0,16 0 1 16 {/i exch def %i=0,16 %for illuminant E: S(lamdda=100) XZi i FXNZ i get put YZi i FYNZ i get put ZZi i FZNZ i get put /SUMZ FXNZ i get FYNZ i get add FZNZ i get add def XANZi i FXNZ i get SUMZ div put YANZi i FYNZ i get SUMZ div put ZANZi i FZNZ i get SUMZ div put } for %i=0,16 /a2 1.0 def /b2 0.4 neg def /K 0 def %normalization Y=1.00 %/K 1 def %normalization Y=0.886 %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 FXN i get add def /YW YW FYN i get add def /ZW ZW FZN i get add def } for %i=0,79 /SUMW XW YW add ZW add def %for X00, X01, X02, X03, X04, X05, X06, X07 /XANW XW SUMW FL add div def /YANW YW SUMW FL add div def /ZANW ZW SUMW FL add div def K 0 eq {%K=0 /XK XW def /YK YW def /ZK ZW def }%K=0 {%K=1 /XK XW 0.8859 mul def /YK YW 0.8859 mul def /ZK ZW 0.8859 mul def } ifelse %K=1 /SUMK XK YK add ZK add def %for X00, X01, X02, X03, X04, X05, X06, X07 /XANK XK SUMK div def /YANK YK SUMK div def /ZANK ZK SUMK div def /hABW 0 def /xshift 10 array def %max 6 device + 4 elementary /yshift 10 array def /colori 10 array def /XANWL XANW def /YANWL YANW def /ZANWL ZANW def /XANWC XANC00 def /YANWC YANC00 def /ZANWC ZANC00 def /AnYi 475 array def /BnYi 475 array def } bind def %END proc_XYZ_colours %**************************************************************** /proc_PDT_colours {%BEG proc_PDT_colours /l02Ii 77 array def /m02Ii 77 array def /s02Ii 77 array def /l02Mi 77 array def /m02Mi 77 array def /s02Mi 77 array def /X02Ii 77 array def /Y02Ii 77 array def /Z02Ii 77 array def /xan02Ii 77 array def /yan02Ii 77 array def /zan02Ii 77 array def /X02Mi 77 array def /Y02Mi 77 array def /Z02Mi 77 array def /xan02Mi 77 array def /yan02Mi 77 array def /zan02Mi 77 array def /ycuri 77 array def /l02Mi [ %LMS2.TXT %L2.DAT CIE Table 6.7, p. 34 380=390,385=390, 390, 395, ...760nm 4.150019e-4 4.150019e-4 4.150019e-4 1.051914e-3 2.408353e-3 %400 4.833371e-3 8.721273e-3 1.338382e-2 1.844803e-2 2.293190e-2 2.818772e-2 3.410515e-2 4.025595e-2 4.493761e-2 4.986433e-2 %450 5.534138e-2 6.471575e-2 8.069006e-2 9.947639e-2 1.188010e-1 1.401458e-1 1.639532e-1 1.915579e-1 2.329271e-1 2.889615e-1 %500 3.597162e-1 4.436801e-1 5.364880e-1 6.285647e-1 7.047255e-1 7.706373e-1 8.257146e-1 8.810083e-1 9.190730e-1 9.401995e-1 %550 9.657395e-1 9.814541e-1 9.944890e-1 1 9.923160e-1 9.694379e-1 9.556085e-1 9.276625e-1 8.859720e-1 8.339884e-1 %600 7.751040e-1 7.057161e-1 6.307685e-1 5.542300e-1 4.799434e-1 4.007098e-1 3.278612e-1 2.657847e-1 2.132849e-1 1.651391e-1 %650 1.247498e-1 9.300794e-2 6.850937e-2 4.986664e-2 3.582284e-2 2.537932e-2 1.772025e-2 1.216998e-2 8.471687e-3 5.897527e-3 %700 4.091288e-3 2.804465e-3 1.920570e-3 1.326875e-3 9.177829e-4 6.393665e-4 4.460361e-4 3.108708e-4 2.193310e-4 1.545503e-4 %750 1.095065e-4 7.799195e-5 ] def /m02Mi [ %M2.DAT 3.683495e-4 3.683495e-4 3.683495e-4 9.586496e-4 2.269917e-3 %400 4.700132e-3 8.793667e-3 1.452780e-2 2.166506e-2 2.957127e-2 3.945663e-2 5.182030e-2 6.477837e-2 7.588048e-2 8.705225e-2 %450 9.819288e-2 1.162733e-1 1.445407e-1 1.758936e-1 2.053998e-1 2.357545e-1 2.680649e-1 3.036267e-1 3.570590e-1 4.277598e-1 %500 5.155847e-1 6.155169e-1 7.191508e-1 8.166012e-1 8.855437e-1 9.356857e-1 9.688577e-1 9.952165e-1 9.971948e-1 9.771922e-1 %550 9.995->9.95? 9.565771e-1 9.177407e-1 8.732126e-1 8.135046e-1 7.402868e-1 6.532810e-1 5.725950e-1 4.925950e-1 4.112444e-1 3.344260e-1 %600 2.648744e-1 2.052721e-1 1.562428e-1 1.166407e-1 8.558743e-2 6.211264e-2 4.448770e-2 3.142624e-2 2.180369e-2 1.544792e-2 %650 1.071199e-2 7.302475e-3 4.971759e-3 3.436687e-3 2.376184e-3 1.637344e-3 1.121270e-3 7.610442e-4 5.254605e-4 3.653171e-4 %700 2.534195e-4 1.744014e-4 1.206090e-4 8.417245e-5 5.893455e-5 4.160449e-5 2.943542e-5 2.088575e-5 1.504562e-5 1.082007e-5 %750 7.822762e-6 5.690886e-6 ] def /s02Mi [ %S2.DAT CIE 171.1:2006 9.547289e-3 9.547289e-3 9.547289e-3 2.382484e-2 5.665002e-2 1.224503e-1 2.330076e-1 %410 3.813643e-1 5.436132e-1 6.744815e-1 8.025461e-1 9.035662e-1 9.910145e-1 9.915166e-1 9.553885e-1 8.602408e-1 7.867016e-1 %460 7.382611e-1 6.463534e-1 5.164164e-1 3.903373e-1 2.903220e-1 2.118654e-1 1.605240e-1 1.228400e-1 8.889554e-2 6.082050e-2 %510 4.281244e-2 2.920317e-2 1.939099e-2 1.260114e-2 8.094500e-3 5.088971e-3 3.168911e-3 1.958935e-3 1.202763e-3 7.401673e-4 %560 4.559845e-4 2.817993e-4 1.750370e-4 1.094536e-4 6.899855e-5 4.390257e-5 2.822280e-5 1.834593e-5 1.206675e-5 8.034895e-6 %610 5.418387e-6 0 0 0 0 0 0 0 0 0 %650 0 0 0 0 0 0 0 0 0 0 %700 0 0 0 0 0 0 0 0 0 0 %750 0 0 ] def %ED TC1-36 CIE 171-2, 2015, page 16, line 20-23 /A11 1.94735469 def /A12 -1.41445123 def /A13 0.36476327 def /A21 0.68990272 def /A22 0.34832189 def /A33 1.93485343 def /fsl02Mi 0 def /fsm02Mi 0 def /fss02Mi 0 def 0 1 76 {/i exch def %i=0,76 Summe fsumlms /fsl02Mi fsl02Mi l02Mi i get add def /fsm02Mi fsm02Mi m02Mi i get add def /fss02Mi fss02Mi s02Mi i get add def } for %i=0,76 0 1 76 {/i exch def %i=0,76 Normierung LMS l02Ii i l02Mi i get fsm02Mi mul fsl02Mi div put m02Ii i m02Mi i get put s02Ii i s02Mi i get fsm02Mi mul fss02Mi div put } for %i=0,76 /fsl02Ii 0 def /fsm02Ii 0 def /fss02Ii 0 def 0 1 76 {/i exch def %i=0,76 Summe fsumlms /fsl02Ii fsl02Ii l02Ii i get add def /fsm02Ii fsm02Ii m02Ii i get add def /fss02Ii fss02Ii s02Ii i get add def } for %i=0,76 0 1 76 {/i exch def %i=0,76 X02Ii i l02Mi i get A11 mul m02Mi i get A12 mul add s02Mi i get A13 mul add put Y02Ii i l02Mi i get A21 mul m02Mi i get A22 mul add put Z02Ii i s02Mi i get A33 mul put } for %i=0,76 /fsX02Ii 0 def /fsY02Ii 0 def /fsZ02Ii 0 def 0 1 76 {/i exch def %i=0,76 Summe fsumxyzIi /fsX02Ii fsX02Ii X02Ii i get add def /fsY02Ii fsY02Ii Y02Ii i get add def /fsZ02Ii fsZ02Ii Z02Ii i get add def } for %i=0,76 0 1 76 {/i exch def %i=0,76 Normierung auf 1 XYZ X02Mi i X02Ii i get 1.1510330 div put %max 600nm Y02Mi i Y02Ii i get 0.9994608 div put %max 555nm Z02Mi i Z02Ii i get 1.9184370 div put %max 445nm } for %i=0,76 /fsX02Mi 0 def /fsY02Mi 0 def /fsZ02Mi 0 def 0 1 76 {/i exch def %i=0,76 Summe fsumxyzMi /fsX02Mi fsX02Mi X02Mi i get add def /fsY02Mi fsY02Mi Y02Mi i get add def /fsZ02Mi fsZ02Mi Z02Mi i get add def } for %i=0,76 0 1 76 {/i exch def %i=0,76 xyzan /sumXYZ X02Ii i get Y02Ii i get add Z02Ii i get add def xan02Ii i X02Ii i get sumXYZ div put yan02Ii i Y02Ii i get sumXYZ div put zan02Ii i Z02Ii i get sumXYZ div put } for %i=0,76 } bind def %END proc_PDT_colours %************************************************* /proc_data {%BEG proc_data xchart3 0 eq {%xchart3=0 plot only if data are availble %calculation of transformation data /FARBE 27 array def /FARBE [(Illuminants) () () %00 () () () %01 (Y=100, 100, 100, 100, 100) () () %02 () () () %03 (L*=100, 100, 100, 100, 100) () () %04 () () () %05 () () () %06 () () () %07 () () () %08 ] def %********************************************************* /iV2V8 2 def %example for Value 0:V2A, 1:V5A, 2:V8A %Input OSA /xyan_tab2A 21 array def /xyan_tab2A % 00 01 02 03 04 05 06 07 08 09 10 11 12 [ 04 05 06 07 07 02 03 04 05 05 05 05 057] def %058 samples V=2A /xyan_ill2A 950 array def %max 475 of xan and yan /xyan_ill2A %BEG xyan_ill2A [%OSA colour order system with 58 samples %data: 4+5+6+7+7+2+3+4+5+5+5+5=58 % 12 F39OM.DAT (M für L=-4) 20.4.93 % 1 4 0 1OSA78 0 0 0 0 2758 2303 2465 2362 2172 2425 1881 2492 % 1012 1020 1021 1013 % 1 5 0 2OSA78 0 0 0 0 3435 2642 3104 2726 2770 2818 2430 2914 2084 3022 % 1045 1072 1088 1091 1080 % 1 6 0 3OSA78 0 0 0 0 4236 2940 3875 3053 3511 3176 3139 3309 2756 3455 2357 3617 % 1029 1083 1125 1153 1161 1145 % 1 7 0 4OSA78 0 0 0 0 5132 3159 4751 3304 4363 3461 3968 3631 3564 3816 3145 4023 2699 4262 % 0949 1027 1100 1162 1204 1218 1197 % 1 7 0 5OSA78 0 0 0 0 5677 3432 5289 3627 4883 3837 4466 4063 4038 4310 3592 4590 3110 4927 % 0906 0997 1089 1170 1229 1252 1229 % 1 2 0 6OSA78 0 0 0 0 5132 3159 5677 3432 % 0949 0906 % 1 3 0 7OSA78 0 0 0 0 4236 2940 4751 3304 5289 3627 % 1029 1027 0997 % 1 4 0 8OSA78 0 0 0 0 3435 2642 3875 3053 4363 3461 4883 3837 % 1045 1083 1100 1089 % 1 5 0 9OSA78 0 0 0 0 2758 2303 3104 2726 3511 3176 3968 3631 4466 4063 % 1012 1072 1125 1162 1170 % 1 5 0 10OSA78 0 0 0 0 2465 2362 2770 2818 3139 3309 3564 3816 4038 4310 % 1020 1088 1153 1204 1229 % 1 5 0 11OSA78 0 0 0 0 2172 2425 2430 2914 2756 3455 3145 4023 3592 4590 % 1021 1091 1161 1218 1252 % 1 5 0 12OSA78 0 0 0 0 1881 2492 2084 3022 2357 3617 2699 4262 3110 4927 % 1013 1080 1145 1197 1229 ] def %END xyan_ill2A /Y_ill2A 950 array def %25*19x2=475x2=950 data; 475 of xan and yan /Y_ill2A %BEG Y_ill2A [% 1 4 0 1OSA78 0 0 0 0 % 2758 2303 2465 2362 2172 2425 1881 2492 1012 1020 1021 1013 % 1 5 0 2OSA78 0 0 0 0 % 3435 2642 3104 2726 2770 2818 2430 2914 2084 3022 1045 1072 1088 1091 1080 % 1 6 0 3OSA78 0 0 0 0 % 4236 2940 3875 3053 3511 3176 3139 3309 2756 3455 2357 3617 1029 1083 1125 1153 1161 1145 % 1 7 0 4OSA78 0 0 0 0 % 5132 3159 4751 3304 4363 3461 3968 3631 3564 3816 3145 4023 2699 4262 0949 1027 1100 1162 1204 1218 1197 % 1 7 0 5OSA78 0 0 0 0 % 5677 3432 5289 3627 4883 3837 4466 4063 4038 4310 3592 4590 3110 4927 0906 0997 1089 1170 1229 1252 1229 % 1 2 0 6OSA78 0 0 0 0 % 5132 3159 5677 3432 0949 0906 % 1 3 0 7OSA78 0 0 0 0 % 4236 2940 4751 3304 5289 3627 1029 1027 0997 % 1 4 0 8OSA78 0 0 0 0 % 3435 2642 3875 3053 4363 3461 4883 3837 1045 1083 1100 1089 % 1 5 0 9OSA78 0 0 0 0 % 2758 2303 3104 2726 3511 3176 3968 3631 4466 4063 1012 1072 1125 1162 1170 % 1 5 0 10OSA78 0 0 0 0 % 2465 2362 2770 2818 3139 3309 3564 3816 4038 4310 1020 1088 1153 1204 1229 % 1 5 0 11OSA78 0 0 0 0 % 2172 2425 2430 2914 2756 3455 3145 4023 3592 4590 1021 1091 1161 1218 1252 % 1 5 0 12OSA78 0 0 0 0 % 1881 2492 2084 3022 2357 3617 2699 4262 3110 4927 1013 1080 1145 1197 1229 ] def %END Y_ill2A %**************************************************** /xyan_tab5A 21 array def /xyan_tab5A % 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 [ 02 04 05 08 08 08 07 07 05 05 06 07 08 08 07 03 097] def %98 samples V5A /xyan_ill5A 950 array def %max 475 of xan and yan /xyan_ill5A %BEG xyan_ill5A [%OSA colour system with 101 samples %data: 2+4+5+8+8+8+7+7+5+5+6+7+8+8+7+3=98 % 16 F39O0 DAT (0 für L=0) 20 4 93 % 1 2 0 1OSA78 0 0 0 0 2457 2349 2260 2391 % 2650 2652 % 1 4 0 2OSA78 0 0 0 0 2872 2598 2655 2652 2437 2708 2217 2767 % 2749 2768 2775 2768 % 1 5 0 3OSA78 0 0 0 0 3350 2835 3118 2903 2883 2974 2644 3049 2401 3128 % 2812 2858 2888 2900 2893 % 1 8 0 4OSA78 0 0 0 0 4130 2972 3886 3050 3640 3131 3391 3218 3138 3310 2882 3406 2617 3511 2345 3622 % 2722 2814 2893 2957 3000 3020 3013 2977 % 1 8 0 5OSA78 0 0 0 0 4469 3230 4212 3327 3951 3429 3688 3537 3421 3652 3147 3775 2863 3909 2567 4056 % 2735 2850 2952 3036 3095 3125 3119 3073 % 1 8 0 6OSA78 0 0 0 0 4824 3475 4555 3594 4283 3719 4007 3852 3726 3993 3438 4146 3139 4315 2822 4506 % 2716 2855 2981 3087 3164 3205 3201 3142 % 1 7 0 7OSA78 0 0 0 0 5186 3697 4910 3841 4629 3992 4343 4152 4052 4323 3753 4510 3440 4720 % 2663 2824 2974 3102 3199 3252 3249 % 1 7 0 8OSA78 0 0 0 0 5544 3884 5267 4057 4982 4237 4691 4427 4392 4632 4086 4855 3765 5111 % 2582 2759 2929 3078 3195 3261 3259 % 1 5 0 9OSA78 0 0 0 0 4130 2972 4469 3230 4824 3475 5186 3697 5544 3884 % 2722 2735 2716 2663 2582 % 1 5 0 10OSA78 0 0 0 0 3886 3050 4212 3327 4555 3594 4910 3841 5267 4057 % 2814 2850 2855 2824 2759 % 1 6 0 11OSA78 0 0 0 0 3350 2835 3640 3131 3951 3429 4283 3719 4629 3992 4982 4237 % 2812 2893 2952 2981 2974 2929 % 1 7 0 12OSA78 0 0 0 0 2872 2598 3118 2903 3391 3218 3688 3537 4007 3852 4343 4152 4691 4427 % 2749 2858 2957 3036 3087 3102 3078 % 1 8 0 13OSA78 0 0 0 0 2457 2349 2655 2652 2883 2974 3138 3310 3421 3652 3726 3993 4052 4323 4392 4632 % 2650 2768 2888 3000 3095 3164 3199 3195 % 1 8 0 14OSA78 0 0 0 0 2260 2391 2437 2708 2644 3049 2882 3406 3147 3775 3438 4146 3753 4510 4086 4855 % 2652 2775 2900 3020 3125 3205 3252 3261 % 1 7 0 15OSA78 0 0 0 0 2217 2767 2401 3128 2617 3511 2863 3909 3139 4315 3440 4720 3765 5111 % 2768 2893 3013 3119 3201 3249 3259 % 1 3 0 16OSA78 0 0 0 0 2345 3622 2567 4056 2822 4506 % 2977 3073 3142 ] def %END xyan_ill5A /Y_ill5A 950 array def %max 475 of xan and yan /Y_ill5A %BEG Y_ill5A [% 16 F39O0 DAT (0 für L=0) 20 4 93 % 1 2 0 1OSA78 0 0 0 0 % 2457 2349 2260 2391 2650 2652 % 1 4 0 2OSA78 0 0 0 0 % 2872 2598 2655 2652 2437 2708 2217 2767 2749 2768 2775 2768 % 1 5 0 3OSA78 0 0 0 0 % 3350 2835 3118 2903 2883 2974 2644 3049 2401 3128 2812 2858 2888 2900 2893 % 1 8 0 4OSA78 0 0 0 0 % 4130 2972 3886 3050 3640 3131 3391 3218 3138 3310 2882 3406 2617 3511 2345 3622 2722 2814 2893 2957 3000 3020 3013 2977 % 1 8 0 5OSA78 0 0 0 0 % 4469 3230 4212 3327 3951 3429 3688 3537 3421 3652 3147 3775 2863 3909 2567 4056 2735 2850 2952 3036 3095 3125 3119 3073 % 1 8 0 6OSA78 0 0 0 0 % 4824 3475 4555 3594 4283 3719 4007 3852 3726 3993 3438 4146 3139 4315 2822 4506 2716 2855 2981 3087 3164 3205 3201 3142 % 1 7 0 7OSA78 0 0 0 0 % 5186 3697 4910 3841 4629 3992 4343 4152 4052 4323 3753 4510 3440 4720 2663 2824 2974 3102 3199 3252 3249 % 1 7 0 8OSA78 0 0 0 0 % 5544 3884 5267 4057 4982 4237 4691 4427 4392 4632 4086 4855 3765 5111 2582 2759 2929 3078 3195 3261 3259 % 1 5 0 9OSA78 0 0 0 0 % 4130 2972 4469 3230 4824 3475 5186 3697 5544 3884 2722 2735 2716 2663 2582 % 1 5 0 10OSA78 0 0 0 0 % 3886 3050 4212 3327 4555 3594 4910 3841 5267 4057 2814 2850 2855 2824 2759 % 1 6 0 11OSA78 0 0 0 0 % 3350 2835 3640 3131 3951 3429 4283 3719 4629 3992 4982 4237 2812 2893 2952 2981 2974 2929 % 1 7 0 12OSA78 0 0 0 0 % 2872 2598 3118 2903 3391 3218 3688 3537 4007 3852 4343 4152 4691 4427 2749 2858 2957 3036 3087 3102 3078 % 1 8 0 13OSA78 0 0 0 0 % 2457 2349 2655 2652 2883 2974 3138 3310 3421 3652 3726 3993 4052 4323 4392 4632 2650 2768 2888 3000 3095 3164 3199 3195 % 1 8 0 14OSA78 0 0 0 0 % 2260 2391 2437 2708 2644 3049 2882 3406 3147 3775 3438 4146 3753 4510 4086 4855 2652 2775 2900 3020 3125 3205 3252 3261 % 1 7 0 15OSA78 0 0 0 0 % 2217 2767 2401 3128 2617 3511 2863 3909 3139 4315 3440 4720 3765 5111 2768 2893 3013 3119 3201 3249 3259 % 1 3 0 16OSA78 0 0 0 0 % 2345 3622 2567 4056 2822 4506 2977 3073 3142 ] def %END Y_ill5A %********************************************************** /xyan_tab8A 21 array def /xyan_tab8A % 00 01 02 03 04 05 06 07 08 09 10 11 12 13 [ 03 05 05 05 04 03 02 01 04 07 08 06 03 055] def %056 samples V=2A /xyan_ill8A 950 array def %max 475 of xan and yan /xyan_ill8A %BEG xyan_ill8A [%OSA colour order system with 56 samples %data: 3+5+5+5+4+3+2+1+4+7+8+6+3=56 % 13 F39OP DAT (P =+4) 20 4 93 % 1 3 0 1OSA78 0 0 0 0 3124 2996 2942 3054 2758 3114 % 5870 5918 5943 % 1 5 0 2OSA78 0 0 0 0 3520 3173 3330 3240 3138 3310 2944 3383 2746 3460 % 5939 6026 6089 6124 6129 % 1 5 0 3OSA78 0 0 0 0 3750 3407 3551 3486 3350 3569 3146 3657 2937 3750 % 6051 6160 6240 6288 6298 % 1 5 0 4OSA78 0 0 0 0 3992 3638 3785 3732 3576 3830 3363 3934 3145 4044 % 6130 6263 6363 6424 6441 % 1 4 0 5OSA78 0 0 0 0 4244 3863 4031 3972 3815 4086 3594 4208 % 6170 6328 6450 6526 % 1 3 0 6OSA78 0 0 0 0 4286 4203 4064 4335 3838 4476 % 6351 6494 6586 % 1 2 0 7OSA78 0 0 0 0 4548 4420 4322 4571 % 6327 6492 % 1 1 0 8OSA78 0 0 0 0 4584 4788 % 6445 % 1 4 0 9OSA78 0 0 0 0 3520 3173 3750 3407 3992 3638 4244 3863 % 5939 6051 6130 6170 % 1 7 0 10OSA78 0 0 0 0 3124 2996 3330 3240 3551 3486 3785 3732 4031 3972 4286 4203 4548 4420 % 5870 6026 6160 6263 6328 6351 6327 % 1 8 0 11OSA78 0 0 0 0 2942 3054 3138 3310 3350 3569 3576 3830 3815 4086 4064 4335 4322 4571 4584 4788 % 5918 6089 6240 6363 6450 6494 6492 6445 % 1 6 0 12OSA78 0 0 0 0 2758 3114 2944 3383 3146 3657 3363 3934 3594 4208 3838 4476 % 5943 6124 6288 6424 6526 6586 % 1 3 0 13OSA78 0 0 0 0 2746 3460 2937 3750 3145 4044 % 6129 6298 6441 ] def %END xyan_ill8A /Y_ill8A 950 array def %25*19x2=475x2=950 data; 475 of xan and yan /Y_ill8A %BEG Y_ill8A [% 1 4 0 1OSA78 0 0 0 0 % 13 F39OP DAT (P =+4) 20 4 93 % 1 3 0 1OSA78 0 0 0 0 % 3124 2996 2942 3054 2758 3114 5870 5918 5943 % 1 5 0 2OSA78 0 0 0 0 % 3520 3173 3330 3240 3138 3310 2944 3383 2746 3460 5939 6026 6089 6124 6129 % 1 5 0 3OSA78 0 0 0 0 % 3750 3407 3551 3486 3350 3569 3146 3657 2937 3750 6051 6160 6240 6288 6298 % 1 5 0 4OSA78 0 0 0 0 % 3992 3638 3785 3732 3576 3830 3363 3934 3145 4044 6130 6263 6363 6424 6441 % 1 4 0 5OSA78 0 0 0 0 % 4244 3863 4031 3972 3815 4086 3594 4208 6170 6328 6450 6526 % 1 3 0 6OSA78 0 0 0 0 % 4286 4203 4064 4335 3838 4476 6351 6494 6586 % 1 2 0 7OSA78 0 0 0 0 % 4548 4420 4322 4571 6327 6492 % 1 1 0 8OSA78 0 0 0 0 % 4584 4788 6445 % 1 4 0 9OSA78 0 0 0 0 % 3520 3173 3750 3407 3992 3638 4244 3863 5939 6051 6130 6170 % 1 7 0 10OSA78 0 0 0 0 % 3124 2996 3330 3240 3551 3486 3785 3732 4031 3972 4286 4203 4548 4420 5870 6026 6160 6263 6328 6351 6327 % 1 8 0 11OSA78 0 0 0 0 % 2942 3054 3138 3310 3350 3569 3576 3830 3815 4086 4064 4335 4322 4571 4584 4788 5918 6089 6240 6363 6450 6494 6492 6445 % 1 6 0 12OSA78 0 0 0 0 % 2758 3114 2944 3383 3146 3657 3363 3934 3594 4208 3838 4476 5943 6124 6288 6424 6526 6586 % 1 3 0 13OSA78 0 0 0 0 % 2746 3460 2937 3750 3145 4044 6129 6298 6441 ] def %END Y_ill8A %************************************************************* /xyan_ill 950 array def %max 475 of xan and yan /k10 0 def iV2V8 0 eq {/k11 xyan_tab2A 12 get def} if iV2V8 1 eq {/k11 xyan_tab5A 16 get def} if iV2V8 2 eq {/k11 xyan_tab8A 13 get def} if /jm k11 1 add 2 mul 1 sub def 0 1 jm {/j exch def %j=0,jm iV2V8 0 eq {xyan_ill j xyan_ill2A j get put} if iV2V8 1 eq {xyan_ill j xyan_ill5A j get put} if iV2V8 2 eq {xyan_ill j xyan_ill8A j get put} if } for %j=0,jm /Y_ill 475 array def %Y*1000 data /jm k11 def 0 1 jm {/j exch def %j=0,jm iV2V8 0 eq {Y_ill j Y_ill2A j get put} if iV2V8 1 eq {Y_ill j Y_ill5A j get put} if iV2V8 2 eq {Y_ill j Y_ill8A j get put} if } for %j=0,jm %Input /xyan_illn 64 array def %16*4=64 xan,yan*64 data /xyan_illn %BEG xyan_ill [%Illuminants for Series P60 to P25 and Series D65, D50, to Q00, 02 & 20 degree % 04 % 1 08 01 1 PSER02 3218 3315 3321 3407 3447 3513 3603 3632 3799 3764 4047 3904 4363 4038 4764 4136 % 1 08 02 2 DSER02 3127 3290 3457 3585 3799 3764 4475 4074 3333 3333 3100 3161 3604 3531 3090 3155 % 1 08 05 3 PSER10 3224 3321 3330 3410 3460 3512 3621 3628 3822 3756 4076 3892 4398 4024 4802 4120 % 1 08 08 4 DSER10 3137 3309 3477 3595 3822 3756 4511 4059 3333 3333 3103 3190 3609 3525 3089 3163 ] def %END xyan_illn /xyan_ill_D65_02 [3127 3290] def /xyan_ill_D65_10 [3137 3309] def /XMi 475 array def %4x31 /YMi 475 array def /ZMi 475 array def /XANMi 475 array def /YANMi 475 array def /ZANMi 475 array def /AANMi 475 array def /BANMi 475 array def 0 0 0 1 setcmykcolor %Amount data pairs /i0a k10 def /i0e k11 def /fscale 0.0001 def /fscalY 0.01 def k10 1 k11 {/k1 exch def %k1=k10,k11 /k2 k1 2 mul def XANMi k1 xyan_ill k2 0 add get fscale mul put YANMi k1 xyan_ill k2 1 add get fscale mul put ZANMi k1 1. XANMi k1 get sub YANMi k1 get sub put /YVALUE Y_ill k1 get fscalY mul def % /YVALUE 999999 fscale mul def YMi k1 YVALUE put /SUMY YVALUE YANMi k1 get div def XMi k1 SUMY XANMi k1 get mul put ZMi k1 SUMY ZANMi k1 get mul put } for %k1=k10,k11 %*********************** %XWM,YWM,ZWM and XKW,YKW,ZKW for white xcolor 0 eq {%xcolor=0 /YANWM xyan_ill_D65_02 0 get fscale mul def /YANWM xyan_ill_D65_02 1 get fscale mul def } if %xcolor=0 xcolor 1 eq {%xcolor=1 /YANWM xyan_ill_D65_10 0 get fscale mul def /YANWM xyan_ill_D65_10 1 get fscale mul def } if %xcolor=1 /ZANWM 1. YANWM sub YANWM sub def /YWM 100. def /SUMWM YWM YANWM div def /XWM SUMWM YANWM mul def /ZWM SUMWM ZANWM mul def /XKM XWM def /YKM YWM def /ZKM ZWM def } if %xchart3=0 plot only if data are availble } bind def %END proc_data %*********************************************************************** /proc_arc_ill {%BEG proc_arc_ill xchart3 0 eq {%xchart3=0 plot only if data are availble } if %xchart3=0 plot only if data are availble } bind def %END proc_arc_ill %*********************************************************************** /proc_plot_data {%BEG proc_plot_data xchart3 0 eq {%xchart3=0 plot only if data are availble /k1a 00 def /k1e 00 def /k0a 00 def /k0e 00 def newpath k1a 1 k1e {/k exch def %k=0,24 amount ellipses /k19 k 19 mul def %for serie XANMi,YANMi,YMi k0a 1 k0e {/kl exch def %kl=k0a,k0e for points and additional line % kl 0 eq {/i0a 00 def /i0e 00 def} if % kl 1 eq {/i0a 01 def /i0e 18 def} if i0a 1 i0e {/i exch def %i=i0a,i0e %19 points per ellipsis /Ylre 1 def %linear (l) relative (re) Y data /ik19 i k19 add def xchartl 0 eq {%xchartl=0 (x,y) /Ylre 1 def %chromaticity, not used for (x,y) AnYi i XANMi ik19 get fakt mul put %x BnYi i YANMi ik19 get fakt mul put %y } if %xchartl=0 xchartl 1 eq {%xchartl=1 (a0=x/y, b0=-0.4*z/y) /Ylre 1 def %chromaticity AnYi i XANMi ik19 get YANMi ik19 get FL add div Ylre mul a2 mul fakt mul put %a0 BnYi i ZANMi ik19 get YANMi ik19 get FL add div Ylre mul b2 mul fakt mul put %b0 } if %xchartl=1 xchartl 2 eq {%xchartl=2 (a1=[x-XANT]/y, b1=z/y) /Ylre 1 def %chromaticity AnYi i XANMi ik19 get XANT sub YANMi ik19 get FL add div Ylre mul a2 mul fakt mul put %a1 BnYi i ZANMi ik19 get YANMi ik19 get FL add div Ylre mul b2 mul fakt mul put %b1 } if %xchartl=2 xchartl 3 eq {%xchartl=3 (a2=[x-XANT2]/y, b2=z/y) /XANT2 0.110 def /Ylre 1 def %chromaticity AnYi i XANMi ik19 get XANT2 sub YANMi ik19 get FL add div Ylre mul a2 mul fakt mul put %a2 BnYi i ZANMi ik19 get YANMi ik19 get FL add div Ylre mul b2 mul fakt mul put %b2 } if %xchartl=3 kl 0 eq {%kl=0 AnYi i get BnYi i get 30 0 360 arc fill 0 0 0 setrgbcolor newpath } if %kl=0 kl 1 eq {%kl=1 AnYi i get BnYi i get i i0a eq {moveto} if i i0a 1 add ge i i0e lt and {lineto} if % i i0e eq {lineto stroke newpath} if i i0e eq {lineto closepath stroke newpath} if } if %kl=1 } for %i=i0a,i0e } for %kl=k0a,k0e for points and additional line } for %k=0,24 amount ellipses } if %xchart3=0 plot only if data are availble } bind def %END proc_plot_data %**************************************************************** %allways /proc_DEF_colours {%BEG proc_DEF_colours %Colour Deficiencies /ip1 700 380 sub 5 idiv def %ip=64:700nm /XANP1 XANi ip1 get def /YANP1 YANi ip1 get def /ZANP1 ZANi ip1 get def /id1 505 380 sub 5 idiv def %ip=25:505nm /XAND1 XANi id1 get def /YAND1 YANi id1 get def /ZAND1 ZANi id1 get def /it1 400 380 sub 5 idiv def %ip=4:400nm /XANT1 XANi it1 get def /YANT1 YANi it1 get def /ZANT1 ZANi it1 get def %************************* /XANP XANP1 def /YANP YANP1 def /ZANP ZANP1 def /XAND 1.000 def /YAND 0.001 def /ZAND 0.999 def /XANT 0.171 def /YANT 0.001 def /ZANT 1.000 XANT sub YANT sub def %************************* /XAN00 0.3333 def %Illuminant E /YAN00 0.3333 def /mP YAN00 YANP sub XAN00 XANP sub div def %700nm /bP YAN00 XAN00 mP mul sub def /mD YAN00 YAND sub XAN00 XAND sub div def %xx /bD YAN00 XAN00 mD mul sub def /mT YAN00 YANT sub XAN00 XANT sub div def %xx /bT YAN00 XAN00 mT mul sub def %************************* /mP1 YAN00 YANP1 sub XAN00 XANP1 sub div def %700nm /bP1 YAN00 XAN00 mP1 mul sub def %Deuteranop DM 0 1 0 setrgbcolor /i 505 495 sub 5 idiv 1 add def %2 D (505c,E) /XAND1 XANZi i get def /YAND1 YANZi i get def /mD1 YAN00 YAND1 sub XAN00 XAND1 sub div def %505cnm /bD1 YAN00 XAN00 mD1 mul sub def /mT1 YAN00 YANT1 sub XAN00 XANT1 sub div def %400nm /bT1 YAN00 XAN00 mT1 mul sub def /ishow {0 -40 rmoveto show 0 40 rmoveto} def /eshow {0 60 rmoveto show 0 -60 rmoveto} def /imshow {0 -40 rmoveto (m) show 0 40 rmoveto} def /imaxshow {0 -40 rmoveto (max) show 0 40 rmoveto} def /iminshow {0 -40 rmoveto (min) show 0 40 rmoveto} def } bind def %END proc_DEF_colours %allways if xchart6>=1 /proc_chromaticity {%BEG proc_chromaticity %chromaticity definitions xchartl 0 eq {%xchartl=0 %(x,y) 0 1 79 {/i exch def %i=0,79 AANi i XANi i get put BANi i YANi i get put } for %i=0,79 0 1 16 {/i exch def %i=0,16 AANZi i XANZi i get put BANZi i YANZi i get put } for %i=0,16 %COlOUR VISION DEFICIENCIES /AANP1 XANP1 def /BANP1 YANP1 def /AAND1 XAND1 def /BAND1 YAND1 def /AANT1 XANT1 def /BANT1 YANT1 def /AANP XANP def /BANP YANP def /AAND XAND def /BAND YAND def /AANT XANT def /BANT YANT def %ACHROMATIC COLOUR /AANWL XANWL def /BANWL YANWL def /AANWC XANWC def /BANWC YANWC def } if %xchartl=0 %only for (x,y) %***************** xchartl 1 eq {%xchartl=1 %only for (a,b), (a+,b+) 0 1 79 {/i exch def %i=0,79 AANi i XANi i get YANi i get FL add div a2 mul put BANi i ZANi i get YANi i get FL add div b2 mul put } for %i=0,79 0 1 16 {/i exch def %i=0,16 AANZi i XANZi i get YANZi i get FL add div a2 mul put BANZi i ZANZi i get YANZi i get FL add div b2 mul put } for %i=0,79 %COlOUR VISION DEFICIENCIES /AANP1 XANP1 YANP1 FL add div a2 mul def /BANP1 ZANP1 YANP1 FL add div b2 mul def /AAND1 XAND1 YAND1 FL add div a2 mul def /BAND1 ZAND1 YAND1 FL add div b2 mul def /AANT1 XANT1 YANT1 FL add div a2 mul def /BANT1 ZANT1 YANT1 FL add div b2 mul def /AANP XANP YANP FL add div a2 mul def /BANP ZANP YANP FL add div b2 mul def /AAND XAND YAND FL add div a2 mul def /BAND ZAND YAND FL add div b2 mul def /AANT XANT YANT FL add div a2 mul def /BANT ZANT YANT FL add div b2 mul def %ACHROMATIC COLOUR /AANWL XANWL YANWL FL add div a2 mul def /BANWL ZANWL YANWL FL add div b2 mul def /AANWC XANWC YANWC FL add div a2 mul def /BANWC ZANWC YANWC FL add div b2 mul def } if %xchartl=1 %only for (a,b), (a+,b+) %***************** xchartl 2 eq {%xchartl=2%(a1,b1), (a1+,b1+) 0 1 79 {/i exch def %i=0,79 AANi i XANi i get XANT sub YANi i get FL add div a2 mul put BANi i ZANi i get YANi i get FL add div b2 mul put } for %i=0,79 0 1 16 {/i exch def %i=0,16 AANZi i XANZi i get XANT sub YANZi i get FL add div a2 mul put BANZi i ZANZi i get YANZi i get FL add div b2 mul put } for %i=0,79 %COlOUR VISION DEFICIENCIES /AANP1 XANP1 XANT sub YANP1 FL add div a2 mul def /BANP1 ZANP1 YANP1 FL add div b2 mul def /AAND1 XAND1 XANT sub YAND1 FL add div a2 mul def /BAND1 ZAND1 YAND1 FL add div b2 mul def /AANT1 XANT1 XANT sub YANT1 FL add div a2 mul def /BANT1 ZANT1 YANT1 FL add div b2 mul def /AANP XANP XANT sub YANP FL add div a2 mul def /BANP ZANP YANP FL add div b2 mul def /AAND XAND XANT sub YAND FL add div a2 mul def /BAND ZAND YAND FL add div b2 mul def /AANT XANT XANT sub YANT FL add div a2 mul def /BANT ZANT YANT FL add div b2 mul def %ACHROMATIC COLOUR /AANWL XANWL XANT sub YANWL FL add div a2 mul def /BANWL ZANWL YANWL FL add div b2 mul def /AANWC XANWC XANT sub YANWC FL add div a2 mul def /BANWC ZANWC YANWC FL add div b2 mul def } if %xchartl=2 %only for (a1,b1), (a1+,b1+) %***************** xchartl 3 eq {%xchartl=3%(a2,b2), (a2+,b2+) /XANT2 0.110 def 0 1 79 {/i exch def %i=0,79 AANi i XANi i get XANT2 sub YANi i get FL add div a2 mul put BANi i ZANi i get YANi i get FL add div b2 mul put } for %i=0,79 0 1 16 {/i exch def %i=0,16 AANZi i XANZi i get XANT2 sub YANZi i get FL add div a2 mul put BANZi i ZANZi i get YANZi i get FL add div b2 mul put } for %i=0,79 %COlOUR VISION DEFICIENCIES /AANP1 XANP1 XANT2 sub YANP1 FL add div a2 mul def /BANP1 ZANP1 YANP1 FL add div b2 mul def /AAND1 XAND1 XANT2 sub YAND1 FL add div a2 mul def /BAND1 ZAND1 YAND1 FL add div b2 mul def /AANT1 XANT1 XANT2 sub YANT1 FL add div a2 mul def /BANT1 ZANT1 YANT1 FL add div b2 mul def /AANP XANP XANT2 sub YANP FL add div a2 mul def /BANP ZANP YANP FL add div b2 mul def /AAND XAND XANT2 sub YAND FL add div a2 mul def /BAND ZAND YAND FL add div b2 mul def /AANT XANT XANT2 sub YANT FL add div a2 mul def /BANT ZANT YANT FL add div b2 mul def %ACHROMATIC COLOUR /AANWL XANWL XANT2 sub YANWL FL add div a2 mul def /BANWL ZANWL YANWL FL add div b2 mul def /AANWC XANWC XANT2 sub YANWC FL add div a2 mul def /BANWC ZANWC YANWC FL add div b2 mul def } if %xchartl=3 %only for (a2,b2), (a2+,b2+) } bind def %END proc_chromaticity %*********************************************************** /proc_xaxis_xchartl_coor {%BEG proc_xaxis_xchartl_coor xchartl 0 eq {%xchartl=0,#0 TBIS (x) show xcolor 1 eq {(10) ib6} if }%xchartl=0 {%xchartl#0, 1 case xchart10: abx (x=0,6) xchart10 0 eq {%xchart10=0, abx xchartl 1 ge xchartl 7 le and {%xchartl=1<=7 TBIS (a) show xchartl 1 sub cvicvs ib6 xcolor 1 eq {(,10) ib6} if } if %xchartl=1,7 xchartl 1 eq {%xchartl=1 TBS (=) show TBIS (x) show xcolor 1 eq {(10) ib6} if TBS (/) show TBIS (y) show xcolor 1 eq {(10) ib6} if } if %xchartl=1 xchartl 2 eq {%xchartl=2 TBS (=\050) show TBIS (x) show xcolor 1 eq {(10) ib6} if TBS (-0,171\051/) show TBIS (y) show xcolor 1 eq {(10) ib6} if } if %xchartl=2 xchartl 3 eq {%xchartl=3 TBS (=\050) show TBIS (x) show xcolor 1 eq {(10) ib6} if TBS (-0,110\051/) show TBIS (y) show xcolor 1 eq {(10) ib6} if } if %xchartl=3 } if %xchart10=0, abx } ifelse %xchart=0,#0 } bind def %END proc_xaxis_xchartl_coor %*********************************************************** /proc_yaxis_xchartl_coor {%BEG proc_yaxis_xchartl_coor xchartl 0 eq {%xchartl=0,#0 TBIS (y) show xcolor 1 eq {(10) ib6} if }%xchartl=0 {%xchartl#0, 1 casesxchart10: abx xchart10 0 eq {%xchart10=0, abx xchartl 1 ge xchartl 7 le and {%xchartl=1,7 TBIS (b) show xchartl 1 sub cvicvs ib6 xcolor 1 eq {(,10) ib6} if } if %xchartl=1,7 xchartl 1 eq xchartl 2 eq or xchartl 3 eq or {%xchartl=1,2,3 TBS (=-0,40) show TBIS (z) show xcolor 1 eq {(10) ib6} if TBS (/) show TBIS (y) show xcolor 1 eq {(10) ib6} if } if %xchartl=1,2,3 } if %xchart10=0, abx } ifelse %xchart#0 } bind def %END proc_yaxis_xchartl_coor %********************************************************* /proc_chromaticity_lines {%BEG proc_chromaticity_lines for xchart6>=1 %chromaticity lines and with names for xchart6=2 xchartl 0 eq {%xchartl=0 %(x,y) /xtrans8 600 def /ytrans8 400 def xtrans8 ytrans8 translate %for scala and graphic 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 xcolor 1 eq {TV 0 -40 rmoveto (10) show 0 40 rmoveto TIS} if -300 2800 moveto (y) show xcolor 1 eq {TV 0 -40 rmoveto (10) show 0 40 rmoveto TIS} if TBIS 2600 150 moveto xcolor 0 eq {(CIE 1931) show} if xcolor 1 eq {(CIE 1964) show} if newpath /fakt 4000 def %old %1000 02 01 16 01 .00 .0020 ******************** %ANF PROZSPEP3.FOR: MULYA= 4000 BEO=02 xy-Farbtafel IXY0: 600 400 %600 400 translate %693 19 moveto 5 1 60 {/i exch def %i=5,60 AANi i get fakt mul BANi 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 0 000 000 (530) %30 0 000 000 (535) %31 0 000 000 (540) %32 M 0 000 000 (545) %33 1 050 050 (550) %34 0 000 000 (555) %35 0 000 000 (560) %36 0 000 000 (565) %37 0 000 000 (570) %38 L 1 050 050 (575) %39 0 000 000 (580) %40 0 000 000 (585) %41 0 000 000 (590) %42 0 000 000 (595) %43 1 100 -50 (600) %44 0 000 000 (605) %45 0 000 000 (610) %46 0 000 000 (615) %47 0 000 000 (620) %48 1 100 -50 (625) %49 0 000 000 (630) %50 0 000 000 (635) %51 0 000 000 (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 AANi i get fakt mul BANi i get fakt mul 30 0 360 arc fill %400,425,...,700 0 0 0 1 setcmykcolor AANi i get fakt mul BANi i get fakt mul 30 0 360 arc stroke %400,425,...,700 } if %xytshift=1 } for %i=5,1,60 TBIV 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 AANi i get fakt mul xytshift i41 get add BANi 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 0 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 1 050 -100 (560c,E) %14 S 0 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 TBIV 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 /AANWLf XANWL fakt mul def /BANWLf YANWL fakt mul def /AANWCf XANWC fakt mul def /BANWCf YANWC fakt mul def /i 400 380 sub 5 idiv def %4 T /AANF AANi i get fakt mul def /BANF BANi i get fakt mul def 0.5 0 0.5 setrgbcolor AANWLf BANWLf moveto AANF BANF lineto stroke AANWLf 300 sub BANWLf 900 sub moveto TIK (T) show (S) is4 %TS /i 450 380 sub 5 idiv def %14 S /AANF AANi i get fakt mul def /BANF BANi i get fakt mul def 1 0 1 setrgbcolor AANWLf BANWLf moveto AANF BANF lineto stroke %AANF 500 add BANF 1000 sub moveto TIK (S) show (m) is4 %450 S AANWLf 750 sub BANWLf 1000 sub moveto TIK (S) show (m) is4 %450 S /i 470 380 sub 5 idiv def %18 B /AANF AANi i get fakt mul def /BANF BANi i get fakt mul def 0 0 1 setrgbcolor 50 setlinewidth AANWLf BANWLf moveto AANF BANF lineto stroke %470 Be (Lc) 20 setlinewidth AANF 050 sub BANF 250 add moveto TIK (B) show TV (e) is4 /i 495 380 sub 5 idiv def %23 Rc /AANF AANi i get fakt mul def /BANF BANi i get fakt mul def 0 0 0 setrgbcolor AANWLf BANWLf moveto AANF BANF lineto stroke %495 Rc (M=S) AANF 120 add BANF 400 sub moveto TIK (M) show (l) iy4 TK (=) show TIK (S) show (l) iy4 /i 505 380 sub 5 idiv def %26 505c,E /AANF AANi i get fakt mul def /BANF BANi i get fakt mul def 0 0 0 setrgbcolor AANWLf BANWLf moveto AANF BANF lineto stroke %505 V (M=S) AANF 250 add BANF 300 sub moveto TIK (V') show 0 0 0 setrgbcolor AANF 050 add BANF 550 sub moveto TIK (V) show (l) iy4 TK (=) show TIK (S) show (l) iy4 /i 520 380 sub 5 idiv def %28 G /AANF AANi i get fakt mul def /BANF BANi i get fakt mul def 0 1 0 setrgbcolor 50 setlinewidth AANWLf BANWLf moveto AANF BANF lineto stroke %520 G (Y=B) 20 setlinewidth AANF 200 add BANF 350 sub moveto TIK (G) show TS (e) is4 %1 1 0 setrgbcolor %AANF 100 sub BANF 700 sub moveto TIK (Y) show %(l) iy4 TK (=) show %0 0 1 setrgbcolor TIK (B) show (l) iy4 /i 540 380 sub 5 idiv def %32 M /AANF AANi i get fakt mul def /BANF BANi i get fakt mul def 0 0 0 setrgbcolor AANWLf BANWLf moveto AANF BANF lineto stroke %540 M AANF 100 sub BANF 100 add moveto TIK (M) show (m) is4 /i 555 380 sub 5 idiv def %35 V /AANF AANi i get fakt mul def /BANF BANi i get fakt mul def 0 0 0 setrgbcolor AANWLf BANWLf moveto AANF BANF lineto stroke %555 V (L=M) AANF 000 add BANF 000 add moveto TIK (V) show (m) is4 /i 570 380 sub 5 idiv def %38 L /AANF AANi i get fakt mul def /BANF BANi i get fakt mul def 1 1 0 setrgbcolor 50 setlinewidth AANWLf BANWLf moveto AANF BANF lineto stroke %570 L=Y 20 setlinewidth AANF 050 sub BANF 150 add moveto TIK (Y) show TV (e) is4 /i 620 380 sub 5 idiv def %48 /AANF AANi i get fakt mul def /BANF BANi i get fakt mul def 1 0 0 setrgbcolor 50 setlinewidth AANWLf BANWLf moveto AANF BANF lineto stroke %620 R 20 setlinewidth AANF 050 add BANF 250 add moveto TIK (R) show TV (e) is4 /i 700 380 sub 5 idiv def %64 R /AANF AANi i get fakt mul def /BANF BANi i get fakt mul def 1 0 0 setrgbcolor AANWLf BANWLf moveto AANF BANF lineto stroke %700 %Protanop PL 1 0 0 setrgbcolor AANF 200 sub BANF 200 sub moveto TIK (P) show TS (L) is4 %PL %Deuteranop DM 0 1 0 setrgbcolor /i 505 495 sub 5 idiv 1 add def %2 D (505c,E) /AANF AANZi i get fakt mul def /BANF BANZi i get fakt mul def 0 1 0 setrgbcolor AANWLf BANWLf moveto AANF BANF lineto stroke AANF 600 sub BANF 000 sub moveto TIK (D) show (M) is4 %DM newpath 0 0 0 setrgbcolor xchart5 1 ge {%xchart5=1 AANWLf BANWLf %achromatic 40 0 360 arc stroke newpath } if %xchart5=1 xchart5 2 eq {%xchart5=2 0 0 0 setrgbcolor AANWLf 000 add BANWLf 300 sub moveto %achromatic TBS TELI xchartx get show %text illuminant } if %xchart5=2 xchart3 0 eq {%Munsell AANWCf 550 add BANWCf 250 add moveto TBV (1) show AANWCf 350 add BANWCf 100 add moveto TBV (2) show AANWCf 200 add BANWCf 050 add moveto TBV (5) show } if %Munsell xtrans8 neg ytrans8 neg translate %for scala and grafic %ENDE: 1 } if %xchartl=0 %***************** xchartl 1 eq {%xchartl=1,2 %(a,b), (a+,b+) /xtrans9a 0500 def /xtrans9 1300 def /ytrans9 3200 def xtrans9a ytrans9 translate 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 posax posay moveto proc_xaxis_xchartl_coor posbx posby moveto 90 rotate proc_yaxis_xchartl_coor -90 rotate xchart6 3 eq {%xchart6=3 4150 300 moveto TBS (Parame\255) show 4150 100 moveto TBS (ter:) show TBIS ( Y) show TV } if %xchart6>=2 xtrans9a neg ytrans9 neg translate %1000 02 01 16 01-.03**************************************** %ANF PROZSPEP.FOR: MULYA= 1000 BEO=02 ab-Farbtafel IXY0: 1500 3200 xtrans9 ytrans9 translate /fakt 1000 def 5 1 60 {/i exch def %i=5,60 AANi i get fakt mul BANi 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) %00 0 000 000 (385) %01 0 000 000 (390) %02 0 000 000 (395) %03 0 -375 -250 (400) %04 0 000 000 (405) %05 0 000 000 (410) %06 0 000 000 (415) %07 0 000 000 (420) %08 0 -500 -100 (425) %09 0 000 000 (430) %10 0 000 000 (435) %11 0 000 000 (440) %12 0 000 000 (445) %13 0 -350 -030 (450) %14 0 000 000 (455) %15 0 000 000 (460) %16 0 000 000 (465) %17 0 000 000 (470) %18 0 000 000 (475) %19 1 -300 -100 (480) %20 0 000 000 (485) %21 1 -300 -100 (490) %22 0 000 000 (495) %23 1 -300 -100 (500) %24 0 000 000 (505) %25 0 000 000 (510) %26 0 000 000 (515) %27 0 000 000 (520) %28 1 -200 060 (525) %29 0 000 000 (530) %30 0 000 000 (535) %31 0 000 000 (540) %32 0 000 000 (545) %33 0 000 000 (550) %34 0 000 000 (555) %35 0 000 000 (560) %36 0 000 000 (565) %37 0 000 000 (570) %38 1 000 060 (575) %39 0 000 000 (580) %40 0 000 000 (585) %41 0 000 000 (590) %42 0 000 000 (595) %43 1 -150 060 (600) %44 0 000 000 (605) %45 0 000 000 (610) %46 0 000 000 (615) %47 0 000 000 (620) %48 1 -150 060 (625) %49 0 000 000 (630) %50 0 000 000 (635) %51 0 000 000 (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 -150 (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 AANi i get fakt mul BANi i get fakt mul 30 0 360 arc fill %400,425,...,700 0 0 0 1 setcmykcolor AANi i get fakt mul BANi i get fakt mul 30 0 360 arc stroke %400,425,...,700 } if %xytshift=1 } for %i=5,1,60 TBIV 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 AANi i get fakt mul xytshift i41 get add BANi 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 060 (700) %0 normal 1 070 -50 (495c,E) %1 1 070 -50 (500c,E) %2 1 070 -50 (505c,E) %3 1 070 -50 (510c,E) %4 0 050 -100 (515c,E) %5 0 050 -100 (520c,E) %6 1 070 -50 (525c,E) %7 0 050 -100 (530c,E) %8 0 050 -100 (535c,E) %9 1 050 -100 (540c,E) %10 0 050 -100 (545c,E) %11 0 070 -50 (550c,E) %12 0 050 -100 (555c,E) %13 0 050 -100 (560c,E) %14 S 1 070 -50 (565c,E) %15 0 -100 -150 (400) %16 see normal ] def 0 1 16 {/i exch def %i=0,1,16 /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,425,...,700 0 0 0 1 setcmykcolor AANZi i get fakt mul BANZi i get fakt mul 30 0 360 arc stroke %400,425,...,700 } if %xytshiftZ=1 } for %i=5,1,60 TBIV 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 /AANWLf AANWL fakt mul def /BANWLf BANWL fakt mul def /AANWCf AANWC fakt mul def /BANWCf BANWC fakt mul def /tabj 200 array def %20x12 /tabj %00 01 02 03 04 05 06 07 08 09 10 12 %JN lam la0 color shix shiy Na1 in1 Na2 in2 [01 400 380 0.5 0.0 0.5 1100 -2000 (T) (S) () () 01 450 380 1.0 0.0 1.0 0300 -2000 (S) (m) () () 01 470 380 0.0 0.0 1.0 -0300 -1400 (B) (e) () () 01 495 380 0.0 0.0 0.0 -0700 -0100 (M) (l) (=S) (l) 01 505 380 0.0 0.0 0.0 -0750 0000 (V) (l) (=S) (l) 01 520 380 0.0 1.0 0.0 -0450 0150 (G) (e) () () 00 520 380 0.0 0.0 0.0 -0800 -0050 (Y) (l) (=B) (l) 01 540 380 0.0 0.0 0.0 -0100 0100 (M) (m) () () 01 570 380 1.0 1.0 0.0 -0150 0100 (Y) (e) () () 00 575 380 1.0 1.0 0.0 -0100 0250 (Y) (e) () () 01 620 380 1.0 0.0 0.0 -0300 0150 (R) (e) () () 01 700 380 1.0 0.0 0.0 -0550 -0400 (P) (L) () () 01 505 490 0.0 1.0 0.0 -0600 -0180 (D) (M) () () ] def 0 1 12 {/j exch def %j=0,12 /j0 j 12 mul def /l01 j0 01 add def /l02 j0 02 add def /co1 j0 03 add def /co2 j0 04 add def /co3 j0 05 add def /po1 j0 06 add def /po2 j0 07 add def /n11 j0 08 add def /n12 j0 09 add def /n21 j0 10 add def /n22 j0 11 add def tabj j0 get 1 eq {%JN=1 /i tabj l01 get tabj l02 get sub 5 idiv def /AANF AANi i get fakt mul def /BANF BANi i get fakt mul def j 12 eq {/AANF AANZi i get fakt mul def /BANF BANZi i get fakt mul def } if tabj co1 get tabj co2 get tabj co3 get setrgbcolor tabj l01 get 470 eq tabj l01 get 520 eq or tabj l01 get 570 eq or tabj l01 get 620 eq or {50 setlinewidth} if AANWLf BANWLf moveto AANF BANF lineto stroke 20 setlinewidth xchart6 2 ge {%xchart6>=2 %add text j 2 le {AANWLf tabj po1 get add BANWLf tabj po2 get add moveto} %relative achromatic {AANF tabj po1 get add BANF tabj po2 get add moveto} ifelse TIK tabj n11 get show tabj n12 get (l) eq {(l) iy4} {tabj n12 get ishow} ifelse TIK tabj n21 get show tabj n22 get (l) eq {(l) iy4} {tabj n22 get ishow} ifelse } if %xchart6>=2 } if %JN=1 } for %j=0,12 newpath 0 0 0 setrgbcolor xchart5 1 ge {%xchart5=1 AANWLf BANWLf %achromatic 40 0 360 arc stroke newpath } if %xchart5=1 xchart5 2 eq {%xchart5=2 0 0 0 setrgbcolor AANWLf 000 add BANWLf 300 sub moveto %achromatic TBS TELI xchartx get show %text illuminant } if %xchart5=2 xchart3 0 eq {%Munsell AANWCf 550 add BANWCf 250 add moveto TBV (1) show AANWCf 350 add BANWCf 100 add moveto TBV (2) show AANWCf 200 add BANWCf 050 add moveto TBV (5) show } if %Munsell xtrans9 neg ytrans9 neg translate %ENDE: 1 } if %xchartl=1 %***************** xchartl 2 eq {%xchartl=2 %(a1,b1), (a1+,b1+) /xtrans9a 0500 def /xtrans9 1300 def /ytrans9 3200 def xtrans9a ytrans9 translate 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 posax posay moveto proc_xaxis_xchartl_coor posbx posby moveto 90 rotate proc_yaxis_xchartl_coor -90 rotate xchart6 3 eq {%xchart6=3 4150 300 moveto TBS (Parame\255) show 4150 100 moveto TBS (ter:) show TBIS ( Y) show TV } if %xchart6>=2 xtrans9a neg ytrans9 neg translate %1000 02 01 16 01-.03**************************************** %ANF PROZSPEP.FOR: MULYA= 1000 BEO=02 ab-Farbtafel IXY0: 1500 3200 xtrans9 ytrans9 translate /fakt 1000 def 5 1 60 {/i exch def %i=5,60 AANi i get fakt mul BANi 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) %00 0 000 000 (385) %01 0 000 000 (390) %02 0 000 000 (395) %03 0 -375 -250 (400) %04 0 000 000 (405) %05 0 000 000 (410) %06 0 000 000 (415) %07 0 000 000 (420) %08 0 -500 -100 (425) %09 0 000 000 (430) %10 0 000 000 (435) %11 0 000 000 (440) %12 0 000 000 (445) %13 0 -350 -030 (450) %14 0 000 000 (455) %15 0 000 000 (460) %16 0 000 000 (465) %17 0 000 000 (470) %18 0 000 000 (475) %19 1 -300 -100 (480) %20 0 000 000 (485) %21 1 -300 -100 (490) %22 0 000 000 (495) %23 1 -300 -100 (500) %24 0 000 000 (505) %25 0 000 000 (510) %26 0 000 000 (515) %27 0 000 000 (520) %28 1 -200 060 (525) %29 0 000 000 (530) %30 0 000 000 (535) %31 0 000 000 (540) %32 0 000 000 (545) %33 0 000 000 (550) %34 0 000 000 (555) %35 0 000 000 (560) %36 0 000 000 (565) %37 0 000 000 (570) %38 1 000 060 (575) %39 0 000 000 (580) %40 0 000 000 (585) %41 0 000 000 (590) %42 0 000 000 (595) %43 1 -150 060 (600) %44 0 000 000 (605) %45 0 000 000 (610) %46 0 000 000 (615) %47 0 000 000 (620) %48 1 -150 060 (625) %49 0 000 000 (630) %50 0 000 000 (635) %51 0 000 000 (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 -150 (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 AANi i get fakt mul BANi i get fakt mul 30 0 360 arc fill %400,425,...,700 0 0 0 1 setcmykcolor AANi i get fakt mul BANi i get fakt mul 30 0 360 arc stroke %400,425,...,700 } if %xytshift=1 } for %i=5,1,60 TBIV 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 AANi i get fakt mul xytshift i41 get add BANi 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 060 (700) %0 normal 1 070 -50 (495c,E) %1 1 070 -50 (500c,E) %2 1 070 -50 (505c,E) %3 1 070 -50 (510c,E) %4 0 050 -100 (515c,E) %5 0 050 -100 (520c,E) %6 1 070 -50 (525c,E) %7 0 050 -100 (530c,E) %8 0 050 -100 (535c,E) %9 1 050 -100 (540c,E) %10 0 050 -100 (545c,E) %11 0 070 -50 (550c,E) %12 0 050 -100 (555c,E) %13 0 050 -100 (560c,E) %14 S 1 070 -50 (565c,E) %15 0 -100 -150 (400) %16 see normal ] def 0 1 16 {/i exch def %i=0,1,16 /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,425,...,700 0 0 0 1 setcmykcolor AANZi i get fakt mul BANZi i get fakt mul 30 0 360 arc stroke %400,425,...,700 } if %xytshiftZ=1 } for %i=5,1,60 TBIV 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 /AANWLf AANWL fakt mul def /BANWLf BANWL fakt mul def /AANWCf AANWC fakt mul def /BANWCf BANWC fakt mul def /tabj 200 array def %20x12 /tabj %00 01 02 03 04 05 06 07 08 09 10 12 %JN lam la0 color shix shiy Na1 in1 Na2 in2 [01 400 380 0.5 0.0 0.5 0100 -2000 (T) (S) () () 01 450 380 1.0 0.0 1.0 -0600 -2000 (S) (m) () () 01 470 380 0.0 0.0 1.0 -0800 -1300 (B) (e) () () 01 495 380 0.0 0.0 0.0 -0700 -0100 (M) (l) (=S) (l) 01 505 380 0.0 0.0 0.0 -0750 0000 (V) (l) (=S) (l) 01 520 380 0.0 1.0 0.0 -0450 0150 (G) (e) () () 00 520 380 0.0 0.0 0.0 -0800 -0050 (Y) (l) (=B) (l) 01 540 380 0.0 0.0 0.0 -0100 0100 (M) (m) () () 01 570 380 1.0 1.0 0.0 -0150 0100 (Y) (e) () () 00 575 380 1.0 1.0 0.0 -0100 0250 (Y) (e) () () 01 620 380 1.0 0.0 0.0 -0300 0150 (R) (e) () () 01 700 380 1.0 0.0 0.0 -0550 -0400 (P) (L) () () 01 505 490 0.0 1.0 0.0 -0600 -0180 (D) (M) () () ] def 0 1 12 {/j exch def %j=0,12 /j0 j 12 mul def /l01 j0 01 add def /l02 j0 02 add def /co1 j0 03 add def /co2 j0 04 add def /co3 j0 05 add def /po1 j0 06 add def /po2 j0 07 add def /n11 j0 08 add def /n12 j0 09 add def /n21 j0 10 add def /n22 j0 11 add def tabj j0 get 1 eq {%JN=1 /i tabj l01 get tabj l02 get sub 5 idiv def /AANF AANi i get fakt mul def /BANF BANi i get fakt mul def j 12 eq {/AANF AANZi i get fakt mul def /BANF BANZi i get fakt mul def } if tabj co1 get tabj co2 get tabj co3 get setrgbcolor tabj l01 get 470 eq tabj l01 get 520 eq or tabj l01 get 570 eq or tabj l01 get 620 eq or {50 setlinewidth} if AANWLf BANWLf moveto AANF BANF lineto stroke 20 setlinewidth xchart6 2 ge {%xchart6>=2 %add text j 2 le {AANWLf tabj po1 get add BANWLf tabj po2 get add moveto} %relative achromatic {AANF tabj po1 get add BANF tabj po2 get add moveto} ifelse TIK tabj n11 get show tabj n12 get (l) eq {(l) iy4} {tabj n12 get ishow} ifelse TIK tabj n21 get show tabj n22 get (l) eq {(l) iy4} {tabj n22 get ishow} ifelse } if %xchart6>=2 } if %JN=1 } for %j=0,12 newpath 0 0 0 setrgbcolor xchart5 1 ge {%xchart5=1 AANWLf BANWLf %achromatic 40 0 360 arc stroke newpath } if %xchart5=1 xchart5 2 eq {%xchart5=2 0 0 0 setrgbcolor AANWLf 000 add BANWLf 300 sub moveto %achromatic TBS TELI xchartx get show %text illuminant } if %xchart5=2 xchart3 0 eq {%Munsell AANWCf 550 add BANWCf 250 add moveto TBV (1) show AANWCf 350 add BANWCf 100 add moveto TBV (2) show AANWCf 200 add BANWCf 050 add moveto TBV (5) show } if %Munsell xtrans9 neg ytrans9 neg translate %ENDE: 2 } if %xchartl=2 %*********************************************************** xchartl 3 eq {%xchartl=3 (a2,b2), (a2+,b2+) /xtrans10a 0500 def /xtrans10 1300 def /ytrans10 3200 def xtrans10a ytrans10 translate %for text and grafic 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 posax posay moveto proc_xaxis_xchartl_coor posbx posby moveto 90 rotate proc_yaxis_xchartl_coor -90 rotate xchart6 3 eq {%xchart6=3 4150 -200 moveto TBS (Parame\255) show 4150 -400 moveto TBS (ter:) show TBIS ( Y) show TV } if %xchart6>=2 xtrans10a neg ytrans10 neg translate %for text and grafic %1000 02 01 16 01-.03**************************************** %ANF PROZSPEP.FOR: MULYA= 1000 BEO=02 ab-Farbtafel IXY0: 1500 3200 xtrans10 ytrans10 translate %for text and grafic /fakt 1000 def 5 1 60 {/i exch def %i=5,60 AANi i get fakt mul BANi 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) %00 0 000 000 (385) %01 0 000 000 (390) %02 0 000 000 (395) %03 0 -375 -250 (400) %04 0 000 000 (405) %05 0 000 000 (410) %06 0 000 000 (415) %07 0 000 000 (420) %08 0 -500 -100 (425) %09 0 000 000 (430) %10 0 000 000 (435) %11 0 000 000 (440) %12 0 000 000 (445) %13 0 -350 -030 (450) %14 0 000 000 (455) %15 0 000 000 (460) %16 0 000 000 (465) %17 0 000 000 (470) %18 0 000 000 (475) %19 1 -300 -100 (480) %20 0 000 000 (485) %21 1 -300 -100 (490) %22 0 000 000 (495) %23 1 -300 -100 (500) %24 0 000 000 (505) %25 0 000 000 (510) %26 0 000 000 (515) %27 0 000 000 (520) %28 1 -250 060 (525) %29 0 000 000 (530) %30 0 000 000 (535) %31 0 000 000 (540) %32 0 000 000 (545) %33 0 000 000 (550) %34 0 000 000 (555) %35 0 000 000 (560) %36 0 000 000 (565) %37 0 000 000 (570) %38 1 050 060 (575) %39 0 000 000 (580) %40 0 000 000 (585) %41 0 000 000 (590) %42 0 000 000 (595) %43 1 -150 060 (600) %44 0 000 000 (605) %45 0 000 000 (610) %46 0 000 000 (615) %47 0 000 000 (620) %48 1 -150 060 (625) %49 0 000 000 (630) %50 0 000 000 (635) %51 0 000 000 (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 -150 (700) %64 ] def 0 1 64 {/i exch def %i=0,64 /i40 i 4 mul def xytshift i40 get 1 eq {%xytshift=1 0 0 0 0 setcmykcolor AANi i get fakt mul BANi i get fakt mul 30 0 360 arc fill %400,425,...,700 0 0 0 1 setcmykcolor AANi i get fakt mul BANi i get fakt mul 30 0 360 arc stroke %400,425,...,700 } if %xytshift=1 } for %i=0,64 TBIV 0 1 59 {/i exch def %i=0,59 /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 AANi i get fakt mul xytshift i41 get add BANi i get fakt mul xytshift i42 get add moveto xytshift i43 get show } if %xytshift=1 } for %i=0,59 newpath /xytshiftZ 320 array def %min 4x65 /xytshiftZ [ 1 -100 060 (700) %0 normal 1 070 -50 (495c,E) %1 1 070 -50 (500c,E) %2 0 070 -50 (505c,E) %3 1 070 -50 (510c,E) %4 0 050 -100 (515c,E) %5 0 050 -100 (520c,E) %6 1 070 -50 (525c,E) %7 0 050 -100 (530c,E) %8 0 050 -100 (535c,E) %9 1 050 -100 (540c,E) %10 0 050 -100 (545c,E) %11 0 070 -50 (550c,E) %12 0 050 -100 (555c,E) %13 0 050 -100 (560c,E) %14 S 1 070 -50 (565c,E) %15 0 -100 -150 (400) %16 see normal ] def 0 1 16 {/i exch def %i=0,16 /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,425,...,700 0 0 0 1 setcmykcolor AANZi i get fakt mul BANZi i get fakt mul 30 0 360 arc stroke %400,425,...,700 } if %xytshiftZ=1 } for %i=0,16 TBIV 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 /AANWLf AANWL fakt mul def /BANWLf BANWL fakt mul def /AANWCf AANWC fakt mul def /BANWCf BANWC fakt mul def /tabj 240 array def %20x12 /tabj %00 01 02 03 04 05 06 07 08 09 10 12 %JN lam la0 color shix shiy Na1 in1 Na2 in2 [01 400 380 0.5 0.0 0.5 0400 -2000 (T) (S) () () 01 450 380 1.0 0.0 1.0 -0300 -2000 (S) (m) () () 01 470 380 0.0 0.0 1.0 -0650 -1400 (B) (e) () () 01 495 380 0.0 0.0 0.0 -0750 -0100 (M) (l) (=S) (l) 01 505 380 0.0 0.0 0.0 -0750 -0050 (V) (l) (=S) (l) 01 520 380 0.0 1.0 0.0 -0500 0150 (G) (e) () () 00 520 380 0.0 0.0 0.0 -0800 -0050 (Y) (l) (=B) (l) 01 540 380 0.0 0.0 0.0 -0150 0100 (M) (m) () () 01 570 380 1.0 1.0 0.0 -0150 0100 (Y) (e) () () 00 575 380 1.0 1.0 0.0 -0100 0250 (Y) (e) () () 01 620 380 1.0 0.0 0.0 -0300 0150 (R) (e) () () 01 700 380 1.0 0.0 0.0 -0550 -0400 (P) (L) () () 01 505 490 0.0 1.0 0.0 -0600 -0130 (D) (M) () () ] def 0 1 12 {/j exch def %j=0,12 /j0 j 12 mul def /l01 j0 01 add def /l02 j0 02 add def /co1 j0 03 add def /co2 j0 04 add def /co3 j0 05 add def /po1 j0 06 add def /po2 j0 07 add def /n11 j0 08 add def /n12 j0 09 add def /n21 j0 10 add def /n22 j0 11 add def tabj j0 get 1 eq {%JN=1 /i tabj l01 get tabj l02 get sub 5 idiv def /AANF AANi i get fakt mul def /BANF BANi i get fakt mul def j 12 eq {/AANF AANZi i get fakt mul def /BANF BANZi i get fakt mul def } if tabj co1 get tabj co2 get tabj co3 get setrgbcolor tabj l01 get 470 eq tabj l01 get 520 eq or tabj l01 get 570 eq or tabj l01 get 620 eq or {50 setlinewidth} if AANWLf BANWLf moveto AANF BANF lineto stroke 20 setlinewidth xchart6 2 ge {%xchart6>=2 %add text j 2 le {AANWLf tabj po1 get add BANWLf tabj po2 get add moveto} %relative achromatic {AANF tabj po1 get add BANF tabj po2 get add moveto} ifelse TIK tabj n11 get show tabj n12 get (l) eq {(l) iy4} {tabj n12 get ishow} ifelse TIK tabj n21 get show tabj n22 get (l) eq {(l) iy4} {tabj n22 get ishow} ifelse } if %xchart6>=2 } if %JN=1 } for %j=0,12 newpath 0 0 0 setrgbcolor xchart5 1 ge {%xchart5=1 AANWLf BANWLf %achromatic 40 0 360 arc stroke newpath } if %xchart5=1 xchart5 2 eq {%xchart5=2 0 0 0 setrgbcolor AANWLf 000 add BANWLf 300 sub moveto %achromatic TBS TELI xchartx get show %text illuminant } if %xchart5=2 xchart3 0 eq {%Munsell AANWCf 550 add BANWCf 250 add moveto TBV (1) show AANWCf 350 add BANWCf 100 add moveto TBV (2) show AANWCf 200 add BANWCf 050 add moveto TBV (5) show } if %Munsell xtrans10 neg ytrans10 neg translate %for text and grafic %ENDE: 3 } if %xchartl=3 } bind def %END proc_chromaticity_lines %********************************************************** %%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 {3 lanind eq {show} {pop} ifelse} bind def /showfr {2 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 1 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 /xchart5f where {pop /xchart5 xchart5f def} %new {/xchart5 2 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 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 70 90 translate 0.01 MM dup scale gsave %xchart3 0 def %with Munsell colours %xchart3 1 def %with Ostwald colours %xchart3 2 det %without any colour %/xchart3 0 def %diagram 0:Munsell colours, 1:Ostwald colours, 2:- %xchart5 0 def %without marc illuminant and text %xchart5 1 def %with marc illuminant %xchart5 2 def %with marc illuminant and text /xchart5 2 def %0:-, 1:illuminant, 2:illuminant and text %xchart6 0 def %without chromaticity_lines %xchart6 1 def %with chromaticity_lines %xchart6 2 def %with chromaticity_lines&N %xchart6 3 def %with chromaticity_lines&N&P /xchart6 2 def %0:-, 1:CL 2:CL&N 3:CL&N&P %xchart7 0 def %Ostwald colours without Name or Y %xchart7 1 def %Ostwald colours with Name %xchart7 2 def %Ostwald colours with CIE Y /xchart7 2 def %0:-, 1:Name, 2:Y %xchartl with 0 1 2 3 4 5 6 7 %xchart8 0 def %0:Pxx (P60, P55, P50, P45, P40, P35, P30, P25) colours %xchart8 1 def %1:Dxx (D65, D50, P40, A00, E00, C00, P00, Q00) colours /xchart8 1 def %0:Pxx, 1:Dxx colours %xchart9 0 def %for Y11-7R.EPS -> Table XYZ, not used here %xchart9 1 def %for Y11-7R.EPS -> Table CAB, not used here %xchart9 2 def %for Y11-7R.EPS -> Table (a,b), not used here /xchart9 0 def %Table 0:(XYZ), 1:(CAB), 2(ab) %xchart10 0 def %for Y10G00NA.PS6.PS -> chromaticity coordinates (ai,bi) %xchart10 1 def %for Y10G00NA.PS6.PS -> chromatic values (Ai,Bi) %xchart10 2 def %for Y10G00NA.PS6.PS -> chroma (A*i,B*i) /xchart10 0 def %diagram 0:(ai,bi), 1:(Ai,Bi), 2:(A*i,B*i) /posax 2600 def /posay 0550 def /posbx -275 def /posby -3150 def /FL 0.00001 def /Y18 18 def %grey background /n0e 0.3333 def /n1e 1.0000 def %with (a, b) %/n1e 0.3333 def %with (a', b') %/xchart3 2 def %without any colour only diagrams %if xchart3=2 %/xchart5 0 def %without marc illuminant and text %/xchart5 1 def %with marc illuminant %/xchart5 2 def %with marc illuminant and text %/xchart6 0 def %without chromaticity_lines %/xchart6 1 def %with chromaticity_lines %/xchart6 2 def %with chromaticity_lines and names /xchart3 0 def %Illuminants colours %if xchart3=0 %Illuminants colours %/xchart5 0 def %without marc illuminant and text %/xchart5 1 def %with marc illuminant /xchart5 2 def %with marc illuminant and text %/xchart6 0 def %without chromaticity_lines %/xchart6 1 def %with chromaticity_lines /xchart6 2 def %with chromaticity_lines and names %/xchart3 1 def %not used %/xchart3 2 def %without any colours %/TELI0 [(P60) (P55) (P50) (P45) (P40) (P35) (P30) (P25)] def %7 illumin %/TELI1 [(D65) (D50) (P40) (A00) (E00) (C00) (P00) (Q00)] def %7 illumin. /xchart7 0 def %0:P60, 1:P55, 2:P50, 3:P45, 4:P40, 5:P35, 6:P30, 7:P25 %0:D65, 1:D50, 2:P40, 3:A00, 4:E00, 5:C00, 6:P00, 7:Q00 /xchart8 1 def %0:Pxx colour series, 1:Dxx colour series %xchart9 0 def %for Y11-7R.EPS -> Table XYZ, not used here %xchart9 1 def %for Y11-7R.EPS -> Table CAB, not used here %xchart9 2 def %for Y11-7R.EPS -> Table (a,b), not used here %xchart10 0 def %for Y10G00NA.PS6.PS -> chromaticity coordinates (ai,bi) %xchart10 1 def %for Y10G00NA.PS6.PS -> chromatic values (Ai,Bi) %xchart10 2 def %for Y10G00NA.PS6.PS -> chroma (A*i,B*i) /xchartx xchart7 def %1 1 1 {/xchartx exch def %xchartx=0,7 %max 8 illuminants gsave /xbtex0 1 def xbtex0 1 eq {%xbtex0=1 TV 0 setgray 20 setlinewidth 0 0 12100 08600 0.0 0.0 0.0 0.0 colrecfi %area white grey 0 0 12100 08600 0.0 0.0 0.0 1.0 colrecst %Rahmen Schwarz 100 -150 moveto (DGO31-7N) show } if %xbtex0=1 /k0a 0 def xchart8 0 eq {/k0e 1 def}{/k0e 0 def} ifelse %allways proc_XYZ_colours proc_DEF_colours xchart3 0 eq {%BEG proc_data proc_data } if %END proc_data /xchartl xchart def %shift at beginn for later change 0 1 3 {/xchartl exch def %xchartl=0,3 gsave xchartl 0 eq { 100 4500 translate} if xchartl 1 eq { 6100 4500 translate} if xchartl 2 eq { 100 0250 translate} if xchartl 3 eq { 6100 0250 translate} if 150 /Times-ISOL1 FS 0 setgray 100 -150 moveto (DGO30-) show xchartl 5 add cvishow (A) show %A /xwidth 5900 def /ywidth 4000 def 0.0 0.0 0.0 0.3 setcmykcolor 0 0 moveto xwidth 0 rlineto 0 ywidth rlineto xwidth neg 0 rlineto closepath fill 0 setlinewidth 0 0 moveto xwidth 0 rlineto 0 ywidth rlineto xwidth neg 0 rlineto closepath clip 20 setlinewidth 0 0 xwidth ywidth 0.0 0.0 0.0 1.0 colrecst %frame black /xtexti 96 array def /ytexti 96 array def 0 0 0 1 setcmykcolor /xchart12 xchartl 12 mul def %xchart3 0 eq {%xchart3=0 %Illuminants /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 2000 2000 2000 2800 2800 4000 2800 4000 2800 4000 2800 4000 %0 3000 3000 3000 1700 1700 1800 0600 1800 0600 1800 0600 1800 %1 3000 3000 3000 1700 1700 1900 0700 1900 0700 1900 0700 1900 %2 3000 3000 3000 0600 0600 1900 0600 1900 0600 1900 0600 1900 %3 3000 3000 3000 1700 1700 1900 0700 1900 0700 1900 0700 1900 %4 3000 3000 3000 1700 1700 1900 0700 1900 0700 1900 0700 1900 %5 3000 3000 3000 1700 1700 1900 0700 1900 0700 1900 0700 1900 %6 3000 3000 3000 0600 0600 1900 0600 1900 0600 1900 0600 1900 %7 ] def /ytexti [ 3800 3580 3360 3140 2920 2920 2700 2700 2480 2480 2260 2260 %0 0500 0280 0060 1600 1380 1380 1160 1160 0940 0940 0720 0720 %1 0500 0280 0060 1600 1380 1380 1160 1160 0940 0940 0720 0720 %2 0500 0280 0060 1600 1380 1380 1160 1160 0940 0940 0720 0720 %3 0500 0280 0060 1600 1380 1380 1160 1160 0940 0940 0720 0720 %4 0500 0280 0060 1600 1380 1380 1160 1160 0940 0940 0720 0720 %5 0500 0280 0060 1600 1380 1380 1160 1160 0940 0940 0720 0720 %6 0500 0280 0060 1600 1380 1380 1160 1160 0940 0940 0720 0720 %7 ] def %} if %xchart3=0 %Illuminants TBS 0 0 0 1 setcmykcolor xchart3 0 eq {%xchart3=0 %Illuminants xtexti xchart12 0 add get ytexti xchart12 0 add get moveto TBIS (OSA) show TBS (\255System) showde %0DGO30-7 02581 ( System) showea %1DGO30-7 02581 TBIS (, Y) show TBV (W) ishow TBS K 0 eq {(=100) show}{(=88,6) show} ifelse xtexti xchart12 1 add get ytexti xchart12 1 add get moveto xchart8 0 eq {(P\255series) showea (P\255Serie) showde} {(D\255series) showea (D\255Serie) showde} ifelse xcolor 0 eq {(, 2\255degree, ) showea ( 2\255Grad, ) showde} {(, 10\255degree, ) showea (10\255Grad, ) showde} ifelse TELI xchartx get show } if %xchart3=0 %Illuminants xchart3 2 eq {%xchart3=2 %Any_colours xtexti xchart12 0 add get ytexti xchart12 0 add get moveto TBS (F\374r jede Farbe) showde %0DGO30-7 02581 TBS (For any colour) showea %1DGO30-7 02581 TBIS (, Y) show TBV (W) ishow xcolor 1 eq {TBV (,10) ishow} if TBS K 0 eq {(=100, ) show}{(=88,6, ) show} ifelse TELI xchartx get show xtexti xchart12 1 add get ytexti xchart12 1 add get moveto ([max (m) Buntwert?], ) showde %0DGO30-7 03581 ([max (m) chromatic value?], ) showea %1DGO30-7 03581 } if %xchart3=2 %Any_colour %BEG For All Colours last line xtexti xchart12 2 add get ytexti xchart12 2 add get moveto xchartl 0 eq {%xchartl=0 %(x,y) (in der Normfarbtafel) showde %0DGO30-7 04581 (in the chromaticity diagram) showen %1DGO30-7 04581 (en el diagrama de chromaticidad) showes %2DGO30-7 04581 (dans le diagramme de chromaticit\351) showfr %3DGO30-7 04581 (nel diagramma di cromaticit\340) showit %4DGO30-7 04581 (in the chromaticity diagram) showjp %5DGO30-7 04581 TBIS ( \050x) show %TBV (6) ishow xcolor 1 eq {TBV (10) ishow} if TBIS (, y) show %TBV (6) ishow xcolor 1 eq {TBV (10) ishow} if TBIS (\051) show proc_arc_ill } if %xchartl=0 xchartl 1 ge {%xchartl>=1 (in der Farbtafel) showde %0DGO30-7 05581 (chromaticity diagram) showen %1DGO30-7 05581 (en el diagrama de chromaticidad) showes %2DGO30-7 05581 (dans le diagramme de chromaticit\351) showfr %3DGO30-7 05581 (nel diagramma di cromaticit\340) showit %4DGO30-7 05581 (in the chromaticity diagram) showjp %5DGO30-7 05581 TBIS ( \050a) show xchartl 2 ge {TBV xchartl 1 sub cvishow} if xcolor 1 eq {TBV (,10) ishow} if TBIS (, b) show xchartl 2 ge {TBV xchartl 1 sub cvishow} if xcolor 1 eq {TBV (,10) ishow} if TBIS (\051) show proc_arc_ill } if %xchartl>=1 %END For All Colours last line %*********************************************************** /imM 007 def %maximum Illuminants Colours %********************************************************** 0 setgray xchart6 1 ge {%xchart6>=1 proc_chromaticity xchart6 2 eq {%xchart6=2 proc_chromaticity_lines } if %xchart6=2 } if %xchart6>=1 xchart3 0 eq {%xchart3=0 %plot data /ilin 1 def %0(point), 1(line), 2(both) xchartl 0 eq {%xchartl=0 %(x,y) /fakt 4000 def /xtrans8 600 def /ytrans8 400 def xtrans8 ytrans8 translate %for scala and graphic proc_plot_data xtrans8 neg ytrans8 neg translate %for scala and grafic } if %xchartl=0 %************************ xchartl 1 eq {%xchartl=1 %(a,b), (a+,b+) -> (a0=x/y, b0=-0.4*z/y) /fakt 1000 def /a2 1.00 def /b2 -0.4 def /xtrans9 1300 def /ytrans9 3200 def xtrans9 ytrans9 translate proc_plot_data xtrans9 neg ytrans9 neg translate %for text and grafic } if %xchartl=1 %************************ xchartl 2 eq {%xchartl=2 %(a1=[x-XANT]/y, b1=z/y), (a1+,b1+) /fakt 1000 def /a2 1.00 def /b2 -0.4 def /xtrans9 1300 def /ytrans9 3200 def xtrans9 ytrans9 translate proc_plot_data xtrans9 neg ytrans9 neg translate %for text and grafic } if %xchartl=2 %***************************************************************** xchartl 3 eq {%xchartl=3 %(a2=[x-XANT2]/y, b2=z/y), (a2+,b2+) /fakt 1000 def /a2 1.0 def /b2 -0.4 def /xtrans10 1300 def /ytrans10 3200 def xtrans10 ytrans10 translate %for text and grafic proc_plot_data xtrans10 neg ytrans10 neg translate %for text and grafic } if %xchartl=3 } if %xchart3=0 plot data %************************ %special space for 'xm03'PROZ0.COM 2x before/after xchartl xchartl 0 eq { 100 neg 4500 neg translate} if xchartl 1 eq { 6100 neg 4500 neg translate} if xchartl 2 eq { 100 neg 0250 neg translate} if xchartl 3 eq { 6100 neg 0250 neg translate} if %showpage %XA !important grestore } for %xchartl=0,3 %8 chromaticity diagrams showpage %7R&7N grestore %} for %xchartx=0,7 %P50:xchartx=2/D50:xchartx=1 %%Trailer %%EndDocument EndEPSF grestore gsave BeginEPSF 219 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 28 %line 499 %!PS-Adobe-3.0 EPSF-3.0 DGO31-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 (DGO31-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 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} 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 0.0 MM translate 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 xchart3 lt {/Txx (-) def /Fxx (-) def} if xchart xchart3 ge {%xchart>=xchart3 /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>=xchart3 /xt 1 def xchart 1 eq {/xt 1 def} if xt 0 eq {%xt=0,1 ifelse /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 110 MM add y i0 get MM 1 MM sub moveto (http://color.li.tu-berlin.de/DGO3/DGO3) show colorm cvishow deintp cvishow colorm 0 eq {(N) show} {(F) show} ifelse (P.PDF & ) show (http://color.li.tu-berlin.de/DGO3/DGO3) show colorm cvishow deintp cvishow colorm 0 eq {(N) show} {(F) show} ifelse (P.TXT & ) show (http://color.li.tu-berlin.de/DGO3/DGO3.HTM) show } %xt=0 { %xt=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 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 /TELiP 08 array def /TELiD 08 array def /TELiP [(P60) (P55) (P50) (P45) (P40) (P35) (P30) (P25)] def /TELiD [(D65) (D50) (P40) (A00) (E00) (C00) (P00) (Q00)] def /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 /xchart7 0 def %D65 /xchart8 1 def %xchart8/xchart3=0/0:P60, 0/2:P50, 1/0:D65 %/xchart10=0 %for Y10G00NA.PS6.PS -> chromaticity coordinates (ai,bi) %/xchart10=1 %for Y10G00NA.PS6.PS -> chromatic values (Ai,Bi) %/xchart10=2 %for Y10G00NA.PS6.PS -> chroma (A*i,B*i) /xchart10 0 def 0 setgray 12 /Times-ISOL1 FS 61 MM 13.5 MM moveto (TUB\255Pr\374fvorlage DGO3; ) showde %0DGO3X-Y 0000# (TUB\255test chart DGO3; ) showen %1DGO3X-Y 0000# (gr\341fico TUB\255DGO3; ) showes %2DGO3X-Y 0000# (TUB\255test graphique DGO3; ) showfr %3DGO3X-Y 0000# (grafico TUB\255DGO3; ) showit %4DGO3X-Y 0000# (TUB\255test chart DGO3; ) showjp %5DGO3X-Y 0000# 12 /Times-ISOL1 FS xcolor 0 eq {(2) show}{(10) show} ifelse ( degree observer; ) showea (\255Grad\255Beobachter; ) showde (Normlichtart ) showde (standard illuminant ) showen xchart8 0 eq {TELiP xchart7 get show} if xchart8 1 eq {TELiD xchart7 get show} if (, 8 Farbtafeln) showde (, 8 chromaticity diagrams) showea /iV2V8 2 def 61 MM 09.5 MM moveto 12 /TimesI-ISOL1 FS (OSA) show 12 /Times-ISOL1 FS (\255Farbsystem, Helligkeit ) showde ( colour system, lightness ) showen 12 /TimesI-ISOL1 FS (L*) show 0 -2 rmoveto 10 /TimesI-ISOL1 FS (OSA) show 0 2 rmoveto 12 /Times-ISOL1 FS iV2V8 0 eq {(=-4, ) show} if iV2V8 1 eq {(=0, ) show} if iV2V8 2 eq {(=4, ) show} if (nahe ) showde (near ) showen 12 /TimesI-ISOL1 FS (L*) show 0 -2 rmoveto 10 /TimesI-ISOL1 FS (CIELAB) show 0 2 rmoveto 12 /Times-ISOL1 FS iV2V8 0 eq {(=20) show} if iV2V8 1 eq {(=50) show} if iV2V8 2 eq {(=80) show} if 12 /Times-ISOL1 FS (, all samples) showen (, alle Muster) showde /iout 0 def iout 1 eq {%iout=1 12 /Times-ISOL1 FS 165 MM 13.5 MM moveto (Eingabe: ) showde %0DGO3X-Y 0500# (input: ) showen %1DGO3X-Y 0500# (entrada: ) showes %2DGO3X-Y 0500# (entr\351e: ) showfr %3DGO3X-Y 0500# (immettere: ) showit %4DGO3X-Y 0500# (input: ) showjp %5DGO3X-Y 0500# 12 /TimesI-ISOL1 FS (w/rgb/cmyk -> ) show xchart xchart3 lt {(w/rgb/cmyk) show } if xchart xchart3 ge {%xchart>=xchart3 (rgb) show } if %xchart>=xchart3 10 /Times-ISOL1 FS 0 -2 rmoveto Txx show 0 2 rmoveto 12 /Times-ISOL1 FS } if %iout=0 /ioutx 0 def ioutx 1 eq {%ioutx=1 12 /Times-ISOL1 FS 165 MM 9 MM moveto (Ausgabe: ) showde %0DGO3X-Y 0600# (output: ) showen %1DGO3X-Y 0600# (salida: ) showes %2DGO3X-Y 0600# (sortie: ) showfr %3DGO3X-Y 0600# (uscita: ) showit %4DGO3X-Y 0600# (output: ) showjp %5DGO3X-Y 0600# %colorm=0,1! 12 /Times-ISOL1 FS xchart xchart3 lt {%xchart=xchart3 12 /Times-ISOL1 FS (keine \304nderung) showde %0DGO3X-Y 0700# (no change) showen %1DGO3X-Y 0700# (ning\372n cambio) showes %2DGO3X-Y 0700# (aucun changement) showfr %3DGO3X-Y 0700# (nessun cambiamento) showit %4DGO3X-Y 0700# (no change compared) showjp %5DGO3X-Y 0700# }%xchart=xchart3 12 /Times-ISOL1 FS colorm 0 eq {%colorm=0 (Transfer nach ) showde %0DGO3X-Y 0800# (transfer to ) showen %1DGO3X-Y 0800# (transfiera a ) showes %2DGO3X-Y 0800# (transf\351rer \340 ) showfr %3DGO3X-Y 0800# (trasferire a ) showit %4DGO3X-Y 0800# (transfer to ) showjp %5DGO3X-Y 0800# }%colorm=0 {%colorm=1 (3D\255Linearisierung ) showde %0DGO3X-Y 0900# (3D\255linearization to ) showen %1DGO3X-Y 0900# (3D\255linealizaci\363n a ) showes %2DGO3X-Y 0900# (linearisation 3D selon ) showfr %3DGO3X-Y 0900# (3D\255linearizzazione a ) showit %4DGO3X-Y 0900# (3D\255linearization to ) showjp %5DGO3X-Y 0900# } ifelse %colorm=1 12 /TimesI-ISOL1 FS xchart5f 0 eq {(rgb) show} if xchart5f 1 eq {(cmyk) show} if xchart5f 2 eq {(cmy0) show} if xchart5f 3 eq {(cmyk) show} if colorm 1 eq {(*) show} if 10 /Times-ISOL1 FS 0 -2 rmoveto Txx show 0 2 rmoveto 12 /Times-ISOL1 FS } ifelse %xchart=xchart3 } if %ioutx=1 %0 setgray %end white and unvisible 12 /Times-ISOL1 FS 62 MM 198.5 MM moveto 12TRN (http://farbe.li.tu-berlin.de/DGO3/DGO3) show 12TIN (L0) show LSC$ show LEX$ show %1 setgray %start white and unvisible (; ) show xchart xchart3 lt { (Start\255Ausgabe) showde %0DGO3X-Y 1000# (start output) showen %1DGO3X-Y 1000# (comience salida) showes %2DGO3X-Y 1000# (sortie de production) showfr %3DGO3X-Y 1000# (cominciare l'uscita) showit %4DGO3X-Y 1000# (start output) showjp %5DGO3X-Y 1000# } if LSC$ (C) eq { (Start\255Ausgabe) showde %0DGO3X-Y 1100# (start output) showen %1DGO3X-Y 1100# (comience salida) showes %2DGO3X-Y 1100# (sortie de production) showfr %3DGO3X-Y 1100# (cominciare l'uscita) showit %4DGO3X-Y 1100# (start output) showjp %5DGO3X-Y 1100# } if xchart xchart3 ge {%xchart>=xchart3 colorm 0 eq {%colorm=0,1 (Transfer Ausgabe) showde %0DGO3X-Y 1200# (transfer output) showen %1DGO3X-Y 1200# (salida de transferencia) showes %2DGO3X-Y 1200# (sortie de transfert) showfr %3DGO3X-Y 1200# (uscita di trasferimento) showit %4DGO3X-Y 1200# (transfer output) showjp %5DGO3X-Y 1200# }%colorm=0 {%colorm=1 (3D\255Linearisierung) showde %0DGO3X-Y 1300# (3D\255linearization) showen %1DGO3X-Y 1300# (3D\255linealizaci\363n) showes %2DGO3X-Y 1300# (linearisation 3D) showfr %3DGO3X-Y 1300# (3D\255linearizzzazione) showit %4DGO3X-Y 1300# (3D\255linearization) showjp %5DGO3X-Y 1300# } ifelse %colorm=0,1 } if %xchart>=xchart3 62 MM 194 MM moveto LSC$ (N) eq LSC$ (C) eq or { (N: Keine 3D\255Linearisierung (OL) ) showde %0DGO3X-Y 1400# (N: no 3D\255linearization (OL) ) showen %1DGO3X-Y 1400# (N: ninguna 3D\255linealizaci\363n (OL) ) showes %2DGO3X-Y 1400# (N: aucun linearisation 3D (OL) ) showfr %3DGO3X-Y 1400# (N: nessun 3D\255linearizzazione (OL) ) showit %4DGO3X-Y 1400# (N: no 3D\255linearization (OL) ) showjp %5DGO3X-Y 1400# (in Datei (F) oder PS\255Startup (S)) showde %0DGO3X-Y 1500# (in file (F) or PS\255startup (S)) showen %1DGO3X-Y 1500# (en archivo (F) o PS\255startup (S)) showes %2DGO3X-Y 1500# (dans fichier (F) ou PS\255startup (S)) showfr %3DGO3X-Y 1500# (nel file (F) o PS\255startup (S)) showit %4DGO3X-Y 1500# (in file (F) or PS\255startup (S)) showjp %5DGO3X-Y 1500# } {LSC$ show (: ) show (3D\255Linearisierung) showde %0DGO3X-Y 1600# (3D\255linearization) showen %1DGO3X-Y 1600# (3D\255linealizaci\363n) showes %2DGO3X-Y 1600# (linearisation 3D) showfr %3DGO3X-Y 1600# (3D\255linearizzzazione) showit %4DGO3X-Y 1600# (3D\255linearization) showjp %5DGO3X-Y 1600# ( DGO3/DGO3L) show (0) show LSC$ show LEY$ show } ifelse LSC$ (F) eq { ( in Datei (F)) showde %0DGO3X-Y 1700# ( in file (F)) showen %1DGO3X-Y 1700# ( en archivo (F)) showes %2DGO3X-Y 1700# ( dans fichier (F)) showfr %3DGO3X-Y 1700# ( nel file (F)) showit %4DGO3X-Y 1700# ( in file (F)) showjp %5DGO3X-Y 1700# } if LSC$ (S) eq { ( im Distiller Startup (S) Directory) showde %0DGO3X-Y 1800# ( in Distiller Startup (S) Directory) showen %1DGO3X-Y 1800# ( en el Distiller Startup (S) Directory) showes %2DGO3X-Y 1800# ( dans le Distiller Startup (S) Directory) showfr %3DGO3X-Y 1800# ( nel Distiller Startup (S) Directory) showit %4DGO3X-Y 1800# ( in Distiller Startup (S) Directory) showjp %5DGO3X-Y 1800# } if LSC$ (D) eq { ( in PS\255Device (D)) showde %0DGO3X-Y 1900# ( in PS\255device (D)) showen %1DGO3X-Y 1900# ( en el PS\255device (D)) showes %2DGO3X-Y 1900# ( dans l'appareil PS (D)) showfr %3DGO3X-Y 1900# ( nel PS\255dispositivo (D)) showit %4DGO3X-Y 1900# ( in PS\255Device (D)) showjp %5DGO3X-Y 1900# } if LSC$ (T) eq { ( im Distiller Startup (S) Directory) showde %0DGO3X-Y 2000# ( in Distiller Startup (S) Directory) showen %1DGO3X-Y 2000# ( en el Distiller Startup (S) Directory) showes %2DGO3X-Y 2000# ( dans le Distiller Startup (S) Directory) showfr %3DGO3X-Y 2000# ( nel Distiller Startup (S) Directory) showit %4DGO3X-Y 2000# ( in Distiller Startup (S) Directory) showjp %5DGO3X-Y 2000# } if LSC$ (E) eq { ( in PS\255Device (D)) showde %0DGO3X-Y 2100# ( in PS\255device (D)) showen %1DGO3X-Y 2100# ( en el PS\255device (D)) showes %2DGO3X-Y 2100# ( dans appareil PS (D)) showfr %3DGO3X-Y 2100# ( nel PS\255dispositivo (D)) showit %4DGO3X-Y 2100# ( in PS\255Device (D)) showjp %5DGO3X-Y 2100# } if %0 setgray %end white and unvisible (, Seite ) showde %0DGO3X-Y 2200# (, page ) showen %1DGO3X-Y 2200# (, p\341gina ) showes %2DGO3X-Y 2200# (, page ) showfr %3DGO3X-Y 2200# (, pagina ) showit %4DGO3X-Y 2200# (, page ) showjp %5DGO3X-Y 2200# xchart 1 add xcolor 8 mul add cvishow (/) show xchartm cvishow 16 MM 185 MM moveto -90 rotate (Siehe \344hnliche Dateien: ) showde %0DGO3X-Y 2300# (see similar files: ) showen %1DGO3X-Y 2300# (vea archivos semejantes: ) showes %2DGO3X-Y 2300# (voir des fichiers similaires: ) showfr %3DGO3X-Y 2300# (vedere dei file simili: ) showit %4DGO3X-Y 2300# (see similar files: ) showjp %5DGO3X-Y 2300# 12TRN (http://farbe.li.tu-berlin.de/DGO3/DGO3.HTM) show 12TIN %(0) show %LSC$ show LEX$ show 90 rotate 12 MM 185 MM moveto -90 rotate (Technische Information: ) showde %0DGO3X-Y 2400# (technical information: ) showen %1DGO3X-Y 2400# (informaci\363n t\351cnica: ) showes %2DGO3X-Y 2400# (informations techniques: ) showfr %3DGO3X-Y 2400# (informazioni tecniche: ) showit %4DGO3X-Y 2400# (technical information: ) showjp %5DGO3X-Y 2400# 12TRN (http://farbe.li.tu-berlin.de) show 12TIN ( oder ) showde %0DGO3X-Y 2500# ( or ) showen %1DGO3X-Y 2500# ( o ) showes %2DGO3X-Y 2500# ( ou ) showfr %3DGO3X-Y 2500# ( o ) showit %4DGO3X-Y 2500# ( or ) showjp %5DGO3X-Y 2500# 12TRN (http://color.li.tu-berlin.de) show 12TIN 90 rotate 281 MM 185 MM moveto -90 rotate (TUB\255Registrierung: 20230201\255DGO3/DGO3L) showde %0DGO3X-Y 2600# (TUB registration: 20230201\255DGO3/DGO3L) showen %1DGO3X-Y 2600# (TUB matr\355cula: 20230201\255DGO3/DGO3L) showes %2DGO3X-Y 2600# (TUB enregistrement: 20230201\255DGO3/DGO3L) showfr %3DGO3X-Y 2600# (TUB iscrizione: 20230201\255DGO3/DGO3L) showit %4DGO3X-Y 2600# (TUB registration: 20230201\255DGO3/DGO3L) showjp %5DGO3X-Y 2600# (0) show LSC$ show LEX$ show 90 rotate 281 MM 74 MM moveto -90 rotate (TUB\255Material: Code=rha4ta) showde %0DGO3X-Y 2700# (TUB material: code=rha4ta) showen %1DGO3X-Y 2700# (TUB material: code=rha4ta) showes %2DGO3X-Y 2700# (TUB mat\351riel: code=rha4ta) showfr %3DGO3X-Y 2700# (TUB materiale: code=rha4ta) showit %4DGO3X-Y 2700# (TUB material: code=rha4ta) showjp %5DGO3X-Y 2700# 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 Messung ) showde %0DGO3X-Y 2800# ( application for measurement ) showen %1DGO3X-Y 2800# ( aplicaci\363n para la medida ) showes %2DGO3X-Y 2800# ( application pour la mesure ) showfr %3DGO3X-Y 2800# ( la domanda per la misura ) showit %4DGO3X-Y 2800# ( application for measurement ) showjp %5DGO3X-Y 2800# xchart5f 0 eq {%xchart5f=0 (von Display-Ausgabe) showde %0DGO3X-Y 2900# (of display output) showen %1DGO3X-Y 2900# (de display output) showes %2DGO3X-Y 2900# (de sortie sur \350cran) showfr %3DGO3X-Y 2900# (di stampa di display) showit %4DGO3X-Y 2900# (of display output) showjp %5DGO3X-Y 2900# } if %xchart5f=0 xchart5f 1 eq xchart5f 2 eq or {%xchart5f=1,2 (von Offsetdruck\255Ausgabe) showde %0DGO3X-Y 3000# (of offset print output) showen %1DGO3X-Y 3000# (salida en la impressi\363n offset) showes %2DGO3X-Y 3000# (des sorties sur offset) showfr %3DGO3X-Y 3000# (uscita nella stampa di offset) showit %4DGO3X-Y 3000# (of offset print output) showjp %5DGO3X-Y 3000# } if %xchart5f=1,2 xchart5f 3 eq {%xchart5f=3 (von Laserdrucker\255Ausgabe) showde %0DGO3X-Y 3100# (of laser printer output) showen %1DGO3X-Y 3100# (salida de impresora l\341ser) showes %2DGO3X-Y 3100# (des sorties sur imprimante laser) showfr %3DGO3X-Y 3100# (di uscita della stampante laser) showit %4DGO3X-Y 3100# (of laser printer output) showjp %5DGO3X-Y 3100# } if %xchart5f=3 xchart xchart3 ge {%xchart>=xchart3 xchart5f 0 eq {%xchart5f=0 (, keine Separation) showde %0DGO3X-Y 3200# (, no separation) showen %1DGO3X-Y 3200# (, ninguna separaci\363n) showes %2DGO3X-Y 3200# (, aucune s\351paration) showfr %3DGO3X-Y 3200# (, nessuna separazione) showit %4DGO3X-Y 3200# (, no separation) showjp %5DGO3X-Y 3200# } if %chart5f=0 xchart5f 1 ge {%xchart5f>=1 (, Separation) showde %0DGO3X-Y 3300# (, separation) showen %1DGO3X-Y 3300# (, separaci\363n) showes %2DGO3X-Y 3300# (, s\351paration) showfr %3DGO3X-Y 3300# (, separazione) showit %4DGO3X-Y 3300# (, separation) showjp %5DGO3X-Y 3300# xchart5f 1 eq xchart5f 3 eq or {(cmyn6) show} if xchart5f 2 eq {(cmy0) show} if colorm 1 eq {(*) show} if colsep 0 eq {( (CMYK))}{( (CMY0))} ifelse show } if %xchart5f>=1 } if %xchart>=xchart3 IMES 1 eq LSC$ (N) ne and { %IMES=1 (, Yr=) show Yre cvsshow1 (, XYZ) show } if %IMES=1 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 %/xlu1 013 MM def /ylu1 010 MM def %/xro1 283 MM def /yro1 200 MM def %/xlo1 013 MM def /ylo1 200 MM def %/xru1 283 MM def /yru1 010 MM def %xlu1 4 MM sub ylu1 moveto 8 MM 0 rlineto stroke %xlu1 ylu1 4 MM sub moveto 0 8 MM rlineto stroke %xro1 4 MM add yro1 moveto -8 MM 0 rlineto stroke %xro1 yro1 4 MM add moveto 0 -8 MM rlineto stroke %xru1 4 MM sub yru1 moveto 8 MM 0 rlineto stroke %xru1 yru1 4 MM sub moveto 0 8 MM rlineto stroke %xlo1 4 MM add ylo1 moveto -8 MM 0 rlineto stroke %xlo1 ylo1 4 MM add moveto 0 -8 MM rlineto stroke } ifelse %xt=1 grestore gsave %********************************************************** %%Trailer %%EndDocument EndEPSF grestore gsave showpage grestore %} for %colsepf=0,1 %} for %pchartf=0,0 } for %xchartf=0,7 } for %xcolorf=0,1 %} for %deintpf=0,1 %} for %colormf=0,1 %} for %lanindf=0,0 %%Trailer