@cornerstonejs/tools 3.19.4 → 3.19.5
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.
|
@@ -35,7 +35,7 @@ declare class PlanarFreehandROITool extends ContourSegmentationBaseTool {
|
|
|
35
35
|
protected renderAnnotationInstance(renderContext: AnnotationRenderContext): boolean;
|
|
36
36
|
_calculateStatsIfActive(annotation: PlanarFreehandROIAnnotation, targetId: string, viewport: any, renderingEngine: any, enabledElement: any): void;
|
|
37
37
|
private _calculateCachedStats;
|
|
38
|
-
protected updateClosedCachedStats({ viewport, points, imageData, metadata, cachedStats, targetId, modalityUnit, canvasCoordinates, calibratedScale, }: {
|
|
38
|
+
protected updateClosedCachedStats({ viewport, points, imageData, metadata, cachedStats, targetId, modalityUnit, canvasCoordinates, calibratedScale, deltaInX, deltaInY, }: {
|
|
39
39
|
viewport: any;
|
|
40
40
|
points: any;
|
|
41
41
|
imageData: any;
|
|
@@ -45,14 +45,18 @@ declare class PlanarFreehandROITool extends ContourSegmentationBaseTool {
|
|
|
45
45
|
modalityUnit: any;
|
|
46
46
|
canvasCoordinates: any;
|
|
47
47
|
calibratedScale: any;
|
|
48
|
+
deltaInX: any;
|
|
49
|
+
deltaInY: any;
|
|
48
50
|
}): void;
|
|
49
|
-
protected updateOpenCachedStats({ targetId, metadata, canvasCoordinates, cachedStats, modalityUnit, calibratedScale, }: {
|
|
51
|
+
protected updateOpenCachedStats({ targetId, metadata, canvasCoordinates, cachedStats, modalityUnit, calibratedScale, deltaInX, deltaInY, }: {
|
|
50
52
|
targetId: any;
|
|
51
53
|
metadata: any;
|
|
52
54
|
canvasCoordinates: any;
|
|
53
55
|
cachedStats: any;
|
|
54
56
|
modalityUnit: any;
|
|
55
57
|
calibratedScale: any;
|
|
58
|
+
deltaInX: any;
|
|
59
|
+
deltaInY: any;
|
|
56
60
|
}): void;
|
|
57
61
|
private _renderStats;
|
|
58
62
|
}
|
|
@@ -168,6 +168,18 @@ class PlanarFreehandROITool extends ContourSegmentationBaseTool {
|
|
|
168
168
|
const bottomRightBBIndex = csUtils.transformWorldToIndex(imageData, bottomRightBBWorld);
|
|
169
169
|
return [topLeftBBIndex, bottomRightBBIndex];
|
|
170
170
|
});
|
|
171
|
+
const canvasPoint = canvasCoordinates[0];
|
|
172
|
+
const originalWorldPoint = viewport.canvasToWorld(canvasPoint);
|
|
173
|
+
const deltaXPoint = viewport.canvasToWorld([
|
|
174
|
+
canvasPoint[0] + 1,
|
|
175
|
+
canvasPoint[1],
|
|
176
|
+
]);
|
|
177
|
+
const deltaYPoint = viewport.canvasToWorld([
|
|
178
|
+
canvasPoint[0],
|
|
179
|
+
canvasPoint[1] + 1,
|
|
180
|
+
]);
|
|
181
|
+
const deltaInX = vec3.distance(originalWorldPoint, deltaXPoint);
|
|
182
|
+
const deltaInY = vec3.distance(originalWorldPoint, deltaYPoint);
|
|
171
183
|
if (closed) {
|
|
172
184
|
this.updateClosedCachedStats({
|
|
173
185
|
targetId,
|
|
@@ -179,6 +191,8 @@ class PlanarFreehandROITool extends ContourSegmentationBaseTool {
|
|
|
179
191
|
cachedStats,
|
|
180
192
|
modalityUnit,
|
|
181
193
|
calibratedScale,
|
|
194
|
+
deltaInX,
|
|
195
|
+
deltaInY,
|
|
182
196
|
});
|
|
183
197
|
}
|
|
184
198
|
else {
|
|
@@ -189,6 +203,8 @@ class PlanarFreehandROITool extends ContourSegmentationBaseTool {
|
|
|
189
203
|
cachedStats,
|
|
190
204
|
modalityUnit,
|
|
191
205
|
calibratedScale,
|
|
206
|
+
deltaInX,
|
|
207
|
+
deltaInY,
|
|
192
208
|
});
|
|
193
209
|
}
|
|
194
210
|
}
|
|
@@ -410,21 +426,9 @@ class PlanarFreehandROITool extends ContourSegmentationBaseTool {
|
|
|
410
426
|
}
|
|
411
427
|
}
|
|
412
428
|
}
|
|
413
|
-
updateClosedCachedStats({ viewport, points, imageData, metadata, cachedStats, targetId, modalityUnit, canvasCoordinates, calibratedScale, }) {
|
|
429
|
+
updateClosedCachedStats({ viewport, points, imageData, metadata, cachedStats, targetId, modalityUnit, canvasCoordinates, calibratedScale, deltaInX, deltaInY, }) {
|
|
414
430
|
const { scale, areaUnit, unit } = calibratedScale;
|
|
415
431
|
const { voxelManager } = viewport.getImageData();
|
|
416
|
-
const canvasPoint = canvasCoordinates[0];
|
|
417
|
-
const originalWorldPoint = viewport.canvasToWorld(canvasPoint);
|
|
418
|
-
const deltaXPoint = viewport.canvasToWorld([
|
|
419
|
-
canvasPoint[0] + 1,
|
|
420
|
-
canvasPoint[1],
|
|
421
|
-
]);
|
|
422
|
-
const deltaYPoint = viewport.canvasToWorld([
|
|
423
|
-
canvasPoint[0],
|
|
424
|
-
canvasPoint[1] + 1,
|
|
425
|
-
]);
|
|
426
|
-
const deltaInX = vec3.distance(originalWorldPoint, deltaXPoint);
|
|
427
|
-
const deltaInY = vec3.distance(originalWorldPoint, deltaYPoint);
|
|
428
432
|
const worldPosIndex = csUtils.transformWorldToIndex(imageData, points[0]);
|
|
429
433
|
worldPosIndex[0] = Math.floor(worldPosIndex[0]);
|
|
430
434
|
worldPosIndex[1] = Math.floor(worldPosIndex[1]);
|
|
@@ -453,6 +457,8 @@ class PlanarFreehandROITool extends ContourSegmentationBaseTool {
|
|
|
453
457
|
worldPosIndex2[2] = Math.floor(worldPosIndex2[2]);
|
|
454
458
|
let area = polyline.getArea(canvasCoordinates) / scale / scale;
|
|
455
459
|
area *= deltaInX * deltaInY;
|
|
460
|
+
let perimeter = calculatePerimeter(canvasCoordinates, closed) / scale;
|
|
461
|
+
perimeter *= Math.sqrt(Math.pow(deltaInX, 2) + Math.pow(deltaInY, 2));
|
|
456
462
|
const iDelta = 0.01 * (iMax - iMin);
|
|
457
463
|
const jDelta = 0.01 * (jMax - jMin);
|
|
458
464
|
const kDelta = 0.01 * (kMax - kMin);
|
|
@@ -510,7 +516,7 @@ class PlanarFreehandROITool extends ContourSegmentationBaseTool {
|
|
|
510
516
|
cachedStats[targetId] = {
|
|
511
517
|
Modality: metadata.Modality,
|
|
512
518
|
area,
|
|
513
|
-
perimeter
|
|
519
|
+
perimeter,
|
|
514
520
|
mean: stats.mean?.value,
|
|
515
521
|
max: stats.max?.value,
|
|
516
522
|
min: stats.min?.value,
|
|
@@ -522,11 +528,13 @@ class PlanarFreehandROITool extends ContourSegmentationBaseTool {
|
|
|
522
528
|
unit,
|
|
523
529
|
};
|
|
524
530
|
}
|
|
525
|
-
updateOpenCachedStats({ targetId, metadata, canvasCoordinates, cachedStats, modalityUnit, calibratedScale, }) {
|
|
531
|
+
updateOpenCachedStats({ targetId, metadata, canvasCoordinates, cachedStats, modalityUnit, calibratedScale, deltaInX, deltaInY, }) {
|
|
526
532
|
const { scale, unit } = calibratedScale;
|
|
533
|
+
let length = calculatePerimeter(canvasCoordinates, closed) / scale;
|
|
534
|
+
length *= Math.sqrt(Math.pow(deltaInX, 2) + Math.pow(deltaInY, 2));
|
|
527
535
|
cachedStats[targetId] = {
|
|
528
536
|
Modality: metadata.Modality,
|
|
529
|
-
length
|
|
537
|
+
length,
|
|
530
538
|
modalityUnit,
|
|
531
539
|
unit,
|
|
532
540
|
};
|
package/dist/esm/version.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const version = "3.19.
|
|
1
|
+
export declare const version = "3.19.5";
|
package/dist/esm/version.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export const version = '3.19.
|
|
1
|
+
export const version = '3.19.5';
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cornerstonejs/tools",
|
|
3
|
-
"version": "3.19.
|
|
3
|
+
"version": "3.19.5",
|
|
4
4
|
"description": "Cornerstone3D Tools",
|
|
5
5
|
"types": "./dist/esm/index.d.ts",
|
|
6
6
|
"module": "./dist/esm/index.js",
|
|
@@ -108,7 +108,7 @@
|
|
|
108
108
|
"canvas": "^3.1.0"
|
|
109
109
|
},
|
|
110
110
|
"peerDependencies": {
|
|
111
|
-
"@cornerstonejs/core": "^3.19.
|
|
111
|
+
"@cornerstonejs/core": "^3.19.5",
|
|
112
112
|
"@kitware/vtk.js": "32.12.1",
|
|
113
113
|
"@types/d3-array": "^3.0.4",
|
|
114
114
|
"@types/d3-interpolate": "^3.0.1",
|
|
@@ -127,5 +127,5 @@
|
|
|
127
127
|
"type": "individual",
|
|
128
128
|
"url": "https://ohif.org/donate"
|
|
129
129
|
},
|
|
130
|
-
"gitHead": "
|
|
130
|
+
"gitHead": "0ac2936cd680904f6af5a2da670548d92399a727"
|
|
131
131
|
}
|