Hola de nuevo, y ya considerando el hilo resuelto : dejo aqui este codigo para ilustrar la idea de delphius de usar el 'cubo' RGB e ir rotando un vector de color en el.
Código Delphi
[-]
procedure TForm1.FormPaint(Sender: TObject);
var
phi,rho : double;
m : integer;
r,g,b : integer;
x,y : integer;
begin
m := TrackBar1.Position;
phi := 0;
while phi < PI/2 do
begin
rho := 0;
while rho < PI/2 do
begin
r := Round(m*sin(phi)); g := Round(m*cos(phi)*cos(rho)); b := Round(m*cos(phi)*sin(rho));
canvas.Pixels[20+Round(rho*100),20+Round(phi*100)] := r*$01 + g*$0100 + b*$010000;
rho := rho + 0.01;
end;
phi := phi + 0.01;
end;
end;
procedure TForm1.TrackBar1Change(Sender: TObject);
begin
Paint;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
doublebuffered := true;
TrackBar1.Max := 255;
TrackBar1.Min := 0;
end;
PD: tremendo el codigo, cHackAll