@cornerstonejs/core 0.1.3 → 0.2.1

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 (87) hide show
  1. package/dist/cjs/RenderingEngine/StackViewport.js +35 -16
  2. package/dist/cjs/RenderingEngine/StackViewport.js.map +1 -1
  3. package/dist/cjs/RenderingEngine/Viewport.d.ts +2 -3
  4. package/dist/cjs/RenderingEngine/Viewport.js.map +1 -1
  5. package/dist/cjs/RenderingEngine/VolumeViewport.d.ts +2 -3
  6. package/dist/cjs/RenderingEngine/VolumeViewport.js.map +1 -1
  7. package/dist/cjs/RenderingEngine/helpers/cpuFallback/colors/index.d.ts +0 -7
  8. package/dist/cjs/RenderingEngine/helpers/cpuFallback/colors/index.js +0 -6
  9. package/dist/cjs/RenderingEngine/helpers/cpuFallback/colors/index.js.map +1 -1
  10. package/dist/cjs/RenderingEngine/helpers/cpuFallback/rendering/renderPseudoColorImage.d.ts +1 -1
  11. package/dist/cjs/RenderingEngine/helpers/cpuFallback/rendering/renderPseudoColorImage.js +21 -2
  12. package/dist/cjs/RenderingEngine/helpers/cpuFallback/rendering/renderPseudoColorImage.js.map +1 -1
  13. package/dist/cjs/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataColorLUT.d.ts +1 -1
  14. package/dist/cjs/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataColorLUT.js +21 -2
  15. package/dist/cjs/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataColorLUT.js.map +1 -1
  16. package/dist/cjs/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataPseudocolorLUT.d.ts +1 -1
  17. package/dist/cjs/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataPseudocolorLUT.js +21 -2
  18. package/dist/cjs/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataPseudocolorLUT.js.map +1 -1
  19. package/dist/cjs/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataPseudocolorLUTPET.d.ts +1 -1
  20. package/dist/cjs/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataPseudocolorLUTPET.js +21 -2
  21. package/dist/cjs/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataPseudocolorLUTPET.js.map +1 -1
  22. package/dist/cjs/RenderingEngine/helpers/createVolumeActor.d.ts +2 -1
  23. package/dist/cjs/RenderingEngine/helpers/createVolumeActor.js.map +1 -1
  24. package/dist/cjs/cache/classes/ImageVolume.d.ts +1 -1
  25. package/dist/cjs/cache/classes/ImageVolume.js +2 -2
  26. package/dist/cjs/cache/classes/ImageVolume.js.map +1 -1
  27. package/dist/cjs/index.d.ts +1 -1
  28. package/dist/cjs/index.js +2 -2
  29. package/dist/cjs/index.js.map +1 -1
  30. package/dist/cjs/metaData.d.ts +1 -8
  31. package/dist/cjs/metaData.js +2 -9
  32. package/dist/cjs/metaData.js.map +1 -1
  33. package/dist/cjs/types/IImageVolume.d.ts +1 -1
  34. package/dist/cjs/types/IVolume.d.ts +3 -3
  35. package/dist/cjs/types/IVolumeInput.d.ts +2 -1
  36. package/dist/cjs/utilities/getClosestImageId.d.ts +1 -1
  37. package/dist/cjs/utilities/getClosestImageId.js +21 -2
  38. package/dist/cjs/utilities/getClosestImageId.js.map +1 -1
  39. package/dist/cjs/volumeLoader.d.ts +2 -2
  40. package/dist/cjs/volumeLoader.js +4 -4
  41. package/dist/cjs/volumeLoader.js.map +1 -1
  42. package/dist/esm/RenderingEngine/StackViewport.js +1 -1
  43. package/dist/esm/RenderingEngine/StackViewport.js.map +1 -1
  44. package/dist/esm/RenderingEngine/Viewport.d.ts +2 -3
  45. package/dist/esm/RenderingEngine/Viewport.js.map +1 -1
  46. package/dist/esm/RenderingEngine/VolumeViewport.d.ts +2 -3
  47. package/dist/esm/RenderingEngine/VolumeViewport.js.map +1 -1
  48. package/dist/esm/RenderingEngine/helpers/cpuFallback/colors/index.d.ts +0 -7
  49. package/dist/esm/RenderingEngine/helpers/cpuFallback/colors/index.js +0 -6
  50. package/dist/esm/RenderingEngine/helpers/cpuFallback/colors/index.js.map +1 -1
  51. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/renderPseudoColorImage.d.ts +1 -1
  52. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/renderPseudoColorImage.js +1 -1
  53. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/renderPseudoColorImage.js.map +1 -1
  54. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataColorLUT.d.ts +1 -1
  55. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataColorLUT.js +1 -1
  56. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataColorLUT.js.map +1 -1
  57. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataPseudocolorLUT.d.ts +1 -1
  58. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataPseudocolorLUT.js +1 -1
  59. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataPseudocolorLUT.js.map +1 -1
  60. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataPseudocolorLUTPET.d.ts +1 -1
  61. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataPseudocolorLUTPET.js +1 -1
  62. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataPseudocolorLUTPET.js.map +1 -1
  63. package/dist/esm/RenderingEngine/helpers/createVolumeActor.d.ts +2 -1
  64. package/dist/esm/RenderingEngine/helpers/createVolumeActor.js.map +1 -1
  65. package/dist/esm/cache/classes/ImageVolume.d.ts +1 -1
  66. package/dist/esm/cache/classes/ImageVolume.js +2 -2
  67. package/dist/esm/cache/classes/ImageVolume.js.map +1 -1
  68. package/dist/esm/index.d.ts +1 -1
  69. package/dist/esm/index.js +1 -1
  70. package/dist/esm/index.js.map +1 -1
  71. package/dist/esm/metaData.d.ts +1 -8
  72. package/dist/esm/metaData.js +1 -8
  73. package/dist/esm/metaData.js.map +1 -1
  74. package/dist/esm/types/IImageVolume.d.ts +1 -1
  75. package/dist/esm/types/IVolume.d.ts +3 -3
  76. package/dist/esm/types/IVolumeInput.d.ts +2 -1
  77. package/dist/esm/utilities/getClosestImageId.d.ts +1 -1
  78. package/dist/esm/utilities/getClosestImageId.js +1 -1
  79. package/dist/esm/utilities/getClosestImageId.js.map +1 -1
  80. package/dist/esm/volumeLoader.d.ts +2 -2
  81. package/dist/esm/volumeLoader.js +4 -4
  82. package/dist/esm/volumeLoader.js.map +1 -1
  83. package/dist/umd/index.js +1 -1
  84. package/dist/umd/index.js.map +1 -1
  85. package/package.json +6 -4
  86. package/dist/core.d.ts +0 -2453
  87. package/dist/esm/tsdoc-metadata.json +0 -11
package/dist/core.d.ts DELETED
@@ -1,2453 +0,0 @@
1
- import type { mat4 } from 'gl-matrix';
2
- import { vec3 } from 'gl-matrix';
3
- import type { vtkCamera } from 'vtk.js/Sources/Rendering/Core/Camera';
4
- import type { vtkImageData } from 'vtk.js/Sources/Common/DataModel/ImageData';
5
- import type { VtkObject } from 'vtk.js/Sources/interfaces';
6
- import type { vtkVolume } from 'vtk.js/Sources/Rendering/Core/Volume';
7
-
8
- declare type ActorEntry = {
9
- uid: string;
10
- volumeActor: VolumeActor;
11
- slabThickness?: number;
12
- };
13
-
14
- declare type AdditionalDetails = {
15
- imageId?: string;
16
- volumeId?: string;
17
- };
18
-
19
- declare function addProvider(provider: (type: string, imageId: string) => {
20
- any: any;
21
- }, priority?: number): void;
22
-
23
- export declare function addVolumesToViewports(renderingEngine: IRenderingEngine, volumeInputs: Array<IVolumeInput>, viewportIds: Array<string>, immediateRender?: boolean): Promise<void>;
24
-
25
- declare enum BlendModes {
26
- COMPOSITE,
27
- MAXIMUM_INTENSITY_BLEND,
28
- MINIMUM_INTENSITY_BLEND,
29
- AVERAGE_INTENSITY_BLEND
30
- }
31
-
32
- export declare const cache: Cache_2;
33
-
34
- declare class Cache_2 implements ICache {
35
- private readonly _imageCache;
36
- private readonly _volumeCache;
37
- private _imageCacheSize;
38
- private _volumeCacheSize;
39
- private _maxCacheSize;
40
- constructor();
41
- setMaxCacheSize: (newMaxCacheSize: number) => void;
42
- isCacheable: (byteLength: number) => boolean;
43
- getMaxCacheSize: () => number;
44
- getCacheSize: () => number;
45
- getBytesAvailable(): number;
46
- private _decacheImage;
47
- private _decacheVolume;
48
- purgeCache: () => void;
49
- decacheIfNecessaryUntilBytesAvailable(numBytes: number, volumeImageIds?: Array<string>): number | undefined;
50
- putImageLoadObject(imageId: string, imageLoadObject: IImageLoadObject): Promise<any>;
51
- getImageLoadObject(imageId: string): IImageLoadObject;
52
- getVolumeContainingImageId(imageId: string): {
53
- volume: IImageVolume;
54
- imageIdIndex: number;
55
- };
56
- getCachedImageBasedOnImageURI(imageId: string): any;
57
- putVolumeLoadObject(volumeId: string, volumeLoadObject: IVolumeLoadObject): Promise<any>;
58
- getVolumeLoadObject: (volumeId: string) => IVolumeLoadObject;
59
- getVolume: (volumeId: string) => IImageVolume;
60
- removeImageLoadObject: (imageId: string) => void;
61
- removeVolumeLoadObject: (volumeId: string) => void;
62
- private _incrementImageCacheSize;
63
- private _incrementVolumeCacheSize;
64
- }
65
-
66
- declare type CameraModifiedEvent = CustomEvent_2<CameraModifiedEventDetail>;
67
-
68
- declare type CameraModifiedEventDetail = {
69
- previousCamera: ICamera;
70
- camera: ICamera;
71
- element: HTMLElement;
72
- viewportId: string;
73
- renderingEngineId: string;
74
- };
75
-
76
- declare function cancelLoadAll(): void;
77
-
78
- declare function cancelLoadImage(imageId: string): void;
79
-
80
- declare function cancelLoadImages(imageIds: Array<string>): void;
81
-
82
- declare const colors: number[][];
83
-
84
- declare function compareImages(imageDataURL: string, baseline: string, outputName: any): Promise<any>;
85
-
86
- export declare const CONSTANTS: {
87
- ORIENTATION: Record<string, Types.Orientation>;
88
- CPU_COLORMAPS: Types.CPUFallbackColormapsData;
89
- };
90
-
91
- declare class CornerstoneEventTarget implements EventTarget {
92
- private listeners;
93
- constructor();
94
- reset(): void;
95
- addEventListener(type: any, callback: any): void;
96
- removeEventListener(type: any, callback: any): void;
97
- dispatchEvent(event: any): boolean;
98
- }
99
-
100
- declare interface CPUFallbackColormap {
101
- getId: () => string;
102
- getColorSchemeName: () => string;
103
- setColorSchemeName: (name: string) => void;
104
- getNumberOfColors: () => number;
105
- setNumberOfColors: (numColors: number) => void;
106
- getColor: (index: number) => Point4;
107
- getColorRepeating: (index: number) => Point4;
108
- setColor: (index: number, rgba: Point4) => void;
109
- addColor: (rgba: Point4) => void;
110
- insertColor: (index: number, rgba: Point4) => void;
111
- removeColor: (index: number) => void;
112
- clearColors: () => void;
113
- buildLookupTable: (lut: CPUFallbackLookupTable) => void;
114
- createLookupTable: () => CPUFallbackLookupTable;
115
- isValidIndex: (index: number) => boolean;
116
- }
117
-
118
- declare type CPUFallbackColormapData = {
119
- name: string;
120
- numOfColors?: number;
121
- colors?: Point4[];
122
- segmentedData?: unknown;
123
- numColors?: number;
124
- gamma?: number;
125
- };
126
-
127
- declare type CPUFallbackColormapsData = {
128
- [key: string]: CPUFallbackColormapData;
129
- };
130
-
131
- declare interface CPUFallbackEnabledElement {
132
- scale?: number;
133
- pan?: Point2;
134
- zoom?: number;
135
- rotation?: number;
136
- image?: IImage;
137
- canvas?: HTMLCanvasElement;
138
- viewport?: CPUFallbackViewport;
139
- colormap?: CPUFallbackColormap;
140
- options?: {
141
- [key: string]: unknown;
142
- colormap?: CPUFallbackColormap;
143
- };
144
- renderingTools?: CPUFallbackRenderingTools;
145
- transform?: CPUFallbackTransform;
146
- invalid?: boolean;
147
- needsRedraw?: boolean;
148
- metadata?: {
149
- direction?: Float32Array;
150
- dimensions?: Point3;
151
- spacing?: Point3;
152
- origin?: Point3;
153
- imagePlaneModule?: {
154
- frameOfReferenceUID: string;
155
- rows: number;
156
- columns: number;
157
- imageOrientationPatient: number[];
158
- rowCosines: Point3;
159
- columnCosines: Point3;
160
- imagePositionPatient: number[];
161
- sliceThickness?: number;
162
- sliceLocation?: number;
163
- pixelSpacing: Point2;
164
- rowPixelSpacing: number;
165
- columnPixelSpacing: number;
166
- };
167
- imagePixelModule?: {
168
- samplesPerPixel: number;
169
- photometricInterpretation: string;
170
- rows: number;
171
- columns: number;
172
- bitsAllocated: number;
173
- bitsStored: number;
174
- highBit: number;
175
- pixelRepresentation: number;
176
- planarConfiguration?: number;
177
- pixelAspectRatio?: number;
178
- smallestPixelValue?: number;
179
- largestPixelValue?: number;
180
- redPaletteColorLookupTableDescriptor?: number[];
181
- greenPaletteColorLookupTableDescriptor?: number[];
182
- bluePaletteColorLookupTableDescriptor?: number[];
183
- redPaletteColorLookupTableData: number[];
184
- greenPaletteColorLookupTableData: number[];
185
- bluePaletteColorLookupTableData: number[];
186
- };
187
- };
188
- }
189
-
190
- declare interface CPUFallbackLookupTable {
191
- setNumberOfTableValues: (number: number) => void;
192
- setRamp: (ramp: string) => void;
193
- setTableRange: (start: number, end: number) => void;
194
- setHueRange: (start: number, end: number) => void;
195
- setSaturationRange: (start: number, end: number) => void;
196
- setValueRange: (start: number, end: number) => void;
197
- setRange: (start: number, end: number) => void;
198
- setAlphaRange: (start: number, end: number) => void;
199
- getColor: (scalar: number) => Point4;
200
- build: (force: boolean) => void;
201
- setTableValue(index: number, rgba: Point4): any;
202
- }
203
-
204
- declare type CPUFallbackLUT = {
205
- lut: number[];
206
- };
207
-
208
- declare type CPUFallbackRenderingTools = {
209
- renderCanvas?: HTMLCanvasElement;
210
- lastRenderedIsColor?: boolean;
211
- lastRenderedImageId?: string;
212
- lastRenderedViewport?: {
213
- windowWidth: number | number[];
214
- windowCenter: number | number[];
215
- invert: boolean;
216
- rotation: number;
217
- hflip: boolean;
218
- vflip: boolean;
219
- modalityLUT: CPUFallbackLUT;
220
- voiLUT: CPUFallbackLUT;
221
- colormap: unknown;
222
- };
223
- renderCanvasContext?: {
224
- putImageData: (renderCanvasData: unknown, dx: number, dy: number) => unknown;
225
- };
226
- colormapId?: string;
227
- colorLut?: CPUFallbackLookupTable;
228
- renderCanvasData?: {
229
- data: Uint8ClampedArray;
230
- };
231
- };
232
-
233
- declare interface CPUFallbackTransform {
234
- reset: () => void;
235
- clone: () => CPUFallbackTransform;
236
- multiply: (matrix: TransformMatrix2D) => void;
237
- getMatrix: () => TransformMatrix2D;
238
- invert: () => void;
239
- rotate: (rad: number) => void;
240
- translate: (x: number, y: number) => void;
241
- scale: (sx: number, sy: number) => void;
242
- transformPoint: (point: Point2) => Point2;
243
- }
244
-
245
- declare type CPUFallbackViewport = {
246
- scale?: number;
247
- translation?: {
248
- x: number;
249
- y: number;
250
- };
251
- voi?: {
252
- windowWidth: number;
253
- windowCenter: number;
254
- };
255
- invert?: boolean;
256
- pixelReplication?: boolean;
257
- rotation?: number;
258
- hflip?: boolean;
259
- vflip?: boolean;
260
- modalityLUT?: CPUFallbackLUT;
261
- voiLUT?: CPUFallbackLUT;
262
- colormap?: CPUFallbackColormap;
263
- displayedArea?: CPUFallbackViewportDisplayedArea;
264
- modality?: string;
265
- };
266
-
267
- declare type CPUFallbackViewportDisplayedArea = {
268
- tlhc: {
269
- x: number;
270
- y: number;
271
- };
272
- brhc: {
273
- x: number;
274
- y: number;
275
- };
276
- rowPixelSpacing: number;
277
- columnPixelSpacing: number;
278
- presentationSizeMode: string;
279
- };
280
-
281
- declare type CPUIImageData = {
282
- dimensions: Point3;
283
- direction: Float32Array;
284
- spacing: Point3;
285
- origin: Point3;
286
- imageData: CPUImageData;
287
- metadata: {
288
- Modality: string;
289
- };
290
- scalarData: number[];
291
- scaling: Scaling;
292
- };
293
-
294
- declare type CPUImageData = {
295
- worldToIndex?: (point: Point3) => Point3;
296
- indexToWorld?: (point: Point3) => Point3;
297
- getWorldToIndex?: () => Point3;
298
- getIndexToWorld?: () => Point3;
299
- getSpacing?: () => Point3;
300
- getDirection?: () => Float32Array;
301
- getScalarData?: () => number[];
302
- getDimensions?: () => Point3;
303
- };
304
-
305
- declare function createAndCacheDerivedVolume(referenceVolumeId: string, options: DerivedVolumeOptions): ImageVolume;
306
-
307
- declare function createAndCacheVolume(volumeId: string, options: VolumeLoaderOptions): Promise<Record<string, any>>;
308
-
309
- declare function createFloat32SharedArray(length: number): Float32Array;
310
-
311
- declare function createLocalVolume(options: LocalVolumeOptions, volumeId: string, preventCache?: boolean): ImageVolume;
312
-
313
- declare function createNormalizedMouseEvent(imageData: vtkImageData, index: any, element: any, viewport: any): {
314
- pageX: any;
315
- pageY: any;
316
- clientX: any;
317
- clientY: any;
318
- worldCoord: any;
319
- };
320
-
321
- declare function createUint8SharedArray(length: number): Uint8Array;
322
-
323
- export declare function createVolumeActor(props: createVolumeActorInterface): Promise<VolumeActor>;
324
-
325
- declare interface createVolumeActorInterface {
326
- volumeId: string;
327
- callback?: ({ volumeActor: any, volumeId: string }: {
328
- volumeActor: any;
329
- volumeId: any;
330
- }) => void;
331
- blendMode?: string;
332
- }
333
-
334
- export declare function createVolumeMapper(imageData: any, vtkOpenGLTexture: any): any;
335
-
336
- declare interface CustomEvent_2<T = any> extends Event {
337
- readonly detail: T;
338
- initCustomEvent(typeArg: string, canBubbleArg: boolean, cancelableArg: boolean, detailArg: T): void;
339
- }
340
-
341
- declare interface DerivedVolumeOptions {
342
- volumeId: string;
343
- targetBuffer?: {
344
- type: 'Float32Array' | 'Uint8Array';
345
- };
346
- }
347
-
348
- declare type ElementDisabledEvent = CustomEvent_2<ElementDisabledEventDetail>;
349
-
350
- declare type ElementDisabledEventDetail = {
351
- element: HTMLElement;
352
- viewportId: string;
353
- renderingEngineId: string;
354
- };
355
-
356
- declare type ElementEnabledEvent = CustomEvent_2<ElementEnabledEventDetail>;
357
-
358
- declare type ElementEnabledEventDetail = {
359
- element: HTMLElement;
360
- viewportId: string;
361
- renderingEngineId: string;
362
- };
363
-
364
- export declare const Enums: {
365
- Events: typeof EVENTS;
366
- ViewportType: typeof ViewportType;
367
- InterpolationType: typeof InterpolationType;
368
- RequestType: typeof RequestType;
369
- BlendModes: typeof BlendModes;
370
- };
371
-
372
- export declare enum EVENTS {
373
- CACHE_SIZE_EXCEEDED = "CACHE_SIZE_EXCEEDED",
374
- IMAGE_LOAD_ERROR = "IMAGE_LOAD_ERROR",
375
- CAMERA_MODIFIED = "CORNERSTONE_CAMERA_MODIFIED",
376
- VOI_MODIFIED = "CORNERSTONE_VOI_MODIFIED",
377
- ELEMENT_DISABLED = "CORNERSTONE_ELEMENT_DISABLED",
378
- ELEMENT_ENABLED = "CORNERSTONE_ELEMENT_ENABLED",
379
- IMAGE_RENDERED = "CORNERSTONE_IMAGE_RENDERED",
380
- IMAGE_VOLUME_MODIFIED = "CORNERSTONE_IMAGE_VOLUME_MODIFIED",
381
- IMAGE_LOADED = "CORNERSTONE_IMAGE_LOADED",
382
- IMAGE_LOAD_FAILED = "CORNERSTONE_IMAGE_LOAD_FAILED",
383
- VOLUME_LOADED = "CORNERSTONE_VOLUME_LOADED",
384
- VOLUME_LOADED_FAILED = "CORNERSTONE_VOLUME_LOADED_FAILED",
385
- IMAGE_CACHE_IMAGE_ADDED = "CORNERSTONE_IMAGE_CACHE_IMAGE_ADDED",
386
- IMAGE_CACHE_IMAGE_REMOVED = "CORNERSTONE_IMAGE_CACHE_IMAGE_REMOVED",
387
- VOLUME_CACHE_VOLUME_ADDED = "CORNERSTONE_VOLUME_CACHE_VOLUME_ADDED",
388
- VOLUME_CACHE_VOLUME_REMOVED = "CORNERSTONE_VOLUME_CACHE_VOLUME_REMOVED",
389
- STACK_NEW_IMAGE = "CORNERSTONE_STACK_NEW_IMAGE",
390
- IMAGE_SPACING_CALIBRATED = "CORNERSTONE_IMAGE_SPACING_CALIBRATED",
391
- IMAGE_LOAD_PROGRESS = "CORNERSTONE_IMAGE_LOAD_PROGRESS"
392
- }
393
-
394
- export declare const eventTarget: CornerstoneEventTarget;
395
-
396
- declare namespace EventTypes {
397
- export {
398
- CameraModifiedEventDetail,
399
- CameraModifiedEvent,
400
- VoiModifiedEvent,
401
- VoiModifiedEventDetail,
402
- ElementDisabledEvent,
403
- ElementDisabledEventDetail,
404
- ElementEnabledEvent,
405
- ElementEnabledEventDetail,
406
- ImageRenderedEventDetail,
407
- ImageRenderedEvent,
408
- ImageVolumeModifiedEvent,
409
- ImageVolumeModifiedEventDetail,
410
- ImageLoadedEvent,
411
- ImageLoadedEventDetail,
412
- ImageLoadedFailedEventDetail,
413
- ImageLoadedFailedEvent,
414
- VolumeLoadedEvent,
415
- VolumeLoadedEventDetail,
416
- VolumeLoadedFailedEvent,
417
- VolumeLoadedFailedEventDetail,
418
- ImageCacheImageAddedEvent,
419
- ImageCacheImageAddedEventDetail,
420
- ImageCacheImageRemovedEvent,
421
- ImageCacheImageRemovedEventDetail,
422
- VolumeCacheVolumeAddedEvent,
423
- VolumeCacheVolumeAddedEventDetail,
424
- VolumeCacheVolumeRemovedEvent,
425
- VolumeCacheVolumeRemovedEventDetail,
426
- StackNewImageEvent,
427
- StackNewImageEventDetail,
428
- ImageSpacingCalibratedEvent,
429
- ImageSpacingCalibratedEventDetail,
430
- ImageLoadProgressEvent,
431
- ImageLoadProgressEventDetail
432
- }
433
- }
434
-
435
- /**
436
- * Method use to decorate a given object (publicAPI+model) with vtkRenderer characteristics.
437
- *
438
- * @param publicAPI - object on which methods will be bounds (public)
439
- * @param model - object on which data structure will be bounds (protected)
440
- * @param initialValues -
441
- */
442
- declare function extend(
443
- publicAPI: any,
444
- model: any,
445
- initialValues?: ICameraInitialValues
446
- ): void
447
-
448
- declare function fakeImageLoader(imageId: any): {
449
- promise: Promise<{
450
- rows: any;
451
- columns: any;
452
- width: any;
453
- height: any;
454
- imageId: any;
455
- intercept: number;
456
- slope: number;
457
- invert: boolean;
458
- windowCenter: number;
459
- windowWidth: number;
460
- maxPixelValue: number;
461
- minPixelValue: number;
462
- rowPixelSpacing: number;
463
- columnPixelSpacing: number;
464
- getPixelData: () => any;
465
- sizeInBytes: number;
466
- FrameOfReferenceUID: string;
467
- }>;
468
- };
469
-
470
- declare function fakeMetaDataProvider(type: string, imageId: string): {
471
- photometricInterpretation: string;
472
- rows: number;
473
- columns: number;
474
- samplesPerPixel: number;
475
- bitsAllocated: number;
476
- bitsStored: number;
477
- highBit: number;
478
- pixelRepresentation: number;
479
- } | {
480
- modality: string;
481
- } | {
482
- suvbw: number;
483
- suvlbm: number;
484
- suvbsa: number;
485
- } | {
486
- rows: number;
487
- columns: number;
488
- width: number;
489
- height: number;
490
- imageOrientationPatient: number[];
491
- rowCosines: number[];
492
- columnCosines: number[];
493
- imagePositionPatient: number[];
494
- pixelSpacing: number[];
495
- rowPixelSpacing: number;
496
- columnPixelSpacing: number;
497
- } | {
498
- windowWidth: any;
499
- windowCenter: any;
500
- rescaleSlope?: undefined;
501
- rescaleIntercept?: undefined;
502
- } | {
503
- rescaleSlope: any;
504
- rescaleIntercept: any;
505
- windowWidth?: undefined;
506
- windowCenter?: undefined;
507
- };
508
-
509
- declare function fakeVolumeLoader(volumeId: any): {
510
- promise: Promise<ImageVolume>;
511
- };
512
-
513
- declare type FlipDirection = {
514
- flipHorizontal?: boolean;
515
- flipVertical?: boolean;
516
- };
517
-
518
- declare function getClosestImageId(imageVolume: IImageVolume, worldPos: Point3, viewPlaneNormal: Point3, viewUp: Point3): string;
519
-
520
- export declare function getEnabledElement(element: HTMLElement | undefined): IEnabledElement | undefined;
521
-
522
- export declare function getEnabledElementByIds(viewportId: string, renderingEngineId: string): IEnabledElement;
523
-
524
- declare function getMetaData(type: string, imageId: string): any;
525
-
526
- declare function getMinMax(storedPixelData: number[]): {
527
- min: number;
528
- max: number;
529
- };
530
-
531
- export declare function getOrCreateCanvas(element: HTMLElement): HTMLCanvasElement;
532
-
533
- export declare function getRenderingEngine(id: string): IRenderingEngine | undefined;
534
-
535
- export declare function getRenderingEngines(): IRenderingEngine[] | undefined;
536
-
537
- declare function getRuntimeId(context?: unknown, separator?: string, max?: number): string;
538
-
539
- export declare function getShouldUseCPURendering(): boolean;
540
-
541
- declare function getSpacingInNormalDirection(imageVolume: IImageVolume, viewPlaneNormal: Point3): number;
542
-
543
- declare function getTargetVolumeAndSpacingInNormalDir(viewport: IVolumeViewport, camera: ICamera, targetVolumeId?: string): {
544
- imageVolume: IImageVolume;
545
- spacingInNormalDirection: number;
546
- };
547
-
548
- declare function getVolumeActorCorners(volumeActor: any): Array<Point3>;
549
-
550
- declare function getVolumeViewportsContainingSameVolumes(targetViewport: IVolumeViewport, renderingEngineId?: string): Array<IVolumeViewport>;
551
-
552
- declare function getVolumeViewportsContainingVolumeId(volumeId: string, renderingEngineId?: string): Array<IVolumeViewport>;
553
-
554
- declare interface ICache {
555
- setMaxCacheSize: (maxCacheSize: number) => void;
556
- getMaxCacheSize: () => number;
557
- getCacheSize: () => number;
558
- putImageLoadObject: (imageId: string, imageLoadObject: IImageLoadObject) => Promise<any>;
559
- getImageLoadObject: (imageId: string) => IImageLoadObject | void;
560
- putVolumeLoadObject: (volumeId: string, volumeLoadObject: IVolumeLoadObject) => Promise<any>;
561
- getVolumeLoadObject: (volumeId: string) => IVolumeLoadObject | void;
562
- purgeCache: () => void;
563
- }
564
-
565
- declare interface ICachedImage {
566
- image?: IImage;
567
- imageId: string;
568
- imageLoadObject: IImageLoadObject;
569
- loaded: boolean;
570
- sharedCacheKey?: string;
571
- timeStamp: number;
572
- sizeInBytes: number;
573
- }
574
-
575
- declare interface ICachedVolume {
576
- volume?: IImageVolume;
577
- volumeId: string;
578
- volumeLoadObject: IVolumeLoadObject;
579
- loaded: boolean;
580
- timeStamp: number;
581
- sizeInBytes: number;
582
- }
583
-
584
- declare interface ICamera {
585
- clippingRange?: Point2;
586
- focalPoint?: Point3;
587
- parallelProjection?: boolean;
588
- parallelScale?: number;
589
- position?: Point3;
590
- viewAngle?: number;
591
- viewPlaneNormal?: Point3;
592
- viewUp?: Point3;
593
- slabThickness?: number;
594
- }
595
-
596
- /**
597
- *
598
- */
599
- declare interface ICameraInitialValues {
600
- position?: number[]
601
- focalPoint?: number[]
602
- viewUp?: number[]
603
- directionOfProjection?: number[]
604
- parallelProjection?: boolean
605
- useHorizontalViewAngle?: boolean
606
- viewAngle?: number
607
- parallelScale?: number
608
- clippingRange?: number[]
609
- windowCenter?: number[]
610
- viewPlaneNormal?: number[]
611
- useOffAxisProjection?: boolean
612
- screenBottomLeft?: number[]
613
- screenBottomRight?: number[]
614
- screenTopRight?: number[]
615
- freezeFocalPoint?: boolean
616
- physicalTranslation?: number[]
617
- physicalScale?: number
618
- physicalViewUp?: number[]
619
- physicalViewNorth?: number[]
620
- }
621
-
622
- declare interface IEnabledElement {
623
- viewport: IStackViewport | IVolumeViewport;
624
- renderingEngine: IRenderingEngine;
625
- viewportId: string;
626
- renderingEngineId: string;
627
- FrameOfReferenceUID: string;
628
- }
629
-
630
- declare interface IImage {
631
- imageId: string;
632
- sharedCacheKey?: string;
633
- minPixelValue: number;
634
- maxPixelValue: number;
635
- slope: number;
636
- intercept: number;
637
- windowCenter: number[] | number;
638
- windowWidth: number[] | number;
639
- getPixelData: () => Array<number>;
640
- getCanvas: () => HTMLCanvasElement;
641
- rows: number;
642
- columns: number;
643
- height: number;
644
- width: number;
645
- color: boolean;
646
- rgba: boolean;
647
- numComps: number;
648
- render?: (enabledElement: CPUFallbackEnabledElement, invalidated: boolean) => unknown;
649
- columnPixelSpacing: number;
650
- rowPixelSpacing: number;
651
- sliceThickness?: number;
652
- invert: boolean;
653
- sizeInBytes: number;
654
- modalityLUT?: CPUFallbackLUT;
655
- voiLUT?: CPUFallbackLUT;
656
- colormap?: CPUFallbackColormap;
657
- scaling?: {
658
- PET?: {
659
- SUVlbmFactor?: number;
660
- SUVbsaFactor?: number;
661
- suvbwToSuvlbm?: number;
662
- suvbwToSuvbsa?: number;
663
- };
664
- };
665
- stats?: {
666
- lastStoredPixelDataToCanvasImageDataTime?: number;
667
- lastGetPixelDataTime?: number;
668
- lastPutImageDataTime?: number;
669
- lastLutGenerateTime?: number;
670
- lastRenderedViewport?: unknown;
671
- lastRenderTime?: number;
672
- };
673
- cachedLut?: {
674
- windowWidth?: number | number[];
675
- windowCenter?: number | number[];
676
- invert?: boolean;
677
- lutArray?: Uint8ClampedArray;
678
- modalityLUT?: unknown;
679
- voiLUT?: CPUFallbackLUT;
680
- };
681
- }
682
-
683
- declare interface IImageData {
684
- dimensions: Point3;
685
- direction: Float32Array;
686
- spacing: Point3;
687
- origin: Point3;
688
- scalarData: Float32Array;
689
- imageData: vtkImageData;
690
- metadata: {
691
- Modality: string;
692
- };
693
- scaling?: Scaling;
694
- }
695
-
696
- declare interface IImageLoadObject {
697
- promise: Promise<IImage>;
698
- cancel?: () => void;
699
- decache?: () => void;
700
- }
701
-
702
- declare interface IImageVolume {
703
- readonly volumeId: string;
704
- dimensions: Point3;
705
- direction: Float32Array;
706
- metadata: Metadata;
707
- origin: Point3;
708
- scalarData: any;
709
- scaling?: {
710
- PET?: {
711
- SUVlbmFactor?: number;
712
- SUVbsaFactor?: number;
713
- suvbwToSuvlbm?: number;
714
- suvbwToSuvbsa?: number;
715
- };
716
- };
717
- sizeInBytes?: number;
718
- spacing: Point3;
719
- numVoxels: number;
720
- imageData?: vtkImageData;
721
- vtkOpenGLTexture: any;
722
- loadStatus?: Record<string, any>;
723
- imageIds?: Array<string>;
724
- referenceVolumeId?: string;
725
- convertToCornerstoneImage?: (imageId: string, imageIdIndex: number) => IImageLoadObject;
726
- }
727
-
728
- declare type ImageCacheImageAddedEvent = CustomEvent_2<ImageCacheImageAddedEventDetail>;
729
-
730
- declare type ImageCacheImageAddedEventDetail = {
731
- image: ICachedImage;
732
- };
733
-
734
- declare type ImageCacheImageRemovedEvent = CustomEvent_2<ImageCacheImageRemovedEventDetail>;
735
-
736
- declare type ImageCacheImageRemovedEventDetail = {
737
- imageId: string;
738
- };
739
-
740
- declare function imageIdToURI(imageId: string): string;
741
-
742
- declare type ImageLoadedEvent = CustomEvent_2<ImageLoadedEventDetail>;
743
-
744
- declare type ImageLoadedEventDetail = {
745
- image: IImage;
746
- };
747
-
748
- declare type ImageLoadedFailedEvent = CustomEvent_2<ImageLoadedFailedEventDetail>;
749
-
750
- declare type ImageLoadedFailedEventDetail = {
751
- imageId: string;
752
- error: unknown;
753
- };
754
-
755
- declare namespace imageLoader {
756
- export {
757
- loadImage,
758
- loadAndCacheImage,
759
- loadAndCacheImages,
760
- cancelLoadImage,
761
- cancelLoadImages,
762
- cancelLoadAll,
763
- registerImageLoader,
764
- registerUnknownImageLoader,
765
- unregisterAllImageLoaders,
766
- ImageLoaderOptions
767
- }
768
- }
769
- export { imageLoader }
770
-
771
- declare type ImageLoaderFn = (imageId: string, options?: Record<string, any>) => {
772
- promise: Promise<Record<string, any>>;
773
- cancelFn?: () => void | undefined;
774
- decache?: () => void | undefined;
775
- };
776
-
777
- declare interface ImageLoaderOptions {
778
- priority: number;
779
- requestType: string;
780
- additionalDetails?: Record<string, unknown>;
781
- }
782
-
783
- declare const imageLoadPoolManager: RequestPoolManager;
784
- export { imageLoadPoolManager }
785
- export { imageLoadPoolManager as requestPoolManager }
786
-
787
- declare type ImageLoadProgressEvent = CustomEvent_2<ImageLoadProgressEventDetail>;
788
-
789
- declare type ImageLoadProgressEventDetail = {
790
- url: string;
791
- imageId: string;
792
- loaded: number;
793
- total: number;
794
- percent: number;
795
- };
796
-
797
- declare type ImageRenderedEvent = CustomEvent_2<ElementEnabledEventDetail>;
798
-
799
- declare type ImageRenderedEventDetail = {
800
- element: HTMLElement;
801
- viewportId: string;
802
- renderingEngineId: string;
803
- suppressEvents?: boolean;
804
- };
805
-
806
- export declare const imageRetrievalPoolManager: RequestPoolManager;
807
-
808
- declare type ImageSpacingCalibratedEvent = CustomEvent_2<ImageSpacingCalibratedEventDetail>;
809
-
810
- declare type ImageSpacingCalibratedEventDetail = {
811
- element: HTMLElement;
812
- viewportId: string;
813
- renderingEngineId: string;
814
- imageId: string;
815
- rowScale: number;
816
- columnScale: number;
817
- imageData: vtkImageData;
818
- worldToIndex: mat4;
819
- };
820
-
821
- export declare class ImageVolume implements IImageVolume {
822
- readonly volumeId: string;
823
- dimensions: Point3;
824
- direction: Float32Array;
825
- metadata: Metadata;
826
- origin: Point3;
827
- scalarData: Float32Array | Uint8Array;
828
- scaling?: {
829
- PET?: {
830
- SUVlbmFactor?: number;
831
- SUVbsaFactor?: number;
832
- suvbwToSuvlbm?: number;
833
- suvbwToSuvbsa?: number;
834
- };
835
- };
836
- sizeInBytes?: number;
837
- spacing: Point3;
838
- numVoxels: number;
839
- imageData?: any;
840
- vtkOpenGLTexture: any;
841
- loadStatus?: Record<string, any>;
842
- imageIds?: Array<string>;
843
- referenceVolumeId?: string;
844
- constructor(props: IVolume);
845
- }
846
-
847
- declare type ImageVolumeModifiedEvent = CustomEvent_2<ImageVolumeModifiedEventDetail>;
848
-
849
- declare type ImageVolumeModifiedEventDetail = {
850
- imageVolume: IImageVolume;
851
- FrameOfReferenceUID: string;
852
- };
853
-
854
- declare function indexWithinDimensions(index: Point3, dimensions: Point3): boolean;
855
-
856
- export declare function init(defaultConfiguration?: {}): Promise<boolean>;
857
-
858
- declare enum InterpolationType {
859
- NEAREST = 0,
860
- LINEAR = 1,
861
- FAST_LINEAR = 2
862
- }
863
-
864
- declare function invertRgbTransferFunction(rgbTransferFunction: any): void;
865
-
866
- declare interface IRegisterImageLoader {
867
- registerImageLoader: (scheme: string, imageLoader: ImageLoaderFn) => void;
868
- }
869
-
870
- declare interface IRenderingEngine {
871
- id: string;
872
- hasBeenDestroyed: boolean;
873
- offscreenMultiRenderWindow: any;
874
- offScreenCanvasContainer: any;
875
- setViewports(viewports: Array<PublicViewportInput>): void;
876
- resize(): void;
877
- getViewport(id: string): IStackViewport | IVolumeViewport;
878
- getViewports(): Array<IStackViewport | IVolumeViewport>;
879
- render(): void;
880
- renderViewports(viewportIds: Array<string>): void;
881
- renderViewport(viewportId: string): void;
882
- renderFrameOfReference(FrameOfReferenceUID: string): void;
883
- fillCanvasWithBackgroundColor(canvas: HTMLCanvasElement, backgroundColor: [number, number, number]): void;
884
- enableElement(viewportInputEntry: PublicViewportInput): void;
885
- disableElement(viewportId: string): void;
886
- getStackViewports(): Array<IStackViewport>;
887
- getVolumeViewports(): Array<IVolumeViewport>;
888
- destroy(): void;
889
- _debugRender(): void;
890
- }
891
-
892
- export declare function isCornerstoneInitialized(): boolean;
893
-
894
- declare function isEqual(v1: number[] | Float32Array, v2: number[] | Float32Array, tolerance?: number): boolean;
895
-
896
- declare function isOpposite(v1: Point3, v2: Point3, tolerance?: number): boolean;
897
-
898
- declare interface IStackViewport extends IViewport {
899
- modality: string;
900
- scaling: Scaling;
901
- resize: () => void;
902
- getFrameOfReferenceUID: () => string;
903
- setProperties({ voiRange, invert, interpolationType, rotation, flipHorizontal, flipVertical, }: StackViewportProperties): void;
904
- getProperties: () => StackViewportProperties;
905
- canvasToWorld: (canvasPos: Point2) => Point3;
906
- worldToCanvas: (worldPos: Point3) => Point2;
907
- getCurrentImageIdIndex: () => number;
908
- getImageIds: () => string[];
909
- getCurrentImageId: () => string;
910
- customRenderViewportToCanvas: () => {
911
- canvas: HTMLCanvasElement;
912
- element: HTMLElement;
913
- viewportId: string;
914
- renderingEngineId: string;
915
- };
916
- getImageData(): IImageData | CPUIImageData;
917
- resetProperties(): void;
918
- getCamera(): ICamera;
919
- setCamera(cameraInterface: ICamera): void;
920
- setStack(imageIds: Array<string>, currentImageIdIndex?: number): Promise<string>;
921
- resetCamera(resetPanZoomForViewPlane?: boolean): boolean;
922
- setImageIdIndex(imageIdIndex: number): Promise<string>;
923
- calibrateSpacing(imageId: string): void;
924
- getRenderer(): any;
925
- setColormap(colormap: CPUFallbackColormapData): void;
926
- unsetColormap(): void;
927
- }
928
-
929
- declare interface IStreamingImageVolume extends ImageVolume {
930
- clearLoadCallbacks(): void;
931
- convertToCornerstoneImage(imageId: string, imageIdIndex: number): any;
932
- decache(completelyRemove: boolean): void;
933
- }
934
-
935
- declare interface IStreamingVolumeProperties {
936
- imageIds: Array<string>;
937
- loadStatus: {
938
- loaded: boolean;
939
- loading: boolean;
940
- cachedFrames: Array<boolean>;
941
- callbacks: Array<() => void>;
942
- };
943
- }
944
-
945
- declare interface IViewport {
946
- id: string;
947
- renderingEngineId: string;
948
- type: ViewportType;
949
- canvas: HTMLCanvasElement;
950
- element: HTMLElement;
951
- sx: number;
952
- sy: number;
953
- sWidth: number;
954
- sHeight: number;
955
- _actors: Map<string, any>;
956
- defaultOptions: any;
957
- options: ViewportInputOptions;
958
- suppressEvents: boolean;
959
- getFrameOfReferenceUID: () => string;
960
- canvasToWorld: (canvasPos: Point2) => Point3;
961
- worldToCanvas: (worldPos: Point3) => Point2;
962
- getActors(): Array<ActorEntry>;
963
- getActor(actorUID: string): ActorEntry;
964
- setActors(actors: Array<ActorEntry>): void;
965
- addActors(actors: Array<ActorEntry>): void;
966
- addActor(actorEntry: ActorEntry): void;
967
- removeAllActors(): void;
968
- getRenderingEngine(): any;
969
- getRenderer(): void;
970
- render(): void;
971
- setOptions(options: ViewportInputOptions, immediate: boolean): void;
972
- reset(immediate: boolean): void;
973
- getCanvas(): HTMLCanvasElement;
974
- getCamera(): ICamera;
975
- setCamera(cameraInterface: ICamera): void;
976
- customRenderViewportToCanvas: () => unknown;
977
- _getCorners(bounds: Array<number>): Array<number>[];
978
- }
979
-
980
- declare interface IViewportId {
981
- renderingEngineId: string;
982
- viewportId: string;
983
- }
984
-
985
- declare interface IVolume {
986
- volumeId: string;
987
- metadata: Metadata;
988
- dimensions: Point3;
989
- spacing: Point3;
990
- origin: Point3;
991
- direction: Float32Array;
992
- scalarData: Float32Array | Uint8Array;
993
- sizeInBytes?: number;
994
- imageData?: vtkImageData;
995
- referenceVolumeId?: string;
996
- scaling?: {
997
- PET?: {
998
- SUVlbmFactor?: number;
999
- SUVbsaFactor?: number;
1000
- suvbwToSuvlbm?: number;
1001
- suvbwToSuvbsa?: number;
1002
- };
1003
- };
1004
- }
1005
-
1006
- declare interface IVolumeInput {
1007
- volumeId: string;
1008
- actorUID?: string;
1009
- visibility?: boolean;
1010
- callback?: VolumeInputCallback;
1011
- blendMode?: string;
1012
- slabThickness?: number;
1013
- }
1014
-
1015
- declare interface IVolumeLoadObject {
1016
- promise: Promise<ImageVolume>;
1017
- cancel?: () => void;
1018
- decache?: () => void;
1019
- }
1020
-
1021
- declare interface IVolumeViewport extends IViewport {
1022
- useCPURendering: boolean;
1023
- getFrameOfReferenceUID: () => string;
1024
- getProperties: () => any;
1025
- canvasToWorld: (canvasPos: Point2) => Point3;
1026
- worldToCanvas: (worldPos: Point3) => Point2;
1027
- getCurrentImageIdIndex: () => number;
1028
- getCurrentImageId: () => string;
1029
- setVolumes(volumeInputArray: Array<IVolumeInput>, immediate?: boolean): Promise<void>;
1030
- addVolumes(volumeInputArray: Array<IVolumeInput>, immediate?: boolean): Promise<void>;
1031
- removeVolumeActors(actorUIDs: Array<string>, immediate?: boolean): void;
1032
- getIntensityFromWorld(point: Point3): number;
1033
- getBounds(): any;
1034
- flip(flipDirection: FlipDirection): void;
1035
- resetCamera(resetPanZoomForViewPlane?: boolean): boolean;
1036
- setSlabThickness(slabThickness: number): void;
1037
- getSlabThickness(): number;
1038
- getImageData(): IImageData | undefined;
1039
- }
1040
-
1041
- declare function linePlaneIntersection(p0: Point3, p1: Point3, plane: Plane): Point3;
1042
-
1043
- declare function loadAndCacheImage(imageId: string, options?: ImageLoaderOptions): Promise<IImage>;
1044
-
1045
- declare function loadAndCacheImages(imageIds: Array<string>, options?: ImageLoaderOptions): Promise<IImage>[];
1046
-
1047
- declare function loadImage(imageId: string, options?: ImageLoaderOptions): Promise<IImage>;
1048
-
1049
- declare function loadVolume(volumeId: string, options?: VolumeLoaderOptions): Promise<Types.IImageVolume>;
1050
-
1051
- declare interface LocalVolumeOptions {
1052
- scalarData: Float32Array | Uint8Array;
1053
- metadata: Metadata;
1054
- dimensions: Point3;
1055
- spacing: Point3;
1056
- origin: Point3;
1057
- direction: Float32Array;
1058
- }
1059
-
1060
- declare type Metadata = {
1061
- BitsAllocated: number;
1062
- BitsStored: number;
1063
- SamplesPerPixel: number;
1064
- HighBit: number;
1065
- PhotometricInterpretation: string;
1066
- PixelRepresentation: number;
1067
- Modality: string;
1068
- ImageOrientationPatient: Array<number>;
1069
- PixelSpacing: Array<number>;
1070
- FrameOfReferenceUID: string;
1071
- Columns: number;
1072
- Rows: number;
1073
- voiLut: Array<VOI>;
1074
- };
1075
-
1076
- export declare const metaData: {
1077
- addProvider: typeof addProvider;
1078
- removeProvider: typeof removeProvider;
1079
- removeAllProviders: typeof removeAllProviders;
1080
- get: typeof getMetaData;
1081
- };
1082
-
1083
- declare const metadataProvider: {
1084
- add: (imageId: string, payload: [number, number]) => void;
1085
- get: (type: string, imageId: string) => [number, number];
1086
- };
1087
-
1088
- /**
1089
- * Method use to create a new instance of vtkCamera with its focal point at the origin,
1090
- * and position=(0,0,1). The view up is along the y-axis, view angle is 30 degrees,
1091
- * and the clipping range is (.1,1000).
1092
- * @param initialValues - for pre-setting some of its content
1093
- */
1094
- declare function newInstance(initialValues?: ICameraInitialValues): vtkSlabCamera
1095
-
1096
- declare type Orientation = {
1097
- sliceNormal: Point3;
1098
- viewUp: Point3;
1099
- };
1100
-
1101
- declare namespace planar {
1102
- export {
1103
- linePlaneIntersection,
1104
- planeEquation,
1105
- threePlaneIntersection
1106
- }
1107
- }
1108
-
1109
- declare type Plane = [number, number, number, number];
1110
-
1111
- declare function planeEquation(normal: Point3, point: Point3 | vec3): Plane;
1112
-
1113
- declare type Point2 = [number, number];
1114
-
1115
- declare type Point3 = [number, number, number];
1116
-
1117
- declare type Point4 = [number, number, number, number];
1118
-
1119
- declare type PTScaling = {
1120
- suvbwToSuvlbm?: number;
1121
- suvbwToSuvbsa?: number;
1122
- };
1123
-
1124
- declare type PublicViewportInput = {
1125
- element: HTMLElement;
1126
- viewportId: string;
1127
- type: ViewportType;
1128
- defaultOptions: ViewportInputOptions;
1129
- };
1130
-
1131
- export declare function registerImageLoader(scheme: string, imageLoader: ImageLoaderFn): void;
1132
-
1133
- declare function registerUnknownImageLoader(imageLoader: ImageLoaderFn): ImageLoaderFn;
1134
-
1135
- declare function registerUnknownVolumeLoader(volumeLoader: Types.VolumeLoaderFn): Types.VolumeLoaderFn | undefined;
1136
-
1137
- declare function registerVolumeLoader(scheme: string, volumeLoader: Types.VolumeLoaderFn): void;
1138
-
1139
- declare function removeAllProviders(): void;
1140
-
1141
- declare function removeProvider(provider: (type: string, imageId: string) => {
1142
- any: any;
1143
- }): void;
1144
-
1145
- export declare class RenderingEngine implements IRenderingEngine {
1146
- readonly id: string;
1147
- hasBeenDestroyed: boolean;
1148
- offscreenMultiRenderWindow: any;
1149
- readonly offScreenCanvasContainer: any;
1150
- private _viewports;
1151
- private _needsRender;
1152
- private _animationFrameSet;
1153
- private _animationFrameHandle;
1154
- private useCPURendering;
1155
- constructor(id?: string);
1156
- enableElement(viewportInputEntry: PublicViewportInput): void;
1157
- disableElement(viewportId: string): void;
1158
- setViewports(viewportInputEntries: Array<PublicViewportInput>): void;
1159
- resize(immediate?: boolean, resetPanZoomForViewPlane?: boolean): void;
1160
- getViewport(viewportId: string): IStackViewport | IVolumeViewport;
1161
- getViewports(): Array<IStackViewport | IVolumeViewport>;
1162
- getStackViewports(): Array<IStackViewport>;
1163
- getVolumeViewports(): Array<IVolumeViewport>;
1164
- render(): void;
1165
- renderFrameOfReference: (FrameOfReferenceUID: string) => void;
1166
- renderViewports(viewportIds: Array<string>): void;
1167
- renderViewport(viewportId: string): void;
1168
- destroy(): void;
1169
- fillCanvasWithBackgroundColor(canvas: HTMLCanvasElement, backgroundColor: [number, number, number]): void;
1170
- private _resizeUsingCustomResizeHandler;
1171
- private _resizeVTKViewports;
1172
- private enableVTKjsDrivenViewport;
1173
- private _removeViewport;
1174
- private addVtkjsDrivenViewport;
1175
- private addCustomViewport;
1176
- private setCustomViewports;
1177
- private setVtkjsDrivenViewports;
1178
- private _resizeOffScreenCanvas;
1179
- private _resize;
1180
- private _getViewportCoordsOnOffScreenCanvas;
1181
- private _getViewportsAsArray;
1182
- private _setViewportsToBeRenderedNextFrame;
1183
- private _render;
1184
- private _renderFlaggedViewports;
1185
- private performVtkDrawCall;
1186
- private renderViewportUsingCustomOrVtkPipeline;
1187
- private _renderViewportFromVtkCanvasToOnscreenCanvas;
1188
- private _resetViewport;
1189
- private _clearAnimationFrame;
1190
- private _reset;
1191
- private _throwIfDestroyed;
1192
- _downloadOffScreenCanvas(): void;
1193
- _debugRender(): void;
1194
- }
1195
-
1196
- export declare function renderToCanvas(imageId: string, canvas: HTMLCanvasElement, renderingEngineId?: any, suppressEvents?: boolean): Promise<string>;
1197
-
1198
- declare type RequestDetailsInterface = {
1199
- requestFn: () => Promise<void>;
1200
- type: RequestType;
1201
- additionalDetails: AdditionalDetails;
1202
- };
1203
-
1204
- declare type RequestPool = {
1205
- [name in RequestType]: {
1206
- [key: number]: RequestDetailsInterface[];
1207
- };
1208
- };
1209
-
1210
- declare class RequestPoolManager {
1211
- private requestPool;
1212
- private awake;
1213
- private numRequests;
1214
- maxNumRequests: {
1215
- interaction: number;
1216
- thumbnail: number;
1217
- prefetch: number;
1218
- };
1219
- grabDelay: number;
1220
- private timeoutHandle;
1221
- constructor();
1222
- destroy(): void;
1223
- addRequest(requestFn: () => Promise<void>, type: RequestType, additionalDetails: Record<string, unknown>, priority?: number): void;
1224
- filterRequests(filterFunction: (requestDetails: RequestDetailsInterface) => boolean): void;
1225
- clearRequestStack(type: string): void;
1226
- protected sendRequest({ requestFn, type }: RequestDetailsInterface): void;
1227
- protected startGrabbing(): void;
1228
- protected startAgain(): void;
1229
- protected getSortedPriorityGroups(type: string): Array<number>;
1230
- protected getNextRequest(): RequestDetailsInterface | false;
1231
- getRequestPool(): RequestPool;
1232
- }
1233
-
1234
- declare enum RequestType {
1235
- Interaction = "interaction",
1236
- Thumbnail = "thumbnail",
1237
- Prefetch = "prefetch"
1238
- }
1239
-
1240
- export declare function resetUseCPURendering(): void;
1241
-
1242
- declare function scaleRGBTransferFunction(rgbTransferFunction: any, scalingFactor: number): void;
1243
-
1244
- declare type Scaling = {
1245
- PET?: PTScaling;
1246
- };
1247
-
1248
- declare type ScalingParameters = {
1249
- rescaleSlope: number;
1250
- rescaleIntercept: number;
1251
- modality: string;
1252
- suvbw?: number;
1253
- suvlbm?: number;
1254
- suvbsa?: number;
1255
- };
1256
-
1257
- export declare function setMaxSimultaneousRequests(newMaxSimultaneousRequests: any): void;
1258
-
1259
- export declare class Settings {
1260
- constructor(base?: Settings);
1261
- set(key: string, value: unknown): boolean;
1262
- get(key: string): unknown;
1263
- unset(key: string): boolean;
1264
- forEach(callback: (key: string, value: unknown) => void): void;
1265
- extend(): Settings;
1266
- import(root: Record<string, unknown>): void;
1267
- dump(): Record<string, unknown>;
1268
- static assert(subject: Settings): Settings;
1269
- static getDefaultSettings(subfield?: any): Settings | any;
1270
- static getRuntimeSettings(): Settings;
1271
- static getObjectSettings(subject: unknown, from?: unknown): Settings;
1272
- static extendRuntimeSettings(): Settings;
1273
- }
1274
-
1275
- export declare function setUseCPURendering(status: boolean): void;
1276
-
1277
- export declare function setVolumesForViewports(renderingEngine: IRenderingEngine, volumeInputs: Array<IVolumeInput>, viewportIds: Array<string>, immediateRender?: boolean): Promise<void>;
1278
-
1279
- declare type StackNewImageEvent = CustomEvent_2<StackNewImageEventDetail>;
1280
-
1281
- declare type StackNewImageEventDetail = {
1282
- image: IImage;
1283
- imageId: string;
1284
- viewportId: string;
1285
- renderingEngineId: string;
1286
- };
1287
-
1288
- export declare class StackViewport extends Viewport implements IStackViewport {
1289
- private imageIds;
1290
- private currentImageIdIndex;
1291
- private voiRange;
1292
- private invert;
1293
- private interpolationType;
1294
- private rotation;
1295
- private _imageData;
1296
- private cameraPosOnRender;
1297
- private stackInvalidated;
1298
- private panCache;
1299
- private shouldFlip;
1300
- private voiApplied;
1301
- private rotationCache;
1302
- private _publishCalibratedEvent;
1303
- private _calibrationEvent;
1304
- private _cpuFallbackEnabledElement?;
1305
- private useCPURendering;
1306
- private cpuImagePixelData;
1307
- private cpuRenderingInvalidated;
1308
- modality: string;
1309
- scaling: Scaling;
1310
- constructor(props: ViewportInput);
1311
- static get useCustomRenderingPipeline(): boolean;
1312
- resize: () => void;
1313
- getImageData(): IImageData | CPUIImageData;
1314
- private _resizeCPU;
1315
- private getImageDataGPU;
1316
- private getImageDataCPU;
1317
- getFrameOfReferenceUID: () => string | undefined;
1318
- private createActorMapper;
1319
- private buildMetadata;
1320
- private calibrateIfNecessary;
1321
- setProperties({ voiRange, invert, interpolationType, rotation, flipHorizontal, flipVertical, }?: StackViewportProperties): void;
1322
- getProperties: () => StackViewportProperties;
1323
- resetProperties(): void;
1324
- getCamera(): ICamera;
1325
- setCamera(cameraInterface: ICamera): void;
1326
- private _resetProperties;
1327
- private _setPropertiesFromCache;
1328
- private getCameraCPU;
1329
- private setCameraCPU;
1330
- private setFlipDirection;
1331
- private setFlipCPU;
1332
- private setVOI;
1333
- private setRotation;
1334
- private setInterpolationType;
1335
- private setInvertColor;
1336
- private setRotationCPU;
1337
- private setRotationGPU;
1338
- private setInterpolationTypeGPU;
1339
- private setInterpolationTypeCPU;
1340
- private setInvertColorCPU;
1341
- private setInvertColorGPU;
1342
- private setVOICPU;
1343
- private setVOIGPU;
1344
- private _addScalingToViewport;
1345
- private _getNumCompsFromPhotometricInterpretation;
1346
- private _getImageDataMetadata;
1347
- private _getCameraOrientation;
1348
- private _createVTKImageData;
1349
- setStack(imageIds: Array<string>, currentImageIdIndex?: number): Promise<string>;
1350
- private _checkVTKImageDataMatchesCornerstoneImage;
1351
- private _updateVTKImageDataFromCornerstoneImage;
1352
- private _loadImage;
1353
- private _loadImageCPU;
1354
- private _loadImageGPU;
1355
- private _updateActorToDisplayImageId;
1356
- private _setImageIdIndex;
1357
- resetCamera(resetPanZoomForViewPlane?: boolean): boolean;
1358
- private resetCameraCPU;
1359
- private resetCameraGPU;
1360
- setImageIdIndex(imageIdIndex: number): Promise<string>;
1361
- calibrateSpacing(imageId: string): void;
1362
- private _restoreCameraProps;
1363
- private triggerCameraEvent;
1364
- private triggerCalibrationEvent;
1365
- canvasToWorld: (canvasPos: Point2) => Point3;
1366
- worldToCanvas: (worldPos: Point3) => Point2;
1367
- private canvasToWorldCPU;
1368
- private worldToCanvasCPU;
1369
- private canvasToWorldGPU;
1370
- private worldToCanvasGPU;
1371
- getCurrentImageIdIndex: () => number;
1372
- getImageIds: () => Array<string>;
1373
- getCurrentImageId: () => string;
1374
- getRenderer(): any;
1375
- getDefaultActor(): ActorEntry;
1376
- getActors(): Array<ActorEntry>;
1377
- getActor(actorUID: string): ActorEntry;
1378
- setActors(actors: Array<ActorEntry>): void;
1379
- addActors(actors: Array<ActorEntry>): void;
1380
- addActor(actorEntry: ActorEntry): void;
1381
- removeAllActors(): void;
1382
- private getCPUFallbackError;
1383
- private fillWithBackgroundColor;
1384
- customRenderViewportToCanvas: () => {
1385
- canvas: HTMLCanvasElement;
1386
- element: HTMLElement;
1387
- viewportId: string;
1388
- renderingEngineId: string;
1389
- };
1390
- setColormap(colormap: CPUFallbackColormapData): void;
1391
- unsetColormap(): void;
1392
- private unsetColormapCPU;
1393
- private setColormapCPU;
1394
- private setColormapGPU;
1395
- private unsetColormapGPU;
1396
- }
1397
-
1398
- declare type StackViewportProperties = {
1399
- voiRange?: VOIRange;
1400
- invert?: boolean;
1401
- interpolationType?: InterpolationType;
1402
- rotation?: number;
1403
- flipHorizontal?: boolean;
1404
- flipVertical?: boolean;
1405
- };
1406
-
1407
- declare namespace testUtils {
1408
- export {
1409
- compareImages,
1410
- colors,
1411
- fakeImageLoader,
1412
- fakeMetaDataProvider,
1413
- fakeVolumeLoader,
1414
- createNormalizedMouseEvent
1415
- }
1416
- }
1417
-
1418
- declare function threePlaneIntersection(firstPlane: Plane, secondPlane: Plane, thirdPlane: Plane): Point3;
1419
-
1420
- declare function toLowHighRange(windowWidth: number, windowCenter: number): {
1421
- lower: number;
1422
- upper: number;
1423
- };
1424
-
1425
- declare function toWindowLevel(low: number, high: number): {
1426
- windowWidth: number;
1427
- windowCenter: number;
1428
- };
1429
-
1430
- declare type TransformMatrix2D = [number, number, number, number, number, number];
1431
-
1432
- export declare function triggerEvent(el: EventTarget, type: string, detail?: unknown): boolean;
1433
-
1434
- declare namespace Types {
1435
- export {
1436
- ICamera,
1437
- IStackViewport,
1438
- IVolumeViewport,
1439
- IEnabledElement,
1440
- ICache,
1441
- IVolume,
1442
- IViewportId,
1443
- IImageVolume,
1444
- IRenderingEngine,
1445
- ScalingParameters,
1446
- PTScaling,
1447
- Scaling,
1448
- IStreamingImageVolume,
1449
- IImage,
1450
- IImageData,
1451
- CPUIImageData,
1452
- CPUImageData,
1453
- EventTypes,
1454
- ImageLoaderFn,
1455
- VolumeLoaderFn,
1456
- IRegisterImageLoader,
1457
- IStreamingVolumeProperties,
1458
- IViewport,
1459
- StackViewportProperties,
1460
- PublicViewportInput,
1461
- VolumeActor,
1462
- ActorEntry,
1463
- IImageLoadObject,
1464
- IVolumeLoadObject,
1465
- IVolumeInput,
1466
- VolumeInputCallback,
1467
- Metadata,
1468
- Orientation,
1469
- Point2,
1470
- Point3,
1471
- Point4,
1472
- Plane,
1473
- ViewportInputOptions,
1474
- VOIRange,
1475
- VOI,
1476
- FlipDirection,
1477
- ICachedImage,
1478
- ICachedVolume,
1479
- CPUFallbackEnabledElement,
1480
- CPUFallbackViewport,
1481
- CPUFallbackTransform,
1482
- CPUFallbackColormapData,
1483
- CPUFallbackViewportDisplayedArea,
1484
- CPUFallbackColormapsData,
1485
- CPUFallbackColormap,
1486
- TransformMatrix2D,
1487
- CPUFallbackLookupTable,
1488
- CPUFallbackLUT,
1489
- CPUFallbackRenderingTools,
1490
- CustomEvent_2 as CustomEventType
1491
- }
1492
- }
1493
- export { Types }
1494
-
1495
- declare function unregisterAllImageLoaders(): void;
1496
-
1497
- declare namespace utilities {
1498
- export {
1499
- invertRgbTransferFunction,
1500
- scaleRGBTransferFunction as scaleRgbTransferFunction,
1501
- triggerEvent,
1502
- imageIdToURI,
1503
- metadataProvider as calibratedPixelSpacingMetadataProvider,
1504
- uuidv4,
1505
- planar,
1506
- getMinMax,
1507
- getRuntimeId,
1508
- isEqual,
1509
- isOpposite,
1510
- createFloat32SharedArray,
1511
- createUint8SharedArray,
1512
- testUtils,
1513
- windowLevel,
1514
- getClosestImageId,
1515
- getSpacingInNormalDirection,
1516
- getTargetVolumeAndSpacingInNormalDir,
1517
- getVolumeActorCorners,
1518
- indexWithinDimensions,
1519
- getVolumeViewportsContainingSameVolumes,
1520
- getVolumeViewportsContainingVolumeId
1521
- }
1522
- }
1523
- export { utilities }
1524
-
1525
- declare function uuidv4(): string;
1526
-
1527
- export declare class Viewport implements IViewport {
1528
- readonly id: string;
1529
- readonly element: HTMLElement;
1530
- readonly canvas: HTMLCanvasElement;
1531
- readonly renderingEngineId: string;
1532
- readonly type: ViewportType;
1533
- protected flipHorizontal: boolean;
1534
- protected flipVertical: boolean;
1535
- sx: number;
1536
- sy: number;
1537
- sWidth: number;
1538
- sHeight: number;
1539
- _actors: Map<string, any>;
1540
- readonly defaultOptions: any;
1541
- options: ViewportInputOptions;
1542
- private _suppressCameraModifiedEvents;
1543
- readonly suppressEvents: boolean;
1544
- constructor(props: ViewportInput);
1545
- getFrameOfReferenceUID: () => string;
1546
- canvasToWorld: (canvasPos: Point2) => Point3;
1547
- worldToCanvas: (worldPos: Point3) => Point2;
1548
- customRenderViewportToCanvas: () => unknown;
1549
- resize: () => void;
1550
- getProperties: () => void;
1551
- static get useCustomRenderingPipeline(): boolean;
1552
- getRenderingEngine(): IRenderingEngine;
1553
- getRenderer(): any;
1554
- render(): void;
1555
- setOptions(options: ViewportInputOptions, immediate?: boolean): void;
1556
- reset(immediate?: boolean): void;
1557
- protected applyFlipTx: (worldPos: Point3) => Point3;
1558
- protected flip({ flipHorizontal, flipVertical }: FlipDirection): void;
1559
- private getDefaultImageData;
1560
- getDefaultActor(): ActorEntry;
1561
- getActors(): Array<ActorEntry>;
1562
- getActor(actorUID: string): ActorEntry;
1563
- setActors(actors: Array<ActorEntry>): void;
1564
- removeActor(actorUID: string): void;
1565
- removeActors(actorUIDs: Array<string>): void;
1566
- addActors(actors: Array<ActorEntry>): void;
1567
- addActor(actorEntry: ActorEntry): void;
1568
- removeAllActors(): void;
1569
- protected resetCameraNoEvent(): void;
1570
- protected setCameraNoEvent(camera: ICamera): void;
1571
- private _getViewImageDataIntersections;
1572
- protected resetCamera(resetPanZoomForViewPlane?: boolean): boolean;
1573
- private _getFocalPointForViewPlaneReset;
1574
- getCanvas(): HTMLCanvasElement;
1575
- protected getVtkActiveCamera(): vtkCamera | vtkSlabCamera;
1576
- getCamera(): ICamera;
1577
- setCamera(cameraInterface: ICamera): void;
1578
- private _getWorldDistanceViewUpAndViewRight;
1579
- _getCorners(bounds: Array<number>): Array<number>[];
1580
- _isInBounds(point: Point3, bounds: number[]): boolean;
1581
- _getEdges(bounds: Array<number>): Array<[number[], number[]]>;
1582
- }
1583
-
1584
- declare type ViewportInput = {
1585
- id: string;
1586
- element: HTMLElement;
1587
- canvas: HTMLCanvasElement;
1588
- renderingEngineId: string;
1589
- type: ViewportType;
1590
- sx: number;
1591
- sy: number;
1592
- sWidth: number;
1593
- sHeight: number;
1594
- defaultOptions: ViewportInputOptions;
1595
- };
1596
-
1597
- declare type ViewportInputOptions = {
1598
- background?: [number, number, number];
1599
- orientation?: Orientation;
1600
- suppressEvents?: boolean;
1601
- };
1602
-
1603
- declare enum ViewportType {
1604
- STACK = "stack",
1605
- ORTHOGRAPHIC = "orthographic",
1606
- PERSPECTIVE = "perspective"
1607
- }
1608
-
1609
- declare type VOI = {
1610
- windowWidth: number;
1611
- windowCenter: number;
1612
- };
1613
-
1614
- declare type VoiModifiedEvent = CustomEvent_2<VoiModifiedEventDetail>;
1615
-
1616
- declare type VoiModifiedEventDetail = {
1617
- viewportId: string;
1618
- volumeId: string;
1619
- range: VOIRange;
1620
- };
1621
-
1622
- declare type VOIRange = {
1623
- upper: number;
1624
- lower: number;
1625
- };
1626
-
1627
- declare type VolumeActor = vtkVolume;
1628
-
1629
- declare type VolumeCacheVolumeAddedEvent = CustomEvent_2<VolumeCacheVolumeAddedEventDetail>;
1630
-
1631
- declare type VolumeCacheVolumeAddedEventDetail = {
1632
- volume: ICachedVolume;
1633
- };
1634
-
1635
- declare type VolumeCacheVolumeRemovedEvent = CustomEvent_2<VolumeCacheVolumeRemovedEventDetail>;
1636
-
1637
- declare type VolumeCacheVolumeRemovedEventDetail = {
1638
- volumeId: string;
1639
- };
1640
-
1641
- declare type VolumeInputCallback = (params: {
1642
- volumeActor: VolumeActor;
1643
- volumeId: string;
1644
- }) => unknown;
1645
-
1646
- declare type VolumeLoadedEvent = CustomEvent_2<VolumeLoadedEventDetail>;
1647
-
1648
- declare type VolumeLoadedEventDetail = {
1649
- volume: IImageVolume;
1650
- };
1651
-
1652
- declare type VolumeLoadedFailedEvent = CustomEvent_2<VolumeLoadedFailedEventDetail>;
1653
-
1654
- declare type VolumeLoadedFailedEventDetail = {
1655
- volumeId: string;
1656
- error: unknown;
1657
- };
1658
-
1659
- declare namespace volumeLoader {
1660
- export {
1661
- loadVolume,
1662
- createAndCacheVolume,
1663
- createAndCacheDerivedVolume,
1664
- createLocalVolume,
1665
- registerVolumeLoader,
1666
- registerUnknownVolumeLoader
1667
- }
1668
- }
1669
- export { volumeLoader }
1670
-
1671
- declare type VolumeLoaderFn = (volumeId: string, options?: Record<string, any>) => {
1672
- promise: Promise<Record<string, any>>;
1673
- cancelFn?: () => void | undefined;
1674
- decache?: () => void | undefined;
1675
- };
1676
-
1677
- declare interface VolumeLoaderOptions {
1678
- imageIds: Array<string>;
1679
- }
1680
-
1681
- export declare class VolumeViewport extends Viewport implements IVolumeViewport {
1682
- useCPURendering: boolean;
1683
- private _FrameOfReferenceUID;
1684
- constructor(props: ViewportInput);
1685
- static get useCustomRenderingPipeline(): boolean;
1686
- setVolumes(volumeInputArray: Array<IVolumeInput>, immediate?: boolean): Promise<void>;
1687
- addVolumes(volumeInputArray: Array<IVolumeInput>, immediate?: boolean): Promise<void>;
1688
- removeVolumeActors(actorUIDs: Array<string>, immediate?: boolean): void;
1689
- private _isValidVolumeInputArray;
1690
- getIntensityFromWorld(point: Point3): number;
1691
- getBounds(): number[];
1692
- flip(flipDirection: FlipDirection): void;
1693
- resetCamera(resetPanZoomForViewPlane?: boolean): boolean;
1694
- getFrameOfReferenceUID: () => string;
1695
- setSlabThickness(slabThickness: number): void;
1696
- getSlabThickness(): number;
1697
- getImageData(): IImageData | undefined;
1698
- getProperties: () => FlipDirection;
1699
- private _setVolumeActors;
1700
- canvasToWorld: (canvasPos: Point2) => Point3;
1701
- worldToCanvas: (worldPos: Point3) => Point2;
1702
- getCurrentImageIdIndex: () => number | undefined;
1703
- getCurrentImageId: () => string | undefined;
1704
- private _getImageIdIndex;
1705
- }
1706
-
1707
- declare interface vtkSlabCamera extends VtkObject {
1708
- /**
1709
- * Apply a transform to the camera.
1710
- * The camera position, focal-point, and view-up are re-calculated
1711
- * using the transform's matrix to multiply the old points by the new transform.
1712
- * @param transformMat4 -
1713
- */
1714
- applyTransform(transformMat4: mat4): void
1715
-
1716
- /**
1717
- * Rotate the camera about the view up vector centered at the focal point.
1718
- * @param angle -
1719
- */
1720
- azimuth(angle: number): void
1721
-
1722
- /**
1723
- *
1724
- * @param bounds -
1725
- */
1726
- computeClippingRange(bounds: number[]): number[]
1727
-
1728
- /**
1729
- * This method must be called when the focal point or camera position changes
1730
- */
1731
- computeDistance(): void
1732
-
1733
- /**
1734
- * the provided matrix should include
1735
- * translation and orientation only
1736
- * mat is physical to view
1737
- * @param mat -
1738
- */
1739
- computeViewParametersFromPhysicalMatrix(mat: mat4): void
1740
-
1741
- /**
1742
- *
1743
- * @param vmat -
1744
- */
1745
- computeViewParametersFromViewMatrix(vmat: mat4): void
1746
-
1747
- /**
1748
- * Not implemented yet
1749
- * @param sourceCamera -
1750
- */
1751
- deepCopy(sourceCamera: vtkSlabCamera): void
1752
-
1753
- /**
1754
- * Move the position of the camera along the view plane normal. Moving
1755
- * towards the focal point (e.g., greater than 1) is a dolly-in, moving away
1756
- * from the focal point (e.g., less than 1) is a dolly-out.
1757
- * @param amount -
1758
- */
1759
- dolly(amount: number): void
1760
-
1761
- /**
1762
- * Rotate the camera about the cross product of the negative of the direction of projection and the view up vector, using the focal point as the center of rotation.
1763
- * @param angle -
1764
- */
1765
- elevation(angle: number): void
1766
-
1767
- /**
1768
- * Not implemented yet
1769
- */
1770
- getCameraLightTransformMatrix(): void
1771
-
1772
- /**
1773
- *
1774
- * @defaultValue [0.01, 1000.01],
1775
- */
1776
- getClippingRange(): number[]
1777
-
1778
- /**
1779
- *
1780
- * @defaultValue [0.01],
1781
- */
1782
- getSlabThickness(): number
1783
-
1784
- /**
1785
- *
1786
- * @defaultValue
1787
- */
1788
- getSlabThicknessActive(): boolean
1789
-
1790
- /**
1791
- *
1792
- * @defaultValue [0.01, 1000.01],
1793
- */
1794
- getClippingRangeByReference(): number[]
1795
-
1796
- /**
1797
- *
1798
- * @param aspect - Camera frustum aspect ratio.
1799
- * @param nearz - Camera frustum near plane.
1800
- * @param farz - Camera frustum far plane.
1801
- */
1802
- getCompositeProjectionMatrix(
1803
- aspect: number,
1804
- nearz: number,
1805
- farz: number
1806
- ): mat4
1807
-
1808
- /**
1809
- * Get the vector in the direction from the camera position to the focal point.
1810
- * @defaultValue [0, 0, -1],
1811
- */
1812
- getDirectionOfProjection(): number[]
1813
-
1814
- /**
1815
- *
1816
- * @defaultValue [0, 0, -1],
1817
- */
1818
- getDirectionOfProjectionByReference(): number[]
1819
-
1820
- /**
1821
- * Get the distance from the camera position to the focal point.
1822
- */
1823
- getDistance(): number
1824
-
1825
- /**
1826
- *
1827
- * @defaultValue [0, 0, 0]
1828
- */
1829
- getFocalPoint(): number[]
1830
-
1831
- /**
1832
- *
1833
- */
1834
- getFocalPointByReference(): number[]
1835
-
1836
- /**
1837
- *
1838
- * @defaultValue false
1839
- */
1840
- getFreezeFocalPoint(): boolean
1841
-
1842
- setFreezeFocalPoint(freeze: boolean): void
1843
-
1844
- /**
1845
- * Not implemented yet
1846
- * @param aspect - Camera frustum aspect ratio.
1847
- */
1848
- getFrustumPlanes(aspect: number): void
1849
-
1850
- /**
1851
- * Not implemented yet
1852
- */
1853
- getOrientation(): void
1854
-
1855
- /**
1856
- * Not implemented yet
1857
- */
1858
- getOrientationWXYZ(): void
1859
-
1860
- /**
1861
- *
1862
- * @defaultValue false
1863
- */
1864
- getParallelProjection(): boolean
1865
-
1866
- /**
1867
- *
1868
- * @defaultValue 1
1869
- */
1870
- getParallelScale(): number
1871
-
1872
- /**
1873
- *
1874
- * @defaultValue 1.0
1875
- */
1876
- getPhysicalScale(): number
1877
-
1878
- /**
1879
- *
1880
- * @param result -
1881
- */
1882
- getPhysicalToWorldMatrix(result: mat4): void
1883
-
1884
- /**
1885
- *
1886
- */
1887
- getPhysicalTranslation(): number[]
1888
-
1889
- /**
1890
- *
1891
- */
1892
- getPhysicalTranslationByReference(): number[]
1893
-
1894
- /**
1895
- *
1896
- * @defaultValue [0, 0, -1],
1897
- */
1898
- getPhysicalViewNorth(): number[]
1899
-
1900
- /**
1901
- *
1902
- */
1903
- getPhysicalViewNorthByReference(): number[]
1904
-
1905
- /**
1906
- *
1907
- * @defaultValue [0, 1, 0]
1908
- */
1909
- getPhysicalViewUp(): number[]
1910
-
1911
- /**
1912
- *
1913
- */
1914
- getPhysicalViewUpByReference(): number[]
1915
-
1916
- /**
1917
- * Get the position of the camera in world coordinates.
1918
- * @defaultValue [0, 0, 1]
1919
- */
1920
- getPosition(): number[]
1921
-
1922
- /**
1923
- *
1924
- */
1925
- getPositionByReference(): number[]
1926
-
1927
- /**
1928
- *
1929
- * @param aspect - Camera frustum aspect ratio.
1930
- * @param nearz - Camera frustum near plane.
1931
- * @param farz - Camera frustum far plane.
1932
- * @defaultValue null
1933
- */
1934
- getProjectionMatrix(aspect: number, nearz: number, farz: number): null | mat4
1935
-
1936
- /**
1937
- * Not implemented yet
1938
- * Get the roll angle of the camera about the direction of projection.
1939
- */
1940
- getRoll(): void
1941
-
1942
- /**
1943
- * Get top left corner point of the screen.
1944
- * @defaultValue [-0.5, -0.5, -0.5]
1945
- */
1946
- getScreenBottomLeft(): number[]
1947
-
1948
- /**
1949
- *
1950
- * @defaultValue [-0.5, -0.5, -0.5]
1951
- */
1952
- getScreenBottomLeftByReference(): number[]
1953
-
1954
- /**
1955
- * Get bottom left corner point of the screen
1956
- * @defaultValue [0.5, -0.5, -0.5]
1957
- */
1958
- getScreenBottomRight(): number[]
1959
-
1960
- /**
1961
- *
1962
- * @defaultValue [0.5, -0.5, -0.5]
1963
- */
1964
- getScreenBottomRightByReference(): number[]
1965
-
1966
- /**
1967
- *
1968
- * @defaultValue [0.5, 0.5, -0.5]
1969
- */
1970
- getScreenTopRight(): number[]
1971
-
1972
- /**
1973
- *
1974
- * @defaultValue [0.5, 0.5, -0.5]
1975
- */
1976
- getScreenTopRightByReference(): number[]
1977
-
1978
- /**
1979
- * Get the center of the window in viewport coordinates.
1980
- */
1981
- getThickness(): number
1982
-
1983
- /**
1984
- * Get the value of the UseHorizontalViewAngle instance variable.
1985
- * @defaultValue false
1986
- */
1987
- getUseHorizontalViewAngle(): boolean
1988
-
1989
- /**
1990
- * Get use offaxis frustum.
1991
- * @defaultValue false
1992
- */
1993
- getUseOffAxisProjection(): boolean
1994
-
1995
- /**
1996
- * Get the camera view angle.
1997
- * @defaultValue 30
1998
- */
1999
- getViewAngle(): number
2000
-
2001
- /**
2002
- *
2003
- * @defaultValue null
2004
- */
2005
- getViewMatrix(): null | mat4
2006
-
2007
- /**
2008
- * Get the ViewPlaneNormal.
2009
- * This vector will point opposite to the direction of projection,
2010
- * unless you have created a sheared output view using SetViewShear/SetObliqueAngles.
2011
- * @defaultValue [0, 0, 1]
2012
- */
2013
- getViewPlaneNormal(): number[]
2014
-
2015
- /**
2016
- * Get the ViewPlaneNormal by reference.
2017
- */
2018
- getViewPlaneNormalByReference(): number[]
2019
-
2020
- /**
2021
- * Get ViewUp vector.
2022
- * @defaultValue [0, 1, 0]
2023
- */
2024
- getViewUp(): number[]
2025
-
2026
- /**
2027
- * Get ViewUp vector by reference.
2028
- * @defaultValue [0, 1, 0]
2029
- */
2030
- getViewUpByReference(): number[]
2031
-
2032
- /**
2033
- * Get the center of the window in viewport coordinates.
2034
- * The viewport coordinate range is ([-1,+1],[-1,+1]).
2035
- * @defaultValue [0, 0]
2036
- */
2037
- getWindowCenter(): number[]
2038
-
2039
- /**
2040
- *
2041
- * @defaultValue [0, 0]
2042
- */
2043
- getWindowCenterByReference(): number[]
2044
-
2045
- /**
2046
- *
2047
- * @param result -
2048
- */
2049
- getWorldToPhysicalMatrix(result: mat4): void
2050
-
2051
- /**
2052
- * Recompute the ViewUp vector to force it to be perpendicular to the camera's focalpoint vector.
2053
- */
2054
- orthogonalizeViewUp(): void
2055
-
2056
- /**
2057
- *
2058
- * @param ori -
2059
- */
2060
- physicalOrientationToWorldDirection(ori: number[]): any
2061
-
2062
- /**
2063
- * Rotate the focal point about the cross product of the view up vector and the direction of projection, using the camera's position as the center of rotation.
2064
- * @param angle -
2065
- */
2066
- pitch(angle: number): void
2067
-
2068
- /**
2069
- * Rotate the camera about the direction of projection.
2070
- * @param angle -
2071
- */
2072
- roll(angle: number): void
2073
-
2074
- /**
2075
- * Set the location of the near and far clipping planes along the direction
2076
- * of projection.
2077
- * @param near -
2078
- * @param far -
2079
- */
2080
- setClippingRange(near: number, far: number): boolean
2081
-
2082
- /**
2083
- * Set the location of the near and far clipping planes along the direction
2084
- * of projection.
2085
- * @param clippingRange -
2086
- */
2087
- setClippingRange(clippingRange: number[]): boolean
2088
-
2089
- /**
2090
- * Activate slab thickness for the camera
2091
- * @param status -
2092
- */
2093
- setSlabThicknessActive(status: boolean): void
2094
-
2095
- /**
2096
- * Set the slab thickness
2097
- * @param status -
2098
- */
2099
- setSlabThickness(slabThickness: number): void
2100
-
2101
- /**
2102
- *
2103
- * @param clippingRange -
2104
- */
2105
- setClippingRangeFrom(clippingRange: number[]): boolean
2106
-
2107
- /**
2108
- * used to handle convert js device orientation angles
2109
- * when you use this method the camera will adjust to the
2110
- * device orientation such that the physicalViewUp you set
2111
- * in world coordinates looks up, and the physicalViewNorth
2112
- * you set in world coorindates will (maybe) point north
2113
- *
2114
- * NOTE WARNING - much of the documentation out there on how
2115
- * orientation works is seriously wrong. Even worse the Chrome
2116
- * device orientation simulator is completely wrong and should
2117
- * never be used. OMG it is so messed up.
2118
- *
2119
- * how it seems to work on iOS is that the device orientation
2120
- * is specified in extrinsic angles with a alpha, beta, gamma
2121
- * convention with axes of Z, X, Y (the code below substitutes
2122
- * the physical coordinate system for these axes to get the right
2123
- * modified coordinate system.
2124
- * @param alpha -
2125
- * @param beta -
2126
- * @param gamma -
2127
- * @param screen -
2128
- */
2129
- setDeviceAngles(
2130
- alpha: number,
2131
- beta: number,
2132
- gamma: number,
2133
- screen: number
2134
- ): boolean
2135
-
2136
- /**
2137
- *
2138
- * @param x - The x coordinate.
2139
- * @param y - The y coordinate.
2140
- * @param z - The z coordinate.
2141
- */
2142
- setDirectionOfProjection(x: number, y: number, z: number): boolean
2143
-
2144
- /**
2145
- *
2146
- * @param distance -
2147
- */
2148
- setDistance(distance: number): boolean
2149
-
2150
- /**
2151
- *
2152
- * @param x - The x coordinate.
2153
- * @param y - The y coordinate.
2154
- * @param z - The z coordinate.
2155
- */
2156
- setFocalPoint(x: number, y: number, z: number): boolean
2157
-
2158
- /**
2159
- *
2160
- * @param focalPoint -
2161
- */
2162
- setFocalPointFrom(focalPoint: number[]): boolean
2163
-
2164
- /**
2165
- * Not implement yet
2166
- * Set the oblique viewing angles.
2167
- * The first angle, alpha, is the angle (measured from the horizontal) that rays along
2168
- * the direction of projection will follow once projected onto the 2D screen.
2169
- * The second angle, beta, is the angle between the view plane and the direction of projection.
2170
- * This creates a shear transform x' = x + dz*cos(alpha)/tan(beta), y' = dz*sin(alpha)/tan(beta) where dz is the distance of the point from the focal plane.
2171
- * The angles are (45,90) by default. Oblique projections commonly use (30,63.435).
2172
- *
2173
- * @param alpha -
2174
- * @param beta -
2175
- */
2176
- setObliqueAngles(alpha: number, beta: number): boolean
2177
-
2178
- /**
2179
- *
2180
- * @param degrees -
2181
- * @param x - The x coordinate.
2182
- * @param y - The y coordinate.
2183
- * @param z - The z coordinate.
2184
- */
2185
- setOrientationWXYZ(degrees: number, x: number, y: number, z: number): boolean
2186
-
2187
- /**
2188
- *
2189
- * @param parallelProjection -
2190
- */
2191
- setParallelProjection(parallelProjection: boolean): boolean
2192
-
2193
- /**
2194
- *
2195
- * @param parallelScale -
2196
- */
2197
- setParallelScale(parallelScale: number): boolean
2198
-
2199
- /**
2200
- *
2201
- * @param physicalScale -
2202
- */
2203
- setPhysicalScale(physicalScale: number): boolean
2204
-
2205
- /**
2206
- *
2207
- * @param x - The x coordinate.
2208
- * @param y - The y coordinate.
2209
- * @param z - The z coordinate.
2210
- */
2211
- setPhysicalTranslation(x: number, y: number, z: number): boolean
2212
-
2213
- /**
2214
- *
2215
- * @param physicalTranslation -
2216
- */
2217
- setPhysicalTranslationFrom(physicalTranslation: number[]): boolean
2218
-
2219
- /**
2220
- *
2221
- * @param x - The x coordinate.
2222
- * @param y - The y coordinate.
2223
- * @param z - The z coordinate.
2224
- */
2225
- setPhysicalViewNorth(x: number, y: number, z: number): boolean
2226
-
2227
- /**
2228
- *
2229
- * @param physicalViewNorth -
2230
- */
2231
- setPhysicalViewNorthFrom(physicalViewNorth: number[]): boolean
2232
-
2233
- /**
2234
- *
2235
- * @param x - The x coordinate.
2236
- * @param y - The y coordinate.
2237
- * @param z - The z coordinate.
2238
- */
2239
- setPhysicalViewUp(x: number, y: number, z: number): boolean
2240
-
2241
- /**
2242
- *
2243
- * @param physicalViewUp -
2244
- */
2245
- setPhysicalViewUpFrom(physicalViewUp: number[]): boolean
2246
-
2247
- /**
2248
- * Set the position of the camera in world coordinates.
2249
- * @param x - The x coordinate.
2250
- * @param y - The y coordinate.
2251
- * @param z - The z coordinate.
2252
- */
2253
- setPosition(x: number, y: number, z: number): boolean
2254
-
2255
- /**
2256
- *
2257
- * @param mat -
2258
- */
2259
- setProjectionMatrix(mat: mat4): boolean
2260
-
2261
- /**
2262
- * Set the roll angle of the camera about the direction of projection.
2263
- * todo Not implemented yet
2264
- * @param angle -
2265
- */
2266
- setRoll(angle: number): boolean
2267
-
2268
- /**
2269
- * Set top left corner point of the screen.
2270
- *
2271
- * This will be used only for offaxis frustum calculation.
2272
- * @param x - The x coordinate.
2273
- * @param y - The y coordinate.
2274
- * @param z - The z coordinate.
2275
- */
2276
- setScreenBottomLeft(x: number, y: number, z: number): boolean
2277
-
2278
- /**
2279
- * Set top left corner point of the screen.
2280
- *
2281
- * This will be used only for offaxis frustum calculation.
2282
- * @param screenBottomLeft -
2283
- */
2284
- setScreenBottomLeft(screenBottomLeft: number[]): boolean
2285
-
2286
- /**
2287
- *
2288
- * @param screenBottomLeft -
2289
- */
2290
- setScreenBottomLeftFrom(screenBottomLeft: number[]): boolean
2291
-
2292
- /**
2293
- *
2294
- * @param x - The x coordinate.
2295
- * @param y - The y coordinate.
2296
- * @param z - The z coordinate.
2297
- */
2298
- setScreenBottomRight(x: number, y: number, z: number): boolean
2299
-
2300
- /**
2301
- *
2302
- * @param screenBottomRight -
2303
- */
2304
- setScreenBottomRight(screenBottomRight: number[]): boolean
2305
-
2306
- /**
2307
- *
2308
- * @param screenBottomRight -
2309
- */
2310
- setScreenBottomRightFrom(screenBottomRight: number[]): boolean
2311
-
2312
- /**
2313
- * Set top right corner point of the screen.
2314
- *
2315
- * This will be used only for offaxis frustum calculation.
2316
- * @param x - The x coordinate.
2317
- * @param y - The y coordinate.
2318
- * @param z - The z coordinate.
2319
- */
2320
- setScreenTopRight(x: number, y: number, z: number): boolean
2321
-
2322
- /**
2323
- * Set top right corner point of the screen.
2324
- *
2325
- * This will be used only for offaxis frustum calculation.
2326
- * @param screenTopRight -
2327
- */
2328
- setScreenTopRight(screenTopRight: number[]): boolean
2329
-
2330
- /**
2331
- *
2332
- * @param screenTopRight -
2333
- */
2334
- setScreenTopRightFrom(screenTopRight: number[]): boolean
2335
-
2336
- /**
2337
- * Set the distance between clipping planes.
2338
- *
2339
- * This method adjusts the far clipping plane to be set a distance 'thickness' beyond the near clipping plane.
2340
- * @param thickness -
2341
- */
2342
- setThickness(thickness: number): boolean
2343
-
2344
- /**
2345
- *
2346
- * @param thickness -
2347
- */
2348
- setThicknessFromFocalPoint(thickness: number): boolean
2349
-
2350
- /**
2351
- *
2352
- * @param useHorizontalViewAngle -
2353
- */
2354
- setUseHorizontalViewAngle(useHorizontalViewAngle: boolean): boolean
2355
-
2356
- /**
2357
- * Set use offaxis frustum.
2358
- *
2359
- * OffAxis frustum is used for off-axis frustum calculations specifically for
2360
- * stereo rendering. For reference see "High Resolution Virtual Reality", in
2361
- * Proc. SIGGRAPH '92, Computer Graphics, pages 195-202, 1992.
2362
- * @param useOffAxisProjection -
2363
- */
2364
- setUseOffAxisProjection(useOffAxisProjection: boolean): boolean
2365
-
2366
- /**
2367
- * Set the camera view angle, which is the angular height of the camera view measured in degrees.
2368
- * @param viewAngle -
2369
- */
2370
- setViewAngle(viewAngle: number): boolean
2371
-
2372
- /**
2373
- *
2374
- * @param mat -
2375
- */
2376
- setViewMatrix(mat: mat4): boolean
2377
-
2378
- /**
2379
- *
2380
- * @param x - The x coordinate.
2381
- * @param y - The y coordinate.
2382
- * @param z - The z coordinate.
2383
- */
2384
- setViewUp(x: number, y: number, z: number): boolean
2385
-
2386
- /**
2387
- *
2388
- * @param viewUp -
2389
- */
2390
- setViewUp(viewUp: number[]): boolean
2391
-
2392
- /**
2393
- *
2394
- * @param viewUp -
2395
- */
2396
- setViewUpFrom(viewUp: number[]): boolean
2397
-
2398
- /**
2399
- * Set the center of the window in viewport coordinates.
2400
- * The viewport coordinate range is ([-1,+1],[-1,+1]).
2401
- * This method is for if you have one window which consists of several viewports, or if you have several screens which you want to act together as one large screen
2402
- * @param x - The x coordinate.
2403
- * @param y - The y coordinate.
2404
- */
2405
- setWindowCenter(x: number, y: number): boolean
2406
-
2407
- /**
2408
- * Set the center of the window in viewport coordinates from an array.
2409
- * @param windowCenter -
2410
- */
2411
- setWindowCenterFrom(windowCenter: number[]): boolean
2412
-
2413
- /**
2414
- *
2415
- * @param x - The x coordinate.
2416
- * @param y - The y coordinate.
2417
- * @param z - The z coordinate.
2418
- */
2419
- translate(x: number, y: number, z: number): void
2420
-
2421
- /**
2422
- * Rotate the focal point about the view up vector, using the camera's position as the center of rotation.
2423
- * @param angle -
2424
- */
2425
- yaw(angle: number): void
2426
-
2427
- /**
2428
- * In perspective mode, decrease the view angle by the specified factor.
2429
- * @param factor -
2430
- */
2431
- zoom(factor: number): void
2432
- }
2433
-
2434
- /**
2435
- * vtkCamera is a virtual camera for 3D rendering. It provides methods
2436
- * to position and orient the view point and focal point. Convenience
2437
- * methods for moving about the focal point also are provided. More
2438
- * complex methods allow the manipulation of the computer graphics model
2439
- * including view up vector, clipping planes, and camera perspective.
2440
- */
2441
- declare const vtkSlabCamera: {
2442
- newInstance: typeof newInstance
2443
- extend: typeof extend
2444
- };
2445
-
2446
- declare namespace windowLevel {
2447
- export {
2448
- toWindowLevel,
2449
- toLowHighRange
2450
- }
2451
- }
2452
-
2453
- export { }