Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> Co-authored-by: Dan Rukas <dan.rukas@gmail.com>
186 lines
5.7 KiB
JavaScript
186 lines
5.7 KiB
JavaScript
import {
|
|
PanTool,
|
|
WindowLevelTool,
|
|
SegmentBidirectionalTool,
|
|
StackScrollTool,
|
|
VolumeRotateTool,
|
|
ZoomTool,
|
|
MIPJumpToClickTool,
|
|
LengthTool,
|
|
RectangleROITool,
|
|
RectangleROIThresholdTool,
|
|
EllipticalROITool,
|
|
CircleROITool,
|
|
BidirectionalTool,
|
|
ArrowAnnotateTool,
|
|
DragProbeTool,
|
|
ProbeTool,
|
|
AngleTool,
|
|
CobbAngleTool,
|
|
MagnifyTool,
|
|
CrosshairsTool,
|
|
RectangleScissorsTool,
|
|
SphereScissorsTool,
|
|
CircleScissorsTool,
|
|
BrushTool,
|
|
PaintFillTool,
|
|
init,
|
|
addTool,
|
|
annotation,
|
|
ReferenceLinesTool,
|
|
TrackballRotateTool,
|
|
AdvancedMagnifyTool,
|
|
UltrasoundDirectionalTool,
|
|
UltrasoundPleuraBLineTool,
|
|
PlanarFreehandROITool,
|
|
PlanarFreehandContourSegmentationTool,
|
|
SplineROITool,
|
|
LivewireContourTool,
|
|
OrientationMarkerTool,
|
|
WindowLevelRegionTool,
|
|
SegmentSelectTool,
|
|
RegionSegmentPlusTool,
|
|
SegmentLabelTool,
|
|
LivewireContourSegmentationTool,
|
|
SculptorTool,
|
|
SplineContourSegmentationTool,
|
|
LabelMapEditWithContourTool,
|
|
} from '@cornerstonejs/tools';
|
|
import { LabelmapSlicePropagationTool, MarkerLabelmapTool } from '@cornerstonejs/ai';
|
|
import * as polySeg from '@cornerstonejs/polymorphic-segmentation';
|
|
|
|
import CalibrationLineTool from './tools/CalibrationLineTool';
|
|
import ImageOverlayViewerTool from './tools/ImageOverlayViewerTool';
|
|
|
|
export default function initCornerstoneTools(configuration = {}) {
|
|
CrosshairsTool.isAnnotation = false;
|
|
LabelmapSlicePropagationTool.isAnnotation = false;
|
|
MarkerLabelmapTool.isAnnotation = false;
|
|
ReferenceLinesTool.isAnnotation = false;
|
|
AdvancedMagnifyTool.isAnnotation = false;
|
|
PlanarFreehandContourSegmentationTool.isAnnotation = false;
|
|
|
|
init({
|
|
addons: {
|
|
polySeg,
|
|
},
|
|
computeWorker: {
|
|
autoTerminateOnIdle: {
|
|
enabled: false,
|
|
},
|
|
},
|
|
});
|
|
addTool(PanTool);
|
|
addTool(SegmentBidirectionalTool);
|
|
addTool(WindowLevelTool);
|
|
addTool(StackScrollTool);
|
|
addTool(VolumeRotateTool);
|
|
addTool(ZoomTool);
|
|
addTool(ProbeTool);
|
|
addTool(MIPJumpToClickTool);
|
|
addTool(LengthTool);
|
|
addTool(RectangleROITool);
|
|
addTool(RectangleROIThresholdTool);
|
|
addTool(EllipticalROITool);
|
|
addTool(CircleROITool);
|
|
addTool(BidirectionalTool);
|
|
addTool(ArrowAnnotateTool);
|
|
addTool(DragProbeTool);
|
|
addTool(AngleTool);
|
|
addTool(CobbAngleTool);
|
|
addTool(MagnifyTool);
|
|
addTool(CrosshairsTool);
|
|
addTool(RectangleScissorsTool);
|
|
addTool(SphereScissorsTool);
|
|
addTool(CircleScissorsTool);
|
|
addTool(BrushTool);
|
|
addTool(PaintFillTool);
|
|
addTool(ReferenceLinesTool);
|
|
addTool(CalibrationLineTool);
|
|
addTool(TrackballRotateTool);
|
|
addTool(ImageOverlayViewerTool);
|
|
addTool(AdvancedMagnifyTool);
|
|
addTool(UltrasoundDirectionalTool);
|
|
addTool(UltrasoundPleuraBLineTool);
|
|
addTool(PlanarFreehandROITool);
|
|
addTool(SplineROITool);
|
|
addTool(LivewireContourTool);
|
|
addTool(OrientationMarkerTool);
|
|
addTool(WindowLevelRegionTool);
|
|
addTool(PlanarFreehandContourSegmentationTool);
|
|
addTool(SegmentSelectTool);
|
|
addTool(SegmentLabelTool);
|
|
addTool(LabelmapSlicePropagationTool);
|
|
addTool(MarkerLabelmapTool);
|
|
addTool(RegionSegmentPlusTool);
|
|
addTool(LivewireContourSegmentationTool);
|
|
addTool(SculptorTool);
|
|
addTool(SplineContourSegmentationTool);
|
|
addTool(LabelMapEditWithContourTool);
|
|
// Modify annotation tools to use dashed lines on SR
|
|
const annotationStyle = {
|
|
textBoxFontSize: '15px',
|
|
lineWidth: '1.5',
|
|
};
|
|
|
|
const defaultStyles = annotation.config.style.getDefaultToolStyles();
|
|
annotation.config.style.setDefaultToolStyles({
|
|
global: {
|
|
...defaultStyles.global,
|
|
...annotationStyle,
|
|
},
|
|
});
|
|
}
|
|
|
|
const toolNames = {
|
|
Pan: PanTool.toolName,
|
|
ArrowAnnotate: ArrowAnnotateTool.toolName,
|
|
WindowLevel: WindowLevelTool.toolName,
|
|
StackScroll: StackScrollTool.toolName,
|
|
Zoom: ZoomTool.toolName,
|
|
VolumeRotate: VolumeRotateTool.toolName,
|
|
MipJumpToClick: MIPJumpToClickTool.toolName,
|
|
Length: LengthTool.toolName,
|
|
DragProbe: DragProbeTool.toolName,
|
|
Probe: ProbeTool.toolName,
|
|
RectangleROI: RectangleROITool.toolName,
|
|
RectangleROIThreshold: RectangleROIThresholdTool.toolName,
|
|
EllipticalROI: EllipticalROITool.toolName,
|
|
CircleROI: CircleROITool.toolName,
|
|
Bidirectional: BidirectionalTool.toolName,
|
|
Angle: AngleTool.toolName,
|
|
CobbAngle: CobbAngleTool.toolName,
|
|
Magnify: MagnifyTool.toolName,
|
|
Crosshairs: CrosshairsTool.toolName,
|
|
Brush: BrushTool.toolName,
|
|
PaintFill: PaintFillTool.toolName,
|
|
ReferenceLines: ReferenceLinesTool.toolName,
|
|
CalibrationLine: CalibrationLineTool.toolName,
|
|
TrackballRotateTool: TrackballRotateTool.toolName,
|
|
CircleScissors: CircleScissorsTool.toolName,
|
|
RectangleScissors: RectangleScissorsTool.toolName,
|
|
SphereScissors: SphereScissorsTool.toolName,
|
|
ImageOverlayViewer: ImageOverlayViewerTool.toolName,
|
|
AdvancedMagnify: AdvancedMagnifyTool.toolName,
|
|
UltrasoundDirectional: UltrasoundDirectionalTool.toolName,
|
|
UltrasoundAnnotation: UltrasoundPleuraBLineTool.toolName,
|
|
SplineROI: SplineROITool.toolName,
|
|
LivewireContour: LivewireContourTool.toolName,
|
|
PlanarFreehandROI: PlanarFreehandROITool.toolName,
|
|
OrientationMarker: OrientationMarkerTool.toolName,
|
|
WindowLevelRegion: WindowLevelRegionTool.toolName,
|
|
PlanarFreehandContourSegmentation: PlanarFreehandContourSegmentationTool.toolName,
|
|
SegmentBidirectional: SegmentBidirectionalTool.toolName,
|
|
SegmentSelect: SegmentSelectTool.toolName,
|
|
SegmentLabel: SegmentLabelTool.toolName,
|
|
LabelmapSlicePropagation: LabelmapSlicePropagationTool.toolName,
|
|
MarkerLabelmap: MarkerLabelmapTool.toolName,
|
|
RegionSegmentPlus: RegionSegmentPlusTool.toolName,
|
|
LivewireContourSegmentation: LivewireContourSegmentationTool.toolName,
|
|
SculptorTool: SculptorTool.toolName,
|
|
SplineContourSegmentation: SplineContourSegmentationTool.toolName,
|
|
LabelMapEditWithContourTool: LabelMapEditWithContourTool.toolName,
|
|
};
|
|
|
|
export { toolNames };
|