Skip to main content

Interface: IndexSpaceSlab

The slab of Rule M expressed in index space.

The depth test is exactly linear in the integer voxel indices, which is what lets the iterator emit exact runs rather than test every voxel:

  depth(p) = (centre - planePoint) . n = p . g + c0
g = Mᵀ n (the index space normal, deliberately not normalised)
c0 = (origin - planePoint) . n

Iteration nests outer -> row -> column. Derivation and axis roles: docs/docs/concepts/cornerstone-tools/annotation/voxel-statistics.md.

Properties​

c0​

c0: number

c0, the world depth of index (0, 0, 0).

Defined in​

packages/core/src/utilities/voxelSlab/indexSpaceSlab.ts:36


columnAxis​

columnAxis: 0 | 1 | 2

Runs are emitted along this axis, innermost.

Defined in​

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


depthHigh​

depthHigh: number

The high end of the depth interval. Always exclusive.

Defined in​

packages/core/src/utilities/voxelSlab/indexSpaceSlab.ts:52


depthLow​

depthLow: number

The low end of the depth interval. Inclusive when halfOpen is set.

Defined in​

packages/core/src/utilities/voxelSlab/indexSpaceSlab.ts:50


g​

g: Point3

g, the unnormalised index space normal.

Defined in​

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


halfOpen​

halfOpen: boolean

Whether depthLow is inclusive, which makes the interval half-open.

An open interval drops both of its endpoints, so a voxel centre that lands exactly on a boundary belongs to neither of two consecutive slabs. A half-open interval gives that voxel to exactly one of the two, which is what makes consecutive slabs tile. Follows from the slab's SlabDepthCoverage.

Defined in​

packages/core/src/utilities/voxelSlab/indexSpaceSlab.ts:62


halfWidth​

halfWidth: number

A bound on Math.abs(depth) for any qualifying voxel. For the open interval this is the strict half width, already tightened by the epsilon, so Math.abs(depth) < halfWidth is the test. For the half-open interval this is only a bound, and IndexSpaceSlab.depthLow and IndexSpaceSlab.depthHigh give the exact interval.

Defined in​

packages/core/src/utilities/voxelSlab/indexSpaceSlab.ts:48


outerAxis​

outerAxis: 0 | 1 | 2

argmax |g|. Swept outermost.

Defined in​

packages/core/src/utilities/voxelSlab/indexSpaceSlab.ts:64


referencePlaneThickness​

referencePlaneThickness: number

The resolved reference plane thickness.

Defined in​

packages/core/src/utilities/voxelSlab/indexSpaceSlab.ts:40


rowAxis​

rowAxis: 0 | 1 | 2

Swept in the middle loop.

Defined in​

packages/core/src/utilities/voxelSlab/indexSpaceSlab.ts:66


voxelThickness​

voxelThickness: number

The voxel thickness along the normal.

Defined in​

packages/core/src/utilities/voxelSlab/indexSpaceSlab.ts:38