@arcgis/core
Version:
ArcGIS Maps SDK for JavaScript: A complete 2D and 3D mapping and data visualization API
6 lines (5 loc) • 1.48 kB
JavaScript
/*
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
See https://js.arcgis.com/4.32/esri/copyright.txt for details.
*/
import{_ as t}from"../../../../../chunks/tslib.es6.js";import{property as o}from"../../../../../core/accessorSupport/decorators/property.js";import"../../../../../core/has.js";import"../../../../../core/Logger.js";import"../../../../../core/RandomLCG.js";import{subclass as r}from"../../../../../core/accessorSupport/decorators/subclass.js";import{c as e,o as s}from"../../../../../chunks/vec32.js";import{clone as i,create as n}from"../../../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{InteractionType as m}from"../../../camera/constraintUtils/InteractionType.js";import{MomentumController as c}from"./MomentumController.js";import{applyZoomToPoint as a}from"../../utils/navigationUtils.js";let p=class extends c{set zoomCenter(t){this._set("zoomCenter",i(t))}constructor(t){super(t),this.interactionType=m.ZOOM,this.constraintOptions.interactionDirection=n()}momentumStep(t,o){const{interactionDirection:r}=this.constraintOptions;if(!r)return;e(r,o.eye);const i=this.momentum.valueDelta(0,t);a(o,this.zoomCenter,i,this.view.state.constraints.minimumPoiDistance),s(r,o.eye,r)}};t([o({constructOnly:!0})],p.prototype,"momentum",void 0),t([o({constructOnly:!0})],p.prototype,"zoomCenter",null),p=t([r("esri.views.3d.state.controllers.momentum.ZoomPlanarMomentumController")],p);export{p as ZoomPlanarMomentumController};