.PS # hsv.m4 gen_init NeedDpicTools define grid { (($2)*boxwid,($1)*boxht) } r = 0 g = 0 b = 1 rgbtohsv(r,g,b,h,s,v) nstep = 4 { for j=0 to nstep do { sprintf("%g",j/nstep) at ((0.5+j)*boxwid,-boxht/2) below } } { "S" at ((0.5+nstep/2)*boxwid, -boxht) } { for i=0 to nstep do { sprintf("%g",i/nstep) at (-boxht/3,(i)*boxht) } } { "V" at (-boxht,(nstep/2)*boxht) \ "or" \ "L" } right_ for v = 0 to nstep do { { for s = 0 to nstep do { hsvtorgb(h,s/nstep,v/nstep,r,g,b) box shaded rgbstring(r,g,b) } } move up_ boxht; right_ } .PE