Introduction
vtkImageResliceMapper provides hardware accelerated slicing of 3D image data / volumes.
It can be associated with a vtkImageSlice prop and placed within a Renderer.
This class resolves coincident topology with the same methods as vtkMapper.
Methods
extend
Method use to decorate a given object (publicAPI+model) with vtkImageResliceMapper characteristics.
Argument | Type | Required | Description |
---|---|---|---|
publicAPI |
Yes | object on which methods will be bounds (public) | |
model |
Yes | object on which data structure will be bounds (protected) | |
initialValues |
IImageResliceMapperInitialValues | No | (default: {}) |
getBounds
Get the bounds for this mapper as [xmin, xmax, ymin, ymax,zmin, zmax].
getIsOpaque
getSlabThickness
Get the slab thickness in world space (mm).
getSlabTrapezoidIntegration
Get whether slab trapezoid integration is enabled.
getSlabType
Get the slab composite function.
getSlicePlane
Get the implicit plane used to slice the volume with.
getSlicePolyData
Get the custom polydata used to slice the volume with.
newInstance
Method use to create a new instance of vtkImageResliceMapper
Argument | Type | Required | Description |
---|---|---|---|
initialValues |
IImageResliceMapperInitialValues | No | for pre-setting some of its content |
setSlabThickness
Enable slab slicing mode and set the slab thickness in world space (mm).
Argument | Type | Required | Description |
---|---|---|---|
slabThickness |
Number | Yes | The slab thickness in world space (mm). Default: 0. |
setSlabTrapezoidIntegration
When a slab thickness larger than 0 is provided, the mapper will composite multile slices
together using different composite functions based on the slabType. When
slabTrapezoidIntegration is enabled, the first and the last slices in the slab are weighted at
half their original intensity for sum and mean slab types.
Argument | Type | Required | Description |
---|---|---|---|
slabTrapezoidIntegration |
Number | Yes | Enable/disable trapezoid integration for slab slicing. Default: 0 |
setSlabType
When a slab thickness larger than 0 is provided, the mapper will composite multile slices
together using different composite functions based on the slabType. Available options are max,
min, mean and sum.
Argument | Type | Required | Description |
---|---|---|---|
slabType |
SlabTypes | Yes | The blend function used to composite slab slices. Default: SlabTypes.MEAN |
setSlicePlane
The vtkImageResliceMapper provides flexibility in how the reslice source is provided. The user
can either provide an implicit vtkPlane (defined with its origin and normal), or a custom
vtkPolyData. When both sources are provided, the mapper chooses the custom polydata over the
implicit plane. When providing custom polydata as the source, it is required that the polydata
has point normals for slab slicing. When neither sources are provided, the mapper creates a
default implicit plane with normal (0, 0, 1) and origin at the mid-point of the volume’s Z
bounds.
Argument | Type | Required | Description |
---|---|---|---|
slicePlane |
vtkPlane | Yes | The implicit plane to slice the volume with. Default: null |
setSlicePolyData
The vtkImageResliceMapper provides flexibility in how the reslice source is provided. The user
can either provide an implicit vtkPlane (defined with its origin and normal), or a custom
vtkPolyData. When both sources are provided, the mapper chooses the custom polydata over the
implicit plane. When providing custom polydata as the source, it is required that the polydata
has point normals for slab slicing. When neither sources are provided, the mapper creates a
default implicit plane with normal (0, 0, 1) and origin at the mid-point of the volume’s Z
bounds.
Argument | Type | Required | Description |
---|---|---|---|
slicePolyData |
vtkPolyData | Yes | The polydata to slice the volume with. Default: null |
Source
export declare enum SlabTypes { |
export const SlabTypes = { |
import vtkAbstractImageMapper, { |
import CoincidentTopologyHelper from 'vtk.js/Sources/Rendering/Core/Mapper/CoincidentTopologyHelper'; |