Press n or j to go to the next uncovered block, b, p or k for the previous block.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 | import type { Types } from '@cornerstonejs/core'; import { LabelmapToolOperationData } from '../../../types'; import { fillInsideRectangle } from './fillRectangle'; type OperationData = LabelmapToolOperationData & { points: [Types.Point3, Types.Point3, Types.Point3, Types.Point3]; }; function eraseRectangle( enabledElement: Types.IEnabledElement, operationData: OperationData, inside = true ): void { // Take the arguments and set the segmentIndex to 0, // Then use existing fillRectangle functionality. const eraseOperationData = Object.assign({}, operationData, { segmentIndex: 0, }); fillInsideRectangle(enabledElement, eraseOperationData); } /** * Erase the rectangle region segment inside the segmentation defined by the operationData. * It erases the segmentation pixels inside the defined rectangle. * @param enabledElement - The element for which the segment is being erased. * @param operationData - OperationData */ export function eraseInsideRectangle( enabledElement: Types.IEnabledElement, operationData: OperationData ): void { eraseRectangle(enabledElement, operationData, true); } /** * Erase the rectangle region segment inside the segmentation defined by the operationData. * It erases the segmentation pixels outside the defined rectangle. * @param enabledElement - The element for which the segment is being erased. * @param operationData - OperationData */ export function eraseOutsideRectangle( enabledElement: Types.IEnabledElement, operationData: OperationData ): void { eraseRectangle(enabledElement, operationData, false); } |