Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -54,8 +54,8 @@ function internalAddSegmentationRepresentation(
const segmentKeys = Object.keys(segmentation.segments);
if (segmentKeys.length > 0) {
firstSegmentIndex = segmentKeys.map((k) => Number(k)).sort()[0];
setActiveSegmentIndex(segmentationId, firstSegmentIndex);
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Unfortunately this change will break this example and likely others. I used this PR branch, ran the example and it throws an exception when clicking to add a contour because no segment is added. I think the existing behaviour is desired and relied upon in many scenarios. @sedghi thoughts?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hey @nagychris, can you tell me more about the problem you're running into, without getting too deep into the code details? For example, are you loading a labelmap, and then seeing something unexpected happen?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi @sedghi, the issue is that my application expects the initial state of a segmentation to have no segments, because the user should first select which type of segment they want to create before they can draw. So the issue is related to how the workflow works in my application.

The current workaround I see is to remove this empty segment as soon as the segmentation is loaded, but it's quite hacky, so I wondered if we can remove this again.

But if you say that this empty / default segment is required for other cornerstone3D features, then we can also keep it. Just wanted to raise this topic, as it might also be an issue for other applications using cornerstone3D.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So the issue with your currrent proposal is that sometimes (specifically in RTSS) we skip segments, so the first one becomes segment 2 for instance

}
setActiveSegmentIndex(segmentationId, firstSegmentIndex);
}
}

Expand Down
Loading