@cornerstonejs/core 0.35.2 → 0.36.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,14 +1,15 @@
1
- import Viewport from './Viewport';
2
- import type { Point2, Point3, IImageData, IVolumeInput, FlipDirection, VolumeViewportProperties } from '../types';
1
+ import { BlendModes, OrientationAxis } from '../enums';
2
+ import type { FlipDirection, IImageData, IVolumeInput, OrientationVectors, Point2, Point3, VolumeViewportProperties } from '../types';
3
3
  import type { ViewportInput } from '../types/IViewport';
4
4
  import type IVolumeViewport from '../types/IVolumeViewport';
5
- import { BlendModes, OrientationAxis } from '../enums';
5
+ import Viewport from './Viewport';
6
6
  declare abstract class BaseVolumeViewport extends Viewport implements IVolumeViewport {
7
7
  useCPURendering: boolean;
8
8
  private _FrameOfReferenceUID;
9
9
  private VOILUTFunction;
10
10
  constructor(props: ViewportInput);
11
11
  static get useCustomRenderingPipeline(): boolean;
12
+ protected applyViewOrientation(orientation: OrientationAxis | OrientationVectors): void;
12
13
  private initializeVolumeNewImageEventDispatcher;
13
14
  protected resetVolumeViewportClippingRange(): void;
14
15
  private setVOILUTFunction;
@@ -29,6 +30,7 @@ declare abstract class BaseVolumeViewport extends Viewport implements IVolumeVie
29
30
  canvasToWorld: (canvasPos: Point2) => Point3;
30
31
  worldToCanvas: (worldPos: Point3) => Point2;
31
32
  hasImageURI: (imageURI: string) => boolean;
33
+ protected _getOrientationVectors(orientation: OrientationAxis | OrientationVectors): OrientationVectors;
32
34
  resetCamera(resetPan?: boolean, resetZoom?: boolean, resetToCenter?: boolean): boolean;
33
35
  getCurrentImageIdIndex: () => number;
34
36
  getCurrentImageId: () => string;
@@ -36,17 +36,17 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
36
36
  };
37
37
  Object.defineProperty(exports, "__esModule", { value: true });
38
38
  const cache_1 = __importDefault(require("../cache"));
39
+ const constants_1 = require("../constants");
40
+ const enums_1 = require("../enums");
39
41
  const ViewportType_1 = __importDefault(require("../enums/ViewportType"));
40
- const Viewport_1 = __importDefault(require("./Viewport"));
42
+ const eventTarget_1 = __importDefault(require("../eventTarget"));
43
+ const init_1 = require("../init");
44
+ const volumeLoader_1 = require("../loaders/volumeLoader");
45
+ const utilities_1 = require("../utilities");
41
46
  const helpers_1 = require("./helpers");
42
47
  const volumeNewImageEventDispatcher_1 = __importStar(require("./helpers/volumeNewImageEventDispatcher"));
43
- const volumeLoader_1 = require("../loaders/volumeLoader");
48
+ const Viewport_1 = __importDefault(require("./Viewport"));
44
49
  const vtkSlabCamera_1 = __importDefault(require("./vtkClasses/vtkSlabCamera"));
45
- const init_1 = require("../init");
46
- const enums_1 = require("../enums");
47
- const eventTarget_1 = __importDefault(require("../eventTarget"));
48
- const utilities_1 = require("../utilities");
49
- const constants_1 = require("../constants");
50
50
  class BaseVolumeViewport extends Viewport_1.default {
51
51
  constructor(props) {
52
52
  super(props);
@@ -163,6 +163,13 @@ class BaseVolumeViewport extends Viewport_1.default {
163
163
  static get useCustomRenderingPipeline() {
164
164
  return false;
165
165
  }
166
+ applyViewOrientation(orientation) {
167
+ const { viewPlaneNormal, viewUp } = this._getOrientationVectors(orientation);
168
+ const camera = this.getVtkActiveCamera();
169
+ camera.setDirectionOfProjection(-viewPlaneNormal[0], -viewPlaneNormal[1], -viewPlaneNormal[2]);
170
+ camera.setViewUpFrom(viewUp);
171
+ this.resetCamera();
172
+ }
166
173
  initializeVolumeNewImageEventDispatcher() {
167
174
  const volumeNewImageHandlerBound = volumeNewImageHandler.bind(this);
168
175
  const volumeNewImageCleanUpBound = volumeNewImageCleanUp.bind(this);
@@ -390,6 +397,23 @@ class BaseVolumeViewport extends Viewport_1.default {
390
397
  _setVolumeActors(volumeActorEntries) {
391
398
  this.setActors(volumeActorEntries);
392
399
  }
400
+ _getOrientationVectors(orientation) {
401
+ if (typeof orientation === 'object') {
402
+ if (orientation.viewPlaneNormal && orientation.viewUp) {
403
+ return orientation;
404
+ }
405
+ else {
406
+ throw new Error('Invalid orientation object. It must contain viewPlaneNormal and viewUp');
407
+ }
408
+ }
409
+ else if (typeof orientation === 'string' &&
410
+ constants_1.MPR_CAMERA_VALUES[orientation]) {
411
+ return constants_1.MPR_CAMERA_VALUES[orientation];
412
+ }
413
+ else {
414
+ throw new Error(`Invalid orientation: ${orientation}. Valid orientations are: ${Object.keys(constants_1.MPR_CAMERA_VALUES).join(', ')}`);
415
+ }
416
+ }
393
417
  resetCamera(resetPan, resetZoom, resetToCenter) {
394
418
  return super.resetCamera(resetPan, resetZoom, resetToCenter);
395
419
  }
@@ -1 +1 @@
1
- {"version":3,"file":"BaseVolumeViewport.js","sourceRoot":"","sources":["../../../src/RenderingEngine/BaseVolumeViewport.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BaseVolumeViewport.js","sourceRoot":"","sources":["../../../src/RenderingEngine/BaseVolumeViewport.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
- import type { Point3, IVolumeInput } from '../types';
2
- import type { ViewportInput } from '../types/IViewport';
3
1
  import { BlendModes, OrientationAxis } from '../enums';
2
+ import type { IVolumeInput, Point3 } from '../types';
3
+ import type { ViewportInput } from '../types/IViewport';
4
4
  import BaseVolumeViewport from './BaseVolumeViewport';
5
5
  declare class VolumeViewport extends BaseVolumeViewport {
6
6
  private _useAcquisitionPlaneForViewPlane;
@@ -8,7 +8,6 @@ declare class VolumeViewport extends BaseVolumeViewport {
8
8
  setVolumes(volumeInputArray: Array<IVolumeInput>, immediate?: boolean, suppressEvents?: boolean): Promise<void>;
9
9
  addVolumes(volumeInputArray: Array<IVolumeInput>, immediate?: boolean, suppressEvents?: boolean): Promise<void>;
10
10
  setOrientation(orientation: OrientationAxis, immediate?: boolean): void;
11
- private _getOrientationVectors;
12
11
  private _getAcquisitionPlaneOrientation;
13
12
  private _setViewPlaneToAcquisitionPlane;
14
13
  getIntensityFromWorld(point: Point3): number;
@@ -12,14 +12,14 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
12
12
  return (mod && mod.__esModule) ? mod : { "default": mod };
13
13
  };
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
- const gl_matrix_1 = require("gl-matrix");
16
15
  const Plane_1 = __importDefault(require("@kitware/vtk.js/Common/DataModel/Plane"));
16
+ const gl_matrix_1 = require("gl-matrix");
17
17
  const cache_1 = __importDefault(require("../cache"));
18
- const transformWorldToIndex_1 = __importDefault(require("../utilities/transformWorldToIndex"));
19
18
  const constants_1 = require("../constants");
20
19
  const enums_1 = require("../enums");
21
- const BaseVolumeViewport_1 = __importDefault(require("./BaseVolumeViewport"));
22
20
  const utilities_1 = require("../utilities");
21
+ const transformWorldToIndex_1 = __importDefault(require("../utilities/transformWorldToIndex"));
22
+ const BaseVolumeViewport_1 = __importDefault(require("./BaseVolumeViewport"));
23
23
  class VolumeViewport extends BaseVolumeViewport_1.default {
24
24
  constructor(props) {
25
25
  super(props);
@@ -63,11 +63,7 @@ class VolumeViewport extends BaseVolumeViewport_1.default {
63
63
  this.getRotation = () => 0;
64
64
  const { orientation } = this.options;
65
65
  if (orientation && orientation !== enums_1.OrientationAxis.ACQUISITION) {
66
- const { viewPlaneNormal, viewUp } = this._getOrientationVectors(orientation);
67
- const camera = this.getVtkActiveCamera();
68
- camera.setDirectionOfProjection(-viewPlaneNormal[0], -viewPlaneNormal[1], -viewPlaneNormal[2]);
69
- camera.setViewUpFrom(viewUp);
70
- this.resetCamera();
66
+ this.applyViewOrientation(orientation);
71
67
  return;
72
68
  }
73
69
  this._useAcquisitionPlaneForViewPlane = true;
@@ -124,23 +120,6 @@ class VolumeViewport extends BaseVolumeViewport_1.default {
124
120
  this.render();
125
121
  }
126
122
  }
127
- _getOrientationVectors(orientation) {
128
- if (typeof orientation === 'object') {
129
- if (orientation.viewPlaneNormal && orientation.viewUp) {
130
- return orientation;
131
- }
132
- else {
133
- throw new Error('Invalid orientation object. It must contain viewPlaneNormal and viewUp');
134
- }
135
- }
136
- else if (typeof orientation === 'string' &&
137
- constants_1.MPR_CAMERA_VALUES[orientation]) {
138
- return constants_1.MPR_CAMERA_VALUES[orientation];
139
- }
140
- else {
141
- throw new Error(`Invalid orientation: ${orientation}. Valid orientations are: ${Object.keys(constants_1.MPR_CAMERA_VALUES).join(', ')}`);
142
- }
143
- }
144
123
  _getAcquisitionPlaneOrientation() {
145
124
  const actorEntry = this.getDefaultActor();
146
125
  if (!actorEntry) {
@@ -1 +1 @@
1
- {"version":3,"file":"VolumeViewport.js","sourceRoot":"","sources":["../../../src/RenderingEngine/VolumeViewport.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"VolumeViewport.js","sourceRoot":"","sources":["../../../src/RenderingEngine/VolumeViewport.ts"],"names":[],"mappings":"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"}
@@ -3,16 +3,20 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
+ const enums_1 = require("../enums");
6
7
  const BaseVolumeViewport_1 = __importDefault(require("./BaseVolumeViewport"));
7
8
  class VolumeViewport3D extends BaseVolumeViewport_1.default {
8
9
  constructor(props) {
9
10
  super(props);
10
11
  this.getRotation = () => 0;
11
- const { parallelProjection } = this.options;
12
+ const { parallelProjection, orientation } = this.options;
12
13
  const activeCamera = this.getVtkActiveCamera();
13
14
  if (parallelProjection != null) {
14
15
  activeCamera.setParallelProjection(parallelProjection);
15
16
  }
17
+ if (orientation && orientation !== enums_1.OrientationAxis.ACQUISITION) {
18
+ this.applyViewOrientation(orientation);
19
+ }
16
20
  }
17
21
  resetCamera(resetPan = true, resetZoom = true, resetToCenter = true) {
18
22
  super.resetCamera(resetPan, resetZoom, resetToCenter);
@@ -1 +1 @@
1
- {"version":3,"file":"VolumeViewport3D.js","sourceRoot":"","sources":["../../../src/RenderingEngine/VolumeViewport3D.ts"],"names":[],"mappings":";;;;;AACA,8EAAsD;AAUtD,MAAM,gBAAiB,SAAQ,4BAAkB;IAC/C,YAAY,KAAoB;QAC9B,KAAK,CAAC,KAAK,CAAC,CAAC;QAqBf,gBAAW,GAAG,GAAW,EAAE,CAAC,CAAC,CAAC;QAnB5B,MAAM,EAAE,kBAAkB,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC;QAE5C,MAAM,YAAY,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAE/C,IAAI,kBAAkB,IAAI,IAAI,EAAE;YAC9B,YAAY,CAAC,qBAAqB,CAAC,kBAAkB,CAAC,CAAC;SACxD;IACH,CAAC;IAEM,WAAW,CAChB,QAAQ,GAAG,IAAI,EACf,SAAS,GAAG,IAAI,EAChB,aAAa,GAAG,IAAI;QAEpB,KAAK,CAAC,WAAW,CAAC,QAAQ,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC;QACtD,IAAI,CAAC,gCAAgC,EAAE,CAAC;QACxC,OAAO;IACT,CAAC;CAGF;AAED,kBAAe,gBAAgB,CAAC"}
1
+ {"version":3,"file":"VolumeViewport3D.js","sourceRoot":"","sources":["../../../src/RenderingEngine/VolumeViewport3D.ts"],"names":[],"mappings":";;;;;AAAA,oCAA2C;AAE3C,8EAAsD;AAStD,MAAM,gBAAiB,SAAQ,4BAAkB;IAC/C,YAAY,KAAoB;QAC9B,KAAK,CAAC,KAAK,CAAC,CAAC;QAyBf,gBAAW,GAAG,GAAW,EAAE,CAAC,CAAC,CAAC;QAvB5B,MAAM,EAAE,kBAAkB,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC;QAEzD,MAAM,YAAY,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAE/C,IAAI,kBAAkB,IAAI,IAAI,EAAE;YAC9B,YAAY,CAAC,qBAAqB,CAAC,kBAAkB,CAAC,CAAC;SACxD;QAED,IAAI,WAAW,IAAI,WAAW,KAAK,uBAAe,CAAC,WAAW,EAAE;YAC9D,IAAI,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC;SACxC;IACH,CAAC;IAEM,WAAW,CAChB,QAAQ,GAAG,IAAI,EACf,SAAS,GAAG,IAAI,EAChB,aAAa,GAAG,IAAI;QAEpB,KAAK,CAAC,WAAW,CAAC,QAAQ,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC;QACtD,IAAI,CAAC,gCAAgC,EAAE,CAAC;QACxC,OAAO;IACT,CAAC;CAGF;AAED,kBAAe,gBAAgB,CAAC"}
@@ -1,14 +1,15 @@
1
- import Viewport from './Viewport';
2
- import type { Point2, Point3, IImageData, IVolumeInput, FlipDirection, VolumeViewportProperties } from '../types';
1
+ import { BlendModes, OrientationAxis } from '../enums';
2
+ import type { FlipDirection, IImageData, IVolumeInput, OrientationVectors, Point2, Point3, VolumeViewportProperties } from '../types';
3
3
  import type { ViewportInput } from '../types/IViewport';
4
4
  import type IVolumeViewport from '../types/IVolumeViewport';
5
- import { BlendModes, OrientationAxis } from '../enums';
5
+ import Viewport from './Viewport';
6
6
  declare abstract class BaseVolumeViewport extends Viewport implements IVolumeViewport {
7
7
  useCPURendering: boolean;
8
8
  private _FrameOfReferenceUID;
9
9
  private VOILUTFunction;
10
10
  constructor(props: ViewportInput);
11
11
  static get useCustomRenderingPipeline(): boolean;
12
+ protected applyViewOrientation(orientation: OrientationAxis | OrientationVectors): void;
12
13
  private initializeVolumeNewImageEventDispatcher;
13
14
  protected resetVolumeViewportClippingRange(): void;
14
15
  private setVOILUTFunction;
@@ -29,6 +30,7 @@ declare abstract class BaseVolumeViewport extends Viewport implements IVolumeVie
29
30
  canvasToWorld: (canvasPos: Point2) => Point3;
30
31
  worldToCanvas: (worldPos: Point3) => Point2;
31
32
  hasImageURI: (imageURI: string) => boolean;
33
+ protected _getOrientationVectors(orientation: OrientationAxis | OrientationVectors): OrientationVectors;
32
34
  resetCamera(resetPan?: boolean, resetZoom?: boolean, resetToCenter?: boolean): boolean;
33
35
  getCurrentImageIdIndex: () => number;
34
36
  getCurrentImageId: () => string;
@@ -1,15 +1,15 @@
1
1
  import cache from '../cache';
2
+ import { MPR_CAMERA_VALUES, RENDERING_DEFAULTS } from '../constants';
3
+ import { Events, VOILUTFunctionType, } from '../enums';
2
4
  import ViewportType from '../enums/ViewportType';
3
- import Viewport from './Viewport';
5
+ import eventTarget from '../eventTarget';
6
+ import { getShouldUseCPURendering } from '../init';
7
+ import { loadVolume } from '../loaders/volumeLoader';
8
+ import { actorIsA, createSigmoidRGBTransferFunction, getVoiFromSigmoidRGBTransferFunction, imageIdToURI, triggerEvent, } from '../utilities';
4
9
  import { createVolumeActor } from './helpers';
5
10
  import volumeNewImageEventDispatcher, { resetVolumeNewImageState, } from './helpers/volumeNewImageEventDispatcher';
6
- import { loadVolume } from '../loaders/volumeLoader';
11
+ import Viewport from './Viewport';
7
12
  import vtkSlabCamera from './vtkClasses/vtkSlabCamera';
8
- import { getShouldUseCPURendering } from '../init';
9
- import { Events, VOILUTFunctionType, } from '../enums';
10
- import eventTarget from '../eventTarget';
11
- import { actorIsA, imageIdToURI, triggerEvent, createSigmoidRGBTransferFunction, getVoiFromSigmoidRGBTransferFunction, } from '../utilities';
12
- import { RENDERING_DEFAULTS } from '../constants';
13
13
  class BaseVolumeViewport extends Viewport {
14
14
  constructor(props) {
15
15
  super(props);
@@ -124,6 +124,13 @@ class BaseVolumeViewport extends Viewport {
124
124
  static get useCustomRenderingPipeline() {
125
125
  return false;
126
126
  }
127
+ applyViewOrientation(orientation) {
128
+ const { viewPlaneNormal, viewUp } = this._getOrientationVectors(orientation);
129
+ const camera = this.getVtkActiveCamera();
130
+ camera.setDirectionOfProjection(-viewPlaneNormal[0], -viewPlaneNormal[1], -viewPlaneNormal[2]);
131
+ camera.setViewUpFrom(viewUp);
132
+ this.resetCamera();
133
+ }
127
134
  initializeVolumeNewImageEventDispatcher() {
128
135
  const volumeNewImageHandlerBound = volumeNewImageHandler.bind(this);
129
136
  const volumeNewImageCleanUpBound = volumeNewImageCleanUp.bind(this);
@@ -343,6 +350,23 @@ class BaseVolumeViewport extends Viewport {
343
350
  _setVolumeActors(volumeActorEntries) {
344
351
  this.setActors(volumeActorEntries);
345
352
  }
353
+ _getOrientationVectors(orientation) {
354
+ if (typeof orientation === 'object') {
355
+ if (orientation.viewPlaneNormal && orientation.viewUp) {
356
+ return orientation;
357
+ }
358
+ else {
359
+ throw new Error('Invalid orientation object. It must contain viewPlaneNormal and viewUp');
360
+ }
361
+ }
362
+ else if (typeof orientation === 'string' &&
363
+ MPR_CAMERA_VALUES[orientation]) {
364
+ return MPR_CAMERA_VALUES[orientation];
365
+ }
366
+ else {
367
+ throw new Error(`Invalid orientation: ${orientation}. Valid orientations are: ${Object.keys(MPR_CAMERA_VALUES).join(', ')}`);
368
+ }
369
+ }
346
370
  resetCamera(resetPan, resetZoom, resetToCenter) {
347
371
  return super.resetCamera(resetPan, resetZoom, resetToCenter);
348
372
  }
@@ -1 +1 @@
1
- {"version":3,"file":"BaseVolumeViewport.js","sourceRoot":"","sources":["../../../src/RenderingEngine/BaseVolumeViewport.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BaseVolumeViewport.js","sourceRoot":"","sources":["../../../src/RenderingEngine/BaseVolumeViewport.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
- import type { Point3, IVolumeInput } from '../types';
2
- import type { ViewportInput } from '../types/IViewport';
3
1
  import { BlendModes, OrientationAxis } from '../enums';
2
+ import type { IVolumeInput, Point3 } from '../types';
3
+ import type { ViewportInput } from '../types/IViewport';
4
4
  import BaseVolumeViewport from './BaseVolumeViewport';
5
5
  declare class VolumeViewport extends BaseVolumeViewport {
6
6
  private _useAcquisitionPlaneForViewPlane;
@@ -8,7 +8,6 @@ declare class VolumeViewport extends BaseVolumeViewport {
8
8
  setVolumes(volumeInputArray: Array<IVolumeInput>, immediate?: boolean, suppressEvents?: boolean): Promise<void>;
9
9
  addVolumes(volumeInputArray: Array<IVolumeInput>, immediate?: boolean, suppressEvents?: boolean): Promise<void>;
10
10
  setOrientation(orientation: OrientationAxis, immediate?: boolean): void;
11
- private _getOrientationVectors;
12
11
  private _getAcquisitionPlaneOrientation;
13
12
  private _setViewPlaneToAcquisitionPlane;
14
13
  getIntensityFromWorld(point: Point3): number;
@@ -1,11 +1,11 @@
1
- import { vec3 } from 'gl-matrix';
2
1
  import vtkPlane from '@kitware/vtk.js/Common/DataModel/Plane';
2
+ import { vec3 } from 'gl-matrix';
3
3
  import cache from '../cache';
4
- import transformWorldToIndex from '../utilities/transformWorldToIndex';
5
- import { RENDERING_DEFAULTS, MPR_CAMERA_VALUES, EPSILON } from '../constants';
4
+ import { EPSILON, MPR_CAMERA_VALUES, RENDERING_DEFAULTS } from '../constants';
6
5
  import { OrientationAxis } from '../enums';
7
- import BaseVolumeViewport from './BaseVolumeViewport';
8
6
  import { actorIsA } from '../utilities';
7
+ import transformWorldToIndex from '../utilities/transformWorldToIndex';
8
+ import BaseVolumeViewport from './BaseVolumeViewport';
9
9
  class VolumeViewport extends BaseVolumeViewport {
10
10
  constructor(props) {
11
11
  super(props);
@@ -49,11 +49,7 @@ class VolumeViewport extends BaseVolumeViewport {
49
49
  this.getRotation = () => 0;
50
50
  const { orientation } = this.options;
51
51
  if (orientation && orientation !== OrientationAxis.ACQUISITION) {
52
- const { viewPlaneNormal, viewUp } = this._getOrientationVectors(orientation);
53
- const camera = this.getVtkActiveCamera();
54
- camera.setDirectionOfProjection(-viewPlaneNormal[0], -viewPlaneNormal[1], -viewPlaneNormal[2]);
55
- camera.setViewUpFrom(viewUp);
56
- this.resetCamera();
52
+ this.applyViewOrientation(orientation);
57
53
  return;
58
54
  }
59
55
  this._useAcquisitionPlaneForViewPlane = true;
@@ -100,23 +96,6 @@ class VolumeViewport extends BaseVolumeViewport {
100
96
  this.render();
101
97
  }
102
98
  }
103
- _getOrientationVectors(orientation) {
104
- if (typeof orientation === 'object') {
105
- if (orientation.viewPlaneNormal && orientation.viewUp) {
106
- return orientation;
107
- }
108
- else {
109
- throw new Error('Invalid orientation object. It must contain viewPlaneNormal and viewUp');
110
- }
111
- }
112
- else if (typeof orientation === 'string' &&
113
- MPR_CAMERA_VALUES[orientation]) {
114
- return MPR_CAMERA_VALUES[orientation];
115
- }
116
- else {
117
- throw new Error(`Invalid orientation: ${orientation}. Valid orientations are: ${Object.keys(MPR_CAMERA_VALUES).join(', ')}`);
118
- }
119
- }
120
99
  _getAcquisitionPlaneOrientation() {
121
100
  const actorEntry = this.getDefaultActor();
122
101
  if (!actorEntry) {
@@ -1 +1 @@
1
- {"version":3,"file":"VolumeViewport.js","sourceRoot":"","sources":["../../../src/RenderingEngine/VolumeViewport.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"VolumeViewport.js","sourceRoot":"","sources":["../../../src/RenderingEngine/VolumeViewport.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,17 @@
1
+ import { OrientationAxis } from '../enums';
1
2
  import BaseVolumeViewport from './BaseVolumeViewport';
2
3
  class VolumeViewport3D extends BaseVolumeViewport {
3
4
  constructor(props) {
4
5
  super(props);
5
6
  this.getRotation = () => 0;
6
- const { parallelProjection } = this.options;
7
+ const { parallelProjection, orientation } = this.options;
7
8
  const activeCamera = this.getVtkActiveCamera();
8
9
  if (parallelProjection != null) {
9
10
  activeCamera.setParallelProjection(parallelProjection);
10
11
  }
12
+ if (orientation && orientation !== OrientationAxis.ACQUISITION) {
13
+ this.applyViewOrientation(orientation);
14
+ }
11
15
  }
12
16
  resetCamera(resetPan = true, resetZoom = true, resetToCenter = true) {
13
17
  super.resetCamera(resetPan, resetZoom, resetToCenter);
@@ -1 +1 @@
1
- {"version":3,"file":"VolumeViewport3D.js","sourceRoot":"","sources":["../../../src/RenderingEngine/VolumeViewport3D.ts"],"names":[],"mappings":"AACA,OAAO,kBAAkB,MAAM,sBAAsB,CAAC;AAUtD,MAAM,gBAAiB,SAAQ,kBAAkB;IAC/C,YAAY,KAAoB;QAC9B,KAAK,CAAC,KAAK,CAAC,CAAC;QAqBf,gBAAW,GAAG,GAAW,EAAE,CAAC,CAAC,CAAC;QAnB5B,MAAM,EAAE,kBAAkB,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC;QAE5C,MAAM,YAAY,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAE/C,IAAI,kBAAkB,IAAI,IAAI,EAAE;YAC9B,YAAY,CAAC,qBAAqB,CAAC,kBAAkB,CAAC,CAAC;SACxD;IACH,CAAC;IAEM,WAAW,CAChB,QAAQ,GAAG,IAAI,EACf,SAAS,GAAG,IAAI,EAChB,aAAa,GAAG,IAAI;QAEpB,KAAK,CAAC,WAAW,CAAC,QAAQ,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC;QACtD,IAAI,CAAC,gCAAgC,EAAE,CAAC;QACxC,OAAO;IACT,CAAC;CAGF;AAED,eAAe,gBAAgB,CAAC"}
1
+ {"version":3,"file":"VolumeViewport3D.js","sourceRoot":"","sources":["../../../src/RenderingEngine/VolumeViewport3D.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAE3C,OAAO,kBAAkB,MAAM,sBAAsB,CAAC;AAStD,MAAM,gBAAiB,SAAQ,kBAAkB;IAC/C,YAAY,KAAoB;QAC9B,KAAK,CAAC,KAAK,CAAC,CAAC;QAyBf,gBAAW,GAAG,GAAW,EAAE,CAAC,CAAC,CAAC;QAvB5B,MAAM,EAAE,kBAAkB,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC;QAEzD,MAAM,YAAY,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAE/C,IAAI,kBAAkB,IAAI,IAAI,EAAE;YAC9B,YAAY,CAAC,qBAAqB,CAAC,kBAAkB,CAAC,CAAC;SACxD;QAED,IAAI,WAAW,IAAI,WAAW,KAAK,eAAe,CAAC,WAAW,EAAE;YAC9D,IAAI,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC;SACxC;IACH,CAAC;IAEM,WAAW,CAChB,QAAQ,GAAG,IAAI,EACf,SAAS,GAAG,IAAI,EAChB,aAAa,GAAG,IAAI;QAEpB,KAAK,CAAC,WAAW,CAAC,QAAQ,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC;QACtD,IAAI,CAAC,gCAAgC,EAAE,CAAC;QACxC,OAAO;IACT,CAAC;CAGF;AAED,eAAe,gBAAgB,CAAC"}