private static float hue2rgb(float m1, float m2, float h) {
        if (h < 0) h += 1;
        if (h > 1) h -= 1;
        if (h * 6f < 1) return m1 + (m2 - m1) * 6f * h;
        if (h * 2f < 1) return m2;
        if (h * 3f < 2) return m1 + (m2 - m1) * (2 / 3f - h) * 6f;
        return m1;
    }
private static float hue2rgb ( float m1 , float m2 , float h ) { if ( h < 0 ) h += 1 ; if ( h > 1 ) h -= 1 ; if ( h * 6f < 1 ) return m1 + ( m2 - m1 ) * 6f * h ; if ( h * 2f < 1 ) return m2 ; if ( h * 3f < 2 ) return m1 + ( m2 - m1 ) * ( 2 / 3f - h ) * 6f ; return m1 ; }
See http://www.w3.org/TR/css3-color/#hsl-color