Interface TileMatrixSet

All Known Subinterfaces:
Writable­Tile­Matrix­Set

public interface TileMatrixSet
A collection of Tile­Matrix in the same CRS but at different scale levels. Each Tile­Matrix is optimized for a particular scale and is identified by a tile matrix identifier. Tile matrices usually have 2 dimensions (width and height), but this API allows any number of dimensions. However, the number of dimensions must be the same for all tile matrices.

The Tile­Matrix­Set concept is derived from OGC standards. The same concept is called image pyramid or resolution levels in some other standards. Some standards require that all scales must be related by a power of 2, but Tile­Matrix­Set does not have this restriction.

Tile matrix identification

Each Tile­Matrix in a Tile­Matrix­Set is identified by a Generic­Name. Identifiers can be any character strings. A common practice is to use zoom levels as identifiers, but this is not mandatory. However, tile matrices must be sorted from coarser resolution (highest scale denominator) to most detailed resolution (lowest scale denominator).

All methods in this interface return non-null values.

Since:
1.2
  • Method Details

    • getIdentifier

      GenericName getIdentifier()
      Returns an alphanumeric identifier which is unique in the Tiled­Resource that contains this Tile­Matrix­Set. A tiled resource may contains more than one tile matrix set if the resource prepared different set of tiles for different CRS.
      Returns:
      a unique (within Tiled­Resource) identifier.
    • getCoordinateReferenceSystem

      CoordinateReferenceSystem getCoordinateReferenceSystem()
      Returns the coordinate reference system of all Tile­Matrix instances in this set. This is the value returned by Tile­Matrix​.get­Tiling­Scheme()​.get­Coordinate­Reference­System().
      Returns:
      the CRS used by all Tile­Matrix instances in this set.
      See Also:
    • getEnvelope

      Optional<Envelope> getEnvelope()
      Returns an envelope that encompasses all Tile­Matrix instances in this set. This is the union of all values returned by Tile­Matrix​.get­Tiling­Scheme()​.get­Envelope(). May be empty if too costly to compute.
      Returns:
      the bounding box for all tile matrices in CRS coordinates, if available.
    • getTileMatrices

      SortedMap<GenericName,? extends TileMatrix> getTileMatrices()
      Returns all Tile­Matrix instances in this set, together with their identifiers. For each value in the map, the associated key is Tile­Matrix​.get­Identifier(). Entries are sorted from coarser resolution (highest scale denominator) to most detailed resolution (lowest scale denominator). This is not necessarily the natural ordering of the Generic­Name instances used as keys.
      Returns:
      unmodifiable collection of all Tile­Matrix instances with their identifiers.