LabelProgram
Defined in: packages/sigma/src/rendering/nodes/labels/base.ts:31
Base class for label program implementations.
Label programs render text labels using WebGL (SDF-based rendering). Unlike node/edge programs, labels are processed per-character.
Visibility is handled by processing only visible labels each frame (determined by LabelGrid), so all characters in the buffer are rendered.
The DataType generic allows reuse by both node labels (LabelDisplayData) and edge labels (EdgeLabelDisplayData) via EdgeLabelProgram.
Extends
Section titled “Extends”Program<Uniform,N,E,G>
Extended by
Section titled “Extended by”Type Parameters
Section titled “Type Parameters”Uniform
Section titled “Uniform”Uniform extends string = string
N extends Attributes = Attributes
E extends Attributes = Attributes
G extends Attributes = Attributes
DataType
Section titled “DataType”DataType extends LabelDataBase = LabelDisplayData
Constructors
Section titled “Constructors”Constructor
Section titled “Constructor”new LabelProgram<
Uniform,N,E,G,DataType>(gl,_pickingBuffer,renderer):LabelProgram<Uniform,N,E,G,DataType>
Defined in: packages/sigma/src/rendering/program.ts:144
Parameters
Section titled “Parameters”WebGL2RenderingContext
_pickingBuffer
Section titled “_pickingBuffer”WebGLFramebuffer | null
renderer
Section titled “renderer”Sigma<N, E, G>
Returns
Section titled “Returns”LabelProgram<Uniform, N, E, G, DataType>
Inherited from
Section titled “Inherited from”Properties
Section titled “Properties”ATTRIBUTES
Section titled “ATTRIBUTES”ATTRIBUTES:
ProgramAttributeSpecification[]
Defined in: packages/sigma/src/rendering/program.ts:98
Inherited from
Section titled “Inherited from”ATTRIBUTES_ITEMS_COUNT
Section titled “ATTRIBUTES_ITEMS_COUNT”ATTRIBUTES_ITEMS_COUNT:
number
Defined in: packages/sigma/src/rendering/program.ts:103
Inherited from
Section titled “Inherited from”Program.ATTRIBUTES_ITEMS_COUNT
capacity
Section titled “capacity”capacity:
number=0
Defined in: packages/sigma/src/rendering/program.ts:117
Inherited from
Section titled “Inherited from”CONSTANT_ATTRIBUTES
Section titled “CONSTANT_ATTRIBUTES”CONSTANT_ATTRIBUTES:
ProgramAttributeSpecification[]
Defined in: packages/sigma/src/rendering/program.ts:100
Inherited from
Section titled “Inherited from”CONSTANT_DATA
Section titled “CONSTANT_DATA”CONSTANT_DATA:
number[][]
Defined in: packages/sigma/src/rendering/program.ts:101
Inherited from
Section titled “Inherited from”constantArray
Section titled “constantArray”constantArray:
Float32Array
Defined in: packages/sigma/src/rendering/program.ts:116
Inherited from
Section titled “Inherited from”debugStats
Section titled “debugStats”debugStats:
object
Defined in: packages/sigma/src/rendering/program.ts:132
bufferUploadBytes
Section titled “bufferUploadBytes”bufferUploadBytes:
number=0
drawCalls
Section titled “drawCalls”drawCalls:
number=0
verticesDrawn
Section titled “verticesDrawn”verticesDrawn:
number=0
Inherited from
Section titled “Inherited from”floats
Section titled “floats”floats:
Float32Array
Defined in: packages/sigma/src/rendering/program.ts:113
Inherited from
Section titled “Inherited from”FRAGMENT_SHADER_SOURCE
Section titled “FRAGMENT_SHADER_SOURCE”FRAGMENT_SHADER_SOURCE:
string
Defined in: packages/sigma/src/rendering/program.ts:96
Inherited from
Section titled “Inherited from”Program.FRAGMENT_SHADER_SOURCE
ints:
Uint32Array
Defined in: packages/sigma/src/rendering/program.ts:114
Inherited from
Section titled “Inherited from”isInstanced
Section titled “isInstanced”isInstanced:
boolean
Defined in: packages/sigma/src/rendering/program.ts:140
Inherited from
Section titled “Inherited from”METHOD
Section titled “METHOD”METHOD:
number
Defined in: packages/sigma/src/rendering/program.ts:99
Inherited from
Section titled “Inherited from”normalProgram
Section titled “normalProgram”normalProgram:
ProgramInfo
Defined in: packages/sigma/src/rendering/program.ts:137
Inherited from
Section titled “Inherited from”pickProgram
Section titled “pickProgram”pickProgram:
ProgramInfo<string> |null=null
Defined in: packages/sigma/src/rendering/program.ts:138
Inherited from
Section titled “Inherited from”renderer
Section titled “renderer”renderer:
Sigma<N,E,G>
Defined in: packages/sigma/src/rendering/program.ts:106
Inherited from
Section titled “Inherited from”STRIDE
Section titled “STRIDE”STRIDE:
number
Defined in: packages/sigma/src/rendering/program.ts:104
Inherited from
Section titled “Inherited from”UNIFORMS
Section titled “UNIFORMS”UNIFORMS: readonly
Uniform[]
Defined in: packages/sigma/src/rendering/program.ts:97
Inherited from
Section titled “Inherited from”VERTEX_SHADER_SOURCE
Section titled “VERTEX_SHADER_SOURCE”VERTEX_SHADER_SOURCE:
string
Defined in: packages/sigma/src/rendering/program.ts:95
Inherited from
Section titled “Inherited from”VERTICES
Section titled “VERTICES”VERTICES:
number
Defined in: packages/sigma/src/rendering/program.ts:94
Inherited from
Section titled “Inherited from”verticesCount
Section titled “verticesCount”verticesCount:
number=0
Defined in: packages/sigma/src/rendering/program.ts:118
Inherited from
Section titled “Inherited from”Methods
Section titled “Methods”drawWebGL()
Section titled “drawWebGL()”drawWebGL(
method,__namedParameters):void
Defined in: packages/sigma/src/rendering/nodes/labels/base.ts:102
Render all characters in the buffer. Since we only process visible labels, all buffered characters should be rendered.
Parameters
Section titled “Parameters”method
Section titled “method”number
__namedParameters
Section titled “__namedParameters”Returns
Section titled “Returns”void
Overrides
Section titled “Overrides”ensureGlyphsReady()
Section titled “ensureGlyphsReady()”
abstractensureGlyphsReady(texts,fontKey?):void
Defined in: packages/sigma/src/rendering/nodes/labels/base.ts:39
Ensure all glyphs for the given texts are generated and available.
Parameters
Section titled “Parameters”string[]
fontKey?
Section titled “fontKey?”string
Returns
Section titled “Returns”void
getDefinition()
Section titled “getDefinition()”
abstractgetDefinition():ProgramDefinition<Uniform> |InstancedProgramDefinition<Uniform>
Defined in: packages/sigma/src/rendering/program.ts:142
Returns
Section titled “Returns”ProgramDefinition<Uniform> | InstancedProgramDefinition<Uniform>
Inherited from
Section titled “Inherited from”hasNothingToRender()
Section titled “hasNothingToRender()”hasNothingToRender():
boolean
Defined in: packages/sigma/src/rendering/nodes/labels/base.ts:94
Check if there’s nothing to render.
Returns
Section titled “Returns”boolean
Overrides
Section titled “Overrides”invalidateBuffers()
Section titled “invalidateBuffers()”invalidateBuffers():
void
Defined in: packages/sigma/src/rendering/program.ts:384
Mark GPU buffers as needing re-upload. Call this after modifying the array data outside of reallocate.
Returns
Section titled “Returns”void
Inherited from
Section titled “Inherited from”kill()
Section titled “kill()”kill():
void
Defined in: packages/sigma/src/rendering/program.ts:201
Returns
Section titled “Returns”void
Inherited from
Section titled “Inherited from”measureLabel()
Section titled “measureLabel()”
abstractmeasureLabel(text,fontSize,fontKey?):object
Defined in: packages/sigma/src/rendering/nodes/labels/base.ts:45
Measure a label using the same glyph metrics as rendering.
Parameters
Section titled “Parameters”string
fontSize
Section titled “fontSize”number
fontKey?
Section titled “fontKey?”string
Returns
Section titled “Returns”object
height
Section titled “height”height:
number
textHeight
Section titled “textHeight”textHeight:
number
width:
number
processLabel()
Section titled “processLabel()”processLabel(
_labelKey,offset,data):number
Defined in: packages/sigma/src/rendering/nodes/labels/base.ts:64
Process a label and write its character data to the GPU buffer.
Parameters
Section titled “Parameters”_labelKey
Section titled “_labelKey”string
offset
Section titled “offset”number
DataType
Returns
Section titled “Returns”number
reallocate()
Section titled “reallocate()”reallocate(
characterCount):void
Defined in: packages/sigma/src/rendering/nodes/labels/base.ts:118
Reallocate buffers if needed and set the character count for this frame. Only reallocates GPU buffers when capacity is exceeded.
Parameters
Section titled “Parameters”characterCount
Section titled “characterCount”number
Number of characters to render this frame
Returns
Section titled “Returns”void
Overrides
Section titled “Overrides”registerFont()
Section titled “registerFont()”
abstractregisterFont(family,weight?,style?):string
Defined in: packages/sigma/src/rendering/nodes/labels/base.ts:42
Register a font for use in labels and return its lookup key.
Parameters
Section titled “Parameters”family
Section titled “family”string
weight?
Section titled “weight?”string
style?
Section titled “style?”string
Returns
Section titled “Returns”string
render()
Section titled “render()”render(
params,offset?,count?):void
Defined in: packages/sigma/src/rendering/program.ts:415
Parameters
Section titled “Parameters”params
Section titled “params”offset?
Section titled “offset?”number
count?
Section titled “count?”number
Returns
Section titled “Returns”void
Inherited from
Section titled “Inherited from”resetDebugStats()
Section titled “resetDebugStats()”resetDebugStats():
void
Defined in: packages/sigma/src/rendering/program.ts:206
Returns
Section titled “Returns”void
Inherited from
Section titled “Inherited from”setUniforms()
Section titled “setUniforms()”
abstractsetUniforms(params,programInfo):void
Defined in: packages/sigma/src/rendering/program.ts:397
Parameters
Section titled “Parameters”params
Section titled “params”programInfo
Section titled “programInfo”Returns
Section titled “Returns”void