Class MercatorTiledImageLayer
- java.lang.Object
-
- gov.nasa.worldwind.avlist.AVListImpl
-
- gov.nasa.worldwind.WWObjectImpl
-
- gov.nasa.worldwind.layers.AbstractLayer
-
- gov.nasa.worldwind.layers.mercator.MercatorTiledImageLayer
-
- All Implemented Interfaces:
AVList
,Disposable
,MessageListener
,Layer
,Restorable
,WWObject
,java.beans.PropertyChangeListener
,java.util.EventListener
- Direct Known Subclasses:
BasicMercatorTiledImageLayer
public abstract class MercatorTiledImageLayer extends AbstractLayer
TiledImageLayer modified 2009-02-03 to add support for Mercator projections.
-
-
Constructor Summary
Constructors Constructor Description MercatorTiledImageLayer(LevelSet levelSet)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description java.awt.image.BufferedImage
composeImageForSector(Sector sector, int imageWidth, int imageHeight, int levelNumber, java.lang.String mimeType, boolean abortOnError, java.awt.image.BufferedImage image)
int
computeLevelForResolution(Sector sector, Globe globe, double resolution)
int
countImagesInSector(Sector sector, int levelNumber)
protected void
doRender(DrawContext dc)
protected abstract void
forceTextureLoad(MercatorTextureTile tile)
java.util.List<java.lang.String>
getAvailableImageFormats()
java.lang.String
getDefaultImageFormat()
protected LevelSet
getLevels()
protected Vec4
getReferencePoint()
protected java.util.concurrent.PriorityBlockingQueue<java.lang.Runnable>
getRequestQ()
boolean
isAtMaxResolution()
Indicates whether the most recent rendering of the layer rendered the highest resolution imagery or other data available.boolean
isDrawBoundingVolumes()
boolean
isDrawTileBoundaries()
boolean
isDrawTileIDs()
boolean
isForceLevelZeroLoads()
boolean
isImageFormatAvailable(java.lang.String imageFormat)
boolean
isLayerInView(DrawContext dc)
Indicates whether the layer is in the view.boolean
isMultiResolution()
Indicates whether the layer provides multiple resolutions of imagery or other data.boolean
isRetainLevelZeroTiles()
boolean
isShowImageTileOutlines()
boolean
isUseMipMaps()
boolean
isUseTransparentTextures()
void
render(DrawContext dc)
Cause the layer to draw its representation.protected abstract void
requestTexture(DrawContext dc, MercatorTextureTile tile)
protected void
setAvailableImageFormats(java.lang.String[] formats)
void
setDrawBoundingVolumes(boolean drawBoundingVolumes)
void
setDrawTileBoundaries(boolean drawTileBoundaries)
void
setDrawTileIDs(boolean drawTileIDs)
void
setForceLevelZeroLoads(boolean forceLevelZeroLoads)
void
setName(java.lang.String name)
Set the layer's name.void
setRetainLevelZeroTiles(boolean retainLevelZeroTiles)
void
setShowImageTileOutlines(boolean showImageTileOutlines)
void
setUseMipMaps(boolean useMipMaps)
void
setUseTransparentTextures(boolean useTransparentTextures)
-
Methods inherited from class gov.nasa.worldwind.layers.AbstractLayer
createLayerConfigElements, dispose, doPick, doPreRender, getDataFileStore, getExpiryTime, getLayerConfigParams, getMaxActiveAltitude, getMaxEffectiveAltitude, getMinActiveAltitude, getMinEffectiveAltitude, getName, getOpacity, getRestorableState, getScale, getScreenCredit, isEnabled, isLayerActive, isLayerConfigDocument, isNetworkRetrievalEnabled, isPickEnabled, pick, preRender, restoreState, setDataFileStore, setEnabled, setExpiryTime, setMaxActiveAltitude, setMinActiveAltitude, setNetworkRetrievalEnabled, setOpacity, setPickEnabled, setScreenCredit, toString
-
Methods inherited from class gov.nasa.worldwind.WWObjectImpl
onMessage, propertyChange
-
Methods inherited from class gov.nasa.worldwind.avlist.AVListImpl
addPropertyChangeListener, addPropertyChangeListener, clearList, copy, firePropertyChange, firePropertyChange, getBooleanValue, getBooleanValue, getChangeSupport, getDoubleValue, getDoubleValue, getEntries, getIntegerValue, getIntegerValue, getLongValue, getLongValue, getRestorableStateForAVPair, getStringValue, getStringValue, getStringValue, getValue, getValues, hasKey, removeKey, removePropertyChangeListener, removePropertyChangeListener, setValue, setValues
-
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface gov.nasa.worldwind.avlist.AVList
addPropertyChangeListener, addPropertyChangeListener, clearList, copy, firePropertyChange, firePropertyChange, getEntries, getStringValue, getValue, getValues, hasKey, removeKey, removePropertyChangeListener, removePropertyChangeListener, setValue, setValues
-
Methods inherited from interface gov.nasa.worldwind.event.MessageListener
onMessage
-
-
-
-
Constructor Detail
-
MercatorTiledImageLayer
public MercatorTiledImageLayer(LevelSet levelSet)
-
-
Method Detail
-
requestTexture
protected abstract void requestTexture(DrawContext dc, MercatorTextureTile tile)
-
forceTextureLoad
protected abstract void forceTextureLoad(MercatorTextureTile tile)
-
setName
public void setName(java.lang.String name)
Description copied from interface:Layer
Set the layer's name. The name is a convenience attribute typically used to identify the layer in user interfaces. By default, a layer has no name.- Specified by:
setName
in interfaceLayer
- Overrides:
setName
in classAbstractLayer
- Parameters:
name
- the name to assign to the layer.
-
isUseTransparentTextures
public boolean isUseTransparentTextures()
-
setUseTransparentTextures
public void setUseTransparentTextures(boolean useTransparentTextures)
-
isForceLevelZeroLoads
public boolean isForceLevelZeroLoads()
-
setForceLevelZeroLoads
public void setForceLevelZeroLoads(boolean forceLevelZeroLoads)
-
isRetainLevelZeroTiles
public boolean isRetainLevelZeroTiles()
-
setRetainLevelZeroTiles
public void setRetainLevelZeroTiles(boolean retainLevelZeroTiles)
-
isDrawTileIDs
public boolean isDrawTileIDs()
-
setDrawTileIDs
public void setDrawTileIDs(boolean drawTileIDs)
-
isDrawTileBoundaries
public boolean isDrawTileBoundaries()
-
setDrawTileBoundaries
public void setDrawTileBoundaries(boolean drawTileBoundaries)
-
isShowImageTileOutlines
public boolean isShowImageTileOutlines()
-
setShowImageTileOutlines
public void setShowImageTileOutlines(boolean showImageTileOutlines)
-
isDrawBoundingVolumes
public boolean isDrawBoundingVolumes()
-
setDrawBoundingVolumes
public void setDrawBoundingVolumes(boolean drawBoundingVolumes)
-
getLevels
protected LevelSet getLevels()
-
getRequestQ
protected java.util.concurrent.PriorityBlockingQueue<java.lang.Runnable> getRequestQ()
-
isMultiResolution
public boolean isMultiResolution()
Description copied from interface:Layer
Indicates whether the layer provides multiple resolutions of imagery or other data.- Specified by:
isMultiResolution
in interfaceLayer
- Overrides:
isMultiResolution
in classAbstractLayer
- Returns:
true
if the layer provides multiple resolutions, elsefalse
.
-
isAtMaxResolution
public boolean isAtMaxResolution()
Description copied from interface:Layer
Indicates whether the most recent rendering of the layer rendered the highest resolution imagery or other data available. Some layers do not track resolution. For those layers this value will always betrue
. Typically such layers also returnfalse
fromLayer.isMultiResolution()
.- Specified by:
isAtMaxResolution
in interfaceLayer
- Overrides:
isAtMaxResolution
in classAbstractLayer
- Returns:
true
if the layer is at maximum resolution, otherwisefalse
.
-
isUseMipMaps
public boolean isUseMipMaps()
-
setUseMipMaps
public void setUseMipMaps(boolean useMipMaps)
-
render
public void render(DrawContext dc)
Description copied from interface:Layer
Cause the layer to draw its representation.- Specified by:
render
in interfaceLayer
- Overrides:
render
in classAbstractLayer
- Parameters:
dc
- the current draw context
-
doRender
protected final void doRender(DrawContext dc)
- Specified by:
doRender
in classAbstractLayer
-
isLayerInView
public boolean isLayerInView(DrawContext dc)
Description copied from interface:Layer
Indicates whether the layer is in the view. The method implemented here is a default indicating the layer is in view. Subclasses able to determine their presence in the view should override this implementation.- Specified by:
isLayerInView
in interfaceLayer
- Overrides:
isLayerInView
in classAbstractLayer
- Parameters:
dc
- the current draw context- Returns:
true
if the layer is in the view,false
otherwise.
-
getReferencePoint
protected Vec4 getReferencePoint()
-
getAvailableImageFormats
public java.util.List<java.lang.String> getAvailableImageFormats()
-
isImageFormatAvailable
public boolean isImageFormatAvailable(java.lang.String imageFormat)
-
getDefaultImageFormat
public java.lang.String getDefaultImageFormat()
-
setAvailableImageFormats
protected void setAvailableImageFormats(java.lang.String[] formats)
-
computeLevelForResolution
public int computeLevelForResolution(Sector sector, Globe globe, double resolution)
-
composeImageForSector
public java.awt.image.BufferedImage composeImageForSector(Sector sector, int imageWidth, int imageHeight, int levelNumber, java.lang.String mimeType, boolean abortOnError, java.awt.image.BufferedImage image)
-
countImagesInSector
public int countImagesInSector(Sector sector, int levelNumber)
-
-