@doegis/core
Version:
DOE GIS API
3 lines (1 loc) • 1.67 kB
JavaScript
import{_ as t}from"../../../../../chunks/tslib.es6.js";import"../../../../../core/Logger.js";import"../../../../../core/accessorSupport/ensureType.js";import"../../../../../core/arrayUtils.js";import"../../../../../core/Error.js";import"../../../../../core/has.js";import{subclass as i}from"../../../../../core/accessorSupport/decorators/subclass.js";import e from"../../../../ViewAnimation.js";import{applyAll as r}from"../../../camera/constraintUtils.js";import{ConstraintTypes as o}from"../../../camera/constraintUtils/ConstraintTypes.js";import{InteractionType as s}from"../../../camera/constraintUtils/InteractionType.js";import{TiltMode as n}from"../../../camera/constraintUtils/TiltMode.js";import{AnimationController as a}from"../AnimationController.js";import{Camera as m}from"../../../webgl-engine/lib/Camera.js";let c=class extends a{constructor(){super(...arguments),this._beginCamera=new m,this._elapsedTimeSec=0,this.constraintOptions={selection:o.ALL,interactionType:s.PAN,interactionFactor:0,interactionStartCamera:new m,interactionDirection:null,tiltMode:n.TUMBLE}}initialize(){this.constraintOptions.interactionType=this.interactionType,this.viewAnimation=new e}get steppingFinished(){return this.momentum.isFinished(this._elapsedTimeSec)}onControllerStart(t){this._beginCamera.copyFrom(t),this.constraintOptions.interactionStartCamera=this._beginCamera,super.onControllerStart(t)}stepController(t,i){i.copyViewFrom(this._beginCamera),this._elapsedTimeSec+=t,this.momentumStep(this._elapsedTimeSec,i),r(this.view,i,this.constraintOptions)}};c=t([i("esri.views.3d.state.controllers.momentum.MomentumController")],c);export{c as MomentumController};