@cornerstonejs/tools 1.78.3 → 1.80.1

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.
Files changed (118) hide show
  1. package/dist/cjs/cursors/SVGCursorDescriptor.js +7 -0
  2. package/dist/cjs/cursors/SVGCursorDescriptor.js.map +1 -1
  3. package/dist/cjs/drawingSvg/drawHeight.d.ts +3 -0
  4. package/dist/cjs/drawingSvg/drawHeight.js +49 -0
  5. package/dist/cjs/drawingSvg/drawHeight.js.map +1 -0
  6. package/dist/cjs/drawingSvg/index.d.ts +2 -1
  7. package/dist/cjs/drawingSvg/index.js +3 -1
  8. package/dist/cjs/drawingSvg/index.js.map +1 -1
  9. package/dist/cjs/index.d.ts +2 -2
  10. package/dist/cjs/index.js +3 -2
  11. package/dist/cjs/index.js.map +1 -1
  12. package/dist/cjs/tools/annotation/HeightTool.d.ts +40 -0
  13. package/dist/cjs/tools/annotation/HeightTool.js +463 -0
  14. package/dist/cjs/tools/annotation/HeightTool.js.map +1 -0
  15. package/dist/cjs/tools/index.d.ts +2 -1
  16. package/dist/cjs/tools/index.js +4 -2
  17. package/dist/cjs/tools/index.js.map +1 -1
  18. package/dist/cjs/tools/segmentation/CircleROIStartEndThresholdTool.d.ts +15 -8
  19. package/dist/cjs/tools/segmentation/CircleROIStartEndThresholdTool.js +189 -62
  20. package/dist/cjs/tools/segmentation/CircleROIStartEndThresholdTool.js.map +1 -1
  21. package/dist/cjs/tools/segmentation/RectangleROIStartEndThresholdTool.d.ts +17 -7
  22. package/dist/cjs/tools/segmentation/RectangleROIStartEndThresholdTool.js +167 -52
  23. package/dist/cjs/tools/segmentation/RectangleROIStartEndThresholdTool.js.map +1 -1
  24. package/dist/cjs/types/CINETypes.d.ts +1 -0
  25. package/dist/cjs/types/ToolSpecificAnnotationTypes.d.ts +26 -4
  26. package/dist/cjs/utilities/cine/playClip.js +52 -5
  27. package/dist/cjs/utilities/cine/playClip.js.map +1 -1
  28. package/dist/cjs/utilities/planar/filterAnnotationsWithinPlane.d.ts +3 -0
  29. package/dist/cjs/utilities/planar/filterAnnotationsWithinPlane.js +31 -0
  30. package/dist/cjs/utilities/planar/filterAnnotationsWithinPlane.js.map +1 -0
  31. package/dist/cjs/utilities/planar/index.d.ts +3 -1
  32. package/dist/cjs/utilities/planar/index.js +4 -1
  33. package/dist/cjs/utilities/planar/index.js.map +1 -1
  34. package/dist/cjs/utilities/stackPrefetch/stackContextPrefetch.js +13 -2
  35. package/dist/cjs/utilities/stackPrefetch/stackContextPrefetch.js.map +1 -1
  36. package/dist/cjs/utilities/stackPrefetch/stackPrefetchUtils.js +0 -1
  37. package/dist/cjs/utilities/stackPrefetch/stackPrefetchUtils.js.map +1 -1
  38. package/dist/cjs/utilities/viewport/isViewportPreScaled.js +1 -4
  39. package/dist/cjs/utilities/viewport/isViewportPreScaled.js.map +1 -1
  40. package/dist/cjs/utilities/viewport/jumpToSlice.js +4 -6
  41. package/dist/cjs/utilities/viewport/jumpToSlice.js.map +1 -1
  42. package/dist/esm/cursors/SVGCursorDescriptor.js +7 -0
  43. package/dist/esm/cursors/SVGCursorDescriptor.js.map +1 -1
  44. package/dist/esm/drawingSvg/drawHeight.js +43 -0
  45. package/dist/esm/drawingSvg/drawHeight.js.map +1 -0
  46. package/dist/esm/drawingSvg/index.js +2 -1
  47. package/dist/esm/drawingSvg/index.js.map +1 -1
  48. package/dist/esm/index.js +2 -2
  49. package/dist/esm/index.js.map +1 -1
  50. package/dist/esm/tools/annotation/HeightTool.js +439 -0
  51. package/dist/esm/tools/annotation/HeightTool.js.map +1 -0
  52. package/dist/esm/tools/index.js +2 -1
  53. package/dist/esm/tools/index.js.map +1 -1
  54. package/dist/esm/tools/segmentation/CircleROIStartEndThresholdTool.js +192 -66
  55. package/dist/esm/tools/segmentation/CircleROIStartEndThresholdTool.js.map +1 -1
  56. package/dist/esm/tools/segmentation/RectangleROIStartEndThresholdTool.js +168 -54
  57. package/dist/esm/tools/segmentation/RectangleROIStartEndThresholdTool.js.map +1 -1
  58. package/dist/esm/utilities/cine/playClip.js +52 -5
  59. package/dist/esm/utilities/cine/playClip.js.map +1 -1
  60. package/dist/esm/utilities/planar/filterAnnotationsWithinPlane.js +27 -0
  61. package/dist/esm/utilities/planar/filterAnnotationsWithinPlane.js.map +1 -0
  62. package/dist/esm/utilities/planar/index.js +3 -1
  63. package/dist/esm/utilities/planar/index.js.map +1 -1
  64. package/dist/esm/utilities/stackPrefetch/stackContextPrefetch.js +11 -2
  65. package/dist/esm/utilities/stackPrefetch/stackContextPrefetch.js.map +1 -1
  66. package/dist/esm/utilities/stackPrefetch/stackPrefetchUtils.js +1 -2
  67. package/dist/esm/utilities/stackPrefetch/stackPrefetchUtils.js.map +1 -1
  68. package/dist/esm/utilities/viewport/isViewportPreScaled.js +2 -5
  69. package/dist/esm/utilities/viewport/isViewportPreScaled.js.map +1 -1
  70. package/dist/esm/utilities/viewport/jumpToSlice.js +5 -7
  71. package/dist/esm/utilities/viewport/jumpToSlice.js.map +1 -1
  72. package/dist/types/cursors/SVGCursorDescriptor.d.ts.map +1 -1
  73. package/dist/types/drawingSvg/drawHeight.d.ts +4 -0
  74. package/dist/types/drawingSvg/drawHeight.d.ts.map +1 -0
  75. package/dist/types/drawingSvg/index.d.ts +2 -1
  76. package/dist/types/drawingSvg/index.d.ts.map +1 -1
  77. package/dist/types/index.d.ts +2 -2
  78. package/dist/types/index.d.ts.map +1 -1
  79. package/dist/types/tools/annotation/HeightTool.d.ts +41 -0
  80. package/dist/types/tools/annotation/HeightTool.d.ts.map +1 -0
  81. package/dist/types/tools/index.d.ts +2 -1
  82. package/dist/types/tools/index.d.ts.map +1 -1
  83. package/dist/types/tools/segmentation/CircleROIStartEndThresholdTool.d.ts +15 -8
  84. package/dist/types/tools/segmentation/CircleROIStartEndThresholdTool.d.ts.map +1 -1
  85. package/dist/types/tools/segmentation/RectangleROIStartEndThresholdTool.d.ts +17 -7
  86. package/dist/types/tools/segmentation/RectangleROIStartEndThresholdTool.d.ts.map +1 -1
  87. package/dist/types/types/CINETypes.d.ts +1 -0
  88. package/dist/types/types/CINETypes.d.ts.map +1 -1
  89. package/dist/types/types/ToolSpecificAnnotationTypes.d.ts +26 -4
  90. package/dist/types/types/ToolSpecificAnnotationTypes.d.ts.map +1 -1
  91. package/dist/types/utilities/cine/playClip.d.ts.map +1 -1
  92. package/dist/types/utilities/planar/filterAnnotationsWithinPlane.d.ts +4 -0
  93. package/dist/types/utilities/planar/filterAnnotationsWithinPlane.d.ts.map +1 -0
  94. package/dist/types/utilities/planar/index.d.ts +3 -1
  95. package/dist/types/utilities/planar/index.d.ts.map +1 -1
  96. package/dist/types/utilities/stackPrefetch/stackContextPrefetch.d.ts.map +1 -1
  97. package/dist/types/utilities/stackPrefetch/stackPrefetchUtils.d.ts.map +1 -1
  98. package/dist/types/utilities/viewport/isViewportPreScaled.d.ts.map +1 -1
  99. package/dist/umd/index.js +1 -1
  100. package/dist/umd/index.js.map +1 -1
  101. package/package.json +3 -3
  102. package/src/cursors/SVGCursorDescriptor.ts +7 -0
  103. package/src/drawingSvg/drawHeight.ts +90 -0
  104. package/src/drawingSvg/index.ts +2 -0
  105. package/src/index.ts +2 -0
  106. package/src/tools/annotation/HeightTool.ts +882 -0
  107. package/src/tools/index.ts +2 -0
  108. package/src/tools/segmentation/CircleROIStartEndThresholdTool.ts +310 -102
  109. package/src/tools/segmentation/RectangleROIStartEndThresholdTool.ts +287 -77
  110. package/src/types/CINETypes.ts +3 -0
  111. package/src/types/ToolSpecificAnnotationTypes.ts +26 -4
  112. package/src/utilities/cine/playClip.ts +67 -8
  113. package/src/utilities/planar/filterAnnotationsWithinPlane.ts +76 -0
  114. package/src/utilities/planar/index.ts +3 -0
  115. package/src/utilities/stackPrefetch/stackContextPrefetch.ts +12 -2
  116. package/src/utilities/stackPrefetch/stackPrefetchUtils.ts +7 -5
  117. package/src/utilities/viewport/isViewportPreScaled.ts +2 -5
  118. package/src/utilities/viewport/jumpToSlice.ts +4 -4
@@ -0,0 +1,439 @@
1
+ import { Events } from '../../enums';
2
+ import { getEnabledElement, utilities as csUtils } from '@cornerstonejs/core';
3
+ import { getCalibratedLengthUnitsAndScale } from '../../utilities/getCalibratedUnits';
4
+ import { roundNumber } from '../../utilities';
5
+ import { AnnotationTool } from '../base';
6
+ import throttle from '../../utilities/throttle';
7
+ import { addAnnotation, getAnnotations, removeAnnotation, } from '../../stateManagement/annotation/annotationState';
8
+ import { isAnnotationLocked } from '../../stateManagement/annotation/annotationLocking';
9
+ import { isAnnotationVisible } from '../../stateManagement/annotation/annotationVisibility';
10
+ import { triggerAnnotationCompleted, triggerAnnotationModified, } from '../../stateManagement/annotation/helpers/state';
11
+ import * as lineSegment from '../../utilities/math/line';
12
+ import { drawHandles as drawHandlesSvg, drawHeight as drawHeightSvg, drawLinkedTextBox as drawLinkedTextBoxSvg, } from '../../drawingSvg';
13
+ import { state } from '../../store';
14
+ import { getViewportIdsWithToolToRender } from '../../utilities/viewportFilters';
15
+ import { getTextBoxCoordsCanvas } from '../../utilities/drawing';
16
+ import triggerAnnotationRenderForViewportIds from '../../utilities/triggerAnnotationRenderForViewportIds';
17
+ import { resetElementCursor, hideElementCursor, } from '../../cursors/elementCursor';
18
+ const { transformWorldToIndex } = csUtils;
19
+ class HeightTool extends AnnotationTool {
20
+ constructor(toolProps = {}, defaultToolProps = {
21
+ supportedInteractionTypes: ['Mouse', 'Touch'],
22
+ configuration: {
23
+ preventHandleOutsideImage: false,
24
+ getTextLines: defaultGetTextLines,
25
+ },
26
+ }) {
27
+ super(toolProps, defaultToolProps);
28
+ this.addNewAnnotation = (evt) => {
29
+ const eventDetail = evt.detail;
30
+ const { currentPoints, element } = eventDetail;
31
+ const worldPos = currentPoints.world;
32
+ const enabledElement = getEnabledElement(element);
33
+ const { viewport, renderingEngine } = enabledElement;
34
+ hideElementCursor(element);
35
+ this.isDrawing = true;
36
+ const { viewPlaneNormal, viewUp, position: cameraPosition, } = viewport.getCamera();
37
+ const referencedImageId = this.getReferencedImageId(viewport, worldPos, viewPlaneNormal, viewUp);
38
+ const annotation = {
39
+ highlighted: true,
40
+ invalidated: true,
41
+ metadata: {
42
+ ...viewport.getViewReference({ points: [worldPos] }),
43
+ toolName: this.getToolName(),
44
+ referencedImageId,
45
+ viewUp,
46
+ cameraPosition,
47
+ },
48
+ data: {
49
+ handles: {
50
+ points: [[...worldPos], [...worldPos]],
51
+ activeHandleIndex: null,
52
+ textBox: {
53
+ hasMoved: false,
54
+ worldPosition: [0, 0, 0],
55
+ worldBoundingBox: {
56
+ topLeft: [0, 0, 0],
57
+ topRight: [0, 0, 0],
58
+ bottomLeft: [0, 0, 0],
59
+ bottomRight: [0, 0, 0],
60
+ },
61
+ },
62
+ },
63
+ label: '',
64
+ cachedStats: {},
65
+ },
66
+ };
67
+ addAnnotation(annotation, element);
68
+ const viewportIdsToRender = getViewportIdsWithToolToRender(element, this.getToolName());
69
+ this.editData = {
70
+ annotation,
71
+ viewportIdsToRender,
72
+ handleIndex: 1,
73
+ movingTextBox: false,
74
+ newAnnotation: true,
75
+ hasMoved: false,
76
+ };
77
+ this._activateDraw(element);
78
+ evt.preventDefault();
79
+ triggerAnnotationRenderForViewportIds(renderingEngine, viewportIdsToRender);
80
+ return annotation;
81
+ };
82
+ this.isPointNearTool = (element, annotation, canvasCoords, proximity) => {
83
+ const enabledElement = getEnabledElement(element);
84
+ const { viewport } = enabledElement;
85
+ const { data } = annotation;
86
+ const [point1, point2] = data.handles.points;
87
+ const canvasPoint1 = viewport.worldToCanvas(point1);
88
+ const canvasPoint2 = viewport.worldToCanvas(point2);
89
+ const line = {
90
+ start: {
91
+ x: canvasPoint1[0],
92
+ y: canvasPoint1[1],
93
+ },
94
+ end: {
95
+ x: canvasPoint2[0],
96
+ y: canvasPoint2[1],
97
+ },
98
+ };
99
+ const distanceToPoint = lineSegment.distanceToPoint([line.start.x, line.start.y], [line.end.x, line.end.y], [canvasCoords[0], canvasCoords[1]]);
100
+ if (distanceToPoint <= proximity) {
101
+ return true;
102
+ }
103
+ return false;
104
+ };
105
+ this.toolSelectedCallback = (evt, annotation) => {
106
+ const eventDetail = evt.detail;
107
+ const { element } = eventDetail;
108
+ annotation.highlighted = true;
109
+ const viewportIdsToRender = getViewportIdsWithToolToRender(element, this.getToolName());
110
+ this.editData = {
111
+ annotation,
112
+ viewportIdsToRender,
113
+ movingTextBox: false,
114
+ };
115
+ this._activateModify(element);
116
+ hideElementCursor(element);
117
+ const enabledElement = getEnabledElement(element);
118
+ const { renderingEngine } = enabledElement;
119
+ triggerAnnotationRenderForViewportIds(renderingEngine, viewportIdsToRender);
120
+ evt.preventDefault();
121
+ };
122
+ this._endCallback = (evt) => {
123
+ const eventDetail = evt.detail;
124
+ const { element } = eventDetail;
125
+ const { annotation, viewportIdsToRender, newAnnotation, hasMoved } = this.editData;
126
+ const { data } = annotation;
127
+ if (newAnnotation && !hasMoved) {
128
+ return;
129
+ }
130
+ data.handles.activeHandleIndex = null;
131
+ this._deactivateModify(element);
132
+ this._deactivateDraw(element);
133
+ resetElementCursor(element);
134
+ const enabledElement = getEnabledElement(element);
135
+ const { renderingEngine } = enabledElement;
136
+ if (this.isHandleOutsideImage &&
137
+ this.configuration.preventHandleOutsideImage) {
138
+ removeAnnotation(annotation.annotationUID);
139
+ }
140
+ triggerAnnotationRenderForViewportIds(renderingEngine, viewportIdsToRender);
141
+ if (newAnnotation) {
142
+ triggerAnnotationCompleted(annotation);
143
+ }
144
+ this.editData = null;
145
+ this.isDrawing = false;
146
+ };
147
+ this._dragCallback = (evt) => {
148
+ this.isDrawing = true;
149
+ const eventDetail = evt.detail;
150
+ const { element } = eventDetail;
151
+ const { annotation, viewportIdsToRender, handleIndex, movingTextBox } = this.editData;
152
+ const { data } = annotation;
153
+ if (movingTextBox) {
154
+ const { deltaPoints } = eventDetail;
155
+ const worldPosDelta = deltaPoints.world;
156
+ const { textBox } = data.handles;
157
+ const { worldPosition } = textBox;
158
+ worldPosition[0] += worldPosDelta[0];
159
+ worldPosition[1] += worldPosDelta[1];
160
+ worldPosition[2] += worldPosDelta[2];
161
+ textBox.hasMoved = true;
162
+ }
163
+ else if (handleIndex === undefined) {
164
+ const { deltaPoints } = eventDetail;
165
+ const worldPosDelta = deltaPoints.world;
166
+ const points = data.handles.points;
167
+ points.forEach((point) => {
168
+ point[0] += worldPosDelta[0];
169
+ point[1] += worldPosDelta[1];
170
+ point[2] += worldPosDelta[2];
171
+ });
172
+ annotation.invalidated = true;
173
+ }
174
+ else {
175
+ const { currentPoints } = eventDetail;
176
+ const worldPos = currentPoints.world;
177
+ data.handles.points[handleIndex] = [...worldPos];
178
+ annotation.invalidated = true;
179
+ }
180
+ this.editData.hasMoved = true;
181
+ const enabledElement = getEnabledElement(element);
182
+ const { renderingEngine } = enabledElement;
183
+ triggerAnnotationRenderForViewportIds(renderingEngine, viewportIdsToRender);
184
+ };
185
+ this.cancel = (element) => {
186
+ if (this.isDrawing) {
187
+ this.isDrawing = false;
188
+ this._deactivateDraw(element);
189
+ this._deactivateModify(element);
190
+ resetElementCursor(element);
191
+ const { annotation, viewportIdsToRender, newAnnotation } = this.editData;
192
+ const { data } = annotation;
193
+ annotation.highlighted = false;
194
+ data.handles.activeHandleIndex = null;
195
+ const enabledElement = getEnabledElement(element);
196
+ const { renderingEngine } = enabledElement;
197
+ triggerAnnotationRenderForViewportIds(renderingEngine, viewportIdsToRender);
198
+ if (newAnnotation) {
199
+ triggerAnnotationCompleted(annotation);
200
+ }
201
+ this.editData = null;
202
+ return annotation.annotationUID;
203
+ }
204
+ };
205
+ this._activateModify = (element) => {
206
+ state.isInteractingWithTool = true;
207
+ element.addEventListener(Events.MOUSE_UP, this._endCallback);
208
+ element.addEventListener(Events.MOUSE_DRAG, this._dragCallback);
209
+ element.addEventListener(Events.MOUSE_CLICK, this._endCallback);
210
+ element.addEventListener(Events.TOUCH_END, this._endCallback);
211
+ element.addEventListener(Events.TOUCH_DRAG, this._dragCallback);
212
+ element.addEventListener(Events.TOUCH_TAP, this._endCallback);
213
+ };
214
+ this._deactivateModify = (element) => {
215
+ state.isInteractingWithTool = false;
216
+ element.removeEventListener(Events.MOUSE_UP, this._endCallback);
217
+ element.removeEventListener(Events.MOUSE_DRAG, this._dragCallback);
218
+ element.removeEventListener(Events.MOUSE_CLICK, this._endCallback);
219
+ element.removeEventListener(Events.TOUCH_END, this._endCallback);
220
+ element.removeEventListener(Events.TOUCH_DRAG, this._dragCallback);
221
+ element.removeEventListener(Events.TOUCH_TAP, this._endCallback);
222
+ };
223
+ this._activateDraw = (element) => {
224
+ state.isInteractingWithTool = true;
225
+ element.addEventListener(Events.MOUSE_UP, this._endCallback);
226
+ element.addEventListener(Events.MOUSE_DRAG, this._dragCallback);
227
+ element.addEventListener(Events.MOUSE_MOVE, this._dragCallback);
228
+ element.addEventListener(Events.MOUSE_CLICK, this._endCallback);
229
+ element.addEventListener(Events.TOUCH_END, this._endCallback);
230
+ element.addEventListener(Events.TOUCH_DRAG, this._dragCallback);
231
+ element.addEventListener(Events.TOUCH_TAP, this._endCallback);
232
+ };
233
+ this._deactivateDraw = (element) => {
234
+ state.isInteractingWithTool = false;
235
+ element.removeEventListener(Events.MOUSE_UP, this._endCallback);
236
+ element.removeEventListener(Events.MOUSE_DRAG, this._dragCallback);
237
+ element.removeEventListener(Events.MOUSE_MOVE, this._dragCallback);
238
+ element.removeEventListener(Events.MOUSE_CLICK, this._endCallback);
239
+ element.removeEventListener(Events.TOUCH_END, this._endCallback);
240
+ element.removeEventListener(Events.TOUCH_DRAG, this._dragCallback);
241
+ element.removeEventListener(Events.TOUCH_TAP, this._endCallback);
242
+ };
243
+ this.renderAnnotation = (enabledElement, svgDrawingHelper) => {
244
+ let renderStatus = false;
245
+ const { viewport } = enabledElement;
246
+ const { element } = viewport;
247
+ let annotations = getAnnotations(this.getToolName(), element);
248
+ if (!annotations?.length) {
249
+ return renderStatus;
250
+ }
251
+ annotations = this.filterInteractableAnnotationsForElement(element, annotations);
252
+ if (!annotations?.length) {
253
+ return renderStatus;
254
+ }
255
+ const targetId = this.getTargetId(viewport);
256
+ const renderingEngine = viewport.getRenderingEngine();
257
+ const styleSpecifier = {
258
+ toolGroupId: this.toolGroupId,
259
+ toolName: this.getToolName(),
260
+ viewportId: enabledElement.viewport.id,
261
+ };
262
+ for (let i = 0; i < annotations.length; i++) {
263
+ const annotation = annotations[i];
264
+ const { annotationUID, data } = annotation;
265
+ const { points, activeHandleIndex } = data.handles;
266
+ styleSpecifier.annotationUID = annotationUID;
267
+ const { color, lineWidth, lineDash, shadow } = this.getAnnotationStyle({
268
+ annotation,
269
+ styleSpecifier,
270
+ });
271
+ const canvasCoordinates = points.map((p) => viewport.worldToCanvas(p));
272
+ let activeHandleCanvasCoords;
273
+ if (!data.cachedStats[targetId] ||
274
+ data.cachedStats[targetId].unit == null) {
275
+ data.cachedStats[targetId] = {
276
+ length: null,
277
+ unit: null,
278
+ };
279
+ this._calculateCachedStats(annotation, renderingEngine, enabledElement);
280
+ }
281
+ else if (annotation.invalidated) {
282
+ this._throttledCalculateCachedStats(annotation, renderingEngine, enabledElement);
283
+ }
284
+ if (!isAnnotationVisible(annotationUID)) {
285
+ continue;
286
+ }
287
+ if (!isAnnotationLocked(annotation) &&
288
+ !this.editData &&
289
+ activeHandleIndex !== null) {
290
+ activeHandleCanvasCoords = [canvasCoordinates[activeHandleIndex]];
291
+ }
292
+ if (activeHandleCanvasCoords) {
293
+ const handleGroupUID = '0';
294
+ drawHandlesSvg(svgDrawingHelper, annotationUID, handleGroupUID, canvasCoordinates, {
295
+ color,
296
+ lineDash,
297
+ lineWidth,
298
+ });
299
+ }
300
+ const heightUID = '0';
301
+ drawHeightSvg(svgDrawingHelper, annotationUID, heightUID, canvasCoordinates[0], canvasCoordinates[1], {
302
+ color,
303
+ width: lineWidth,
304
+ lineDash: lineDash,
305
+ });
306
+ renderStatus = true;
307
+ if (!viewport.getRenderingEngine()) {
308
+ console.warn('Rendering Engine has been destroyed');
309
+ return renderStatus;
310
+ }
311
+ const options = this.getLinkedTextBoxStyle(styleSpecifier, annotation);
312
+ if (!options.visibility) {
313
+ data.handles.textBox = {
314
+ hasMoved: false,
315
+ worldPosition: [0, 0, 0],
316
+ worldBoundingBox: {
317
+ topLeft: [0, 0, 0],
318
+ topRight: [0, 0, 0],
319
+ bottomLeft: [0, 0, 0],
320
+ bottomRight: [0, 0, 0],
321
+ },
322
+ };
323
+ continue;
324
+ }
325
+ const textLines = this.configuration.getTextLines(data, targetId);
326
+ if (!data.handles.textBox.hasMoved) {
327
+ const canvasTextBoxCoords = getTextBoxCoordsCanvas(canvasCoordinates);
328
+ data.handles.textBox.worldPosition =
329
+ viewport.canvasToWorld(canvasTextBoxCoords);
330
+ }
331
+ const textBoxPosition = viewport.worldToCanvas(data.handles.textBox.worldPosition);
332
+ const textBoxUID = '1';
333
+ const boundingBox = drawLinkedTextBoxSvg(svgDrawingHelper, annotationUID, textBoxUID, textLines, textBoxPosition, canvasCoordinates, {}, options);
334
+ const { x: left, y: top, width, height } = boundingBox;
335
+ data.handles.textBox.worldBoundingBox = {
336
+ topLeft: viewport.canvasToWorld([left, top]),
337
+ topRight: viewport.canvasToWorld([left + width, top]),
338
+ bottomLeft: viewport.canvasToWorld([left, top + height]),
339
+ bottomRight: viewport.canvasToWorld([left + width, top + height]),
340
+ };
341
+ }
342
+ return renderStatus;
343
+ };
344
+ this._throttledCalculateCachedStats = throttle(this._calculateCachedStats, 100, { trailing: true });
345
+ }
346
+ handleSelectedCallback(evt, annotation, handle) {
347
+ const eventDetail = evt.detail;
348
+ const { element } = eventDetail;
349
+ const { data } = annotation;
350
+ annotation.highlighted = true;
351
+ let movingTextBox = false;
352
+ let handleIndex;
353
+ if (handle.worldPosition) {
354
+ movingTextBox = true;
355
+ }
356
+ else {
357
+ handleIndex = data.handles.points.findIndex((p) => p === handle);
358
+ }
359
+ const viewportIdsToRender = getViewportIdsWithToolToRender(element, this.getToolName());
360
+ this.editData = {
361
+ annotation,
362
+ viewportIdsToRender,
363
+ handleIndex,
364
+ movingTextBox,
365
+ };
366
+ this._activateModify(element);
367
+ hideElementCursor(element);
368
+ const enabledElement = getEnabledElement(element);
369
+ const { renderingEngine } = enabledElement;
370
+ triggerAnnotationRenderForViewportIds(renderingEngine, viewportIdsToRender);
371
+ evt.preventDefault();
372
+ }
373
+ _calculateHeight(pos1, pos2) {
374
+ const dx = pos2[0] - pos1[0];
375
+ const dy = pos2[1] - pos1[1];
376
+ const dz = pos2[2] - pos1[2];
377
+ if (dx == 0) {
378
+ if (dy != 0) {
379
+ return Math.abs(dz);
380
+ }
381
+ else {
382
+ return 0;
383
+ }
384
+ }
385
+ else if (dy == 0) {
386
+ return Math.abs(dz);
387
+ }
388
+ else if (dz == 0) {
389
+ return Math.abs(dy);
390
+ }
391
+ }
392
+ _calculateCachedStats(annotation, renderingEngine, enabledElement) {
393
+ const data = annotation.data;
394
+ const { element } = enabledElement.viewport;
395
+ const worldPos1 = data.handles.points[0];
396
+ const worldPos2 = data.handles.points[1];
397
+ const { cachedStats } = data;
398
+ const targetIds = Object.keys(cachedStats);
399
+ for (let i = 0; i < targetIds.length; i++) {
400
+ const targetId = targetIds[i];
401
+ const image = this.getTargetIdImage(targetId, renderingEngine);
402
+ if (!image) {
403
+ continue;
404
+ }
405
+ const { imageData, dimensions } = image;
406
+ const index1 = transformWorldToIndex(imageData, worldPos1);
407
+ const index2 = transformWorldToIndex(imageData, worldPos2);
408
+ const handles = [index1, index2];
409
+ const { scale, units } = getCalibratedLengthUnitsAndScale(image, handles);
410
+ const height = this._calculateHeight(worldPos1, worldPos2) / scale;
411
+ this._isInsideVolume(index1, index2, dimensions)
412
+ ? (this.isHandleOutsideImage = false)
413
+ : (this.isHandleOutsideImage = true);
414
+ cachedStats[targetId] = {
415
+ height,
416
+ unit: units,
417
+ };
418
+ }
419
+ annotation.invalidated = false;
420
+ triggerAnnotationModified(annotation, element);
421
+ return cachedStats;
422
+ }
423
+ _isInsideVolume(index1, index2, dimensions) {
424
+ return (csUtils.indexWithinDimensions(index1, dimensions) &&
425
+ csUtils.indexWithinDimensions(index2, dimensions));
426
+ }
427
+ }
428
+ function defaultGetTextLines(data, targetId) {
429
+ const cachedVolumeStats = data.cachedStats[targetId];
430
+ const { height, unit } = cachedVolumeStats;
431
+ if (height === undefined || height === null || isNaN(height)) {
432
+ return;
433
+ }
434
+ const textLines = [`${roundNumber(height)} ${unit}`];
435
+ return textLines;
436
+ }
437
+ HeightTool.toolName = 'Height';
438
+ export default HeightTool;
439
+ //# sourceMappingURL=HeightTool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HeightTool.js","sourceRoot":"","sources":["../../../../src/tools/annotation/HeightTool.ts"],"names":[],"mappings":"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"}
@@ -21,6 +21,7 @@ import ScaleOverlayTool from './ScaleOverlayTool';
21
21
  import SculptorTool from './SculptorTool';
22
22
  import BidirectionalTool from './annotation/BidirectionalTool';
23
23
  import LengthTool from './annotation/LengthTool';
24
+ import HeightTool from './annotation/HeightTool';
24
25
  import ProbeTool from './annotation/ProbeTool';
25
26
  import DragProbeTool from './annotation/DragProbeTool';
26
27
  import RectangleROITool from './annotation/RectangleROITool';
@@ -49,5 +50,5 @@ import BrushTool from './segmentation/BrushTool';
49
50
  import PaintFillTool from './segmentation/PaintFillTool';
50
51
  import OrientationMarkerTool from './OrientationMarkerTool';
51
52
  import SegmentSelectTool from './segmentation/SegmentSelectTool';
52
- export { BaseTool, AnnotationTool, AnnotationDisplayTool, PanTool, TrackballRotateTool, DragProbeTool, WindowLevelTool, WindowLevelRegionTool, StackScrollTool, PlanarRotateTool, StackScrollMouseWheelTool, ZoomTool, VolumeRotateMouseWheelTool, MIPJumpToClickTool, ReferenceCursors, CrosshairsTool, ReferenceLinesTool, OverlayGridTool, SegmentationIntersectionTool, BidirectionalTool, LengthTool, ProbeTool, RectangleROITool, EllipticalROITool, CircleROITool, SplineROITool, PlanarFreehandROITool, PlanarFreehandContourSegmentationTool, LivewireContourTool, LivewireContourSegmentationTool, ArrowAnnotateTool, AngleTool, CobbAngleTool, UltrasoundDirectionalTool, KeyImageTool, AnnotationEraserTool as EraserTool, SegmentationDisplayTool, RectangleScissorsTool, CircleScissorsTool, SphereScissorsTool, RectangleROIThresholdTool, RectangleROIStartEndThresholdTool, CircleROIStartEndThresholdTool, SplineContourSegmentationTool, BrushTool, MagnifyTool, AdvancedMagnifyTool, ReferenceLines, PaintFillTool, ScaleOverlayTool, OrientationMarkerTool, SculptorTool, SegmentSelectTool, };
53
+ export { BaseTool, AnnotationTool, AnnotationDisplayTool, PanTool, TrackballRotateTool, DragProbeTool, WindowLevelTool, WindowLevelRegionTool, StackScrollTool, PlanarRotateTool, StackScrollMouseWheelTool, ZoomTool, VolumeRotateMouseWheelTool, MIPJumpToClickTool, ReferenceCursors, CrosshairsTool, ReferenceLinesTool, OverlayGridTool, SegmentationIntersectionTool, BidirectionalTool, LengthTool, HeightTool, ProbeTool, RectangleROITool, EllipticalROITool, CircleROITool, SplineROITool, PlanarFreehandROITool, PlanarFreehandContourSegmentationTool, LivewireContourTool, LivewireContourSegmentationTool, ArrowAnnotateTool, AngleTool, CobbAngleTool, UltrasoundDirectionalTool, KeyImageTool, AnnotationEraserTool as EraserTool, SegmentationDisplayTool, RectangleScissorsTool, CircleScissorsTool, SphereScissorsTool, RectangleROIThresholdTool, RectangleROIStartEndThresholdTool, CircleROIStartEndThresholdTool, SplineContourSegmentationTool, BrushTool, MagnifyTool, AdvancedMagnifyTool, ReferenceLines, PaintFillTool, ScaleOverlayTool, OrientationMarkerTool, SculptorTool, SegmentSelectTool, };
53
54
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tools/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tools/index.ts"],"names":[],"mappings":"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"}