The Java Developers Almanac 1.4


Order this book from Amazon.

   
Home > List of Packages > java.awt  [78 examples] > Colors  [4 examples]

e585. Converting Between RGB and HSB Colors

This example demonstrates how to convert between a color value in RGB (three integer values in the range 0 to 255 representing red, green, and blue) and HSB (three floating point values in the range 0 to 1.0 representing hue, saturation, and brightness).
    // Specify 3 RGB values
    int red = 0x33;
    int green = 0x66;
    int blue = 0x99;
    
    // Convert RGB to HSB
    float[] hsb = Color.RGBtoHSB(red, green, blue, null);
    float hue = hsb[0];          // .58333
    float saturation = hsb[1];   // .66667
    float brightness = hsb[2];   // .6
    
    // Convert HSB to RGB value
    int rgb = Color.HSBtoRGB(hue, saturation, brightness);
    red = (rgb>>16)&0xFF;
    green = (rgb>>8)&0xFF;
    blue = rgb&0xFF;

 Related Examples
e582. Drawing with Color
e583. Drawing with a Gradient Color
e584. Retrieving a Predefined Color by Name

See also: Components    Containers    Cursors    Drawing    Events    Focus    Frames    GridBagLayout    Images    Shapes    Simulating Events    Text    The Screen   


© 2002 Addison-Wesley.