%!PS-Adobe-3.0 EPSF-3.0 DG64/Y10G00NA.PS6.PS 20180701 %%BoundingBox: 14 08 828 584 /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/DG64/DG64.HTM) /Author (compare K. Richter "Computergrafik ...": ISBN 3-8007-1775-1) /Subject (goto: http://farbe.li.tu-berlin.de or http://130.149.60.45/~farbmetrik) /Keywords (image reproduction, colour devices) /Creator (klaus.richter@mac.com) /CreationDate (D:2018070112000) /ModDate (D:20180701112000) /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 DG64/OUTLIN10.PS Output Linearization (OL) olv*->olv'* 20110301 %Early Binding: needed for colour separation %/sgcmykcolor {setcmykcolor} bind def %/sggray {setgray} bind def %/sgrgbcolor {setrgbcolor} bind def %FILE PREPARED FOR MIXED MODE, e. g. input ORS18 and output TLS00 /IMES 0 def %0=LAB* used, no reflection factor necessary %/IMES 1 def /Yre 2.52 def %1=XYZ measurement and standard device reflection %/i*ptrsc 0 def %LAB* setcolor to cmy0* / 000n* setcmykcolor /i*ptrsc 1 def %LAB* setcolor to olv* setrgbcolor / w* setgray %/i*ptrsc 2 def %LAB* setcolor to cmy0* / nnn0* setcmykcolor %/i*ptrsc 3 def %LAB* setcolor to olv* / www* setrgbcolor %/i*ptrsc 4 def %LAB* setcolor to lab* setcolor %/i*ptrsc 5 def %LAB* setcolor to LAB* setcolor %/i*ptrsc 6 def %LAB* setcolor to 000n* setcmykcolor %/i*ptrsc 7 def %LAB* setcolor to w* setgray %/ISIN*ioG 0 def %default input for Offset Reflective System (ORS18/FRS09) %/ISOU*ioG 0 def %default output dto. /ISIN*ioG 1 def %input for Television Luminous System (TLS00) /ISOU*ioG 1 def %output dto. %/ISIN*ioG 2 def %input for Device Reflective measurement system (FRS09) %/ISOU*ioG 2 def %output dto. %/ISIN*ioG 3 def %input for Television Luminous Reflection System (TLS18) %/ISOU*ioG 3 def %output dto. %/ISIN*ioG 4 def %input for Natural Luminous System (NLS00) %/ISOU*ioG 4 def %output dto. %/ISIN*ioG 5 def %input for Natural Reflective System (NRS11) %/ISOU*ioG 5 def %output dto. %/ISIN*ioG 6 def %input for Standard Reflective System (CIE18) %/ISOU*ioG 6 def %output dto. %/ISIN*ioG 7 def %input for Standard Reflective System (TLS70) %/ISOU*ioG 7 def %output dto. /iLAB 0 def %/colormg 0 def %END DG64/OUTLIN10.PS Output Linearization (OL) olv*->olv'* 20110301 %BEG DG64/OUTLIN1X.PS 20110801 %EMPTY %END DG64/OUTLIN1X.PS 20110801 %BEG DG64/OUTLIN1Y2.PS Emty 20101101 %END DG64/OUTLIN1Y2.PS Emty 20101101 /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 1.0 1.0 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$ [(A.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$ [(A.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 /xchart1f 01 def /xchart2f 01 def /xchartdf 01 def %8 illuminants /xchart3f 00 def /xchart4f 00 def /xchart5f 00 def /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 % /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 DG640-1, %%BoundingBox: 70 90 226 206 /FS {findfont exch scalefont setfont} bind def /MM {72 25.4 div mul} def %%EndProlog gsave 8 /Times-Roman FS 72 83 moveto %!2 (DG640-1,) show 72 90 translate %! 0.01 MM 0.01 MM scale %! 15 setlinewidth %! 0 0 moveto 5400 0 rlineto 0 4000 rlineto -5400 0 rlineto %! closepath stroke 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 DG640-2, %%BoundingBox: 70 90 226 206 /FS {findfont exch scalefont setfont} bind def /MM {72 25.4 div mul} def %%EndProlog gsave 8 /Times-Roman FS 72 83 moveto %!2 (DG640-2,) show 72 90 translate %! 0.01 MM 0.01 MM scale %! 15 setlinewidth %! 0 0 moveto 5400 0 rlineto 0 4000 rlineto -5400 0 rlineto %! closepath stroke 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 DG640-3, %%BoundingBox: 70 90 226 206 /FS {findfont exch scalefont setfont} bind def /MM {72 25.4 div mul} def %%EndProlog gsave 8 /Times-Roman FS 72 83 moveto %!2 (DG640-3,) show 72 90 translate %! 0.01 MM 0.01 MM scale %! 15 setlinewidth %! 0 0 moveto 5400 0 rlineto 0 4000 rlineto -5400 0 rlineto %! closepath stroke grestore showpage %%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 DG640-4, %%BoundingBox: 70 90 226 206 /FS {findfont exch scalefont setfont} bind def /MM {72 25.4 div mul} def %%EndProlog gsave 8 /Times-Roman FS 72 83 moveto %!2 (DG640-4,) show 72 90 translate %! 0.01 MM 0.01 MM scale %! 15 setlinewidth %! 0 0 moveto 5400 0 rlineto 0 4000 rlineto -5400 0 rlineto %! closepath stroke 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 DG640-5, %%BoundingBox: 70 90 226 206 /FS {findfont exch scalefont setfont} bind def /MM {72 25.4 div mul} def %%EndProlog gsave 8 /Times-Roman FS 72 83 moveto %!2 (DG640-5,) show 72 90 translate %! 0.01 MM 0.01 MM scale %! 15 setlinewidth %! 0 0 moveto 5400 0 rlineto 0 4000 rlineto -5400 0 rlineto %! closepath stroke 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 DG640-6, %%BoundingBox: 70 90 226 206 /FS {findfont exch scalefont setfont} bind def /MM {72 25.4 div mul} def %%EndProlog gsave 8 /Times-Roman FS 72 83 moveto %!2 (DG640-6,) show 72 90 translate %! 0.01 MM 0.01 MM scale %! 15 setlinewidth %! 0 0 moveto 5400 0 rlineto 0 4000 rlineto -5400 0 rlineto %! closepath stroke 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/DG64/DG640-7N 20180701 %%BoundingBox: 70 83 400 582 %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/DG64/DG64.HTM) /Author (compare K. Richter "Computergrafik ...": ISBN 3-8007-1775-1) /Subject (goto: http://farbe.li.tu-berlin.de http://130.149.60.45/~farbmetrik) /Keywords (image reproduction, colour devices) /Creator (klaus.richter@mac.com) /CreationDate (D:2018070112000) /ModDate (D:20180701112000) /DOCINFO pdfmark07 [ /View [ /Fit ] /DOCVIEW pdfmark07 %END PDFDE011 /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 /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 r g b {setrgbcolor rec fill} bind def /colrecst %x y width heigth r g b {setrgbcolor rec stroke} bind def /TG {320 /Times-ISOL1 FS} bind def /TM {270 /Times-ISOL1 FS} bind def /TK {200 /Times-ISOL1 FS} bind def /TS {170 /Times-ISOL1 FS} bind def /TL {130 /Times-ISOL1 FS} bind def /TLL {100 /Times-ISOL1 FS} bind def /TIG {320 /TimesI-ISOL1 FS} bind def /TIM {270 /TimesI-ISOL1 FS} bind def /TIK {200 /TimesI-ISOL1 FS} bind def /TIS {170 /TimesI-ISOL1 FS} bind def /TIL {130 /TimesI-ISOL1 FS} bind def /TBG {320 /TimesB-ISOL1 FS} bind def /TBM {270 /TimesB-ISOL1 FS} bind def /TBK {200 /TimesB-ISOL1 FS} bind def /TBS {170 /TimesB-ISOL1 FS} bind def /TBL {130 /TimesB-ISOL1 FS} bind def /TBIG {320 /TimesBI-ISOL1 FS} bind def /TBIM {270 /TimesBI-ISOL1 FS} bind def /TBIK {200 /TimesBI-ISOL1 FS} bind def /TBIS {170 /TimesBI-ISOL1 FS} bind def /TBIL {130 /TimesBI-ISOL1 FS} bind def /SG {320 /Symbol FS} bind def /SM {270 /Symbol FS} bind def /SK {200 /Symbol FS} bind def /SS {170 /Symbol FS} bind def /SL {130 /Symbol FS} bind def /CBG {320 /CourierB-ISOL1 FS} bind def /CBM {270 /CourierB-ISOL1 FS} bind def /CBK {200 /CourierB-ISOL1 FS} bind def /CBS {170 /CourierB-ISOL1 FS} bind def /CBL {130 /CourierB-ISOL1 FS} bind def %for xchart8=0 /SP60 80 array def %380 bis 775 mit deltalambda=05 /SP55 80 array def %380 bis 775 mit deltalambda=05 /SP50 80 array def %380 bis 775 mit deltalambda=05 /SP45 80 array def %380 bis 775 mit deltalambda=05 /SP40 80 array def %380 bis 775 mit deltalambda=05 /SP35 80 array def %380 bis 775 mit deltalambda=05 /SP30 80 array def %380 bis 775 mit deltalambda=05 /SP25 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 /FXN 80 array def %FXN 0 = F2N imax /FYN 80 array def /FZN 80 array def /FXD 63 array def /FYD 63 array def /FZD 63 array def /FAD 63 array def /FBD 63 array def /FCD 63 array def %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 %allways 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 /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 /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 /xchart8 0 def % /DOW 82 array def /DOWZ 17 array def /F02Z 51 array def /F10Z 51 array def /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 %calculation of transformation data /FARBE 33 array def /FARBE [(R) (m) ( 561_770) %00 (Y) (m) ( 520_770) %01 (G) (m) ( 470_570) %02 (C) (m) ( 380_561) %03 (B) (m) ( 380_520) %04 (M) (m) ( 570_470) %05 (G) (o) ( 520_570) %06 (R) (o) ( 570_780) %07 (N) (0) ( 380_770) %08 (W) (0) ( 380_770) %09 (W) (1) ( 380_770) %10 ] def %/FARBE [(R) (m) ( 565_770) %00 % (Y) (m) ( 495_770) %01 % (G) (m) ( 475_575) %02 % (C) (m) ( 380_565) %03 % (B) (m) ( 380_495) %04 % (M) (m) ( 575_475) %05 % (N) (0) ( 380_770) %06 % (W) (0) ( 380_770) %07 % (W) (1) ( 380_770) %08 % ] def /xshift 10 array def %max 6 device + 4 elementary /yshift 10 array def /colori 10 array def /RX0 800 array def %10x80 /RX0 [ %(%Ro 00 570_770) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0000 0000 0000 0000 0000 0000 0000 0000 0500 1000 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %(%Ym 01 520_770) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0000 0000 0000 0000 0000 0000 0000 0000 0500 1000 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %(%Gm 02 470_570) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0000 0000 0000 0000 0000 0000 0000 0000 0500 1000 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 1000 1000 1000 1000 1000 1000 1000 1000 0500 0000 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 %(%Cm 03 380_570) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 1000 1000 1000 1000 1000 1000 1000 1000 0500 0000 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 %(%Bm 04 380_520) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 1000 1000 1000 1000 1000 1000 1000 1000 0500 0000 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 %(%Mm 05 570_470) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 1000 1000 1000 1000 1000 1000 1000 1000 0500 0000 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0000 0000 0000 0000 0000 0000 0000 0000 0500 1000 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %(%Go 06 520_570) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0000 0000 0000 0000 0000 0000 0000 0000 0500 1000 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 1000 1000 1000 1000 1000 1000 1000 1000 0500 0000 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 %(%N0(r=0,001) 07 380_770) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0001 0001 0001 0001 0001 0001 0001 0001 0001 0001 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0001 0001 0001 0001 0001 0001 0001 0001 0001 0001 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0001 0001 0001 0001 0001 0001 0001 0001 0001 0001 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0001 0001 0001 0001 0001 0001 0001 0001 0001 0001 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0001 0001 0001 0001 0001 0001 0001 0001 0001 0001 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0001 0001 0001 0001 0001 0001 0001 0001 0001 0001 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0001 0001 0001 0001 0001 0001 0001 0001 0001 0001 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0001 0001 0001 0001 0001 0001 0001 0001 0001 0001 %(%W1(r=1,000) 08 380_770) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %(%W1(r=1,000) 09 380_770) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 ] def %************************************************** /proc_ALLi_def {%BEG proc_ALLi_def ij=ix-2 0 1 ij {/i exch def %i=0,ij kx 1 eq {Xxi i X1i i get put Yxi i Y1i i get put Zxi i Z1i i get put Axi i A1i i get put Bxi i B1i i get put L*xi i L*1i i get put a*xi i a*1i i get put b*xi i b*1i i get put AANxi i AAN1i i get put BANxi i BAN1i i get put CANxi i CAN1i i get put idxi i id1i i get put wdxi i wd1i i get put hABxi i hAB1i i get put h*abxi i h*ab1i i get put } if kx 2 eq {Xxi i X2i i get put Yxi i Y2i i get put Zxi i Z2i i get put Axi i A2i i get put Bxi i B2i i get put L*xi i L*2i i get put a*xi i a*2i i get put b*xi i b*2i i get put AANxi i AAN2i i get put BANxi i BAN2i i get put CANxi i CAN2i i get put idxi i id2i i get put wdxi i wd2i i get put hABxi i hAB2i i get put h*abxi i h*ab2i i get put } if } for %i=1,ij } bind def %END proc_ALLi_def %*********************************************************** /proc_ALLi_ALLin {%BEG proc_ALLi_ALLin %new order from front, new data amount ix=ij+2 hABxin 0 hABxi imin get 360 xpn 0 eq {add}{sub} ifelse put %351-360=-9 h*abxin 0 h*abxi imin get 360 xpn 0 eq {add}{sub} ifelse put wdxin 0 wdxi imin get xpn 0 eq {400 sub 769 add}{769 sub 400 add} ifelse put %769=700+564-495 Xxin 0 Xxi imin get put Yxin 0 Yxi imin get put Zxin 0 Zxi imin get put Axin 0 Axi imin get put Bxin 0 Bxi imin get put L*xin 0 L*xi imin get put a*xin 0 a*xi imin get put b*xin 0 b*xi imin get put AANxin 0 AANxi imin get put BANxin 0 BANxi imin get put CANxin 0 CANxi imin get put idxin 0 idxi imin get put imin1 1 ij {/i exch def %32_57 old, imin=31(h=38) imin1=32 /in i imin1 sub 1 add def %i=32_57-32+1=01_26 new hABxin in hABxi i get put %in=1,26=26 values h*abxin in h*abxi i get put wdxin in wdxi i get put Xxin in Xxi i get put Yxin in Yxi i get put Zxin in Zxi i get put Axin in Axi i get put Bxin in Bxi i get put L*xin in L*xi i get put a*xin in a*xi i get put b*xin in b*xi i get put AANxin in AANxi i get put BANxin in BANxi i get put CANxin in CANxi i get put idxin in idxi i get put } for 0 1 imin {/i exch def %0-31 old /in ij imin sub i add 1 add def %in=57-31+i+1=26+i+1=26+31+1 hABxin in hABxi i get put h*abxin in h*abxi i get put wdxin in wdxi i get put Xxin in Xxi i get put Yxin in Yxi i get put Zxin in Zxi i get put Axin in Axi i get put Bxin in Bxi i get put L*xin in L*xi i get put a*xin in a*xi i get put b*xin in b*xi i get put AANxin in AANxi i get put BANxin in BANxi i get put CANxin in CANxi i get put idxin in idxi i get put } for hABxin ix hABxi imin1 get 360 xpn 0 eq {sub}{add} ifelse put %2.4+360 h*abxin ix h*abxi imin1 get 360 xpn 0 eq {sub}{add} ifelse put wdxin ix wdxi imin1 get xpn 0 eq {769 sub 400 add}{400 sub 769 add} ifelse put %769=700+564-495 Xxin ix Xxi imin1 get put Yxin ix Yxi imin1 get put Zxin ix Zxi imin1 get put Axin ix Axi imin1 get put Bxin ix Bxi imin1 get put L*xin ix L*xi imin1 get put a*xin ix a*xi imin1 get put b*xin ix b*xi imin1 get put AANxin ix AANxi imin1 get put BANxin ix BANxi imin1 get put CANxin ix CANxi imin1 get put idxin ix idxi imin1 get put } bind def %END proc_ALLi_ALLin %******************************************************** /proc_hAB_min {%BEG proc_hAB_min 0 1 ij {/i exch def %i=0,ij xpn 0 eq {%xpn=0,1 hABxi i get hABxi i 1 add get sub -100 le {/imin i def exit} if }%xpn=0 {%xpn=1 hABxi i get hABxi i 1 add get sub 100 ge {/imin i def exit} if } ifelse %xpn=0,1 } for %i=1,ij /imin1 imin 1 add def htext 1 eq {%htext=1 0100 2800 yshift add moveto (kx=) show kx cvishow (, imin=) show imin cvishow 1100 2800 yshift add moveto (hABxi=) show hABxi imin get cvsshow1 2100 2800 yshift add moveto (imin1=) show imin1 cvishow 3100 2800 yshift add moveto (hABxi1=) show hABxi imin1 get cvsshow1 } if %htext=1 } bind def %END proc_hAB_min %******************************************************** /proc_iwd_min {%BEG proc_iwd_min 1 1 ij {/i exch def %i=1,ij idxi i get -1 eq {wdxi i wdxi i get 495 sub 700 add put} if } for %i=1,ij 0 1 ij {/i exch def %i=0,ij xpn 0 eq {%xpn=0,1 idxi i get 0 gt idxi i 1 add get -1 eq and {/imin i def exit} if }%xpn=0 {%xpn=1 idxi i get -1 eq idxi i 1 add get 0 gt and {/imin i def exit} if } ifelse %xpn=0,1 } for %i=1,ij /imin1 imin 1 add def htext 1 eq {%htext=1 0100 2800 yshift add moveto (kx=) show kx cvishow (, imin=) show imin cvishow 1100 2800 yshift add moveto (iwdxi=) show idxi imin get cvishow (, ) show wdxi imin get cvsshow1 2100 2800 yshift add moveto (imin1=) show imin1 cvishow 3100 2800 yshift add moveto (iwdxi1=) show idxi imin1 get cvishow (, ) show wdxi imin1 get cvsshow1 } if %htext=1 } bind def %END proc_iwd_min %******************************************************** /proc_hAB_tab {%BEG proc_hAB_tab /ymaxn 2600 yshift add def /ydelx ydel 1.5 div def 0 1 ij {/i exch def %i=1,ij /i10 i 10 idiv def /ie i i 10 idiv 10 mul sub def /xn 100 ie 500 mul add def xn ymaxn i10 ydelx mul sub moveto i cvishow (,) show hABxi i get cvsshow1 } for %i=1,ij /ymaxn 1200 yshift add def 0 1 ix {/i exch def %i=1,ix /i10 i 10 idiv def /ie i i 10 idiv 10 mul sub def /xn 100 ie 500 mul add def xn ymaxn i10 ydelx mul sub moveto i cvishow (,) show hABxin i get cvsshow1 } for %i=1,ix newpath 180 faktx mul 00 fakty mul 40 0 360 arc fill 180 faktx mul 20 fakty mul 40 0 360 arc fill 180 faktx mul 40 fakty mul 40 0 360 arc fill 0 faktx mul -20 fakty mul 40 0 360 arc fill 0 faktx mul 20 fakty mul 40 0 360 arc fill } bind def %END proc_hAB_tab %******************************************************** /proc_iwd_tab {%BEG proc_iwd_tab /ymaxn 2600 yshift add def /ydelx ydel 1.5 div def 0 1 ij {/i exch def %i=1,ij /i10 i 10 idiv def /ie i i 10 idiv 10 mul sub def /xn 100 ie 490 mul add def xn ymaxn i10 ydelx mul sub moveto i cvishow (,) show idxi i get cvishow (, ) show wdxi i get cvishow } for %i=1,ij /ymaxn 1200 yshift add def 0 1 ix {/i exch def %i=1,ix /i10 i 10 idiv def /ie i i 10 idiv 10 mul sub def /xn 100 ie 490 mul add def xn ymaxn i10 ydelx mul sub moveto i cvishow (,) show idxin i get cvishow (, ) show wdxin i get cvishow } for %i=1,ix %newpath %700 400 sub faktx mul 00 fakty mul 40 0 360 arc fill %700 400 sub faktx mul 20 fakty mul 40 0 360 arc fill %700 400 sub faktx mul 40 fakty mul 40 0 360 arc fill % 0 faktx mul -20 fakty mul 40 0 360 arc fill % 0 faktx mul 20 fakty mul 40 0 360 arc fill } bind def %END proc_iwd_tab %********************************************************** /proc_hABw_XYZ_cur2 {%BEG proc_hABw_XYZ_cur2 ctext 1 eq {%ctext=1 /Ysk 2.5 def %1/20*50 /Csk 1.5 def %1/20*30 0 1 icurm {/icur exch def %icur=0,icurm iout3x 0 eq {%iout3x=0 icur 0 eq {[ ] 0 setdash} {[100] 100 setdash} ifelse } if %ioutx=0 0 1 0 setrgbcolor %Y 0 1 ix {/i exch def %i=0,ix hw 0 eq {hABxin i get faktx mul} {wdxin i get 400 sub faktx mul} ifelse slog 0 eq {%slog=0 icur 0 eq { Yxin i get} {100 Yxin i get sub} ifelse fakty mul } if %slog=0 slog 1 eq {%slog=1 /Yak Yxin i get def Yak 50 ge {/Ybk1 Yak Ysk add 50 sub def /Ybk2 50 Yak Ysk sub sub def /VOR 1 def} {/Ybk1 50 Yak Ysk sub sub def /Ybk2 Yak Ysk add 50 sub def /VOR -1 def} ifelse icur 0 eq {Ybk1}{Ybk2} ifelse abs log 2 add fakty mul 50 mul VOR mul } if %slog=1 slog 2 eq {%slog=2 /Yak Yxin i get def Yak 50 ge {/Ybk1 Yak Ysk add 50 div 1 sub def /Ybk2 1 Yak Ysk sub 50 div sub def /VOR 1 def} {/Ybk1 1 Yak Ysk sub 50 div sub def /Ybk2 Yak Ysk add 50 div 1 sub def /VOR -1 def} ifelse icur 0 eq {Ybk1}{Ybk2} ifelse abs log 2 add fakty mul 50 mul VOR mul } if %slog=2 i 0 eq {moveto} if i 1 ge i ix le and {lineto} if i ix eq {stroke} if } for %i=0,ix %icurm 1 eq {%icurm=1 0 0 0 setrgbcolor %CAB 0 1 ix {/i exch def %i=0,ix /CAB Axin i get dup mul Bxin i get dup mul add 0.0001 add sqrt def hw 0 eq {hABxin i get faktx mul} {wdxin i get 400 sub faktx mul} ifelse slog 0 eq {%slog=0 icur 0 eq { CAB} {100 CAB sub} ifelse fakty mul } if %slog=0 slog 1 eq {%slog=1 /Cak CAB def Cak 30 ge {/Cbk1 Cak Csk add 30 div 1 sub def /Cbk2 1 Cak Csk sub 30 div sub def} {/Cbk1 1 Cak Csk sub 30 div sub def /Cbk2 Cak Csk add 30 div 1 sub def} ifelse icur 0 eq {Cbk1}{Cbk2} ifelse abs log 2 add fakty mul 50 mul } if %slog=1 slog 2 eq {%slog=2 /Cak CAB def Cak 30 ge {/Cbk1 Cak Csk add 30 div 1 sub def /Cbk2 1 Cak Csk sub 30 div sub def} {/Cbk1 1 Cak Csk sub 30 div sub def /Cbk2 Cak Csk add 30 div 1 sub def} ifelse icur 0 eq {Cbk1}{Cbk2} ifelse abs log 2 add fakty mul 50 mul } if %slog=2 i 0 eq {moveto} if i 1 ge i ix le and {lineto} if i ix eq {stroke} if } for %i=0,ix %} if %icurm=1 %icurm 1 eq {%icurm=1 1 0 0 setrgbcolor %cab slog 2 eq {%slog=2 0 1 ix {/i exch def %i=0,ix /CAB Axin i get dup mul Bxin i get dup mul add 0.0001 add sqrt def hw 0 eq {hABxin i get faktx mul} {wdxin i get 400 sub faktx mul} ifelse % slog 0 eq {%slog=0 % icur 0 eq {CANxin i get} % {100 CANxin i get sub} ifelse % fakty mul % } if %slog=0 % slog 1 eq {%slog=1 % icur 0 eq {CANxin i get log} % {2 CANxin i get log sub} ifelse % fakty mul 50 mul % } if %slog=1 Yak 50 ge {/Ybk Yak Ysk add 50 div 1 sub def} {/Ybk 1 Yak Ysk add 50 div sub def} ifelse Cak 30 ge {/Cbk Cak Csk add 30 div 1 sub def} {/Cbk 1 Cak Csk add 30 div sub def} ifelse icur 0 eq {Cbk Ybk div} {Ybk Cbk div} ifelse abs log 1 add fakty mul 50 mul i 0 eq {moveto} if i 1 ge i ix le and {lineto} if i ix eq {stroke} if } for %i=0,ix } if %slog=2 %} if %icurm=1 } for %icur=0,icurm [ ] 0 setdash } if %ctext=1 } bind def %END proc_hABw_XYZ_cur2 %******************************************************** /proc_hABw_LabC*_cur2 {%BEG proc_hABw_LabC*_cur2 ctext 1 eq {%ctext=1 0 1 icurm {/icur exch def %icur=0,icurm iout3x 0 eq {%iout3x=0 icur 0 eq {[ ] 0 setdash} {[100] 100 setdash} ifelse } if %ioutx=0 0 1 0 setrgbcolor %L* 0 1 ix {/i exch def %i=0,ix hw 0 eq {hABxin i get faktx mul} {wdxin i get 400 sub faktx mul} ifelse slog 0 eq {%slog=0 icur 0 eq {L*xin i get} {100 L*xin i get sub} ifelse fakty mul 3 mul %1200 sub %y-shift } if %slog=0 slog 1 eq {%slog=1 icur 0 eq {L*xin i get log} {2 L*xin i get log sub} ifelse fakty mul 50 mul %1200 sub %y-shift } if %slog=1 slog 2 eq {%slog=2 icur 0 eq {L*xin i get log} {2 L*xin i get log sub} ifelse fakty mul 3 mul 50 mul %1200 sub %y-shift } if %slog=2 i 0 eq {moveto} if i 1 ge i ix le and {lineto} if i ix eq {stroke} if } for %i=0,ix } for %icur=0,icurm [ ] 0 setdash } if %ctext=1 } bind def %END proc_hABw_LabC*_cur2 %************************************************************* /proc_ABC_KNP_FWERTiX {%BEG proc_ABC_KNP_FWERT %input FAD,FBD,FCD, KNP %output FWERTiX/Y/Z (i=1,4) kNP 1 ge {/FWERT1X FAD kNP 1 sub get def /FWERT1Y FBD kNP 1 sub get def /FWERT1Z FCD kNP 1 sub get def} {/FWERT1X FAD 0 get def %again 400nm for i=0 /FWERT1Y FBD 0 get def /FWERT1Z FCD 0 get def} ifelse /FWERT2X FAD kNP get def /FWERT2Y FBD kNP get def /FWERT2Z FCD kNP get def /FWERT3X FAD kNP 1 add get def /FWERT3Y FBD kNP 1 add get def /FWERT3Z FCD kNP 1 add get def /FWERT4X FAD kNP 2 add get def /FWERT4Y FBD kNP 2 add get def /FWERT4Z FCD kNP 2 add get def } bind def %END proc_ABC_KNP_FWERTiX %********************************************************* /proc_XIE_TN1 {%BEG proc_XIE_TN1 %input XIE, FWERTiX/Y/Z (i=1,4) %output TN1 /A1N XIE 1 XIE sub mul XIE 2 sub mul 6 div def /A2N XIE 1 add XIE 1 sub mul XIE 2 sub mul 0.5 mul def /A3N XIE 1 add XIE mul 2 XIE sub mul 0.5 mul def /A4N XIE 1 add XIE mul XIE 1 sub mul 6 div def /FNX A1N FWERT1X mul A2N FWERT2X mul add A3N FWERT3X mul add A4N FWERT4X mul add def /FNY A1N FWERT1Y mul A2N FWERT2Y mul add A3N FWERT3Y mul add A4N FWERT4Y mul add def /FNZ A1N FWERT1Z mul A2N FWERT2Z mul add A3N FWERT3Z mul add A4N FWERT4Z mul add def /TNX FNX FXU1 mul FNY FXU2 mul add FNZ FXU3 mul add def } bind def %END proc_XIE_TN1 %********************************************************** /tab_Ocolors2 64 array def %8*8 /tab_Ocolors2 %BEG tab_Ocolors2 [%i rgb Col Ind %0 01 02 03 04 05 06 07 00 0.0 1.0 1.0 -0100 -0250 (C) (O) 14 0.0 1.0 0.0 0100 -0050 (G) (O) 17 0.8 1.0 0.0 -0100 0100 (Y) (x) 23 1.0 1.0 0.0 -0100 0100 (Y) (O) 00 1.0 0.0 0.0 -0100 0100 (R) (O) 14 1.0 0.0 1.0 -0350 -0100 (M) (O) 17 0.2 0.0 1.0 -0100 -0250 (V) (n) 23 0.0 0.0 1.0 -0100 -0250 (B) (O) ] def %END tab_Ocolors2 %********************************************************** /proc_tab_Ocolors2 {%BEG proc_tab_Ocolors2 %tab_Ocolors2 64 array def %8*8 defined before /Ysk 2.5 def %1/20*50 /Csk 1.5 def %1/20*30 0 1 7 {/iO exch def %iO=0,7 /i0 iO 8 mul def /i1 i0 1 add def /i2 i0 2 add def /i3 i0 3 add def /i4 i0 4 add def /i5 i0 5 add def /i6 i0 6 add def /i7 i0 7 add def /k tab_Ocolors2 i0 get def tab_Ocolors2 i1 get tab_Ocolors2 i2 get tab_Ocolors2 i3 get setrgbcolor /AnY0 xhh*w 0 eq {iO 3 le {hAB1i k get} {hAB2i k get} ifelse} if xhh*w 1 eq {iO 3 le {h*ab1i k get} {h*ab2i k get} ifelse} if xhh*w 2 eq {iO 3 le {wd1i k get iO 1 eq {/AnY01 wd1i k get def} if} {wd2i k get iO 5 eq {205 add} if} ifelse} if def /AnY AnY0 xhh*w 2 eq {400 sub} if faktx mul def /BnY0 yYLC 0 eq {iO 3 le {Y1i} {Y2i} ifelse k get} if yYLC 1 eq {iO 3 le {L*1i} {L*2i} ifelse k get} if %3 mul with AB and ab* yYLC 2 eq {iO 3 le {A1i k get dup mul B1i k get dup mul add} {A2i k get dup mul B2i k get dup mul add} ifelse 0.0001 add sqrt } if yYLC 3 eq {iO 3 le {a*1i k get dup mul b*1i k get dup mul add} {a*2i k get dup mul b*2i k get dup mul add} ifelse 0.0001 add sqrt } if def slog 0 eq {%lin /BnY BnY0 yYLC 1 eq {3 mul} if fakty mul yshift add def } if %lin /Yak Yxin i get def Yak 50 ge {/Ybk Yak Ysk add 50 div 1 sub def} {/Ybk 1 Yak Ysk add 50 div sub def} ifelse slog 1 eq {%log /Yak BnY0 def Yak 50 ge {/Ybk Yak Ysk add 50 div 1 sub def} {/Ybk 1 Yak Ysk add 50 div sub def} ifelse /BnY Ybk abs log fakty mul 50 mul def } if %log slog 2 eq {%log /Yak BnY0 def Yak 50 ge {/Ybk Yak Ysk add 50 div 1 sub def} {/Ybk 1 Yak Ysk add 50 div sub def} ifelse /BnY Ybk abs log fakty mul 50 mul def } if %log AnY BnY 90 0 360 arc fill 0 0 0 setrgbcolor iO 3 gt {[100] 100 setdash} {[ ] 0 setdash} ifelse AnY BnY 90 0 360 arc stroke [ ] 0 setdash newpath AnY 80 add BnY 50 add moveto TBIL AnY0 cvishow (, ) show BnY0 cvishow (, ) show Ybk log cvsshow2 xhh*w 2 eq iO 5 eq and {AnY 80 add BnY 150 sub moveto AnY01 cvishow (c) show } if newpath } for %iO=0,7 } bind def %END proc_tab_Ocolors2 /X1i 99 array def %max 99 colours or 6 device colour + 4 elementary colours /Y1i 99 array def /Z1i 99 array def /hxy1i 99 array def /XAN1i 99 array def /YAN1i 99 array def /ZAN1i 99 array def /A1i 99 array def %max 99 colours or 6 device colour + 4 elementary colours /B1i 99 array def /CAB1i 99 array def /hAB1i 99 array def /AAN1i 99 array def /BAN1i 99 array def /CAN1i 99 array def /L*1i 99 array def %max 99 colours or 6 device colour + 4 elementary colours /a*1i 99 array def /b*1i 99 array def /C*ab1i 99 array def /h*ab1i 99 array def /a'1i 99 array def /b'1i 99 array def /c'1i 99 array def /i11i 99 array def /i21i 99 array def /id1i 99 array def /ic1i 99 array def /w11i 99 array def /w21i 99 array def /w1c1i 99 array def /w2c1i 99 array def /wd1i 99 array def /wc1i 99 array def /wdc1i 99 array def /wcc1i 99 array def /X1in 99 array def %max 99 colours or 6 device colour + 4 elementary colours /Y1in 99 array def /Z1in 99 array def /hxy1in 99 array def /XAN1in 99 array def /YAN1in 99 array def /ZAN1in 99 array def /A1in 99 array def %max 99 colours or 6 device colour + 4 elementary colours /B1in 99 array def /CAB1in 99 array def /hAB1in 99 array def /AAN1in 99 array def /BAN1in 99 array def /CAN1in 99 array def /L*1in 99 array def %max 99 colours or 6 device colour + 4 elementary colours /a*1in 99 array def /b*1in 99 array def /C*ab1in 99 array def /h*ab1in 99 array def /a'1in 99 array def /b'1in 99 array def /c'1in 99 array def /i11in 99 array def /i21in 99 array def /id1in 99 array def /ic1in 99 array def /w11in 99 array def /w21in 99 array def /w1c1in 99 array def /w2c1in 99 array def /wd1in 99 array def /wc1in 99 array def /wdc1in 99 array def /wcc1in 99 array def /X2i 99 array def %max 99 colours or 6 device colour + 4 elementary colours /Y2i 99 array def /Z2i 99 array def /hxy2i 99 array def /XAN2i 99 array def /YAN2i 99 array def /ZAN2i 99 array def /A2i 99 array def %max 99 colours or 6 device colour + 4 elementary colours /B2i 99 array def /CAB2i 99 array def /hAB2i 99 array def /AAN2i 99 array def /BAN2i 99 array def /CAN2i 99 array def /L*2i 99 array def %max 99 colours or 6 device colour + 4 elementary colours /a*2i 99 array def /b*2i 99 array def /C*ab2i 99 array def /h*ab2i 99 array def /a'2i 99 array def /b'2i 99 array def /c'2i 99 array def /i12i 99 array def /i22i 99 array def /id2i 99 array def /ic2i 99 array def /w12i 99 array def /w22i 99 array def /w1c2i 99 array def /w2c2i 99 array def /wd2i 99 array def /wc2i 99 array def /wdc2i 99 array def /wcc2i 99 array def /X2in 99 array def %max 99 colours or 6 device colour + 4 elementary colours /Y2in 99 array def /Z2in 99 array def /hxy2in 99 array def /XAN2in 99 array def /YAN2in 99 array def /ZAN2in 99 array def /A2in 99 array def %max 99 colours or 6 device colour + 4 elementary colours /B2in 99 array def /CAB2in 99 array def /hAB2in 99 array def /AAN2in 99 array def /BAN2in 99 array def /CAN2in 99 array def /L*2in 99 array def %max 99 colours or 6 device colour + 4 elementary colours /a*2in 99 array def /b*2in 99 array def /C*ab2in 99 array def /h*ab2in 99 array def /a'2in 99 array def /b'2in 99 array def /c'2in 99 array def /i12in 99 array def /i22in 99 array def /id2in 99 array def /ic2in 99 array def /w12in 99 array def /w22in 99 array def /w1c2in 99 array def /w2c2in 99 array def /wd2in 99 array def /wc2in 99 array def /wdc2in 99 array def /wcc2in 99 array def %actual possible data (x=1,2,3,4) /Xxi 99 array def %max 99 colours or 6 device colour + 4 elementary colours /Yxi 99 array def /Zxi 99 array def /hxyxi 99 array def /XANxi 99 array def /YANxi 99 array def /ZANxi 99 array def /Axi 99 array def %max 99 colours or 6 device colour + 4 elementary colours /Bxi 99 array def /CABxi 99 array def /hABxi 99 array def /AANxi 99 array def /BANxi 99 array def /CANxi 99 array def /L*xi 99 array def %max 99 colours or 6 device colour + 4 elementary colours /a*xi 99 array def /b*xi 99 array def /C*abxi 99 array def /h*abxi 99 array def /a'xi 99 array def /b'xi 99 array def /c'xi 99 array def /i1xi 99 array def /i2xi 99 array def /idxi 99 array def /icxi 99 array def /w1xi 99 array def /w2xi 99 array def /w1cxi 99 array def /w2cxi 99 array def /wdxi 99 array def /wcxi 99 array def /wdcxi 99 array def /wccxi 99 array def /Xxin 99 array def %max 99 colours or 6 device colour + 4 elementary colours /Yxin 99 array def /Zxin 99 array def /hxyxin 99 array def /XANxin 99 array def /YANxin 99 array def /ZANxin 99 array def /Axin 99 array def %max 99 colours or 6 device colour + 4 elementary colours /Bxin 99 array def /CABxin 99 array def /hABxin 99 array def /AANxin 99 array def /BANxin 99 array def /CANxin 99 array def /L*xin 99 array def %max 99 colours or 6 device colour + 4 elementary colours /a*xin 99 array def /b*xin 99 array def /C*abxin 99 array def /h*abxin 99 array def /a'xin 99 array def /b'xin 99 array def /c'xin 99 array def /i1xin 99 array def /i2xin 99 array def /idxin 99 array def /icxin 99 array def /w1xin 99 array def /w2xin 99 array def /w1cxin 99 array def /w2cxin 99 array def /wdxin 99 array def /wcxin 99 array def /wdcxin 99 array def /wccxin 99 array def /FARBEda 79 array def /FARBEca 79 array def /FARBEd 79 array def /FARBEc 79 array def %%EndProlog gsave %lanindL2.EPS START 20000505 /lanind 0 def /lantex [(G) (E) (S) (F) (I) (J) (M)] def /showde {0 lanind eq {show} {pop} ifelse} bind def /showen {1 lanind eq {show} {pop} ifelse} bind def /showes {2 lanind eq {show} {pop} ifelse} bind def /showfr {3 lanind eq {show} {pop} ifelse} bind def /showit {4 lanind eq {show} {pop} ifelse} bind def /showjp {5 lanind eq {show} {pop} ifelse} bind def /showea {1 lanind le {show} {pop} ifelse} bind def /lanindf where {pop /lanind1 lanindf def /lanind2 lanindf def /lanindd laninddf def} {/lanind1 0 def /lanind2 0 def} ifelse /colormf where {pop /colorm1 colormf def /colorm2 colormf def /colormd colormdf def} {/colorm1 0 def} ifelse /deintpf where {pop /deintp1 deintpf def /deintP2 deintpf def /deintpd deintpdf def} {/deintp1 0 def} ifelse /xcolorf where {pop /xcolor1 xcolorf def /xcolor2 xcolorf def /xcolord xcolordf def} {/xcolor1 0 def} ifelse /xchartf where {pop /xchart1 xchartf def /xchart2 xchartf def /xchartd xchartdf def /xchartm xchart2f xchart1f sub 1 add def} {/xchart1 0 def /xchartm 1 def} ifelse /xchart3f where {pop /xchart3 xchart3f def} {/xchart3 0 def} ifelse /xchart4f where {pop /xchart4 xchart4f def} {/xchart4 0 def} ifelse /pchartf where {pop /pchart1 pchartf def /pchart2 pchartf def /pchartd pchartdf def} {/pchart1 3 def} ifelse /colsepf where {pop /colsep1 colsepf def /colseP2 colsepf def /colsepd colsepdf def} {/colsep1 0 def} ifelse /pmetamf where {pop /pmetam1 pmetamf def /pmetam2 pmetamf def /pmetamd pmetamdf def} {/pmetam1 0 def} ifelse %either defaul values for xchart=0 or values for xchart=1 /lanind lanind1 def % /colorm colorm1 def % /deintp deintp1 def % /xcolor xcolor1 def % /xchart xchart1 def % /pchart pchart1 def % /colsep colsep1 def % /pmetam pmetam1 def % 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 %**************************************************** %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 /xcolorl xcolor def %0 1 0 {/xcolorl exch def %xcolorl=0,0 %gsave xcolorl 1 eq {0 1 79 {/i exch def %i=0,79 F2 i F10 i get put } for %i=0,79 } if /NK 0 def %normalization NK=0 (Y=100), NK=1 (Y=88,6) /YKSUM 0 def %For CIE Illuminant E 0 1 79 {/i exch def %i=0,1,79 /YKSUM YKSUM F2 80 i add get add def } for %i=0,1,79 0 1 79 {/i exch def %i=0,1,79 F2N 00 i add F2 00 i add get YKSUM div 100 mul put F2N 80 i add F2 80 i add get YKSUM div 100 mul put F2N 160 i add F2 160 i add get YKSUM div 100 mul put } for %i=0,1,79 %defines FXN, FYN, FZN 0 to 79 0 1 79 {/i exch def %i=0,79 FXN i F2N 000 i add get put FYN i F2N 080 i add get put FZN i F2N 160 i add get put } for %i=0,79 00 1 60 {/i exch def %i=0,60 %range 400..700nm FXD i FXN 005 i add get put FYD i FYN 005 i add get put FZD i FZN 005 i add get put DOW i 400 i 5 mul add put %range 400 to 700 } for %i=0,60 %for interpolation FXD 61 FXD 60 get put FYD 61 FYD 60 get put FZD 61 FZD 60 get put FXD 62 FXD 60 get put FYD 62 FYD 60 get put FZD 62 FZD 60 get put /xdel 1005 def %/ydel 393 def %/ydel 275 def /ydel 175 def /x0 050 def /x1 -150 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 FARBEda 00 (Cm=380_561) put FARBEca 00 (Rm=561_770) put FARBEd 00 (C) put FARBEc 00 (R) put FARBEda 13 (Gm=470_570) put FARBEca 13 (Mm=570_470) put FARBEd 13 (G) put FARBEc 13 (M) put FARBEda 23 (Ym=520_770) put FARBEca 23 (Bm=380_520) put FARBEd 23 (Y) put FARBEc 23 (B) put FARBEda 18 (Ym=495_770) put FARBEca 18 (Bm=380_495) put FARBEd 18 (Y) put FARBEc 18 (B) put /iacol 23 def /xchart14 1 def %for a=x/y (0) and a=(x-0.171)/y (1) 0 setgray 5 /Times-ISOL1 FS 175 85 moveto (DG640-7N-R) show %xchart 0 eq {(R) show} % {deintp colorm 2 mul add cvishow} ifelse 72 90 translate 0.01 MM dup scale gsave %/xchartx xchart def /xchartx 1 def %only D50 %%0 1 7 {/xchartx exch def %xchartx=0,7 gsave /xchartl 0 def %xchartl=0 to 7 for 8 pictures 0 1 07 {/xchartl exch def %xchartl=0,07 gsave xchartl 0 eq { 100 13000 translate} if xchartl 1 eq { 6100 13000 translate} if xchartl 2 eq { 100 08750 translate} if xchartl 3 eq { 6100 08750 translate} if xchartl 4 eq { 100 4500 translate} if xchartl 5 eq { 6100 4500 translate} if xchartl 6 eq { 100 0250 translate} if xchartl 7 eq { 6100 0250 translate} if 150 /Times-ISOL1 FS 0 setgray 300 -150 moveto NK 0 eq {(DG640-) show} {(DG641-) show} ifelse xchartl 1 add cvishow (A) show %A (_) show xchart 1 add cvishow /xwidth 5400 def /ywidth 4000 def 1 1 0 setrgbcolor 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 colrecst %frame black %calculation of XW,YW,ZW for illuminant %D65, D50, P40, A00, E00, C00, P00, Q00 %P60, P55, P50, P45, P40, P35, P30, P25 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 %calculation of XW,YW,ZW for illuminant Pxx, Dxx 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 0 1 79 {/i exch def %i=0,1,79 /YKSUM YKSUM SDAK i get F2 80 i add get mul add def } for %i=0,1,79 0 1 79 {/i exch def %i=0,1,79 F2N 00 i add SDAK i get F2 00 i add get mul YKSUM div 100 mul put F2N 80 i add SDAK i get F2 80 i add get mul YKSUM div 100 mul put F2N 160 i add SDAK i get F2 160 i add get mul YKSUM div 100 mul put } for %i=0,1,79 %XW,YW,ZW for white /XW 0 def /YW 0 def /ZW 0 def 0 1 079 {/i exch def %i=0,79 /XW XW F2N 00 i add get add def /YW YW F2N 80 i add get add def /ZW ZW F2N 160 i add get add def } for %i=0,79 /SUMW XW YW add ZW add def %for D65, D50, P40, A00, E00 /XANW XW SUMW div def /YANW YW SUMW div def /ZANW ZW SUMW div def xchart14 0 eq {%xchart14=0 /AANW XW YW 0.0001 add div def } if %xchart14=0 xchart14 1 eq {%xchart14=1 /AANW XANW 0.171 sub YANW 0.0001 add div def } if %xchart14=1 /BANW ZW YW 0.0001 add div 0.4 mul neg def 0 1 62 {/i exch def %i=0,62 FAD i FXD i get put FBD i FYD i get put FCD i FZD i get put } for %i=0,62 0 1 1 {/Icom exch def %Icom=0,1 only for part 1 Icom 0 eq {/xpos 100 def /xpos1 12100 def} {%/xpos 12100 def /xpos 100 def /xpos1 100 def} ifelse %/ymax 3700 def /ymax 3820 def TBS xpos 50 sub ymax ydel 0 mul sub moveto (CIE\255) show TELi xchartx get show (\255Daten von ) showde ( data of ) showea TBIS (\255Ostwald) showde ( Ostwald) showea TBS (\255Farben von maximalem Buntwert) showde ( colours of maximum chromatic value) showea TBIS ( C) show TBL 0 -60 rmoveto (AB) show 0 60 rmoveto xpos 50 sub ymax ydel 1 mul sub moveto TBIS (Y) show TBL 0 -60 rmoveto (w) show xcolorl 1 eq {(,10) show} if 0 60 rmoveto TBS NK 0 eq {(=100) show}{(=88,6) show} ifelse TBS (, ) show FARBEda iacol get show TBS (, ) show FARBEca iacol get show /icurm 1 def %0:dominant, 1:and complimentary colours %icurm=1: 1\255minus data (icurm=1) /iout0x 1 def %coordinate system /iout1x 1 def %iout1x=1:Ostwald colours 1 with procedures _cur2 %dominant (icurm=0) and complementary (icurm=1) /iout2x 0 def %iout2x=1:Ostwald colours 2 with procedures _cur2 /iout3x 0 def %sRGB colours, iout3x=1:sRGB data icurm 1 eq {%icurm=1 TBS (, and ) showea ( und ) showde (1\255minus data ( - -)) showea (1\255Minus\255Daten ( - -)) showde } if %icurm=1 iout2x 1 eq {%iout2x=1 TBS (, 2 calculation methods) showea (, 2 Berechnungsmethoden) showde } if %iout2x=1 iout3x 1 eq {%iout3x=1 TBS (, and ) showea ( und ) showde TBIS (sRGB) show TBS ( data ( - -)) showea (\255Daten ( - -)) showde } if %iout3x=1 %********************************************************* /WEL1 120 array def %irregular or regular definition /WEL2 120 array def %irregular or regular definition %0 1 2 3 4 5 6 7 8 9 /WEL1 [405 435 450 460 465 470 475 480 485 490 495 500 510 520 530 540 545 550 555 560 ] def /WEL1 [405 410 415 420 425 430 435 440 445 450 455 460 465 470 475 480 485 490 495 500 505 510 515 520 525 530 535 540 545 550 555 560 565 570 575 580 585 590 595 600 605 610 615 620 625 630 635 640 645 650 655 660 665 670 675 680 685 690 695 700 ] def 0 1 57 {/k exch def %k=0,57 %wavelength 405..700nm /j WEL1 k get 400 sub 5 idiv def /FF1 FXD j get def %start at 405..700nm /FF2 FYD j get def /FF3 FZD j get def /U1 XW def /U2 YW def /U3 ZW def /FXU1 FF2 U3 mul FF3 U2 mul sub def /FXU2 FF3 U1 mul FF1 U3 mul sub def /FXU3 FF1 U2 mul FF2 U1 mul sub def /INP -1 def /IPN -1 def %assumption jump from TN to TP from negativ to positiv 0 1 60 {/i exch def %i=1,60 /TN FAD i get FXU1 mul FBD i get FXU2 mul add FCD i get FXU3 mul add def /TP FAD i 1 add get FXU1 mul FBD i 1 add get FXU2 mul add FCD i 1 add get FXU3 mul add def TN 0 le TP 0 gt and {/INP i def exit} if } for %i=1,60 0 1 60 {/i exch def %i=1,60 /TN FAD i get FXU1 mul FBD i get FXU2 mul add FCD i get FXU3 mul add neg def /TP FAD i 1 add get FXU1 mul FBD i 1 add get FXU2 mul add FCD i 1 add get FXU3 mul add neg def TN 0 le TP 0 gt and {/IPN i def exit} if } for %i=1,60 TM Icom 0 eq {%Icom=0 i11i k INP put i21i k IPN put } { i12i k IPN put i22i k INP put } ifelse %Icom=0,1 %********************************************************* /kNP INP def kNP 0 ge {%kNP>=0 proc_ABC_KNP_FWERTiX %input FAD,KNP, output FWERTiXYZ (i=1,4) /XIE1 0 def %start values TN=0 for XIE1, TP>0 for XIE2 /XIE2 1 def 0 1 9 {/mk exch def %mk=0,9 /XIE XIE1 XIE2 add 0.5 mul def proc_XIE_TN1 %input XIE, ouput TN1 TNX 0 le {/XIE1 XIE def /TN1 TNX def} {/XIE2 XIE def /TP1 TNX def} ifelse } for %mk=0,9 /XIE XIE1 XIE2 add 0.5 mul def /DOWXIE1 DOW INP get DOW INP 1 add get DOW INP get sub XIE mul add def /XIENP XIE def } if %kNP>=0 %********************************************************* /kNP IPN def kNP 0 ge {%kNP>=0 proc_ABC_KNP_FWERTiX %input FAD,KNP, output FWERTiXYZ (i=1,4) /XIE1 0 def %start values TN=0 for XIE1, TP>0 for XIE2 /XIE2 1 def /FXU1 FXU1 neg def /FXU2 FXU2 neg def /FXU3 FXU3 neg def 0 1 9 {/mk exch def %mk=0,9 /XIE XIE1 XIE2 add 0.5 mul def proc_XIE_TN1 %input XIE, ouput TN1 TNX 0 le {/XIE1 XIE def /TN1 TNX def} {/XIE2 XIE def /TP1 TNX def} ifelse } for %mk=0,9 /XIE XIE1 XIE2 add 0.5 mul def /DOWXIE2 DOW IPN get DOW IPN 1 add get DOW IPN get sub XIE mul add def /XIEPN XIE def } if %kNP>=0 %********************************************************* Icom 0 eq {%Icom=0 INP 0 ge {%INP>=0 % xpos xdel 0 mul add 400 add ymax ydel LP mul sub moveto % DOWXIE1 0.03 add cvishow %includes rounding failure w11i k DOWXIE1 0.03 add cvi put w1c1i k () put /DOWEL1 DOWXIE1 def /DOWEL1c () def } if %INP>=0 IPN 0 ge {%IPN>=0 % xpos xdel 1 mul add 400 add ymax ydel LP mul sub moveto % DOWXIE2 0.03 add cvishow w21i k DOWXIE2 0.03 add cvi put w2c1i k () put /DOWEL2 DOWXIE2 def /DOWEL2c () def } if %IPN>=0 IPN 0 lt {%IPN=-1 % xpos xdel 1 mul add 400 add ymax ydel LP mul sub moveto % DOWXIE1 0.03 add cvishow (c) show w21i k DOWXIE1 0.03 add cvi put w2c1i k (c) put /DOWEL2 DOWXIE1 def /DOWEL2c (c) def } if %IPN=-1 }%Icom=0 {%Icom=1 INP 0 ge {%INP>=0 % xpos xdel 1 mul add 400 add ymax ydel LPP mul sub moveto % DOWXIE1 0.03 add cvishow w22i k DOWXIE1 0.03 add cvi put w2c2i k () put /DOWEL1 DOWXIE1 def /DOWEL1c () def } if %INP>=0 IPN 0 ge {%IPN>=0 % xpos xdel 0 mul add 400 add ymax ydel LPP mul sub moveto % DOWXIE2 0.03 add cvishow w12i k DOWXIE2 0.03 add cvi put w1c2i k () put /DOWEL2 DOWXIE2 def /DOWEL2c () def } if %IPN>=0 IPN 0 lt {%IPN=-1 % xpos xdel 0 mul add 400 add ymax ydel LPP mul sub moveto % DOWXIE1 cvishow (c) show w12i k DOWXIE1 0.03 add cvi put w1c2i k (c) put /DOWEL2 DOWXIE1 def /DOWEL2c (c) def } if %IPN=-1 } ifelse %Icom=0,1 0 0 0 setrgbcolor %********************************************************* 0 1 79 {/i exch def %i=0,79 RA i 0 put } for %i=0,79 INP -1 eq {/i1 0 def} %380nm {/i1 INP 5 add def} ifelse %405..700nm IPN -1 eq {/i2 79 def} %770nm {/i2 IPN 5 add def} ifelse %405..700nm i2 i1 ge {%i1i2 i1 1 79 {/i exch def %i=i1,79 RA i 1 put } for %i=i1,79 0 1 i2 {/i exch def %i=0,i2 RA i 1 put } for %i=0,i2 } ifelse %i1>i2 %correction i2 i1 ge {%i1i2 RA i1 0.5 put RA i2 0.5 XIEPN 0.5 sub add put } ifelse %i1>i2 %*************************************************** /X 0 def /Y 0 def /Z 0 def 0 1 079 {/i exch def %i=0,79 /X X F2N 00 i add get RA i get mul add def /Y Y F2N 80 i add get RA i get mul add def /Z Z F2N 160 i add get RA i get mul add def } for %i=0,79 NK 1 eq {%NK=1 /faktn 0.8859 def /X X faktn mul def /Y Y faktn mul def /Z Z faktn mul def % /faktw 0.025 faktn div def %approximately 2,8% % /Xc XW X sub def %c=antichromatic % /Yc YW Y sub def % /Zc ZW Z sub def % /X X Xc faktw mul add faktn mul def % /Y Y Yc faktw mul add faktn mul def % /Z Z Zc faktw mul add faktn mul def } if %NK=1 /SUM X Y add Z add def /XAN X SUM 0.0001 add div def /YAN Y SUM 0.0001 add div def /ZAN Z SUM 0.0001 add div def %************************************************* Icom 1 eq {%Icom=1 /X XW X sub def /Y YW Y sub def /Z ZW Z sub def /SUM X Y add Z add def /XAN X SUM 0.0001 add div def /YAN Y SUM 0.0001 add div def /ZAN Z SUM 0.0001 add div def } if %Icom=1 /hxy YAN YANW sub XAN XANW sub 0.0001 add atan def Icom 0 eq {%Icom=0,1 X1i k X put Y1i k Y put Z1i k Z put %hxy1i k hxy put XAN1i k XAN put YAN1i k YAN put ZAN1i k ZAN put }%Icom=0 {%Icom=1 X2i k X put Y2i k Y put Z2i k Z put %hxy2i k hxy put XAN2i k XAN put YAN2i k YAN put ZAN2i k ZAN put } ifelse %Icom=0,1 xchart14 0 eq {%xchart14=0 /AAN X Y 0.0001 add div def } if %xchart14=0 xchart14 1 eq {%xchart14=1 /AAN XAN 0.171 sub YAN 0.0001 add div def } if %xchart14=1 /BAN Z Y 0.0001 add div 0.4 mul neg def /CAN AAN AANW sub dup mul BAN BANW sub dup mul add 0.0001 add sqrt def /A AAN AANW sub Y mul def /B BAN BANW sub Y mul def /CAB A dup mul B dup mul add 0.0001 add sqrt def /hAB B A 0.0001 add atan def Icom 0 eq {%Icom=0,1 Y1i k Y put A1i k A put B1i k B put CAB1i k CAB put hAB1i k hAB put AAN1i k AAN put BAN1i k BAN put CAN1i k CAN put }%Icom=0 {%Icom=1 Y2i k Y put A2i k A put B2i k B put CAB2i k CAB put hAB2i k hAB put AAN2i k AAN put BAN2i k BAN put CAN2i k CAN put } ifelse %Icom=0,1 /D13 1 3 div def /D841_108 841 108 div def /D16_116 16 116 div def /D24_116 24 116 div 3 exp def X XW div D24_116 gt {/FXXN X XW div 0.0001 add D13 exp def} {/FXXN D841_108 X XW div mul D16_116 add def} ifelse Y YW div D24_116 gt {/FYYN Y YW div 0.0001 add D13 exp def} {/FYYN D841_108 Y YW div mul D16_116 add def} ifelse Z ZW div D24_116 gt {/FZZN Z ZW div 0.0001 add D13 exp def} {/FZZN D841_108 Z YW div mul D16_116 add def} ifelse /L* 116. FYYN mul 16. sub def /a* 500. FXXN FYYN sub mul def /b* 200. FYYN FZZN sub mul def /C*ab a* dup mul b* dup mul add 0.5 exp def /h*ab b* a* 0.000001 add atan def /a' X Y 0.0001 add div D13 exp 0.2191 mul def /b' Z Y 0.0001 add div D13 exp -0.08376 mul def /c' a' dup mul b' dup mul add 0.0001 add sqrt def Icom 0 eq {%Icom=0,1 L*1i k L* put a*1i k a* put b*1i k b* put C*ab1i k C*ab put h*ab1i k h*ab put a'1i k a' put b'1i k b' put c'1i k c' put }%Icom=0 {%Icom=1 L*2i k L* put a*2i k a* put b*2i k b* put C*ab2i k C*ab put h*ab2i k h*ab put a'2i k a' put b'2i k b' put c'2i k c' put } ifelse %Icom=0,1 %********************************************************* %calculation of lamdad and lambdac for X, Y, Z /FF1 X def /FF2 Y def /FF3 Z def /U1 XW def /U2 YW def /U3 ZW def /FXU1 FF2 U3 mul FF3 U2 mul sub def /FXU2 FF3 U1 mul FF1 U3 mul sub def /FXU3 FF1 U2 mul FF2 U1 mul sub def /INP -1 def /IPN -1 def %assumption jump from TN to TP from negativ to positiv 0 1 60 {/i exch def %i=1,60 /TN FAD i get FXU1 mul FBD i get FXU2 mul add FCD i get FXU3 mul add def /TP FAD i 1 add get FXU1 mul FBD i 1 add get FXU2 mul add FCD i 1 add get FXU3 mul add def TN 0 le TP 0 gt and {/INP i def exit} if } for %i=1,60 0 1 60 {/i exch def %i=1,60 /TN FAD i get FXU1 mul FBD i get FXU2 mul add FCD i get FXU3 mul add neg def /TP FAD i 1 add get FXU1 mul FBD i 1 add get FXU2 mul add FCD i 1 add get FXU3 mul add neg def TN 0 le TP 0 gt and {/IPN i def exit} if } for %i=1,60 TM Icom 0 eq {%Icom=0,1 id1i k INP put ic1i k IPN put }%Icom=0 {%Icom=1 id2i k INP put ic2i k IPN put } ifelse %Icom=0,1 %********************************************************* /kNP INP def kNP 0 ge {%kNP>=0 proc_ABC_KNP_FWERTiX %input FAD,KNP, output FWERTiXYZ (i=1,4) /XIE1 0 def %start values TN=0 for XIE1, TP>0 for XIE2 /XIE2 1 def 0 1 9 {/mk exch def %mk=0,9 /XIE XIE1 XIE2 add 0.5 mul def proc_XIE_TN1 %input XIE, ouput TN1 TNX 0 le {/XIE1 XIE def /TN1 TNX def} {/XIE2 XIE def /TP1 TNX def} ifelse } for %mk=0,9 /XIE XIE1 XIE2 add 0.5 mul def /DOWXIE1 DOW INP get DOW INP 1 add get DOW INP get sub XIE mul add def } if %kNP>=0 %********************************************************* /kNP IPN def kNP 0 ge {%kNP>=0 proc_ABC_KNP_FWERTiX %input FAD,KNP, output FWERTiXYZ (i=1,4) /XIE1 0 def %start values TN=0 for XIE1, TP>0 for XIE2 /XIE2 1 def /FXU1 FXU1 neg def /FXU2 FXU2 neg def /FXU3 FXU3 neg def 0 1 9 {/mk exch def %mk=0,9 /XIE XIE1 XIE2 add 0.5 mul def proc_XIE_TN1 %input XIE, ouput TN1 TNX 0 le {/XIE1 XIE def /TN1 TNX def} {/XIE2 XIE def /TP1 TNX def} ifelse } for %mk=0,9 /XIE XIE1 XIE2 add 0.5 mul def /DOWXIE2 DOW IPN get DOW IPN 1 add get DOW IPN get sub XIE mul add def } if %kNP>=0 %********************************************************* INP 0 ge {%INP>=0,-1 % xpos x1 add xdel 9 mul add 400 add ymax ydel LP mul sub moveto % DOWXIE1 0.03 add cvishow Icom 0 eq {%Icom=0,1 wd1i k DOWXIE1 0.03 add cvi put wdc1i k () put }%Icom=0 {%Icom=1 wd2i k DOWXIE1 0.03 add cvi put wdc2i k () put } ifelse %Icom=0,1 /DOWEL1 DOWXIE1 def /DOWEL1c () def }%INP>=0 {%INP=-1 % xpos x1 add xdel 9 mul add 400 add ymax ydel LP mul sub moveto % DOWXIE2 0.03 add cvishow (c) show Icom 0 eq {%Icom=0,1 wd1i k DOWXIE2 0.03 add cvi put wdc1i k (c) put }%Icom=0 {%Icom=1 wd2i k DOWXIE2 0.03 add cvi put wdc2i k (c) put } ifelse %Icom=0,1 /DOWEL1 DOWXIE2 def /DOWEL1c (c) def } ifelse %INP>=0,-1 IPN 0 ge {%IPN>=0,-1 % xpos x1 add xdel 10 mul add 400 add ymax ydel LP mul sub moveto % DOWXIE2 0.03 add cvishow Icom 0 eq {%Icom=0,1 wc1i k DOWXIE2 0.03 add cvi put wcc1i k () put }%Icom=0 {%Icom=1 wc2i k DOWXIE2 0.03 add cvi put wcc2i k () put } ifelse %Icom=0,1 /DOWEL2 DOWXIE2 def /DOWEL2c () def }%IPN>=0 {%IPN=-1 % xpos x1 add xdel 10 mul add 400 add ymax ydel LP mul sub moveto % DOWXIE1 0.03 add cvishow (c) show Icom 0 eq {%Icom=0,1 wc1i k DOWXIE1 0.03 add cvi put wcc1i k (c) put }%Icom=0 {%Icom=1 wc2i k DOWXIE1 0.03 add cvi put wcc2i k (c) put } ifelse %Icom=0,1 /DOWEL2 DOWXIE1 def /DOWEL2c (c) def } ifelse %IPN>=0,-1 0 0 0 setrgbcolor } for %k=0,57 } for %Icom=0,1 only for part 1 %************************************************************* /DecodeXYZ* {dup 6 29 div ge {dup dup mul mul} {4 29 div sub 108 841 div mul} ifelse} bind 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 /cvishowb {cvi 6 string cvs show ( ) show} def /cvsshow1b {10 mul cvi 0.1 mul 7 string cvs show ( ) show} def /cvsshow2b {100 mul cvi 0.01 mul 7 string cvs show ( ) show} def /cvsshow3b {1000 mul cvi 0.001 mul 7 string cvs show ( ) show} def /cvishowr {0.5 add cvi 6 string cvs show} def /cvsshow1r {0.05 add 10 mul cvi 0.1 mul 7 string cvs show} def /cvsshow2r {0.005 add 100 mul cvi 0.01 mul 7 string cvs show} def /cvsshow3r {0.0005 add 1000 mul cvi 0.001 mul 7 string cvs show} def /cvi100 {100 mul cvi /xi exch def xi 0 lt {/VORz -1 def} {/VORz 1 def} ifelse /xia xi abs def VORz -1 eq {(\255) show} {(0) show} ifelse xia 0 ge xia 9 le {(0000) show} if xia 10 ge xia 99 le and {(000) show} if xia 100 ge xia 999 le and {(00) show} if xia 1000 ge xia 9999 le and {(0) show} if xia cvishow } bind def /cvi1000 {1000 mul cvi /xi exch def xi 0 ge xi 9 le {(000) show} if xi 10 ge xi 99 le and {(00) show} if xi 100 ge xi 999 le and {(0) show} if xi cvishow } bind def /ymax 16600 def /idy 206 def /YKSUM 0 def %For CIE Illuminant E 0 1 79 {/i exch def %i=0,1,79 /YKSUM YKSUM F2 80 i add get add def } for %i=0,1,79 0 1 79 {/i exch def %i=0,1,79 F2N 00 i add F2 00 i add get YKSUM div 100 mul put F2N 80 i add F2 80 i add get YKSUM div 100 mul put F2N 160 i add F2 160 i add get YKSUM div 100 mul put } for %i=0,1,79 %defines FXN, FYN, FZN 0 to 79 0 1 79 {/i exch def %i=0,79 FXN i F2N 000 i add get put FYN i F2N 080 i add get put FZN i F2N 160 i add get put } for %i=0,79 00 1 60 {/i exch def %i=0,60 %range 400..700nm FXD i FXN 005 i add get put FYD i FYN 005 i add get put FZD i FZN 005 i add get put DOW i 400 i 5 mul add put %range 400 to 700 } for %i=0,60 /YKSUM 0 def 0 1 79 {/i exch def %i=0,1,79 /YKSUM YKSUM SDAK i get F2 80 i add get mul add def } for %i=0,1,79 0 1 79 {/i exch def %i=0,1,79 F2N 00 i add SDAK i get F2 00 i add get mul YKSUM div 100 mul put F2N 80 i add SDAK i get F2 80 i add get mul YKSUM div 100 mul put F2N 160 i add SDAK i get F2 160 i add get mul YKSUM div 100 mul put } for %i=0,1,79 %XW,YW,ZW for white /XW 0 def /YW 0 def /ZW 0 def 0 1 079 {/i exch def %i=0,79 /XW XW F2N 00 i add get add def /YW YW F2N 80 i add get add def /ZW ZW F2N 160 i add get add def } for %i=0,79 /SUMW XW YW add ZW add def %for D65, D50, P40, A00, E00 /XANW XW SUMW div def /YANW YW SUMW div def /ZANW ZW SUMW div def xchart14 0 eq {%xchart14=0 /AANW XW YW 0.0001 add div def } if %xchart14=0 xchart14 1 eq {%xchart14=1 /AANW XANW 0.171 sub YANW 0.0001 add div def } if %xchart14=1 /BANW ZW YW 0.0001 add div 0.4 mul neg def 0 1 62 {/i exch def %i=0,62 FAD i FXD i get put FBD i FYD i get put FCD i FZD i get put } for %i=0,62 /ix0 100 def /ix1 ix0 1400 add def /ixd 600 def /iymax 16550 def /idy 206 def /xtext 0 def xtext 1 eq {%itext=1 TBIK ix0 iymax idy add 50 add moveto (rgb) show TBS 0 -90 rmoveto (i) show 0 90 rmoveto TBK ix1 ixd 0 mul add 150 add iymax idy add 50 add moveto TBK (i) show ix1 ixd 1 mul add 030 sub 0 moveto 0 17000 rlineto stroke ix1 ixd 1 mul add iymax idy add 50 add moveto TBK ([) show TBIK (X, Y, Z, x, y) show TBK (]) show TBS 0 -90 rmoveto (100) show 0 90 rmoveto TBK ix1 ixd 6 mul add 030 sub 0 moveto 0 17000 rlineto stroke ix1 ixd 6 mul add iymax idy add 50 add moveto TBK ([) show TBIK (L*, a*, b*, C*) show TBS -80 -90 rmoveto (ab) show 0 90 rmoveto TBIK (, h) show TBS 0 -90 rmoveto (ab) show 0 90 rmoveto TBIK TBIK (, a', b', c') show TBS 0 -90 rmoveto (ab) show 0 90 rmoveto TBIK TBK (]) show TBS 0 -90 rmoveto (100) show 0 90 rmoveto TBK ix1 ixd 14 mul add 030 sub 0 moveto 0 17000 rlineto stroke ix1 ixd 14 mul add iymax idy add 50 add moveto TBK ([) show TBIK (Y, A, B, C) show TBS -80 -90 rmoveto (AB) show 0 90 rmoveto TBIK (, h) show TBS 0 -90 rmoveto (AB) show 0 90 rmoveto TBIK TBIK (, a, b, c) show TBS 0 -90 rmoveto (AB) show 0 90 rmoveto TBIK TBK (]) show TBS 0 -90 rmoveto (100) show 0 90 rmoveto TBK ix1 ixd 22 mul add 030 sub 0 moveto 0 17000 rlineto stroke ix1 ixd 22 mul add iymax idy add 50 add moveto TBK ([) show TBIK (i) show TBS 0 -90 rmoveto (d) show 0 90 rmoveto TBK TBK (, ) show TBIK (i) show TBS 0 -90 rmoveto (c) show 0 90 rmoveto TBK TBK (, ) show TSK (l) show TBS 0 -90 rmoveto (d) show 0 90 rmoveto TBK TBK (, ) show TSK (l) show TBS 0 -90 rmoveto (c) show 0 90 rmoveto TBK TBK (]) show TBS 0 -90 rmoveto (100) show 0 90 rmoveto TBK ix1 ixd 26 mul add 030 sub 0 moveto 0 17000 rlineto stroke ix1 ixd 26 mul add iymax idy add 50 add moveto TBK ([) show TBIK (X, Y, Z) show TBK (]) show TBS 0 -90 rmoveto (89) show 0 90 rmoveto TBK ix1 ixd 29 mul add 030 sub 0 moveto 0 17000 rlineto stroke ix1 ixd 29 mul add iymax idy add 50 add moveto TBK ([) show TBIK (L*, a*, b*, C*) show TBS -80 -90 rmoveto (ab) show 0 90 rmoveto TBIK (, h) show TBS 0 -90 rmoveto (ab) show 0 90 rmoveto TBIK TBK (]) show TBS 0 -90 rmoveto (89) show 0 90 rmoveto TBK ix1 ixd 34 mul add 030 sub 0 moveto 0 17000 rlineto stroke ix1 ixd 34 mul add iymax idy add 50 add moveto TBK ([) show TBIK (Y, A, B, C) show TBS -80 -90 rmoveto (AB) show 0 90 rmoveto TBIK (, h) show TBS 0 -90 rmoveto (AB) show 0 90 rmoveto TBIK TBK (]) show TBS 0 -90 rmoveto (89) show 0 90 rmoveto TBK } if %itext=1 %STOP %************************************************************* /imshow {0 -50 rmoveto TBL (m) show 0 50 rmoveto TBIS} def /ioshow {0 -50 rmoveto TBL (o) show 0 50 rmoveto TBIS} def /idshow {0 -50 rmoveto TBL (d) show 0 50 rmoveto TBIS} def /ieshow {0 -50 rmoveto TBL (e) show 0 50 rmoveto TBIS} def %************************************************************* %xchartl=0-0 %STOP0-0 %BEG X,Y,Z = f(hAB) xchartl 0 eq {%xchartl=0 iout0x 1 eq {%iout0x=1 380 280 translate 30 setlinewidth 0 setgray 0 0 moveto 400 12 mul 100 add 0 rlineto stroke 0 0 moveto 0 3000 250 add rlineto stroke %icurm 1 eq {%icurm=1 [100] 100 setdash 0 1500 moveto 400 12 mul 300 add 0 rlineto stroke %cero line [ ] 0 setdash % } if %icurm=1 400 12 mul 150 add 0 moveto -100 50 rlineto 0 -100 rlineto closepath fill 0 3000 300 add moveto -50 -100 rlineto 100 0 rlineto closepath fill TBL /txl [ (400) (500) (600) (700) (400)] def /txw [ ( 0) ( 90) (180) (270) (360)] def /txc [() () () (494c,E) (561c,E)] def /tyY [( 0) ( 20) ( 40) ( 60) ( 80) (100)] def /tyL [(0,0) (0,4) (0,8) (1,2) (1,6) (2,0)] def %!x-Achse: 100 Einheiten = 1200 Skalen-Einheiten 0 1 4 {/i exch def /ixt {-150 i 1200 mul add} def /ixl { 000 i 1200 mul add} def ixt -250 moveto txw i get exec show ixl 75 moveto 0 -150 rlineto stroke } for /ixtt 4 1200 mul def /iytt 150 def ixtt 220 sub iytt moveto TBIS (h) show 0 -30 rmoveto TBL xchart14 0 eq {(AB0)}{(AB1)} ifelse show 0 30 rmoveto %!y-Achse: 100 S-Einheiten = 0600 Skalen-Einheiten TBL 0 1 5 {/i exch def /iyt {-50 i 0600 mul add} def /iyl {000 i 0600 mul add} def -300 iyt moveto tyY i get show -75 iyl moveto 150 0 rlineto stroke } for /ixtt 0 def /iytt 5.3 600 mul def ixtt 150 add iytt 80 sub moveto TBS TBIS (Y, ) show TBS (100 - ) show TBIS (Y) show TBS (, ) show TBIS (C) show TBL 0 -30 rmoveto xchart14 0 eq {(AB0)}{(AB1)} ifelse show 0 30 rmoveto TBS (, 100 - ) show TBIS (C) show TBL 0 -30 rmoveto xchart14 0 eq {(AB0)}{(AB1)} ifelse show 0 30 rmoveto TBS ( im Bereich) showde ( in the range) showea TBIS ( Y) show TBS NK 0 eq {%NK=0,1 (=0 bis 100) showde (=0 to 100) showea }%NK=0 {%K=1 (=0,0 bis 88,6) showde (=0,0 to 88,6) showea } ifelse %NK=0,1 380 neg 280 neg translate } if %iout0x=1 %******************************************************************* %STOP0-1 iout1x 1 eq {%iout1x=1 380 280 0000 add translate %shift of cero point by 0000: no shift /imin 0 def /ij 57 def /i0 58 def /ix 59 def TLL /kx 1 def /xpn 0 def %positiv data order /hw 0 def %hue angle scale /dtext 1 def %d=definition /htext 0 def %h=hue /ttext 0 def %t=table /ctext 1 def %c=curve /stext 1 def %s=sample colours /faktx 40 3 div def %scale hue angle %faktx 36 3 div def %scale wavelength /fakty 90 3 div def %scale XYZ, ABC %/fakty 30 3 div def %scale Lab* /faktz 90 3 div 4 mul def %not used dtext 1 eq {%dtext=1 proc_ALLi_def } if %dtext=1 /yshift 0000 def proc_hAB_min %allways with imin if htext=1 proc_ALLi_ALLin %allways ttext 1 eq {%ttext=1 /yshift 0000 def proc_hAB_tab } if %ttext=1 1 1 0 setrgbcolor 0 setlinewidth 0 0 moveto 400 12 mul 200 add 0 rlineto 0 3250 rlineto 400 12 mul 200 add neg 0 rlineto closepath clip 30 setlinewidth ctext 1 eq {%ctext=1 /yshift 0000 def /slog 0 def proc_hABw_XYZ_cur2 /slog 0 def } if %ctext=1 stext 1 eq {%stext=1 /yshift 0000 def /xhh*w 0 def /yYLC 0 def /slog 0 def proc_tab_Ocolors2 /slog 0 def } if %stext=1 380 neg 280 0000 add neg translate %shift of cero point by 1000, no shift } if %iout1x=1 } if %xchartl=0 %END X,Y,Z = f(hAB) %STOP0-4 %************************************************************* %xchartl=1-0 %STOP1-0 %BEG A,B,CAB = f(hAB) xchartl 1 eq {%xchartl=1 iout0x 1 eq {%iout0x=1 380 280 translate 30 setlinewidth 0 setgray 0 0 moveto 400 12 mul 100 add 0 rlineto stroke 0 0 moveto 0 3000 250 add rlineto stroke %icurm 1 eq {%icurm=1 [100] 100 setdash 0 1500 moveto 400 12 mul 300 add 0 rlineto stroke %cero line [ ] 0 setdash % } if %icurm=1 400 12 mul 150 add 0 moveto -100 50 rlineto 0 -100 rlineto closepath fill 0 3000 300 add moveto -50 -100 rlineto 100 0 rlineto closepath fill TBL /txl [ (400) (500) (600) (700) (400)] def /txw [ ( 0) ( 90) (180) (270) (360)] def /txc [() () () (494c,E) (561c,E)] def /tyY [( 0)( 20)( 40) ( 60) ( 80) (100)] def /tyL [(0,0) (0,4) (0,8) (1,2) (1,6) (2,0)] def /tyM [(-1,0) (-0,2) ( 0,6) ( 1,4) ( 2,2) ( 3,0)] def /tyK [(-1,0) ( 0,0) ( 1,0) ( 2,0) ( 3,0) ( 4,0)] def /tyJ [(-1,0) (-0,5) ( 0,0) ( 0,5) ( 1,0) ( 1,5)] def %!x-Achse: 100 Einheiten = 1200 Skalen-Einheiten 0 1 4 {/i exch def /ixt {-150 i 1200 mul add} def /ixl { 000 i 1200 mul add} def ixt -250 moveto txw i get exec show ixl 75 moveto 0 -150 rlineto stroke } for /ixtt 4 1200 mul def /iytt 150 def ixtt 220 sub iytt moveto TBIS (h) show 0 -30 rmoveto TBL xchart14 0 eq {(AB0)}{(AB1)} ifelse show 0 30 rmoveto TBL %!y-Achse: 100 S-Einheiten = 0600 Skalen-Einheiten %0 1 5 {/i exch def % /iyt {-50 i 0600 mul add} def % /iyl {000 i 0600 mul add} def % -300 iyt moveto tyL i get show % -75 iyl moveto 150 0 rlineto stroke % } for %!y-Achse: 100 S-Einheiten = 0750 Skalen-Einheiten 0 1 4 {/i exch def %3000:4=750 /iyt {-50 i 0750 mul add} def /iyl {000 i 0750 mul add} def -300 iyt moveto tyJ i get show -75 iyl moveto 150 0 rlineto stroke } for /ixtt 0 def /iytt 5.3 600 mul def ixtt 150 add iytt 80 sub moveto TBS (log[) show TBIS (Y) show TBS (/50], ) show TBS (log[) show TBIS (C) show TBL 0 -30 rmoveto xchart14 0 eq {(AB0)}{(AB1)} ifelse show 0 30 rmoveto TBS (/30] (---)) show ixtt 150 add iytt 80 sub ydel sub moveto TBS (log[50/) show TBIS (Y) show TBS (], ) show TBS (log[30/) show TBIS (C) show TBL 0 -30 rmoveto xchart14 0 eq {(AB0)}{(AB1)} ifelse show 0 30 rmoveto TBS (] (- -)) show 380 neg 280 neg translate } if %iout0x=1 %******************************************************************* %STOP1-1 iout1x 1 eq {%iout1x=1 380 280 0000 add translate %shift of cero point by 0000 /imin 0 def /ij 57 def /i0 58 def /ix 59 def TLL /kx 1 def /xpn 0 def %positiv data order /hw 0 def %hue angle scale /dtext 1 def %d=definition /htext 0 def %h=hue /ttext 0 def %t=table /ctext 1 def %c=curve /stext 1 def %s=sample colours /faktx 40 3 div def %scale hue angle %/faktx 36 3 div def %scale wavelength /fakty 90 3 div def %scale XYZ, ABC %/fakty 30 3 div def %scale Lab* /faktz 90 3 div 4 mul def %not used dtext 1 eq {%dtext=1 /yshift 0000 def proc_ALLi_def } if %dtext=1 proc_hAB_min %allways with imin if htext=1 proc_ALLi_ALLin %allways ttext 1 eq {%ttext=1 /yshift 0000 def proc_hAB_tab } if %ttext=1 1 1 0 setrgbcolor 0 setlinewidth % 0 -1200 moveto 400 12 mul 200 add 0 rlineto 0 3250 rlineto % 400 12 mul 200 add neg 0 rlineto closepath clip 0 -0000 moveto 400 12 mul 200 add 0 rlineto 0 3250 rlineto 400 12 mul 200 add neg 0 rlineto closepath clip 30 setlinewidth ctext 1 eq {%ctext=1 /yshift 0000 def /slog 1 def proc_hABw_XYZ_cur2 /slog 0 def } if %ctext=1 stext 1 eq {%stext=1 /yshift 0000 def /xhh*w 0 def /yYLC 0 def %proc_hh*w_YLC_samCGY /slog 1 def proc_tab_Ocolors2 /slog 0 def } if %stext=1 } if %iout1x=1 } if %xchartl=1 %END A,B,CAB = f(hAB) %STOP1-4 %************************************************************* %xchartl=2-0 %STOP2-0 %BEG A,B,CAB = f(hAB) xchartl 2 eq {%xchartl=2 iout0x 1 eq {%iout0x=1 380 280 translate 30 setlinewidth 0 setgray 0 0 moveto 400 12 mul 100 add 0 rlineto stroke 0 0 moveto 0 3000 250 add rlineto stroke %icurm 1 eq {%icurm=1 [100] 100 setdash 0 1500 moveto 400 12 mul 300 add 0 rlineto stroke %cero line [ ] 0 setdash % } if %icurm=1 400 12 mul 150 add 0 moveto -100 50 rlineto 0 -100 rlineto closepath fill 0 3000 300 add moveto -50 -100 rlineto 100 0 rlineto closepath fill TBL /txl [ (400) (500) (600) (700) (400)] def /txw [ ( 0) ( 90) (180) (270) (360)] def /txc [() () () (494c,E) (561c,E)] def /tyY [( 0)( 20)( 40) ( 60) ( 80) (100)] def /tyL [(0,0) (0,4) (0,8) (1,2) (1,6) (2,0)] def /tyM [(-1,0) (-0,2) ( 0,6) ( 1,4) ( 2,2) ( 3,0)] def /tyK [(-1,0) ( 0,0) ( 1,0) ( 2,0) ( 3,0) ( 4,0)] def /tyJ [(-1,0) (-0,5) ( 0,0) ( 0,5) ( 1,0) ( 1,5)] def %!x-Achse: 100 Einheiten = 1200 Skalen-Einheiten 0 1 4 {/i exch def /ixt {-150 i 1200 mul add} def /ixl { 000 i 1200 mul add} def ixt -250 moveto txw i get exec show ixl 75 moveto 0 -150 rlineto stroke } for /ixtt 4 1200 mul def /iytt 150 def ixtt 220 sub iytt moveto TBIS (h) show 0 -30 rmoveto TBL xchart14 0 eq {(AB0)}{(AB1)} ifelse show 0 30 rmoveto TBL %!y-Achse: 100 S-Einheiten = 0600 Skalen-Einheiten %0 1 5 {/i exch def % /iyt {-50 i 0600 mul add} def % /iyl {000 i 0600 mul add} def % -300 iyt moveto tyL i get show % -75 iyl moveto 150 0 rlineto stroke % } for %!y-Achse: 100 S-Einheiten = 0750 Skalen-Einheiten 0 1 4 {/i exch def %3000:4=750 /iyt {-50 i 0750 mul add} def /iyl {000 i 0750 mul add} def -300 iyt moveto tyJ i get show -75 iyl moveto 150 0 rlineto stroke } for /ixtt 0 def /iytt 5.3 600 mul def ixtt 150 add iytt 80 sub moveto ixtt 150 add iytt 80 sub moveto TBS (log[) show TBIS (Y) show TBS (/50], ) show TBS (log[) show TBIS (C) show TBL 0 -30 rmoveto xchart14 0 eq {(AB0)}{(AB1)} ifelse show 0 30 rmoveto TBS (/30] (---)) show ixtt 150 add iytt 80 sub ydel sub moveto TBS (log[50/) show TBIS (Y) show TBS (], ) show TBS (log[30/) show TBIS (C) show TBL 0 -30 rmoveto xchart14 0 eq {(AB0)}{(AB1)} ifelse show 0 30 rmoveto TBS (] (- -)) show 380 neg 280 neg translate } if %iout0x=1 %******************************************************************* %STOP2-1 iout1x 1 eq {%iout1x=1 380 280 0000 add translate %shift of cero point by 0000 /imin 0 def /ij 57 def /i0 58 def /ix 59 def TLL /kx 1 def /xpn 0 def %positiv data order /hw 0 def %hue angle scale /dtext 1 def %d=definition /htext 0 def %h=hue /ttext 0 def %t=table /ctext 1 def %c=curve /stext 1 def %s=sample colours /faktx 40 3 div def %scale hue angle %/faktx 36 3 div def %scale wavelength /fakty 90 3 div def %scale XYZ, ABC %/fakty 30 3 div def %scale Lab* /faktz 90 3 div 4 mul def %not used dtext 1 eq {%dtext=1 /yshift 0000 def proc_ALLi_def } if %dtext=1 proc_hAB_min %allways with imin if htext=1 proc_ALLi_ALLin %allways ttext 1 eq {%ttext=1 /yshift 0000 def proc_hAB_tab } if %ttext=1 1 1 0 setrgbcolor 0 setlinewidth % 0 -1200 moveto 400 12 mul 200 add 0 rlineto 0 3250 rlineto % 400 12 mul 200 add neg 0 rlineto closepath clip 0 -0000 moveto 400 12 mul 200 add 0 rlineto 0 3250 rlineto 400 12 mul 200 add neg 0 rlineto closepath clip 30 setlinewidth ctext 1 eq {%ctext=1 /yshift 0000 def /slog 2 def proc_hABw_XYZ_cur2 /slog 0 def } if %ctext=1 stext 1 eq {%stext=1 /yshift 0000 def /xhh*w 0 def /yYLC 0 def %proc_hh*w_YLC_samCGY /slog 2 def proc_tab_Ocolors2 /slog 0 def } if %stext=1 } if %iout1x=1 } if %xchartl=2 %END A,B,CAB = f(hAB) %STOP2-4 %************************************************************* %xchartl=3-0 %STOP3-0 %BEG A,B,CAB = f(hAB) xchartl 3 eq {%xchartl=3 iout0x 1 eq {%iout0x=1 380 280 translate 30 setlinewidth 0 setgray 0 0 moveto 400 12 mul 100 add 0 rlineto stroke 0 0 moveto 0 3000 250 add rlineto stroke %icurm 1 eq {%icurm=1 [100] 100 setdash 0 1500 moveto 400 12 mul 300 add 0 rlineto stroke %cero line [ ] 0 setdash % } if %icurm=1 400 12 mul 150 add 0 moveto -100 50 rlineto 0 -100 rlineto closepath fill 0 3000 300 add moveto -50 -100 rlineto 100 0 rlineto closepath fill TBL /txl [ (400) (500) (600) (700) (400)] def /txw [ ( 0) ( 90) (180) (270) (360)] def /txc [() () () (494c,E) (561c,E)] def /tyY [( 0)( 20)( 40) ( 60) ( 80) (100)] def /tyL [(0,0) (0,4) (0,8) (1,2) (1,6) (2,0)] def /tyM [(-1,0) (-0,2) ( 0,6) ( 1,4) ( 2,2) ( 3,0)] def /tyK [(-1,0) ( 0,0) ( 1,0) ( 2,0) ( 3,0) ( 4,0)] def /tyJ [(-1,0) (-0,5) ( 0,0) ( 0,5) ( 1,0) ( 1,5)] def %!x-Achse: 100 Einheiten = 1200 Skalen-Einheiten 0 1 4 {/i exch def /ixt {-150 i 1200 mul add} def /ixl { 000 i 1200 mul add} def ixt -250 moveto txw i get exec show ixl 75 moveto 0 -150 rlineto stroke } for /ixtt 4 1200 mul def /iytt 150 def ixtt 220 sub iytt moveto TBIS (h) show 0 -30 rmoveto TBL xchart14 0 eq {(AB0)}{(AB1)} ifelse show 0 30 rmoveto TBL %!y-Achse: 100 S-Einheiten = 0600 Skalen-Einheiten %0 1 5 {/i exch def % /iyt {-50 i 0600 mul add} def % /iyl {000 i 0600 mul add} def % -300 iyt moveto tyL i get show % -75 iyl moveto 150 0 rlineto stroke % } for %!y-Achse: 100 S-Einheiten = 0750 Skalen-Einheiten 0 1 4 {/i exch def %3000:4=750 /iyt {-50 i 0750 mul add} def /iyl {000 i 0750 mul add} def -300 iyt moveto tyJ i get show -75 iyl moveto 150 0 rlineto stroke } for /ixtt 0 def /iytt 5.3 600 mul def ixtt 150 add iytt 80 sub moveto ixtt 150 add iytt 80 sub moveto TBS (log[) show TBIS (Y) show TBS (/50], ) show TBS (log[\050) show TBIS (Y) show TBS (/50\051]/\050) show TBIS (C) show TBL 0 -30 rmoveto xchart14 0 eq {(AB0)}{(AB1)} ifelse show 0 30 rmoveto TBS (/30\051] (---)) show ixtt 150 add iytt 80 sub ydel sub moveto TBS (log[50/) show TBIS (Y) show TBS (], ) show TBS (log[\050) show TBIS (C) show TBL 0 -30 rmoveto xchart14 0 eq {(AB0)}{(AB1)} ifelse show 0 30 rmoveto TBS (/30\051/\050) show TBIS (Y) show TBS (/50\051] (- -)) show 380 neg 280 neg translate } if %iout0x=1 %******************************************************************* %STOP3-1 iout1x 1 eq {%iout1x=1 380 280 0000 add translate %shift of cero point by 0000 /imin 0 def /ij 57 def /i0 58 def /ix 59 def TLL /kx 1 def /xpn 0 def %positiv data order /hw 0 def %hue angle scale /dtext 1 def %d=definition /htext 0 def %h=hue /ttext 0 def %t=table /ctext 1 def %c=curve /stext 1 def %s=sample colours /faktx 40 3 div def %scale hue angle %/faktx 36 3 div def %scale wavelength /fakty 90 3 div def %scale XYZ, ABC %/fakty 30 3 div def %scale Lab* /faktz 90 3 div 4 mul def %not used dtext 1 eq {%dtext=1 /yshift 0000 def proc_ALLi_def } if %dtext=1 proc_hAB_min %allways with imin if htext=1 proc_ALLi_ALLin %allways ttext 1 eq {%ttext=1 /yshift 0000 def proc_hAB_tab } if %ttext=1 1 1 0 setrgbcolor 0 setlinewidth % 0 -1200 moveto 400 12 mul 200 add 0 rlineto 0 3250 rlineto % 400 12 mul 200 add neg 0 rlineto closepath clip 0 -0000 moveto 400 12 mul 200 add 0 rlineto 0 3250 rlineto 400 12 mul 200 add neg 0 rlineto closepath clip 30 setlinewidth ctext 1 eq {%ctext=1 /yshift 0000 def /slog 2 def proc_hABw_XYZ_cur2 /slog 0 def } if %ctext=1 stext 1 eq {%stext=1 /yshift 0000 def /xhh*w 0 def /yYLC 0 def %proc_hh*w_YLC_samCGY /slog 2 def proc_tab_Ocolors2 /slog 0 def } if %stext=1 } if %iout1x=1 } if %xchartl=3 %END A,B,CAB = f(hAB) %STOP3-4 %************************************************************* %xchartl=4-0 %STOP4-0 %BEG X,Y,Z = f(wd) xchartl 4 eq {%xchartl=4 iout0x 1 eq {%iout0x=1 380 280 translate 30 setlinewidth 0 setgray 0 0 moveto 1200 3.72 mul 100 add 0 rlineto stroke 0 0 moveto 0 3000 250 add rlineto stroke %icurm 1 eq {%icurm=1 [100] 100 setdash 0 1500 moveto 400 12 mul 300 add 0 rlineto stroke %cero line [ ] 0 setdash % } if %icurm=1 1200 3.72 mul 150 add 0 moveto -100 50 rlineto 0 -100 rlineto closepath fill 0 3000 300 add moveto -50 -100 rlineto 100 0 rlineto closepath fill TBL /txl [ (400) (500) (600) (700;495c) (567c;400)] def /txw [ ( 0) ( 90) (180) (270) (360)] def /txc [() () () (494c,E) (561c,E)] def /tye [(-10) ( -5) ( 0) ( 5) ( 10) ( 15)] def /tyY [( 0)( 20)( 40) ( 60) ( 80) (100)] def /tyL [(0,0) (0,4) (0,8) (1,2) (1,6) (2,0)] def %!x-Achse: 100 Einheiten = 1200 Skalen-Einheiten 0 1 4 {/i exch def /ixt {-150 i 2 le {i} if i 3 eq {3 0.10 sub} if i 4 eq {3.72 0.15 sub} if 1200 mul add} def /ixl { 000 i 4 lt {i}{3.72} ifelse 1200 mul add} def ixt -250 moveto txl i get exec show ixl 75 moveto 0 -150 rlineto stroke } for /ixtt 4 1200 mul def /iytt 150 def ixtt 150 sub iytt 200 sub moveto SS (l) show 0 -30 rmoveto TBL (d) show 0 30 rmoveto TS %!y-Achse: 100 S-Einheiten = 0600 Skalen-Einheiten TBL 0 1 5 {/i exch def /iyt {-50 i 0600 mul add} def /iyl {000 i 0600 mul add} def -300 iyt moveto tyY i get show -75 iyl moveto 150 0 rlineto stroke } for /ixtt 0 def /iytt 5.3 600 mul def ixtt 150 add iytt 80 sub moveto TBIS (Y, ) show TBS (100 - ) show TBIS (Y) show TBS (, ) show TBIS (C) show TBL 0 -30 rmoveto xchart14 0 eq {(AB0)}{(AB1)} ifelse show 0 30 rmoveto TBS (, 100 - ) show TBIS (C) show TBL 0 -30 rmoveto xchart14 0 eq {(AB0)}{(AB1)} ifelse show 0 30 rmoveto TBS ( im Bereich) showde ( in the range) showea TBIS ( Y) show TBS NK 0 eq {%NK=0,1 (=0 bis 100) showde (=0 to 100) showea }%NK=0 {%K=1 (=0,0 bis 88,6) showde (=0,0 to 88,6) showea } ifelse %NK=0,1 380 neg 280 neg translate } if %iout0x=1 %***************************************************** %STOP4-1 iout1x 1 eq {%iout1x=1 380 280 0000 add translate %shift of cero point by 0000: no shift /imin 0 def /ij 57 def /i0 58 def /ix 59 def TLL /kx 1 def /xpn 1 def %negativ data order /hw 1 def %wavelength scale /dtext 1 def %d=definition /htext 0 def %h=hue /ttext 0 def %t=table /ctext 1 def %c=curve /stext 1 def %s=sample colours %/faktx 40 3 div def %scale hue angle /faktx 36 3 div def %scale wavelength /fakty 90 3 div def %scale XYZ, ABC %/fakty 30 3 div def %scale Lab* /faktz 90 3 div 4 mul def %not used dtext 1 eq {%dtext=1 proc_ALLi_def } if %dtext=1 /yshift 0000 def proc_iwd_min %allways with imin if htext=1 proc_ALLi_ALLin %allways ttext 1 eq {%ttext=1 /yshift 0000 def proc_iwd_tab } if %ttext=1 1 1 0 setrgbcolor 0 setlinewidth 0 0 moveto 400 12 mul 200 add 0 rlineto 0 3250 rlineto 400 12 mul 200 add neg 0 rlineto closepath clip 30 setlinewidth ctext 1 eq {%ctext=1 /yshift 0000 def /slog 0 def proc_hABw_XYZ_cur2 /slog 0 def } if %ctext=1 stext 1 eq {%stext=1 /yshift 0000 def /xhh*w 2 def /yYLC 0 def %proc_hh*w_YLC_samCGY /slog 0 def proc_tab_Ocolors2 /slog 0 def } if %stext=1 } if %iout1x=1 } if %xchartl=4 %END X,Y,Z = f(wd) %STOP4-4 %************************************************************* %xchartl=5-0 %STOP5-0 %BEG A,B,CAB = f(wd) xchartl 5 eq {%xchartl=5 iout0x 1 eq {%iout0x=1 380 280 translate 30 setlinewidth 0 setgray 0 0 moveto 1200 3.72 mul 100 add 0 rlineto stroke 0 0 moveto 0 3000 250 add rlineto stroke %icurm 1 eq {%icurm=1 [100] 100 setdash 0 1500 moveto 400 12 mul 300 add 0 rlineto stroke %cero line [ ] 0 setdash % } if %icurm=1 1200 3.72 mul 150 add 0 moveto -100 50 rlineto 0 -100 rlineto closepath fill 0 3000 300 add moveto -50 -100 rlineto 100 0 rlineto closepath fill TBL /txl [ (400) (500) (600) (700;495c) (567c;400)] def /txw [ ( 0) ( 90) (180) (270) (360)] def /txc [() () () (494c,E) (561c,E)] def /tye [(-10) ( -5) ( 0) ( 5) ( 10) ( 15)] def /tyA [(-40) (-20) ( 0) ( 20) ( 40) ( 60)] def /tyY [( 0)( 20)( 40) ( 60) ( 80) (100)] def /tyL [(0,0) (0,4) (0,8) (1,2) (1,6) (2,0)] def %!x-Achse: 100 Einheiten = 1200 Skalen-Einheiten 0 1 4 {/i exch def /ixt {-150 i 2 le {i} if i 3 eq {3 0.10 sub} if i 4 eq {3.72 0.15 sub} if 1200 mul add} def /ixl { 000 i 4 lt {i}{3.72} ifelse 1200 mul add} def ixt -250 moveto txl i get exec show ixl 75 moveto 0 -150 rlineto stroke } for /ixtt 4 1200 mul def /iytt 150 def ixtt 150 sub iytt 200 sub moveto SS (l) show 0 -30 rmoveto TBL (d) show 0 30 rmoveto TS %!y-Achse: 100 S-Einheiten = 0600 Skalen-Einheiten TBL 0 1 5 {/i exch def /iyt {-50 i 0600 mul add} def /iyl {000 i 0600 mul add} def -300 iyt moveto tyL i get show -75 iyl moveto 150 0 rlineto stroke } for /ixtt 0 def /iytt 5.3 600 mul def ixtt 150 add iytt 80 sub moveto TBS (log[) show TBIS (Y) show TBS (/50], ) show TBS (log[) show TBIS (C) show TBL 0 -30 rmoveto xchart14 0 eq {(AB0)}{(AB1)} ifelse show 0 30 rmoveto TBS (/30] (---)) show ixtt 150 add iytt 80 sub ydel sub moveto TBS (log[50/) show TBIS (Y) show TBS (], ) show TBS (log[30/) show TBIS (C) show TBL 0 -30 rmoveto xchart14 0 eq {(AB0)}{(AB1)} ifelse show 0 30 rmoveto TBS (] (- -)) show 380 neg 280 neg translate } if %iout0x=1 %************************************************* %STOP5-1 380 280 0000 add translate %shift of cero point by 0000 iout1x 1 eq {%iout1x=1 /imin 0 def /ij 57 def /i0 58 def /ix 59 def TLL /kx 1 def /xpn 1 def %negativ data order /hw 1 def %wavelength scale /dtext 1 def %d=definition /htext 0 def %h=hue /ttext 0 def %t=table /ctext 1 def %c=curve /stext 1 def %s=sample colours %/faktx 40 3 div def %scale hue angle /faktx 36 3 div def %scale wavelength /fakty 90 3 div def %scale XYZ, ABC %/fakty 30 3 div def %scale Lab* /faktz 90 3 div 4 mul def %not used dtext 1 eq {%dtext=1 /yshift -0000 def proc_ALLi_def } if %dtext=1 proc_iwd_min %allways with imin if htext=1 proc_ALLi_ALLin %allways ttext 1 eq {%ttext=1 /yshift -1200 def proc_iwd_tab } if %ttext=1 1 1 0 setrgbcolor 0 setlinewidth 0 -0000 moveto 400 12 mul 200 add 0 rlineto 0 3250 rlineto 400 12 mul 200 add neg 0 rlineto closepath clip 30 setlinewidth ctext 1 eq {%ctext=1 /yshift 0000 def /slog 1 def proc_hABw_XYZ_cur2 /slog 0 def %proc_hABw_ABCY_cur2 } if %ctext=1 stext 1 eq {%stext=1 /yshift -0000 def /xhh*w 2 def /yYLC 0 def %proc_hh*w_YLC_samCGY /slog 1 def proc_tab_Ocolors2 /slog 0 def } if %stext=1 } if %iout1x=1 } if %xchartl=5 %END A,B,CAB = f(wd) %STOP5-4 %************************************************************* %xchartl=6-0 %STOP6-0 %BEG A,B,CAB = f(wd) xchartl 6 eq {%xchartl=6 iout0x 1 eq {%iout0x=1 380 280 translate 30 setlinewidth 0 setgray 0 0 moveto 1200 3.72 mul 100 add 0 rlineto stroke 0 0 moveto 0 3000 250 add rlineto stroke %icurm 1 eq {%icurm=1 [100] 100 setdash 0 1500 moveto 400 12 mul 300 add 0 rlineto stroke %cero line [ ] 0 setdash % } if %icurm=1 1200 3.72 mul 150 add 0 moveto -100 50 rlineto 0 -100 rlineto closepath fill 0 3000 300 add moveto -50 -100 rlineto 100 0 rlineto closepath fill TBL /txl [ (400) (500) (600) (700;495c) (567c;400)] def /txw [ ( 0) ( 90) (180) (270) (360)] def /txc [() () () (494c,E) (561c,E)] def /tye [(-10) ( -5) ( 0) ( 5) ( 10) ( 15)] def /tyA [(-40) (-20) ( 0) ( 20) ( 40) ( 60)] def /tyY [( 0)( 20)( 40) ( 60) ( 80) (100)] def /tyL [(0,0) (0,4) (0,8) (1,2) (1,6) (2,0)] def /tyM [(-1,0) (-0,2) ( 0,6) ( 1,4) ( 2,2) ( 3,0)] def /tyK [(-1,0) ( 0,0) ( 1,0) ( 2,0) ( 3,0) ( 4,0)] def %!x-Achse: 100 Einheiten = 1200 Skalen-Einheiten 0 1 4 {/i exch def /ixt {-150 i 2 le {i} if i 3 eq {3 0.10 sub} if i 4 eq {3.72 0.15 sub} if 1200 mul add} def /ixl { 000 i 4 lt {i}{3.72} ifelse 1200 mul add} def ixt -250 moveto txl i get exec show ixl 75 moveto 0 -150 rlineto stroke } for /ixtt 4 1200 mul def /iytt 150 def ixtt 150 sub iytt 200 sub moveto SS (l) show 0 -30 rmoveto TBL (d) show 0 30 rmoveto TS TBL %!y-Achse: 100 S-Einheiten = 0600 Skalen-Einheiten %0 1 5 {/i exch def % /iyt {-50 i 0600 mul add} def % /iyl {000 i 0600 mul add} def % -300 iyt moveto tyL i get show % -75 iyl moveto 150 0 rlineto stroke % } for %!y-Achse: 100 S-Einheiten = 0750 Skalen-Einheiten 0 1 4 {/i exch def %3000:4=750 /iyt {-50 i 0750 mul add} def /iyl {000 i 0750 mul add} def -300 iyt moveto tyK i get show -75 iyl moveto 150 0 rlineto stroke } for /ixtt 0 def /iytt 5.3 600 mul def ixtt 150 add iytt 80 sub moveto ixtt 150 add iytt 80 sub moveto TBS (log[) show TBIS (Y) show TBS (/50], ) show TBS (log[) show TBIS (C) show TBL 0 -30 rmoveto xchart14 0 eq {(AB0)}{(AB1)} ifelse show 0 30 rmoveto TBS (/30] (---)) show ixtt 150 add iytt 80 sub ydel sub moveto TBS (log[50/) show TBIS (Y) show TBS (], ) show TBS (log[30/) show TBIS (C) show TBL 0 -30 rmoveto xchart14 0 eq {(AB0)}{(AB1)} ifelse show 0 30 rmoveto TBS (] (- -)) show 380 neg 280 neg translate } if %iout0x=1 %************************************************* %STOP6-1 380 280 0000 add translate %shift of cero point by 0000 iout1x 1 eq {%iout1x=1 /imin 0 def /ij 57 def /i0 58 def /ix 59 def TLL /kx 1 def /xpn 1 def %negativ data order /hw 1 def %wavelength scale /dtext 1 def %d=definition /htext 0 def %h=hue /ttext 0 def %t=table /ctext 1 def %c=curve /stext 1 def %s=sample colours %/faktx 40 3 div def %scale hue angle /faktx 36 3 div def %scale wavelength /fakty 90 3 div def %scale XYZ, ABC %/fakty 30 3 div def %scale Lab* /faktz 90 3 div 4 mul def %not used dtext 1 eq {%dtext=1 /yshift -0000 def proc_ALLi_def } if %dtext=1 proc_iwd_min %allways with imin if htext=1 proc_ALLi_ALLin %allways ttext 1 eq {%ttext=1 /yshift -1200 def proc_iwd_tab } if %ttext=1 1 1 0 setrgbcolor 0 setlinewidth 0 -0000 moveto 400 12 mul 200 add 0 rlineto 0 3250 rlineto 400 12 mul 200 add neg 0 rlineto closepath clip 30 setlinewidth ctext 1 eq {%ctext=1 /yshift 0750 def /slog 2 def proc_hABw_XYZ_cur2 /slog 0 def %proc_hABw_ABCY_cur2 } if %ctext=1 stext 1 eq {%stext=1 /yshift 0750 def /xhh*w 2 def /yYLC 0 def %proc_hh*w_YLC_samCGY /slog 2 def proc_tab_Ocolors2 /slog 0 def } if %stext=1 } if %iout1x=1 } if %xchartl=6 %END A,B,CAB = f(wd) %STOP6-4 %************************************************************* %xchartl=7-0 %STOP7-0 %BEG A,B,CAB = f(wd) xchartl 7 eq {%xchartl=7 iout0x 1 eq {%iout0x=1 380 280 translate 30 setlinewidth 0 setgray 0 0 moveto 1200 3.72 mul 100 add 0 rlineto stroke 0 0 moveto 0 3000 250 add rlineto stroke %icurm 1 eq {%icurm=1 [100] 100 setdash 0 1500 moveto 400 12 mul 300 add 0 rlineto stroke %cero line [ ] 0 setdash % } if %icurm=1 1200 3.72 mul 150 add 0 moveto -100 50 rlineto 0 -100 rlineto closepath fill 0 3000 300 add moveto -50 -100 rlineto 100 0 rlineto closepath fill TBL /txl [ (400) (500) (600) (700;495c) (567c;400)] def /txw [ ( 0) ( 90) (180) (270) (360)] def /txc [() () () (494c,E) (561c,E)] def /tye [(-10) ( -5) ( 0) ( 5) ( 10) ( 15)] def /tyA [(-40) (-20) ( 0) ( 20) ( 40) ( 60)] def /tyY [( 0)( 20)( 40) ( 60) ( 80) (100)] def /tyL [(0,0) (0,4) (0,8) (1,2) (1,6) (2,0)] def /tyM [(-1,0) (-0,2) ( 0,6) ( 1,4) ( 2,2) ( 3,0)] def /tyK [(-1,0) ( 0,0) ( 1,0) ( 2,0) ( 3,0) ( 4,0)] def %!x-Achse: 100 Einheiten = 1200 Skalen-Einheiten 0 1 4 {/i exch def /ixt {-150 i 2 le {i} if i 3 eq {3 0.10 sub} if i 4 eq {3.72 0.15 sub} if 1200 mul add} def /ixl { 000 i 4 lt {i}{3.72} ifelse 1200 mul add} def ixt -250 moveto txl i get exec show ixl 75 moveto 0 -150 rlineto stroke } for /ixtt 4 1200 mul def /iytt 150 def ixtt 150 sub iytt 200 sub moveto SS (l) show 0 -30 rmoveto TBL (d) show 0 30 rmoveto TS TBL %!y-Achse: 100 S-Einheiten = 0600 Skalen-Einheiten %0 1 5 {/i exch def % /iyt {-50 i 0600 mul add} def % /iyl {000 i 0600 mul add} def % -300 iyt moveto tyL i get show % -75 iyl moveto 150 0 rlineto stroke % } for %!y-Achse: 100 S-Einheiten = 0750 Skalen-Einheiten 0 1 4 {/i exch def %3000:4=750 /iyt {-50 i 0750 mul add} def /iyl {000 i 0750 mul add} def -300 iyt moveto tyK i get show -75 iyl moveto 150 0 rlineto stroke } for /ixtt 0 def /iytt 5.3 600 mul def ixtt 150 add iytt 80 sub moveto TBS (log[) show TBIS (Y) show TBS (/50], ) show TBS (log[\050) show TBIS (Y) show TBS (/50\051]/\050) show TBIS (C) show TBL 0 -30 rmoveto xchart14 0 eq {(AB0)}{(AB1)} ifelse show 0 30 rmoveto TBS (/30\051] (---)) show ixtt 150 add iytt 80 sub ydel sub moveto TBS (log[50/) show TBIS (Y) show TBS (], ) show TBS (log[\050) show TBIS (C) show TBL 0 -30 rmoveto xchart14 0 eq {(AB0)}{(AB1)} ifelse show 0 30 rmoveto TBS (/30\051/\050) show TBIS (Y) show TBS (/50\051] (- -)) show 380 neg 280 neg translate } if %iout0x=1 %************************************************* %STOP7-1 380 280 0000 add translate %shift of cero point by 0000 iout1x 1 eq {%iout1x=1 /imin 0 def /ij 57 def /i0 58 def /ix 59 def TLL /kx 1 def /xpn 1 def %negativ data order /hw 1 def %wavelength scale /dtext 1 def %d=definition /htext 0 def %h=hue /ttext 0 def %t=table /ctext 1 def %c=curve /stext 1 def %s=sample colours %/faktx 40 3 div def %scale hue angle /faktx 36 3 div def %scale wavelength /fakty 90 3 div def %scale XYZ, ABC %/fakty 30 3 div def %scale Lab* /faktz 90 3 div 4 mul def %not used dtext 1 eq {%dtext=1 /yshift -0000 def proc_ALLi_def } if %dtext=1 proc_iwd_min %allways with imin if htext=1 proc_ALLi_ALLin %allways ttext 1 eq {%ttext=1 /yshift -1200 def proc_iwd_tab } if %ttext=1 1 1 0 setrgbcolor 0 setlinewidth 0 -0000 moveto 400 12 mul 200 add 0 rlineto 0 3250 rlineto 400 12 mul 200 add neg 0 rlineto closepath clip 30 setlinewidth ctext 1 eq {%ctext=1 /yshift 0750 def /slog 2 def proc_hABw_XYZ_cur2 /slog 0 def %proc_hABw_ABCY_cur2 } if %ctext=1 stext 1 eq {%stext=1 /yshift 0750 def /xhh*w 2 def /yYLC 0 def %proc_hh*w_YLC_samCGY /slog 2 def proc_tab_Ocolors2 /slog 0 def } if %stext=1 } if %iout1x=1 } if %xchartl=7 %END A,B,CAB = f(wd) %STOP7-4 %************************ %special space for 'xm03'PROZ0.COM 2x before/after xchartl xchartl 0 eq { 100 neg 13000 neg translate} if xchartl 1 eq { 6100 neg 13000 neg translate} if xchartl 2 eq { 100 neg 08750 neg translate} if xchartl 3 eq { 6100 neg 08750 neg translate} if xchartl 4 eq { 100 neg 4500 neg translate} if xchartl 5 eq { 6100 neg 4500 neg translate} if xchartl 6 eq { 100 neg 0250 neg translate} if xchartl 7 eq { 6100 neg 0250 neg translate} if %showpage %XA grestore } for %xchartl=0,7 %8 chromaticity diagrams showpage %7R&7N grestore %%} for %xchartx=0,7 %8 illuminants %%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 DG640-8, %%BoundingBox: 70 90 226 206 /FS {findfont exch scalefont setfont} bind def /MM {72 25.4 div mul} def %%EndProlog gsave 8 /Times-Roman FS 72 83 moveto %!2 (DG640-8,) show 72 90 translate %! 0.01 MM 0.01 MM scale %! 15 setlinewidth %! 0 0 moveto 5400 0 rlineto 0 4000 rlineto -5400 0 rlineto %! closepath stroke 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 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 DG641-2, %%BoundingBox: 70 90 226 206 /FS {findfont exch scalefont setfont} bind def /MM {72 25.4 div mul} def %%EndProlog gsave 8 /Times-Roman FS 72 83 moveto %!2 (DG641-2,) show 72 90 translate %! 0.01 MM 0.01 MM scale %! 15 setlinewidth %! 0 0 moveto 5400 0 rlineto 0 4000 rlineto -5400 0 rlineto %! closepath stroke 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 DG641-2, %%BoundingBox: 70 90 226 206 /FS {findfont exch scalefont setfont} bind def /MM {72 25.4 div mul} def %%EndProlog gsave 8 /Times-Roman FS 72 83 moveto %!2 (DG641-2,) show 72 90 translate %! 0.01 MM 0.01 MM scale %! 15 setlinewidth %! 0 0 moveto 5400 0 rlineto 0 4000 rlineto -5400 0 rlineto %! closepath stroke grestore showpage %%Trailer %%EndDocument EndEPSF grestore gsave BeginEPSF 161 MM 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 DG641-3, %%BoundingBox: 70 90 226 206 /FS {findfont exch scalefont setfont} bind def /MM {72 25.4 div mul} def %%EndProlog gsave 8 /Times-Roman FS 72 83 moveto %!2 (DG641-3,) show 72 90 translate %! 0.01 MM 0.01 MM scale %! 15 setlinewidth %! 0 0 moveto 5400 0 rlineto 0 4000 rlineto -5400 0 rlineto %! closepath stroke grestore showpage %%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 DG641-4, %%BoundingBox: 70 90 226 206 /FS {findfont exch scalefont setfont} bind def /MM {72 25.4 div mul} def %%EndProlog gsave 8 /Times-Roman FS 72 83 moveto %!2 (DG641-4,) show 72 90 translate %! 0.01 MM 0.01 MM scale %! 15 setlinewidth %! 0 0 moveto 5400 0 rlineto 0 4000 rlineto -5400 0 rlineto %! closepath stroke grestore showpage %%Trailer %%EndDocument EndEPSF grestore gsave BeginEPSF 161 MM 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 DG641-5, %%BoundingBox: 70 90 226 206 /FS {findfont exch scalefont setfont} bind def /MM {72 25.4 div mul} def %%EndProlog gsave 8 /Times-Roman FS 72 83 moveto %!2 (DG641-5,) show 72 90 translate %! 0.01 MM 0.01 MM scale %! 15 setlinewidth %! 0 0 moveto 5400 0 rlineto 0 4000 rlineto -5400 0 rlineto %! closepath stroke 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 DG641-6, %%BoundingBox: 70 90 226 206 /FS {findfont exch scalefont setfont} bind def /MM {72 25.4 div mul} def %%EndProlog gsave 8 /Times-Roman FS 72 83 moveto %!2 (DG641-6,) show 72 90 translate %! 0.01 MM 0.01 MM scale %! 15 setlinewidth %! 0 0 moveto 5400 0 rlineto 0 4000 rlineto -5400 0 rlineto %! closepath stroke grestore showpage %%Trailer %%EndDocument EndEPSF grestore gsave BeginEPSF 161 MM 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/DG64/DG641-7N 20180701 %%BoundingBox: 70 83 400 582 %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/DG64/DG64.HTM) /Author (compare K. Richter "Computergrafik ...": ISBN 3-8007-1775-1) /Subject (goto: http://farbe.li.tu-berlin.de http://130.149.60.45/~farbmetrik) /Keywords (image reproduction, colour devices) /Creator (klaus.richter@mac.com) /CreationDate (D:2018070112000) /ModDate (D:20180701112000) /DOCINFO pdfmark17 [ /View [ /Fit ] /DOCVIEW pdfmark17 %END PDFDE011 /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 /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 r g b {setrgbcolor rec fill} bind def /colrecst %x y width heigth r g b {setrgbcolor rec stroke} bind def /TG {320 /Times-ISOL1 FS} bind def /TM {270 /Times-ISOL1 FS} bind def /TK {200 /Times-ISOL1 FS} bind def /TS {170 /Times-ISOL1 FS} bind def /TL {130 /Times-ISOL1 FS} bind def /TLL {100 /Times-ISOL1 FS} bind def /TIG {320 /TimesI-ISOL1 FS} bind def /TIM {270 /TimesI-ISOL1 FS} bind def /TIK {200 /TimesI-ISOL1 FS} bind def /TIS {170 /TimesI-ISOL1 FS} bind def /TIL {130 /TimesI-ISOL1 FS} bind def /TBG {320 /TimesB-ISOL1 FS} bind def /TBM {270 /TimesB-ISOL1 FS} bind def /TBK {200 /TimesB-ISOL1 FS} bind def /TBS {170 /TimesB-ISOL1 FS} bind def /TBL {130 /TimesB-ISOL1 FS} bind def /TBIG {320 /TimesBI-ISOL1 FS} bind def /TBIM {270 /TimesBI-ISOL1 FS} bind def /TBIK {200 /TimesBI-ISOL1 FS} bind def /TBIS {170 /TimesBI-ISOL1 FS} bind def /TBIL {130 /TimesBI-ISOL1 FS} bind def /SG {320 /Symbol FS} bind def /SM {270 /Symbol FS} bind def /SK {200 /Symbol FS} bind def /SS {170 /Symbol FS} bind def /SL {130 /Symbol FS} bind def /CBG {320 /CourierB-ISOL1 FS} bind def /CBM {270 /CourierB-ISOL1 FS} bind def /CBK {200 /CourierB-ISOL1 FS} bind def /CBS {170 /CourierB-ISOL1 FS} bind def /CBL {130 /CourierB-ISOL1 FS} bind def %for xchart8=0 /SP60 80 array def %380 bis 775 mit deltalambda=05 /SP55 80 array def %380 bis 775 mit deltalambda=05 /SP50 80 array def %380 bis 775 mit deltalambda=05 /SP45 80 array def %380 bis 775 mit deltalambda=05 /SP40 80 array def %380 bis 775 mit deltalambda=05 /SP35 80 array def %380 bis 775 mit deltalambda=05 /SP30 80 array def %380 bis 775 mit deltalambda=05 /SP25 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 /FXN 80 array def %FXN 0 = F2N imax /FYN 80 array def /FZN 80 array def /FXD 63 array def /FYD 63 array def /FZD 63 array def /FAD 63 array def /FBD 63 array def /FCD 63 array def %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 %allways 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 /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 /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 /xchart8 0 def % /DOW 82 array def /DOWZ 17 array def /F02Z 51 array def /F10Z 51 array def /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 %calculation of transformation data /FARBE 33 array def /FARBE [(R) (m) ( 561_770) %00 (Y) (m) ( 520_770) %01 (G) (m) ( 470_570) %02 (C) (m) ( 380_561) %03 (B) (m) ( 380_520) %04 (M) (m) ( 570_470) %05 (G) (o) ( 520_570) %06 (R) (o) ( 570_780) %07 (N) (0) ( 380_770) %08 (W) (0) ( 380_770) %09 (W) (1) ( 380_770) %10 ] def %/FARBE [(R) (m) ( 565_770) %00 % (Y) (m) ( 495_770) %01 % (G) (m) ( 475_575) %02 % (C) (m) ( 380_565) %03 % (B) (m) ( 380_495) %04 % (M) (m) ( 575_475) %05 % (N) (0) ( 380_770) %06 % (W) (0) ( 380_770) %07 % (W) (1) ( 380_770) %08 % ] def /xshift 10 array def %max 6 device + 4 elementary /yshift 10 array def /colori 10 array def /RX0 800 array def %10x80 /RX0 [ %(%Ro 00 570_770) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0000 0000 0000 0000 0000 0000 0000 0000 0500 1000 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %(%Ym 01 520_770) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0000 0000 0000 0000 0000 0000 0000 0000 0500 1000 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %(%Gm 02 470_570) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0000 0000 0000 0000 0000 0000 0000 0000 0500 1000 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 1000 1000 1000 1000 1000 1000 1000 1000 0500 0000 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 %(%Cm 03 380_570) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 1000 1000 1000 1000 1000 1000 1000 1000 0500 0000 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 %(%Bm 04 380_520) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 1000 1000 1000 1000 1000 1000 1000 1000 0500 0000 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 %(%Mm 05 570_470) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 1000 1000 1000 1000 1000 1000 1000 1000 0500 0000 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0000 0000 0000 0000 0000 0000 0000 0000 0500 1000 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %(%Go 06 520_570) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0000 0000 0000 0000 0000 0000 0000 0000 0500 1000 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 1000 1000 1000 1000 1000 1000 1000 1000 0500 0000 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 %(%N0(r=0,001) 07 380_770) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 0001 0001 0001 0001 0001 0001 0001 0001 0001 0001 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 0001 0001 0001 0001 0001 0001 0001 0001 0001 0001 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 0001 0001 0001 0001 0001 0001 0001 0001 0001 0001 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 0001 0001 0001 0001 0001 0001 0001 0001 0001 0001 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 0001 0001 0001 0001 0001 0001 0001 0001 0001 0001 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 0001 0001 0001 0001 0001 0001 0001 0001 0001 0001 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 0001 0001 0001 0001 0001 0001 0001 0001 0001 0001 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 0001 0001 0001 0001 0001 0001 0001 0001 0001 0001 %(%W1(r=1,000) 08 380_770) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %(%W1(r=1,000) 09 380_770) %380 %385 %390 %395 %400 %405 %410 %415 %420 %425 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %430 %435 %440 %445 %450 %455 %460 %465 %470 %475 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %480 %485 %490 %495 %500 %505 %510 %515 %520 %525 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %530 %535 %540 %545 %550 %555 %560 %565 %570 %575 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %580 %585 %590 %595 %600 %605 %610 %615 %620 %625 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %630 %635 %640 %645 %650 %655 %660 %665 %670 %675 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %680 %685 %690 %695 %700 %705 %710 %715 %720 %725 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 %730 %735 %740 %745 %750 %755 %760 %765 %770 %775 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 ] def %************************************************** /proc_ALLi_def {%BEG proc_ALLi_def ij=ix-2 0 1 ij {/i exch def %i=0,ij kx 1 eq {Xxi i X1i i get put Yxi i Y1i i get put Zxi i Z1i i get put Axi i A1i i get put Bxi i B1i i get put L*xi i L*1i i get put a*xi i a*1i i get put b*xi i b*1i i get put AANxi i AAN1i i get put BANxi i BAN1i i get put CANxi i CAN1i i get put idxi i id1i i get put wdxi i wd1i i get put hABxi i hAB1i i get put h*abxi i h*ab1i i get put } if kx 2 eq {Xxi i X2i i get put Yxi i Y2i i get put Zxi i Z2i i get put Axi i A2i i get put Bxi i B2i i get put L*xi i L*2i i get put a*xi i a*2i i get put b*xi i b*2i i get put AANxi i AAN2i i get put BANxi i BAN2i i get put CANxi i CAN2i i get put idxi i id2i i get put wdxi i wd2i i get put hABxi i hAB2i i get put h*abxi i h*ab2i i get put } if } for %i=1,ij } bind def %END proc_ALLi_def %*********************************************************** /proc_ALLi_ALLin {%BEG proc_ALLi_ALLin %new order from front, new data amount ix=ij+2 hABxin 0 hABxi imin get 360 xpn 0 eq {add}{sub} ifelse put %351-360=-9 h*abxin 0 h*abxi imin get 360 xpn 0 eq {add}{sub} ifelse put wdxin 0 wdxi imin get xpn 0 eq {400 sub 769 add}{769 sub 400 add} ifelse put %769=700+564-495 Xxin 0 Xxi imin get put Yxin 0 Yxi imin get put Zxin 0 Zxi imin get put Axin 0 Axi imin get put Bxin 0 Bxi imin get put L*xin 0 L*xi imin get put a*xin 0 a*xi imin get put b*xin 0 b*xi imin get put AANxin 0 AANxi imin get put BANxin 0 BANxi imin get put CANxin 0 CANxi imin get put idxin 0 idxi imin get put imin1 1 ij {/i exch def %32_57 old, imin=31(h=38) imin1=32 /in i imin1 sub 1 add def %i=32_57-32+1=01_26 new hABxin in hABxi i get put %in=1,26=26 values h*abxin in h*abxi i get put wdxin in wdxi i get put Xxin in Xxi i get put Yxin in Yxi i get put Zxin in Zxi i get put Axin in Axi i get put Bxin in Bxi i get put L*xin in L*xi i get put a*xin in a*xi i get put b*xin in b*xi i get put AANxin in AANxi i get put BANxin in BANxi i get put CANxin in CANxi i get put idxin in idxi i get put } for 0 1 imin {/i exch def %0-31 old /in ij imin sub i add 1 add def %in=57-31+i+1=26+i+1=26+31+1 hABxin in hABxi i get put h*abxin in h*abxi i get put wdxin in wdxi i get put Xxin in Xxi i get put Yxin in Yxi i get put Zxin in Zxi i get put Axin in Axi i get put Bxin in Bxi i get put L*xin in L*xi i get put a*xin in a*xi i get put b*xin in b*xi i get put AANxin in AANxi i get put BANxin in BANxi i get put CANxin in CANxi i get put idxin in idxi i get put } for hABxin ix hABxi imin1 get 360 xpn 0 eq {sub}{add} ifelse put %2.4+360 h*abxin ix h*abxi imin1 get 360 xpn 0 eq {sub}{add} ifelse put wdxin ix wdxi imin1 get xpn 0 eq {769 sub 400 add}{400 sub 769 add} ifelse put %769=700+564-495 Xxin ix Xxi imin1 get put Yxin ix Yxi imin1 get put Zxin ix Zxi imin1 get put Axin ix Axi imin1 get put Bxin ix Bxi imin1 get put L*xin ix L*xi imin1 get put a*xin ix a*xi imin1 get put b*xin ix b*xi imin1 get put AANxin ix AANxi imin1 get put BANxin ix BANxi imin1 get put CANxin ix CANxi imin1 get put idxin ix idxi imin1 get put } bind def %END proc_ALLi_ALLin %******************************************************** /proc_hAB_min {%BEG proc_hAB_min 0 1 ij {/i exch def %i=0,ij xpn 0 eq {%xpn=0,1 hABxi i get hABxi i 1 add get sub -100 le {/imin i def exit} if }%xpn=0 {%xpn=1 hABxi i get hABxi i 1 add get sub 100 ge {/imin i def exit} if } ifelse %xpn=0,1 } for %i=1,ij /imin1 imin 1 add def htext 1 eq {%htext=1 0100 2800 yshift add moveto (kx=) show kx cvishow (, imin=) show imin cvishow 1100 2800 yshift add moveto (hABxi=) show hABxi imin get cvsshow1 2100 2800 yshift add moveto (imin1=) show imin1 cvishow 3100 2800 yshift add moveto (hABxi1=) show hABxi imin1 get cvsshow1 } if %htext=1 } bind def %END proc_hAB_min %******************************************************** /proc_iwd_min {%BEG proc_iwd_min 1 1 ij {/i exch def %i=1,ij idxi i get -1 eq {wdxi i wdxi i get 495 sub 700 add put} if } for %i=1,ij 0 1 ij {/i exch def %i=0,ij xpn 0 eq {%xpn=0,1 idxi i get 0 gt idxi i 1 add get -1 eq and {/imin i def exit} if }%xpn=0 {%xpn=1 idxi i get -1 eq idxi i 1 add get 0 gt and {/imin i def exit} if } ifelse %xpn=0,1 } for %i=1,ij /imin1 imin 1 add def htext 1 eq {%htext=1 0100 2800 yshift add moveto (kx=) show kx cvishow (, imin=) show imin cvishow 1100 2800 yshift add moveto (iwdxi=) show idxi imin get cvishow (, ) show wdxi imin get cvsshow1 2100 2800 yshift add moveto (imin1=) show imin1 cvishow 3100 2800 yshift add moveto (iwdxi1=) show idxi imin1 get cvishow (, ) show wdxi imin1 get cvsshow1 } if %htext=1 } bind def %END proc_iwd_min %******************************************************** /proc_hAB_tab {%BEG proc_hAB_tab /ymaxn 2600 yshift add def /ydelx ydel 1.5 div def 0 1 ij {/i exch def %i=1,ij /i10 i 10 idiv def /ie i i 10 idiv 10 mul sub def /xn 100 ie 500 mul add def xn ymaxn i10 ydelx mul sub moveto i cvishow (,) show hABxi i get cvsshow1 } for %i=1,ij /ymaxn 1200 yshift add def 0 1 ix {/i exch def %i=1,ix /i10 i 10 idiv def /ie i i 10 idiv 10 mul sub def /xn 100 ie 500 mul add def xn ymaxn i10 ydelx mul sub moveto i cvishow (,) show hABxin i get cvsshow1 } for %i=1,ix newpath 180 faktx mul 00 fakty mul 40 0 360 arc fill 180 faktx mul 20 fakty mul 40 0 360 arc fill 180 faktx mul 40 fakty mul 40 0 360 arc fill 0 faktx mul -20 fakty mul 40 0 360 arc fill 0 faktx mul 20 fakty mul 40 0 360 arc fill } bind def %END proc_hAB_tab %******************************************************** /proc_iwd_tab {%BEG proc_iwd_tab /ymaxn 2600 yshift add def /ydelx ydel 1.5 div def 0 1 ij {/i exch def %i=1,ij /i10 i 10 idiv def /ie i i 10 idiv 10 mul sub def /xn 100 ie 490 mul add def xn ymaxn i10 ydelx mul sub moveto i cvishow (,) show idxi i get cvishow (, ) show wdxi i get cvishow } for %i=1,ij /ymaxn 1200 yshift add def 0 1 ix {/i exch def %i=1,ix /i10 i 10 idiv def /ie i i 10 idiv 10 mul sub def /xn 100 ie 490 mul add def xn ymaxn i10 ydelx mul sub moveto i cvishow (,) show idxin i get cvishow (, ) show wdxin i get cvishow } for %i=1,ix %newpath %700 400 sub faktx mul 00 fakty mul 40 0 360 arc fill %700 400 sub faktx mul 20 fakty mul 40 0 360 arc fill %700 400 sub faktx mul 40 fakty mul 40 0 360 arc fill % 0 faktx mul -20 fakty mul 40 0 360 arc fill % 0 faktx mul 20 fakty mul 40 0 360 arc fill } bind def %END proc_iwd_tab %********************************************************** /proc_hABw_XYZ_cur2 {%BEG proc_hABw_XYZ_cur2 ctext 1 eq {%ctext=1 /Ysk 2.5 def %1/20*50 /Csk 1.5 def %1/20*30 0 1 icurm {/icur exch def %icur=0,icurm iout3x 0 eq {%iout3x=0 icur 0 eq {[ ] 0 setdash} {[100] 100 setdash} ifelse } if %ioutx=0 0 1 0 setrgbcolor %Y 0 1 ix {/i exch def %i=0,ix hw 0 eq {hABxin i get faktx mul} {wdxin i get 400 sub faktx mul} ifelse slog 0 eq {%slog=0 icur 0 eq { Yxin i get} {100 Yxin i get sub} ifelse fakty mul } if %slog=0 slog 1 eq {%slog=1 /Yak Yxin i get def Yak 50 ge {/Ybk1 Yak Ysk add 50 sub def /Ybk2 50 Yak Ysk sub sub def /VOR 1 def} {/Ybk1 50 Yak Ysk sub sub def /Ybk2 Yak Ysk add 50 sub def /VOR -1 def} ifelse icur 0 eq {Ybk1}{Ybk2} ifelse abs log 2 add fakty mul 50 mul VOR mul } if %slog=1 slog 2 eq {%slog=2 /Yak Yxin i get def Yak 50 ge {/Ybk1 Yak Ysk add 50 div 1 sub def /Ybk2 1 Yak Ysk sub 50 div sub def /VOR 1 def} {/Ybk1 1 Yak Ysk sub 50 div sub def /Ybk2 Yak Ysk add 50 div 1 sub def /VOR -1 def} ifelse icur 0 eq {Ybk1}{Ybk2} ifelse abs log 2 add fakty mul 50 mul VOR mul } if %slog=2 i 0 eq {moveto} if i 1 ge i ix le and {lineto} if i ix eq {stroke} if } for %i=0,ix %icurm 1 eq {%icurm=1 0 0 0 setrgbcolor %CAB 0 1 ix {/i exch def %i=0,ix /CAB Axin i get dup mul Bxin i get dup mul add 0.0001 add sqrt def hw 0 eq {hABxin i get faktx mul} {wdxin i get 400 sub faktx mul} ifelse slog 0 eq {%slog=0 icur 0 eq { CAB} {100 CAB sub} ifelse fakty mul } if %slog=0 slog 1 eq {%slog=1 /Cak CAB def Cak 30 ge {/Cbk1 Cak Csk add 30 div 1 sub def /Cbk2 1 Cak Csk sub 30 div sub def} {/Cbk1 1 Cak Csk sub 30 div sub def /Cbk2 Cak Csk add 30 div 1 sub def} ifelse icur 0 eq {Cbk1}{Cbk2} ifelse abs log 2 add fakty mul 50 mul } if %slog=1 slog 2 eq {%slog=2 /Cak CAB def Cak 30 ge {/Cbk1 Cak Csk add 30 div 1 sub def /Cbk2 1 Cak Csk sub 30 div sub def} {/Cbk1 1 Cak Csk sub 30 div sub def /Cbk2 Cak Csk add 30 div 1 sub def} ifelse icur 0 eq {Cbk1}{Cbk2} ifelse abs log 2 add fakty mul 50 mul } if %slog=2 i 0 eq {moveto} if i 1 ge i ix le and {lineto} if i ix eq {stroke} if } for %i=0,ix %} if %icurm=1 %icurm 1 eq {%icurm=1 1 0 0 setrgbcolor %cab slog 2 eq {%slog=2 0 1 ix {/i exch def %i=0,ix /CAB Axin i get dup mul Bxin i get dup mul add 0.0001 add sqrt def hw 0 eq {hABxin i get faktx mul} {wdxin i get 400 sub faktx mul} ifelse % slog 0 eq {%slog=0 % icur 0 eq {CANxin i get} % {100 CANxin i get sub} ifelse % fakty mul % } if %slog=0 % slog 1 eq {%slog=1 % icur 0 eq {CANxin i get log} % {2 CANxin i get log sub} ifelse % fakty mul 50 mul % } if %slog=1 Yak 50 ge {/Ybk Yak Ysk add 50 div 1 sub def} {/Ybk 1 Yak Ysk add 50 div sub def} ifelse Cak 30 ge {/Cbk Cak Csk add 30 div 1 sub def} {/Cbk 1 Cak Csk add 30 div sub def} ifelse icur 0 eq {Cbk Ybk div} {Ybk Cbk div} ifelse abs log 1 add fakty mul 50 mul i 0 eq {moveto} if i 1 ge i ix le and {lineto} if i ix eq {stroke} if } for %i=0,ix } if %slog=2 %} if %icurm=1 } for %icur=0,icurm [ ] 0 setdash } if %ctext=1 } bind def %END proc_hABw_XYZ_cur2 %******************************************************** /proc_hABw_LabC*_cur2 {%BEG proc_hABw_LabC*_cur2 ctext 1 eq {%ctext=1 0 1 icurm {/icur exch def %icur=0,icurm iout3x 0 eq {%iout3x=0 icur 0 eq {[ ] 0 setdash} {[100] 100 setdash} ifelse } if %ioutx=0 0 1 0 setrgbcolor %L* 0 1 ix {/i exch def %i=0,ix hw 0 eq {hABxin i get faktx mul} {wdxin i get 400 sub faktx mul} ifelse slog 0 eq {%slog=0 icur 0 eq {L*xin i get} {100 L*xin i get sub} ifelse fakty mul 3 mul %1200 sub %y-shift } if %slog=0 slog 1 eq {%slog=1 icur 0 eq {L*xin i get log} {2 L*xin i get log sub} ifelse fakty mul 50 mul %1200 sub %y-shift } if %slog=1 slog 2 eq {%slog=2 icur 0 eq {L*xin i get log} {2 L*xin i get log sub} ifelse fakty mul 3 mul 50 mul %1200 sub %y-shift } if %slog=2 i 0 eq {moveto} if i 1 ge i ix le and {lineto} if i ix eq {stroke} if } for %i=0,ix } for %icur=0,icurm [ ] 0 setdash } if %ctext=1 } bind def %END proc_hABw_LabC*_cur2 %************************************************************* /proc_ABC_KNP_FWERTiX {%BEG proc_ABC_KNP_FWERT %input FAD,FBD,FCD, KNP %output FWERTiX/Y/Z (i=1,4) kNP 1 ge {/FWERT1X FAD kNP 1 sub get def /FWERT1Y FBD kNP 1 sub get def /FWERT1Z FCD kNP 1 sub get def} {/FWERT1X FAD 0 get def %again 400nm for i=0 /FWERT1Y FBD 0 get def /FWERT1Z FCD 0 get def} ifelse /FWERT2X FAD kNP get def /FWERT2Y FBD kNP get def /FWERT2Z FCD kNP get def /FWERT3X FAD kNP 1 add get def /FWERT3Y FBD kNP 1 add get def /FWERT3Z FCD kNP 1 add get def /FWERT4X FAD kNP 2 add get def /FWERT4Y FBD kNP 2 add get def /FWERT4Z FCD kNP 2 add get def } bind def %END proc_ABC_KNP_FWERTiX %********************************************************* /proc_XIE_TN1 {%BEG proc_XIE_TN1 %input XIE, FWERTiX/Y/Z (i=1,4) %output TN1 /A1N XIE 1 XIE sub mul XIE 2 sub mul 6 div def /A2N XIE 1 add XIE 1 sub mul XIE 2 sub mul 0.5 mul def /A3N XIE 1 add XIE mul 2 XIE sub mul 0.5 mul def /A4N XIE 1 add XIE mul XIE 1 sub mul 6 div def /FNX A1N FWERT1X mul A2N FWERT2X mul add A3N FWERT3X mul add A4N FWERT4X mul add def /FNY A1N FWERT1Y mul A2N FWERT2Y mul add A3N FWERT3Y mul add A4N FWERT4Y mul add def /FNZ A1N FWERT1Z mul A2N FWERT2Z mul add A3N FWERT3Z mul add A4N FWERT4Z mul add def /TNX FNX FXU1 mul FNY FXU2 mul add FNZ FXU3 mul add def } bind def %END proc_XIE_TN1 %********************************************************** /tab_Ocolors2 64 array def %8*8 /tab_Ocolors2 %BEG tab_Ocolors2 [%i rgb Col Ind %0 01 02 03 04 05 06 07 00 0.0 1.0 1.0 -0100 -0250 (C) (O) 14 0.0 1.0 0.0 0100 -0050 (G) (O) 17 0.8 1.0 0.0 -0100 0100 (Y) (x) 23 1.0 1.0 0.0 -0100 0100 (Y) (O) 00 1.0 0.0 0.0 -0100 0100 (R) (O) 14 1.0 0.0 1.0 -0350 -0100 (M) (O) 17 0.2 0.0 1.0 -0100 -0250 (V) (n) 23 0.0 0.0 1.0 -0100 -0250 (B) (O) ] def %END tab_Ocolors2 %********************************************************** /proc_tab_Ocolors2 {%BEG proc_tab_Ocolors2 %tab_Ocolors2 64 array def %8*8 defined before /Ysk 2.5 def %1/20*50 /Csk 1.5 def %1/20*30 0 1 7 {/iO exch def %iO=0,7 /i0 iO 8 mul def /i1 i0 1 add def /i2 i0 2 add def /i3 i0 3 add def /i4 i0 4 add def /i5 i0 5 add def /i6 i0 6 add def /i7 i0 7 add def /k tab_Ocolors2 i0 get def tab_Ocolors2 i1 get tab_Ocolors2 i2 get tab_Ocolors2 i3 get setrgbcolor /AnY0 xhh*w 0 eq {iO 3 le {hAB1i k get} {hAB2i k get} ifelse} if xhh*w 1 eq {iO 3 le {h*ab1i k get} {h*ab2i k get} ifelse} if xhh*w 2 eq {iO 3 le {wd1i k get iO 1 eq {/AnY01 wd1i k get def} if} {wd2i k get iO 5 eq {205 add} if} ifelse} if def /AnY AnY0 xhh*w 2 eq {400 sub} if faktx mul def /BnY0 yYLC 0 eq {iO 3 le {Y1i} {Y2i} ifelse k get} if yYLC 1 eq {iO 3 le {L*1i} {L*2i} ifelse k get} if %3 mul with AB and ab* yYLC 2 eq {iO 3 le {A1i k get dup mul B1i k get dup mul add} {A2i k get dup mul B2i k get dup mul add} ifelse 0.0001 add sqrt } if yYLC 3 eq {iO 3 le {a*1i k get dup mul b*1i k get dup mul add} {a*2i k get dup mul b*2i k get dup mul add} ifelse 0.0001 add sqrt } if def slog 0 eq {%lin /BnY BnY0 yYLC 1 eq {3 mul} if fakty mul yshift add def } if %lin /Yak Yxin i get def Yak 50 ge {/Ybk Yak Ysk add 50 div 1 sub def} {/Ybk 1 Yak Ysk add 50 div sub def} ifelse slog 1 eq {%log /Yak BnY0 def Yak 50 ge {/Ybk Yak Ysk add 50 div 1 sub def} {/Ybk 1 Yak Ysk add 50 div sub def} ifelse /BnY Ybk abs log fakty mul 50 mul def } if %log slog 2 eq {%log /Yak BnY0 def Yak 50 ge {/Ybk Yak Ysk add 50 div 1 sub def} {/Ybk 1 Yak Ysk add 50 div sub def} ifelse /BnY Ybk abs log fakty mul 50 mul def } if %log AnY BnY 90 0 360 arc fill 0 0 0 setrgbcolor iO 3 gt {[100] 100 setdash} {[ ] 0 setdash} ifelse AnY BnY 90 0 360 arc stroke [ ] 0 setdash newpath AnY 80 add BnY 50 add moveto TBIL AnY0 cvishow (, ) show BnY0 cvishow (, ) show Ybk log cvsshow2 xhh*w 2 eq iO 5 eq and {AnY 80 add BnY 150 sub moveto AnY01 cvishow (c) show } if newpath } for %iO=0,7 } bind def %END proc_tab_Ocolors2 /X1i 99 array def %max 99 colours or 6 device colour + 4 elementary colours /Y1i 99 array def /Z1i 99 array def /hxy1i 99 array def /XAN1i 99 array def /YAN1i 99 array def /ZAN1i 99 array def /A1i 99 array def %max 99 colours or 6 device colour + 4 elementary colours /B1i 99 array def /CAB1i 99 array def /hAB1i 99 array def /AAN1i 99 array def /BAN1i 99 array def /CAN1i 99 array def /L*1i 99 array def %max 99 colours or 6 device colour + 4 elementary colours /a*1i 99 array def /b*1i 99 array def /C*ab1i 99 array def /h*ab1i 99 array def /a'1i 99 array def /b'1i 99 array def /c'1i 99 array def /i11i 99 array def /i21i 99 array def /id1i 99 array def /ic1i 99 array def /w11i 99 array def /w21i 99 array def /w1c1i 99 array def /w2c1i 99 array def /wd1i 99 array def /wc1i 99 array def /wdc1i 99 array def /wcc1i 99 array def /X1in 99 array def %max 99 colours or 6 device colour + 4 elementary colours /Y1in 99 array def /Z1in 99 array def /hxy1in 99 array def /XAN1in 99 array def /YAN1in 99 array def /ZAN1in 99 array def /A1in 99 array def %max 99 colours or 6 device colour + 4 elementary colours /B1in 99 array def /CAB1in 99 array def /hAB1in 99 array def /AAN1in 99 array def /BAN1in 99 array def /CAN1in 99 array def /L*1in 99 array def %max 99 colours or 6 device colour + 4 elementary colours /a*1in 99 array def /b*1in 99 array def /C*ab1in 99 array def /h*ab1in 99 array def /a'1in 99 array def /b'1in 99 array def /c'1in 99 array def /i11in 99 array def /i21in 99 array def /id1in 99 array def /ic1in 99 array def /w11in 99 array def /w21in 99 array def /w1c1in 99 array def /w2c1in 99 array def /wd1in 99 array def /wc1in 99 array def /wdc1in 99 array def /wcc1in 99 array def /X2i 99 array def %max 99 colours or 6 device colour + 4 elementary colours /Y2i 99 array def /Z2i 99 array def /hxy2i 99 array def /XAN2i 99 array def /YAN2i 99 array def /ZAN2i 99 array def /A2i 99 array def %max 99 colours or 6 device colour + 4 elementary colours /B2i 99 array def /CAB2i 99 array def /hAB2i 99 array def /AAN2i 99 array def /BAN2i 99 array def /CAN2i 99 array def /L*2i 99 array def %max 99 colours or 6 device colour + 4 elementary colours /a*2i 99 array def /b*2i 99 array def /C*ab2i 99 array def /h*ab2i 99 array def /a'2i 99 array def /b'2i 99 array def /c'2i 99 array def /i12i 99 array def /i22i 99 array def /id2i 99 array def /ic2i 99 array def /w12i 99 array def /w22i 99 array def /w1c2i 99 array def /w2c2i 99 array def /wd2i 99 array def /wc2i 99 array def /wdc2i 99 array def /wcc2i 99 array def /X2in 99 array def %max 99 colours or 6 device colour + 4 elementary colours /Y2in 99 array def /Z2in 99 array def /hxy2in 99 array def /XAN2in 99 array def /YAN2in 99 array def /ZAN2in 99 array def /A2in 99 array def %max 99 colours or 6 device colour + 4 elementary colours /B2in 99 array def /CAB2in 99 array def /hAB2in 99 array def /AAN2in 99 array def /BAN2in 99 array def /CAN2in 99 array def /L*2in 99 array def %max 99 colours or 6 device colour + 4 elementary colours /a*2in 99 array def /b*2in 99 array def /C*ab2in 99 array def /h*ab2in 99 array def /a'2in 99 array def /b'2in 99 array def /c'2in 99 array def /i12in 99 array def /i22in 99 array def /id2in 99 array def /ic2in 99 array def /w12in 99 array def /w22in 99 array def /w1c2in 99 array def /w2c2in 99 array def /wd2in 99 array def /wc2in 99 array def /wdc2in 99 array def /wcc2in 99 array def %actual possible data (x=1,2,3,4) /Xxi 99 array def %max 99 colours or 6 device colour + 4 elementary colours /Yxi 99 array def /Zxi 99 array def /hxyxi 99 array def /XANxi 99 array def /YANxi 99 array def /ZANxi 99 array def /Axi 99 array def %max 99 colours or 6 device colour + 4 elementary colours /Bxi 99 array def /CABxi 99 array def /hABxi 99 array def /AANxi 99 array def /BANxi 99 array def /CANxi 99 array def /L*xi 99 array def %max 99 colours or 6 device colour + 4 elementary colours /a*xi 99 array def /b*xi 99 array def /C*abxi 99 array def /h*abxi 99 array def /a'xi 99 array def /b'xi 99 array def /c'xi 99 array def /i1xi 99 array def /i2xi 99 array def /idxi 99 array def /icxi 99 array def /w1xi 99 array def /w2xi 99 array def /w1cxi 99 array def /w2cxi 99 array def /wdxi 99 array def /wcxi 99 array def /wdcxi 99 array def /wccxi 99 array def /Xxin 99 array def %max 99 colours or 6 device colour + 4 elementary colours /Yxin 99 array def /Zxin 99 array def /hxyxin 99 array def /XANxin 99 array def /YANxin 99 array def /ZANxin 99 array def /Axin 99 array def %max 99 colours or 6 device colour + 4 elementary colours /Bxin 99 array def /CABxin 99 array def /hABxin 99 array def /AANxin 99 array def /BANxin 99 array def /CANxin 99 array def /L*xin 99 array def %max 99 colours or 6 device colour + 4 elementary colours /a*xin 99 array def /b*xin 99 array def /C*abxin 99 array def /h*abxin 99 array def /a'xin 99 array def /b'xin 99 array def /c'xin 99 array def /i1xin 99 array def /i2xin 99 array def /idxin 99 array def /icxin 99 array def /w1xin 99 array def /w2xin 99 array def /w1cxin 99 array def /w2cxin 99 array def /wdxin 99 array def /wcxin 99 array def /wdcxin 99 array def /wccxin 99 array def /FARBEda 79 array def /FARBEca 79 array def /FARBEd 79 array def /FARBEc 79 array def %%EndProlog gsave %lanindL2.EPS START 20000505 /lanind 0 def /lantex [(G) (E) (S) (F) (I) (J) (M)] def /showde {0 lanind eq {show} {pop} ifelse} bind def /showen {1 lanind eq {show} {pop} ifelse} bind def /showes {2 lanind eq {show} {pop} ifelse} bind def /showfr {3 lanind eq {show} {pop} ifelse} bind def /showit {4 lanind eq {show} {pop} ifelse} bind def /showjp {5 lanind eq {show} {pop} ifelse} bind def /showea {1 lanind le {show} {pop} ifelse} bind def /lanindf where {pop /lanind1 lanindf def /lanind2 lanindf def /lanindd laninddf def} {/lanind1 0 def /lanind2 0 def} ifelse /colormf where {pop /colorm1 colormf def /colorm2 colormf def /colormd colormdf def} {/colorm1 0 def} ifelse /deintpf where {pop /deintp1 deintpf def /deintP2 deintpf def /deintpd deintpdf def} {/deintp1 0 def} ifelse /xcolorf where {pop /xcolor1 xcolorf def /xcolor2 xcolorf def /xcolord xcolordf def} {/xcolor1 0 def} ifelse /xchartf where {pop /xchart1 xchartf def /xchart2 xchartf def /xchartd xchartdf def /xchartm xchart2f xchart1f sub 1 add def} {/xchart1 0 def /xchartm 1 def} ifelse /xchart3f where {pop /xchart3 xchart3f def} {/xchart3 0 def} ifelse /xchart4f where {pop /xchart4 xchart4f def} {/xchart4 0 def} ifelse /pchartf where {pop /pchart1 pchartf def /pchart2 pchartf def /pchartd pchartdf def} {/pchart1 3 def} ifelse /colsepf where {pop /colsep1 colsepf def /colseP2 colsepf def /colsepd colsepdf def} {/colsep1 0 def} ifelse /pmetamf where {pop /pmetam1 pmetamf def /pmetam2 pmetamf def /pmetamd pmetamdf def} {/pmetam1 0 def} ifelse %either defaul values for xchart=0 or values for xchart=1 /lanind lanind1 def % /colorm colorm1 def % /deintp deintp1 def % /xcolor xcolor1 def % /xchart xchart1 def % /pchart pchart1 def % /colsep colsep1 def % /pmetam pmetam1 def % 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 %**************************************************** %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 /xcolorl xcolor def %0 1 0 {/xcolorl exch def %xcolorl=0,0 %gsave xcolorl 1 eq {0 1 79 {/i exch def %i=0,79 F2 i F10 i get put } for %i=0,79 } if /NK 0 def %normalization NK=0 (Y=100), NK=1 (Y=88,6) /YKSUM 0 def %For CIE Illuminant E 0 1 79 {/i exch def %i=0,1,79 /YKSUM YKSUM F2 80 i add get add def } for %i=0,1,79 0 1 79 {/i exch def %i=0,1,79 F2N 00 i add F2 00 i add get YKSUM div 100 mul put F2N 80 i add F2 80 i add get YKSUM div 100 mul put F2N 160 i add F2 160 i add get YKSUM div 100 mul put } for %i=0,1,79 %defines FXN, FYN, FZN 0 to 79 0 1 79 {/i exch def %i=0,79 FXN i F2N 000 i add get put FYN i F2N 080 i add get put FZN i F2N 160 i add get put } for %i=0,79 00 1 60 {/i exch def %i=0,60 %range 400..700nm FXD i FXN 005 i add get put FYD i FYN 005 i add get put FZD i FZN 005 i add get put DOW i 400 i 5 mul add put %range 400 to 700 } for %i=0,60 %for interpolation FXD 61 FXD 60 get put FYD 61 FYD 60 get put FZD 61 FZD 60 get put FXD 62 FXD 60 get put FYD 62 FYD 60 get put FZD 62 FZD 60 get put /xdel 1005 def %/ydel 393 def %/ydel 275 def /ydel 175 def /x0 050 def /x1 -150 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 FARBEda 00 (Cm=380_561) put FARBEca 00 (Rm=561_770) put FARBEd 00 (C) put FARBEc 00 (R) put FARBEda 13 (Gm=470_570) put FARBEca 13 (Mm=570_470) put FARBEd 13 (G) put FARBEc 13 (M) put FARBEda 23 (Ym=520_770) put FARBEca 23 (Bm=380_520) put FARBEd 23 (Y) put FARBEc 23 (B) put FARBEda 18 (Ym=495_770) put FARBEca 18 (Bm=380_495) put FARBEd 18 (Y) put FARBEc 18 (B) put /iacol 23 def /xchart14 1 def %for a=x/y (0) and a=(x-0.171)/y (1) 0 setgray 5 /Times-ISOL1 FS 175 85 moveto (DG640-7R-R) show %xchart 0 eq {(R) show} % {deintp colorm 2 mul add cvishow} ifelse 72 90 translate 0.01 MM dup scale gsave %/xchartx xchart def /xchartx 1 def %only D50 %%0 1 7 {/xchartx exch def %xchartx=0,7 gsave /xchartl 0 def %xchartl=0 to 7 for 8 pictures 0 1 07 {/xchartl exch def %xchartl=0,07 gsave xchartl 0 eq { 100 13000 translate} if xchartl 1 eq { 6100 13000 translate} if xchartl 2 eq { 100 08750 translate} if xchartl 3 eq { 6100 08750 translate} if xchartl 4 eq { 100 4500 translate} if xchartl 5 eq { 6100 4500 translate} if xchartl 6 eq { 100 0250 translate} if xchartl 7 eq { 6100 0250 translate} if 150 /Times-ISOL1 FS 0 setgray 300 -150 moveto NK 0 eq {(DG640-) show} {(DG641-) show} ifelse xchartl 1 add cvishow (A) show %A (_) show xchart 1 add cvishow /xwidth 5400 def /ywidth 4000 def 1 1 0 setrgbcolor 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 colrecst %frame black %calculation of XW,YW,ZW for illuminant %D65, D50, P40, A00, E00, C00, P00, Q00 %P60, P55, P50, P45, P40, P35, P30, P25 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 %calculation of XW,YW,ZW for illuminant Pxx, Dxx 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 0 1 79 {/i exch def %i=0,1,79 /YKSUM YKSUM SDAK i get F2 80 i add get mul add def } for %i=0,1,79 0 1 79 {/i exch def %i=0,1,79 F2N 00 i add SDAK i get F2 00 i add get mul YKSUM div 100 mul put F2N 80 i add SDAK i get F2 80 i add get mul YKSUM div 100 mul put F2N 160 i add SDAK i get F2 160 i add get mul YKSUM div 100 mul put } for %i=0,1,79 %XW,YW,ZW for white /XW 0 def /YW 0 def /ZW 0 def 0 1 079 {/i exch def %i=0,79 /XW XW F2N 00 i add get add def /YW YW F2N 80 i add get add def /ZW ZW F2N 160 i add get add def } for %i=0,79 /SUMW XW YW add ZW add def %for D65, D50, P40, A00, E00 /XANW XW SUMW div def /YANW YW SUMW div def /ZANW ZW SUMW div def xchart14 0 eq {%xchart14=0 /AANW XW YW 0.0001 add div def } if %xchart14=0 xchart14 1 eq {%xchart14=1 /AANW XANW 0.171 sub YANW 0.0001 add div def } if %xchart14=1 /BANW ZW YW 0.0001 add div 0.4 mul neg def 0 1 62 {/i exch def %i=0,62 FAD i FXD i get put FBD i FYD i get put FCD i FZD i get put } for %i=0,62 0 1 1 {/Icom exch def %Icom=0,1 only for part 1 Icom 0 eq {/xpos 100 def /xpos1 12100 def} {%/xpos 12100 def /xpos 100 def /xpos1 100 def} ifelse %/ymax 3700 def /ymax 3820 def TBS xpos 50 sub ymax ydel 0 mul sub moveto (CIE\255) show TELi xchartx get show (\255Daten von ) showde ( data of ) showea TBIS (\255Ostwald) showde ( Ostwald) showea TBS (\255Farben von maximalem Buntwert) showde ( colours of maximum chromatic value) showea TBIS ( C) show TBL 0 -60 rmoveto (AB) show 0 60 rmoveto xpos 50 sub ymax ydel 1 mul sub moveto TBIS (Y) show TBL 0 -60 rmoveto (w) show xcolorl 1 eq {(,10) show} if 0 60 rmoveto TBS NK 0 eq {(=100) show}{(=88,6) show} ifelse TBS (, ) show FARBEda iacol get show TBS (, ) show FARBEca iacol get show /icurm 1 def %0:dominant, 1:and complimentary colours %icurm=1: 1\255minus data (icurm=1) /iout0x 1 def %coordinate system /iout1x 1 def %iout1x=1:Ostwald colours 1 with procedures _cur2 %dominant (icurm=0) and complementary (icurm=1) /iout2x 0 def %iout2x=1:Ostwald colours 2 with procedures _cur2 /iout3x 0 def %sRGB colours, iout3x=1:sRGB data icurm 1 eq {%icurm=1 TBS (, and ) showea ( und ) showde (1\255minus data ( - -)) showea (1\255Minus\255Daten ( - -)) showde } if %icurm=1 iout2x 1 eq {%iout2x=1 TBS (, 2 calculation methods) showea (, 2 Berechnungsmethoden) showde } if %iout2x=1 iout3x 1 eq {%iout3x=1 TBS (, and ) showea ( und ) showde TBIS (sRGB) show TBS ( data ( - -)) showea (\255Daten ( - -)) showde } if %iout3x=1 %********************************************************* /WEL1 120 array def %irregular or regular definition /WEL2 120 array def %irregular or regular definition %0 1 2 3 4 5 6 7 8 9 /WEL1 [405 435 450 460 465 470 475 480 485 490 495 500 510 520 530 540 545 550 555 560 ] def /WEL1 [405 410 415 420 425 430 435 440 445 450 455 460 465 470 475 480 485 490 495 500 505 510 515 520 525 530 535 540 545 550 555 560 565 570 575 580 585 590 595 600 605 610 615 620 625 630 635 640 645 650 655 660 665 670 675 680 685 690 695 700 ] def 0 1 57 {/k exch def %k=0,57 %wavelength 405..700nm /j WEL1 k get 400 sub 5 idiv def /FF1 FXD j get def %start at 405..700nm /FF2 FYD j get def /FF3 FZD j get def /U1 XW def /U2 YW def /U3 ZW def /FXU1 FF2 U3 mul FF3 U2 mul sub def /FXU2 FF3 U1 mul FF1 U3 mul sub def /FXU3 FF1 U2 mul FF2 U1 mul sub def /INP -1 def /IPN -1 def %assumption jump from TN to TP from negativ to positiv 0 1 60 {/i exch def %i=1,60 /TN FAD i get FXU1 mul FBD i get FXU2 mul add FCD i get FXU3 mul add def /TP FAD i 1 add get FXU1 mul FBD i 1 add get FXU2 mul add FCD i 1 add get FXU3 mul add def TN 0 le TP 0 gt and {/INP i def exit} if } for %i=1,60 0 1 60 {/i exch def %i=1,60 /TN FAD i get FXU1 mul FBD i get FXU2 mul add FCD i get FXU3 mul add neg def /TP FAD i 1 add get FXU1 mul FBD i 1 add get FXU2 mul add FCD i 1 add get FXU3 mul add neg def TN 0 le TP 0 gt and {/IPN i def exit} if } for %i=1,60 TM Icom 0 eq {%Icom=0 i11i k INP put i21i k IPN put } { i12i k IPN put i22i k INP put } ifelse %Icom=0,1 %********************************************************* /kNP INP def kNP 0 ge {%kNP>=0 proc_ABC_KNP_FWERTiX %input FAD,KNP, output FWERTiXYZ (i=1,4) /XIE1 0 def %start values TN=0 for XIE1, TP>0 for XIE2 /XIE2 1 def 0 1 9 {/mk exch def %mk=0,9 /XIE XIE1 XIE2 add 0.5 mul def proc_XIE_TN1 %input XIE, ouput TN1 TNX 0 le {/XIE1 XIE def /TN1 TNX def} {/XIE2 XIE def /TP1 TNX def} ifelse } for %mk=0,9 /XIE XIE1 XIE2 add 0.5 mul def /DOWXIE1 DOW INP get DOW INP 1 add get DOW INP get sub XIE mul add def /XIENP XIE def } if %kNP>=0 %********************************************************* /kNP IPN def kNP 0 ge {%kNP>=0 proc_ABC_KNP_FWERTiX %input FAD,KNP, output FWERTiXYZ (i=1,4) /XIE1 0 def %start values TN=0 for XIE1, TP>0 for XIE2 /XIE2 1 def /FXU1 FXU1 neg def /FXU2 FXU2 neg def /FXU3 FXU3 neg def 0 1 9 {/mk exch def %mk=0,9 /XIE XIE1 XIE2 add 0.5 mul def proc_XIE_TN1 %input XIE, ouput TN1 TNX 0 le {/XIE1 XIE def /TN1 TNX def} {/XIE2 XIE def /TP1 TNX def} ifelse } for %mk=0,9 /XIE XIE1 XIE2 add 0.5 mul def /DOWXIE2 DOW IPN get DOW IPN 1 add get DOW IPN get sub XIE mul add def /XIEPN XIE def } if %kNP>=0 %********************************************************* Icom 0 eq {%Icom=0 INP 0 ge {%INP>=0 % xpos xdel 0 mul add 400 add ymax ydel LP mul sub moveto % DOWXIE1 0.03 add cvishow %includes rounding failure w11i k DOWXIE1 0.03 add cvi put w1c1i k () put /DOWEL1 DOWXIE1 def /DOWEL1c () def } if %INP>=0 IPN 0 ge {%IPN>=0 % xpos xdel 1 mul add 400 add ymax ydel LP mul sub moveto % DOWXIE2 0.03 add cvishow w21i k DOWXIE2 0.03 add cvi put w2c1i k () put /DOWEL2 DOWXIE2 def /DOWEL2c () def } if %IPN>=0 IPN 0 lt {%IPN=-1 % xpos xdel 1 mul add 400 add ymax ydel LP mul sub moveto % DOWXIE1 0.03 add cvishow (c) show w21i k DOWXIE1 0.03 add cvi put w2c1i k (c) put /DOWEL2 DOWXIE1 def /DOWEL2c (c) def } if %IPN=-1 }%Icom=0 {%Icom=1 INP 0 ge {%INP>=0 % xpos xdel 1 mul add 400 add ymax ydel LPP mul sub moveto % DOWXIE1 0.03 add cvishow w22i k DOWXIE1 0.03 add cvi put w2c2i k () put /DOWEL1 DOWXIE1 def /DOWEL1c () def } if %INP>=0 IPN 0 ge {%IPN>=0 % xpos xdel 0 mul add 400 add ymax ydel LPP mul sub moveto % DOWXIE2 0.03 add cvishow w12i k DOWXIE2 0.03 add cvi put w1c2i k () put /DOWEL2 DOWXIE2 def /DOWEL2c () def } if %IPN>=0 IPN 0 lt {%IPN=-1 % xpos xdel 0 mul add 400 add ymax ydel LPP mul sub moveto % DOWXIE1 cvishow (c) show w12i k DOWXIE1 0.03 add cvi put w1c2i k (c) put /DOWEL2 DOWXIE1 def /DOWEL2c (c) def } if %IPN=-1 } ifelse %Icom=0,1 0 0 0 setrgbcolor %********************************************************* 0 1 79 {/i exch def %i=0,79 RA i 0 put } for %i=0,79 INP -1 eq {/i1 0 def} %380nm {/i1 INP 5 add def} ifelse %405..700nm IPN -1 eq {/i2 79 def} %770nm {/i2 IPN 5 add def} ifelse %405..700nm i2 i1 ge {%i1i2 i1 1 79 {/i exch def %i=i1,79 RA i 1 put } for %i=i1,79 0 1 i2 {/i exch def %i=0,i2 RA i 1 put } for %i=0,i2 } ifelse %i1>i2 %correction i2 i1 ge {%i1i2 RA i1 0.5 put RA i2 0.5 XIEPN 0.5 sub add put } ifelse %i1>i2 %*************************************************** /X 0 def /Y 0 def /Z 0 def 0 1 079 {/i exch def %i=0,79 /X X F2N 00 i add get RA i get mul add def /Y Y F2N 80 i add get RA i get mul add def /Z Z F2N 160 i add get RA i get mul add def } for %i=0,79 NK 1 eq {%NK=1 /faktn 0.8859 def /X X faktn mul def /Y Y faktn mul def /Z Z faktn mul def % /faktw 0.025 faktn div def %approximately 2,8% % /Xc XW X sub def %c=antichromatic % /Yc YW Y sub def % /Zc ZW Z sub def % /X X Xc faktw mul add faktn mul def % /Y Y Yc faktw mul add faktn mul def % /Z Z Zc faktw mul add faktn mul def } if %NK=1 /SUM X Y add Z add def /XAN X SUM 0.0001 add div def /YAN Y SUM 0.0001 add div def /ZAN Z SUM 0.0001 add div def %************************************************* Icom 1 eq {%Icom=1 /X XW X sub def /Y YW Y sub def /Z ZW Z sub def /SUM X Y add Z add def /XAN X SUM 0.0001 add div def /YAN Y SUM 0.0001 add div def /ZAN Z SUM 0.0001 add div def } if %Icom=1 /hxy YAN YANW sub XAN XANW sub 0.0001 add atan def Icom 0 eq {%Icom=0,1 X1i k X put Y1i k Y put Z1i k Z put %hxy1i k hxy put XAN1i k XAN put YAN1i k YAN put ZAN1i k ZAN put }%Icom=0 {%Icom=1 X2i k X put Y2i k Y put Z2i k Z put %hxy2i k hxy put XAN2i k XAN put YAN2i k YAN put ZAN2i k ZAN put } ifelse %Icom=0,1 xchart14 0 eq {%xchart14=0 /AAN X Y 0.0001 add div def } if %xchart14=0 xchart14 1 eq {%xchart14=1 /AAN XAN 0.171 sub YAN 0.0001 add div def } if %xchart14=1 /BAN Z Y 0.0001 add div 0.4 mul neg def /CAN AAN AANW sub dup mul BAN BANW sub dup mul add 0.0001 add sqrt def /A AAN AANW sub Y mul def /B BAN BANW sub Y mul def /CAB A dup mul B dup mul add 0.0001 add sqrt def /hAB B A 0.0001 add atan def Icom 0 eq {%Icom=0,1 Y1i k Y put A1i k A put B1i k B put CAB1i k CAB put hAB1i k hAB put AAN1i k AAN put BAN1i k BAN put CAN1i k CAN put }%Icom=0 {%Icom=1 Y2i k Y put A2i k A put B2i k B put CAB2i k CAB put hAB2i k hAB put AAN2i k AAN put BAN2i k BAN put CAN2i k CAN put } ifelse %Icom=0,1 /D13 1 3 div def /D841_108 841 108 div def /D16_116 16 116 div def /D24_116 24 116 div 3 exp def X XW div D24_116 gt {/FXXN X XW div 0.0001 add D13 exp def} {/FXXN D841_108 X XW div mul D16_116 add def} ifelse Y YW div D24_116 gt {/FYYN Y YW div 0.0001 add D13 exp def} {/FYYN D841_108 Y YW div mul D16_116 add def} ifelse Z ZW div D24_116 gt {/FZZN Z ZW div 0.0001 add D13 exp def} {/FZZN D841_108 Z YW div mul D16_116 add def} ifelse /L* 116. FYYN mul 16. sub def /a* 500. FXXN FYYN sub mul def /b* 200. FYYN FZZN sub mul def /C*ab a* dup mul b* dup mul add 0.5 exp def /h*ab b* a* 0.000001 add atan def /a' X Y 0.0001 add div D13 exp 0.2191 mul def /b' Z Y 0.0001 add div D13 exp -0.08376 mul def /c' a' dup mul b' dup mul add 0.0001 add sqrt def Icom 0 eq {%Icom=0,1 L*1i k L* put a*1i k a* put b*1i k b* put C*ab1i k C*ab put h*ab1i k h*ab put a'1i k a' put b'1i k b' put c'1i k c' put }%Icom=0 {%Icom=1 L*2i k L* put a*2i k a* put b*2i k b* put C*ab2i k C*ab put h*ab2i k h*ab put a'2i k a' put b'2i k b' put c'2i k c' put } ifelse %Icom=0,1 %********************************************************* %calculation of lamdad and lambdac for X, Y, Z /FF1 X def /FF2 Y def /FF3 Z def /U1 XW def /U2 YW def /U3 ZW def /FXU1 FF2 U3 mul FF3 U2 mul sub def /FXU2 FF3 U1 mul FF1 U3 mul sub def /FXU3 FF1 U2 mul FF2 U1 mul sub def /INP -1 def /IPN -1 def %assumption jump from TN to TP from negativ to positiv 0 1 60 {/i exch def %i=1,60 /TN FAD i get FXU1 mul FBD i get FXU2 mul add FCD i get FXU3 mul add def /TP FAD i 1 add get FXU1 mul FBD i 1 add get FXU2 mul add FCD i 1 add get FXU3 mul add def TN 0 le TP 0 gt and {/INP i def exit} if } for %i=1,60 0 1 60 {/i exch def %i=1,60 /TN FAD i get FXU1 mul FBD i get FXU2 mul add FCD i get FXU3 mul add neg def /TP FAD i 1 add get FXU1 mul FBD i 1 add get FXU2 mul add FCD i 1 add get FXU3 mul add neg def TN 0 le TP 0 gt and {/IPN i def exit} if } for %i=1,60 TM Icom 0 eq {%Icom=0,1 id1i k INP put ic1i k IPN put }%Icom=0 {%Icom=1 id2i k INP put ic2i k IPN put } ifelse %Icom=0,1 %********************************************************* /kNP INP def kNP 0 ge {%kNP>=0 proc_ABC_KNP_FWERTiX %input FAD,KNP, output FWERTiXYZ (i=1,4) /XIE1 0 def %start values TN=0 for XIE1, TP>0 for XIE2 /XIE2 1 def 0 1 9 {/mk exch def %mk=0,9 /XIE XIE1 XIE2 add 0.5 mul def proc_XIE_TN1 %input XIE, ouput TN1 TNX 0 le {/XIE1 XIE def /TN1 TNX def} {/XIE2 XIE def /TP1 TNX def} ifelse } for %mk=0,9 /XIE XIE1 XIE2 add 0.5 mul def /DOWXIE1 DOW INP get DOW INP 1 add get DOW INP get sub XIE mul add def } if %kNP>=0 %********************************************************* /kNP IPN def kNP 0 ge {%kNP>=0 proc_ABC_KNP_FWERTiX %input FAD,KNP, output FWERTiXYZ (i=1,4) /XIE1 0 def %start values TN=0 for XIE1, TP>0 for XIE2 /XIE2 1 def /FXU1 FXU1 neg def /FXU2 FXU2 neg def /FXU3 FXU3 neg def 0 1 9 {/mk exch def %mk=0,9 /XIE XIE1 XIE2 add 0.5 mul def proc_XIE_TN1 %input XIE, ouput TN1 TNX 0 le {/XIE1 XIE def /TN1 TNX def} {/XIE2 XIE def /TP1 TNX def} ifelse } for %mk=0,9 /XIE XIE1 XIE2 add 0.5 mul def /DOWXIE2 DOW IPN get DOW IPN 1 add get DOW IPN get sub XIE mul add def } if %kNP>=0 %********************************************************* INP 0 ge {%INP>=0,-1 % xpos x1 add xdel 9 mul add 400 add ymax ydel LP mul sub moveto % DOWXIE1 0.03 add cvishow Icom 0 eq {%Icom=0,1 wd1i k DOWXIE1 0.03 add cvi put wdc1i k () put }%Icom=0 {%Icom=1 wd2i k DOWXIE1 0.03 add cvi put wdc2i k () put } ifelse %Icom=0,1 /DOWEL1 DOWXIE1 def /DOWEL1c () def }%INP>=0 {%INP=-1 % xpos x1 add xdel 9 mul add 400 add ymax ydel LP mul sub moveto % DOWXIE2 0.03 add cvishow (c) show Icom 0 eq {%Icom=0,1 wd1i k DOWXIE2 0.03 add cvi put wdc1i k (c) put }%Icom=0 {%Icom=1 wd2i k DOWXIE2 0.03 add cvi put wdc2i k (c) put } ifelse %Icom=0,1 /DOWEL1 DOWXIE2 def /DOWEL1c (c) def } ifelse %INP>=0,-1 IPN 0 ge {%IPN>=0,-1 % xpos x1 add xdel 10 mul add 400 add ymax ydel LP mul sub moveto % DOWXIE2 0.03 add cvishow Icom 0 eq {%Icom=0,1 wc1i k DOWXIE2 0.03 add cvi put wcc1i k () put }%Icom=0 {%Icom=1 wc2i k DOWXIE2 0.03 add cvi put wcc2i k () put } ifelse %Icom=0,1 /DOWEL2 DOWXIE2 def /DOWEL2c () def }%IPN>=0 {%IPN=-1 % xpos x1 add xdel 10 mul add 400 add ymax ydel LP mul sub moveto % DOWXIE1 0.03 add cvishow (c) show Icom 0 eq {%Icom=0,1 wc1i k DOWXIE1 0.03 add cvi put wcc1i k (c) put }%Icom=0 {%Icom=1 wc2i k DOWXIE1 0.03 add cvi put wcc2i k (c) put } ifelse %Icom=0,1 /DOWEL2 DOWXIE1 def /DOWEL2c (c) def } ifelse %IPN>=0,-1 0 0 0 setrgbcolor } for %k=0,57 } for %Icom=0,1 only for part 1 %************************************************************* /DecodeXYZ* {dup 6 29 div ge {dup dup mul mul} {4 29 div sub 108 841 div mul} ifelse} bind 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 /cvishowb {cvi 6 string cvs show ( ) show} def /cvsshow1b {10 mul cvi 0.1 mul 7 string cvs show ( ) show} def /cvsshow2b {100 mul cvi 0.01 mul 7 string cvs show ( ) show} def /cvsshow3b {1000 mul cvi 0.001 mul 7 string cvs show ( ) show} def /cvishowr {0.5 add cvi 6 string cvs show} def /cvsshow1r {0.05 add 10 mul cvi 0.1 mul 7 string cvs show} def /cvsshow2r {0.005 add 100 mul cvi 0.01 mul 7 string cvs show} def /cvsshow3r {0.0005 add 1000 mul cvi 0.001 mul 7 string cvs show} def /cvi100 {100 mul cvi /xi exch def xi 0 lt {/VORz -1 def} {/VORz 1 def} ifelse /xia xi abs def VORz -1 eq {(\255) show} {(0) show} ifelse xia 0 ge xia 9 le {(0000) show} if xia 10 ge xia 99 le and {(000) show} if xia 100 ge xia 999 le and {(00) show} if xia 1000 ge xia 9999 le and {(0) show} if xia cvishow } bind def /cvi1000 {1000 mul cvi /xi exch def xi 0 ge xi 9 le {(000) show} if xi 10 ge xi 99 le and {(00) show} if xi 100 ge xi 999 le and {(0) show} if xi cvishow } bind def /ymax 16600 def /idy 206 def /YKSUM 0 def %For CIE Illuminant E 0 1 79 {/i exch def %i=0,1,79 /YKSUM YKSUM F2 80 i add get add def } for %i=0,1,79 0 1 79 {/i exch def %i=0,1,79 F2N 00 i add F2 00 i add get YKSUM div 100 mul put F2N 80 i add F2 80 i add get YKSUM div 100 mul put F2N 160 i add F2 160 i add get YKSUM div 100 mul put } for %i=0,1,79 %defines FXN, FYN, FZN 0 to 79 0 1 79 {/i exch def %i=0,79 FXN i F2N 000 i add get put FYN i F2N 080 i add get put FZN i F2N 160 i add get put } for %i=0,79 00 1 60 {/i exch def %i=0,60 %range 400..700nm FXD i FXN 005 i add get put FYD i FYN 005 i add get put FZD i FZN 005 i add get put DOW i 400 i 5 mul add put %range 400 to 700 } for %i=0,60 /YKSUM 0 def 0 1 79 {/i exch def %i=0,1,79 /YKSUM YKSUM SDAK i get F2 80 i add get mul add def } for %i=0,1,79 0 1 79 {/i exch def %i=0,1,79 F2N 00 i add SDAK i get F2 00 i add get mul YKSUM div 100 mul put F2N 80 i add SDAK i get F2 80 i add get mul YKSUM div 100 mul put F2N 160 i add SDAK i get F2 160 i add get mul YKSUM div 100 mul put } for %i=0,1,79 %XW,YW,ZW for white /XW 0 def /YW 0 def /ZW 0 def 0 1 079 {/i exch def %i=0,79 /XW XW F2N 00 i add get add def /YW YW F2N 80 i add get add def /ZW ZW F2N 160 i add get add def } for %i=0,79 /SUMW XW YW add ZW add def %for D65, D50, P40, A00, E00 /XANW XW SUMW div def /YANW YW SUMW div def /ZANW ZW SUMW div def xchart14 0 eq {%xchart14=0 /AANW XW YW 0.0001 add div def } if %xchart14=0 xchart14 1 eq {%xchart14=1 /AANW XANW 0.171 sub YANW 0.0001 add div def } if %xchart14=1 /BANW ZW YW 0.0001 add div 0.4 mul neg def 0 1 62 {/i exch def %i=0,62 FAD i FXD i get put FBD i FYD i get put FCD i FZD i get put } for %i=0,62 /ix0 100 def /ix1 ix0 1400 add def /ixd 600 def /iymax 16550 def /idy 206 def /xtext 0 def xtext 1 eq {%itext=1 TBIK ix0 iymax idy add 50 add moveto (rgb) show TBS 0 -90 rmoveto (i) show 0 90 rmoveto TBK ix1 ixd 0 mul add 150 add iymax idy add 50 add moveto TBK (i) show ix1 ixd 1 mul add 030 sub 0 moveto 0 17000 rlineto stroke ix1 ixd 1 mul add iymax idy add 50 add moveto TBK ([) show TBIK (X, Y, Z, x, y) show TBK (]) show TBS 0 -90 rmoveto (100) show 0 90 rmoveto TBK ix1 ixd 6 mul add 030 sub 0 moveto 0 17000 rlineto stroke ix1 ixd 6 mul add iymax idy add 50 add moveto TBK ([) show TBIK (L*, a*, b*, C*) show TBS -80 -90 rmoveto (ab) show 0 90 rmoveto TBIK (, h) show TBS 0 -90 rmoveto (ab) show 0 90 rmoveto TBIK TBIK (, a', b', c') show TBS 0 -90 rmoveto (ab) show 0 90 rmoveto TBIK TBK (]) show TBS 0 -90 rmoveto (100) show 0 90 rmoveto TBK ix1 ixd 14 mul add 030 sub 0 moveto 0 17000 rlineto stroke ix1 ixd 14 mul add iymax idy add 50 add moveto TBK ([) show TBIK (Y, A, B, C) show TBS -80 -90 rmoveto (AB) show 0 90 rmoveto TBIK (, h) show TBS 0 -90 rmoveto (AB) show 0 90 rmoveto TBIK TBIK (, a, b, c) show TBS 0 -90 rmoveto (AB) show 0 90 rmoveto TBIK TBK (]) show TBS 0 -90 rmoveto (100) show 0 90 rmoveto TBK ix1 ixd 22 mul add 030 sub 0 moveto 0 17000 rlineto stroke ix1 ixd 22 mul add iymax idy add 50 add moveto TBK ([) show TBIK (i) show TBS 0 -90 rmoveto (d) show 0 90 rmoveto TBK TBK (, ) show TBIK (i) show TBS 0 -90 rmoveto (c) show 0 90 rmoveto TBK TBK (, ) show TSK (l) show TBS 0 -90 rmoveto (d) show 0 90 rmoveto TBK TBK (, ) show TSK (l) show TBS 0 -90 rmoveto (c) show 0 90 rmoveto TBK TBK (]) show TBS 0 -90 rmoveto (100) show 0 90 rmoveto TBK ix1 ixd 26 mul add 030 sub 0 moveto 0 17000 rlineto stroke ix1 ixd 26 mul add iymax idy add 50 add moveto TBK ([) show TBIK (X, Y, Z) show TBK (]) show TBS 0 -90 rmoveto (89) show 0 90 rmoveto TBK ix1 ixd 29 mul add 030 sub 0 moveto 0 17000 rlineto stroke ix1 ixd 29 mul add iymax idy add 50 add moveto TBK ([) show TBIK (L*, a*, b*, C*) show TBS -80 -90 rmoveto (ab) show 0 90 rmoveto TBIK (, h) show TBS 0 -90 rmoveto (ab) show 0 90 rmoveto TBIK TBK (]) show TBS 0 -90 rmoveto (89) show 0 90 rmoveto TBK ix1 ixd 34 mul add 030 sub 0 moveto 0 17000 rlineto stroke ix1 ixd 34 mul add iymax idy add 50 add moveto TBK ([) show TBIK (Y, A, B, C) show TBS -80 -90 rmoveto (AB) show 0 90 rmoveto TBIK (, h) show TBS 0 -90 rmoveto (AB) show 0 90 rmoveto TBIK TBK (]) show TBS 0 -90 rmoveto (89) show 0 90 rmoveto TBK } if %itext=1 %STOP %************************************************************* /imshow {0 -50 rmoveto TBL (m) show 0 50 rmoveto TBIS} def /ioshow {0 -50 rmoveto TBL (o) show 0 50 rmoveto TBIS} def /idshow {0 -50 rmoveto TBL (d) show 0 50 rmoveto TBIS} def /ieshow {0 -50 rmoveto TBL (e) show 0 50 rmoveto TBIS} def %************************************************************* %xchartl=0-0 %STOP0-0 %BEG X,Y,Z = f(hAB) xchartl 0 eq {%xchartl=0 iout0x 1 eq {%iout0x=1 380 280 translate 30 setlinewidth 0 setgray 0 0 moveto 400 12 mul 100 add 0 rlineto stroke 0 0 moveto 0 3000 250 add rlineto stroke %icurm 1 eq {%icurm=1 [100] 100 setdash 0 1500 moveto 400 12 mul 300 add 0 rlineto stroke %cero line [ ] 0 setdash % } if %icurm=1 400 12 mul 150 add 0 moveto -100 50 rlineto 0 -100 rlineto closepath fill 0 3000 300 add moveto -50 -100 rlineto 100 0 rlineto closepath fill TBL /txl [ (400) (500) (600) (700) (400)] def /txw [ ( 0) ( 90) (180) (270) (360)] def /txc [() () () (494c,E) (561c,E)] def /tyY [( 0) ( 20) ( 40) ( 60) ( 80) (100)] def /tyL [(0,0) (0,4) (0,8) (1,2) (1,6) (2,0)] def %!x-Achse: 100 Einheiten = 1200 Skalen-Einheiten 0 1 4 {/i exch def /ixt {-150 i 1200 mul add} def /ixl { 000 i 1200 mul add} def ixt -250 moveto txw i get exec show ixl 75 moveto 0 -150 rlineto stroke } for /ixtt 4 1200 mul def /iytt 150 def ixtt 220 sub iytt moveto TBIS (h) show 0 -30 rmoveto TBL xchart14 0 eq {(AB0)}{(AB1)} ifelse show 0 30 rmoveto %!y-Achse: 100 S-Einheiten = 0600 Skalen-Einheiten TBL 0 1 5 {/i exch def /iyt {-50 i 0600 mul add} def /iyl {000 i 0600 mul add} def -300 iyt moveto tyY i get show -75 iyl moveto 150 0 rlineto stroke } for /ixtt 0 def /iytt 5.3 600 mul def ixtt 150 add iytt 80 sub moveto TBS TBIS (Y, ) show TBS (100 - ) show TBIS (Y) show TBS (, ) show TBIS (C) show TBL 0 -30 rmoveto xchart14 0 eq {(AB0)}{(AB1)} ifelse show 0 30 rmoveto TBS (, 100 - ) show TBIS (C) show TBL 0 -30 rmoveto xchart14 0 eq {(AB0)}{(AB1)} ifelse show 0 30 rmoveto TBS ( im Bereich) showde ( in the range) showea TBIS ( Y) show TBS NK 0 eq {%NK=0,1 (=0 bis 100) showde (=0 to 100) showea }%NK=0 {%K=1 (=0,0 bis 88,6) showde (=0,0 to 88,6) showea } ifelse %NK=0,1 380 neg 280 neg translate } if %iout0x=1 %******************************************************************* %STOP0-1 iout1x 1 eq {%iout1x=1 380 280 0000 add translate %shift of cero point by 0000: no shift /imin 0 def /ij 57 def /i0 58 def /ix 59 def TLL /kx 1 def /xpn 0 def %positiv data order /hw 0 def %hue angle scale /dtext 1 def %d=definition /htext 0 def %h=hue /ttext 0 def %t=table /ctext 1 def %c=curve /stext 1 def %s=sample colours /faktx 40 3 div def %scale hue angle %faktx 36 3 div def %scale wavelength /fakty 90 3 div def %scale XYZ, ABC %/fakty 30 3 div def %scale Lab* /faktz 90 3 div 4 mul def %not used dtext 1 eq {%dtext=1 proc_ALLi_def } if %dtext=1 /yshift 0000 def proc_hAB_min %allways with imin if htext=1 proc_ALLi_ALLin %allways ttext 1 eq {%ttext=1 /yshift 0000 def proc_hAB_tab } if %ttext=1 1 1 0 setrgbcolor 0 setlinewidth 0 0 moveto 400 12 mul 200 add 0 rlineto 0 3250 rlineto 400 12 mul 200 add neg 0 rlineto closepath clip 30 setlinewidth ctext 1 eq {%ctext=1 /yshift 0000 def /slog 0 def proc_hABw_XYZ_cur2 /slog 0 def } if %ctext=1 stext 1 eq {%stext=1 /yshift 0000 def /xhh*w 0 def /yYLC 0 def /slog 0 def proc_tab_Ocolors2 /slog 0 def } if %stext=1 380 neg 280 0000 add neg translate %shift of cero point by 1000, no shift } if %iout1x=1 } if %xchartl=0 %END X,Y,Z = f(hAB) %STOP0-4 %************************************************************* %xchartl=1-0 %STOP1-0 %BEG A,B,CAB = f(hAB) xchartl 1 eq {%xchartl=1 iout0x 1 eq {%iout0x=1 380 280 translate 30 setlinewidth 0 setgray 0 0 moveto 400 12 mul 100 add 0 rlineto stroke 0 0 moveto 0 3000 250 add rlineto stroke %icurm 1 eq {%icurm=1 [100] 100 setdash 0 1500 moveto 400 12 mul 300 add 0 rlineto stroke %cero line [ ] 0 setdash % } if %icurm=1 400 12 mul 150 add 0 moveto -100 50 rlineto 0 -100 rlineto closepath fill 0 3000 300 add moveto -50 -100 rlineto 100 0 rlineto closepath fill TBL /txl [ (400) (500) (600) (700) (400)] def /txw [ ( 0) ( 90) (180) (270) (360)] def /txc [() () () (494c,E) (561c,E)] def /tyY [( 0)( 20)( 40) ( 60) ( 80) (100)] def /tyL [(0,0) (0,4) (0,8) (1,2) (1,6) (2,0)] def /tyM [(-1,0) (-0,2) ( 0,6) ( 1,4) ( 2,2) ( 3,0)] def /tyK [(-1,0) ( 0,0) ( 1,0) ( 2,0) ( 3,0) ( 4,0)] def /tyJ [(-1,0) (-0,5) ( 0,0) ( 0,5) ( 1,0) ( 1,5)] def %!x-Achse: 100 Einheiten = 1200 Skalen-Einheiten 0 1 4 {/i exch def /ixt {-150 i 1200 mul add} def /ixl { 000 i 1200 mul add} def ixt -250 moveto txw i get exec show ixl 75 moveto 0 -150 rlineto stroke } for /ixtt 4 1200 mul def /iytt 150 def ixtt 220 sub iytt moveto TBIS (h) show 0 -30 rmoveto TBL xchart14 0 eq {(AB0)}{(AB1)} ifelse show 0 30 rmoveto TBL %!y-Achse: 100 S-Einheiten = 0600 Skalen-Einheiten %0 1 5 {/i exch def % /iyt {-50 i 0600 mul add} def % /iyl {000 i 0600 mul add} def % -300 iyt moveto tyL i get show % -75 iyl moveto 150 0 rlineto stroke % } for %!y-Achse: 100 S-Einheiten = 0750 Skalen-Einheiten 0 1 4 {/i exch def %3000:4=750 /iyt {-50 i 0750 mul add} def /iyl {000 i 0750 mul add} def -300 iyt moveto tyJ i get show -75 iyl moveto 150 0 rlineto stroke } for /ixtt 0 def /iytt 5.3 600 mul def ixtt 150 add iytt 80 sub moveto TBS (log[) show TBIS (Y) show TBS (/50], ) show TBS (log[) show TBIS (C) show TBL 0 -30 rmoveto xchart14 0 eq {(AB0)}{(AB1)} ifelse show 0 30 rmoveto TBS (/30] (---)) show ixtt 150 add iytt 80 sub ydel sub moveto TBS (log[50/) show TBIS (Y) show TBS (], ) show TBS (log[30/) show TBIS (C) show TBL 0 -30 rmoveto xchart14 0 eq {(AB0)}{(AB1)} ifelse show 0 30 rmoveto TBS (] (- -)) show 380 neg 280 neg translate } if %iout0x=1 %******************************************************************* %STOP1-1 iout1x 1 eq {%iout1x=1 380 280 0000 add translate %shift of cero point by 0000 /imin 0 def /ij 57 def /i0 58 def /ix 59 def TLL /kx 1 def /xpn 0 def %positiv data order /hw 0 def %hue angle scale /dtext 1 def %d=definition /htext 0 def %h=hue /ttext 0 def %t=table /ctext 1 def %c=curve /stext 1 def %s=sample colours /faktx 40 3 div def %scale hue angle %/faktx 36 3 div def %scale wavelength /fakty 90 3 div def %scale XYZ, ABC %/fakty 30 3 div def %scale Lab* /faktz 90 3 div 4 mul def %not used dtext 1 eq {%dtext=1 /yshift 0000 def proc_ALLi_def } if %dtext=1 proc_hAB_min %allways with imin if htext=1 proc_ALLi_ALLin %allways ttext 1 eq {%ttext=1 /yshift 0000 def proc_hAB_tab } if %ttext=1 1 1 0 setrgbcolor 0 setlinewidth % 0 -1200 moveto 400 12 mul 200 add 0 rlineto 0 3250 rlineto % 400 12 mul 200 add neg 0 rlineto closepath clip 0 -0000 moveto 400 12 mul 200 add 0 rlineto 0 3250 rlineto 400 12 mul 200 add neg 0 rlineto closepath clip 30 setlinewidth ctext 1 eq {%ctext=1 /yshift 0000 def /slog 1 def proc_hABw_XYZ_cur2 /slog 0 def } if %ctext=1 stext 1 eq {%stext=1 /yshift 0000 def /xhh*w 0 def /yYLC 0 def %proc_hh*w_YLC_samCGY /slog 1 def proc_tab_Ocolors2 /slog 0 def } if %stext=1 } if %iout1x=1 } if %xchartl=1 %END A,B,CAB = f(hAB) %STOP1-4 %************************************************************* %xchartl=2-0 %STOP2-0 %BEG A,B,CAB = f(hAB) xchartl 2 eq {%xchartl=2 iout0x 1 eq {%iout0x=1 380 280 translate 30 setlinewidth 0 setgray 0 0 moveto 400 12 mul 100 add 0 rlineto stroke 0 0 moveto 0 3000 250 add rlineto stroke %icurm 1 eq {%icurm=1 [100] 100 setdash 0 1500 moveto 400 12 mul 300 add 0 rlineto stroke %cero line [ ] 0 setdash % } if %icurm=1 400 12 mul 150 add 0 moveto -100 50 rlineto 0 -100 rlineto closepath fill 0 3000 300 add moveto -50 -100 rlineto 100 0 rlineto closepath fill TBL /txl [ (400) (500) (600) (700) (400)] def /txw [ ( 0) ( 90) (180) (270) (360)] def /txc [() () () (494c,E) (561c,E)] def /tyY [( 0)( 20)( 40) ( 60) ( 80) (100)] def /tyL [(0,0) (0,4) (0,8) (1,2) (1,6) (2,0)] def /tyM [(-1,0) (-0,2) ( 0,6) ( 1,4) ( 2,2) ( 3,0)] def /tyK [(-1,0) ( 0,0) ( 1,0) ( 2,0) ( 3,0) ( 4,0)] def /tyJ [(-1,0) (-0,5) ( 0,0) ( 0,5) ( 1,0) ( 1,5)] def %!x-Achse: 100 Einheiten = 1200 Skalen-Einheiten 0 1 4 {/i exch def /ixt {-150 i 1200 mul add} def /ixl { 000 i 1200 mul add} def ixt -250 moveto txw i get exec show ixl 75 moveto 0 -150 rlineto stroke } for /ixtt 4 1200 mul def /iytt 150 def ixtt 220 sub iytt moveto TBIS (h) show 0 -30 rmoveto TBL xchart14 0 eq {(AB0)}{(AB1)} ifelse show 0 30 rmoveto TBL %!y-Achse: 100 S-Einheiten = 0600 Skalen-Einheiten %0 1 5 {/i exch def % /iyt {-50 i 0600 mul add} def % /iyl {000 i 0600 mul add} def % -300 iyt moveto tyL i get show % -75 iyl moveto 150 0 rlineto stroke % } for %!y-Achse: 100 S-Einheiten = 0750 Skalen-Einheiten 0 1 4 {/i exch def %3000:4=750 /iyt {-50 i 0750 mul add} def /iyl {000 i 0750 mul add} def -300 iyt moveto tyJ i get show -75 iyl moveto 150 0 rlineto stroke } for /ixtt 0 def /iytt 5.3 600 mul def ixtt 150 add iytt 80 sub moveto ixtt 150 add iytt 80 sub moveto TBS (log[) show TBIS (Y) show TBS (/50], ) show TBS (log[) show TBIS (C) show TBL 0 -30 rmoveto xchart14 0 eq {(AB0)}{(AB1)} ifelse show 0 30 rmoveto TBS (/30] (---)) show ixtt 150 add iytt 80 sub ydel sub moveto TBS (log[50/) show TBIS (Y) show TBS (], ) show TBS (log[30/) show TBIS (C) show TBL 0 -30 rmoveto xchart14 0 eq {(AB0)}{(AB1)} ifelse show 0 30 rmoveto TBS (] (- -)) show 380 neg 280 neg translate } if %iout0x=1 %******************************************************************* %STOP2-1 iout1x 1 eq {%iout1x=1 380 280 0000 add translate %shift of cero point by 0000 /imin 0 def /ij 57 def /i0 58 def /ix 59 def TLL /kx 1 def /xpn 0 def %positiv data order /hw 0 def %hue angle scale /dtext 1 def %d=definition /htext 0 def %h=hue /ttext 0 def %t=table /ctext 1 def %c=curve /stext 1 def %s=sample colours /faktx 40 3 div def %scale hue angle %/faktx 36 3 div def %scale wavelength /fakty 90 3 div def %scale XYZ, ABC %/fakty 30 3 div def %scale Lab* /faktz 90 3 div 4 mul def %not used dtext 1 eq {%dtext=1 /yshift 0000 def proc_ALLi_def } if %dtext=1 proc_hAB_min %allways with imin if htext=1 proc_ALLi_ALLin %allways ttext 1 eq {%ttext=1 /yshift 0000 def proc_hAB_tab } if %ttext=1 1 1 0 setrgbcolor 0 setlinewidth % 0 -1200 moveto 400 12 mul 200 add 0 rlineto 0 3250 rlineto % 400 12 mul 200 add neg 0 rlineto closepath clip 0 -0000 moveto 400 12 mul 200 add 0 rlineto 0 3250 rlineto 400 12 mul 200 add neg 0 rlineto closepath clip 30 setlinewidth ctext 1 eq {%ctext=1 /yshift 0000 def /slog 2 def proc_hABw_XYZ_cur2 /slog 0 def } if %ctext=1 stext 1 eq {%stext=1 /yshift 0000 def /xhh*w 0 def /yYLC 0 def %proc_hh*w_YLC_samCGY /slog 2 def proc_tab_Ocolors2 /slog 0 def } if %stext=1 } if %iout1x=1 } if %xchartl=2 %END A,B,CAB = f(hAB) %STOP2-4 %************************************************************* %xchartl=3-0 %STOP3-0 %BEG A,B,CAB = f(hAB) xchartl 3 eq {%xchartl=3 iout0x 1 eq {%iout0x=1 380 280 translate 30 setlinewidth 0 setgray 0 0 moveto 400 12 mul 100 add 0 rlineto stroke 0 0 moveto 0 3000 250 add rlineto stroke %icurm 1 eq {%icurm=1 [100] 100 setdash 0 1500 moveto 400 12 mul 300 add 0 rlineto stroke %cero line [ ] 0 setdash % } if %icurm=1 400 12 mul 150 add 0 moveto -100 50 rlineto 0 -100 rlineto closepath fill 0 3000 300 add moveto -50 -100 rlineto 100 0 rlineto closepath fill TBL /txl [ (400) (500) (600) (700) (400)] def /txw [ ( 0) ( 90) (180) (270) (360)] def /txc [() () () (494c,E) (561c,E)] def /tyY [( 0)( 20)( 40) ( 60) ( 80) (100)] def /tyL [(0,0) (0,4) (0,8) (1,2) (1,6) (2,0)] def /tyM [(-1,0) (-0,2) ( 0,6) ( 1,4) ( 2,2) ( 3,0)] def /tyK [(-1,0) ( 0,0) ( 1,0) ( 2,0) ( 3,0) ( 4,0)] def /tyJ [(-1,0) (-0,5) ( 0,0) ( 0,5) ( 1,0) ( 1,5)] def %!x-Achse: 100 Einheiten = 1200 Skalen-Einheiten 0 1 4 {/i exch def /ixt {-150 i 1200 mul add} def /ixl { 000 i 1200 mul add} def ixt -250 moveto txw i get exec show ixl 75 moveto 0 -150 rlineto stroke } for /ixtt 4 1200 mul def /iytt 150 def ixtt 220 sub iytt moveto TBIS (h) show 0 -30 rmoveto TBL xchart14 0 eq {(AB0)}{(AB1)} ifelse show 0 30 rmoveto TBL %!y-Achse: 100 S-Einheiten = 0600 Skalen-Einheiten %0 1 5 {/i exch def % /iyt {-50 i 0600 mul add} def % /iyl {000 i 0600 mul add} def % -300 iyt moveto tyL i get show % -75 iyl moveto 150 0 rlineto stroke % } for %!y-Achse: 100 S-Einheiten = 0750 Skalen-Einheiten 0 1 4 {/i exch def %3000:4=750 /iyt {-50 i 0750 mul add} def /iyl {000 i 0750 mul add} def -300 iyt moveto tyJ i get show -75 iyl moveto 150 0 rlineto stroke } for /ixtt 0 def /iytt 5.3 600 mul def ixtt 150 add iytt 80 sub moveto ixtt 150 add iytt 80 sub moveto TBS (log[) show TBIS (Y) show TBS (/50], ) show TBS (log[\050) show TBIS (Y) show TBS (/50\051]/\050) show TBIS (C) show TBL 0 -30 rmoveto xchart14 0 eq {(AB0)}{(AB1)} ifelse show 0 30 rmoveto TBS (/30\051] (---)) show ixtt 150 add iytt 80 sub ydel sub moveto TBS (log[50/) show TBIS (Y) show TBS (], ) show TBS (log[\050) show TBIS (C) show TBL 0 -30 rmoveto xchart14 0 eq {(AB0)}{(AB1)} ifelse show 0 30 rmoveto TBS (/30\051/\050) show TBIS (Y) show TBS (/50\051] (- -)) show 380 neg 280 neg translate } if %iout0x=1 %******************************************************************* %STOP3-1 iout1x 1 eq {%iout1x=1 380 280 0000 add translate %shift of cero point by 0000 /imin 0 def /ij 57 def /i0 58 def /ix 59 def TLL /kx 1 def /xpn 0 def %positiv data order /hw 0 def %hue angle scale /dtext 1 def %d=definition /htext 0 def %h=hue /ttext 0 def %t=table /ctext 1 def %c=curve /stext 1 def %s=sample colours /faktx 40 3 div def %scale hue angle %/faktx 36 3 div def %scale wavelength /fakty 90 3 div def %scale XYZ, ABC %/fakty 30 3 div def %scale Lab* /faktz 90 3 div 4 mul def %not used dtext 1 eq {%dtext=1 /yshift 0000 def proc_ALLi_def } if %dtext=1 proc_hAB_min %allways with imin if htext=1 proc_ALLi_ALLin %allways ttext 1 eq {%ttext=1 /yshift 0000 def proc_hAB_tab } if %ttext=1 1 1 0 setrgbcolor 0 setlinewidth % 0 -1200 moveto 400 12 mul 200 add 0 rlineto 0 3250 rlineto % 400 12 mul 200 add neg 0 rlineto closepath clip 0 -0000 moveto 400 12 mul 200 add 0 rlineto 0 3250 rlineto 400 12 mul 200 add neg 0 rlineto closepath clip 30 setlinewidth ctext 1 eq {%ctext=1 /yshift 0000 def /slog 2 def proc_hABw_XYZ_cur2 /slog 0 def } if %ctext=1 stext 1 eq {%stext=1 /yshift 0000 def /xhh*w 0 def /yYLC 0 def %proc_hh*w_YLC_samCGY /slog 2 def proc_tab_Ocolors2 /slog 0 def } if %stext=1 } if %iout1x=1 } if %xchartl=3 %END A,B,CAB = f(hAB) %STOP3-4 %************************************************************* %xchartl=4-0 %STOP4-0 %BEG X,Y,Z = f(wd) xchartl 4 eq {%xchartl=4 iout0x 1 eq {%iout0x=1 380 280 translate 30 setlinewidth 0 setgray 0 0 moveto 1200 3.72 mul 100 add 0 rlineto stroke 0 0 moveto 0 3000 250 add rlineto stroke %icurm 1 eq {%icurm=1 [100] 100 setdash 0 1500 moveto 400 12 mul 300 add 0 rlineto stroke %cero line [ ] 0 setdash % } if %icurm=1 1200 3.72 mul 150 add 0 moveto -100 50 rlineto 0 -100 rlineto closepath fill 0 3000 300 add moveto -50 -100 rlineto 100 0 rlineto closepath fill TBL /txl [ (400) (500) (600) (700;495c) (567c;400)] def /txw [ ( 0) ( 90) (180) (270) (360)] def /txc [() () () (494c,E) (561c,E)] def /tye [(-10) ( -5) ( 0) ( 5) ( 10) ( 15)] def /tyY [( 0)( 20)( 40) ( 60) ( 80) (100)] def /tyL [(0,0) (0,4) (0,8) (1,2) (1,6) (2,0)] def %!x-Achse: 100 Einheiten = 1200 Skalen-Einheiten 0 1 4 {/i exch def /ixt {-150 i 2 le {i} if i 3 eq {3 0.10 sub} if i 4 eq {3.72 0.15 sub} if 1200 mul add} def /ixl { 000 i 4 lt {i}{3.72} ifelse 1200 mul add} def ixt -250 moveto txl i get exec show ixl 75 moveto 0 -150 rlineto stroke } for /ixtt 4 1200 mul def /iytt 150 def ixtt 150 sub iytt 200 sub moveto SS (l) show 0 -30 rmoveto TBL (d) show 0 30 rmoveto TS %!y-Achse: 100 S-Einheiten = 0600 Skalen-Einheiten TBL 0 1 5 {/i exch def /iyt {-50 i 0600 mul add} def /iyl {000 i 0600 mul add} def -300 iyt moveto tyY i get show -75 iyl moveto 150 0 rlineto stroke } for /ixtt 0 def /iytt 5.3 600 mul def ixtt 150 add iytt 80 sub moveto TBIS (Y, ) show TBS (100 - ) show TBIS (Y) show TBS (, ) show TBIS (C) show TBL 0 -30 rmoveto xchart14 0 eq {(AB0)}{(AB1)} ifelse show 0 30 rmoveto TBS (, 100 - ) show TBIS (C) show TBL 0 -30 rmoveto xchart14 0 eq {(AB0)}{(AB1)} ifelse show 0 30 rmoveto TBS ( im Bereich) showde ( in the range) showea TBIS ( Y) show TBS NK 0 eq {%NK=0,1 (=0 bis 100) showde (=0 to 100) showea }%NK=0 {%K=1 (=0,0 bis 88,6) showde (=0,0 to 88,6) showea } ifelse %NK=0,1 380 neg 280 neg translate } if %iout0x=1 %***************************************************** %STOP4-1 iout1x 1 eq {%iout1x=1 380 280 0000 add translate %shift of cero point by 0000: no shift /imin 0 def /ij 57 def /i0 58 def /ix 59 def TLL /kx 1 def /xpn 1 def %negativ data order /hw 1 def %wavelength scale /dtext 1 def %d=definition /htext 0 def %h=hue /ttext 0 def %t=table /ctext 1 def %c=curve /stext 1 def %s=sample colours %/faktx 40 3 div def %scale hue angle /faktx 36 3 div def %scale wavelength /fakty 90 3 div def %scale XYZ, ABC %/fakty 30 3 div def %scale Lab* /faktz 90 3 div 4 mul def %not used dtext 1 eq {%dtext=1 proc_ALLi_def } if %dtext=1 /yshift 0000 def proc_iwd_min %allways with imin if htext=1 proc_ALLi_ALLin %allways ttext 1 eq {%ttext=1 /yshift 0000 def proc_iwd_tab } if %ttext=1 1 1 0 setrgbcolor 0 setlinewidth 0 0 moveto 400 12 mul 200 add 0 rlineto 0 3250 rlineto 400 12 mul 200 add neg 0 rlineto closepath clip 30 setlinewidth ctext 1 eq {%ctext=1 /yshift 0000 def /slog 0 def proc_hABw_XYZ_cur2 /slog 0 def } if %ctext=1 stext 1 eq {%stext=1 /yshift 0000 def /xhh*w 2 def /yYLC 0 def %proc_hh*w_YLC_samCGY /slog 0 def proc_tab_Ocolors2 /slog 0 def } if %stext=1 } if %iout1x=1 } if %xchartl=4 %END X,Y,Z = f(wd) %STOP4-4 %************************************************************* %xchartl=5-0 %STOP5-0 %BEG A,B,CAB = f(wd) xchartl 5 eq {%xchartl=5 iout0x 1 eq {%iout0x=1 380 280 translate 30 setlinewidth 0 setgray 0 0 moveto 1200 3.72 mul 100 add 0 rlineto stroke 0 0 moveto 0 3000 250 add rlineto stroke %icurm 1 eq {%icurm=1 [100] 100 setdash 0 1500 moveto 400 12 mul 300 add 0 rlineto stroke %cero line [ ] 0 setdash % } if %icurm=1 1200 3.72 mul 150 add 0 moveto -100 50 rlineto 0 -100 rlineto closepath fill 0 3000 300 add moveto -50 -100 rlineto 100 0 rlineto closepath fill TBL /txl [ (400) (500) (600) (700;495c) (567c;400)] def /txw [ ( 0) ( 90) (180) (270) (360)] def /txc [() () () (494c,E) (561c,E)] def /tye [(-10) ( -5) ( 0) ( 5) ( 10) ( 15)] def /tyA [(-40) (-20) ( 0) ( 20) ( 40) ( 60)] def /tyY [( 0)( 20)( 40) ( 60) ( 80) (100)] def /tyL [(0,0) (0,4) (0,8) (1,2) (1,6) (2,0)] def %!x-Achse: 100 Einheiten = 1200 Skalen-Einheiten 0 1 4 {/i exch def /ixt {-150 i 2 le {i} if i 3 eq {3 0.10 sub} if i 4 eq {3.72 0.15 sub} if 1200 mul add} def /ixl { 000 i 4 lt {i}{3.72} ifelse 1200 mul add} def ixt -250 moveto txl i get exec show ixl 75 moveto 0 -150 rlineto stroke } for /ixtt 4 1200 mul def /iytt 150 def ixtt 150 sub iytt 200 sub moveto SS (l) show 0 -30 rmoveto TBL (d) show 0 30 rmoveto TS %!y-Achse: 100 S-Einheiten = 0600 Skalen-Einheiten TBL 0 1 5 {/i exch def /iyt {-50 i 0600 mul add} def /iyl {000 i 0600 mul add} def -300 iyt moveto tyL i get show -75 iyl moveto 150 0 rlineto stroke } for /ixtt 0 def /iytt 5.3 600 mul def ixtt 150 add iytt 80 sub moveto TBS (log[) show TBIS (Y) show TBS (/50], ) show TBS (log[) show TBIS (C) show TBL 0 -30 rmoveto xchart14 0 eq {(AB0)}{(AB1)} ifelse show 0 30 rmoveto TBS (/30] (---)) show ixtt 150 add iytt 80 sub ydel sub moveto TBS (log[50/) show TBIS (Y) show TBS (], ) show TBS (log[30/) show TBIS (C) show TBL 0 -30 rmoveto xchart14 0 eq {(AB0)}{(AB1)} ifelse show 0 30 rmoveto TBS (] (- -)) show 380 neg 280 neg translate } if %iout0x=1 %************************************************* %STOP5-1 380 280 0000 add translate %shift of cero point by 0000 iout1x 1 eq {%iout1x=1 /imin 0 def /ij 57 def /i0 58 def /ix 59 def TLL /kx 1 def /xpn 1 def %negativ data order /hw 1 def %wavelength scale /dtext 1 def %d=definition /htext 0 def %h=hue /ttext 0 def %t=table /ctext 1 def %c=curve /stext 1 def %s=sample colours %/faktx 40 3 div def %scale hue angle /faktx 36 3 div def %scale wavelength /fakty 90 3 div def %scale XYZ, ABC %/fakty 30 3 div def %scale Lab* /faktz 90 3 div 4 mul def %not used dtext 1 eq {%dtext=1 /yshift -0000 def proc_ALLi_def } if %dtext=1 proc_iwd_min %allways with imin if htext=1 proc_ALLi_ALLin %allways ttext 1 eq {%ttext=1 /yshift -1200 def proc_iwd_tab } if %ttext=1 1 1 0 setrgbcolor 0 setlinewidth 0 -0000 moveto 400 12 mul 200 add 0 rlineto 0 3250 rlineto 400 12 mul 200 add neg 0 rlineto closepath clip 30 setlinewidth ctext 1 eq {%ctext=1 /yshift 0000 def /slog 1 def proc_hABw_XYZ_cur2 /slog 0 def %proc_hABw_ABCY_cur2 } if %ctext=1 stext 1 eq {%stext=1 /yshift -0000 def /xhh*w 2 def /yYLC 0 def %proc_hh*w_YLC_samCGY /slog 1 def proc_tab_Ocolors2 /slog 0 def } if %stext=1 } if %iout1x=1 } if %xchartl=5 %END A,B,CAB = f(wd) %STOP5-4 %************************************************************* %xchartl=6-0 %STOP6-0 %BEG A,B,CAB = f(wd) xchartl 6 eq {%xchartl=6 iout0x 1 eq {%iout0x=1 380 280 translate 30 setlinewidth 0 setgray 0 0 moveto 1200 3.72 mul 100 add 0 rlineto stroke 0 0 moveto 0 3000 250 add rlineto stroke %icurm 1 eq {%icurm=1 [100] 100 setdash 0 1500 moveto 400 12 mul 300 add 0 rlineto stroke %cero line [ ] 0 setdash % } if %icurm=1 1200 3.72 mul 150 add 0 moveto -100 50 rlineto 0 -100 rlineto closepath fill 0 3000 300 add moveto -50 -100 rlineto 100 0 rlineto closepath fill TBL /txl [ (400) (500) (600) (700;495c) (567c;400)] def /txw [ ( 0) ( 90) (180) (270) (360)] def /txc [() () () (494c,E) (561c,E)] def /tye [(-10) ( -5) ( 0) ( 5) ( 10) ( 15)] def /tyA [(-40) (-20) ( 0) ( 20) ( 40) ( 60)] def /tyY [( 0)( 20)( 40) ( 60) ( 80) (100)] def /tyL [(0,0) (0,4) (0,8) (1,2) (1,6) (2,0)] def /tyM [(-1,0) (-0,2) ( 0,6) ( 1,4) ( 2,2) ( 3,0)] def /tyK [(-1,0) ( 0,0) ( 1,0) ( 2,0) ( 3,0) ( 4,0)] def %!x-Achse: 100 Einheiten = 1200 Skalen-Einheiten 0 1 4 {/i exch def /ixt {-150 i 2 le {i} if i 3 eq {3 0.10 sub} if i 4 eq {3.72 0.15 sub} if 1200 mul add} def /ixl { 000 i 4 lt {i}{3.72} ifelse 1200 mul add} def ixt -250 moveto txl i get exec show ixl 75 moveto 0 -150 rlineto stroke } for /ixtt 4 1200 mul def /iytt 150 def ixtt 150 sub iytt 200 sub moveto SS (l) show 0 -30 rmoveto TBL (d) show 0 30 rmoveto TS TBL %!y-Achse: 100 S-Einheiten = 0600 Skalen-Einheiten %0 1 5 {/i exch def % /iyt {-50 i 0600 mul add} def % /iyl {000 i 0600 mul add} def % -300 iyt moveto tyL i get show % -75 iyl moveto 150 0 rlineto stroke % } for %!y-Achse: 100 S-Einheiten = 0750 Skalen-Einheiten 0 1 4 {/i exch def %3000:4=750 /iyt {-50 i 0750 mul add} def /iyl {000 i 0750 mul add} def -300 iyt moveto tyK i get show -75 iyl moveto 150 0 rlineto stroke } for /ixtt 0 def /iytt 5.3 600 mul def ixtt 150 add iytt 80 sub moveto ixtt 150 add iytt 80 sub moveto TBS (log[) show TBIS (Y) show TBS (/50], ) show TBS (log[) show TBIS (C) show TBL 0 -30 rmoveto xchart14 0 eq {(AB0)}{(AB1)} ifelse show 0 30 rmoveto TBS (/30] (---)) show ixtt 150 add iytt 80 sub ydel sub moveto TBS (log[50/) show TBIS (Y) show TBS (], ) show TBS (log[30/) show TBIS (C) show TBL 0 -30 rmoveto xchart14 0 eq {(AB0)}{(AB1)} ifelse show 0 30 rmoveto TBS (] (- -)) show 380 neg 280 neg translate } if %iout0x=1 %************************************************* %STOP6-1 380 280 0000 add translate %shift of cero point by 0000 iout1x 1 eq {%iout1x=1 /imin 0 def /ij 57 def /i0 58 def /ix 59 def TLL /kx 1 def /xpn 1 def %negativ data order /hw 1 def %wavelength scale /dtext 1 def %d=definition /htext 0 def %h=hue /ttext 0 def %t=table /ctext 1 def %c=curve /stext 1 def %s=sample colours %/faktx 40 3 div def %scale hue angle /faktx 36 3 div def %scale wavelength /fakty 90 3 div def %scale XYZ, ABC %/fakty 30 3 div def %scale Lab* /faktz 90 3 div 4 mul def %not used dtext 1 eq {%dtext=1 /yshift -0000 def proc_ALLi_def } if %dtext=1 proc_iwd_min %allways with imin if htext=1 proc_ALLi_ALLin %allways ttext 1 eq {%ttext=1 /yshift -1200 def proc_iwd_tab } if %ttext=1 1 1 0 setrgbcolor 0 setlinewidth 0 -0000 moveto 400 12 mul 200 add 0 rlineto 0 3250 rlineto 400 12 mul 200 add neg 0 rlineto closepath clip 30 setlinewidth ctext 1 eq {%ctext=1 /yshift 0750 def /slog 2 def proc_hABw_XYZ_cur2 /slog 0 def %proc_hABw_ABCY_cur2 } if %ctext=1 stext 1 eq {%stext=1 /yshift 0750 def /xhh*w 2 def /yYLC 0 def %proc_hh*w_YLC_samCGY /slog 2 def proc_tab_Ocolors2 /slog 0 def } if %stext=1 } if %iout1x=1 } if %xchartl=6 %END A,B,CAB = f(wd) %STOP6-4 %************************************************************* %xchartl=7-0 %STOP7-0 %BEG A,B,CAB = f(wd) xchartl 7 eq {%xchartl=7 iout0x 1 eq {%iout0x=1 380 280 translate 30 setlinewidth 0 setgray 0 0 moveto 1200 3.72 mul 100 add 0 rlineto stroke 0 0 moveto 0 3000 250 add rlineto stroke %icurm 1 eq {%icurm=1 [100] 100 setdash 0 1500 moveto 400 12 mul 300 add 0 rlineto stroke %cero line [ ] 0 setdash % } if %icurm=1 1200 3.72 mul 150 add 0 moveto -100 50 rlineto 0 -100 rlineto closepath fill 0 3000 300 add moveto -50 -100 rlineto 100 0 rlineto closepath fill TBL /txl [ (400) (500) (600) (700;495c) (567c;400)] def /txw [ ( 0) ( 90) (180) (270) (360)] def /txc [() () () (494c,E) (561c,E)] def /tye [(-10) ( -5) ( 0) ( 5) ( 10) ( 15)] def /tyA [(-40) (-20) ( 0) ( 20) ( 40) ( 60)] def /tyY [( 0)( 20)( 40) ( 60) ( 80) (100)] def /tyL [(0,0) (0,4) (0,8) (1,2) (1,6) (2,0)] def /tyM [(-1,0) (-0,2) ( 0,6) ( 1,4) ( 2,2) ( 3,0)] def /tyK [(-1,0) ( 0,0) ( 1,0) ( 2,0) ( 3,0) ( 4,0)] def %!x-Achse: 100 Einheiten = 1200 Skalen-Einheiten 0 1 4 {/i exch def /ixt {-150 i 2 le {i} if i 3 eq {3 0.10 sub} if i 4 eq {3.72 0.15 sub} if 1200 mul add} def /ixl { 000 i 4 lt {i}{3.72} ifelse 1200 mul add} def ixt -250 moveto txl i get exec show ixl 75 moveto 0 -150 rlineto stroke } for /ixtt 4 1200 mul def /iytt 150 def ixtt 150 sub iytt 200 sub moveto SS (l) show 0 -30 rmoveto TBL (d) show 0 30 rmoveto TS TBL %!y-Achse: 100 S-Einheiten = 0600 Skalen-Einheiten %0 1 5 {/i exch def % /iyt {-50 i 0600 mul add} def % /iyl {000 i 0600 mul add} def % -300 iyt moveto tyL i get show % -75 iyl moveto 150 0 rlineto stroke % } for %!y-Achse: 100 S-Einheiten = 0750 Skalen-Einheiten 0 1 4 {/i exch def %3000:4=750 /iyt {-50 i 0750 mul add} def /iyl {000 i 0750 mul add} def -300 iyt moveto tyK i get show -75 iyl moveto 150 0 rlineto stroke } for /ixtt 0 def /iytt 5.3 600 mul def ixtt 150 add iytt 80 sub moveto TBS (log[) show TBIS (Y) show TBS (/50], ) show TBS (log[\050) show TBIS (Y) show TBS (/50\051]/\050) show TBIS (C) show TBL 0 -30 rmoveto xchart14 0 eq {(AB0)}{(AB1)} ifelse show 0 30 rmoveto TBS (/30\051] (---)) show ixtt 150 add iytt 80 sub ydel sub moveto TBS (log[50/) show TBIS (Y) show TBS (], ) show TBS (log[\050) show TBIS (C) show TBL 0 -30 rmoveto xchart14 0 eq {(AB0)}{(AB1)} ifelse show 0 30 rmoveto TBS (/30\051/\050) show TBIS (Y) show TBS (/50\051] (- -)) show 380 neg 280 neg translate } if %iout0x=1 %************************************************* %STOP7-1 380 280 0000 add translate %shift of cero point by 0000 iout1x 1 eq {%iout1x=1 /imin 0 def /ij 57 def /i0 58 def /ix 59 def TLL /kx 1 def /xpn 1 def %negativ data order /hw 1 def %wavelength scale /dtext 1 def %d=definition /htext 0 def %h=hue /ttext 0 def %t=table /ctext 1 def %c=curve /stext 1 def %s=sample colours %/faktx 40 3 div def %scale hue angle /faktx 36 3 div def %scale wavelength /fakty 90 3 div def %scale XYZ, ABC %/fakty 30 3 div def %scale Lab* /faktz 90 3 div 4 mul def %not used dtext 1 eq {%dtext=1 /yshift -0000 def proc_ALLi_def } if %dtext=1 proc_iwd_min %allways with imin if htext=1 proc_ALLi_ALLin %allways ttext 1 eq {%ttext=1 /yshift -1200 def proc_iwd_tab } if %ttext=1 1 1 0 setrgbcolor 0 setlinewidth 0 -0000 moveto 400 12 mul 200 add 0 rlineto 0 3250 rlineto 400 12 mul 200 add neg 0 rlineto closepath clip 30 setlinewidth ctext 1 eq {%ctext=1 /yshift 0750 def /slog 2 def proc_hABw_XYZ_cur2 /slog 0 def %proc_hABw_ABCY_cur2 } if %ctext=1 stext 1 eq {%stext=1 /yshift 0750 def /xhh*w 2 def /yYLC 0 def %proc_hh*w_YLC_samCGY /slog 2 def proc_tab_Ocolors2 /slog 0 def } if %stext=1 } if %iout1x=1 } if %xchartl=7 %END A,B,CAB = f(wd) %STOP7-4 %************************ %special space for 'xm03'PROZ0.COM 2x before/after xchartl xchartl 0 eq { 100 neg 13000 neg translate} if xchartl 1 eq { 6100 neg 13000 neg translate} if xchartl 2 eq { 100 neg 08750 neg translate} if xchartl 3 eq { 6100 neg 08750 neg translate} if xchartl 4 eq { 100 neg 4500 neg translate} if xchartl 5 eq { 6100 neg 4500 neg translate} if xchartl 6 eq { 100 neg 0250 neg translate} if xchartl 7 eq { 6100 neg 0250 neg translate} if %showpage %XA grestore } for %xchartl=0,7 %8 chromaticity diagrams showpage %7R&7N grestore %%} for %xchartx=0,7 %8 illuminants %%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 DG641-8, %%BoundingBox: 70 90 226 206 /FS {findfont exch scalefont setfont} bind def /MM {72 25.4 div mul} def %%EndProlog gsave 8 /Times-Roman FS 72 83 moveto %!2 (DG641-8,) show 72 90 translate %! 0.01 MM 0.01 MM scale %! 15 setlinewidth %! 0 0 moveto 5400 0 rlineto 0 4000 rlineto -5400 0 rlineto %! closepath stroke 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 03 def /xcolor2 03 def /xcolord 01 def /xchart1 00 def /xchart2 00 def /xchartd 01 def /pchart1 00 def /pchart2 00 def /pchartd 01 def /colsep1 00 def /colsep2 00 def /colsepd 01 def /pmetam1 00 def /pmetam2 00 def /pmetamd 01 def /lanindf where {pop /lanind1 lanindf def /lanind2 lanindf def /lanindd laninddf def} if /colormf where {pop /colorm1 colormf def /colorm2 colormf def /colormd colormdf def} if /deintpf where {pop /deintp1 deintpf def /deintp2 deintpf def /deintpd deintpdf def} if /xcolorf where {pop /xcolor1 xcolorf def /xcolor2 xcolorf def /xcolord xcolordf def} if /xchartf where {pop /xchart1 xchartf def /xchart2 xchartf def /xchartd xchartdf def /xchartm xchart2f xchart1f sub 1 add def} {/xchartm 1 def} ifelse /xchart3f where {pop /xchart3 xchart3f def} {/xchart3 1 def} ifelse /xchart4f where {pop /xchart4 xchart4f def} {/xchart4 0 def} ifelse /pchartf where {pop /pchart1 pchartf def /pchart2 pchartf def /pchartd pchartdf def} if /colsepf where {pop /colsep1 colsepf def /colsep2 colsepf def /colsepd colsepdf def} if /pmetamf where {pop /pmetam1 pmetamf def /pmetam2 pmetamf def /pmetamd pmetamdf def} if /lanind lanind1 def % /colorm colorm1 def % /deintp deintp1 def % /xcolor xcolor1 def % /xchart xchart1 def % /pchart pchart1 def % /colsep colsep1 def % /pmetam pmetam1 def % /GSS$ where {pop /LSS$ GSS$ def} {/LSS$ (1) def} ifelse /GSC$ where {pop /LSC$ GSC$ def} {/LSC$ (N) def} ifelse /GSX$ where {pop /LSX$ GSX$ def} {/LSX$ (0) def} ifelse /GSY$ where {pop /LSY$ GSY$ def} {/LSY$ (0) def} ifelse /GEX$ where {pop /LEX$ GEX$ def} {/LEX$ (P.PS./PDF) def} ifelse /GEY$ where {pop /LEY$ GEY$ def} {/LEY$ (P.DAT) def} ifelse /IMES 0 def /i*ptrsc 0 def gsave 0 setgray 1.0 1.0 scale 0.0 MM 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 0 eq {/Txx (-) def /Fxx (-) def} if xchart 1 ge {%xchart>=1 /i0 12 def /i1 i0 1 add def /i2 i0 2 add def /i3 i0 3 add def 2.5 MM /Times-ISOL1 FS x i0 get MM 40 MM add y i0 get MM 1 MM sub moveto lanind cvishow (-) show colorm cvishow deintp cvishow xcolor cvishow xchart cvishow pchart cvishow colsep cvishow (-F) show pmetam cvishow } if %xchart>=1 /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://130.149.60.45/~farbmetrik/DG64/DG64) show colorm cvishow deintp cvishow colorm 0 eq {(N) show} {(F) show} ifelse (P.PDF & ) show (http://130.149.60.45/~farbmetrik/DG64/DG64) show colorm cvishow deintp cvishow colorm 0 eq {(N) show} {(F) show} ifelse (P.TXT & ) show (http://130.149.60.45/~farbmetrik/DG64/DG64.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 /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. /xchartx xchart def %For TELi xchartx get /xchart8 0 def %xchart8=0: Pxx, xchart8=1: Dxx /xchart14 1 def %xchart14=0: YABCh0, xchart14=1: YABCh1 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 /icurm 1 def %0:dominant, 1:and complimentary colours %icurm=1: 1\255minus data (icurm=1) /iout0x 1 def %coordinate system /iout1x 1 def %iout1x=1:Ostwald colours 1 with procedures _cur2 %dominant (icurm=0) and complementary (icurm=1) /iout2x 0 def %iout2x=1:Ostwald colours 2 with procedures _cur2 /iout3x 0 def %sRGB colours, iout3x=1:sRGB data /NK 0 def %0:Yw=100, 1:Yw=88,6 /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 %special /10TIN10 {10TIN 0 -3 rmoveto xcolor 1 eq {(10) show} if 0 3 rmoveto} def /10TINi10 {10TIN 0 -3 rmoveto (i) show xcolor 1 eq {(,10) show} if 0 3 rmoveto} def 0 setgray 12TIN 61 MM 14 MM moveto (TUB\255Pr\374fvorlage DG64; ) showde %0DG64X-Y 0000# (TUB\255test chart DG64; ) showen %1DG64X-Y 0000# (gr\341fico TUB\255DG64; ) showes %2DG64X-Y 0000# (TUB\255test graphique DG64; ) showfr %3DG64X-Y 0000# (grafico TUB\255DG64; ) showit %4DG64X-Y 0000# (TUB\255test chart DG64; ) showjp %5DG64X-Y 0000# xchart4 0 eq {%xchart4=0 12 /Times-ISOL1 FS (CIE\255) showde (CIE ) showen TELi xchartx get show (\255Daten von ) showde ( data of ) showen 12 /TimesI-ISOL1 FS (Ostwald) show 12 /Times-ISOL1 FS (\255Farben) showde ( colours) showea 12 /TimesI-ISOL1 FS (, Y) show 10 /Times-ISOL1 FS 0 -3 rmoveto (m) show 0 3 rmoveto 12 /Times-ISOL1 FS (=520_770) showde (=520_770) showea icurm 1 eq {%icurm=1 (, and ) showea ( & ) showde (1\255minus data ( - -)) showea (1\255Minus\255Daten ( - -)) showde } if %icurm=1 iout2x 1 eq {%iout2x=1 (, 2 calculation methods) showea (, 2 Berechnungsmethoden) showde } if %iout2x=1 iout3x 1 eq {%iout3x=1 (, and ) showea ( und ) showde 12 /TimesI-ISOL1 FS (sRGB) show 12 /Times-ISOL1 FS ( data ( - -)) showea (\255Daten ( - -)) showde } if %iout3x=1 } if %xchart4=0 61 MM 09.5 MM moveto xchart4 0 eq {%xchart4=0 12 /TimesI-ISOL1 FS xchart14 0 eq {(XYZ-, YABCh0-, abch0-, CIELAB-, ) showde (XYZ, YABCh0, abch0, CIELAB, ) showen } if xchart14 1 eq {(XYZ-, YABCh1-, abch1-, CIELAB-, ) showde (XYZ, YABCh1, abch1, CIELAB, ) showen } if 12 /Symbol FS (l) show 10 /Times-ISOL1 FS 0 -3 rmoveto (d) show 0 3 rmoveto 12 /Times-ISOL1 FS ( data for illuminant ) showea (\255Daten f\374r Lichtart ) showde TELi xchartx get show 12 /TimesI-ISOL1 FS (, Y) show 10 /Times-ISOL1 FS 0 -3 rmoveto (w) show xcolor 0 eq {() show}{(,10) show} ifelse 0 3 rmoveto 12 /Times-ISOL1 FS (=100 and 88,6) showea (=100 und 88,6) showde } if %xchart4=0 xchart4 1 eq { 12 /Times-ISOL1 FS (Chromatische Pr\374fvorlage) showde %0DG64X-Y 0300# (chromatic test chart) showen %1DG64X-Y 0300# (test crom\341tico gr\341fico) showes %2DG64X-Y 0300# (chromatic graphique de test) showfr %3DG64X-Y 0300# (prova cromatica grafico) showit %4DG64X-Y 0300# (chromatic test chart) showjp %5DG64X-Y 0300# 12 /TimesI-ISOL1 FS ( RGB) show } if xchart4 2 eq { 12 /Times-ISOL1 FS (Chromatische Pr\374fvorlage) showde %0DG64X-Y 0400# (chromatic test chart) showen %1DG64X-Y 0400# (test crom\341tico gr\341fico) showes %2DG64X-Y 0400# (chromatic graphique de test) showfr %3DG64X-Y 0400# (prova cromatica grafico) showit %4DG64X-Y 0400# (chromatic test chart) showjp %5DG64X-Y 0400# 12 /TimesI-ISOL1 FS ( CMY) show } if xchart 1 ge {%xchart>=1 %12 /Times-ISOL1 FS %(, 3D=) show colorm cvishow %(, de=) show deintp cvishow %12 /TimesI-ISOL1 FS %xchart5f 0 eq {(, sRGB) 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 } if %xchart>=1 /iout 0 def iout 1 eq {%iout=1 12 /Times-ISOL1 FS 175 MM 13 MM moveto (Eingabe: ) showde %0DG64X-Y 0500# (input: ) showen %1DG64X-Y 0500# (entrada: ) showes %2DG64X-Y 0500# (entr\351e: ) showfr %3DG64X-Y 0500# (immettere: ) showit %4DG64X-Y 0500# (input: ) showjp %5DG64X-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 12 /Times-ISOL1 FS 175 MM 9 MM moveto (Ausgabe: ) showde %0DG64X-Y 0600# (output: ) showen %1DG64X-Y 0600# (salida: ) showes %2DG64X-Y 0600# (sortie: ) showfr %3DG64X-Y 0600# (uscita: ) showit %4DG64X-Y 0600# (output: ) showjp %5DG64X-Y 0600# %colorm=0,1! 12 /Times-ISOL1 FS xchart 0 eq {%xchart=0,#0 12 /Times-ISOL1 FS (keine \304nderung) showde %0DG64X-Y 0700# (no change) showen %1DG64X-Y 0700# (ning\372n cambio) showes %2DG64X-Y 0700# (aucun changement) showfr %3DG64X-Y 0700# (nessun cambiamento) showit %4DG64X-Y 0700# (no change compared) showjp %5DG64X-Y 0700# }%xchart=0 {%xchart#0 12 /Times-ISOL1 FS colorm 0 eq {%colorm=0 (Transfer nach ) showde %0DG64X-Y 0800# (transfer to ) showen %1DG64X-Y 0800# (transfiera a ) showes %2DG64X-Y 0800# (transf\351rer \340 ) showfr %3DG64X-Y 0800# (trasferire a ) showit %4DG64X-Y 0800# (transfer to ) showjp %5DG64X-Y 0800# }%colorm=0 {%colorm=1 (3D\255Linearisierung ) showde %0DG64X-Y 0900# (3D\255linearization to ) showen %1DG64X-Y 0900# (3D\255linealizaci\363n a ) showes %2DG64X-Y 0900# (linearisation 3D selon ) showfr %3DG64X-Y 0900# (3D\255linearizzazione a ) showit %4DG64X-Y 0900# (3D\255linearization to ) showjp %5DG64X-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=0,#0 } if %iout=1 %0 setgray %end white and unvisible 12 /Times-ISOL1 FS 62 MM 198.5 MM moveto 12TRN (http://farbe.li.tu-berlin.de/DG64/DG64L) show 12TIN (0) show LSC$ show LEX$ show %1 setgray %start white and unvisible (; ) show xchart 0 eq { (Start\255Ausgabe) showde %0DG64X-Y 1000# (start output) showen %1DG64X-Y 1000# (comience salida) showes %2DG64X-Y 1000# (sortie de production) showfr %3DG64X-Y 1000# (cominciare l'uscita) showit %4DG64X-Y 1000# (start output) showjp %5DG64X-Y 1000# } if LSC$ (C) eq { (Start\255Ausgabe) showde %0DG64X-Y 1100# (start output) showen %1DG64X-Y 1100# (comience salida) showes %2DG64X-Y 1100# (sortie de production) showfr %3DG64X-Y 1100# (cominciare l'uscita) showit %4DG64X-Y 1100# (start output) showjp %5DG64X-Y 1100# } if xchart 1 ge {%xchart>=1 colorm 0 eq {%colorm=0,1 (Transfer Ausgabe) showde %0DG64X-Y 1200# (transfer output) showen %1DG64X-Y 1200# (salida de transferencia) showes %2DG64X-Y 1200# (sortie de transfert) showfr %3DG64X-Y 1200# (uscita di trasferimento) showit %4DG64X-Y 1200# (transfer output) showjp %5DG64X-Y 1200# }%colorm=0 {%colorm=1 (3D\255Linearisierung) showde %0DG64X-Y 1300# (3D\255linearization) showen %1DG64X-Y 1300# (3D\255linealizaci\363n) showes %2DG64X-Y 1300# (linearisation 3D) showfr %3DG64X-Y 1300# (3D\255linearizzzazione) showit %4DG64X-Y 1300# (3D\255linearization) showjp %5DG64X-Y 1300# } ifelse %colorm=0,1 } if %xchart>=1 62 MM 194 MM moveto LSC$ (N) eq LSC$ (C) eq or { (N: Keine 3D\255Linearisierung (OL) ) showde %0DG64X-Y 1400# (N: no 3D\255linearization (OL) ) showen %1DG64X-Y 1400# (N: ninguna 3D\255linealizaci\363n (OL) ) showes %2DG64X-Y 1400# (N: aucun linearisation 3D (OL) ) showfr %3DG64X-Y 1400# (N: nessun 3D\255linearizzazione (OL) ) showit %4DG64X-Y 1400# (N: no 3D\255linearization (OL) ) showjp %5DG64X-Y 1400# (in Datei (F) oder PS\255Startup (S)) showde %0DG64X-Y 1500# (in file (F) or PS\255startup (S)) showen %1DG64X-Y 1500# (en archivo (F) o PS\255startup (S)) showes %2DG64X-Y 1500# (dans fichier (F) ou PS\255startup (S)) showfr %3DG64X-Y 1500# (nel file (F) o PS\255startup (S)) showit %4DG64X-Y 1500# (in file (F) or PS\255startup (S)) showjp %5DG64X-Y 1500# } {LSC$ show (: ) show (3D\255Linearisierung) showde %0DG64X-Y 1600# (3D\255linearization) showen %1DG64X-Y 1600# (3D\255linealizaci\363n) showes %2DG64X-Y 1600# (linearisation 3D) showfr %3DG64X-Y 1600# (3D\255linearizzzazione) showit %4DG64X-Y 1600# (3D\255linearization) showjp %5DG64X-Y 1600# ( DG64/DG64L) show LSS$ show LSX$ show (0) show LSC$ show LEY$ show } ifelse LSC$ (F) eq { ( in Datei (F)) showde %0DG64X-Y 1700# ( in file (F)) showen %1DG64X-Y 1700# ( en archivo (F)) showes %2DG64X-Y 1700# ( dans fichier (F)) showfr %3DG64X-Y 1700# ( nel file (F)) showit %4DG64X-Y 1700# ( in file (F)) showjp %5DG64X-Y 1700# } if LSC$ (S) eq { ( im Distiller Startup (S) Directory) showde %0DG64X-Y 1800# ( in Distiller Startup (S) Directory) showen %1DG64X-Y 1800# ( en el Distiller Startup (S) Directory) showes %2DG64X-Y 1800# ( dans le Distiller Startup (S) Directory) showfr %3DG64X-Y 1800# ( nel Distiller Startup (S) Directory) showit %4DG64X-Y 1800# ( in Distiller Startup (S) Directory) showjp %5DG64X-Y 1800# } if LSC$ (D) eq { ( in PS\255Device (D)) showde %0DG64X-Y 1900# ( in PS\255device (D)) showen %1DG64X-Y 1900# ( en el PS\255device (D)) showes %2DG64X-Y 1900# ( dans l'appareil PS (D)) showfr %3DG64X-Y 1900# ( nel PS\255dispositivo (D)) showit %4DG64X-Y 1900# ( in PS\255Device (D)) showjp %5DG64X-Y 1900# } if LSC$ (T) eq { ( im Distiller Startup (S) Directory) showde %0DG64X-Y 2000# ( in Distiller Startup (S) Directory) showen %1DG64X-Y 2000# ( en el Distiller Startup (S) Directory) showes %2DG64X-Y 2000# ( dans le Distiller Startup (S) Directory) showfr %3DG64X-Y 2000# ( nel Distiller Startup (S) Directory) showit %4DG64X-Y 2000# ( in Distiller Startup (S) Directory) showjp %5DG64X-Y 2000# } if LSC$ (E) eq { ( in PS\255Device (D)) showde %0DG64X-Y 2100# ( in PS\255device (D)) showen %1DG64X-Y 2100# ( en el PS\255device (D)) showes %2DG64X-Y 2100# ( dans appareil PS (D)) showfr %3DG64X-Y 2100# ( nel PS\255dispositivo (D)) showit %4DG64X-Y 2100# ( in PS\255Device (D)) showjp %5DG64X-Y 2100# } if %0 setgray %end white and unvisible (, Seite ) showde %0DG64X-Y 2200# (, page ) showen %1DG64X-Y 2200# (, p\341gina ) showes %2DG64X-Y 2200# (, page ) showfr %3DG64X-Y 2200# (, pagina ) showit %4DG64X-Y 2200# (, page ) showjp %5DG64X-Y 2200# xchart 1 add cvishow (/) show xchartm cvishow 16 MM 185 MM moveto -90 rotate (Siehe \344hnliche Dateien: ) showde %0DG64X-Y 2300# (see similar files: ) showen %1DG64X-Y 2300# (vea archivos semejantes: ) showes %2DG64X-Y 2300# (voir des fichiers similaires: ) showfr %3DG64X-Y 2300# (vedere dei file simili: ) showit %4DG64X-Y 2300# (see similar files: ) showjp %5DG64X-Y 2300# 12TRN (http://farbe.li.tu-berlin.de/DG64/DG64.HTM) show 12TIN %(0) show %LSC$ show LEX$ show 90 rotate 12 MM 185 MM moveto -90 rotate (Technische Information: ) showde %0DG64X-Y 2400# (technical information: ) showen %1DG64X-Y 2400# (informaci\363n t\351cnica: ) showes %2DG64X-Y 2400# (informations techniques: ) showfr %3DG64X-Y 2400# (informazioni tecniche: ) showit %4DG64X-Y 2400# (technical information: ) showjp %5DG64X-Y 2400# 12TRN (http://farbe.li.tu-berlin.de) show 12TIN ( oder ) showde %0DG64X-Y 2500# ( or ) showen %1DG64X-Y 2500# ( o ) showes %2DG64X-Y 2500# ( ou ) showfr %3DG64X-Y 2500# ( o ) showit %4DG64X-Y 2500# ( or ) showjp %5DG64X-Y 2500# 12TRN (http://130.149.60.45/~farbmetrik) show 12TIN 90 rotate 281 MM 185 MM moveto -90 rotate (TUB\255Registrierung: 20180701\255DG64/DG64L) showde %0DG64X-Y 2600# (TUB registration: 20180701\255DG64/DG64L) showen %1DG64X-Y 2600# (TUB matr\355cula: 20180701\255DG64/DG64L) showes %2DG64X-Y 2600# (TUB enregistrement: 20180701\255DG64/DG64L) showfr %3DG64X-Y 2600# (TUB iscrizione: 20180701\255DG64/DG64L) showit %4DG64X-Y 2600# (TUB registration: 20180701\255DG64/DG64L) showjp %5DG64X-Y 2600# (0) show LSC$ show LEX$ show 90 rotate 281 MM 74 MM moveto -90 rotate (TUB\255Material: Code=rha4ta) showde %0DG64X-Y 2700# (TUB material: code=rha4ta) showen %1DG64X-Y 2700# (TUB material: code=rha4ta) showes %2DG64X-Y 2700# (TUB mat\351riel: code=rha4ta) showfr %3DG64X-Y 2700# (TUB materiale: code=rha4ta) showit %4DG64X-Y 2700# (TUB material: code=rha4ta) showjp %5DG64X-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 %0DG64X-Y 2800# ( application for measurement ) showen %1DG64X-Y 2800# ( aplicaci\363n para la medida ) showes %2DG64X-Y 2800# ( application pour la mesure ) showfr %3DG64X-Y 2800# ( la domanda per la misura ) showit %4DG64X-Y 2800# ( application for measurement ) showjp %5DG64X-Y 2800# xchart5f 0 eq {%xchart5f=0 (von Display-Ausgabe) showde %0DG64X-Y 2900# (of display output) showen %1DG64X-Y 2900# (de display output) showes %2DG64X-Y 2900# (de sortie sur \350cran) showfr %3DG64X-Y 2900# (di stampa di display) showit %4DG64X-Y 2900# (of display output) showjp %5DG64X-Y 2900# } if %xchart5f=0 xchart5f 1 eq xchart5f 2 eq or {%xchart5f=1,2 (von Offsetdruck\255Ausgabe) showde %0DG64X-Y 3000# (of offset print output) showen %1DG64X-Y 3000# (salida en la impressi\363n offset) showes %2DG64X-Y 3000# (des sorties sur offset) showfr %3DG64X-Y 3000# (uscita nella stampa di offset) showit %4DG64X-Y 3000# (of offset print output) showjp %5DG64X-Y 3000# } if %xchart5f=1,2 xchart5f 3 eq {%xchart5f=3 (von Laserdrucker\255Ausgabe) showde %0DG64X-Y 3100# (of laser printer output) showen %1DG64X-Y 3100# (salida de impresora l\341ser) showes %2DG64X-Y 3100# (des sorties sur imprimante laser) showfr %3DG64X-Y 3100# (di uscita della stampante laser) showit %4DG64X-Y 3100# (of laser printer output) showjp %5DG64X-Y 3100# } if %xchart5f=3 xchart 1 ge {%xchart>=1 xchart5f 0 eq {%xchart5f=0 (, keine Separation) showde %0DG64X-Y 3200# (, no separation) showen %1DG64X-Y 3200# (, ninguna separaci\363n) showes %2DG64X-Y 3200# (, aucune s\351paration) showfr %3DG64X-Y 3200# (, nessuna separazione) showit %4DG64X-Y 3200# (, no separation) showjp %5DG64X-Y 3200# } if %chart5f=0 xchart5f 1 ge {%xchart5f>=1 (, Separation) showde %0DG64X-Y 3300# (, separation) showen %1DG64X-Y 3300# (, separaci\363n) showes %2DG64X-Y 3300# (, s\351paration) showfr %3DG64X-Y 3300# (, separazione) showit %4DG64X-Y 3300# (, separation) showjp %5DG64X-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>=1 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,1 %} for %xcolorf=3,3 %} for %deintpf=0,1 %} for %colormf=0,1 %} for %lanindf=0,0 %%Trailer