Class: LabeledNeuroSurface
Defined in: LabeledNeuroSurface.ts:14
Surface that renders categorical labels (parcellations / clusters) per vertex. Each vertex holds an integer label id; a label table provides names and colors.
Extends
Constructors
Constructor
new LabeledNeuroSurface(
geometry,
indices,
labels,
labelDefs,
config?
): LabeledNeuroSurface;Defined in: LabeledNeuroSurface.ts:19
Parameters
geometry
indices
number[] | Uint32Array<ArrayBufferLike> | null
labels
number[] | Uint32Array<ArrayBufferLike>
labelDefs
config?
SurfaceConfig = {}
Returns
LabeledNeuroSurface
Overrides
Properties
labels
labels: Uint32Array;Defined in: LabeledNeuroSurface.ts:15
labelMap
labelMap: Map<number, {
name: string;
color: Color;
}>;Defined in: LabeledNeuroSurface.ts:16
colors
colors: Float32Array;Defined in: LabeledNeuroSurface.ts:17
geometry
geometry: SurfaceGeometry;Defined in: classes.ts:458
Inherited from
indices
indices: Uint32Array;Defined in: classes.ts:459
Inherited from
data
data: Float32Array;Defined in: classes.ts:460
Inherited from
vertexCurv
vertexCurv: Float32Array<ArrayBufferLike> | null;Defined in: classes.ts:461
Inherited from
mesh
mesh:
| Mesh<BufferGeometry<NormalBufferAttributes, BufferGeometryEventMap>,
| Material<MaterialEventMap>
| Material<MaterialEventMap>[], Object3DEventMap>
| null;Defined in: classes.ts:462
Inherited from
threshold
threshold: [number, number];Defined in: classes.ts:463
Inherited from
irange
irange: [number, number];Defined in: classes.ts:464
Inherited from
hemisphere
hemisphere: string;Defined in: classes.ts:465
Inherited from
config
config: ResolvedSurfaceConfig;Defined in: classes.ts:466
Inherited from
viewer?
optional viewer?: any;Defined in: classes.ts:467
Inherited from
Methods
on()
on<K>(event, listener): UnsubscribeFn;Defined in: EventEmitter.ts:18
Type Parameters
K
K extends keyof SurfaceEventMap
Parameters
event
K
listener
TypedEventListener<SurfaceEventMap[K]>
Returns
Inherited from
once()
once<K>(event, listener): UnsubscribeFn;Defined in: EventEmitter.ts:30
Type Parameters
K
K extends keyof SurfaceEventMap
Parameters
event
K
listener
TypedEventListener<SurfaceEventMap[K]>
Returns
Inherited from
emit()
emit<K>(event, ...args): void;Defined in: EventEmitter.ts:41
Type Parameters
K
K extends keyof SurfaceEventMap
Parameters
event
K
args
...EventPayloadArgs<SurfaceEventMap[K]>
Returns
void
Inherited from
removeListener()
removeListener<K>(event, listenerToRemove): void;Defined in: EventEmitter.ts:60
Type Parameters
K
K extends keyof SurfaceEventMap
Parameters
event
K
listenerToRemove
TypedEventListener<SurfaceEventMap[K]>
Returns
void
Inherited from
removeAllListeners()
removeAllListeners(event?): void;Defined in: EventEmitter.ts:75
Parameters
event?
keyof SurfaceEventMap
Returns
void
Inherited from
NeuroSurface.removeAllListeners
off()
off<K>(event, listener): void;Defined in: EventEmitter.ts:84
Type Parameters
K
K extends keyof SurfaceEventMap
Parameters
event
K
listener
TypedEventListener<SurfaceEventMap[K]>
Returns
void
Inherited from
getLabelName()
getLabelName(id): string | undefined;Defined in: LabeledNeuroSurface.ts:39
Parameters
id
number
Returns
string | undefined
setLabelColor()
setLabelColor(id, color): void;Defined in: LabeledNeuroSurface.ts:43
Parameters
id
number
color
ColorRepresentation
Returns
void
setLabels()
setLabels(labels): void;Defined in: LabeledNeuroSurface.ts:51
Parameters
labels
number[] | Uint32Array<ArrayBufferLike>
Returns
void
addOrUpdateLabel()
addOrUpdateLabel(def): void;Defined in: LabeledNeuroSurface.ts:56
Parameters
def
Returns
void
createMesh()
createMesh(): Mesh;Defined in: LabeledNeuroSurface.ts:61
Returns
Mesh
Overrides
updateColors()
updateColors(): void;Defined in: LabeledNeuroSurface.ts:84
Returns
void
Overrides
update()
update(property, value): void;Defined in: classes.ts:517
Parameters
property
string
value
any
Returns
void
Inherited from
updateConfig()
updateConfig(newConfig): void;Defined in: classes.ts:542
Update surface material properties dynamically
Parameters
newConfig
Partial<SurfaceConfig>
Partial configuration object with properties to update
Returns
void
Example
// Make surface shiny and semi-transparent
surface.updateConfig({
shininess: 150,
specularColor: 0xffffff,
alpha: 0.7
});
// Switch to flat shading for faceted look
surface.updateConfig({ flatShading: true });Inherited from
getPickMetadata()
getPickMetadata(_vertexIndex): Record<string, unknown> | null;Defined in: classes.ts:647
Parameters
_vertexIndex
number
Returns
Record<string, unknown> | null
Inherited from
setVisible()
setVisible(visible): void;Defined in: classes.ts:654
Parameters
visible
boolean
Returns
void
Inherited from
setOpacity()
setOpacity(opacity): void;Defined in: classes.ts:662
Parameters
opacity
number
Returns
void
Inherited from
setSmoothShading()
setSmoothShading(smooth, smoothingAngle?): void;Defined in: classes.ts:682
Control surface shading style (visual only, doesn't modify geometry)
Parameters
smooth
boolean
If true, uses smooth shading (interpolated normals). If false, uses flat shading (face normals)
smoothingAngle?
number
Optional angle threshold in degrees (0-180). Edges above this angle remain sharp
Returns
void
Example
// Enable smooth shading for organic surfaces
surface.setSmoothShading(true);
// Smooth shading with 30° threshold (sharp edges preserved)
surface.setSmoothShading(true, 30);
// Flat shading for faceted/crystalline look
surface.setSmoothShading(false);Inherited from
applyLaplacianSmoothing()
applyLaplacianSmoothing(
iterations?,
lambda?,
method?,
preserveBoundaries?
): void;Defined in: classes.ts:718
Apply Laplacian smoothing to the surface vertices (modifies geometry)
Parameters
iterations?
number = 1
Number of smoothing iterations (1-10). More iterations = smoother surface
lambda?
number = 0.5
Smoothing strength (0-1). 0 = no effect, 1 = maximum smoothing per iteration
method?
"laplacian" | "taubin"
Smoothing algorithm:
- 'laplacian': Standard smoothing, may shrink surface
- 'taubin': Alternates shrink/expand to preserve volume
preserveBoundaries?
boolean = true
If true, boundary edges remain fixed
Returns
void
Example
// Gentle smoothing to reduce noise
surface.applyLaplacianSmoothing(2, 0.3, 'laplacian', true);
// Aggressive smoothing while preserving volume
surface.applyLaplacianSmoothing(5, 0.5, 'taubin', true);
// Smooth including boundaries (may distort edges)
surface.applyLaplacianSmoothing(3, 0.4, 'laplacian', false);Inherited from
NeuroSurface.applyLaplacianSmoothing
createSmoothedCopy()
createSmoothedCopy(
iterations?,
lambda?,
method?
): SurfaceGeometry;Defined in: classes.ts:768
Create a smoothed copy of this surface
Parameters
iterations?
number = 1
Number of smoothing iterations
lambda?
number = 0.5
Smoothing factor 0-1
method?
"laplacian" | "taubin"
'laplacian' or 'taubin'
Returns
A new smoothed surface geometry
Inherited from
NeuroSurface.createSmoothedCopy
updateMesh()
updateMesh(): Mesh;Defined in: classes.ts:793
Returns
Mesh
Inherited from
dispose()
dispose(): void;Defined in: classes.ts:814
Returns
void