Package noaa.coastwatch.util
Provides utility classes for holding data, map projection, coordinate transform, resampling, statistics, and others.
The DataVariable class and its subclasses function
as generic data containers. They allow the data values, name, units,
scaling factors, and other attributes to be associated together in a
single structure. The dimensions of a data variable depend on the
specific subclass. Specifically, the Line class handles 1D data such as ship track,
while the Grid class handles 2D gridded
data such as satellite imagery with navigational corrections. The
DataLocation class specifies coordinates
that may be used to set and retrieve values within a data variable.
The EarthDataInfo class binds a
number of common DataVariable objects by providing the
originating satellite, sensor, date, time, geolocation, and other
common attributes.
The EarthTransform and subclasses DataProjection, MapProjection, and SwathProjection provide coordinate
transformations between data coordinates such as (row, column)
represented by the DataLocation class and
geographic latitude and longitude coordinates represented by the
EarthLocation class. The
MapProjection class uses GCTP to provide cartographic transformations for
some of the most commonly used map projections such as mercator, polar
stereographic, and so on. Generic coordinate transforms are a
required component of any data registration or resampling procedure.
An EarthTransform object is typically used in conjunction
with a number of DataVariable objects to translate
between data and geographic coordinates. The EarthArea class may be used in conjunction with
an EarthTransform to represent irregularly shaped areas
on the Earth.
In some cases it may be necessary to approximate the value of a smooth
function between a number of known function data values. The UnivariateEstimator, BivariateEstimator, and VariableEstimator provide polynomial estimation
methods for this purpose. The VariableEstimator in
particular is useful for approximating the value of a smoothly
changing DataVariable such as latitude, longitude,
satellite zenith, and other angle data. To aid in approximating
smooth data fields with an appropriate number of known data points,
the EarthPartition can be used to divide
earth locatable data variables into subsections of a specified
physical size.
-
ClassDescriptionDeprecated.Deprecated.As of 3.3.1, use
MixedGridResamplerwith a location filter ofVIIRSBowtieFilterto get the same results.An array reduction is an operator that reduces an array to a single value.TheAtmosphericCorrectionclass performs a simplified atmospheric correction algorithm to transform MODIS top-of-atmosphere reflectance data to corrected reflectance data.A bivariate estimator approximates the value of a function of two variables using a set of known function values.TheBoxSurveyclass holds survey information for a rectangle of data values.TheBucketResamplingMapFactoryclass creates a resampling map by placing the source transform earth locations into buckets and searching the bucket contents for the closest data location to each earth location in the destination transform.TheConstrainedStrideLocationIteratorclass iterates over data locations using a constant step stride vector, but uses ajava.awt.Shapeobject to determine if each location is contained within a shape boundary.TheDataIteratorclass is intended to be used by classes that need to iterate over a set of data values.A data location represents a set of coordinates that uniquely identify a data value position within some N-dimensional space.TheDataLocationConstraintsclass holds a set of values used to specify the bounds and sparseness of a contiguous area of data locations.TheDataLocationIteratorclass adds an extra interface method to return the next data location.TheDataLocationIteratorFactoryclass creates aDataLocationIteratorinstance based on a set of parameters that specify the desired iterator behaviour.A data variable is a container class to hold data values and a specific set of metadata.TheAccessTypeclass describes a type of data accesss that is anticipated.TheDataVariableIteratorclass iterates over the locations of a data variable and returns the data values found.TheDateFormatterclass contains a number of static methods to format dates easily based on timezone and Earth location.TheDirectGridResamplerclass performs generic data resampling between 2D Earth transforms using a direct location lookup method.TheDirectResamplingMapFactoryclass creates a resampling map by directly querying the source transform for the data location of each earth location in the destination transform.TheDoubleIteratorclass adds an extra interface method to return the next double value.TheEarthAreaclass represents irregularly shaped areas on a sphere.TheEarthDataInfoclass is a container for global metadata pertaining to a number ofDataVariableobjects.TheEarthDataSurveyclass is used to perform surveys onDataVariableobjects, and is the abstract parent of all surveys.An earth location represents a point using latitude and longitude in degrees.AnEarthLocationSetholds a number of earth locations and allows for fast retrieval of the nearest location in the set to a given point and an associated data object.TheEarthPartitionclass sets up a partitioning of earth data such that no individual partition has physical size exceeding a user-specified tolerance.An encodable object is one whose representation can be encoded in a data structure or array, for example as a number of integers or floating point values.TheExpressionFilterclass detects locations whose data variable values satisfy a mathematical expression.The filter interface provides a method for performing processing on an array of data values.A function takes a number of variables as input and produces an output value.The static routines in the General Cartographic Transformations Package (GCTP) class handle the transformation of data coordinates between common earth projection systems.The GCTP requirements class helps determine the various parameters required for each projection.TheGeoMeanReductionreduces an array to a single geometric mean value.The 2D grid class is a special form of data variable with two dimensions -- rows and columns.TheGridDataResamplingMapFactoryclass creates a resampling map by directly querying grid variables for the source and column mapping.TheGridResamplerclass performs generic data resampling between 2D earth transforms.TheHTMLReportFormatterclass formats report data to HTML 3.2.TheInverseGridResamplerclass performs generic data resampling between 2D earth transforms using an inverse location lookup method.A Lagrange interpolator uses a set of known function data to interpolate function values between data points.TheLandMaskclass may be used to retrieve a true or false value for the presence of land at a certain earth location.TheLastReductionreduces an array to a single last value.The 1D line class is a special form of data variable with one dimension.TheLineIteratorclass may be used to get the set of (x,y) points required for drawing a line between start and end points.TheLineLocationIteratorclass iterates over data locations along a line between start and end locations.TheLineSurveyclass holds survey information for a line of data values from one point to another.TheLocationEstimatorclass uses a reference and target earth transform to estimate the data location of a target point given a reference point.TheLocationFilterclass allows for computations and other classes to check if a specific location's data should be used in a computation.The longitude filter is a filter with special considerations for longitude values.TheMaxReductionreduces an array to a single maximum value.TheMeanReductionreduces an array to a single mean value.TheMedianReductionreduces an array to a single median value.TheMetadataContainerclass is designed to be extended by other classes that need to hold user metadata in the form of a mapping from attribute name to attribute value.TheMetadataServicesclass defines various static methods relating to metadata manipulation.TheMinReductionreduces an array to a single minimum value.TheMixedGridResamplerclass performs generic data resampling between 2D earth transforms using a mix of forward and inverse resampling methods.TheNavigationOffsetEstimatorclass uses image and land mask data to estimate the navigation error in a small tile of coastal image data.ThePointSurveyclass holds survey information for a single data location.ThePolygonSurveyclass holds survey information for a polygon of data values.TheReportFormatterclass is an interface for formatting reports of text data.AResamplingDiagnosticgenerates statistics on the difference between a resampling map and the ideal resampling between a source and destination transform.Holds an individual diagnostic information value.AResamplingMapobject holds coordinate mapping data between two 2D coordinate systems: the source and destination.AResamplingMapFactoryis an interfaace for objects that createResamplingMapobjects on-demand, based on the coordinates that need to be remapped.TheResamplingSourceImpclass provides an extra set of query methods about the source transform in a resampling operation.TheResettableIteratorclass has an interface to make iterators go back to the first element again.TheSatelliteDataInfoclass is a specialEarthDataInfoclass for satellite data.A satellite pass info object holds information about one pass of a satellite over the Earth.The solar zenith class may be used to calculate solar zenith angles for any earth location at a given date and time.The statistics class is a container for various data variable statistics such as minimum, maximum, mean, standard deviation, histogram counts, and so on.TheStrideLocationIteratorclass iterates over data locations using a constant step stride vector.TheSubsetGridclass uses an existingGridobject to provide a subset view of its data.TheTextReportFormatterclass formats report data to raw text.TheTimePeriodclass is a container for a date and length of time.TheTopologyclass contains a number of convenience methods for working with coordinates in a topology.TheUnitFactoryclass creates Unidata UDUNITS styleUnitobjects from unit specification strings.A univariate estimator approximates the value of a function of one variable using a set of known function values.TheValueSourceinterface may be implemented by any class that provides data values for a set ofDataLocationobjects.TheVariableEstimatorclass provides an approximation of smoothly changing variable data using quadratic polynomials.TheVariableStatisticsGeneratorclass creates aStatisticsobject using a data variable and set of constraints.TheVIIRSBowtieFilterclass detects locations in a level 2 swath file from the VIIRS sensor in which certain pixels are deleted because of a bow-tie overlap effect of the successive scan head sweeps.
InverseGridResamplerwhich now performs the exact same operation as this class.