OverlayManager

class Overlay.OverlayManager()

The OverlayManager exposes functionality for creating overlays that are layered on top of the 3d scene. More information can be found [here](https://docs.techsoft3d.com/communicator/latest/prog_guide/viewing/scene_attributes/overlays.html). An overlay defines a viewport on the screen with an associated camera. These overlays are useful for creating axis triads, navigational cubes, or similar elements. The overlays are not designed to create multiple views of a model. Therefore, inserting large amounts of geometry into overlays isn’t recommended. Add directly additional views from the webviewer instead.


Methods

addNodes

OverlayManager.addNodes(index, nodes)
Arguments:
  • index (number()) – the overlay index to add nodes into.
  • nodes ([number]()) – the nodes to add into the overlay.

Adds nodes into the overlay at the given index. They will no longer be rendered in the main window or any other overlay. This method should not be called before the model structure ready callback has been triggered.

Return type:Promise <void>

destroy

OverlayManager.destroy(index)
Arguments:
  • index (number()) – the index of the overlay to destroy.

Removes an overlay from the system. All nodes that have been assigned to this overlay will be returned to the default view.

Return type:Promise <void>

getViewportAnchor

OverlayManager.getViewportAnchor(index)
Arguments:
  • index (number()) – The index of the overlay to get the anchor of.

Get the anchor point of the viewport with the supplied index, or null if none has been set.

Return type:null | OverlayAnchor

getViewportPixelOffsetInCanvas

OverlayManager.getViewportPixelOffsetInCanvas(index)
Arguments:
  • index (number()) – The index of the overlay to get the offset of

Gets the calculated position of the upper-left corner of the viewport with the supplied index, or null if none has been set.

Return type:null | Point2

getViewportPixelPosition

OverlayManager.getViewportPixelPosition(index)
Arguments:
  • index (number()) – The index of the overlay to get the position of.

Gets position in pixels of the viewport with the supplied index, or null if none has been set. Note: This does not take the anchor point into account

Return type:null | Point2

getViewportPixelSize

OverlayManager.getViewportPixelSize(index)
Arguments:
  • index (number()) – The index of the overlay to get the size of.

Gets size in pixels of the viewport with the supplied index, or null if none has been set.

Return type:null | Point2

maxIndex

OverlayManager.maxIndex()

Gets the maximum index value that can be used for indexing overlays.

Returns:the maximum index value.
Return type:number

setCamera

OverlayManager.setCamera(index, camera)
Arguments:
  • index (number()) – None
  • camera (Camera()) – None

Sets the camera for the given index.

Return type:Promise <void>

setViewport

OverlayManager.setViewport(index, anchor, x, xUnit, y, yUnit, width, widthUnit, height, heightUnit)
Arguments:
  • index (number()) – the index of the overlay. This value may be any number between 1 and maxIndex(). If No overlay exists for this index one will be created.
  • anchor (OverlayAnchor()) – the anchor point for the viewport.
  • x (number()) – the x value of the viewport location.
  • xUnit (OverlayUnit()) – the unit type of the x parameter.
  • y (number()) – the y value of the viewport location.
  • yUnit (OverlayUnit()) – the unit type of the y parameter.
  • width (number()) – the width of the viewport.
  • widthUnit (OverlayUnit()) – the unit type of the width parameter.
  • height (number()) – the height of the viewport.
  • heightUnit (OverlayUnit()) – the unit type of the height parameter.

Creates an overlay or updates an existing one.

Return type:Promise <void>

setVisibility

OverlayManager.setVisibility(index, visibility)
Arguments:
  • index (number()) – the overlay index.
  • visibility (boolean()) – boolean value indicating whether the overlay should be rendered.

Sets the visibility state for the given viewport.

Return type:Promise <void>