public class CoordinateAxis extends VariableDS
F:D -> S where D is a product set of dimensions (aka index space), and S is the set of reals (R) or Strings.If its element type is char, it is considered a string-valued Coordinate Axis and rank is reduced by one, since the outermost dimension is considered the string length: v(i, j, .., strlen). If its element type is String, it is a string-valued Coordinate Axis. Otherwise it is numeric-valued, and isNumeric() is true. The one-dimensional case F(i) -> R is the common case which affords important optimizations. In that case, use the subtype CoordinateAxis1D. The factory methods will return either a CoordinateAxis1D if the variable is one-dimensional, a CoordinateAxis2D if its 2D, or a CoordinateAxis for the general case. A CoordinateAxis is optionally marked as georeferencing with an AxisType. It should have a units string and optionally a description string. A Structure cannot be a CoordinateAxis, although members of Structures can.
Modifier and Type | Class and Description |
---|---|
static class |
CoordinateAxis.AxisComparator
Standard sort on Coordinate Axes
|
static class |
CoordinateAxis.Builder<T extends CoordinateAxis.Builder<T>> |
defaultCoordsSizeToCache, defaultSizeToCache, permitCaching
Modifier and Type | Method and Description |
---|---|
static CoordinateAxis.Builder<?> |
builder()
Get Builder for this class that allows subclassing.
|
CoordinateAxis |
copyNoCache()
Make a copy, with an independent cache.
|
boolean |
equals(java.lang.Object oo)
Instances which have same content are equal.
|
static CoordinateAxis.Builder |
fromVariableDS(VariableDS.Builder<?> vdsBuilder)
Create a coordinate axis from an existing Variable.Builder.
|
AxisType |
getAxisType()
Get type of axis
|
java.lang.String |
getBoundaryRef()
The name of this coordinate axis' boundary variable
|
Calendar |
getCalendarFromAttribute() |
void |
getInfo(java.util.Formatter buf)
Get a string representation
|
double |
getMaxValue()
The largest coordinate value.
|
double |
getMinValue()
The smallest coordinate value.
|
java.lang.String |
getPositive()
Get the direction of increasing values, used only for vertical Axes.
|
java.lang.String |
getUnitsString()
Get the Unit String for the Variable.
|
int |
hashCode()
Override Object.hashCode() to implement equals.
|
boolean |
isContiguous()
If the edges are contiguous or disjoint
Caution: many datasets do not explicitly specify this info, this is often a guess; default is true.
|
boolean |
isIndependentCoordinate() |
boolean |
isInterval()
An interval coordinate consists of two numbers, bound1 and bound2.
|
boolean |
isNumeric()
Does the axis have numeric values.
|
CoordinateAxis.Builder<?> |
toBuilder()
Turn into a mutable Builder.
|
applyScaleOffset, applyScaleOffset, convertMissing, convertMissing, convertUnsigned, convertUnsigned, convertUnsigned, fillValueIsMissing, getCoordinateSystems, getDatasetLocation, getDescription, getEnhanceMode, getFillValue, getMissingDataArray, getMissingValues, getNetcdfFile, getOffset, getOriginalDataType, getOriginalName, getOriginalVariable, getScaledOffsetType, getScaleFactor, getSignedness, getUnsignedConversionType, getValidMax, getValidMin, hasFillValue, hasMissing, hasMissingValue, hasScaleOffset, hasValidData, invalidDataIsMissing, isFillValue, isInvalidData, isMissing, isMissingValue, lookupEnumString, missingDataIsMissing, readToStream, reallyRead, reallyRead, showScaleMissingProxy, toStringDebug
attributes, compareTo, createNewCache, findAttribute, findAttributeString, findDimensionIndex, getDataType, getDimension, getDimensions, getDimensionsString, getElementSize, getEnumTypedef, getFileTypeId, getFullName, getNameAndDimensions, getNameAndDimensions, getNameAndDimensions, getParentGroup, getParentStructure, getRanges, getRank, getShape, getShape, getShapeAsSection, getSize, getSizeToCache, getSPobject, hasCachedData, isCaching, isCoordinateVariable, isMemberOfStructure, isMetadata, isScalar, isUnlimited, isVariableLength, read, read, read, read, read, readScalarByte, readScalarDouble, readScalarFloat, readScalarInt, readScalarLong, readScalarShort, readScalarString, reduce, section, section, slice, toString
getFullName, getShortName
addCoordinateSystem, removeCoordinateSystem
getShortName
filter, findAttributeDouble, findAttributeIgnoreCase, findAttributeInteger, getName, hasAttribute, hasAttributeIgnoreCase, isEmpty, iterator
public static CoordinateAxis.Builder<?> builder()
public CoordinateAxis copyNoCache()
public boolean equals(java.lang.Object oo)
public static CoordinateAxis.Builder fromVariableDS(VariableDS.Builder<?> vdsBuilder)
vdsBuilder
- an existing Variable in dataset.public AxisType getAxisType()
public java.lang.String getBoundaryRef()
public Calendar getCalendarFromAttribute()
public void getInfo(java.util.Formatter buf)
buf
- place info herepublic double getMaxValue()
public double getMinValue()
public java.lang.String getPositive()
public java.lang.String getUnitsString()
Variable
getUnitsString
in interface ucar.nc2.dataset.Enhancements
getUnitsString
in interface VariableSimpleIF
getUnitsString
in class VariableDS
public int hashCode()
public boolean isContiguous()
public boolean isIndependentCoordinate()
public boolean isInterval()
public boolean isNumeric()
public CoordinateAxis.Builder<?> toBuilder()
Variable
toBuilder
in class VariableDS