Class: SparseNeuroVol
Defined in: src/sparse/SparseNeuroVol.ts:18
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
new SparseNeuroVol(
space,
dataType?,
defaultValue?,
indices?,
values?): SparseNeuroVol;Defined in: src/sparse/SparseNeuroVol.ts:24
Parameters
space
dataType?
NumericType = 'float32'
defaultValue?
number = 0
indices?
number[]
values?
number[]
Returns
SparseNeuroVol
Properties
space
readonly space: NeuroSpace;Defined in: src/sparse/SparseNeuroVol.ts:19
Implementation of
Accessors
length
Get Signature
get length(): number;Defined in: src/sparse/SparseNeuroVol.ts:49
Returns
number
Implementation of
dim
Get Signature
get dim(): number[];Defined in: src/sparse/SparseNeuroVol.ts:53
Returns
number[]
Implementation of
spacing
Get Signature
get spacing(): number[];Defined in: src/sparse/SparseNeuroVol.ts:57
Returns
number[]
Implementation of
origin
Get Signature
get origin(): number[];Defined in: src/sparse/SparseNeuroVol.ts:61
Returns
number[]
Implementation of
nonDefaultCount
Get Signature
get nonDefaultCount(): number;Defined in: src/sparse/SparseNeuroVol.ts:385
Returns
number
sparsityRatio
Get Signature
get sparsityRatio(): number;Defined in: src/sparse/SparseNeuroVol.ts:389
Returns
number
Methods
getData()
getData(): TypedArray;Defined in: src/sparse/SparseNeuroVol.ts:65
Returns
Implementation of
get()
get(index): number;Defined in: src/sparse/SparseNeuroVol.ts:77
Parameters
index
number
Returns
number
Implementation of
getAt()
getAt(
i,
j,
k): number;Defined in: src/sparse/SparseNeuroVol.ts:81
Parameters
i
number
j
number
k
number
Returns
number
Implementation of
setAt()
setAt(
i,
j,
k,
value): void;Defined in: src/sparse/SparseNeuroVol.ts:86
Parameters
i
number
j
number
k
number
value
number
Returns
void
Implementation of
getRange()
getRange(): [number, number];Defined in: src/sparse/SparseNeuroVol.ts:95
Returns
[number, number]
Implementation of
setData()
setData(newData): void;Defined in: src/sparse/SparseNeuroVol.ts:117
Replace underlying data with a dense buffer. Rebuilds sparse map from non-zero entries.
Parameters
newData
Returns
void
Implementation of
asLogical()
asLogical(): LogicalNeuroVol;Defined in: src/sparse/SparseNeuroVol.ts:151
Convert to a LogicalNeuroVol mask representation. Creates a boolean mask based on non-zero voxels.
Returns
getSliceAt()
getSliceAt(
coord,
outAxes,
interpolation?): NeuroSlice;Defined in: src/sparse/SparseNeuroVol.ts:167
Parameters
coord
number[]
outAxes
interpolation?
"nearest" | "trilinear"
Returns
Implementation of
getSlice()
getSlice(zlevel, outAxes): NeuroSlice;Defined in: src/sparse/SparseNeuroVol.ts:275
Parameters
zlevel
number
outAxes
Returns
Implementation of
getSliceTypedArrayType()
getSliceTypedArrayType(): NumericType;Defined in: src/sparse/SparseNeuroVol.ts:348
Returns
Implementation of
NeuroVol.getSliceTypedArrayType
getDataConstructor()
getDataConstructor(): (length) => TypedArray;Defined in: src/sparse/SparseNeuroVol.ts:352
Returns
(length) => TypedArray
Implementation of
fromCoords()
static fromCoords(
space,
coords,
values?,
dataType?,
defaultValue?): SparseNeuroVol;Defined in: src/sparse/SparseNeuroVol.ts:421
Creates a SparseNeuroVol from coordinate arrays.
Parameters
space
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()
static fromMask(
mask,
fillValue?,
dataType?): SparseNeuroVol;Defined in: src/sparse/SparseNeuroVol.ts:441
Creates a SparseNeuroVol from a LogicalNeuroVol (binary mask).
Parameters
mask
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()
static fromDense(
vol,
threshold?,
dataType?): SparseNeuroVol;Defined in: src/sparse/SparseNeuroVol.ts:461
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
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()
static fromPoint(
space,
coord,
value?,
dataType?): SparseNeuroVol;Defined in: src/sparse/SparseNeuroVol.ts:490
Creates a SparseNeuroVol with a single point. Useful for marking a single voxel location.
Parameters
space
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()
static fromSphere(
space,
center,
radius,
fillValue?,
dataType?): SparseNeuroVol;Defined in: src/sparse/SparseNeuroVol.ts:510
Creates a SparseNeuroVol representing a spherical region.
Parameters
space
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