@arcgis/core
Version:
ArcGIS Maps SDK for JavaScript: A complete 2D and 3D mapping and data visualization API
3 lines (2 loc) • 1.14 kB
JavaScript
/* COPYRIGHT Esri - https://js.arcgis.com/5.0.8/LICENSE.txt */
import"../../../../core/has.js";import{clamp as t,lerp as s}from"../../../../core/mathUtils.js";class a{constructor(){this._scale=0,this._angleFactor=0,this._minScale=0}update(t,s,a,i){a?(this._scale=Math.min(a.divisor/(s-a.offset),1),this._angleFactor=e(t),this._minScale=null!=i?Math.min(a.minPixelSize/i,1):0):(this._scale=1,this._minScale=1,this._angleFactor=1)}apply(a){const{_scale:i,_angleFactor:e,_minScale:n}=this;return a*t(s(i,1,e),n,1)}applyVec2(t,s){t[0]=this.apply(s[0]),t[1]=this.apply(s[1])}}class i{constructor(){this.evaluator=new a,this.alignmentEvaluator=new a}update(t,s,a,i,e,n){this.evaluator.update(t,s,a,i),this.alignmentEvaluator.update(t,s,e??a,(e?n:null)??i)}}function e(t){return Math.abs(t)**3}function n(t){return!!t&&!0}class l{constructor(){this.distance=0,this.fovY=0}}class c{constructor(){this.camera=new l,this.offset=0,this.divisor=0,this.minPixelSize=0}}export{l as CameraDefinition,a as ScreenSizePerspectiveEvaluator,c as ScreenSizePerspectiveParameters,i as SeparateScreenSizePerspectiveEvaluators,n as isScreenSizePerspectiveEnabled};