Class TLfnRasterAssetMetadata.TileSetStructure

java.lang.Object
com.luciad.fusion.tilestore.metadata.TLfnRasterAssetMetadata.TileSetStructure
Enclosing class:
TLfnRasterAssetMetadata

public static final class TLfnRasterAssetMetadata.TileSetStructure extends Object
This class defines a power-of-two tile set structure for an asset part. It reflects the properties of an ILcdEarthTileSet. It has:
  • An optional tile format. If null, tiles will be loaded as BufferedImage. If not null, it should indicate a MIME type. If this MIME type matches the coverage's tile format, fusion will copy the raw tile data.
  • A tile width and height, which must be >= 0. The same values apply to the whole tile set.
  • The number of levels in the tile set. You may overshoot the number of levels, in which case fusion will still stop when it reaches a 'tile not found'.
  • The level-0 row- and column count, which must be >= 0.
Asset parts with a tile set structure are used when fusing coverages as tile sets. When the coverage's tile set structure matches that of its asset, fusion happens more optimally: it copies tiles directly from the asset part's tile set.

Ideally, also the tile format of the coverage matches that of its asset, in which case the raw tile data can be copied without ever having to make images. If this is not the case, tile set fusion still loads tiles directly from the asset's tile set, but the image data of a tile is decoded and re-encoded in the coverage's tile format.

Since:
2015.0
See Also:
  • Constructor Details

    • TileSetStructure

      public TileSetStructure(String aTileFormat, int aTileWidth, int aTileHeight, int aLevelCount, long aLevel0RowCount, long aLevel0ColumnCount)
      Constructs a new tile set structure.
      Parameters:
      aTileFormat - the raw tile format as a MIME type, or null if the tile set does not support raw tiles
      aTileWidth - a tile width, which must be >= 0
      aTileHeight - a tile height, which must be >= 0
      aLevelCount - a level count, which must be >= {code 0}
      aLevel0RowCount - the # rows at level 0, which must be >= 0
      aLevel0ColumnCount - the # columns at level 0, which must be >= 0
  • Method Details

    • getLevelCount

      public int getLevelCount()
      Gets the level count of the tile pyramid. Fusion will never fuse any deeper than the level count. The level count may be an overestimate, in which case fusion will stop deepening the tile pyramid as soon as it encounters a 'tile not found'. The level count is typically not uniform: there may have tiles up to level N in some areas, but < N elsewhere.

      There is no corresponding coverage parameter.

      Returns:
      the number of levels
    • getLevel0RowCount

      public long getLevel0RowCount()
      Gets the number of rows at level 0.

      The corresponding coverage parameter is ALfnCoverageMetadata.getLevel0RowCount().

      Returns:
      the number of rows at level 0, possibly zero but never negative
    • getLevel0ColumnCount

      public long getLevel0ColumnCount()
      Gets the number of columns at level 0.

      The corresponding coverage parameter is ALfnCoverageMetadata.getLevel0ColumnCount().

      Returns:
      the number of columns at level 0, possibly zero but never negative
    • getTileWidth

      public int getTileWidth()
      Gets the tile width. The tile width is the same for all tiles in the tile set.

      The corresponding coverage parameter is TLfnRasterCoverageMetadata.getTileWidth().

      Returns:
      the tile width, possibly zero but never negative
    • getTileHeight

      public int getTileHeight()
      Gets the tile height. The tile height is the same for all tiles in the tile set.

      The corresponding coverage parameter is TLfnRasterCoverageMetadata.getTileHeight().

      Returns:
      the tile height, possibly zero but never negative
    • getTileFormat

      public String getTileFormat()
      Gets the tile format, possible null. The tile format the MIME type of the raw tile data. When it is null, it means that the tile set does not support retrieval of the raw tile data; in that case, tile data is assumed to be retrieved as TLcdEarthTileFormat(BufferedImage.class).

      The corresponding coverage parameter is ALfnCoverageMetadata.getFormat().

      Returns:
      the tile format if the raw tile data, possibly null to indicate that the tile set does not support retrieval of the raw tile data
    • equals

      public boolean equals(Object aObject)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object