@cornerstonejs/core 0.33.2 → 0.35.0

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 (105) hide show
  1. package/dist/cjs/RenderingEngine/StackViewport.js +17 -18
  2. package/dist/cjs/RenderingEngine/StackViewport.js.map +1 -1
  3. package/dist/cjs/RenderingEngine/helpers/createVolumeMapper.js +4 -0
  4. package/dist/cjs/RenderingEngine/helpers/createVolumeMapper.js.map +1 -1
  5. package/dist/cjs/RenderingEngine/helpers/setDefaultVolumeVOI.js +0 -16
  6. package/dist/cjs/RenderingEngine/helpers/setDefaultVolumeVOI.js.map +1 -1
  7. package/dist/cjs/RenderingEngine/vtkClasses/vtkStreamingOpenGLTexture.js +23 -3
  8. package/dist/cjs/RenderingEngine/vtkClasses/vtkStreamingOpenGLTexture.js.map +1 -1
  9. package/dist/cjs/RenderingEngine/vtkClasses/vtkStreamingOpenGLVolumeMapper.js +1 -0
  10. package/dist/cjs/RenderingEngine/vtkClasses/vtkStreamingOpenGLVolumeMapper.js.map +1 -1
  11. package/dist/cjs/index.d.ts +2 -2
  12. package/dist/cjs/index.js +3 -1
  13. package/dist/cjs/index.js.map +1 -1
  14. package/dist/cjs/init.d.ts +5 -2
  15. package/dist/cjs/init.js +58 -13
  16. package/dist/cjs/init.js.map +1 -1
  17. package/dist/cjs/loaders/volumeLoader.d.ts +2 -2
  18. package/dist/cjs/loaders/volumeLoader.js +13 -2
  19. package/dist/cjs/loaders/volumeLoader.js.map +1 -1
  20. package/dist/cjs/types/Cornerstone3DConfig.d.ts +9 -0
  21. package/dist/cjs/types/Cornerstone3DConfig.js +3 -0
  22. package/dist/cjs/types/Cornerstone3DConfig.js.map +1 -0
  23. package/dist/cjs/types/IImageData.d.ts +1 -1
  24. package/dist/cjs/types/IVolume.d.ts +1 -1
  25. package/dist/cjs/types/index.d.ts +2 -1
  26. package/dist/cjs/utilities/createInt16SharedArray.d.ts +2 -0
  27. package/dist/cjs/utilities/createInt16SharedArray.js +14 -0
  28. package/dist/cjs/utilities/createInt16SharedArray.js.map +1 -0
  29. package/dist/cjs/utilities/createUInt16SharedArray.d.ts +2 -0
  30. package/dist/cjs/utilities/createUInt16SharedArray.js +14 -0
  31. package/dist/cjs/utilities/createUInt16SharedArray.js.map +1 -0
  32. package/dist/cjs/utilities/deepMerge.d.ts +2 -0
  33. package/dist/cjs/utilities/deepMerge.js +63 -0
  34. package/dist/cjs/utilities/deepMerge.js.map +1 -0
  35. package/dist/cjs/utilities/getScalarDataType.d.ts +2 -0
  36. package/dist/cjs/utilities/getScalarDataType.js +23 -0
  37. package/dist/cjs/utilities/getScalarDataType.js.map +1 -0
  38. package/dist/cjs/utilities/getScalingParameters.d.ts +2 -0
  39. package/dist/cjs/utilities/getScalingParameters.js +21 -0
  40. package/dist/cjs/utilities/getScalingParameters.js.map +1 -0
  41. package/dist/cjs/utilities/getVolumeSliceRangeInfo.d.ts +7 -0
  42. package/dist/cjs/utilities/getVolumeSliceRangeInfo.js +29 -0
  43. package/dist/cjs/utilities/getVolumeSliceRangeInfo.js.map +1 -0
  44. package/dist/cjs/utilities/getVolumeViewportScrollInfo.d.ts +6 -0
  45. package/dist/cjs/utilities/getVolumeViewportScrollInfo.js +17 -0
  46. package/dist/cjs/utilities/getVolumeViewportScrollInfo.js.map +1 -0
  47. package/dist/cjs/utilities/index.d.ts +8 -1
  48. package/dist/cjs/utilities/index.js +15 -1
  49. package/dist/cjs/utilities/index.js.map +1 -1
  50. package/dist/cjs/utilities/loadImageToCanvas.js +0 -5
  51. package/dist/cjs/utilities/loadImageToCanvas.js.map +1 -1
  52. package/dist/esm/RenderingEngine/StackViewport.js +14 -15
  53. package/dist/esm/RenderingEngine/StackViewport.js.map +1 -1
  54. package/dist/esm/RenderingEngine/helpers/createVolumeMapper.js +4 -0
  55. package/dist/esm/RenderingEngine/helpers/createVolumeMapper.js.map +1 -1
  56. package/dist/esm/RenderingEngine/helpers/setDefaultVolumeVOI.js +0 -16
  57. package/dist/esm/RenderingEngine/helpers/setDefaultVolumeVOI.js.map +1 -1
  58. package/dist/esm/RenderingEngine/vtkClasses/vtkStreamingOpenGLTexture.js +23 -3
  59. package/dist/esm/RenderingEngine/vtkClasses/vtkStreamingOpenGLTexture.js.map +1 -1
  60. package/dist/esm/RenderingEngine/vtkClasses/vtkStreamingOpenGLVolumeMapper.js +1 -0
  61. package/dist/esm/RenderingEngine/vtkClasses/vtkStreamingOpenGLVolumeMapper.js.map +1 -1
  62. package/dist/esm/index.d.ts +2 -2
  63. package/dist/esm/index.js +2 -2
  64. package/dist/esm/index.js.map +1 -1
  65. package/dist/esm/init.d.ts +5 -2
  66. package/dist/esm/init.js +56 -13
  67. package/dist/esm/init.js.map +1 -1
  68. package/dist/esm/loaders/volumeLoader.d.ts +2 -2
  69. package/dist/esm/loaders/volumeLoader.js +13 -2
  70. package/dist/esm/loaders/volumeLoader.js.map +1 -1
  71. package/dist/esm/types/Cornerstone3DConfig.d.ts +9 -0
  72. package/dist/esm/types/Cornerstone3DConfig.js +2 -0
  73. package/dist/esm/types/Cornerstone3DConfig.js.map +1 -0
  74. package/dist/esm/types/IImageData.d.ts +1 -1
  75. package/dist/esm/types/IVolume.d.ts +1 -1
  76. package/dist/esm/types/index.d.ts +2 -1
  77. package/dist/esm/utilities/createInt16SharedArray.d.ts +2 -0
  78. package/dist/esm/utilities/createInt16SharedArray.js +12 -0
  79. package/dist/esm/utilities/createInt16SharedArray.js.map +1 -0
  80. package/dist/esm/utilities/createUInt16SharedArray.d.ts +2 -0
  81. package/dist/esm/utilities/createUInt16SharedArray.js +12 -0
  82. package/dist/esm/utilities/createUInt16SharedArray.js.map +1 -0
  83. package/dist/esm/utilities/deepMerge.d.ts +2 -0
  84. package/dist/esm/utilities/deepMerge.js +61 -0
  85. package/dist/esm/utilities/deepMerge.js.map +1 -0
  86. package/dist/esm/utilities/getScalarDataType.d.ts +2 -0
  87. package/dist/esm/utilities/getScalarDataType.js +20 -0
  88. package/dist/esm/utilities/getScalarDataType.js.map +1 -0
  89. package/dist/esm/utilities/getScalingParameters.d.ts +2 -0
  90. package/dist/esm/utilities/getScalingParameters.js +21 -0
  91. package/dist/esm/utilities/getScalingParameters.js.map +1 -0
  92. package/dist/esm/utilities/getVolumeSliceRangeInfo.d.ts +7 -0
  93. package/dist/esm/utilities/getVolumeSliceRangeInfo.js +24 -0
  94. package/dist/esm/utilities/getVolumeSliceRangeInfo.js.map +1 -0
  95. package/dist/esm/utilities/getVolumeViewportScrollInfo.d.ts +6 -0
  96. package/dist/esm/utilities/getVolumeViewportScrollInfo.js +12 -0
  97. package/dist/esm/utilities/getVolumeViewportScrollInfo.js.map +1 -0
  98. package/dist/esm/utilities/index.d.ts +8 -1
  99. package/dist/esm/utilities/index.js +8 -1
  100. package/dist/esm/utilities/index.js.map +1 -1
  101. package/dist/esm/utilities/loadImageToCanvas.js +0 -5
  102. package/dist/esm/utilities/loadImageToCanvas.js.map +1 -1
  103. package/dist/umd/index.js +1 -1
  104. package/dist/umd/index.js.map +1 -1
  105. package/package.json +2 -2
@@ -1,5 +1,6 @@
1
1
  import { SharedArrayBufferModes } from './enums';
2
- declare function init(defaultConfiguration?: {}): Promise<boolean>;
2
+ import { Cornerstone3DConfig } from './types';
3
+ declare function init(configuration?: {}): Promise<boolean>;
3
4
  declare function setUseCPURendering(status: boolean): void;
4
5
  declare function resetUseCPURendering(): void;
5
6
  declare function getShouldUseCPURendering(): boolean;
@@ -7,4 +8,6 @@ declare function setUseSharedArrayBuffer(mode: SharedArrayBufferModes | boolean)
7
8
  declare function resetUseSharedArrayBuffer(): void;
8
9
  declare function getShouldUseSharedArrayBuffer(): boolean;
9
10
  declare function isCornerstoneInitialized(): boolean;
10
- export { init, getShouldUseCPURendering, getShouldUseSharedArrayBuffer, isCornerstoneInitialized, setUseCPURendering, setUseSharedArrayBuffer, resetUseCPURendering, resetUseSharedArrayBuffer, };
11
+ declare function getConfiguration(): Cornerstone3DConfig;
12
+ declare function setConfiguration(c: Cornerstone3DConfig): void;
13
+ export { init, getShouldUseCPURendering, getShouldUseSharedArrayBuffer, isCornerstoneInitialized, setUseCPURendering, setUseSharedArrayBuffer, resetUseCPURendering, resetUseSharedArrayBuffer, getConfiguration, setConfiguration, };
package/dist/cjs/init.js CHANGED
@@ -9,18 +9,43 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
9
9
  });
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.resetUseSharedArrayBuffer = exports.resetUseCPURendering = exports.setUseSharedArrayBuffer = exports.setUseCPURendering = exports.isCornerstoneInitialized = exports.getShouldUseSharedArrayBuffer = exports.getShouldUseCPURendering = exports.init = void 0;
12
+ exports.setConfiguration = exports.getConfiguration = exports.resetUseSharedArrayBuffer = exports.resetUseCPURendering = exports.setUseSharedArrayBuffer = exports.setUseCPURendering = exports.isCornerstoneInitialized = exports.getShouldUseSharedArrayBuffer = exports.getShouldUseCPURendering = exports.init = void 0;
13
13
  const detect_gpu_1 = require("detect-gpu");
14
14
  const enums_1 = require("./enums");
15
15
  let csRenderInitialized = false;
16
- let useCPURendering = false;
17
16
  let useSharedArrayBuffer = true;
18
17
  let sharedArrayBufferMode = enums_1.SharedArrayBufferModes.TRUE;
19
- function hasActiveWebGLContext() {
18
+ const utilities_1 = require("./utilities");
19
+ const defaultConfig = {
20
+ detectGPU: {},
21
+ rendering: {
22
+ preferSizeOverAccuracy: false,
23
+ useCPURendering: false,
24
+ useNorm16Texture: false,
25
+ },
26
+ };
27
+ let config = {
28
+ detectGPU: {},
29
+ rendering: {
30
+ preferSizeOverAccuracy: false,
31
+ useCPURendering: false,
32
+ useNorm16Texture: false,
33
+ },
34
+ };
35
+ function _getGLContext() {
20
36
  const canvas = document.createElement('canvas');
21
- const gl = canvas.getContext('webgl') || canvas.getContext('experimental-webgl');
22
- if (gl && gl instanceof WebGLRenderingContext) {
23
- return true;
37
+ const gl = canvas.getContext('webgl2') ||
38
+ canvas.getContext('webgl') ||
39
+ canvas.getContext('experimental-webgl');
40
+ return gl;
41
+ }
42
+ function _hasActiveWebGLContext() {
43
+ const gl = _getGLContext();
44
+ if (gl && gl.getExtension) {
45
+ const ext = gl.getExtension('EXT_texture_norm16');
46
+ if (ext) {
47
+ return true;
48
+ }
24
49
  }
25
50
  return false;
26
51
  }
@@ -37,22 +62,34 @@ function hasSharedArrayBuffer() {
37
62
  return false;
38
63
  }
39
64
  }
40
- function init(defaultConfiguration = {}) {
65
+ function _hasNorm16TextureSupport() {
66
+ const gl = _getGLContext();
67
+ if (gl) {
68
+ const ext = gl.getExtension('EXT_texture_norm16');
69
+ if (ext) {
70
+ return true;
71
+ }
72
+ }
73
+ return false;
74
+ }
75
+ function init(configuration = {}) {
41
76
  return __awaiter(this, void 0, void 0, function* () {
42
77
  if (csRenderInitialized) {
43
78
  return csRenderInitialized;
44
79
  }
45
- const hasWebGLContext = hasActiveWebGLContext();
80
+ config = (0, utilities_1.deepMerge)(defaultConfig, configuration);
81
+ const hasWebGLContext = _hasActiveWebGLContext();
46
82
  if (!hasWebGLContext) {
47
- useCPURendering = true;
48
83
  console.log('CornerstoneRender: GPU not detected, using CPU rendering');
84
+ config.rendering.useCPURendering = true;
49
85
  }
50
86
  else {
51
87
  const gpuTier = yield (0, detect_gpu_1.getGPUTier)();
88
+ config.detectGPU = gpuTier;
52
89
  console.log('CornerstoneRender: Using detect-gpu to get the GPU benchmark:', gpuTier);
53
90
  if (gpuTier.tier < 1) {
54
91
  console.log('CornerstoneRender: GPU is not powerful enough, using CPU rendering');
55
- useCPURendering = true;
92
+ config.rendering.useCPURendering = true;
56
93
  }
57
94
  else {
58
95
  console.log('CornerstoneRender: using GPU rendering');
@@ -65,16 +102,16 @@ function init(defaultConfiguration = {}) {
65
102
  }
66
103
  exports.init = init;
67
104
  function setUseCPURendering(status) {
68
- useCPURendering = status;
105
+ config.rendering.useCPURendering = status;
69
106
  csRenderInitialized = true;
70
107
  }
71
108
  exports.setUseCPURendering = setUseCPURendering;
72
109
  function resetUseCPURendering() {
73
- useCPURendering = !hasActiveWebGLContext();
110
+ config.rendering.useCPURendering = !_hasActiveWebGLContext();
74
111
  }
75
112
  exports.resetUseCPURendering = resetUseCPURendering;
76
113
  function getShouldUseCPURendering() {
77
- return useCPURendering;
114
+ return config.rendering.useCPURendering;
78
115
  }
79
116
  exports.getShouldUseCPURendering = getShouldUseCPURendering;
80
117
  function setUseSharedArrayBuffer(mode) {
@@ -116,4 +153,12 @@ function isCornerstoneInitialized() {
116
153
  return csRenderInitialized;
117
154
  }
118
155
  exports.isCornerstoneInitialized = isCornerstoneInitialized;
156
+ function getConfiguration() {
157
+ return config;
158
+ }
159
+ exports.getConfiguration = getConfiguration;
160
+ function setConfiguration(c) {
161
+ config = c;
162
+ }
163
+ exports.setConfiguration = setConfiguration;
119
164
  //# sourceMappingURL=init.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/init.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/init.ts"],"names":[],"mappings":"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"}
@@ -8,12 +8,12 @@ interface VolumeLoaderOptions {
8
8
  interface DerivedVolumeOptions {
9
9
  volumeId: string;
10
10
  targetBuffer?: {
11
- type: 'Float32Array' | 'Uint8Array';
11
+ type: 'Float32Array' | 'Uint8Array' | 'Uint16Array' | 'Int16Array';
12
12
  sharedArrayBuffer?: boolean;
13
13
  };
14
14
  }
15
15
  interface LocalVolumeOptions {
16
- scalarData: Float32Array | Uint8Array;
16
+ scalarData: Float32Array | Uint8Array | Uint16Array | Int16Array;
17
17
  metadata: Metadata;
18
18
  dimensions: Point3;
19
19
  spacing: Point3;
@@ -140,6 +140,14 @@ function createAndCacheDerivedVolume(referencedVolumeId, options) {
140
140
  numBytes = scalarLength;
141
141
  TypedArray = Uint8Array;
142
142
  }
143
+ else if (targetBuffer.type === 'Uint16Array') {
144
+ numBytes = scalarLength * 2;
145
+ TypedArray = Uint16Array;
146
+ }
147
+ else if (targetBuffer.type === 'Int16Array') {
148
+ numBytes = scalarLength * 2;
149
+ TypedArray = Uint16Array;
150
+ }
143
151
  else {
144
152
  throw new Error('TargetBuffer should be Float32Array or Uint8Array');
145
153
  }
@@ -194,8 +202,11 @@ exports.createAndCacheDerivedVolume = createAndCacheDerivedVolume;
194
202
  function createLocalVolume(options, volumeId, preventCache = false) {
195
203
  const { scalarData, metadata, dimensions, spacing, origin, direction } = options;
196
204
  if (!scalarData ||
197
- !(scalarData instanceof Uint8Array || scalarData instanceof Float32Array)) {
198
- throw new Error('To use createLocalVolume you should pass scalarData of type Uint8Array or Float32Array');
205
+ !(scalarData instanceof Uint8Array ||
206
+ scalarData instanceof Float32Array ||
207
+ scalarData instanceof Uint16Array ||
208
+ scalarData instanceof Int16Array)) {
209
+ throw new Error('To use createLocalVolume you should pass scalarData of type Uint8Array, Uint16Array, Int16Array or Float32Array');
199
210
  }
200
211
  if (volumeId === undefined) {
201
212
  volumeId = (0, utilities_1.uuidv4)();
@@ -1 +1 @@
1
- {"version":3,"file":"volumeLoader.js","sourceRoot":"","sources":["../../../src/loaders/volumeLoader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"volumeLoader.js","sourceRoot":"","sources":["../../../src/loaders/volumeLoader.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ declare type Cornerstone3DConfig = {
2
+ detectGPU: any;
3
+ rendering: {
4
+ preferSizeOverAccuracy: boolean;
5
+ useNorm16Texture: boolean;
6
+ useCPURendering: boolean;
7
+ };
8
+ };
9
+ export default Cornerstone3DConfig;
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=Cornerstone3DConfig.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Cornerstone3DConfig.js","sourceRoot":"","sources":["../../../src/types/Cornerstone3DConfig.ts"],"names":[],"mappings":""}
@@ -5,7 +5,7 @@ interface IImageData {
5
5
  direction: Mat3;
6
6
  spacing: Point3;
7
7
  origin: Point3;
8
- scalarData: Float32Array;
8
+ scalarData: Float32Array | Uint16Array | Uint8Array | Int16Array;
9
9
  imageData: vtkImageData;
10
10
  metadata: {
11
11
  Modality: string;
@@ -2,7 +2,7 @@ import type { vtkImageData } from '@kitware/vtk.js/Common/DataModel/ImageData';
2
2
  import type Point3 from './Point3';
3
3
  import type Metadata from './Metadata';
4
4
  import Mat3 from './Mat3';
5
- declare type VolumeScalarData = Float32Array | Uint8Array;
5
+ declare type VolumeScalarData = Float32Array | Uint8Array | Uint16Array | Int16Array;
6
6
  interface IVolume {
7
7
  volumeId: string;
8
8
  metadata: Metadata;
@@ -1,3 +1,4 @@
1
+ import type Cornerstone3DConfig from './Cornerstone3DConfig';
1
2
  import type ICamera from './ICamera';
2
3
  import type IEnabledElement from './IEnabledElement';
3
4
  import type ICache from './ICache';
@@ -57,4 +58,4 @@ import type { PublicContourSetData, ContourSetData, ContourData } from './Contou
57
58
  import type ICachedGeometry from './ICachedGeometry';
58
59
  import type { IContourSet } from './IContourSet';
59
60
  import type { IContour } from './IContour';
60
- export type { ICamera, IStackViewport, IVolumeViewport, IEnabledElement, ICache, IVolume, VolumeScalarData, IViewportId, IImageVolume, IDynamicImageVolume, IRenderingEngine, ScalingParameters, PTScaling, Scaling, IStreamingImageVolume, IImage, IImageData, CPUIImageData, CPUImageData, EventTypes, ImageLoaderFn, VolumeLoaderFn, IRegisterImageLoader, IStreamingVolumeProperties, IViewport, StackViewportProperties, VolumeViewportProperties, PublicViewportInput, VolumeActor, Actor, ActorEntry, IImageLoadObject, IVolumeLoadObject, IVolumeInput, VolumeInputCallback, ViewportPreset, Metadata, OrientationVectors, Point2, Point3, Point4, Mat3, Plane, ViewportInputOptions, VOIRange, VOI, FlipDirection, ICachedImage, ICachedVolume, CPUFallbackEnabledElement, CPUFallbackViewport, CPUFallbackTransform, CPUFallbackColormapData, CPUFallbackViewportDisplayedArea, CPUFallbackColormapsData, CPUFallbackColormap, TransformMatrix2D, CPUFallbackLookupTable, CPUFallbackLUT, CPUFallbackRenderingTools, CustomEventType, ActorSliceRange, ImageSliceData, IGeometry, IGeometryLoadObject, ICachedGeometry, PublicContourSetData, ContourSetData, ContourData, IContourSet, IContour, };
61
+ export type { Cornerstone3DConfig, ICamera, IStackViewport, IVolumeViewport, IEnabledElement, ICache, IVolume, VolumeScalarData, IViewportId, IImageVolume, IDynamicImageVolume, IRenderingEngine, ScalingParameters, PTScaling, Scaling, IStreamingImageVolume, IImage, IImageData, CPUIImageData, CPUImageData, EventTypes, ImageLoaderFn, VolumeLoaderFn, IRegisterImageLoader, IStreamingVolumeProperties, IViewport, StackViewportProperties, VolumeViewportProperties, PublicViewportInput, VolumeActor, Actor, ActorEntry, IImageLoadObject, IVolumeLoadObject, IVolumeInput, VolumeInputCallback, ViewportPreset, Metadata, OrientationVectors, Point2, Point3, Point4, Mat3, Plane, ViewportInputOptions, VOIRange, VOI, FlipDirection, ICachedImage, ICachedVolume, CPUFallbackEnabledElement, CPUFallbackViewport, CPUFallbackTransform, CPUFallbackColormapData, CPUFallbackViewportDisplayedArea, CPUFallbackColormapsData, CPUFallbackColormap, TransformMatrix2D, CPUFallbackLookupTable, CPUFallbackLUT, CPUFallbackRenderingTools, CustomEventType, ActorSliceRange, ImageSliceData, IGeometry, IGeometryLoadObject, ICachedGeometry, PublicContourSetData, ContourSetData, ContourData, IContourSet, IContour, };
@@ -0,0 +1,2 @@
1
+ declare function createInt16SharedArray(length: number): Int16Array;
2
+ export default createInt16SharedArray;
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ function createInt16SharedArray(length) {
4
+ if (!window.crossOriginIsolated) {
5
+ throw new Error('Your page is NOT cross-origin isolated, see https://developer.mozilla.org/en-US/docs/Web/API/crossOriginIsolated');
6
+ }
7
+ if (window.SharedArrayBuffer === undefined) {
8
+ throw new Error('SharedArrayBuffer is NOT supported in your browser see https://developer.chrome.com/blog/enabling-shared-array-buffer/');
9
+ }
10
+ const sharedArrayBuffer = new SharedArrayBuffer(length * 2);
11
+ return new Int16Array(sharedArrayBuffer);
12
+ }
13
+ exports.default = createInt16SharedArray;
14
+ //# sourceMappingURL=createInt16SharedArray.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createInt16SharedArray.js","sourceRoot":"","sources":["../../../src/utilities/createInt16SharedArray.ts"],"names":[],"mappings":";;AAyBA,SAAS,sBAAsB,CAAC,MAAc;IAC5C,IAAI,CAAC,MAAM,CAAC,mBAAmB,EAAE;QAC/B,MAAM,IAAI,KAAK,CACb,kHAAkH,CACnH,CAAC;KACH;IACD,IAAI,MAAM,CAAC,iBAAiB,KAAK,SAAS,EAAE;QAC1C,MAAM,IAAI,KAAK,CACb,wHAAwH,CACzH,CAAC;KACH;IAED,MAAM,iBAAiB,GAAG,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAE5D,OAAO,IAAI,UAAU,CAAC,iBAAiB,CAAC,CAAC;AAC3C,CAAC;AAED,kBAAe,sBAAsB,CAAC"}
@@ -0,0 +1,2 @@
1
+ declare function createUint16SharedArray(length: number): Uint16Array;
2
+ export default createUint16SharedArray;
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ function createUint16SharedArray(length) {
4
+ if (!window.crossOriginIsolated) {
5
+ throw new Error('Your page is NOT cross-origin isolated, see https://developer.mozilla.org/en-US/docs/Web/API/crossOriginIsolated');
6
+ }
7
+ if (window.SharedArrayBuffer === undefined) {
8
+ throw new Error('SharedArrayBuffer is NOT supported in your browser see https://developer.chrome.com/blog/enabling-shared-array-buffer/');
9
+ }
10
+ const sharedArrayBuffer = new SharedArrayBuffer(length * 2);
11
+ return new Uint16Array(sharedArrayBuffer);
12
+ }
13
+ exports.default = createUint16SharedArray;
14
+ //# sourceMappingURL=createUInt16SharedArray.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createUInt16SharedArray.js","sourceRoot":"","sources":["../../../src/utilities/createUInt16SharedArray.ts"],"names":[],"mappings":";;AAyBA,SAAS,uBAAuB,CAAC,MAAc;IAC7C,IAAI,CAAC,MAAM,CAAC,mBAAmB,EAAE;QAC/B,MAAM,IAAI,KAAK,CACb,kHAAkH,CACnH,CAAC;KACH;IACD,IAAI,MAAM,CAAC,iBAAiB,KAAK,SAAS,EAAE;QAC1C,MAAM,IAAI,KAAK,CACb,wHAAwH,CACzH,CAAC;KACH;IAED,MAAM,iBAAiB,GAAG,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAE5D,OAAO,IAAI,WAAW,CAAC,iBAAiB,CAAC,CAAC;AAC5C,CAAC;AAED,kBAAe,uBAAuB,CAAC"}
@@ -0,0 +1,2 @@
1
+ declare const deepMerge: (target?: {}, source?: {}, optionsArgument?: any) => any;
2
+ export default deepMerge;
@@ -0,0 +1,63 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const isMergeableObject = (val) => {
4
+ const nonNullObject = val && typeof val === 'object';
5
+ return (nonNullObject &&
6
+ Object.prototype.toString.call(val) !== '[object RegExp]' &&
7
+ Object.prototype.toString.call(val) !== '[object Date]');
8
+ };
9
+ const emptyTarget = (val) => {
10
+ const isEmpty = Array.isArray(val) ? [] : {};
11
+ return isEmpty;
12
+ };
13
+ const cloneIfNecessary = (value, optionsArgument) => {
14
+ const clone = optionsArgument && optionsArgument.clone === true;
15
+ return clone && isMergeableObject(value)
16
+ ? deepMerge(emptyTarget(value), value, optionsArgument)
17
+ : value;
18
+ };
19
+ const defaultArrayMerge = (target, source, optionsArgument) => {
20
+ const destination = target.slice();
21
+ source.forEach(function (e, i) {
22
+ if (typeof destination[i] === 'undefined') {
23
+ destination[i] = cloneIfNecessary(e, optionsArgument);
24
+ }
25
+ else if (isMergeableObject(e)) {
26
+ destination[i] = deepMerge(target[i], e, optionsArgument);
27
+ }
28
+ else if (target.indexOf(e) === -1) {
29
+ destination.push(cloneIfNecessary(e, optionsArgument));
30
+ }
31
+ });
32
+ return destination;
33
+ };
34
+ const mergeObject = (target, source, optionsArgument) => {
35
+ const destination = {};
36
+ if (isMergeableObject(target)) {
37
+ Object.keys(target).forEach(function (key) {
38
+ destination[key] = cloneIfNecessary(target[key], optionsArgument);
39
+ });
40
+ }
41
+ Object.keys(source).forEach(function (key) {
42
+ if (!isMergeableObject(source[key]) || !target[key]) {
43
+ destination[key] = cloneIfNecessary(source[key], optionsArgument);
44
+ }
45
+ else {
46
+ destination[key] = deepMerge(target[key], source[key], optionsArgument);
47
+ }
48
+ });
49
+ return destination;
50
+ };
51
+ const deepMerge = (target = {}, source = {}, optionsArgument = undefined) => {
52
+ const array = Array.isArray(source);
53
+ const options = optionsArgument || { arrayMerge: defaultArrayMerge };
54
+ const arrayMerge = options.arrayMerge || defaultArrayMerge;
55
+ if (array) {
56
+ return Array.isArray(target)
57
+ ? arrayMerge(target, source, optionsArgument)
58
+ : cloneIfNecessary(source, optionsArgument);
59
+ }
60
+ return mergeObject(target, source, optionsArgument);
61
+ };
62
+ exports.default = deepMerge;
63
+ //# sourceMappingURL=deepMerge.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deepMerge.js","sourceRoot":"","sources":["../../../src/utilities/deepMerge.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import { ScalingParameters } from '../types';
2
+ export default function getScalarDataType(scalingParameters: ScalingParameters, scalarData?: any): string;
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ function getScalarDataType(scalingParameters, scalarData) {
4
+ let type;
5
+ if (scalarData && scalarData instanceof Uint8Array) {
6
+ type = 'Uint8Array';
7
+ }
8
+ else if (scalarData instanceof Float32Array) {
9
+ type = 'Float32Array';
10
+ }
11
+ else if (scalarData instanceof Int16Array) {
12
+ type = 'Int16Array';
13
+ }
14
+ else if (scalarData instanceof Uint16Array) {
15
+ type = 'Uint16Array';
16
+ }
17
+ else {
18
+ throw new Error('Unsupported array type');
19
+ }
20
+ return type;
21
+ }
22
+ exports.default = getScalarDataType;
23
+ //# sourceMappingURL=getScalarDataType.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getScalarDataType.js","sourceRoot":"","sources":["../../../src/utilities/getScalarDataType.ts"],"names":[],"mappings":";;AAWA,SAAwB,iBAAiB,CACvC,iBAAoC,EACpC,UAAgB;IAEhB,IAAI,IAAI,CAAC;IAET,IAAI,UAAU,IAAI,UAAU,YAAY,UAAU,EAAE;QAClD,IAAI,GAAG,YAAY,CAAC;KACrB;SAAM,IAAI,UAAU,YAAY,YAAY,EAAE;QAC7C,IAAI,GAAG,cAAc,CAAC;KACvB;SAAM,IAAI,UAAU,YAAY,UAAU,EAAE;QAC3C,IAAI,GAAG,YAAY,CAAC;KACrB;SAAM,IAAI,UAAU,YAAY,WAAW,EAAE;QAC5C,IAAI,GAAG,aAAa,CAAC;KACtB;SAAM;QACL,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;KAC3C;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAnBD,oCAmBC"}
@@ -0,0 +1,2 @@
1
+ import { ScalingParameters } from '../types';
2
+ export default function getScalingParameters(imageId: string): ScalingParameters;
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const metaData_1 = require("../metaData");
4
+ function getScalingParameters(imageId) {
5
+ const modalityLutModule = (0, metaData_1.get)('modalityLutModule', imageId) || {};
6
+ const generalSeriesModule = (0, metaData_1.get)('generalSeriesModule', imageId) || {};
7
+ const { modality } = generalSeriesModule;
8
+ const scalingParameters = {
9
+ rescaleSlope: modalityLutModule.rescaleSlope,
10
+ rescaleIntercept: modalityLutModule.rescaleIntercept,
11
+ modality,
12
+ };
13
+ const suvFactor = (0, metaData_1.get)('scalingModule', imageId) || {};
14
+ return Object.assign(Object.assign({}, scalingParameters), (modality === 'PT' && {
15
+ suvbw: suvFactor.suvbw,
16
+ suvbsa: suvFactor.suvbsa,
17
+ suvlbm: suvFactor.suvlbm,
18
+ }));
19
+ }
20
+ exports.default = getScalingParameters;
21
+ //# sourceMappingURL=getScalingParameters.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getScalingParameters.js","sourceRoot":"","sources":["../../../src/utilities/getScalingParameters.ts"],"names":[],"mappings":";;AAAA,0CAAiD;AAUjD,SAAwB,oBAAoB,CAC1C,OAAe;IAEf,MAAM,iBAAiB,GAAG,IAAA,cAAW,EAAC,mBAAmB,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC;IAC1E,MAAM,mBAAmB,GAAG,IAAA,cAAW,EAAC,qBAAqB,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC;IAE9E,MAAM,EAAE,QAAQ,EAAE,GAAG,mBAAmB,CAAC;IAEzC,MAAM,iBAAiB,GAAG;QACxB,YAAY,EAAE,iBAAiB,CAAC,YAAY;QAC5C,gBAAgB,EAAE,iBAAiB,CAAC,gBAAgB;QACpD,QAAQ;KACT,CAAC;IAEF,MAAM,SAAS,GAAG,IAAA,cAAW,EAAC,eAAe,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC;IAE9D,uCACK,iBAAiB,GACjB,CAAC,QAAQ,KAAK,IAAI,IAAI;QACvB,KAAK,EAAE,SAAS,CAAC,KAAK;QACtB,MAAM,EAAE,SAAS,CAAC,MAAM;QACxB,MAAM,EAAE,SAAS,CAAC,MAAM;KACzB,CAAC,EACF;AACJ,CAAC;AAxBD,uCAwBC"}
@@ -0,0 +1,7 @@
1
+ import { ActorSliceRange, IVolumeViewport, ICamera } from '../types';
2
+ declare function getVolumeSliceRangeInfo(viewport: IVolumeViewport, volumeId: string): {
3
+ sliceRange: ActorSliceRange;
4
+ spacingInNormalDirection: number;
5
+ camera: ICamera;
6
+ };
7
+ export default getVolumeSliceRangeInfo;
@@ -0,0 +1,29 @@
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
+ const getSliceRange_1 = __importDefault(require("./getSliceRange"));
7
+ const getTargetVolumeAndSpacingInNormalDir_1 = __importDefault(require("./getTargetVolumeAndSpacingInNormalDir"));
8
+ function getVolumeSliceRangeInfo(viewport, volumeId) {
9
+ const camera = viewport.getCamera();
10
+ const { focalPoint, viewPlaneNormal } = camera;
11
+ const { spacingInNormalDirection, actorUID } = (0, getTargetVolumeAndSpacingInNormalDir_1.default)(viewport, camera, volumeId);
12
+ if (!actorUID) {
13
+ throw new Error(`Could not find image volume with id ${volumeId} in the viewport`);
14
+ }
15
+ const actorEntry = viewport.getActor(actorUID);
16
+ if (!actorEntry) {
17
+ console.warn('No actor found for with actorUID of', actorUID);
18
+ return null;
19
+ }
20
+ const volumeActor = actorEntry.actor;
21
+ const sliceRange = (0, getSliceRange_1.default)(volumeActor, viewPlaneNormal, focalPoint);
22
+ return {
23
+ sliceRange,
24
+ spacingInNormalDirection,
25
+ camera,
26
+ };
27
+ }
28
+ exports.default = getVolumeSliceRangeInfo;
29
+ //# sourceMappingURL=getVolumeSliceRangeInfo.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getVolumeSliceRangeInfo.js","sourceRoot":"","sources":["../../../src/utilities/getVolumeSliceRangeInfo.ts"],"names":[],"mappings":";;;;;AAAA,oEAA4C;AAC5C,kHAA0F;AAc1F,SAAS,uBAAuB,CAC9B,QAAyB,EACzB,QAAgB;IAMhB,MAAM,MAAM,GAAG,QAAQ,CAAC,SAAS,EAAE,CAAC;IACpC,MAAM,EAAE,UAAU,EAAE,eAAe,EAAE,GAAG,MAAM,CAAC;IAC/C,MAAM,EAAE,wBAAwB,EAAE,QAAQ,EAAE,GAC1C,IAAA,8CAAoC,EAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;IAEnE,IAAI,CAAC,QAAQ,EAAE;QACb,MAAM,IAAI,KAAK,CACb,uCAAuC,QAAQ,kBAAkB,CAClE,CAAC;KACH;IAED,MAAM,UAAU,GAAG,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAE/C,IAAI,CAAC,UAAU,EAAE;QACf,OAAO,CAAC,IAAI,CAAC,qCAAqC,EAAE,QAAQ,CAAC,CAAC;QAC9D,OAAO,IAAI,CAAC;KACb;IAED,MAAM,WAAW,GAAG,UAAU,CAAC,KAAoB,CAAC;IACpD,MAAM,UAAU,GAAG,IAAA,uBAAa,EAAC,WAAW,EAAE,eAAe,EAAE,UAAU,CAAC,CAAC;IAE3E,OAAO;QACL,UAAU;QACV,wBAAwB;QACxB,MAAM;KACP,CAAC;AACJ,CAAC;AAED,kBAAe,uBAAuB,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { IVolumeViewport } from '../types';
2
+ declare function getVolumeViewportScrollInfo(viewport: IVolumeViewport, volumeId: string): {
3
+ numScrollSteps: number;
4
+ currentStepIndex: number;
5
+ };
6
+ export default getVolumeViewportScrollInfo;
@@ -0,0 +1,17 @@
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
+ const getVolumeSliceRangeInfo_1 = __importDefault(require("./getVolumeSliceRangeInfo"));
7
+ function getVolumeViewportScrollInfo(viewport, volumeId) {
8
+ const { sliceRange, spacingInNormalDirection } = (0, getVolumeSliceRangeInfo_1.default)(viewport, volumeId);
9
+ const { min, max, current } = sliceRange;
10
+ const numScrollSteps = Math.round((max - min) / spacingInNormalDirection);
11
+ const fraction = (current - min) / (max - min);
12
+ const floatingStepNumber = fraction * numScrollSteps;
13
+ const currentStepIndex = Math.round(floatingStepNumber);
14
+ return { numScrollSteps, currentStepIndex };
15
+ }
16
+ exports.default = getVolumeViewportScrollInfo;
17
+ //# sourceMappingURL=getVolumeViewportScrollInfo.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getVolumeViewportScrollInfo.js","sourceRoot":"","sources":["../../../src/utilities/getVolumeViewportScrollInfo.ts"],"names":[],"mappings":";;;;;AACA,wFAAgE;AAQhE,SAAS,2BAA2B,CAClC,QAAyB,EACzB,QAAgB;IAEhB,MAAM,EAAE,UAAU,EAAE,wBAAwB,EAAE,GAAG,IAAA,iCAAuB,EACtE,QAAQ,EACR,QAAQ,CACT,CAAC;IAEF,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,UAAU,CAAC;IAGzC,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,wBAAwB,CAAC,CAAC;IAG1E,MAAM,QAAQ,GAAG,CAAC,OAAO,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC;IAC/C,MAAM,kBAAkB,GAAG,QAAQ,GAAG,cAAc,CAAC;IACrD,MAAM,gBAAgB,GAAG,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;IAExD,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,CAAC;AAC9C,CAAC;AAED,kBAAe,2BAA2B,CAAC"}
@@ -13,6 +13,8 @@ import isEqual from './isEqual';
13
13
  import isOpposite from './isOpposite';
14
14
  import createUint8SharedArray from './createUint8SharedArray';
15
15
  import createFloat32SharedArray from './createFloat32SharedArray';
16
+ import createUint16SharedArray from './createUInt16SharedArray';
17
+ import createInt16SharedArray from './createInt16SharedArray';
16
18
  import getClosestImageId from './getClosestImageId';
17
19
  import getSpacingInNormalDirection from './getSpacingInNormalDirection';
18
20
  import getTargetVolumeAndSpacingInNormalDir from './getTargetVolumeAndSpacingInNormalDir';
@@ -25,6 +27,8 @@ import loadImageToCanvas from './loadImageToCanvas';
25
27
  import renderToCanvas from './renderToCanvas';
26
28
  import worldToImageCoords from './worldToImageCoords';
27
29
  import imageToWorldCoords from './imageToWorldCoords';
30
+ import getVolumeSliceRangeInfo from './getVolumeSliceRangeInfo';
31
+ import getVolumeViewportScrollInfo from './getVolumeViewportScrollInfo';
28
32
  import getSliceRange from './getSliceRange';
29
33
  import snapFocalPointToSlice from './snapFocalPointToSlice';
30
34
  import getImageSliceDataForVolumeViewport from './getImageSliceDataForVolumeViewport';
@@ -36,6 +40,9 @@ import spatialRegistrationMetadataProvider from './spatialRegistrationMetadataPr
36
40
  import getViewportImageCornersInWorld from './getViewportImageCornersInWorld';
37
41
  import hasNaNValues from './hasNaNValues';
38
42
  import applyPreset from './applyPreset';
43
+ import deepMerge from './deepMerge';
44
+ import getScalingParameters from './getScalingParameters';
45
+ import getScalarDataType from './getScalarDataType';
39
46
  import * as planar from './planar';
40
47
  import * as windowLevel from './windowLevel';
41
- export { csUtils as invertRgbTransferFunction, createSigmoidRGBTransferFunction, getVoiFromSigmoidRGBTransferFunction, createLinearRGBTransferFunction, scaleRgbTransferFunction, triggerEvent, imageIdToURI, calibratedPixelSpacingMetadataProvider, uuidv4, planar, getMinMax, getRuntimeId, isEqual, isOpposite, createFloat32SharedArray, createUint8SharedArray, windowLevel, getClosestImageId, getSpacingInNormalDirection, getTargetVolumeAndSpacingInNormalDir, getVolumeActorCorners, indexWithinDimensions, getVolumeViewportsContainingSameVolumes, getViewportsWithVolumeId, transformWorldToIndex, loadImageToCanvas, renderToCanvas, worldToImageCoords, imageToWorldCoords, getSliceRange, snapFocalPointToSlice, getImageSliceDataForVolumeViewport, isImageActor, actorIsA, getViewportsWithImageURI, getClosestStackImageIndexForPoint, calculateViewportsSpatialRegistration, spatialRegistrationMetadataProvider, getViewportImageCornersInWorld, hasNaNValues, applyPreset, };
48
+ export { csUtils as invertRgbTransferFunction, createSigmoidRGBTransferFunction, getVoiFromSigmoidRGBTransferFunction, createLinearRGBTransferFunction, scaleRgbTransferFunction, triggerEvent, imageIdToURI, calibratedPixelSpacingMetadataProvider, uuidv4, planar, getMinMax, getRuntimeId, isEqual, isOpposite, createFloat32SharedArray, createUint8SharedArray, createUint16SharedArray, createInt16SharedArray, windowLevel, getClosestImageId, getSpacingInNormalDirection, getTargetVolumeAndSpacingInNormalDir, getVolumeActorCorners, indexWithinDimensions, getVolumeViewportsContainingSameVolumes, getViewportsWithVolumeId, transformWorldToIndex, loadImageToCanvas, renderToCanvas, worldToImageCoords, imageToWorldCoords, getVolumeSliceRangeInfo, getVolumeViewportScrollInfo, getSliceRange, snapFocalPointToSlice, getImageSliceDataForVolumeViewport, isImageActor, actorIsA, getViewportsWithImageURI, getClosestStackImageIndexForPoint, calculateViewportsSpatialRegistration, spatialRegistrationMetadataProvider, getViewportImageCornersInWorld, hasNaNValues, applyPreset, deepMerge, getScalingParameters, getScalarDataType, };