Skip to main content

Interface: VoxelsInShapeSamplingOptions

Extends

Properties

bounds?

optional bounds: BoundsIJK

Inclusive index bounds to confine iteration to. Defaults to the whole volume. Supply the annotation's own index-space bounding box when you have one; the slab bound tightening below only narrows along the normal.

Bounds only narrow: each axis intersects the volume extent, so a box that reaches outside the volume still yields no index outside it.

Inherited from

VoxelsInShapeOptions.bounds

Defined in

packages/core/src/utilities/voxelSlab/iterateVoxelsInShape.ts:68


columnAxis?

optional columnAxis: 0 | 1 | 2

Force which axis carries the runs. See buildIndexSpaceSlab.

Inherited from

VoxelsInShapeOptions.columnAxis

Defined in

packages/core/src/utilities/voxelSlab/iterateVoxelsInShape.ts:78


getShapeRuns?

optional getShapeRuns: ShapeRunProvider

Exact or exact-multiple in-plane runs. See ShapeRunProvider.

Inherited from

VoxelsInShapeOptions.getShapeRuns

Defined in

packages/core/src/utilities/voxelSlab/iterateVoxelsInShape.ts:70


isInShape()?

optional isInShape: (center, ijk) => boolean

Per-voxel in-plane predicate. Required when getShapeRuns is absent or only approximate. Receives the voxel centre in world coordinates; project it onto the annotation plane yourself if the shape needs that.

Parameters

center: Point3

ijk: Point3

Returns

boolean

Inherited from

VoxelsInShapeOptions.isInShape

Defined in

packages/core/src/utilities/voxelSlab/iterateVoxelsInShape.ts:76


onSample()?

optional onSample: (sample) => void

Called for every voxel that has a value, in iteration order. This is where a statistics accumulator hooks in; it runs whether or not the samples are being collected.

Parameters

sample: VoxelSample

Returns

void

Defined in

packages/core/src/utilities/voxelSlab/sampleVoxelsInShape.ts:28


planePoint

planePoint: Point3

The annotation plane anchor, in world coordinates.

Inherited from

VoxelsInShapeOptions.planePoint

Defined in

packages/core/src/utilities/voxelSlab/iterateVoxelsInShape.ts:51


referencePlaneThickness?

optional referencePlaneThickness: number

The reference plane thickness in mm. Omit, or pass null or 0, to default to one voxel along the normal. A planar shape reports 0 from getRequiredThickness, so a caller can pass that value straight through.

Inherited from

VoxelsInShapeOptions.referencePlaneThickness

Defined in

packages/core/src/utilities/voxelSlab/iterateVoxelsInShape.ts:59


storePointData?

optional storePointData: boolean

Whether to return the samples as well. Collecting them costs an object per voxel, which an ROI over a large volume will feel, so a caller that only wants statistics should leave this off and use onSample.

Defined in

packages/core/src/utilities/voxelSlab/sampleVoxelsInShape.ts:34


viewPlaneNormal

viewPlaneNormal: Point3

The annotation view plane normal. Must be unit length.

Inherited from

VoxelsInShapeOptions.viewPlaneNormal

Defined in

packages/core/src/utilities/voxelSlab/iterateVoxelsInShape.ts:53


volume

volume: VolumeGeometry

The volume being measured. Pass an IImageVolume, or any object that has direction, spacing, origin and dimensions. The structural form lets a caller that holds no cached volume, such as a test, use this code.

Inherited from

VoxelsInShapeOptions.volume

Defined in

packages/core/src/utilities/voxelSlab/iterateVoxelsInShape.ts:49


voxelManager

voxelManager: VoxelValueSource

Where the values come from. Voxels it has no value for are skipped.

Defined in

packages/core/src/utilities/voxelSlab/sampleVoxelsInShape.ts:22