Interface TileResolver

All Superinterfaces:
AncestorTileResolver, DiskTileResolver, Serializable, scala.Serializable

public interface TileResolver extends DiskTileResolver, AncestorTileResolver, scala.Serializable
Looks up TileIds using various point- or area-based queries.

Note:
The output tile level is implementation specific.
  • Method Details

    • fromAncestorTile

      scala.collection.immutable.Set<TileId> fromAncestorTile(TileId tileId)
      Returns all descendant tiles for a given tile.

      Parameters:
      tileId - The ancestor tile to be split
    • fromBoundingBox

      <BB> scala.collection.Iterable<TileId> fromBoundingBox(BB bbox, BoundingBoxOperations<BB> evidence$2)
      Returns the tiles that cover a given bounding box.

      Throws an IllegalArgumentException if bbox is not a valid bounding box.

    • fromCenterAndRadius

      <GC> scala.collection.Iterable<TileId> fromCenterAndRadius(GC center, double radiusInMeters, GeoCoordinateOperations<GC> evidence$1)
      Returns the tiles that cover a given circle.

      Throws an IllegalArgumentException if the center's latitude is not between -90.0 and 90.0.

      Specified by:
      fromCenterAndRadius in interface DiskTileResolver
      Parameters:
      center - Position of the circle center
      radiusInMeters - Radius of the circle
    • fromCoordinate

      <GC> TileId fromCoordinate(GC point, GeoCoordinateOperations<GC> evidence$3)
      Returns the tile containing a given point.

      Throws an IllegalArgumentException if the point's latitude is not between -90.0 and 90.0.

      Parameters:
      point - Position within the tile
    • fromDescendantTile

      TileId fromDescendantTile(TileId tileId)
      Returns the ancestor tile for the output level that is configured for this TileResolver.

      Specified by:
      fromDescendantTile in interface AncestorTileResolver
      Parameters:
      tileId - The descendant tile
    • fromTile

      scala.collection.immutable.Set<TileId> fromTile(TileId tileId)
      Returns the tiles associated with a given input tile.

      Which tiles that are depends on the zoom level of the input tile compared to the output level that is configured for this TileResolver. There are three cases to consider.

      • The level of the input tile is the same as the output level. In this case, only the input tile itself is returned.
      • The input tile is at a lower zoom level than the output level, meaning its area is greater than the area of a single tile at the output level. In this case, the input tile covers multiple tiles at the output level and all of them are returned.
      • The input tile is at a higher zoom level than the output level, meaning its area is smaller than the area of a single tile at the output level. In this case, the input tile is fully contained within a single output level tile and that tile is returned.
    • fromTileWithBuffer

      scala.collection.immutable.Set<TileId> fromTileWithBuffer(TileId tileId, double bufferInMeters)
      Returns the tiles that cover the area of a given tile extended by the given buffer in all directions.

      Parameters:
      tileId - The tile ID used as initial bounding box
      bufferInMeters - The buffer to be added around the tile's bounding box