Skip to content

Class: SparseNeuroVol ​

Defined in: src/sparse/SparseNeuroVol.ts:19

SparseNeuroVol class implements the NeuroVol interface and represents a volumetric dataset where most of the data is the default value (e.g., zero). It uses a Map to store only non-default values to save memory and improve efficiency.

Implements ​

Constructors ​

Constructor ​

ts
new SparseNeuroVol(
   space, 
   dataType?, 
   defaultValue?, 
   indices?, 
   values?): SparseNeuroVol;

Defined in: src/sparse/SparseNeuroVol.ts:25

Parameters ​

space ​

NeuroSpace

dataType? ​

NumericType = 'float32'

defaultValue? ​

number = 0

indices? ​

number[]

values? ​

number[]

Returns ​

SparseNeuroVol

Properties ​

space ​

ts
readonly space: NeuroSpace;

Defined in: src/sparse/SparseNeuroVol.ts:20

Implementation of ​

NeuroVol.space

Accessors ​

length ​

Get Signature ​

ts
get length(): number;

Defined in: src/sparse/SparseNeuroVol.ts:52

Returns ​

number

Implementation of ​

NeuroVol.length


dim ​

Get Signature ​

ts
get dim(): number[];

Defined in: src/sparse/SparseNeuroVol.ts:56

Returns ​

number[]

Implementation of ​

NeuroVol.dim


spacing ​

Get Signature ​

ts
get spacing(): number[];

Defined in: src/sparse/SparseNeuroVol.ts:60

Returns ​

number[]

Implementation of ​

NeuroVol.spacing


origin ​

Get Signature ​

ts
get origin(): number[];

Defined in: src/sparse/SparseNeuroVol.ts:64

Returns ​

number[]

Implementation of ​

NeuroVol.origin


nonDefaultCount ​

Get Signature ​

ts
get nonDefaultCount(): number;

Defined in: src/sparse/SparseNeuroVol.ts:402

Returns ​

number


sparsityRatio ​

Get Signature ​

ts
get sparsityRatio(): number;

Defined in: src/sparse/SparseNeuroVol.ts:406

Returns ​

number

Methods ​

getData() ​

ts
getData(): TypedArray;

Defined in: src/sparse/SparseNeuroVol.ts:68

Returns ​

TypedArray

Implementation of ​

NeuroVol.getData


get() ​

ts
get(index): number;

Defined in: src/sparse/SparseNeuroVol.ts:80

Parameters ​

index ​

number

Returns ​

number

Implementation of ​

NeuroVol.get


getAt() ​

ts
getAt(
   i, 
   j, 
   k): number;

Defined in: src/sparse/SparseNeuroVol.ts:84

Parameters ​

i ​

number

j ​

number

k ​

number

Returns ​

number

Implementation of ​

NeuroVol.getAt


setAt() ​

ts
setAt(
   i, 
   j, 
   k, 
   value): void;

Defined in: src/sparse/SparseNeuroVol.ts:89

Parameters ​

i ​

number

j ​

number

k ​

number

value ​

number

Returns ​

void

Implementation of ​

NeuroVol.setAt


getRange() ​

ts
getRange(): [number, number];

Defined in: src/sparse/SparseNeuroVol.ts:98

Returns ​

[number, number]

Implementation of ​

NeuroVol.getRange


setData() ​

ts
setData(newData): void;

Defined in: src/sparse/SparseNeuroVol.ts:120

Replace underlying data with a dense buffer. Rebuilds sparse map from non-zero entries.

Parameters ​

newData ​

TypedArray

Returns ​

void

Implementation of ​

NeuroVol.setData


asLogical() ​

ts
asLogical(): LogicalNeuroVol;

Defined in: src/sparse/SparseNeuroVol.ts:154

Convert to a LogicalNeuroVol mask representation. Creates a boolean mask based on non-zero voxels.

Returns ​

LogicalNeuroVol


getSliceAt() ​

ts
getSliceAt(
   coord, 
   outAxes, 
   interpolation?): NeuroSlice;

Defined in: src/sparse/SparseNeuroVol.ts:170

Parameters ​

coord ​

number[]

outAxes ​

AxisSet3D

interpolation? ​

"nearest" | "trilinear"

Returns ​

NeuroSlice

Implementation of ​

NeuroVol.getSliceAt


getSlice() ​

ts
getSlice(zlevel, outAxes): NeuroSlice;

Defined in: src/sparse/SparseNeuroVol.ts:278

Parameters ​

zlevel ​

number

outAxes ​

AxisSet3D

Returns ​

NeuroSlice

Implementation of ​

NeuroVol.getSlice


getSliceTypedArrayType() ​

ts
getSliceTypedArrayType(): NumericType;

Defined in: src/sparse/SparseNeuroVol.ts:363

Returns ​

NumericType

Implementation of ​

NeuroVol.getSliceTypedArrayType


getDataConstructor() ​

ts
getDataConstructor(): (length) => TypedArray;

Defined in: src/sparse/SparseNeuroVol.ts:367

Returns ​

(length) => TypedArray

Implementation of ​

NeuroVol.getDataConstructor


fromCoords() ​

ts
static fromCoords(
   space, 
   coords, 
   values?, 
   dataType?, 
   defaultValue?): SparseNeuroVol;

Defined in: src/sparse/SparseNeuroVol.ts:438

Creates a SparseNeuroVol from coordinate arrays.

Parameters ​

space ​

NeuroSpace

The NeuroSpace defining the coordinate system

coords ​

number[][]

Array of [i, j, k] voxel coordinates

values? ​

number[]

Array of values for each coordinate (default: all 1s)

dataType? ​

NumericType = 'float32'

The numeric data type (default: 'float32')

defaultValue? ​

number = 0

The default value for non-specified voxels (default: 0)

Returns ​

SparseNeuroVol

A new SparseNeuroVol instance


fromMask() ​

ts
static fromMask(
   mask, 
   fillValue?, 
   dataType?): SparseNeuroVol;

Defined in: src/sparse/SparseNeuroVol.ts:458

Creates a SparseNeuroVol from a LogicalNeuroVol (binary mask).

Parameters ​

mask ​

LogicalNeuroVol

The LogicalNeuroVol mask

fillValue? ​

number = 1

The value to assign to true voxels (default: 1)

dataType? ​

NumericType = 'float32'

The numeric data type (default: 'float32')

Returns ​

SparseNeuroVol

A new SparseNeuroVol instance


fromDense() ​

ts
static fromDense(
   vol, 
   threshold?, 
   dataType?): SparseNeuroVol;

Defined in: src/sparse/SparseNeuroVol.ts:478

Creates a SparseNeuroVol from a DenseNeuroVol by extracting non-zero values. Useful for converting a dense volume with sparse data to a memory-efficient representation.

Parameters ​

vol ​

DenseNeuroVol

The DenseNeuroVol to convert

threshold? ​

number = 0

Values below this threshold are treated as default (default: 0)

dataType? ​

NumericType = 'float32'

The numeric data type (default: 'float32')

Returns ​

SparseNeuroVol

A new SparseNeuroVol instance


fromPoint() ​

ts
static fromPoint(
   space, 
   coord, 
   value?, 
   dataType?): SparseNeuroVol;

Defined in: src/sparse/SparseNeuroVol.ts:507

Creates a SparseNeuroVol with a single point. Useful for marking a single voxel location.

Parameters ​

space ​

NeuroSpace

The NeuroSpace defining the coordinate system

coord ​

number[]

The [i, j, k] coordinate of the point

value? ​

number = 1

The value at the point (default: 1)

dataType? ​

NumericType = 'float32'

The numeric data type (default: 'float32')

Returns ​

SparseNeuroVol

A new SparseNeuroVol instance with a single point


fromSphere() ​

ts
static fromSphere(
   space, 
   center, 
   radius, 
   fillValue?, 
   dataType?): SparseNeuroVol;

Defined in: src/sparse/SparseNeuroVol.ts:527

Creates a SparseNeuroVol representing a spherical region.

Parameters ​

space ​

NeuroSpace

The NeuroSpace defining the coordinate system

center ​

number[]

The center [i, j, k] coordinate

radius ​

number

The radius in voxel units

fillValue? ​

number = 1

The value to fill the sphere with (default: 1)

dataType? ​

NumericType = 'float32'

The numeric data type (default: 'float32')

Returns ​

SparseNeuroVol

A new SparseNeuroVol instance

Released under the MIT License.