public class HillsRenderConfig
extends java.lang.Object
HgtCache
All changes are lazily applied when a tile is requested with getShadingTile(int, int, double, double)
, which includes a full reindex of the .hgt files.
Eager indexing on a dedicated thread can be triggered with indexOnThread()
(e.g. after a configuration change or during setup)
Constructor and Description |
---|
HillsRenderConfig(java.io.File demFolder,
org.mapsforge.core.graphics.GraphicFactory graphicsFactory,
ShadeTileSource tileSource,
ShadingAlgorithm algorithm) |
HillsRenderConfig(ShadeTileSource tileSource) |
Modifier and Type | Method and Description |
---|---|
float |
getMaginuteScaleFactor() |
org.mapsforge.core.graphics.HillshadingBitmap |
getShadingTile(int latitudeOfSouthWestCorner,
int longituedOfSouthWestCorner,
double pxPerLat,
double pxPerLng) |
ShadeTileSource |
getTileSource() |
HillsRenderConfig |
indexOnThread()
call after initialization, after a set of changes to the settable properties or after forceReindex to initiate background indexing
|
void |
setMaginuteScaleFactor(float maginuteScaleFactor)
Increase (>1) or decrease (<1) the hillshading magnitude relative to the value set in themes
|
void |
setTileSource(ShadeTileSource tileSource) |
public HillsRenderConfig(ShadeTileSource tileSource)
public HillsRenderConfig(java.io.File demFolder, org.mapsforge.core.graphics.GraphicFactory graphicsFactory, ShadeTileSource tileSource, ShadingAlgorithm algorithm)
public HillsRenderConfig indexOnThread()
public org.mapsforge.core.graphics.HillshadingBitmap getShadingTile(int latitudeOfSouthWestCorner, int longituedOfSouthWestCorner, double pxPerLat, double pxPerLng) throws java.util.concurrent.ExecutionException, java.lang.InterruptedException
latitudeOfSouthWestCorner
- tile ID latitude (southwest corner, as customary in .hgt)longituedOfSouthWestCorner
- tile ID longitude (southwest corner, as customary in .hgt)pxPerLat
- pixels per degree of latitude (to determine padding quality requirements)pxPerLng
- pixels per degree of longitude (to determine padding quality requirements)java.util.concurrent.ExecutionException
java.lang.InterruptedException
public float getMaginuteScaleFactor()
public void setMaginuteScaleFactor(float maginuteScaleFactor)
When designing a theme, this should be one
public ShadeTileSource getTileSource()
public void setTileSource(ShadeTileSource tileSource)