109 lines
3.1 KiB
JavaScript
109 lines
3.1 KiB
JavaScript
export const toolGroupIds = {
|
|
CT: 'ctToolGroup',
|
|
PT: 'ptToolGroup',
|
|
Fusion: 'fusionToolGroup',
|
|
MIP: 'mipToolGroup',
|
|
default: 'default',
|
|
// MPR: 'mpr',
|
|
};
|
|
|
|
function _initToolGroups(toolNames, Enums, toolGroupService, commandsManager) {
|
|
const tools = {
|
|
active: [
|
|
{
|
|
toolName: toolNames.WindowLevel,
|
|
bindings: [{ mouseButton: Enums.MouseBindings.Primary }],
|
|
},
|
|
{
|
|
toolName: toolNames.Pan,
|
|
bindings: [{ mouseButton: Enums.MouseBindings.Auxiliary }],
|
|
},
|
|
{
|
|
toolName: toolNames.Zoom,
|
|
bindings: [{ mouseButton: Enums.MouseBindings.Secondary }],
|
|
},
|
|
{ toolName: toolNames.StackScrollMouseWheel, bindings: [] },
|
|
],
|
|
passive: [
|
|
{ toolName: toolNames.Length },
|
|
{
|
|
toolName: toolNames.ArrowAnnotate,
|
|
configuration: {
|
|
getTextCallback: (callback, eventDetails) => {
|
|
commandsManager.runCommand('arrowTextCallback', {
|
|
callback,
|
|
eventDetails,
|
|
});
|
|
},
|
|
|
|
changeTextCallback: (data, eventDetails, callback) =>
|
|
commandsManager.runCommand('arrowTextCallback', {
|
|
callback,
|
|
data,
|
|
eventDetails,
|
|
}),
|
|
},
|
|
},
|
|
{ toolName: toolNames.Bidirectional },
|
|
{ toolName: toolNames.DragProbe },
|
|
{ toolName: toolNames.Probe },
|
|
{ toolName: toolNames.EllipticalROI },
|
|
{ toolName: toolNames.RectangleROI },
|
|
{ toolName: toolNames.StackScroll },
|
|
{ toolName: toolNames.Angle },
|
|
{ toolName: toolNames.CobbAngle },
|
|
{ toolName: toolNames.Magnify },
|
|
],
|
|
enabled: [{ toolName: toolNames.SegmentationDisplay }],
|
|
disabled: [
|
|
{
|
|
toolName: toolNames.Crosshairs,
|
|
configuration: {
|
|
viewportIndicators: false,
|
|
autoPan: {
|
|
enabled: false,
|
|
panSize: 10,
|
|
},
|
|
},
|
|
},
|
|
],
|
|
};
|
|
|
|
toolGroupService.createToolGroupAndAddTools(toolGroupIds.CT, tools);
|
|
toolGroupService.createToolGroupAndAddTools(toolGroupIds.PT, {
|
|
active: tools.active,
|
|
passive: [...tools.passive, { toolName: 'RectangleROIStartEndThreshold' }],
|
|
enabled: tools.enabled,
|
|
disabled: tools.disabled,
|
|
});
|
|
toolGroupService.createToolGroupAndAddTools(toolGroupIds.Fusion, tools);
|
|
toolGroupService.createToolGroupAndAddTools(toolGroupIds.default, tools);
|
|
|
|
const mipTools = {
|
|
active: [
|
|
{
|
|
toolName: toolNames.VolumeRotateMouseWheel,
|
|
configuration: {
|
|
rotateIncrementDegrees: 0.1,
|
|
},
|
|
},
|
|
{
|
|
toolName: toolNames.MipJumpToClick,
|
|
configuration: {
|
|
toolGroupId: toolGroupIds.PT,
|
|
},
|
|
bindings: [{ mouseButton: Enums.MouseBindings.Primary }],
|
|
},
|
|
],
|
|
enabled: [{ toolName: toolNames.SegmentationDisplay }],
|
|
};
|
|
|
|
toolGroupService.createToolGroupAndAddTools(toolGroupIds.MIP, mipTools);
|
|
}
|
|
|
|
function initToolGroups(toolNames, Enums, toolGroupService, commandsManager) {
|
|
_initToolGroups(toolNames, Enums, toolGroupService, commandsManager);
|
|
}
|
|
|
|
export default initToolGroups;
|