Vector

Extends: Layer

Source: Vector.ts:111

Vector layer is an alternative entity storage. Used for geospatial data rendering like points, lines, polygons, geometry objects, etc.

Fires

  • event:draw
  • event:add
  • event:remove
  • event:entityadd
  • event:entityremove
  • event:visibilitychange

Constructor

new Vector(name?: string, options?: IVectorParams): Vector

Parameters

  • name (string, optional, default: "\"noname\"") — Layer name.
  • options (IVectorParams, optional) — Layer options:
    • options.minZoom (number, optional, default: 0) — Minimal visible zoom.
    • options.maxZoom (number, optional, default: 50) — Maximal visible zoom.
    • options.attribution (string, optional) — Layer attribution.
    • options.zIndex (number, optional, default: 0) — Layer Z-order index.
    • options.visibility (boolean, optional, default: true) — Layer visibility.
    • options.isBaseLayer (boolean, optional, default: false) — Layer base layer.
    • options.opacity (number, optional, default: "1.0") — Layer opacity.
    • options.pickingEnabled (boolean, optional, default: true) — Enables/disables picking.
    • options.fading (boolean, optional, default: false) — Enables layer fade-in/fade-out transition logic.
    • options.height (number, optional, default: 0) — Layer height level used for rendering order.
    • options.entities (Array.<(Entity|IEntityParams)>, optional) — Entities array or entity init params.
    • options.scaleByDistance (Array.<number>, optional) — Scale by distance parameters: [near, far, vanish, scale]. The fourth entry is a plain multiplier and defaults to 1, so three entries are accepted as well. See Vector#scaleByDistance for what each entry means. Default is [MAX32, MAX32, MAX32, 1] (no distance scaling).
    • options.pickingScale (number | Array.<number>, optional, default: "[1,1,1]") — Picking scale value or xyz scale array.
    • options.nodeCapacity (number, optional, default: 60) — Maximum entities quantity in a quadtree node.
    • options.async (boolean, optional, default: true) — Asynchronous vector data handling before rendering.
    • options.clampToGround (boolean, optional, default: false) — Clamp vector data to the ground.
    • options.relativeToGround (boolean, optional, default: false) — Place vector data relative to the ground relief.
    • options.labelMaxLetters (number, optional, default: 24) — Maximum label letters per line for label entities.
    • options.depthOffset (Number, optional, default: "0.0") — Signed world-space depth offset along the camera ray. Negative values move geometry closer to the camera, positive values move it farther.
    • options.shadeMode (number | string, optional, default: 1) — Geo object shading: 0/none unlit, 0.5/phong, 1/pbr.
    • options.depthOrder (number, optional, default: 0) — Rendering order group for vector collections.
    • options.disableCullFace (boolean, optional, default: false) — Disables back-face culling for geo object rendering.
    • options.receiveProjectors (boolean, optional, default: true) — Enables/disables projector effect reception for this layer entities.
    • options.receiveFrameTransparency (boolean, optional, default: false) — Enables/disables frame transparency reception for this layer entities.
    • options.receiveShadows (boolean, optional, default: true) — Enables/disables shadow map reception for this layer entities.//@fires entitymove

Instance Methods

addTo(planet: Planet)

Overrides: Layer#addTo

Adds layer to the planet.

Parameters

  • planet (Planet) — Planet scene object.

getEntities(): Array.<Entity>

Returns stored entities.

Returns

  • Array.<Entity> — Stored entities.

add(entity: Entity): Vector

Adds entity to the layer.

Parameters

Returns

insert(entity: Entity, index: Number): Vector

Adds entity to the layer in the index position.

Parameters

  • entity (Entity) — Entity.
  • index (Number) — Index position.

Returns

addEntities(entities: Array.<Entity>): Vector

Adds entity array to the layer.

Parameters

  • entities (Array.<Entity>) — Entities array.

Returns

removeEntity(entity: Entity): Vector

Remove entity from layer. TODO: memory leaks.

Parameters

  • entity (Entity) — Entity to remove.

Returns

_reindexEntitiesArray(startIndex: number)

protected
Vector.ts:619

Refresh collected entities indexes from startIndex entities collection array position.

Parameters

  • startIndex (number) — Entity array index.

removeEntities(entities: Array.<Entity>): Vector

Removes entities from layer.

Parameters

  • entities (Array.<Entity>) — Entity array.

Returns

clear()

Overrides: Layer#clear

Clear the layer.

each(callback: function)

Safety entities loop.

Parameters

  • callback (function) — Entity callback.

setEntities(entities: Array.<Entity>): Vector

Removes current entities from layer and adds new entities.

Parameters

  • entities (Array.<Entity>) — New entity array.

Returns

_bindEventsDefault(entityCollection)

Parameters

  • entityCollection
  • TODO:
    • (refactoring) could be used in something like bindEntityCollectionQuad(...)

loadMaterial(material: Material)

Start to load tile material.

Parameters

  • material (Material) — Current material.

abortMaterialLoading(material: Material)

Abort exact material loading.

Parameters

  • material (Material) — Segment material.

hasImageryTiles(): boolean

abstract
Layer.ts:471

Inherited from Layer#hasImageryTiles

Overrides: Layer#hasImageryTiles

Returns true if a layer has imagery tiles.

Returns

  • boolean — Imagery tiles flag.

getID(): number

Inherited from Layer#getID

Overrides: Layer#getID

Gets layer identifier.

Returns

  • number — Layer object id.

isEqual(layer: Layer): boolean

Inherited from Layer#isEqual

Overrides: Layer#isEqual

Compares layers instances.

Parameters

  • layer (Layer) — Layer instance to compare.

Returns

  • boolean — Returns true if the layer is the same instance as the input.

_assignPlanet(planet: Planet)

protectedabstract
Layer.ts:511

Inherited from Layer#_assignPlanet

Overrides: Layer#_assignPlanet

Assign the planet.

Parameters

  • planet (Planet) — Planet render node.

_bindPicking()

protectedabstract
Layer.ts:551

Inherited from Layer#_bindPicking

Overrides: Layer#_bindPicking

Assign picking color to the layer.

remove(): Layer

Inherited from Layer#remove

Overrides: Layer#remove

Removes from a planet.

Returns

setAttribution(html: string)

Inherited from Layer#setAttribution

Overrides: Layer#setAttribution

Sets layer attribution text.

Parameters

  • html (string) — HTML string that represents layer attribution.

getAttribution(): string

Inherited from Layer#getAttribution

Overrides: Layer#getAttribution

Gets layer attribution.

Returns

  • string — Layer attribution.

setHeight(height: number)

Inherited from Layer#setHeight

Overrides: Layer#setHeight

Sets height over the ground.

Parameters

  • height (number) — Layer height.

getHeight(): number

Inherited from Layer#getHeight

Overrides: Layer#getHeight

Gets layer height.

Returns

  • number

setZIndex(zIndex: number)

Inherited from Layer#setZIndex

Overrides: Layer#setZIndex

Sets z-index.

Parameters

  • zIndex (number) — Layer z-index.

getZIndex(): number

Inherited from Layer#getZIndex

Overrides: Layer#getZIndex

Gets z-index.

Returns

  • number

bringToFront()

Inherited from Layer#bringToFront

Overrides: Layer#bringToFront

Sets z-index to the maximum value relative to other layers on the planet.

isBaseLayer(): boolean

Inherited from Layer#isBaseLayer

Overrides: Layer#isBaseLayer

Returns true if the layer is a base.

Returns

  • boolean — Base layer flag.

setBaseLayer(isBaseLayer: boolean)

Inherited from Layer#setBaseLayer

Overrides: Layer#setBaseLayer

Sets base layer type flag.

Parameters

  • isBaseLayer (boolean)

setVisibility(visibility: boolean)

abstract
Layer.ts:718

Inherited from Layer#setVisibility

Overrides: Layer#setVisibility

Sets layer visibility.

Parameters

  • visibility (boolean) — Layer visibility.

getVisibility(): boolean

Inherited from Layer#getVisibility

Overrides: Layer#getVisibility

Gets layer visibility.

Returns

  • boolean — Layer visibility.

setExtent(extent: Extent)

Inherited from Layer#setExtent

Overrides: Layer#setExtent

Sets visible geographical extent.

Parameters

  • extent (Extent) — Layer visible geographical extent.

getExtent(): Extent

Inherited from Layer#getExtent

Overrides: Layer#getExtent

Gets layer extent.

Returns

  • Extent — Layer geodetic extent.

getExtentMerc(): Extent

Inherited from Layer#getExtentMerc

Overrides: Layer#getExtentMerc

Gets layer web-mercator extent.

Returns

flyExtent()

Inherited from Layer#flyExtent

Overrides: Layer#flyExtent

Fly extent.

viewExtent()

Inherited from Layer#viewExtent

Overrides: Layer#viewExtent

View extent.

_correctFullExtent()

protected
Layer.ts:861

Inherited from Layer#_correctFullExtent

Overrides: Layer#_correctFullExtent

Special correction of the whole globe extent.

Instance Fields

receiveProjectors

Gets projector effect reception state for this vector layer entities.

Returns

  • boolean

receiveProjectors

Enables/disables projector effect reception for this vector layer entities.

Parameters

  • v (boolean) — true to receive projector effects, false to ignore them.

receiveFrameTransparency

Gets frame transparency reception state for this vector layer entities.

Returns

  • boolean

receiveFrameTransparency

Enables/disables frame transparency reception for this vector layer entities.

Parameters

  • v (boolean) — true to receive frame transparency, false to ignore it.

receiveShadows

Gets shadow map reception state for this vector layer entities.

Returns

  • boolean

receiveShadows

Enables/disables shadow map reception for this vector layer entities. Stored in the same material flags channel as projectors and frame transparency.

Parameters

  • v (boolean) — true to receive shadow map effects, false to ignore them.

pickingEnabled

Sets layer picking events active.

Parameters

  • picking (boolean) — Picking enable flag.

_pickingColor: Vec3

protected
Layer.ts:322

Inherited from Layer#_pickingColor

Overrides: Layer#_pickingColor

Layer picking color. Assign when added to the planet.

nightTextureCoefficient: number

Inherited from Layer#nightTextureCoefficient

Overrides: Layer#nightTextureCoefficient

Night texture blending coefficient.

_id

Inherited from Layer#_id

Overrides: Layer#_id

planet

Inherited from Layer#planet

Overrides: Layer#planet

Returns planet instance.