Abstract Class: NeuroSurface
Defined in: classes.ts:409
Extends
Extended by
ColorMappedNeuroSurfaceVertexColoredNeuroSurfaceMultiLayerNeuroSurfaceLabeledNeuroSurfaceVolumeProjectedSurface
Constructors
Constructor
new NeuroSurface(
geometry,
indices,
data,
config?
): NeuroSurface;Defined in: classes.ts:469
Parameters
geometry
indices
number[] | Uint32Array<ArrayBufferLike> | null
data
Float32Array<ArrayBufferLike> | number[]
config?
SurfaceConfig = {}
Returns
NeuroSurface
Overrides
Properties
geometry
geometry: SurfaceGeometry;Defined in: classes.ts:458
indices
indices: Uint32Array;Defined in: classes.ts:459
data
data: Float32Array;Defined in: classes.ts:460
vertexCurv
vertexCurv: Float32Array<ArrayBufferLike> | null;Defined in: classes.ts:461
mesh
mesh:
| Mesh<BufferGeometry<NormalBufferAttributes, BufferGeometryEventMap>,
| Material<MaterialEventMap>
| Material<MaterialEventMap>[], Object3DEventMap>
| null;Defined in: classes.ts:462
threshold
threshold: [number, number];Defined in: classes.ts:463
irange
irange: [number, number];Defined in: classes.ts:464
hemisphere
hemisphere: string;Defined in: classes.ts:465
config
config: ResolvedSurfaceConfig;Defined in: classes.ts:466
viewer?
optional viewer?: any;Defined in: classes.ts:467
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
EventEmitter.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
update()
update(property, value): void;Defined in: classes.ts:517
Parameters
property
string
value
any
Returns
void
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 });getPickMetadata()
getPickMetadata(_vertexIndex): Record<string, unknown> | null;Defined in: classes.ts:647
Parameters
_vertexIndex
number
Returns
Record<string, unknown> | null
createMesh()
abstract createMesh(): Mesh;Defined in: classes.ts:651
Returns
Mesh
updateColors()
abstract updateColors(): void;Defined in: classes.ts:652
Returns
void
setVisible()
setVisible(visible): void;Defined in: classes.ts:654
Parameters
visible
boolean
Returns
void
setOpacity()
setOpacity(opacity): void;Defined in: classes.ts:662
Parameters
opacity
number
Returns
void
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);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);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
updateMesh()
updateMesh(): Mesh;Defined in: classes.ts:793
Returns
Mesh
dispose()
dispose(): void;Defined in: classes.ts:814
Returns
void