procedure HSV_To_RGB(var r,g,b:real; h,s,v:real); begin if s = 0 then if h = UNDEFINED then begin r:=v; g:=v; b:=v end else ERROR else begin if h = 360 then h:=0; h:=h/360; i:=Floor(h) { Floor(h) vrne najvecje celo stevilo } f:=h-i; { ki je manjse ali enako h } p:=v*(1-s); q:=v*(1-(s*f)); t:=v*(1-(s*(1-f))) case i of 0 : (r,g,b):=(v,t,p); 1 : (r,g,b):=(q,v,p); 2 : (r,g,b):=(p,v,t); 3 : (r,g,b):=(p,q,v); 4 : (r,g,b):=(t,p,v); 5 : (r,g,b):=(v,p,q) end end end