UNPKG

@arcgis/core

Version:

ArcGIS Maps SDK for JavaScript: A complete 2D and 3D mapping and data visualization API

6 lines (5 loc) 1 kB
/* All material copyright ESRI, All Rights Reserved, unless otherwise specified. See https://js.arcgis.com/4.33/esri/copyright.txt for details. */ import{Manipulator3D as t}from"../Manipulator3D.js";import{GrabbingState as i}from"./GrabbingState.js";import{ManipulatorType as e}from"./ManipulatorType.js";class a{constructor(){this.grabbingState=i.NONE,this.zManipulator=null,this.firstSelected=null,this.numSelected=0,this.firstGrabbedXY=null}update(a){this.grabbingState=i.NONE,this.zManipulator=null,this.numSelected=0,this.firstSelected=null,this.firstGrabbedXY=null,a.forEachManipulator(((a,s)=>{if(s===e.TRANSLATE_Z&&(this.zManipulator=a),a instanceof t&&(a.selected&&(0===this.numSelected&&(this.firstSelected=a),this.numSelected++),null==this.firstGrabbedXY&&a.grabbing&&s===e.TRANSLATE_XY&&(this.firstGrabbedXY=a)),a.grabbing)switch(this.grabbingState|=i.ANY,s){case e.TRANSLATE_Z:this.grabbingState|=i.Z;break;case e.TRANSLATE_XY:this.grabbingState|=i.XY}}))}}export{a as ManipulatorState};