@cornerstonejs/core 0.1.1 → 0.1.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/RenderingEngine/RenderingEngine.d.ts +11 -11
- package/dist/cjs/RenderingEngine/RenderingEngine.js +55 -55
- package/dist/cjs/RenderingEngine/RenderingEngine.js.map +1 -1
- package/dist/cjs/RenderingEngine/StackViewport.d.ts +2 -2
- package/dist/cjs/RenderingEngine/StackViewport.js +47 -28
- package/dist/cjs/RenderingEngine/StackViewport.js.map +1 -1
- package/dist/cjs/RenderingEngine/Viewport.d.ts +4 -5
- package/dist/cjs/RenderingEngine/Viewport.js +11 -11
- package/dist/cjs/RenderingEngine/Viewport.js.map +1 -1
- package/dist/cjs/RenderingEngine/VolumeViewport.d.ts +2 -3
- package/dist/cjs/RenderingEngine/VolumeViewport.js +9 -9
- package/dist/cjs/RenderingEngine/VolumeViewport.js.map +1 -1
- package/dist/cjs/RenderingEngine/getRenderingEngine.d.ts +1 -1
- package/dist/cjs/RenderingEngine/getRenderingEngine.js +2 -2
- package/dist/cjs/RenderingEngine/getRenderingEngine.js.map +1 -1
- package/dist/cjs/RenderingEngine/helpers/addVolumesToViewports.d.ts +1 -1
- package/dist/cjs/RenderingEngine/helpers/addVolumesToViewports.js +6 -6
- package/dist/cjs/RenderingEngine/helpers/addVolumesToViewports.js.map +1 -1
- package/dist/cjs/RenderingEngine/helpers/cpuFallback/colors/index.d.ts +0 -7
- package/dist/cjs/RenderingEngine/helpers/cpuFallback/colors/index.js +0 -6
- package/dist/cjs/RenderingEngine/helpers/cpuFallback/colors/index.js.map +1 -1
- package/dist/cjs/RenderingEngine/helpers/cpuFallback/rendering/renderPseudoColorImage.d.ts +1 -1
- package/dist/cjs/RenderingEngine/helpers/cpuFallback/rendering/renderPseudoColorImage.js +21 -2
- package/dist/cjs/RenderingEngine/helpers/cpuFallback/rendering/renderPseudoColorImage.js.map +1 -1
- package/dist/cjs/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataColorLUT.d.ts +1 -1
- package/dist/cjs/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataColorLUT.js +21 -2
- package/dist/cjs/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataColorLUT.js.map +1 -1
- package/dist/cjs/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataPseudocolorLUT.d.ts +1 -1
- package/dist/cjs/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataPseudocolorLUT.js +21 -2
- package/dist/cjs/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataPseudocolorLUT.js.map +1 -1
- package/dist/cjs/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataPseudocolorLUTPET.d.ts +1 -1
- package/dist/cjs/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataPseudocolorLUTPET.js +21 -2
- package/dist/cjs/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataPseudocolorLUTPET.js.map +1 -1
- package/dist/cjs/RenderingEngine/helpers/createVolumeActor.d.ts +5 -4
- package/dist/cjs/RenderingEngine/helpers/createVolumeActor.js +4 -4
- package/dist/cjs/RenderingEngine/helpers/createVolumeActor.js.map +1 -1
- package/dist/cjs/RenderingEngine/helpers/renderToCanvas.d.ts +1 -1
- package/dist/cjs/RenderingEngine/helpers/renderToCanvas.js +7 -7
- package/dist/cjs/RenderingEngine/helpers/renderToCanvas.js.map +1 -1
- package/dist/cjs/RenderingEngine/helpers/setVolumesForViewports.d.ts +1 -1
- package/dist/cjs/RenderingEngine/helpers/setVolumesForViewports.js +6 -6
- package/dist/cjs/RenderingEngine/helpers/setVolumesForViewports.js.map +1 -1
- package/dist/cjs/RenderingEngine/renderingEngineCache.d.ts +2 -2
- package/dist/cjs/RenderingEngine/renderingEngineCache.js +8 -8
- package/dist/cjs/RenderingEngine/renderingEngineCache.js.map +1 -1
- package/dist/cjs/RenderingEngine/vtkClasses/vtkOffscreenMultiRenderWindow.js +9 -9
- package/dist/cjs/RenderingEngine/vtkClasses/vtkOffscreenMultiRenderWindow.js.map +1 -1
- package/dist/cjs/cache/classes/ImageVolume.d.ts +2 -2
- package/dist/cjs/cache/classes/ImageVolume.js +3 -3
- package/dist/cjs/cache/classes/ImageVolume.js.map +1 -1
- package/dist/cjs/getEnabledElement.d.ts +1 -1
- package/dist/cjs/getEnabledElement.js +9 -9
- package/dist/cjs/getEnabledElement.js.map +1 -1
- package/dist/cjs/imageLoader.js +3 -3
- package/dist/cjs/imageLoader.js.map +1 -1
- package/dist/cjs/index.d.ts +3 -3
- package/dist/cjs/index.js +4 -4
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/metaData.d.ts +1 -8
- package/dist/cjs/metaData.js +2 -9
- package/dist/cjs/metaData.js.map +1 -1
- package/dist/cjs/requestPool/requestPoolManager.d.ts +1 -1
- package/dist/cjs/types/EventTypes.d.ts +14 -14
- package/dist/cjs/types/IEnabledElement.d.ts +2 -2
- package/dist/cjs/types/IImageVolume.d.ts +2 -2
- package/dist/cjs/types/IStackViewport.d.ts +2 -2
- package/dist/cjs/types/IViewport.d.ts +6 -6
- package/dist/cjs/types/IViewportId.d.ts +4 -0
- package/dist/cjs/types/{IViewportUID.js → IViewportId.js} +1 -1
- package/dist/cjs/types/IViewportId.js.map +1 -0
- package/dist/cjs/types/IVolume.d.ts +4 -4
- package/dist/cjs/types/IVolumeInput.d.ts +4 -3
- package/dist/cjs/types/index.d.ts +2 -2
- package/dist/cjs/utilities/getClosestImageId.d.ts +1 -1
- package/dist/cjs/utilities/getClosestImageId.js +21 -2
- package/dist/cjs/utilities/getClosestImageId.js.map +1 -1
- package/dist/cjs/utilities/getTargetVolumeAndSpacingInNormalDir.d.ts +1 -1
- package/dist/cjs/utilities/getTargetVolumeAndSpacingInNormalDir.js +3 -3
- package/dist/cjs/utilities/getTargetVolumeAndSpacingInNormalDir.js.map +1 -1
- package/dist/cjs/utilities/getVolumeViewportsContainingSameVolumes.d.ts +1 -1
- package/dist/cjs/utilities/getVolumeViewportsContainingSameVolumes.js +3 -3
- package/dist/cjs/utilities/getVolumeViewportsContainingSameVolumes.js.map +1 -1
- package/dist/cjs/utilities/getVolumeViewportsContainingVolumeId.d.ts +3 -0
- package/dist/cjs/utilities/{getVolumeViewportsContainingVolumeUID.js → getVolumeViewportsContainingVolumeId.js} +7 -7
- package/dist/cjs/utilities/getVolumeViewportsContainingVolumeId.js.map +1 -0
- package/dist/cjs/utilities/index.d.ts +2 -2
- package/dist/cjs/utilities/index.js +3 -3
- package/dist/cjs/utilities/index.js.map +1 -1
- package/dist/cjs/utilities/testUtilsVolumeLoader.js +1 -1
- package/dist/cjs/utilities/testUtilsVolumeLoader.js.map +1 -1
- package/dist/cjs/volumeLoader.d.ts +4 -4
- package/dist/cjs/volumeLoader.js +15 -15
- package/dist/cjs/volumeLoader.js.map +1 -1
- package/dist/core.d.ts +77 -74
- package/dist/esm/RenderingEngine/RenderingEngine.d.ts +11 -11
- package/dist/esm/RenderingEngine/RenderingEngine.js +55 -55
- package/dist/esm/RenderingEngine/RenderingEngine.js.map +1 -1
- package/dist/esm/RenderingEngine/StackViewport.d.ts +2 -2
- package/dist/esm/RenderingEngine/StackViewport.js +14 -14
- package/dist/esm/RenderingEngine/StackViewport.js.map +1 -1
- package/dist/esm/RenderingEngine/Viewport.d.ts +4 -5
- package/dist/esm/RenderingEngine/Viewport.js +11 -11
- package/dist/esm/RenderingEngine/Viewport.js.map +1 -1
- package/dist/esm/RenderingEngine/VolumeViewport.d.ts +2 -3
- package/dist/esm/RenderingEngine/VolumeViewport.js +9 -9
- package/dist/esm/RenderingEngine/VolumeViewport.js.map +1 -1
- package/dist/esm/RenderingEngine/getRenderingEngine.d.ts +1 -1
- package/dist/esm/RenderingEngine/getRenderingEngine.js +2 -2
- package/dist/esm/RenderingEngine/getRenderingEngine.js.map +1 -1
- package/dist/esm/RenderingEngine/helpers/addVolumesToViewports.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/addVolumesToViewports.js +6 -6
- package/dist/esm/RenderingEngine/helpers/addVolumesToViewports.js.map +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/colors/index.d.ts +0 -7
- package/dist/esm/RenderingEngine/helpers/cpuFallback/colors/index.js +0 -6
- package/dist/esm/RenderingEngine/helpers/cpuFallback/colors/index.js.map +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/renderPseudoColorImage.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/renderPseudoColorImage.js +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/renderPseudoColorImage.js.map +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataColorLUT.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataColorLUT.js +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataColorLUT.js.map +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataPseudocolorLUT.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataPseudocolorLUT.js +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataPseudocolorLUT.js.map +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataPseudocolorLUTPET.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataPseudocolorLUTPET.js +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataPseudocolorLUTPET.js.map +1 -1
- package/dist/esm/RenderingEngine/helpers/createVolumeActor.d.ts +5 -4
- package/dist/esm/RenderingEngine/helpers/createVolumeActor.js +4 -4
- package/dist/esm/RenderingEngine/helpers/createVolumeActor.js.map +1 -1
- package/dist/esm/RenderingEngine/helpers/renderToCanvas.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/renderToCanvas.js +7 -7
- package/dist/esm/RenderingEngine/helpers/renderToCanvas.js.map +1 -1
- package/dist/esm/RenderingEngine/helpers/setVolumesForViewports.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/setVolumesForViewports.js +6 -6
- package/dist/esm/RenderingEngine/helpers/setVolumesForViewports.js.map +1 -1
- package/dist/esm/RenderingEngine/renderingEngineCache.d.ts +2 -2
- package/dist/esm/RenderingEngine/renderingEngineCache.js +8 -8
- package/dist/esm/RenderingEngine/renderingEngineCache.js.map +1 -1
- package/dist/esm/RenderingEngine/vtkClasses/vtkOffscreenMultiRenderWindow.js +9 -9
- package/dist/esm/RenderingEngine/vtkClasses/vtkOffscreenMultiRenderWindow.js.map +1 -1
- package/dist/esm/cache/classes/ImageVolume.d.ts +2 -2
- package/dist/esm/cache/classes/ImageVolume.js +3 -3
- package/dist/esm/cache/classes/ImageVolume.js.map +1 -1
- package/dist/esm/getEnabledElement.d.ts +1 -1
- package/dist/esm/getEnabledElement.js +7 -7
- package/dist/esm/getEnabledElement.js.map +1 -1
- package/dist/esm/imageLoader.js +3 -3
- package/dist/esm/imageLoader.js.map +1 -1
- package/dist/esm/index.d.ts +3 -3
- package/dist/esm/index.js +3 -3
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/metaData.d.ts +1 -8
- package/dist/esm/metaData.js +1 -8
- package/dist/esm/metaData.js.map +1 -1
- package/dist/esm/requestPool/requestPoolManager.d.ts +1 -1
- package/dist/esm/types/EventTypes.d.ts +14 -14
- package/dist/esm/types/IEnabledElement.d.ts +2 -2
- package/dist/esm/types/IImageVolume.d.ts +2 -2
- package/dist/esm/types/IStackViewport.d.ts +2 -2
- package/dist/esm/types/IViewport.d.ts +6 -6
- package/dist/esm/types/IViewportId.d.ts +4 -0
- package/dist/esm/types/IViewportId.js +2 -0
- package/dist/esm/types/IViewportId.js.map +1 -0
- package/dist/esm/types/IVolume.d.ts +4 -4
- package/dist/esm/types/IVolumeInput.d.ts +4 -3
- package/dist/esm/types/index.d.ts +2 -2
- package/dist/esm/utilities/getClosestImageId.d.ts +1 -1
- package/dist/esm/utilities/getClosestImageId.js +1 -1
- package/dist/esm/utilities/getClosestImageId.js.map +1 -1
- package/dist/esm/utilities/getTargetVolumeAndSpacingInNormalDir.d.ts +1 -1
- package/dist/esm/utilities/getTargetVolumeAndSpacingInNormalDir.js +3 -3
- package/dist/esm/utilities/getTargetVolumeAndSpacingInNormalDir.js.map +1 -1
- package/dist/esm/utilities/getVolumeViewportsContainingSameVolumes.d.ts +1 -1
- package/dist/esm/utilities/getVolumeViewportsContainingSameVolumes.js +3 -3
- package/dist/esm/utilities/getVolumeViewportsContainingSameVolumes.js.map +1 -1
- package/dist/esm/utilities/getVolumeViewportsContainingVolumeId.d.ts +3 -0
- package/dist/esm/utilities/{getVolumeViewportsContainingVolumeUID.js → getVolumeViewportsContainingVolumeId.js} +7 -7
- package/dist/esm/utilities/getVolumeViewportsContainingVolumeId.js.map +1 -0
- package/dist/esm/utilities/index.d.ts +2 -2
- package/dist/esm/utilities/index.js +2 -2
- package/dist/esm/utilities/index.js.map +1 -1
- package/dist/esm/utilities/testUtilsVolumeLoader.js +1 -1
- package/dist/esm/utilities/testUtilsVolumeLoader.js.map +1 -1
- package/dist/esm/volumeLoader.d.ts +4 -4
- package/dist/esm/volumeLoader.js +15 -15
- package/dist/esm/volumeLoader.js.map +1 -1
- package/dist/umd/index.js +1 -1
- package/dist/umd/index.js.map +1 -1
- package/package.json +3 -2
- package/dist/cjs/types/IViewportUID.d.ts +0 -4
- package/dist/cjs/types/IViewportUID.js.map +0 -1
- package/dist/cjs/utilities/getVolumeViewportsContainingVolumeUID.d.ts +0 -3
- package/dist/cjs/utilities/getVolumeViewportsContainingVolumeUID.js.map +0 -1
- package/dist/esm/types/IViewportUID.d.ts +0 -4
- package/dist/esm/types/IViewportUID.js +0 -2
- package/dist/esm/types/IViewportUID.js.map +0 -1
- package/dist/esm/utilities/getVolumeViewportsContainingVolumeUID.d.ts +0 -3
- package/dist/esm/utilities/getVolumeViewportsContainingVolumeUID.js.map +0 -1
|
@@ -2,28 +2,28 @@ import type IStackViewport from '../types/IStackViewport';
|
|
|
2
2
|
import type IVolumeViewport from '../types/IVolumeViewport';
|
|
3
3
|
import type { PublicViewportInput } from '../types/IViewport';
|
|
4
4
|
export interface IRenderingEngine {
|
|
5
|
-
|
|
5
|
+
id: string;
|
|
6
6
|
hasBeenDestroyed: boolean;
|
|
7
7
|
offscreenMultiRenderWindow: any;
|
|
8
8
|
offScreenCanvasContainer: any;
|
|
9
9
|
setViewports(viewports: Array<PublicViewportInput>): void;
|
|
10
10
|
resize(): void;
|
|
11
|
-
getViewport(
|
|
11
|
+
getViewport(id: string): IStackViewport | IVolumeViewport;
|
|
12
12
|
getViewports(): Array<IStackViewport | IVolumeViewport>;
|
|
13
13
|
render(): void;
|
|
14
|
-
renderViewports(
|
|
15
|
-
renderViewport(
|
|
14
|
+
renderViewports(viewportIds: Array<string>): void;
|
|
15
|
+
renderViewport(viewportId: string): void;
|
|
16
16
|
renderFrameOfReference(FrameOfReferenceUID: string): void;
|
|
17
17
|
fillCanvasWithBackgroundColor(canvas: HTMLCanvasElement, backgroundColor: [number, number, number]): void;
|
|
18
18
|
enableElement(viewportInputEntry: PublicViewportInput): void;
|
|
19
|
-
disableElement(
|
|
19
|
+
disableElement(viewportId: string): void;
|
|
20
20
|
getStackViewports(): Array<IStackViewport>;
|
|
21
21
|
getVolumeViewports(): Array<IVolumeViewport>;
|
|
22
22
|
destroy(): void;
|
|
23
23
|
_debugRender(): void;
|
|
24
24
|
}
|
|
25
25
|
declare class RenderingEngine implements IRenderingEngine {
|
|
26
|
-
readonly
|
|
26
|
+
readonly id: string;
|
|
27
27
|
hasBeenDestroyed: boolean;
|
|
28
28
|
offscreenMultiRenderWindow: any;
|
|
29
29
|
readonly offScreenCanvasContainer: any;
|
|
@@ -32,19 +32,19 @@ declare class RenderingEngine implements IRenderingEngine {
|
|
|
32
32
|
private _animationFrameSet;
|
|
33
33
|
private _animationFrameHandle;
|
|
34
34
|
private useCPURendering;
|
|
35
|
-
constructor(
|
|
35
|
+
constructor(id?: string);
|
|
36
36
|
enableElement(viewportInputEntry: PublicViewportInput): void;
|
|
37
|
-
disableElement(
|
|
37
|
+
disableElement(viewportId: string): void;
|
|
38
38
|
setViewports(viewportInputEntries: Array<PublicViewportInput>): void;
|
|
39
39
|
resize(immediate?: boolean, resetPanZoomForViewPlane?: boolean): void;
|
|
40
|
-
getViewport(
|
|
40
|
+
getViewport(viewportId: string): IStackViewport | IVolumeViewport;
|
|
41
41
|
getViewports(): Array<IStackViewport | IVolumeViewport>;
|
|
42
42
|
getStackViewports(): Array<IStackViewport>;
|
|
43
43
|
getVolumeViewports(): Array<IVolumeViewport>;
|
|
44
44
|
render(): void;
|
|
45
45
|
renderFrameOfReference: (FrameOfReferenceUID: string) => void;
|
|
46
|
-
renderViewports(
|
|
47
|
-
renderViewport(
|
|
46
|
+
renderViewports(viewportIds: Array<string>): void;
|
|
47
|
+
renderViewport(viewportId: string): void;
|
|
48
48
|
destroy(): void;
|
|
49
49
|
fillCanvasWithBackgroundColor(canvas: HTMLCanvasElement, backgroundColor: [number, number, number]): void;
|
|
50
50
|
private _resizeUsingCustomResizeHandler;
|
|
@@ -15,18 +15,18 @@ const viewportTypeUsesCustomRenderingPipeline_1 = __importDefault(require("./hel
|
|
|
15
15
|
const getOrCreateCanvas_1 = __importDefault(require("./helpers/getOrCreateCanvas"));
|
|
16
16
|
const init_1 = require("../init");
|
|
17
17
|
class RenderingEngine {
|
|
18
|
-
constructor(
|
|
18
|
+
constructor(id) {
|
|
19
19
|
this._needsRender = new Set();
|
|
20
20
|
this._animationFrameSet = false;
|
|
21
21
|
this._animationFrameHandle = null;
|
|
22
22
|
this.renderFrameOfReference = (FrameOfReferenceUID) => {
|
|
23
23
|
const viewports = this._getViewportsAsArray();
|
|
24
|
-
const
|
|
24
|
+
const viewportIdsWithSameFrameOfReferenceUID = viewports.map((vp) => {
|
|
25
25
|
if (vp.getFrameOfReferenceUID() === FrameOfReferenceUID) {
|
|
26
|
-
return vp.
|
|
26
|
+
return vp.id;
|
|
27
27
|
}
|
|
28
28
|
});
|
|
29
|
-
return this.renderViewports(
|
|
29
|
+
return this.renderViewports(viewportIdsWithSameFrameOfReferenceUID);
|
|
30
30
|
};
|
|
31
31
|
this._renderFlaggedViewports = () => {
|
|
32
32
|
this._throwIfDestroyed();
|
|
@@ -37,10 +37,10 @@ class RenderingEngine {
|
|
|
37
37
|
const eventDetailArray = [];
|
|
38
38
|
for (let i = 0; i < viewports.length; i++) {
|
|
39
39
|
const viewport = viewports[i];
|
|
40
|
-
if (this._needsRender.has(viewport.
|
|
40
|
+
if (this._needsRender.has(viewport.id)) {
|
|
41
41
|
const eventDetail = this.renderViewportUsingCustomOrVtkPipeline(viewport);
|
|
42
42
|
eventDetailArray.push(eventDetail);
|
|
43
|
-
this._needsRender.delete(viewport.
|
|
43
|
+
this._needsRender.delete(viewport.id);
|
|
44
44
|
if (this._needsRender.size === 0) {
|
|
45
45
|
break;
|
|
46
46
|
}
|
|
@@ -52,7 +52,7 @@ class RenderingEngine {
|
|
|
52
52
|
(0, utilities_1.triggerEvent)(eventDetail.element, Events_1.default.IMAGE_RENDERED, eventDetail);
|
|
53
53
|
});
|
|
54
54
|
};
|
|
55
|
-
this.
|
|
55
|
+
this.id = id ? id : (0, utilities_1.uuidv4)();
|
|
56
56
|
this.useCPURendering = (0, init_1.getShouldUseCPURendering)();
|
|
57
57
|
renderingEngineCache_1.default.set(this);
|
|
58
58
|
if (!(0, init_1.isCornerstoneInitialized)()) {
|
|
@@ -69,13 +69,13 @@ class RenderingEngine {
|
|
|
69
69
|
}
|
|
70
70
|
enableElement(viewportInputEntry) {
|
|
71
71
|
this._throwIfDestroyed();
|
|
72
|
-
const { element,
|
|
72
|
+
const { element, viewportId } = viewportInputEntry;
|
|
73
73
|
if (!element) {
|
|
74
74
|
throw new Error('No element provided');
|
|
75
75
|
}
|
|
76
|
-
const viewport = this.getViewport(
|
|
76
|
+
const viewport = this.getViewport(viewportId);
|
|
77
77
|
if (viewport) {
|
|
78
|
-
this.disableElement(
|
|
78
|
+
this.disableElement(viewportId);
|
|
79
79
|
}
|
|
80
80
|
const { type } = viewportInputEntry;
|
|
81
81
|
const viewportUsesCustomRenderingPipeline = (0, viewportTypeUsesCustomRenderingPipeline_1.default)(type);
|
|
@@ -89,20 +89,20 @@ class RenderingEngine {
|
|
|
89
89
|
const { background } = viewportInputEntry.defaultOptions;
|
|
90
90
|
this.fillCanvasWithBackgroundColor(canvas, background);
|
|
91
91
|
}
|
|
92
|
-
disableElement(
|
|
92
|
+
disableElement(viewportId) {
|
|
93
93
|
this._throwIfDestroyed();
|
|
94
|
-
const viewport = this.getViewport(
|
|
94
|
+
const viewport = this.getViewport(viewportId);
|
|
95
95
|
if (!viewport) {
|
|
96
|
-
console.warn(`viewport ${
|
|
96
|
+
console.warn(`viewport ${viewportId} does not exist`);
|
|
97
97
|
return;
|
|
98
98
|
}
|
|
99
99
|
this._resetViewport(viewport);
|
|
100
100
|
if (!(0, viewportTypeUsesCustomRenderingPipeline_1.default)(viewport.type) &&
|
|
101
101
|
!this.useCPURendering) {
|
|
102
|
-
this.offscreenMultiRenderWindow.removeRenderer(
|
|
102
|
+
this.offscreenMultiRenderWindow.removeRenderer(viewportId);
|
|
103
103
|
}
|
|
104
|
-
this._removeViewport(
|
|
105
|
-
this._needsRender.delete(
|
|
104
|
+
this._removeViewport(viewportId);
|
|
105
|
+
this._needsRender.delete(viewportId);
|
|
106
106
|
const viewports = this.getViewports();
|
|
107
107
|
if (!viewports.length) {
|
|
108
108
|
this._clearAnimationFrame();
|
|
@@ -142,8 +142,8 @@ class RenderingEngine {
|
|
|
142
142
|
this._resizeVTKViewports(vtkDrivenViewports, immediate, resetPanZoomForViewPlane);
|
|
143
143
|
this._resizeUsingCustomResizeHandler(customRenderingViewports, immediate, resetPanZoomForViewPlane);
|
|
144
144
|
}
|
|
145
|
-
getViewport(
|
|
146
|
-
return this._viewports.get(
|
|
145
|
+
getViewport(viewportId) {
|
|
146
|
+
return this._viewports.get(viewportId);
|
|
147
147
|
}
|
|
148
148
|
getViewports() {
|
|
149
149
|
this._throwIfDestroyed();
|
|
@@ -167,21 +167,21 @@ class RenderingEngine {
|
|
|
167
167
|
}
|
|
168
168
|
render() {
|
|
169
169
|
const viewports = this.getViewports();
|
|
170
|
-
const
|
|
171
|
-
this._setViewportsToBeRenderedNextFrame(
|
|
170
|
+
const viewportIds = viewports.map((vp) => vp.id);
|
|
171
|
+
this._setViewportsToBeRenderedNextFrame(viewportIds);
|
|
172
172
|
}
|
|
173
|
-
renderViewports(
|
|
174
|
-
this._setViewportsToBeRenderedNextFrame(
|
|
173
|
+
renderViewports(viewportIds) {
|
|
174
|
+
this._setViewportsToBeRenderedNextFrame(viewportIds);
|
|
175
175
|
}
|
|
176
|
-
renderViewport(
|
|
177
|
-
this._setViewportsToBeRenderedNextFrame([
|
|
176
|
+
renderViewport(viewportId) {
|
|
177
|
+
this._setViewportsToBeRenderedNextFrame([viewportId]);
|
|
178
178
|
}
|
|
179
179
|
destroy() {
|
|
180
180
|
if (this.hasBeenDestroyed) {
|
|
181
181
|
return;
|
|
182
182
|
}
|
|
183
183
|
this._reset();
|
|
184
|
-
renderingEngineCache_1.default.delete(this.
|
|
184
|
+
renderingEngineCache_1.default.delete(this.id);
|
|
185
185
|
if (!this.useCPURendering) {
|
|
186
186
|
this.offscreenMultiRenderWindow.delete();
|
|
187
187
|
delete this.offscreenMultiRenderWindow;
|
|
@@ -241,16 +241,16 @@ class RenderingEngine {
|
|
|
241
241
|
xOffset,
|
|
242
242
|
});
|
|
243
243
|
}
|
|
244
|
-
_removeViewport(
|
|
245
|
-
const viewport = this.getViewport(
|
|
244
|
+
_removeViewport(viewportId) {
|
|
245
|
+
const viewport = this.getViewport(viewportId);
|
|
246
246
|
if (!viewport) {
|
|
247
|
-
console.warn(`viewport ${
|
|
247
|
+
console.warn(`viewport ${viewportId} does not exist`);
|
|
248
248
|
return;
|
|
249
249
|
}
|
|
250
|
-
this._viewports.delete(
|
|
250
|
+
this._viewports.delete(viewportId);
|
|
251
251
|
}
|
|
252
252
|
addVtkjsDrivenViewport(viewportInputEntry, offscreenCanvasProperties) {
|
|
253
|
-
const { element, canvas,
|
|
253
|
+
const { element, canvas, viewportId, type, defaultOptions } = viewportInputEntry;
|
|
254
254
|
element.tabIndex = -1;
|
|
255
255
|
const { offScreenCanvasWidth, offScreenCanvasHeight, xOffset } = offscreenCanvasProperties;
|
|
256
256
|
const { sxStartDisplayCoords, syStartDisplayCoords, sxEndDisplayCoords, syEndDisplayCoords, sx, sy, sWidth, sHeight, } = this._getViewportCoordsOnOffScreenCanvas(viewportInputEntry, offScreenCanvasWidth, offScreenCanvasHeight, xOffset);
|
|
@@ -261,15 +261,15 @@ class RenderingEngine {
|
|
|
261
261
|
sxEndDisplayCoords,
|
|
262
262
|
syEndDisplayCoords,
|
|
263
263
|
],
|
|
264
|
-
|
|
264
|
+
id: viewportId,
|
|
265
265
|
background: defaultOptions.background
|
|
266
266
|
? defaultOptions.background
|
|
267
267
|
: [0, 0, 0],
|
|
268
268
|
});
|
|
269
269
|
const viewportInput = {
|
|
270
|
-
|
|
270
|
+
id: viewportId,
|
|
271
271
|
element,
|
|
272
|
-
|
|
272
|
+
renderingEngineId: this.id,
|
|
273
273
|
type,
|
|
274
274
|
canvas,
|
|
275
275
|
sx,
|
|
@@ -288,18 +288,18 @@ class RenderingEngine {
|
|
|
288
288
|
else {
|
|
289
289
|
throw new Error(`Viewport Type ${type} is not supported`);
|
|
290
290
|
}
|
|
291
|
-
this._viewports.set(
|
|
291
|
+
this._viewports.set(viewportId, viewport);
|
|
292
292
|
const eventDetail = {
|
|
293
293
|
element,
|
|
294
|
-
|
|
295
|
-
|
|
294
|
+
viewportId,
|
|
295
|
+
renderingEngineId: this.id,
|
|
296
296
|
};
|
|
297
297
|
if (!viewport.suppressEvents) {
|
|
298
298
|
(0, utilities_1.triggerEvent)(eventTarget_1.default, Events_1.default.ELEMENT_ENABLED, eventDetail);
|
|
299
299
|
}
|
|
300
300
|
}
|
|
301
301
|
addCustomViewport(viewportInputEntry) {
|
|
302
|
-
const { element,
|
|
302
|
+
const { element, viewportId, type, defaultOptions } = viewportInputEntry;
|
|
303
303
|
element.tabIndex = -1;
|
|
304
304
|
const canvas = (0, getOrCreateCanvas_1.default)(element);
|
|
305
305
|
const { clientWidth, clientHeight } = canvas;
|
|
@@ -308,8 +308,8 @@ class RenderingEngine {
|
|
|
308
308
|
canvas.height = clientHeight;
|
|
309
309
|
}
|
|
310
310
|
const viewportInput = {
|
|
311
|
-
|
|
312
|
-
|
|
311
|
+
id: viewportId,
|
|
312
|
+
renderingEngineId: this.id,
|
|
313
313
|
element,
|
|
314
314
|
type,
|
|
315
315
|
canvas,
|
|
@@ -323,11 +323,11 @@ class RenderingEngine {
|
|
|
323
323
|
throw new Error('Support for fully custom viewports not yet implemented');
|
|
324
324
|
}
|
|
325
325
|
const viewport = new StackViewport_1.default(viewportInput);
|
|
326
|
-
this._viewports.set(
|
|
326
|
+
this._viewports.set(viewportId, viewport);
|
|
327
327
|
const eventDetail = {
|
|
328
328
|
element,
|
|
329
|
-
|
|
330
|
-
|
|
329
|
+
viewportId,
|
|
330
|
+
renderingEngineId: this.id,
|
|
331
331
|
};
|
|
332
332
|
(0, utilities_1.triggerEvent)(eventTarget_1.default, Events_1.default.ELEMENT_ENABLED, eventDetail);
|
|
333
333
|
}
|
|
@@ -374,7 +374,7 @@ class RenderingEngine {
|
|
|
374
374
|
viewport.sy = sy;
|
|
375
375
|
viewport.sWidth = sWidth;
|
|
376
376
|
viewport.sHeight = sHeight;
|
|
377
|
-
const renderer = this.offscreenMultiRenderWindow.getRenderer(viewport.
|
|
377
|
+
const renderer = this.offscreenMultiRenderWindow.getRenderer(viewport.id);
|
|
378
378
|
renderer.setViewport([
|
|
379
379
|
sxStartDisplayCoords,
|
|
380
380
|
syStartDisplayCoords,
|
|
@@ -413,9 +413,9 @@ class RenderingEngine {
|
|
|
413
413
|
_getViewportsAsArray() {
|
|
414
414
|
return Array.from(this._viewports.values());
|
|
415
415
|
}
|
|
416
|
-
_setViewportsToBeRenderedNextFrame(
|
|
417
|
-
|
|
418
|
-
this._needsRender.add(
|
|
416
|
+
_setViewportsToBeRenderedNextFrame(viewportIds) {
|
|
417
|
+
viewportIds.forEach((viewportId) => {
|
|
418
|
+
this._needsRender.add(viewportId);
|
|
419
419
|
});
|
|
420
420
|
this._render();
|
|
421
421
|
}
|
|
@@ -433,8 +433,8 @@ class RenderingEngine {
|
|
|
433
433
|
return;
|
|
434
434
|
}
|
|
435
435
|
for (let i = 0; i < renderers.length; i++) {
|
|
436
|
-
const { renderer,
|
|
437
|
-
if (this._needsRender.has(
|
|
436
|
+
const { renderer, id } = renderers[i];
|
|
437
|
+
if (this._needsRender.has(id)) {
|
|
438
438
|
renderer.setDraw(true);
|
|
439
439
|
}
|
|
440
440
|
else {
|
|
@@ -465,24 +465,24 @@ class RenderingEngine {
|
|
|
465
465
|
return eventDetail;
|
|
466
466
|
}
|
|
467
467
|
_renderViewportFromVtkCanvasToOnscreenCanvas(viewport, offScreenCanvas) {
|
|
468
|
-
const { element, canvas, sx, sy, sWidth, sHeight,
|
|
468
|
+
const { element, canvas, sx, sy, sWidth, sHeight, id: viewportId, renderingEngineId, suppressEvents, } = viewport;
|
|
469
469
|
const { width: dWidth, height: dHeight } = canvas;
|
|
470
470
|
const onScreenContext = canvas.getContext('2d');
|
|
471
471
|
onScreenContext.drawImage(offScreenCanvas, sx, sy, sWidth, sHeight, 0, 0, dWidth, dHeight);
|
|
472
472
|
return {
|
|
473
473
|
element,
|
|
474
474
|
suppressEvents,
|
|
475
|
-
|
|
476
|
-
|
|
475
|
+
viewportId,
|
|
476
|
+
renderingEngineId,
|
|
477
477
|
};
|
|
478
478
|
}
|
|
479
479
|
_resetViewport(viewport) {
|
|
480
|
-
const
|
|
481
|
-
const { element, canvas,
|
|
480
|
+
const renderingEngineId = this.id;
|
|
481
|
+
const { element, canvas, id: viewportId } = viewport;
|
|
482
482
|
const eventDetail = {
|
|
483
483
|
element,
|
|
484
|
-
|
|
485
|
-
|
|
484
|
+
viewportId,
|
|
485
|
+
renderingEngineId,
|
|
486
486
|
};
|
|
487
487
|
(0, utilities_1.triggerEvent)(eventTarget_1.default, Events_1.default.ELEMENT_DISABLED, eventDetail);
|
|
488
488
|
element.removeAttribute('data-viewport-uid');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RenderingEngine.js","sourceRoot":"","sources":["../../../src/RenderingEngine/RenderingEngine.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"RenderingEngine.js","sourceRoot":"","sources":["../../../src/RenderingEngine/RenderingEngine.ts"],"names":[],"mappings":"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"}
|
|
@@ -100,8 +100,8 @@ declare class StackViewport extends Viewport implements IStackViewport {
|
|
|
100
100
|
customRenderViewportToCanvas: () => {
|
|
101
101
|
canvas: HTMLCanvasElement;
|
|
102
102
|
element: HTMLElement;
|
|
103
|
-
|
|
104
|
-
|
|
103
|
+
viewportId: string;
|
|
104
|
+
renderingEngineId: string;
|
|
105
105
|
};
|
|
106
106
|
setColormap(colormap: CPUFallbackColormapData): void;
|
|
107
107
|
unsetColormap(): void;
|
|
@@ -1,4 +1,23 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
5
|
+
}) : (function(o, m, k, k2) {
|
|
6
|
+
if (k2 === undefined) k2 = k;
|
|
7
|
+
o[k2] = m[k];
|
|
8
|
+
}));
|
|
9
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
10
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
11
|
+
}) : function(o, v) {
|
|
12
|
+
o["default"] = v;
|
|
13
|
+
});
|
|
14
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
15
|
+
if (mod && mod.__esModule) return mod;
|
|
16
|
+
var result = {};
|
|
17
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
18
|
+
__setModuleDefault(result, mod);
|
|
19
|
+
return result;
|
|
20
|
+
};
|
|
2
21
|
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
22
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
23
|
return new (P || (P = Promise))(function (resolve, reject) {
|
|
@@ -19,7 +38,7 @@ const VolumeMapper_1 = __importDefault(require("vtk.js/Sources/Rendering/Core/Vo
|
|
|
19
38
|
const lodash_clonedeep_1 = __importDefault(require("lodash.clonedeep"));
|
|
20
39
|
const Camera_1 = __importDefault(require("vtk.js/Sources/Rendering/Core/Camera"));
|
|
21
40
|
const gl_matrix_1 = require("gl-matrix");
|
|
22
|
-
const
|
|
41
|
+
const metaData = __importStar(require("../metaData"));
|
|
23
42
|
const Viewport_1 = __importDefault(require("./Viewport"));
|
|
24
43
|
const eventTarget_1 = __importDefault(require("../eventTarget"));
|
|
25
44
|
const Events_1 = __importDefault(require("../enums/Events"));
|
|
@@ -64,7 +83,7 @@ class StackViewport extends Viewport_1.default {
|
|
|
64
83
|
if (!imageId) {
|
|
65
84
|
return;
|
|
66
85
|
}
|
|
67
|
-
const imagePlaneModule =
|
|
86
|
+
const imagePlaneModule = metaData.get('imagePlaneModule', imageId);
|
|
68
87
|
if (!imagePlaneModule) {
|
|
69
88
|
return;
|
|
70
89
|
}
|
|
@@ -182,8 +201,8 @@ class StackViewport extends Viewport_1.default {
|
|
|
182
201
|
return {
|
|
183
202
|
canvas: this.canvas,
|
|
184
203
|
element: this.element,
|
|
185
|
-
|
|
186
|
-
|
|
204
|
+
viewportId: this.id,
|
|
205
|
+
renderingEngineId: this.renderingEngineId,
|
|
187
206
|
};
|
|
188
207
|
};
|
|
189
208
|
this.scaling = {};
|
|
@@ -275,8 +294,8 @@ class StackViewport extends Viewport_1.default {
|
|
|
275
294
|
};
|
|
276
295
|
}
|
|
277
296
|
buildMetadata(imageId) {
|
|
278
|
-
const { pixelRepresentation, bitsAllocated, bitsStored, highBit, photometricInterpretation, samplesPerPixel, } =
|
|
279
|
-
const voiLutModule =
|
|
297
|
+
const { pixelRepresentation, bitsAllocated, bitsStored, highBit, photometricInterpretation, samplesPerPixel, } = metaData.get('imagePixelModule', imageId);
|
|
298
|
+
const voiLutModule = metaData.get('voiLutModule', imageId);
|
|
280
299
|
let windowWidth, windowCenter;
|
|
281
300
|
if (voiLutModule) {
|
|
282
301
|
;
|
|
@@ -288,13 +307,13 @@ class StackViewport extends Viewport_1.default {
|
|
|
288
307
|
windowCenter = windowCenter[0];
|
|
289
308
|
}
|
|
290
309
|
}
|
|
291
|
-
const { modality } =
|
|
292
|
-
const imageIdScalingFactor =
|
|
310
|
+
const { modality } = metaData.get('generalSeriesModule', imageId);
|
|
311
|
+
const imageIdScalingFactor = metaData.get('scalingModule', imageId);
|
|
293
312
|
if (modality === 'PT' && imageIdScalingFactor) {
|
|
294
313
|
this._addScalingToViewport(imageIdScalingFactor);
|
|
295
314
|
}
|
|
296
315
|
this.modality = modality;
|
|
297
|
-
let imagePlaneModule =
|
|
316
|
+
let imagePlaneModule = metaData.get('imagePlaneModule', imageId);
|
|
298
317
|
if (!this.useCPURendering) {
|
|
299
318
|
imagePlaneModule = this.calibrateIfNecessary(imageId, imagePlaneModule);
|
|
300
319
|
}
|
|
@@ -314,7 +333,7 @@ class StackViewport extends Viewport_1.default {
|
|
|
314
333
|
};
|
|
315
334
|
}
|
|
316
335
|
calibrateIfNecessary(imageId, imagePlaneModule) {
|
|
317
|
-
const calibratedPixelSpacing =
|
|
336
|
+
const calibratedPixelSpacing = metaData.get('calibratedPixelSpacing', imageId);
|
|
318
337
|
if (!calibratedPixelSpacing) {
|
|
319
338
|
return imagePlaneModule;
|
|
320
339
|
}
|
|
@@ -463,8 +482,8 @@ class StackViewport extends Viewport_1.default {
|
|
|
463
482
|
previousCamera,
|
|
464
483
|
camera: updatedCamera,
|
|
465
484
|
element: this.element,
|
|
466
|
-
|
|
467
|
-
|
|
485
|
+
viewportId: this.id,
|
|
486
|
+
renderingEngineId: this.renderingEngineId,
|
|
468
487
|
};
|
|
469
488
|
(0, utilities_1.triggerEvent)(this.element, Events_1.default.CAMERA_MODIFIED, eventDetail);
|
|
470
489
|
}
|
|
@@ -740,7 +759,7 @@ class StackViewport extends Viewport_1.default {
|
|
|
740
759
|
}
|
|
741
760
|
const [xSpacing, ySpacing, zSpacing] = imageData.getSpacing();
|
|
742
761
|
const [xVoxels, yVoxels, zVoxels] = imageData.getDimensions();
|
|
743
|
-
const imagePlaneModule =
|
|
762
|
+
const imagePlaneModule = metaData.get('imagePlaneModule', image.imageId);
|
|
744
763
|
const direction = imageData.getDirection();
|
|
745
764
|
const rowCosines = direction.slice(0, 3);
|
|
746
765
|
const columnCosines = direction.slice(3, 6);
|
|
@@ -755,7 +774,7 @@ class StackViewport extends Viewport_1.default {
|
|
|
755
774
|
return true;
|
|
756
775
|
}
|
|
757
776
|
_updateVTKImageDataFromCornerstoneImage(image) {
|
|
758
|
-
const imagePlaneModule =
|
|
777
|
+
const imagePlaneModule = metaData.get('imagePlaneModule', image.imageId);
|
|
759
778
|
let origin = imagePlaneModule.imagePositionPatient;
|
|
760
779
|
if (origin == null) {
|
|
761
780
|
origin = [0, 0, 0];
|
|
@@ -795,8 +814,8 @@ class StackViewport extends Viewport_1.default {
|
|
|
795
814
|
const eventDetail = {
|
|
796
815
|
image,
|
|
797
816
|
imageId,
|
|
798
|
-
|
|
799
|
-
|
|
817
|
+
viewportId: this.id,
|
|
818
|
+
renderingEngineId: this.renderingEngineId,
|
|
800
819
|
};
|
|
801
820
|
(0, utilities_1.triggerEvent)(this.element, Events_1.default.STACK_NEW_IMAGE, eventDetail);
|
|
802
821
|
const metadata = this._getImageDataMetadata(image);
|
|
@@ -836,9 +855,9 @@ class StackViewport extends Viewport_1.default {
|
|
|
836
855
|
errorCallback.call(this, error, imageIdIndex, imageId);
|
|
837
856
|
});
|
|
838
857
|
}
|
|
839
|
-
const modalityLutModule =
|
|
840
|
-
const suvFactor =
|
|
841
|
-
const generalSeriesModule =
|
|
858
|
+
const modalityLutModule = metaData.get('modalityLutModule', imageId) || {};
|
|
859
|
+
const suvFactor = metaData.get('scalingModule', imageId) || {};
|
|
860
|
+
const generalSeriesModule = metaData.get('generalSeriesModule', imageId) || {};
|
|
842
861
|
const scalingParameters = {
|
|
843
862
|
rescaleSlope: modalityLutModule.rescaleSlope,
|
|
844
863
|
rescaleIntercept: modalityLutModule.rescaleIntercept,
|
|
@@ -868,8 +887,8 @@ class StackViewport extends Viewport_1.default {
|
|
|
868
887
|
const eventDetail = {
|
|
869
888
|
image,
|
|
870
889
|
imageId,
|
|
871
|
-
|
|
872
|
-
|
|
890
|
+
viewportId: this.id,
|
|
891
|
+
renderingEngineId: this.renderingEngineId,
|
|
873
892
|
};
|
|
874
893
|
(0, utilities_1.triggerEvent)(this.element, Events_1.default.STACK_NEW_IMAGE, eventDetail);
|
|
875
894
|
this._updateActorToDisplayImageId(image);
|
|
@@ -896,9 +915,9 @@ class StackViewport extends Viewport_1.default {
|
|
|
896
915
|
errorCallback.call(this, error, imageIdIndex, imageId);
|
|
897
916
|
});
|
|
898
917
|
}
|
|
899
|
-
const modalityLutModule =
|
|
900
|
-
const suvFactor =
|
|
901
|
-
const generalSeriesModule =
|
|
918
|
+
const modalityLutModule = metaData.get('modalityLutModule', imageId) || {};
|
|
919
|
+
const suvFactor = metaData.get('scalingModule', imageId) || {};
|
|
920
|
+
const generalSeriesModule = metaData.get('generalSeriesModule', imageId) || {};
|
|
902
921
|
const scalingParameters = {
|
|
903
922
|
rescaleSlope: modalityLutModule.rescaleSlope,
|
|
904
923
|
rescaleIntercept: modalityLutModule.rescaleIntercept,
|
|
@@ -947,7 +966,7 @@ class StackViewport extends Viewport_1.default {
|
|
|
947
966
|
this._createVTKImageData(image);
|
|
948
967
|
this._updateVTKImageDataFromCornerstoneImage(image);
|
|
949
968
|
const stackActor = this.createActorMapper(this._imageData);
|
|
950
|
-
this.setActors([{ uid: this.
|
|
969
|
+
this.setActors([{ uid: this.id, volumeActor: stackActor }]);
|
|
951
970
|
const direction = this._imageData.getDirection();
|
|
952
971
|
const { viewPlaneNormal, viewUp } = this._getCameraOrientation(direction);
|
|
953
972
|
this.setCameraNoEvent({ viewUp, viewPlaneNormal });
|
|
@@ -1037,8 +1056,8 @@ class StackViewport extends Viewport_1.default {
|
|
|
1037
1056
|
previousCamera,
|
|
1038
1057
|
camera,
|
|
1039
1058
|
element: this.element,
|
|
1040
|
-
|
|
1041
|
-
|
|
1059
|
+
viewportId: this.id,
|
|
1060
|
+
renderingEngineId: this.renderingEngineId,
|
|
1042
1061
|
};
|
|
1043
1062
|
if (!this.suppressEvents) {
|
|
1044
1063
|
(0, utilities_1.triggerEvent)(this.element, Events_1.default.CAMERA_MODIFIED, eventDetail);
|
|
@@ -1046,7 +1065,7 @@ class StackViewport extends Viewport_1.default {
|
|
|
1046
1065
|
}
|
|
1047
1066
|
triggerCalibrationEvent() {
|
|
1048
1067
|
const { imageData } = this.getImageData();
|
|
1049
|
-
const eventDetail = Object.assign({ element: this.element,
|
|
1068
|
+
const eventDetail = Object.assign({ element: this.element, viewportId: this.id, renderingEngineId: this.renderingEngineId, imageId: this.getCurrentImageId(), imageData: imageData, worldToIndex: imageData.getWorldToIndex() }, this._calibrationEvent);
|
|
1050
1069
|
if (!this.suppressEvents) {
|
|
1051
1070
|
(0, utilities_1.triggerEvent)(this.element, Events_1.default.IMAGE_SPACING_CALIBRATED, eventDetail);
|
|
1052
1071
|
}
|