// 2002 May 23: derive color from normal. Anton Sherwood bronto@pobox.com #declare R2 = 0.299; // luminance values (`Y') taken from page 589 #declare G2 = 0.587; // Foley, Van Dam, Feiner & Hughes #declare B2 = 0.114; // Computer Graphics, Principles & Practice (2d ed.) #declare R1 = sqrt(R2); #declare G1 = sqrt(G2); #declare B1 = sqrt(B2); #declare Y1 = sqrt(R2+G2); #declare Rlayer = pigment { slope <-G1/Y1, R1, -B1*R1/Y1> color_map { [ 0 rgb <0,0,0> ] [ 1 rgb <3,0,0> ] } } #declare Glayer = pigment { slope color_map { [ 0 rgb <0,0,0> ] [ 1 rgb <0,3,0> ] } } #declare Blayer = pigment { slope <0,B1,Y1> color_map { [ 0 rgb <0,0,0> ] [ 1 rgb <0,0,3> ] } } #declare Tufte = pigment { average pigment_map { [1, Rlayer] [1, Glayer] [1, Blayer] } }