|
|
@@ -4,6 +4,7 @@ import StackViewer, {
|
|
|
activateMagnifier,
|
|
|
activatePan,
|
|
|
activateZoom,
|
|
|
+ activateRotateAnyAngle,
|
|
|
addLMark,
|
|
|
addMark,
|
|
|
addRLabel,
|
|
|
@@ -49,6 +50,7 @@ import StackViewer, {
|
|
|
deactivatePan,
|
|
|
deactivateZoom,
|
|
|
deactivateWindowLevel,
|
|
|
+ deactivateRotateAnyAngle,
|
|
|
} from './viewers/stack.image.viewer';
|
|
|
import { useSelector, useDispatch } from 'react-redux';
|
|
|
import { getDcmImageUrl } from '@/API/bodyPosition';
|
|
|
@@ -350,12 +352,13 @@ const ViewerContainer: React.FC<ViewerContainerProps> = ({ imageUrls }) => {
|
|
|
if (action.startsWith('Activate:')) {
|
|
|
const toolName = action.substring('Activate:'.length);
|
|
|
console.log(`[ViewerContainer] 激活工具: ${toolName}`);
|
|
|
- //先停用所有4个状态工具
|
|
|
+ //先停用所有5个状态工具
|
|
|
selectedViewportIds.forEach((viewportId) => {
|
|
|
deactivateMagnifier(viewportId);
|
|
|
deactivatePan(viewportId);
|
|
|
deactivateWindowLevel(viewportId);
|
|
|
deactivateZoom(viewportId);
|
|
|
+ deactivateRotateAnyAngle(viewportId);
|
|
|
});
|
|
|
selectedViewportIds.forEach((viewportId) => {
|
|
|
switch (toolName) {
|
|
|
@@ -371,6 +374,9 @@ const ViewerContainer: React.FC<ViewerContainerProps> = ({ imageUrls }) => {
|
|
|
case 'Zoom Image':
|
|
|
activateZoom(viewportId);
|
|
|
break;
|
|
|
+ case 'Rotate Any Angle':
|
|
|
+ activateRotateAnyAngle(viewportId);
|
|
|
+ break;
|
|
|
}
|
|
|
});
|
|
|
dispatch(clearAction());
|
|
|
@@ -395,6 +401,9 @@ const ViewerContainer: React.FC<ViewerContainerProps> = ({ imageUrls }) => {
|
|
|
case 'Zoom Image':
|
|
|
deactivateZoom(viewportId);
|
|
|
break;
|
|
|
+ case 'Rotate Any Angle':
|
|
|
+ deactivateRotateAnyAngle(viewportId);
|
|
|
+ break;
|
|
|
}
|
|
|
});
|
|
|
dispatch(clearAction());
|
|
|
@@ -415,6 +424,7 @@ const ViewerContainer: React.FC<ViewerContainerProps> = ({ imageUrls }) => {
|
|
|
deactivateMagnifier(viewportId);
|
|
|
deactivatePan(viewportId);
|
|
|
deactivateZoom(viewportId);
|
|
|
+ deactivateRotateAnyAngle(viewportId);
|
|
|
});
|
|
|
// 预处理带参数的 action
|
|
|
// 处理预定义标记 (AddPredefinedMark:标记文本)
|