feat(SR): SCOORD3D point annotations support for stack viewports (#4315)

This commit is contained in:
Igor Octaviano authored and GitHub committed 2024-10-17 09:36:24 -04:00
1 parent e0fca8c88c
commit ac1cad25af
51 files changed
+978 -607

No files matched your search

+2 -2
View File
@@ -51,9 +51,9 @@
"@babel/runtime": "^7.20.13",
"@cornerstonejs/codec-charls": "^1.2.3",
"@cornerstonejs/codec-libjpeg-turbo-8bit": "^1.2.2",
"@cornerstonejs/codec-openjpeg": "^1.2.2",
"@cornerstonejs/codec-openjpeg": "^1.2.4",
"@cornerstonejs/codec-openjph": "^2.4.5",
"@cornerstonejs/dicom-image-loader": "^1.77.6",
"@cornerstonejs/dicom-image-loader": "^1.86.0",
"@emotion/serialize": "^1.1.3",
"@ohif/core": "3.9.0-beta.98",
"@ohif/extension-cornerstone": "3.9.0-beta.98",
+13 -4
View File
@@ -1,6 +1,5 @@
import React, { useEffect, useCallback, useRef, useState } from 'react';
import React, { useEffect, useCallback, useRef } from 'react';
import { useResizeDetector } from 'react-resize-detector';
import PropTypes from 'prop-types';
import { Types, MeasurementService } from '@ohif/core';
import { ViewportGrid, ViewportPane, useViewportGrid } from '@ohif/ui';
import EmptyViewport from './EmptyViewport';
@@ -24,8 +23,13 @@ function ViewerViewportGrid(props: withAppTypes) {
});
const layoutHash = useRef(null);
const { displaySetService, measurementService, hangingProtocolService, uiNotificationService } =
servicesManager.services;
const {
displaySetService,
measurementService,
hangingProtocolService,
cornerstoneViewportService,
uiNotificationService,
} = servicesManager.services;
const generateLayoutHash = () => `${numCols}-${numRows}`;
@@ -108,6 +112,10 @@ function ViewerViewportGrid(props: withAppTypes) {
const _getUpdatedViewports = useCallback(
(viewportId, displaySetInstanceUID) => {
if (!displaySetInstanceUID) {
return [];
}
let updatedViewports = [];
try {
updatedViewports = hangingProtocolService.getViewportsRequireUpdate(
@@ -175,6 +183,7 @@ function ViewerViewportGrid(props: withAppTypes) {
);
return;
}
// Arbitrarily assign the viewport to element 0
// TODO - this should perform a search to find the most suitable viewport.
updatedViewports[0] = { ...updatedViewports[0] };
+2 -2
View File
@@ -35,9 +35,9 @@
"peerDependencies": {
"@cornerstonejs/codec-charls": "^1.2.3",
"@cornerstonejs/codec-libjpeg-turbo-8bit": "^1.2.2",
"@cornerstonejs/codec-openjpeg": "^1.2.3",
"@cornerstonejs/codec-openjpeg": "^1.2.4",
"@cornerstonejs/codec-openjph": "^2.4.5",
"@cornerstonejs/dicom-image-loader": "^1.82.0",
"@cornerstonejs/dicom-image-loader": "^1.86.0",
"@ohif/ui": "3.9.0-beta.98",
"cornerstone-math": "0.1.9",
"dicom-parser": "^1.8.21"
@@ -466,7 +466,6 @@ class MeasurementService extends PubSubService {
}
const sourceInfo = this._getSourceToString(source);
if (!this._sourceHasMappings(source)) {
throw new Error(`No measurement mappings found for '${sourceInfo}' source. Exiting early.`);
}