fix(seg): prevent segmentations from spreading to all viewports before hydration confirmation in 3D four-up (#5967)
This commit is contained in:
1 parent
c9c4f11b82
commit
f8ccf9ff2e
23 files changed
+558
-39
No files matched your search
@@ -67,8 +67,14 @@ export function configureViewportForLayerAddition(params: {
|
||||
|
||||
// If a viewport type was already set do not reset it.
|
||||
if (!viewport.viewportOptions.viewportType) {
|
||||
// Special handling for overlay display sets
|
||||
if (requestedLayerDisplaySet.isOverlayDisplaySet) {
|
||||
// If the live Cornerstone viewport is already orthographic (volume), keep it as
|
||||
// 'volume'. Prevents accidentally downgrading a volume viewport to 'stack' when
|
||||
// viewportOptions arrives without a viewportType (e.g. from the HP overlay path).
|
||||
const csViewport = cornerstoneViewportService.getCornerstoneViewport(viewportId);
|
||||
if (csViewport?.type === 'orthographic') {
|
||||
viewport.viewportOptions.viewportType = 'volume';
|
||||
// Special handling for overlay display sets
|
||||
} else if (requestedLayerDisplaySet.isOverlayDisplaySet) {
|
||||
// Do not force volume for SEG and RTSTRUCT if it and all the current display sets are for the same display set
|
||||
const isSameDisplaySet = currentDisplaySetUIDs.every(uid => {
|
||||
const currentDisplaySet = displaySetService.getDisplaySetByUID(uid);
|
||||
@@ -131,7 +137,9 @@ export function configureViewportForLayerRemoval(params: {
|
||||
viewport.viewportOptions = {};
|
||||
}
|
||||
|
||||
viewport.viewportOptions.viewportType = 'volume';
|
||||
const csViewportOrthographic =
|
||||
cornerstoneViewportService.getCornerstoneViewport(viewportId)?.type === 'orthographic';
|
||||
viewport.viewportOptions.viewportType = csViewportOrthographic ? 'volume' : 'stack';
|
||||
|
||||
// orientation
|
||||
if (!viewport.viewportOptions.orientation) {
|
||||
|
||||
Reference in new issue
Block a user