@ohif/app 3.9.0-beta.23 → 3.9.0-beta.25
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{117.bundle.772ce244eee25d9b7316.js → 117.bundle.ba41cf7978afb629dcff.js} +16 -3
- package/dist/{164.bundle.3221590f5e6855086889.js → 164.bundle.79cc35bc3e6b792636cd.js} +16 -3
- package/dist/{236.bundle.d3a631d79ee8952e3c60.js → 236.bundle.343bcd0be60d0ae61901.js} +8 -1
- package/dist/{363.bundle.7dd957eeb0177cdb808c.js → 363.bundle.5cb502c3332360678f5c.js} +88 -91
- package/dist/{370.bundle.baa389d217c390b0e92b.js → 370.bundle.02108fbb881fbe75b59c.js} +1 -1
- package/dist/{461.bundle.b44727b0b162f4b10b5e.js → 461.bundle.f8616212d433f5a2dc2e.js} +2 -2
- package/dist/{501.bundle.7d5003758fa3ffbb344b.js → 501.bundle.3dcc63f03d9c252a9bee.js} +135 -65
- package/dist/{717.bundle.06a976a9200c0c4fa395.js → 717.bundle.cbdf952e4ee65e11a893.js} +16 -7
- package/dist/{app.bundle.cf75c45a89282dfe58a9.js → app.bundle.8ee8d8f9bc73c9611cbe.js} +149 -73
- package/dist/cornerstoneDICOMImageLoader.min.js +1 -1
- package/dist/cornerstoneDICOMImageLoader.min.js.map +1 -1
- package/dist/index.html +1 -1
- package/dist/{polySeg.bundle.b0392069f29e128b4efa.js → polySeg.bundle.cc8400971fca41347b25.js} +1 -1
- package/dist/{suv-peak-worker.bundle.8a7a3a0ab00929f3f6fd.js → suv-peak-worker.bundle.59ea76ac47db7a736234.js} +1 -1
- package/dist/sw.js +1 -1
- package/package.json +19 -19
- /package/dist/{121.bundle.0772f52e6bec8eb92dfa.js → 121.bundle.a6b56c0f71b118cbc968.js} +0 -0
- /package/dist/{129.bundle.4dd38a22e6d9f79d834e.js → 129.bundle.6b1da740bdbb6aa2f79b.js} +0 -0
- /package/dist/{14.bundle.4aa15daa6d5a84f58826.js → 14.bundle.5a19903d4093178680ac.js} +0 -0
- /package/dist/{140.bundle.70e79ec0e0d41b05b09d.js → 140.bundle.d9e775c2154d2c07737b.js} +0 -0
- /package/dist/{194.bundle.179e4233aeb2ea81728a.js → 194.bundle.4134f419487af7c36f88.js} +0 -0
- /package/dist/{211.bundle.56463a11e29c6304c2f9.js → 211.bundle.5d9fbf4fc72720d8b7d6.js} +0 -0
- /package/dist/{218.bundle.e495b3659417ef205b05.js → 218.bundle.5e36a053adb7726b84b9.js} +0 -0
- /package/dist/{382.bundle.4c3a26805bb21e47a701.js → 382.bundle.f2d45210d14bc2ea8954.js} +0 -0
- /package/dist/{444.bundle.dc50143843f2284792b2.js → 444.bundle.6672b9db197783dfda0a.js} +0 -0
- /package/dist/{552.bundle.64b1b393ef9ac41329ad.js → 552.bundle.10814ae6ca362abf5690.js} +0 -0
- /package/dist/{555.bundle.4c85d276f397d7f1fb4d.js → 555.bundle.853f178654ae3a2b711e.js} +0 -0
- /package/dist/{799.bundle.1e13a8cb94b834736230.js → 799.bundle.c183ef90be837d35b4e1.js} +0 -0
- /package/dist/{806.bundle.9bcf6087464cfced7555.js → 806.bundle.e9abca59699a6c17b225.js} +0 -0
- /package/dist/{853.bundle.b36c9d4b53215b761167.js → 853.bundle.0134f2684ca8feafe6b9.js} +0 -0
- /package/dist/{920.bundle.69dd8ef2300c1d97fe2c.js → 920.bundle.7ceaea855550a98070ff.js} +0 -0
- /package/dist/{989.bundle.84fdab7bf00463e08e18.js → 989.bundle.45acbd78a5e38cc1610d.js} +0 -0
|
@@ -959,12 +959,12 @@ const Length = {
|
|
|
959
959
|
SOPInstanceUID,
|
|
960
960
|
SeriesInstanceUID,
|
|
961
961
|
StudyInstanceUID
|
|
962
|
-
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId,
|
|
962
|
+
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId, displaySetService, annotation);
|
|
963
963
|
let displaySet;
|
|
964
964
|
if (SOPInstanceUID) {
|
|
965
965
|
displaySet = displaySetService.getDisplaySetForSOPInstanceUID(SOPInstanceUID, SeriesInstanceUID);
|
|
966
966
|
} else {
|
|
967
|
-
displaySet = displaySetService.getDisplaySetsForSeries(SeriesInstanceUID);
|
|
967
|
+
displaySet = displaySetService.getDisplaySetsForSeries(SeriesInstanceUID)[0];
|
|
968
968
|
}
|
|
969
969
|
const {
|
|
970
970
|
points,
|
|
@@ -982,6 +982,7 @@ const Length = {
|
|
|
982
982
|
metadata,
|
|
983
983
|
referenceSeriesUID: SeriesInstanceUID,
|
|
984
984
|
referenceStudyUID: StudyInstanceUID,
|
|
985
|
+
referencedImageId,
|
|
985
986
|
frameNumber: mappedAnnotations[0]?.frameNumber || 1,
|
|
986
987
|
toolName: metadata.toolName,
|
|
987
988
|
displaySetInstanceUID: displaySet.displaySetInstanceUID,
|
|
@@ -1011,15 +1012,12 @@ function getMappedAnnotations(annotation, displaySetService) {
|
|
|
1011
1012
|
const annotations = [];
|
|
1012
1013
|
Object.keys(cachedStats).forEach(targetId => {
|
|
1013
1014
|
const targetStats = cachedStats[targetId];
|
|
1014
|
-
if (!referencedImageId) {
|
|
1015
|
-
throw new Error('Non-acquisition plane measurement mapping not supported');
|
|
1016
|
-
}
|
|
1017
1015
|
const {
|
|
1018
1016
|
SOPInstanceUID,
|
|
1019
1017
|
SeriesInstanceUID,
|
|
1020
1018
|
frameNumber
|
|
1021
|
-
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId);
|
|
1022
|
-
const displaySet = displaySetService.
|
|
1019
|
+
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId, displaySetService, annotation);
|
|
1020
|
+
const displaySet = displaySetService.getDisplaySetsForSeries(SeriesInstanceUID)[0];
|
|
1023
1021
|
const {
|
|
1024
1022
|
SeriesNumber
|
|
1025
1023
|
} = displaySet;
|
|
@@ -1198,12 +1196,12 @@ const Bidirectional = {
|
|
|
1198
1196
|
SOPInstanceUID,
|
|
1199
1197
|
SeriesInstanceUID,
|
|
1200
1198
|
StudyInstanceUID
|
|
1201
|
-
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId,
|
|
1199
|
+
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId, displaySetService, annotation);
|
|
1202
1200
|
let displaySet;
|
|
1203
1201
|
if (SOPInstanceUID) {
|
|
1204
1202
|
displaySet = displaySetService.getDisplaySetForSOPInstanceUID(SOPInstanceUID, SeriesInstanceUID);
|
|
1205
1203
|
} else {
|
|
1206
|
-
displaySet = displaySetService.getDisplaySetsForSeries(SeriesInstanceUID);
|
|
1204
|
+
displaySet = displaySetService.getDisplaySetsForSeries(SeriesInstanceUID)[0];
|
|
1207
1205
|
}
|
|
1208
1206
|
const {
|
|
1209
1207
|
points,
|
|
@@ -1221,6 +1219,7 @@ const Bidirectional = {
|
|
|
1221
1219
|
metadata,
|
|
1222
1220
|
referenceSeriesUID: SeriesInstanceUID,
|
|
1223
1221
|
referenceStudyUID: StudyInstanceUID,
|
|
1222
|
+
referencedImageId,
|
|
1224
1223
|
frameNumber: mappedAnnotations[0]?.frameNumber || 1,
|
|
1225
1224
|
toolName: metadata.toolName,
|
|
1226
1225
|
displaySetInstanceUID: displaySet.displaySetInstanceUID,
|
|
@@ -1251,15 +1250,12 @@ function Bidirectional_getMappedAnnotations(annotation, displaySetService) {
|
|
|
1251
1250
|
const annotations = [];
|
|
1252
1251
|
Object.keys(cachedStats).forEach(targetId => {
|
|
1253
1252
|
const targetStats = cachedStats[targetId];
|
|
1254
|
-
if (!referencedImageId) {
|
|
1255
|
-
throw new Error('Non-acquisition plane measurement mapping not supported');
|
|
1256
|
-
}
|
|
1257
1253
|
const {
|
|
1258
1254
|
SOPInstanceUID,
|
|
1259
1255
|
SeriesInstanceUID,
|
|
1260
1256
|
frameNumber
|
|
1261
|
-
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId);
|
|
1262
|
-
const displaySet = displaySetService.
|
|
1257
|
+
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId, displaySetService, annotation);
|
|
1258
|
+
const displaySet = displaySetService.getDisplaySetsForSeries(SeriesInstanceUID)[0];
|
|
1263
1259
|
const {
|
|
1264
1260
|
SeriesNumber
|
|
1265
1261
|
} = displaySet;
|
|
@@ -1393,12 +1389,12 @@ const EllipticalROI = {
|
|
|
1393
1389
|
SOPInstanceUID,
|
|
1394
1390
|
SeriesInstanceUID,
|
|
1395
1391
|
StudyInstanceUID
|
|
1396
|
-
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId,
|
|
1392
|
+
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId, displaySetService, annotation);
|
|
1397
1393
|
let displaySet;
|
|
1398
1394
|
if (SOPInstanceUID) {
|
|
1399
1395
|
displaySet = displaySetService.getDisplaySetForSOPInstanceUID(SOPInstanceUID, SeriesInstanceUID);
|
|
1400
1396
|
} else {
|
|
1401
|
-
displaySet = displaySetService.getDisplaySetsForSeries(SeriesInstanceUID);
|
|
1397
|
+
displaySet = displaySetService.getDisplaySetsForSeries(SeriesInstanceUID)[0];
|
|
1402
1398
|
}
|
|
1403
1399
|
const {
|
|
1404
1400
|
points,
|
|
@@ -1416,6 +1412,7 @@ const EllipticalROI = {
|
|
|
1416
1412
|
metadata,
|
|
1417
1413
|
referenceSeriesUID: SeriesInstanceUID,
|
|
1418
1414
|
referenceStudyUID: StudyInstanceUID,
|
|
1415
|
+
referencedImageId,
|
|
1419
1416
|
frameNumber: mappedAnnotations[0]?.frameNumber || 1,
|
|
1420
1417
|
toolName: metadata.toolName,
|
|
1421
1418
|
displaySetInstanceUID: displaySet.displaySetInstanceUID,
|
|
@@ -1445,16 +1442,12 @@ function EllipticalROI_getMappedAnnotations(annotation, displaySetService) {
|
|
|
1445
1442
|
const annotations = [];
|
|
1446
1443
|
Object.keys(cachedStats).forEach(targetId => {
|
|
1447
1444
|
const targetStats = cachedStats[targetId];
|
|
1448
|
-
if (!referencedImageId) {
|
|
1449
|
-
// Todo: Non-acquisition plane measurement mapping not supported yet
|
|
1450
|
-
throw new Error('Non-acquisition plane measurement mapping not supported');
|
|
1451
|
-
}
|
|
1452
1445
|
const {
|
|
1453
1446
|
SOPInstanceUID,
|
|
1454
1447
|
SeriesInstanceUID,
|
|
1455
1448
|
frameNumber
|
|
1456
|
-
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId);
|
|
1457
|
-
const displaySet = displaySetService.
|
|
1449
|
+
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId, displaySetService, annotation);
|
|
1450
|
+
const displaySet = displaySetService.getDisplaySetsForSeries(SeriesInstanceUID)[0];
|
|
1458
1451
|
const {
|
|
1459
1452
|
SeriesNumber
|
|
1460
1453
|
} = displaySet;
|
|
@@ -1574,7 +1567,7 @@ function EllipticalROI_getDisplayText(mappedAnnotations, displaySet, customizati
|
|
|
1574
1567
|
|
|
1575
1568
|
const CircleROI = {
|
|
1576
1569
|
toAnnotation: measurement => {},
|
|
1577
|
-
toMeasurement: (csToolsEventDetail,
|
|
1570
|
+
toMeasurement: (csToolsEventDetail, displaySetService, CornerstoneViewportService, getValueTypeFromToolType, customizationService) => {
|
|
1578
1571
|
const {
|
|
1579
1572
|
annotation,
|
|
1580
1573
|
viewportId
|
|
@@ -1601,18 +1594,18 @@ const CircleROI = {
|
|
|
1601
1594
|
SOPInstanceUID,
|
|
1602
1595
|
SeriesInstanceUID,
|
|
1603
1596
|
StudyInstanceUID
|
|
1604
|
-
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId,
|
|
1597
|
+
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId, displaySetService, annotation);
|
|
1605
1598
|
let displaySet;
|
|
1606
1599
|
if (SOPInstanceUID) {
|
|
1607
|
-
displaySet =
|
|
1600
|
+
displaySet = displaySetService.getDisplaySetForSOPInstanceUID(SOPInstanceUID, SeriesInstanceUID);
|
|
1608
1601
|
} else {
|
|
1609
|
-
displaySet =
|
|
1602
|
+
displaySet = displaySetService.getDisplaySetsForSeries(SeriesInstanceUID)[0];
|
|
1610
1603
|
}
|
|
1611
1604
|
const {
|
|
1612
1605
|
points,
|
|
1613
1606
|
textBox
|
|
1614
1607
|
} = data.handles;
|
|
1615
|
-
const mappedAnnotations = CircleROI_getMappedAnnotations(annotation,
|
|
1608
|
+
const mappedAnnotations = CircleROI_getMappedAnnotations(annotation, displaySetService);
|
|
1616
1609
|
const displayText = CircleROI_getDisplayText(mappedAnnotations, displaySet, customizationService);
|
|
1617
1610
|
const getReport = () => CircleROI_getReport(mappedAnnotations, points, FrameOfReferenceUID, customizationService);
|
|
1618
1611
|
return {
|
|
@@ -1624,6 +1617,7 @@ const CircleROI = {
|
|
|
1624
1617
|
metadata,
|
|
1625
1618
|
referenceSeriesUID: SeriesInstanceUID,
|
|
1626
1619
|
referenceStudyUID: StudyInstanceUID,
|
|
1620
|
+
referencedImageId,
|
|
1627
1621
|
frameNumber: mappedAnnotations[0]?.frameNumber || 1,
|
|
1628
1622
|
toolName: metadata.toolName,
|
|
1629
1623
|
displaySetInstanceUID: displaySet.displaySetInstanceUID,
|
|
@@ -1635,7 +1629,7 @@ const CircleROI = {
|
|
|
1635
1629
|
};
|
|
1636
1630
|
}
|
|
1637
1631
|
};
|
|
1638
|
-
function CircleROI_getMappedAnnotations(annotation,
|
|
1632
|
+
function CircleROI_getMappedAnnotations(annotation, displaySetService) {
|
|
1639
1633
|
const {
|
|
1640
1634
|
metadata,
|
|
1641
1635
|
data
|
|
@@ -1653,16 +1647,12 @@ function CircleROI_getMappedAnnotations(annotation, DisplaySetService) {
|
|
|
1653
1647
|
const annotations = [];
|
|
1654
1648
|
Object.keys(cachedStats).forEach(targetId => {
|
|
1655
1649
|
const targetStats = cachedStats[targetId];
|
|
1656
|
-
if (!referencedImageId) {
|
|
1657
|
-
// Todo: Non-acquisition plane measurement mapping not supported yet
|
|
1658
|
-
throw new Error('Non-acquisition plane measurement mapping not supported');
|
|
1659
|
-
}
|
|
1660
1650
|
const {
|
|
1661
1651
|
SOPInstanceUID,
|
|
1662
1652
|
SeriesInstanceUID,
|
|
1663
1653
|
frameNumber
|
|
1664
|
-
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId);
|
|
1665
|
-
const displaySet =
|
|
1654
|
+
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId, displaySetService, annotation);
|
|
1655
|
+
const displaySet = displaySetService.getDisplaySetsForSeries(SeriesInstanceUID)[0];
|
|
1666
1656
|
const {
|
|
1667
1657
|
SeriesNumber
|
|
1668
1658
|
} = displaySet;
|
|
@@ -1814,12 +1804,12 @@ const ArrowAnnotate_Length = {
|
|
|
1814
1804
|
SOPInstanceUID,
|
|
1815
1805
|
SeriesInstanceUID,
|
|
1816
1806
|
StudyInstanceUID
|
|
1817
|
-
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId,
|
|
1807
|
+
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId, displaySetService, annotation);
|
|
1818
1808
|
let displaySet;
|
|
1819
1809
|
if (SOPInstanceUID) {
|
|
1820
1810
|
displaySet = displaySetService.getDisplaySetForSOPInstanceUID(SOPInstanceUID, SeriesInstanceUID);
|
|
1821
1811
|
} else {
|
|
1822
|
-
displaySet = displaySetService.getDisplaySetsForSeries(SeriesInstanceUID);
|
|
1812
|
+
displaySet = displaySetService.getDisplaySetsForSeries(SeriesInstanceUID)[0];
|
|
1823
1813
|
}
|
|
1824
1814
|
const {
|
|
1825
1815
|
points,
|
|
@@ -1836,6 +1826,7 @@ const ArrowAnnotate_Length = {
|
|
|
1836
1826
|
metadata,
|
|
1837
1827
|
referenceSeriesUID: SeriesInstanceUID,
|
|
1838
1828
|
referenceStudyUID: StudyInstanceUID,
|
|
1829
|
+
referencedImageId,
|
|
1839
1830
|
frameNumber: mappedAnnotations[0]?.frameNumber || 1,
|
|
1840
1831
|
toolName: metadata.toolName,
|
|
1841
1832
|
displaySetInstanceUID: displaySet.displaySetInstanceUID,
|
|
@@ -1865,8 +1856,8 @@ function ArrowAnnotate_getMappedAnnotations(annotation, displaySetService) {
|
|
|
1865
1856
|
SOPInstanceUID,
|
|
1866
1857
|
SeriesInstanceUID,
|
|
1867
1858
|
frameNumber
|
|
1868
|
-
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId);
|
|
1869
|
-
const displaySet = displaySetService.
|
|
1859
|
+
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId, displaySetService, annotation);
|
|
1860
|
+
const displaySet = displaySetService.getDisplaySetsForSeries(SeriesInstanceUID)[0];
|
|
1870
1861
|
const {
|
|
1871
1862
|
SeriesNumber
|
|
1872
1863
|
} = displaySet;
|
|
@@ -1942,12 +1933,12 @@ const CobbAngle = {
|
|
|
1942
1933
|
SOPInstanceUID,
|
|
1943
1934
|
SeriesInstanceUID,
|
|
1944
1935
|
StudyInstanceUID
|
|
1945
|
-
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId,
|
|
1936
|
+
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId, displaySetService, annotation);
|
|
1946
1937
|
let displaySet;
|
|
1947
1938
|
if (SOPInstanceUID) {
|
|
1948
1939
|
displaySet = displaySetService.getDisplaySetForSOPInstanceUID(SOPInstanceUID, SeriesInstanceUID);
|
|
1949
1940
|
} else {
|
|
1950
|
-
displaySet = displaySetService.getDisplaySetsForSeries(SeriesInstanceUID);
|
|
1941
|
+
displaySet = displaySetService.getDisplaySetsForSeries(SeriesInstanceUID)[0];
|
|
1951
1942
|
}
|
|
1952
1943
|
const {
|
|
1953
1944
|
points,
|
|
@@ -1965,6 +1956,7 @@ const CobbAngle = {
|
|
|
1965
1956
|
metadata,
|
|
1966
1957
|
referenceSeriesUID: SeriesInstanceUID,
|
|
1967
1958
|
referenceStudyUID: StudyInstanceUID,
|
|
1959
|
+
referencedImageId,
|
|
1968
1960
|
frameNumber: mappedAnnotations?.[0]?.frameNumber || 1,
|
|
1969
1961
|
toolName: metadata.toolName,
|
|
1970
1962
|
displaySetInstanceUID: displaySet.displaySetInstanceUID,
|
|
@@ -1976,7 +1968,7 @@ const CobbAngle = {
|
|
|
1976
1968
|
};
|
|
1977
1969
|
}
|
|
1978
1970
|
};
|
|
1979
|
-
function CobbAngle_getMappedAnnotations(annotation,
|
|
1971
|
+
function CobbAngle_getMappedAnnotations(annotation, displaySetService) {
|
|
1980
1972
|
const {
|
|
1981
1973
|
metadata,
|
|
1982
1974
|
data
|
|
@@ -1994,15 +1986,12 @@ function CobbAngle_getMappedAnnotations(annotation, DisplaySetService) {
|
|
|
1994
1986
|
const annotations = [];
|
|
1995
1987
|
Object.keys(cachedStats).forEach(targetId => {
|
|
1996
1988
|
const targetStats = cachedStats[targetId];
|
|
1997
|
-
if (!referencedImageId) {
|
|
1998
|
-
throw new Error('Non-acquisition plane measurement mapping not supported');
|
|
1999
|
-
}
|
|
2000
1989
|
const {
|
|
2001
1990
|
SOPInstanceUID,
|
|
2002
1991
|
SeriesInstanceUID,
|
|
2003
1992
|
frameNumber
|
|
2004
|
-
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId);
|
|
2005
|
-
const displaySet =
|
|
1993
|
+
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId, displaySetService, annotation);
|
|
1994
|
+
const displaySet = displaySetService.getDisplaySetsForSeries(SeriesInstanceUID)[0];
|
|
2006
1995
|
const {
|
|
2007
1996
|
SeriesNumber
|
|
2008
1997
|
} = displaySet;
|
|
@@ -2127,12 +2116,12 @@ const Angle = {
|
|
|
2127
2116
|
SOPInstanceUID,
|
|
2128
2117
|
SeriesInstanceUID,
|
|
2129
2118
|
StudyInstanceUID
|
|
2130
|
-
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId,
|
|
2119
|
+
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId, displaySetService, annotation);
|
|
2131
2120
|
let displaySet;
|
|
2132
2121
|
if (SOPInstanceUID) {
|
|
2133
2122
|
displaySet = displaySetService.getDisplaySetForSOPInstanceUID(SOPInstanceUID, SeriesInstanceUID);
|
|
2134
2123
|
} else {
|
|
2135
|
-
displaySet = displaySetService.getDisplaySetsForSeries(SeriesInstanceUID);
|
|
2124
|
+
displaySet = displaySetService.getDisplaySetsForSeries(SeriesInstanceUID)[0];
|
|
2136
2125
|
}
|
|
2137
2126
|
const {
|
|
2138
2127
|
points,
|
|
@@ -2157,11 +2146,12 @@ const Angle = {
|
|
|
2157
2146
|
displayText: displayText,
|
|
2158
2147
|
data: data.cachedStats,
|
|
2159
2148
|
type: getValueTypeFromToolType(toolName),
|
|
2160
|
-
getReport
|
|
2149
|
+
getReport,
|
|
2150
|
+
referencedImageId
|
|
2161
2151
|
};
|
|
2162
2152
|
}
|
|
2163
2153
|
};
|
|
2164
|
-
function Angle_getMappedAnnotations(annotation,
|
|
2154
|
+
function Angle_getMappedAnnotations(annotation, displaySetService) {
|
|
2165
2155
|
const {
|
|
2166
2156
|
metadata,
|
|
2167
2157
|
data
|
|
@@ -2179,15 +2169,12 @@ function Angle_getMappedAnnotations(annotation, DisplaySetService) {
|
|
|
2179
2169
|
const annotations = [];
|
|
2180
2170
|
Object.keys(cachedStats).forEach(targetId => {
|
|
2181
2171
|
const targetStats = cachedStats[targetId];
|
|
2182
|
-
if (!referencedImageId) {
|
|
2183
|
-
throw new Error('Non-acquisition plane measurement mapping not supported');
|
|
2184
|
-
}
|
|
2185
2172
|
const {
|
|
2186
2173
|
SOPInstanceUID,
|
|
2187
2174
|
SeriesInstanceUID,
|
|
2188
2175
|
frameNumber
|
|
2189
|
-
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId);
|
|
2190
|
-
const displaySet =
|
|
2176
|
+
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId, displaySetService, annotation);
|
|
2177
|
+
const displaySet = displaySetService.getDisplaySetsForSeries(SeriesInstanceUID)[0];
|
|
2191
2178
|
const {
|
|
2192
2179
|
SeriesNumber
|
|
2193
2180
|
} = displaySet;
|
|
@@ -2291,7 +2278,7 @@ const PlanarFreehandROI = {
|
|
|
2291
2278
|
* @param {Function} getValueTypeFromToolType Function to get value type from tool type
|
|
2292
2279
|
* @returns {Measurement} Measurement instance
|
|
2293
2280
|
*/
|
|
2294
|
-
toMeasurement: (csToolsEventDetail,
|
|
2281
|
+
toMeasurement: (csToolsEventDetail, displaySetService, CornerstoneViewportService, getValueTypeFromToolType, customizationService) => {
|
|
2295
2282
|
const {
|
|
2296
2283
|
annotation
|
|
2297
2284
|
} = csToolsEventDetail;
|
|
@@ -2318,12 +2305,12 @@ const PlanarFreehandROI = {
|
|
|
2318
2305
|
SeriesInstanceUID,
|
|
2319
2306
|
frameNumber,
|
|
2320
2307
|
StudyInstanceUID
|
|
2321
|
-
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId);
|
|
2308
|
+
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId, displaySetService, annotation);
|
|
2322
2309
|
let displaySet;
|
|
2323
2310
|
if (SOPInstanceUID) {
|
|
2324
|
-
displaySet =
|
|
2311
|
+
displaySet = displaySetService.getDisplaySetForSOPInstanceUID(SOPInstanceUID, SeriesInstanceUID);
|
|
2325
2312
|
} else {
|
|
2326
|
-
displaySet =
|
|
2313
|
+
displaySet = displaySetService.getDisplaySetsForSeries(SeriesInstanceUID)[0];
|
|
2327
2314
|
}
|
|
2328
2315
|
return {
|
|
2329
2316
|
uid: annotationUID,
|
|
@@ -2335,10 +2322,11 @@ const PlanarFreehandROI = {
|
|
|
2335
2322
|
frameNumber,
|
|
2336
2323
|
referenceSeriesUID: SeriesInstanceUID,
|
|
2337
2324
|
referenceStudyUID: StudyInstanceUID,
|
|
2325
|
+
referencedImageId,
|
|
2338
2326
|
toolName: metadata.toolName,
|
|
2339
2327
|
displaySetInstanceUID: displaySet.displaySetInstanceUID,
|
|
2340
2328
|
label: data.label,
|
|
2341
|
-
displayText: PlanarFreehandROI_getDisplayText(annotation, displaySet, customizationService),
|
|
2329
|
+
displayText: PlanarFreehandROI_getDisplayText(annotation, displaySet, customizationService, displaySetService),
|
|
2342
2330
|
data: data.cachedStats,
|
|
2343
2331
|
type: getValueTypeFromToolType(toolName),
|
|
2344
2332
|
getReport: () => getColumnValueReport(annotation, customizationService)
|
|
@@ -2406,7 +2394,7 @@ function getColumnValueReport(annotation, customizationService) {
|
|
|
2406
2394
|
* @param {Object} displaySet - The display set object.
|
|
2407
2395
|
* @returns {string[]} - An array of display text.
|
|
2408
2396
|
*/
|
|
2409
|
-
function PlanarFreehandROI_getDisplayText(annotation, displaySet, customizationService) {
|
|
2397
|
+
function PlanarFreehandROI_getDisplayText(annotation, displaySet, customizationService, displaySetService) {
|
|
2410
2398
|
const {
|
|
2411
2399
|
PlanarFreehandROI
|
|
2412
2400
|
} = customizationService.get('cornerstone.measurements');
|
|
@@ -2417,13 +2405,10 @@ function PlanarFreehandROI_getDisplayText(annotation, displaySet, customizationS
|
|
|
2417
2405
|
metadata,
|
|
2418
2406
|
data
|
|
2419
2407
|
} = annotation;
|
|
2420
|
-
if (!data.cachedStats || !data.cachedStats[`imageId:${metadata.referencedImageId}`]) {
|
|
2421
|
-
return [];
|
|
2422
|
-
}
|
|
2423
2408
|
const {
|
|
2424
2409
|
SOPInstanceUID,
|
|
2425
2410
|
frameNumber
|
|
2426
|
-
} = (0,getSOPInstanceAttributes/* default */.A)(metadata.referencedImageId);
|
|
2411
|
+
} = (0,getSOPInstanceAttributes/* default */.A)(metadata.referencedImageId, displaySetService, annotation);
|
|
2427
2412
|
const displayTextArray = [];
|
|
2428
2413
|
const instance = displaySet.images.find(image => image.SOPInstanceUID === SOPInstanceUID);
|
|
2429
2414
|
let InstanceNumber;
|
|
@@ -2438,17 +2423,20 @@ function PlanarFreehandROI_getDisplayText(annotation, displaySet, customizationS
|
|
|
2438
2423
|
if (SeriesNumber) {
|
|
2439
2424
|
displayTextArray.push(`S: ${SeriesNumber}${instanceText}${frameText}`);
|
|
2440
2425
|
}
|
|
2441
|
-
const stats = data.cachedStats[`imageId:${metadata.referencedImageId}`];
|
|
2426
|
+
const stats = data.cachedStats[`imageId:${metadata.referencedImageId}`] || Array.from(Object.values(data.cachedStats))[0];
|
|
2427
|
+
if (!stats) {
|
|
2428
|
+
return displayTextArray;
|
|
2429
|
+
}
|
|
2442
2430
|
const roundValues = values => {
|
|
2443
2431
|
if (Array.isArray(values)) {
|
|
2444
2432
|
return values.map(value => {
|
|
2445
2433
|
if (isNaN(value)) {
|
|
2446
2434
|
return value;
|
|
2447
2435
|
}
|
|
2448
|
-
return src.utils.roundNumber(value);
|
|
2436
|
+
return src.utils.roundNumber(value, 2);
|
|
2449
2437
|
});
|
|
2450
2438
|
}
|
|
2451
|
-
return isNaN(values) ? values : src.utils.roundNumber(values);
|
|
2439
|
+
return isNaN(values) ? values : src.utils.roundNumber(values, 2);
|
|
2452
2440
|
};
|
|
2453
2441
|
const findUnitForValue = (displayTextItems, value) => displayTextItems.find(({
|
|
2454
2442
|
type,
|
|
@@ -2477,7 +2465,7 @@ function PlanarFreehandROI_getDisplayText(annotation, displaySet, customizationS
|
|
|
2477
2465
|
|
|
2478
2466
|
const RectangleROI = {
|
|
2479
2467
|
toAnnotation: measurement => {},
|
|
2480
|
-
toMeasurement: (csToolsEventDetail,
|
|
2468
|
+
toMeasurement: (csToolsEventDetail, displaySetService, CornerstoneViewportService, getValueTypeFromToolType, customizationService) => {
|
|
2481
2469
|
const {
|
|
2482
2470
|
annotation,
|
|
2483
2471
|
viewportId
|
|
@@ -2504,18 +2492,18 @@ const RectangleROI = {
|
|
|
2504
2492
|
SOPInstanceUID,
|
|
2505
2493
|
SeriesInstanceUID,
|
|
2506
2494
|
StudyInstanceUID
|
|
2507
|
-
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId,
|
|
2495
|
+
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId, displaySetService, annotation);
|
|
2508
2496
|
let displaySet;
|
|
2509
2497
|
if (SOPInstanceUID) {
|
|
2510
|
-
displaySet =
|
|
2498
|
+
displaySet = displaySetService.getDisplaySetForSOPInstanceUID(SOPInstanceUID, SeriesInstanceUID);
|
|
2511
2499
|
} else {
|
|
2512
|
-
displaySet =
|
|
2500
|
+
displaySet = displaySetService.getDisplaySetsForSeries(SeriesInstanceUID)[0];
|
|
2513
2501
|
}
|
|
2514
2502
|
const {
|
|
2515
2503
|
points,
|
|
2516
2504
|
textBox
|
|
2517
2505
|
} = data.handles;
|
|
2518
|
-
const mappedAnnotations = RectangleROI_getMappedAnnotations(annotation,
|
|
2506
|
+
const mappedAnnotations = RectangleROI_getMappedAnnotations(annotation, displaySetService);
|
|
2519
2507
|
const displayText = RectangleROI_getDisplayText(mappedAnnotations, displaySet, customizationService);
|
|
2520
2508
|
const getReport = () => RectangleROI_getReport(mappedAnnotations, points, FrameOfReferenceUID, customizationService);
|
|
2521
2509
|
return {
|
|
@@ -2527,6 +2515,7 @@ const RectangleROI = {
|
|
|
2527
2515
|
metadata,
|
|
2528
2516
|
referenceSeriesUID: SeriesInstanceUID,
|
|
2529
2517
|
referenceStudyUID: StudyInstanceUID,
|
|
2518
|
+
referencedImageId,
|
|
2530
2519
|
frameNumber: mappedAnnotations[0]?.frameNumber || 1,
|
|
2531
2520
|
toolName: metadata.toolName,
|
|
2532
2521
|
displaySetInstanceUID: displaySet.displaySetInstanceUID,
|
|
@@ -2538,7 +2527,7 @@ const RectangleROI = {
|
|
|
2538
2527
|
};
|
|
2539
2528
|
}
|
|
2540
2529
|
};
|
|
2541
|
-
function RectangleROI_getMappedAnnotations(annotation,
|
|
2530
|
+
function RectangleROI_getMappedAnnotations(annotation, displaySetService) {
|
|
2542
2531
|
const {
|
|
2543
2532
|
metadata,
|
|
2544
2533
|
data
|
|
@@ -2556,16 +2545,12 @@ function RectangleROI_getMappedAnnotations(annotation, DisplaySetService) {
|
|
|
2556
2545
|
const annotations = [];
|
|
2557
2546
|
Object.keys(cachedStats).forEach(targetId => {
|
|
2558
2547
|
const targetStats = cachedStats[targetId];
|
|
2559
|
-
if (!referencedImageId) {
|
|
2560
|
-
// Todo: Non-acquisition plane measurement mapping not supported yet
|
|
2561
|
-
throw new Error('Non-acquisition plane measurement mapping not supported');
|
|
2562
|
-
}
|
|
2563
2548
|
const {
|
|
2564
2549
|
SOPInstanceUID,
|
|
2565
2550
|
SeriesInstanceUID,
|
|
2566
2551
|
frameNumber
|
|
2567
|
-
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId);
|
|
2568
|
-
const displaySet =
|
|
2552
|
+
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId, displaySetService, annotation);
|
|
2553
|
+
const displaySet = displaySetService.getDisplaySetsForSeries(SeriesInstanceUID)[0];
|
|
2569
2554
|
const {
|
|
2570
2555
|
SeriesNumber
|
|
2571
2556
|
} = displaySet;
|
|
@@ -3089,12 +3074,12 @@ const Probe = {
|
|
|
3089
3074
|
SOPInstanceUID,
|
|
3090
3075
|
SeriesInstanceUID,
|
|
3091
3076
|
StudyInstanceUID
|
|
3092
|
-
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId);
|
|
3077
|
+
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId, displaySetService, annotation);
|
|
3093
3078
|
let displaySet;
|
|
3094
3079
|
if (SOPInstanceUID) {
|
|
3095
3080
|
displaySet = displaySetService.getDisplaySetForSOPInstanceUID(SOPInstanceUID, SeriesInstanceUID);
|
|
3096
3081
|
} else {
|
|
3097
|
-
displaySet = displaySetService.getDisplaySetsForSeries(SeriesInstanceUID);
|
|
3082
|
+
displaySet = displaySetService.getDisplaySetsForSeries(SeriesInstanceUID)[0];
|
|
3098
3083
|
}
|
|
3099
3084
|
const {
|
|
3100
3085
|
points
|
|
@@ -3110,6 +3095,7 @@ const Probe = {
|
|
|
3110
3095
|
metadata,
|
|
3111
3096
|
referenceSeriesUID: SeriesInstanceUID,
|
|
3112
3097
|
referenceStudyUID: StudyInstanceUID,
|
|
3098
|
+
referencedImageId,
|
|
3113
3099
|
frameNumber: mappedAnnotations?.[0]?.frameNumber || 1,
|
|
3114
3100
|
toolName: metadata.toolName,
|
|
3115
3101
|
displaySetInstanceUID: displaySet.displaySetInstanceUID,
|
|
@@ -3121,7 +3107,7 @@ const Probe = {
|
|
|
3121
3107
|
};
|
|
3122
3108
|
}
|
|
3123
3109
|
};
|
|
3124
|
-
function Probe_getMappedAnnotations(annotation,
|
|
3110
|
+
function Probe_getMappedAnnotations(annotation, displaySetService) {
|
|
3125
3111
|
const {
|
|
3126
3112
|
metadata,
|
|
3127
3113
|
data
|
|
@@ -3139,15 +3125,12 @@ function Probe_getMappedAnnotations(annotation, DisplaySetService) {
|
|
|
3139
3125
|
const annotations = [];
|
|
3140
3126
|
Object.keys(cachedStats).forEach(targetId => {
|
|
3141
3127
|
const targetStats = cachedStats[targetId];
|
|
3142
|
-
if (!referencedImageId) {
|
|
3143
|
-
throw new Error('Non-acquisition plane measurement mapping not supported');
|
|
3144
|
-
}
|
|
3145
3128
|
const {
|
|
3146
3129
|
SOPInstanceUID,
|
|
3147
3130
|
SeriesInstanceUID,
|
|
3148
3131
|
frameNumber
|
|
3149
|
-
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId);
|
|
3150
|
-
const displaySet =
|
|
3132
|
+
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId, displaySetService, annotation);
|
|
3133
|
+
const displaySet = displaySetService.getDisplaySetsForSeries(SeriesInstanceUID)[0];
|
|
3151
3134
|
const {
|
|
3152
3135
|
SeriesNumber
|
|
3153
3136
|
} = displaySet;
|
|
@@ -13391,12 +13374,26 @@ const reset = () => {
|
|
|
13391
13374
|
* @param {string} imageId The image id of the referenced image
|
|
13392
13375
|
* @returns
|
|
13393
13376
|
*/
|
|
13394
|
-
function getSOPInstanceAttributes(imageId) {
|
|
13377
|
+
function getSOPInstanceAttributes(imageId, displaySetService, annotation) {
|
|
13395
13378
|
if (imageId) {
|
|
13396
13379
|
return _getUIDFromImageID(imageId);
|
|
13397
13380
|
}
|
|
13398
|
-
|
|
13399
|
-
|
|
13381
|
+
const {
|
|
13382
|
+
metadata
|
|
13383
|
+
} = annotation;
|
|
13384
|
+
const {
|
|
13385
|
+
volumeId
|
|
13386
|
+
} = metadata;
|
|
13387
|
+
const displaySet = displaySetService.getDisplaySetsBy(displaySet => volumeId.includes(displaySet.uid))[0];
|
|
13388
|
+
const {
|
|
13389
|
+
StudyInstanceUID,
|
|
13390
|
+
SeriesInstanceUID
|
|
13391
|
+
} = displaySet;
|
|
13392
|
+
return {
|
|
13393
|
+
SOPInstanceUID: undefined,
|
|
13394
|
+
SeriesInstanceUID,
|
|
13395
|
+
StudyInstanceUID
|
|
13396
|
+
};
|
|
13400
13397
|
}
|
|
13401
13398
|
function _getUIDFromImageID(imageId) {
|
|
13402
13399
|
const instance = _cornerstonejs_core__WEBPACK_IMPORTED_MODULE_0__.metaData.get('instance', imageId);
|
|
@@ -5502,7 +5502,7 @@ async function addLabelmapToElement(element, labelMapData, segmentationRepresent
|
|
|
5502
5502
|
actorUID: segmentationRepresentationUID,
|
|
5503
5503
|
},
|
|
5504
5504
|
];
|
|
5505
|
-
await (0,_cornerstonejs_core__WEBPACK_IMPORTED_MODULE_0__.addImageSlicesToViewports)(renderingEngine, stackInputs, [viewportId]
|
|
5505
|
+
await (0,_cornerstonejs_core__WEBPACK_IMPORTED_MODULE_0__.addImageSlicesToViewports)(renderingEngine, stackInputs, [viewportId]);
|
|
5506
5506
|
}
|
|
5507
5507
|
}
|
|
5508
5508
|
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (addLabelmapToElement);
|
|
@@ -2757,8 +2757,8 @@ function ViewerHeader({
|
|
|
2757
2757
|
hotkeyDefinitions,
|
|
2758
2758
|
hotkeyDefaults
|
|
2759
2759
|
} = hotkeysManager;
|
|
2760
|
-
const versionNumber = "3.9.0-beta.
|
|
2761
|
-
const commitHash = "
|
|
2760
|
+
const versionNumber = "3.9.0-beta.25";
|
|
2761
|
+
const commitHash = "75a71db7f89840250ad1c2b35df5a35aceb8be7d";
|
|
2762
2762
|
const menuOptions = [{
|
|
2763
2763
|
title: t('Header:About'),
|
|
2764
2764
|
icon: 'info',
|