GlobusTerrain

Extends: EmptyTerrain

Source: GlobusTerrain.ts:58

Class that loads segment elevation data, converts it to the array and passes it to the planet segment.

Fires

  • event:load
  • event:loadend

Constructor

new GlobusTerrain( name?: string, options?: IGlobusTerrainParams, ): GlobusTerrain

Parameters

  • name (string, optional, default: "\"\"") — Terrain provider name.
  • options (IGlobusTerrainParams, optional) — Provider options:
    • options.minZoom (number, optional, default: 3) — Minimal visible zoom index when terrain handler works.
    • options.maxZoom (number, optional, default: 14) — Maximal visible zoom index when terrain handler works.
    • options.maxNativeZoom (number, optional, default: 14) — Maximal available terrain zoom level.
    • options.url (string, optional, default: "\"https://{s}.srtm3.openglobus.org/{z}/{y}/{x}.ddm\"") — Terrain source URL template.
    • options.gridSizeByZoom (Array.<number>, optional) — Segment triangulation grid sizes where array index matches segment zoom index.
    • options.plainGridSize (number, optional, default: 32) — Elevation grid size. Default is 32x32. Must be power of two.
    • options.heightFactor (number, optional, default: 1) — Elevation height multiplier.
    • options.cache (FetchCache, optional, default: "\"default\"") — Fetch cache mode.

Instance Methods

abortLoading()

Stop loading.

setUrl(url: string)

Sets terrain data url template.

Parameters

  • url (string) — Url template.

Example

Default openglobus url template:

CODE
:
"https://{s}.srtm3.openglobus.org/{z}/{y}/{x}.ddm"

setName(name: string)

Sets provider name.

Parameters

  • name (string) — Name.

loadTerrain(segment: Segment, forceLoading?: boolean)

Starts to load segment elevation data.

Parameters

  • segment (Segment) — Segment that requests terrain data.
  • forceLoading (boolean, optional, default: false) — Forces loading even if default filter would skip it.

_createUrl(segment: Segment): string

Creates default query url string.

Parameters

  • segment (Segment) — Segment to create URL for.

Returns

  • string — URL string.

_getHTTPRequestString(segment: Segment): string

Returns actual url query string.

Parameters

  • segment (Segment) — Segment that loads terrain data.

Returns

  • string — URL string.

setUrlRewriteCallback(ur: UrlRewriteFunc)

Overrides: EmptyTerrain#setUrlRewriteCallback

Sets url rewrite callback, used for custom url rewriting for every tile loading.

Parameters

  • ur (UrlRewriteFunc) — The callback that returns tile custom created url.

_createHeights(): Array.<number> | TypedArray

Converts loaded data to segment elevation data type(column major elevation data array in meters)

Returns

  • Array.<number> | TypedArray — Column-major elevation data array in meters.

_applyElevationsData()

setAttribution(html: string)

Inherited from EmptyTerrain#setAttribution

Overrides: EmptyTerrain#setAttribution

Sets terrain provider attribution text.

Parameters

  • html (string) — HTML string that represents terrain provider attribution.

getAttribution(): string

Inherited from EmptyTerrain#getAttribution

Overrides: EmptyTerrain#getAttribution

Gets terrain provider attribution.

Returns

  • string — Terrain provider attribution.

handleSegmentTerrain(segment: Segment)

Inherited from EmptyTerrain#handleSegmentTerrain

Overrides: EmptyTerrain#handleSegmentTerrain

Loads or creates segment elevation data.

Parameters

  • segment (Segment) — Segment to create elevation data.

Instance Fields

iconSrc

Inherited from EmptyTerrain#iconSrc

Overrides: EmptyTerrain#iconSrc

Gets terrain provider icon.

Returns

  • string | null — Icon source.