Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: Cornerstone3D 2.0 #1400

Merged
merged 97 commits into from
Oct 29, 2024
Merged

feat: Cornerstone3D 2.0 #1400

merged 97 commits into from
Oct 29, 2024

Conversation

sedghi
Copy link
Member

@sedghi sedghi commented Jul 22, 2024

@sedghi sedghi changed the title update Cornerstone 2.0 Jul 22, 2024
Copy link

netlify bot commented Jul 22, 2024

Deploy Preview for cornerstone-3d-docs failed. Why did it fail? →

Name Link
🔨 Latest commit 759f162
🔍 Latest deploy log https://app.netlify.com/sites/cornerstone-3d-docs/deploys/6720473afce08f0008aed036

);
await viewport.setStack([imageId], 0);
const viewport = renderingEngine.getViewport(viewportId);
await (viewport as Types.IStackViewport).setStack([imageId], 0);
Copy link
Collaborator

Choose a reason for hiding this comment

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

Could you leave this as a generic viewport and call setDataIds instead? I think that would be more consistent across viewport types.

Copy link
Member Author

Choose a reason for hiding this comment

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

I want the migration to be as minimal as possible. I understand it will be consistent, but perhaps this could be implemented in Cornerstone3D 3.0?

@wayfarer3130
Copy link
Collaborator

For the image volume, the access to that data is pretty low level, assuming that the internal organization of the pixel data is exactly a typed array and that there may or may not be slices associated with it. That causes us memory issues as we try to allocate larger buffers, and also forces us to share the image slice data in order to not need to copy the data all the time. If we could start having a better interface on top of the ImageVolume and other image data objects to hide some of the internal details, it would eventually allow us to use a single representation consistently. The VoxelManager is designed to be an abstraction on top of different types of views of both single and multiple images. Given that we don't get new versions of CS3D very often, starting to use the VoxelManager more consistently and perhaps deprecating the use of the full data object would be worthwhile.

@sedghi sedghi merged commit 692d9af into main Oct 29, 2024
6 of 15 checks passed
@sedghi sedghi changed the title Cornerstone 2.0 feat: Cornerstone3D 2.0 Oct 29, 2024
@IrvingLu
Copy link

I came up with a big trick, it's a huge workload

This was referenced Oct 29, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants