@cornerstonejs/core 0.34.0 → 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.
- package/dist/cjs/RenderingEngine/StackViewport.js +17 -18
- package/dist/cjs/RenderingEngine/StackViewport.js.map +1 -1
- package/dist/cjs/RenderingEngine/helpers/createVolumeMapper.js +4 -0
- package/dist/cjs/RenderingEngine/helpers/createVolumeMapper.js.map +1 -1
- package/dist/cjs/RenderingEngine/helpers/setDefaultVolumeVOI.js +0 -16
- package/dist/cjs/RenderingEngine/helpers/setDefaultVolumeVOI.js.map +1 -1
- package/dist/cjs/RenderingEngine/vtkClasses/vtkStreamingOpenGLTexture.js +23 -3
- package/dist/cjs/RenderingEngine/vtkClasses/vtkStreamingOpenGLTexture.js.map +1 -1
- package/dist/cjs/RenderingEngine/vtkClasses/vtkStreamingOpenGLVolumeMapper.js +1 -0
- package/dist/cjs/RenderingEngine/vtkClasses/vtkStreamingOpenGLVolumeMapper.js.map +1 -1
- package/dist/cjs/index.d.ts +2 -2
- package/dist/cjs/index.js +3 -1
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/init.d.ts +5 -2
- package/dist/cjs/init.js +58 -13
- package/dist/cjs/init.js.map +1 -1
- package/dist/cjs/loaders/volumeLoader.d.ts +2 -2
- package/dist/cjs/loaders/volumeLoader.js +13 -2
- package/dist/cjs/loaders/volumeLoader.js.map +1 -1
- package/dist/cjs/types/Cornerstone3DConfig.d.ts +9 -0
- package/dist/cjs/types/Cornerstone3DConfig.js +3 -0
- package/dist/cjs/types/Cornerstone3DConfig.js.map +1 -0
- package/dist/cjs/types/IImageData.d.ts +1 -1
- package/dist/cjs/types/IVolume.d.ts +1 -1
- package/dist/cjs/types/index.d.ts +2 -1
- package/dist/cjs/utilities/createInt16SharedArray.d.ts +2 -0
- package/dist/cjs/utilities/createInt16SharedArray.js +14 -0
- package/dist/cjs/utilities/createInt16SharedArray.js.map +1 -0
- package/dist/cjs/utilities/createUInt16SharedArray.d.ts +2 -0
- package/dist/cjs/utilities/createUInt16SharedArray.js +14 -0
- package/dist/cjs/utilities/createUInt16SharedArray.js.map +1 -0
- package/dist/cjs/utilities/deepMerge.d.ts +2 -0
- package/dist/cjs/utilities/deepMerge.js +63 -0
- package/dist/cjs/utilities/deepMerge.js.map +1 -0
- package/dist/cjs/utilities/getScalarDataType.d.ts +2 -0
- package/dist/cjs/utilities/getScalarDataType.js +23 -0
- package/dist/cjs/utilities/getScalarDataType.js.map +1 -0
- package/dist/cjs/utilities/getScalingParameters.d.ts +2 -0
- package/dist/cjs/utilities/getScalingParameters.js +21 -0
- package/dist/cjs/utilities/getScalingParameters.js.map +1 -0
- package/dist/cjs/utilities/index.d.ts +6 -1
- package/dist/cjs/utilities/index.js +11 -1
- package/dist/cjs/utilities/index.js.map +1 -1
- package/dist/cjs/utilities/loadImageToCanvas.js +0 -5
- package/dist/cjs/utilities/loadImageToCanvas.js.map +1 -1
- package/dist/esm/RenderingEngine/StackViewport.js +14 -15
- package/dist/esm/RenderingEngine/StackViewport.js.map +1 -1
- package/dist/esm/RenderingEngine/helpers/createVolumeMapper.js +4 -0
- package/dist/esm/RenderingEngine/helpers/createVolumeMapper.js.map +1 -1
- package/dist/esm/RenderingEngine/helpers/setDefaultVolumeVOI.js +0 -16
- package/dist/esm/RenderingEngine/helpers/setDefaultVolumeVOI.js.map +1 -1
- package/dist/esm/RenderingEngine/vtkClasses/vtkStreamingOpenGLTexture.js +23 -3
- package/dist/esm/RenderingEngine/vtkClasses/vtkStreamingOpenGLTexture.js.map +1 -1
- package/dist/esm/RenderingEngine/vtkClasses/vtkStreamingOpenGLVolumeMapper.js +1 -0
- package/dist/esm/RenderingEngine/vtkClasses/vtkStreamingOpenGLVolumeMapper.js.map +1 -1
- package/dist/esm/index.d.ts +2 -2
- package/dist/esm/index.js +2 -2
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/init.d.ts +5 -2
- package/dist/esm/init.js +56 -13
- package/dist/esm/init.js.map +1 -1
- package/dist/esm/loaders/volumeLoader.d.ts +2 -2
- package/dist/esm/loaders/volumeLoader.js +13 -2
- package/dist/esm/loaders/volumeLoader.js.map +1 -1
- package/dist/esm/types/Cornerstone3DConfig.d.ts +9 -0
- package/dist/esm/types/Cornerstone3DConfig.js +2 -0
- package/dist/esm/types/Cornerstone3DConfig.js.map +1 -0
- package/dist/esm/types/IImageData.d.ts +1 -1
- package/dist/esm/types/IVolume.d.ts +1 -1
- package/dist/esm/types/index.d.ts +2 -1
- package/dist/esm/utilities/createInt16SharedArray.d.ts +2 -0
- package/dist/esm/utilities/createInt16SharedArray.js +12 -0
- package/dist/esm/utilities/createInt16SharedArray.js.map +1 -0
- package/dist/esm/utilities/createUInt16SharedArray.d.ts +2 -0
- package/dist/esm/utilities/createUInt16SharedArray.js +12 -0
- package/dist/esm/utilities/createUInt16SharedArray.js.map +1 -0
- package/dist/esm/utilities/deepMerge.d.ts +2 -0
- package/dist/esm/utilities/deepMerge.js +61 -0
- package/dist/esm/utilities/deepMerge.js.map +1 -0
- package/dist/esm/utilities/getScalarDataType.d.ts +2 -0
- package/dist/esm/utilities/getScalarDataType.js +20 -0
- package/dist/esm/utilities/getScalarDataType.js.map +1 -0
- package/dist/esm/utilities/getScalingParameters.d.ts +2 -0
- package/dist/esm/utilities/getScalingParameters.js +21 -0
- package/dist/esm/utilities/getScalingParameters.js.map +1 -0
- package/dist/esm/utilities/index.d.ts +6 -1
- package/dist/esm/utilities/index.js +6 -1
- package/dist/esm/utilities/index.js.map +1 -1
- package/dist/esm/utilities/loadImageToCanvas.js +0 -5
- package/dist/esm/utilities/loadImageToCanvas.js.map +1 -1
- package/dist/umd/index.js +1 -1
- package/dist/umd/index.js.map +1 -1
- package/package.json +2 -2
package/dist/cjs/init.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { SharedArrayBufferModes } from './enums';
|
|
2
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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('
|
|
22
|
-
|
|
23
|
-
|
|
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
|
|
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
|
-
|
|
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 = !
|
|
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
|
package/dist/cjs/init.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/init.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAAwC;AACxC,mCAAiD;
|
|
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 ||
|
|
198
|
-
|
|
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 @@
|
|
|
1
|
+
{"version":3,"file":"Cornerstone3DConfig.js","sourceRoot":"","sources":["../../../src/types/Cornerstone3DConfig.ts"],"names":[],"mappings":""}
|
|
@@ -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,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,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,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,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,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"}
|
|
@@ -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';
|
|
@@ -38,6 +40,9 @@ import spatialRegistrationMetadataProvider from './spatialRegistrationMetadataPr
|
|
|
38
40
|
import getViewportImageCornersInWorld from './getViewportImageCornersInWorld';
|
|
39
41
|
import hasNaNValues from './hasNaNValues';
|
|
40
42
|
import applyPreset from './applyPreset';
|
|
43
|
+
import deepMerge from './deepMerge';
|
|
44
|
+
import getScalingParameters from './getScalingParameters';
|
|
45
|
+
import getScalarDataType from './getScalarDataType';
|
|
41
46
|
import * as planar from './planar';
|
|
42
47
|
import * as windowLevel from './windowLevel';
|
|
43
|
-
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, getVolumeSliceRangeInfo, getVolumeViewportScrollInfo, 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, };
|
|
@@ -26,7 +26,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
26
26
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
27
|
};
|
|
28
28
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
-
exports.applyPreset = exports.hasNaNValues = exports.getViewportImageCornersInWorld = exports.spatialRegistrationMetadataProvider = exports.calculateViewportsSpatialRegistration = exports.getClosestStackImageIndexForPoint = exports.getViewportsWithImageURI = exports.actorIsA = exports.isImageActor = exports.getImageSliceDataForVolumeViewport = exports.snapFocalPointToSlice = exports.getSliceRange = exports.getVolumeViewportScrollInfo = exports.getVolumeSliceRangeInfo = exports.imageToWorldCoords = exports.worldToImageCoords = exports.renderToCanvas = exports.loadImageToCanvas = exports.transformWorldToIndex = exports.getViewportsWithVolumeId = exports.getVolumeViewportsContainingSameVolumes = exports.indexWithinDimensions = exports.getVolumeActorCorners = exports.getTargetVolumeAndSpacingInNormalDir = exports.getSpacingInNormalDirection = exports.getClosestImageId = exports.windowLevel = exports.createUint8SharedArray = exports.createFloat32SharedArray = exports.isOpposite = exports.isEqual = exports.getRuntimeId = exports.getMinMax = exports.planar = exports.uuidv4 = exports.calibratedPixelSpacingMetadataProvider = exports.imageIdToURI = exports.triggerEvent = exports.scaleRgbTransferFunction = exports.createLinearRGBTransferFunction = exports.getVoiFromSigmoidRGBTransferFunction = exports.createSigmoidRGBTransferFunction = exports.invertRgbTransferFunction = void 0;
|
|
29
|
+
exports.getScalarDataType = exports.getScalingParameters = exports.deepMerge = exports.applyPreset = exports.hasNaNValues = exports.getViewportImageCornersInWorld = exports.spatialRegistrationMetadataProvider = exports.calculateViewportsSpatialRegistration = exports.getClosestStackImageIndexForPoint = exports.getViewportsWithImageURI = exports.actorIsA = exports.isImageActor = exports.getImageSliceDataForVolumeViewport = exports.snapFocalPointToSlice = exports.getSliceRange = exports.getVolumeViewportScrollInfo = exports.getVolumeSliceRangeInfo = exports.imageToWorldCoords = exports.worldToImageCoords = exports.renderToCanvas = exports.loadImageToCanvas = exports.transformWorldToIndex = exports.getViewportsWithVolumeId = exports.getVolumeViewportsContainingSameVolumes = exports.indexWithinDimensions = exports.getVolumeActorCorners = exports.getTargetVolumeAndSpacingInNormalDir = exports.getSpacingInNormalDirection = exports.getClosestImageId = exports.windowLevel = exports.createInt16SharedArray = exports.createUint16SharedArray = exports.createUint8SharedArray = exports.createFloat32SharedArray = exports.isOpposite = exports.isEqual = exports.getRuntimeId = exports.getMinMax = exports.planar = exports.uuidv4 = exports.calibratedPixelSpacingMetadataProvider = exports.imageIdToURI = exports.triggerEvent = exports.scaleRgbTransferFunction = exports.createLinearRGBTransferFunction = exports.getVoiFromSigmoidRGBTransferFunction = exports.createSigmoidRGBTransferFunction = exports.invertRgbTransferFunction = void 0;
|
|
30
30
|
const invertRgbTransferFunction_1 = __importDefault(require("./invertRgbTransferFunction"));
|
|
31
31
|
exports.invertRgbTransferFunction = invertRgbTransferFunction_1.default;
|
|
32
32
|
const createSigmoidRGBTransferFunction_1 = __importDefault(require("./createSigmoidRGBTransferFunction"));
|
|
@@ -57,6 +57,10 @@ const createUint8SharedArray_1 = __importDefault(require("./createUint8SharedArr
|
|
|
57
57
|
exports.createUint8SharedArray = createUint8SharedArray_1.default;
|
|
58
58
|
const createFloat32SharedArray_1 = __importDefault(require("./createFloat32SharedArray"));
|
|
59
59
|
exports.createFloat32SharedArray = createFloat32SharedArray_1.default;
|
|
60
|
+
const createUInt16SharedArray_1 = __importDefault(require("./createUInt16SharedArray"));
|
|
61
|
+
exports.createUint16SharedArray = createUInt16SharedArray_1.default;
|
|
62
|
+
const createInt16SharedArray_1 = __importDefault(require("./createInt16SharedArray"));
|
|
63
|
+
exports.createInt16SharedArray = createInt16SharedArray_1.default;
|
|
60
64
|
const getClosestImageId_1 = __importDefault(require("./getClosestImageId"));
|
|
61
65
|
exports.getClosestImageId = getClosestImageId_1.default;
|
|
62
66
|
const getSpacingInNormalDirection_1 = __importDefault(require("./getSpacingInNormalDirection"));
|
|
@@ -108,6 +112,12 @@ const hasNaNValues_1 = __importDefault(require("./hasNaNValues"));
|
|
|
108
112
|
exports.hasNaNValues = hasNaNValues_1.default;
|
|
109
113
|
const applyPreset_1 = __importDefault(require("./applyPreset"));
|
|
110
114
|
exports.applyPreset = applyPreset_1.default;
|
|
115
|
+
const deepMerge_1 = __importDefault(require("./deepMerge"));
|
|
116
|
+
exports.deepMerge = deepMerge_1.default;
|
|
117
|
+
const getScalingParameters_1 = __importDefault(require("./getScalingParameters"));
|
|
118
|
+
exports.getScalingParameters = getScalingParameters_1.default;
|
|
119
|
+
const getScalarDataType_1 = __importDefault(require("./getScalarDataType"));
|
|
120
|
+
exports.getScalarDataType = getScalarDataType_1.default;
|
|
111
121
|
const planar = __importStar(require("./planar"));
|
|
112
122
|
exports.planar = planar;
|
|
113
123
|
const windowLevel = __importStar(require("./windowLevel"));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utilities/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,4FAAkD;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utilities/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,4FAAkD;AAmDrC,oCAnDN,mCAAO,CAmDwB;AAlDtC,0GAAkF;AAmDhF,2CAnDK,0CAAgC,CAmDL;AAlDlC,kHAA0F;AAmDxF,+CAnDK,8CAAoC,CAmDL;AAlDtC,wGAAgF;AAmD9E,0CAnDK,yCAA+B,CAmDL;AAlDjC,0FAAkE;AAmDhE,mCAnDK,kCAAwB,CAmDL;AAlD1B,kEAA0C;AAmDxC,uBAnDK,sBAAY,CAmDL;AAlDd,sDAA8B;AAqD5B,iBArDK,gBAAM,CAqDL;AApDR,4DAAoC;AAsDlC,oBAtDK,mBAAS,CAsDL;AArDX,kEAA0C;AAsDxC,uBAtDK,sBAAY,CAsDL;AArDd,kEAA0C;AAgDxC,uBAhDK,sBAAY,CAgDL;AA/Cd,sHAA8F;AAgD5F,iDAhDK,gDAAsC,CAgDL;AA/CxC,wDAAgC;AAoD9B,kBApDK,iBAAO,CAoDL;AAnDT,8DAAsC;AAoDpC,qBApDK,oBAAU,CAoDL;AAnDZ,sFAA8D;AAqD5D,iCArDK,gCAAsB,CAqDL;AApDxB,0FAAkE;AAmDhE,mCAnDK,kCAAwB,CAmDL;AAlD1B,wFAAgE;AAoD9D,kCApDK,iCAAuB,CAoDL;AAnDzB,sFAA8D;AAoD5D,iCApDK,gCAAsB,CAoDL;AAnDxB,4EAAoD;AAqDlD,4BArDK,2BAAiB,CAqDL;AApDnB,gGAAwE;AAqDtE,sCArDK,qCAA2B,CAqDL;AApD7B,kHAA0F;AAqDxF,+CArDK,8CAAoC,CAqDL;AApDtC,oFAA4D;AAqD1D,gCArDK,+BAAqB,CAqDL;AApDvB,oFAA4D;AAqD1D,gCArDK,+BAAqB,CAqDL;AApDvB,wHAAgG;AAqD9F,kDArDK,iDAAuC,CAqDL;AApDzC,0FAAkE;AAqDhE,mCArDK,kCAAwB,CAqDL;AApD1B,oFAA4D;AAqD1D,gCArDK,+BAAqB,CAqDL;AApDvB,4EAAoD;AAqDlD,4BArDK,2BAAiB,CAqDL;AApDnB,sEAA8C;AAqD5C,yBArDK,wBAAc,CAqDL;AApDhB,8EAAsD;AAqDpD,6BArDK,4BAAkB,CAqDL;AApDpB,8EAAsD;AAqDpD,6BArDK,4BAAkB,CAqDL;AApDpB,wFAAgE;AAqD9D,kCArDK,iCAAuB,CAqDL;AApDzB,gGAAwE;AAqDtE,sCArDK,qCAA2B,CAqDL;AApD7B,oEAA4C;AAqD1C,wBArDK,uBAAa,CAqDL;AApDf,oFAA4D;AAqD1D,gCArDK,+BAAqB,CAqDL;AApDvB,8GAAsF;AAqDpF,6CArDK,4CAAkC,CAqDL;AApDpC,6CAAsD;AAqDpD,6FArDO,yBAAY,OAqDP;AACZ,yFAtDqB,qBAAQ,OAsDrB;AArDV,0FAAkE;AAsDhE,mCAtDK,kCAAwB,CAsDL;AArD1B,4GAAoF;AAsDlF,4CAtDK,2CAAiC,CAsDL;AArDnC,oHAA4F;AAsD1F,gDAtDK,+CAAqC,CAsDL;AArDvC,gHAAwF;AAsDtF,8CAtDK,6CAAmC,CAsDL;AArDrC,sGAA8E;AAsD5E,yCAtDK,wCAA8B,CAsDL;AArDhC,kEAA0C;AAsDxC,uBAtDK,sBAAY,CAsDL;AArDd,gEAAwC;AAsDtC,sBAtDK,qBAAW,CAsDL;AArDb,4DAAoC;AAsDlC,oBAtDK,mBAAS,CAsDL;AArDX,kFAA0D;AAsDxD,+BAtDK,8BAAoB,CAsDL;AArDtB,4EAAoD;AAsDlD,4BAtDK,2BAAiB,CAsDL;AAnDnB,iDAAmC;AAajC,wBAAM;AAZR,2DAA6C;AAqB3C,kCAAW"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loadImageToCanvas.js","sourceRoot":"","sources":["../../../src/utilities/loadImageToCanvas.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,wDAA2D;AAC3D,sDAAwC;AACxC,oCAAuC;AACvC,+FAAuE;AACvE,sEAA8C;AAoB9C,SAAwB,iBAAiB,CACvC,MAAyB,EACzB,OAAe,EACf,WAAW,GAAG,mBAAW,CAAC,SAAS,EACnC,QAAQ,GAAG,CAAC,CAAC;IAEb,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,SAAS,eAAe,CAAC,KAAa,EAAE,OAAe;;YACrD,MAAM,EAAE,QAAQ,EAAE,GAAG,QAAQ,CAAC,GAAG,CAAC,qBAAqB,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC;YAExE,KAAK,CAAC,WAAW,GAAG,KAAK,CAAC,WAAW,KAAI,MAAA,KAAK,CAAC,QAAQ,0CAAE,MAAM,CAAA,CAAC;YAChE,IAAA,wBAAc,EAAC,MAAM,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;YACxC,OAAO,CAAC,OAAO,CAAC,CAAC;QACnB,CAAC;QAED,SAAS,aAAa,CAAC,KAAY,EAAE,OAAe;YAClD,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;YAC9B,MAAM,CAAC,KAAK,CAAC,CAAC;QAChB,CAAC;QAED,SAAS,WAAW,CAAC,OAAO,EAAE,YAAY,EAAE,OAAO;YACjD,OAAO,IAAA,+BAAiB,EAAC,OAAO,EAAE,OAAO,CAAC,CAAC,IAAI,CAC7C,CAAC,KAAK,EAAE,EAAE;gBACR,eAAe,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;YAC7C,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;gBACR,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;YAC3C,CAAC,CACF,CAAC;QACJ,CAAC;QAID,MAAM,OAAO,GAAG;YACd,
|
|
1
|
+
{"version":3,"file":"loadImageToCanvas.js","sourceRoot":"","sources":["../../../src/utilities/loadImageToCanvas.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,wDAA2D;AAC3D,sDAAwC;AACxC,oCAAuC;AACvC,+FAAuE;AACvE,sEAA8C;AAoB9C,SAAwB,iBAAiB,CACvC,MAAyB,EACzB,OAAe,EACf,WAAW,GAAG,mBAAW,CAAC,SAAS,EACnC,QAAQ,GAAG,CAAC,CAAC;IAEb,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,SAAS,eAAe,CAAC,KAAa,EAAE,OAAe;;YACrD,MAAM,EAAE,QAAQ,EAAE,GAAG,QAAQ,CAAC,GAAG,CAAC,qBAAqB,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC;YAExE,KAAK,CAAC,WAAW,GAAG,KAAK,CAAC,WAAW,KAAI,MAAA,KAAK,CAAC,QAAQ,0CAAE,MAAM,CAAA,CAAC;YAChE,IAAA,wBAAc,EAAC,MAAM,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;YACxC,OAAO,CAAC,OAAO,CAAC,CAAC;QACnB,CAAC;QAED,SAAS,aAAa,CAAC,KAAY,EAAE,OAAe;YAClD,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;YAC9B,MAAM,CAAC,KAAK,CAAC,CAAC;QAChB,CAAC;QAED,SAAS,WAAW,CAAC,OAAO,EAAE,YAAY,EAAE,OAAO;YACjD,OAAO,IAAA,+BAAiB,EAAC,OAAO,EAAE,OAAO,CAAC,CAAC,IAAI,CAC7C,CAAC,KAAK,EAAE,EAAE;gBACR,eAAe,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;YAC7C,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;gBACR,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;YAC3C,CAAC,CACF,CAAC;QACJ,CAAC;QAID,MAAM,OAAO,GAAG;YACd,QAAQ,EAAE;gBACR,OAAO,EAAE,IAAI;aACd;YACD,WAAW;SACZ,CAAC;QAEF,8BAAoB,CAAC,UAAU,CAC7B,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,EAC9C,WAAW,EACX,EAAE,OAAO,EAAE,EACX,QAAQ,CACT,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AA/CD,oCA+CC"}
|