/** * Returns the smallest distance between which separate points can be distinguished, * as specified in instrument design. * * @return smallest distance between which separate points can be distinguished, or {@code null}. */ @ValueRange(minimum = 0, isMinIncluded = false) public Double getNominalSpatialResolution() { return nominalSpatialResolution; }
/** * Constructs a range of the given type with values from the given annotation. * This constructor does not verify if the given type is wide enough for the values of * the given annotation, because those information are usually static. If nevertheless * the given type is not wide enough, then the values are truncated in the same way * than the Java language casts primitive types. * * @param type the element type, restricted to one of {@link Byte}, {@link Short}, * {@link Integer}, {@link Long}, {@link Float} or {@link Double}. * @param range the range of values. * @throws IllegalArgumentException if the given type is not one of the primitive wrappers for numeric types. */ public NumberRange(final Class<E> type, final ValueRange range) throws IllegalArgumentException { super(type, Numbers.cast(valueOf("minimum", range.minimum(), Double.NEGATIVE_INFINITY), type), range.isMinIncluded(), Numbers.cast(valueOf("maximum", range.maximum(), Double.POSITIVE_INFINITY), type), range.isMaxIncluded()); }
/** * Constructs a range of the given type with values from the given annotation. * This constructor does not verify if the given type is wide enough for the values of * the given annotation, because those information are usually static. If nevertheless * the given type is not wide enough, then the values are truncated in the same way * than the Java language casts primitive types. * * @param type the element type, restricted to one of {@link Byte}, {@link Short}, * {@link Integer}, {@link Long}, {@link Float} or {@link Double}. * @param range the range of values. * @throws IllegalArgumentException if the given type is not one of the primitive wrappers for numeric types. */ public NumberRange(final Class<E> type, final ValueRange range) throws IllegalArgumentException { super(type, Numbers.cast(valueOf("minimum", range.minimum(), Double.NEGATIVE_INFINITY), type), range.isMinIncluded(), Numbers.cast(valueOf("maximum", range.maximum(), Double.POSITIVE_INFINITY), type), range.isMaxIncluded()); }
/** * Maximum occurrence of the extended element. * Returns {@code null} if it does not apply, for example if the * {@linkplain #getDataType() data type} is {@linkplain Datatype#ENUMERATION enumeration}, * {@linkplain Datatype#CODE_LIST code list} or {@linkplain Datatype#CODE_LIST_ELEMENT * code list element}. * * @return maximum occurrence of the extended element, or {@code null}. */ @Override @ValueRange(minimum = 0) public Integer getMaximumOccurrence() { return maximumOccurrence; }
/** * Returns the smallest distance between which separate points can be distinguished, * as specified in instrument design. * * <div class="note"><b>Note on XML marshalling:</b> * ISO 19115-2 defines this property in {@linkplain DefaultBand a subtype} for historical reasons. * Apache SIS moves this property up in the hierarchy since this property can apply to any sample dimension, * not only the measurements in the electromagnetic spectrum. However this property will not appear in XML * documents unless this {@code SampleDimension} is actually a {@code Band}.</div> * * @return smallest distance between which separate points can be distinguished, or {@code null}. */ @ValueRange(minimum = 0, isMinIncluded = false) public Double getNominalSpatialResolution() { return nominalSpatialResolution; }
/** * Returns the area of the dataset obscured by clouds, expressed as a percentage of the spatial extent. * * @return a value between 0 and 100, or {@code null} if unspecified. */ @Override @ValueRange(minimum = 0, maximum = 100) @XmlElement(name = "cloudCoverPercentage") public Double getCloudCoverPercentage() { return cloudCoverPercentage; }
/** * Returns the number of items in the media identified. * * @return number of items in the media identified, or {@code null}. */ @Override @ValueRange(minimum = 0) @XmlElement(name = "volumes") public Integer getVolumes() { return volumes; }
/** * Returns the area of the dataset obscured by clouds, expressed as a percentage of the spatial extent. * * @return a value between 0 and 100, or {@code null} if unspecified. */ @Override @ValueRange(minimum = 0, maximum = 100) @XmlElement(name = "cloudCoverPercentage") public Double getCloudCoverPercentage() { return cloudCoverPercentage; }
/** * Returns the distance between consistent parts of (centre, left side, right side) adjacent * pixels in the object space. * * @return distance between consistent parts of adjacent pixels in the object space, or {@code null}. */ @Override @ValueRange(minimum=0, isMinIncluded=false) @XmlElement(name = "groundResolution") public Double getGroundResolution() { return groundResolution; }
/** * Returns the wavelength at which the response is the highest. * The units of measurement is given by {@link #getBoundUnits()}. * * @return wavelength at which the response is the highest, or {@code null} if unspecified. */ @Override @ValueRange(minimum = 0) @XmlElement(name = "peakResponse") public Double getPeakResponse() { return peakResponse; }
/** * Returns the maximum relative humidity along the flight pass during the photo flight. * * @return maximum relative humidity along the flight pass during the photo flight, or {@code null}. */ @Override @ValueRange(minimum = 0, maximum = 100) @XmlElement(name = "maxRelativeHumidity", required = true) public Double getMaxRelativeHumidity() { return maxRelativeHumidity; }
/** * Returns the illumination azimuth measured in degrees clockwise from true north at the time the image is taken. * For images from a scanning device, refer to the centre pixel of the image. * * @return a value between 0° and 360°, or {@code null} if unspecified. */ @Override @ValueRange(minimum = 0, maximum = 360) @XmlElement(name = "illuminationAzimuthAngle") public Double getIlluminationAzimuthAngle() { return illuminationAzimuthAngle; }
/** * Returns the number of elements along the axis. * * @return number of elements along the axis, or {@code null}. */ @Override @ValueRange(minimum = 0) @XmlElement(name = "dimensionSize", required = true) public Integer getDimensionSize() { return dimensionSize; }
/** * Returns the maximum relative humidity along the flight pass during the photo flight. * * @return maximum relative humidity along the flight pass during the photo flight, or {@code null}. */ @Override @ValueRange(minimum = 0, maximum = 100) @XmlElement(name = "maxRelativeHumidity", required = true) public Double getMaxRelativeHumidity() { return maxRelativeHumidity; }
/** * Returns the distance between consistent parts of (centre, left side, right side) * adjacent pixels in the scan plane. * * @return distance between consistent parts of adjacent pixels in the scan plane, or {@code null}. */ @Override @ValueRange(minimum=0, isMinIncluded=false) @XmlElement(name = "scanningResolution") public Double getScanningResolution() { return scanningResolution; }
/** * Returns an estimated size of a unit in the specified transfer format, expressed in megabytes. * The transfer size is greater than zero. * * @return estimated size of a unit in the specified transfer format in megabytes, or {@code null}. */ @Override @XmlElement(name = "transferSize") @ValueRange(minimum = 0, isMinIncluded = false) public Double getTransferSize() { return transferSize; }
/** * Returns the number of independent spatial-temporal axes. * * @return number of independent spatial-temporal axes, or {@code null}. */ @Override @ValueRange(minimum = 0) @XmlElement(name = "numberOfDimensions", required = true) public Integer getNumberOfDimensions() { return numberOfDimensions; }
/** * Returns the number of items in the media identified. * * @return number of items in the media identified, or {@code null}. */ @Override @ValueRange(minimum = 0) @XmlElement(name = "volumes") public Integer getVolumes() { return volumes; }
/** * Returns the distance between consistent parts of (centre, left side, right side) * adjacent pixels in the scan plane. * * @return distance between consistent parts of adjacent pixels in the scan plane, or {@code null}. */ @Override @ValueRange(minimum=0, isMinIncluded=false) @XmlElement(name = "scanningResolution", namespace = Namespaces.GMI, required = true) public Double getScanningResolution() { return scanningResolution; }
/** * Returns the distance between consistent parts of (centre, left side, right side) adjacent * pixels in the object space. * * @return distance between consistent parts of adjacent pixels in the object space, or {@code null}. */ @Override @ValueRange(minimum=0, isMinIncluded=false) @XmlElement(name = "groundResolution", namespace = Namespaces.GMI, required = true) public Double getGroundResolution() { return groundResolution; }