ohif-viewer/extensions/cornerstone
Gustavo André Lelis ebe1af8d4f feat: 🎸 DICOM SR STOW on MeasurementAPI (#954)
* feat: 🎸 DICOM SR STOW on MeasurementAPI

Closes: #758

* feat: 🎸 Adding the dataExchance from DICOM SR

* feat: 🎸 Fix some issues and get the retrieve measurements working

* feat: 🎸 Preventing measurement tool helpers to broke because the data is not Number (it comes as string from dcmjs)

* feat: 🎸 Adding a button to start testing SATE functionality

* feat: 🎸Small fixes into the code

* feat: 🎸 MAke sure we get latest SR in the study, even on lazyLoad mode

* Revert "feat: 🎸 Preventing measurement tool helpers to broke because the data is not Number (it comes as string from dcmjs)"

This reverts commit 4b3a1efb5810487d2319826fd59c03d779882b5e.

* feat: 🎸 Make sure after sync we update the viewports and also that annotation tools are set to passive, so it can be drawn in the viewports

* feat: 🎸 Remove console logs and start using OHIF.log

* feat: 🎸 Refactor measurement table to use Snackbar service of messages and make sure we only show save button if server type is dicomWeb

* feat: 🎸 Refactor to remove mocked wadoRoot and use server

* Fix to expose error once we can't save the SR

* Update DCMJS into latest dev version

* Update dcmjs with latest fixes

* Fix PR callouts

* Logging error on MeasurementReport creation

* Preventing from breaking on non supported tools and also warning that some toolType is not sopported

* Small error message update

* Expose better the errors and when we have unsopported tools into the measurements

* Renaming variable

* Expose dcmjs tool support check

* Change the way we warn the unsupportedTools

* Adding style to the button

* Small change on button style

* Fix git conflicts

* Fix after merge with latest master

* Fix after merge with master, btn was not clickable

* Fixing callouts

* Adding util functions into files and refactor with JSDocs

* Refactoring code, adding some basic JSDocs

* Bump dcmjs with latest version and fixes

* JSDocs and small refactors

* yarn lock file after dcmjs update

* Remove unused parameters

* Registering a plain copy of server into measurementAPI

* Small refactor

* Start changing from toolType to toolName

* Rename a function to get instanceMetadata

* Adding error if server is not DICOMWeb on retrieve

* Move snackbar outside of UI component and use UINotificationService

* Refactor and JSDocs

* Small fixes on JSDocs (style)

* Remove unused import

* Improve JSDocs on MeasurementApi

* Remove refactor leftover

* Improve JSDocs and propTypes

* JSDocs and small refactors
2019-12-11 11:14:01 -05:00
..
.webpack fix: Add some code splitting for PWA build (#937) 2019-09-26 11:35:13 +02:00
src feat: 🎸 DICOM SR STOW on MeasurementAPI (#954) 2019-12-11 11:14:01 -05:00
CHANGELOG.md chore(release): publish [skip ci] 2019-12-11 15:41:29 +00:00
LICENSE Chore/kill yalc with fire (#629) 2019-08-13 15:36:46 -04:00
package.json feat: 🎸 DICOM SR STOW on MeasurementAPI (#954) 2019-12-11 11:14:01 -05:00
README.md feat!: Ability to configure cornerstone tools via extension configuration (#1229) 2019-12-09 12:47:23 -05:00

@ohif/extension-cornerstone

npm (scoped)

This extension adds support for viewing and manipulating 2D medical images via a viewport. The underlying implementation wraps the cornerstonejs/react-cornerstone-viewport, and provides basic commands and toolbar buttons for common actions.

Index

Extension Id: cornerstone

Commands Module

This extensions includes the following Commands and Command Definitions. These can be registered with @ohif/core's CommandManager. After registering the commands, they can be bound to hotkeys using the HotkeysManager and listed in the UserPreferences modal.

You can read more about Commands, Hotkeys, and the UserPreferences Modal in their respective locations in the OHIF Viewer's documentation.

Command Name Description Store Contexts
rotateViewportCW viewports
rotateViewportCCW viewports
invertViewport viewports
flipViewportVertical viewports
flipViewportHorizontal viewports
scaleUpViewport viewports
scaleDownViewport viewports
fitViewportToWindow viewports
resetViewport viewports
clearAnnotations TODO
next/previous Image TODO
first/last Image TODO
nextViewportDisplaySet
previousViewportDisplaySet
setToolActive Activates tool for primary button/touch

Toolbar Module

Our toolbar module contains definitions for:

  • StackScroll
  • Zoom
  • Wwwc
  • Pan
  • Length
  • Angle
  • Reset
  • Cine

All use the ACTIVE_VIEWPORT::CORNERSTONE context.

Viewport Module

Our Viewport wraps cornerstonejs/react-cornerstone-viewport and is connected the redux store. This module is the most prone to change as we hammer out our Viewport interface.

Tool Configuration

Tools can be configured through extension configuration using the tools key:

  ...
  cornerstoneExtensionConfig: {
    tools: {
      ArrowAnnotate: {
        configuration: {
          getTextCallback: (callback, eventDetails) => callback(prompt('Enter your custom annotation')),
        },
      },
    },
  },
  ...

Resources

Repositories