TiledElevationCoverage

actual open class TiledElevationCoverage(tileMatrixSet: TileMatrixSet, elevationSourceFactory: ElevationSourceFactory) : AbstractTiledElevationCoverage

iOS port of TiledElevationCoverage. Two retrieval paths:

  • TileSourceElevationRef — cache-first reads through the earth.worldwind.layer.cache.CachedTileSource decorator. Output format comes from the ref, no Content-Type negotiation needed.

  • URL — direct Ktor GET, dispatched by Content-Type header.

Both paths share decodeBytes which understands application/bil16, application/bil32, image/tiff (GeoTIFF), and application/dted{,0,1,2}. PNG-encoded elevation tiles fall through with a WARN — add a decoder if any consumer wires that format.

actual open class TiledElevationCoverage(tileMatrixSet: TileMatrixSet, elevationSourceFactory: ElevationSourceFactory) : AbstractTiledElevationCoverage, CacheableElevationCoverage

Inheritors

actual open class TiledElevationCoverage(tileMatrixSet: TileMatrixSet, elevationSourceFactory: ElevationSourceFactory) : AbstractTiledElevationCoverage

Constructors

Link copied to clipboard
expect constructor(tileMatrixSet: TileMatrixSet, elevationSourceFactory: ElevationSourceFactory)
actual constructor(tileMatrixSet: TileMatrixSet, elevationSourceFactory: ElevationSourceFactory)
actual constructor(tileMatrixSet: TileMatrixSet, elevationSourceFactory: ElevationSourceFactory)
actual constructor(tileMatrixSet: TileMatrixSet, elevationSourceFactory: ElevationSourceFactory)

Properties

Link copied to clipboard
open val boundingSector: Sector

Bounding sector of the elevation coverage.

Link copied to clipboard

See TiledImageLayer.cachedSourceInfo — same shape for elevation coverages. The cache provider here is the elevation source factory, not a tile-source decorator.

cacheRetrievalQueueSize
Link copied to clipboard

Concurrent cache-only reads allowed. Generous vs retrievalQueueSize: cache reads are cheap local I/O and must get their own budget separate from the network-retrieval budget, so a slow network DEM fetch holding the network slots can't stall cached tiles behind it.

Concurrent cache-only reads allowed. Generous vs retrievalQueueSize: cache reads are cheap local I/O and must get their own budget separate from the network-retrieval budget, so a slow network DEM fetch holding the network slots can't stall cached tiles behind it.

Concurrent cache-only reads allowed. Generous vs retrievalQueueSize: cache reads are cheap local I/O and must get their own budget separate from the network-retrieval budget, so a slow network DEM fetch holding the network slots can't stall cached tiles behind it.

Concurrent cache-only reads allowed. Generous vs retrievalQueueSize: cache reads are cheap local I/O and must get their own budget separate from the network-retrieval budget, so a slow network DEM fetch holding the network slots can't stall cached tiles behind it.

displayName
Link copied to clipboard
open override var displayName: String?

Human-readable elevation coverage name

open override var displayName: String?

Human-readable elevation coverage name

open override var displayName: String?

Human-readable elevation coverage name

open override var displayName: String?

Human-readable elevation coverage name

elevationSourceFactory
Link copied to clipboard
var elevationSourceFactory: ElevationSourceFactory
var elevationSourceFactory: ElevationSourceFactory
var elevationSourceFactory: ElevationSourceFactory
isEnabled
Link copied to clipboard
open override var isEnabled: Boolean

Determines if current elevation coverage should be processed during rendering

open override var isEnabled: Boolean

Determines if current elevation coverage should be processed during rendering

open override var isEnabled: Boolean

Determines if current elevation coverage should be processed during rendering

open override var isEnabled: Boolean

Determines if current elevation coverage should be processed during rendering

retrievalQueueSize
Link copied to clipboard

Controls how many concurrent tile requests are allowed for this coverage.

Controls how many concurrent tile requests are allowed for this coverage.

Controls how many concurrent tile requests are allowed for this coverage.

Controls how many concurrent tile requests are allowed for this coverage.

sector
Link copied to clipboard
override val sector: Sector

Elevation content bounding sector

override val sector: Sector

Elevation content bounding sector

override val sector: Sector

Elevation content bounding sector

override val sector: Sector

Elevation content bounding sector

tileMatrixSet
Link copied to clipboard
var tileMatrixSet: TileMatrixSet
var tileMatrixSet: TileMatrixSet

Tile matrix which defines elevation coverage area.

var tileMatrixSet: TileMatrixSet
timestamp
Link copied to clipboard
open override val timestamp: Long

Last elevation update timestamp

open override val timestamp: Long

Last elevation update timestamp

open override val timestamp: Long

Last elevation update timestamp

open override val timestamp: Long

Last elevation update timestamp

type
Link copied to clipboard

Unique identifier of the coverage type, defined by elevation source factory content type

Unique identifier of the coverage type, defined by elevation source factory content type

Unique identifier of the coverage type, defined by elevation source factory content type

Unique identifier of the coverage type, defined by elevation source factory content type

Functions

clear
Link copied to clipboard
open override fun clear()

Clears elevation runtime data

open override fun clear()

Clears elevation runtime data

open override fun clear()

Clears elevation runtime data

open override fun clear()

Clears elevation runtime data

Link copied to clipboard
expect open fun clone(): TiledElevationCoverage
actual open fun clone(): TiledElevationCoverage
actual open fun clone(): TiledElevationCoverage

Makes a copy of this elevation coverage.

actual open fun clone(): TiledElevationCoverage

Makes a copy of this elevation coverage

Link copied to clipboard

Elevation-coverage counterpart of TiledImageLayer.contentEntry — coverages have no "self-contained file factory" case in the current factory set, so this is just the ContentManager adapter behind a uniform call site.

getElevation
Link copied to clipboard
open override fun getElevation(latitude: Angle, longitude: Angle, retrieve: Boolean): Float

Gets elevation at specified location

open override fun getElevation(latitude: Angle, longitude: Angle, retrieve: Boolean): Float

Gets elevation at specified location

open override fun getElevation(latitude: Angle, longitude: Angle, retrieve: Boolean): Float

Gets elevation at specified location

open override fun getElevation(latitude: Angle, longitude: Angle, retrieve: Boolean): Float

Gets elevation at specified location

getElevationGrid
Link copied to clipboard
open override fun getElevationGrid(gridSector: Sector, gridWidth: Int, gridHeight: Int, result: FloatArray)

Gets elevation values for the specified sector with required width and height resolution

open override fun getElevationGrid(gridSector: Sector, gridWidth: Int, gridHeight: Int, result: FloatArray)

Gets elevation values for the specified sector with required width and height resolution

open override fun getElevationGrid(gridSector: Sector, gridWidth: Int, gridHeight: Int, result: FloatArray)

Gets elevation values for the specified sector with required width and height resolution

open override fun getElevationGrid(gridSector: Sector, gridWidth: Int, gridHeight: Int, result: FloatArray)

Gets elevation values for the specified sector with required width and height resolution

getElevationLimits
Link copied to clipboard
open override fun getElevationLimits(sector: Sector, result: FloatArray)

Gets elevation limits at specified sector

open override fun getElevationLimits(sector: Sector, result: FloatArray)

Gets elevation limits at specified sector

open override fun getElevationLimits(sector: Sector, result: FloatArray)

Gets elevation limits at specified sector

open override fun getElevationLimits(sector: Sector, result: FloatArray)

Gets elevation limits at specified sector

getUserProperty
Link copied to clipboard
open override fun getUserProperty(key: Any): Any?

Gets optional user property

open override fun getUserProperty(key: Any): Any?

Gets optional user property

open override fun getUserProperty(key: Any): Any?

Gets optional user property

open override fun getUserProperty(key: Any): Any?

Gets optional user property

hasUserProperty
Link copied to clipboard
open override fun hasUserProperty(key: Any): Boolean

Checks optional user property exists

open override fun hasUserProperty(key: Any): Boolean

Checks optional user property exists

open override fun hasUserProperty(key: Any): Boolean

Checks optional user property exists

open override fun hasUserProperty(key: Any): Boolean

Checks optional user property exists

isChangedSince
Link copied to clipboard
open override fun isChangedSince(time: Long, sector: Sector): Boolean

Checks if coverage data influencing the specified sector could have changed after the specified timestamp

open override fun isChangedSince(time: Long, sector: Sector): Boolean

Checks if coverage data influencing the specified sector could have changed after the specified timestamp

open override fun isChangedSince(time: Long, sector: Sector): Boolean

Checks if coverage data influencing the specified sector could have changed after the specified timestamp

open override fun isChangedSince(time: Long, sector: Sector): Boolean

Checks if coverage data influencing the specified sector could have changed after the specified timestamp

Link copied to clipboard
fun TiledElevationCoverage.launchBulkRetrieval(sector: Sector, resolution: ClosedRange<Angle>, scope: CoroutineScope = GlobalScope, maxRetries: Int = 3, retryTimeoutShort: Duration = 5.seconds, retryTimeoutLong: Duration = 15.seconds, overrideCache: Boolean = false, onProgress: (downloaded: Long, skipped: Long, total: Long) -> Unit? = null): Job?

Download every elevation tile that intersects sector across every tile matrix whose pixel-resolution falls in resolution, writing each tile through to the coverage's cache.

putUserProperty
Link copied to clipboard
open override fun putUserProperty(key: Any, value: Any): Any?

Puts optional user property

open override fun putUserProperty(key: Any, value: Any): Any?

Puts optional user property

open override fun putUserProperty(key: Any, value: Any): Any?

Puts optional user property

open override fun putUserProperty(key: Any, value: Any): Any?

Puts optional user property

removeUserProperty
Link copied to clipboard
open override fun removeUserProperty(key: Any): Any?

Removes optional user property

open override fun removeUserProperty(key: Any): Any?

Removes optional user property

open override fun removeUserProperty(key: Any): Any?

Removes optional user property

open override fun removeUserProperty(key: Any): Any?

Removes optional user property

Link copied to clipboard

See setOfflineOnly on TiledImageLayer. The OfflineToggleable lives on the coverage's elevationSourceFactory (the platform-specific CachedElevationSourceFactory / GpkgCachedElevationSourceFactory both implement it). No-op when the coverage is wired to a network-only factory.

setupCoverageCache
Link copied to clipboard
fun setupCoverageCache(capacity: Long, lowWater: Long = (capacity * 0.75).toLong())

Setup custom coverage cache size according to device capabilities and user needs.

fun setupCoverageCache(capacity: Long, lowWater: Long = (capacity * 0.75).toLong())

Setup custom coverage cache size according to device capabilities and user needs.

fun setupCoverageCache(capacity: Long, lowWater: Long = (capacity * 0.75).toLong())

Setup custom coverage cache size according to device capabilities and user needs.

fun setupCoverageCache(capacity: Long, lowWater: Long = (capacity * 0.75).toLong())

Setup custom coverage cache size according to device capabilities and user needs.