@arcgis/core 5.1.0-next.35 → 5.1.0-next.37
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/applications/Components/analysisUtils.js +1 -1
- package/assets/esri/core/workers/RemoteClient.js +1 -1
- package/assets/esri/core/workers/chunks/{e09722903e63f6cc2540.js → 03894992558d063d0d5e.js} +1 -1
- package/assets/esri/core/workers/chunks/13838b6c045425e73cf8.js +1 -0
- package/assets/esri/core/workers/chunks/1d54b71c43d9d6a5f713.js +1 -0
- package/assets/esri/core/workers/chunks/29ff5325e604dd0adc37.js +1 -0
- package/assets/esri/core/workers/chunks/34f79355145c8e4c59dd.js +1 -0
- package/assets/esri/core/workers/chunks/3be111488365768fd917.js +1 -0
- package/assets/esri/core/workers/chunks/448620052233e51b496c.js +1 -0
- package/assets/esri/core/workers/chunks/{973e3743cb7fdaa27f80.js → 4e07827ab870c65377d3.js} +1 -1
- package/assets/esri/core/workers/chunks/{2d49a611ad3441d7e759.js → 64450e280d602c5b0863.js} +5 -5
- package/assets/esri/core/workers/chunks/{eb811adbc5243d293ef5.js → 653d61aaaacb169b9418.js} +1 -1
- package/assets/esri/core/workers/chunks/{64e1273e4e79c73ed579.js → 8346c342b822487a5477.js} +1 -1
- package/assets/esri/core/workers/chunks/{a7a9716582b256d76e5b.js → 873c1b705ac3d4e6c384.js} +1 -1
- package/assets/esri/core/workers/chunks/{527547fa10d52cb3a7b1.js → 888f6387e795d45a7ad3.js} +2 -2
- package/assets/esri/core/workers/chunks/{7c16493ea34c49a6291e.js → 8ed7ff651241f8adc4bf.js} +1 -1
- package/assets/esri/core/workers/chunks/{bd902ae413887082b453.js → 9360a24ba765742f4e81.js} +1 -1
- package/assets/esri/core/workers/chunks/{2128a66f522d15493ce2.js → 98a84dc2988297bd6ab1.js} +1 -1
- package/assets/esri/core/workers/chunks/b396b5186d618fad1cee.js +1 -0
- package/assets/esri/core/workers/chunks/{a35d1be700ebd3109397.js → b5403c8b5099179dc16d.js} +2 -2
- package/assets/esri/core/workers/chunks/{f5144e570952ca62a1b0.js → b98c24229463029504e8.js} +1 -1
- package/assets/esri/core/workers/chunks/{19955d064c17ba2fd9ad.js → ba4e018492bd3327cd95.js} +1 -1
- package/assets/esri/core/workers/chunks/{0e78678281bcb888964d.js → c2e4cf3a277a6f40c7c2.js} +1 -1
- package/assets/esri/core/workers/chunks/d42d670edfae902c677b.js +2 -0
- package/assets/esri/core/workers/chunks/d6c2c9fedde498ad1a8c.js +2 -0
- package/assets/esri/core/workers/chunks/{e8ae71e482b8d5f54a72.js → dec51409372764e7093d.js} +1 -1
- package/assets/esri/core/workers/chunks/{6f1c590abd0e3adeb8fc.js → e011318fb8f8e59bc1f1.js} +1 -1
- package/assets/esri/core/workers/chunks/{b859d98fa1c39f8e4099.js → e0a63b5861e8c975097e.js} +1 -1
- package/assets/esri/core/workers/chunks/{04094d576bfa11d90f73.js → ebcfc20c1d92d90bf661.js} +1 -1
- package/assets/esri/core/workers/chunks/{2f20a21db44bd8448e9e.js → ecddd8c7593d3483ed09.js} +1 -1
- package/assets/esri/core/workers/chunks/{eaeb95be8d4032513247.js → fbada7f029b293d934ac.js} +2 -2
- package/assets/esri/core/workers/chunks/{67de5225b2c66c9c7bc9.js → ffc87a038712a4c9d2cb.js} +1 -1
- package/chunks/ChapmanAtmosphere.glsl.js +4 -4
- package/chunks/Clouds.glsl.js +14 -14
- package/chunks/ComponentShader.glsl.js +1 -1
- package/chunks/DefaultMaterial.glsl.js +1 -1
- package/chunks/GaussianSplat.glsl.js +2 -2
- package/chunks/GeodeticDistanceCalculator-Ce-woMPw.js +1 -1
- package/chunks/GeodeticUtils.js +1 -1
- package/chunks/Haze.glsl.js +4 -4
- package/chunks/MultiPathImpl.js +1 -1
- package/chunks/NoiseTextureAtlas.glsl.js +34 -34
- package/chunks/OperatorGeodesicBuffer.js +1 -1
- package/chunks/OperatorGeodeticArea.js +1 -1
- package/chunks/OperatorGeodeticDensifyByLength.js +1 -1
- package/chunks/OperatorGeodeticLength.js +1 -1
- package/chunks/OperatorProximityGeodesic.js +1 -1
- package/chunks/OperatorShapePreservingLength.js +1 -1
- package/chunks/OperatorShapePreservingProject.js +1 -1
- package/chunks/Path.glsl.js +2 -2
- package/chunks/Point2D.js +1 -1
- package/chunks/RealisticTree.glsl.js +1 -1
- package/chunks/SlicePlaneMaterial.glsl.js +6 -5
- package/chunks/SpatialReference.js +1 -1
- package/config.js +1 -1
- package/geometry/operators/gx/operatorAlphaShape.js +1 -1
- package/geometry/operators/gx/operatorPolygonSlicer.js +1 -1
- package/intl.js +1 -1
- package/kernel.js +1 -1
- package/layers/graphics/dehydratedPoint.js +1 -1
- package/layers/video/VideoController.js +1 -1
- package/package.json +4 -4
- package/support/revision.js +1 -1
- package/views/2d/layers/MediaLayerView2D.js +1 -1
- package/views/2d/layers/TileLayerView2D.js +1 -1
- package/views/3d/analysis/AreaMeasurement/support/AreaMeasurementVisualization.js +1 -1
- package/views/3d/analysis/Dimension/DimensionController.js +1 -1
- package/views/3d/analysis/Dimension/lengthDimensionUtils.js +1 -1
- package/views/3d/analysis/DirectLineMeasurement/DirectLineMeasurementController.js +1 -1
- package/views/3d/analysis/DirectLineMeasurement/DirectLineMeasurementVisualization.js +1 -1
- package/views/3d/analysis/DirectLineMeasurementAnalysisView3D.js +1 -1
- package/views/3d/analysis/VolumeMeasurement/VolumeMeasurementCutFillVisualization.js +1 -1
- package/views/3d/environment/EnvironmentRenderer.js +1 -1
- package/views/3d/interactive/SnappingVisualizer3D.js +1 -1
- package/views/3d/interactive/measurementTools/directLineMeasurement3D/DirectLineMeasurement3DView.js +1 -1
- package/views/3d/interactive/visualElements/LineVisualElement.js +1 -1
- package/views/3d/interactive/visualElements/MeasurementArrowVisualElement.js +1 -1
- package/views/3d/interactive/visualElements/RightAngleQuadVisualElement.js +1 -1
- package/views/3d/layers/GaussianSplatLayerView3D.js +1 -1
- package/views/3d/layers/i3s/I3SViewportQueries.js +1 -1
- package/views/3d/state/NearFarHeuristic.js +1 -1
- package/views/3d/support/gaussianSplatting/GaussianSplatDataStore.js +1 -1
- package/views/3d/support/gaussianSplatting/GaussianSplatIntersectionHandler.js +1 -1
- package/views/3d/support/gaussianSplatting/GaussianTile.js +1 -1
- package/views/3d/webgl-engine/collections/Component/Material/ComponentShader.glsl.js +1 -1
- package/views/3d/{environment → webgl-engine/effects/atmosphere}/ChapmanApproximation.glsl.js +3 -3
- package/views/3d/webgl-engine/effects/atmosphere/ChapmanAtmosphere.glsl.js +2 -0
- package/views/3d/webgl-engine/effects/atmosphere/ChapmanAtmosphere.js +2 -0
- package/views/3d/webgl-engine/effects/atmosphere/ChapmanAtmosphereTechnique.js +2 -0
- package/views/3d/webgl-engine/effects/atmosphere/ChapmanAtmosphereTechniqueConfiguration.js +2 -0
- package/views/3d/{environment → webgl-engine/effects/atmosphere}/ChapmanRaymarching.glsl.js +5 -5
- package/views/3d/webgl-engine/effects/atmosphere/LocalAtmosphere.js +2 -0
- package/views/3d/webgl-engine/effects/atmosphere/MarsAtmosphere.js +2 -0
- package/views/3d/webgl-engine/effects/atmosphere/SimpleAtmosphere.glsl.js +2 -0
- package/views/3d/webgl-engine/effects/atmosphere/SimpleAtmosphereTechnique.js +2 -0
- package/views/3d/webgl-engine/effects/atmosphere/SimpleAtmosphereTechniqueConfiguration.js +2 -0
- package/views/3d/webgl-engine/effects/atmosphere/atmosphereUtils.js +2 -0
- package/views/3d/webgl-engine/effects/clouds/Clouds.glsl.js +2 -0
- package/views/3d/webgl-engine/effects/clouds/CloudsComposition.glsl.js +2 -0
- package/views/3d/webgl-engine/effects/clouds/CloudsComposition.js +2 -0
- package/views/3d/webgl-engine/effects/clouds/CloudsCompositionTechnique.js +2 -0
- package/views/3d/webgl-engine/effects/clouds/CloudsParameters.js +2 -0
- package/views/3d/webgl-engine/effects/clouds/CloudsRenderer.js +2 -0
- package/views/3d/webgl-engine/effects/clouds/CloudsTechnique.js +2 -0
- package/views/3d/webgl-engine/effects/clouds/CloudsTechniqueConfiguration.js +2 -0
- package/views/3d/webgl-engine/effects/clouds/NoiseTextureAtlas.glsl.js +2 -0
- package/views/3d/webgl-engine/effects/clouds/NoiseTextureAtlas.js +2 -0
- package/views/3d/webgl-engine/effects/clouds/NoiseTextureAtlasConfiguration.js +2 -0
- package/views/3d/webgl-engine/effects/clouds/NoiseTextureAtlasDimensions.js +2 -0
- package/views/3d/webgl-engine/effects/clouds/NoiseTextureAtlasTechnique.js +2 -0
- package/views/3d/webgl-engine/effects/fog/Fog.glsl.js +2 -0
- package/views/3d/webgl-engine/effects/fog/Fog.js +2 -0
- package/views/3d/webgl-engine/effects/fog/FogTechnique.js +2 -0
- package/views/3d/webgl-engine/effects/fog/FogTechniqueConfiguration.js +2 -0
- package/views/3d/webgl-engine/effects/haze/Haze.glsl.js +1 -1
- package/views/3d/webgl-engine/effects/haze/HazeTechnique.js +1 -1
- package/views/3d/webgl-engine/effects/precipitation/Precipitation.glsl.js +2 -0
- package/views/3d/webgl-engine/effects/precipitation/Precipitation.js +2 -0
- package/views/3d/webgl-engine/effects/precipitation/PrecipitationTechnique.js +2 -0
- package/views/3d/webgl-engine/effects/precipitation/PrecipitationTechniqueConfiguration.js +2 -0
- package/views/3d/webgl-engine/lib/BindParameters.js +1 -1
- package/views/3d/webgl-engine/lib/GaussianSplatRenderNode.js +1 -1
- package/views/3d/webgl-engine/lib/Renderer.js +1 -1
- package/views/3d/webgl-engine/lib/RenderingContext.js +1 -1
- package/views/3d/webgl-engine/lib/lodRendering/LodRenderer.js +1 -1
- package/views/3d/webgl-engine/materials/Path.glsl.js +1 -1
- package/views/3d/webgl-engine/materials/SlicePlaneMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/renderers/VaoRenderer.js +1 -1
- package/views/3d/webgl-engine/parts/RenderView.js +1 -1
- package/views/3d/webgl-engine/shaders/DefaultMaterial.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/GaussianSplat.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/GaussianSplatTechniqueConfiguration.js +1 -1
- package/views/3d/webgl-engine/shaders/RealisticTree.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/SlicePlaneMaterial.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/SlicePlaneMaterialTechniqueConfiguration.js +2 -0
- package/views/VideoView.js +1 -1
- package/views/interactive/sketch/normalizedPoint.js +1 -1
- package/views/interactive/snapping/LineSnapper.js +1 -1
- package/views/interactive/snapping/ParallelLineSnapper.js +1 -1
- package/views/interactive/snapping/RightAngleSnapper.js +1 -1
- package/views/interactive/snapping/RightAngleTriangleSnapper.js +1 -1
- package/views/interactive/snapping/SelfSnappingEngine.js +1 -1
- package/views/interactive/snapping/SnappingAlgorithm.js +1 -1
- package/views/interactive/snapping/SnappingManager.js +1 -1
- package/views/interactive/snapping/candidates/dehydrated/DehydratedVertexSnappingCandidate.js +1 -1
- package/views/interactive/tooltip/infos/TooltipInfoWithCoordinates.js +1 -1
- package/views/support/MeasurementWorker.js +1 -1
- package/views/support/MeasurementWorkerHandle.js +1 -1
- package/views/support/measurementWorkerUtils.js +1 -1
- package/views/webgl/WebGLDriverTest.js +1 -1
- package/widgets/OrientedImageryViewer.js +1 -1
- package/assets/esri/core/workers/chunks/144acac9bb1aa78f1170.js +0 -1
- package/assets/esri/core/workers/chunks/4490f8eeeb2ee04daa9d.js +0 -2
- package/assets/esri/core/workers/chunks/63722607fbf8d411188d.js +0 -1
- package/assets/esri/core/workers/chunks/6ac84e6d33104e74398d.js +0 -1
- package/assets/esri/core/workers/chunks/a53979c45ee429e21b99.js +0 -2
- package/assets/esri/core/workers/chunks/b1ddc837a6805a09d0da.js +0 -1
- package/assets/esri/core/workers/chunks/ce3e192fbb53a9c6eb3b.js +0 -1
- package/assets/esri/core/workers/chunks/de5719ef663224860af5.js +0 -1
- package/assets/esri/core/workers/chunks/f7506c9d57b2ae0c5fd3.js +0 -1
- package/views/3d/environment/ChapmanAtmosphere.glsl.js +0 -2
- package/views/3d/environment/ChapmanAtmosphere.js +0 -2
- package/views/3d/environment/ChapmanAtmosphereTechnique.js +0 -2
- package/views/3d/environment/ChapmanAtmosphereTechniqueConfiguration.js +0 -2
- package/views/3d/environment/Clouds.glsl.js +0 -2
- package/views/3d/environment/CloudsComposition.glsl.js +0 -2
- package/views/3d/environment/CloudsComposition.js +0 -2
- package/views/3d/environment/CloudsCompositionTechnique.js +0 -2
- package/views/3d/environment/CloudsParameters.js +0 -2
- package/views/3d/environment/CloudsRenderer.js +0 -2
- package/views/3d/environment/CloudsTechnique.js +0 -2
- package/views/3d/environment/CloudsTechniqueConfiguration.js +0 -2
- package/views/3d/environment/Fog.glsl.js +0 -2
- package/views/3d/environment/Fog.js +0 -2
- package/views/3d/environment/FogTechnique.js +0 -2
- package/views/3d/environment/FogTechniqueConfiguration.js +0 -2
- package/views/3d/environment/LocalAtmosphere.js +0 -2
- package/views/3d/environment/MarsAtmosphere.js +0 -2
- package/views/3d/environment/NoiseTextureAtlas.glsl.js +0 -2
- package/views/3d/environment/NoiseTextureAtlas.js +0 -2
- package/views/3d/environment/NoiseTextureAtlasConfiguration.js +0 -2
- package/views/3d/environment/NoiseTextureAtlasDimensions.js +0 -2
- package/views/3d/environment/NoiseTextureAtlasTechnique.js +0 -2
- package/views/3d/environment/Precipitation.glsl.js +0 -2
- package/views/3d/environment/Precipitation.js +0 -2
- package/views/3d/environment/PrecipitationTechnique.js +0 -2
- package/views/3d/environment/PrecipitationTechniqueConfiguration.js +0 -2
- package/views/3d/environment/SimpleAtmosphere.glsl.js +0 -2
- package/views/3d/environment/SimpleAtmosphereTechnique.js +0 -2
- package/views/3d/environment/SimpleAtmosphereTechniqueConfiguration.js +0 -2
- package/views/3d/environment/atmosphereUtils.js +0 -2
- package/views/support/geodesicAreaMeasurementUtils.js +0 -2
- package/views/support/geodesicLengthMeasurementUtils.js +0 -2
- package/views/support/geodesicMeasurementUtils.js +0 -2
- package/views/webgl/AppleAmdDriverHelper.js +0 -2
- package/views/webgl/testAppleAmdDrawArrays.js +0 -2
- /package/assets/esri/core/workers/chunks/{4490f8eeeb2ee04daa9d.js.LICENSE.txt → 888f6387e795d45a7ad3.js.LICENSE.txt} +0 -0
- /package/assets/esri/core/workers/chunks/{a35d1be700ebd3109397.js.LICENSE.txt → b5403c8b5099179dc16d.js.LICENSE.txt} +0 -0
- /package/assets/esri/core/workers/chunks/{a53979c45ee429e21b99.js.LICENSE.txt → d42d670edfae902c677b.js.LICENSE.txt} +0 -0
- /package/assets/esri/core/workers/chunks/{527547fa10d52cb3a7b1.js.LICENSE.txt → d6c2c9fedde498ad1a8c.js.LICENSE.txt} +0 -0
- /package/assets/esri/core/workers/chunks/{eaeb95be8d4032513247.js.LICENSE.txt → fbada7f029b293d934ac.js.LICENSE.txt} +0 -0
- /package/views/3d/{environment/resources → webgl-engine/effects/atmosphere}/MarsAtmosphereTexture.js +0 -0
- /package/views/3d/{environment/resources → webgl-engine/effects/atmosphere}/SimpleAtmosphereTexture.js +0 -0
- /package/views/3d/{environment → webgl-engine/effects/clouds}/Clouds.js +0 -0
- /package/views/3d/{environment → webgl-engine/effects/clouds}/CloudsPresets.js +0 -0
- /package/views/3d/webgl-engine/effects/{weather → snowcover}/SnowCover.glsl.js +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[7444],{1364(e,t,s){s.d(t,{c:()=>i});var n=s(55537);function i(e,t){const s=e.getGeometryType();return s===n.G.enumPoint?e:(0,n.h)(s)?function(e){if(function(e){for(let t=0,s=e.getPathCount();t<s;t++){const s=e.getPathSize(t);if(0===s)return!1;if(1===s){if(0===e.getSegmentCountPath(t))return!1;if(e.getSegmentType(e.getPathStart(t))===n.G.enumLine)return!1;if(!e.isClosedPath(t))return!1}}return!0}(e))return e;const t=e.createInstance();for(let s=0,i=e.getPathCount();s<i;s++){const i=e.getPathSize(s);if(0!==i){if(1===i){if(0===e.getSegmentCountPath(s))continue;if(e.getSegmentType(e.getPathStart(s))===n.G.enumLine)continue;if(!e.isClosedPath(s))continue}t.addPath(e,s,!0)}}return t}(e):s===n.G.enumMultiPoint||s===n.G.enumEnvelope?e:s===n.G.enumMultipatch?((0,n.t)("not implemented for multipatch"),e):e}},37444(e,t,s){s.r(t),s.d(t,{OperatorGeodesicBuffer:()=>G});var n=s(61691),i=s(55537),r=s(79187),o=s(15756),m=s(5482),a=s(88885),h=s(95213),c=s(11878),u=s(83661),l=s(31139),_=s(1364),f=s(5247),d=s(76061);class g{constructor(e){this.m_sr=null,this.m_gcs=null,this.m_transform=null,this.m_a=0,this.m_eSquared=0,this.m_rpu=0,this.m_radTolerance=0,this.m_q90=0,this.m_gcs90=0,this.m_gcs180=0,this.m_gcs360=0,this.m_gcs60=0,this.m_ellipticToGeodesicMaxRatio=0,this.m_curveType=0,this.m_bShapePreserving=!1,this.m_distance=0,this.m_absDistance=0,this.m_convergenceOffset=0,this.m_cornerStep=0,this.m_segmentStep=0,this.m_progressTracker=e}bufferPolygon(e){const t=new a.P,s=new M(this,e,t);return this.processGnomonicBufferPiecesCursor(!0,s)}bufferPolyline(e){const t=new M(this,e,null);return this.processGnomonicBufferPiecesCursor(!0,t)}bufferMultiPoint(e){const t=new N(this,e);return this.processGnomonicBufferPiecesCursor(!1,t)}bufferPoint(e){const t=e.getXY();t.scale(this.m_rpu);let s=new a.P;if(this.bufferPoint2D(t,!1,s)){const e=(0,h.e)(null,s,!0);s=(0,o.y)(s,e,!0,!0,-1,this.m_progressTracker,0,!1)}return s=(new o.O).foldInto360RangeGeodetic(s,this.m_gcs,2),s}processGnomonicBufferPiecesCursor(e,t){const s=t;let n=s.getGnomonic();const i=(0,o.a5)((0,o.a6)());let m=new o.a7,a=(new o.p).executeMany(m,i,this.m_progressTracker,2);const l=(0,u.d)(6,!1),_=(0,u.m)(r.Envelope2D,6);this.initializeGrid(l,_);const f=[null,null,null,null,null,null],d=[null,null,null,null,null,null],g=[null,null,null,null,null,null];let p,P,x;for(;null!==(p=s.next());){if(P=s.getGnomonic(),P!==n){if(null!==n){let t=a.next();if(m=null,a=null,null!=t){const s=(0,h.e)(i,t,!0),r=(0,h.h)(s);t=n.unproject(t,r,this.m_progressTracker),this.putInGridCursors(e,t,i,!0,l,_,f,d,g)}}null!==P&&(m=new o.a7,a=(new o.p).executeMany(m,i,this.m_progressTracker,2)),n=P}if(s.isRunningInGnomonic()){if(P.project(p),s.needsSimplify()){const e=(0,h.e)(null,p,!0);p=(0,o.y)(p,e,!0,!0,-1,this.m_progressTracker,0,!1)}m.tick(D(p)),a.tock()}else this.putInGridCursors(e,p,i,!0,l,_,f,d,g)}let b=!1;for(let e=0;e<6;e++)if(null!=g[e]){b=!0;break}if(b){let t=!1;const r=[null,null,null,null,null,null];if(e){const n=s.m_densified;if(s.m_densified=null,null!==n){const s=new c.T;s.scale(1/this.m_rpu,1/this.m_rpu),n.applyTransformation(s),this.m_distance>0?this.putInGridCursors(e,n,i,!1,l,_,f,d,g):(this.processInGrid(e,n,!1,l,_,f,r),t=!0)}}const u=new o.a7,p=(new o.p).executeMany(u,this.m_gcs,this.m_progressTracker,2);if(null!==a){let t=a.next();m=null,a=null;const s=(0,h.e)(i,t,!0),r=(0,h.h)(s);t=n.unproject(t,r,this.m_progressTracker),this.putInGridCursors(e,t,i,!0,l,_,f,d,g)}for(let e=0;e<6;e++)if(null!=g[e]){let s=g[e].next();g[e]=null,d[e]=null,t&&null!==r[e]&&(s=(new o.o).execute(r[e],s,i,this.m_progressTracker));const n=(0,h.e)(i,s,!0),m=(0,h.h)(n);s=f[e].unproject(s,m,this.m_progressTracker),s=(new o.f).execute(s,this.m_gcs,!0,this.m_progressTracker),u.tick(D(s)),p.tock()}x=p.next()}else{let t,r=!1;if(e){let e=s.m_densified;if(s.m_densified=null,null!==e){const s=new c.T;s.scale(1/this.m_rpu,1/this.m_rpu),e.applyTransformation(s),P.project(e);const n=(0,h.e)(null,e,!0);e=(0,o.y)(e,n,!1,!0,-1,this.m_progressTracker,0,!1),this.m_distance>0?(m.tick(D(e)),a.tock()):(t=e,r=!0)}}let u=a.next();m=null,a=null,r&&(u=(new o.o).execute(t,u,i,this.m_progressTracker));const l=(0,h.e)(i,u,!0),_=(0,h.h)(l);x=n.unproject(u,_,this.m_progressTracker),x=(new o.f).execute(x,this.m_gcs,!0,this.m_progressTracker)}return x=(new o.O).foldInto360RangeGeodetic(x,this.m_gcs,2),x}putInGridCursors(e,t,s,n,i,r,m,a,h){const c=[null,null,null,null,null,null];this.processInGrid(e,t,n,i,r,m,c);for(let e=0;e<6;e++)null!==c[e]&&(null===a[e]&&(a[e]=new o.a7,h[e]=(new o.p).executeMany(a[e],s,this.m_progressTracker,2)),a[e].tick(D(c[e])),h[e].tock())}processInGrid(e,t,s,n,i,r,m){const a=.01,c=this.insertGeodeticPointsAlongGrid(t,i,a);for(let e=0;e<6;e++){if(n[e])continue;const _=i[e].clone();_.inflateCoords(a,a);const f=(0,h.j)(t,_),d=(0,h.c)(null,f,!1).total();let g=(0,l.c)(c,_,d,Number.NaN,this.m_progressTracker);if(null!==g&&!g.isEmpty()){if(g===c&&(g=g.clone()),null===r[e]){const t=new u.P;e<3?t.setCoords(0,1):t.setCoords(0,-1);const s=new u.P;s.setAdd(i[e].getCenter(),t),r[e]=v(this.m_gcs,s)}r[e].project(g);const t=(0,h.e)(null,g,!0);g=(0,o.y)(g,t,s,!0,-1,this.m_progressTracker,0,!1),m[e]=g}}}insertGeodeticPointsAlongGrid(e,t,s){const n=r.Envelope2D.construct(t[3].xmin,t[3].ymin,t[2].xmax,t[2].ymax),i=(0,o.a8)(this.m_gcs,n,e,!0,this.m_progressTracker),m=new a.E,h=m.addGeometry(i);return(0,o.a9)(m,h,this.m_gcs,0,2,!0,t[0].xmax+s),(0,o.a9)(m,h,this.m_gcs,0,2,!0,t[1].xmax+s),(0,o.a9)(m,h,this.m_gcs,0,2,!1,t[1].ymin+s),0!==s&&((0,o.a9)(m,h,this.m_gcs,0,2,!0,t[0].xmax-s),(0,o.a9)(m,h,this.m_gcs,0,2,!0,t[1].xmax-s),(0,o.a9)(m,h,this.m_gcs,0,2,!1,t[1].ymin-s)),m.getGeometry(h)}initializeGrid(e,t){for(let t=0;t<6;t++)e[t]=!1;t[0].setCoords({xmin:-this.m_gcs180,ymin:0,xmax:-this.m_gcs60,ymax:this.m_gcs90}),t[1].setCoords({xmin:-this.m_gcs60,ymin:0,xmax:this.m_gcs60,ymax:this.m_gcs90}),t[2].setCoords({xmin:this.m_gcs60,ymin:0,xmax:this.m_gcs180,ymax:this.m_gcs90}),t[3].setCoords({xmin:-this.m_gcs180,ymin:-this.m_gcs90,xmax:-this.m_gcs60,ymax:0}),t[4].setCoords({xmin:-this.m_gcs60,ymin:-this.m_gcs90,xmax:this.m_gcs60,ymax:0}),t[5].setCoords({xmin:this.m_gcs60,ymin:-this.m_gcs90,xmax:this.m_gcs180,ymax:0})}checkAndPrepSegmentForCrossingAzimuthsOrPoleWrap(e,t,s,n,i,r){const m=e[0],a=e.at(-1),h=m.y<a.y?m.y:a.y,c=m.y>a.y?m.y:a.y,l=o.$.q(this.m_a,this.m_eSquared,h),_=o.$.q(this.m_a,this.m_eSquared,c);if(this.m_q90-(l+t+this.m_absDistance)>.001&&this.m_q90+(_-t-this.m_absDistance)>.001)return!1;const f=s-u.o,d=n+u.o,g=f-Math.PI,p=f+Math.PI,y=d+Math.PI,S=[Number.NaN],C=[Number.NaN],w=[Number.NaN],v=[Number.NaN];let D=!1;if(b(this.m_a,this.m_eSquared,this.m_rpu,this.m_absDistance,m,f,g,a,d,S,C),b(this.m_a,this.m_eSquared,this.m_rpu,this.m_absDistance,a,y,d,m,g,w,v),(d<S[0]&&S[0]<y||d<C[0]&&C[0]<y)&&(D=!0),D||(g<w[0]&&w[0]<f||g<v[0]&&v[0]<f)&&(D=!0),!D&&i)return!1;const I=[];for(let t=e.length-1;t>=0;t--)I.push(e[t]);r.setEmpty(),r.addPathPoint2D(null,0,!0);let M=0;M=P(this.m_a,this.m_eSquared,this.m_rpu,this.m_absDistance,this.m_curveType,e,f,d,i,M,r),M=x(this.m_a,this.m_eSquared,this.m_rpu,this.m_absDistance,a,d,y,this.m_cornerStep,i,M,r,S[0],C[0]),M=P(this.m_a,this.m_eSquared,this.m_rpu,this.m_absDistance,this.m_curveType,I,y,p,i,M,r),M=x(this.m_a,this.m_eSquared,this.m_rpu,this.m_absDistance,m,g,f,this.m_cornerStep,i,M,r,w[0],v[0]);let N=!1;return i||(N=this.checkAndPrepForPole(r)),D||N}bufferPoint2D(e,t,s){s.setEmpty(),s.addPathPoint2D(null,0,!0),x(this.m_a,this.m_eSquared,this.m_rpu,this.m_absDistance,e,-this.m_cornerStep,2*Math.PI,this.m_cornerStep,t,0,s);let n=!1;return t||(n=this.checkAndPrepForPole(s)),n}checkAndPrepForPole(e){const t=this.checkAndPrepForPoleTouch(e),s=this.checkAndPrepForPoleWrap(e);return t||s}checkAndPrepForPoleTouch(e){const t=new r.Envelope2D;return e.queryEnvelope(t),!(!(0,o.aa)(t.ymax,this.m_gcs90)&&!(0,o.aa)(t.ymin,-this.m_gcs90)||(this.prepPoleTouch(e),0))}checkAndPrepForPoleWrap(e){const t=e.getXY(0),s=e.getXY(e.getPointCount()-1);return Math.abs(t.x-s.x)>this.m_gcs180?(this.prepSinglePoleWrap(e),!0):this.checkAndPrepForDoublePoleWrap(e)}checkAndPrepForDoublePoleWrap(e){return e.calculateArea2D()<0&&(this.prepDoublePoleWrap(e),!0)}prepPoleTouch(e){const t=new a.P;t.insertPath2D(-1,null,0,0,!0);const s=e.getPathStart(0),n=e.getPathEnd(0),i=n-s;let r=-1;for(r=s;r<n;r++){const t=e.getXY(r),s=(0,o.aa)(t.y,this.m_gcs90),n=(0,o.aa)(t.y,-this.m_gcs90);if(!s&&!n)break}let m=r,h=!1,c=Number.NaN;do{const n=e.getXY(m),r=(0,o.aa)(n.y,this.m_gcs90),a=(0,o.aa)(n.y,-this.m_gcs90),l=s+(m+1-s)%i;if(r||a){let s=u.P.construct(c,n.y);t.insertPoint2D(0,-1,s);const i=e.getXY(l),r=(0,o.aa)(i.y,this.m_gcs90),m=(0,o.aa)(i.y,-this.m_gcs90);r||m||(s=u.P.construct(i.x,n.y),h?t.setXY(t.getPointCount()-1,s):t.insertPoint2D(0,-1,s)),h=!0}else t.insertPoint2D(0,-1,n),c=n.x,h=!1;m=l}while(m!==r);e.setEmpty(),e.add(t,!1)}prepSinglePoleWrap(e){const t=new a.P,s=new a.P,n=new c.T,i=e.getXY(e.getPathStart(0)),m=e.getXY(e.getPathEnd(0)-1),_=this.m_gcs360,f=this.m_gcs180,d=new r.Envelope2D;d.setCoords({xmin:-this.m_gcs180,ymin:-this.m_gcs90,xmax:this.m_gcs180,ymax:this.m_gcs90});const g=new r.Envelope2D;e.queryEnvelope(g);const p=Math.ceil(g.width()/_);let P,x;i.x>m.x?(P=-_,x=this.m_gcs90):(P=_,x=-this.m_gcs90),n.setShiftCoords(P,0),t.addPath(e,0,!0),s.add(t,!1);const b=new h.P;for(let e=0;e<p;e++)s.applyTransformation(n),s.getPointByVal(0,b),t.lineToPoint(b),t.addSegmentsFromPath(s,0,0,s.getSegmentCount()-1,!1);const y=t.getXY(0),S=t.getXY(t.getPointCount()-1);y.y=x,S.y=x,t.lineTo(S);const C=new u.P;for(C.setCoordsPoint2D(S),C.x-=.5*P;Math.abs(C.x-y.x)>f;)t.lineTo(C),C.x-=.5*P;t.lineTo(y);const w=d.getCenterX(),v=new r.Envelope2D;t.queryEnvelope(v);let D=0;const I=v.getCenter().x;I-w>f?D=-Math.ceil((I-w-f)/_):w-I>f&&(D=Math.ceil((w-I-f)/_)),0!==D&&(n.setShiftCoords(D*_,0),t.applyTransformation(n));const M=new a.E,N=M.addGeometry(t);(0,o.a9)(M,N,this.m_gcs,0,2,!0,d.xmin),(0,o.a9)(M,N,this.m_gcs,0,2,!0,d.xmax);const G=M.getGeometry(N),T=(0,h.j)(G,d);T.inflateCoords(0,1);const k=(0,h.c)(null,T,!0).total(),E=(0,l.c)(G,d,k,Number.NaN,this.m_progressTracker);e.setEmpty(),e.add(E,!1)}prepDoublePoleWrap(e){const t=this.m_gcs360,s=this.m_gcs180,n=new r.Envelope2D;n.setCoords({xmin:-this.m_gcs180,ymin:-this.m_gcs90,xmax:this.m_gcs180,ymax:this.m_gcs90});const i=n.getCenter().x,m=new r.Envelope2D;e.queryPathEnvelope(0,m);let _,f=0,d=m.getCenter().x;if(d-i>s?f=-Math.ceil((d-i-s)/t):i-d>s&&(f=Math.ceil((i-d-s)/t)),0!==f){const s=new c.T;s.setShiftCoords(f*t,0),e.getImpl().applyTransformationToPath(s,0),e.queryPathEnvelope(0,m),d=m.getCenter().x}const g=new r.Envelope2D;n.containsExclusiveEnvelope(m)?(_=!1,g.setCoords({env2D:n})):(_=!0,g.setCoords({env2D:n}),g.xmin-=t,g.xmax+=t);let p=e.createInstance();p.addPathPoint2D(null,0,!0);const P=new u.P;if(P.setCoords(g.xmin,g.ymin),p.insertPoint2D(0,-1,P),P.setCoords(g.xmin,g.ymax),p.insertPoint2D(0,-1,P),P.setCoords(.5*(g.xmin+g.xmax),g.ymax),p.insertPoint2D(0,-1,P),P.setCoords(g.xmax,g.ymax),p.insertPoint2D(0,-1,P),P.setCoords(g.xmax,g.ymin),p.insertPoint2D(0,-1,P),P.setCoords(.5*(g.xmin+g.xmax),g.ymin),p.insertPoint2D(0,-1,P),_){p.addPath(e,0,!0);const s=new c.T;d<i?s.setShiftCoords(t,0):s.setShiftCoords(-t,0),e.getImpl().applyTransformationToPath(s,0),p.addPath(e,0,!0);const r=new a.E,m=r.addGeometry(p);(0,o.a9)(r,m,this.m_gcs,0,2,!0,n.xmin),(0,o.a9)(r,m,this.m_gcs,0,2,!0,n.xmax),p=r.getGeometry(m);const u=(0,h.j)(p,n);u.inflateCoords(0,1);const _=(0,h.c)(null,u,!0).total();p=(0,l.c)(p,n,_,Number.NaN,this.m_progressTracker)}else p.addPath(e,0,!0);e.setEmpty(),e.add(p,!1)}setMinCornerStep(){const e={stack:[],error:void 0,hasError:!1};try{let t=Math.min(Math.PI*this.m_a-this.m_absDistance,this.m_absDistance);t=Math.min(t,.125*this.m_a*Math.PI);const s=new u.P;s.setCoords(0,10*this.m_rpu);const n=0;let i=45*this.m_rpu;const r=(0,m.mS)(e,new u.S(new o.M,new o.M),!1),a=(0,m.mS)(e,new u.S(new o.M,new o.M),!1),h=(0,m.mS)(e,new u.S(new o.M,new o.M),!1),c=(0,m.mS)(e,new u.S(new o.M,new o.M),!1),l=new u.P,_=new u.P,f=new u.P,d=new u.P;for(o.N.geodesicCoordinate(this.m_a,this.m_eSquared,s.x,s.y,t,n,r.at(0),r.at(1)),l.setCoords(r.at(0).val,r.at(1).val),o.N.geodesicCoordinate(this.m_a,this.m_eSquared,s.x,s.y,t,i,a.at(0),a.at(1)),_.setCoords(a.at(0).val,a.at(1).val);;){const e={stack:[],error:void 0,hasError:!1};try{const r=.5*(n+i);o.N.geodesicCoordinate(this.m_a,this.m_eSquared,s.x,s.y,t,r,h.at(0),h.at(1)),f.setCoords(h.at(0).val,h.at(1).val);const u=(0,m.mS)(e,new o.M,!1),g=(0,m.mS)(e,new o.M,!1);o.N.geodeticDistance(this.m_a,this.m_eSquared,l.x,l.y,_.x,_.y,u,g,null,2),o.N.geodeticCoordinate(this.m_a,this.m_eSquared,l.x,l.y,.5*u.val,g.val,c.at(0),c.at(1),2),d.setCoords(c.at(0).val,c.at(1).val);const p=(0,m.mS)(e,new o.M,!1);if(o.N.geodeticDistance(this.m_a,this.m_eSquared,f.x,f.y,d.x,d.y,p,null,null,2),p.val<=this.m_convergenceOffset)break;i*=.9,o.N.geodesicCoordinate(this.m_a,this.m_eSquared,s.x,s.y,t,i,a.at(0),a.at(1)),_.setCoords(a.at(0).val,a.at(1).val)}catch(t){e.error=t,e.hasError=!0}finally{(0,m.hk)(e)}}const g=i-n,p=2*Math.PI/Math.ceil(2*Math.PI/g);this.m_cornerStep=p}catch(t){e.error=t,e.hasError=!0}finally{(0,m.hk)(e)}}setMinSegmentStep(){const e={stack:[],error:void 0,hasError:!1};try{let t=Math.min(Math.PI*this.m_a-this.m_absDistance,this.m_absDistance);t=Math.min(t,.125*this.m_a*Math.PI);const s=new u.P,n=new u.P;s.setCoords(0,10*this.m_rpu),n.setCoords(10*this.m_rpu,10*this.m_rpu);const i=(0,m.mS)(e,new o.M,!1),r=(0,m.mS)(e,new o.M,!1),a=(0,m.mS)(e,new o.M,!1);o.N.geodeticDistance(this.m_a,this.m_eSquared,s.x,s.y,n.x,n.y,a,i,r,this.m_curveType);const h=(0,m.mS)(e,new u.S(new o.M,new o.M),!1),c=(0,m.mS)(e,new u.S(new o.M,new o.M),!1),l=new u.P,_=(0,m.mS)(e,new o.M,!1),f=(0,m.mS)(e,new u.S(new o.M,new o.M),!1),d=(0,m.mS)(e,new u.S(new o.M,new o.M),!1),g=(0,m.mS)(e,new u.S(new o.M,new o.M),!1),p=(0,m.mS)(e,new u.S(new o.M,new o.M),!1),P=new u.P,x=new u.P,b=new u.P,y=new u.P,S=0;let C=1;const w=i.val,v=r.val,D=w-.5*Math.PI,I=v+.5*Math.PI,M=a.val;for(o.N.geodesicCoordinate(this.m_a,this.m_eSquared,s.x,s.y,t,D,f.at(0),f.at(1)),P.setCoords(f.at(0).val,f.at(1).val),o.N.geodesicCoordinate(this.m_a,this.m_eSquared,n.x,n.y,t,I,d.at(0),d.at(1)),x.setCoords(d.at(0).val,d.at(1).val);;){const e={stack:[],error:void 0,hasError:!1};try{const i=.5*(S+C);o.N.geodeticCoordinate(this.m_a,this.m_eSquared,s.x,s.y,i*M,w,h.at(0),h.at(1),this.m_curveType),l.setCoords(h.at(0).val,h.at(1).val),o.N.geodeticDistance(this.m_a,this.m_eSquared,s.x,s.y,l.x,l.y,null,null,_,this.m_curveType);const r=_.val+.5*Math.PI;o.N.geodesicCoordinate(this.m_a,this.m_eSquared,l.x,l.y,t,r,g.at(0),g.at(1)),b.setCoords(g.at(0).val,g.at(1).val);const a=(0,m.mS)(e,new o.M,!1),u=(0,m.mS)(e,new o.M,!1);o.N.geodeticDistance(this.m_a,this.m_eSquared,P.x,P.y,x.x,x.y,a,u,null,2),o.N.geodeticCoordinate(this.m_a,this.m_eSquared,P.x,P.y,.5*a.val,u.val,p.at(0),p.at(1),2),y.setCoords(p.at(0).val,p.at(1).val);const f=(0,m.mS)(e,new o.M,!1);if(o.N.geodeticDistance(this.m_a,this.m_eSquared,b.x,b.y,y.x,y.y,f,null,null,2),f.val<=this.m_convergenceOffset)break;{const e={stack:[],error:void 0,hasError:!1};try{C*=.9,o.N.geodeticCoordinate(this.m_a,this.m_eSquared,s.x,s.y,C*M,w,c.at(0),c.at(1),this.m_curveType),n.setCoords(c.at(0).val,c.at(1).val);const i=(0,m.mS)(e,new o.M,!1);o.N.geodeticDistance(this.m_a,this.m_eSquared,s.x,s.y,n.x,n.y,null,null,i,this.m_curveType);const r=i.val+.5*Math.PI;o.N.geodesicCoordinate(this.m_a,this.m_eSquared,n.x,n.y,t,r,d.at(0),d.at(1)),x.setCoords(d.at(0).val,d.at(1).val)}catch(t){e.error=t,e.hasError=!0}finally{(0,m.hk)(e)}}}catch(t){e.error=t,e.hasError=!0}finally{(0,m.hk)(e)}}let N=C*M;N>1e5&&(N=1e5),this.m_segmentStep=N}catch(t){e.error=t,e.hasError=!0}finally{(0,m.hk)(e)}}setConvergenceOffset(){let e;e=this.m_absDistance>5e4?100:this.m_absDistance>1e4?10:1,this.m_absDistance/e<500&&(e=this.m_absDistance/500),e<.01&&(e=.01),this.m_convergenceOffset=e}}function p(e,t,s,n,m,c,l){if(e.isEmpty())return new a.P({vd:e.getDescription()});let _=e;if((0,i.m)(_)){const e=10*t.getTolerance(0);_=(new f.O).execute(_,0,e,0,l,12e3)}const d=new g(l);d.m_sr=t,d.m_gcs=t.getGCS(),d.m_transform=(0,o.a)(t,d.m_gcs,null);const p=(0,o._)();d.m_gcs.querySpheroidData(p);const P=new r.Envelope2D;_.queryEnvelope(P),d.m_a=p.majorSemiAxis,d.m_eSquared=p.e2,d.m_rpu=d.m_gcs.getUnit().getUnitToBaseFactor(),d.m_gcs90=.5*Math.PI/d.m_rpu,d.m_gcs180=Math.PI/d.m_rpu,d.m_gcs360=2*Math.PI/d.m_rpu,d.m_gcs60=d.m_gcs360/6,d.m_q90=o.$.q90(d.m_a,d.m_eSquared),d.m_ellipticToGeodesicMaxRatio=.5*d.m_a*Math.PI/d.m_q90;const x=d.m_gcs.getTolerance(0);d.m_radTolerance=x*d.m_rpu,4===s?(d.m_curveType=2,d.m_bShapePreserving=!0):(d.m_curveType=s,d.m_bShapePreserving=!1),d.m_distance=n,d.m_absDistance=Math.abs(n),Number.isNaN(m)||m<=0?d.setConvergenceOffset():d.m_convergenceOffset=Math.max(m,.001),d.m_convergenceOffset/=c;let b,y=_.getGeometryType();if((0,i.f)(y)){const e=new a.a({vd:_.getDescription()});e.addSegment(_,!0),b=e,y=i.G.enumPolyline}else if(y===i.G.enumEnvelope){const e=_,t=new r.Envelope2D;e.queryEnvelope(t);const s=(0,h.h)((0,h.c)(d.m_sr,P,!0));if(t.minDimension()<=s)if(0===t.maxDimension()){const t=new h.P({vd:_.getDescription()});e.getCenter(t),b=t,y=i.G.enumPoint}else{const t=new a.a({vd:_.getDescription()});t.addEnvelope(e,!1),b=t,y=i.G.enumPolyline}else{const t=new a.P({vd:_.getDescription()});t.addEnvelope(e,!1),b=t,y=i.G.enumPolygon}}else b=_;if(d.setMinCornerStep(),(0,i.e)(y)||d.setMinSegmentStep(),d.m_absDistance<=.5*d.m_convergenceOffset)return y!==i.G.enumPolygon?new a.P({vd:b.getDescription()}):d.m_bShapePreserving?b:(0,o.a1)(b,d.m_sr,d.m_curveType,d.m_segmentStep,-1,l);if(d.m_distance<0&&y!==i.G.enumPolygon)return new a.P({vd:b.getDescription()});if(d.m_bShapePreserving&&(0,i.h)(y)){const e=(0,o.a1)(b,t,4,Number.NaN,d.m_convergenceOffset,l);b=(new o.O).execute(e,d.m_transform,l)}else b=(new o.O).execute(b,d.m_transform,l);if(b=(0,o.X)(b,d.m_gcs),b.isEmpty())return new a.P({vd:b.getDescription()});!d.m_bShapePreserving&&(0,i.h)(y)&&(b=(0,o.a4)(d.m_rpu,b)),b=function(e,t){const s=e.getGeometryType();let n;if(n=(0,i.h)(s)?e.getPathCount():s===i.G.enumMultiPoint?e.getPointCount():1,1===n)return e;const o=[],m=[];for(let a=0;a<n;a++){o.push(a);const n=new u.P;if((0,i.h)(s)){const t=new r.Envelope2D;e.queryPathEnvelope(a,t),n.assign(t.getCenter())}else n.assign(e.getXY(a));const h=t.toGeohash(n);m.push(h)}o.sort((e,t)=>m[e]<m[t]?-1:m[e]>m[t]?1:0);const a=e.createInstance();for(let t=0;t<n;t++){const n=o[t];(0,i.h)(s)?a.addPath(e,n,!0):a.addPoints(e,n,n+1)}return a}(b,d.m_gcs);let S=new a.P;switch(y){case i.G.enumPolygon:S=d.bufferPolygon(b);break;case i.G.enumPolyline:S=d.bufferPolyline(b);break;case i.G.enumMultiPoint:S=d.bufferMultiPoint(b);break;case i.G.enumPoint:S=d.bufferPoint(b);break;default:(0,i.o)("")}const C=(new o.O).execute(S,d.m_transform.getInverse(),l);return C.mergeVertexDescription(b.getDescription()),C}function P(e,t,s,n,i,r,a,h,c,l,_){const f={stack:[],error:void 0,hasError:!1};try{const d=new u.P;d.setNAN(),c||_.getPointCount()>0&&(d.setCoordsPoint2D(_.getXY(_.getPointCount()-1)),d.scale(s));const g=(0,m.mS)(f,new o.M,!1),p=(0,m.mS)(f,new u.S(new o.M,new o.M),!1),P=new u.P,x=new u.P,b=r.at(-1),S=1/s;for(let s=0;s<r.length;s++){const m=r[s];let u;0===s?u=a:s===r.length-1?u=h:(o.N.geodeticDistance(e,t,b.x,b.y,m.x,m.y,null,null,g,i),u=g.val-.5*Math.PI),o.N.geodesicCoordinate(e,t,m.x,m.y,n,u,p.at(0),p.at(1)),c?x.setCoords(p.at(0).val,p.at(1).val):(P.setCoords(p.at(0).val,p.at(1).val),l=y(m.x,P.x,d.x,l),x.setCoords(l+P.x,P.y),d.setCoordsPoint2D(x)),x.scale(S),_.insertPoint2D(0,-1,x)}return l}catch(e){f.error=e,f.hasError=!0}finally{(0,m.hk)(f)}}function x(e,t,s,n,i,r,a,h,c,l,_,f=Number.NaN,d=Number.NaN){const g={stack:[],error:void 0,hasError:!1};try{if(a-r<h)return l;const p=(0,m.mS)(g,new u.S(new o.M,new o.M),!1),P=new u.P,x=new u.P,b=new u.P;x.setNAN(),c||_.getPointCount()>0&&(x.setCoordsPoint2D(_.getXY(_.getPointCount()-1)),x.scale(s));let S=Math.ceil(r/h),C=S++*h;C===r&&(C=S++*h);let w=r;const v=1/s;for(;C<a+h&&(w<f&&f<C?(C=f,S--):w<d&&d<C&&(C=d,S--),!(C>=a));)o.N.geodesicCoordinate(e,t,i.x,i.y,n,C,p.at(0),p.at(1)),c?b.setCoords(p.at(0).val,p.at(1).val):(P.setCoords(p.at(0).val,p.at(1).val),l=y(i.x,P.x,x.x,l),b.setCoords(l+P.x,P.y),x.setCoordsPoint2D(b)),b.scale(v),_.insertPoint2D(0,-1,b),w=C,C=S++*h;return l}catch(e){g.error=e,g.hasError=!0}finally{(0,m.hk)(g)}}function b(e,t,s,n,i,r,a,h,c,l,_){const f={stack:[],error:void 0,hasError:!1};try{const s=new u.P,d=new u.P,g=(0,m.mS)(f,new u.S(new o.M,new o.M),!1);o.N.geodesicCoordinate(e,t,i.x,i.y,n,r,g.at(0),g.at(1)),s.setCoords(g.at(0).val,g.at(1).val),o.N.geodesicCoordinate(e,t,i.x,i.y,n,a,g.at(0),g.at(1)),d.setCoords(g.at(0).val,g.at(1).val);const p=(0,m.mS)(f,new o.M,!1);for(o.N.geodeticDistance(e,t,h.x,h.y,s.x,s.y,null,p,null,0),l[0]=p.val,o.N.geodeticDistance(e,t,h.x,h.y,d.x,d.y,null,p,null,0),_[0]=p.val;l[0]<=_[0];)l[0]+=u.p;for(;l[0]>_[0];)l[0]-=u.p;for(;l[0]>=c;)l[0]-=u.p,_[0]-=u.p;for(;l[0]<c;)l[0]+=u.p,_[0]+=u.p}catch(e){f.error=e,f.hasError=!0}finally{(0,m.hk)(f)}}function y(e,t,s,n){if(Number.isNaN(s)){for(;n+t-e>Math.PI;)n-=u.p;for(;e-(n+t)>Math.PI;)n+=u.p;return n}return n+t-s>Math.PI?n-=u.p:s-(n+t)>Math.PI&&(n+=u.p),n}function S(e,t,s,n,i,r){const a={stack:[],error:void 0,hasError:!1};try{if(n>=r)return!1;const h=s[0],c=s.at(-1),u=(0,m.mS)(a,new o.M,!1),l=(0,m.mS)(a,new o.M,!1),_=(0,m.mS)(a,new o.M,!1);o.N.greatEllipticDistance(e,t,i.x,i.y,h.x,h.y,u,null,null),o.N.greatEllipticDistance(e,t,i.x,i.y,c.x,c.y,l,null,null),o.N.greatEllipticDistance(e,t,h.x,h.y,c.x,c.y,_,null,null);let f=Math.min(u.val,l.val)+_.val,d=f+n;if(d<r)return!0;const g=(0,m.mS)(a,new o.M,!1);f=Math.max(u.val,l.val);for(let n=1;n<s.length-1;n++){const r=s[n];o.N.greatEllipticDistance(e,t,i.x,i.y,r.x,r.y,g,null,null),g.val>f&&(f=g.val)}return d=f+n,d<r}catch(e){a.error=e,a.hasError=!0}finally{(0,m.hk)(a)}}function C(e,t,s,n,i,r,m,a){let h;if(n.length%2==0){const e=n.length>>1,t=n[e],s=n[e-1];h=u.P.lerp(t,s,.5)}else h=n[n.length-1>>1].clone();const c=h.clone(),l=(0,o.ab)(e,t,c,75/180*Math.PI);return!!S(e,t,n,i,c,l)&&(null!==r&&(r.setCoordsPoint2D(h),r.scale(1/s)),null!==m&&m.setCoordsPoint2D(c),null!==a&&(a[0]=l),!0)}function w(e,t,s,n,i,r){const a={stack:[],error:void 0,hasError:!1};try{if(n>=r)return!1;const h=(0,m.mS)(a,new o.M,!1);return o.N.greatEllipticDistance(e,t,i.x,i.y,s.x,s.y,h,null,null),h.val+n<r}catch(e){a.error=e,a.hasError=!0}finally{(0,m.hk)(a)}}function v(e,t){return new o.ag(e,t)}function D(e){return(0,h.k)(e,0)||(0,h.s)(e,0),e}class I{constructor(e){this.m_bRunningInGnomonic=!1,this.m_bNeedsSimplify=!1,this.m_gnomonic=null,this.m_gnomonicCenterRad=new u.P,this.m_minGnomonicRadius=Number.NaN,this.m_progressTracker=e}isRunningInGnomonic(){return this.m_bRunningInGnomonic}needsSimplify(){return this.m_bNeedsSimplify}getGnomonic(){return this.m_gnomonic}}class M extends I{constructor(e,t,s){super(e.m_progressTracker),this.m_segIter=null,this.m_bNextSegmentCannotJoin=!1,this.m_currentDensifiedDelta=[0],this.m_currentBufferedDelta=0,this.m_lastAzimuth=0,this.m_startAzimuth=[0],this.m_endAzimuth=[0],this.m_numWinds=0,this.m_debugCounter=0,this.m_bufferHelper=new a.P,this.m_densifiedPoints=[],this.m_bufferer=e,this.m_multiPath=t,this.m_densified=s,this.m_bNeedsSimplify=!0;const n=new r.Envelope2D;this.m_multiPath.queryEnvelope(n);const i=n.getCenter(),m=i.clone();m.scale(this.m_bufferer.m_rpu),this.m_gnomonic=v(this.m_bufferer.m_gcs,i),this.m_gnomonicCenterRad=m.clone(),this.m_minGnomonicRadius=(0,o.ab)(this.m_bufferer.m_a,this.m_bufferer.m_eSquared,m,75/180*Math.PI)}next(){let e;if(this.m_bNextSegmentCannotJoin)return this.m_bNextSegmentCannotJoin=!1,this.m_segIter.nextSegment(),e=this.m_bufferHelper.clone(),e;if(null===this.m_segIter){if(this.m_segIter=this.m_multiPath.getImpl().querySegmentIterator(),!this.m_segIter.nextPath())return null;null!==this.m_densified&&this.m_densified.addPathPoint2D(null,0,!0)}if(!this.m_segIter.hasNextSegment()){if(!this.m_segIter.nextPath())return null;null!=this.m_densified&&this.m_densified.addPathPoint2D(null,0,!0)}let t=null;this.m_currentBufferedDelta=0,this.m_currentDensifiedDelta=[0],this.m_numWinds=0,this.m_lastAzimuth=Number.NaN,this.m_bNextSegmentCannotJoin=!1,this.m_densifiedPoints.length=0;let s=0;const n=new u.P,i=new u.P;for(;this.m_segIter.hasNextSegment()&&this.m_numWinds<16;){const e=this.m_segIter.nextSegment();if(n.setCoordsPoint2D(e.getStartXY()),i.setCoordsPoint2D(e.getEndXY()),n.scale(this.m_bufferer.m_rpu),i.scale(this.m_bufferer.m_rpu),(0,o.ac)(n,i))n.x=i.x;else if((0,o.ad)(n,i))i.x=n.x;else{let e=-1,t=-1;const s=this.m_segIter.getPathIndex(),r=this.m_multiPath.getPathStart(s),m=this.m_multiPath.getPathEnd(s);if(e=this.m_segIter.getStartPointIndex()-1,t=this.m_segIter.getEndPointIndex()+1,e<r&&(e=this.m_multiPath.isClosedPath(s)?m-1:-1),t>m-1&&(t=this.m_multiPath.isClosedPath(s)?r:-1),-1!==e){const t=this.m_multiPath.getXY(e);t.scale(this.m_bufferer.m_rpu),(0,o.ad)(t,n)&&(n.x=t.x)}if(-1!==t){const e=this.m_multiPath.getXY(t);e.scale(this.m_bufferer.m_rpu),(0,o.ac)(i,e)&&(i.x=e.x)}}this.m_densifiedPoints.length=0;const r=(0,o.ae)(this.m_bufferer.m_a,this.m_bufferer.m_eSquared,this.m_bufferer.m_curveType,n,i,this.m_bufferer.m_segmentStep,Number.NaN,this.m_bufferer.m_radTolerance,this.m_startAzimuth,this.m_endAzimuth,this.m_densifiedPoints,this.m_currentDensifiedDelta);if(0===s)this.m_bRunningInGnomonic=this.isSegmentBufferInCurrentGnomonic(this.m_densifiedPoints),this.m_bRunningInGnomonic||(this.m_bRunningInGnomonic=this.tryUpdateGnomonic(this.m_densifiedPoints));else if(this.m_bRunningInGnomonic){if(!this.isSegmentBufferInCurrentGnomonic(this.m_densifiedPoints)){this.m_segIter.previousSegment(),this.m_segIter.previousSegment(),this.m_segIter.nextSegment();break}}else if(C(this.m_bufferer.m_a,this.m_bufferer.m_eSquared,this.m_bufferer.m_rpu,this.m_densifiedPoints,this.m_bufferer.m_absDistance*this.m_bufferer.m_ellipticToGeodesicMaxRatio,null,null,null)){this.m_segIter.previousSegment(),this.m_segIter.previousSegment(),this.m_segIter.nextSegment();break}if(0===r||(0,o.af)(n,i)?(this.m_bufferHelper.setEmpty(),this.m_bufferer.bufferPoint2D(n,this.m_bRunningInGnomonic,this.m_bufferHelper),this.m_bNextSegmentCannotJoin=!0):(this.m_bufferHelper.setEmpty(),this.m_bNextSegmentCannotJoin=this.checkAndPrepSegmentForCrossingAzimuthsOrPoleWrap(r,this.m_bufferHelper)),this.m_bNextSegmentCannotJoin){this.m_segIter.previousSegment(),this.m_segIter.hasPreviousSegment()?(this.m_segIter.previousSegment(),this.m_segIter.nextSegment()):this.m_segIter.resetToFirstSegment(),null!=this.m_densified&&this.m_densified.insertPointsFromPoints(this.m_densified.getPathCount()-1,-1,this.m_densifiedPoints,0,this.m_densifiedPoints.length-1,!0);break}null!=this.m_densified&&this.m_densified.insertPointsFromPoints(this.m_densified.getPathCount()-1,-1,this.m_densifiedPoints,0,this.m_densifiedPoints.length-1,!0),null===t&&(t=new a.P,t.addPathPoint2D(null,0,!0)),this.addJoinAndBufferLeftSide(t),s++}if(this.m_currentDensifiedDelta=[0],s>0){const e=this.m_segIter.getStartPointIndex(),r=this.m_segIter.getPathIndex();for(;s>0;){if(this.m_segIter.previousSegment(),n.setCoordsPoint2D(this.m_multiPath.getXY(this.m_segIter.getStartPointIndex())),i.setCoordsPoint2D(this.m_multiPath.getXY(this.m_segIter.getEndPointIndex())),n.scale(this.m_bufferer.m_rpu),i.scale(this.m_bufferer.m_rpu),this.m_bRunningInGnomonic)if((0,o.ac)(n,i))n.x=i.x;else if((0,o.ad)(n,i))i.x=n.x;else{let e=-1,t=-1;const s=this.m_segIter.getPathIndex(),r=this.m_multiPath.getPathStart(s),m=this.m_multiPath.getPathEnd(s);if(e=this.m_segIter.getStartPointIndex()-1,t=this.m_segIter.getEndPointIndex()+1,e<r&&(e=this.m_multiPath.isClosedPath(s)?m-1:-1),t>m-1&&(t=this.m_multiPath.isClosedPath(s)?r:-1),-1!==e){const t=this.m_multiPath.getXY(e);t.scale(this.m_bufferer.m_rpu),(0,o.ad)(t,n)&&(n.x=t.x)}if(-1!==t){const e=this.m_multiPath.getXY(t);e.scale(this.m_bufferer.m_rpu),(0,o.ac)(i,e)&&(i.x=e.x)}}this.m_densifiedPoints.length=0,(0,o.ae)(this.m_bufferer.m_a,this.m_bufferer.m_eSquared,this.m_bufferer.m_curveType,i,n,this.m_bufferer.m_segmentStep,Number.NaN,this.m_bufferer.m_radTolerance,this.m_startAzimuth,this.m_endAzimuth,this.m_densifiedPoints,this.m_currentDensifiedDelta),this.addJoinAndBufferLeftSide(t),s--}return n.setCoordsPoint2D(this.m_multiPath.getXY(this.m_segIter.getStartPointIndex())),n.scale(this.m_bufferer.m_rpu),this.m_currentBufferedDelta=x(this.m_bufferer.m_a,this.m_bufferer.m_eSquared,this.m_bufferer.m_rpu,this.m_bufferer.m_absDistance,n,this.m_lastAzimuth+.5*Math.PI,this.m_lastAzimuth+1.5*Math.PI,this.m_bufferer.m_cornerStep,this.m_bRunningInGnomonic,this.m_currentBufferedDelta,t),this.m_segIter.resetToVertex(e,r),this.m_segIter.nextSegment(),t}return this.m_bNextSegmentCannotJoin=!1,this.m_segIter.nextSegment(),e=this.m_bufferHelper.clone(),e}isSegmentBufferInCurrentGnomonic(e){return null!==this.m_gnomonic&&S(this.m_bufferer.m_a,this.m_bufferer.m_eSquared,e,this.m_bufferer.m_absDistance*this.m_bufferer.m_ellipticToGeodesicMaxRatio,this.m_gnomonicCenterRad,this.m_minGnomonicRadius)}tryUpdateGnomonic(e){const t=new u.P,s=new u.P,n=[0];return C(this.m_bufferer.m_a,this.m_bufferer.m_eSquared,this.m_bufferer.m_rpu,e,this.m_bufferer.m_absDistance*this.m_bufferer.m_ellipticToGeodesicMaxRatio,t,s,n)?(this.m_gnomonicCenterRad.setCoordsPoint2D(s),this.m_minGnomonicRadius=n[0],this.m_gnomonic=v(this.m_bufferer.m_gcs,t),!0):(this.m_gnomonic=null,!1)}checkAndPrepSegmentForCrossingAzimuthsOrPoleWrap(e,t){return this.m_bufferer.checkAndPrepSegmentForCrossingAzimuthsOrPoleWrap(this.m_densifiedPoints,e,this.m_startAzimuth[0],this.m_endAzimuth[0],this.m_bRunningInGnomonic,t)}addJoinAndBufferLeftSide(e){const t=this.m_densifiedPoints[0];let s=Number.NaN,n=this.m_startAzimuth[0]-u.o;const i=this.m_endAzimuth[0]+u.o;let r=!1;if(!Number.isNaN(this.m_lastAzimuth)){this.m_lastAzimuth>=this.m_startAzimuth[0]?(s=this.m_lastAzimuth+u.o,n=s+Math.PI-(this.m_lastAzimuth-this.m_startAzimuth[0])):(s=this.m_lastAzimuth+u.o,n=s+Math.PI-(u.p-(this.m_startAzimuth[0]-this.m_lastAzimuth))),r=!(this.m_lastAzimuth>=this.m_startAzimuth[0]&&this.m_lastAzimuth-this.m_startAzimuth[0]<=Math.PI||this.m_lastAzimuth<this.m_startAzimuth[0]&&this.m_startAzimuth[0]-this.m_lastAzimuth>=Math.PI);let i=!1;if(Math.abs(n-s)<=.5*this.m_bufferer.m_cornerStep&&(r||(i=!0)),i){if(e.removePointFromPath(0,e.getPointCount()-1),!this.m_bRunningInGnomonic){const t=new u.P;t.setCoordsPoint2D(e.getXY(e.getPointCount()-1)),t.scale(this.m_bufferer.m_rpu),t.x-this.m_currentBufferedDelta<-Math.PI?this.m_currentBufferedDelta-=u.p:t.x-this.m_currentBufferedDelta>Math.PI&&(this.m_currentBufferedDelta+=u.p)}n=.5*(n+s)}else if(r){const s=new u.P;s.setCoordsPoint2D(t),s.scale(1/this.m_bufferer.m_rpu),e.insertPoint2D(0,-1,s)}else x(this.m_bufferer.m_a,this.m_bufferer.m_eSquared,this.m_bufferer.m_rpu,this.m_bufferer.m_absDistance,this.m_densifiedPoints[0],s,n,this.m_bufferer.m_cornerStep,this.m_bRunningInGnomonic,this.m_currentBufferedDelta,e)}this.m_startAzimuth[0]!==this.m_lastAzimuth&&this.m_numWinds++,P(this.m_bufferer.m_a,this.m_bufferer.m_eSquared,this.m_bufferer.m_rpu,this.m_bufferer.m_absDistance,this.m_bufferer.m_curveType,this.m_densifiedPoints,n,i,this.m_bRunningInGnomonic,this.m_currentBufferedDelta,e),this.m_lastAzimuth=this.m_endAzimuth[0]}}class N extends I{constructor(e,t){super(e.m_progressTracker),this.m_pointIndex=-1,this.m_bufferer=e,this.m_multiPoint=t,this.m_bNeedsSimplify=!1;const s=new r.Envelope2D;this.m_multiPoint.queryEnvelope(s);const n=s.getCenter(),i=n.clone();i.scale(this.m_bufferer.m_rpu),this.m_gnomonic=v(this.m_bufferer.m_gcs,n),this.m_gnomonicCenterRad=i.clone(),this.m_minGnomonicRadius=(0,o.ab)(this.m_bufferer.m_a,this.m_bufferer.m_eSquared,i,75/180*Math.PI)}next(){if(this.m_bNeedsSimplify=!1,++this.m_pointIndex===this.m_multiPoint.getPointCount())return null;const e=this.m_multiPoint.getXY(this.m_pointIndex);e.scale(this.m_bufferer.m_rpu),this.m_bRunningInGnomonic=this.isPointBufferInCurrentGnomonic(e),this.m_bRunningInGnomonic||(this.m_bRunningInGnomonic=this.tryUpdateGnomonic(e));const t=new a.P,s=this.m_bufferer.bufferPoint2D(e,this.m_bRunningInGnomonic,t);return this.m_bNeedsSimplify=s,t}isPointBufferInCurrentGnomonic(e){return null!==this.m_gnomonic&&w(this.m_bufferer.m_a,this.m_bufferer.m_eSquared,e,this.m_bufferer.m_absDistance*this.m_bufferer.m_ellipticToGeodesicMaxRatio,this.m_gnomonicCenterRad,this.m_minGnomonicRadius)}tryUpdateGnomonic(e){const t=new u.P,s=new u.P,n=[0];return function(e,t,s,n,i,r,m,a){const h=(0,o.ab)(e,t,n,75/180*Math.PI);return!!w(e,t,n,i,n,h)&&(null!==r&&(r.setCoordsPoint2D(n),r.scale(1/s)),null!==m&&m.setCoordsPoint2D(n),null!==a&&(a[0]=h),!0)}(this.m_bufferer.m_a,this.m_bufferer.m_eSquared,this.m_bufferer.m_rpu,e,this.m_bufferer.m_absDistance*this.m_bufferer.m_ellipticToGeodesicMaxRatio,t,s,n)?(this.m_gnomonicCenterRad.setCoordsPoint2D(s),this.m_minGnomonicRadius=n[0],this.m_gnomonic=v(this.m_bufferer.m_gcs,t),!0):(this.m_gnomonic=null,!1)}}class G{getOperatorType(){return 10110}supportsCurves(){return!0}accelerateGeometry(e,t,s){return!1}canAccelerateGeometry(e){return!1}executeMany(e,t,s,n,i,r,m,a){if(m){const m=new T(e,t,s,n,i,!1,r,a);return(new o.p).executeMany(m,t,a)}return new T(e,t,s,n,i,!1,r,a)}execute(e,t,s,n,r,o,m){const a=new d.S([e]),h=[n],c=this.executeMany(a,t,s,h,r,!1,o,m).next();return c||(0,i.d)("geodesic buffer null output"),c}}class T extends n.G{constructor(e,t,s,n,o,m,a,h){super(),this.m_currentUnionEnvelope2D=new r.Envelope2D,this.m_index=-1,this.m_dindex=-1,this.m_progressTracker=h,m&&(0,i.t)(""),t||(0,i.a)(""),0===t.getCoordinateSystemType()&&(0,i.a)(""),this.m_inputGeoms=e,this.m_spatialReference=t,this.m_curveType=s,this.m_distances=n,this.m_convergenceOffset=o,this.m_bOutlineOnly=m,this.m_bUnion=a}next(){let e;for(;e=this.m_inputGeoms.next();)return(0,i.c)(e),this.m_index=this.m_inputGeoms.getGeometryID(),this.m_dindex+1<this.m_distances.length&&this.m_dindex++,this.geodesicBuffer(e,this.m_distances[this.m_dindex]);return null}getGeometryID(){return this.m_index}tock(){return!0}getRank(){return 1}geodesicBuffer(e,t){return function(e,t,s,n,r,o){n<Number.MAX_VALUE&&n>-Number.MAX_VALUE||(0,i.a)("Geodesic_bufferer.buffer - bad distance"),(0,i.c)(e);const m=(0,_.c)(e),a=m.getGeometryType();if((0,i.i)(a)){const e=m.getPointCount(),h=8e6;if(Math.abs(n)>h&&(e>50||a!==i.G.enumMultiPoint&&4===s&&e>2)){let e=m;const i=n>0?1:-1,a=7e6;let c=n,u=1;do{u++,c=(Math.abs(c)-a)*i}while(Math.abs(c)>h);c=n;for(let n=0;n<u-1;n++)e=p(e,t,s,a*i,r,u,o),c=(Math.abs(c)-a)*i;return e=p(e,t,s,c,r,u,o),e}}return p(m,t,s,n,r,1,o)}(e,this.m_spatialReference,this.m_curveType,t,this.m_convergenceOffset,this.m_progressTracker)}}}}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[4167,6061],{61691(e,t,n){n.d(t,{G:()=>s});class s{*[Symbol.iterator](){let e=this.next();for(;e;)yield e,e=this.next()}}},28879(e,t,n){n.r(t),n.d(t,{OperatorGeodeticLength:()=>m});var s=n(5482),o=n(55537),r=n(47591),a=n(88885),i=n(83661),c=n(15756),g=n(5247);class m{getOperatorType(){return 10311}supportsCurves(){return!0}accelerateGeometry(e,t,n){return!1}canAccelerateGeometry(e){return!1}execute(e,t,n,s){if(4===n)return(new r.O).execute(e,t,s);if(0===t.getCoordinateSystemType()&&(0,o.a)(""),(0,o.c)(e),e.isEmpty()||e.getDimension()<1)return 0;const m=t.getGCS(),u=(0,c._)();m.querySpheroidData(u);const l=u.majorSemiAxis,h=u.e2,y=m.getUnit().getUnitToBaseFactor();let x;const p=e.getGeometryType();if(p===o.G.enumPolygon?x=e.getBoundary():p===o.G.enumEnvelope?x=(0,a.c)(e):(0,o.f)(p)?(x=new a.a({vd:e.getDescription()}),x.addSegment(e,!0)):x=e,x.hasNonLinearSegments()&&(x=(new g.O).execute(x,0,t.getTolerance(0),0,s)),m!==t){const n=t.getSRToGCSTransform();if(t.isPannable()){x=(0,c.X)(x,t),p===o.G.enumPolyline&&x===e&&(x=e.clone());const n=new i.E;t.getPannableExtent().queryIntervalX(n);for(let e=0,t=x.getPointCount();e<t;e++){const t=x.getXY(e);t.x=(0,c.a2)(t.x,n),x.setXY(e,t)}}const r=x.createInstance();x=(0,c.a3)(n,x,r,s)?r:(new c.O).execute(x,n,s)}return this._ExecuteMultiPathGeodeticLength(x,n,l,h,y)}_ExecuteMultiPathGeodeticLength(e,t,n,o,r){const a={stack:[],error:void 0,hasError:!1};try{const i=(0,s.mS)(a,new c.M,!1);let g=0;const m=e.querySegmentIterator();for(;m.nextPath();)for(;m.hasNextSegment();){const e=m.nextSegment(),s=e.getStartXY(),a=e.getEndXY();s.scale(r),a.scale(r),c.N.geodeticDistance(n,o,s.x,s.y,a.x,a.y,i,null,null,t),g+=i.val}return g}catch(e){a.error=e,a.hasError=!0}finally{(0,s.hk)(a)}}}},47591(e,t,n){n.d(t,{O:()=>x});var s=n(55537),o=n(15756),r=n(88885),a=n(83661),i=n(95213),c=n(79187),g=n(5247),m=n(31139);function u(){return{m_pGcs:new a.P,m_xyz:new i.f,m_factor:Number.NaN,m_geoLength:Number.NaN,setValues:l,setLength:h,assign:y}}function l(e,t,n,s){this.m_factor=e,this.m_pGcs.assign(t),this.m_xyz.assign(s),this.m_geoLength=n}function h(e){this.m_geoLength=e}function y(e){this.m_pGcs.assign(e.m_pGcs),this.m_xyz.assign(e.m_xyz),this.m_factor=e.m_factor,this.m_geoLength=e.m_geoLength}class x{getOperatorType(){return 10315}supportsCurves(){return!0}accelerateGeometry(e,t,n){return!1}canAccelerateGeometry(e){return!1}_ExecuteShapePreservingLength(e,t,n,s,r){if(e.hasNonLinearSegments()&&(e=(new g.O).execute(e,0,t.getTolerance(0),0,r)),t.isPannable()){let s=90,a=-90;if(1===n.getUnit().getUnitToBaseFactor()&&(s*=Math.PI/180,a*=Math.PI/180),2===t.getCoordinateSystemType()){let e=null;const n=[0,0,0,0];e=t.getPECoordSys(),n[0]=0,n[1]=s,n[2]=0,n[3]=a,o.a0.geogToProj(e,2,n),s=n[1],a=n[3]}const i=new c.Envelope2D;e.queryEnvelope(i),i.ymin=a,i.ymax=s,e=(new m.O).execute(e,i,t,r)}else{const n=t.getPCSHorizon();if((e=(new o.g).execute(e,n,t,r))===n){const t=e.clone();e=t}}return e.isEmpty()?0:this._ExecuteIterativeApproach(e,t,n,s,1,r)}_ExecuteIterativeApproach(e,t,n,r,c,g){const m=(0,o._)();n.querySpheroidData(m);const l=m.majorSemiAxis,h=m.e2,y=n.getUnit().getUnitToBaseFactor(),x=(0,a.n)(u,40),f=(0,a.d)(40,Number.NaN),d=u(),G=u();let S;const P=[0,0,0,0],w=t.getPECoordSys(),C=new a.P,E=new a.P,v=new a.P,N=new a.P,T=new a.P;let L=0;const b=e.querySegmentIterator();for(;b.nextPath();)for(;b.hasNextSegment();){const e=b.nextSegment();C.assign(e.getStartXY()),E.assign(e.getEndXY()),2===t.getCoordinateSystemType()?(P[0]=C.x,P[1]=C.y,P[2]=E.x,P[3]=E.y,o.a0.projToGeog(w,2,P),v.x=P[0]*y,v.y=P[1]*y,N.x=P[2]*y,N.y=P[3]*y):(v.setCoordsPoint2D(C),N.setCoordsPoint2D(E),v.scale(y),N.scale(y));const n=new i.f,r=new i.f;p(l,h,v,n),p(l,h,N,r);let a=_(l,n,r);d.setValues(0,v,Number.NaN,n),G.setValues(1,N,a,r),S=c,x[0].assign(G),f[0]=c;let g=0;for(;;){g>128&&(0,s.d)("iterations exceeded");const n=.5*(d.m_factor+G.m_factor),r=e.getCoord2D(n);2===t.getCoordinateSystemType()?(P[0]=r.x,P[1]=r.y,o.a0.projToGeog(w,1,P),T.x=P[0]*y,T.y=P[1]*y):(T.setCoordsPoint2D(r),T.scale(y)),v.setCoordsPoint2D(d.m_pGcs),N.setCoordsPoint2D(G.m_pGcs);const m=new i.f;p(l,h,T,m);const u=_(l,d.m_xyz,m),C=_(l,G.m_xyz,m);a=G.m_geoLength,Number.isNaN(a)&&(a=_(l,d.m_xyz,G.m_xyz));const E=u+C,b=S===c&&E>=20&&Math.abs(E-a)>1e-8*(a+E);if(g+2<40&&(b||Math.abs(E-a)>0&&S>0))G.setLength(C),x[g].assign(G),G.setValues(n,T,u,m),x[++g].assign(G),b?(S=c,f[g]=c):(S--,f[g-1]=S,f[g]=S);else{if(L+=E,0===g)break;d.assign(G),G.assign(x[--g]),S=f[g]}}}return L}execute(e,t,n){if(t&&0!==t.getCoordinateSystemType()||(0,s.a)(""),e.isEmpty()||e.getDimension()<1)return 0;let a=null;const i=t.getGCS();i!==t&&(a=(0,o.a)(t,i,null));const c=e.getGeometryType();if(c===s.G.enumEnvelope){const s=new r.P;return s.addEnvelope(e,!1),this._ExecuteShapePreservingLength(s,t,i,a,n)}if((0,s.f)(c)){const s=new r.a;return s.addSegment(e,!0),this._ExecuteShapePreservingLength(s,t,i,a,n)}return this._ExecuteShapePreservingLength(e,t,i,a,n)}}function p(e,t,n,s){s.assign((0,o.Q)(e,t,n))}function _(e,t,n){const s=e,o=new i.f;o.setSub(t,n);const r=o.length();return 2*s*Math.asin(r/(2*s))}},76061(e,t,n){n.d(t,{S:()=>o});var s=n(61691);class o extends s.G{constructor(e){super(),this.m_iGeom=-1,this.m_aGeoms=e?e.slice():[]}next(){if(this.m_iGeom<this.m_aGeoms.length-1){const e=this.m_aGeoms[++this.m_iGeom];return this.m_aGeoms[this.m_iGeom]=null,e}return null}tock(){return!1}getGeometryID(){return this.m_iGeom}getRank(){return 1}}}}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[9597],{46466(t,e,n){n.d(e,{Dk:()=>y,aK:()=>E,yr:()=>C,oW:()=>$});var i=n(25971),s=n(25744);var o=n(34857);const r={},a=t=>{const e=t.join(","),n=r[e];if(void 0!==n)return n;const i=new Set,s=new MutationObserver(t=>i.forEach(e=>e(t)));globalThis.document&&s.observe(document.documentElement,{attributes:!0,attributeFilter:t,subtree:!0});const o={subscribe:t=>(i.add(t),()=>{i.delete(t),0===i.size&&(s.disconnect(),r[e]=void 0)})};return r[e]=o,o},c=(t,e,n)=>{const i=((t,e)=>{let n=t;for(;n;){const t=n.closest?.(e);if(t)return t;const i=n.getRootNode?.();if(i===globalThis.document)return;n=i.host}})(t,`[${e}]`);return i?.getAttribute(e)??n};var l=n(53436);const u="ar,bg,bs,ca,cs,da,de,el,en,es,et,fi,fr,he,hr,hu,id,it,ja,ko,lt,lv,nl,nb,no,pl,pt-BR,pt-PT,ro,ru,sk,sl,sr,sv,th,tr,uk,vi,zh-CN,zh-HK,zh-TW".split(","),d=new Set(u),h="en",p={pt:"pt-PT",nb:"no",nn:"no",zh:"zh-CN"},v={},f=async(t,e)=>{const n=`${e}${t}.json`;try{const t=await fetch(n);if(t.ok)return await t.json()}catch(t){return(0,l.Rm)("error","intl",`An unknown error occurred while fetching localization strings at ${n}`,{detail:{error:t}}),{}}return t===h?{}:await f(h,e)},b=t=>{const e=c(t,"lang",globalThis.navigator?.language||h);return{lang:e,t9nLocale:m(e)}},m=t=>{const[e,n]=t.split("-"),i=e.toLowerCase();let s=i;return n&&(s=`${i}-${n.toUpperCase()}`),s=p[s]??s,d.has(s)?s:n?m(i):h};var g=n(1055);const y=t=>k(void 0,t),E=t=>e=>k(e,t);class w extends i.C{constructor(t,e){super(t);const n=this.exports;try{(0,s.a)(this.component);const t=e(this.component,this),i=this.exports!==n;if((0,s.i)(t)){i||this.setProvisionalExports(t);const e=t.then(t=>{this.exports=t,super.catchUpLifecycle()}).catch(t=>{this.P.reject(t)});this.onLoad(async()=>await e)}else i&&void 0===t||(this.exports=t),queueMicrotask(()=>super.catchUpLifecycle())}catch(t){this.P.reject(t)}}catchUpLifecycle(){}}const k=(x=w,(...t)=>{const e=(0,s.d)(),n=new x(...t),o=n.exports;(0,s.b)(e.at(-1));const r=n.component.manager;r.W(n,o),n.watchExports(r.W.bind(r,n)),(0,s.j)(n);const a=[n.component,...e].reverse();return(0,i.t)(a,t=>void 0===t?void 0:((t,{host:e,key:n,isReactive:i},o)=>{const r=e,a=r[n]!==t.exports,c=r[n]!==o,l=o!==t.exports;if(a&&!c&&l&&(r[n]=t.exports),e===t.component){if(i){const e=t.component.manager;c&&e.W(t,r[n]),t.onUpdate(i=>{if(i.has(n)){const i=r[n];i!==t.exports&&e.W(t,i)}})}t.O=i?void 0:n}const u=t.component.constructor.elementProperties.get(n)?.readOnly;t.watchExports(()=>{r[n]!==t.exports&&(u?(0,s.f)(()=>{r[n]=t.exports}):r[n]=t.exports)})})(n,t,o),o)});var x;const $=(t,e)=>new L(t,e);class L extends i.C{#t;#e;#n;constructor(t,e){super(),o.S$||(this.#e=t,this.#n=e,this.#t=new MutationObserver(n=>{n.forEach(n=>{t.includes(n.attributeName)&&e.call(this.component,this.component.el.getAttribute(n.attributeName),n.oldValue,n.attributeName)})}))}hostConnected(){this.#e.forEach(t=>{this.component.el.hasAttribute(t)&&this.#n.call(this.component,this.component.el.getAttribute(t),null,t)}),this.#t.observe(this.component.el,{attributes:!0,attributeOldValue:!0,attributeFilter:this.#e})}hostDisconnected(){this.#t.disconnect()}}const C=t=>(e={})=>y((n,i)=>{const s=b(n.el),o={_lang:s.lang,_t9nLocale:s.t9nLocale,_loading:!0},r=n;i.onLifecycle(()=>((e,s,o,u)=>{let d;const h=()=>(async(t,e,n=t.localName.split("-").slice(1).join("-"))=>{const{lang:i,t9nLocale:s}=b(t),o=`${e}/${n}/t9n`,r=null===n?{}:await(async(t,e,n="")=>{const i=`${e}/${n}`,s=`${i}${t}.json`;return v[s]??(v[s]=f(t,i)),await v[s]})(s,o,"messages.");return{lang:i,t9nLocale:s,t9nStrings:r}})(e,t("./assets"),u).then(t=>{d?.lang===t.lang&&d.t9nLocale===t.t9nLocale&&d.t9nStrings===t.t9nStrings||(({t9nLocale:t,t9nStrings:e,lang:s})=>{const o={...e,_lang:s,_t9nLocale:t,_loading:!1};i.exports=o;const a=e.componentLabel;"string"==typeof a&&"label"in n&&null==n.label&&(n.label??=a),c(r.messageOverrides)})(t),d=t}).catch(t=>{(0,l.Rm)("error","intl","Error updating component locale state",{detail:{error:t}})});return queueMicrotask(h),((t,e,n)=>(0,a(e).subscribe)(e=>{const i=e.some(e=>((t,e)=>{let n=t;for(;n;){if(n===e)return!0;if(!n.parentNode)return!1;n=n.parentNode instanceof ShadowRoot?n.parentNode.host:n.parentNode}return!1})(t,e.target));i&&n()}))(e,["lang"],h)})(n.el,0,0,e.name));const c=t=>{const e=i.exports,n=e._original??e,s=I(n,t);t&&(s._original=n),i.exports=s};return"messageOverrides"in r&&i.onUpdate(t=>{t.has("messageOverrides")&&c(r.messageOverrides)}),e.blocking?(i.setProvisionalExports(o,!1),i.ready):o}),I=(t,e)=>{if(!e)return t;const n={...t};return Object.entries(e).forEach(([e,i])=>{void 0!==t[e]&&(n[e]="object"==typeof i?I(t[e],i):i??t[e])}),n};s.a,g.b,g.s},53250(t,e,n){function i(t){return"l"===t?"m":"s"}async function s(t){await t.componentOnReady(),await t.updateComplete}n.d(e,{c:()=>s,g:()=>i}),n(34857)},32491(t,e,n){n.d(e,{H:()=>x,c:()=>f,d:()=>g,f:()=>b,i:()=>y,r:()=>v,s:()=>p});var i=n(34857),s=n(27617);const o=["calcite-input","calcite-input-number","calcite-input-text","calcite-text-area"],r="hidden-form-input";function a(t){return"checked"in t}const c=new WeakMap,l=new WeakSet;function u(t){return"CALCITE-RADIO-BUTTON"===t.nodeName?(0,s.c)(t,"calcite-radio-button-group"):t}const d=new CustomEvent("calciteInvalid",{bubbles:!0,composed:!0});function h(t){const e=t?.target,n=e?.validationMessage,i=u(e?.parentElement);if(!i)return;const s=i?.nodeName?.toLowerCase(),r=s?.split("-");if(r.length<2||"calcite"!==r[0])return;t?.preventDefault(),"validity"in i&&(i.validity=e?.validity),i.dispatchEvent(d),function(t,{status:e,message:n,icon:i}){"status"in t&&(t.status=e),"validationIcon"in t&&"string"!=typeof t.validationIcon&&(t.validationIcon=i),"validationMessage"in t&&!t.validationMessage&&(t.validationMessage=n)}(i,{message:n,icon:!0,status:"invalid"});const a=function(t){return`${t.split("-").map((t,e)=>0===e?t:`${t[0].toUpperCase()}${t.slice(1)}`).join("")}${o.includes(t)?"Input":"Change"}`}(s);i.addEventListener(a,()=>{"status"in i&&(i.status="idle"),!("validationIcon"in i)||i.validationIcon&&!0!==i.validationIcon||(i.validationIcon=!1),"validationMessage"in i&&i.validationMessage===n&&(i.validationMessage=""),"validity"in i&&(i.validity=e?.validity)},{once:!0})}function p(t){const{formEl:e}=t;return!!e&&(e.addEventListener("invalid",h,!0),e.requestSubmit(),e.removeEventListener("invalid",h,!0),requestAnimationFrame(()=>{const t=e.querySelectorAll("[status=invalid]");for(const e of t)if(e?.validationMessage){e?.setFocus();break}}),!0)}function v(t){t.formEl?.reset()}function f(t){const{el:e,value:n}=t,i=b(t);if(!i||function(t,e){if((0,s.c)(e.parentElement,"[form]"))return!0;const n="calciteInternalFormComponentRegister";let i=!1;return t.addEventListener(n,t=>{i=t.composedPath().some(t=>l.has(t)),t.stopPropagation()},{once:!0}),e.dispatchEvent(new CustomEvent(n,{bubbles:!0,composed:!0})),i}(i,e))return;t.formEl=i,t.defaultValue=n,a(t)&&(t.defaultChecked=t.checked);const o=m.bind(t);i.addEventListener("reset",o),c.set(t.el,o),l.add(e)}function b(t){const{el:e,form:n}=t;return n?(0,s.q)(e,{id:n}):(0,s.c)(e,"form")}function m(){"status"in this&&(this.status="idle"),"validationIcon"in this&&(this.validationIcon=!1),"validationMessage"in this&&(this.validationMessage=""),a(this)?this.checked=this.defaultChecked:(this.value=this.defaultValue,this.onFormReset?.())}function g(t){const{el:e,formEl:n}=t;if(!n)return;const i=c.get(e);n.removeEventListener("reset",i),c.delete(e),t.formEl=null,l.delete(e)}const y="calciteInternalHiddenInputInput",E=t=>{t.target.dispatchEvent(new CustomEvent(y,{bubbles:!0}))},w=t=>t.removeEventListener("input",E);function k(t,e,n){const{defaultValue:i,disabled:s,form:o,name:r,required:c}=t;e.defaultValue=i,e.disabled=s,e.name=r,e.required=c,e.tabIndex=-1,o?e.setAttribute("form",o):e.removeAttribute("form"),a(t)?(e.checked=t.checked,e.defaultChecked=t.defaultChecked,e.value=t.checked?n||"on":""):e.value=n||"",t.syncHiddenFormInput?.(e);const l=u(t.el);if(l&&"validity"in l)for(const t in{...e?.validity})l.validity[t]=e.validity[t]}const x=({component:t})=>(function(t){const{el:e,formEl:n,name:s,value:o}=t,{ownerDocument:a}=e;if(i.S$)return;const c=e.querySelectorAll(`input[slot="${r}"]`);if(!n||!s)return void c.forEach(t=>{w(t),t.remove()});const l=Array.isArray(o)?o:[o],u=[],d=new Set;let h;c.forEach(e=>{const n=l.find(t=>t==e.value);null!=n?(d.add(n),k(t,e,n)):u.push(e)}),l.forEach(e=>{if(d.has(e))return;let n=u.pop();n||(n=a.createElement("input"),n.ariaHidden="true",n.slot=r),h||(h=a.createDocumentFragment()),h.append(n),n.addEventListener("input",E),k(t,n,e)}),h&&e.append(h),u.forEach(t=>{w(t),t.remove()})}(t),i.qy`<slot name=${r}></slot>`)},75206(t,e,n){n.d(e,{c:()=>s,u:()=>o});var i=n(34857);function s(t,e,n){if(i.S$)return;const s=function(t){class e extends window.MutationObserver{constructor(t){super(t),this.observedEntry=[],this.callback=t}observe(t,e){return this.observedEntry.push({target:t,options:e}),super.observe(t,e)}unobserve(t){const e=this.observedEntry.filter(e=>e.target!==t);this.observedEntry=[],this.callback(super.takeRecords(),this),this.disconnect(),e.forEach(t=>this.observe(t.target,t.options))}}return"intersection"===t?window.IntersectionObserver:"mutation"===t?e:window.ResizeObserver}(t);return new s(e,n)}function o(t,e,n,i){t&&(e&&t.unobserve(e),n&&(t instanceof MutationObserver?t.observe(n,i):t.observe(n)))}},3032(t,e,n){n.d(e,{u:()=>a});var i=n(46466),s=n(67145),o=n(34857);const r=({children:t,disabled:e})=>o.qy`<div class=${(0,s.CP)("interaction-container")} .inert=${e}>${t}</div>`,a=(0,i.aK)((t,e)=>(e.onUpdated(()=>function(t){if(t.disabled)return t.el.setAttribute("aria-disabled","true"),t.el.contains(document.activeElement)&&document.activeElement.blur(),void function(t){var e;t.el.click=c,(e=t.el).addEventListener("pointerdown",l,h),u.forEach(t=>e.addEventListener(t,d,h))}(t);(function(t){var e;delete t.el.click,(e=t.el).removeEventListener("pointerdown",l,h),u.forEach(t=>e.removeEventListener(t,d,h))})(t),t.el.removeAttribute("aria-disabled")}(t)),r));function c(){const{disabled:t}=this;t||HTMLElement.prototype.click.call(this)}function l(t){t.target.disabled&&t.preventDefault()}const u=["mousedown","mouseup","click"];function d(t){t.target.disabled&&(t.stopImmediatePropagation(),t.preventDefault())}const h={capture:!0}},5918(t,e,n){n.d(e,{u:()=>r});var i=n(46466),s=n(53250),o=n(27617);const r=()=>(0,i.aK)((t,e)=>{let n;function i(){n?.abort()}return e.onLoad(()=>{t.listen("focus",()=>{n=new AbortController,t.el.addEventListener("focusout",i,{signal:n.signal})})}),e.onDisconnected(()=>{t.el.removeEventListener("focusout",i)}),async(e,r)=>{if(t.disabled)return;const a=function(t){if(t)return function(t){return"target"in t&&("includeContainer"in t||"strategy"in t)}(t)?t:{target:t}}(e());if(!a)return;const{target:c,includeContainer:l,strategy:u}=a,d=(0,o.h)(t.el),h=d.activeElement;return await(0,s.c)(t),h!==d.activeElement||n&&!n?.signal.aborted?void 0:(t.el.removeEventListener("focus",i),(0,o.j)(c,l,u,t.el,r))}})},9223(t,e,n){n.d(e,{u:()=>o});var i=n(46466),s=n(50917);const o=(0,i.yr)(s.g)},7659(t,e,n){var i=n(50917),s=n(34857),o=n(67145),r=n(27617),a=n(75206);const c={trace:0,debug:1,info:2,warn:4,error:8,off:10};const l=t=>function(t,...e){(function(t){return c[t]>=c[(0,i.a)().logLevel]})(t)&&console[t]("%ccalcite","background: #007AC2; color: #fff; border-radius: 4px; padding: 2px 4px;",...e)}("error",t),u="flip-rtl",d="svg",h={},p={},v={s:16,m:24,l:32};function f({icon:t,scale:e}){const n=v[e],i=function(t){const e=!isNaN(Number(t.charAt(0))),n=t.split("-");if(n.length>0){const e=/[a-z]/i;t=n.map((t,n)=>t.replace(e,function(t,e){return 0===n&&0===e?t:t.toUpperCase()})).join("")}return e?`i${t}`:t}(t),s="F"===i.charAt(i.length-1);return`${s?i.substring(0,i.length-1):i}${n}${s?"F":""}`}function b(t){return h[t]}const m=s.AH`:host{display:inline-flex;color:var(--calcite-icon-color, var(--calcite-ui-icon-color, currentColor))}:host([scale=s]){inline-size:16px;block-size:16px;min-inline-size:16px;min-block-size:16px}:host([scale=m]){inline-size:24px;block-size:24px;min-inline-size:24px;min-block-size:24px}:host([scale=l]){inline-size:32px;block-size:32px;min-inline-size:32px;min-block-size:32px}.flip-rtl{transform:scaleX(-1)}.svg{display:block}:host([hidden]){display:none}[hidden]{display:none}`;class g extends o.WF{constructor(){super(...arguments),this.visible=!1,this.flipRtl=!1,this.icon=null,this.preload=!1,this.scale="m"}static{this.properties={pathData:[16,{},{state:!0}],visible:[16,{},{state:!0}],flipRtl:[7,{},{reflect:!0,type:Boolean}],icon:[3,{type:String},{reflect:!0}],preload:[7,{},{reflect:!0,type:Boolean}],scale:[3,{},{reflect:!0}],textLabel:1}}static{this.styles=m}connectedCallback(){if(super.connectedCallback(),this.preload)return this.visible=!0,void this.loadIconPathData();this.visible||this.waitUntilVisible(()=>{this.visible=!0,this.loadIconPathData()})}willUpdate(t){(t.has("icon")&&(this.hasUpdated||null!==this.icon)||t.has("scale")&&(this.hasUpdated||"m"!==this.scale))&&this.loadIconPathData()}disconnectedCallback(){super.disconnectedCallback(),this.intersectionObserver?.disconnect(),this.intersectionObserver=null}async loadIconPathData(){const{icon:t,scale:e,visible:n}=this;if(s.S$||!t||!n)return;const o={icon:t,scale:e},r=b(f(o))||await async function(t){const e=f(t),n=b(e);if(n)return n;p[e]||(p[e]=fetch((0,i.g)(`./assets/icon/${e}.json`)).then(t=>t.json()).catch(()=>(l(`${t.icon} (${t.scale}) icon failed to load`),"")));const s=await p[e];return h[e]=s,s}(o);t===this.icon&&(this.pathData=r)}waitUntilVisible(t){this.intersectionObserver=(0,a.c)("intersection",e=>{e.forEach(e=>{e.isIntersecting&&(this.intersectionObserver.disconnect(),this.intersectionObserver=null,t())})},{rootMargin:"50px"}),this.intersectionObserver?this.intersectionObserver.observe(this.el):t()}render(){const{el:t,flipRtl:e,pathData:n,scale:i,textLabel:a}=this,c=(0,r.g)(t),l=v[i],h=!!a,p=[].concat(n||"");return this.el.ariaHidden=(0,r.t)(!h),this.el.ariaLabel=h?a:null,this.el.role=h?"img":null,s.qy`<svg aria-hidden=true class=${(0,o.CP)({[u]:"rtl"===c&&e,[d]:!0})} fill=currentColor height=100% viewBox=${`0 0 ${l} ${l}`} width=100% xmlns=http://www.w3.org/2000/svg>${p.map(t=>"string"==typeof t?s.JW`<path d=${t??s.s6} />`:s.JW`<path d=${t.d??s.s6} opacity=${("opacity"in t?t.opacity:1)??s.s6} />`)}</svg>`}}(0,i.c)("calcite-icon",g)}}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[6558],{6558(e,t,n){n.r(t),n.d(t,{OperatorGeodeticArea:()=>q});var s=n(55537),i=n(88885),a=n(5247),_=n(15756),r=n(83661),h=n(79187),o=n(95213),m=n(31139),l=n(47591),u=n(5482),p=n(11878),c=n(16859);class g{constructor(e,t,n,s,i=100){this.m_startPt=e.clone(),this.m_endPt=t.clone(),this.m_cE2=s,this.m_cE=Math.sqrt(this.m_cE2),this.m_c1By2e=1/(2*this.m_cE),this.m_cRpu=n.getGCS().getUnit().getUnitToBaseFactor(),this.isPcs=2===n.getCoordinateSystemType(),this.PEProjcs=n.getPECoordSys(),this.m_points=(0,r.d)(2*i,Number.NaN)}setSegmentEndPoints(e,t){this.m_startPt.assign(e),this.m_endPt.assign(t)}makeFunctor(){return e=>{const t=[0,0];t[0]=this.m_startPt.x*(1-e)+this.m_endPt.x*e,t[1]=this.m_startPt.y*(1-e)+this.m_endPt.y*e,this.isPcs&&_.a0.projToGeogCenter(this.PEProjcs,1,t,0);const n=Math.sin(t[1]*this.m_cRpu);return 0===this.m_cE2?n:-Math.log((1-this.m_cE*n)/(1+this.m_cE*n))*this.m_c1By2e+n/(1-this.m_cE2*n*n)}}}function f(e,t,n,s,i){const r=(new a.O).execute(e,t,0,0,i);let o;o=s?(new _.O).execute(r,s,i):r;const m=1===n.getUnit().getUnitToBaseFactor()?Math.PI/180:1,l=new h.Envelope2D;o.queryEnvelope(l);const u=new h.Envelope2D,p=new h.Envelope2D,c=new h.Envelope2D;u.setCoords({xmin:l.xmin,ymin:75*m,xmax:l.xmax,ymax:90*m}),p.setCoords({xmin:l.xmin,ymin:-60*m,xmax:l.xmax,ymax:75*m}),c.setCoords({xmin:l.xmin,ymin:-90*m,xmax:l.xmax,ymax:-60*m}),u.inflateCoords(.01*u.width(),0),p.inflateCoords(.01*p.width(),0),c.inflateCoords(.01*c.width(),0);let g=0;return g+=d(o,u,n,i),g+=d(o,p,n,i),g+=d(o,c,n,i),g}function d(e,t,n,i){const a=(new m.O).execute(e,t,n,i);if(null!==a&&!a.isEmpty()){const e=new h.Envelope2D;a.queryEnvelope(e);const{first:t,second:o}=function(e,t){const n=function(e,t){const n=e.getUnit().getUnitToBaseFactor(),i=t.getCenter();i.scale(180*n/Math.PI);const a=new r.P;a.x=0,a.y=0;let h=0;if(0===h){i.y>45?(a.y=r.o,h=0):i.y<-45?(a.y=-r.o,h=1):i.x>=45&&i.x<135?(a.x=r.o,h=2):i.x>=135||i.x<-135?(a.x=r.o,h=3):i.x<-45&&i.x>=-135?(a.x=-r.o,h=4):(a.x=0,h=5);const e=n*Math.sqrt((0,r.a)(t.xmin-t.xmax)+(0,r.a)(t.ymin-t.ymax)),s=a.clone(),_=t.getCenter();if(_.scale(n),h<2&&(s.x=_.x),r.P.distance(s,_)+.5*e>r.o)return null}const o=E[h];if(null!==o&&o.getGCS().equalHorizontal(e))return o;const m=e.getText(),l=a.x,u=a.y;let p=0,c=-1;6!==h?c=_.ao.PE_PRJ_LAMBERT_AZIMUTHAL_EQAREA:((0,s.g)(false),p=0,c=_.ao.PE_PRJ_CYLINDRICAL_EQAREA);const g=(0,_.aD)("EqualAreaPCS");let f;c===_.ao.PE_PRJ_LAMBERT_AZIMUTHAL_EQAREA?f=`PROJCS["${g}",${m},PROJECTION["Lambert_Azimuthal_Equal_Area"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",${l}],PARAMETER["Latitude_of_Origin",${u}],UNIT["Meter",1.0]]`:c===_.ao.PE_PRJ_CYLINDRICAL_EQAREA?f=`PROJCS["${g}",${m},PROJECTION["Cylindrical_Equal_Area"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",${l}],PARAMETER["Standard_Parallel_1",${p}],PARAMETER["Latitude_of_Origin",${u}],UNIT["Meter",1.0]]`:(0,s.d)("getEqualAreaPcsFixed");const d=(0,_.aE)(f);return E[h]&&E[h].destroy(),E[h]=d,d}(e,t);if(null!==n)return(0,r.k)(n,!1);const i=e.getText(),a=e.getUnit().getUnitToBaseFactor(),h=(t.xmin+t.width()/2)*a,o=(t.ymin+t.height()/2)*a;let m=0,l=0,u=-1;t.ymin*a>=75*Math.PI/180||t.ymax*a<=-60*Math.PI/180?u=_.ao.PE_PRJ_LAMBERT_AZIMUTHAL_EQAREA:t.ymin>0||t.ymax<0?(m=(t.ymin+1/3*t.height())*a,l=(t.ymin+2/3*t.height())*a,u=_.ao.PE_PRJ_ALBERS):(m=(t.ymin+2/3*t.height())*a,u=_.ao.PE_PRJ_CYLINDRICAL_EQAREA);const p=(0,_.aD)("EqualAreaPCS");let c;return u===_.ao.PE_PRJ_LAMBERT_AZIMUTHAL_EQAREA?c=`PROJCS["${p}",${i},PROJECTION["Lambert_Azimuthal_Equal_Area"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",${h}],PARAMETER["Latitude_of_Origin",${o}],UNIT["Meter",1.0]]`:u===_.ao.PE_PRJ_ALBERS?c=`PROJCS["${p}",${i},PROJECTION["Albers"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",${h}],PARAMETER["Standard_Parallel_1",${m}],PARAMETER["Standard_Parallel_2",${l}],PARAMETER["Latitude_of_Origin",${o}],UNIT["Meter",1.0]]`:u===_.ao.PE_PRJ_CYLINDRICAL_EQAREA?c=`PROJCS["${p}",${i},PROJECTION["Cylindrical_Equal_Area"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",${h}],PARAMETER["Standard_Parallel_1",${m}],PARAMETER["Latitude_of_Origin",${o}],UNIT["Meter",1.0]]`:(0,s.d)("getEqualAreaPCSInstance"),(0,r.k)((0,_.aE)(c),!0)}(n,e),m=(0,_.a)(n,t,null),l=(new _.O).execute(a,m,i).calculateArea2D();return o&&t.destroy(),l}return 0}const E=[null,null,null,null,null,null,null];class P{getOperatorType(){return 10314}supportsCurves(){return!0}accelerateGeometry(e,t,n){return!1}canAccelerateGeometry(e){return!1}execute(e,t,n){if(0===t.getCoordinateSystemType()&&(0,s.a)(""),e.isEmpty()||e.getDimension()<2)return 0;if((0,s.c)(e),e.getGeometryType()===s.G.enumEnvelope){const s=new i.P;return s.addEnvelope(e,!1),this.execute(s,t,n)}let u=e;e.getDescription().getAttributeCount()>1&&(u=e.clone(),u.dropAllAttributes());const p=(new a.O).execute(u,0,t.getTolerance(0),0,n);let c=null;const d=t.getGCS();d!==t&&(c=(0,_.a)(t,d));let E=(new _.f).execute(p,t,!1,n);return E.isEmpty()?0:(E===e&&(E=e.clone()),t.isPannable()?function(e,t,n){const s=new h.Envelope2D;e.queryEnvelope(s);const a=(0,o.c)(t,s,!0).total(),l=t.getPannableExtent();l.xmin=s.xmin-10*a,l.xmax=s.xmax+10*a;const u=(new m.O).execute(e,l,t,n).getImpl().querySegmentIterator();u.stripAttributes();const p=(0,_._)();t.querySpheroidData(p);const c=p.e2,f=0===c?2:1,d=new r.P(0,0),E=new r.P(0,0),P=new r.K(0),S=new g(d,E,t,c,100);for(;u.nextPath();)for(;u.hasNextSegment();){const e=u.nextSegment();d.assign(e.getStartXY()),E.assign(e.getEndXY()),S.setSegmentEndPoints(d,E);const t=(0,i.x)(6,0,1,1e-12,1e-15,S.makeFunctor());P.pe((E.x-d.x)*t)}const y=p.majorSemiAxis;return f*y*y*(1-c)*Math.PI*P.getResult()/t.getPannableExtent().width()}(E,t,n):function(e,t,n,s,i){const a=function(e,t,n){const s=e.calculateLength2D(),i=(new l.O).execute(e,t,n)/25e3,a=s/e.getSegmentCount()*2;let _=Math.min(a,s/i);return 0===_&&(_=1),(0,r.k)(_,s/_)}(e,t,i);let _=f(e,a.first,n,s,i),h=1,o=0,m=0;do{if(h++,a.first*=.5,a.first<50*t.getTolerance(0))return _;a.second*=2,m=f(e,a.first,n,s,i),o=Math.abs(m-_),_=m}while(Math.abs(_)>1&&o>1e-8*Math.abs(_)&&(a.second<65e3&&h<8||h<4));return m}(E,t,d,c,n))}}function S(){return{m_p_PCS:new r.P,m_factor:Number.NaN,setValues:y,assign:x}}function y(e,t){this.m_factor=e,this.m_p_PCS.assign(t)}function x(e){this.m_factor=e.m_factor,this.m_p_PCS.assign(e.m_p_PCS)}class A{constructor(e,t,n,s){this.m_ptStart=new o.f,this.m_ptEnd=new o.f,this.m_ptStart.assign(t),this.m_ptEnd.assign(n),this.m_deltaX=this.m_ptEnd.x-this.m_ptStart.x,this.m_deltaY=this.m_ptEnd.y-this.m_ptStart.y,this.m_e=Math.sqrt(e),this.m_e2=e,this.m_c1MinusE2=1-e;const i=Math.sin(s);let a;a=0===this.m_e2?2*i:i*((0,r.y)(this.m_e*i)+1/(1-this.m_e2*i*i)),this.m_baseA=a}setSegmentEndPoints(e,t){this.m_ptStart.assign(e),this.m_ptEnd.assign(t),this.m_deltaX=this.m_ptEnd.x-this.m_ptStart.x,this.m_deltaY=this.m_ptEnd.y-this.m_ptStart.y}makeFunctor(){return e=>{const t=1-e,n=t*this.m_ptStart.x+e*this.m_ptEnd.x,s=t*this.m_ptStart.y+e*this.m_ptEnd.y,i=t*this.m_ptStart.z+e*this.m_ptEnd.z,a=n*n+s*s,_=i/Math.sqrt(i*i+this.m_c1MinusE2*this.m_c1MinusE2*a);let h;return h=0===this.m_e2?2*_:_*((0,r.y)(this.m_e*_)+1/(1-this.m_e2*_*_)),(this.m_deltaY*n-this.m_deltaX*s)/a*(h-this.m_baseA)}}}function R(){return{sin_phi:Number.NaN,one_p_sin_phi:Number.NaN,one_m_sin_phi:Number.NaN,one_m_e_2_sin_2_phi:Number.NaN,sin_half_phi_pf:Number.NaN,sin_half_phi_pz:Number.NaN,sin_half_asin_e_sin_phi_pf:Number.NaN,sin_half_asin_e_sin_phi_pz:Number.NaN,atanh_sin_phi:Number.NaN,atanh_esin_phi:Number.NaN,make_negative:!1,initialize:M,changeSign:C,assign:T,clone:w}}function M(e,t,n,s){const i=.5*e;this.sin_phi=Math.sin(e);const a=t*this.sin_phi,_=.5*Math.asin(a);this.one_p_sin_phi=1+this.sin_phi,this.one_m_sin_phi=1-this.sin_phi,this.one_m_e_2_sin_2_phi=(1+a)*(1-a),this.sin_half_phi_pf=Math.sin(i+n),this.sin_half_phi_pz=Math.sin(i+s),this.sin_half_asin_e_sin_phi_pf=Math.sin(_+n),this.sin_half_asin_e_sin_phi_pz=Math.sin(_+s),this.atanh_sin_phi=Math.log(this.sin_half_phi_pf/this.sin_half_phi_pz),this.atanh_esin_phi=Math.log(this.sin_half_asin_e_sin_phi_pf/this.sin_half_asin_e_sin_phi_pz)}function C(){this.sin_phi=-this.sin_phi;let e=this.one_p_sin_phi;this.one_p_sin_phi=this.one_m_sin_phi,this.one_m_sin_phi=e,e=this.sin_half_phi_pf,this.sin_half_phi_pf=this.sin_half_phi_pz,this.sin_half_phi_pz=e,e=this.sin_half_asin_e_sin_phi_pf,this.sin_half_asin_e_sin_phi_pf=this.sin_half_asin_e_sin_phi_pz,this.sin_half_asin_e_sin_phi_pz=e,this.atanh_sin_phi=-this.atanh_sin_phi,this.atanh_esin_phi=-this.atanh_esin_phi}function T(e){this.sin_phi=e.sin_phi,this.one_p_sin_phi=e.one_p_sin_phi,this.one_m_sin_phi=e.one_m_sin_phi,this.one_m_e_2_sin_2_phi=e.one_m_e_2_sin_2_phi,this.sin_half_phi_pf=e.sin_half_phi_pf,this.sin_half_phi_pz=e.sin_half_phi_pz,this.sin_half_asin_e_sin_phi_pf=e.sin_half_asin_e_sin_phi_pf,this.sin_half_asin_e_sin_phi_pz=e.sin_half_asin_e_sin_phi_pz,this.atanh_sin_phi=e.atanh_sin_phi,this.atanh_esin_phi=e.atanh_esin_phi,this.make_negative=e.make_negative}function w(){return{...this}}class N{constructor(e,t,n){this.m_transformPCS2GCS=null,this.m_scaleToRadians=new p.T,this.m_scaleToDegrees=new p.T,this.m_progressTracker=n,(0,s.g)(4!==t),this.m_curveType=t,this.m_inputSR=e,e&&0!==e.getCoordinateSystemType()||(0,s.a)(""),this.m_inputGCS=e.getGCS(),this.m_a=0,this.m_eSquared=0,this.m_b=0,this.m_rpu=0}executePolygonGeodeticArea(e){let t,n=e.clone();if(n.dropAllAttributes(),e.hasNonLinearSegments()&&(n=(new a.O).execute(n,0,this.m_inputSR.getTolerance(0),0,this.m_progressTracker)),this.m_inputSR.isPannable()){const e=new h.Envelope2D;n.queryEnvelope(e);const t=this.m_inputSR.getPannableExtent();if(!t.containsEnvelope(e)){const s=t.getCenterX()-e.getCenterX(),i=new p.T;i.setShiftCoords(s,0),n.applyTransformation(i),e.move(s,0);const a=new r.E;t.queryIntervalX(a);const h=new r.E;e.queryIntervalX(h),n=a.contains(h)?(0,_.X)(n,this.m_inputSR):(new _.O).foldInto360RangeGeodetic(n,this.m_inputSR,this.m_curveType)}}if(this.m_transformPCS2GCS?(n=(new _.f).execute(n,this.m_inputSR,!1,this.m_progressTracker),t=n.createInstance(),(0,_.a3)(this.m_transformPCS2GCS,n,t,this.m_progressTracker)||(t=(new _.O).execute(n,this.m_transformPCS2GCS,this.m_progressTracker))):t=(new _.f).execute(n,this.m_inputGCS,!1,this.m_progressTracker),t.isEmpty())return 0;if(1===this.m_curveType){const e=(0,_._)();return this.m_inputGCS.querySpheroidData(e),this.m_a=e.majorSemiAxis,this.m_eSquared=e.e2,this.loxodromeArea(t)}const s=t.getImpl();this.m_rpu=this.m_inputGCS.getUnit().getUnitToBaseFactor(),this.m_scaleToRadians.setScale(this.m_rpu),s.applyTransformation(this.m_scaleToRadians),this.m_scaleToDegrees=this.m_scaleToRadians,this.m_scaleToDegrees.invertThis();const i=(0,_._)();if(this.m_inputGCS.querySpheroidData(i),this.m_a=i.majorSemiAxis,this.m_b=i.minorSemiAxis,this.m_eSquared=i.e2,2===this.m_curveType)return this.executeClippedPolygonGreatEllipticArea(t);{const e={stack:[],error:void 0,hasError:!1};try{const n=_.aF.unit(9101),s=this.m_inputGCS.getPECoordSys(),i=(0,u.mS)(e,s.cloneAlterUnits(n),!1);let a,r,h=this.executeClippedPolygonGeodeticArea(t,i,0),o=0;do{o++,a=this.executeClippedPolygonGeodeticArea(t,i,o),r=Math.abs(a-h),h=a}while(Math.abs(a)>1&&r>1e-8*Math.abs(a)&&o<7);return a}catch(t){e.error=t,e.hasError=!0}finally{(0,u.hk)(e)}}}executeClippedPolygonGeodeticArea(e,t,n){const s={stack:[],error:void 0,hasError:!1};try{const i=new h.Envelope2D;e.queryEnvelope(i);const a=(0,u.mS)(s,this.getEqualAreaPCSInstance(t,i),!1),o=e.clone();(0,_.aG)(a,o);const m=50,l=o.getImpl().getAttributeStreamRef(0),p=e.getImpl().getAttributeStreamRef(0),c=(0,u.mS)(s,new _.M,!1),g=(0,u.mS)(s,new _.M,!1),f=40,d=[0,0],E=(0,r.n)(S,f),P=(0,r.d)(f,-1),y=S(),x=S();let A,R;const M=a;let C=o.calculateArea2D();const T=new r.K(0),w=.5*Math.PI,N=1e-10*Math.abs(C)+1e-6,q=e.getPathCount();let b,v,I,L;const z=new r.P,D=new r.P,G=new r.P,O=new r.P,k=new r.P,$=new r.P;let F,U;for(v=e.getPathStart(0),b=0;b<q;b++,v=I)for(I=e.getPathEnd(b),l.queryPoint2D(I-1<<1,G),p.queryPoint2D(I-1<<1,z),Math.abs(z.y)>w&&(z.y=(0,r.f)(w,z.y)),L=v;L<I;L++,G.assign(O),z.assign(D)){if(l.queryPoint2D(L<<1,O),p.queryPoint2D(L<<1,D),Math.abs(D.y)>w&&(D.y=(0,r.f)(w,D.y)),F=r.P.distance(G,O),F<m||0===z.y&&0===D.y)continue;_.N.geodeticDistance(this.m_a,this.m_eSquared,z.x,z.y,D.x,D.y,c,g,null,this.m_curveType);const e=c.val,t=g.val;for(y.setValues(0,G),x.setValues(1,O),R=n,E[0].assign(x),P[0]=n,A=0;A>=0;){U=.5*(y.m_factor+x.m_factor),_.N.geodeticCoordinate(this.m_a,this.m_eSquared,z.x,z.y,e*U,t,c,g,this.m_curveType),k.x=c.val,k.y=g.val,d[0]=k.x,d[1]=k.y,_.a0.geogToProj(M,1,d),$.x=d[0],$.y=d[1];const n=.5*-$.offset(y.m_p_PCS,x.m_p_PCS)*r.P.distance(y.m_p_PCS,x.m_p_PCS);if(T.pe(n),Math.abs(n)>N||Math.abs(n)>0&&R>0)x.setValues(U,$),A++,E[A].assign(x),Math.abs(n)<=N?(R--,P[A-1]=R,P[A]=R):(R=P[A-1],P[A]=R);else{if(A<=0)break;y.assign(x),A--,x.assign(E[A]),R=P[A]}}}return C+=T.getResult(),Math.abs(C)}catch(e){s.error=e,s.hasError=!0}finally{(0,u.hk)(s)}}executeClippedPolygonGreatEllipticArea(e){const t=[],n=[],s=new r.P,i=new r.P,a=(0,_.Q)(1,this.m_eSquared,new r.P(0,.5*Math.PI)),m=new r.K(0),l=new r.K(0),u=new r.K(0),p=new o.f,c=new o.f,g=new h.Envelope2D;e.queryLooseEnvelope(g);let f=0;g.containsCoords(g.xmin,0)||(f=Math.abs(g.ymin)<Math.abs(g.ymax)?g.ymin:g.ymax);const d=new A(this.m_eSquared,p,c,f),E=this.m_a*this.m_a,P=e.getImpl().querySegmentIterator();for(P.stripAttributes();P.nextPath();)for(;P.hasNextSegment();){const e=P.nextSegment();s.assign(e.getStartXY()),i.assign(e.getEndXY()),i.x-s.x>Math.PI?s.x+=2*Math.PI:i.x-s.x<-Math.PI&&(i.x+=2*Math.PI),this.splitSegmentCrossingItegralThreshold(e,t,n);for(let e of t)p.assign((0,_.Q)(this.m_a,this.m_eSquared,e.getStartXY())),c.assign((0,_.Q)(this.m_a,this.m_eSquared,e.getEndXY())),d.setSegmentEndPoints(p,c),this.adaptiveIntegrationWithRomberg(d,m);for(let e of n){let t=e.getStartXY(),n=e.getEndXY(),s=f;t.y<0&&(n=(0,r.c)(t,t=n),t.y=-t.y,n.y=-n.y,s=-s);const i=(0,_.Q)(1,this.m_eSquared,t),h=(0,_.Q)(1,this.m_eSquared,n),m=Math.min(t.y,n.y),p=(0,_.aH)(this.m_eSquared,t.x,n.x,s,m);l.pe(p);const c=Math.abs((0,_.aH)(this.m_eSquared,t.x,n.x,m,r.o)),g=new o.f;g.setSub(i,a);const d=new o.f;d.setSub(h,a);const P=new o.f;P.setCrossProductVector(g,d);let S=E*(c-.5*P.length());S=(0,r.f)(S,n.x-t.x),u.pe(S)}t.length=0,n.length=0}return u.getResult()+E*(.5*(1-this.m_eSquared)*m.getResult()+l.getResult())}getEqualAreaPCSInstance(e,t){const n=t.getCenterX();let s,i;const a=t.height();let h,o;(h=t.ymin>45*Math.PI/180||t.ymax<45*-Math.PI/180)?s=(0,r.f)(.5*Math.PI,t.getCenterY()):(s=t.getCenterY(),i=t.ymin+a*(2/3));const m=(0,_.aD)("EqualAreaPCS"),l=e.toString();return o=h?_.aF.fromString(_.ao.PE_TYPE_PROJCS,`PROJCS["${m}", ${l}, PROJECTION["Lambert_Azimuthal_Equal_Area"],PARAMETER["False_Easting",0],PARAMETER["False_Northing", 0],PARAMETER["Central_Meridian", ${n}], PARAMETER["Latitude_of_Origin", ${s}], UNIT["Meter",1.0]]`,!0):_.aF.fromString(_.ao.PE_TYPE_PROJCS,`PROJCS["${m}", ${l}, PROJECTION["Cylindrical_Equal_Area"],PARAMETER["False_Easting", 0],PARAMETER["False_Northing", 0],PARAMETER["Central_Meridian", ${n}],PARAMETER["Standard_Parallel_1", ${i}],PARAMETER["Latitude_of_Origin", ${s}],UNIT["Meter",1.0]]`,!0),o}splitSegmentCrossingItegralThreshold(e,t,n){const s=100,a=400,h=(0,_.Q)(this.m_a,this.m_eSquared,new r.P(0,r.o)),m=(0,_.Q)(this.m_a,this.m_eSquared,new r.P(0,-r.o)),l=this.splitSegmentPassingThroughPole(e);for(let e of l){const l=e.getStartXY(),u=e.getEndXY(),p=(0,_.Q)(this.m_a,this.m_eSquared,l),c=(0,_.Q)(this.m_a,this.m_eSquared,u),g=new r.P,f=new o.f;let d=o.f.sqrDistance(h,p),E=o.f.sqrDistance(p,c);if(d<=s){if(!(E>a)){n.push(new i.L({start:l,end:u}));continue}f.assign(c.sub(p)),f.normalizeThis(),f.assign(p.add(f.mul(20))),g.assign((0,_.Z)(this.m_a,this.m_eSquared,f)),n.push(new i.L({start:l,end:g})),l.assign(g)}if(p.assign((0,_.Q)(this.m_a,this.m_eSquared,l)),d=o.f.sqrDistance(h,c),E=o.f.sqrDistance(p,c),d<=s){if(!(E>a)){n.push(new i.L({start:l,end:u}));continue}f.assign(c.sub(p)),f.normalizeThis(),f.assign(c.sub(f.mul(20))),g.assign((0,_.Z)(this.m_a,this.m_eSquared,f)),n.push(new i.L({start:g,end:u})),u.assign(g)}if(p.assign((0,_.Q)(this.m_a,this.m_eSquared,l)),c.assign((0,_.Q)(this.m_a,this.m_eSquared,u)),d=o.f.sqrDistance(m,p),E=o.f.sqrDistance(p,c),d<=s){if(!(E>a)){n.push(new i.L({start:l,end:u}));continue}f.assign(c.sub(p)),f.normalizeThis(),f.assign(p.add(f.mul(20))),g.assign((0,_.Z)(this.m_a,this.m_eSquared,f)),n.push(new i.L({start:l,end:g})),l.assign(g)}if(p.assign((0,_.Q)(this.m_a,this.m_eSquared,l)),c.assign((0,_.Q)(this.m_a,this.m_eSquared,u)),d=o.f.sqrDistance(m,c),E=o.f.sqrDistance(p,c),d<=s){if(!(E>a)){n.push(new i.L({start:l,end:u}));continue}f.assign(c.sub(p)),f.normalizeThis(),f.assign(c.sub(f.mul(20))),g.assign((0,_.Z)(this.m_a,this.m_eSquared,f)),n.push(new i.L({start:g,end:u})),u.assign(g)}t.push(new i.L({start:l,end:u}))}}splitSegmentPassingThroughPole(e){const t={stack:[],error:void 0,hasError:!1};try{const n=[],s=new o.f,a=new o.f,h=new o.f,m=new r.P,l=20,p=3.124139361,g=10,f=e.getStartXY(),d=e.getEndXY(),E=(0,u.mS)(t,new _.M,!1);if(_.N.geodeticDistance(this.m_a,this.m_eSquared,f.x,f.y,d.x,d.y,E,null,null,2),Math.abs(d.x-f.x)>p&&E.val>l){const e=new c.a(new r.P(0,90),f.divide(this.m_rpu),d.divide(this.m_rpu),this.m_inputGCS,2,2);let t=(0,_.U)(e.makeFunctor(),0,1,1e-10);if(t.second<=g&&t.first>0&&t.first<1)return s.assign((0,_.Q)(this.m_a,this.m_eSquared,f)),a.assign((0,_.Q)(this.m_a,this.m_eSquared,d)),(0,r.x)(s,a,t.first,h),m.assign((0,_.Z)(this.m_a,this.m_eSquared,h)),n.push(new i.L({start:f,end:m})),n.push(new i.L({start:m,end:d})),n;if(e.setPointDistFrom(new r.P(0,-90)),t=(0,_.U)(e.makeFunctor(),0,1,1e-10),t.second<=g&&t.first>0&&t.first<1)return s.assign((0,_.Q)(this.m_a,this.m_eSquared,f)),a.assign((0,_.Q)(this.m_a,this.m_eSquared,d)),(0,r.x)(s,a,t.first,h),m.assign((0,_.Z)(this.m_a,this.m_eSquared,h)),n.push(new i.L({start:f,end:m})),n.push(new i.L({start:m,end:d})),n}return n.push(new i.L({start:f,end:d})),n}catch(e){t.error=e,t.hasError=!0}finally{(0,u.hk)(t)}}adaptiveIntegrationWithRomberg(e,t){const n=e.makeFunctor();let s=0,a=1,_=n(s),r=n(a);const h=1e-17,o=1e-14;let m=(s+a)/2,l=n(m),u=Math.abs(l-_),p=Math.abs(r-l),c=0;for(;c++<32&&(u/p<.1||p/u<.1);)u<p?(t.pe((0,i.x)(5,s,m,o,h,n)),s=m,_=l):(t.pe((0,i.x)(5,m,a,o,h,n)),a=m,r=l),m=(s+a)/2,l=Math.abs(n(m)),u=Math.abs(l-_),p=Math.abs(r-l);t.pe((0,i.x)(5,s,a,o,h,n))}loxodromeAreaHemi(e,t,n,s,i){const a=n.clone(),_=i.clone();let h,o,m,l,u,p,c,g,f,d,E,P,S,y,x,A;return a.make_negative&&a.changeSign(),_.make_negative&&_.changeSign(),E=s-t,1===Math.abs(a.sin_phi)||1===Math.abs(_.sin_phi)?e.half_qp*E:a.sin_phi===_.sin_phi?(d=.5*e.one_m_e_2*a.sin_phi*(1/a.one_m_e_2_sin_2_phi+(0,r.y)(e.e*a.sin_phi))*E,d):(x=Math.log(_.sin_half_phi_pf*a.sin_half_phi_pz/(_.sin_half_phi_pz*a.sin_half_phi_pf)),A=Math.log(_.sin_half_asin_e_sin_phi_pf*a.sin_half_asin_e_sin_phi_pz/(_.sin_half_asin_e_sin_phi_pz*a.sin_half_asin_e_sin_phi_pf)),1===this.m_eSquared?(u=0,h=.5*(x+_.sin_phi/_.one_m_e_2_sin_2_phi-a.sin_phi/a.one_m_e_2_sin_2_phi),o=0):(u=-2*e.atanh_e_over_e*(Math.log(_.one_p_sin_phi/a.one_p_sin_phi)-e.e*A),h=(x-e.e*A)/e.one_m_e_2,o=(Math.log(_.one_m_e_2_sin_2_phi/a.one_m_e_2_sin_2_phi)+u/e.atanh_e_over_e)/e.one_m_e_2),m=-A*(a.atanh_esin_phi+_.atanh_esin_phi),l=1/a.one_m_e_2_sin_2_phi-1/_.one_m_e_2_sin_2_phi,p=(0,r.z)(_.one_m_sin_phi/e.one_p_e,e.e)-(0,r.z)(a.one_m_sin_phi/e.one_p_e,e.e),c=(0,r.z)(_.one_p_sin_phi/e.one_p_e,e.e)-(0,r.z)(a.one_p_sin_phi/e.one_p_e,e.e),g=(0,r.z)(a.one_m_sin_phi/-e.one_m_e,e.e)-(0,r.z)(_.one_m_sin_phi/-e.one_m_e,e.e),f=(0,r.z)(a.one_p_sin_phi/-e.one_m_e,e.e)-(0,r.z)(_.one_p_sin_phi/-e.one_m_e,e.e),d=.25/h*(o+m+l+u+.5*(p+c+g+f)),d+=e.half_qp,P=.5*e.one_m_e_2*a.sin_phi*(1/a.one_m_e_2_sin_2_phi+(0,r.y)(e.e*a.sin_phi)),S=.5*e.one_m_e_2*_.sin_phi*(1/_.one_m_e_2_sin_2_phi+(0,r.y)(e.e*_.sin_phi)),S<P&&(y=P,P=S,S=y),d<P&&(d=P),d>S&&(d=S),d*=E,d)}loxodromeArea(e){const t=Math.PI/180;let n=0;const s={e:Number.NaN,one_p_e:Number.NaN,one_m_e:Number.NaN,one_m_e_2:Number.NaN,atanh_e_over_e:Number.NaN,half_qp:Number.NaN,f:Number.NaN,z:Number.NaN},i=R(),a=R();s.e=Math.sqrt(this.m_eSquared),s.one_p_e=1+s.e,s.one_m_e=1-s.e,s.one_m_e_2=1-this.m_eSquared,s.atanh_e_over_e=(0,r.y)(s.e),this.m_eSquared>=1?s.half_qp=1:s.half_qp=.5*(1+s.atanh_e_over_e*s.one_m_e_2),s.f=.25*Math.PI,s.z=.75*Math.PI,a.initialize(0,s.e,s.f,s.z);const _=e.getPathCount(),h=new r.P,o=new r.P,m=e.getImpl().getAttributeStreamRef(0);for(let r=0;r<_;r++){const _=e.getPathStart(r),l=e.getPathEnd(r);if(!(l-_<=1)){m.queryPoint2D(2*(l-1),h);for(let e=_;e<l;e++){m.queryPoint2D(2*e,o);const r=h.y*t,l=o.y*t;if(e===_?(i.initialize(r,s.e,s.f,s.z),i.make_negative=!1):i.assign(a),a.initialize(l,s.e,s.f,s.z),a.make_negative=!1,h.y*o.y<0){if(h.y>=90&&o.y<=-90||o.y>=90&&h.y<=-90)return Number.NaN;const e=R();e.initialize(0,s.e,s.f,s.z),e.make_negative=!1;const _=i.atanh_sin_phi-s.e*i.atanh_esin_phi,m=a.atanh_sin_phi-s.e*a.atanh_esin_phi,l=(m*h.x-_*o.x)/(m-_);r<0?(i.make_negative=!0,n-=this.loxodromeAreaHemi(s,h.x*t,i,l*t,e),i.make_negative=!1,n+=this.loxodromeAreaHemi(s,l*t,e,o.x*t,a)):(n+=this.loxodromeAreaHemi(s,h.x*t,i,l*t,e),a.make_negative=!0,n-=this.loxodromeAreaHemi(s,l*t,e,o.x*t,a),a.make_negative=!1)}else h.y>=0?n+=this.loxodromeAreaHemi(s,h.x*t,i,o.x*t,a):(i.make_negative=!0,a.make_negative=!0,n-=this.loxodromeAreaHemi(s,h.x*t,i,o.x*t,a),i.make_negative=!1,a.make_negative=!1);h.assign(o)}}}return this.m_a*n*this.m_a}calculate(e){if(e.isEmpty()||e.getDimension()<2)return 0;if(e.getGeometryType()===s.G.enumEnvelope){const t=new i.P;return t.addEnvelope(e,!1),this.calculate(t)}return this.m_inputSR!==this.m_inputGCS&&null===this.m_transformPCS2GCS&&(this.m_transformPCS2GCS=(0,_.a)(this.m_inputSR,this.m_inputGCS,null)),this.executePolygonGeodeticArea(e)}}class q{getOperatorType(){return 10311}supportsCurves(){return!0}accelerateGeometry(e,t,n){return!1}canAccelerateGeometry(e){return!1}execute(e,t,n,i){return(0,s.c)(e),4===n?(new P).execute(e,t,i):new N(t,n,i).calculate(e)}}},47591(e,t,n){n.d(t,{O:()=>g});var s=n(55537),i=n(15756),a=n(88885),_=n(83661),r=n(95213),h=n(79187),o=n(5247),m=n(31139);function l(){return{m_pGcs:new _.P,m_xyz:new r.f,m_factor:Number.NaN,m_geoLength:Number.NaN,setValues:u,setLength:p,assign:c}}function u(e,t,n,s){this.m_factor=e,this.m_pGcs.assign(t),this.m_xyz.assign(s),this.m_geoLength=n}function p(e){this.m_geoLength=e}function c(e){this.m_pGcs.assign(e.m_pGcs),this.m_xyz.assign(e.m_xyz),this.m_factor=e.m_factor,this.m_geoLength=e.m_geoLength}class g{getOperatorType(){return 10315}supportsCurves(){return!0}accelerateGeometry(e,t,n){return!1}canAccelerateGeometry(e){return!1}_ExecuteShapePreservingLength(e,t,n,s,a){if(e.hasNonLinearSegments()&&(e=(new o.O).execute(e,0,t.getTolerance(0),0,a)),t.isPannable()){let s=90,_=-90;if(1===n.getUnit().getUnitToBaseFactor()&&(s*=Math.PI/180,_*=Math.PI/180),2===t.getCoordinateSystemType()){let e=null;const n=[0,0,0,0];e=t.getPECoordSys(),n[0]=0,n[1]=s,n[2]=0,n[3]=_,i.a0.geogToProj(e,2,n),s=n[1],_=n[3]}const r=new h.Envelope2D;e.queryEnvelope(r),r.ymin=_,r.ymax=s,e=(new m.O).execute(e,r,t,a)}else{const n=t.getPCSHorizon();if((e=(new i.g).execute(e,n,t,a))===n){const t=e.clone();e=t}}return e.isEmpty()?0:this._ExecuteIterativeApproach(e,t,n,s,1,a)}_ExecuteIterativeApproach(e,t,n,a,h,o){const m=(0,i._)();n.querySpheroidData(m);const u=m.majorSemiAxis,p=m.e2,c=n.getUnit().getUnitToBaseFactor(),g=(0,_.n)(l,40),E=(0,_.d)(40,Number.NaN),P=l(),S=l();let y;const x=[0,0,0,0],A=t.getPECoordSys(),R=new _.P,M=new _.P,C=new _.P,T=new _.P,w=new _.P;let N=0;const q=e.querySegmentIterator();for(;q.nextPath();)for(;q.hasNextSegment();){const e=q.nextSegment();R.assign(e.getStartXY()),M.assign(e.getEndXY()),2===t.getCoordinateSystemType()?(x[0]=R.x,x[1]=R.y,x[2]=M.x,x[3]=M.y,i.a0.projToGeog(A,2,x),C.x=x[0]*c,C.y=x[1]*c,T.x=x[2]*c,T.y=x[3]*c):(C.setCoordsPoint2D(R),T.setCoordsPoint2D(M),C.scale(c),T.scale(c));const n=new r.f,a=new r.f;f(u,p,C,n),f(u,p,T,a);let _=d(u,n,a);P.setValues(0,C,Number.NaN,n),S.setValues(1,T,_,a),y=h,g[0].assign(S),E[0]=h;let o=0;for(;;){o>128&&(0,s.d)("iterations exceeded");const n=.5*(P.m_factor+S.m_factor),a=e.getCoord2D(n);2===t.getCoordinateSystemType()?(x[0]=a.x,x[1]=a.y,i.a0.projToGeog(A,1,x),w.x=x[0]*c,w.y=x[1]*c):(w.setCoordsPoint2D(a),w.scale(c)),C.setCoordsPoint2D(P.m_pGcs),T.setCoordsPoint2D(S.m_pGcs);const m=new r.f;f(u,p,w,m);const l=d(u,P.m_xyz,m),R=d(u,S.m_xyz,m);_=S.m_geoLength,Number.isNaN(_)&&(_=d(u,P.m_xyz,S.m_xyz));const M=l+R,q=y===h&&M>=20&&Math.abs(M-_)>1e-8*(_+M);if(o+2<40&&(q||Math.abs(M-_)>0&&y>0))S.setLength(R),g[o].assign(S),S.setValues(n,w,l,m),g[++o].assign(S),q?(y=h,E[o]=h):(y--,E[o-1]=y,E[o]=y);else{if(N+=M,0===o)break;P.assign(S),S.assign(g[--o]),y=E[o]}}}return N}execute(e,t,n){if(t&&0!==t.getCoordinateSystemType()||(0,s.a)(""),e.isEmpty()||e.getDimension()<1)return 0;let _=null;const r=t.getGCS();r!==t&&(_=(0,i.a)(t,r,null));const h=e.getGeometryType();if(h===s.G.enumEnvelope){const s=new a.P;return s.addEnvelope(e,!1),this._ExecuteShapePreservingLength(s,t,r,_,n)}if((0,s.f)(h)){const s=new a.a;return s.addSegment(e,!0),this._ExecuteShapePreservingLength(s,t,r,_,n)}return this._ExecuteShapePreservingLength(e,t,r,_,n)}}function f(e,t,n,s){s.assign((0,i.Q)(e,t,n))}function d(e,t,n){const s=e,i=new r.f;i.setSub(t,n);const a=i.length();return 2*s*Math.asin(a/(2*s))}}}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[1088,6061,6859],{26640(t,e,i){i.d(e,{D:()=>D,m:()=>c,s:()=>d,w:()=>y});var n=i(5482),s=i(55537),o=i(88885),r=i(15756),m=i(83661),a=i(79187),u=i(95213);function c(){return{outPoint:new m.P,index:-1,t:Number.NaN}}function h(t,e,i){return{outPoint:t.clone(),index:e,t:i}}function l(t,e,i,n){t.outPoint.assign(e),t.index=i,t.t=n}function _(t,e){t.outPoint.assign(e.outPoint),t.index=e.index,t.t=e.t}function g(t,e,i,n){t.index=i,t.t=n,e.queryCoord2D(t.t,t.outPoint)}function p(t,e){const i=c();_(i,t),_(t,e),_(e,i)}function y(t,e,i,n,o,m){if(t.getGeometryType()===s.G.enumPolygon){for(;n.nextPath();)if(n.hasNextSegment()){const e=n.nextSegment();if(0!==(0,r.l)(t,e.getEndXY(),0))return l(o,e.getEndXY(),-1,Number.NaN),l(m,e.getEndXY(),-1,Number.NaN),!0}n.resetToFirstPath()}if(e.getGeometryType()===s.G.enumPolygon){for(;i.nextPath();)if(i.hasNextSegment()){const t=i.nextSegment();if(0!==(0,r.l)(e,t.getEndXY(),0))return l(o,t.getEndXY(),-1,Number.NaN),l(m,t.getEndXY(),-1,Number.NaN),!0}i.resetToFirstPath()}return!1}function d(t){const e=t.getPathCount(),i=(0,m.d)(t.getSegmentCount(),0);let n=0;for(let s=0;s<e;++s){const e=n+t.getSegmentCountPath(s);for(let o=n,r=t.getPathStart(s);o<e;++o,++r)i[o]=r;n=e}return(0,o.s)(t.getPointCount(),i),i}function x(t,e){return!!Number.isNaN(e)||t<=e}function P(t){const e=new o.P;return e.addEnvelope(t,!1),e}class D{constructor(t,e){if(this.m_env2DgeometryA=null,this.m_env2DgeometryB=null,this.m_progressCounter=0,this.m_progressTracker=e,this.m_maxSqrDistance=t*t,this.m_maxDistance=t,this.m_bIsNearCalc=!1,Number.isNaN(this.m_maxDistance)?this.m_maxDistance=Number.POSITIVE_INFINITY:this.m_maxDistance=t,this.m_maxSqrDistance=this.m_maxDistance*this.m_maxDistance,Number.isFinite(this.m_maxSqrDistance)){let t=Math.sqrt(this.m_maxSqrDistance);for(;t<this.m_maxDistance;)this.m_maxSqrDistance*=1+Number.EPSILON,t=Math.sqrt(this.m_maxSqrDistance)}}calculate(t,e,i,n){if((t.getGeometryType()!==u.P.type||e.getGeometryType()!==u.P.type)&&(this.m_env2DgeometryA=new a.Envelope2D,this.m_env2DgeometryB=new a.Envelope2D,t.queryEnvelope(this.m_env2DgeometryA),e.queryEnvelope(this.m_env2DgeometryB),!x(this.m_env2DgeometryA.distanceFromEnvelope(this.m_env2DgeometryB),this.m_maxDistance)))return Number.POSITIVE_INFINITY;const s=h(new m.P,(0,m.j)(),Number.NaN),o=h(new m.P,(0,m.j)(),Number.NaN),r=this._ExecuteBruteForce(t,e,s,o);return x(r,this.m_maxDistance)?(null!==i&&_(i,s),null!==n&&_(n,o),r):Number.POSITIVE_INFINITY}isNear(t,e){if(this.m_bIsNearCalc=!0,t.isEmpty()||e.isEmpty())return!1;if(t===e)return!0;let i=!0;if(t.getGeometryType()!==u.P.type&&t.getGeometryType()!==u.E.type||e.getGeometryType()!==u.P.type&&e.getGeometryType()!==u.E.type||(i=!1),i){if(this.m_env2DgeometryA=new a.Envelope2D,this.m_env2DgeometryB=new a.Envelope2D,t.queryEnvelope(this.m_env2DgeometryA),e.queryEnvelope(this.m_env2DgeometryB),!(this.m_env2DgeometryA.sqrMaxMinDistanceEnvelope(this.m_env2DgeometryB)>this.m_maxSqrDistance))return!0;if(this.m_env2DgeometryA.sqrDistanceEnvelope(this.m_env2DgeometryB,null,null)>this.m_maxSqrDistance)return!1}const n=h(new m.P,(0,m.j)(),Number.NaN),s=h(new m.P,(0,m.j)(),Number.NaN);return this._ExecuteBruteForce(t,e,n,s)<=this.m_maxDistance}progress_(t=!1){}_ExecuteBruteForce(t,e,i,n){switch(t.getGeometryType()){case s.G.enumPoint:return this.distancePointGeometry(t,e,i,n);case s.G.enumMultiPoint:return this.distanceMultipointGeometry(t,e,i,n);case s.G.enumEnvelope:return this.distanceEnvelopeGeometry(t,e,i,n);case s.G.enumPolyline:case s.G.enumPolygon:return this.distanceMultipathGeometry(t,e,i,n);default:return Number.NaN}}distancePointGeometry(t,e,i,n){switch(e.getGeometryType()){case s.G.enumPoint:return this.distancePointPoint(t,e,i,n);case s.G.enumMultiPoint:return this.distancePointMultipoint(t,e,i,n);case s.G.enumPolyline:case s.G.enumPolygon:return this.distancePointMultipath(t,e,i,n);case s.G.enumEnvelope:return this.distancePointEnvelope(t,e,i,n);default:return Number.NaN}}distancePointPoint(t,e,i,n){const s=t.getXY(),o=e.getXY();return l(i,s,0,0),l(n,o,0,0),Math.sqrt(m.P.sqrDistance(s,o))}distancePointMultipoint(t,e,i,n){const s=t.getXY();let o=this.m_maxSqrDistance,r=o,a=!1;const u=e.getPointCount(),c=new m.P;for(let t=0;t<u;++t)if(e.queryXY(t,c),r=m.P.sqrDistance(s,c),this.m_bIsNearCalc){if(r<=o)return 0}else if(!(r>o)&&(!a&&r===o||r<o)&&(o=r,l(i,s,0,0),l(n,c,t,0),a=!0,0===o))return 0;return a?Math.sqrt(o):Number.POSITIVE_INFINITY}distancePointMultipath(t,e,i,n){const o=!this.m_env2DgeometryA.isIntersecting(this.m_env2DgeometryB),u=t.getXY();if(!o&&e.getGeometryType()===s.G.enumPolygon&&0!==(0,r.l)(e,u,0))return l(i,u,0,0),l(n,u,-1,Number.NaN),0;e.getImpl().getAccelerators();let c=this.m_maxSqrDistance,h=c,_=-1;const g=new a.Envelope2D,p=e.querySegmentIterator();let y=!1;for(;p.nextPath();)for(;p.hasNextSegment();){const t=p.nextSegment();t.queryEnvelope(g);const e=g.sqrDistance(u);if(e>c)continue;if(!this.m_bIsNearCalc&&y&&e===c)continue;_=t.getClosestCoordinate(u,!1);const s=t.getCoord2D(_);if(h=m.P.sqrDistance(u,s),this.m_bIsNearCalc){if(h<=c)return 0}else if(!(h>c)&&(!y||h<c)&&(c=h,l(i,u,0,0),l(n,s,p.getStartPointIndex(),_),y=!0,0===c))return 0}return y?Math.sqrt(c):Number.POSITIVE_INFINITY}distancePointEnvelope(t,e,i,n){const s=t.getXY();l(i,s,0,0),l(n,s,-1,Number.NaN);const o=e.asEnvelope2D();return o.contains(s)?0:Math.sqrt(o.sqrDistance(s,n.outPoint))}distanceMultipointGeometry(t,e,i,n){switch(e.getGeometryType()){case s.G.enumPoint:{this.m_env2DgeometryB=(0,m.c)(this.m_env2DgeometryA,this.m_env2DgeometryA=this.m_env2DgeometryB);const s=this.distancePointMultipoint(e,t,n,i);return this.m_env2DgeometryB=(0,m.c)(this.m_env2DgeometryA,this.m_env2DgeometryA=this.m_env2DgeometryB),s}case s.G.enumMultiPoint:return this.distanceMultipointMultipoint(t,e,i,n,1,1);case s.G.enumPolyline:case s.G.enumPolygon:return this.distanceMultipointMultipath(t,e,i,n);case s.G.enumEnvelope:return this.distanceMultipointMultipath(t,P(e),i,n);default:return Number.NaN}}distanceMultipointMultipoint(t,e,i,s,o,r){const a={stack:[],error:void 0,hasError:!1};try{if(this.m_bIsNearCalc&&1===o&&1===r){const n=Math.trunc((0,m.s)(Math.sqrt(t.getPointCount())+1,1,(0,m.i)())),o=Math.trunc((0,m.s)(Math.sqrt(e.getPointCount())+1,1,(0,m.i)()));if((n>=4||o>=4)&&this.distanceMultipointMultipoint(t,e,i,s,n,o)<=this.m_maxSqrDistance)return 0}let u=this.m_maxSqrDistance;const c=[t],h=[e],_=this.swapGeometriesIfBGtA(c,h);_&&(this.m_env2DgeometryB=(0,m.c)(this.m_env2DgeometryA,this.m_env2DgeometryA=this.m_env2DgeometryB),r=(0,m.c)(o,o=r),p(i,s)),(0,n.mS)(a,(0,m.h)(()=>{p(i,s),this.m_env2DgeometryB=(0,m.c)(this.m_env2DgeometryA,this.m_env2DgeometryA=this.m_env2DgeometryB)},!_),!1);const g=c[0].getImpl(),y=h[0].getImpl(),d=g.getPointCount(),x=y.getPointCount(),P=x>1;let D=!1;const v=new m.P,G=new m.P;for(let t=0;t<d;t+=o){if(g.queryXY(t,v),P){const t=this.m_env2DgeometryB.sqrDistance(v);if(this.m_bIsNearCalc){if(t>u)continue;if(this.m_env2DgeometryB.sqrMaxMinDistance(v)<=u)return 0}else if(t>=u)continue}for(let e=0;e<x;e+=r){y.queryXY(e,G);const n=m.P.sqrDistance(v,G);if(this.m_bIsNearCalc){if(n<=u)return 0}else if(!(n>u||D&&n===u)&&(!D||n<u)&&(l(i,v,t,0),l(s,G,e,0),D=!0,u=n,0===u))return D?Math.sqrt(u):Number.POSITIVE_INFINITY}}return D?Math.sqrt(u):Number.POSITIVE_INFINITY}catch(t){a.error=t,a.hasError=!0}finally{(0,n.hk)(a)}}distanceMultipointMultipath(t,e,i,n){let o=!!this.m_env2DgeometryA.isIntersecting(this.m_env2DgeometryB)&&e.getGeometryType()===s.G.enumPolygon;const u=e.querySegmentIterator();u.stripAttributes();const c=new a.Envelope2D,h=new m.P;let _=this.m_maxSqrDistance;const g=t.getImpl(),p=g.getPointCount(),y=p>1;let d=!1;for(;u.nextPath();)for(;u.hasNextSegment();){const t=u.nextSegment();if(t.queryLooseEnvelope(c),y){const t=c.sqrDistanceEnvelope(this.m_env2DgeometryA,null,null);if(this.m_bIsNearCalc){if(t>_)continue}else if(t>_||d&&t===_)continue}for(let s=0;s<p;s++){if(g.queryXY(s,h),o&&0!==(0,r.l)(e,h,0))return l(i,h,-1,Number.NaN),l(n,h,s,0),0;{const t=c.sqrDistance(h);if(this.m_bIsNearCalc){if(t>_)continue}else if(t>_)continue}const m=t.getClosestCoordinate(h,!1),a=t.getCoord2D(m);h.subThis(a);const p=h.sqrLength();if(this.m_bIsNearCalc){if(p<=_)return 0}else if(!(p>_)&&(!d||p<_)&&(_=p,l(i,g.getXY(s),s,0),l(n,a,u.getStartPointIndex(),m),d=!0,0===_))return 0}o=!1}return d?Math.sqrt(_):Number.POSITIVE_INFINITY}distanceEnvelopeGeometry(t,e,i,n){switch(e.getGeometryType()){case s.G.enumPoint:return this.distancePointEnvelope(e,t,n,i);case s.G.enumMultiPoint:{this.m_env2DgeometryB=(0,m.c)(this.m_env2DgeometryA,this.m_env2DgeometryA=this.m_env2DgeometryB);const s=this.distanceMultipointMultipath(e,P(t),n,i);return this.m_env2DgeometryB=(0,m.c)(this.m_env2DgeometryA,this.m_env2DgeometryA=this.m_env2DgeometryB),s}case s.G.enumPolyline:case s.G.enumPolygon:return this.distanceMultipathMultipath(P(t),e,i,n);case s.G.enumEnvelope:return this.distanceEnvelopeEnvelope(t,e,i,n);default:return Number.NaN}}distanceEnvelopeEnvelope(t,e,i,n){i.t=Number.NaN,i.index=-1,n.t=Number.NaN,n.index=-1;const s=t.asEnvelope2D(),o=e.asEnvelope2D();return Math.sqrt(s.sqrDistanceEnvelope(o,i.outPoint,n.outPoint))}distanceMultipathGeometry(t,e,i,n){switch(e.getGeometryType()){case s.G.enumPoint:{this.m_env2DgeometryB=(0,m.c)(this.m_env2DgeometryA,this.m_env2DgeometryA=this.m_env2DgeometryB);const s=this.distancePointMultipath(e,t,n,i);return this.m_env2DgeometryB=(0,m.c)(this.m_env2DgeometryA,this.m_env2DgeometryA=this.m_env2DgeometryB),s}case s.G.enumMultiPoint:{this.m_env2DgeometryB=(0,m.c)(this.m_env2DgeometryA,this.m_env2DgeometryA=this.m_env2DgeometryB);const s=this.distanceMultipointMultipath(e,t,n,i);return this.m_env2DgeometryB=(0,m.c)(this.m_env2DgeometryA,this.m_env2DgeometryA=this.m_env2DgeometryB),s}case s.G.enumPolyline:case s.G.enumPolygon:return this.distanceMultipathMultipath(t,e,i,n);case s.G.enumEnvelope:return this.distanceMultipathMultipath(t,P(e),i,n);default:return Number.NaN}}distanceMultipathMultipath(t,e,i,s){const r={stack:[],error:void 0,hasError:!1};try{const u=[t],h=[e],l=this.swapGeometriesIfAGtB(u,h);l&&(this.m_env2DgeometryB=(0,m.c)(this.m_env2DgeometryA,this.m_env2DgeometryA=this.m_env2DgeometryB),p(i,s)),(0,n.mS)(r,(0,m.h)(()=>{p(i,s),this.m_env2DgeometryB=(0,m.c)(this.m_env2DgeometryA,this.m_env2DgeometryA=this.m_env2DgeometryB)},!l),!1);const x=u[0],P=h[0],D=x.querySegmentIterator();D.stripAttributes();const v=P.querySegmentIterator();if(v.stripAttributes(),this.m_bIsNearCalc&&this.m_env2DgeometryA.sqrMaxMinDistanceEnvelope(this.m_env2DgeometryB)<=this.m_maxSqrDistance)return 0;if(this.m_bIsNearCalc){const t=Math.trunc((0,m.s)(Math.sqrt(x.getPointCount())+1,1,(0,m.i)())),e=Math.trunc((0,m.s)(Math.sqrt(x.getPointCount())+1,1,(0,m.i)()));if(this.distanceMultipointMultipoint(x,P,i,s,t,e)<=this.m_maxSqrDistance)return 0}if(this.m_env2DgeometryA.isIntersecting(this.m_env2DgeometryB)){const t=c(),e=c();if(y(x,P,D,v,t,e))return _(i,t),_(s,e),0}const G=d(x),f=[],S=new o.S,M=new a.Envelope2D,E=new a.Envelope2D,N=new a.Envelope2D;let b=this.m_maxSqrDistance,T=!0,I=!1;for(let t=0,e=G.length;t<e;++t){x.querySegment(G[t],S,!0);const e=S.get();if(e.queryEnvelope(M),!(M.sqrDistanceEnvelope(this.m_env2DgeometryB,null,null)>b)){if(this.m_bIsNearCalc&&M.sqrMaxDistanceEnvelope(this.m_env2DgeometryB)<=b)return 0;for(;v.nextPath();){if(this.progress_(),T)P.queryPathEnvelope(v.getPathIndex(),N),f[v.getPathIndex()]=N.clone();else if(M.sqrDistanceEnvelope(f[v.getPathIndex()],null,null)>b)continue;for(;v.hasNextSegment();){const n=v.nextSegment();if(n.queryEnvelope(E),M.sqrDistanceEnvelope(E,null,null)<=b){const o=!M.isIntersecting(E),r=[0],m=[0];let a=e.distance(n,o,r,m);if(a*=a,this.m_bIsNearCalc&&a<=this.m_maxSqrDistance)return 0;if(a<b||a===b&&G[t]<i.index){if(I=!0,g(i,e,G[t],r[0]),g(s,n,v.getStartPointIndex(),m[0]),0===a)return 0;b=a}}}}v.resetToFirstPath(),T=!1}}return I?Math.sqrt(b):Number.POSITIVE_INFINITY}catch(t){r.error=t,r.hasError=!0}finally{(0,n.hk)(r)}}swapGeometriesIfAGtB(t,e){return(0,s.v)(t[0])>(0,s.v)(e[0])&&(e[0]=(0,m.c)(t[0],t[0]=e[0]),!0)}swapGeometriesIfBGtA(t,e){return this.swapGeometriesIfAGtB(e,t)}}},16859(t,e,i){i.d(e,{G:()=>M,a:()=>f,m:()=>D});var n=i(5482),s=i(55537),o=i(88885),r=i(15756),m=i(95213),a=i(79187),u=i(83661),c=i(11878),h=i(26640),l=i(76061),_=i(31088);class g{getOperatorType(){return 10317}supportsCurves(){return!0}accelerateGeometry(t,e,i){return!1}canAccelerateGeometry(t){return!1}executeMany(t,e,i,n,s,o){return new _.OperatorGeodeticDensifyCursor(t,e,4,i,n,s,o)}execute(t,e,i,n,o,r){const m=new l.S([t]),a=this.executeMany(m,e,i,n,o,r).next();return a||(0,s.d)("null output"),a}}var p=i(31139);class y{[Symbol.dispose](){this.m_peR1.destroy(),this.m_peR2.destroy(),this.m_peR3.destroy(),this.m_peR1=null,this.m_peR2=null,this.m_peR3=null}constructor(t,e,i){this.m_peR1=new r.M,this.m_peR2=new r.M,this.m_peR3=new r.M,void 0!==t?this.reset(t,e,i):this.reset(1,0,1)}reset(t,e,i){this.m_a=t,this.m_e2=e,this.m_b=this.m_a*Math.sqrt(1-this.m_e2),this.m_unitToDegree=i,this.m_unitToRad=.017453292519943295*i,this.m_u180=180/this.m_unitToDegree,this.m_u360=360/this.m_unitToDegree}calculateBbox(t,e,i,n){const s=this.m_peR1,o=this.m_peR2,m=this.m_peR3;r.N.geodeticDistance(this.m_a,this.m_e2,t*this.m_unitToRad,e*this.m_unitToRad,i*this.m_unitToRad,n*this.m_unitToRad,m,s,o,0);const c=Math.cos(s.val),h=Math.cos(o.val+3.141592653589793),l=e*this.m_unitToRad,_=r.$.phiToEta(this.m_e2,l),g=Math.sin(s.val)*Math.cos(_);let p=e;if(c*h<0){const t=c<0?-1:1,e=Math.acos(Math.abs(g))*t;p=r.$.etaToPhi(this.m_e2,e)/this.m_unitToRad}let y=(0,u.l)((i-t)*this.m_unitToRad,2*Math.PI);Math.abs(y)>Math.PI&&(y=y>0?y-2*Math.PI:y+2*Math.PI),y/=this.m_unitToRad,i=t+y;const d=new a.Envelope2D;return d.xmin=Math.min(t,i),d.xmax=Math.max(t,i),d.ymin=Math.min(e,n),d.ymin=Math.min(d.ymin,p),d.ymax=Math.max(e,n),d.ymax=Math.max(d.ymax,p),d}minDistanceGeodesic(t,e){const i=d(t),n=d(e);if(i&&n)return this.lowerDistanceGeodetic_(t.xmin,t.ymin,e.xmin,e.ymin);const s=this.normalizeGeodesic_(e,t);return function(t,e){return e.xmax<t.xmin||e.xmin>t.xmax||e.ymax<t.ymin||e.ymin>t.ymax}(t,s)?t.ymin>=s.ymax?this.minDistanceGeodesicUpDown_(t,s):s.ymin>=t.ymax?this.minDistanceGeodesicUpDown_(s,t):t.xmin>s.xmax?this.minDistanceGeodesicLeftRight_(s,t):this.minDistanceGeodesicLeftRight_(t,s):0}normalizeGeodesic_(t,e){const i=t.clone(),n=t.clone();let s=x(i,e);if(0===s)return i;for(;n.xmax>e.xmin;){n.xmin-=this.m_u360,n.xmax-=this.m_u360;const t=x(n,e);if(t<s&&(i.assign(n),s=t,0===s))return i}for(n.assign(t);n.xmin<e.xmax;){n.xmin+=this.m_u360,n.xmax+=this.m_u360;const t=x(n,e);if(t<s&&(i.assign(n),s=t,0===s))return i}return i}lowerDistanceGeodetic_(t,e,i,n){const s=this.m_peR1;{const o=this.m_b*this.m_b/this.m_a,m=r.$.phiToPhig(this.m_e2,this.m_unitToRad*e),a=r.$.phiToPhig(this.m_e2,this.m_unitToRad*n);r.N.geodeticDistance(o,0,this.m_unitToRad*t,m,this.m_unitToRad*i,a,s,null,null,0)}return s.val}minDistanceGeodesicUpDown_(t,e){if(e.xmin<=t.xmin?e.xmax>=t.xmin:t.xmax>=e.xmin)return this.lowerDistanceGeodetic_(0,t.ymin,0,e.ymax);if(e.xmin>t.xmax){const i=this.lowerDistanceGeodeticSegMeridional_(t.xmax,t.ymin,t.ymax,e.xmin,e.ymin,e.ymax);if(e.xmax-t.xmin<this.m_u180)return i;const n=this.lowerDistanceGeodeticSegMeridional_(t.xmin,t.ymin,t.ymax,e.xmax,e.ymin,e.ymax);return Math.min(i,n)}{const i=this.lowerDistanceGeodeticSegMeridional_(t.xmin,t.ymin,t.ymax,e.xmax,e.ymin,e.ymax);if(t.xmax-e.xmin<this.m_u180)return i;const n=this.lowerDistanceGeodeticSegMeridional_(t.xmax,t.ymin,t.ymax,e.xmin,e.ymin,e.ymax);return Math.min(i,n)}}minDistanceGeodesicLeftRight_(t,e){let i=Math.abs(t.xmax-e.xmin);for(;i>this.m_u180;)i-=this.m_u360;let n=Math.abs(t.xmin-e.xmax);for(;n>this.m_u180;)n-=this.m_u360;return Math.abs(i)<=Math.abs(n)?this.minDistanceGeodesicLeftRightNormalized_(t,e):this.minDistanceGeodesicLeftRightNormalized_(e,t)}minDistanceGeodesicLeftRightNormalized_(t,e){let i,n;return i=this.lowerDistanceGeodetic_(t.xmax,t.ymin,e.xmin,e.ymin),t.ymin>=e.ymin&&t.ymin<=e.ymax&&(n=this.lowerDistanceGeodeticPtMeridional_(t.xmax,t.ymin,e.xmin,e.ymin,e.ymax),i=Math.min(i,n)),e.ymin>=t.ymin&&e.ymin<=t.ymax&&(n=this.lowerDistanceGeodeticPtMeridional_(e.xmin,e.ymin,t.xmax,t.ymin,t.ymax),i=Math.min(i,n)),n=this.lowerDistanceGeodetic_(t.xmax,t.ymax,e.xmin,e.ymax),i=Math.min(i,n),t.ymax>=e.ymin&&t.ymax<=e.ymax&&(n=this.lowerDistanceGeodeticPtMeridional_(t.xmax,t.ymax,e.xmin,e.ymin,e.ymax),i=Math.min(i,n)),e.ymax>=t.ymin&&e.ymax<=t.ymax&&(n=this.lowerDistanceGeodeticPtMeridional_(e.xmin,e.ymax,t.xmax,t.ymin,t.ymax),i=Math.min(i,n)),i}lowerDistanceGeodeticSegMeridional_(t,e,i,n,s,o){let r=this.lowerDistanceGeodeticPtMeridional_(t,e,n,s,o);const m=this.lowerDistanceGeodeticPtMeridional_(t,i,n,s,o);let a=this.lowerDistanceGeodeticPtMeridional_(n,s,t,e,i);const u=this.lowerDistanceGeodeticPtMeridional_(n,o,t,e,i);return r=Math.min(r,m),a=Math.min(a,u),Math.min(r,a)}lowerDistanceGeodeticPtMeridional_(t,e,i,n,s){const o=this.m_b*this.m_b/this.m_a,a=r.$.phiToPhig(this.m_e2,this.m_unitToRad*e),c=r.$.phiToPhig(this.m_e2,this.m_unitToRad*n),h=r.$.phiToPhig(this.m_e2,this.m_unitToRad*s),l=this.m_peR1,_=this.m_peR2;r.N.geodeticDistance(o,0,this.m_unitToRad*i,c,this.m_unitToRad*t,a,l,null,null,0),r.N.geodeticDistance(o,0,this.m_unitToRad*i,h,this.m_unitToRad*t,a,_,null,null,0);const g=(0,r.Q)(1,0,new u.P(this.m_unitToRad*t,a)),p=(0,r.Q)(1,0,new u.P(this.m_unitToRad*i,c)),y=(0,r.Q)(1,0,new u.P(this.m_unitToRad*i,h));let d=new m.f;d.setCrossProductVector(p,y);const x=p.dotProduct(y);if(d.length()<1.568e-10)return x>=0?Math.min(l.val,_.val):0;d=d.getUnitVector();let P=new m.f;if(P.setCrossProductVector(d,g),P.length()<1.568e-10)return Math.min(l.val,_.val)-1e-5*o;P=P.getUnitVector();let D=g.sub(d.mul(g.dotProduct(d)));{const e=new m.f;e.setCrossProductVector(p,D);const i=new m.f;i.setCrossProductVector(D,y);let n=d.dotProduct(e)>0&&d.dotProduct(i)>0;if(n||(D.negateThis(),e.setCrossProductVector(p,D),i.setCrossProductVector(D,y),n=d.dotProduct(e)>0&&d.dotProduct(i)>0),n){D=D.getUnitVector();const e=(0,r.Z)(1,0,D),i=this.m_peR3;r.N.geodeticDistance(o,0,this.m_unitToRad*t,a,e.x,e.y,i,null,null,0);const n=Math.min(l.val,_.val);return Math.min(n,i.val)}}return Math.min(l.val,_.val)}}function d(t){return t.xmin===t.xmax&&t.ymin===t.ymax}function x(t,e){let i,n=0;return i=t.xmin-e.xmax,i>n&&(n=i),i=e.xmin-t.xmax,i>n&&(n=i),n}class P{}function D(t){return{outPoint:void 0===t?new u.P:t.clone()}}function v(t,e){t.outPoint.assign(e.outPoint)}function G(){return new a.Envelope2D}class f{constructor(t,e,i,n,s=0,o=4){this.m_ptDistFrom=new u.P,this.m_segStartPt=new u.P,this.m_segEndPt=new u.P,this.m_geodeticLength=new r.M,this.m_az12=new r.M,this.m_minGeodeticDist=new r.M,this.m_segStartPt3d=new m.f,this.m_segEndPt3d=new m.f,this.m_sr=n,this.m_distCurveType=s,this.m_segCurveType=o,this.m_inputGCS=this.m_sr.getGCS(),this.m_rpu=this.m_inputGCS.getUnit().getUnitToBaseFactor(),this.m_bIsPannablePcs=2===this.m_sr.getCoordinateSystemType()&&this.m_sr.isPannable();const a=(0,r._)();this.m_inputGCS.querySpheroidData(a),this.m_a=a.majorSemiAxis,this.m_eSquared=a.e2,this.setPointDistFrom(t),this.setSegmentEndPoints(e,i)}setSegmentEndPoints(t,e){this.m_segStartPt.assign(t),this.m_segEndPt.assign(e),this.m_bIsPannablePcs||(this.m_segStartPt.mulThis(this.m_rpu),this.m_segEndPt.mulThis(this.m_rpu)),2===this.m_segCurveType&&(this.m_segStartPt3d.assign((0,r.Q)(this.m_a,this.m_eSquared,this.m_segStartPt)),this.m_segEndPt3d.assign((0,r.Q)(this.m_a,this.m_eSquared,this.m_segEndPt))),this.calculateAndUpdateSegmentLength()}setPointDistFrom(t){this.m_ptDistFrom.assign(t),this.m_ptDistFrom.scale(this.m_rpu)}setSegmentCurveType(t){this.m_segCurveType=t}setDistanceCurveType(t){this.m_distCurveType=t}makeFunctor(){return t=>{let e;switch(this.m_segCurveType){case 0:case 1:case 3:{const i={stack:[],error:void 0,hasError:!1};try{const s=(0,n.mS)(i,new r.M,!1),o=(0,n.mS)(i,new r.M,!1);r.N.geodeticCoordinate(this.m_a,this.m_eSquared,this.m_segStartPt.x,this.m_segStartPt.y,this.m_geodeticLength.val*t,this.m_az12.val,s,o,this.m_segCurveType),e=new u.P(s.val,o.val);break}catch(t){i.error=t,i.hasError=!0}finally{(0,n.hk)(i)}}case 2:{const i=m.f.lerp(this.m_segStartPt3d,this.m_segEndPt3d,t);e=(0,r.Z)(this.m_a,this.m_eSquared,i);break}case 4:e=u.P.lerp(this.m_segStartPt,this.m_segEndPt,t),this.m_bIsPannablePcs&&((0,r.S)(this.m_sr,0,[e],1),e.mulThis(this.m_rpu));break;default:(0,s.d)("Invalid curve type")}return r.N.geodeticDistance(this.m_a,this.m_eSquared,this.m_ptDistFrom.x,this.m_ptDistFrom.y,e.x,e.y,this.m_minGeodeticDist,null,null,this.m_distCurveType),this.m_minGeodeticDist.val}}calculateAndUpdateSegmentLength(){switch(this.m_segCurveType){case 0:case 2:case 1:case 3:r.N.geodeticDistance(this.m_a,this.m_eSquared,this.m_segStartPt.x,this.m_segStartPt.y,this.m_segEndPt.x,this.m_segEndPt.y,this.m_geodeticLength,this.m_az12,null,this.m_segCurveType);break;case 4:this.m_geodeticLength.val=u.P.distance(this.m_segStartPt,this.m_segEndPt);break;default:(0,s.d)("Invalid curve type")}}[Symbol.dispose](){this.m_geodeticLength[Symbol.dispose](),this.m_az12[Symbol.dispose](),this.m_minGeodeticDist[Symbol.dispose]()}}function S(){return new P}class M{[Symbol.dispose](){this.m_envHelper[Symbol.dispose]()}constructor(t,e,i,n,s){this.m_boxGeomA=G(),this.m_boxGeomB=G(),this.m_envGeomA=new a.Envelope2D,this.m_envGeomB=new a.Envelope2D,this.m_progressCounter=0,this.m_transformPCS2GCS=null,this.m_segmentBoxesA=new Map,this.m_segmentBoxesB=new Map,this.m_boundaryPtsA=[],this.m_boundaryPtsB=[],this.m_scaleToRadians=new c.T,this.m_scaleToDegrees=new c.T,this.m_inputSR=t,this.m_distCurveType=e,this.m_progressTracker=i,this.m_maxDistance=n,this.m_maxDeviation=s,this.m_inputGCS=t.getGCS(),this.m_peGeogcs=this.m_inputGCS.getPECoordSys(),this.m_tolerance=0;const o=(0,r._)();this.m_inputGCS.querySpheroidData(o),this.m_a=o.majorSemiAxis,this.m_eSquared=o.e2,this.m_rpu=this.m_inputGCS.getUnit().getUnitToBaseFactor(),this.m_envHelper=new y(this.m_a,this.m_eSquared,1),4===this.m_distCurveType&&(this.m_distCurveType=0),this.m_boxGeomA.setEmpty(),this.m_boxGeomB.setEmpty(),this.m_envGeomA.setEmpty(),this.m_envGeomB.setEmpty(),this.m_bIsPannablePcs=2===this.m_inputSR.getCoordinateSystemType()&&this.m_inputSR.isPannable()}progress(t=!1){}calculate(t,e,i,n){const s=D(),o=D();if(t.queryEnvelope(this.m_envGeomA),e.queryEnvelope(this.m_envGeomB),this.checkGeometriesIntersect(t,e,s,o))return i&&v(i,s),n&&v(n,o),0;const r=this.prepareGeometry(t);if(r.isEmpty())return Number.NaN;const m=this.prepareGeometry(e);if(m.isEmpty())return Number.NaN;this.m_tolerance=this.computeTolerance(r,m);const a=this._ExecuteBruteForce(r,m,s,o);return a>=this.m_maxDistance?Number.NaN:(i&&(this.prepareOutput(s),v(i,s)),n&&(this.prepareOutput(o),v(n,o)),a)}createDistanceFunctor(t,e,i){const n=new f(t,e,i,this.m_inputSR,this.m_distCurveType);return this.m_bIsPannablePcs||1===this.m_inputSR.getCoordinateSystemType()||n.setSegmentCurveType(2),n}_NormalizeAndProject(t){if(this.m_inputSR.isPannable()&&(t=(new r.O).foldInto360Range(t,this.m_inputSR)),2===this.m_inputSR.getCoordinateSystemType()){const e=(0,r.a)(this.m_inputSR,this.m_inputGCS,null);t=(new r.O).execute(t,e,this.m_progressTracker)}return t}_ExecuteBruteForce(t,e,i,n){switch(t.getGeometryType()){case s.G.enumPoint:return this.calculateDistanceGeodeticPointGeometry(t,e,i,n);case s.G.enumMultiPoint:return this.calculateDistanceGeodeticMultipointGeometry(t,e,i,n);case s.G.enumPolyline:case s.G.enumPolygon:case s.G.enumEnvelope:return this.calculateDistanceGeodeticMultipathGeometry(t,e,i,n);default:(0,s.a)("")}}calculateDistanceGeodeticPointGeometry(t,e,i,n){switch(e.getGeometryType()){case s.G.enumPoint:return this.calculateDistanceGeodeticPointPoint(t,e,i,n);case s.G.enumMultiPoint:return this.calculateDistanceGeodeticPointMultipoint(t,e,i,n);case s.G.enumPolyline:case s.G.enumPolygon:return this.calculateDistanceGeodeticPointMultipath(t,e,i,n);default:(0,s.a)("")}}calculateDistanceGeodeticPointPoint(t,e,i,s){const o={stack:[],error:void 0,hasError:!1};try{const m=t.getXY();m.scale(this.m_rpu);const a=e.getXY();a.scale(this.m_rpu),i.outPoint.assign(m),s.outPoint.assign(a);const u=(0,n.mS)(o,new r.M,!1);return r.N.geodeticDistance(this.m_a,this.m_eSquared,m.x,m.y,a.x,a.y,u,null,null,this.m_distCurveType),u.val}catch(t){o.error=t,o.hasError=!0}finally{(0,n.hk)(o)}}calculateDistanceGeodeticPointMultipoint(t,e,i,s){const o={stack:[],error:void 0,hasError:!1};try{this.computeEnvelopesAndBoxes(t,e);const a=this.estimateMinimumDistance(i,s);let c=a<this.m_maxDistance?a:this.m_maxDistance;const h=t.getXY();h.scale(this.m_rpu),i.outPoint.assign(h);const l=(0,r.Q)(this.m_a,this.m_eSquared,h),_=new u.P,g=e.getImpl(),p=(0,n.mS)(o,new r.M,!1),y=g.getPointCount();for(let t=0;t<y;++t){g.queryXY(t,_),_.scale(this.m_rpu);const e=(0,r.Q)(this.m_a,this.m_eSquared,_);if(!(m.f.distance(l,e)>c)&&!(this.m_envHelper.minDistanceGeodesic(this.m_boxGeomA,this.m_boxGeomB)>c)&&(r.N.geodeticDistance(this.m_a,this.m_eSquared,h.x,h.y,_.x,_.y,p,null,null,this.m_distCurveType),p.val<c&&(c=p.val,s.outPoint=_,0===c)))return c}return c===this.m_maxDistance?Number.POSITIVE_INFINITY:c}catch(t){o.error=t,o.hasError=!0}finally{(0,n.hk)(o)}}calculateDistanceGeodeticPointMultipath(t,e,i,o){const m={stack:[],error:void 0,hasError:!1};try{const a=new u.P,c=new u.P;a.assign(t.getXY()),c.assign(t.getXY()),i.outPoint.assign(c.mul(this.m_rpu)),this.m_bIsPannablePcs&&(0,r.R)(this.m_inputSR,[a],1,!1),this.computeEnvelopesAndBoxes(t,e);const h=this.estimateMinimumDistance(i,o);let l=h<this.m_maxDistance?h:this.m_maxDistance;const _=e.getImpl(),g=new u.P(0,0),p=new u.P(0,0),y=[1],d=this.canUseSpatialTree(t,e),x=S();d&&this.buildSpatialTree(x,e);const P=G();P.setCoords({xmin:c.x,ymin:c.y,xmax:c.x,ymax:c.y});const D=(0,n.mS)(m,this.createDistanceFunctor(c,g,p),!1),v=_.querySegmentIterator();if(v.stripAttributes(),d)(0,s.g)(0);else for(;v.nextPath();)for(;v.hasNextSegment();){const t=v.nextSegment(),e=this.findOrComputeBoxSegment(v.getStartPointIndex(),t,this.m_segmentBoxesB);if(this.m_envHelper.minDistanceGeodesic(P,e)>l)continue;const i=this.calculateDistanceGeodeticPointSegment(a,c,t,y,D);if(i.second<l&&(this.updateOutputSegment(o,t,i.first),l=i.second,0===l))return 0}return l===this.m_maxDistance?Number.POSITIVE_INFINITY:l}catch(t){m.error=t,m.hasError=!0}finally{(0,n.hk)(m)}}calculateDistanceGeodeticMultipointGeometry(t,e,i,n){switch(e.getGeometryType()){case s.G.enumPoint:return this.calculateDistanceGeodeticPointMultipoint(e,t,n,i);case s.G.enumMultiPoint:return this.calculateDistanceGeodeticMultipointMultipoint(t,e,i,n);case s.G.enumPolyline:case s.G.enumPolygon:case s.G.enumEnvelope:return this.calculateDistanceGeodeticMultipointMultipath(t,e,i,n);default:(0,s.a)("")}}calculateDistanceGeodeticMultipointMultipoint(t,e,i,s){const o={stack:[],error:void 0,hasError:!1};try{const a=(0,n.mS)(o,new r.M,!1);this.computeEnvelopesAndBoxes(t,e);const c=this.estimateMinimumDistance(i,s);let h=c<this.m_maxDistance?c:this.m_maxDistance;const l=new u.P,_=new u.P,g=t.getImpl(),p=e.getImpl(),y=G(),d=g.getPointCount(),x=p.getPointCount();for(let t=0;t<d;++t){if(l.assign(g.getXY(t)),y.setCoords({xmin:l.x,ymin:l.y,xmax:l.x,ymax:l.y}),this.m_envHelper.minDistanceGeodesic(y,this.m_boxGeomB)>h)continue;l.scale(this.m_rpu);const e=(0,r.Q)(this.m_a,this.m_eSquared,l);for(let t=0;t<x;++t){_.assign(p.getXY(t)),_.scale(this.m_rpu);const n=(0,r.Q)(this.m_a,this.m_eSquared,_);if(!(m.f.distance(e,n)>=h)&&(r.N.geodeticDistance(this.m_a,this.m_eSquared,l.x,l.y,_.x,_.y,a,null,null,this.m_distCurveType),a.val<h&&(i.outPoint.assign(l),s.outPoint.assign(_),h=a.val,0===h)))return h}}return h===this.m_maxDistance?Number.POSITIVE_INFINITY:h}catch(t){o.error=t,o.hasError=!0}finally{(0,n.hk)(o)}}calculateDistanceGeodeticMultipointMultipath(t,e,i,o){const m={stack:[],error:void 0,hasError:!1};try{const a=e.getImpl().querySegmentIterator();a.stripAttributes(),this.computeEnvelopesAndBoxes(t,e);const c=this.estimateMinimumDistance(i,o);let h=c<this.m_maxDistance?c:this.m_maxDistance;const l=new u.P,_=new u.P(0,0),g=new u.P(0,0),p=new u.P(0,0),y=[0],d=G(),x=(0,n.mS)(m,this.createDistanceFunctor(_,g,p),!1),P=S(),D=this.canUseSpatialTree(t,e);D&&this.buildSpatialTree(P,e);const v=t.getPointCount();for(let e=0;e<v;++e)if(l.assign(t.getXY(e)),_.assign(t.getXY(e)),this.m_bIsPannablePcs&&(0,r.R)(this.m_inputSR,[l],1,!1),d.setCoords({xmin:_.x,ymin:_.y,xmax:_.x,ymax:_.y}),!(this.m_envHelper.minDistanceGeodesic(d,this.m_boxGeomB)>h))if(x.setPointDistFrom(_),D)(0,s.g)(0);else{for(;a.nextPath();)for(;a.hasNextSegment();){const t=a.nextSegment();if(this.m_envHelper.minDistanceGeodesic(d,this.findOrComputeBoxSegment(a.getStartPointIndex(),t,this.m_segmentBoxesB))>h)continue;const e=this.calculateDistanceGeodeticPointSegment(l,_,t,y,x);if(e.second<h&&(i.outPoint.assign(_.mul(this.m_rpu)),this.updateOutputSegment(o,t,e.first),h=e.second,0===h))return 0}a.resetToFirstPath()}return h===this.m_maxDistance?Number.POSITIVE_INFINITY:h}catch(t){m.error=t,m.hasError=!0}finally{(0,n.hk)(m)}}calculateDistanceGeodeticMultipathGeometry(t,e,i,n){switch(e.getGeometryType()){case s.G.enumPoint:return this.calculateDistanceGeodeticPointMultipath(e,t,n,i);case s.G.enumMultiPoint:return this.calculateDistanceGeodeticMultipointMultipath(e,t,n,i);case s.G.enumPolyline:case s.G.enumPolygon:case s.G.enumEnvelope:return this.calculateDistanceGeodeticMultipathMultipath(t,e,i,n);default:(0,s.a)("")}}calculateDistanceGeodeticMultipathMultipath(t,e,i,n){const s=[t],o=[e],r=this.swapGeometries(s,o),m=s[0],a=o[0];this.computeEnvelopesAndBoxes(s[0],o[0]);const c=this.estimateMinimumDistance(i,n),h=this.calculateDistanceGeodeticMultipathMultipath_(m,a,i,n,c);return r&&(n.outPoint=(0,u.c)(i.outPoint,i.outPoint=n.outPoint)),h}calculateDistanceGeodeticMultipathMultipath_(t,e,i,m,a=Number.MAX_VALUE){const c={stack:[],error:void 0,hasError:!1};try{let l=a;const _=new u.P(0,0),g=new u.P,p=new u.P(0,0),y=new u.P,d=new u.P(0,0),x=new u.P,P=new u.P,D=new u.P,v=[new u.P],f=[0],M=[0],E=G(),N=G(),b=(0,n.mS)(c,this.createDistanceFunctor(d,_,p),!1),T=S(),I=this.canUseSpatialTree(t,e);I&&this.buildSpatialTree(T,e);const w=e.querySegmentIterator();w.stripAttributes();const B=new o.S,C=(0,h.s)(t);for(let e=0;e<C.length;++e){const n=C[e];t.getSegmentBuffer(n,B,!0);const o=B.get();if(E.assign(this.findOrComputeBoxSegment(n,o,this.m_segmentBoxesA)),I)(0,s.g)(0);else{if(d.assign(o.getStartXY()),x.assign(o.getStartXY()),P.assign(o.getEndXY()),D.assign(o.getEndXY()),this.m_bIsPannablePcs&&((0,r.S)(this.m_inputSR,0,[x],1),(0,r.S)(this.m_inputSR,0,[D],1)),this.m_envHelper.minDistanceGeodesic(E,this.m_boxGeomB)>l)continue;for(;w.nextPath();){for(;w.hasNextSegment();){const t=w.nextSegment();if(_.assign(t.getStartXY()),g.assign(t.getStartXY()),p.assign(t.getEndXY()),y.assign(t.getEndXY()),o.intersect(t,v,f,M,this.m_tolerance))return this.updateOutputSegment(i,o,f[0]),this.updateOutputSegment(m,t,M[0]),0;if(this.m_bIsPannablePcs&&((0,r.S)(this.m_inputSR,0,[g],1),(0,r.S)(this.m_inputSR,0,[y],1)),N.assign(this.findOrComputeBoxPoint(w.getStartPointIndex(),g,y,this.m_segmentBoxesB)),this.m_envHelper.minDistanceGeodesic(E,N)>l)continue;b.setSegmentEndPoints(_,p),b.setPointDistFrom(x);let e=(0,r.U)(b.makeFunctor(),0,1,1e-10);if(e.second<l&&(i.outPoint.assign(x.mul(this.m_rpu)),this.updateOutputSegment(m,t,e.first),l=e.second,0===l))break;if(b.setPointDistFrom(D),e=(0,r.U)(b.makeFunctor(),0,1,1e-10),e.second<l&&(i.outPoint.assign(D.mul(this.m_rpu)),this.updateOutputSegment(m,t,e.first),l=e.second,0===l))break;if(b.setSegmentEndPoints(d,P),b.setPointDistFrom(g),e=(0,r.U)(b.makeFunctor(),0,1,1e-10),e.second<l&&(this.updateOutputSegment(i,o,e.first),m.outPoint.assign(g.mul(this.m_rpu)),l=e.second,0===l))break;if(b.setPointDistFrom(y),e=(0,r.U)(b.makeFunctor(),0,1,1e-10),e.second<l&&(this.updateOutputSegment(i,o,e.first),m.outPoint.assign(y.mul(this.m_rpu)),l=e.second,0===l))break}if(0===l)return 0}w.resetToFirstPath()}}return l===this.m_maxDistance?Number.POSITIVE_INFINITY:l}catch(t){c.error=t,c.hasError=!0}finally{(0,n.hk)(c)}}calculateDistanceGeodeticPointSegment(t,e,i,n,s){const o=i.getStartXY(),m=i.getEndXY();return i.intersectPoint(t,n,this.m_tolerance)?(0,u.k)(n[0],0):(s.setPointDistFrom(e),s.setSegmentEndPoints(o,m),(0,r.U)(s.makeFunctor(),0,1,1e-10))}prepareGeometry(t){let e=t.clone();const i=t.getGeometryType();if(i===s.G.enumPoint||i===s.G.enumMultiPoint)return this._NormalizeAndProject(e);if(i===s.G.enumEnvelope&&(e=this.envelopeToPolygon(e)),this.m_inputSR.isPannable())return this.prepareGeometryPannable(e,4);if(2===this.m_inputSR.getCoordinateSystemType()){if(e=(0,r.V)(e,this.m_inputSR,0,null),e.isEmpty())return e;e=(new g).execute(e,this.m_inputSR,5e4,this.m_maxDeviation/2,0,null);const t=this.m_inputSR.getSRToGCSTransform();return(new r.O).execute(e,t,this.m_progressTracker)}const n=new a.Envelope2D;e.queryLooseEnvelope(n);const o=this.m_inputSR.getPannableExtent();if(n.ymin<o.ymin||n.ymax>o.ymax){const t=new a.Envelope2D(n.xmin-1,o.ymin,n.xmax+1,o.ymax);if(e=(new p.O).execute(e,t,this.m_inputSR,this.m_progressTracker),e.isEmpty())return e}return n.width()>2*o.width()?(e=(0,r.W)(e,-2*o.width(),2*o.width(),this.m_inputSR,!0,0,!0,this.m_progressTracker),e):e}prepareGeometryPannable(t,e){const i=new a.Envelope2D;t.queryEnvelope(i);const n=this.m_inputSR.getPannableExtent();if(n.containsEnvelope(i))return t;const s=new u.E;n.queryIntervalX(s);const o=new u.E;return i.queryIntervalX(o),s.contains(o)?(0,r.X)(t,this.m_inputSR):(new r.O).foldInto360RangeGeodetic(t,this.m_inputSR,e)}prepareOutput(t){t.outPoint.scale(1/this.m_rpu),2===this.m_inputSR.getCoordinateSystemType()&&(0,r.R)(this.m_inputSR,[t.outPoint],1,!1)}updateOutputSegment(t,e,i){e.queryCoord2D(i,t.outPoint),this.m_bIsPannablePcs&&(0,r.S)(this.m_inputSR,0,[t.outPoint],1),t.outPoint.mulThis(this.m_rpu)}computeTolerance(t,e){t.queryEnvelope(this.m_envGeomA),e.queryEnvelope(this.m_envGeomB);const i=new a.Envelope2D(this.m_envGeomA);return i.mergeEnvelope2D(this.m_envGeomB),(0,m.d)(null,i)}envelopeToPolygon(t){const e=new o.P;return e.addEnvelope(t,!1),e}computeEnvelopesAndBoxes(t,e){t.queryEnvelope(this.m_envGeomA),e.queryEnvelope(this.m_envGeomB),this.m_boxGeomA=this.computeBoxGeometry(t,this.m_boundaryPtsA,this.m_segmentBoxesA),this.m_boxGeomB=this.computeBoxGeometry(e,this.m_boundaryPtsB,this.m_segmentBoxesB)}computeBoxGeometry(t,e,i){switch(t.getGeometryType()){case s.G.enumPoint:return this.computeBoxPoint(t,e);case s.G.enumMultiPoint:return this.computeBoxMultiPoint(t,e);case s.G.enumPolyline:case s.G.enumPolygon:return this.computeBoxMultiPath(t,e,i);default:(0,s.d)("Invalid geometry type")}}computeBoxPoint(t,e){const i=t.getXY();e.length=0,e.push(i.mul(this.m_rpu));const n=G();return n.setCoords({xmin:i.x,ymin:i.y,xmax:i.x,ymax:i.y}),n}computeBoxMultiPoint(t,e){let i=!0;for(let n=0;n<t.getPointCount();++n){const s=t.getXY(n);if(i){e.length=0;for(let t=0;t<4;++t)e.push(s.clone());i=!1}s.x<e[0].x&&e[0].assign(s),s.y>e[1].y&&e[1].assign(s),s.x>e[2].x&&e[2].assign(s),s.y<e[3].y&&e[3].assign(s)}for(let t=0;t<e.length;++t)e[t].mulThis(this.m_rpu);const n=G();return t.queryEnvelope(n),n}computeBoxMultiPath(t,e,i){let n=!0;const s=G();s.setEmpty();const o=t.querySegmentIterator();for(o.stripAttributes();o.nextPath();)for(;o.hasNextSegment();){const t=o.nextSegment(),m=t.getStartXY(),a=t.getEndXY();if(this.m_bIsPannablePcs&&((0,r.S)(this.m_inputSR,0,[m],1),(0,r.S)(this.m_inputSR,0,[a],1)),n){for(let t=0;t<4;++t)e.push(m.clone());n=!1}m.x<e[0].x&&e[0].assign(m),m.y>e[1].y&&e[1].assign(m),m.x>e[2].x&&e[2].assign(m),m.y<e[3].y&&e[3].assign(m),a.x<e[0].x&&e[0].assign(a),a.y>e[1].y&&e[1].assign(a),a.x>e[2].x&&e[2].assign(a),a.y<e[3].y&&e[3].assign(a);const u=this.findOrComputeBoxPoint(o.getStartPointIndex(),m,a,i);s.mergeEnvelope2D(u)}for(let t=0;t<e.length;++t)e[t].mulThis(this.m_rpu);return s}findOrComputeBoxSegment(t,e,i){if(!i.has(t)){let n=G();if(e.queryEnvelope(n),this.m_bIsPannablePcs){const t=u.P.construct(n.xmin,n.ymin),e=u.P.construct(n.xmax,n.ymax);(0,r.S)(this.m_inputSR,0,[t],1),(0,r.S)(this.m_inputSR,0,[e],1),n=this.m_envHelper.calculateBbox(t.x,t.y,e.x,e.y)}return i.set(t,n),n}return i.get(t)}findOrComputeBoxPoint(t,e,i,n){if(!n.has(t)){let s=G();return s.setCoords({xmin:e.x,ymin:e.y,xmax:i.x,ymax:i.y}),this.m_bIsPannablePcs&&(s=this.m_envHelper.calculateBbox(s.xmin,s.ymin,s.xmax,s.ymax)),n.set(t,s),s}return n.get(t)}estimateMinimumDistance(t,e){const i={stack:[],error:void 0,hasError:!1};try{const s=t=>(0,r.Q)(this.m_a,this.m_eSquared,t),o=this.m_boundaryPtsA.map(s),a=this.m_boundaryPtsB.map(s);let u=Number.MAX_VALUE,c=0,h=0;for(let t=0;t<o.length;++t)for(let e=0;e<a.length;++e){const i=m.f.distance(o[t],a[e]);i<u&&(u=i,c=t,h=e)}t.outPoint.assign(this.m_boundaryPtsA[c]),e.outPoint.assign(this.m_boundaryPtsB[h]);const l=(0,n.mS)(i,new r.M,!1);return r.N.geodeticDistance(this.m_a,this.m_eSquared,this.m_boundaryPtsA[c].x,this.m_boundaryPtsA[c].y,this.m_boundaryPtsB[h].x,this.m_boundaryPtsB[h].y,l,null,null,this.m_distCurveType),l.val}catch(t){i.error=t,i.hasError=!0}finally{(0,n.hk)(i)}}swapGeometries(t,e){return(0,s.v)(t[0])>(0,s.v)(e[0])&&(e[0]=(0,u.c)(t[0],t[0]=e[0]),this.m_envGeomB=(0,u.c)(this.m_envGeomA,this.m_envGeomA=this.m_envGeomB),!0)}canUseSpatialTree(t,e){return!1}checkGeometriesIntersect(t,e,i,n){let o=t.getGeometryType(),m=e.getGeometryType();if(this.m_envGeomA.isIntersecting(this.m_envGeomB)){if(o===s.G.enumPoint&&2===e.getDimension()){const s=[0],o=[t.getXY()];if((0,r.Y)(e,o,1,this.m_tolerance,s),0!==s[0])return i.outPoint.assign(o[0]),n.outPoint.assign(o[0]),!0}else if(m===s.G.enumPoint&&2===t.getDimension()){const s=[2],o=[e.getXY()];if((0,r.Y)(t,o,1,this.m_tolerance,s),0!==s[0])return i.outPoint.assign(o[0]),n.outPoint.assign(o[0]),!0}if(o===s.G.enumMultiPoint&&2===e.getDimension())return this.multipointIntersectsArea(t,e,i,n);if(m===s.G.enumMultiPoint&&2===t.getDimension())return this.multipointIntersectsArea(e,t,n,i);let a,u,c=t,l=e;if(o===s.G.enumEnvelope&&(a=this.envelopeToPolygon(t),c=a,o=s.G.enumPolygon),m===s.G.enumEnvelope&&(u=this.envelopeToPolygon(e),l=u,m=s.G.enumPolygon),(0,s.h)(o)&&(0,s.h)(m)){const t=c.querySegmentIterator(),e=l.querySegmentIterator(),s=(0,h.m)(),o=(0,h.m)();if((0,h.w)(c,l,t,e,s,o))return i.outPoint.assign(s.outPoint),n.outPoint.assign(s.outPoint),!0}}return!1}multipointIntersectsArea(t,e,i,n){const s=t.getPointCount();for(let o=0;o<s;++o){const s=[2],m=t.getXY(o);if((0,r.Y)(e,[m],1,this.m_tolerance,s),0!==s[0])return i.outPoint.assign(m),n.outPoint.assign(m),!0}return!1}getNearestNeighbourVisitor(t,e,i,n,o,r,m){return(0,s.g)(0),{}}buildSpatialTree(t,e){(0,s.g)(0)}}},61691(t,e,i){i.d(e,{G:()=>n});class n{*[Symbol.iterator](){let t=this.next();for(;t;)yield t,t=this.next()}}},31088(t,e,i){i.r(e),i.d(e,{OperatorGeodeticDensifyByLength:()=>m,OperatorGeodeticDensifyCursor:()=>a});var n=i(61691),s=i(55537),o=i(15756),r=i(76061);class m{getOperatorType(){return 10310}supportsCurves(){return!0}accelerateGeometry(t,e,i){return!1}canAccelerateGeometry(t){return!1}executeMany(t,e,i,n,s){return new a(t,i,n,e,-1,-1,s)}execute(t,e,i,n,o){const m=new r.S([t]),a=this.executeMany(m,e,i,n,o).next();return a||(0,s.d)("null output"),a}}class a extends n.G{constructor(t,e,i,n,o,r,m){super(),this.m_progressTracker=m,r>0&&(0,s.t)(""),4!==i&&o>0&&(0,s.t)(""),e||(0,s.a)(""),0===e.getCoordinateSystemType()&&(0,s.a)(""),n>0||o>0||(0,s.a)(""),this.m_index=-1,this.m_inputGeoms=t,this.m_spatialReference=e,this.m_curveType=i,this.m_maxLengthMeters=n,this.m_maxDeviationMeters=o,this.m_maxAngle=r}next(){{let t;for(;t=this.m_inputGeoms.next();)return(0,s.c)(t),this.m_index=this.m_inputGeoms.getGeometryID(),this.geodeticDensify(t);return null}}getGeometryID(){return this.m_index}tock(){return!0}getRank(){return 1}geodeticDensify(t){return(0,o.a1)(t,this.m_spatialReference,this.m_curveType,this.m_maxLengthMeters,this.m_maxDeviationMeters,this.m_progressTracker)}}},76061(t,e,i){i.d(e,{S:()=>s});var n=i(61691);class s extends n.G{constructor(t){super(),this.m_iGeom=-1,this.m_aGeoms=t?t.slice():[]}next(){if(this.m_iGeom<this.m_aGeoms.length-1){const t=this.m_aGeoms[++this.m_iGeom];return this.m_aGeoms[this.m_iGeom]=null,t}return null}tock(){return!1}getGeometryID(){return this.m_iGeom}getRank(){return 1}}}}]);
|