{"version":3,"sources":["webpack:///./node_modules/@arcgis/core/views/3d/layers/analysis/LineOfSight/LineOfSightAnalysis.js","webpack:///./node_modules/@arcgis/core/views/3d/layers/analysis/LineOfSight/LineOfSightRayIntersector.js","webpack:///./node_modules/@arcgis/core/views/3d/layers/analysis/LineOfSight/LineOfSightResult.js","webpack:///./node_modules/@arcgis/core/views/3d/layers/analysis/LineOfSight/LineOfSightController.js","webpack:///./node_modules/@arcgis/core/views/3d/layers/analysis/LineOfSight/LineOfSightConfiguration.js","webpack:///./node_modules/@arcgis/core/views/3d/layers/analysis/LineOfSight/LineOfSightLayerViewData.js","webpack:///./node_modules/@arcgis/core/views/3d/layers/analysis/LineOfSight/LineOfSightView.js","webpack:///./node_modules/@arcgis/core/views/3d/layers/LineOfSightLayerView3D.js"],"names":["t","super","this","elevationAlignedTargetLocation","inputPoints","isValid","observer","observerSurfaceNormal","target","targetSurfaceNormal","observerAdjusted","targetAdjusted","computationResult","start","end","intersection","isTargetVisible","result","notifyChange","prototype","b","e","intersector","view","state","viewingMode","options","hud","store","get","r","camera","C","_getRayIntersection","sceneIntersectionHelper","intersectToolIntersectorRay","results","min","o","R","getIntersectionPoint","i","renderCoordsHelper","fromRenderCoords","spatialReference","n","normal","m","direction","l","layer","s","sourceLayer","type","objectIdField","metadata","nodeIndex","componentIndex","uid","id","ray","point","tile","lij","slice","S","T","toRenderCoords","worldUpAtPosition","basemapTerrain","elevationBounds","getAltitude","a","Math","abs","max","c","_canUpdateFromIntersectionResult","intersectedGraphic","intersectedLocation","z","EventedMixin","_tasks","_handles","_analysisHandles","resourceController","scheduler","registerTask","LINE_OF_SIGHT_TOOL","add","_connectObserver","_connectAnalyses","_connectTargets","_intersector","destroy","_analyses","removeAll","updating","priority","layerViewData","analyses","observerEngineLocation","computeScreenPixelSizeAt","_observerEngineLocation","analysis","_canComputeAnalysis","_computeAnalysisIntersection","_interpolateAnalysisIntersection","updateComputationResults","emit","_screenPixelSize","h","p","U","g","u","interpolationInfo","d","B","y","_","f","originalIntersection","originalObserver","originalTarget","A","visible","elevationAlignedObserver","frustum","intersectsPoint","targets","_applyElevationAlignment","LINE_OF_SIGHT_TOOL_INTERACTIVE","hasZ","clone","elevationProvider","updateFromIntersectionResult","_adjustStartEndPositions","updateInputPoints","targetLocation","location","targetIntersection","_onTargetLocationChange","_onObserverChangeForAnalysis","observerIntersection","_onObserverEngineForAnalysis","isDirty","_isCameraDirty","on","G","extent","_onObserverChange","onElevationChange","getLineOfSightComputationDependencies","async","schedule","computeAnalysis","has","_connectAnalysisToTarget","_connectAnalysisToObserver","_connectAnalysisToObserverEngine","_connectAnalysisToCamera","_connectAnalysisToElevation","_connectAnalysisForCompute","remove","added","forEach","_connectAnalysis","removed","_disconnectAnalysis","items","length","_addTarget","_onTargetCollectionChange","_removeTarget","some","find","_onAnalysesCollectionChange","_onTargetsChange","cursorTarget","_onCursorTargetChange","M","Z","constructOnly","innerWidth","outerWidth","visibleInnerColor","visibleOuterColor","occludedInnerColor","occludedOuterColor","undefinedInnerColor","undefinedOuterColor","Number","arguments","configuration","_handle","layerView","suspended","fullOpacity","_configuration","_opacity","attached","width","toUnitRGBA","visibleLineVisualElement","color","innerColor","occludedLineVisualElement","undefinedLineVisualElement","v","V","L","O","E","geometry","transform","createLineOfSightVisualization","getLineOfSightVisualizationDependencies","updateLineOfSightVisualization","updateVisualizationOpacity","destroyLineOfSightVisualization","moved","readOnly","_analysisController","_analysisView","handles","map","controller","w"],"mappings":"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","file":"js/chunk-2d0d7e3a.4096033c.js","sourcesContent":["/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.21/esri/copyright.txt for details.\n*/\nimport{_ as t}from\"../../../../../chunks/tslib.es6.js\";import o from\"../../../../../core/Accessor.js\";import{property as e}from\"../../../../../core/accessorSupport/decorators/property.js\";import\"../../../../../core/has.js\";import\"../../../../../core/accessorSupport/ensureType.js\";import\"../../../../../core/Logger.js\";import{subclass as s}from\"../../../../../core/accessorSupport/decorators/subclass.js\";import{c as r}from\"../../../../../chunks/vec3f64.js\";let i=class extends o{constructor(t){super(t),this.elevationAlignedTargetLocation=null,this.inputPoints={isValid:!1,observer:r(),observerSurfaceNormal:null,target:r(),targetSurfaceNormal:null,observerAdjusted:r(),targetAdjusted:r()},this.computationResult={start:r(),end:r(),intersection:r(),isValid:!1,isTargetVisible:!1},this.result=null}updateComputationResults(){this.notifyChange(\"computationResult\")}updateInputPoints(){this.notifyChange(\"inputPoints\")}onElevationChange(){this.notifyChange(\"elevationAlignedTargetLocation\")}};t([e()],i.prototype,\"target\",void 0),t([e()],i.prototype,\"elevationAlignedTargetLocation\",void 0),t([e()],i.prototype,\"inputPoints\",void 0),t([e()],i.prototype,\"computationResult\",void 0),t([e()],i.prototype,\"result\",void 0),i=t([s(\"esri.views.3d.layers.analysis.LineOfSight.LineOfSightAnalysis\")],i);export{i as LineOfSightAnalysis};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.21/esri/copyright.txt for details.\n*/\nimport{_ as e}from\"../../../../../chunks/tslib.es6.js\";import t from\"../../../../../core/Accessor.js\";import{isNone as r,isSome as s}from\"../../../../../core/maybe.js\";import{screenPointObjectToArray as o}from\"../../../../../core/screenUtils.js\";import{property as i}from\"../../../../../core/accessorSupport/decorators/property.js\";import\"../../../../../core/has.js\";import\"../../../../../core/accessorSupport/ensureType.js\";import\"../../../../../core/Logger.js\";import{subclass as n}from\"../../../../../core/accessorSupport/decorators/subclass.js\";import{g as a,d as c,a as p,n as m,b as l}from\"../../../../../chunks/vec3.js\";import{c as d}from\"../../../../../chunks/vec3f64.js\";import{create as u,copy as h,fromPoints as y}from\"../../../../../geometry/support/ray.js\";import{sv2d as f}from\"../../../../../geometry/support/vectorStacks.js\";import{getObjectId as g}from\"../../../../../layers/graphics/dehydratedFeatures.js\";import{fromScreen as v}from\"../../../support/geometryUtils/ray.js\";import{tilesAreRelated as j}from\"../../../terrain/tileUtils.js\";import{Intersector as w}from\"../../../webgl-engine/lib/Intersector.js\";import{toGraphic as I}from\"../../../webgl-engine/lib/intersectorUtilsConversions.js\";let b=class extends t{constructor(e){super(e)}initialize(){this.intersector=new w(this.view.state.viewingMode),this.intersector.options.hud=!1,this.intersector.options.store=0}getScreenPointIntersection(e){const t=o(e,f.get()),r=v(this.view.state.camera,t,C);return this._getRayIntersection(r)}_getRayIntersection(e){if(r(e))return null;this.view.sceneIntersectionHelper.intersectToolIntersectorRay(e,this.intersector);const t=this.intersector.results.min,o=R;if(!t||!t.getIntersectionPoint(o))return null;const i=this.view.renderCoordsHelper.fromRenderCoords(o,this.view.spatialReference),n=d();a(n,t.normal);const m=c(n,e.direction)>0?-1:1;p(n,n,m);const l=I(t,this.view);if(s(l)){const r=l.layer,s=l.sourceLayer;let o;if(s)switch(s.type){case\"scene\":o=g(l,s.objectIdField);break;case\"integrated-mesh\":{const e=t.target;o=`${e.metadata.nodeIndex}/${e.metadata.componentIndex}`;break}default:o=l.uid}else o=l.uid;return{type:\"Graphic\",id:`${r.uid}/${o}`,ray:h(e),normal:n,point:i}}if(\"TerrainRenderer\"===t.intersector){return{type:\"Terrain\",id:t.target.metadata.tile.lij.slice(),ray:h(e),normal:n,point:i}}return null}_canUpdateFromIntersectionResult(e,t){if(r(e)||!t||e.type!==t.type)return!1;switch(e.type){case\"Terrain\":{const r=e.id,s=t.id;return r[0]===s[0]&&r[1]===s[1]&&r[2]===s[2]||j(r,s)}case\"Graphic\":case\"I3S\":return e.id===t.id}}updateFromIntersectionResult(e){let t;if(\"Terrain\"===e.type&&s(e.point)){const r=R,s=S,o=T;this.view.renderCoordsHelper.toRenderCoords(e.point,s),this.view.renderCoordsHelper.worldUpAtPosition(s,o);const i=this.view.basemapTerrain.elevationBounds,n=this.view.renderCoordsHelper.getAltitude(s),a=i?Math.abs(i.max-i.min)/Math.abs(n):100,c=n>0?1:-1;m(o,o),p(o,o,c*a),l(r,s,o),y(r,s,C),t=this._getRayIntersection(C)}else t=this._getRayIntersection(e.ray);return this._canUpdateFromIntersectionResult(t,e)?t.point:null}};e([i()],b.prototype,\"view\",void 0),e([i()],b.prototype,\"intersector\",void 0),b=e([n(\"esri.views.3d.interactive.analysisTools.lineOfSight.LineOfSightRayIntersector\")],b);const R=d(),S=d(),T=d(),C=u();export{b as LineOfSightRayIntersector};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.21/esri/copyright.txt for details.\n*/\nimport{_ as o}from\"../../../../../chunks/tslib.es6.js\";import e from\"../../../../../core/Accessor.js\";import{property as t}from\"../../../../../core/accessorSupport/decorators/property.js\";import\"../../../../../core/has.js\";import\"../../../../../core/accessorSupport/ensureType.js\";import\"../../../../../core/Logger.js\";import{subclass as r}from\"../../../../../core/accessorSupport/decorators/subclass.js\";let s=class extends e{constructor(o){super(o),this.target=null,this.intersectedGraphic=null,this.intersectedLocation=null,this.elevationAlignedTargetLocation=null}};o([t()],s.prototype,\"target\",void 0),o([t()],s.prototype,\"intersectedGraphic\",void 0),o([t()],s.prototype,\"intersectedLocation\",void 0),o([t()],s.prototype,\"elevationAlignedTargetLocation\",void 0),o([t()],s.prototype,\"visible\",void 0),s=o([r(\"esri.views.3d.layers.analysis.LineOfSight.LineOfSightResult\")],s);export{s as LineOfSightResult};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.21/esri/copyright.txt for details.\n*/\nimport{_ as e}from\"../../../../../chunks/tslib.es6.js\";import\"../../../../../geometry.js\";import t from\"../../../../../core/Accessor.js\";import s from\"../../../../../core/Evented.js\";import r from\"../../../../../core/Handles.js\";import{handlesGroup as n,makeHandle as i}from\"../../../../../core/handleUtils.js\";import{isSome as o,isNone as a,unwrapOr as l,abortMaybe as c,removeMaybe as h,none as p}from\"../../../../../core/maybe.js\";import{createTask as g,ignoreAbortErrors as u}from\"../../../../../core/promiseUtils.js\";import{property as d}from\"../../../../../core/accessorSupport/decorators/property.js\";import\"../../../../../core/has.js\";import\"../../../../../core/accessorSupport/ensureType.js\";import\"../../../../../core/Logger.js\";import{subclass as y}from\"../../../../../core/accessorSupport/decorators/subclass.js\";import{reactionInit as m,reaction as _}from\"../../../../../core/accessorSupport/trackingUtils.js\";import{g as v,f,n as A,a as b,b as T,j as C,w as O}from\"../../../../../chunks/vec3.js\";import{a as E,c as w}from\"../../../../../chunks/vec3f64.js\";import{projectBoundingRect as j}from\"../../../../../geometry/projection.js\";import{containsPointObject as I,empty as S}from\"../../../../../geometry/support/aaBoundingRect.js\";import{fromPoints as L,create as P}from\"../../../../../geometry/support/ray.js\";import{LineOfSightAnalysis as R}from\"./LineOfSightAnalysis.js\";import{LineOfSightRayIntersector as V}from\"./LineOfSightRayIntersector.js\";import{LineOfSightResult as D}from\"./LineOfSightResult.js\";import{getElevationAtPoint as H}from\"../../../support/ElevationProvider.js\";import{toGraphic as x}from\"../../../webgl-engine/lib/intersectorUtilsConversions.js\";import{ImmediateTask as N,TaskPriority as k}from\"../../../../support/Scheduler.js\";import F from\"../../../../../geometry/Point.js\";let z=class extends(s.EventedMixin(t)){constructor(e){super(e),this._tasks=N,this._handles=new r,this._analysisHandles=new r}initialize(){var e;const t=null==(e=this.view.resourceController)?void 0:e.scheduler;t&&(this._tasks=t.registerTask(k.LINE_OF_SIGHT_TOOL));this._handles.add([this._connectObserver(),this._connectAnalyses(),this._connectTargets()]),this._intersector=new V({view:this.view})}destroy(){this._handles.destroy(),this._analysisHandles.destroy(),this._analyses.removeAll()}get updating(){return this._tasks.updating}get priority(){return this._tasks.priority}set priority(e){this._tasks.priority=e}get _analyses(){return this.layerViewData.analyses}get _observerEngineLocation(){return this.layerViewData.observerEngineLocation}set _observerEngineLocation(e){this.layerViewData.observerEngineLocation=e}get _screenPixelSize(){return this.view.state.camera.computeScreenPixelSizeAt(this._observerEngineLocation)}getLineOfSightComputationDependencies(e){const{inputPoints:t}=e;return{inputPoints:t}}computeAnalysis(e){const{analysis:t}=e,{inputPoints:s,computationResult:r}=t,{observerAdjusted:n,targetAdjusted:i}=s,{start:o,end:a}=r;v(o,n),v(a,i);this._canComputeAnalysis(t)?this._computeAnalysisIntersection(e):this._interpolateAnalysisIntersection(e),t.updateComputationResults(),this.emit(\"result-changed\",{target:e.analysis.target,result:t.result})}_adjustStartEndPositions(e){const t=this._screenPixelSize,s=this.view,{inputPoints:r}=e,{observer:n,observerSurfaceNormal:i,target:a,targetSurfaceNormal:l,observerAdjusted:c,targetAdjusted:h}=r,p=U;o(i)?v(p,i):f(p,a,n);const g=t;A(p,p),b(p,p,Math.min(g,1)),T(c,n,p),o(l)?v(p,l):f(p,n,a);const u=s.state.camera.computeScreenPixelSizeAt(a);A(p,p),b(p,p,Math.min(u,1)),T(h,a,p)}_computeAnalysisIntersection({analysis:e,interpolationInfo:t}){const{view:s}=this,{sceneIntersectionHelper:r,renderCoordsHelper:n}=s;if(a(r))return;const i=this._intersector.intersector,{computationResult:l,inputPoints:c}=e,{observer:h,target:p}=c,{start:g,end:u}=l,d=L(g,u,B);r.intersectToolIntersectorRay(d,i);const y=l.intersection,m=U,_=!!i.results.min&&i.results.min.getIntersectionPoint(y);let f=!0;if(_){v(t.originalIntersection,y),v(t.originalObserver,g),v(t.originalTarget,u),n.fromRenderCoords(y,m,s.spatialReference);const e=1-C(u,p)/C(g,p);f=C(h,y)>=e*C(h,p)}const A=new F(m,s.spatialReference);{const{result:t,target:r}=e;o(t)?(t.target=r,t.intersectedGraphic=f?null:x(i.results.min,s),t.intersectedLocation=f?null:A,t.visible=!!_&&f):e.result=new D({target:r,elevationAlignedTargetLocation:e.elevationAlignedTargetLocation,intersectedGraphic:f?null:x(i.results.min,s),intersectedLocation:f?null:A,visible:!!_&&f})}l.isValid=c.isValid=!0,l.isTargetVisible=f}_interpolateAnalysisIntersection({analysis:e,interpolationInfo:t}){const{computationResult:s,inputPoints:r}=e,{start:n,end:i,intersection:o}=s,{originalIntersection:a,originalObserver:l,originalTarget:c}=t;if(v(o,a),r.isValid){const e=U,t=C(l,a)/C(l,c);O(e,n,l),b(e,e,1-t),T(o,o,e),O(e,i,c),b(e,e,t),T(o,o,e),s.isValid=!0}else e.result=new D,s.isValid=!1,s.isTargetVisible=!1}_canComputeAnalysis(e){const t=this.layerViewData.elevationAlignedObserver,s=this.view.frustum;if(a(t)||a(e.target)||a(s))return!1;const{observerAdjusted:r,targetAdjusted:n}=e.inputPoints,i=s.intersectsPoint(r),o=s.intersectsPoint(n);return i&&o}_onObserverChange(e){if(a(e))return this.layer.targets.removeAll(),void(this.layerViewData.elevationAlignedObserver=null);this.layerViewData.elevationAlignedObserver=this._applyElevationAlignment(e,this.layer.intersection);const t=w();this.view.renderCoordsHelper.toRenderCoords(this.layerViewData.elevationAlignedObserver,t),this._observerEngineLocation=t,this.priority=k.LINE_OF_SIGHT_TOOL_INTERACTIVE}_applyElevationAlignment(e,t){if(e.hasZ&&(a(t)||\"Graphic\"===t.type))return e;const s=e.clone();return s.z=l(H(this.view.elevationProvider,s),0),s}_onObserverChangeForAnalysis(e){e.inputPoints.isValid=!1}_onObserverEngineForAnalysis(e,t,s){const{inputPoints:r}=e;if(v(r.observer,t),o(s)){const e=this._intersector.updateFromIntersectionResult(s);o(e)&&this.view.renderCoordsHelper.toRenderCoords(e,r.observer),r.observerSurfaceNormal=E(s.normal)}else r.observerSurfaceNormal=null;this._adjustStartEndPositions(e),e.updateInputPoints(),this.priority=k.LINE_OF_SIGHT_TOOL_INTERACTIVE}_onTargetLocationChange(e,t,s){const{inputPoints:r}=e;if(r.isValid=!1,o(t)){if(e.elevationAlignedTargetLocation=this._applyElevationAlignment(t,s),this.view.renderCoordsHelper.toRenderCoords(e.elevationAlignedTargetLocation,r.target),o(s)){const e=this._intersector.updateFromIntersectionResult(s);o(e)&&this.view.renderCoordsHelper.toRenderCoords(e,r.target),r.targetSurfaceNormal=E(s.normal)}else r.targetSurfaceNormal=null;this._adjustStartEndPositions(e),e.updateInputPoints()}this.priority=k.LINE_OF_SIGHT_TOOL_INTERACTIVE}_connectAnalysisToTarget(e){return m((()=>({analysis:e,targetLocation:e.target.location,targetIntersection:e.target.intersection})),(({analysis:e,targetLocation:t,targetIntersection:s})=>{o(t)&&this._onTargetLocationChange(e,t,s)}))}_connectAnalysisToObserver(e){return m((()=>({analysis:e,observer:this.layerViewData.elevationAlignedObserver})),(({analysis:e})=>{this._onObserverChangeForAnalysis(e)}))}_connectAnalysisToObserverEngine(e){return m((()=>({analysis:e,observer:this._observerEngineLocation,observerIntersection:this.layer.intersection})),(({analysis:e,observer:t,observerIntersection:s})=>{this._onObserverEngineForAnalysis(e,t,s)}))}_connectAnalysisToCamera(e){return _((()=>({camera:this.view.state.camera,isDirty:this._isCameraDirty})),(({isDirty:t})=>{e.inputPoints.isValid&&!t||e.updateInputPoints()}))}_connectAnalysisToElevation(e){return this.view.elevationProvider.on(\"elevation-change\",(t=>{if(!this._canComputeAnalysis(e))return;const s=this.layer.observer;G(t.extent,t.spatialReference,s)&&this._onObserverChange(s);const r=e.target;o(r)&&G(t.extent,t.spatialReference,r.location)&&e.onElevationChange()}))}_connectAnalysisForCompute(e){let t=p;const s={analysis:e,interpolationInfo:{originalIntersection:w(),originalObserver:w(),originalTarget:w()}};return n([m((()=>this.getLineOfSightComputationDependencies(e)),(()=>{t=c(t),t=g((async e=>{await u(this._tasks.schedule((()=>this.computeAnalysis(s)),e))}))})),i((()=>t=c(t)))])}_connectAnalysis(e){const t=this._analysisHandles;t.has(e)||t.add([this._connectAnalysisToTarget(e),this._connectAnalysisToObserver(e),this._connectAnalysisToObserverEngine(e),this._connectAnalysisToCamera(e),this._connectAnalysisToElevation(e),this._connectAnalysisForCompute(e)])}_disconnectAnalysis(e){this._analysisHandles.remove(e)}_onAnalysesCollectionChange(e){e.added.forEach((e=>this._connectAnalysis(e))),e.removed.forEach((e=>this._disconnectAnalysis(e)))}_onTargetsChange(e){return this._analyses.removeAll(),e.items.length>0&&e.forEach((e=>this._addTarget(e))),e.on(\"change\",(e=>this._onTargetCollectionChange(e)))}_onTargetCollectionChange(e){e.added.forEach((e=>this._addTarget(e))),e.removed.forEach((e=>this._removeTarget(e)))}_onCursorTargetChange(e,t){o(t)&&this._removeTarget(t),o(e)&&this._addTarget(e)}_addTarget(e){const t=this._analyses;t.some((t=>t.target===e))||t.add(new R({target:e}))}_removeTarget(e){const t=this._analyses,s=t.find((t=>t.target===e));t.remove(s)}_connectObserver(){return n([m((()=>this.layer.observer),(e=>this._onObserverChange(e)))])}_connectAnalyses(){let e=null;return n([m((()=>this._analyses),(t=>{e=h(e),e=t.on(\"change\",(e=>this._onAnalysesCollectionChange(e))),t.forEach((e=>this._connectAnalysis(e)))})),i((()=>e=h(e)))])}_connectTargets(){let e=null;return n([m((()=>this.layer.targets),(t=>{e=h(e),e=this._onTargetsChange(t)})),m((()=>this.layerViewData.cursorTarget),((e,t)=>{this._onCursorTargetChange(e,t)})),i((()=>{e=h(e)}))])}get _isCameraDirty(){const e=this.layerViewData.elevationAlignedObserver,{view:t}=this,{renderCoordsHelper:s}=t;if(a(e)||a(s))return!1;const r=U;s.toRenderCoords(e,r);const n=t.state.camera.computeScreenPixelSizeAt(r);return Math.abs((n-this._screenPixelSize)/this._screenPixelSize)>M}};function G(e,t,s){return!a(s)&&(j(e,t,Z,s.spatialReference),I(Z,s))}e([d({constructOnly:!0})],z.prototype,\"layer\",void 0),e([d({constructOnly:!0})],z.prototype,\"layerViewData\",void 0),e([d({constructOnly:!0})],z.prototype,\"view\",void 0),e([d()],z.prototype,\"updating\",null),e([d()],z.prototype,\"priority\",null),e([d()],z.prototype,\"_analyses\",null),e([d()],z.prototype,\"_observerEngineLocation\",null),e([d()],z.prototype,\"_screenPixelSize\",null),e([d()],z.prototype,\"_tasks\",void 0),e([d()],z.prototype,\"_isCameraDirty\",null),z=e([y(\"esri.views.3d.layers.analysis.LineOfSight.LineOfSightController\")],z);const M=.1,U=w(),B=P(),Z=S();export{z as LineOfSightController};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.21/esri/copyright.txt for details.\n*/\nimport{_ as o}from\"../../../../../chunks/tslib.es6.js\";import e from\"../../../../../Color.js\";import r from\"../../../../../core/Accessor.js\";import{property as t}from\"../../../../../core/accessorSupport/decorators/property.js\";import\"../../../../../core/has.js\";import\"../../../../../core/accessorSupport/ensureType.js\";import\"../../../../../core/Logger.js\";import{subclass as i}from\"../../../../../core/accessorSupport/decorators/subclass.js\";let s=class extends r{constructor(o){super(o),this.innerWidth=2,this.outerWidth=8,this.visibleInnerColor=new e([3,252,111,1]),this.visibleOuterColor=new e([3,252,111,.15]),this.occludedInnerColor=new e([252,3,69,1]),this.occludedOuterColor=new e([252,3,69,.1]),this.undefinedInnerColor=new e([255,255,255,1]),this.undefinedOuterColor=new e([127,127,127,.2])}};o([t({type:Number})],s.prototype,\"innerWidth\",void 0),o([t({type:Number})],s.prototype,\"outerWidth\",void 0),o([t({type:e})],s.prototype,\"visibleInnerColor\",void 0),o([t({type:e})],s.prototype,\"visibleOuterColor\",void 0),o([t({type:e})],s.prototype,\"occludedInnerColor\",void 0),o([t({type:e})],s.prototype,\"occludedOuterColor\",void 0),o([t({type:e})],s.prototype,\"undefinedInnerColor\",void 0),o([t({type:e})],s.prototype,\"undefinedOuterColor\",void 0),s=o([i(\"esri.views.3d.layers.analysis.LineOfSight.LineOfSightConfiguration\")],s);export{s as LineOfSightConfiguration};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.21/esri/copyright.txt for details.\n*/\nimport{_ as o}from\"../../../../../chunks/tslib.es6.js\";import r from\"../../../../../core/Accessor.js\";import e from\"../../../../../core/Collection.js\";import{property as s}from\"../../../../../core/accessorSupport/decorators/property.js\";import\"../../../../../core/has.js\";import\"../../../../../core/accessorSupport/ensureType.js\";import\"../../../../../core/Logger.js\";import{subclass as t}from\"../../../../../core/accessorSupport/decorators/subclass.js\";import{c as i}from\"../../../../../chunks/vec3f64.js\";import{LineOfSightConfiguration as c}from\"./LineOfSightConfiguration.js\";let n=class extends r{constructor(){super(...arguments),this.analyses=new e,this.elevationAlignedObserver=null,this.configuration=new c,this.observerEngineLocation=i(),this.cursorTarget=null}};o([s()],n.prototype,\"analyses\",void 0),o([s()],n.prototype,\"elevationAlignedObserver\",void 0),o([s({type:c})],n.prototype,\"configuration\",void 0),o([s()],n.prototype,\"observerEngineLocation\",void 0),o([s()],n.prototype,\"cursorTarget\",void 0),n=o([t(\"esri.views.3d.layers.analysis.LineOfSight.LineOfSightLayerViewData\")],n);export{n as LineOfSightLayerViewData};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.21/esri/copyright.txt for details.\n*/\nimport{_ as e}from\"../../../../../chunks/tslib.es6.js\";import i from\"../../../../../Color.js\";import t from\"../../../../../core/Accessor.js\";import o from\"../../../../../core/Handles.js\";import{makeHandle as n,handlesGroup as s}from\"../../../../../core/handleUtils.js\";import{applyOpacity as l}from\"../../../../../core/mathUtils.js\";import{removeMaybe as r,destroyMaybe as a}from\"../../../../../core/maybe.js\";import{property as c}from\"../../../../../core/accessorSupport/decorators/property.js\";import\"../../../../../core/has.js\";import\"../../../../../core/accessorSupport/ensureType.js\";import\"../../../../../core/Logger.js\";import{subclass as u}from\"../../../../../core/accessorSupport/decorators/subclass.js\";import{reactionInit as d,reaction as m}from\"../../../../../core/accessorSupport/trackingUtils.js\";import{c as h}from\"../../../../../chunks/mat4f64.js\";import{f as p}from\"../../../../../chunks/vec3.js\";import{d as y,c as f}from\"../../../../../chunks/vec3f64.js\";import{LineVisualElement as v}from\"../../../interactive/visualElements/LineVisualElement.js\";let V=class extends t{constructor(e){super(e),this._handle=null,this._analysisHandles=new o}initialize(){this._handle=this._connectAnalyses()}destroy(){this._handle=r(this._handle),this._analysisHandles=a(this._analysisHandles)}get visible(){return this.layerView.visible&&!this.layerView.suspended}get _analyses(){return this.layerView.layerViewData.analyses}get _configuration(){return this.layerView.layerViewData.configuration}get _opacity(){return this.layerView.fullOpacity}createLineOfSightVisualization(){const e=this._configuration,t=this._opacity,o={view:this.view,attached:!0,width:e.outerWidth,innerWidth:e.innerWidth},n=i.toUnitRGBA(e.visibleOuterColor);l(n,n,t);const s=i.toUnitRGBA(e.visibleInnerColor);l(s,s,t);const r=i.toUnitRGBA(e.occludedOuterColor);l(r,r,t);const a=i.toUnitRGBA(e.occludedInnerColor);l(a,a,t);const c=i.toUnitRGBA(e.undefinedOuterColor);l(c,c,t);const u=i.toUnitRGBA(e.undefinedInnerColor);l(u,u,t);return{visibleLineVisualElement:new v({...o,color:n,innerColor:s}),occludedLineVisualElement:new v({...o,color:r,innerColor:a}),undefinedLineVisualElement:new v({...o,color:c,innerColor:u})}}destroyLineOfSightVisualization(e){e.visibleLineVisualElement=a(e.visibleLineVisualElement),e.occludedLineVisualElement=a(e.occludedLineVisualElement),e.undefinedLineVisualElement=a(e.undefinedLineVisualElement)}updateLineOfSightVisualization(e,t){const o=this.visible,n=this._configuration,{computationResult:s,inputPoints:r}=e,{start:a,end:c,intersection:u,isValid:d,isTargetVisible:m}=s,{observer:h}=r,f=C;f[12]=h[0],f[13]=h[1],f[14]=h[2];const v=p(g,a,h),V=p(_,c,h),L=p(b,u,h),{visibleLineVisualElement:O,occludedLineVisualElement:A,undefinedLineVisualElement:E}=t;if(!o)return O.visible=!1,A.visible=!1,void(E.visible=!1);if(O.visible=!0,A.visible=!0,E.visible=!0,O.geometry=null,A.geometry=null,E.geometry=null,d)if(m){O.geometry=[[y(v),y(V)]],O.transform=f;const e=i.toUnitRGBA(n.visibleOuterColor);O.color=l(e,e,this._opacity)}else{O.geometry=[[y(v),y(L)]],O.transform=f;const e=i.toUnitRGBA(n.occludedOuterColor);O.color=l(e,e,this._opacity),A.geometry=[[y(L),y(V)]],A.transform=f}else E.geometry=[[y(v),y(V)]],E.transform=f}updateVisualizationOpacity(e,t){const o=this._configuration,n=this._opacity,s=i.toUnitRGBA(o.visibleOuterColor);l(s,s,n);const r=i.toUnitRGBA(o.visibleInnerColor);l(r,r,n);const a=i.toUnitRGBA(o.occludedOuterColor);l(a,a,n);const c=i.toUnitRGBA(o.occludedInnerColor);l(c,c,n);const u=i.toUnitRGBA(o.undefinedOuterColor);l(u,u,n);const d=i.toUnitRGBA(o.undefinedInnerColor);l(d,d,n),t.visibleLineVisualElement.color=e.computationResult.isTargetVisible?s:a,t.visibleLineVisualElement.innerColor=r,t.occludedLineVisualElement.color=a,t.occludedLineVisualElement.innerColor=c,t.undefinedLineVisualElement.color=u,t.undefinedLineVisualElement.innerColor=d}getLineOfSightVisualizationDependencies(e){const{computationResult:i}=e,{occludedOuterColor:t,visibleOuterColor:o}=this._configuration;return{computationResult:i,occludedOuterColor:t,visibleOuterColor:o,visible:this.visible}}_connectAnalysis(e){const i=this._analysisHandles;if(i.has(e))return;const t=this.createLineOfSightVisualization();i.add([d((()=>this.getLineOfSightVisualizationDependencies(e)),(()=>this.updateLineOfSightVisualization(e,t))),m((()=>this._opacity),(()=>this.updateVisualizationOpacity(e,t))),n((()=>this.destroyLineOfSightVisualization(t)))],e)}_disconnectAnalysis(e){this._analysisHandles.remove(e)}_connectAnalyses(){let e=null;return s([d((()=>this._analyses),(i=>{e=r(e),e=i.on(\"change\",(e=>this._onAnalysesCollectionChange(e))),this._onAnalysesCollectionChange({target:i,added:i.items,removed:[],moved:[]})})),n((()=>e=r(e)))])}_onAnalysesCollectionChange(e){e.added.forEach((e=>this._connectAnalysis(e))),e.removed.forEach((e=>this._disconnectAnalysis(e)))}};e([c({constructOnly:!0})],V.prototype,\"layer\",void 0),e([c({constructOnly:!0})],V.prototype,\"layerView\",void 0),e([c({constructOnly:!0})],V.prototype,\"view\",void 0),e([c({readOnly:!0})],V.prototype,\"visible\",null),e([c()],V.prototype,\"_analyses\",null),e([c()],V.prototype,\"_configuration\",null),e([c()],V.prototype,\"_opacity\",null),V=e([u(\"esri.views.3d.layers.analysis.LineOfSight.LineOfSightView\")],V);const g=f(),_=f(),b=f(),C=h();export{V as LineOfSightView};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.21/esri/copyright.txt for details.\n*/\nimport{_ as r}from\"../../../chunks/tslib.es6.js\";import{destroyMaybe as e,applySome as t,unwrapOr as s,mapOr as i}from\"../../../core/maybe.js\";import{property as a}from\"../../../core/accessorSupport/decorators/property.js\";import\"../../../core/has.js\";import\"../../../core/accessorSupport/ensureType.js\";import\"../../../core/Logger.js\";import{subclass as o}from\"../../../core/accessorSupport/decorators/subclass.js\";import{LayerView3D as l}from\"./LayerView3D.js\";import{LineOfSightController as n}from\"./analysis/LineOfSight/LineOfSightController.js\";import{LineOfSightLayerViewData as y}from\"./analysis/LineOfSight/LineOfSightLayerViewData.js\";import{LineOfSightView as p}from\"./analysis/LineOfSight/LineOfSightView.js\";import h from\"../../layers/LayerView.js\";let u=class extends(l(h)){constructor(){super(...arguments),this.type=\"line-of-sight-3d\",this.layerViewData=new y}initialize(){const r=this.view,e=this.layer;this._analysisController=new n({layer:e,layerViewData:this.layerViewData,view:r}),this._analysisView=new p({layer:e,layerView:this,view:r}),this.handles.add([this._analysisController.on(\"result-changed\",(r=>{r.target!==this.layerViewData.cursorTarget&&this.emit(\"result-changed\",r)}))])}destroy(){this._analysisController=e(this._analysisController),this._analysisView=e(this._analysisView)}get results(){return this.layerViewData.analyses.map((r=>r.result))}get priority(){return this._analysisController.priority}set priority(r){this._analysisController.priority=r}getResultForTarget(r){const e=this.layerViewData.analyses.find((e=>e.target===r)),i=t(e,(r=>r.result));return s(i,null)}isUpdating(){return i(this._analysisController,!1,(r=>r.updating))}get testData(){return{view:this._analysisView,controller:this._analysisController}}};r([a({readOnly:!0})],u.prototype,\"type\",void 0),r([a()],u.prototype,\"layer\",void 0),r([a({readOnly:!0})],u.prototype,\"results\",null),r([a()],u.prototype,\"priority\",null),r([a()],u.prototype,\"layerViewData\",void 0),r([a()],u.prototype,\"_analysisController\",void 0),r([a()],u.prototype,\"_analysisView\",void 0),u=r([o(\"esri.views.3d.layers.LineOfSightLayerView3D\")],u);var w=u;export{u as LineOfSightLayerView3D,w as default};\n"],"sourceRoot":""}