fix(Measurement): Use dashed lines for measurments of viewports where getCurrentImageId returns undefined (#3392)

* fix(Measurement): Use dashed lines for measurments of viewports where getCurrentImageId returns undefined

* Updated cornerstone3d packages

* Fixed code comment.

* Removed unused imports.
This commit is contained in:
Joe Boccanfuso 2023-05-16 10:02:10 -04:00 committed by GitHub
parent 52eb0edd6f
commit 045e54aa02
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
8 changed files with 42 additions and 43 deletions

View File

@ -46,7 +46,7 @@
"@babel/runtime": "^7.20.13",
"classnames": "^2.3.2",
"@cornerstonejs/adapters": "^0.6.0",
"@cornerstonejs/core": "^0.46.2",
"@cornerstonejs/tools": "^0.67.2"
"@cornerstonejs/core": "^0.47.1",
"@cornerstonejs/tools": "^0.67.4"
}
}

View File

@ -34,7 +34,7 @@
"peerDependencies": {
"@ohif/core": "^3.0.0",
"@ohif/ui": "^2.0.0",
"@cornerstonejs/dicom-image-loader": "^0.6.4",
"@cornerstonejs/dicom-image-loader": "^0.6.6",
"@cornerstonejs/codec-charls": "^1.2.3",
"@cornerstonejs/codec-libjpeg-turbo-8bit": "^1.2.2",
"@cornerstonejs/codec-openjpeg": "^1.2.2",
@ -53,9 +53,9 @@
"dependencies": {
"@babel/runtime": "^7.20.13",
"@cornerstonejs/adapters": "^0.6.0",
"@cornerstonejs/core": "^0.46.2",
"@cornerstonejs/streaming-image-volume-loader": "^0.20.2",
"@cornerstonejs/tools": "^0.67.2",
"@cornerstonejs/core": "^0.47.1",
"@cornerstonejs/streaming-image-volume-loader": "^0.20.4",
"@cornerstonejs/tools": "^0.67.4",
"@kitware/vtk.js": "27.3.1",
"html2canvas": "^1.4.1",
"lodash.debounce": "4.0.8",

View File

@ -32,8 +32,8 @@
"peerDependencies": {
"@ohif/core": "^3.0.0",
"classnames": "^2.3.2",
"@cornerstonejs/core": "^0.46.2",
"@cornerstonejs/tools": "^0.67.2",
"@cornerstonejs/core": "^0.47.1",
"@cornerstonejs/tools": "^0.67.4",
"@ohif/extension-cornerstone-dicom-sr": "^3.0.0",
"dcmjs": "^0.29.5",
"lodash.debounce": "^4.17.21",

View File

@ -2,13 +2,7 @@ import React, { useState, useEffect } from 'react';
import PropTypes from 'prop-types';
import OHIF, { utils } from '@ohif/core';
import {
Notification,
ViewportActionBar,
useViewportDialog,
Tooltip,
Icon,
} from '@ohif/ui';
import { ViewportActionBar, Tooltip, Icon } from '@ohif/ui';
import { useTranslation } from 'react-i18next';
@ -19,13 +13,11 @@ const { formatDate } = utils;
function TrackedCornerstoneViewport(props) {
const {
children,
displaySets,
viewportIndex,
viewportLabel,
servicesManager,
extensionManager,
commandsManager,
viewportOptions,
} = props;
@ -40,7 +32,6 @@ function TrackedCornerstoneViewport(props) {
const displaySet = displaySets[0];
const [trackedMeasurements] = useTrackedMeasurements();
const [viewportDialogState] = useViewportDialog();
const [isTracked, setIsTracked] = useState(false);
const [trackedMeasurementUID, setTrackedMeasurementUID] = useState(null);
@ -48,7 +39,6 @@ function TrackedCornerstoneViewport(props) {
const viewportId = viewportOptions.viewportId;
const {
Modality,
SeriesDate,
SeriesDescription,
SeriesInstanceUID,
@ -93,8 +83,17 @@ function TrackedCornerstoneViewport(props) {
};
}, [isTracked]);
if (trackedSeries.includes(SeriesInstanceUID) !== isTracked) {
setIsTracked(!isTracked);
// A current image id will only exist for viewports that can have measurements tracked.
// Typically these are stack viewports and those volume viewports for the series of acquisition.
const currentImageId = cornerstoneViewportService
.getCornerstoneViewport(viewportId)
?.getCurrentImageId();
if (currentImageId) {
if (trackedSeries.includes(SeriesInstanceUID) !== isTracked) {
setIsTracked(!isTracked);
}
} else if (isTracked) {
setIsTracked(false);
}
function switchMeasurement(direction) {

View File

@ -147,7 +147,7 @@
]
},
"resolutions": {
"@cornerstonejs/core": "^0.46.2",
"@cornerstonejs/core": "^0.47.1",
"**/@babel/runtime": "^7.20.13",
"nth-check": "^2.1.1",
"trim-newlines": "^5.0.0",

View File

@ -32,7 +32,7 @@
},
"peerDependencies": {
"cornerstone-math": "0.1.9",
"@cornerstonejs/dicom-image-loader": "^0.6.4",
"@cornerstonejs/dicom-image-loader": "^0.6.6",
"@cornerstonejs/codec-charls": "^1.2.3",
"@cornerstonejs/codec-libjpeg-turbo-8bit": "^1.2.2",
"@cornerstonejs/codec-openjpeg": "^1.2.2",

View File

@ -68,7 +68,7 @@
"config-point": "^0.4.8",
"core-js": "^3.16.1",
"cornerstone-math": "^0.1.9",
"@cornerstonejs/dicom-image-loader": "^0.6.4",
"@cornerstonejs/dicom-image-loader": "^0.6.6",
"@cornerstonejs/codec-charls": "^1.2.3",
"@cornerstonejs/codec-libjpeg-turbo-8bit": "^1.2.2",
"@cornerstonejs/codec-openjpeg": "^1.2.2",

View File

@ -1469,43 +1469,43 @@
resolved "https://registry.npmjs.org/@cornerstonejs/codec-openjph/-/codec-openjph-2.4.2.tgz#e96721d56f6ec96f7f95c16321d88cc8467d8d81"
integrity sha512-lgdvBvvNezleY+4pIe2ceUsJzlZe/0PipdeubQ3vZZOz3xxtHHMR1XFCl4fgd8gosR8COHuD7h6q+MwgrwBsng==
"@cornerstonejs/core@^0.46.2":
version "0.46.2"
resolved "https://registry.npmjs.org/@cornerstonejs/core/-/core-0.46.2.tgz#89ba0d27f491aab8b0a22d15ce5ed601ee23d2ec"
integrity sha512-HHActbdv3np/QXmQPl+DOqVMXPeOXbkqDov1SagF1om6Me4V7O8N2HbM4CgKCdf2VrEId6h0BL3+MG3Cxn7LPQ==
"@cornerstonejs/core@^0.47.1":
version "0.47.1"
resolved "https://registry.yarnpkg.com/@cornerstonejs/core/-/core-0.47.1.tgz#8bbb9d5d8a6cd8a4c0fbf0b20bc0f56808d4fa40"
integrity sha512-bA69qo2WkMd5lkFFegYQ1UWHbnOADF0TD6DHiOnabFxHMQYZLB9CkCy4lT/tPAYL2w9WKm6b52ScUPNLTirWeA==
dependencies:
"@kitware/vtk.js" "27.3.1"
detect-gpu "^5.0.22"
gl-matrix "^3.4.3"
lodash.clonedeep "4.5.0"
"@cornerstonejs/dicom-image-loader@^0.6.4":
version "0.6.4"
resolved "https://registry.npmjs.org/@cornerstonejs/dicom-image-loader/-/dicom-image-loader-0.6.4.tgz#8020402b11dd78df52957345ca57ed8c05b2999b"
integrity sha512-+y9NklTFYlq61frxKcJ2u+0h9zfKKiv20N28N5qBr3Ie6CFcNrY51ETkujNnNKKRUBvxXDidjVdY+j+MSPPJKQ==
"@cornerstonejs/dicom-image-loader@^0.6.6":
version "0.6.6"
resolved "https://registry.yarnpkg.com/@cornerstonejs/dicom-image-loader/-/dicom-image-loader-0.6.6.tgz#086b14e93e67923ea999d7f80c42bf766db3918f"
integrity sha512-pdJ5f7/JEX4BAXR2keAAGf6RUfuyzB3vhEvk0T4yDv960TdpT4RZqRjs5acZMs9bkGqY8zAb+c9+Gdz5vypfvg==
dependencies:
"@cornerstonejs/codec-charls" "^1.2.3"
"@cornerstonejs/codec-libjpeg-turbo-8bit" "^1.2.2"
"@cornerstonejs/codec-openjpeg" "^1.2.2"
"@cornerstonejs/codec-openjph" "^2.4.2"
"@cornerstonejs/core" "^0.46.2"
"@cornerstonejs/core" "^0.47.1"
dicom-parser "^1.8.9"
pako "^2.0.4"
uuid "^9.0.0"
"@cornerstonejs/streaming-image-volume-loader@^0.20.2":
version "0.20.2"
resolved "https://registry.npmjs.org/@cornerstonejs/streaming-image-volume-loader/-/streaming-image-volume-loader-0.20.2.tgz#0df2ed5afd012d2851356af01eed48646d3a6c60"
integrity sha512-2TYoJ0wpE9KDpn8adfmTq0xOb/Xg7jhEyOuBnrr3il/NFvOfMlJieJVCYM0v3hyoANfqmDcFBqqtlm346VOMdw==
"@cornerstonejs/streaming-image-volume-loader@^0.20.4":
version "0.20.4"
resolved "https://registry.yarnpkg.com/@cornerstonejs/streaming-image-volume-loader/-/streaming-image-volume-loader-0.20.4.tgz#f8d727f2ae7dc0ae3c8975bad2a4f5365743127f"
integrity sha512-Zkf/HKatWGf3GPb+0yR7wNPqBHfKXQznpcKsqwFbbMu/SNp7dBcCuvqRVXO5BrJOfnyDeeDpB2+2XRocBnighg==
dependencies:
"@cornerstonejs/core" "^0.46.2"
"@cornerstonejs/core" "^0.47.1"
"@cornerstonejs/tools@^0.67.2":
version "0.67.2"
resolved "https://registry.npmjs.org/@cornerstonejs/tools/-/tools-0.67.2.tgz#7b7c6aac4ec7eaa84a438198837e657328e3c8a2"
integrity sha512-nOg2byAVrdMj3DqLYVT7qbrl2Sz6V82xtfFYJ4oQeGul/u/1AvHj4SSZs7MTV63Li3KP2ax/ZghCjral+exaVg==
"@cornerstonejs/tools@^0.67.4":
version "0.67.4"
resolved "https://registry.yarnpkg.com/@cornerstonejs/tools/-/tools-0.67.4.tgz#5dfc2d3bacc2be600496cd4e230b1749de59b001"
integrity sha512-qeCCtK/xioEBv7l1zqicWQrHdzkFOX4fGNZ5D/TMkQMa+Ed5Zip8gDAcYTbmUvbYXdvkzhoOZeLcPVhoAkDykw==
dependencies:
"@cornerstonejs/core" "^0.46.2"
"@cornerstonejs/core" "^0.47.1"
lodash.clonedeep "4.5.0"
lodash.get "^4.4.2"