All files / packages/core/src/RenderingEngine VolumeViewport3D.ts

68.42% Statements 13/19
77.77% Branches 7/9
37.5% Functions 3/8
66.66% Lines 12/18

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70                          1x   1x   1x   1x       1x 1x                 2x 2x 2x     6x   1x       1x                                                  
import { BlendModes, OrientationAxis } from '../enums';
import type { ViewportInput } from '../types/IViewport';
import BaseVolumeViewport from './BaseVolumeViewport';
 
/**
 * An object representing a 3-dimensional volume viewport. VolumeViewport3Ds are used to render
 * 3D volumes in their entirety, and not just load a single slice at a time.
 *
 * For setting volumes on viewports you need to use {@link addVolumesToViewports}
 * which will add volumes to the specified viewports.
 */
class VolumeViewport3D extends BaseVolumeViewport {
  constructor(props: ViewportInput) {
    super(props);
 
    const { parallelProjection, orientation } = this.options;
 
    const activeCamera = this.getVtkActiveCamera();
 
    Iif (parallelProjection != null) {
      activeCamera.setParallelProjection(parallelProjection);
    }
 
    Eif (orientation && orientation !== OrientationAxis.ACQUISITION) {
      this.applyViewOrientation(orientation);
    }
  }
 
  public resetCamera(
    resetPan = true,
    resetZoom = true,
    resetToCenter = true
  ): boolean {
    super.resetCamera(resetPan, resetZoom, resetToCenter);
    this.resetVolumeViewportClippingRange();
    return;
  }
 
  getRotation = (): number => 0;
 
  getCurrentImageIdIndex = (): number | undefined => {
    return undefined;
  };
 
  getCurrentImageId = (): string => {
    return null;
  };
 
  setSlabThickness(
    slabThickness: number,
    filterActorUIDs?: Array<string>
  ): void {
    return null;
  }
 
  setBlendMode(
    blendMode: BlendModes,
    filterActorUIDs?: string[],
    immediate?: boolean
  ): void {
    return null;
  }
 
  resetProperties(volumeId?: string): void {
    return null;
  }
}
 
export default VolumeViewport3D;