Class LinearColorInterpolator

java.lang.Object
org.biojava.nbio.structure.gui.util.color.LinearColorInterpolator
All Implemented Interfaces:
ColorInterpolator

public class LinearColorInterpolator extends Object implements ColorInterpolator
Author:
Spencer Bliven
  • Constructor Details

    • LinearColorInterpolator

      public LinearColorInterpolator()
    • LinearColorInterpolator

      public LinearColorInterpolator(ColorSpace colorSpace)
  • Method Details

    • interpolate

      public Color interpolate(Color a, Color b, float mixing)
      Interpolates to a color between a and b
      Specified by:
      interpolate in interface ColorInterpolator
      Parameters:
      a - First color
      b - Second color
      mixing - Mixing coefficient; the fraction of a in the result.
      Returns:
      The color between a and b
      Throws:
      IllegalArgumentException - if mixing is not between 0 and 1
      See Also:
    • setColorSpace

      public void setColorSpace(ColorSpace colorSpace, LinearColorInterpolator.InterpolationDirection[] dir)
      Sets the ColorSpace to use for interpolation. The most common scheme for color spaces is to use linear components between 0 and 1 (for instance red,green,blue). For such a component, a linear interpolation between two colors is used. Sometimes a component may be in cylindrical coordinates. In this case, the component can be mapped in a number of ways. These are set by InterpolationDirections.
      Parameters:
      colorSpace - The color space for interpolation
      interpDirection - An array of size colorSpace.getNumComponents() giving the interpolation direction for each component.
    • setColorSpace

      public void setColorSpace(ColorSpace colorSpace)
    • setInterpolationDirection

      public void setInterpolationDirection(int componentIndex, LinearColorInterpolator.InterpolationDirection dir)