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

[WIP] Feat/cornerstone wado #310

Closed
wants to merge 5 commits into from
Closed

[WIP] Feat/cornerstone wado #310

wants to merge 5 commits into from

Conversation

sedghi
Copy link
Member

@sedghi sedghi commented Nov 24, 2022

Bringing cornerstoneWADOImageLoader to the cornerstonejs mono repo, why?

  1. Convert the library to typescript
  2. Increasing need for webworkers in cornerstonejs, makes it hard to manage workers both in wado and here in core or tools or consuming apps (e.g., OHIF)
  3. Better development experience for devs

Remaining works

  • Adding the CSWIL examples
  • Adding CSWIL tests

@netlify
Copy link

netlify bot commented Nov 24, 2022

Deploy Preview for cornerstone-3d-docs failed.

Name Link
🔨 Latest commit f6efcca
🔍 Latest deploy log https://app.netlify.com/sites/cornerstone-3d-docs/deploys/63910448d90568000858ff87

@sedghi sedghi requested review from swederik and wayfarer3130 and removed request for swederik November 24, 2022 04:12
@sedghi sedghi changed the title Feat/cornerstone wado [WIP] Feat/cornerstone wado Nov 24, 2022
@jmannau
Copy link
Contributor

jmannau commented Dec 5, 2022

Hi @sedghi I recently converted the cornerstoneWadoLoader to typescript myself and typed many of the functions. Would you be interested in help with this? If so, do you have any thoughts/guidelines on how to name types? I normally prefix types used by a package with a common namespace ie: CornerstoneWadoLoaderOptions or CornerstoneWadoLoaderImage extends IImage.

@sedghi
Copy link
Member Author

sedghi commented Dec 5, 2022

@jmannau This is awesome! and yes we are interested for sure.
How about you create a PR to this branch and we discuss there?

We always appreciate community support and give appropriate attributions as you can see in our previous newsletters here

* fix: mouse-up should not unhighlight annotations (#305)

* fix: annotation highlighted and tooling for ellipticalROI

* update build

* fix tests

* chore(release): publish [skip ci]

 - [email protected]
 - @cornerstonejs/[email protected]

* fix: stack viewport flip scroll (#304)

* fix: use focal point for pan cache for stack viewport

* fix: pan dir with flip

* fix pan values while flipped

* update build

* apply review comments

* fix build

* chore(release): publish [skip ci]

 - @cornerstonejs/[email protected]
 - [email protected]
 - @cornerstonejs/[email protected]
 - @cornerstonejs/[email protected]

* feat: add referenceCursors tool (#275)

* added basic cursorCrosshairSync tool with example, TODO: for now cursorSync is displayed regardless of distance, create configurable distance and also sync the position of all viewports over which the mouse is not to scroll to a slice that is close to the currentMousePosition in 3d space

* addde stack syncing for StackViewport and syncing for volumeViewport on imageChange events, added configuration for max display distance

* refactored tool functions

* added comment to possible bug

* added configuration options to example

* changed look of crosshair to 4 lines with central space

* undid local tsconfig change

* undid yarn.lock changes

* added tool to example-info.json

* removed from example-runner because it broke build

* readded example and fixed typo

* readded example-info and changed example to trigger rebuild

* added cleanup for mouseoverElement when tool is disabled

* added cleanup when tool gets disabled, this does not get called when toolGroup gets destroyed, might cause remaining listeners

* applied naming changes, reworked adding annotation logic

* removed event listeners and moved logic to check for stack scrolling into rendering logic

* added planeDistanceToPoint to planar utilities

* added getClosestStackImageIndexForPoint

* rewrote logic to use onCameraModified

* updated example-info

* fixed bug with 0 being falsey

* added logic to remove cursor if wanted

* modified toolGroup so that setting a tool active only changes the cursor to default if there is no primary mouse cursor

* fixed bug not updating disable cursor

* fixed missing parentheses from merge

* readded scrollWheel scrolling and api changes

* fixed typos

* chore(release): publish [skip ci]

 - @cornerstonejs/[email protected]
 - [email protected]
 - @cornerstonejs/[email protected]
 - @cornerstonejs/[email protected]

* fix: ZoomTool fix for polyData actors with no imageData (#308)

* chore(release): publish [skip ci]

 - [email protected]
 - @cornerstonejs/[email protected]

* fix: If planar annotation is not visible, filter it (#318)

Co-authored-by: edward65 <[email protected]>

* fix: filter planarFreeHandeROI based on parallel normals instead of equal normals. (#315)

Co-authored-by: Ramon Emiliani <[email protected]>

* fix: get correct imageData with targetId in BaseTool (#294)

* limit disabled element not need to render

* Update BaseTool.ts

fix: get correct viewport when there are multiple viewport with same stack data

Co-authored-by: chendingmiao <[email protected]>

* chore(release): publish [skip ci]

 - [email protected]
 - @cornerstonejs/[email protected]

* fix: htj2k and keymodifier (#313)

* fix(htj2k):Support htj2k in the streaming volume loader

* fix(decodeImage):Fix htj2k image decode and mouse key modifiers

* Update for PR

* update ci build

* chore(release): publish [skip ci]

 - [email protected]
 - @cornerstonejs/[email protected]
 - @cornerstonejs/[email protected]

* fix: coronal view should not be flipped (#321)

* chore(release): publish [skip ci]

 - @cornerstonejs/[email protected]
 - [email protected]
 - @cornerstonejs/[email protected]
 - @cornerstonejs/[email protected]

* fix: bidirectional tool when short and long axis changes (#309)

* fix rotation for handles

* fix: short axis movement

* fix: bidirectional tool incorrect interaction

* chore(release): publish [skip ci]

 - @cornerstonejs/[email protected]
 - [email protected]
 - @cornerstonejs/[email protected]
 - @cornerstonejs/[email protected]

* fix(volumeViewport): Add optional scaling as the volume can be undefined (#323)

While trying to get the volume from the cache, it can be undefined so getting the scaling attribute would throw an error in that case.
This is a quick fix

* chore(release): publish [skip ci]

 - @cornerstonejs/[email protected]
 - [email protected]
 - @cornerstonejs/[email protected]
 - @cornerstonejs/[email protected]

* fix: Use queryselector instead of firstChild to get svg-layer (#268)

* chore(release): publish [skip ci]

 - [email protected]
 - @cornerstonejs/[email protected]

* [wip] initial dicom-loader typescript conversion

* [wip] initial typescript conversion

* [wip] update types for tests

Co-authored-by: Alireza <[email protected]>
Co-authored-by: ohif-bot <[email protected]>
Co-authored-by: Niclas do <[email protected]>
Co-authored-by: Neil <[email protected]>
Co-authored-by: Edward Son <[email protected]>
Co-authored-by: edward65 <[email protected]>
Co-authored-by: ramonemiliani93 <[email protected]>
Co-authored-by: Ramon Emiliani <[email protected]>
Co-authored-by: 陈定苗 <[email protected]>
Co-authored-by: chendingmiao <[email protected]>
Co-authored-by: Bill Wallace <[email protected]>
Co-authored-by: Gabriel Lebaudy <[email protected]>
Co-authored-by: Mustafa ÇİNİ <[email protected]>
Co-authored-by: James Manners <[email protected]>
@sedghi
Copy link
Member Author

sedghi commented Jan 5, 2023

closing in favor of #343

@sedghi sedghi closed this Jan 5, 2023
wayfarer3130 pushed a commit that referenced this pull request Jan 20, 2023
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.

2 participants