%!PS-Adobe-3.0 EPSF-3.0 ggs60-3n.EPS 240701 %%BoundingBox: 70 82 415 320 %START PDFDE011.EPS /pdfmark03 where {pop} {userdict /pdfmark03 /cleartomark load put} ifelse /languagelevel where {pop languagelevel} {1} ifelse 2 lt { userdict (<<) cvn ([) cvn load put userdict (>>) cvn (]) cvn load put} if [/Title (PostScript pictures: farbe.li.tu-berlin.de/ggs6/ggs6.htm) /Author (compare K. Richter "Computergrafik ...": ISBN 3-8007-1775-1) /Subject (goto: http://farbe.li.tu-berlin.de or http://color.li.tu-berlin.de) /Keywords (image reproduction, colour devices) /Creator (klaus.richter@mac.com) /CreationDate (D:2024070112200) /ModDate (D:20240701112200) /DOCINFO pdfmark03 [ /View [ /Fit ] /DOCVIEW pdfmark03 %END PDFDE011 /FS {findfont exch scalefont setfont} bind def /MM {72 25.4 div mul} def /str {8 string} bind def /A4querL {598 0 translate 90 rotate} 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-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 %*********************************************************** /cvishow {0.5 add cvi 6 string cvs show} def /cvsshow1 {0.05 add 10 mul cvi 0.1 mul 7 string cvs show} def /cvsshow2 {0.005 add 100 mul cvi 0.01 mul 7 string cvs show} def /cvsshow3 {0.0005 add 1000 mul cvi 0.001 mul 7 string cvs show} def /RW {120 /Times-Roman FS} bind def /RV {150 /Times-Roman FS} bind def /RL {200 /Times-Roman FS} bind def /RIW {120 /Times-Italic FS} bind def /RIV {150 /Times-Italic FS} bind def /RIL {200 /Times-Italic FS} bind def /RBW {120 /Times-Bold FS} bind def /RBV {150 /Times-Bold FS} bind def /RBL {200 /Times-Bold FS} bind def /RBIW {120 /Times-BoldItalic FS} bind def /RBIV {150 /Times-BoldItalic FS} bind def /RBIL {200 /Times-BoldItalic FS} bind def /TW {120 /Times-ISOL1 FS} bind def /TV {150 /Times-ISOL1 FS} bind def /TL {200 /Times-ISOL1 FS} bind def /TIW {120 /TimesI-ISOL1 FS} bind def /TIV {150 /TimesI-ISOL1 FS} bind def /TIL {200 /TimesI-ISOL1 FS} bind def /TBW {120 /TimesB-ISOL1 FS} bind def /TBV {150 /TimesB-ISOL1 FS} bind def /TBL {200 /TimesB-ISOL1 FS} bind def /TBIW {120 /TimesBI-ISOL1 FS} bind def /TBIV {150 /TimesBI-ISOL1 FS} bind def /TBIL {200 /TimesBI-ISOL1 FS} bind def /SW {120 /Symbol FS} bind def /SV {150 /Symbol FS} bind def /SL {200 /Symbol FS} bind def /ishowRV {RW -00 -30 rmoveto show 00 30 rmoveto RV} def /jshowRV {RBW -00 -30 rmoveto show 00 30 rmoveto RBV} def /ishowTV {TW -00 -30 rmoveto show 00 30 rmoveto TV} def /jshowTV {TBW -00 -30 rmoveto show 00 30 rmoveto TBV} def /ishowRL {RV -00 -30 rmoveto show 00 30 rmoveto RL} def /jshowRL {RBV -00 -30 rmoveto show 00 30 rmoveto RBL} def /ishowTL {TV -00 -30 rmoveto show 00 30 rmoveto TL} def /jshowTL {TBV -00 -30 rmoveto show 00 30 rmoveto TBL} def /cvishow {cvi 6 string cvs show} def /cvsshow0 {10 mul 0.5 add cvi 0.1 mul 10 string cvs show} def /cvsshow1 {10 mul 0.5 add cvi 0.1 mul %new980310 dup 0 ge {( ) show} if dup abs 10 lt {( ) show} if 10 string cvs show} def /cvsshow2 {100 mul 0.5 add cvi 0.01 mul %new980310 dup 0 ge {( ) show} if dup abs 10 lt {( ) show} if 10 string cvs show} def /cvsshow3 {1000 mul 0.5 add cvi 0.001 mul 10 string cvs show} def /cvsshow1x {/nxx exch def %example nxx=99.1/99.0 nxx 10 mul cvi /nxi exch def %nxi=991/990 nxi 10 idiv /nxa exch def %nxa=99 nxi nxa 10 mul sub /nxb exch def %nxb=1/0 nxa cvishow (,) show %nxa=99 nxb cvishow %nxb=1/0 } def /cvsshow2x {/nxx exch def %example nxx=99.12/99,02/99,00 nxx 100 mul cvi /nxi exch def %nxi=9912/9902/00 nxi 100 idiv /nxa exch def %nxa=99 nxi nxa 100 mul sub /nxb exch def %nxb=12/02/00 nxa cvishow (,) show %nxb=99, nxb 10 ge {nxb cvishow} if %nxb=12 nxb 1 ge nxb 9 le and {(0) show nxb cvishow} if %nxb=02 nxb 0 eq {(00) show} if %nxb=00 } def /cvsshow3x {/nxx exch def %example nxx=99.123/99.012/99.001/99.000 nxx 1000 mul cvi /nxi exch def %nxi=99123/99012/99001/99000 nxi 1000 idiv /nxa exch def %nxa=99 nxi nxa 1000 mul sub /nxb exch def %nxb=123/012/001/000 nxa cvishow (,) show %nxb=99, nxb 100 ge {nxb cvishow} if %nxb=123/012/001/000 nxb 10 ge nxb 99 le and {(0) show nxb cvishow} if %nxb=012 nxb 1 ge nxb 9 le and {(00) show nxb cvishow} if %nxb=001 nxb 0 eq {(000) show} if %nxb=000 } def /cvishowr {dup 0 ge {0.5 add} {0.5 sub} ifelse cvi 6 string cvs show} 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 /cvsshow1g {/nxx exch def %example nxx=99,1/99,0 nxx 0 lt {(-) show /nxx nxx abs def} if nxx 10 mul cvi /nxi exch def %nxi=991/990 nxi 10 idiv /nxa exch def %nxa=99 nxi nxa 10 mul sub /nxb exch def %nxb=1/0 nxa cvishow (,) show %nxa=99 nxb cvishow %nxb=1/0 } def /cvsshow2g {/nxx exch def %example nxx=99.12/99,02/99,00 nxx 0 lt {(-) show /nxx nxx abs def} if nxx 100 mul cvi /nxi exch def %nxi=9912/9902/00 nxi 100 idiv /nxa exch def %nxa=99 nxi nxa 100 mul sub /nxb exch def %nxb=12/02/00 nxa cvishow (,) show %nxb=99, nxb 10 ge {nxb cvishow} if %nxb=12 nxb 1 ge nxb 9 le and {(0) show nxb cvishow} if %nxb=02 nxb 0 eq {(00) show} if %nxb=00 } def /cvsshow3g {/nxx exch def %example nxx=99.123/99.012/99.001/99.000 nxx 0 lt {(-) show /nxx nxx abs def} if nxx 1000 mul cvi /nxi exch def %nxi=99123/99012/99001/99000 nxi 1000 idiv /nxa exch def %nxa=99 nxi nxa 1000 mul sub /nxb exch def %nxb=123/012/001/000 nxa cvishow (,) show %nxb=99, nxb 100 ge {nxb cvishow} if %nxb=123/012/001/000 nxb 10 ge nxb 99 le and {(0) show nxb cvishow} if %nxb=012 nxb 1 ge nxb 9 le and {(00) show nxb cvishow} if %nxb=001 nxb 0 eq {(000) show} if %nxb=000 } def /tfw {1 setgray} def /tfn {0 setgray} def /tfo {1 0 0 setrgbcolor} def /tfl {0 1 0 setrgbcolor} def /tfv {0 0 1 setrgbcolor} def /tfc {0 1 1 setrgbcolor} def /tfm {1 0 1 setrgbcolor} def /tfy {1 1 0 setrgbcolor} def %********************************************************************* %%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 /showfr {2 lanind eq {show} {pop} ifelse} bind def /showes {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 /showm {6 lanind eq {show} {pop} ifelse} bind def %default values /lanind1 0 def /lanind2 0 def /lanindd 01 def /lanindm 01 def /colorm1 00 def /colorm2 00 def /colormd 01 def /colormm 01 def /deintp1 00 def /deintp2 00 def /deintpd 01 def /deintpm 01 def /xcolor1 03 def /xcolor2 03 def /xcolord 01 def /xcolorm 01 def /xchart1 00 def /xchart2 00 def /xchartd 01 def /xchartm 01 def /pchart1 00 def /pchart2 02 def /pchartd 01 def /pchartm 01 def /colsep1 00 def /colsep2 00 def /colsepd 01 def /colsepm 01 def /pmetam1 00 def /pmetam2 00 def /pmetamd 01 def /pmetamm 01 def /xchart3 00 def /xchart4 00 def /xchart5 00 def %usual change of default values /lanindf where {pop /lanind1 lanindf def /lanind2 lanindf def /lanindd laninddf def /lanindm lanindmf def} if /colormf where {pop /colorm1 colormf def /colorm2 colormf def /colormd colormdf def /colormm colormmf def} if /deintpf where {pop /deintp1 deintpf def /deintp2 deintpf def /deintpd deintpdf def /deintpm deintpmf def} if /xcolorf where {pop /xcolor1 xcolorf def /xcolor2 xcolorf def /xcolord xcolordf def /xcolorm xcolormf def} if /xchartf where {pop /xchart1 xchartf def /xchart2 xchartf def /xchartd xchartdf def /xchartm xchartmf def} if /pchartf where {pop /pchart1 pchartf def /pchart2 pchartf def /pchartd pchartdf def /pchartm pchartmf def} if /colsepf where {pop /colsep1 colsepf def /colsep2 colsepf def /colsepd colsepdf def /colsepm colsepmf def} if /pmetamf where {pop /pmetam1 pmetamf def /pmetam2 pmetamf def /pmetamd pmetamdf def /pmetamm pmetammf def} if /xchart3f where {pop /xchart3 xchart3f def} if /xchart4f where {pop /xchart4 xchart4f def} if /xchart5f where {pop /xchart5 xchart5f 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 where {pop %/IMES IMES def } {/IMES 0 def} ifelse /gammaFi 21 array def /gammaFi %rel. gamma according to ISO 9240-306:2018 %0/8 1/9 2/10 3/11 4/12 5/13 6/14 7/15 [0.475 0.550 0.625 0.700 0.775 0.849 0.924 1.000 1.000 1.081 1.176 1.290 1.428 1.600 1.818 2.105 %additional gammaFi 16 17 18 19 20 2.000 0.500 1.500 0.666 1.000] def 72 90 translate 0.020 MM dup scale %attention different scale 20 setlinewidth 0 setgray RW 100 -110 moveto (ggs60-3n) show 1 setgray 0 0 moveto 6000 0 rlineto 0 4000 rlineto %relatives Bildfeld 60 x 85mm -6000 0 rlineto closepath fill 0 setgray 0 0 moveto 6000 0 rlineto 0 4000 rlineto %relatives Bildfeld 60 x 85mm -6000 0 rlineto closepath stroke /xdd 050 def /ydd 200 def xdd 3820 moveto TBL 0 setgray (Table xyreh_256 for fast calculation of inverse data xyinh256) showen (Tabelle xyreh_256 f\374r schnelle Berechnung inverser Daten xyinh256) showde /xredj 257 array def /yredj 257 array def /xrehj 257 array def /yrehj 257 array def /xinhj 257 array def /yinhj 257 array def /gamma 2.000 def %calculation of the table xyreh256 (h=hex) of real values (reh) with gamma %default gamma=2,0 for k=1 0 1 255 {/j exch def %j=0,255 xredj j j 255 div cvi put yredj j xredj j get gamma exp 255 mul put xrehj j j put yrehj j j 255 div gamma exp 255 mul put } for %j=0,255 xredj 256 xredj 255 get put %necessary for plot yredj 256 yredj 255 get put xrehj 256 xrehj 255 get put %necessary for plot yrehj 256 yrehj 255 get put /yw0 3650 def TBV xdd yw0 moveto (Table xreh_yred_256, real data in hex (h, 0:255) ) showen (for output linearization, ) showen (Tabelle xreh_yred_256, reale Daten hex (h, 0:255) ) showde (f\374r Ausgabelinearisierung, ) showde 1 0 0 setrgbcolor (gamma=) show gamma cvsshow3g 0 setgray /ydd 120 def /yw1 yw0 1.1 ydd mul sub def TBW 0 1 255 {/j exch def %j=0,256 /j0 j 10 idiv def /jd j j0 10 mul sub def xdd jd 600 mul add yw1 j0 ydd mul sub moveto xrehj j get cvishow ( ) show yrehj j get cvishow } for /yw2 yw0 27.5 ydd mul sub def TBV xdd yw2 moveto (Tables xreh_yreh_009, xred_yred_009, real data in hex (h, 0:255) and decimal (d, 0:1,000)) showen (Tabellen xreh_yreh_009, xred_yred_009, reale Daten hex (h, 0:255) und dezimal (d, 0:1,000)) showde /yw3 yw0 28.6 ydd mul sub def /yw5 yw0 29.6 ydd mul sub def TBW 0 32 256 {/j exch def %j=0,32,256 /j0 j 32 idiv def xdd j0 660 mul add yw3 moveto xrehj j get cvishow ( ) show yrehj j get cvishow xdd j0 660 mul add yw5 moveto xrehj j get 255 div cvsshow3g ( ) show yrehj j get 255 div cvsshow3g } for %procedure calculation of invers values in hex for real values in hex %xrehj, yrehj -> xinhj, yinhj %use of the table data xyreh257 (h=hex) of real values (reh) with gamma /FF_LM_inversh %BEG /FF_LM_inversh 240715 {/yreh exch def %50<= yreh <=255 xinhj j yrehj yreh get put yinhj j xrehj yreh get put yinhj j get } def %END /FF_LM_inversh 240705 /xindi 9 array def /yindi 9 array def %output table xyinh009 (h=hex) for xrehj, yrehj with xrehj j get = j! /yw1 1000 def 0 32 256 {/j exch def %j=1,32,256 xrehj j get FF_LM_inversh %available xinhj, yinhj=xrehj /i j 32 div cvi def %0,1,2,,8 xindi i xinhj j get 255 div put yindi i yinhj j get 255 div put } for %j=1,32,256 showpage grestore %%Trailer