Class DefaultImageDescription
java.lang.Object
org.apache.sis.metadata.AbstractMetadata
org.apache.sis.metadata.ModifiableMetadata
org.apache.sis.metadata.iso.ISOMetadata
org.apache.sis.metadata.iso.content.AbstractContentInformation
org.apache.sis.metadata.iso.content.DefaultCoverageDescription
org.apache.sis.metadata.iso.content.DefaultImageDescription
- All Implemented Interfaces:
Serializable,Emptiable,LenientComparable,IdentifiedObject,org.opengis.metadata.content.ContentInformation,org.opengis.metadata.content.CoverageDescription,org.opengis.metadata.content.ImageDescription
- Direct Known Subclasses:
MI_ImageDescription
public class DefaultImageDescription
extends DefaultCoverageDescription
implements org.opengis.metadata.content.ImageDescription
Information about an image's suitability for use.
The following property is mandatory in a well-formed metadata according ISO 19115:
MD_ImageDescription
└─attributeDescription…… Description of the attribute described by the measurement value.Limitations
- Instances of this class are not synchronized for multi-threading. Synchronization, if needed, is caller's responsibility.
- Serialized objects of this class are not guaranteed to be compatible with future Apache SIS releases.
Serialization support is appropriate for short term storage or RMI between applications running the
same version of Apache SIS. For long term storage, use
XMLinstead.
- Since:
- 0.3
- Version:
- 1.0
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class org.apache.sis.metadata.ModifiableMetadata
ModifiableMetadata.State -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate BooleanIndication of whether or not constants are available which allow for camera calibration corrections.private DoubleArea of the dataset obscured by clouds, expressed as a percentage of the spatial extent.private IntegerCount of the number of lossy compression cycles performed on the image.private BooleanIndication of whether or not Calibration Reseau information is available.private DoubleIllumination azimuth measured in degrees clockwise from true north at the time the image is taken.private DoubleIllumination elevation measured in degrees clockwise from the target plane at intersection of the optical line of sight with the Earth's surface.private org.opengis.metadata.IdentifierSpecifies the image quality.private org.opengis.metadata.content.ImagingConditionConditions affected the image.private BooleanIndication of whether or not lens aberration correction information is available.private BooleanIndication of whether or not the radiometric calibration information for generating the radiometrically calibrated standard data product is available.private static final longSerial number for inter-operability with different versions.private BooleanIndication of whether or not triangulation has been performed upon the image.Fields inherited from class org.apache.sis.metadata.iso.ISOMetadata
identifiers -
Constructor Summary
ConstructorsConstructorDescriptionConstructs an initially empty image description.DefaultImageDescription(org.opengis.metadata.content.ImageDescription object) Constructs a new instance initialized with the values from the specified metadata object. -
Method Summary
Modifier and TypeMethodDescriptionstatic DefaultImageDescriptioncastOrCopy(org.opengis.metadata.content.ImageDescription object) Returns a SIS metadata implementation with the values of the given arbitrary implementation.Returns the area of the dataset obscured by clouds, expressed as a percentage of the spatial extent.Returns the count of the number of lossy compression cycles performed on the image.Returns the illumination azimuth measured in degrees clockwise from true north at the time the image is taken.Returns the illumination elevation measured in degrees clockwise from the target plane at intersection of the optical line of sight with the Earth's surface.org.opengis.metadata.IdentifierReturns a code in producer’s codespace that specifies the image quality.org.opengis.metadata.content.ImagingConditionReturns the conditions which affected the image.private org.opengis.metadata.IdentifierAn attribute which was defined inImageDescriptionby ISO 19115:2003, and which moved to the parent class in ISO 19115:2014 revision.Returns the indication of whether or not triangulation has been performed upon the image.Returns the indication of whether or not constants are available which allow for camera calibration corrections.Returns the indication of whether or not Calibration Reseau information is available.Returns the indication of whether or not lens aberration correction information is available.Returns the indication of whether or not the radiometric calibration information for generating the radiometrically calibrated standard data product is available.voidSets the indication of whether or not constants are available which allow for camera calibration corrections.voidsetCloudCoverPercentage(Double newValue) Sets the area of the dataset obscured by clouds, expressed as a percentage of the spatial extent.voidsetCompressionGenerationQuantity(Integer newValue) Sets the count of the number the number of lossy compression cycles performed on the image.voidsetFilmDistortionInformationAvailable(Boolean newValue) Sets the indication of whether or not Calibration Reseau information is available.voidsetIlluminationAzimuthAngle(Double newValue) Sets the illumination azimuth measured in degrees clockwise from true north at the time the image is taken.voidsetIlluminationElevationAngle(Double newValue) Sets the illumination elevation measured in degrees clockwise from the target plane at intersection of the optical line of sight with the Earth's surface.voidsetImageQualityCode(org.opengis.metadata.Identifier newValue) Sets a code in producer’s codespace that specifies the image quality.voidsetImagingCondition(org.opengis.metadata.content.ImagingCondition newValue) Sets the conditions that affected the image.voidsetLensDistortionInformationAvailable(Boolean newValue) Sets the indication of whether or not lens aberration correction information is available.private voidsetProcessingLevel(org.opengis.metadata.Identifier newValue) Invoked by JAXB at unmarshalling time.voidSets the indication of whether or not the radiometric calibration information for generating the radiometrically calibrated standard data product is available.voidsetTriangulationIndicator(Boolean newValue) Sets the indication of whether or not triangulation has been performed upon the image.Methods inherited from class org.apache.sis.metadata.iso.content.DefaultCoverageDescription
castOrCopy, getAttributeDescription, getAttributeGroups, getContentType, getDimensions, getProcessingLevelCode, getRangeElementDescriptions, setAttributeDescription, setAttributeGroups, setContentType, setDimensions, setProcessingLevelCode, setRangeElementDescriptionsMethods inherited from class org.apache.sis.metadata.iso.content.AbstractContentInformation
castOrCopyMethods inherited from class org.apache.sis.metadata.iso.ISOMetadata
getIdentifier, getIdentifierMap, getIdentifiers, getStandard, setIdentifier, transitionToMethods inherited from class org.apache.sis.metadata.ModifiableMetadata
checkWritePermission, collectionType, copyCollection, copyList, copyMap, copySet, deepCopy, nonNullCollection, nonNullList, nonNullMap, nonNullSet, singleton, state, writeCollection, writeList, writeMap, writeSetMethods inherited from class org.apache.sis.metadata.AbstractMetadata
asMap, asTreeTable, equals, equals, getInterface, hashCode, isEmpty, prune, toStringMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface org.opengis.metadata.content.CoverageDescription
getAttributeDescription, getContentType, getDimensions, getRangeElementDescriptionsMethods inherited from interface org.opengis.metadata.content.ImageDescription
getProcessingLevelCode
-
Field Details
-
serialVersionUID
private static final long serialVersionUIDSerial number for inter-operability with different versions.- See Also:
-
illuminationElevationAngle
Illumination elevation measured in degrees clockwise from the target plane at intersection of the optical line of sight with the Earth's surface. For images from a scanning device, refer to the centre pixel of the image. -
illuminationAzimuthAngle
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. -
imagingCondition
private org.opengis.metadata.content.ImagingCondition imagingConditionConditions affected the image. -
imageQualityCode
private org.opengis.metadata.Identifier imageQualityCodeSpecifies the image quality. -
cloudCoverPercentage
Area of the dataset obscured by clouds, expressed as a percentage of the spatial extent. -
compressionGenerationQuantity
Count of the number of lossy compression cycles performed on the image. -
triangulationIndicator
Indication of whether or not triangulation has been performed upon the image.Implementation note: we need to store the reference to the
Booleaninstance instead than using bitmask becausePrimitiveTypePropertiesmay associate some properties to that particular instance. -
radiometricCalibrationDataAvailable
Indication of whether or not the radiometric calibration information for generating the radiometrically calibrated standard data product is available. -
cameraCalibrationInformationAvailable
Indication of whether or not constants are available which allow for camera calibration corrections. -
filmDistortionInformationAvailable
Indication of whether or not Calibration Reseau information is available. -
lensDistortionInformationAvailable
Indication of whether or not lens aberration correction information is available.
-
-
Constructor Details
-
DefaultImageDescription
public DefaultImageDescription()Constructs an initially empty image description. -
DefaultImageDescription
public DefaultImageDescription(org.opengis.metadata.content.ImageDescription object) Constructs a new instance initialized with the values from the specified metadata object. This is a shallow copy constructor, because the other metadata contained in the given object are not recursively copied.Note on properties validation: This constructor does not verify the property values of the given metadata (e.g. whether a value is out of range). This is because invalid metadata exist in practice, and verifying their validity in this copy constructor is often too late. Note that this is not the only hole, as invalid metadata instances can also be obtained by unmarshalling an invalid XML document.- Parameters:
object- the metadata to copy values from, ornullif none.- See Also:
-
-
Method Details
-
castOrCopy
public static DefaultImageDescription castOrCopy(org.opengis.metadata.content.ImageDescription object) Returns a SIS metadata implementation with the values of the given arbitrary implementation. This method performs the first applicable action in the following choices:- If the given object is
null, then this method returnsnull. - Otherwise if the given object is already an instance of
DefaultImageDescription, then it is returned unchanged. - Otherwise a new
DefaultImageDescriptioninstance is created using the copy constructor and returned. Note that this is a shallow copy operation, because the other metadata contained in the given object are not recursively copied.
- Parameters:
object- the object to get as a SIS implementation, ornullif none.- Returns:
- a SIS implementation containing the values of the given object (may be the
given object itself), or
nullif the argument was null.
- If the given object is
-
getIlluminationElevationAngle
Returns the illumination elevation measured in degrees clockwise from the target plane at intersection of the optical line of sight with the Earth's surface. For images from a scanning device, refer to the centre pixel of the image.The horizon is at 0°, straight up has an elevation of 90°.
- Specified by:
getIlluminationElevationAnglein interfaceorg.opengis.metadata.content.ImageDescription- Returns:
- a value between -90° and +90°, or
nullif unspecified.
-
setIlluminationElevationAngle
Sets the illumination elevation measured in degrees clockwise from the target plane at intersection of the optical line of sight with the Earth's surface. For images from a scanning device, refer to the centre pixel of the image.- Parameters:
newValue- the new illumination elevation angle, ornull.- Throws:
IllegalArgumentException- if the given value is out of range.
-
getIlluminationAzimuthAngle
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.- Specified by:
getIlluminationAzimuthAnglein interfaceorg.opengis.metadata.content.ImageDescription- Returns:
- a value between 0° and 360°, or
nullif unspecified.
-
setIlluminationAzimuthAngle
Sets 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.- Parameters:
newValue- the new illumination azimuth angle, ornull.- Throws:
IllegalArgumentException- if the given value is out of range.
-
getImagingCondition
public org.opengis.metadata.content.ImagingCondition getImagingCondition()Returns the conditions which affected the image.- Specified by:
getImagingConditionin interfaceorg.opengis.metadata.content.ImageDescription- Returns:
- conditions which affected the image, or
nullif unspecified.
-
setImagingCondition
public void setImagingCondition(org.opengis.metadata.content.ImagingCondition newValue) Sets the conditions that affected the image.- Parameters:
newValue- the new imaging condition.
-
getImageQualityCode
public org.opengis.metadata.Identifier getImageQualityCode()Returns a code in producer’s codespace that specifies the image quality.- Specified by:
getImageQualityCodein interfaceorg.opengis.metadata.content.ImageDescription- Returns:
- the image quality, or
nullif unspecified.
-
setImageQualityCode
public void setImageQualityCode(org.opengis.metadata.Identifier newValue) Sets a code in producer’s codespace that specifies the image quality.- Parameters:
newValue- the new image quality code.
-
getCloudCoverPercentage
Returns the area of the dataset obscured by clouds, expressed as a percentage of the spatial extent.- Specified by:
getCloudCoverPercentagein interfaceorg.opengis.metadata.content.ImageDescription- Returns:
- a value between 0 and 100, or
nullif unspecified.
-
setCloudCoverPercentage
Sets the area of the dataset obscured by clouds, expressed as a percentage of the spatial extent.- Parameters:
newValue- the new cloud cover percentage, ornull.- Throws:
IllegalArgumentException- if the given value is out of range.
-
getCompressionGenerationQuantity
Returns the count of the number of lossy compression cycles performed on the image.- Specified by:
getCompressionGenerationQuantityin interfaceorg.opengis.metadata.content.ImageDescription- Returns:
- the number of lossy compression cycles performed on the image, or
nullif unspecified.
-
setCompressionGenerationQuantity
Sets the count of the number the number of lossy compression cycles performed on the image.- Parameters:
newValue- the new compression generation quantity.- Throws:
IllegalArgumentException- if the given value is negative.
-
getTriangulationIndicator
Returns the indication of whether or not triangulation has been performed upon the image.- Specified by:
getTriangulationIndicatorin interfaceorg.opengis.metadata.content.ImageDescription- Returns:
- whether or not triangulation has been performed upon the image, or
nullif unspecified.
-
setTriangulationIndicator
Sets the indication of whether or not triangulation has been performed upon the image.- Parameters:
newValue- the new triangulation indicator.
-
isRadiometricCalibrationDataAvailable
Returns the indication of whether or not the radiometric calibration information for generating the radiometrically calibrated standard data product is available.- Specified by:
isRadiometricCalibrationDataAvailablein interfaceorg.opengis.metadata.content.ImageDescription- Returns:
- whether or not the radiometric calibration information is available, or
nullif unspecified.
-
setRadiometricCalibrationDataAvailable
Sets the indication of whether or not the radiometric calibration information for generating the radiometrically calibrated standard data product is available.- Parameters:
newValue-trueif radiometric calibration data are available.
-
isCameraCalibrationInformationAvailable
Returns the indication of whether or not constants are available which allow for camera calibration corrections.- Specified by:
isCameraCalibrationInformationAvailablein interfaceorg.opengis.metadata.content.ImageDescription- Returns:
- whether or not constants are available for camera calibration corrections, or
nullif unspecified.
-
setCameraCalibrationInformationAvailable
Sets the indication of whether or not constants are available which allow for camera calibration corrections.- Parameters:
newValue-trueif camera calibration information are available.
-
isFilmDistortionInformationAvailable
Returns the indication of whether or not Calibration Reseau information is available.- Specified by:
isFilmDistortionInformationAvailablein interfaceorg.opengis.metadata.content.ImageDescription- Returns:
- whether or not Calibration Reseau information is available, or
nullif unspecified.
-
setFilmDistortionInformationAvailable
Sets the indication of whether or not Calibration Reseau information is available.- Parameters:
newValue-trueif film distortion information are available.
-
isLensDistortionInformationAvailable
Returns the indication of whether or not lens aberration correction information is available.- Specified by:
isLensDistortionInformationAvailablein interfaceorg.opengis.metadata.content.ImageDescription- Returns:
- whether or not lens aberration correction information is available, or
nullif unspecified.
-
setLensDistortionInformationAvailable
Sets the indication of whether or not lens aberration correction information is available.- Parameters:
newValue-trueif lens distortion information are available.
-
getProcessingLevel
private org.opengis.metadata.Identifier getProcessingLevel()An attribute which was defined inImageDescriptionby ISO 19115:2003, and which moved to the parent class in ISO 19115:2014 revision. We handle the two versions separately for proper attribute ordering, and for avoiding this attribute to be written for subtypes other thanImageDescription. -
setProcessingLevel
private void setProcessingLevel(org.opengis.metadata.Identifier newValue) Invoked by JAXB at unmarshalling time.
-