org.geotools.renderer.lite.gridcoverage2d
Class LinearColorMap

Object
  extended by AbstractCollection<E>
      extended by AbstractList<LinearColorMapElement>
          extended by LinearColorMap
All Implemented Interfaces:
Iterable<LinearColorMapElement>, Collection<LinearColorMapElement>, List<LinearColorMapElement>, Domain1D<LinearColorMapElement>, PiecewiseTransform1D<LinearColorMapElement>, ColorMapTransform<LinearColorMapElement>, MathTransform, MathTransform1D

public final class LinearColorMap
extends AbstractList<LinearColorMapElement>
implements ColorMapTransform<LinearColorMapElement>

Author:
Simone Giannecchini, GeoSolutions.

Nested Class Summary
static class LinearColorMap.LinearColorMapType
           
 
Field Summary
 
Fields inherited from class AbstractList
modCount
 
Constructor Summary
LinearColorMap(CharSequence name, LinearColorMapElement[] standardElements)
          Constructor which creates a LinearColorMap without a NoDataCategory.
LinearColorMap(CharSequence name, LinearColorMapElement[] standardElements, Color defColor)
           
LinearColorMap(CharSequence name, LinearColorMapElement[] standardElements, LinearColorMapElement[] preFilteringElements, Color defaultColor)
           
LinearColorMap(String string, LinearColorMapElement[] linearColorMapElements, LinearColorMapElement[] linearColorMapElements2)
           
 
Method Summary
 Matrix derivative(DirectPosition point)
           
 double derivative(double value)
           
 boolean equals(Object o)
           
 LinearColorMapElement findDomainElement(double sample)
          Returns the DomainElement1D of the specified sample value.
 LinearColorMapElement get(int index)
           
 NumberRange<?> getApproximateDomainRange()
          Returns the range of values in this Domain1D.
 IndexColorModel getColorModel()
          Returns a color model for this category list.
 double getDefaultValue()
          The default value which will be returned when asked to transform a value outside the valid domain elements.
 LinearColorMapElement[] getDomainElements()
           
 InternationalString getName()
          Returns the name of this object.
 SampleModel getSampleModel(int width, int height)
          Retrieve the SampleModel associated to this ColorMapTransform.
 int getSourceDimensions()
           
 int getTargetDimensions()
           
 boolean hasDefaultValue()
          Indicates whether or not this PiecewiseTransform1D has a default value which will be returned when asked to transform a value outside the valid domain elements.
 boolean hasGaps()
          Tell us if there is a gap in this Domain1D which means a range where no DomainElement1D is defined.
 int hashCode()
           
 MathTransform1D inverse()
           
 boolean isIdentity()
           
 int size()
           
 String toWKT()
           
 DirectPosition transform(DirectPosition ptSrc, DirectPosition ptDst)
           
 double transform(double value)
           
 void transform(double[] srcPts, int srcOff, double[] dstPts, int dstOff, int numPts)
           
 void transform(double[] srcPts, int srcOff, float[] dstPts, int dstOff, int numPts)
           
 void transform(float[] srcPts, int srcOff, double[] dstPts, int dstOff, int numPts)
           
 void transform(float[] srcPts, int srcOff, float[] dstPts, int dstOff, int numPts)
           
 
Methods inherited from class AbstractList
add, add, addAll, clear, indexOf, iterator, lastIndexOf, listIterator, listIterator, remove, removeRange, set, subList
 
Methods inherited from class AbstractCollection
addAll, contains, containsAll, isEmpty, remove, removeAll, retainAll, toArray, toArray, toString
 
Methods inherited from class Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface List
add, add, addAll, addAll, clear, contains, containsAll, indexOf, isEmpty, iterator, lastIndexOf, listIterator, listIterator, remove, remove, removeAll, retainAll, set, subList, toArray, toArray
 

Constructor Detail

LinearColorMap

public LinearColorMap(CharSequence name,
                      LinearColorMapElement[] standardElements)
Constructor which creates a LinearColorMap without a NoDataCategory. Keep in mind that if the list has gaps, if you try to transform a value that falls into a gap you'll get a nice TransformException!

Parameters:
categories - the array of a categories to use for this LinearColorMap.

LinearColorMap

public LinearColorMap(CharSequence name,
                      LinearColorMapElement[] standardElements,
                      Color defColor)

LinearColorMap

public LinearColorMap(CharSequence name,
                      LinearColorMapElement[] standardElements,
                      LinearColorMapElement[] preFilteringElements,
                      Color defaultColor)

LinearColorMap

public LinearColorMap(String string,
                      LinearColorMapElement[] linearColorMapElements,
                      LinearColorMapElement[] linearColorMapElements2)
Method Detail

getColorModel

public IndexColorModel getColorModel()
Returns a color model for this category list. This method builds up the color model from each category's colors (as returned by #getColors ).

Specified by:
getColorModel in interface ColorMapTransform<LinearColorMapElement>
Parameters:
visibleBand - The band to be made visible (usually 0). All other bands, if any will be ignored.
numBands - The number of bands for the color model (usually 1). The returned color model will renderer only the visibleBand and ignore the others, but the existence of all numBands will be at least tolerated. Supplemental bands, even invisible, are useful for processing with Java Advanced Imaging.
Returns:
The requested color model, suitable for RenderedImage objects with values in the #getRange range.
UML property:
name="colorModel"

getSampleModel

public SampleModel getSampleModel(int width,
                                  int height)
Description copied from interface: ColorMapTransform
Retrieve the SampleModel associated to this ColorMapTransform.

Specified by:
getSampleModel in interface ColorMapTransform<LinearColorMapElement>
Returns:

get

public LinearColorMapElement get(int index)
Specified by:
get in interface List<LinearColorMapElement>
Specified by:
get in class AbstractList<LinearColorMapElement>

size

public int size()
Specified by:
size in interface Collection<LinearColorMapElement>
Specified by:
size in interface List<LinearColorMapElement>
Specified by:
size in class AbstractCollection<LinearColorMapElement>

getDefaultValue

public double getDefaultValue()
Description copied from interface: PiecewiseTransform1D
The default value which will be returned when asked to transform a value outside the valid domain elements.

In case PiecewiseTransform1D.hasDefaultValue() return false this value has no meaning.

Specified by:
getDefaultValue in interface PiecewiseTransform1D<LinearColorMapElement>
Returns:
The default value which will be returned when asked to transform a value outside the valid domain elements.

hasDefaultValue

public boolean hasDefaultValue()
Description copied from interface: PiecewiseTransform1D
Indicates whether or not this PiecewiseTransform1D has a default value which will be returned when asked to transform a value outside the valid domain elements.

Specified by:
hasDefaultValue in interface PiecewiseTransform1D<LinearColorMapElement>
Returns:
a boolean to indicate whether or not this PiecewiseTransform1D has a default value.

getApproximateDomainRange

public NumberRange<?> getApproximateDomainRange()
Description copied from interface: Domain1D
Returns the range of values in this Domain1D. This is the union of the range of values of every Domain1D.

Specified by:
getApproximateDomainRange in interface Domain1D<LinearColorMapElement>
Returns:
The range of values.

findDomainElement

public LinearColorMapElement findDomainElement(double sample)
Description copied from interface: Domain1D
Returns the DomainElement1D of the specified sample value. If no DomainElement1D fits, then this method returns null.

Specified by:
findDomainElement in interface Domain1D<LinearColorMapElement>
Parameters:
sample - The value.
Returns:
The domain element of the supplied value, or null.

getDomainElements

public LinearColorMapElement[] getDomainElements()

getName

public InternationalString getName()
Description copied from interface: Domain1D
Returns the name of this object. The default implementation returns the name of what seems to be the "main" domain element (i.e. the domain element with the widest range of values).

Specified by:
getName in interface Domain1D<LinearColorMapElement>
Returns:
UML property:
name="name"

hasGaps

public boolean hasGaps()
Description copied from interface: Domain1D
Tell us if there is a gap in this Domain1D which means a range where no DomainElement1D is defined.

Specified by:
hasGaps in interface Domain1D<LinearColorMapElement>
Returns:
true in case a gap exists, false otherwise.

derivative

public double derivative(double value)
                  throws TransformException
Specified by:
derivative in interface MathTransform1D
Throws:
TransformException

transform

public double transform(double value)
                 throws TransformException
Specified by:
transform in interface MathTransform1D
Throws:
TransformException

derivative

public Matrix derivative(DirectPosition point)
                  throws MismatchedDimensionException,
                         TransformException
Specified by:
derivative in interface MathTransform
Throws:
MismatchedDimensionException
TransformException

getSourceDimensions

public int getSourceDimensions()
Specified by:
getSourceDimensions in interface MathTransform

getTargetDimensions

public int getTargetDimensions()
Specified by:
getTargetDimensions in interface MathTransform

inverse

public MathTransform1D inverse()
                        throws NoninvertibleTransformException
Specified by:
inverse in interface MathTransform
Specified by:
inverse in interface MathTransform1D
Throws:
NoninvertibleTransformException

isIdentity

public boolean isIdentity()
Specified by:
isIdentity in interface MathTransform

toWKT

public String toWKT()
             throws UnsupportedOperationException
Specified by:
toWKT in interface MathTransform
Throws:
UnsupportedOperationException

transform

public DirectPosition transform(DirectPosition ptSrc,
                                DirectPosition ptDst)
                         throws MismatchedDimensionException,
                                TransformException
Specified by:
transform in interface MathTransform
Throws:
MismatchedDimensionException
TransformException

transform

public void transform(double[] srcPts,
                      int srcOff,
                      double[] dstPts,
                      int dstOff,
                      int numPts)
               throws TransformException
Specified by:
transform in interface MathTransform
Throws:
TransformException

transform

public void transform(float[] srcPts,
                      int srcOff,
                      float[] dstPts,
                      int dstOff,
                      int numPts)
               throws TransformException
Specified by:
transform in interface MathTransform
Throws:
TransformException

transform

public void transform(float[] srcPts,
                      int srcOff,
                      double[] dstPts,
                      int dstOff,
                      int numPts)
               throws TransformException
Throws:
TransformException

transform

public void transform(double[] srcPts,
                      int srcOff,
                      float[] dstPts,
                      int dstOff,
                      int numPts)
               throws TransformException
Throws:
TransformException

equals

public boolean equals(Object o)
Specified by:
equals in interface Collection<LinearColorMapElement>
Specified by:
equals in interface List<LinearColorMapElement>
Overrides:
equals in class AbstractList<LinearColorMapElement>

hashCode

public int hashCode()
Specified by:
hashCode in interface Collection<LinearColorMapElement>
Specified by:
hashCode in interface List<LinearColorMapElement>
Overrides:
hashCode in class AbstractList<LinearColorMapElement>


Copyright © 1996-2009 Geotools. All Rights Reserved.