InstancedCirclesData
Defined in: core/backend.ts:110
SoA for a batch of instanced circles (e.g. network nodes). Plain typed arrays.
Properties
Section titled “Properties”borderColors?
Section titled “borderColors?”
optionalborderColors?:Uint8Array<ArrayBufferLike>
Defined in: core/backend.ts:123
Optional RGBA ring colour bytes per circle, length 4 * count. Paired with borders.
borders?
Section titled “borders?”
optionalborders?:Float32Array<ArrayBufferLike>
Defined in: core/backend.ts:121
Optional flow-border ring (#104 N6): per-circle thickness as a fraction of the radius
(0/absent ⇒ no ring, a plain filled disc), length count.
bordersPx?
Section titled “bordersPx?”
optionalbordersPx?:boolean
Defined in: core/backend.ts:127
borders are ring widths in screen px, the same at every zoom (#495), instead of fractions of the radius: a thin outline of a world-sized disc. The zoom is applied where the ring is drawn (a shader uniform on WebGL, the bake on the vector paths), so no column is rewritten per frame.
centers
Section titled “centers”centers:
Float32Array
Defined in: core/backend.ts:112
[x, y] world coords per circle, length 2 * count.
colors
Section titled “colors”colors:
Uint8Array
Defined in: core/backend.ts:116
RGBA bytes per circle, length 4 * count.
count:
number
Defined in: core/backend.ts:149
groups?
Section titled “groups?”
optionalgroups?:Float32Array<ArrayBufferLike>
Defined in: core/backend.ts:130
Optional per-instance group id for shader-driven highlight (#162): the node id a circle is,
so the vertex shader can match u_hoverGroup / index the selected set. Length count.
groups2?
Section titled “groups2?”
optionalgroups2?:Float32Array<ArrayBufferLike>
Defined in: core/backend.ts:133
Optional second per-instance group id (#494): the circle is also lit while this group is hovered — a
state network’s state node while its physical container is. Length count; absent ⇒ none.
offsets?
Section titled “offsets?”
optionaloffsets?:Float32Array<ArrayBufferLike>
Defined in: core/backend.ts:142
Optional per-circle offset from its centre (#509), in the layer’s size units: the circle is drawn at
project(centre) + offset px in screen mode and at centre + offset in world mode. Length 2 * count;
absent ⇒ no offset, with no buffer and no upload. Uploaded only when the array is a new object, so hand a new
array to change it; a reference-stable column costs nothing per frame.
offsetsChanged?
Section titled “offsetsChanged?”
optionaloffsetsChanged?:Uint32Array<ArrayBufferLike>
Defined in: core/backend.ts:148
The instances whose offsets were rewritten in place since the last emit of this layer (#509), as flat
[start, end) instance ranges: only those are uploaded, when offsets is the array the layer already holds
(a state node drag moves one state node, not the column). Ignored with a new array, which uploads whole.
radii:
Float32Array
Defined in: core/backend.ts:114
radius per circle, length count.
selected?
Section titled “selected?”
optionalselected?:Uint8Array<ArrayBufferLike>
Defined in: core/backend.ts:135
Optional per-instance selected flag (0/1) for shader-driven dim/recolour (#162). Length count.