Package globus.glmap

Class GLMapRasterTileSource

java.lang.Object
globus.glmap.GLNativeObject
globus.glmap.GLMapRasterTileSource
All Implemented Interfaces:
GLMapTileSource

public class GLMapRasterTileSource extends GLNativeObject implements GLMapTileSource
GLMapRasterTileSource setups custom raster tile source.
  • Constructor Details

    • GLMapRasterTileSource

      public GLMapRasterTileSource(@Nullable String cachePath) throws OutOfMemoryError
      Default constructor of GLMapRasterTileSource
      Parameters:
      cachePath - Path where database with cached tiles will be stored. If cachePath is `null` no caching will happens.
      Throws:
      OutOfMemoryError
  • Method Details

    • urlForTilePos

      @Nullable public String urlForTilePos(int x, int y, int z)
      Gets url of tile. Default implementation return nil.
      Parameters:
      x - x coordinate of tile
      y - y coordinate of tile
      z - z coordinate of tile
      Returns:
      URL of the tile
    • bitmapForTilePos

      @Nullable public android.graphics.Bitmap bitmapForTilePos(int x, int y, int z)
      Gets bitmap of tile. Default implementation return nil.
      Parameters:
      x - x coordinate of tile
      y - y coordinate of tile
      z - z coordinate of tile
      Returns:
      URL of the tile
    • setTileRefreshTimeInterval

      public void setTileRefreshTimeInterval(long tileRefreshTimeInterval)
      Cached tile will be refreshed if it will stay in cache more than given time. By default tileRefreshTimeInterval is -1. If tileRefreshTimeInterval less than zero no tile refreshing will be triggered.
      Parameters:
      tileRefreshTimeInterval - New refresh time interval for source
    • dropCache

      public void dropCache()
      Drops cached tiles
    • cacheSize

      public long cacheSize()
      Returns size of cache database
      Returns:
      size of cache database in bytes.
    • setValidZoomMask

      public void setValidZoomMask(int validZoomMask)
      Defines valid zooms for tile source. Default is 0xFFFFFFFF.
      Parameters:
      validZoomMask - New zoom mask for tile source
    • setTileSize

      public void setTileSize(int tileSize)
      Sets size of tile in points. Default is 256.
      Parameters:
      tileSize - New tile size for tile source
    • getTileSize

      public int getTileSize()
      Returns size of tile in points. Default is 256
      Returns:
      tile size in points
    • setAttributionText

      public void setAttributionText(@NonNull String text)
      Sets attribution text. Default is "© OpenStreetMap"
      Parameters:
      text - New attribution text for tile source
    • setOverzoom

      public void setOverzoom(boolean overzoom)
      Allows to draw tiles after maximum zoom
      Parameters:
      overzoom - if `true` will draw tiles after maximum zoom
    • willAttach

      public void willAttach(@NonNull GLMapViewRenderer mapView)
      Description copied from interface: GLMapTileSource
      Called when layer will be attached to map view
      Specified by:
      willAttach in interface GLMapTileSource
      Parameters:
      mapView - map view where layer will be attached
    • willDetach

      public void willDetach(@NonNull GLMapViewRenderer mapView)
      Description copied from interface: GLMapTileSource
      Called when layer will be detached from map view
      Specified by:
      willDetach in interface GLMapTileSource
      Parameters:
      mapView - map view from where layer will be detached