Skip to content

worldwind-ui API / worldwind-kit / ClusterLayer

Class: ClusterLayer<T> ​

Defined in: kit/src/cluster.ts:151

A renderable layer that merges nearby items into count markers, re-clustering when the zoom changes. Items are anything with a position; clicking a cluster flies closer.

Example ​

ts
const stations = new ClusterLayer(globe, points, { layerName: 'Stations', radius: 50 });
globe.on('click', (event) => {
  const item = stations.itemAt(event.top?.object);
  if (item) console.log('clicked', item);
});

Type Parameters ​

T ​

T = LatLon

Constructors ​

Constructor ​

new ClusterLayer<T>(globe, items, options?): ClusterLayer<T>

Defined in: kit/src/cluster.ts:167

Parameters ​

globe ​

GlobeController

items ​

readonly T[]

options? ​

ClusterLayerOptions<T> = {}

Returns ​

ClusterLayer<T>

Properties ​

layer ​

readonly layer: WWRenderableLayer

Defined in: kit/src/cluster.ts:152

Accessors ​

state ​

Get Signature ​

get state(): ClusterLayerState<T>

Defined in: kit/src/cluster.ts:189

Clusters and singles of the last pass; the same object until it changes.

Returns ​

ClusterLayerState<T>

Methods ​

clusterAt() ​

clusterAt(object): Cluster<T> | null

Defined in: kit/src/cluster.ts:200

The cluster a picked renderable stands for, if any.

Parameters ​

object ​

unknown

Returns ​

Cluster<T> | null


destroy() ​

destroy(): void

Defined in: kit/src/cluster.ts:224

Returns ​

void


itemAt() ​

itemAt(object): T | null

Defined in: kit/src/cluster.ts:205

The item a picked renderable stands for, if it is drawn on its own.

Parameters ​

object ​

unknown

Returns ​

T | null


setItems() ​

setItems(items): void

Defined in: kit/src/cluster.ts:193

Parameters ​

items ​

readonly T[]

Returns ​

void


subscribe() ​

subscribe(listener): Unsubscribe

Defined in: kit/src/cluster.ts:220

Parameters ​

listener ​

(state) => void

Returns ​

Unsubscribe


update() ​

update(): void

Defined in: kit/src/cluster.ts:216

Re-clusters now with the current zoom.

Returns ​

void


zoomTo() ​

zoomTo(cluster, options?): Promise<unknown>

Defined in: kit/src/cluster.ts:210

Flies to a cluster at a quarter of the current range.

Parameters ​

cluster ​

Cluster<T>

options? ​
duration? ​

number

minRange? ​

number

Returns ​

Promise<unknown>

MIT licensed. Not affiliated with NASA; WorldWind is NASA's open-source virtual globe.