@cornerstonejs/tools 0.20.10 → 0.20.13

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 (63) hide show
  1. package/dist/cjs/store/ToolGroupManager/ToolGroup.d.ts +2 -0
  2. package/dist/cjs/store/ToolGroupManager/ToolGroup.js +30 -0
  3. package/dist/cjs/store/ToolGroupManager/ToolGroup.js.map +1 -1
  4. package/dist/cjs/tools/annotation/PlanarFreehandROITool.js +5 -0
  5. package/dist/cjs/tools/annotation/PlanarFreehandROITool.js.map +1 -1
  6. package/dist/cjs/tools/annotation/planarFreehandROITool/closedContourEditLoop.js +6 -2
  7. package/dist/cjs/tools/annotation/planarFreehandROITool/closedContourEditLoop.js.map +1 -1
  8. package/dist/cjs/tools/annotation/planarFreehandROITool/drawLoop.js +9 -2
  9. package/dist/cjs/tools/annotation/planarFreehandROITool/drawLoop.js.map +1 -1
  10. package/dist/cjs/tools/annotation/planarFreehandROITool/interpolatePoints.d.ts +3 -0
  11. package/dist/cjs/tools/annotation/planarFreehandROITool/interpolatePoints.js +92 -0
  12. package/dist/cjs/tools/annotation/planarFreehandROITool/interpolatePoints.js.map +1 -0
  13. package/dist/cjs/tools/annotation/planarFreehandROITool/interpolation/algorithms/bspline.d.ts +2 -0
  14. package/dist/cjs/tools/annotation/planarFreehandROITool/interpolation/algorithms/bspline.js +19 -0
  15. package/dist/cjs/tools/annotation/planarFreehandROITool/interpolation/algorithms/bspline.js.map +1 -0
  16. package/dist/cjs/tools/annotation/planarFreehandROITool/interpolation/interpolateSegmentPoints.d.ts +2 -0
  17. package/dist/cjs/tools/annotation/planarFreehandROITool/interpolation/interpolateSegmentPoints.js +43 -0
  18. package/dist/cjs/tools/annotation/planarFreehandROITool/interpolation/interpolateSegmentPoints.js.map +1 -0
  19. package/dist/cjs/tools/annotation/planarFreehandROITool/openContourEditLoop.js +6 -2
  20. package/dist/cjs/tools/annotation/planarFreehandROITool/openContourEditLoop.js.map +1 -1
  21. package/dist/cjs/types/IToolGroup.d.ts +6 -0
  22. package/dist/cjs/utilities/math/index.d.ts +2 -1
  23. package/dist/cjs/utilities/math/index.js +3 -1
  24. package/dist/cjs/utilities/math/index.js.map +1 -1
  25. package/dist/cjs/utilities/math/point/distanceToPoint.d.ts +2 -0
  26. package/dist/cjs/utilities/math/point/distanceToPoint.js +12 -0
  27. package/dist/cjs/utilities/math/point/distanceToPoint.js.map +1 -0
  28. package/dist/cjs/utilities/math/point/index.d.ts +2 -0
  29. package/dist/cjs/utilities/math/point/index.js +9 -0
  30. package/dist/cjs/utilities/math/point/index.js.map +1 -0
  31. package/dist/esm/store/ToolGroupManager/ToolGroup.d.ts +2 -0
  32. package/dist/esm/store/ToolGroupManager/ToolGroup.js +27 -0
  33. package/dist/esm/store/ToolGroupManager/ToolGroup.js.map +1 -1
  34. package/dist/esm/tools/annotation/PlanarFreehandROITool.js +5 -0
  35. package/dist/esm/tools/annotation/PlanarFreehandROITool.js.map +1 -1
  36. package/dist/esm/tools/annotation/planarFreehandROITool/closedContourEditLoop.js +6 -2
  37. package/dist/esm/tools/annotation/planarFreehandROITool/closedContourEditLoop.js.map +1 -1
  38. package/dist/esm/tools/annotation/planarFreehandROITool/drawLoop.js +9 -2
  39. package/dist/esm/tools/annotation/planarFreehandROITool/drawLoop.js.map +1 -1
  40. package/dist/esm/tools/annotation/planarFreehandROITool/interpolatePoints.d.ts +3 -0
  41. package/dist/esm/tools/annotation/planarFreehandROITool/interpolatePoints.js +83 -0
  42. package/dist/esm/tools/annotation/planarFreehandROITool/interpolatePoints.js.map +1 -0
  43. package/dist/esm/tools/annotation/planarFreehandROITool/interpolation/algorithms/bspline.d.ts +2 -0
  44. package/dist/esm/tools/annotation/planarFreehandROITool/interpolation/algorithms/bspline.js +15 -0
  45. package/dist/esm/tools/annotation/planarFreehandROITool/interpolation/algorithms/bspline.js.map +1 -0
  46. package/dist/esm/tools/annotation/planarFreehandROITool/interpolation/interpolateSegmentPoints.d.ts +2 -0
  47. package/dist/esm/tools/annotation/planarFreehandROITool/interpolation/interpolateSegmentPoints.js +40 -0
  48. package/dist/esm/tools/annotation/planarFreehandROITool/interpolation/interpolateSegmentPoints.js.map +1 -0
  49. package/dist/esm/tools/annotation/planarFreehandROITool/openContourEditLoop.js +6 -2
  50. package/dist/esm/tools/annotation/planarFreehandROITool/openContourEditLoop.js.map +1 -1
  51. package/dist/esm/types/IToolGroup.d.ts +6 -0
  52. package/dist/esm/utilities/math/index.d.ts +2 -1
  53. package/dist/esm/utilities/math/index.js +2 -1
  54. package/dist/esm/utilities/math/index.js.map +1 -1
  55. package/dist/esm/utilities/math/point/distanceToPoint.d.ts +2 -0
  56. package/dist/esm/utilities/math/point/distanceToPoint.js +9 -0
  57. package/dist/esm/utilities/math/point/distanceToPoint.js.map +1 -0
  58. package/dist/esm/utilities/math/point/index.d.ts +2 -0
  59. package/dist/esm/utilities/math/point/index.js +3 -0
  60. package/dist/esm/utilities/math/point/index.js.map +1 -0
  61. package/dist/umd/index.js +1 -1
  62. package/dist/umd/index.js.map +1 -1
  63. package/package.json +10 -6
@@ -19,7 +19,7 @@ var __importStar = (this && this.__importStar) || function (mod) {
19
19
  return result;
20
20
  };
21
21
  Object.defineProperty(exports, "__esModule", { value: true });
22
- exports.polyline = exports.rectangle = exports.lineSegment = exports.ellipse = exports.vec2 = void 0;
22
+ exports.point = exports.polyline = exports.rectangle = exports.lineSegment = exports.ellipse = exports.vec2 = void 0;
23
23
  const vec2 = __importStar(require("./vec2"));
24
24
  exports.vec2 = vec2;
25
25
  const ellipse = __importStar(require("./ellipse"));
@@ -30,4 +30,6 @@ const rectangle = __importStar(require("./rectangle"));
30
30
  exports.rectangle = rectangle;
31
31
  const polyline = __importStar(require("./polyline"));
32
32
  exports.polyline = polyline;
33
+ const point = __importStar(require("./point"));
34
+ exports.point = point;
33
35
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/utilities/math/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,6CAA+B;AAMtB,oBAAI;AALb,mDAAqC;AAKtB,0BAAO;AAJtB,oDAAsC;AAId,kCAAW;AAHnC,uDAAyC;AAGJ,8BAAS;AAF9C,qDAAuC;AAES,4BAAQ"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/utilities/math/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,6CAA+B;AAOtB,oBAAI;AANb,mDAAqC;AAMtB,0BAAO;AALtB,oDAAsC;AAKd,kCAAW;AAJnC,uDAAyC;AAIJ,8BAAS;AAH9C,qDAAuC;AAGS,4BAAQ;AAFxD,+CAAiC;AAEyB,sBAAK"}
@@ -0,0 +1,2 @@
1
+ import type { Types } from '@cornerstonejs/core';
2
+ export default function distanceToPoint(p1: Types.Point2, p2: Types.Point2): number;
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ function distanceToPoint(p1, p2) {
4
+ if ((p1 === null || p1 === void 0 ? void 0 : p1.length) !== 2 || (p2 === null || p2 === void 0 ? void 0 : p2.length) !== 2) {
5
+ throw Error('points should have 2 elements of [x, y]');
6
+ }
7
+ const [x1, y1] = p1;
8
+ const [x2, y2] = p2;
9
+ return Math.sqrt(Math.pow(x1 - x2, 2) + Math.pow(y1 - y2, 2));
10
+ }
11
+ exports.default = distanceToPoint;
12
+ //# sourceMappingURL=distanceToPoint.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"distanceToPoint.js","sourceRoot":"","sources":["../../../../../src/utilities/math/point/distanceToPoint.ts"],"names":[],"mappings":";;AASA,SAAwB,eAAe,CACrC,EAAgB,EAChB,EAAgB;IAEhB,IAAI,CAAA,EAAE,aAAF,EAAE,uBAAF,EAAE,CAAE,MAAM,MAAK,CAAC,IAAI,CAAA,EAAE,aAAF,EAAE,uBAAF,EAAE,CAAE,MAAM,MAAK,CAAC,EAAE;QACxC,MAAM,KAAK,CAAC,yCAAyC,CAAC,CAAC;KACxD;IAED,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC;IACpB,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC;IAEpB,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;AAChE,CAAC;AAZD,kCAYC"}
@@ -0,0 +1,2 @@
1
+ import distanceToPoint from './distanceToPoint';
2
+ export { distanceToPoint };
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.distanceToPoint = void 0;
7
+ const distanceToPoint_1 = __importDefault(require("./distanceToPoint"));
8
+ exports.distanceToPoint = distanceToPoint_1.default;
9
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/utilities/math/point/index.ts"],"names":[],"mappings":";;;;;;AAAA,wEAAgD;AAEvC,0BAFF,yBAAe,CAEE"}
@@ -21,6 +21,8 @@ export default class ToolGroup implements IToolGroup {
21
21
  getActivePrimaryMouseButtonTool(): string;
22
22
  setViewportsCursorByToolName(toolName: string, strategyName?: string): void;
23
23
  _setCursorForViewports(cursor: MouseCursor): void;
24
+ setToolConfiguration(toolName: string, configuration: Record<any, any>, overwrite?: boolean): boolean;
25
+ getToolConfiguration(toolName: string, configurationPath: string): any;
24
26
  private _hasMousePrimaryButtonBinding;
25
27
  private _renderViewports;
26
28
  }
@@ -1,8 +1,11 @@
1
1
  import { MouseBindings, ToolModes } from '../../enums';
2
+ import cloneDeep from 'lodash.clonedeep';
3
+ import get from 'lodash.get';
2
4
  import { getRenderingEngine, getRenderingEngines, getEnabledElementByIds, Settings, } from '@cornerstonejs/core';
3
5
  import { state } from '../index';
4
6
  import { MouseCursor, SVGMouseCursor } from '../../cursors';
5
7
  import { initElementCursor } from '../../cursors/elementCursor';
8
+ import deepmerge from '../../utilities/deepMerge';
6
9
  const { Active, Passive, Enabled, Disabled } = ToolModes;
7
10
  export default class ToolGroup {
8
11
  constructor(id) {
@@ -201,6 +204,30 @@ export default class ToolGroup {
201
204
  initElementCursor(viewport.element, cursor);
202
205
  });
203
206
  }
207
+ setToolConfiguration(toolName, configuration, overwrite) {
208
+ if (this._toolInstances[toolName] === undefined) {
209
+ console.warn(`Tool ${toolName} not present, can't set tool configuration.`);
210
+ return false;
211
+ }
212
+ let _configuration;
213
+ if (overwrite) {
214
+ _configuration = configuration;
215
+ }
216
+ else {
217
+ _configuration = deepmerge(this._toolInstances[toolName].configuration, configuration);
218
+ }
219
+ this._toolInstances[toolName].configuration = _configuration;
220
+ this._renderViewports();
221
+ return true;
222
+ }
223
+ getToolConfiguration(toolName, configurationPath) {
224
+ if (this._toolInstances[toolName] === undefined) {
225
+ console.warn(`Tool ${toolName} not present, can't set tool configuration.`);
226
+ return;
227
+ }
228
+ const _configuration = get(this._toolInstances[toolName].configuration, configurationPath);
229
+ return cloneDeep(_configuration);
230
+ }
204
231
  _hasMousePrimaryButtonBinding(toolOptions) {
205
232
  return toolOptions?.bindings?.some((binding) => binding.mouseButton === MouseBindings.Primary &&
206
233
  binding.modifierKey === undefined);
@@ -1 +1 @@
1
- {"version":3,"file":"ToolGroup.js","sourceRoot":"","sources":["../../../../src/store/ToolGroupManager/ToolGroup.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ToolGroup.js","sourceRoot":"","sources":["../../../../src/store/ToolGroupManager/ToolGroup.ts"],"names":[],"mappings":"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"}
@@ -28,6 +28,11 @@ class PlanarFreehandROITool extends AnnotationTool {
28
28
  closeContourProximity: 10,
29
29
  checkCanvasEditFallbackProximity: 6,
30
30
  subPixelResolution: 4,
31
+ interpolation: {
32
+ enabled: false,
33
+ minKnotDistance: 20,
34
+ editMinKnotDistance: 10,
35
+ },
31
36
  },
32
37
  }) {
33
38
  super(toolProps, defaultToolProps);
@@ -1 +1 @@
1
- {"version":3,"file":"PlanarFreehandROITool.js","sourceRoot":"","sources":["../../../../src/tools/annotation/PlanarFreehandROITool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PlanarFreehandROITool.js","sourceRoot":"","sources":["../../../../src/tools/annotation/PlanarFreehandROITool.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,7 @@ import { resetElementCursor, hideElementCursor, } from '../../../cursors/element
5
5
  import { polyline } from '../../../utilities/math';
6
6
  import { vec3, vec2 } from 'gl-matrix';
7
7
  import triggerAnnotationRenderForViewportIds from '../../../utilities/triggerAnnotationRenderForViewportIds';
8
+ import { getInterpolatedPoints, shouldInterpolate } from './interpolatePoints';
8
9
  const { getSubPixelSpacingAndXYDirections, addCanvasPointsToArray, calculateAreaOfPoints, } = polyline;
9
10
  function activateClosedContourEdit(evt, annotation, viewportIdsToRender) {
10
11
  this.isEditingClosed = true;
@@ -186,9 +187,12 @@ function completeClosedContourEdit(element) {
186
187
  const enabledElement = getEnabledElement(element);
187
188
  const { viewport, renderingEngine } = enabledElement;
188
189
  const { annotation, viewportIdsToRender } = this.commonData;
189
- const { fusedCanvasPoints } = this.editData;
190
+ const { fusedCanvasPoints, prevCanvasPoints } = this.editData;
190
191
  if (fusedCanvasPoints) {
191
- const worldPoints = fusedCanvasPoints.map((canvasPoint) => viewport.canvasToWorld(canvasPoint));
192
+ const updatedPoints = shouldInterpolate(this.configuration)
193
+ ? getInterpolatedPoints(this.configuration, fusedCanvasPoints, prevCanvasPoints)
194
+ : fusedCanvasPoints;
195
+ const worldPoints = updatedPoints.map((canvasPoint) => viewport.canvasToWorld(canvasPoint));
192
196
  annotation.data.polyline = worldPoints;
193
197
  annotation.data.isOpenContour = false;
194
198
  this.triggerAnnotationModified(annotation, enabledElement);
@@ -1 +1 @@
1
- {"version":3,"file":"closedContourEditLoop.js","sourceRoot":"","sources":["../../../../../src/tools/annotation/planarFreehandROITool/closedContourEditLoop.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"closedContourEditLoop.js","sourceRoot":"","sources":["../../../../../src/tools/annotation/planarFreehandROITool/closedContourEditLoop.ts"],"names":[],"mappings":"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"}
@@ -7,6 +7,7 @@ import triggerAnnotationRenderForViewportIds from '../../../utilities/triggerAnn
7
7
  import findOpenUShapedContourVectorToPeak from './findOpenUShapedContourVectorToPeak';
8
8
  import { polyline } from '../../../utilities/math';
9
9
  import { removeAnnotation } from '../../../stateManagement/annotation/annotationState';
10
+ import { shouldInterpolate, getInterpolatedPoints } from './interpolatePoints';
10
11
  const { addCanvasPointsToArray, pointsAreWithinCloseContourProximity, getFirstIntersectionWithPolyline, getSubPixelSpacingAndXYDirections, } = polyline;
11
12
  function activateDraw(evt, annotation, viewportIdsToRender) {
12
13
  this.isDrawing = true;
@@ -94,7 +95,10 @@ function completeDrawClosedContour(element) {
94
95
  const { viewport, renderingEngine } = enabledElement;
95
96
  addCanvasPointsToArray(element, canvasPoints, canvasPoints[0], this.commonData);
96
97
  canvasPoints.pop();
97
- const worldPoints = canvasPoints.map((canvasPoint) => viewport.canvasToWorld(canvasPoint));
98
+ const updatedPoints = shouldInterpolate(this.configuration)
99
+ ? getInterpolatedPoints(this.configuration, canvasPoints)
100
+ : canvasPoints;
101
+ const worldPoints = updatedPoints.map((canvasPoint) => viewport.canvasToWorld(canvasPoint));
98
102
  annotation.data.polyline = worldPoints;
99
103
  annotation.data.isOpenContour = false;
100
104
  this.triggerAnnotationCompleted(annotation);
@@ -124,7 +128,10 @@ function completeDrawOpenContour(element) {
124
128
  const { annotation, viewportIdsToRender } = this.commonData;
125
129
  const enabledElement = getEnabledElement(element);
126
130
  const { viewport, renderingEngine } = enabledElement;
127
- const worldPoints = canvasPoints.map((canvasPoint) => viewport.canvasToWorld(canvasPoint));
131
+ const updatedPoints = shouldInterpolate(this.configuration)
132
+ ? getInterpolatedPoints(this.configuration, canvasPoints)
133
+ : canvasPoints;
134
+ const worldPoints = updatedPoints.map((canvasPoint) => viewport.canvasToWorld(canvasPoint));
128
135
  annotation.data.polyline = worldPoints;
129
136
  annotation.data.isOpenContour = true;
130
137
  annotation.data.handles.points = [
@@ -1 +1 @@
1
- {"version":3,"file":"drawLoop.js","sourceRoot":"","sources":["../../../../../src/tools/annotation/planarFreehandROITool/drawLoop.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"drawLoop.js","sourceRoot":"","sources":["../../../../../src/tools/annotation/planarFreehandROITool/drawLoop.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { Types } from '@cornerstonejs/core';
2
+ export declare function shouldInterpolate(configuration: Record<any, any>): boolean;
3
+ export declare function getInterpolatedPoints(configuration: Record<any, any>, points: Types.Point2[], pointsOfReference?: Types.Point2[]): Types.Point2[];
@@ -0,0 +1,83 @@
1
+ import { point } from '../../../utilities/math';
2
+ import interpolateSegmentPoints from './interpolation/interpolateSegmentPoints';
3
+ export function shouldInterpolate(configuration) {
4
+ return configuration?.interpolation?.enabled === true;
5
+ }
6
+ function isEqualByProximity(pointA, pointB) {
7
+ return point.distanceToPoint(pointA, pointB) < 0.001;
8
+ }
9
+ function isEqual(pointA, pointB) {
10
+ return point.distanceToPoint(pointA, pointB) === 0;
11
+ }
12
+ function findMatchIndexes(points, otherPoints) {
13
+ for (let i = 0; i < points.length; i++) {
14
+ for (let j = 0; j < otherPoints.length; j++) {
15
+ if (isEqual(points[i], otherPoints[j])) {
16
+ return [i, j];
17
+ }
18
+ }
19
+ }
20
+ }
21
+ function followingIndex(index, size, direction) {
22
+ return (index + size + direction) % size;
23
+ }
24
+ function circularFindNextIndexBy(listParams, otherListParams, criteria, direction) {
25
+ const [, indexDelimiter, points] = listParams;
26
+ const [, otherIndexDelimiter, otherPoints] = otherListParams;
27
+ const pointsLength = points.length;
28
+ const otherPointsLength = otherPoints.length;
29
+ let startIndex = listParams[0];
30
+ let otherStartIndex = otherListParams[0];
31
+ if (!points[startIndex] ||
32
+ !otherPoints[otherStartIndex] ||
33
+ !points[indexDelimiter] ||
34
+ !otherPoints[otherIndexDelimiter]) {
35
+ return [undefined, undefined];
36
+ }
37
+ while (startIndex !== indexDelimiter &&
38
+ otherStartIndex !== otherIndexDelimiter) {
39
+ if (criteria(otherPoints[otherStartIndex], points[startIndex])) {
40
+ return [startIndex, otherStartIndex];
41
+ }
42
+ startIndex = followingIndex(startIndex, pointsLength, direction);
43
+ otherStartIndex = followingIndex(otherStartIndex, otherPointsLength, direction);
44
+ }
45
+ return [undefined, undefined];
46
+ }
47
+ function findChangedSegment(points, previousPoints) {
48
+ const [firstMatchIndex, previousFirstMatchIndex] = findMatchIndexes(points, previousPoints) || [];
49
+ const toBeNotEqualCriteria = (pointA, pointB) => isEqualByProximity(pointA, pointB) === false;
50
+ const [lowDiffIndex, lowOtherDiffIndex] = circularFindNextIndexBy([
51
+ followingIndex(firstMatchIndex, points.length, 1),
52
+ firstMatchIndex,
53
+ points,
54
+ ], [
55
+ followingIndex(previousFirstMatchIndex, previousPoints.length, 1),
56
+ previousFirstMatchIndex,
57
+ previousPoints,
58
+ ], toBeNotEqualCriteria, 1);
59
+ const [highIndex] = circularFindNextIndexBy([followingIndex(lowDiffIndex, points.length, -1), lowDiffIndex, points], [
60
+ followingIndex(lowOtherDiffIndex, previousPoints.length, -1),
61
+ lowOtherDiffIndex,
62
+ previousPoints,
63
+ ], toBeNotEqualCriteria, -1);
64
+ return [lowDiffIndex, highIndex];
65
+ }
66
+ export function getInterpolatedPoints(configuration, points, pointsOfReference) {
67
+ const { interpolation } = configuration;
68
+ const result = points;
69
+ if (interpolation) {
70
+ const { minKnotDistance, editMinKnotDistance, enabled = false, } = interpolation;
71
+ if (enabled) {
72
+ const [changedIniIndex, changedEndIndex] = pointsOfReference
73
+ ? findChangedSegment(points, pointsOfReference)
74
+ : [0, points.length - 1];
75
+ if (!points[changedIniIndex] || !points[changedEndIndex]) {
76
+ return points;
77
+ }
78
+ return interpolateSegmentPoints(points, changedIniIndex, changedEndIndex, pointsOfReference ? editMinKnotDistance : minKnotDistance);
79
+ }
80
+ }
81
+ return result;
82
+ }
83
+ //# sourceMappingURL=interpolatePoints.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interpolatePoints.js","sourceRoot":"","sources":["../../../../../src/tools/annotation/planarFreehandROITool/interpolatePoints.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import { Types } from '@cornerstonejs/core';
2
+ export declare function interpolatePoints(originalPoints: Types.Point2[], knotsIndexes: number[]): Types.Point2[];
@@ -0,0 +1,15 @@
1
+ import { interpolateBasis as d3InterpolateBasis, quantize as d3Quantize, } from 'd3-interpolate';
2
+ import { zip as d3Zip } from 'd3-array';
3
+ export function interpolatePoints(originalPoints, knotsIndexes) {
4
+ if (!knotsIndexes ||
5
+ knotsIndexes.length === 0 ||
6
+ knotsIndexes.length === originalPoints.length) {
7
+ return originalPoints;
8
+ }
9
+ const n = knotsIndexes[knotsIndexes.length - 1] - knotsIndexes[0] + 1;
10
+ const xInterpolator = d3InterpolateBasis(knotsIndexes.map((k) => originalPoints[k][0]));
11
+ const yInterpolator = d3InterpolateBasis(knotsIndexes.map((k) => originalPoints[k][1]));
12
+ const splinePoints = (d3Zip(d3Quantize(xInterpolator, n), d3Quantize(yInterpolator, n)));
13
+ return splinePoints;
14
+ }
15
+ //# sourceMappingURL=bspline.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bspline.js","sourceRoot":"","sources":["../../../../../../../src/tools/annotation/planarFreehandROITool/interpolation/algorithms/bspline.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,IAAI,kBAAkB,EACtC,QAAQ,IAAI,UAAU,GACvB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,GAAG,IAAI,KAAK,EAAE,MAAM,UAAU,CAAC;AAQxC,MAAM,UAAU,iBAAiB,CAC/B,cAA8B,EAC9B,YAAsB;IAEtB,IACE,CAAC,YAAY;QACb,YAAY,CAAC,MAAM,KAAK,CAAC;QACzB,YAAY,CAAC,MAAM,KAAK,cAAc,CAAC,MAAM,EAC7C;QACA,OAAO,cAAc,CAAC;KACvB;IAED,MAAM,CAAC,GAAG,YAAY,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IACtE,MAAM,aAAa,GAAG,kBAAkB,CACtC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAC9C,CAAC;IACF,MAAM,aAAa,GAAG,kBAAkB,CACtC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAC9C,CAAC;IACF,MAAM,YAAY,GAAmC,CACnD,KAAK,CAAC,UAAU,CAAC,aAAa,EAAE,CAAC,CAAC,EAAE,UAAU,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,CAClE,CAAC;IAEF,OAAO,YAAY,CAAC;AACtB,CAAC"}
@@ -0,0 +1,2 @@
1
+ import { Types } from '@cornerstonejs/core';
2
+ export default function interpolateSegmentPoints(points: Types.Point2[], iniIndex: number, endIndex: number, minKnotDistance: number): Types.Point2[];
@@ -0,0 +1,40 @@
1
+ import { interpolatePoints } from './algorithms/bspline';
2
+ function getContinuousUniformDistributionValues(minDistributionDistance, closedInterval) {
3
+ const result = [];
4
+ const [intervalIni, intervalEnd] = closedInterval;
5
+ const intervalSize = intervalEnd - intervalIni + 1;
6
+ const intensity = Math.floor(intervalSize / minDistributionDistance);
7
+ let x = 0;
8
+ let continuosDistributionValue = Math.round(((intervalSize - 1) / (intensity - 1)) * x) + intervalIni;
9
+ while (continuosDistributionValue <= intervalEnd) {
10
+ result.push(continuosDistributionValue);
11
+ x++;
12
+ continuosDistributionValue =
13
+ Math.round(((intervalSize - 1) / (intensity - 1)) * x) + intervalIni;
14
+ }
15
+ return result;
16
+ }
17
+ export default function interpolateSegmentPoints(points, iniIndex, endIndex, minKnotDistance) {
18
+ const segmentSize = endIndex - iniIndex + 1;
19
+ if (isNaN(segmentSize) || !segmentSize || !minKnotDistance) {
20
+ return points;
21
+ }
22
+ if (segmentSize / minKnotDistance <= 2) {
23
+ return points;
24
+ }
25
+ const interpolationIniIndex = Math.max(0, iniIndex);
26
+ const interpolationEndIndex = Math.min(points.length - 1, endIndex);
27
+ const segmentPointsUnchangedBeg = points.slice(0, interpolationIniIndex);
28
+ const segmentPointsUnchangedEnd = points.slice(interpolationEndIndex + 1, points.length);
29
+ const knotsIndexes = getContinuousUniformDistributionValues(minKnotDistance, [
30
+ interpolationIniIndex,
31
+ interpolationEndIndex,
32
+ ]);
33
+ const interpolatedPoints = interpolatePoints(points, knotsIndexes);
34
+ return [
35
+ ...segmentPointsUnchangedBeg,
36
+ ...interpolatedPoints,
37
+ ...segmentPointsUnchangedEnd,
38
+ ];
39
+ }
40
+ //# sourceMappingURL=interpolateSegmentPoints.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interpolateSegmentPoints.js","sourceRoot":"","sources":["../../../../../../src/tools/annotation/planarFreehandROITool/interpolation/interpolateSegmentPoints.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAgBzD,SAAS,sCAAsC,CAC7C,uBAA+B,EAC/B,cAAgC;IAEhC,MAAM,MAAM,GAAG,EAAE,CAAC;IAClB,MAAM,CAAC,WAAW,EAAE,WAAW,CAAC,GAAG,cAAc,CAAC;IAElD,MAAM,YAAY,GAAG,WAAW,GAAG,WAAW,GAAG,CAAC,CAAC;IACnD,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,uBAAuB,CAAC,CAAC;IAErE,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,IAAI,0BAA0B,GAC5B,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,GAAG,CAAC,CAAC,GAAG,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,WAAW,CAAC;IAEvE,OAAO,0BAA0B,IAAI,WAAW,EAAE;QAChD,MAAM,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;QACxC,CAAC,EAAE,CAAC;QACJ,0BAA0B;YACxB,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,GAAG,CAAC,CAAC,GAAG,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,WAAW,CAAC;KACxE;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAOD,MAAM,CAAC,OAAO,UAAU,wBAAwB,CAC9C,MAAsB,EACtB,QAAgB,EAChB,QAAgB,EAChB,eAAuB;IAEvB,MAAM,WAAW,GAAG,QAAQ,GAAG,QAAQ,GAAG,CAAC,CAAC;IAC5C,IAAI,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,eAAe,EAAE;QAC1D,OAAO,MAAM,CAAC;KACf;IAGD,IAAI,WAAW,GAAG,eAAe,IAAI,CAAC,EAAE;QACtC,OAAO,MAAM,CAAC;KACf;IAED,MAAM,qBAAqB,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;IACpD,MAAM,qBAAqB,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,QAAQ,CAAC,CAAC;IACpE,MAAM,yBAAyB,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,qBAAqB,CAAC,CAAC;IAEzE,MAAM,yBAAyB,GAAG,MAAM,CAAC,KAAK,CAC5C,qBAAqB,GAAG,CAAC,EACzB,MAAM,CAAC,MAAM,CACd,CAAC;IAEF,MAAM,YAAY,GAAG,sCAAsC,CAAC,eAAe,EAAE;QAC3E,qBAAqB;QACrB,qBAAqB;KACtB,CAAC,CAAC;IAEH,MAAM,kBAAkB,GAAG,iBAAiB,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IAEnE,OAAO;QACL,GAAG,yBAAyB;QAC5B,GAAG,kBAAkB;QACrB,GAAG,yBAAyB;KAC7B,CAAC;AACJ,CAAC"}
@@ -6,6 +6,7 @@ import { vec3, vec2 } from 'gl-matrix';
6
6
  import { polyline } from '../../../utilities/math';
7
7
  import triggerAnnotationRenderForViewportIds from '../../../utilities/triggerAnnotationRenderForViewportIds';
8
8
  import findOpenUShapedContourVectorToPeak from './findOpenUShapedContourVectorToPeak';
9
+ import { shouldInterpolate, getInterpolatedPoints } from './interpolatePoints';
9
10
  const { addCanvasPointsToArray, getSubPixelSpacingAndXYDirections } = polyline;
10
11
  function activateOpenContourEdit(evt, annotation, viewportIdsToRender) {
11
12
  this.isEditingOpen = true;
@@ -250,9 +251,12 @@ function completeOpenContourEdit(element) {
250
251
  const enabledElement = getEnabledElement(element);
251
252
  const { viewport, renderingEngine } = enabledElement;
252
253
  const { annotation, viewportIdsToRender } = this.commonData;
253
- const { fusedCanvasPoints } = this.editData;
254
+ const { fusedCanvasPoints, prevCanvasPoints } = this.editData;
254
255
  if (fusedCanvasPoints) {
255
- const worldPoints = fusedCanvasPoints.map((canvasPoint) => viewport.canvasToWorld(canvasPoint));
256
+ const updatedPoints = shouldInterpolate(this.configuration)
257
+ ? getInterpolatedPoints(this.configuration, fusedCanvasPoints, prevCanvasPoints)
258
+ : fusedCanvasPoints;
259
+ const worldPoints = updatedPoints.map((canvasPoint) => viewport.canvasToWorld(canvasPoint));
256
260
  annotation.data.polyline = worldPoints;
257
261
  annotation.data.isOpenContour = true;
258
262
  annotation.data.handles.points = [