public abstract class AbstractTMSTileSource extends AbstractTileSource
Modifier and Type | Field and Description |
---|---|
protected java.lang.String |
baseUrl |
protected java.lang.String |
id |
private java.util.Map<java.lang.String,java.lang.String> |
metadataHeaders |
protected boolean |
modTileFeatures |
protected java.lang.String |
name |
private java.util.Map<java.lang.String,java.util.Set<java.lang.String>> |
noTileChecksums |
private java.util.Map<java.lang.String,java.util.Set<java.lang.String>> |
noTileHeaders |
protected int |
tileSize |
attributionImage, attributionImageURL, attributionLinkURL, attributionText, termsOfUseText, termsOfUseURL
Constructor and Description |
---|
AbstractTMSTileSource(TileSourceInfo info)
Creates an instance based on TileSource information
|
Modifier and Type | Method and Description |
---|---|
java.lang.String |
getBaseUrl() |
int |
getDefaultTileSize() |
java.lang.String |
getExtension() |
java.lang.String |
getId()
A unique id for this tile source.
|
int |
getMaxZoom()
Specifies the maximum zoom value.
|
java.util.Map<java.lang.String,java.lang.String> |
getMetadata(java.util.Map<java.lang.String,java.util.List<java.lang.String>> headers)
Extracts metadata about the tile based on HTTP headers
|
int |
getMinZoom()
Specifies the minimum zoom value.
|
java.lang.String |
getName()
A tile layer name as displayed to the user.
|
java.lang.String |
getTileId(int zoom,
int tilex,
int tiley)
Creates tile identifier that is unique among all tile sources, but the same tile will always
get the same identifier.
|
private static int |
getTileMax(int zoom) |
java.lang.String |
getTilePath(int zoom,
int tilex,
int tiley) |
int |
getTileSize()
Specifies how large each tile is.
|
java.lang.String |
getTileUrl(int zoom,
int tilex,
int tiley)
Constructs the tile url.
|
int |
getTileXMax(int zoom)
Get maximum x index of tile for specified zoom level.
|
int |
getTileXMin(int zoom)
Get minimum x index of tile for specified zoom level.
|
int |
getTileYMax(int zoom)
Get maximum y index of tile for specified zoom level.
|
int |
getTileYMin(int zoom)
Get minimum y index of tile for specified zoom level
|
boolean |
isModTileFeatures()
Determines if this imagery supports "/dirty" mode (tile re-rendering).
|
boolean |
isNoTileAtZoom(java.util.Map<java.lang.String,java.util.List<java.lang.String>> headers,
int statusCode,
byte[] content)
Determines, if the returned data from TileSource represent "no tile at this zoom level" situation.
|
TileXY |
latLonToTileXY(ICoordinate point,
int zoom)
Transforms longitude and latitude to tile indices.
|
java.awt.Point |
latLonToXY(ICoordinate point,
int zoom)
Transforms longitude and latitude to pixel space (as if all tiles at specified zoom level where joined).
|
ICoordinate |
tileXYToLatLon(Tile tile)
Determines to longitude and latitude of a tile.
|
ICoordinate |
tileXYToLatLon(TileXY xy,
int zoom)
Transforms tile indices to longitude and latitude.
|
java.lang.String |
toString() |
ICoordinate |
xyToLatLon(java.awt.Point point,
int zoom)
Transforms a point in pixel space to longitude/latitude (WGS84).
|
getAttributionImage, getAttributionImageURL, getAttributionLinkURL, getAttributionText, getTermsOfUseText, getTermsOfUseURL, requiresAttribution, setAttributionImage, setAttributionImageURL, setAttributionLinkURL, setAttributionText, setTermsOfUseText, setTermsOfUseURL
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
getCoveringTileRange, getDistance, getServerCRS, isInside, latLonToTileXY, latLonToXY, projectedToTileXY, tileXYToLatLon, tileXYtoProjected, xyToLatLon
protected java.lang.String name
protected java.lang.String baseUrl
protected java.lang.String id
private final java.util.Map<java.lang.String,java.util.Set<java.lang.String>> noTileHeaders
private final java.util.Map<java.lang.String,java.util.Set<java.lang.String>> noTileChecksums
private final java.util.Map<java.lang.String,java.lang.String> metadataHeaders
protected boolean modTileFeatures
protected int tileSize
public AbstractTMSTileSource(TileSourceInfo info)
info
- description of the Tile Sourcepublic int getDefaultTileSize()
public java.lang.String getName()
TileSource
public java.lang.String getId()
TileSource
public int getMaxZoom()
TileSource
TileSource.getMaxZoom()
].JMapViewer.MAX_ZOOM
public int getMinZoom()
TileSource
public java.lang.String getExtension()
public java.lang.String getTilePath(int zoom, int tilex, int tiley) throws java.io.IOException
zoom
- level of the tiletilex
- tile number in x axistiley
- tile number in y axisjava.io.IOException
- when subclass cannot return the tile URLpublic java.lang.String getBaseUrl()
public java.lang.String getTileUrl(int zoom, int tilex, int tiley) throws java.io.IOException
TileSource
zoom
- zoom leveltilex
- X coordinatetiley
- Y coordinatejava.io.IOException
- if any I/O error occurspublic java.lang.String toString()
toString
in class java.lang.Object
public int getTileSize()
TileSource
public java.awt.Point latLonToXY(ICoordinate point, int zoom)
TileSource
point
- pointzoom
- zoom levelpublic ICoordinate xyToLatLon(java.awt.Point point, int zoom)
TileSource
point
- pointzoom
- zoom levelpublic TileXY latLonToTileXY(ICoordinate point, int zoom)
TileSource
point
- pointzoom
- zoom levelpublic ICoordinate tileXYToLatLon(TileXY xy, int zoom)
TileSource
xy
- X/Y tile indiceszoom
- zoom levelpublic ICoordinate tileXYToLatLon(Tile tile)
TileSource
tile
- Tilepublic int getTileXMax(int zoom)
TileSource
zoom
- zoom levelpublic int getTileXMin(int zoom)
TileSource
zoom
- zoom levelpublic int getTileYMax(int zoom)
TileSource
zoom
- zoom levelpublic int getTileYMin(int zoom)
TileSource
zoom
- zoom levelpublic boolean isNoTileAtZoom(java.util.Map<java.lang.String,java.util.List<java.lang.String>> headers, int statusCode, byte[] content)
TileSource
isNoTileAtZoom
in interface TileSource
isNoTileAtZoom
in class AbstractTileSource
headers
- HTTP headers from response from TileSource serverstatusCode
- HTTP status codecontent
- byte array representing the data returned from the serverpublic java.util.Map<java.lang.String,java.lang.String> getMetadata(java.util.Map<java.lang.String,java.util.List<java.lang.String>> headers)
TileSource
headers
- HTTP headers from Tile Source serverpublic java.lang.String getTileId(int zoom, int tilex, int tiley)
TileSource
zoom
- zoom leveltilex
- X coordinatetiley
- Y coordinatepublic boolean isModTileFeatures()
TileSource
true
if it supports "/dirty" mode (tile re-rendering)private static int getTileMax(int zoom)