Встала такая задача: конвертировать во флеше из HSB в RGB.
Вот накидал немного, работает, но не совсем правильно. Вот спрашиваю совета.

Код AS1/AS2:
function hsb(h,s,v){
s=s/100;
v=v/100;
k=Math.ceil(h/60)%6;
f=h/60-Math.ceil(h/60);
p=v*(1-s);
q=v*(1-f*s);
t=v*(1-(1-f)*s);
if(k==0){
r=v; g=t; b=p;
}
if(k==1){
r=q; g=v; b=p;
}
if(k==2){
r=p; g=v; b=t;
}
if(k==3){
r=p; g=q; b=v;
}
if(k==4){
r=t; g=p; b=v;
}
if(k==5){
r=v; g=p; b=q;
}
r=Number(Math.round(r*255)).toString(16);
g=Number(Math.round(g*255)).toString(16);
b=Number(Math.round(b*255)).toString(16);
if(r.length==1){
r=r+r;
}
if(g.length==1){
g=g+g;
}
if(b.length==1){
b=b+b;
}
color="0x"+r+g+b;
return color;
}
this.createEmptyMovieClip("triangle_mc", 1);
triangle_mc.beginFill(hsb(155,81,84), 100);
triangle_mc.moveTo(200, 200);
triangle_mc.lineTo(300, 300);
triangle_mc.lineTo(100, 300);
triangle_mc.lineTo(200, 200);
triangle_mc.endFill();
PS.
по поводу формулы конвертации можно глянуть
тут