Class RadianceColorUtilities


  • public class RadianceColorUtilities
    extends java.lang.Object
    Various color-related utilities. This class is for internal use only.
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      static java.awt.Color deriveByBrightness​(java.awt.Color original, float brightnessFactor)  
      static java.awt.Color deriveByBrightness​(java.awt.Color original, java.awt.Color brightnessSource)
      Derives a color based on the original color and a brightness source.
      static java.lang.String encode​(int number)  
      static java.lang.String encode​(java.awt.Color color)  
      private static double EOCF_sRGB​(double srgb)  
      static java.awt.Color getAlphaColor​(java.awt.Color color, int alpha)
      Returns a translucent of the specified color.
      static java.awt.Color getBackgroundFillColor​(java.awt.Component component)
      Returns the background fill color of the specified component.
      static java.awt.Color getBackgroundFillColorScrollBar​(javax.swing.JScrollBar scrollbar)  
      static int getColorBrightness​(int rgb)
      Returns the brightness of the specified color.
      static float getColorStrength​(java.awt.Color color)
      Returns the color strength.
      static java.awt.Color getDarkerColor​(java.awt.Color color, double diff)
      Returns darker version of the specified color.
      private static javax.swing.plaf.ColorUIResource getDefaultBackgroundColor​(java.awt.Component comp, ComponentState compState)
      Returns the default background color for the specified component.
      static java.awt.Color getFocusColor​(java.awt.Component comp, TransitionAwareUI transitionAwareUI)
      Returns the color of the focus ring for the specified component.
      static java.awt.Color getForegroundColor​(java.awt.Component component, StateTransitionTracker.ModelStateInfo modelStateInfo)
      Returns the foreground text color of the specified component.
      static javax.swing.plaf.ColorUIResource getForegroundColor​(RadianceColorScheme scheme)
      Returns the foreground color of the specified color scheme.
      static java.awt.Color getHueShiftedColor​(java.awt.Color color, double hueShift)
      Returns hue-shifted (in HSV space) version of the specified color.
      private static int getInterpolatedChannelValue​(int value1, int value2, double value1Likeness)  
      static java.awt.Color getInterpolatedColor​(java.awt.Color color1, java.awt.Color color2, double color1Likeness)
      Interpolates color.
      static int getInterpolatedRGB​(java.awt.Color color1, java.awt.Color color2, double color1Likeness)
      Interpolates color.
      static java.awt.Color getLighterColor​(java.awt.Color color, double diff)
      Returns lighter version of the specified color.
      static java.awt.Color getMenuComponentForegroundColor​(javax.swing.JMenuItem menuComponent, StateTransitionTracker.ModelStateInfo modelStateInfo)
      Returns the foreground text color of the specified menu component.
      static int getNegativeColor​(int rgb)
      Returns a negative of the specified color.
      static java.awt.Color getSaturatedColor​(java.awt.Color color, double factor)
      Returns saturated version of the specified color.
      static java.awt.Color getStripedBackground​(javax.swing.JComponent component, int rowIndex)
      Returns the striped background for the specified component.
      static java.awt.Color invertColor​(java.awt.Color color)
      Inverts the specified color.
      private static double OECF_sRGB​(double linear)  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • RadianceColorUtilities

        public RadianceColorUtilities()
    • Method Detail

      • getInterpolatedRGB

        public static int getInterpolatedRGB​(java.awt.Color color1,
                                             java.awt.Color color2,
                                             double color1Likeness)
        Interpolates color.
        Parameters:
        color1 - The first color
        color2 - The second color
        color1Likeness - The closer this value is to 0.0, the closer the resulting color will be to color2.
        Returns:
        Interpolated RGB value.
      • getInterpolatedChannelValue

        private static int getInterpolatedChannelValue​(int value1,
                                                       int value2,
                                                       double value1Likeness)
      • OECF_sRGB

        private static double OECF_sRGB​(double linear)
      • EOCF_sRGB

        private static double EOCF_sRGB​(double srgb)
      • getInterpolatedColor

        public static java.awt.Color getInterpolatedColor​(java.awt.Color color1,
                                                          java.awt.Color color2,
                                                          double color1Likeness)
        Interpolates color.
        Parameters:
        color1 - The first color
        color2 - The second color
        color1Likeness - The closer this value is to 0.0, the closer the resulting color will be to color2.
        Returns:
        Interpolated color.
      • invertColor

        public static java.awt.Color invertColor​(java.awt.Color color)
        Inverts the specified color.
        Parameters:
        color - The original color.
        Returns:
        The inverted color.
      • getNegativeColor

        public static int getNegativeColor​(int rgb)
        Returns a negative of the specified color.
        Parameters:
        rgb - Color RGB.
        Returns:
        Negative of the specified color.
      • getAlphaColor

        public static java.awt.Color getAlphaColor​(java.awt.Color color,
                                                   int alpha)
        Returns a translucent of the specified color.
        Parameters:
        color - Color.
        alpha - Alpha channel value.
        Returns:
        Translucent of the specified color that matches the requested alpha channel value.
      • getSaturatedColor

        public static java.awt.Color getSaturatedColor​(java.awt.Color color,
                                                       double factor)
        Returns saturated version of the specified color.
        Parameters:
        color - Color.
        factor - Saturation factor.
        Returns:
        Saturated color.
      • getHueShiftedColor

        public static java.awt.Color getHueShiftedColor​(java.awt.Color color,
                                                        double hueShift)
        Returns hue-shifted (in HSV space) version of the specified color.
        Parameters:
        color - Color.
        hueShift - hue shift factor.
        Returns:
        Hue-shifted (in HSV space) color.
      • deriveByBrightness

        public static java.awt.Color deriveByBrightness​(java.awt.Color original,
                                                        java.awt.Color brightnessSource)
        Derives a color based on the original color and a brightness source. The resulting color has the same hue and saturation as the original color, but its brightness is shifted towards the brightness of the brightness source. Thus, a light red color shifted towards dark green will become dark red.
        Parameters:
        original - Original color.
        brightnessSource - Brightness source.
        Returns:
        Derived color that has the same hue and saturation as the original color, but its brightness is shifted towards the brightness of the brightness source.
      • deriveByBrightness

        public static java.awt.Color deriveByBrightness​(java.awt.Color original,
                                                        float brightnessFactor)
      • getForegroundColor

        public static javax.swing.plaf.ColorUIResource getForegroundColor​(RadianceColorScheme scheme)
        Returns the foreground color of the specified color scheme.
        Parameters:
        scheme - Color scheme.
        Returns:
        Color scheme foreground color.
      • getLighterColor

        public static java.awt.Color getLighterColor​(java.awt.Color color,
                                                     double diff)
        Returns lighter version of the specified color.
        Parameters:
        color - Color.
        diff - Difference factor (values closer to 1.0 will produce results closer to white color).
        Returns:
        Lighter version of the specified color.
      • getDarkerColor

        public static java.awt.Color getDarkerColor​(java.awt.Color color,
                                                    double diff)
        Returns darker version of the specified color.
        Parameters:
        color - Color.
        diff - Difference factor (values closer to 1.0 will produce results closer to black color).
        Returns:
        Darker version of the specified color.
      • getColorBrightness

        public static int getColorBrightness​(int rgb)
        Returns the brightness of the specified color.
        Parameters:
        rgb - RGB value of a color.
        Returns:
        The brightness of the specified color.
      • getFocusColor

        public static java.awt.Color getFocusColor​(java.awt.Component comp,
                                                   TransitionAwareUI transitionAwareUI)
        Returns the color of the focus ring for the specified component.
        Parameters:
        comp - Component.
        Returns:
        The color of the focus ring for the specified component.
      • getColorStrength

        public static float getColorStrength​(java.awt.Color color)
        Returns the color strength.
        Parameters:
        color - Color.
        Returns:
        Color strength.
      • getForegroundColor

        public static java.awt.Color getForegroundColor​(java.awt.Component component,
                                                        StateTransitionTracker.ModelStateInfo modelStateInfo)
        Returns the foreground text color of the specified component.
        Parameters:
        component - Component.
        modelStateInfo - Component model state info.
        Returns:
        The foreground text color of the specified component.
      • getMenuComponentForegroundColor

        public static java.awt.Color getMenuComponentForegroundColor​(javax.swing.JMenuItem menuComponent,
                                                                     StateTransitionTracker.ModelStateInfo modelStateInfo)
        Returns the foreground text color of the specified menu component.
        Parameters:
        menuComponent - Menu component.
        modelStateInfo - Model state info for the component.
        Returns:
        The foreground text color of the specified menu component.
      • getBackgroundFillColor

        public static java.awt.Color getBackgroundFillColor​(java.awt.Component component)
        Returns the background fill color of the specified component.
        Parameters:
        component - Component.
        Returns:
        The background fill color of the specified component.
      • getBackgroundFillColorScrollBar

        public static java.awt.Color getBackgroundFillColorScrollBar​(javax.swing.JScrollBar scrollbar)
      • getDefaultBackgroundColor

        private static javax.swing.plaf.ColorUIResource getDefaultBackgroundColor​(java.awt.Component comp,
                                                                                  ComponentState compState)
        Returns the default background color for the specified component.
        Parameters:
        comp - Component.
        compState - Component state.
        Returns:
        The default background color for the components of the specified class.
      • getStripedBackground

        public static java.awt.Color getStripedBackground​(javax.swing.JComponent component,
                                                          int rowIndex)
        Returns the striped background for the specified component. This method is relevant for components such as trees, tables and lists that use odd-even striping for the alternating rows.
        Parameters:
        component - Component.
        rowIndex - Row index.
        Returns:
        The striped background for the specified component.
      • encode

        public static java.lang.String encode​(int number)
      • encode

        public static java.lang.String encode​(java.awt.Color color)