UNPKG

@arcgis/core

Version:

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

6 lines (5 loc) 1.8 kB
/* All material copyright ESRI, All Rights Reserved, unless otherwise specified. See https://js.arcgis.com/4.33/esri/copyright.txt for details. */ import{_ as e}from"../../../../../chunks/tslib.es6.js";import t from"../../../../../core/Accessor.js";import{watch as s,sync as a}from"../../../../../core/reactiveUtils.js";import{property as r}from"../../../../../core/accessorSupport/decorators/property.js";import"../../../../../core/has.js";import"../../../../../core/Logger.js";import"../../../../../core/RandomLCG.js";import{subclass as o}from"../../../../../core/accessorSupport/decorators/subclass.js";import{MeasurementDataManager as i}from"./MeasurementData.js";let n=class extends t{constructor(e){super(e)}initialize(){this._measurementDataManager=new i(this.view,this.geodesicAreaMeasurementUtils,this.geodesicLengthMeasurementUtils),this.addHandles([this.analysisViewData.path.on("change",(()=>this._update())),s((()=>this.analysisViewData.stagedPoint),(()=>this._update()),a),s((()=>this.analysisViewData.mode),(()=>this._update()),a)]),this._update()}_update(e=!1){const{analysisViewData:t,view:s}=this,a={maxRelativeErrorCoplanar:.005,maxRelativeErrorAlmostCoplanar:.01,verticalAngleThreshold:80};this._measurementDataManager.update(t.path,t.stagedPoint,s,a,t.mode,e)&&(t.measurementData=this._measurementDataManager.getData())}};e([r({constructOnly:!0})],n.prototype,"view",void 0),e([r({constructOnly:!0})],n.prototype,"analysis",void 0),e([r({constructOnly:!0})],n.prototype,"analysisViewData",void 0),e([r({constructOnly:!0})],n.prototype,"geodesicAreaMeasurementUtils",void 0),e([r({constructOnly:!0})],n.prototype,"geodesicLengthMeasurementUtils",void 0),n=e([o("esri.views.3d.analysis.AreaMeasurement.support.AreaMeasurementController")],n);export{n as AreaMeasurementController};