visad
Class UnionSet

java.lang.Object
  extended by visad.ThingImpl
      extended by visad.DataImpl
          extended by visad.Set
              extended by visad.SimpleSet
                  extended by visad.SampledSet
                      extended by visad.UnionSet
All Implemented Interfaces:
Serializable, Cloneable, Data, SampledSetIface, SetIface, SimpleSetIface, Thing

public class UnionSet
extends SampledSet

UnionSet is the union of an array of SampledSets. They must match in domain dimension, manifold dimension, CoordinateSystem, and Units. No sets in the array can be null, and there must be at least one SampledSet in the array (i.e. array.length != 0).

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
UnionSet(MathType type, SampledSet[] sets)
          Construct a UnionSet with an array of SampledSets with null errors.
UnionSet(MathType type, SampledSet[] sets, CoordinateSystem coord_sys, Unit[] units, ErrorEstimate[] errors, boolean copy)
           
UnionSet(SampledSet[] sets)
          Construct a UnionSet with an array of SampledSets
 
Method Summary
 Object clone()
          Clones this instance.
 Object cloneButType(MathType type)
          Clone this UnionSet, but give it a new MathType; this is safe, since constructor checks consistency of DomainCoordinateSystem and SetUnits with type.
 void cram_missing(boolean[] range_select)
           
 boolean equals(Object set)
          Check to see if two UnionSets are equal.
 float[][] getSamples(boolean copy)
          copied from Set
 SampledSet[] getSets()
          Returns the SampledSets that constitute this instance.
 int hashCode()
          Returns the hash code of this instance.
 float[][] indexToValue(int[] index)
          convert an array of 1-D indices to an array of values in R^DomainDimension
 SampledSet inverseProduct(SampledSet set)
          Create a UnionSet that is the inverse cross product of this UnionSet and the input SampledSet.
 boolean isMissing()
          Check to see if any of the sets in this UnionSet has missing data.
 String longString(String pre)
           
static void main(String[] argv)
           
 VisADGeometryArray make1DGeometry(byte[][] color_values)
          create a 1-D GeometryArray from this Set and color_values
 VisADGeometryArray make2DGeometry(byte[][] color_values, boolean indexed)
          create a 2-D GeometryArray from this Set and color_values
 VisADGeometryArray[][] makeIsoLines(float[] intervals, float low, float hi, float base, float[] fieldValues, byte[][] color_values, boolean[] swap, boolean dash, boolean fill, ScalarMap[] smap, double[] scale, double label_size, boolean sphericalDisplayCS)
          return basic lines in array[0], fill-ins in array[1] and labels in array[2]
 VisADGeometryArray makeIsoSurface(float isolevel, float[] fieldValues, byte[][] color_values, boolean indexed)
           
 Set makeSpatial(SetType type, float[][] samples)
           
 SampledSet product()
          Return a SampledSet that is a UnionSet of ProductSets of GriddedSets and IrregularSets
 SampledSet product(SampledSet set)
          Create a UnionSet that is the cross product of this UnionSet and the input SampledSet.
 int[] valueToIndex(float[][] value)
          convert an array of values in R^DomainDimension to an array of 1-D indices
 void valueToInterp(float[][] value, int[][] indices, float[][] weights)
          for each of an array of values in R^DomainDimension, compute an array of 1-D indices and an array of weights, to be used for interpolation; indices[i] and weights[i] are null if i-th value is outside grid (i.e., if no interpolation is possible)
 
Methods inherited from class visad.SampledSet
computeRanges, computeRanges, finalize, getHi, getLow, getMySamples, getNeighbors, getSamples, make3DGeometry, makePointGeometry, setCacheSizeThreshold, setGeometryArray, setGeometryArray, setMySamples
 
Methods inherited from class visad.SimpleSet
getManifoldDimension
 
Methods inherited from class visad.Set
__getitem__, __len__, addEqualsCache, addNotEqualsCache, copyDoubles, copyFloats, doubleToFloat, doubleToIndex, equalUnitAndCS, floatToDouble, getCoordinateSystem, getDimension, getDoubles, getDoubles, getLength, getNeighbors, getNeighbors, getSetErrors, getSetUnits, getWedge, indexToDouble, longString, merge1DSets, testEqualsCache, testNotEqualsCache, unary, unitAndCSHashCode
 
Methods inherited from class visad.DataImpl
__add__, __add__, __div__, __div__, __mod__, __mod__, __mul__, __mul__, __neg__, __pow__, __pow__, __radd__, __rdiv__, __rmod__, __rmul__, __rpow__, __rsub__, __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
 
Methods inherited from class visad.ThingImpl
addReference, removeReference
 
Methods inherited from class java.lang.Object
getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface visad.SetIface
doubleToIndex, equalUnitAndCS, getCoordinateSystem, getDimension, getDoubles, getDoubles, getLength, getManifoldDimension, getNeighbors, getNeighbors, getSetErrors, getSetUnits, getWedge, indexToDouble, merge1DSets
 
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, 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

UnionSet

public UnionSet(MathType type,
                SampledSet[] sets)
         throws VisADException
Construct a UnionSet with an array of SampledSets with null errors. CoordinateSystem and Units are defaults from type.

Parameters:
type - MathType for the sets. Sets the CoordinateSystem and Units.
sets - array of SampledSets. All sets must match in domain dimension and manifold dimension and no sets in the array can be null. There must be at least one SampledSet in the array (i.e. sets.length != 0).
Throws:
VisADException - problem creating the UnionSet

UnionSet

public UnionSet(MathType type,
                SampledSet[] sets,
                CoordinateSystem coord_sys,
                Unit[] units,
                ErrorEstimate[] errors,
                boolean copy)
         throws VisADException
Throws:
VisADException

UnionSet

public UnionSet(SampledSet[] sets)
         throws VisADException
Construct a UnionSet with an array of SampledSets

Parameters:
sets - array of SampledSets. All sets must match in domain dimension and manifold dimension, CoordinateSystem, and Units. and no sets in the array can be null. There must be at least one SampledSet in the array (i.e. sets.length != 0).
Throws:
VisADException - problem creating the UnionSet
Method Detail

getSets

public SampledSet[] getSets()
Returns the SampledSets that constitute this instance. The returned array may be modified without affecting the behavior of this instance.

Returns:
The SampledSets that constitute this instance.

product

public SampledSet product()
                   throws VisADException
Return a SampledSet that is a UnionSet of ProductSets of GriddedSets and IrregularSets

Returns:
resulting UnionSet of ProductSets
Throws:
VisADException - problem creating the UnionSet

product

public SampledSet product(SampledSet set)
                   throws VisADException
Create a UnionSet that is the cross product of this UnionSet and the input SampledSet.

Parameters:
set - input SampledSet
Returns:
a SampledSet that is a UnionSet of ProductSets of this UnionSet and the input SampledSet
Throws:
VisADException - error creating necessary VisAD object

inverseProduct

public SampledSet inverseProduct(SampledSet set)
                          throws VisADException
Create a UnionSet that is the inverse cross product of this UnionSet and the input SampledSet.

Parameters:
set - input SampledSet
Returns:
a SampledSet that is a UnionSet of inverse ProductSets of this UnionSet and the input SampledSet
Throws:
VisADException - error creating necessary VisAD object

makeSpatial

public Set makeSpatial(SetType type,
                       float[][] samples)
                throws VisADException
Specified by:
makeSpatial in interface SetIface
Overrides:
makeSpatial in class Set
Throws:
VisADException

cram_missing

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

make2DGeometry

public VisADGeometryArray make2DGeometry(byte[][] color_values,
                                         boolean indexed)
                                  throws VisADException
create a 2-D GeometryArray from this Set and color_values

Specified by:
make2DGeometry in interface SetIface
Overrides:
make2DGeometry 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

Specified by:
make1DGeometry in interface SetIface
Overrides:
make1DGeometry in class SampledSet
Returns:
new VisADGeometryArray
Throws:
VisADException

makeIsoLines

public VisADGeometryArray[][] makeIsoLines(float[] intervals,
                                           float low,
                                           float hi,
                                           float base,
                                           float[] fieldValues,
                                           byte[][] color_values,
                                           boolean[] swap,
                                           boolean dash,
                                           boolean fill,
                                           ScalarMap[] smap,
                                           double[] scale,
                                           double label_size,
                                           boolean sphericalDisplayCS)
                                    throws VisADException
return basic lines in array[0], fill-ins in array[1] and labels in array[2]

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

makeIsoSurface

public VisADGeometryArray makeIsoSurface(float isolevel,
                                         float[] fieldValues,
                                         byte[][] color_values,
                                         boolean indexed)
                                  throws VisADException
Specified by:
makeIsoSurface in interface SetIface
Overrides:
makeIsoSurface in class Set
Throws:
VisADException

getSamples

public float[][] getSamples(boolean copy)
                     throws VisADException
copied from Set

Specified by:
getSamples in interface SetIface
Overrides:
getSamples in class SampledSet
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.

indexToValue

public float[][] indexToValue(int[] index)
                       throws VisADException
convert an array of 1-D indices to an array of values in R^DomainDimension

Specified by:
indexToValue in interface SetIface
Specified by:
indexToValue in class Set
Parameters:
index - array of integer indices
Returns:
float[domain_dimension][indices.length] array of Set values
Throws:
VisADException - a VisAD error occurred

valueToIndex

public int[] valueToIndex(float[][] value)
                   throws VisADException
convert an array of values in R^DomainDimension to an array of 1-D indices

Specified by:
valueToIndex in interface SetIface
Specified by:
valueToIndex in class Set
Parameters:
value - float[domain_dimension][number_of_values] array of Set values
Returns:
array of integer indices
Throws:
VisADException - a VisAD error occurred

valueToInterp

public void valueToInterp(float[][] value,
                          int[][] indices,
                          float[][] weights)
                   throws VisADException
for each of an array of values in R^DomainDimension, compute an array of 1-D indices and an array of weights, to be used for interpolation; indices[i] and weights[i] are null if i-th value is outside grid (i.e., if no interpolation is possible)

Specified by:
valueToInterp in interface SimpleSetIface
Specified by:
valueToInterp in class SimpleSet
Parameters:
value - An array of points. value[i][j] is the i-th coordinate of the j-th points.
indices - Indices of the neighboring samples in the set. If the j-th points lies within the set, then returned element [i][j] is the index of the i-th neighboring sample in the set; otherwise, returned array [j] is null.
weights - Weights for interpolating the neighboring samples in the set. If the j-th points lies within the set, then returned element [i][j] is the weight of the i-th neighboring sample in the set; otherwise, returned array [j] is null.
Throws:
VisADException - VisAD failure.

clone

public Object clone()
Clones this instance.

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

cloneButType

public Object cloneButType(MathType type)
                    throws VisADException
Clone this UnionSet, but give it a new MathType; this is safe, since constructor checks consistency of DomainCoordinateSystem and SetUnits with type.

Specified by:
cloneButType in interface SetIface
Specified by:
cloneButType in class Set
Parameters:
type - new MathType for the UnionSet
Returns:
UnionSet with the new MathType
Throws:
VisADException - couldn't create the new UnionSet

equals

public boolean equals(Object set)
Check to see if two UnionSets are equal.

Specified by:
equals in interface SetIface
Specified by:
equals in class Set
Returns:
true if each of the sets in set is equal to the sets in this.

hashCode

public int hashCode()
Returns the hash code of this instance.

Overrides:
hashCode in class Object
Returns:
The hash code of this instance.

isMissing

public boolean isMissing()
Check to see if any of the sets in this UnionSet has missing data.

Specified by:
isMissing in interface Data
Overrides:
isMissing in class SampledSet
Returns:
true if any of the sets has missing data, otherwise false

main

public static void main(String[] argv)
                 throws VisADException
Throws:
VisADException

longString

public String longString(String pre)
                  throws VisADException
Specified by:
longString in interface Data
Overrides:
longString in class Set
Parameters:
pre - String added to start of each line
Returns:
a longer String than returned by toString(), indented by pre (a string of blanks)
Throws:
VisADException