hellfire 0.20.4 → 0.20.7
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/CHANGELOG.md +12 -0
- package/dist/favicon.ico +0 -0
- package/dist/index.html +32 -0
- package/dist/index.js +173 -154
- package/dist/index.js.map +1 -1
- package/dist/v0.17.0-46-g33a703a/main-56d1bbe76fd28b6ffa02.js +2238 -0
- package/dist/v0.17.0-46-g33a703a/main56d1bbe76fd28b6ffa02.css +1809 -0
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,18 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
|
|
4
4
|
|
|
5
|
+
## [0.20.7](http://10.16.100.57/diffusion/115/paladin/compare/v0.20.6...v0.20.7) (2022-05-24)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
## [0.20.6](http://10.16.100.57/diffusion/115/paladin/compare/v0.20.5...v0.20.6) (2022-05-23)
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
## [0.20.5](http://10.16.100.57/diffusion/115/paladin/compare/v0.20.4...v0.20.5) (2022-05-20)
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
5
17
|
## [0.20.4](http://10.16.100.57/diffusion/115/paladin/compare/v0.20.3...v0.20.4) (2022-05-19)
|
|
6
18
|
|
|
7
19
|
|
package/dist/favicon.ico
ADDED
|
Binary file
|
package/dist/index.html
ADDED
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
<!doctype html>
|
|
2
|
+
<html lang="zh-Hans" class="default">
|
|
3
|
+
<head>
|
|
4
|
+
<meta name="renderer" content="webkit">
|
|
5
|
+
<meta charset="utf-8"/>
|
|
6
|
+
<title>examples</title>
|
|
7
|
+
<meta name="description" content="Soul Archetype Admin System"/>
|
|
8
|
+
<meta http-equiv="x-ua-compatible" content="ie=edge,chrome=1">
|
|
9
|
+
<meta name="viewport"
|
|
10
|
+
content="user-scalable=no, width=device-width, height=device-height, initial-scale=1, minimum-scale=1, maximum-scale=1"/>
|
|
11
|
+
<meta name="robots" content="noindex, nofollow, noodp, noarchive, nosnippet, noimageindex, noydir, nocache"/>
|
|
12
|
+
<meta name="referrer" content="origin"/>
|
|
13
|
+
<style>
|
|
14
|
+
html {
|
|
15
|
+
height: 100%;
|
|
16
|
+
width: 100%;
|
|
17
|
+
overflow: hidden;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
body {
|
|
21
|
+
height: 100%;
|
|
22
|
+
width: 100%;
|
|
23
|
+
overflow: auto;
|
|
24
|
+
margin: 0;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
</style>
|
|
28
|
+
<link rel="shortcut icon" href="./favicon.ico"><link href="./v0.17.0-46-g33a703a/main56d1bbe76fd28b6ffa02.css?56d1bbe76fd28b6ffa02" rel="stylesheet"></head>
|
|
29
|
+
<body>
|
|
30
|
+
<div id="app" style="height: 100%;"></div>
|
|
31
|
+
<script type="text/javascript" src="./v0.17.0-46-g33a703a/main-56d1bbe76fd28b6ffa02.js?56d1bbe76fd28b6ffa02"></script></body>
|
|
32
|
+
</html>
|
package/dist/index.js
CHANGED
|
@@ -27195,7 +27195,6 @@ var __signature__$1H = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoa
|
|
|
27195
27195
|
var getNewContext$d = cornerstoneTools.importInternal('drawing/getNewContext');
|
|
27196
27196
|
var drawLines$2 = cornerstoneTools.importInternal('drawing/drawLines');
|
|
27197
27197
|
var drawLinkedTextBox$7 = cornerstoneTools.importInternal('drawing/drawLinkedTextBox');
|
|
27198
|
-
var moveNewHandle$4 = cornerstoneTools.importInternal('manipulators/moveNewHandle');
|
|
27199
27198
|
var moveHandle = cornerstoneTools.importInternal('manipulators/moveHandle');
|
|
27200
27199
|
var getLogger$3 = cornerstoneTools.importInternal('util/getLogger');
|
|
27201
27200
|
var throttle$7 = cornerstoneTools.importInternal('util/throttle');
|
|
@@ -27203,15 +27202,15 @@ var getPixelSpacing$7 = cornerstoneTools.importInternal('util/getPixelSpacing');
|
|
|
27203
27202
|
var getROITextBoxCoords$2 = cornerstoneTools.importInternal('util/getROITextBoxCoords');
|
|
27204
27203
|
var numbersWithCommas$2 = cornerstoneTools.importInternal('util/numbersWithCommas');
|
|
27205
27204
|
var lineSegDistance$5 = cornerstoneTools.importInternal('util/lineSegDistance');
|
|
27206
|
-
var triggerEvent$3 = cornerstoneTools.importInternal('util/triggerEvent');
|
|
27207
27205
|
var logger$8 = getLogger$3('tools:annotation:PolygonTool');
|
|
27208
27206
|
var external$k = cornerstoneTools.external,
|
|
27209
27207
|
addToolState$4 = cornerstoneTools.addToolState,
|
|
27210
27208
|
toolColors$b = cornerstoneTools.toolColors,
|
|
27211
27209
|
toolStyle$6 = cornerstoneTools.toolStyle,
|
|
27212
|
-
|
|
27210
|
+
getToolState$c = cornerstoneTools.getToolState;
|
|
27213
27211
|
/**
|
|
27214
27212
|
* 多边形绘制工具
|
|
27213
|
+
* 备注:在activeTool改变的地方添加判断,如果是从多边形工具切换到了别的工具,要手动结束掉未完成的绘制
|
|
27215
27214
|
*/
|
|
27216
27215
|
|
|
27217
27216
|
var PolygonTool = /*#__PURE__*/function (_BaseAnnotationPlusTo) {
|
|
@@ -27233,76 +27232,25 @@ var PolygonTool = /*#__PURE__*/function (_BaseAnnotationPlusTo) {
|
|
|
27233
27232
|
drawHandles: true
|
|
27234
27233
|
}
|
|
27235
27234
|
};
|
|
27236
|
-
_this = _super.call(this, props, defaultProps);
|
|
27237
|
-
|
|
27238
|
-
defineProperty(assertThisInitialized(_this), "moveNewHandlePlus", function (eventData, measurementData, interactionType) {
|
|
27239
|
-
measurementData.count++;
|
|
27240
|
-
var _eventData$currentPoi = eventData.currentPoints.image,
|
|
27241
|
-
x = _eventData$currentPoi.x,
|
|
27242
|
-
y = _eventData$currentPoi.y;
|
|
27243
|
-
measurementData.handles['point' + measurementData.count] = {
|
|
27244
|
-
x: x,
|
|
27245
|
-
y: y,
|
|
27246
|
-
highlight: true,
|
|
27247
|
-
active: true,
|
|
27248
|
-
isPoint: true
|
|
27249
|
-
};
|
|
27250
|
-
var element = eventData.element;
|
|
27251
|
-
moveNewHandle$4(eventData, _this.name, measurementData, measurementData.handles['point' + measurementData.count], _this.options, interactionType, function () {
|
|
27252
|
-
measurementData.handles['point' + measurementData.count].active = false;
|
|
27253
|
-
external$k.cornerstone.updateImage(element);
|
|
27254
|
-
|
|
27255
|
-
if (!_this.finishOnce) {
|
|
27256
|
-
_this.moveNewHandlePlus(eventData, measurementData, interactionType);
|
|
27257
|
-
}
|
|
27258
|
-
});
|
|
27259
|
-
});
|
|
27260
|
-
|
|
27261
|
-
_this.currentWadoUri = null; // 结束一组
|
|
27235
|
+
_this = _super.call(this, props, defaultProps);
|
|
27236
|
+
_this.throttledUpdateCachedStats = throttle$7(_this.updateCachedStats, 110); // 一次只绘制一个element 不可以换到别的element上面绘制
|
|
27262
27237
|
|
|
27263
|
-
_this.
|
|
27264
|
-
_this.
|
|
27265
|
-
_this.elementCache = null;
|
|
27238
|
+
_this.isDrawing = false;
|
|
27239
|
+
_this.currentElement = null;
|
|
27266
27240
|
document.addEventListener('keyup', function (e) {
|
|
27267
27241
|
if (e.keyCode === 27) {
|
|
27268
|
-
_this.
|
|
27269
|
-
_this.currentWadoUri = null;
|
|
27242
|
+
_this.isDrawing = false;
|
|
27270
27243
|
|
|
27271
|
-
if (_this.
|
|
27272
|
-
var toolData = cornerstoneTools.getToolState(_this.
|
|
27244
|
+
if (_this.currentElement) {
|
|
27245
|
+
var toolData = cornerstoneTools.getToolState(_this.currentElement, _this.name);
|
|
27273
27246
|
|
|
27274
27247
|
if (toolData && toolData.data && toolData.data.length > 0) {
|
|
27275
27248
|
for (var i = 0; i < toolData.data.length; i++) {
|
|
27276
|
-
toolData.data[i].
|
|
27249
|
+
toolData.data[i].complete = true;
|
|
27277
27250
|
}
|
|
27278
27251
|
}
|
|
27279
27252
|
|
|
27280
|
-
|
|
27281
|
-
|
|
27282
|
-
|
|
27283
|
-
if (isToolLocked) {
|
|
27284
|
-
var enable = external$k.cornerstone.getEnabledElement(_this.elementCache); // 情况:添加一个点后没有move,这时候就不会走moveHandler,下面mouseup模拟的endHandler也不会生效,所以需要先模拟move
|
|
27285
|
-
|
|
27286
|
-
triggerEvent$3(_this.elementCache, EVENTS$4.MOUSE_MOVE, {
|
|
27287
|
-
element: _this.elementCache,
|
|
27288
|
-
currentPoints: {
|
|
27289
|
-
page: cornerstoneMath.point.pageToPoint(e)
|
|
27290
|
-
},
|
|
27291
|
-
image: enable.image,
|
|
27292
|
-
buttons: getEventButtons(e)
|
|
27293
|
-
});
|
|
27294
|
-
triggerEvent$3(_this.elementCache, EVENTS$4.MOUSE_UP, {
|
|
27295
|
-
element: _this.elementCache,
|
|
27296
|
-
currentPoints: {
|
|
27297
|
-
page: cornerstoneMath.point.pageToPoint(e)
|
|
27298
|
-
},
|
|
27299
|
-
image: enable.image,
|
|
27300
|
-
buttons: getEventButtons(e)
|
|
27301
|
-
});
|
|
27302
|
-
}
|
|
27303
|
-
|
|
27304
|
-
external$k.cornerstone.updateImage(_this.elementCache);
|
|
27305
|
-
_this.elementCache = null;
|
|
27253
|
+
external$k.cornerstone.updateImage(_this.currentElement);
|
|
27306
27254
|
}
|
|
27307
27255
|
}
|
|
27308
27256
|
});
|
|
@@ -27312,12 +27260,9 @@ var PolygonTool = /*#__PURE__*/function (_BaseAnnotationPlusTo) {
|
|
|
27312
27260
|
createClass(PolygonTool, [{
|
|
27313
27261
|
key: "createNewMeasurement",
|
|
27314
27262
|
value: function createNewMeasurement(eventData) {
|
|
27315
|
-
var _eventData$
|
|
27316
|
-
x = _eventData$
|
|
27317
|
-
y = _eventData$
|
|
27318
|
-
var imageId = eventData.image.imageId; // 持续一次完整的多边形绘制
|
|
27319
|
-
|
|
27320
|
-
this.currentWadoUri = imageId;
|
|
27263
|
+
var _eventData$currentPoi = eventData.currentPoints.image,
|
|
27264
|
+
x = _eventData$currentPoi.x,
|
|
27265
|
+
y = _eventData$currentPoi.y;
|
|
27321
27266
|
return {
|
|
27322
27267
|
visible: true,
|
|
27323
27268
|
active: true,
|
|
@@ -27347,33 +27292,60 @@ var PolygonTool = /*#__PURE__*/function (_BaseAnnotationPlusTo) {
|
|
|
27347
27292
|
}
|
|
27348
27293
|
};
|
|
27349
27294
|
}
|
|
27295
|
+
/**
|
|
27296
|
+
* - create new tool data
|
|
27297
|
+
* - update未完成的tool data
|
|
27298
|
+
*/
|
|
27299
|
+
|
|
27350
27300
|
}, {
|
|
27351
27301
|
key: "addNewMeasurement",
|
|
27352
27302
|
value: function addNewMeasurement(evt, interactionType) {
|
|
27353
|
-
var _this2 = this;
|
|
27354
|
-
|
|
27355
|
-
// 单次测量数据产生期间不产生多余的测量
|
|
27356
|
-
if (!this.finishOnce) {
|
|
27357
|
-
return;
|
|
27358
|
-
}
|
|
27359
|
-
|
|
27360
|
-
this.finishOnce = false;
|
|
27361
27303
|
evt.preventDefault();
|
|
27362
27304
|
evt.stopPropagation();
|
|
27363
27305
|
var eventData = evt.detail;
|
|
27364
|
-
var
|
|
27306
|
+
var element = eventData.element; // 找到未绘制完毕的tool data
|
|
27365
27307
|
|
|
27366
|
-
|
|
27367
|
-
|
|
27308
|
+
var pendingMeasurement = this.getIncomplete(element);
|
|
27309
|
+
var measurementData;
|
|
27310
|
+
var currentPoint;
|
|
27311
|
+
this.isDrawing = true;
|
|
27312
|
+
this.currentElement = element;
|
|
27313
|
+
|
|
27314
|
+
if (pendingMeasurement) {
|
|
27315
|
+
measurementData = pendingMeasurement;
|
|
27316
|
+
measurementData.count++;
|
|
27317
|
+
var _eventData$currentPoi2 = eventData.currentPoints.image,
|
|
27318
|
+
x = _eventData$currentPoi2.x,
|
|
27319
|
+
y = _eventData$currentPoi2.y;
|
|
27320
|
+
measurementData.handles['point' + measurementData.count] = {
|
|
27321
|
+
x: x,
|
|
27322
|
+
y: y,
|
|
27323
|
+
highlight: true,
|
|
27324
|
+
active: false,
|
|
27325
|
+
isPoint: true
|
|
27326
|
+
};
|
|
27327
|
+
currentPoint = measurementData.handles['point' + measurementData.count];
|
|
27328
|
+
measurementData.invalidated = true;
|
|
27329
|
+
} else {
|
|
27330
|
+
measurementData = this.createNewMeasurement(eventData);
|
|
27331
|
+
addToolState$4(element, this.name, measurementData);
|
|
27332
|
+
currentPoint = measurementData.handles.point1;
|
|
27368
27333
|
}
|
|
27369
27334
|
|
|
27370
|
-
var measurementData = this.createNewMeasurement(eventData);
|
|
27371
|
-
var element = evt.detail.element;
|
|
27372
|
-
addToolState$4(element, this.name, measurementData);
|
|
27373
27335
|
external$k.cornerstone.updateImage(element);
|
|
27374
|
-
moveHandle(eventData, this.name, measurementData,
|
|
27375
|
-
|
|
27376
|
-
|
|
27336
|
+
moveHandle(eventData, this.name, measurementData, currentPoint, this.options, interactionType);
|
|
27337
|
+
}
|
|
27338
|
+
}, {
|
|
27339
|
+
key: "getIncomplete",
|
|
27340
|
+
value: function getIncomplete(element) {
|
|
27341
|
+
var toolState = getToolState$c(element, this.name);
|
|
27342
|
+
|
|
27343
|
+
if (toolState && Array.isArray(toolState.data)) {
|
|
27344
|
+
return toolState.data.find(function (_ref) {
|
|
27345
|
+
var complete = _ref.complete;
|
|
27346
|
+
return complete === false;
|
|
27347
|
+
});
|
|
27348
|
+
}
|
|
27377
27349
|
}
|
|
27378
27350
|
}, {
|
|
27379
27351
|
key: "updateCachedStats",
|
|
@@ -27406,7 +27378,6 @@ var PolygonTool = /*#__PURE__*/function (_BaseAnnotationPlusTo) {
|
|
|
27406
27378
|
|
|
27407
27379
|
if (vertices.length < 3) {
|
|
27408
27380
|
data.cachedStats = null;
|
|
27409
|
-
data.invalidated = false;
|
|
27410
27381
|
return;
|
|
27411
27382
|
} // 计算面积
|
|
27412
27383
|
|
|
@@ -27443,10 +27414,10 @@ var PolygonTool = /*#__PURE__*/function (_BaseAnnotationPlusTo) {
|
|
|
27443
27414
|
}, {
|
|
27444
27415
|
key: "renderToolData",
|
|
27445
27416
|
value: function renderToolData(evt) {
|
|
27446
|
-
var
|
|
27417
|
+
var _this2 = this;
|
|
27447
27418
|
|
|
27448
27419
|
var eventData = evt.detail;
|
|
27449
|
-
var toolData =
|
|
27420
|
+
var toolData = getToolState$c(evt.currentTarget, this.name);
|
|
27450
27421
|
|
|
27451
27422
|
if (!toolData) {
|
|
27452
27423
|
return;
|
|
@@ -27456,23 +27427,17 @@ var PolygonTool = /*#__PURE__*/function (_BaseAnnotationPlusTo) {
|
|
|
27456
27427
|
var image = eventData.image,
|
|
27457
27428
|
element = eventData.element; // 如果还在绘制进行中 提示esc退出工具
|
|
27458
27429
|
|
|
27459
|
-
if (
|
|
27430
|
+
if (this.isDrawing) {
|
|
27460
27431
|
var width = element.clientWidth;
|
|
27461
|
-
this.elementCache = eventData.element;
|
|
27462
27432
|
_default$h(context, '按ESC键结束多边形绘制', width / 2 - 100, 0, '#d06479', {
|
|
27463
27433
|
fontSize: 17
|
|
27464
27434
|
});
|
|
27435
|
+
} else {
|
|
27436
|
+
this.currentElement = null;
|
|
27465
27437
|
}
|
|
27466
27438
|
|
|
27467
27439
|
var _loop = function _loop(i) {
|
|
27468
|
-
var data = toolData.data[i];
|
|
27469
|
-
|
|
27470
|
-
if (_this3.finishOnce && !data.complete) {
|
|
27471
|
-
data.complete = true;
|
|
27472
|
-
delete data.handles['point' + data.count];
|
|
27473
|
-
data.count--;
|
|
27474
|
-
external$k.cornerstone.updateImage(element);
|
|
27475
|
-
}
|
|
27440
|
+
var data = toolData.data[i];
|
|
27476
27441
|
|
|
27477
27442
|
if (data.visible === false) {
|
|
27478
27443
|
return "continue";
|
|
@@ -27481,7 +27446,7 @@ var PolygonTool = /*#__PURE__*/function (_BaseAnnotationPlusTo) {
|
|
|
27481
27446
|
var color = toolColors$b.getColorIfActive(data);
|
|
27482
27447
|
var handles = data.handles; // 点的绘制
|
|
27483
27448
|
|
|
27484
|
-
var drawHandlesOnHover =
|
|
27449
|
+
var drawHandlesOnHover = _this2.configuration.drawHandlesOnHover;
|
|
27485
27450
|
var handleOptions = {
|
|
27486
27451
|
color: cornerstoneTools.toolColors.getActiveColor() === color ? color : 'transparent',
|
|
27487
27452
|
handleRadius: 2,
|
|
@@ -27523,14 +27488,14 @@ var PolygonTool = /*#__PURE__*/function (_BaseAnnotationPlusTo) {
|
|
|
27523
27488
|
if (data.invalidated === true) {
|
|
27524
27489
|
// 数据更新
|
|
27525
27490
|
if (data.cachedStats) {
|
|
27526
|
-
|
|
27491
|
+
_this2.throttledUpdateCachedStats(image, element, data);
|
|
27527
27492
|
} else {
|
|
27528
|
-
|
|
27493
|
+
_this2.updateCachedStats(image, element, data);
|
|
27529
27494
|
}
|
|
27530
27495
|
} // 文字绘制
|
|
27531
27496
|
|
|
27532
27497
|
|
|
27533
|
-
if (lines && lines.length > 2) {
|
|
27498
|
+
if (lines && lines.length > 2 && data.cachedStats) {
|
|
27534
27499
|
var seriesModule = external$k.cornerstone.metaData.get('generalSeriesModule', image.imageId) || {};
|
|
27535
27500
|
var modality = seriesModule.modality;
|
|
27536
27501
|
|
|
@@ -27565,7 +27530,7 @@ var PolygonTool = /*#__PURE__*/function (_BaseAnnotationPlusTo) {
|
|
|
27565
27530
|
return _findTextBoxAnchorPoints$2(handles.start, handles.end);
|
|
27566
27531
|
};
|
|
27567
27532
|
|
|
27568
|
-
var textBoxContent = _createTextBoxContent$2(context, image.color, data.cachedStats, modality, hasPixelSpacing,
|
|
27533
|
+
var textBoxContent = _createTextBoxContent$2(context, image.color, data.cachedStats, modality, hasPixelSpacing, _this2.configuration);
|
|
27569
27534
|
|
|
27570
27535
|
drawLinkedTextBox$7(context, element, data.handles.textBox, textBoxContent, mockHandles, textBoxAnchorPoints, color, lineWidth, 10, true);
|
|
27571
27536
|
}
|
|
@@ -27735,21 +27700,26 @@ function _findTextBoxAnchorPoints$2(startHandle, endHandle) {
|
|
|
27735
27700
|
}
|
|
27736
27701
|
|
|
27737
27702
|
function _createTextBoxContent$2(context, isColorImage) {
|
|
27738
|
-
var
|
|
27739
|
-
area =
|
|
27740
|
-
mean =
|
|
27741
|
-
stdDev =
|
|
27742
|
-
min =
|
|
27743
|
-
max =
|
|
27744
|
-
meanStdDevSUV =
|
|
27703
|
+
var _ref2 = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {},
|
|
27704
|
+
area = _ref2.area,
|
|
27705
|
+
mean = _ref2.mean,
|
|
27706
|
+
stdDev = _ref2.stdDev,
|
|
27707
|
+
min = _ref2.min,
|
|
27708
|
+
max = _ref2.max,
|
|
27709
|
+
meanStdDevSUV = _ref2.meanStdDevSUV;
|
|
27710
|
+
|
|
27711
|
+
var modality = arguments.length > 3 ? arguments[3] : undefined;
|
|
27745
27712
|
var hasPixelSpacing = arguments.length > 4 ? arguments[4] : undefined;
|
|
27713
|
+
var options = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : {};
|
|
27746
27714
|
var textLines = [];
|
|
27747
27715
|
textLines.push(formatArea(area, hasPixelSpacing));
|
|
27748
27716
|
|
|
27749
27717
|
if (!isColorImage) {
|
|
27750
|
-
var
|
|
27751
|
-
|
|
27752
|
-
|
|
27718
|
+
var unit = _getUnit$2(modality, options.showHounsfieldUnits);
|
|
27719
|
+
|
|
27720
|
+
var meanString = "Mean: ".concat(numbersWithCommas$2(mean.toFixed(1)), " ").concat(unit);
|
|
27721
|
+
var stdDevString = "StdDev: ".concat(numbersWithCommas$2(stdDev.toFixed(1)), " ").concat(unit);
|
|
27722
|
+
textLines.push("Min/Max: ".concat(min.toFixed(1), " ").concat(unit, " / ").concat(max.toFixed(1), " ").concat(unit));
|
|
27753
27723
|
textLines.push("".concat(meanString));
|
|
27754
27724
|
textLines.push("".concat(stdDevString));
|
|
27755
27725
|
}
|
|
@@ -27781,26 +27751,8 @@ function isInPolygon(point, points) {
|
|
|
27781
27751
|
return nCross % 2 === 1;
|
|
27782
27752
|
}
|
|
27783
27753
|
|
|
27784
|
-
function
|
|
27785
|
-
|
|
27786
|
-
return event.buttons;
|
|
27787
|
-
}
|
|
27788
|
-
|
|
27789
|
-
switch (event.which) {
|
|
27790
|
-
case 0:
|
|
27791
|
-
return 0;
|
|
27792
|
-
|
|
27793
|
-
case 1:
|
|
27794
|
-
return 1;
|
|
27795
|
-
|
|
27796
|
-
case 2:
|
|
27797
|
-
return 4;
|
|
27798
|
-
|
|
27799
|
-
case 3:
|
|
27800
|
-
return 2;
|
|
27801
|
-
}
|
|
27802
|
-
|
|
27803
|
-
return 0;
|
|
27754
|
+
function _getUnit$2(modality, showHounsfieldUnits) {
|
|
27755
|
+
return modality === 'CT' && showHounsfieldUnits !== false ? 'HU' : '';
|
|
27804
27756
|
}
|
|
27805
27757
|
|
|
27806
27758
|
(function () {
|
|
@@ -27813,7 +27765,6 @@ function getEventButtons(event) {
|
|
|
27813
27765
|
reactHotLoader.register(getNewContext$d, "getNewContext", "/Users/huyeqing/workspace/chainz/paladin/src/cornerstone-plus/cornerstone-tools-plus/PolygonTool.js");
|
|
27814
27766
|
reactHotLoader.register(drawLines$2, "drawLines", "/Users/huyeqing/workspace/chainz/paladin/src/cornerstone-plus/cornerstone-tools-plus/PolygonTool.js");
|
|
27815
27767
|
reactHotLoader.register(drawLinkedTextBox$7, "drawLinkedTextBox", "/Users/huyeqing/workspace/chainz/paladin/src/cornerstone-plus/cornerstone-tools-plus/PolygonTool.js");
|
|
27816
|
-
reactHotLoader.register(moveNewHandle$4, "moveNewHandle", "/Users/huyeqing/workspace/chainz/paladin/src/cornerstone-plus/cornerstone-tools-plus/PolygonTool.js");
|
|
27817
27768
|
reactHotLoader.register(moveHandle, "moveHandle", "/Users/huyeqing/workspace/chainz/paladin/src/cornerstone-plus/cornerstone-tools-plus/PolygonTool.js");
|
|
27818
27769
|
reactHotLoader.register(getLogger$3, "getLogger", "/Users/huyeqing/workspace/chainz/paladin/src/cornerstone-plus/cornerstone-tools-plus/PolygonTool.js");
|
|
27819
27770
|
reactHotLoader.register(throttle$7, "throttle", "/Users/huyeqing/workspace/chainz/paladin/src/cornerstone-plus/cornerstone-tools-plus/PolygonTool.js");
|
|
@@ -27821,13 +27772,12 @@ function getEventButtons(event) {
|
|
|
27821
27772
|
reactHotLoader.register(getROITextBoxCoords$2, "getROITextBoxCoords", "/Users/huyeqing/workspace/chainz/paladin/src/cornerstone-plus/cornerstone-tools-plus/PolygonTool.js");
|
|
27822
27773
|
reactHotLoader.register(numbersWithCommas$2, "numbersWithCommas", "/Users/huyeqing/workspace/chainz/paladin/src/cornerstone-plus/cornerstone-tools-plus/PolygonTool.js");
|
|
27823
27774
|
reactHotLoader.register(lineSegDistance$5, "lineSegDistance", "/Users/huyeqing/workspace/chainz/paladin/src/cornerstone-plus/cornerstone-tools-plus/PolygonTool.js");
|
|
27824
|
-
reactHotLoader.register(triggerEvent$3, "triggerEvent", "/Users/huyeqing/workspace/chainz/paladin/src/cornerstone-plus/cornerstone-tools-plus/PolygonTool.js");
|
|
27825
27775
|
reactHotLoader.register(logger$8, "logger", "/Users/huyeqing/workspace/chainz/paladin/src/cornerstone-plus/cornerstone-tools-plus/PolygonTool.js");
|
|
27826
27776
|
reactHotLoader.register(external$k, "external", "/Users/huyeqing/workspace/chainz/paladin/src/cornerstone-plus/cornerstone-tools-plus/PolygonTool.js");
|
|
27827
27777
|
reactHotLoader.register(addToolState$4, "addToolState", "/Users/huyeqing/workspace/chainz/paladin/src/cornerstone-plus/cornerstone-tools-plus/PolygonTool.js");
|
|
27828
27778
|
reactHotLoader.register(toolColors$b, "toolColors", "/Users/huyeqing/workspace/chainz/paladin/src/cornerstone-plus/cornerstone-tools-plus/PolygonTool.js");
|
|
27829
27779
|
reactHotLoader.register(toolStyle$6, "toolStyle", "/Users/huyeqing/workspace/chainz/paladin/src/cornerstone-plus/cornerstone-tools-plus/PolygonTool.js");
|
|
27830
|
-
reactHotLoader.register(
|
|
27780
|
+
reactHotLoader.register(getToolState$c, "getToolState", "/Users/huyeqing/workspace/chainz/paladin/src/cornerstone-plus/cornerstone-tools-plus/PolygonTool.js");
|
|
27831
27781
|
reactHotLoader.register(PolygonTool, "PolygonTool", "/Users/huyeqing/workspace/chainz/paladin/src/cornerstone-plus/cornerstone-tools-plus/PolygonTool.js");
|
|
27832
27782
|
reactHotLoader.register(calculatePolygonStatistics, "calculatePolygonStatistics", "/Users/huyeqing/workspace/chainz/paladin/src/cornerstone-plus/cornerstone-tools-plus/PolygonTool.js");
|
|
27833
27783
|
reactHotLoader.register(_getPolygonImageCoordinates, "_getPolygonImageCoordinates", "/Users/huyeqing/workspace/chainz/paladin/src/cornerstone-plus/cornerstone-tools-plus/PolygonTool.js");
|
|
@@ -27835,7 +27785,7 @@ function getEventButtons(event) {
|
|
|
27835
27785
|
reactHotLoader.register(_createTextBoxContent$2, "_createTextBoxContent", "/Users/huyeqing/workspace/chainz/paladin/src/cornerstone-plus/cornerstone-tools-plus/PolygonTool.js");
|
|
27836
27786
|
reactHotLoader.register(formatArea, "formatArea", "/Users/huyeqing/workspace/chainz/paladin/src/cornerstone-plus/cornerstone-tools-plus/PolygonTool.js");
|
|
27837
27787
|
reactHotLoader.register(isInPolygon, "isInPolygon", "/Users/huyeqing/workspace/chainz/paladin/src/cornerstone-plus/cornerstone-tools-plus/PolygonTool.js");
|
|
27838
|
-
reactHotLoader.register(
|
|
27788
|
+
reactHotLoader.register(_getUnit$2, "_getUnit", "/Users/huyeqing/workspace/chainz/paladin/src/cornerstone-plus/cornerstone-tools-plus/PolygonTool.js");
|
|
27839
27789
|
})();
|
|
27840
27790
|
|
|
27841
27791
|
(function () {
|
|
@@ -27851,10 +27801,10 @@ function getEventButtons(event) {
|
|
|
27851
27801
|
var __signature__$1I = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.default.signature : function (a) {
|
|
27852
27802
|
return a;
|
|
27853
27803
|
};
|
|
27854
|
-
var getToolState$
|
|
27804
|
+
var getToolState$d = cornerstoneTools.getToolState;
|
|
27855
27805
|
|
|
27856
27806
|
var _default$x = function _default(element) {
|
|
27857
|
-
var toolData = getToolState$
|
|
27807
|
+
var toolData = getToolState$d(element, 'stack');
|
|
27858
27808
|
|
|
27859
27809
|
if (!toolData || !toolData.data || !toolData.data.length) {
|
|
27860
27810
|
return;
|
|
@@ -27871,7 +27821,7 @@ var _default$x = function _default(element) {
|
|
|
27871
27821
|
return;
|
|
27872
27822
|
}
|
|
27873
27823
|
|
|
27874
|
-
reactHotLoader.register(getToolState$
|
|
27824
|
+
reactHotLoader.register(getToolState$d, "getToolState", "/Users/huyeqing/workspace/chainz/paladin/src/cornerstone-plus/cornerstone-tools-plus/custom/getImagesLength.js");
|
|
27875
27825
|
reactHotLoader.register(_default$x, "default", "/Users/huyeqing/workspace/chainz/paladin/src/cornerstone-plus/cornerstone-tools-plus/custom/getImagesLength.js");
|
|
27876
27826
|
})();
|
|
27877
27827
|
|
|
@@ -27889,7 +27839,7 @@ var __signature__$1J = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoa
|
|
|
27889
27839
|
return a;
|
|
27890
27840
|
};
|
|
27891
27841
|
var scrollToIndex$1 = cornerstoneTools.importInternal('util/scrollToIndex');
|
|
27892
|
-
var getToolState$
|
|
27842
|
+
var getToolState$e = cornerstoneTools.getToolState;
|
|
27893
27843
|
var globalCineTimer;
|
|
27894
27844
|
|
|
27895
27845
|
function startAutoCine(activeElement, options) {
|
|
@@ -27901,7 +27851,7 @@ function startAutoCine(activeElement, options) {
|
|
|
27901
27851
|
globalCineTimer = null;
|
|
27902
27852
|
}
|
|
27903
27853
|
|
|
27904
|
-
var toolData = getToolState$
|
|
27854
|
+
var toolData = getToolState$e(activeElement, 'stack');
|
|
27905
27855
|
|
|
27906
27856
|
if (!toolData || !toolData.data || !toolData.data.length) {
|
|
27907
27857
|
return;
|
|
@@ -27946,7 +27896,7 @@ var _default$y = {
|
|
|
27946
27896
|
}
|
|
27947
27897
|
|
|
27948
27898
|
reactHotLoader.register(scrollToIndex$1, "scrollToIndex", "/Users/huyeqing/workspace/chainz/paladin/src/cornerstone-plus/cornerstone-tools-plus/custom/autoCine.js");
|
|
27949
|
-
reactHotLoader.register(getToolState$
|
|
27899
|
+
reactHotLoader.register(getToolState$e, "getToolState", "/Users/huyeqing/workspace/chainz/paladin/src/cornerstone-plus/cornerstone-tools-plus/custom/autoCine.js");
|
|
27950
27900
|
reactHotLoader.register(globalCineTimer, "globalCineTimer", "/Users/huyeqing/workspace/chainz/paladin/src/cornerstone-plus/cornerstone-tools-plus/custom/autoCine.js");
|
|
27951
27901
|
reactHotLoader.register(startAutoCine, "startAutoCine", "/Users/huyeqing/workspace/chainz/paladin/src/cornerstone-plus/cornerstone-tools-plus/custom/autoCine.js");
|
|
27952
27902
|
reactHotLoader.register(stopAutoCine, "stopAutoCine", "/Users/huyeqing/workspace/chainz/paladin/src/cornerstone-plus/cornerstone-tools-plus/custom/autoCine.js");
|
|
@@ -28407,7 +28357,7 @@ var _default$A = function _default(synchronizer, sourceElement, targetElement, e
|
|
|
28407
28357
|
var __signature__$1M = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.default.signature : function (a) {
|
|
28408
28358
|
return a;
|
|
28409
28359
|
};
|
|
28410
|
-
var getToolState$
|
|
28360
|
+
var getToolState$f = cornerstoneTools.getToolState;
|
|
28411
28361
|
/**
|
|
28412
28362
|
* Propogate scrolling actions from the source element to the target element.
|
|
28413
28363
|
* @export
|
|
@@ -28465,7 +28415,7 @@ var _default$B = function _default(synchronizer, sourceElement, targetElement, e
|
|
|
28465
28415
|
return;
|
|
28466
28416
|
}
|
|
28467
28417
|
|
|
28468
|
-
reactHotLoader.register(getToolState$
|
|
28418
|
+
reactHotLoader.register(getToolState$f, "getToolState", "/Users/huyeqing/workspace/chainz/paladin/src/cornerstone-plus/cornerstone-tools-plus/synchronization/stackScrollSynchronizer.js");
|
|
28469
28419
|
reactHotLoader.register(_default$B, "default", "/Users/huyeqing/workspace/chainz/paladin/src/cornerstone-plus/cornerstone-tools-plus/synchronization/stackScrollSynchronizer.js");
|
|
28470
28420
|
})();
|
|
28471
28421
|
|
|
@@ -49108,7 +49058,7 @@ function _arrayLikeToArray$b(arr, len) { if (len == null || len > arr.length) le
|
|
|
49108
49058
|
var __signature__$31 = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.default.signature : function (a) {
|
|
49109
49059
|
return a;
|
|
49110
49060
|
};
|
|
49111
|
-
var triggerEvent$
|
|
49061
|
+
var triggerEvent$3 = _default$E.importInternal('util/triggerEvent');
|
|
49112
49062
|
/**
|
|
49113
49063
|
*
|
|
49114
49064
|
* 每次click 都会检查, 目前比较损耗性能.
|
|
@@ -49141,13 +49091,13 @@ function checkAndUnLockToolState(evt, checkIsSelf) {
|
|
|
49141
49091
|
continue;
|
|
49142
49092
|
}
|
|
49143
49093
|
|
|
49144
|
-
triggerEvent$
|
|
49094
|
+
triggerEvent$3(enabledElement.element, _default$E.EVENTS.MOUSE_UP, {
|
|
49145
49095
|
element: enabledElement.element,
|
|
49146
49096
|
currentPoints: {
|
|
49147
49097
|
page: cornerstoneMath.point.pageToPoint(evt)
|
|
49148
49098
|
},
|
|
49149
49099
|
image: enabledElement.image,
|
|
49150
|
-
buttons: getEventButtons
|
|
49100
|
+
buttons: getEventButtons(evt)
|
|
49151
49101
|
});
|
|
49152
49102
|
cornerstone.updateImage(enabledElement.element);
|
|
49153
49103
|
console.log('---------异常数据, 处理完毕---------');
|
|
@@ -49223,7 +49173,7 @@ function getActiveToolStateElement() {
|
|
|
49223
49173
|
}
|
|
49224
49174
|
}
|
|
49225
49175
|
|
|
49226
|
-
function getEventButtons
|
|
49176
|
+
function getEventButtons(event) {
|
|
49227
49177
|
if (typeof event.buttons === 'number') {
|
|
49228
49178
|
return event.buttons;
|
|
49229
49179
|
}
|
|
@@ -49249,6 +49199,52 @@ function getEventButtons$1(event) {
|
|
|
49249
49199
|
return 0;
|
|
49250
49200
|
}
|
|
49251
49201
|
|
|
49202
|
+
function autoFinishPolygon() {
|
|
49203
|
+
try {
|
|
49204
|
+
fireKeyEvent(document.body, 'keyup', 27);
|
|
49205
|
+
console.log('---------自动结束多边形绘制---------');
|
|
49206
|
+
} catch (e) {
|
|
49207
|
+
console.log('---------自动结束多边形绘制失败---------', e);
|
|
49208
|
+
}
|
|
49209
|
+
}
|
|
49210
|
+
|
|
49211
|
+
function fireKeyEvent(el, evtType, keyCode) {
|
|
49212
|
+
var doc = el.ownerDocument,
|
|
49213
|
+
win = doc.defaultView || doc.parentWindow,
|
|
49214
|
+
evtObj;
|
|
49215
|
+
|
|
49216
|
+
if (doc.createEvent) {
|
|
49217
|
+
if (win.KeyEvent) {
|
|
49218
|
+
evtObj = doc.createEvent('KeyEvents');
|
|
49219
|
+
evtObj.initKeyEvent(evtType, true, true, win, false, false, false, false, keyCode, 0);
|
|
49220
|
+
} else {
|
|
49221
|
+
evtObj = doc.createEvent('UIEvents');
|
|
49222
|
+
Object.defineProperty(evtObj, 'keyCode', {
|
|
49223
|
+
get: function get() {
|
|
49224
|
+
return this.keyCodeVal;
|
|
49225
|
+
}
|
|
49226
|
+
});
|
|
49227
|
+
Object.defineProperty(evtObj, 'which', {
|
|
49228
|
+
get: function get() {
|
|
49229
|
+
return this.keyCodeVal;
|
|
49230
|
+
}
|
|
49231
|
+
});
|
|
49232
|
+
evtObj.initUIEvent(evtType, true, true, win, 1);
|
|
49233
|
+
evtObj.keyCodeVal = keyCode;
|
|
49234
|
+
|
|
49235
|
+
if (evtObj.keyCode !== keyCode) {
|
|
49236
|
+
console.log("keyCode " + evtObj.keyCode + " 和 (" + evtObj.which + ") 不匹配");
|
|
49237
|
+
}
|
|
49238
|
+
}
|
|
49239
|
+
|
|
49240
|
+
el.dispatchEvent(evtObj);
|
|
49241
|
+
} else if (doc.createEventObject) {
|
|
49242
|
+
evtObj = doc.createEventObject();
|
|
49243
|
+
evtObj.keyCode = keyCode;
|
|
49244
|
+
el.fireEvent('on' + evtType, evtObj);
|
|
49245
|
+
}
|
|
49246
|
+
}
|
|
49247
|
+
|
|
49252
49248
|
(function () {
|
|
49253
49249
|
var reactHotLoader = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.default : undefined;
|
|
49254
49250
|
|
|
@@ -49256,10 +49252,12 @@ function getEventButtons$1(event) {
|
|
|
49256
49252
|
return;
|
|
49257
49253
|
}
|
|
49258
49254
|
|
|
49259
|
-
reactHotLoader.register(triggerEvent$
|
|
49255
|
+
reactHotLoader.register(triggerEvent$3, "triggerEvent", "/Users/huyeqing/workspace/chainz/paladin/src/cornerstone-plus/cornerstone-tools-plus/util/unlockToolState.js");
|
|
49260
49256
|
reactHotLoader.register(checkAndUnLockToolState, "checkAndUnLockToolState", "/Users/huyeqing/workspace/chainz/paladin/src/cornerstone-plus/cornerstone-tools-plus/util/unlockToolState.js");
|
|
49261
49257
|
reactHotLoader.register(getActiveToolStateElement, "getActiveToolStateElement", "/Users/huyeqing/workspace/chainz/paladin/src/cornerstone-plus/cornerstone-tools-plus/util/unlockToolState.js");
|
|
49262
|
-
reactHotLoader.register(getEventButtons
|
|
49258
|
+
reactHotLoader.register(getEventButtons, "getEventButtons", "/Users/huyeqing/workspace/chainz/paladin/src/cornerstone-plus/cornerstone-tools-plus/util/unlockToolState.js");
|
|
49259
|
+
reactHotLoader.register(autoFinishPolygon, "autoFinishPolygon", "/Users/huyeqing/workspace/chainz/paladin/src/cornerstone-plus/cornerstone-tools-plus/util/unlockToolState.js");
|
|
49260
|
+
reactHotLoader.register(fireKeyEvent, "fireKeyEvent", "/Users/huyeqing/workspace/chainz/paladin/src/cornerstone-plus/cornerstone-tools-plus/util/unlockToolState.js");
|
|
49263
49261
|
})();
|
|
49264
49262
|
|
|
49265
49263
|
(function () {
|
|
@@ -49794,7 +49792,7 @@ var DicomViewport = /*#__PURE__*/function (_Component) {
|
|
|
49794
49792
|
};
|
|
49795
49793
|
});
|
|
49796
49794
|
|
|
49797
|
-
defineProperty(assertThisInitialized(_this), "setActiveTool", function (activeTool) {
|
|
49795
|
+
defineProperty(assertThisInitialized(_this), "setActiveTool", function (activeTool, prevTool) {
|
|
49798
49796
|
var leftMouseToolNames = _this.availableTools.filter(function (tool) {
|
|
49799
49797
|
if (!tool.mouseButtonMasks) {
|
|
49800
49798
|
return;
|
|
@@ -49846,6 +49844,27 @@ var DicomViewport = /*#__PURE__*/function (_Component) {
|
|
|
49846
49844
|
} else {
|
|
49847
49845
|
_default$E.clearToolState(_this.element, 'CrosshairsMPR');
|
|
49848
49846
|
}
|
|
49847
|
+
} // 从多边形工具切换到了别的工具,要手动结束掉未完成的绘制
|
|
49848
|
+
|
|
49849
|
+
|
|
49850
|
+
if (prevTool && prevTool === 'Polygon') {
|
|
49851
|
+
var needAutoFinish = false;
|
|
49852
|
+
|
|
49853
|
+
var _toolData = _default$E.getToolState(_this.element, 'Polygon');
|
|
49854
|
+
|
|
49855
|
+
if (_toolData && _toolData.data && _toolData.data.length > 0) {
|
|
49856
|
+
for (var i = 0; i < _toolData.data.length; i++) {
|
|
49857
|
+
if (!_toolData.data[i].complete) {
|
|
49858
|
+
_toolData.data[i].complete = true;
|
|
49859
|
+
needAutoFinish = true;
|
|
49860
|
+
}
|
|
49861
|
+
}
|
|
49862
|
+
}
|
|
49863
|
+
|
|
49864
|
+
if (needAutoFinish) {
|
|
49865
|
+
autoFinishPolygon();
|
|
49866
|
+
cornerstone.updateImage(_this.element);
|
|
49867
|
+
}
|
|
49849
49868
|
}
|
|
49850
49869
|
});
|
|
49851
49870
|
|
|
@@ -50777,7 +50796,7 @@ var DicomViewport = /*#__PURE__*/function (_Component) {
|
|
|
50777
50796
|
break;
|
|
50778
50797
|
|
|
50779
50798
|
case prevProps.activeTool !== this.props.activeTool:
|
|
50780
|
-
this.setActiveTool(this.props.activeTool);
|
|
50799
|
+
this.setActiveTool(this.props.activeTool, prevProps.activeTool);
|
|
50781
50800
|
break;
|
|
50782
50801
|
|
|
50783
50802
|
case prevProps.activeIndex !== this.props.activeIndex:
|