Skip to main content

Class: Viewport

Extended by​

Constructors​

new Viewport()​

new Viewport(props): Viewport

Parameters​

• props: ViewportInput

Returns​

Viewport

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:170

Properties​

_actors​

_actors: Map<string, ActorEntry>

a Map containing the actor uid and actors

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:142


_displaySets​

protected _displaySets: object[] = []

Records the display sets currently mounted on the viewport. Populated by the type-specific setDisplaySets overrides (via mountDisplaySets) and cleared whenever raw data is set directly (e.g. setStack), so that getDisplaySets reflects only display-set-driven content.

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:149


_suppressCameraModifiedEvents​

_suppressCameraModifiedEvents: boolean = false

informs if a new actor was added before a resetCameraClippingRange phase

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:156


calibration​

protected calibration: IImageCalibration

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:160


canvas​

readonly canvas: HTMLCanvasElement

an internal canvas that is created on the provided HTML element

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:104


canvasToWorld()​

canvasToWorld: (canvasPos) => Point3

Parameters​

• canvasPos: Point2

Returns​

Point3

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:198


customRenderViewportToCanvas()​

customRenderViewportToCanvas: () => unknown

Returns​

unknown

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:200


defaultOptions​

readonly defaultOptions: ViewportInputOptions

Default options for the viewport which includes orientation, viewPlaneNormal and backgroundColor

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:152


element​

readonly element: HTMLDivElement

HTML element in DOM that is used for rendering the viewport

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:102


fitToCanvasCamera​

protected fitToCanvasCamera: ICamera<number>

The camera that is defined for resetting displayArea to ensure absolute displayArea settings

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:168


flipHorizontal​

protected flipHorizontal: boolean = false

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:125


flipVertical​

protected flipVertical: boolean = false

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:126


getFrameOfReferenceUID()​

getFrameOfReferenceUID: () => string

Returns​

string

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:197


getNumberOfSlices()​

getNumberOfSlices: () => number

Returns​

number

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:204


getProperties()​

getProperties: () => ViewportProperties

Returns​

ViewportProperties

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:202


getRotation()​

getRotation: () => number

Returns​

number

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:196


hasPixelSpacing​

protected hasPixelSpacing: boolean = true

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:159


id​

readonly id: string

unique identifier for the viewport

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:100


initialCamera​

protected initialCamera: ICamera<number>

The camera that is initially defined on the reset for the relative pan/zoom

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:164


insetImageMultiplier​

protected insetImageMultiplier: number

The amount by which the images are inset in a viewport by default.

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:120


isDisabled​

isDisabled: boolean

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:127


options​

options: ViewportInputOptions

options for the viewport which includes orientation axis, backgroundColor and displayArea

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:154


renderingEngineId​

readonly renderingEngineId: string

RenderingEngine id that the viewport belongs to

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:106


requestedType?​

optional requestedType: ViewportType

The viewport type originally requested by the caller, before any internal compatibility remap (e.g. STACK/ORTHOGRAPHIC requested as PLANAR_NEXT when rendering.useGenericViewport is enabled). Equals type when not remapped. Set by the rendering engine at creation. Use this when branching on the legacy viewport type so the branch is transparent across compat adapters.

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:116


resize()​

resize: () => void

Returns​

void

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:201


sHeight​

sHeight: number

sHeight of viewport on the offscreen canvas

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:140


suppressEvents​

readonly suppressEvents: boolean

A flag representing if viewport methods should fire events or not

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:158


sWidth​

sWidth: number

sWidth of viewport on the offscreen canvas

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:138


sx​

sx: number

sx of viewport on the offscreen canvas

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:134


sy​

sy: number

sy of viewport on the offscreen canvas

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:136


type​

readonly type: ViewportType

Type of viewport

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:108


updateRenderingPipeline()​

updateRenderingPipeline: () => void

Returns​

void

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:203


viewportStatus​

viewportStatus: ViewportStatus = ViewportStatus.NO_DATA

Record the rendering status, mostly for testing purposes, but can also be useful for knowing things like whether the viewport is initialized

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:131


worldToCanvas()​

worldToCanvas: (worldPos) => Point2

Parameters​

• worldPos: Point3

Returns​

Point2

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:199


CameraViewPresentation​

readonly static CameraViewPresentation: ViewPresentationSelector

CameraViewPresentation is a view presentation selector that has all the camera related presentation selections, and would typically be used for choosing presentation information between two viewports showing the same type of orientation of a view, such as the CT, PT and fusion views in the same orientation view.

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:80


TransferViewPresentation​

readonly static TransferViewPresentation: ViewPresentationSelector

TransferViewPresentation is a view presentation selector that selects all the transfer function related attributes. It would typically be used for synchronizing different orientations of the same series, or for synchronizing two views of the same type of series such as a CT.

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:94

Accessors​

useCustomRenderingPipeline​

get static useCustomRenderingPipeline(): boolean

Returns​

boolean

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:209

Methods​

_getCorners()​

_getCorners(bounds): number[][]

Parameters​

• bounds: number[]

Returns​

number[][]

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:2389


_getEdges()​

_getEdges(bounds): [number[], number[]][]

Returns a list of edges for the imageData bounds, which are the cube edges in the case of volumeViewport edges. p1: front, bottom, left p2: front, top, left p3: back, bottom, left p4: back, top, left p5: front, bottom, right p6: front, top, right p7: back, bottom, right p8: back, top, right

Parameters​

• bounds: number[]

Bounds of the renderer

Returns​

[number[], number[]][]

Edges of the containing bounds

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:2485


_getFocalPointForResetCamera()​

_getFocalPointForResetCamera(centeredFocalPoint, previousCamera, __namedParameters): Point3

Parameters​

• centeredFocalPoint: Point3

• previousCamera: ICamera<number>

• __namedParameters

• __namedParameters.resetPan: boolean = true

• __namedParameters.resetToCenter: boolean = true

Returns​

Point3

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:2402


_isInBounds()​

_isInBounds(point, bounds): boolean

Determines whether or not the 3D point position is inside the boundaries of the 3D imageData.

Parameters​

• point: Point3

3D coordinate

• bounds: number[]

Bounds of the image

Returns​

boolean

boolean

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:2462


_removeActor()​

_removeActor(actorUID): ActorEntry

Remove the actor from the viewport

Parameters​

• actorUID: string

The unique identifier for the actor.

Returns​

ActorEntry

The removed actor entry or undefined if it didn't exist

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:674


addActor()​

addActor(actorEntry): void

Add an actor to the viewport including its id, its actor and slabThickness if defined

Parameters​

• actorEntry: ActorEntry

ActorEntry

  • actorEntry.uid - The unique identifier for the actor.
  • actorEntry.actor - The volume actor.
  • actorEntry.slabThickness - The slab thickness.

Returns​

void

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:767


addActors()​

addActors(actors, options): void

Add a list of actors (actor entries) to the viewport

Parameters​

• actors: ActorEntry[]

An array of ActorEntry objects.

• options = {}

• options.resetCamera?: boolean

Returns​

void

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:718


addWidget()​

addWidget(widgetId, widget): void

Parameters​

• widgetId: any

• widget: any

Returns​

void

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:249


clearDisplaySets()​

protected clearDisplaySets(): void

Clears the recorded display sets. Native data setters call this so that setting raw data without setDisplaySets resets the stored list. mountDisplaySets relies on this ordering: it runs the native data setter first (which clears) and then records the mounted entries.

Returns​

void

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:2617


destroy()​

destroy(): void

Returns​

void

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:291


dispose()​

dispose(): void

Returns​

void

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:286


flip()​

protected flip(flipOptions): void

Flip the viewport on horizontal or vertical axis, this method works with vtk-js backed rendering pipeline.

Parameters​

• flipOptions: FlipDirection

Flip options specifying the axis of flip

  • flipOptions.flipHorizontal - Flip the viewport on horizontal axis
  • flipOptions.flipVertical - Flip the viewport on vertical axis

Returns​

void

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:443


getActor()​

getActor(actorUID): ActorEntry

Get an actor by its UID

Parameters​

• actorUID: string

The unique ID of the actor.

Returns​

ActorEntry

An ActorEntry object.

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:603


getActorByIndex()​

getActorByIndex(index): ActorEntry

Get an actor by its index

Parameters​

• index: number

array index.

Returns​

ActorEntry

actorUID

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:646


getActors()​

getActors(): ActorEntry[]

Get all the actors in the viewport

Returns​

ActorEntry[]

An array of ActorEntry objects.

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:586


getActorUIDByIndex()​

getActorUIDByIndex(index): string

Get an actor UID by its index

Parameters​

• index: number

array index.

Returns​

string

actorUID

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:634


getActorUIDs()​

getActorUIDs(): string[]

Returns an array of unique identifiers for all the actors in the viewport.

Returns​

string[]

An array of strings

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:594


getAspectRatio()​

getAspectRatio(): Point2

Returns the current aspect ratio of the viewport as a 2D point [widthRatio, heightRatio].

Returns​

Point2

The current aspect ratio [widthRatio, heightRatio] based on the active camera settings.

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:1597


getCamera()​

getCamera(): ICamera<number>

Get the camera's current state

Returns​

ICamera<number>

The camera object.

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:1760


getCameraNoRotation()​

protected getCameraNoRotation(): ICamera<number>

Returns​

ICamera<number>

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:1716


getCanvas()​

getCanvas(): HTMLCanvasElement

Gets the target output canvas for the Viewport.

Returns​

HTMLCanvasElement

an HTMLCanvasElement.

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:1697


getClippingPlanesForActor()​

getClippingPlanesForActor(actorEntry?): vtkPlane[]

Method to get the clipping planes of a given actor

Parameters​

• actorEntry?: ActorEntry

The actor entry (a specific type you'll define dependent on your code)

Returns​

vtkPlane[]

vtkPlanes - An array of vtkPlane objects associated with the given actor

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:2039


getComparableParallelScale()​

protected getComparableParallelScale(compareCamera): number

Gets the parallel scale of the given camera, expressed at the aspect ratio of the current camera.

Each aspect ratio has a different fit, so a zoom of 1 fits the image only when the zoom reads the baseline through the ratio between the two fits. The usual case is two equal aspect ratios, which needs no work.

Parameters​

• compareCamera: ICamera<number>

the initial camera, or the fit to canvas camera.

Returns​

number

the parallel scale of the baseline at the current aspect ratio.

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:1505


getCurrentImageIdIndex()​

getCurrentImageIdIndex(): number

Returns​

number

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:1439


getDefaultActor()​

getDefaultActor(): ActorEntry

Get the default actor

Returns​

ActorEntry

An actor entry.

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:578


getDisplayArea()​

getDisplayArea(): DisplayArea

Returns​

DisplayArea

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:1127


getDisplaySets()​

getDisplaySets(): object[]

Returns the display sets currently recorded as mounted on the viewport. Empty when the viewport was driven by a raw data setter instead of setDisplaySets.

Returns​

object[]

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:2607


getFitParallelScale()​

protected getFitParallelScale(worldSize, aspectRatio): number

Gets the parallel scale that makes the content fit the canvas at the given aspect ratio. Each aspect ratio has a different fit.

Parameters​

• worldSize

the size of the content in the world.

• worldSize.heightWorld: number

• worldSize.widthWorld: number

• aspectRatio: Point2

the aspect ratio to fit at, as [widthRatio, heightRatio].

Returns​

number

the parallel scale of the fit.

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:1176


getImageActor()​

getImageActor(volumeId?): vtkImageSlice

Retrieves an image actor from the viewport actors.

Parameters​

• volumeId?: string

Optional. The ID of the volume to find the corresponding image actor.

Returns​

vtkImageSlice

The image actor if found, otherwise null.

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:613


getImageData()​

getImageData(): any

Returns​

any

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:1448


getPan()​

getPan(initialCamera): Point2

Helper function to return the current canvas pan value.

Parameters​

• initialCamera: ICamera<number> = ...

Returns​

Point2

a Point2 containing the current pan values on the canvas, computed from the current camera, where the initial pan value is [0,0].

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:1416


getReferencePlaneThickness()​

protected getReferencePlaneThickness(): number

Get the geometric thickness in mm that an annotation applies to.

Two thicknesses exist, and they are not the same quantity. The slab thickness belongs to the viewport, and getSlabThickness returns it. The reference plane thickness belongs to the data, and this method returns it. Rule D adds the two.

See docs/docs/concepts/cornerstone-tools/annotation/voxel-statistics.md.

Returns​

number

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:2166


getRenderer()​

getRenderer(): vtkRenderer

Returns the vtkRenderer responsible for rendering the Viewport.

Returns​

vtkRenderer

The vtkRenderer for the Viewport.

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:361


getRenderingEngine()​

getRenderingEngine(): RenderingEngine

Returns the rendering engine driving the Viewport.

Returns​

RenderingEngine

The RenderingEngine instance.

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:352


getRenderPasses()​

getRenderPasses(): any

Get render passes for this viewport. Viewports can override this to provide custom render passes (e.g., for sharpening).

Returns​

any

Array of VTK render passes or null if no custom passes are needed

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:266


getSliceIndex()​

getSliceIndex(): number

Returns​

number

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:1443


getSliceViewInfo()​

getSliceViewInfo(): object

Returns​

object

height​

height: number

indexToSliceMatrix​

indexToSliceMatrix: mat4

sliceIndex​

sliceIndex: number

slicePlane​

slicePlane: number

sliceToIndexMatrix​

sliceToIndexMatrix: mat4

width​

width: number

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:424


getUseCustomRenderingPipeline()​

getUseCustomRenderingPipeline(): boolean

Returns​

boolean

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:213


getViewPresentation()​

getViewPresentation(viewPresSel): ViewPresentation

Gets a view presentation information specifying HOW a viewport displays something, but not what is being displayed. See getViewReference to get information on WHAT is being displayed.

This is intended to have information on how an image is presented to the user, without specifying what image s displayed. All of this information is available externally, but this method combines the parts of this that are appropriate for remember or applying to other views, without necessarily needing to know what all the attributes are. That differs from methods like getCamera which fetch exact view details that are not likely to be identical between viewports as they change sizes or apply to different images.

Note that the results of this can be used on different viewports, for example, the pan values can be applied to a volume viewport showing a CT, and a stack viewport showing an ultrasound.

The selector allows choosing which view presentation attributes to return. Some default values are available from Viewport.CameraViewPresentation and Viewport.TransferViewPresentation

Parameters​

• viewPresSel: ViewPresentationSelector = ...

select which attributes to display.

Returns​

ViewPresentation

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:2281


getViewReference()​

getViewReference(viewRefSpecifier?): ViewReference

Gets a view target specifying WHAT a view is displaying, allowing for checking if a given image is displayed or could be displayed in a given viewport. See getViewPresentation for HOW a view is displayed.

Parameters​

• viewRefSpecifier?: ViewReferenceSpecifier

choose an alternate view to be specified, typically a different slice index in the same set of images.

Returns​

ViewReference

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:2122


getViewReferenceId()​

getViewReferenceId(_specifier?): string

Gets a referenced image url of some sort - could be a real image id, or could be a URL with parameters. Regardless it refers to the currently displaying image as a string value.

Parameters​

• _specifier?: ViewReferenceSpecifier

Returns​

string

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:1457


getVtkActiveCamera()​

protected getVtkActiveCamera(): vtkCamera | vtkSlabCamera

Gets the active vtkCamera for the viewport.

Returns​

vtkCamera | vtkSlabCamera

vtk driven camera

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:1705


getWidget()​

getWidget(id): any

Parameters​

• id: any

Returns​

any

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:253


getWidgets()​

getWidgets(): any[]

Returns​

any[]

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:257


getWorldSizeInView()​

protected getWorldSizeInView(bounds?): object

Gets the size of the visible content in the world, along the view right axis and along the view up axis.

Parameters​

• bounds?: number[]

the bounds to use when the viewport shows no image data. The method computes the bounds when the caller gives none.

Returns​

object

the width and the height of the content in the world.

heightWorld​

heightWorld: number

widthWorld​

widthWorld: number

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:1139


getZoom()​

getZoom(compareCamera): number

Returns a current zoom level relative to the initial parallel scale originally applied to the image. That is, on initial display, the zoom level is 1. Computed as a function of the camera.

The zoom is relative to the fit of the aspect ratio that the camera holds, so a zoom of 1 fits the image at every aspect ratio.

Parameters​

• compareCamera: ICamera<number> = ...

Returns​

number

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:1550


isOrientationChangeable()​

isOrientationChangeable(): boolean

Returns whether the viewport supports changing orientation (e.g. via setCamera with viewPlaneNormal/viewUp). Used by tools like OrientationControllerTool to decide where to show interactive orientation markers.

Returns​

boolean

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:242


isPlaneViewable()​

isPlaneViewable(planeRestriction, options?): boolean

Parameters​

• planeRestriction: PlaneRestriction

• options?: ReferenceCompatibleOptions

Returns​

boolean

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:2170


isReferenceViewable()​

isReferenceViewable(viewRef, options?): boolean

Find out if this viewport does or could show this view reference.

The plane restriction and the top level orientation are two separate limits, and the viewport applies both. A restriction that pins no orientation, which is what one point gives, therefore does not make every view compatible: the viewPlaneNormal of the reference still has to match the camera, unless the caller passes withOrientation.

Parameters​

• viewRef: ViewReference

• options?: ReferenceCompatibleOptions

allows specifying whether the view COULD display this with some modification - either navigation or displaying as volume.

Returns​

boolean

true if the viewport could show this view reference

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:2225


mountDisplaySets()​

protected mountDisplaySets<TEntry>(entries, load): Promise<void>

Shared template for the type-specific setDisplaySets overrides. It keeps the clear-then-record ordering invariant in exactly one place instead of being copy-pasted per viewport:

  1. Validate that a source display set (the first entry) was provided.
  2. Run load, which resolves the entry to renderable data and hands it to the viewport's native data setter (setStack / setVolumes / setVideo / setWSI / setEcg). That native setter calls clearDisplaySets, wiping any previously recorded entries.
  3. Record the mounted entries - only after load resolves - so getDisplaySets reflects exactly what was mounted.

Because recording always happens last, a new viewport cannot accidentally record before loading (which the native setter would then wipe) or forget to record at all; both failure modes the previous copy-pasted sequence was prone to are handled here once.

Overlays: the variadic signature already accepts overlay entries (index 1+), matching the generic viewport setDisplaySets. Legacy viewports do not yet render overlays, so only the source (first) entry is loaded and recorded - getDisplaySets stays honest about what is actually shown. Adding overlay support later is purely additive: load the extra entries here and record them, with no change to the public signature.

Type Parameters​

• TEntry extends object

Parameters​

• entries: TEntry[]

the display set entries passed to setDisplaySets; the first is the source and any subsequent entries are overlays.

• load

resolves the source entry to renderable data and loads it via the viewport's native data setter. Receives the validated source entry.

Returns​

Promise<void>

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:2581


removeActors()​

removeActors(actorUIDs): void

Remove the actors with the given UIDs from the viewport

Parameters​

• actorUIDs: string[]

An array of actor UIDs to remove.

Returns​

void

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:693


removeAllActors()​

removeAllActors(): void

Remove all actors from the renderer

Returns​

void

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:807


removeWidgets()​

removeWidgets(): void

Returns​

void

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:270


render()​

render(): void

Renders the Viewport using the RenderingEngine.

Returns​

void

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:374


reset()​

reset(immediate): void

Resets the options the Viewport's defaultOptions

Parameters​

• immediate: boolean = false

If true, renders the viewport after the options are reset.

Returns​

void

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:413


resetCamera()​

resetCamera(options?): boolean

Resets the camera based on the rendering volume(s) bounds. If resetPan and resetZoom are true it places the focal point at the center of the volume (or slice); otherwise, only the camera zoom and camera Pan or Zoom is reset for the current view.

Parameters​

• options?

The reset options

• options.resetAspectRatio?: boolean

If true, the aspect ratio of the viewport options is applied, otherwise the current aspect ratio of the camera is kept. The zoom calculation uses that aspect ratio, so resetZoom: true fits a stretched image into the viewport.

• options.resetPan?: boolean

If true, the camera focal point is reset to the center of the volume (slice)

• options.resetToCenter?: boolean

If true, the camera is reset to the center of the volume (slice)

• options.resetZoom?: boolean

If true, the camera zoom is reset to the default zoom

• options.storeAsInitialCamera?: boolean

If true, reset camera is stored as the initial camera (to allow differences to be detected for pan/zoom values)

Returns​

boolean

boolean

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:1221


resetCameraNoEvent()​

protected resetCameraNoEvent(options?): void

Reset the camera to the default viewport camera without firing events

Parameters​

• options?: ResetCameraOptions

the same options that resetCamera takes.

Returns​

void

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:828


resizeForRenderingEngine()​

resizeForRenderingEngine(__namedParameters): void

RenderingEngine-owned resize hook for custom-pipeline viewports. Legacy viewports keep the previous camera-preserving behavior by default.

Parameters​

• __namedParameters: RenderingEngineResizeOptions = {}

Returns​

void

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:221


setActors()​

setActors(actors): void

It removes all actors from the viewport and then adds the actors from the array.

Parameters​

• actors: ActorEntry[]

An array of ActorEntry objects.

Returns​

void

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:654


setAspectRatio()​

setAspectRatio(value, options): void

Sets the aspect ratio of the viewport (canvas) using the provided 2D point [widthRatio, heightRatio].

This updates the VTK camera's projection matrix to apply axis-based stretching during rendering.

As a result:

  • World-to-canvas mapping is updated via the camera projection.
  • Canvas-to-world mapping is also updated and remains consistent, as VTK utilizes the inverse of the same projection matrix for picking and coordinate transformations.

Note:

  • The camera pose and orientation (position, focal point, and viewPlaneNormal) remain unchanged.
  • Image data, spacing, and world coordinates are not modified.
  • The parallel scale remains unchanged, unless the caller gives the fit option. Each aspect ratio has a different fit, and getZoom reports the zoom against the fit of the aspect ratio that the camera holds.

Parameters​

• value: Point2

The aspect ratio to set as [widthRatio, heightRatio].

• options: SetAspectRatioOptions = {}

fit the stretched image, and keep the aspect ratio as the default. Both default to false.

Returns​

void

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:1627


setCamera()​

setCamera(cameraInterface, storeAsInitialCamera): void

Set the camera parameters

Parameters​

• cameraInterface: ICamera<number>

ICamera

• storeAsInitialCamera: boolean = false

to set the provided camera as the initial one, used to compute differences for things like pan and zoom.

Returns​

void

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:1775


setCameraNoEvent()​

protected setCameraNoEvent(camera): void

Sets the camera to the default viewport camera without firing events

Parameters​

• camera: ICamera<number>

The camera to use for the viewport.

Returns​

void

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:839


setColorTransform()​

protected setColorTransform(voiRange, averageWhite): any

This applies a color transform as an svg filter to the output image.

Parameters​

• voiRange: any

• averageWhite: any

Returns​

any

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:322


setDataList()​

setDataList(_entries): void

Sets one or more datasets on the viewport. Legacy viewports should override this to delegate to their specific data setter.

Parameters​

• _entries: object[]

Returns​

void

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:2523


setDisplayArea()​

setDisplayArea(displayArea, suppressEvents): void

Sets the camera to an initial bounds. If resetPan and resetZoom are true it places the focal point at the center of the volume (or slice); otherwise, only the camera zoom and camera Pan or Zoom is reset for the current view.

Parameters​

• displayArea: DisplayArea

The display area of interest.

• suppressEvents: boolean = false

If true, don't fire displayArea event.

Returns​

void

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:909


setDisplayAreaFit()​

protected setDisplayAreaFit(displayArea): void

This applies a display area with a fit of the provided area to the available area. The zoom level is controlled by the imageArea parameter, which is a pair of percentage width in the horizontal and vertical dimension is scaled to fit the displayable area. Both values are taken into account, and the scaling is set so that both fractions of the image area are visible.

The panning is controlled by the imageCanvasPoint, which has two values, teh imagePoint and the canvasPoint. They are fractional values of the image and canvas respectively, with the panning set to display the image pixel at the given fraction on top of the canvas at the given percentage. The default points are 0.5.

For example, if the zoom level is [2,1], then the image is displayed such that at least twice the width is visible, and the height is visible. That will result in the image width being black, divided up on the left and right according to the imageCanvasPoint

Then, if the imagePoint is [1,0] and the canvas point is [1,0], then the right most edge of the image, at the top of the image, will be displayed at the right most edge of the canvas, at the top.

Parameters​

• displayArea: DisplayArea

Returns​

void

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:1046


setDisplayAreaScale()​

protected setDisplayAreaScale(displayArea): void

Sets the viewport to pixel scaling mode. Pixel scaling displays 1 image pixel as 1 (or scale) physical screen pixels. That is, a 1024x512 image will be displayed with scale=2, as 2048x1024 physical image pixels.

Parameters​

• displayArea: DisplayArea

display area to set

  • displayArea.scale - the number of physical pixels to display each image pixel in. Values < 1 mean smaller than physical, while values > 1 mean more than one pixel. Default is 1 Suggest using whole numbers or integer fractions (eg 1/3)

Returns​

void

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:973


setDisplaySets()​

setDisplaySets(...entries): void | Promise<void>

Records the display sets currently shown on the viewport. The base implementation only stores the entries so that getDisplaySets can report them; type-specific viewports override this to actually load the data (via their native setter such as setStack/setVolumes/setVideo), delegating to mountDisplaySets so the clear-then-record ordering is applied consistently.

Because the native data setters clear the recorded list (see clearDisplaySets), driving a viewport with a raw data setter - without going through setDisplaySets - leaves getDisplaySets() empty, correctly reflecting that the viewport is not display-set driven.

Parameters​

• ...entries: object[]

the display set entries that were mounted; the first entry is the source and any subsequent entries are overlays.

Returns​

void | Promise<void>

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:2545


setFitToCanvasCamera()​

protected setFitToCanvasCamera(camera): void

Sets the provided camera as the displayArea camera. This allows computing differences applied later as compared to the initial position, for things like zoom and pan.

Parameters​

• camera: ICamera<number>

to store as the initial value.

Returns​

void

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:1404


setInitialCamera()​

protected setInitialCamera(camera): void

Sets the provided camera as the initial camera. This allows computing differences applied later as compared to the initial position, for things like zoom and pan.

Parameters​

• camera: ICamera<number>

to store as the initial value.

Returns​

void

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:1394


setInterpolationType()​

protected setInterpolationType(_interpolationType, _arg?): void

Sets the interpolation type. No-op in the base.

Parameters​

• _interpolationType: InterpolationType

• _arg?: any

Returns​

void

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:897


setNeedsRender()​

setNeedsRender(): void

Mark the viewport as needing a render pass (e.g. after external display-set / segmentation updates). Does not queue a render; the rendering engine’s normal RAF cycle will pick this up.

Returns​

void

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:315


setOptions()​

setOptions(options, immediate): void

Sets new options and (TODO) applies them.

Parameters​

• options: ViewportInputOptions

The viewport options to set.

• immediate: boolean = false

If true, renders the viewport after the options are set.

Returns​

void

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:386


setOrientationOfClippingPlanes()​

setOrientationOfClippingPlanes(vtkPlanes, slabThickness, viewPlaneNormal, focalPoint): void

Parameters​

• vtkPlanes: vtkPlane[]

• slabThickness: number

• viewPlaneNormal: Point3

• focalPoint: Point3

Returns​

void

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:2002


setPan()​

setPan(pan, storeAsInitialCamera): void

Sets the canvas pan value relative to the initial view position of 0,0 Modifies the camera to perform the pan.

Parameters​

• pan: Point2

• storeAsInitialCamera: boolean = false

Returns​

void

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:1465


setRendered()​

setRendered(): void

Indicate that the image has been rendered. This will set the viewportStatus to RENDERED if there is image data available to actually be rendered - otherwise, the rendering simply showed the background image.

Returns​

void

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:301


setRotation()​

protected setRotation(_rotation): void

Parameters​

• _rotation: number

Returns​

void

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:205


setViewPresentation()​

setViewPresentation(viewPres): void

Applies the display area, zoom, pan and rotation from the view presentation. No-op is viewPres isn't defined.

Parameters​

• viewPres: ViewPresentation

Returns​

void

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:2345


setViewReference()​

setViewReference(_viewRef): void

Navigates to the image specified by the viewRef.

Parameters​

• _viewRef: ViewReference

Returns​

void

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:2337


setZoom()​

setZoom(value, storeAsInitialCamera): void

Zooms the image using parallel scale by updating the camera value.

Parameters​

• value: number

The relative parallel scale to apply. It is relative to the initial offsets value, at the aspect ratio that the camera holds.

• storeAsInitialCamera: boolean = false

can be set to true to reset the camera after applying this zoom as the initial camera. A subsequent getZoom call will return "1", but the zoom will have been applied.

Returns​

void

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:1569


triggerCameraModifiedEventIfNecessary()​

triggerCameraModifiedEventIfNecessary(previousCamera, updatedCamera): void

Trigger camera modified event

Parameters​

• previousCamera: ICamera<number>

• updatedCamera: ICamera<number>

Returns​

void

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:1924


updateCameraClippingPlanesAndRange()​

updateCameraClippingPlanesAndRange(): void

Updates the camera's clipping planes and range.

Returns​

void

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:1944


updateClippingPlanesForActors()​

protected updateClippingPlanesForActors(updatedCamera): Promise<void>

Updates the actors clipping planes orientation from the camera properties

Parameters​

• updatedCamera: ICamera<number>

ICamera

Returns​

Promise<void>

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:1954


boundsRadius()​

static boundsRadius(bounds): number

Computes the bounds radius value

Parameters​

• bounds: number[]

Returns​

number

Defined in​

packages/core/src/RenderingEngine/Viewport.ts:2506