|
@@ -11,6 +11,7 @@ import { clearAction } from '@/states/view/functionAreaSlice';
|
|
import { useDispatch } from 'react-redux';
|
|
import { useDispatch } from 'react-redux';
|
|
|
|
|
|
const {
|
|
const {
|
|
|
|
+ MagnifyTool,
|
|
PanTool,
|
|
PanTool,
|
|
WindowLevelTool,
|
|
WindowLevelTool,
|
|
StackScrollTool,
|
|
StackScrollTool,
|
|
@@ -26,6 +27,7 @@ let currentViewportId: string;
|
|
|
|
|
|
function registerTools(viewportId, renderingEngineId) {
|
|
function registerTools(viewportId, renderingEngineId) {
|
|
// Add tools to Cornerstone3D
|
|
// Add tools to Cornerstone3D
|
|
|
|
+ cornerstoneTools.addTool(MagnifyTool);
|
|
cornerstoneTools.addTool(PanTool);
|
|
cornerstoneTools.addTool(PanTool);
|
|
cornerstoneTools.addTool(WindowLevelTool);
|
|
cornerstoneTools.addTool(WindowLevelTool);
|
|
cornerstoneTools.addTool(StackScrollTool);
|
|
cornerstoneTools.addTool(StackScrollTool);
|
|
@@ -40,6 +42,7 @@ function registerTools(viewportId, renderingEngineId) {
|
|
}
|
|
}
|
|
toolGroup = toolGroupTmp;
|
|
toolGroup = toolGroupTmp;
|
|
// Add tools to the tool group
|
|
// Add tools to the tool group
|
|
|
|
+ toolGroup.addTool(MagnifyTool.toolName);
|
|
toolGroup.addTool(PanTool.toolName);
|
|
toolGroup.addTool(PanTool.toolName);
|
|
toolGroup.addTool(WindowLevelTool.toolName);
|
|
toolGroup.addTool(WindowLevelTool.toolName);
|
|
toolGroup.addTool(StackScrollTool.toolName);
|
|
toolGroup.addTool(StackScrollTool.toolName);
|
|
@@ -495,10 +498,28 @@ const StackViewer = ({
|
|
// Implement the logic for 4x4 layout
|
|
// Implement the logic for 4x4 layout
|
|
console.log('Setting 4x4 Layout');
|
|
console.log('Setting 4x4 Layout');
|
|
break;
|
|
break;
|
|
- case 'Magnifier':
|
|
|
|
|
|
+ case 'Magnifier': {
|
|
// Implement the logic for magnifier
|
|
// Implement the logic for magnifier
|
|
console.log('Activating Magnifier');
|
|
console.log('Activating Magnifier');
|
|
|
|
+ const isActive =
|
|
|
|
+ toolGroup.getActivePrimaryMouseButtonTool() ===
|
|
|
|
+ MagnifyTool.toolName;
|
|
|
|
+ if (isActive) {
|
|
|
|
+ toolGroup.setToolPassive(MagnifyTool.toolName, {
|
|
|
|
+ removeAllBindings: true,
|
|
|
|
+ });
|
|
|
|
+ } else {
|
|
|
|
+ toolGroup.setToolActive(MagnifyTool.toolName, {
|
|
|
|
+ bindings: [
|
|
|
|
+ {
|
|
|
|
+ mouseButton: MouseBindings.Primary, // Left Click
|
|
|
|
+ },
|
|
|
|
+ ],
|
|
|
|
+ });
|
|
|
|
+ }
|
|
|
|
+
|
|
break;
|
|
break;
|
|
|
|
+ }
|
|
case 'Fit Size':
|
|
case 'Fit Size':
|
|
// Implement the logic to fit the image size
|
|
// Implement the logic to fit the image size
|
|
console.log('Fitting Image Size');
|
|
console.log('Fitting Image Size');
|