visad
Class SampledSet

java.lang.Object
  extended by visad.ThingImpl
      extended by visad.DataImpl
          extended by visad.Set
              extended by visad.SimpleSet
                  extended by visad.SampledSet
All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable, Data, SampledSetIface, SetIface, SimpleSetIface, Thing
Direct Known Subclasses:
GriddedSet, IrregularSet, ProductSet, SingletonSet, UnionSet

public abstract class SampledSet
extends SimpleSet
implements SampledSetIface

SampledSet is the abstract superclass of GriddedSets, PolyCells and MultiCells. SampledSet objects are intended to be immutable (but see getSamples(boolean) for an exception).

See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class visad.DataImpl
DataImpl.Syncher
 
Field Summary
 
Fields inherited from interface visad.Data
ABS, ACOS, ACOS_DEGREES, ADD, ASIN, ASIN_DEGREES, ATAN, ATAN_DEGREES, ATAN2, ATAN2_DEGREES, CEIL, COS, COS_DEGREES, DEGREES_TO_RADIANS, DEPENDENT, DIVIDE, EXP, FLOOR, INDEPENDENT, INV_ATAN2, INV_ATAN2_DEGREES, INV_DIVIDE, INV_POW, INV_REMAINDER, INV_SUBTRACT, LOG, MAX, MIN, MULTIPLY, NEAREST_NEIGHBOR, NEGATE, NO_ERRORS, NOP, POW, RADIANS_TO_DEGREES, REMAINDER, RINT, ROUND, SIN, SIN_DEGREES, SQRT, SUBTRACT, TAN, TAN_DEGREES, WEIGHTED_AVERAGE
 
Constructor Summary
SampledSet(MathType type)
           
SampledSet(MathType type, CoordinateSystem coord_sys, Unit[] units, ErrorEstimate[] errors)
           
SampledSet(MathType type, int manifold_dimension)
           
SampledSet(MathType type, int manifold_dimension, CoordinateSystem coord_sys, Unit[] units, ErrorEstimate[] errors)
           
 
Method Summary
 java.lang.Object clone()
          Clones this instance.
 DataShadow computeRanges(ShadowType type, DataShadow shadow)
          recursive version of computeRanges; would like 'default' visibility here, but must be declared 'public' because it is defined in the Data interface
 DataShadow computeRanges(ShadowType type, DataShadow shadow, double[][] ranges, boolean domain)
          this default does not set ranges - it is used by FloatSet and DoubleSet
 void cram_missing(boolean[] range_select)
           
 float[] getHi()
          Returns the maximum sample values.
 float[] getLow()
          Returns the minimum sample values.
 void getNeighbors(int[][] neighbors, float[][] weights)
           
 float[][] getSamples()
          Returns a copy of the samples of this instance.
 float[][] getSamples(boolean copy)
          Returns the samples of this instance or a copy of the samples.
 boolean isMissing()
          a method to tell whether data object has a missing value
 VisADGeometryArray make1DGeometry(byte[][] color_values)
          create a 1-D GeometryArray from this Set and color_values; only used by Irregular3DSet and Gridded3DSet
 VisADGeometryArray[] make3DGeometry(byte[][] color_values)
          create a 3-D GeometryArray from this Set and color_values; NOTE - this version only makes points; NOTE - when textures are supported by Java3D the Gridded3DSet implementation of make3DGeometry should use Texture3D, and the Irregular3DSet implementation should resample to a Gridded3DSet and use Texture3D; only used by Irregular3DSet and Gridded3DSet
 VisADGeometryArray makePointGeometry(byte[][] color_values)
          create a PointArray from this Set and color_values; can be applied to ManifoldDimension = 1, 2 or 3
static void setGeometryArray(VisADGeometryArray array, float[][] samples, int color_length, byte[][] color_values)
          copy and transpose samples and color_values into array; if color_length == 3 don't use color_values[3]
 void setGeometryArray(VisADGeometryArray array, int color_length, byte[][] color_values)
          copy and transpose Samples (from this Set( and color_values into array; if color_length == 3 don't use color_values[3]
 
Methods inherited from class visad.SimpleSet
getManifoldDimension, valueToInterp
 
Methods inherited from class visad.Set
__getitem__, __len__, addEqualsCache, addNotEqualsCache, cloneButType, copyDoubles, copyFloats, doubleToFloat, doubleToIndex, equals, equalUnitAndCS, floatToDouble, getCoordinateSystem, getDimension, getDoubles, getDoubles, getLength, getNeighbors, getNeighbors, getSetErrors, getSetUnits, getWedge, indexToDouble, indexToValue, longString, longString, main, make2DGeometry, makeIsoLines, makeIsoSurface, makeSpatial, merge1DSets, testEqualsCache, testNotEqualsCache, unitAndCSHashCode, valueToIndex
 
Methods inherited from class visad.DataImpl
__add__, __add__, __div__, __div__, __mod__, __mod__, __mul__, __mul__, __neg__, __pow__, __pow__, __sub__, __sub__, abs, abs, acos, acos, acosDegrees, acosDegrees, add, add, adjustSamplingError, asin, asin, asinDegrees, asinDegrees, atan, atan, atan2, atan2, atan2Degrees, atan2Degrees, atanDegrees, atanDegrees, binary, binary, ceil, ceil, changeMathType, computeRanges, computeRanges, cos, cos, cosDegrees, cosDegrees, dataClone, divide, divide, exp, exp, floor, floor, getType, local, log, log, max, max, min, min, multiply, multiply, negate, negate, notifyReferences, pow, pow, remainder, remainder, rint, rint, round, round, sin, sin, sinDegrees, sinDegrees, sqrt, sqrt, subtract, subtract, tan, tan, tanDegrees, tanDegrees, toString, unary, unary
 
Methods inherited from class visad.ThingImpl
addReference, removeReference
 
Methods inherited from class java.lang.Object
finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface visad.SimpleSetIface
valueToInterp
 
Methods inherited from interface visad.SetIface
cloneButType, doubleToIndex, equals, equalUnitAndCS, getCoordinateSystem, getDimension, getDoubles, getDoubles, getLength, getManifoldDimension, getNeighbors, getNeighbors, getSetErrors, getSetUnits, getWedge, indexToDouble, indexToValue, make2DGeometry, makeIsoLines, makeIsoSurface, makeSpatial, merge1DSets, valueToIndex
 
Methods inherited from interface visad.Data
abs, abs, acos, acos, acosDegrees, acosDegrees, add, add, adjustSamplingError, asin, asin, asinDegrees, asinDegrees, atan, atan, atan2, atan2, atan2Degrees, atan2Degrees, atanDegrees, atanDegrees, binary, binary, ceil, ceil, changeMathType, computeRanges, computeRanges, cos, cos, cosDegrees, cosDegrees, dataClone, divide, divide, exp, exp, floor, floor, getType, local, log, log, longString, longString, max, max, min, min, multiply, multiply, negate, negate, pow, pow, remainder, remainder, rint, rint, round, round, sin, sin, sinDegrees, sinDegrees, sqrt, sqrt, subtract, subtract, tan, tan, tanDegrees, tanDegrees, unary, unary
 
Methods inherited from interface visad.Thing
addReference, removeReference
 

Constructor Detail

SampledSet

public SampledSet(MathType type,
                  int manifold_dimension)
           throws VisADException
Throws:
VisADException

SampledSet

public SampledSet(MathType type,
                  int manifold_dimension,
                  CoordinateSystem coord_sys,
                  Unit[] units,
                  ErrorEstimate[] errors)
           throws VisADException
Throws:
VisADException

SampledSet

public SampledSet(MathType type)
           throws VisADException
Throws:
VisADException

SampledSet

public SampledSet(MathType type,
                  CoordinateSystem coord_sys,
                  Unit[] units,
                  ErrorEstimate[] errors)
           throws VisADException
Throws:
VisADException
Method Detail

cram_missing

public void cram_missing(boolean[] range_select)
Specified by:
cram_missing in interface SetIface
Overrides:
cram_missing in class Set

getNeighbors

public void getNeighbors(int[][] neighbors,
                         float[][] weights)
                  throws VisADException
Specified by:
getNeighbors in interface SetIface
Overrides:
getNeighbors in class Set
Throws:
VisADException

isMissing

public boolean isMissing()
Description copied from interface: Data
a method to tell whether data object has a missing value

Specified by:
isMissing in interface Data

getSamples

public float[][] getSamples()
                     throws VisADException

Returns a copy of the samples of this instance. Element [i][j] of the returned array is the j-th value of the i-th component.

This method is equivalent to getSamples(true).

Specified by:
getSamples in interface SetIface
Overrides:
getSamples in class Set
Returns:
A copy of the sample array.
Throws:
VisADException - VisAD failure.
See Also:
getSamples(boolean)

getSamples

public float[][] getSamples(boolean copy)
                     throws VisADException

Returns the samples of this instance or a copy of the samples.

Note that, if the actual sample array is returned, then it is possible to modify the values of this instance -- breaking the immutability aspect of this class. Don't do this unless you enjoy debugging.

Specified by:
getSamples in interface SetIface
Overrides:
getSamples in class Set
Parameters:
copy - Whether or not a copy of the sample array should be returned.
Returns:
The sample array is copy is false; otherwise, a copy of the sample array.
Throws:
VisADException - VisAD failure.

computeRanges

public DataShadow computeRanges(ShadowType type,
                                DataShadow shadow)
                         throws VisADException
Description copied from interface: Data
recursive version of computeRanges; would like 'default' visibility here, but must be declared 'public' because it is defined in the Data interface

Specified by:
computeRanges in interface Data
Overrides:
computeRanges in class Set
Throws:
VisADException

computeRanges

public DataShadow computeRanges(ShadowType type,
                                DataShadow shadow,
                                double[][] ranges,
                                boolean domain)
                         throws VisADException
Description copied from class: Set
this default does not set ranges - it is used by FloatSet and DoubleSet

Overrides:
computeRanges in class Set
Throws:
VisADException

make1DGeometry

public VisADGeometryArray make1DGeometry(byte[][] color_values)
                                  throws VisADException
create a 1-D GeometryArray from this Set and color_values; only used by Irregular3DSet and Gridded3DSet

Specified by:
make1DGeometry in interface SetIface
Overrides:
make1DGeometry in class Set
Throws:
VisADException

make3DGeometry

public VisADGeometryArray[] make3DGeometry(byte[][] color_values)
                                    throws VisADException
create a 3-D GeometryArray from this Set and color_values; NOTE - this version only makes points; NOTE - when textures are supported by Java3D the Gridded3DSet implementation of make3DGeometry should use Texture3D, and the Irregular3DSet implementation should resample to a Gridded3DSet and use Texture3D; only used by Irregular3DSet and Gridded3DSet

Specified by:
make3DGeometry in interface SetIface
Overrides:
make3DGeometry in class Set
Throws:
VisADException

makePointGeometry

public VisADGeometryArray makePointGeometry(byte[][] color_values)
                                     throws VisADException
create a PointArray from this Set and color_values; can be applied to ManifoldDimension = 1, 2 or 3

Specified by:
makePointGeometry in interface SetIface
Overrides:
makePointGeometry in class Set
Throws:
VisADException

setGeometryArray

public void setGeometryArray(VisADGeometryArray array,
                             int color_length,
                             byte[][] color_values)
                      throws VisADException
copy and transpose Samples (from this Set( and color_values into array; if color_length == 3 don't use color_values[3]

Throws:
VisADException

setGeometryArray

public static void setGeometryArray(VisADGeometryArray array,
                                    float[][] samples,
                                    int color_length,
                                    byte[][] color_values)
                             throws VisADException
copy and transpose samples and color_values into array; if color_length == 3 don't use color_values[3]

Throws:
VisADException

getLow

public float[] getLow()
Description copied from interface: SampledSetIface
Returns the minimum sample values.

Specified by:
getLow in interface SampledSetIface
Returns:
The minimum sample values. Element [i] is the minimum value for dimension i.

getHi

public float[] getHi()
Description copied from interface: SampledSetIface
Returns the maximum sample values.

Specified by:
getHi in interface SampledSetIface
Returns:
The maximum sample values. Element [i] is the maximum value for dimension i.

clone

public java.lang.Object clone()
Clones this instance.

Overrides:
clone in class Set
Returns:
A clone of this instance.