@cornerstonejs/core 1.55.0 → 1.56.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 (115) hide show
  1. package/dist/cjs/RenderingEngine/CanvasActor/CanvasMapper.d.ts +6 -0
  2. package/dist/cjs/RenderingEngine/CanvasActor/CanvasMapper.js +12 -0
  3. package/dist/cjs/RenderingEngine/CanvasActor/CanvasMapper.js.map +1 -0
  4. package/dist/cjs/RenderingEngine/CanvasActor/CanvasProperties.d.ts +15 -0
  5. package/dist/cjs/RenderingEngine/CanvasActor/CanvasProperties.js +33 -0
  6. package/dist/cjs/RenderingEngine/CanvasActor/CanvasProperties.js.map +1 -0
  7. package/dist/cjs/RenderingEngine/CanvasActor/index.d.ts +23 -0
  8. package/dist/cjs/RenderingEngine/CanvasActor/index.js +163 -0
  9. package/dist/cjs/RenderingEngine/CanvasActor/index.js.map +1 -0
  10. package/dist/cjs/RenderingEngine/VideoViewport.d.ts +28 -6
  11. package/dist/cjs/RenderingEngine/VideoViewport.js +55 -13
  12. package/dist/cjs/RenderingEngine/VideoViewport.js.map +1 -1
  13. package/dist/cjs/RenderingEngine/Viewport.js +3 -2
  14. package/dist/cjs/RenderingEngine/Viewport.js.map +1 -1
  15. package/dist/cjs/RenderingEngine/helpers/addImageSlicesToViewports.js +2 -3
  16. package/dist/cjs/RenderingEngine/helpers/addImageSlicesToViewports.js.map +1 -1
  17. package/dist/cjs/enums/{VideoViewport.js → VideoEnums.js} +1 -1
  18. package/dist/cjs/enums/VideoEnums.js.map +1 -0
  19. package/dist/cjs/enums/index.d.ts +2 -2
  20. package/dist/cjs/enums/index.js +3 -3
  21. package/dist/cjs/enums/index.js.map +1 -1
  22. package/dist/cjs/loaders/imageLoader.d.ts +9 -7
  23. package/dist/cjs/loaders/imageLoader.js +9 -7
  24. package/dist/cjs/loaders/imageLoader.js.map +1 -1
  25. package/dist/cjs/types/IActor.d.ts +8 -1
  26. package/dist/cjs/types/IImage.d.ts +3 -0
  27. package/dist/cjs/types/IImageVolume.d.ts +3 -1
  28. package/dist/cjs/types/IVideoViewport.d.ts +1 -0
  29. package/dist/cjs/types/index.d.ts +2 -2
  30. package/dist/cjs/utilities/RLEVoxelMap.d.ts +26 -0
  31. package/dist/cjs/utilities/RLEVoxelMap.js +178 -0
  32. package/dist/cjs/utilities/RLEVoxelMap.js.map +1 -0
  33. package/dist/cjs/utilities/VoxelManager.d.ts +11 -3
  34. package/dist/cjs/utilities/VoxelManager.js +76 -1
  35. package/dist/cjs/utilities/VoxelManager.js.map +1 -1
  36. package/dist/cjs/utilities/updateVTKImageDataWithCornerstoneImage.js +3 -0
  37. package/dist/cjs/utilities/updateVTKImageDataWithCornerstoneImage.js.map +1 -1
  38. package/dist/esm/RenderingEngine/CanvasActor/CanvasMapper.js +9 -0
  39. package/dist/esm/RenderingEngine/CanvasActor/CanvasMapper.js.map +1 -0
  40. package/dist/esm/RenderingEngine/CanvasActor/CanvasProperties.js +30 -0
  41. package/dist/esm/RenderingEngine/CanvasActor/CanvasProperties.js.map +1 -0
  42. package/dist/esm/RenderingEngine/CanvasActor/index.js +157 -0
  43. package/dist/esm/RenderingEngine/CanvasActor/index.js.map +1 -0
  44. package/dist/esm/RenderingEngine/VideoViewport.js +53 -12
  45. package/dist/esm/RenderingEngine/VideoViewport.js.map +1 -1
  46. package/dist/esm/RenderingEngine/Viewport.js +2 -2
  47. package/dist/esm/RenderingEngine/Viewport.js.map +1 -1
  48. package/dist/esm/RenderingEngine/helpers/addImageSlicesToViewports.js +2 -3
  49. package/dist/esm/RenderingEngine/helpers/addImageSlicesToViewports.js.map +1 -1
  50. package/dist/esm/enums/{VideoViewport.js → VideoEnums.js} +1 -1
  51. package/dist/esm/enums/VideoEnums.js.map +1 -0
  52. package/dist/esm/enums/index.js +2 -2
  53. package/dist/esm/enums/index.js.map +1 -1
  54. package/dist/esm/loaders/imageLoader.js +7 -7
  55. package/dist/esm/loaders/imageLoader.js.map +1 -1
  56. package/dist/esm/utilities/RLEVoxelMap.js +175 -0
  57. package/dist/esm/utilities/RLEVoxelMap.js.map +1 -0
  58. package/dist/esm/utilities/VoxelManager.js +73 -1
  59. package/dist/esm/utilities/VoxelManager.js.map +1 -1
  60. package/dist/esm/utilities/updateVTKImageDataWithCornerstoneImage.js +3 -0
  61. package/dist/esm/utilities/updateVTKImageDataWithCornerstoneImage.js.map +1 -1
  62. package/dist/types/RenderingEngine/CanvasActor/CanvasMapper.d.ts +7 -0
  63. package/dist/types/RenderingEngine/CanvasActor/CanvasMapper.d.ts.map +1 -0
  64. package/dist/types/RenderingEngine/CanvasActor/CanvasProperties.d.ts +16 -0
  65. package/dist/types/RenderingEngine/CanvasActor/CanvasProperties.d.ts.map +1 -0
  66. package/dist/types/RenderingEngine/CanvasActor/index.d.ts +24 -0
  67. package/dist/types/RenderingEngine/CanvasActor/index.d.ts.map +1 -0
  68. package/dist/types/RenderingEngine/VideoViewport.d.ts +28 -6
  69. package/dist/types/RenderingEngine/VideoViewport.d.ts.map +1 -1
  70. package/dist/types/enums/{VideoViewport.d.ts → VideoEnums.d.ts} +1 -1
  71. package/dist/types/enums/VideoEnums.d.ts.map +1 -0
  72. package/dist/types/enums/index.d.ts +2 -2
  73. package/dist/types/enums/index.d.ts.map +1 -1
  74. package/dist/types/loaders/imageLoader.d.ts +9 -7
  75. package/dist/types/loaders/imageLoader.d.ts.map +1 -1
  76. package/dist/types/types/IActor.d.ts +8 -1
  77. package/dist/types/types/IActor.d.ts.map +1 -1
  78. package/dist/types/types/IImage.d.ts +3 -0
  79. package/dist/types/types/IImage.d.ts.map +1 -1
  80. package/dist/types/types/IImageVolume.d.ts +3 -1
  81. package/dist/types/types/IImageVolume.d.ts.map +1 -1
  82. package/dist/types/types/IVideoViewport.d.ts +1 -0
  83. package/dist/types/types/IVideoViewport.d.ts.map +1 -1
  84. package/dist/types/types/index.d.ts +2 -2
  85. package/dist/types/types/index.d.ts.map +1 -1
  86. package/dist/types/utilities/RLEVoxelMap.d.ts +27 -0
  87. package/dist/types/utilities/RLEVoxelMap.d.ts.map +1 -0
  88. package/dist/types/utilities/VoxelManager.d.ts +11 -3
  89. package/dist/types/utilities/VoxelManager.d.ts.map +1 -1
  90. package/dist/types/utilities/updateVTKImageDataWithCornerstoneImage.d.ts.map +1 -1
  91. package/dist/umd/index.js +1 -1
  92. package/dist/umd/index.js.map +1 -1
  93. package/package.json +2 -2
  94. package/src/RenderingEngine/CanvasActor/CanvasMapper.ts +17 -0
  95. package/src/RenderingEngine/CanvasActor/CanvasProperties.ts +49 -0
  96. package/src/RenderingEngine/CanvasActor/index.ts +231 -0
  97. package/src/RenderingEngine/VideoViewport.ts +83 -18
  98. package/src/RenderingEngine/Viewport.ts +2 -2
  99. package/src/RenderingEngine/helpers/addImageSlicesToViewports.ts +2 -2
  100. package/src/RenderingEngine/vtkClasses/vtkStreamingOpenGLTexture.js +1 -1
  101. package/src/enums/index.ts +2 -2
  102. package/src/loaders/imageLoader.ts +39 -16
  103. package/src/types/IActor.ts +13 -1
  104. package/src/types/IImage.ts +4 -0
  105. package/src/types/IImageVolume.ts +5 -0
  106. package/src/types/IVideoViewport.ts +5 -0
  107. package/src/types/index.ts +8 -1
  108. package/src/utilities/RLEVoxelMap.ts +331 -0
  109. package/src/utilities/VoxelManager.ts +175 -5
  110. package/src/utilities/updateVTKImageDataWithCornerstoneImage.ts +4 -0
  111. package/dist/cjs/enums/VideoViewport.js.map +0 -1
  112. package/dist/esm/enums/VideoViewport.js.map +0 -1
  113. package/dist/types/enums/VideoViewport.d.ts.map +0 -1
  114. /package/dist/cjs/enums/{VideoViewport.d.ts → VideoEnums.d.ts} +0 -0
  115. /package/src/enums/{VideoViewport.ts → VideoEnums.ts} +0 -0
@@ -0,0 +1,6 @@
1
+ import CanvasActor from '.';
2
+ export default class CanvasMapper {
3
+ private actor;
4
+ constructor(actor: CanvasActor);
5
+ getInputData(): any;
6
+ }
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ class CanvasMapper {
4
+ constructor(actor) {
5
+ this.actor = actor;
6
+ }
7
+ getInputData() {
8
+ return this.actor.getImage();
9
+ }
10
+ }
11
+ exports.default = CanvasMapper;
12
+ //# sourceMappingURL=CanvasMapper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CanvasMapper.js","sourceRoot":"","sources":["../../../../src/RenderingEngine/CanvasActor/CanvasMapper.ts"],"names":[],"mappings":";;AAMA,MAAqB,YAAY;IAG/B,YAAY,KAAkB;QAC5B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;IAED,YAAY;QACV,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;IAC/B,CAAC;CACF;AAVD,+BAUC"}
@@ -0,0 +1,15 @@
1
+ import CanvasActor from '.';
2
+ export default class CanvasProperties {
3
+ private actor;
4
+ private opacity;
5
+ private outlineOpacity;
6
+ private transferFunction;
7
+ constructor(actor: CanvasActor);
8
+ setRGBTransferFunction(index: any, cfun: any): void;
9
+ setScalarOpacity(opacity: number): void;
10
+ setInterpolationTypeToNearest(): void;
11
+ setUseLabelOutline(): void;
12
+ setLabelOutlineOpacity(opacity: any): void;
13
+ setLabelOutlineThickness(): void;
14
+ getColor(index: number): any[];
15
+ }
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ class CanvasProperties {
4
+ constructor(actor) {
5
+ this.opacity = 0.4;
6
+ this.outlineOpacity = 0.4;
7
+ this.transferFunction = [];
8
+ this.actor = actor;
9
+ }
10
+ setRGBTransferFunction(index, cfun) {
11
+ this.transferFunction[index] = cfun;
12
+ }
13
+ setScalarOpacity(opacity) {
14
+ }
15
+ setInterpolationTypeToNearest() {
16
+ }
17
+ setUseLabelOutline() {
18
+ }
19
+ setLabelOutlineOpacity(opacity) {
20
+ this.outlineOpacity = opacity;
21
+ }
22
+ setLabelOutlineThickness() {
23
+ }
24
+ getColor(index) {
25
+ const cfun = this.transferFunction[0];
26
+ const r = cfun.getRedValue(index);
27
+ const g = cfun.getGreenValue(index);
28
+ const b = cfun.getBlueValue(index);
29
+ return [r, g, b, this.opacity];
30
+ }
31
+ }
32
+ exports.default = CanvasProperties;
33
+ //# sourceMappingURL=CanvasProperties.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CanvasProperties.js","sourceRoot":"","sources":["../../../../src/RenderingEngine/CanvasActor/CanvasProperties.ts"],"names":[],"mappings":";;AAMA,MAAqB,gBAAgB;IAMnC,YAAY,KAAkB;QAJtB,YAAO,GAAG,GAAG,CAAC;QACd,mBAAc,GAAG,GAAG,CAAC;QACrB,qBAAgB,GAAG,EAAE,CAAC;QAG5B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;IAEM,sBAAsB,CAAC,KAAK,EAAE,IAAI;QACvC,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC;IACtC,CAAC;IAEM,gBAAgB,CAAC,OAAe;IAGvC,CAAC;IAEM,6BAA6B;IAEpC,CAAC;IAEM,kBAAkB;IAEzB,CAAC;IAEM,sBAAsB,CAAC,OAAO;QACnC,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC;IAChC,CAAC;IAEM,wBAAwB;IAE/B,CAAC;IAEM,QAAQ,CAAC,KAAa;QAC3B,MAAM,IAAI,GAAG,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC;QACtC,MAAM,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAClC,MAAM,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QACpC,MAAM,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;QACnC,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IACjC,CAAC;CACF;AA1CD,mCA0CC"}
@@ -0,0 +1,23 @@
1
+ import type { IViewport } from '../../types/IViewport';
2
+ import type { ICanvasActor } from '../../types/IActor';
3
+ import CanvasProperties from './CanvasProperties';
4
+ import CanvasMapper from './CanvasMapper';
5
+ export default class CanvasActor implements ICanvasActor {
6
+ private image;
7
+ private derivedImage;
8
+ private canvasProperties;
9
+ private visibility;
10
+ private mapper;
11
+ private viewport;
12
+ protected className: string;
13
+ protected canvas: any;
14
+ constructor(viewport: IViewport, derivedImage: any);
15
+ protected renderRLE(viewport: any, context: any, voxelManager: any): void;
16
+ render(viewport: IViewport, context: CanvasRenderingContext2D): void;
17
+ getClassName(): string;
18
+ getProperty(): CanvasProperties;
19
+ setVisibility(visibility: boolean): void;
20
+ getMapper(): CanvasMapper;
21
+ isA(actorType: any): boolean;
22
+ getImage(): any;
23
+ }
@@ -0,0 +1,163 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const CanvasProperties_1 = __importDefault(require("./CanvasProperties"));
7
+ const CanvasMapper_1 = __importDefault(require("./CanvasMapper"));
8
+ class CanvasActor {
9
+ constructor(viewport, derivedImage) {
10
+ this.canvasProperties = new CanvasProperties_1.default(this);
11
+ this.visibility = false;
12
+ this.mapper = new CanvasMapper_1.default(this);
13
+ this.className = 'CanvasActor';
14
+ this.derivedImage = derivedImage;
15
+ this.viewport = viewport;
16
+ }
17
+ renderRLE(viewport, context, voxelManager) {
18
+ const { width, height } = this.image;
19
+ let { canvas } = this;
20
+ if (!canvas || canvas.width !== width || canvas.height !== height) {
21
+ this.canvas = canvas = new window.OffscreenCanvas(width, height);
22
+ }
23
+ const localContext = canvas.getContext('2d');
24
+ const imageData = localContext.createImageData(width, height);
25
+ const { data: imageArray } = imageData;
26
+ imageArray.fill(0);
27
+ const { map } = voxelManager;
28
+ let dirtyX = Infinity;
29
+ let dirtyY = Infinity;
30
+ let dirtyX2 = -Infinity;
31
+ let dirtyY2 = -Infinity;
32
+ for (let y = 0; y < height; y++) {
33
+ const row = map.getRun(y, 0);
34
+ if (!row) {
35
+ continue;
36
+ }
37
+ dirtyY = Math.min(dirtyY, y);
38
+ dirtyY2 = Math.max(dirtyY2, y);
39
+ const baseOffset = (y * width) << 2;
40
+ let indicesToDelete;
41
+ for (const run of row) {
42
+ const { start: start, end, value: segmentIndex } = run;
43
+ if (segmentIndex === 0) {
44
+ indicesToDelete || (indicesToDelete = []);
45
+ indicesToDelete.push(row.indexOf(run));
46
+ continue;
47
+ }
48
+ dirtyX = Math.min(dirtyX, start);
49
+ dirtyX2 = Math.max(dirtyX2, end);
50
+ const rgb = this.canvasProperties
51
+ .getColor(segmentIndex)
52
+ .map((v) => v * 255);
53
+ let startOffset = baseOffset + (start << 2);
54
+ for (let i = start; i < end; i++) {
55
+ imageArray[startOffset++] = rgb[0];
56
+ imageArray[startOffset++] = rgb[1];
57
+ imageArray[startOffset++] = rgb[2];
58
+ imageArray[startOffset++] = rgb[3];
59
+ }
60
+ }
61
+ }
62
+ if (dirtyX > width) {
63
+ return;
64
+ }
65
+ const dirtyWidth = dirtyX2 - dirtyX;
66
+ const dirtyHeight = dirtyY2 - dirtyY;
67
+ localContext.putImageData(imageData, 0, 0, dirtyX, dirtyY, dirtyWidth, dirtyHeight);
68
+ context.drawImage(canvas, dirtyX, dirtyY, dirtyWidth, dirtyHeight, dirtyX, dirtyY, dirtyWidth, dirtyHeight);
69
+ }
70
+ render(viewport, context) {
71
+ if (!this.visibility) {
72
+ return;
73
+ }
74
+ const image = this.image || this.getImage();
75
+ const { width, height } = image;
76
+ const data = image.getScalarData();
77
+ if (!data) {
78
+ return;
79
+ }
80
+ const { voxelManager } = image;
81
+ if (voxelManager) {
82
+ if (voxelManager.map.getRun) {
83
+ return this.renderRLE(viewport, context, voxelManager);
84
+ }
85
+ }
86
+ let { canvas } = this;
87
+ if (!canvas || canvas.width !== width || canvas.height !== height) {
88
+ this.canvas = canvas = new window.OffscreenCanvas(width, height);
89
+ }
90
+ const localContext = canvas.getContext('2d');
91
+ const imageData = localContext.createImageData(width, height);
92
+ const { data: imageArray } = imageData;
93
+ let offset = 0;
94
+ let destOffset = 0;
95
+ let dirtyX = Infinity;
96
+ let dirtyY = Infinity;
97
+ let dirtyX2 = -Infinity;
98
+ let dirtyY2 = -Infinity;
99
+ for (let y = 0; y < height; y++) {
100
+ for (let x = 0; x < width; x++) {
101
+ const segmentIndex = data[offset++];
102
+ if (segmentIndex) {
103
+ dirtyX = Math.min(x, dirtyX);
104
+ dirtyY = Math.min(y, dirtyY);
105
+ dirtyX2 = Math.max(x, dirtyX2);
106
+ dirtyY2 = Math.max(y, dirtyY2);
107
+ const rgb = this.canvasProperties.getColor(segmentIndex);
108
+ imageArray[destOffset] = rgb[0] * 255;
109
+ imageArray[destOffset + 1] = rgb[1] * 255;
110
+ imageArray[destOffset + 2] = rgb[2] * 255;
111
+ imageArray[destOffset + 3] = 127;
112
+ }
113
+ destOffset += 4;
114
+ }
115
+ }
116
+ if (dirtyX > width) {
117
+ return;
118
+ }
119
+ const dirtyWidth = dirtyX2 - dirtyX + 1;
120
+ const dirtyHeight = dirtyY2 - dirtyY + 1;
121
+ localContext.putImageData(imageData, 0, 0, dirtyX, dirtyY, dirtyWidth, dirtyHeight);
122
+ context.drawImage(canvas, dirtyX, dirtyY, dirtyWidth, dirtyHeight, dirtyX, dirtyY, dirtyWidth, dirtyHeight);
123
+ }
124
+ getClassName() {
125
+ return this.className;
126
+ }
127
+ getProperty() {
128
+ return this.canvasProperties;
129
+ }
130
+ setVisibility(visibility) {
131
+ this.visibility = visibility;
132
+ }
133
+ getMapper() {
134
+ return this.mapper;
135
+ }
136
+ isA(actorType) {
137
+ return actorType === this.className;
138
+ }
139
+ getImage() {
140
+ if (this.image) {
141
+ return this.image;
142
+ }
143
+ this.image = Object.assign({}, this.derivedImage);
144
+ const imageData = this.viewport.getImageData();
145
+ Object.assign(this.image, {
146
+ worldToIndex: (worldPos) => imageData.imageData.worldToIndex(worldPos),
147
+ indexToWorld: (index) => imageData.imageData.indexToWorld(index),
148
+ getDimensions: () => imageData.dimensions,
149
+ getScalarData: () => { var _a; return (_a = this.derivedImage) === null || _a === void 0 ? void 0 : _a.getPixelData(); },
150
+ getDirection: () => imageData.direction,
151
+ getSpacing: () => imageData.spacing,
152
+ setOrigin: () => null,
153
+ setDerivedImage: (image) => {
154
+ this.derivedImage = image;
155
+ this.image = null;
156
+ },
157
+ modified: () => null,
158
+ });
159
+ return this.image;
160
+ }
161
+ }
162
+ exports.default = CanvasActor;
163
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/RenderingEngine/CanvasActor/index.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,12 @@
1
- import { VideoViewport as VideoViewportEnum } from '../enums';
2
- import type { IVideoViewport, VideoViewportProperties, Point3, Point2, ICamera, VideoViewportInput, VOIRange, TargetSpecifier } from '../types';
1
+ import { VideoEnums as VideoViewportEnum } from '../enums';
2
+ import type { IVideoViewport, VideoViewportProperties, Point3, Point2, ICamera, VideoViewportInput, VOIRange, IImage, TargetSpecifier } from '../types';
3
3
  import { Transform } from './helpers/cpuFallback/rendering/transform';
4
4
  import Viewport from './Viewport';
5
+ import CanvasActor from './CanvasActor';
6
+ export declare type CanvasScalarData = Uint8ClampedArray & {
7
+ frameNumber?: number;
8
+ getRange?: () => [number, number];
9
+ };
5
10
  declare class VideoViewport extends Viewport implements IVideoViewport {
6
11
  static frameRangeExtractor: RegExp;
7
12
  modality: any;
@@ -17,6 +22,7 @@ declare class VideoViewport extends Viewport implements IVideoViewport {
17
22
  private isPlaying;
18
23
  private scrollSpeed;
19
24
  private playbackRate;
25
+ private scalarData;
20
26
  private frameRange;
21
27
  protected metadata: any;
22
28
  private fps;
@@ -30,9 +36,22 @@ declare class VideoViewport extends Viewport implements IVideoViewport {
30
36
  private addEventListeners;
31
37
  private removeEventListeners;
32
38
  private elementDisabledHandler;
33
- private _getImageDataMetadata;
39
+ getImageDataMetadata(image: IImage | string): {
40
+ bitsAllocated: number;
41
+ numComps: number;
42
+ origin: any;
43
+ rows: any;
44
+ columns: any;
45
+ direction: number[];
46
+ dimensions: any[];
47
+ spacing: any[];
48
+ hasPixelSpacing: boolean;
49
+ numVoxels: number;
50
+ imagePlaneModule: any;
51
+ };
34
52
  setVideo(imageId: string, frameNumber?: number): Promise<unknown>;
35
53
  setVideoURL(videoURL: string): Promise<unknown>;
54
+ getImageIds(): string[];
36
55
  togglePlayPause(): boolean;
37
56
  play(): Promise<void>;
38
57
  pause(): Promise<void>;
@@ -48,7 +67,7 @@ declare class VideoViewport extends Viewport implements IVideoViewport {
48
67
  setScrollSpeed(scrollSpeed?: number, unit?: VideoViewportEnum.SpeedUnit): void;
49
68
  getProperties: () => VideoViewportProperties;
50
69
  resetProperties(): void;
51
- protected getScalarData(): Uint8ClampedArray;
70
+ protected getScalarData(): CanvasScalarData;
52
71
  getImageData(): {
53
72
  dimensions: any;
54
73
  spacing: any;
@@ -57,12 +76,12 @@ declare class VideoViewport extends Viewport implements IVideoViewport {
57
76
  metadata: {
58
77
  Modality: any;
59
78
  };
60
- getScalarData: () => Uint8ClampedArray;
79
+ getScalarData: () => CanvasScalarData;
61
80
  imageData: {
62
81
  getDirection: () => any;
63
82
  getDimensions: () => any;
64
83
  getRange: () => number[];
65
- getScalarData: () => Uint8ClampedArray;
84
+ getScalarData: () => CanvasScalarData;
66
85
  getSpacing: () => any;
67
86
  worldToIndex: (point: Point3) => number[];
68
87
  indexToWorld: (point: Point3) => Point3;
@@ -99,6 +118,9 @@ declare class VideoViewport extends Viewport implements IVideoViewport {
99
118
  private getCanvasToWorldRatio;
100
119
  customRenderViewportToCanvas: () => void;
101
120
  protected getTransform(): Transform;
121
+ updateCameraClippingPlanesAndRange(): void;
122
+ addImages(stackInputs: Array<any>): void;
123
+ protected createActorMapper(image: any): CanvasActor;
102
124
  private renderFrame;
103
125
  private renderWhilstPlaying;
104
126
  }
@@ -42,6 +42,8 @@ const transform_1 = require("./helpers/cpuFallback/rendering/transform");
42
42
  const utilities_1 = require("../utilities");
43
43
  const Viewport_1 = __importDefault(require("./Viewport"));
44
44
  const helpers_1 = require("./helpers");
45
+ const CanvasActor_1 = __importDefault(require("./CanvasActor"));
46
+ const cache_1 = __importDefault(require("../cache"));
45
47
  class VideoViewport extends Viewport_1.default {
46
48
  constructor(props) {
47
49
  super(Object.assign(Object.assign({}, props), { canvas: props.canvas || (0, helpers_1.getOrCreateCanvas)(props.element) }));
@@ -144,8 +146,11 @@ class VideoViewport extends Viewport_1.default {
144
146
  const transformationMatrix = transform.getMatrix();
145
147
  this.canvasContext.transform(transformationMatrix[0], transformationMatrix[1], transformationMatrix[2], transformationMatrix[3], transformationMatrix[4], transformationMatrix[5]);
146
148
  this.canvasContext.drawImage(this.videoElement, 0, 0, this.videoWidth, this.videoHeight);
149
+ for (const actor of this.getActors()) {
150
+ actor.actor.render(this, this.canvasContext);
151
+ }
147
152
  this.canvasContext.resetTransform();
148
- (0, utilities_1.triggerEvent)(this.element, enums_1.Events.IMAGE_RENDERED, {
153
+ (0, utilities_1.triggerEvent)(this.element, enums_1.Events.STACK_NEW_IMAGE, {
149
154
  element: this.element,
150
155
  viewportId: this.id,
151
156
  viewport: this,
@@ -198,8 +203,9 @@ class VideoViewport extends Viewport_1.default {
198
203
  this.removeEventListeners();
199
204
  this.videoElement.remove();
200
205
  }
201
- _getImageDataMetadata() {
202
- const imagePlaneModule = metaData.get(enums_1.MetadataModules.IMAGE_PLANE, this.imageId);
206
+ getImageDataMetadata(image) {
207
+ const imageId = typeof image === 'string' ? image : image.imageId;
208
+ const imagePlaneModule = metaData.get(enums_1.MetadataModules.IMAGE_PLANE, imageId);
203
209
  let rowCosines = imagePlaneModule.rowCosines;
204
210
  let columnCosines = imagePlaneModule.columnCosines;
205
211
  if (rowCosines == null || columnCosines == null) {
@@ -209,8 +215,6 @@ class VideoViewport extends Viewport_1.default {
209
215
  const rowCosineVec = gl_matrix_1.vec3.fromValues(rowCosines[0], rowCosines[1], rowCosines[2]);
210
216
  const colCosineVec = gl_matrix_1.vec3.fromValues(columnCosines[0], columnCosines[1], columnCosines[2]);
211
217
  const { rows, columns } = imagePlaneModule;
212
- this.videoWidth = columns;
213
- this.videoHeight = rows;
214
218
  const scanAxisNormal = gl_matrix_1.vec3.create();
215
219
  gl_matrix_1.vec3.cross(scanAxisNormal, rowCosineVec, colCosineVec);
216
220
  let origin = imagePlaneModule.imagePositionPatient;
@@ -228,6 +232,8 @@ class VideoViewport extends Viewport_1.default {
228
232
  bitsAllocated: 8,
229
233
  numComps: 3,
230
234
  origin,
235
+ rows,
236
+ columns,
231
237
  direction: [...rowCosineVec, ...colCosineVec, ...scanAxisNormal],
232
238
  dimensions: [xVoxels, yVoxels, zVoxels],
233
239
  spacing: [xSpacing, ySpacing, zSpacing],
@@ -241,7 +247,7 @@ class VideoViewport extends Viewport_1.default {
241
247
  const { rendered } = metaData.get(enums_1.MetadataModules.IMAGE_URL, imageId);
242
248
  const generalSeries = metaData.get(enums_1.MetadataModules.GENERAL_SERIES, imageId);
243
249
  this.modality = generalSeries === null || generalSeries === void 0 ? void 0 : generalSeries.Modality;
244
- this.metadata = this._getImageDataMetadata();
250
+ this.metadata = this.getImageDataMetadata(imageId);
245
251
  return this.setVideoURL(rendered).then(() => {
246
252
  let { cineRate, numberOfFrames } = metaData.get(enums_1.MetadataModules.CINE, imageId);
247
253
  if (!numberOfFrames) {
@@ -254,10 +260,13 @@ class VideoViewport extends Viewport_1.default {
254
260
  this.numberOfFrames = numberOfFrames;
255
261
  this.setFrameRange([1, numberOfFrames]);
256
262
  this.play();
257
- window.setTimeout(() => {
258
- this.pause();
259
- this.setFrameNumber(frameNumber || 1);
260
- }, 50);
263
+ return new Promise((resolve) => {
264
+ window.setTimeout(() => {
265
+ this.pause();
266
+ this.setFrameNumber(frameNumber || 1);
267
+ resolve(this);
268
+ }, 100);
269
+ });
261
270
  });
262
271
  }
263
272
  setVideoURL(videoURL) {
@@ -276,6 +285,14 @@ class VideoViewport extends Viewport_1.default {
276
285
  });
277
286
  });
278
287
  }
288
+ getImageIds() {
289
+ const imageIds = new Array(this.numberOfFrames);
290
+ const baseImageId = this.imageId.replace(/[0-9]+$/, '');
291
+ for (let i = 0; i < this.numberOfFrames; i++) {
292
+ imageIds[i] = `${baseImageId}${i + 1}`;
293
+ }
294
+ return imageIds;
295
+ }
279
296
  togglePlayPause() {
280
297
  if (this.isPlaying) {
281
298
  this.pause();
@@ -413,9 +430,9 @@ class VideoViewport extends Viewport_1.default {
413
430
  this.videoElement.playbackRate = rate;
414
431
  this.play();
415
432
  }
416
- setScrollSpeed(scrollSpeed = 1, unit = enums_1.VideoViewport.SpeedUnit.FRAME) {
433
+ setScrollSpeed(scrollSpeed = 1, unit = enums_1.VideoEnums.SpeedUnit.FRAME) {
417
434
  this.scrollSpeed =
418
- unit === enums_1.VideoViewport.SpeedUnit.SECOND
435
+ unit === enums_1.VideoEnums.SpeedUnit.SECOND
419
436
  ? scrollSpeed * this.fps
420
437
  : scrollSpeed;
421
438
  }
@@ -426,14 +443,20 @@ class VideoViewport extends Viewport_1.default {
426
443
  });
427
444
  }
428
445
  getScalarData() {
446
+ var _a;
447
+ if (((_a = this.scalarData) === null || _a === void 0 ? void 0 : _a.frameNumber) === this.getFrameNumber()) {
448
+ return this.scalarData;
449
+ }
429
450
  const canvas = document.createElement('canvas');
430
451
  canvas.width = this.videoWidth;
431
452
  canvas.height = this.videoHeight;
432
453
  const context = canvas.getContext('2d');
433
454
  context.drawImage(this.videoElement, 0, 0);
434
455
  const canvasData = context.getImageData(0, 0, this.videoWidth, this.videoHeight);
435
- const { data: scalarData } = canvasData;
456
+ const scalarData = canvasData.data;
436
457
  scalarData.getRange = () => [0, 255];
458
+ scalarData.frameNumber = this.getFrameNumber();
459
+ this.scalarData = scalarData;
437
460
  return scalarData;
438
461
  }
439
462
  getImageData() {
@@ -624,6 +647,25 @@ class VideoViewport extends Viewport_1.default {
624
647
  transform.translate(-halfCanvasWorldCoordinates[0], -halfCanvasWorldCoordinates[1]);
625
648
  return transform;
626
649
  }
650
+ updateCameraClippingPlanesAndRange() {
651
+ }
652
+ addImages(stackInputs) {
653
+ const actors = this.getActors();
654
+ stackInputs.forEach((stackInput) => {
655
+ const image = cache_1.default.getImage(stackInput.imageId);
656
+ const imageActor = this.createActorMapper(image);
657
+ if (imageActor) {
658
+ actors.push({ uid: stackInput.actorUID, actor: imageActor });
659
+ if (stackInput.callback) {
660
+ stackInput.callback({ imageActor, imageId: stackInput.imageId });
661
+ }
662
+ }
663
+ });
664
+ this.setActors(actors);
665
+ }
666
+ createActorMapper(image) {
667
+ return new CanvasActor_1.default(this, image);
668
+ }
627
669
  }
628
670
  VideoViewport.frameRangeExtractor = /(\/frames\/|[&?]frameNumber=)([^/&?]*)/i;
629
671
  exports.default = VideoViewport;
@@ -1 +1 @@
1
- {"version":3,"file":"VideoViewport.js","sourceRoot":"","sources":["../../../src/RenderingEngine/VideoViewport.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"VideoViewport.js","sourceRoot":"","sources":["../../../src/RenderingEngine/VideoViewport.ts"],"names":[],"mappings":"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"}
@@ -213,12 +213,13 @@ class Viewport {
213
213
  return;
214
214
  }
215
215
  const renderer = this.getRenderer();
216
- renderer.addActor(actor);
216
+ renderer === null || renderer === void 0 ? void 0 : renderer.addActor(actor);
217
217
  this._actors.set(actorUID, Object.assign({}, actorEntry));
218
218
  this.updateCameraClippingPlanesAndRange();
219
219
  }
220
220
  removeAllActors() {
221
- this.getRenderer().removeAllViewProps();
221
+ var _a;
222
+ (_a = this.getRenderer()) === null || _a === void 0 ? void 0 : _a.removeAllViewProps();
222
223
  this._actors = new Map();
223
224
  return;
224
225
  }