Class ColorUtilities


  • public class ColorUtilities
    extends Object

    ColorUtilities contains a set of tools to perform common color operations easily.

    Author:
    Romain Guy
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      static Color HSLtoRGB​(float h, float s, float l)
      Returns the RGB equivalent of a given HSL (Hue/Saturation/Luminance) color.
      static int[] HSLtoRGB​(float h, float s, float l, int[] rgb)
      Returns the RGB equivalent of a given HSL (Hue/Saturation/Luminance) color.
      static float[] RGBtoHSL​(int r, int g, int b)
      Returns the HSL (Hue/Saturation/Luminance) equivalent of a given RGB color.
      static float[] RGBtoHSL​(int r, int g, int b, float[] hsl)
      Returns the HSL (Hue/Saturation/Luminance) equivalent of a given RGB color.
      static float[] RGBtoHSL​(Color color)
      Returns the HSL (Hue/Saturation/Luminance) equivalent of a given RGB color.
      static float[] RGBtoHSL​(Color color, float[] hsl)
      Returns the HSL (Hue/Saturation/Luminance) equivalent of a given RGB color.
    • Method Detail

      • RGBtoHSL

        public static float[] RGBtoHSL​(Color color)

        Returns the HSL (Hue/Saturation/Luminance) equivalent of a given RGB color. All three HSL components are between 0.0 and 1.0.

        Parameters:
        color - the RGB color to convert
        Returns:
        a new array of 3 floats corresponding to the HSL components
      • RGBtoHSL

        public static float[] RGBtoHSL​(Color color,
                                       float[] hsl)

        Returns the HSL (Hue/Saturation/Luminance) equivalent of a given RGB color. All three HSL components are between 0.0 and 1.0.

        Parameters:
        color - the RGB color to convert
        hsl - a pre-allocated array of floats; can be null
        Returns:
        hsl if non-null, a new array of 3 floats otherwise
        Throws:
        IllegalArgumentException - if hsl has a length lower than 3
      • RGBtoHSL

        public static float[] RGBtoHSL​(int r,
                                       int g,
                                       int b)

        Returns the HSL (Hue/Saturation/Luminance) equivalent of a given RGB color. All three HSL components are between 0.0 and 1.0.

        Parameters:
        r - the red component, between 0 and 255
        g - the green component, between 0 and 255
        b - the blue component, between 0 and 255
        Returns:
        a new array of 3 floats corresponding to the HSL components
      • RGBtoHSL

        public static float[] RGBtoHSL​(int r,
                                       int g,
                                       int b,
                                       float[] hsl)

        Returns the HSL (Hue/Saturation/Luminance) equivalent of a given RGB color. All three HSL components are floats between 0.0 and 1.0.

        Parameters:
        r - the red component, between 0 and 255
        g - the green component, between 0 and 255
        b - the blue component, between 0 and 255
        hsl - a pre-allocated array of floats; can be null
        Returns:
        hsl if non-null, a new array of 3 floats otherwise
        Throws:
        IllegalArgumentException - if hsl has a length lower than 3
      • HSLtoRGB

        public static Color HSLtoRGB​(float h,
                                     float s,
                                     float l)

        Returns the RGB equivalent of a given HSL (Hue/Saturation/Luminance) color.

        Parameters:
        h - the hue component, between 0.0 and 1.0
        s - the saturation component, between 0.0 and 1.0
        l - the luminance component, between 0.0 and 1.0
        Returns:
        a new Color object equivalent to the HSL components
      • HSLtoRGB

        public static int[] HSLtoRGB​(float h,
                                     float s,
                                     float l,
                                     int[] rgb)

        Returns the RGB equivalent of a given HSL (Hue/Saturation/Luminance) color. All three RGB components are integers between 0 and 255.

        Parameters:
        h - the hue component, between 0.0 and 1.0
        s - the saturation component, between 0.0 and 1.0
        l - the luminance component, between 0.0 and 1.0
        rgb - a pre-allocated array of ints; can be null
        Returns:
        rgb if non-null, a new array of 3 ints otherwise
        Throws:
        IllegalArgumentException - if rgb has a length lower than 3