working reference lines
This commit is contained in:
+17
-24
@@ -24,6 +24,7 @@ const { IMAGE_RENDERED } = Enums.Events;
|
||||
|
||||
const STACK_TOOL_GROUP_ID = 'STACK_TOOL_GROUP_ID';
|
||||
const VOLUME_TOOL_GROUP_ID = 'VOLUME_TOOL_GROUP_ID';
|
||||
const REFERENCE_TOOL_GROUP_ID = 'REFERENCE_TOOL_GROUP_ID';
|
||||
|
||||
// Common CT presets (add more as needed)
|
||||
const WINDOW_LEVEL_PRESETS = [
|
||||
@@ -487,8 +488,8 @@ function App() {
|
||||
}
|
||||
|
||||
// --- In your setup function, use the correct tool group per viewport ---
|
||||
const { stackToolGroup, volumeToolGroup } = ToolGroupManager.getToolGroup(STACK_TOOL_GROUP_ID)
|
||||
? { stackToolGroup: ToolGroupManager.getToolGroup(STACK_TOOL_GROUP_ID), volumeToolGroup: ToolGroupManager.getToolGroup(VOLUME_TOOL_GROUP_ID) }
|
||||
const { stackToolGroup, volumeToolGroup, referenceToolGroup } = ToolGroupManager.getToolGroup(STACK_TOOL_GROUP_ID)
|
||||
? { stackToolGroup: ToolGroupManager.getToolGroup(STACK_TOOL_GROUP_ID), volumeToolGroup: ToolGroupManager.getToolGroup(VOLUME_TOOL_GROUP_ID), referenceToolGroup: ToolGroupManager.getToolGroup(REFERENCE_TOOL_GROUP_ID) }
|
||||
: setupTools();
|
||||
|
||||
|
||||
@@ -498,29 +499,14 @@ function App() {
|
||||
|
||||
// --- In your setup function, after tool group creation, enable/disable ReferenceLinesTool for each tool group ---
|
||||
if (referenceLinesEnabled) {
|
||||
if (!stackToolGroup.hasTool(ReferenceLinesTool.toolName)) {
|
||||
stackToolGroup.addTool(ReferenceLinesTool.toolName);
|
||||
}
|
||||
if (!volumeToolGroup.hasTool(ReferenceLinesTool.toolName)) {
|
||||
volumeToolGroup.addTool(ReferenceLinesTool.toolName);
|
||||
}
|
||||
// Set the active viewport as the source for reference lines
|
||||
const sourceViewportId = `CT_${activeViewport}`;
|
||||
stackToolGroup.setToolConfiguration(ReferenceLinesTool.toolName, {
|
||||
referenceToolGroup.setToolEnabled(ReferenceLinesTool.toolName);
|
||||
referenceToolGroup.setToolConfiguration(ReferenceLinesTool.toolName, {
|
||||
sourceViewportId,
|
||||
});
|
||||
volumeToolGroup.setToolConfiguration(ReferenceLinesTool.toolName, {
|
||||
sourceViewportId,
|
||||
});
|
||||
stackToolGroup.setToolEnabled(ReferenceLinesTool.toolName);
|
||||
volumeToolGroup.setToolEnabled(ReferenceLinesTool.toolName);
|
||||
} else {
|
||||
if (stackToolGroup.hasTool(ReferenceLinesTool.toolName)) {
|
||||
stackToolGroup.setToolDisabled(ReferenceLinesTool.toolName);
|
||||
}
|
||||
if (volumeToolGroup.hasTool(ReferenceLinesTool.toolName)) {
|
||||
volumeToolGroup.setToolDisabled(ReferenceLinesTool.toolName);
|
||||
}
|
||||
referenceToolGroup.setToolDisabled(ReferenceLinesTool.toolName);
|
||||
|
||||
}
|
||||
|
||||
// 6. Enable and configure each viewport
|
||||
@@ -560,6 +546,7 @@ function App() {
|
||||
// Add tool group only once
|
||||
toolGroup.addViewport(viewportId, renderingEngineId);
|
||||
|
||||
referenceToolGroup.addViewport(viewportId, renderingEngineId);
|
||||
|
||||
|
||||
const viewport = renderingEngine.getViewport(viewportId);
|
||||
@@ -1787,7 +1774,7 @@ function setupTools() {
|
||||
stackToolGroup.addTool(PlanarFreehandROITool.toolName, { calculateStats: false });
|
||||
stackToolGroup.addTool(PlanarFreehandContourSegmentationTool.toolName, {});
|
||||
stackToolGroup.addTool(SculptorTool.toolName, {});
|
||||
stackToolGroup.addTool(ReferenceLinesTool.toolName);
|
||||
//stackToolGroup.addTool(ReferenceLinesTool.toolName);
|
||||
// StackScrollTool mouse wheel binding
|
||||
stackToolGroup.setToolActive(StackScrollTool.toolName, {
|
||||
bindings: [{ mouseButton: MouseBindings.Wheel }],
|
||||
@@ -1811,9 +1798,15 @@ function setupTools() {
|
||||
volumeToolGroup.addTool(PlanarFreehandROITool.toolName, { calculateStats: false });
|
||||
volumeToolGroup.addTool(PlanarFreehandContourSegmentationTool.toolName, {});
|
||||
volumeToolGroup.addTool(SculptorTool.toolName, {});
|
||||
volumeToolGroup.addTool(ReferenceLinesTool.toolName);
|
||||
//volumeToolGroup.addTool(ReferenceLinesTool.toolName);
|
||||
//volumeToolGroup.addTool(CrosshairsTool.toolName, {});
|
||||
}
|
||||
|
||||
return { stackToolGroup, volumeToolGroup };
|
||||
let referenceToolGroup = ToolGroupManager.getToolGroup(REFERENCE_TOOL_GROUP_ID);
|
||||
if (!referenceToolGroup) {
|
||||
referenceToolGroup = ToolGroupManager.createToolGroup(REFERENCE_TOOL_GROUP_ID);
|
||||
referenceToolGroup.addTool(ReferenceLinesTool.toolName);
|
||||
}
|
||||
|
||||
return { stackToolGroup, volumeToolGroup, referenceToolGroup };
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user