Class DefaultImageDatum

All Implemented Interfaces:
Serializable, Formattable, Deprecable, LenientComparable, org.opengis.referencing.datum.Datum, org.opengis.referencing.datum.ImageDatum, org.opengis.referencing.IdentifiedObject

public class DefaultImageDatum extends AbstractDatum implements org.opengis.referencing.datum.ImageDatum
Defines the origin of an image coordinate reference system. An image datum is used in a local context only. For an image datum, the anchor point is usually either the centre of the image or the corner of the image.

Immutability and thread safety

This class is immutable and thus thread-safe if the property values (not necessarily the map itself) given to the constructor are also immutable. Unless otherwise noted in the javadoc, this condition holds if all components were created using only SIS factories and static constants.
Since:
0.4
Version:
0.7
See Also:
  • Nested Class Summary

    Nested classes/interfaces inherited from class org.apache.sis.referencing.datum.AbstractDatum

    AbstractDatum.Simplifier
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    private org.opengis.referencing.datum.PixelInCell
    Specification of the way the image grid is associated with the image data attributes.
    private static final long
    Serial number for inter-operability with different versions.

    Fields inherited from class org.apache.sis.referencing.AbstractIdentifiedObject

    DEPRECATED_KEY, LOCALE_KEY

    Fields inherited from interface org.opengis.referencing.datum.Datum

    ANCHOR_POINT_KEY, DOMAIN_OF_VALIDITY_KEY, REALIZATION_EPOCH_KEY, SCOPE_KEY

    Fields inherited from interface org.opengis.referencing.IdentifiedObject

    ALIAS_KEY, IDENTIFIERS_KEY, NAME_KEY, REMARKS_KEY
  • Constructor Summary

    Constructors
    Modifier
    Constructor
    Description
    private
    Constructs a new datum in which every attributes are set to a null value.
     
    DefaultImageDatum(Map<String,?> properties, org.opengis.referencing.datum.PixelInCell pixelInCell)
    Creates an image datum from the given properties.
    protected
    DefaultImageDatum(org.opengis.referencing.datum.ImageDatum datum)
    Creates a new datum with the same values than the specified one.
  • Method Summary

    Modifier and Type
    Method
    Description
    castOrCopy(org.opengis.referencing.datum.ImageDatum object)
    Returns a SIS datum implementation with the same values than the given arbitrary implementation.
    protected long
    Invoked by hashCode() for computing the hash code when first needed.
    boolean
    equals(Object object, ComparisonMode mode)
    Compares this datum with the specified object for equality.
    protected String
    formatTo(Formatter formatter)
    Formats this datum as a Well Known Text ImageDatum[…] element.
    Class<? extends org.opengis.referencing.datum.ImageDatum>
    Returns the GeoAPI interface implemented by this class.
    org.opengis.referencing.datum.PixelInCell
    Specification of the way the image grid is associated with the image data attributes.
    private void
    setPixelInCell(org.opengis.referencing.datum.PixelInCell value)
    Invoked by JAXB only at unmarshalling time.

    Methods inherited from class org.apache.sis.referencing.datum.AbstractDatum

    castOrCopy, getAnchorPoint, getDomainOfValidity, getRealizationEpoch, getScope, isHeuristicMatchForName

    Methods inherited from class org.apache.sis.io.wkt.FormattableObject

    print, toString, toString, toWKT

    Methods inherited from class java.lang.Object

    clone, finalize, getClass, notify, notifyAll, wait, wait, wait

    Methods inherited from interface org.opengis.referencing.datum.Datum

    getAnchorPoint, getDomainOfValidity, getRealizationEpoch, getScope

    Methods inherited from interface org.opengis.referencing.IdentifiedObject

    getAlias, getIdentifiers, getName, getRemarks, toWKT
  • Field Details

    • serialVersionUID

      private static final long serialVersionUID
      Serial number for inter-operability with different versions.
      See Also:
    • pixelInCell

      private org.opengis.referencing.datum.PixelInCell pixelInCell
      Specification of the way the image grid is associated with the image data attributes.

      Consider this field as final! This field is modified only at unmarshalling time by setPixelInCell(PixelInCell)

      See Also:
  • Constructor Details

  • Method Details

    • castOrCopy

      public static DefaultImageDatum castOrCopy(org.opengis.referencing.datum.ImageDatum object)
      Returns a SIS datum implementation with the same values than the given arbitrary implementation. If the given object is null, then this method returns null. Otherwise if the given object is already a SIS implementation, then the given object is returned unchanged. Otherwise a new SIS implementation is created and initialized to the attribute values of the given object.
      Parameters:
      object - the object to get as a SIS implementation, or null if none.
      Returns:
      a SIS implementation containing the values of the given object (may be the given object itself), or null if the argument was null.
    • getInterface

      public Class<? extends org.opengis.referencing.datum.ImageDatum> getInterface()
      Returns the GeoAPI interface implemented by this class. The SIS implementation returns ImageDatum.class.
      Note for implementers: Subclasses usually do not need to override this method since GeoAPI does not define ImageDatum sub-interface. Overriding possibility is left mostly for implementers who wish to extend GeoAPI with their own set of interfaces.
      Overrides:
      getInterface in class AbstractDatum
      Returns:
      ImageDatum.class or a user-defined sub-interface.
    • getPixelInCell

      public org.opengis.referencing.datum.PixelInCell getPixelInCell()
      Specification of the way the image grid is associated with the image data attributes.
      Specified by:
      getPixelInCell in interface org.opengis.referencing.datum.ImageDatum
      Returns:
      the way image grid is associated with image data attributes.
    • equals

      public boolean equals(Object object, ComparisonMode mode)
      Compares this datum with the specified object for equality.
      Specified by:
      equals in interface LenientComparable
      Overrides:
      equals in class AbstractDatum
      Parameters:
      object - the object to compare to this.
      mode - STRICT for performing a strict comparison, or IGNORE_METADATA for comparing only properties relevant to coordinate transformations.
      Returns:
      true if both objects are equal.
      See Also:
    • computeHashCode

      protected long computeHashCode()
      Invoked by hashCode() for computing the hash code when first needed. See AbstractIdentifiedObject.computeHashCode() for more information.
      Overrides:
      computeHashCode in class AbstractDatum
      Returns:
      the hash code value. This value may change in any future Apache SIS version.
    • formatTo

      protected String formatTo(Formatter formatter)
      Formats this datum as a Well Known Text ImageDatum[…] element.
      Compatibility note: ImageDatum is defined in the WKT 2 specification only.
      Overrides:
      formatTo in class AbstractDatum
      Parameters:
      formatter - the formatter where to format the inner content of this WKT element.
      Returns:
      "ImageDatum".
      See Also:
    • setPixelInCell

      private void setPixelInCell(org.opengis.referencing.datum.PixelInCell value)
      Invoked by JAXB only at unmarshalling time.
      See Also: