## visad
Class UnionSet

    java.lang.Object
      visad.ThingImpl
          visad.DataImpl
              visad.Set
                  visad.SimpleSet
                      visad.SampledSet
                          visad.UnionSet

All Implemented Interfaces:
  Cloneable, Data, SampledSetIface, Serializable, 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 inherited from class visad.DataImpl
`DataImpl.Syncher`

Nested classes inherited from class visad.ThingImpl
`ThingImpl.RemotePair`

Field Summary
`(package private) SampledSet[]` `Sets`

Fields inherited from class visad.SampledSet
`Hi, Low, Samples`

Fields inherited from class visad.SimpleSet
`ManifoldDimension`

Fields inherited from class visad.Set
`DomainCoordinateSystem, DomainDimension, hashCode, hashCodeSet, Length, SetErrors, SetUnits`

Fields inherited from class visad.DataImpl
`Type`

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 `SampledSet`s 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)` Simple DataImpl test, invoked as 'java visad.DataImpl'.
`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_ratio, double label_size, float[][][] f_array)` 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, cram_samples, getHi, getLow, getNeighbors, getSamples, init_samples, init_samples, make3DGeometry, makePointGeometry, setGeometryArray, setGeometryArray`

Methods inherited from class visad.SimpleSet
`getManifoldDimension, setAnimationSampling`

Methods inherited from class visad.Set

`__getitem__, __len__, addEqualsCache, addNotEqualsCache, adjustType, copyDoubles, copyFloats, doubleToFloat, doubleToIndex, equalUnitAndCS, floatToDouble, getCoordinateSystem, getDimension, 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, computeReferenceRanges, cos, cos, cosDegrees, cosDegrees, dataClone, divide, divide, exp, exp, floor, floor, getType, invertOp, local, log, log, max, max, min, min, multiply, multiply, negate, negate, notifyReferences, pow, pow, remainder, remainder, rint, rint, round, round, setParent, sin, sin, sinDegrees, sinDegrees, sqrt, sqrt, subtract, subtract, tan, tan, tanDegrees, tanDegrees, toString, unary`

Methods inherited from class visad.ThingImpl
`adaptedAddReference, adaptedRemoveReference, addReference, removeReference`

Methods inherited from class java.lang.Object
`finalize, 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`

Field Detail

### Sets

    SampledSet[] Sets

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

### 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 `SampledSet`s that constitute this instance. The returned array may be modified without affecting the behavior of this instance.

  Returns:
    The `SampledSet`s 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`
  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_ratio,
                                               double label_size,
                                               float[][][] f_array)
                                        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`

### 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`
  Throws:
    `VisADException`

### 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.

### 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

  Description copied from class: `DataImpl`
  Simple DataImpl test, invoked as 'java visad.DataImpl'.

  Throws:
    `VisADException`

### longString

    public String longString(String pre)
                      throws VisADException

  Specified by:
    `longString` in interface `Data`
  Overrides:
    `longString` in class `Set`
  Throws:
    `VisADException`