Class AbstractColorMap

    • Field Detail

      • direction

        protected boolean direction
    • Constructor Detail

      • AbstractColorMap

        public AbstractColorMap()
    • Method Detail

      • getColor

        public abstract Color getColor​(double x,
                                       double y,
                                       double z,
                                       double zMin,
                                       double zMax)
        Specified by:
        getColor in interface IColorMap
      • setDirection

        public void setDirection​(boolean isStandard)
        Description copied from interface: IColorMap
        Indicates if the colormap use the standard or reverted color direction
        Specified by:
        setDirection in interface IColorMap
      • getDirection

        public boolean getDirection()
        Specified by:
        getDirection in interface IColorMap
        Returns:
        the colormap direction: true if standard, false if reverted.
      • getColor

        public Color getColor​(IColorMappable colorable,
                              double x,
                              double y,
                              double z)
        Description copied from interface: IColorMap
        Computes the color of a IColorMappable object according to the Z value of each of its components.
        Specified by:
        getColor in interface IColorMap
        Parameters:
        colorable - A ColorMappable object.
        Returns:
        a color for the given point.
      • processRelativeZValue

        protected double processRelativeZValue​(double z,
                                               double zMin,
                                               double zMax)
        Compute a value in [0;1] to pick a color in a [0;1] color range. Basically normalize the z value in its original range to the color range.
        Returns:
        (z - zMin) / (zMax - zMin) OR (zMax - z) / (zMax - zMin) OR 1 OR 0
      • getColor

        public Color getColor​(IColorMappable colorable,
                              double z)
        Specified by:
        getColor in interface IColorMap
        Parameters:
        colorable - A ColorMappable object.
        z - the variable that is Color-dependent, and can be independent of the coordinates.
        Returns:
        a color for the given point.
      • colorComponentRelative

        public double colorComponentRelative​(double value,
                                             double center,
                                             double topwidth,
                                             double bottomwidth)
        Description copied from interface: IColorMap
        Return the influence of a color, by comparing the input value to the color spectrum. The design of a colormap implies defining the influence of each base color (red, green, and blue) over the range of input data. For this reason, the value given to this function is a number between 0 and 1, indicating the position of the input value in the colormap. Any value standing outside of colormap boundaries should have the "maximal" or "minimal" color. Exemple: A rainbow colormap is a progressive transition from blue, to green and red. The mix between these 3 colors, may be expressed by the definition of 3 functions:
         
               blue     green     red
             /-------\/-------\/-------\
            /        /\       /\        \
           /        /  \     /  \        \
          /        /    \   /    \        \  
         |----------------|----------------|
         0               0.5               1
         
         
        In order to get the color of an input value standing between 0 and 1, the user should call:
         
         float blue  = (float) colorComponentRelative( rel_value, 0.25, 0.25, 0.75 );
         float green = (float) colorComponentRelative( rel_value, 0.50, 0.25, 0.75 );
         float red   = (float) colorComponentRelative( rel_value, 0.75, 0.25, 0.75 );
         
         return new Color4f( red, green, blue, 1.0f );
         
         
        Specified by:
        colorComponentRelative in interface IColorMap
        Returns:
        color influence.
      • colorComponentRelativeNoLeftBorder

        public double colorComponentRelativeNoLeftBorder​(double value,
                                                         double center,
                                                         double topwidth,
                                                         double bottomwidth)
      • colorComponentRelativeNoRightBorder

        public double colorComponentRelativeNoRightBorder​(double value,
                                                          double center,
                                                          double topwidth,
                                                          double bottomwidth)
      • colorComponentAbsolute

        public double colorComponentAbsolute​(double value,
                                             double bLeft,
                                             double bRight,
                                             double tLeft,
                                             double tRight)
        Description copied from interface: IColorMap
        Defines a simple function for a color. Between bLeft and tLeft, as well as tRight and bRight, the output value is a linear interpolation between 0 and 1.
         
                              tLeft       tRight
                                /-----------\
                               /             \ 
                              /               \
                      -------|-----------------|--------
                            bLeft            bRight  
         
         
        Specified by:
        colorComponentAbsolute in interface IColorMap
        bLeft - under this value, the color is 0
        bRight - up to this value, the color is 0
        tLeft - from this value until @link tRight, the color is 1
        tRight - from @link tLeft until this value, the color is 1
        Returns:
        color