Skip to main content

Class: CameraViewPlugin

Plugins.CameraViewPlugin

Plugin to save, interact and animate between with multiple camera states/views.

Hierarchy​

  • AViewerPlugin<"viewChange" | "startViewChange" | "viewAdd" | "viewDelete">

    ↳ CameraViewPlugin

Properties​

PluginType​

▪ Static Readonly PluginType: "CameraViews"


enabled​

• enabled: boolean = true

Overrides​

AViewerPlugin.enabled


viewLooping​

• viewLooping: boolean = false


viewPauseTime​

• viewPauseTime: number = 200

Pauses time between view changes when animating all views or looping.


animEase​

• animEase: "linear" | "easeIn" | "easeOut" | "easeInOut" | "circIn" | "circOut" | "circInOut" | "backIn" | "backOut" | "backInOut" | "anticipate" | "bounceOut" | "bounceIn" | "bounceInOut" | "easeInOutSine" = 'easeInOutSine'

EasingFunctions


animDuration​

• animDuration: number = 1000


rotationOffset​

• rotationOffset: number = 0.25


interpolateMode​

• interpolateMode: "linear" | "spherical" | "spline" = 'spherical'


splineCurve​

• splineCurve: "centripetal" | "chordal" | "catmullrom" = 'chordal'


animateOnScroll​

• animateOnScroll: boolean = false


seekOnScroll​

• seekOnScroll: boolean = false


dependencies​

• dependencies: never[] = []


scrollAnimationDamping​

• scrollAnimationDamping: number = 0.1


uiConfig​

• uiConfig: UiObjectConfig<any, string>


_dirty​

• Protected _dirty: boolean = false

Inherited from​

AViewerPlugin._dirty


_viewer​

• Protected Optional _viewer: ViewerApp

Inherited from​

AViewerPlugin._viewer

Accessors​

dirty​

• get dirty(): boolean

Returns​

boolean

Inherited from​

AViewerPlugin.dirty

• set dirty(value): void

Parameters​

NameType
valueboolean

Returns​

void

Inherited from​

AViewerPlugin.dirty


viewer​

• get viewer(): undefined | ViewerApp

Returns​

undefined | ViewerApp

Inherited from​

AViewerPlugin.viewer


animationLooping​

• get animationLooping(): boolean

Returns​

boolean


animating​

• get animating(): boolean

Returns​

boolean


camViews​

• get camViews(): CameraView[]

Returns​

CameraView[]

Methods​

onDispose​

▸ onDispose(viewer): Promise<void>

Parameters​

NameType
viewerViewerApp

Returns​

Promise<void>

Inherited from​

AViewerPlugin.onDispose


toJSON​

▸ toJSON(meta?): any

Parameters​

NameType
meta?any

Returns​

any

Inherited from​

AViewerPlugin.toJSON


exportState​

▸ exportState(): any

Returns​

any

Inherited from​

AViewerPlugin.exportState


importState​

▸ importState(state): Promise<void>

Parameters​

NameType
stateany

Returns​

Promise<void>

Inherited from​

AViewerPlugin.importState


storeState​

▸ storeState(prefix?, storage?, data?): void

Parameters​

NameType
prefix?string
storage?Storage
data?any

Returns​

void

Inherited from​

AViewerPlugin.storeState


loadState​

▸ loadState(prefix?, storage?): Promise<void>

Parameters​

NameType
prefix?string
storage?Storage

Returns​

Promise<void>

Inherited from​

AViewerPlugin.loadState


onAdded​

▸ onAdded(viewer): Promise<void>

Parameters​

NameType
viewerViewerApp

Returns​

Promise<void>

Overrides​

AViewerPlugin.onAdded


onRemove​

▸ onRemove(viewer): Promise<void>

Parameters​

NameType
viewerViewerApp

Returns​

Promise<void>

Overrides​

AViewerPlugin.onRemove


animateAllViews​

▸ animateAllViews(): Promise<void>

Returns​

Promise<void>


resetToFirstView​

▸ resetToFirstView(duration?): Promise<void>

Parameters​

NameTypeDefault value
durationnumber100

Returns​

Promise<void>


recordAllViews​

▸ recordAllViews(onStart?, downloadOnEnd?): Promise<undefined | Blob>

Parameters​

NameTypeDefault value
onStart?() => voidundefined
downloadOnEndbooleantrue

Returns​

Promise<undefined | Blob>


addCurrentView​

▸ addCurrentView(): Promise<void>

Returns​

Promise<void>


addView​

▸ addView(view): void

Parameters​

NameType
viewCameraView

Returns​

void


getCurrentCameraView​

▸ getCurrentCameraView(camera?, worldSpace?, view?): CameraView

Parameters​

NameTypeDefault value
camera?CameraController<CameraControllerEventMap>undefined
worldSpacebooleantrue
view?CameraViewundefined

Returns​

CameraView


setCurrentCameraView​

▸ setCurrentCameraView(view): void

Parameters​

NameType
viewCameraView

Returns​

void


focusView​

▸ focusView(view): Promise<void>

Parameters​

NameType
viewCameraView

Returns​

Promise<void>


deleteView​

▸ deleteView(view): void

Parameters​

NameType
viewCameraView

Returns​

void


focusNext​

▸ focusNext(wrap?): void

Parameters​

NameTypeDefault value
wrapbooleantrue

Returns​

void


focusPrevious​

▸ focusPrevious(wrap?): void

Parameters​

NameTypeDefault value
wrapbooleantrue

Returns​

void


stopAllAnimations​

▸ stopAllAnimations(): Promise<void>

Returns​

Promise<void>


animateToView​

▸ animateToView(view, duration?, easing?, throwOnStop?): Promise<void>

Parameters​

NameTypeDefault value
viewCameraViewundefined
duration?numberundefined
easing?Easing | "linear" | "easeIn" | "easeOut" | "easeInOut" | "circIn" | "circOut" | "circInOut" | "backIn" | "backOut" | "backInOut" | "anticipate" | "bounceOut" | "bounceIn" | "bounceInOut" | "easeInOutSine"undefined
throwOnStopbooleanfalse

Returns​

Promise<void>


fromJSON​

▸ fromJSON(data, meta?): null | CameraViewPlugin

Parameters​

NameType
dataany
meta?any

Returns​

null | CameraViewPlugin

Overrides​

AViewerPlugin.fromJSON


animateToObject​

▸ animateToObject(selected?, distanceMultiplier?, duration?, ease?, distanceBounds?): Promise<void>

Parameters​

NameTypeDefault value
selected?Object3D<Object3DEventMap>undefined
distanceMultipliernumber4
duration?numberundefined
ease?Easing | "linear" | "easeIn" | "easeOut" | "easeInOut" | "circIn" | "circOut" | "circInOut" | "backIn" | "backOut" | "backInOut" | "anticipate" | "bounceOut" | "bounceIn" | "bounceInOut" | "easeInOutSine"undefined
distanceBoundsObjectundefined
distanceBounds.minnumber0.5
distanceBounds.maxnumber5.0

Returns​

Promise<void>


animateToFitObject​

▸ animateToFitObject(selected?, distanceMultiplier?, duration?, ease?, distanceBounds?): Promise<void>

Parameters​

NameTypeDefault value
selected?Object3D<Object3DEventMap>undefined
distanceMultipliernumber1.5
durationnumber1000
ease?Easing | "linear" | "easeIn" | "easeOut" | "easeInOut" | "circIn" | "circOut" | "circInOut" | "backIn" | "backOut" | "backInOut" | "anticipate" | "bounceOut" | "bounceIn" | "bounceInOut" | "easeInOutSine"undefined
distanceBoundsObjectundefined
distanceBounds.minnumber0.5
distanceBounds.maxnumber50.0

Returns​

Promise<void>


animateToTarget​

▸ animateToTarget(distanceFromTarget, center, duration?, ease?): Promise<void>

Parameters​

NameTypeDescription
distanceFromTargetnumberin world units
centerVector3target (center) of the view in world coordinates
duration?numberin milliseconds
ease?Easing | "linear" | "easeIn" | "easeOut" | "easeInOut" | "circIn" | "circOut" | "circInOut" | "backIn" | "backOut" | "backInOut" | "anticipate" | "bounceOut" | "bounceIn" | "bounceInOut" | "easeInOutSine"

Returns​

Promise<void>


_storeKey​

▸ Protected _storeKey(prefix?): string

Parameters​

NameType
prefix?string

Returns​

string

Inherited from​

AViewerPlugin._storeKey

Constructors​

constructor​

• new CameraViewPlugin()

Overrides​

AViewerPlugin.constructor