Skip to content

Instantly share code, notes, and snippets.

@potix2
Created September 15, 2011 01:50
Show Gist options
  • Save potix2/1218324 to your computer and use it in GitHub Desktop.
Save potix2/1218324 to your computer and use it in GitHub Desktop.
HSV to RGB
public function toRGB(h:Number, s:Number, v:Number):uint {
var hi:Number = Math.floor(h / 60) % 6;
var f:Number = h / 60 - hi;
var p:Number = v * ( 1.0 - s);
var q:Number = v * ( 1.0 - f * s);
var t:Number = v * ( 1.0 - (1.0 - f) * s);
var r:Number;
var g:Number;
var b:Number;
switch(hi) {
case 0:
r = v; g = t; b = p;
break;
case 1:
r = q; g = v; b = p;
break;
case 2:
r = p; g = v; b = t;
break;
case 3:
r = p; g = q; b = v;
break;
case 4:
r = t; g = p; b = v;
break;
case 5:
r = v; g = p; b = q;
break;
}
return 0xFF000000 | Math.ceil(r * 255) << 16 | Math.ceil(g * 255) << 8 | Math.ceil(b * 255);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment