Function: sampleAreaAnnotationVoxels()
sampleAreaAnnotationVoxels(
__namedParameters):AreaAnnotationVoxel[]
Selects the voxels an area annotation covers, and feeds them to a statistics accumulator, per Rule M of https://github.com/cornerstonejs/cornerstone3D/issues/2889
Every area annotation tool shares this whole path. The plane, the thickness,
the index bounds and the accumulation are identical for a polyline, a circle,
an ellipse and a rectangle; only createShape differs:
// Planar freehand ROI
createShape: ({ volume, planePoint, viewPlaneNormal }) =>
createPolylineShape({ volume, planePoint, viewPlaneNormal, polyline }),
// Circle ROI
createShape: ({ volume, planePoint, viewPlaneNormal }) =>
createCircleShape({ volume, planePoint, viewPlaneNormal, centerWorld, radius }),
// Rectangle ROI
createShape: ({ volume, planePoint, viewPlaneNormal }) =>
createRectangleShape({ volume, planePoint, viewPlaneNormal, centerWorld,
majorAxis, majorHalfLength, minorHalfLength }),
Nothing here reads a viewport. The same annotation over the same volume therefore selects the same voxels at any zoom, any pan, any canvas size and any slab thickness, and at any orientation.
See docs/docs/concepts/cornerstone-tools/annotation/voxel-statistics.md.
Parameters
• __namedParameters: AreaAnnotationVoxelsOptions
Returns
AreaAnnotationVoxel[]
the voxels when storePointData is set, otherwise an empty array.
onSample runs either way.