%!PS-Adobe-3.0 EPSF-3.0 JE531-7 %%BoundingBox: 70 85 226 206 %START PDFDE011.EPS /pdfmark17 where {pop} {userdict /pdfmark17 /cleartomark load put} ifelse /languagelevel where {pop languagelevel} {1} ifelse 2 lt { userdict (<<) cvn ([) cvn load put userdict (>>) cvn (]) cvn load put} if [ /Title (PostScript pictures: http://130.149.60.45/~farbmetrik/JE53/) /Author (compare K. Richter "Computergrafik ...": ISBN 3-8007-1775-1) /Subject (goto: http://www.ps.bam.de or http://130.149.60.45/~farbmetrik) /Keywords (image reproduction, colour devices, colour vision) /Creator (klaus.richter@mac.com) /CreationDate (D:2010030112000) /ModDate (D:2010030112000) /DOCINFO pdfmark17 [ /View [ /FitB ] /DOCVIEW pdfmark17 %END PDFDE011 % !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 /FS {findfont exch scalefont setfont} bind def /MM {72 25.4 div mul} def /str {8 string } bind def /TK {200 /Times-ISOL1 FS} bind def /TM {250 /Times-ISOL1 FS} bind def /TG {300 /Times-ISOL1 FS} bind def /TKi {160 /Times-ISOL1 FS} bind def /TIK {200 /TimesI-ISOL1 FS} bind def /TIM {250 /TimesI-ISOL1 FS} bind def /TIG {300 /TimesI-ISOL1 FS} bind def /TBS {160 /TimesB-ISOL1 FS} bind def /TBK {200 /TimesB-ISOL1 FS} bind def /TBM {250 /TimesB-ISOL1 FS} bind def /TBG {300 /TimesB-ISOL1 FS} bind def /TBKe {160 /TimesB-ISOL1 FS} bind def /TBIK {200 /TimesBI-ISOL1 FS} bind def /TBIM {250 /TimesBI-ISOL1 FS} bind def /TBIG {300 /TimesBI-ISOL1 FS} bind def /SK {200 10 sub /Symbol FS} bind def /SM {250 12 sub /Symbol FS} bind def /SG {300 14 sub /Symbol FS} bind def /nshowG {TG show} bind def /kshowG {TIG show} bind def /bshowG {TBG show} bind def /bishowG {TBIG show} bind def /ishowG {TM 0 -50 rmoveto show 0 50 rmoveto} bind def /ebshowG {TBM 0 160 rmoveto show 0 -160 rmoveto} bind def /sshowG {SG show} bind def /nshowM {TM show} bind def /kshowM {TIM show} bind def /bshowM {TBM show} bind def /bishowM {TBIM show} bind def /ishowM {TK 0 -30 rmoveto show 0 30 rmoveto} bind def /ebshowM {TBK 0 130 rmoveto show 0 -130 rmoveto} bind def /sshowM {SM show} bind def /nshowK {TK show} bind def /kshowK {TIK show} bind def /bshowK {TBK show} bind def /bishowK {TBIK show} bind def /ishowK {TKi 0 -25 rmoveto show 0 25 rmoveto} bind def /ebshowK {TBKe 0 100 rmoveto show 0 -100 rmoveto} bind def /sshowK {SK show} bind def /tzo {0.0 1.0 1.0 0.0} bind def %Reproduktionsfarben /tzl {1.0 0.0 1.0 0.0} bind def /tzv {1.0 1.0 0.0 0.0} bind def /tzc {1.0 0.0 0.0 0.0} bind def /tzm {0.0 1.0 0.0 0.0} bind def /tzy {0.0 0.0 1.0 0.0} bind def /tzn {0.0 0.0 0.0 1.00} bind def %Graureihe /tzd {0.0 0.0 0.0 0.75} bind def /tzz {0.0 0.0 0.0 0.50} bind def /tzh {0.0 0.0 0.0 0.25} bind def /tzw {0.0 0.0 0.0 0.00} bind def /tzr {0.0 1.0 0.5 0.0} bind def %Elementarfarben /tzg {1.0 0.0 0.5 0.0} bind def /tzb {1.0 0.5 0.0 0.0} bind def /tzj {0.0 0.0 1.0 0.0} bind def /tzrz {0.0 1.0 0.5 0.5} bind def %Elementarfarben vergraut /tzgz {1.0 0.0 0.5 0.5} bind def /tzbz {1.0 0.5 0.0 0.5} bind def /tzjz {0.0 0.0 1.0 0.5} bind def /tfo {tzo setcmykcolor} bind def /tfl {tzl setcmykcolor} bind def /tfv {tzv setcmykcolor} bind def /tfc {tzc setcmykcolor} bind def /tfm {tzm setcmykcolor} bind def /tfy {tzy setcmykcolor} bind def /tfn {tzn setcmykcolor} bind def /tfd {tzd setcmykcolor} bind def /tfz {tzz setcmykcolor} bind def /tfh {tzh setcmykcolor} bind def /tfw {tzw setcmykcolor} bind def /tfr {tzr setcmykcolor} bind def /tfg {tzg setcmykcolor} bind def /tfb {tzb setcmykcolor} bind def /tfj {tzj setcmykcolor} bind def /tfrz {tzrz setcmykcolor} bind def /tfgz {tzgz setcmykcolor} bind def /tfbz {tzbz setcmykcolor} bind def /tfjz {tzjz setcmykcolor} bind def /A4quer {598 0 tl 90 rotate} def /setcmyknew {setcmykcolor} def /outSM {sshowM} def /outSK {sshowK} def /outxshowf {setcmykcolor show} def %for output test only /tspace {dup abs 1.0 le {( ) show} if dup dup -1.0 le exch -10 gt and {( ) show} if dup dup 1.0 gt exch 10 lt and {( ) show} if dup dup 1.0 gt exch 10 ge and {( ) show} if } bind def /trushow {tspace 0.005 add 100 mul truncate 100 div 10 string cvs show} bind def /troshow {0.005 add 100 mul truncate 100 div 10 string cvs show} bind def /trushow4 {0.00005 add 10000 mul truncate 10000 div 10 string cvs show} 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 /W 12 array def % U P D T N W P D T U N W /W [555 563 538 450 495 525 563 538 450 555 495 525] def /WS 12 array def 0 1 11 {/j exch def %j=0,11 WS j 525 W j get 525 sub sub put } for %j=0,11 /YIXU 88 array def /YIXP 88 array def /YIXD 88 array def /YIXT 88 array def /YIXN 88 array def /YIXI 88 array def /YIXE 88 array def /YIXF 88 array def /YIXW 88 array def /YIXH 88 array def /YIXUS 88 array def /YIXPS 88 array def /YIXDS 88 array def /YIXTS 88 array def /YIXNS 88 array def /YIXIS 88 array def /YIXES 88 array def /YIXFS 88 array def /YIXWS 88 array def /YIXHS 88 array def /YEXP0 88 array def /YEXP1 88 array def /YEXP2 88 array def /YEXP3 88 array def /YEXP4 88 array def /YEXP5 88 array def /YEXP6 88 array def /YEXP7 88 array def /YEXP8 88 array def /YEXP9 88 array def /YEXP10 88 array def /YEXP11 88 array def /YEXP0S 88 array def /YEXP1S 88 array def /YEXP2S 88 array def /YEXP3S 88 array def /YEXP4S 88 array def /YEXP5S 88 array def /YEXP6S 88 array def /YEXP7S 88 array def /YEXP8S 88 array def /YEXP9S 88 array def /YEXP10S 88 array def /YEXP11S 88 array def /Yix 88 array def /Yiy 88 array def /Xi 88 array def /Yi 88 array def /YixS 88 array def /YiyS 88 array def /XiS 88 array def /YiS 88 array def /KURVA 12 array def %12 actual curves /KURVA1 12 array def %12 curves, Sensitivity, one or two colours /KURVA2 12 array def %12 curves, Saturation, one or two colours % U P D T N W P D T E F H /KURVA1 [0 0 0 1 0 0 1 1 0 0 0 0] def /KURVA2 [0 0 0 1 0 0 1 1 0 0 0 0] def /IDAI1 12 array def %12 curves, Sensitivity, actual setdash data, first curve /IDAI2 12 array def %12 curves, Saturation, actual setdash data, second curve /IDAI00 12 array def %12 curves, Sensitivity, setdash data, first curve /IDAI01 12 array def %12 curves, Saturation, setdash data, first curve /IDAI10 12 array def %12 curves, Sensitivity, setdash data, second curve /IDAI11 12 array def %12 curves, Saturation, setdash data, second curve /IDAI00 [100 000 000 000 100 100 100 100 100 100 100 100] def /IDAI01 [100 000 000 000 100 100 100 100 100 300 300 300] def /IDAI10 [100 000 000 000 100 100 100 100 100 100 100 100] def /IDAI11 [100 000 000 000 100 100 100 100 100 300 300 300] def /FKUC1 12 array def %Actual colour C, Sensitivity /FKUC2 12 array def %Actual colour C, Saturation /FKUM1 12 array def %Actual colour M, Sensitivity /FKUM2 12 array def %Actual colour M, Saturation /FKUY1 12 array def %Actual colour Y, Sensitivity /FKUY2 12 array def %Actual colour Y, Saturation /FKUN1 12 array def %Actual colour N, Sensitivity /FKUN2 12 array def %Actual colour N, Saturation /FKUCI00 12 array def %Cyan, Colour 1, Sensitivity /FKUCI01 12 array def %Cyan, Colour 2 on top, Sensitivity /FKUCI10 12 array def %Cyan, Colour 1, Saturation /FKUCI11 12 array def %Cyan, Colour 2 on top, Saturation /FKUCI00 [0.0 0.0 1.0 1.0 0.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def /FKUCI01 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0 1.0 0.0] def /FKUCI10 [0.0 0.0 1.0 1.0 0.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0] def /FKUCI11 [0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0 1.0 0.0] def /FKUMI00 12 array def %Magenta, Colour 1, Sensitivity /FKUMI01 12 array def %Magenta, Colour 2 on top, Sensitivity /FKUMI10 12 array def %Magenta, Colour 1, Saturation /FKUMI11 12 array def %Magenta, Colour 2 on top, Saturation /FKUMI00 [0.0 1.0 0.0 1.0 0.0 0.0 1.0 0.0 1.0 0.0 0.0 0.0] def /FKUMI01 [0.0 0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0 1.0] def /FKUMI10 [0.0 1.0 0.0 1.0 0.0 0.0 1.0 0.0 1.0 0.0 0.0 0.0] def /FKUMI11 [0.0 0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0 1.0] def /FKUYI00 12 array def %Yellow, Colour 1, Sensitivity /FKUYI01 12 array def %Yellow, Colour 2 on top, Sensitivity /FKUYI10 12 array def %Yellow, Colour 1, Saturation /FKUYI11 12 array def %Yellow, Colour 2 on top, Saturation /FKUYI00 [0.0 1.0 1.0 0.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0 0.0] def /FKUYI01 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0 1.0 0.0 0.0] def /FKUYI10 [0.0 1.0 1.0 0.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0 0.0] def /FKUYI11 [1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0 1.0 0.0 0.0] def /FKUNI00 12 array def %Black, Colour 1, Sensitivity /FKUNI01 12 array def %Black, Colour 2 on top, Sensitivity /FKUNI10 12 array def %Black, Colour 1, Saturation /FKUNI11 12 array def %Black, Colour 2 on top, Saturation /FKUNI00 [1.0 0.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0 1.0 1.0 1.0] def /FKUNI01 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def /FKUNI10 [1.0 0.0 0.0 0.0 1.0 1.0 0.0 0.0 0.0 1.0 1.0 1.0] def /FKUNI11 [0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def /XRGAI 4 array def /XRG$I 4 array def /XJBAI 4 array def /XBJ$I 4 array def /XRGAI [ 525 575 475 600 ] def /XRG$I [(525) (575) (475) (600)] def /XJBAI [ 525 575 475 600 ] def /XBJ$I [(525) (575) (475) (600)] def /KURVAS 12 array def %12 actual curves /KURVA1S 12 array def %12 curves, Sensitivity, one or two colours /KURVA2S 12 array def %12 curves, Saturation, one or two colours % U'P'D'T'N'W'P'D'T'E'F'H' /KURVA1S [0 0 0 0 0 0 0 0 0 0 0 0] def /KURVA2S [0 0 0 0 0 0 0 0 0 0 0 0] def /IDAI1S 12 array def %12 curves, Sensitivity, actual setdash data, first curve /IDAI2S 12 array def %12 curves, Saturation, actual setdash data, second curve /IDAI00S 12 array def %12 curves, Sensitivity, setdash data, first curve /IDAI01S 12 array def %12 curves, Saturation, setdash data, first curve /IDAI10S 12 array def %12 curves, Sensitivity, setdash data, second curve /IDAI11S 12 array def %12 curves, Saturation, setdash data, second curve /IDAI00S [100 100 100 100 100 100 100 100 100 100 100 100] def /IDAI01S [100 100 100 100 100 100 100 100 100 100 100 100] def /IDAI10S [100 100 100 100 100 100 100 100 100 100 100 100] def /IDAI11S [100 100 100 100 100 100 100 100 100 100 100 100] def /FKUC1S 12 array def %Actual colour C, Sensitivity /FKUC2S 12 array def %Actual colour C, Saturation /FKUM1S 12 array def %Actual colour M, Sensitivity /FKUM2S 12 array def %Actual colour M, Saturation /FKUY1S 12 array def %Actual colour Y, Sensitivity /FKUY2S 12 array def %Actual colour Y, Saturation /FKUN1S 12 array def %Actual colour N, Sensitivity /FKUN2S 12 array def %Actual colour N, Saturation /FKUCI00S 12 array def %Cyan, Colour 1, Sensitivity /FKUCI01S 12 array def %Cyan, Colour 2 on top, Sensitivity /FKUCI10S 12 array def %Cyan, Colour 1, Saturation /FKUCI11S 12 array def %Cyan, Colour 2 on top, Saturation /FKUCI00S [0.0 0.0 1.0 0.0 0.0 0.0 1.0 1.0 1.0 0.0 0.0 0.0] def /FKUCI01S [0.0 0.0 0.0 1.0 1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def /FKUCI10S [0.0 0.0 1.0 0.0 0.0 0.0 1.0 1.0 1.0 0.0 0.0 0.0] def /FKUCI11S [0.0 0.0 0.0 1.0 1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def /FKUMI00S 12 array def %Magenta, Colour 1, Sensitivity /FKUMI01S 12 array def %Magenta, Colour 2 on top, Sensitivity /FKUMI10S 12 array def %Magenta, Colour 1, Saturation /FKUMI11S 12 array def %Magenta, Colour 2 on top, Saturation /FKUMI00S [0.0 1.0 0.0 0.0 0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def /FKUMI01S [0.0 0.0 0.0 1.0 0.0 1.0 0.0 1.0 0.0 0.0 0.0 0.0] def /FKUMI10S [0.0 1.0 0.0 0.0 0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0] def /FKUMI11S [0.0 0.0 0.0 1.0 0.0 1.0 0.0 1.0 0.0 0.0 0.0 0.0] def /FKUYI00S 12 array def %Yellow, Colour 1, Sensitivity /FKUYI01S 12 array def %Yellow, Colour 2 on top, Sensitivity /FKUYI10S 12 array def %Yellow, Colour 1, Saturation /FKUYI11S 12 array def %Yellow, Colour 2 on top, Saturation /FKUYI00S [0.0 1.0 1.0 0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def /FKUYI01S [1.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def /FKUYI10S [0.0 1.0 1.0 0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0] def /FKUYI11S [1.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0] def /FKUNI00S 12 array def %Black, Colour 1, Sensitivity /FKUNI01S 12 array def %Black, Colour 2 on top, Sensitivity /FKUNI10S 12 array def %Black, Colour 1, Saturation /FKUNI11S 12 array def %Black, Colour 2 on top, Saturation /FKUNI00S [1.0 0.0 0.0 0.5 1.0 1.0 0.0 0.0 0.0 0.0 0.0 0.0] def /FKUNI01S [0.0 0.5 0.5 0.0 0.0 0.0 0.0 0.0 0.5 0.0 0.0 0.0] def /FKUNI10S [1.0 0.0 0.0 0.5 1.0 1.0 0.0 0.0 0.0 0.0 0.0 0.0] def /FKUNI11S [0.0 0.5 0.5 0.0 0.0 0.0 0.0 0.0 0.5 0.0 0.0 0.0] def /XRGAIS 4 array def /XRG$IS 4 array def /XJBAIS 4 array def /XBJ$IS 4 array def 0 1 3 {/j exch def %j=0,3 XRGAIS j 525 XRGAI j get 525 sub sub put XJBAIS j 525 XJBAI j get 525 sub sub put XRG$IS j XRGAIS j get 0.005 add 100 mul truncate 100 div 10 string cvs put XBJ$IS j XJBAIS j get 0.005 add 100 mul truncate 100 div 10 string cvs put } for %j=0,3 /JPPM 4 def /CY 0.35 def /CX 50 def %%EndProlog gsave /lanind 0 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 /showm {6 lanind eq {show} {pop} ifelse} bind def /lanindg where {pop /lanind1 lanindg def /lanind2 lanindg def} {/lanind1 1 def /lanind2 1 def} ifelse /colormg where {pop /colorm1 colormg def /colorm2 colormg def} {/colorm1 0 def /colorm2 0 def} ifelse /xcolorg where {pop /xcolor1 xcolorg def /xcolor2 xcolorg def} {/xcolor1 0 def /xcolor2 0 def} ifelse /xchartg where {pop /xchart1 xchartg def /xchart2 xchartg def} {/xchart1 0 def /xchart2 0 def} ifelse /lanind lanind1 def %lanind1 1 lanind2 {/lanind exch def %output showpage /colorm colorm1 def %colorm1 1 colorm2 {/colorm exch def %output showpage /xcolor xcolor1 def %xcolor1 1 xcolor2 {/xcolor exch def %output showpage /xchart xchart1 def %xchart1 1 xchart2 {/xchart exch def %output showpage /GSS$ where {pop /LSS$ GSS$ def} {/LSS$ (1) def} ifelse /GSC$ where {pop /LSC$ GSC$ def} {/LSC$ (N) def} ifelse /GSX$ where {pop /LSX$ GSX$ def} {/LSX$ (0) def} ifelse /GSY$ where {pop /LSY$ GSY$ def} {/LSY$ (0) def} ifelse /GEX$ where {pop /LEX$ GEX$ def} {/LEX$ (P.PS./PDF) def} ifelse /GEY$ where {pop /LEY$ GEY$ def} {/LEY$ (P.DAT) def} ifelse /IMES where {pop %/IMES IMES def } {/IMES 0 def} ifelse /xchartg where {pop /xchart 0 def} {/xchart 0 def} ifelse 5 /Times-ISOL1 FS 200 85 moveto ( JE531-7 ) show %(Change of PDT (LMS) in volour vision; Adaptation) showen %(\304nderung von PDT (LMS) beim Farbensehen; Adaptation) showde 72 90 translate %/xchart 02 def %0 1 15 {/xchart exch def %xchart=0,15 gsave xchart 0 eq {/ILK 0 def /ILS 0 def /INE 0 def /ILF 0 def} if %ILT=0 NO threshold xchart 1 eq {/ILK 0 def /ILS 1 def /INE 0 def /ILF 0 def} if xchart 2 eq {/ILK 1 def /ILS 0 def /INE 0 def /ILF 0 def} if xchart 3 eq {/ILK 1 def /ILS 1 def /INE 0 def /ILF 0 def} if xchart 4 eq {/ILK 2 def /ILS 0 def /INE 0 def /ILF 0 def} if xchart 5 eq {/ILK 2 def /ILS 1 def /INE 0 def /ILF 0 def} if xchart 6 eq {/ILK 3 def /ILS 0 def /INE 0 def /ILF 0 def} if xchart 7 eq {/ILK 3 def /ILS 1 def /INE 0 def /ILF 0 def} if xchart 8 eq {/ILK 0 def /ILS 2 def /INE 0 def /ILF 0 def} if xchart 9 eq {/ILK 0 def /ILS 1 def /INE 0 def /ILF 1 def} if xchart 10 eq {/ILK 1 def /ILS 2 def /INE 0 def /ILF 0 def} if xchart 11 eq {/ILK 1 def /ILS 1 def /INE 0 def /ILF 1 def} if xchart 12 eq {/ILK 2 def /ILS 2 def /INE 0 def /ILF 0 def} if xchart 13 eq {/ILK 2 def /ILS 1 def /INE 0 def /ILF 1 def} if xchart 14 eq {/ILK 3 def /ILS 2 def /INE 0 def /ILF 0 def} if xchart 15 eq {/ILK 3 def /ILS 1 def /INE 0 def /ILF 1 def} if /ILT 0 def %Threshold %/ILF 1 def %/IKOM 0 def %0=U, 1=N/G, 2=W/R, 3=V xchart 0 ge xchart 3 le and {/IKOM 3 def} if %W xchart 4 ge xchart 7 le and {/IKOM 3 def} if %W xchart 8 ge xchart 11 le and {/IKOM 3 def} if %W xchart 12 ge xchart 15 le and {/IKOM 3 def} if %W %/ILN 4 def %L&M, L&S, M&S, UVW&S %/ILN 5 def %L&M, L&S, M&S, UGR&S %/ILN 6 def %L&M, L&S, M&S, UNW /ILN 7 def %L&M, L&S, M&S, UNW, EFH ILN 5 eq {/JPPM 6 def} {/JPPM 5 def} ifelse ILN 6 eq {/JPPM 8 def} if ILN 7 eq {/JPPM 11 def} if ILF 1 eq {/JPPM 1 def} if %JPPM=0,5:without/with R+G chromaticity diagram ILS 2 eq {/JPPM 5 def} if /FAKJB 1.0 def /IED 0 def %IED=0,1 without/with Evans G0-data IKOM 0 eq {/RGX1 1.0 def /RGX2 0.5 def /JBY1 1.0 def /JBY2 1.0 def} if IKOM 1 eq {/RGX1 0.5 def /RGX2 0.5 def /JBY1 0.5 def /JBY2 0.5 def} if IKOM 2 eq {/RGX1 1.0 def /RGX2 1.0 def /JBY1 1.0 def /JBY2 1.0 def} if IKOM 3 eq {/RGX1 1.0 def /RGX2 1.0 def /JBY1 1.0 def /JBY2 1.0 def} if /ILU 0 def %NO u scale ILT 0 eq {/ta 0.0 def /logta -6 def} if ILT 1 eq {/ta 0.007 def /logta ta log def} if ILT 2 eq {/ta 0.002 def /logta ta log def} if /MULX 0600 def /MULY 1200 0.8 mul def ILS 1 eq {/MULY 1200 0.4 mul def} if /MULF 1200 0.8 mul def 0.01 MM 0.01 MM scale 30 setlinewidth [ ] 0 setdash 0.0 0.0 0.0 0.5 setcmykcolor 0 0 moveto 5400 0 rlineto 0 4000 rlineto -5400 0 rlineto closepath fill /Xa {(a) ishowM} def /Xo {(o) ishowM} def /P0o {tfo (P) bishowM tfo (o) ishowM} def /D0o {tfl (D) bishowM tfl (o) ishowM} def /T0o {tfv (T) bishowM tfv (o) ishowM} def /P0a {tfo (P) bishowM tfo (a) ishowM} def /D0a {tfl (D) bishowM tfl (a) ishowM} def /T0a {tfv (T) bishowM tfv (a) ishowM} def /U0a {tfn (U) bishowM tfy (a) ishowM} def /N0a {tfn (N) bishowM tfc (a) ishowM} def /W0a {tfn (W) bishowM tfm (a) ishowM} def /H0a {tfn (H) bishowM tfm (a) ishowM} def /I0a {tfn (I) bishowM tfm (a) ishowM} def /P0oS {tfo (P') bishowM tfo (o) ishowM} def /D0oS {tfl (D') bishowM tfl (o) ishowM} def /T0oS {tfv (T') bishowM tfv (o) ishowM} def /P0aS {tfo (P') bishowM tfo (a) ishowM} def /D0aS {tfl (D') bishowM tfl (a) ishowM} def /T0aS {tfv (T') bishowM tfv (a) ishowM} def /U0aS {tfn (U') bishowM tfy (a) ishowM} def /N0aS {tfn (N') bishowM tfc (a) ishowM} def /W0aS {tfn (W') bishowM tfm (a) ishowM} def /H0aS {tfn (H') bishowM tfm (a) ishowM} def /I0aS {tfn (I') bishowM tfm (a) ishowM} def /YAa {IKOM 0 eq {tfn (U) bishowM tfy (a) ishowM} if IKOM 1 eq {tfn (N) bishowM tfc (a) ishowM} if IKOM 2 eq {tfn (H) bishowM tfm (a) ishowM} if IKOM 3 eq {tfn (W) bishowM tfm (a) ishowM} if} def /YAaS {IKOM 0 eq {tfn (U') bishowM tfy (a) ishowM} if IKOM 1 eq {tfn (N') bishowM tfc (a) ishowM} if IKOM 2 eq {tfn (H') bishowM tfm (a) ishowM} if IKOM 3 eq {tfn (W') bishowM tfm (a) ishowM} if} def /AF1 0.5 def /AF2 0.5 def /XRGA {XRGAI ILK get} def /XJBA {XJBAI ILK get} def /XRG$ {XRG$I ILK get} def /XBJ$ {XBJ$I ILK get} def /XRGAS {XRGAIS ILK get} def /XJBAS {XJBAIS ILK get} def /XRG$S {XRG$IS ILK get} def /XBJ$S {XBJ$IS ILK get} def /W0 {W 0 get} def /W1 {W 1 get} def /W2 {W 2 get} def /W3 {W 3 get} def /W4 {W 4 get} def /W5 {W 5 get} def /W6 {W 6 get} def /W7 {W 7 get} def /W8 {W 8 get} def /W9 {W 9 get} def /W10 {W 10 get} def /W11 {W 11 get} def /W0S {WS 0 get} def /W1S {WS 1 get} def /W2S {WS 2 get} def /W3S {WS 3 get} def /W4S {WS 4 get} def /W5S {WS 5 get} def /W6S {WS 6 get} def /W7S {WS 7 get} def /W8S {WS 8 get} def /W9S {WS 9 get} def /W10S {WS 10 get} def /W11S {WS 11 get} def %function value for curve U normalized to 1 at 5 wavelength 1 to 5 %XRGA, XJBA, 563(P=1), 538(D=2), 450(T=3), 495(N=4), 525(I=5) /YU1 {XRGA W0 sub CX div dup mul CY mul neg} def /YU2 {XJBA W0 sub CX div dup mul CY mul neg} def /YUU {0.0} def /YUP {W1 W0 sub CX div dup mul CY mul neg} def /YUD {W2 W0 sub CX div dup mul CY mul neg} def /YUT {W3 W0 sub CX div dup mul CY mul neg} def /YUN {W4 W0 sub CX div dup mul CY mul neg} def /YUI {W5 W0 sub CX div dup mul CY mul neg} def /YUW {YUU YUN add 0.5 mul} def %function value for curve P normalized to 1 at 5 wavelength 1 to 5 %XRGA, XJBA, 563(P=1), 538(D=2), 450(T=3), 495(N=4), 525(I=5) /YP1 {XRGA XRGA 525 sub 0 ge {W1} {W1S} ifelse sub CX div dup mul CY mul neg} def /YP2 {XJBA W1 sub CX div dup mul CY mul neg} def /YPU {W0 W1 sub CX div dup mul CY mul neg} def /YPP {0.0} def /YPD {W2 W1 sub CX div dup mul CY mul neg} def /YPT {W3 W1 sub CX div dup mul CY mul neg} def /YPN {W4 W1 sub CX div dup mul CY mul neg} def /YPI {W5 W1 sub CX div dup mul CY mul neg} def /YPW {YPU YPN add 0.5 mul} def %function value for curve D normalized to 1 at 5 wavelength 1 to 5 %XRGA, XJBA, 563(P=1), 538(D=2), 450(T=3), 495(N=4), 525(I=5), % 450(V=6), 475(B=6), 575(J=7), 600(O=8) /YD1 {XRGA XRGA 525 sub 0 ge {W2} {W2S} ifelse sub CX div dup mul CY mul neg} def /YD2 {XJBA W2 sub CX div dup mul CY mul neg} def /YDU {W0 W2 sub CX div dup mul CY mul neg} def /YDP {W1 W2 sub CX div dup mul CY mul neg} def /YDD {0.0} def /YDT {W3 W2 sub CX div dup mul CY mul neg} def /YDN {W4 W2 sub CX div dup mul CY mul neg} def /YDI {W5 W2 sub CX div dup mul CY mul neg} def /YDW {YDU YDN add 0.5 mul} def %function value for curve T normalized to 1 at 5 wavelength 1 to 5 %XRGA, XJBA, 563(P=1), 538(D=2), 450(T=3), 495(N=4), 525(I=5) /YT1 {XRGA W3 sub CX div dup mul CY mul neg} def /YT2 {XJBA XJBA 525 sub 0 le {W3} {W3S} ifelse sub CX div dup mul CY mul neg} def /YTU {W0 W3 sub CX div dup mul CY mul neg} def /YTP {W1 W3 sub CX div dup mul CY mul neg} def /YTD {W2 W3 sub CX div dup mul CY mul neg} def /YTT {0.0} def /YTN {W4 W3 sub CX div dup mul CY mul neg} def /YTI {W5 W3 sub CX div dup mul CY mul neg} def /YTW {YTU YTN add 0.5 mul} def %function value for curve N normalized to 1 at 5 wavelength 1 to 5 %XRGA, XJBA, 563(P=1), 538(D=2), 450(T=3), 495(N=4), 525(I=5) /YN1 {XRGA W4 sub CX div dup mul CY mul neg} def /YN2 {XJBA W4 sub CX div dup mul CY mul neg} def /YNU {W0 W4 sub CX div dup mul CY mul neg} def /YNP {W1 W4 sub CX div dup mul CY mul neg} def /YND {W2 W4 sub CX div dup mul CY mul neg} def /YNT {W3 W4 sub CX div dup mul CY mul neg} def /YNN {0.0} def /YNI {W5 W4 sub CX div dup mul CY mul neg} def /YNW {YNU YNN add 0.5 mul} def %function value for curve W normalized to 1 at 5 wavelengths 1 to 5 %XRGA, XJBA, 563(P=1), 538(D=2), 450(T=3), 495(N=4), 525(I=5) /YI1 {XRGA W5 sub CX div dup mul CY mul neg} def /YI2 {XJBA W5 sub CX div dup mul CY mul neg} def /YIU {W0 W5 sub CX div dup mul CY mul neg} def /YIP {W1 W5 sub CX div dup mul CY mul neg} def /YID {W2 W5 sub CX div dup mul CY mul neg} def /YIT {W3 W5 sub CX div dup mul CY mul neg} def /YIN {W4 W5 sub CX div dup mul CY mul neg} def /YII {0.0} def /YIW {YIU YIN add 0.5 mul} def %function value for curve U normalized to 1 at 5S Wavelength 1 to 5 %XRGA, XJBA, 563(P=1), 538(D=2), 450(T=3), 495(N=4), 525(I=5) /YU1S {XRGAS W0S sub CX div dup mul CY mul neg} def /YU2S {XJBAS W0S sub CX div dup mul CY mul neg} def /YUUS {0} def /YUPS {W1S W0S sub CX div dup mul CY mul neg} def /YUDS {W2S W0S sub CX div dup mul CY mul neg} def /YUTS {W3S W0S sub CX div dup mul CY mul neg} def /YUNS {W4S W0S sub CX div dup mul CY mul neg} def /YUIS {W5S W0S sub CX div dup mul CY mul neg} def /YUWS {YUUS YUNS add 0.5 mul} def %function value for curve P normalized to 1 at 5S Wavelength 1 to 5 %XRGA, XJBA, 563(P=1), 538(D=2), 450(T=3), 495(N=4), 525(I=5) /YP1S {XRGAS XRGAS 525 sub 0 le {W1S} {W1} ifelse sub CX div dup mul CY mul neg} def /YP2S {XJBAS W1S sub CX div dup mul CY mul neg} def /YPUS {W0S W1S sub CX div dup mul CY mul neg} def /YPPS {0} def /YPDS {W2S W1S sub CX div dup mul CY mul neg} def /YPTS {W3S W1S sub CX div dup mul CY mul neg} def /YPNS {W4S W1S sub CX div dup mul CY mul neg} def /YPIS {W5S W1S sub CX div dup mul CY mul neg} def /YPWS {YPUS YPNS add 0.5 mul} def %function value for curve D normalized to 1 at 5S Wavelength 1 to 5 %XRGA, XJBA, 563(P=1), 538(D=2), 450(T=3), 495(N=4), 525(I=5) /YD1S {XRGAS XRGAS 525 sub 0 le {W2S} {W2} ifelse sub CX div dup mul CY mul neg} def /YD2S {XJBAS W2S sub CX div dup mul CY mul neg} def /YDUS {W0S W2S sub CX div dup mul CY mul neg} def /YDPS {W1S W2S sub CX div dup mul CY mul neg} def /YDDS {0} def /YDTS {W3S W2S sub CX div dup mul CY mul neg} def /YDNS {W4S W2S sub CX div dup mul CY mul neg} def /YDIS {W5S W2S sub CX div dup mul CY mul neg} def /YDWS {YDUS YDNS add 0.5 mul} def %function value for curve T normalized to 1 at 5S Wavelength 1 to 5 %XRGA, XJBA, 563(P=1), 538(D=2), 450(T=3), 495(N=4), 525(I=5) /YT1S {XRGAS W3S sub CX div dup mul CY mul neg} def /YT2S {XJBAS XJBAS 525 sub 0 ge {W3S} {W3} ifelse sub CX div dup mul CY mul neg} def /YTUS {W0S W3S sub CX div dup mul CY mul neg} def /YTPS {W1S W3S sub CX div dup mul CY mul neg} def /YTDS {W2S W3S sub CX div dup mul CY mul neg} def /YTTS {0} def /YTNS {W4S W3S sub CX div dup mul CY mul neg} def /YTIS {W5S W3S sub CX div dup mul CY mul neg} def /YTWS {YTUS YTNS add 0.5 mul} def %function value for curve N normalized to 1 at 5S Wavelength 1 to 5 %XRGA, XJBA, 563(P=1), 538(D=2), 450(T=3), 495(N=4), 525(I=5) /YN1S {XRGAS W4S sub CX div dup mul CY mul neg} def /YN2S {XJBAS W4S sub CX div dup mul CY mul neg} def /YNUS {W0S W4S sub CX div dup mul CY mul neg} def /YNPS {W1S W4S sub CX div dup mul CY mul neg} def /YNDS {W2S W4S sub CX div dup mul CY mul neg} def /YNTS {W3S W4S sub CX div dup mul CY mul neg} def /YNNS {0} def /YNIS {W5S W4S sub CX div dup mul CY mul neg} def /YNWS {YNUS YNNS add 0.5 mul} def %function value for curve W normalized to 1 at 9 wavelengths %XRGA, XJBA, 563(P=1), 538(D=2), 450(T=3), 495(N=4), 525(I=5) /YI1S {XRGAS W5S sub CX div dup mul CY mul neg} def /YI2S {XJBAS W5S sub CX div dup mul CY mul neg} def /YIUS {W0S W5S sub CX div dup mul CY mul neg} def /YIPS {W1S W5S sub CX div dup mul CY mul neg} def /YIDS {W2S W5S sub CX div dup mul CY mul neg} def /YITS {W3S W5S sub CX div dup mul CY mul neg} def /YINS {W4S W5S sub CX div dup mul CY mul neg} def /YIIS {0} def /YIWS {YWUS YWNS add 0.5 mul} def /YUN1 {XRGA 525 sub 0 ge {YU1} {YN1} ifelse} def /YUN2 {XJBA 525 sub 0 ge {YU2} {YN2} ifelse} def /YNU1S {XRGAS 525 sub 0 ge {YN1S} {YU1S} ifelse} def /YNU2S {XJBAS 525 sub 0 ge {YN2S} {YU2S} ifelse} def %i=0,85: 400_500_600_700_400(81) 0 1 60 {/i exch def %i=0,60: 400_700(61) /XEXI i 5 mul 400 add def YIXU i XEXI W 0 get sub CX div dup mul CY mul neg put YIXP i XEXI W 1 get sub CX div dup mul CY mul neg put YIXD i XEXI W 2 get sub CX div dup mul CY mul neg put YIXT i XEXI W 3 get sub CX div dup mul CY mul neg put YIXN i XEXI W 4 get sub CX div dup mul CY mul neg put YIXI i XEXI W 5 get sub CX div dup mul CY mul neg put } for %i=0,60: 400_700(61) 61 1 80 {/i exch def %i=61,80: 700_400(20) /alpha i 60 sub 20 div def /1malp 1 alpha sub def YIXU i YIXU 60 get 1malp mul YIXU 0 get alpha mul add put YIXP i YIXP 60 get 1malp mul YIXP 0 get alpha mul add put YIXD i YIXD 60 get 1malp mul YIXD 0 get alpha mul add put YIXT i YIXT 60 get 1malp mul YIXT 0 get alpha mul add put YIXN i YIXN 60 get 1malp mul YIXN 0 get alpha mul add put YIXI i YIXI 60 get 1malp mul YIXI 0 get alpha mul add put } for %i=61,80: 700_400(20) 81 1 85 {/i exch def %i=81,85: 405_425(5) YIXU i YIXU i 80 sub get put YIXP i YIXP i 80 sub get put YIXD i YIXD i 80 sub get put YIXT i YIXT i 80 sub get put YIXN i YIXN i 80 sub get put YIXI i YIXI i 80 sub get put } for %i=81,85: 405_425(5) 0 1 85 {/i exch def %i=0,85: 400_700_400(85) YIXE i YIXU i get put YIXF i YIXN i get put YIXW i YIXU i get YIXN i get add 0.5 mul put YIXH i YIXI i get YI2 sub YUN2 add put } for %i=0,85: 400_700_400(85) 0 1 60 {/i exch def %i=0,60: 400_700(61) /XEXI i 5 mul 400 add def YIXUS i XEXI WS 0 get sub CX div dup mul CY mul neg put YIXPS i XEXI WS 1 get sub CX div dup mul CY mul neg put YIXDS i XEXI WS 2 get sub CX div dup mul CY mul neg put YIXTS i XEXI WS 3 get sub CX div dup mul CY mul neg put YIXNS i XEXI WS 4 get sub CX div dup mul CY mul neg put YIXIS i XEXI WS 5 get sub CX div dup mul CY mul neg put } for %i=0,60: 400_700(61) 61 1 80 {/i exch def %i=61,80: 700_400(20) /alpha i 60 sub 20 div def /1malp 1 alpha sub def YIXUS i YIXUS 60 get 1malp mul YIXUS 0 get alpha mul add put YIXPS i YIXPS 60 get 1malp mul YIXPS 0 get alpha mul add put YIXDS i YIXDS 60 get 1malp mul YIXDS 0 get alpha mul add put YIXTS i YIXTS 60 get 1malp mul YIXTS 0 get alpha mul add put YIXNS i YIXNS 60 get 1malp mul YIXNS 0 get alpha mul add put YIXIS i YIXIS 60 get 1malp mul YIXIS 0 get alpha mul add put } for %i=61,80: 700_400(20) 81 1 85 {/i exch def %i=81,85: 405_425(5) YIXUS i YIXUS i 80 sub get put YIXPS i YIXPS i 80 sub get put YIXDS i YIXDS i 80 sub get put YIXTS i YIXTS i 80 sub get put YIXNS i YIXNS i 80 sub get put YIXIS i YIXIS i 80 sub get put } for %i=81,85: 405_425(5) 0 1 85 {/i exch def %i=0,85: 400_700_400(85) YIXES i YIXUS i get put YIXFS i YIXNS i get put YIXWS i YIXUS i get YIXNS i get add 0.5 mul put YIXHS i YIXIS i get YI2S sub YNU2S add put } for %i=0,85: 400_700_400(85) 0 1 85 {/i exch def /YEXU {YIXU i get} def /YEXP {YIXP i get} def %YP1 sub YUN1 add} def /YEXD {YIXD i get 2 log sub} def %YD1 sub YUN1 add} def /YEXT {YIXT i get 16 log sub} def %YT2 sub YUN2 add} def /YEXN {YIXN i get} def /YEXI {YIXI i get} def /YEXW {YEXU YEXN add 0.5 mul} def /YEXE YEXU def /YEXF YEXN def /YEXH {YIXI i get YI2 sub YUN2 add} def /YD 0 def /YDchange {YD abs logta abs gt {YD 0 lt {/YD logta def} {/YD logta neg def} ifelse } if } bind def INE 0 eq {/fneg {} def} {/fneg {neg} def} ifelse 0 1 11 {/j exch def %j=0,11 %JPPM calculate all IKOM 0 eq {/YEXA YEXU def} if IKOM 1 eq {/YEXA YEXN def} if IKOM 2 eq {/YEXA YEXH def} if IKOM 3 eq {/YEXA YEXW def} if %begin for ILS=1 j 0 eq {/YD YEXU YEXA sub fneg def YDchange YEXP0 i YD put} if j 1 eq {/YD YEXP YEXA sub fneg def YDchange YEXP1 i YD put} if j 2 eq {/YD YEXD YEXA sub fneg def YDchange YEXP2 i YD put} if j 3 eq {/YD YEXT YEXA sub fneg def YDchange YEXP3 i YD put} if j 4 eq {/YD YEXN YEXA sub fneg def YDchange YEXP4 i YD put} if j 5 eq {/YD YEXW YEXA sub fneg def YDchange YEXP5 i YD put} if j 6 eq {/YD YEXP YEXA sub fneg def YDchange YEXP6 i YD put} if j 7 eq {/YD YEXD YEXA sub fneg def YDchange YEXP7 i YD put} if j 8 eq {/YD YEXT YEXA sub fneg def YDchange YEXP8 i YD put} if j 9 eq {/YD YEXE YEXA sub fneg def YDchange YEXP9 i YD put} if j 10 eq {/YD YEXF YEXA sub fneg def YDchange YEXP10 i YD put} if j 11 eq {/YD YEXH YEXA sub fneg def YDchange YEXP11 i YD put} if %end for ILS=1 ILS 0 eq {%ILS=0 j 0 eq {/YE YEXP0 i get YEXA add def YEXP0 i YE put} if j 1 eq {/YE YEXP1 i get YEXA add def YEXP1 i YE put} if j 2 eq {/YE YEXP2 i get YEXA add def YEXP2 i YE put} if j 3 eq {/YE YEXP3 i get YEXA add def YEXP3 i YE put} if j 4 eq {/YE YEXP4 i get YEXA add def YEXP4 i YE put} if j 5 eq {/YE YEXP5 i get YEXA add def YEXP5 i YE put} if j 6 eq {/YE YEXP6 i get YEXA add def YEXP6 i YE put} if j 7 eq {/YE YEXP7 i get YEXA add def YEXP7 i YE put} if j 8 eq {/YE YEXP8 i get YEXA add def YEXP8 i YE put} if j 9 eq {/YE YEXP9 i get YEXA add def YEXP9 i YE put} if j 10 eq {/YE YEXP10 i get YEXA add def YEXP10 i YE put} if j 11 eq {/YE YEXP11 i get YEXA add def YEXP11 i YE put} if } if %ILS=0 } for %j=0,11 %calculate all } for %i=0,85: 400_700_400(81) 0 1 85 {/i exch def %i=0,85: 400_700_400(81) /YEXUS {YIXUS i get} def %identical YEXN /YEXPS {YIXPS i get YP1S sub YNU1S add} def /YEXDS {YIXDS i get YD1S sub YNU1S add} def /YEXTS {YIXTS i get YT2S sub YNU2S add} def /YEXNS {YIXNS i get} def %identical YEXU /YEXWS {YIXUS i get YIXNS i get add 0.5 mul} def /YEXES YEXUS def /YEXFS YEXNS def /YEXHS {YIXWS i get YI2S sub YNU2S add} def /YD 0 def /YDchange {YD abs logta abs gt {YD 0 lt {/YD logta def} {/YD logta neg def} ifelse } if } bind def INE 0 eq {/fneg {} def} {/fneg {neg} def} ifelse 0 1 11 {/j exch def %j=0,11 %JPPM calculate all IKOM 0 eq {/YEXAS YEXNS def} if IKOM 1 eq {/YEXAS YEXUS def} if IKOM 2 eq {/YEXAS YEXHS def} if IKOM 3 eq {/YEXAS YEXWS def} if %begin for ILS=1 j 0 eq {/YD YEXUS YEXAS sub fneg def YDchange YEXP0S i YD put} if j 1 eq {/YD YEXPS YEXAS sub fneg def YDchange YEXP1S i YD put} if j 2 eq {/YD YEXDS YEXAS sub fneg def YDchange YEXP2S i YD put} if j 3 eq {/YD YEXTS YEXAS sub fneg def YDchange YEXP3S i YD put} if j 4 eq {/YD YEXNS YEXAS sub fneg def YDchange YEXP4S i YD put} if j 5 eq {/YD YEXWS YEXAS sub fneg def YDchange YEXP5S i YD put} if j 6 eq {/YD YEXPS YEXAS sub fneg def YDchange YEXP6S i YD put} if j 7 eq {/YD YEXDS YEXAS sub fneg def YDchange YEXP7S i YD put} if j 8 eq {/YD YEXTS YEXAS sub fneg def YDchange YEXP8S i YD put} if j 9 eq {/YD YEXES YEXAS sub fneg def YDchange YEXP9S i YD put} if j 10 eq {/YD YEXFS YEXAS sub fneg def YDchange YEXP10S i YD put} if j 11 eq {/YD YEXHS YEXAS sub fneg def YDchange YEXP11S i YD put} if %end for ILS=1 ILS 0 eq {%ILS=0 j 0 eq {/YE YEXP0S i get YEXAS add def YEXP0S i YE put} if j 1 eq {/YE YEXP1S i get YEXAS add def YEXP1S i YE put} if j 2 eq {/YE YEXP2S i get YEXAS add def YEXP2S i YE put} if j 3 eq {/YE YEXP3S i get YEXAS add def YEXP3S i YE put} if j 4 eq {/YE YEXP4S i get YEXAS add def YEXP4S i YE put} if j 5 eq {/YE YEXP5S i get YEXAS add def YEXP5S i YE put} if j 6 eq {/YE YEXP6S i get YEXAS add def YEXP6S i YE put} if j 7 eq {/YE YEXP7S i get YEXAS add def YEXP7S i YE put} if j 8 eq {/YE YEXP8S i get YEXAS add def YEXP8S i YE put} if j 9 eq {/YE YEXP9S i get YEXAS add def YEXP9S i YE put} if j 10 eq {/YE YEXP10S i get YEXAS add def YEXP10S i YE put} if j 11 eq {/YE YEXP11S i get YEXAS add def YEXP11S i YE put} if } if %ILS=0 } for %j=0,11 %calculate all } for %i=0,85: 400_700_400(81) %61 1 80 {/i exch def %i=61,80: 700_400(20) % /alpha i 60 sub 20 div def % /1malp 1 alpha sub def % YEXP0 i YEXP0 60 get 1malp mul YEXP0 0 get alpha mul add put % YEXP1 i YEXP1 60 get 1malp mul YEXP1 0 get alpha mul add put % YEXP2 i YEXP2 60 get 1malp mul YEXP2 0 get alpha mul add put % YEXP3 i YEXP3 60 get 1malp mul YEXP3 0 get alpha mul add put % YEXP4 i YEXP4 60 get 1malp mul YEXP4 0 get alpha mul add put % YEXP5 i YEXP5 60 get 1malp mul YEXP5 0 get alpha mul add put % YEXP6 i YEXP6 60 get 1malp mul YEXP6 0 get alpha mul add put % YEXP7 i YEXP7 60 get 1malp mul YEXP7 0 get alpha mul add put % YEXP8 i YEXP8 60 get 1malp mul YEXP8 0 get alpha mul add put % YEXP9 i YEXP9 60 get 1malp mul YEXP9 0 get alpha mul add put % YEXP10 i YEXP10 60 get 1malp mul YEXP10 0 get alpha mul add put % YEXP11 i YEXP11 60 get 1malp mul YEXP11 0 get alpha mul add put % YEXP0S i YEXP0S 60 get 1malp mul YEXP0S 0 get alpha mul add put % YEXP1S i YEXP1S 60 get 1malp mul YEXP1S 0 get alpha mul add put % YEXP2S i YEXP2S 60 get 1malp mul YEXP2S 0 get alpha mul add put % YEXP3S i YEXP3S 60 get 1malp mul YEXP3S 0 get alpha mul add put % YEXP4S i YEXP4S 60 get 1malp mul YEXP4S 0 get alpha mul add put % YEXP5S i YEXP5S 60 get 1malp mul YEXP5S 0 get alpha mul add put % YEXP6S i YEXP6S 60 get 1malp mul YEXP6S 0 get alpha mul add put % YEXP7S i YEXP7S 60 get 1malp mul YEXP7S 0 get alpha mul add put % YEXP8S i YEXP8S 60 get 1malp mul YEXP8S 0 get alpha mul add put % YEXP9S i YEXP9S 60 get 1malp mul YEXP9S 0 get alpha mul add put % YEXP10S i YEXP10S 60 get 1malp mul YEXP10S 0 get alpha mul add put % YEXP11S i YEXP11S 60 get 1malp mul YEXP11S 0 get alpha mul add put %} for %i=61,80: 700_400(20) ILF 0 eq {%ILF=0 1800 050 moveto tfw (l) outSK (d) ishowK 30 0 rmoveto (/nm) nshowK 4200 050 moveto tfw (l) outSK (c) ishowK 30 0 rmoveto (/nm) nshowK ILU 1 eq {4900 550 moveto (u) bishowM} if } if %ILF=0 %3100 2975 moveto tfw (Adaptation: ) bshowM %tfw (l) outSM tfo (R) ishowK tfl (G) ishowK %tfw (=) bshowM XRG$I ILK get bshowM %special; first part not visible %3100 2725 moveto 0.0 0.0 0.0 0.5 setcmykcolor (Adaptation: ) bshowM %tfw (l) outSM tfy (J) ishowK tfv (B) ishowK %tfw (=) bshowM XBJ$I ILK get bshowM %ILS 1 eq ILF 0 eq and {%ILS=1, ILF=0 %saturation diagram % 0800 2975 moveto TBM (Threshold: ) showen (Schwelle: ) showde % (t) bshowM (s) ishowK (=) bshowM ta trushow4} % {3400 2725 moveto (t) bshowM (s) ishowK (=) bshowM ta trushow4 % } ifelse %ILS=1, ILF=0 ILS 2 eq {%ILS=2, text purity function %text 0010 3800 moveto tfw (-) bshowM RGX1 cvishow (|log[) bshowM P0aS tfw (/) bshowM N0a tfw (]|) bshowM 1600 3800 moveto tfw (-) bshowM RGX2 cvishow (|log[) bshowM P0a tfw (/) bshowM U0a tfw (]|) bshowM 0210 3525 moveto (\050) bshowM U0a tfw (<) bshowM N0a tfw (\051) bshowM 1600 3525 moveto (\050) bshowM U0a tfw (>=) bshowM N0a tfw (\051) bshowM 0010 3250 moveto tfw (-) bshowM JBY1 cvishow (|log[) bshowM N0a tfw (/) bshowM H0a tfw (]|) bshowM 1600 3250 moveto tfw (-) bshowM JBY2 cvishow (|log[) bshowM U0a tfw (/) bshowM H0a tfw (]|) bshowM 0210 2975 moveto tfw (\050) bshowM (l) outSM tfy (J) ishowK tfv (B) ishowK tfw (<525nm\051) bshowM 1600 2975 moveto tfw (\050) bshowM (l) outSM tfy (J) ishowK tfv (B) ishowK tfw (>=525nm\051) bshowM } if %ILS=2, text purity function ILF 1 eq {%ILF=1 text chomaticity diagram IKOM 0 eq {%IKOM=0,#0 %IKOM=0 Xx525 0 ge {Yix i XUND RGX2 mul abs put} % {Yix i XUND RGX1 mul abs put} ifelse % Xx525 0 ge {Yiy i 0.00 put} % {Yiy i XUND JBY1 mul put} ifelse % %IKOM=123(NHW):W Xx525 0 ge {Yix i XUWD RGX2 mul abs put} % {Yix i XUWD RGX1 mul abs put} ifelse % Xx525 0 ge {Yiy i XUWD JBY2 mul put} % {Yiy i XUWD JBY1 mul put} ifelse 0010 3800 moveto tfw TBM JBY1 cvsshow2 (log[) bshowM U0a tfw (/) bshowM Na0 tfw (]) bshowM 0210 3525 moveto (\050) bshowM U0a tfw (<) bshowM N0a tfw (\051) bshowM 1600 3800 moveto tfw TBM JBY2 cvsshow2 tfw (log[) bshowM U0a tfw (/) bshowM Na0 tfw (]=0) bshowM 1600 3525 moveto (\050) bshowM U0a tfw (>=) bshowM N0a tfw (\051) bshowM 3600 1900 moveto tfw TBM RGX1 cvsshow2 (|log[) bshowM U0a tfw (/) bshowM N0a tfw (]|) bshowM 3800 1625 moveto (\050) bshowM U0a tfw (<) bshowM N0a tfw (\051) bshowM 3600 1250 moveto tfw TBM RGX2 cvsshow2 (|log[) bshowM U0a tfw (/) bshowM N0a tfw (]|) bshowM 3800 0875 moveto (\050) bshowM U0a tfw (>=) bshowM N0a tfw (\051) bshowM } { 0010 3800 moveto tfw TBM JBY1 cvsshow2 (log[) bshowM U0a tfw (/) bshowM YAa tfw (]) bshowM 0210 3525 moveto (\050) bshowM U0a tfw (<) bshowM N0a tfw (\051) bshowM 1600 3800 moveto tfw TBM JBY2 cvsshow2 tfw (log[) bshowM U0a tfw (/) bshowM YAa tfw (]) bshowM 1600 3525 moveto (\050) bshowM U0a tfw (>=) bshowM N0a tfw (\051) bshowM 3600 1900 moveto tfw TBM RGX1 cvsshow2 (|log[) bshowM U0a tfw (/) bshowM YAa tfw (]|) bshowM 3800 1625 moveto (\050) bshowM U0a tfw (<) bshowM N0a tfw (\051) bshowM 3600 1250 moveto tfw TBM RGX2 cvsshow2 (|log[) bshowM U0a tfw (/) bshowM YAa tfw (]|) bshowM 3800 0875 moveto (\050) bshowM U0a tfw (>=) bshowM N0a tfw (\051) bshowM } ifelse %IKOM=0,#0 } if %ILF=1 text chomaticity diagram ILF 1 ne ILS 2 ne and {%ILF#1, ISL#2 %no text if chromaticity or purity diagram 010 3800 moveto ILS 0 eq {%iLS=0,1 tfw (log [) bshowM P0o D0a T0a %U0a N0a W0a tfw (]) bshowM} {INE 0 eq {tfw (log[) bshowM P0a D0a T0a U0a N0a W0a tfw (]-log) bshowM YAa} {tfw (log) bshowM YAa tfw (-log[) bshowM P0a D0a T0a U0a N0a W0a tfw (]) bshowM } ifelse } ifelse %ILS=0,1 %special 200 3525 moveto ( ) bshowM ILS 0 eq {%iLS=0,1 tfw (Retinal sensitivity) showen (Retinaempfindlichkeit) showde} {tfw (Cone exitation ) showen (Zapfenerregbarkeit ) showde (e) bishowM IKOM 0 eq {(U) ishowK} if IKOM 1 eq {(N) ishowK} if IKOM 2 eq {(H) ishowK} if IKOM 3 eq {(W) ishowK} if } ifelse %ILS=0,1 200 3250 moveto tfw ( ) bshowM ILS 0 eq {%iLS=0,1 % (normalized to one) showen % (normiert auf eins) showde (adapted to cone) showen (adaptiert auf Zapfen\255) showde % (increased for cone) showen % (verst\344rkt f\374r Zapfen\255) showde } {( ) showen ( ) showde } ifelse %ILS=0,1 200 2975 moveto tfw ( ) bshowM ILS 0 eq {%iLS=0,1 (ratio P:D:T=16:8:1) showen (verh\344ltnis P:D:T=16:8:1) showde} {( ) showen ( ) showde } ifelse %ILS=0,1 %400nm /X400 000 0.00 1200 mul add def %450nm /X450 000 0.50 1200 mul add def %475nm /X475 000 0.75 1200 mul add def %525nm /X525 000 1.25 1200 mul add def %575nm /X538 000 1.38 1200 mul add def /X563 000 1.63 1200 mul add def /X575 000 1.75 1200 mul add def %625nm /X625 000 2.25 1200 mul add def %675nm /X675 000 2.75 1200 mul add def %375cnm /X700 000 3.00 1200 mul add def %395cnm /X400c 000 4.00 1200 mul add def X450 200 add 2600 moveto T0a X538 200 add 2600 moveto D0a X563 200 add 2600 moveto P0o %210 3525 moveto %special U0a,N0a %ILN 5 ge {%ILN=5,#5 % tfw (log) bshowM N0a tfw ( = 0,5 [log) bshowM T0a % tfw (+log) bshowM U0a tfw (]) bshowM % } % { % tfw (log) bshowM N0a tfw ( = 0,5 [log) bshowM T0a % tfw (+log) bshowM U0a tfw (]) bshowM % } ifelse %ILN=5,#5 %210 3250 moveto %ILN 5 ge {%ILN=5,#5 % tfw (log) bshowM W0a tfw ( = 0,5 [log) bshowM N0a % tfw (+log) bshowM U0a tfw (]) bshowM % } % { % tfw (log) bshowM W0a tfw ( = 0,5 [log) bshowM N0a % tfw (+log) bshowM U0a tfw (]) bshowM % } ifelse %ILN=5,#5 % } if %ILF#1, ISL#2 %no text if chromaticity or purity diagram %text always 3100 3800 moveto tfw (log) bshowM 30 0 rmoveto P0a 50 0 rmoveto tfw (= log) bshowM 50 0 rmoveto P0o tfw %YU1 YP1 sub 0 ge {( + )} {( - )} ifelse bshowM YU1 YP1 sub abs troshow ( + 0.00) bshowM 3100 3525 moveto tfw (log) bshowM 30 0 rmoveto D0a 50 0 rmoveto tfw (= log) bshowM 50 0 rmoveto D0o tfw %YU1 YD1 sub 0 ge {( + )} {( - )} ifelse bshowM YU1 YD1 sub abs troshow /ALOG2 2 log def ( - ) bshowM ALOG2 troshow %special for 475nm/575nm 3100 3250 moveto tfw (log) bshowM 30 0 rmoveto T0a 50 0 rmoveto tfw (= log) bshowM 50 0 rmoveto T0o tfw %/YDTW YT2 neg YI2 add def %YDTW 0 ge {( + )} {( - )} ifelse bshowM %YDTW abs troshow /ALOG16 16 log def ( - ) bshowM ALOG16 troshow %y-arrow 100 3400 moveto 0 300 rlineto -50 -150 rlineto 50 150 rlineto 50 -150 rlineto stroke tfw 380 280 translate 50 setlinewidth ILF 0 eq {%ILF=0 sensitivity or saturation 0 0 moveto 400 12 mul 0 rlineto stroke 0 0 moveto 0 ILS 0 eq ILS 2 eq or {3300} {3600} ifelse 0.8 mul rlineto stroke ILS 0 eq ILS 2 eq or {0 2700 0.8 mul moveto 400 12 mul 0 rlineto stroke} if TBK /tx [ (400) (500) (600) (700) (400)] def /tye [(-2) () (-1) () ( 0) () (-2)] def /tys [(-2) (-1) ( 0) ( 1) ( 2) ( 3) (-2)] def /tu [ ( -3,1) (-1,1) ( 0,9) ( 2,9) ( -3,1)] def %!u-Achse: 100 Einheiten = 1200 Skalen-Einheiten ILU 1 eq {%ILU=1 0 1 4 {/i exch def /ixt {-180 i 1200 mul add} def /ixl {240 i 1200 mul add} def ixt 150 moveto tu i get exec show } for % 555 nm; u=0.0 /ixt -180 1.55 1200 mul add def /ixl 240 1.55 1200 mul add def 0.25 0.0 1.0 0.0 setcmykcolor ixt 150 moveto ( 0.0) show /ixt 20 1860 add def ixt -320 moveto (555) show ixl 75 moveto 0 -150 rlineto stroke } if %ILU=1 %!x-Achse: 100 Einheiten = 1200 Skalen-Einheiten tfw 0 1 4 {/i exch def /ixt {-150 i 1200 mul add} def /ixl { 000 i 1200 mul add} def ixt -250 moveto tx i get exec show ixl 75 moveto 0 -150 rlineto stroke } for %!y-Achse: 100 S-Einheiten = 960 = 1200*0.8 Skalen-Einheiten TBK 0 1 5 {/i exch def /iyt {200 i 0480 mul add} def /iyl {240 i 0480 mul add} def -300 iyt moveto ILS 0 eq ILS 2 eq or {tye} {tys} ifelse i get exec show -75 iyl moveto 150 0 rlineto stroke } for TBK 30 setlinewidth %ymax = 240 + 4 * 480 = 2160 [100 100] 0 setdash %X525 0 moveto 0 2160 rlineto stroke %X700 0 moveto 0 2160 rlineto stroke %X400c 0 moveto 0 2160 rlineto stroke X450 0 moveto 0 2160 rlineto stroke X538 0 moveto 0 2160 rlineto stroke X563 0 moveto 0 2160 rlineto stroke TBS %X525 20 add 100 moveto (525) show X700 20 add 100 moveto (700) show %X400c 20 add 100 moveto (400) show %xchart 2 ge {%xchart>=2 % X475 0 moveto 0 2160 rlineto stroke % X575 0 moveto 0 2160 rlineto stroke % X475 20 add 100 moveto (475) show % X575 20 add 100 moveto (575) show X450 50 add 100 moveto (450) show X538 20 add 100 moveto (538) show X563 20 add 100 moveto (563) show % } if %xchart>=2 [ ] 0 setdash TBM 50 setlinewidth %Cero point at 555 nm /X0t {555 400 sub 12 mul} def X0t 0 translate } if %ILF=0 sensitivity or saturation ILF 1 eq {%ILF=1 axis chromaticity diagram TBK /ix00 000 def IKOM 0 eq {/ty [(-4) (-3) (-2) (-1) ( 0) ( 1)] def} if IKOM 1 eq {/ty [(-2) (-1) ( 0) ( 1) ( 2) ( 3)] def} if IKOM 2 eq {/ty [(-2) (-1) ( 0) ( 1) ( 2) ( 3)] def} if IKOM 3 eq {/ty [(-3) (-2) (-1) ( 0) ( 1) ( 2)] def} if tfw 50 setlinewidth 0 0 moveto 400 12 mul 0 rlineto stroke 0 0 moveto 0 2400 rlineto stroke /tx [(-1) ( 0) ( 1) ( 2) ( 3) ( 4) ( 5) ( 6)] def %!x-Achse: 100 Einheiten = 1200 Skalen-Einheiten 0 1 6 {/i exch def /ix00 000 def /ixt { ix00 -280 add i 0600 mul add} def /ixl { ix00 000 add i 0600 mul add} def ixt 100 add -250 moveto tx i get exec show ixl 75 moveto 0 -150 rlineto stroke } for %!y-Achse: 100 S-Einheiten = 960 = 1200*0.8 Skalen-Einheiten 0 1 4 {/i exch def /iyt {-100 i 0600 mul add} def /iyl { 000 i 0600 mul add} def -350 iyt moveto ty i get exec show -75 iyl moveto 150 0 rlineto stroke } for %Nullpunkt-Achsenkreuz 30 setlinewidth tfn IKOM 0 eq {/IORX 0600 def /IORY 2400 def} if IKOM 1 eq {/IORX 0600 def /IORY 1200 def} if IKOM 2 eq {/IORX 0600 def /IORY 1200 def} if IKOM 3 eq {/IORX 0600 def /IORY 1200 def} if IORX 0000 moveto 0000 2350 rlineto stroke 0000 IORY moveto 5000 0000 rlineto stroke 50 setlinewidth tfw } if %ILF=1 axis chomaticity diagram ILF 0 eq {%ILF=0 for clip 0 setlinewidth /Y0C 0000 def /Y1C 2400 def ILU 1 eq {/Y0C 0450 def} if ILS 0 eq {/Y1C 2900 def} if 0.0 0.0 0.0 0.0 setcmykcolor X0t neg Y0C moveto 4800 0 rlineto 0 Y1C rlineto -4800 0 rlineto 0 Y1C neg rlineto clip stroke } if %ILF=0 for clip ILS 0 eq ILF 0 eq and {/IORY 2700 0.8 mul def} if %response diagram ILS 1 eq ILF 0 eq and {/IORY 1500 0.8 mul def} if %saturation diagram ILS 2 eq ILF 0 eq and {/IORY 2700 0.8 mul def} if %purity diagram %begin only for %j=1,2,8=P',D',T' 0 1 JPPM {/j exch def %j=0,JPPM %only ILF=0 ILF 0 eq {%ILF=0 0 1 85 {/i exch def %i=0,85: 400_700_400(81) XiS i i 5 mul 400 add put j 0 eq {YiS i YEXP0S i get put} if j 1 eq {YiS i YEXP1S i get put} if j 2 eq {YiS i YEXP2S i get put} if j 3 eq {YiS i YEXP3S i get put} if j 4 eq {YiS i YEXP4S i get put} if j 5 eq {YiS i YEXP5S i get put} if j 6 eq {YiS i YEXP6S i get put} if j 7 eq {YiS i YEXP7S i get put} if j 8 eq {YiS i YEXP8S i get put} if j 9 eq {YiS i YEXP9S i get put} if j 10 eq {YiS i YEXP10S i get put} if j 11 eq {YiS i YEXP11S i get put} if } for %i=0,85: 400_700_400(81) } if %ILF=0 ILS 0 eq {%ILS=0 FKUC1S j FKUCI00S j get put FKUM1S j FKUMI00S j get put FKUY1S j FKUYI00S j get put FKUN1S j FKUNI00S j get put FKUC2S j FKUCI01S j get put FKUM2S j FKUMI01S j get put FKUY2S j FKUYI01S j get put FKUN2S j FKUNI01S j get put IDAI1S j IDAI00S j get put IDAI2S j IDAI01S j get put KURVAS j KURVA1S j get put } if %ILS=0 ILS 1 ge {%ILS>=1 FKUC1S j FKUCI10S j get put FKUM1S j FKUMI10S j get put FKUY1S j FKUYI10S j get put FKUN1S j FKUNI10S j get put FKUC2S j FKUCI11S j get put FKUM2S j FKUMI11S j get put FKUY2S j FKUYI11S j get put FKUN2S j FKUNI11S j get put IDAI1S j IDAI10S j get put IDAI2S j IDAI11S j get put KURVAS j KURVA2S j get put } if %ILS=1 /KURVMS {KURVAS j get} def KURVMS 0 gt {%if KURVMS>0 then KURVE 1 1 KURVMS {/KURVS exch def %KURVS=1,KURVMS /IDA1S {IDAI1S j get cvi} def /IDA2S {IDAI2S j get cvi} def KURVS 1 eq {[ ] 0 setdash} if KURVS 2 eq {%KURVS=2 %special for 475nm curve j=3 /IDA1S {IDAI1S j get} def /IDA2S {IDAI2S j get} def [ IDA1S IDA2S] 0 setdash } if %KURVS=2 KURVS 1 eq {%KURVS=1 /jadd 0 def % ILS 1 ge j 1 eq and {/jadd 3 def} if /FKUCS {FKUC1S j jadd add get} def /FKUMS {FKUM1S j jadd add get} def /FKUYS {FKUY1S j jadd add get} def /FKUNS {FKUN1S j jadd add get} def } if %KURV=1 KURVS 2 eq {%KURVS=2 /FKUCS {FKUC2S j get} def /FKUMS {FKUM2S j get} def /FKUYS {FKUY2S j get} def /FKUNS {FKUN2S j get} def } if %KURVS=2 FKUCS FKUMS FKUYS FKUNS setcmykcolor ILS 2 ne {%ILS#2 ILF 0 eq {%ILF=0 sensitivity or saturation 50 setlinewidth j 1 eq j 2 eq or {%j=1,2=P',D' /K0 0 def /K1 0 def /K2 80 def /xst {XiS K0 get 555 sub CX div MULX mul} bind def /yst {IORY YiS K0 get MULY mul add} bind def xst yst moveto K1 3 K2 {/i exch def %i=0,85: 400_700_400(81) /xst {XiS i get 555 sub CX div MULX mul} bind def /yst {IORY YiS i get MULY mul add} bind def /x20 {XiS i 1 add get 555 sub CX div MULX mul} bind def /y20 {IORY YiS i 1 add get MULY mul add} bind def /x21 {XiS i 2 add get 555 sub CX div MULX mul} bind def /y21 {IORY YiS i 2 add get MULY mul add} bind def /x22 {XiS i 3 add get 555 sub CX div MULX mul} bind def /y22 {IORY YiS i 3 add get MULY mul add} bind def x21 y21 x21 y21 x22 y22 curveto } for %i=0,85: 400_700_400(81) stroke } if %j=1,2=P',D' j 8 eq {%j=8=T' /J0 0 def /J1 0 def /J2 80 def /xst {XiS J0 get 555 sub CX div MULX mul} bind def /yst {IORY YiS J0 get MULY mul add} bind def xst yst moveto J1 3 J2 {/i exch def %i=0,85: 400_700_400(81) /xst {XiS i get 555 sub CX div MULX mul} bind def /yst {IORY YiS i get MULY mul add} bind def /x20 {XiS i 1 add get 555 sub CX div MULX mul} bind def /y20 {IORY YiS i 1 add get MULY mul add} bind def /x21 {XiS i 2 add get 555 sub CX div MULX mul} bind def /y21 {IORY YiS i 2 add get MULY mul add} bind def /x22 {XiS i 3 add get 555 sub CX div MULX mul} bind def /y22 {IORY YiS i 3 add get MULY mul add} bind def x21 y21 x21 y21 x22 y22 curveto } for %i=0,85: 400_700_400(81) stroke } if %j=8=T } if %ILF=0 sensitivity or saturation } if %ILS#2 } for %KURVS=1,KURVMS } if %if KURVMS>0 then KURVES } for %j=0,JPPM %end only for %j=1,2,8=P',D',T' %begin only for %j=3,6,7=T,P,D 0 1 JPPM {/j exch def %j=0,JPPM %only ILF=0 ILF 0 eq {%ILF=0 0 1 85 {/i exch def %i=0,85: 400_700_400(81) Xi i i 5 mul 400 add put j 0 eq {Yi i YEXP0 i get put} if j 1 eq {Yi i YEXP1 i get put} if j 2 eq {Yi i YEXP2 i get put} if j 3 eq {Yi i YEXP3 i get put} if j 4 eq {Yi i YEXP4 i get put} if j 5 eq {Yi i YEXP5 i get put} if j 6 eq {Yi i YEXP6 i get put} if j 7 eq {Yi i YEXP7 i get put} if j 8 eq {Yi i YEXP8 i get put} if j 9 eq {Yi i YEXP9 i get put} if j 10 eq {Yi i YEXP10 i get put} if j 11 eq {Yi i YEXP11 i get put} if } for %i=0,85: 400_700_400(81) } if %ILF=0 ILS 0 eq {%ILS=0 FKUC1 j FKUCI00 j get put FKUM1 j FKUMI00 j get put FKUY1 j FKUYI00 j get put FKUN1 j FKUNI00 j get put FKUC2 j FKUCI01 j get put FKUM2 j FKUMI01 j get put FKUY2 j FKUYI01 j get put FKUN2 j FKUNI01 j get put IDAI1 j IDAI00 j get put IDAI2 j IDAI01 j get put KURVA j KURVA1 j get put } if %ILS=0 ILS 1 ge {%ILS>=1 FKUC1 j FKUCI10 j get put FKUM1 j FKUMI10 j get put FKUY1 j FKUYI10 j get put FKUN1 j FKUNI10 j get put FKUC2 j FKUCI11 j get put FKUM2 j FKUMI11 j get put FKUY2 j FKUYI11 j get put FKUN2 j FKUNI11 j get put IDAI1 j IDAI10 j get put IDAI2 j IDAI11 j get put KURVA j KURVA2 j get put } if %ILS=1 /KURVM {KURVA j get} def KURVM 0 gt {%if KURVM>0 then KURVE 1 1 KURVM {/KURV exch def %KURV=1,KURVM /IDA1 {IDAI1 j get cvi} def /IDA2 {IDAI2 j get cvi} def KURV 1 eq {[ ] 0 setdash} if KURV 2 eq {%KURV=2 %special for 475nm curve j=3 /IDA1 {IDAI1 j get} def /IDA2 {IDAI2 j get} def [IDA1 IDA2] 0 setdash } if %KURV=2 KURV 1 eq {%KURV=1 /jadd 0 def /FKUC {FKUC1 j jadd add get} def /FKUM {FKUM1 j jadd add get} def /FKUY {FKUY1 j jadd add get} def /FKUN {FKUN1 j jadd add get} def } if %KURV=1 KURV 2 eq {%KURV=2 /FKUC {FKUC2 j get} def /FKUM {FKUM2 j get} def /FKUY {FKUY2 j get} def /FKUN {FKUN2 j get} def } if %KURV=2 FKUC FKUM FKUY FKUN setcmykcolor ILS 2 ne {%ILS#2 ILF 0 eq {%ILF=0 sensitivity or saturation, not purity 50 setlinewidth j 3 eq {%j=3=T /K0 0 def /K1 0 def /K2 80 def /xst {Xi K0 get 555 sub CX div MULX mul} bind def /yst {IORY Yi K0 get MULY mul add} bind def xst yst moveto K1 3 K2 {/i exch def %i=0,85 400_700_400(81) /xst {Xi i get 555 sub CX div MULX mul} bind def /yst {IORY Yi i get MULY mul add} bind def /x20 {Xi i 1 add get 555 sub CX div MULX mul} bind def /y20 {IORY Yi i 1 add get MULY mul add} bind def /x21 {Xi i 2 add get 555 sub CX div MULX mul} bind def /y21 {IORY Yi i 2 add get MULY mul add} bind def /x22 {Xi i 3 add get 555 sub CX div MULX mul} bind def /y22 {IORY Yi i 3 add get MULY mul add} bind def x21 y21 x21 y21 x22 y22 curveto } for %i=0,85 400_700_400(81) stroke } if %j=3 j 6 eq j 7 eq or{%j=6,7=P,D /J0 0 def /J1 0 def /J2 80 def /xst {Xi J0 get 555 sub CX div MULX mul} bind def /yst {IORY Yi J0 get MULY mul add} bind def xst yst moveto J1 3 J2 {/i exch def %i=0,85 400_700_400(81) /xst {Xi i get 555 sub CX div MULX mul} bind def /yst {IORY Yi i get MULY mul add} bind def /x20 {Xi i 1 add get 555 sub CX div MULX mul} bind def /y20 {IORY Yi i 1 add get MULY mul add} bind def /x21 {Xi i 2 add get 555 sub CX div MULX mul} bind def /y21 {IORY Yi i 2 add get MULY mul add} bind def /x22 {Xi i 3 add get 555 sub CX div MULX mul} bind def /y22 {IORY Yi i 3 add get MULY mul add} bind def x21 y21 x21 y21 x22 y22 curveto } for %i=0,85 400_700_400(81) stroke } if %j=6,7=P,D } if %ILF=0 sensitivity or saturation, not purity } if %ILS#2 } for %KURV=1,KURVM } if %if KURVM>0 then KURVE } for %j=0,JPPM %end only for %j=3,6,7=T,P,D %begin only for %j=9,10,11=E,F,H 0 1 JPPM {/j exch def %j=0,JPPM ILF 0 eq {%ILF=0 (for ILS=0,1,2) 0 1 85 {/i exch def %i=0,85: 400_700_400(81) Xi i i 5 mul 400 add put j 0 eq {Yi i YEXP0 i get put} if j 1 eq {Yi i YEXP1 i get put} if j 2 eq {Yi i YEXP2 i get put} if j 3 eq {Yi i YEXP3 i get put} if j 4 eq {Yi i YEXP4 i get put} if j 5 eq {Yi i YEXP5 i get put} if j 6 eq {Yi i YEXP6 i get put} if j 7 eq {Yi i YEXP7 i get put} if j 8 eq {Yi i YEXP8 i get put} if j 9 eq {Yi i YEXP9 i get put} if j 10 eq {Yi i YEXP10 i get put} if j 11 eq {Yi i YEXP11 i get put} if } for %i=0,85: 400_700_400(81) } if %ILF=0 ILS 0 eq {%ILS=0 FKUC1 j FKUCI00 j get put FKUM1 j FKUMI00 j get put FKUY1 j FKUYI00 j get put FKUN1 j FKUNI00 j get put FKUC2 j FKUCI01 j get put FKUM2 j FKUMI01 j get put FKUY2 j FKUYI01 j get put FKUN2 j FKUNI01 j get put IDAI1 j IDAI00 j get put IDAI2 j IDAI01 j get put KURVA j KURVA1 j get put } if %ILS=0 ILS 1 ge {%ILS>=1 FKUC1 j FKUCI10 j get put FKUM1 j FKUMI10 j get put FKUY1 j FKUYI10 j get put FKUN1 j FKUNI10 j get put FKUC2 j FKUCI11 j get put FKUM2 j FKUMI11 j get put FKUY2 j FKUYI11 j get put FKUN2 j FKUNI11 j get put IDAI1 j IDAI10 j get put IDAI2 j IDAI11 j get put KURVA j KURVA2 j get put } if %ILS=1 /KURVM {KURVA j get} def KURVM 0 gt {%if KURVM>0 then KURVE 1 1 KURVM {/KURV exch def %KURV=1,KURVM /IDA1 {IDAI1 j get cvi} def /IDA2 {IDAI2 j get cvi} def KURV 1 eq {[ ] 0 setdash} if KURV 2 eq {%KURV=2 %special for 475nm curve j=3 /IDA1 {IDAI1 j get} def /IDA2 {IDAI2 j get} def [IDA1 IDA2] 0 setdash } if %KURV=2 KURV 1 eq {%KURV=1 /jadd 0 def /FKUC {FKUC1 j jadd add get} def /FKUM {FKUM1 j jadd add get} def /FKUY {FKUY1 j jadd add get} def /FKUN {FKUN1 j jadd add get} def } if %KURV=1 KURV 2 eq {%KURV=2 /FKUC {FKUC2 j get} def /FKUM {FKUM2 j get} def /FKUY {FKUY2 j get} def /FKUN {FKUN2 j get} def } if %KURV=2 FKUC FKUM FKUY FKUN setcmykcolor ILF 0 eq {%ILF=0 sensitivity or saturation 50 setlinewidth j 9 eq j 10 eq or j 11 eq or {%j=9,10,11=E,F,H /I0 0 def /I1 0 def /I2 80 def /xst {Xi I0 get 555 sub CX div MULX mul} bind def /yst {IORY Yi I0 get MULY mul add} bind def xst yst moveto I1 3 I2 {/i exch def %i=1,80: 405_400 /xst {Xi i get 555 sub CX div MULX mul} bind def /yst {IORY Yi i get MULY mul add} bind def /x20 {Xi i 1 add get 555 sub CX div MULX mul} bind def /y20 {IORY Yi i 1 add get MULY mul add} bind def /x21 {Xi i 2 add get 555 sub CX div MULX mul} bind def /y21 {IORY Yi i 2 add get MULY mul add} bind def /x22 {Xi i 3 add get 555 sub CX div MULX mul} bind def /y22 {IORY Yi i 3 add get MULY mul add} bind def x21 y21 x21 y21 x22 y22 curveto } for %i=1,80: 405_400 stroke } if %j=9,10,11=E,F,H } if %ILF=0 sensitivity or saturation } for %KURV=1,KURVM } if %if KURVM>0 then KURVE } for %j=0,JPPM %end only for %j=9,10,11=E,F,H %begin only for %j=0,4,5=U,N,W 0 1 JPPM {/j exch def %j=0,JPPM ILF 0 eq {%ILF=0 (for ILS=0,1,2) 0 1 85 {/i exch def %i=0,85: 400_700_400(81) Xi i i 5 mul 400 add put j 0 eq {Yi i YEXP0 i get put} if j 1 eq {Yi i YEXP1 i get put} if j 2 eq {Yi i YEXP2 i get put} if j 3 eq {Yi i YEXP3 i get put} if j 4 eq {Yi i YEXP4 i get put} if j 5 eq {Yi i YEXP5 i get put} if j 6 eq {Yi i YEXP6 i get put} if j 7 eq {Yi i YEXP7 i get put} if j 8 eq {Yi i YEXP8 i get put} if j 9 eq {Yi i YEXP9 i get put} if j 10 eq {Yi i YEXP10 i get put} if j 11 eq {Yi i YEXP11 i get put} if } for %i=0,85: 400_700_400(81) } if %ILF=0 ILS 2 eq {%ILS=2 correction for j=0,4,5 %purity functions j 0 eq j 4 eq or j 5 eq or {%ILS=2 correction for j=0,4,5 0 1 85 {/i exch def %i=0,85: 400_700_400(81) Xi i i 5 mul 400 add put /Xx525 Xi i get 525 sub def Xx525 0 ge {%lambda>=525 %identical P0-P5/P5S-P0S /XRG YEXP1 i get YEXP0 i get sub RGX2 mul def} {/XRG YEXP1S i get YEXP0S i get sub RGX1 mul def } ifelse %lambda>=525 XJBA 525 ge {%XJBA>=525 /XJB YEXP0 i get YEXP11 i get sub def} {/XJB YEXP4 i get YEXP11 i get sub def } ifelse %XJBA>=525 j 0 eq {Yi i 0 put} if j 4 eq {Yi i XJB abs neg put} if j 5 eq {Yi i XRG abs neg put} if } for %i=0,85: 400_700_400(81) } if %ILS=2 correction for j=0,4,5 } if %ILS=2 correction for j=0,4,5 %purity functions ILF 1 eq {%ILF=1 %chromaticity diagram j 0 eq j 4 eq or j 5 eq or {%j=0,4,5 0 1 85 {/i exch def %i=0,85: 400_700_400(81) Xi i i 5 mul 400 add put /Xx525 Xi i get 525 sub def /XPXD2 0 def /XPXD1 0 def XJBA 525 ge {%XJBA>=525 j 4 eq j 5 eq or { i 0 ge i 25 le and {/XPXD1 YIXPS i get YIXUS i get sub YP1S sub YU1S add def} if i 26 ge i 60 le and {/XPXD2 YIXP i get YIXU i get sub YP1 sub YU1 add def} if j 5 eq {/XPXD1 XPXD1 neg def /XPXD2 XPXD2 neg def} if } if } %XJBA>=525 { %XJBA>=525 j 4 eq j 5 eq or { i 0 ge i 25 le and {/XPXD1 YIXPS i get YIXNS i get sub YP1S sub YN1S add def} if i 26 ge i 60 le and {/XPXD2 YIXP i get YIXN i get sub YP1 sub YN1 add def} if j 5 eq {/XPXD1 XPXD1 neg def /XPXD2 XPXD2 neg def} if } if } ifelse %XJBA>=525 /XUND YIXU i get YIXN i get sub def %IKOM=1 /XUHD YIXU i get YIXH i get sub def %IKOM=2 H adaptiertes W /XUWD YIXU i get YIXW i get sub def %IKOM=3 W=(U+N)*0.5 IKOM 0 eq {%IKOM=0 %U Xx525 0 ge {Yix i XUND RGX2 mul abs put} {Yix i XUND RGX1 mul abs put} ifelse Xx525 0 ge {Yiy i 0.00 put} {Yiy i XUND JBY1 mul put} ifelse } if %IKOM=0 IKOM 1 eq {%IKOM=1 %N Xx525 0 ge {Yix i XUND RGX2 mul abs put} {Yix i XUND RGX1 mul abs put} ifelse Xx525 0 ge {Yiy i XUND JBY2 mul put} {Yiy i XUND JBY1 mul put} ifelse } if %IKOM=1 IKOM 2 eq {%IKOM=2 %H=adaptiertes W Xx525 0 ge {Yix i XUHD RGX2 mul abs put} {Yix i XUHD RGX1 mul abs put} ifelse Xx525 0 ge {Yiy i XUHD JBY2 mul put} {Yiy i XUHD JBY1 mul put} ifelse } if %IKOM=2 IKOM 3 eq {%IKOM=3 %W=(U+N)*0.5 Xx525 0 ge {Yix i XUWD abs XPXD2 add RGX2 mul put} {Yix i XUWD abs XPXD1 add RGX1 mul put} ifelse Xx525 0 ge {Yiy i XUWD JBY2 mul put} {Yiy i XUWD JBY1 mul put} ifelse } if %IKOM=3 } for %i=0,85: 400_700_400(81) %correction for purple colours 61 1 80 {/i exch def %i=61,80: 700+_400(20) /alpha i 60 sub 20 div def /1malp 1 alpha sub def Yix i Yix 60 get 1malp mul Yix 0 get alpha mul add put Yiy i Yiy 60 get 1malp mul Yiy 0 get alpha mul add put } for %i=61,80: 700+_400(81) } if %j=0,4,5 } if %ILF=1 %chromaticity diagram ILS 0 eq {%ILS=0 FKUC1 j FKUCI00 j get put FKUM1 j FKUMI00 j get put FKUY1 j FKUYI00 j get put FKUN1 j FKUNI00 j get put FKUC2 j FKUCI01 j get put FKUM2 j FKUMI01 j get put FKUY2 j FKUYI01 j get put FKUN2 j FKUNI01 j get put IDAI1 j IDAI00 j get put IDAI2 j IDAI01 j get put KURVA j KURVA1 j get put } if %ILS=0 ILS 1 ge {%ILS>=1 FKUC1 j FKUCI10 j get put FKUM1 j FKUMI10 j get put FKUY1 j FKUYI10 j get put FKUN1 j FKUNI10 j get put FKUC2 j FKUCI11 j get put FKUM2 j FKUMI11 j get put FKUY2 j FKUYI11 j get put FKUN2 j FKUNI11 j get put IDAI1 j IDAI10 j get put IDAI2 j IDAI11 j get put KURVA j KURVA2 j get put } if %ILS=1 /KURVM {KURVA j get} def KURVM 0 gt {%if KURVM>0 then KURVE 1 1 KURVM {/KURV exch def %KURV=1,KURVM /IDA1 {IDAI1 j get cvi} def /IDA2 {IDAI2 j get cvi} def KURV 1 eq {[ ] 0 setdash} if KURV 2 eq {%KURV=2 %special for 475nm curve j=3 /IDA1 {IDAI1 j get} def /IDA2 {IDAI2 j get} def [IDA1 IDA2] 0 setdash } if %KURV=2 KURV 1 eq {%KURV=1 /jadd 0 def /FKUC {FKUC1 j jadd add get} def /FKUM {FKUM1 j jadd add get} def /FKUY {FKUY1 j jadd add get} def /FKUN {FKUN1 j jadd add get} def ILS 2 eq j 0 eq and {/FKUC 0 def /FKUM 0 def /FKUY 0 def /FKUN 0 def} if %W ILS 2 eq j 4 eq and {/FKUC 0 def /FKUM 0 def /FKUY 1 def /FKUN 0 def} if %Y ILS 2 eq j 5 eq and {/FKUC 1 def /FKUM 0 def /FKUY 1 def /FKUN 0 def} if %L ILF 1 eq j 4 eq and {/FKUC 1 def /FKUM 0 def /FKUY 1 def /FKUN 0 def} if %L ILF 1 eq j 5 eq and {/FKUC 0 def /FKUM 1 def /FKUY 1 def /FKUN 0 def} if %O } if %KURV=1 KURV 2 eq {%KURV=2 /FKUC {FKUC2 j get} def /FKUM {FKUM2 j get} def /FKUY {FKUY2 j get} def /FKUN {FKUN2 j get} def ILS 2 eq j 0 eq and {/FKUC 0 def /FKUM 0 def /FKUY 0 def /FKUN 0 def} if %W ILS 2 eq j 4 eq and {/FKUC 1 def /FKUM 1 def /FKUY 0 def /FKUN 0 def} if %V ILS 2 eq j 5 eq and {/FKUC 0 def /FKUM 1 def /FKUY 1 def /FKUN 0 def} if %O ILF 1 eq j 4 eq and {/FKUC 1 def /FKUM 0 def /FKUY 1 def /FKUN 0 def} if %L ILF 1 eq j 5 eq and {/FKUC 0 def /FKUM 1 def /FKUY 1 def /FKUN 0 def} if %O } if %KURV=2 FKUC FKUM FKUY FKUN setcmykcolor ILF 0 eq {%ILF=0 sensitivity or saturation or purity 50 setlinewidth j 0 eq j 4 eq or j 5 eq or {%j=0,4,5=U,N,W /I0 0 def /I1 0 def /I2 80 def /xst {Xi I0 get 555 sub CX div MULX mul} bind def /yst {IORY Yi I0 get MULY mul add} bind def xst yst moveto I1 3 I2 {/i exch def %i=1,80: 405_400 /xst {Xi i get 555 sub CX div MULX mul} bind def /yst {IORY Yi i get MULY mul add} bind def /x20 {Xi i 1 add get 555 sub CX div MULX mul} bind def /y20 {IORY Yi i 1 add get MULY mul add} bind def /x21 {Xi i 2 add get 555 sub CX div MULX mul} bind def /y21 {IORY Yi i 2 add get MULY mul add} bind def /x22 {Xi i 3 add get 555 sub CX div MULX mul} bind def /y22 {IORY Yi i 3 add get MULY mul add} bind def x21 y21 x21 y21 x22 y22 curveto } for %i=1,80: 405_400 stroke } if %j=0,4,5=U,N,W IED 1 eq {%IED=1 with Evans G0-data ILS 2 eq {%ILS=2 purity function xchart 8 eq xchart 12 eq or xchart 14 eq or {%15 Evans-G0-data %"The perception of Colour", page 134, backgrounds 475, 528, 608nm /XiALL 15 array def /Yi475 15 array def /Yi528 15 array def /Yi608 15 array def /Xip 15 array def /Yip 15 array def /XiALL [440 475 480 500 528 555 575 585 590 608 650 700 720 760 800] def /Yi475 [0.5 0.0 0.3 0.3 0.4 0.2 0.2 0.4 0.6 0.6 0.8 1.0 1.0 1.0 0.6] def /Yi528 [1.6 0.7 0.6 0.3 0.0 0.2 0.5 0.4 0.6 0.7 1.0 1.0 1.0 1.1 1.3] def /Yi608 [1.0 1.1 0.4 0.5 0.6 0.7 0.6 0.4 0.1 0.0 0.5 0.7 0.6 1.2 1.6] def 0 1 14 {/i exch def %i=0,14 Xip i XiALL i get 555 sub CX div MULX mul put xchart 8 eq {Yip i Yi528 i get neg put} if xchart 12 eq {Yip i Yi475 i get neg put} if xchart 14 eq {Yip i Yi608 i get neg put} if } for %i=0,14 0 setgray [ ] 0 setdash 0 1 14 {/i exch def %i=0,14 /xst {Xip i get} bind def /yst {IORY Yip i get MULY mul add} bind def newpath xst 50 sub yst 50 sub moveto 100 100 rlineto stroke xst 50 sub yst 50 add moveto 100 -100 rlineto stroke % xst yst 40 0 360 arc fill newpath } for %i=0,14 } if %IED=1 with Evans G0-data } if %xchart=8,12,14 } if %ILS=2 correction for j=0,4,5 %purity functions %} if %j=0,4,5=U,N,W } if %ILF=0 sensitivity or saturation or purity ILF 1 ge {%ILF=1 chromaticity diagram 30 setlinewidth j 0 eq j 4 eq or j 5 eq or {%j=0,4,5=U,U+P,U+D /xst {IORX Yix 0 get MULF mul add} bind def /yst {IORY Yiy 0 get MULF mul add} bind def xst yst moveto 0 3 80 {/i exch def %i=1,80: 405_700_400 /xst {IORX Yix i get MULF mul add} bind def /yst {IORY Yiy i get MULF mul add} bind def /x20 {IORX Yix i 1 add get MULF mul add} bind def /y20 {IORY Yiy i 1 add get MULF mul add} bind def /x21 {IORX Yix i 2 add get MULF mul add} bind def /y21 {IORY Yiy i 2 add get MULF mul add} bind def /x22 {IORX Yix i 3 add get MULF mul add} bind def /y22 {IORY Yiy i 3 add get MULF mul add} bind def x21 y21 x21 y21 x22 y22 curveto } for %i=1,80: 405_700_400 stroke TBK 0 10 70 {/i exch def %i=0,10,85: 400_700_400 /xst {IORX Yix i get MULF mul add} bind def /yst {IORY Yiy i get MULF mul add} bind def newpath xst yst 40 0 360 arc fill newpath %wavelength text IKOM 0 eq i 30 ge and {/xstc -200 def /ystc 100 def} {/xstc -400 def /ystc -100 def} ifelse i 0 eq {/xstc 100 def /ystc -100 def} if %400nm i 60 eq {/xstc 100 def /ystc -150 def} if %700nm i 70 eq {/xstc 100 def /ystc -100 def} if %525cnm j 0 eq {%nm-text only once xst xstc add yst ystc add moveto i 60 le {400 i 5 mul add cvishow} {(525c) show} ifelse } if %nm-text only once } for %i=0,10,85: 400_700_400 IKOM 0 eq {%IKOM=0 %U /XUND YU1 YN1 sub def /Yixs YU1 YN1 ge {XUND RGX2 mul abs def} {XUND RGX1 mul abs def} ifelse /Yiys YU1 YN1 ge {0.00 def} {XUND JBY1 mul def} ifelse } if %IKOM=0 IKOM 1 eq {%IKOM=1 %N /XUND YU1 YN1 sub def /Yixs YU1 YN1 ge {XUND RGX2 mul abs def} {XUND RGX1 mul abs def} ifelse /Yiys YU1 YN1 ge {XUND JBY2 mul def} {XUND JBY1 mul def} ifelse } if %IKOM=1 %N IKOM 2 eq {%IKOM=2 %H /YH1m YI1 YI2 sub YUN2 add def /XUHD YU1 YH1m sub def /Yixs YU1 YH1m ge {XUHD RGX2 mul abs def} {XUHD RGX1 mul abs def} ifelse /Yiys YU1 YH1m ge {XUHD JBY2 mul def} {XUHD JBY1 mul def} ifelse } if %IKOM=2 %H IKOM 3 eq {%IKOM=0 %W /YW1m YU1 YN1 add 0.5 mul def /XUWD YU1 YW1m sub def /Yixs YU1 YW1m ge {XUWD RGX2 mul abs def} {XUWD RGX1 mul abs def} ifelse /Yiys YU1 YW1m ge {XUWD JBY2 mul def} {XUWD JBY1 mul def} ifelse } if %IKOM=3 1 setgray /TRANX Yixs def /TRANY Yiys def /TRANXF TRANX MULF mul def /TRANYF TRANY MULF mul def /IXYM 1.0 MULF mul def IORX TRANXF add IORY TRANYF add moveto 0 IXYM rlineto stroke IORX TRANXF add IORY TRANYF add moveto 0 IXYM neg rlineto stroke IORX TRANXF add IORY TRANYF add moveto IXYM 0 rlineto stroke IORX TRANXF add IORY TRANYF add moveto IXYM neg 0 rlineto stroke } if %j=0,4,5=U,U+P,U+D } if %ILF=1 chromaticity diagram } for %KURV=1,KURVM } if %if KURVM>0 then KURVE } for %j=0,JPPM %end only for %j=0,4,5=U,N,W ILF 0 eq {X0t neg 0 translate} if -380 -280 translate showpage grestore %} for %xchart=0,15 %%Trailor