feat(4D): Add 4D dynamic volume rendering and new pre-clinical 4d pt/ct mode (#3664)

Co-authored-by: Alireza <ar.sedghi@gmail.com>
Co-authored-by: Neil <neil.a.macphee@gmail.com>
This commit is contained in:
authored and GitHub committed 2024-04-09 23:57:34 -04:00
1 parent dc0b183dd4
commit d57e8bc157
200 files changed
+9589 -2178

No files matched your search

+3 -3
View File
@@ -108,8 +108,8 @@ function modeFactory({ modeConfiguration }) {
customizationService.addModeCustomizations([
{
id: 'segmentation.disableEditing',
value: true,
id: 'segmentation.panel',
disableEditing: true,
},
]);
@@ -183,7 +183,7 @@ function modeFactory({ modeConfiguration }) {
props: {
leftPanels: [tracked.thumbnailList],
rightPanels: [dicomSeg.panel, tracked.measurements],
rightPanelDefaultClosed: true,
rightPanelClosed: true,
viewports: [
{
namespace: tracked.viewport,
+6 -1
View File
@@ -64,7 +64,12 @@ function initDefaultToolGroup(
{ toolName: toolNames.Magnify },
{ toolName: toolNames.SegmentationDisplay },
{ toolName: toolNames.CalibrationLine },
{ toolName: toolNames.AdvancedMagnify },
{
toolName: toolNames.AdvancedMagnify,
configuration: {
disableOnPassive: true,
},
},
{ toolName: toolNames.UltrasoundDirectional },
{ toolName: toolNames.PlanarFreehandROI },
{ toolName: toolNames.SplineROI },
+19 -17
View File
@@ -11,6 +11,20 @@ const ReferenceLinesListeners: RunCommand = [
},
];
export const toggleEnabledDisabledToolbar = {
commandName: 'toggleEnabledDisabledToolbar',
commandOptions: {
toolGroupIds: ['default', 'mpr', 'SRToolGroup', 'volume3d'],
},
};
export const toggleActiveDisabledToolbar = {
commandName: 'toggleActiveDisabledToolbar',
commandOptions: {
toolGroupIds: ['default', 'mpr', 'SRToolGroup'],
},
};
const moreTools = [
{
id: 'MoreTools',
@@ -80,13 +94,7 @@ const moreTools = [
icon: 'tool-referenceLines',
label: 'Reference Lines',
tooltip: 'Show Reference Lines',
commands: {
commandName: 'setToolEnabled',
commandOptions: {
toolName: 'ReferenceLines',
toggle: true, // Toggle the tool on/off upon click
},
},
commands: toggleEnabledDisabledToolbar,
listeners: {
[ViewportGridService.EVENTS.ACTIVE_VIEWPORT_ID_CHANGED]: ReferenceLinesListeners,
[ViewportGridService.EVENTS.VIEWPORTS_READY]: ReferenceLinesListeners,
@@ -94,17 +102,11 @@ const moreTools = [
evaluate: 'evaluate.cornerstoneTool.toggle',
}),
createButton({
id: 'ImageOverlay',
id: 'ImageOverlayViewer',
icon: 'toggle-dicom-overlay',
label: 'Image Overlay',
tooltip: 'Toggle Image Overlay',
commands: {
commandName: 'setToolEnabled',
commandOptions: {
toolName: 'ImageOverlayViewer',
toggle: true, // Toggle the tool on/off upon click
},
},
commands: toggleEnabledDisabledToolbar,
evaluate: 'evaluate.cornerstoneTool.toggle',
}),
createButton({
@@ -175,8 +177,8 @@ const moreTools = [
icon: 'icon-tool-loupe',
label: 'Loupe',
tooltip: 'Loupe',
commands: setToolActiveToolbar,
evaluate: 'evaluate.cornerstoneTool',
commands: toggleActiveDisabledToolbar,
evaluate: 'evaluate.cornerstoneTool.toggle',
}),
createButton({
id: 'UltrasoundDirectionalTool',
-2
View File
@@ -1,10 +1,8 @@
// TODO: torn, can either bake this here; or have to create a whole new button type
// Only ways that you can pass in a custom React component for render :l
import { WindowLevelMenuItem } from '@ohif/ui';
import { defaults, ToolbarService } from '@ohif/core';
import type { Button } from '@ohif/core/types';
const { windowLevelPresets } = defaults;
const { createButton } = ToolbarService;
export const setToolActiveToolbar = {