@arcgis/core 4.32.0-next.20250211 → 4.32.0-next.20250213
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/assets/esri/core/workers/RemoteClient.js +1 -1
- package/assets/esri/core/workers/chunks/04f9fb33fb2e33712290.js +1 -0
- package/assets/esri/core/workers/chunks/0b8bf1966653c326e95a.js +1 -0
- package/assets/esri/core/workers/chunks/{a4a9b4f792d47566fbf4.js → 17213c3fc63f580e5b73.js} +1 -1
- package/assets/esri/core/workers/chunks/1a6b6d43eda7986d2349.js +1 -0
- package/assets/esri/core/workers/chunks/{12d6baeffd55a98a7c75.js → 1bf646c9fc352f98d1ca.js} +1 -1
- package/assets/esri/core/workers/chunks/1c357cdb067e28aff3f0.js +1 -0
- package/assets/esri/core/workers/chunks/{9a237b396518b1c67f19.js → 24964548c6a3e2eb527d.js} +1 -1
- package/assets/esri/core/workers/chunks/272662e4e28341419b4f.js +1 -0
- package/assets/esri/core/workers/chunks/31f0dd191602b93c02c2.js +1 -0
- package/assets/esri/core/workers/chunks/{74844334b3a2100220fc.js → 37cfd102b6ab5b959f9d.js} +1 -1
- package/assets/esri/core/workers/chunks/3835c2884c55e73dc202.js +1 -0
- package/assets/esri/core/workers/chunks/{f429d95eb986f3d215f3.js → 391c200274bbeb92404c.js} +1 -1
- package/assets/esri/core/workers/chunks/{8ddd4e2e50b8206564a7.js → 3ebdd0701e77bb28c75d.js} +1 -1
- package/assets/esri/core/workers/chunks/{c0af54cc5938176ce764.js → 3fe7be535affae31de7e.js} +1 -1
- package/assets/esri/core/workers/chunks/401b731c0601f4d84ead.js +1 -0
- package/assets/esri/core/workers/chunks/4565cfc85f60960e3ea1.js +1 -0
- package/assets/esri/core/workers/chunks/4848a3e31632d15dc4ce.js +1 -0
- package/assets/esri/core/workers/chunks/4a4739cda8aac510004b.js +1 -0
- package/assets/esri/core/workers/chunks/{d0656e9d30eb3a66a8db.js → 4be39bc2d2edd94bdb75.js} +1 -1
- package/assets/esri/core/workers/chunks/5328b2de0d1ac2536ecf.js +1 -0
- package/assets/esri/core/workers/chunks/{62a1d60ad4bf6469c4dd.js → 584216b52413cf85fecc.js} +1 -1
- package/assets/esri/core/workers/chunks/{76794184ba8c2e66745e.js → 629f4621ba6ffdcaa2f9.js} +1 -1
- package/assets/esri/core/workers/chunks/{8191dd3d7451b2e7b95e.js → 637e996209e0d241fbf7.js} +1 -1
- package/assets/esri/core/workers/chunks/{77bfd4f819096cb754ae.js → 6e92569a4a82592b95dc.js} +1 -1
- package/assets/esri/core/workers/chunks/6f007703662e714b2f0a.js +1 -0
- package/assets/esri/core/workers/chunks/{50ae86c23efe709f41cc.js → 6fa1f1e431aae1794ce3.js} +1 -1
- package/assets/esri/core/workers/chunks/744bdf2bb0cc38e6a7b1.js +1 -0
- package/assets/esri/core/workers/chunks/802a390c67f4cdf3d8d9.js +1 -0
- package/assets/esri/core/workers/chunks/82facb23dfaba2819bc7.js +1 -0
- package/assets/esri/core/workers/chunks/{c26ffbff1115e76bcb0f.js → 86f3a004addc087ad6c6.js} +1 -1
- package/assets/esri/core/workers/chunks/8722d05ae9b0aa5162a4.js +1 -0
- package/assets/esri/core/workers/chunks/8de4280080296adb1757.js +1 -0
- package/assets/esri/core/workers/chunks/9306bfe7ab58e71b75ea.js +1 -0
- package/assets/esri/core/workers/chunks/95047f145ebda65c3d8e.js +1 -0
- package/assets/esri/core/workers/chunks/{1f443b99653708470f31.js → 96d7f47ea8fbf345101c.js} +1 -1
- package/assets/esri/core/workers/chunks/a01213d446be33d203e3.js +1 -0
- package/assets/esri/core/workers/chunks/a490a988896b0b02f96b.js +1 -0
- package/assets/esri/core/workers/chunks/a60db83cabdf689b923b.js +1 -0
- package/assets/esri/core/workers/chunks/{df3d1a8d3f11d52eb30d.js → afdbdc1569b56489c14d.js} +1 -1
- package/assets/esri/core/workers/chunks/{89e3f7880abd014a62c0.js → b42d26123784997c66e8.js} +1 -1
- package/assets/esri/core/workers/chunks/{b9d9a1dc3c5d799e2685.js → bd3487b587851b20ff2a.js} +1 -1
- package/assets/esri/core/workers/chunks/{94490937dca566fe2640.js → bd5e0a11d2a688a65d23.js} +1 -1
- package/assets/esri/core/workers/chunks/c3806be4a760735e6082.js +1 -0
- package/assets/esri/core/workers/chunks/c9aed9a43d9935e7c768.js +314 -0
- package/assets/esri/core/workers/chunks/{8d8f5f08d730270e1165.js → cb9a27176bd5de2c34ca.js} +1 -1
- package/assets/esri/core/workers/chunks/ceb648604a4b6d316f4b.js +1 -0
- package/assets/esri/core/workers/chunks/d31e25a63f967fedb149.js +1 -0
- package/assets/esri/core/workers/chunks/{da1157e288dbc6ba842a.js → d3d0c7624eb139994213.js} +1 -1
- package/assets/esri/core/workers/chunks/{f198f4ba7d3d52882d98.js → de8044dfab4ad253b126.js} +1 -1
- package/assets/esri/core/workers/chunks/ecd66dbc4ff446c64984.js +1 -0
- package/assets/esri/core/workers/chunks/f78b63620386b2676f1f.js +1 -0
- package/assets/esri/core/workers/chunks/{1cbeac3301b6943bb28a.js → fc07d47d44c04f123650.js} +1 -1
- package/assets/esri/core/workers/chunks/fca056536e46aeb98e98.js +1 -0
- package/assets/esri/themes/base/_core.scss +4 -0
- package/assets/esri/themes/base/widgets/_BasemapGallery.scss +0 -5
- package/assets/esri/themes/base/widgets/_Directions.scss +30 -9
- package/assets/esri/themes/base/widgets/_Editor.scss +1 -0
- package/assets/esri/themes/base/widgets/_FeatureFormUtilityNetworkAssociationLayers.scss +80 -0
- package/assets/esri/themes/base/widgets/_FeatureFormUtilityNetworkAssociationList.scss +14 -0
- package/assets/esri/themes/base/widgets/_FeatureFormUtilityNetworkAssociationSettings.scss +41 -0
- package/assets/esri/themes/base/widgets/_FilterBuilder.scss +1 -6
- package/assets/esri/themes/dark/main.css +1 -1
- package/assets/esri/themes/light/main.css +1 -1
- package/assets/esri/themes/light/view.css +1 -1
- package/chunks/Bufferer-B-V7yYm-.js +5 -0
- package/chunks/ComponentShader.glsl.js +6 -6
- package/chunks/Distance2DCalculator-Coa0qAFt.js +5 -0
- package/chunks/Envelope.js +1 -1
- package/chunks/{GeodeticDistanceCalculator-BsWHOuqE.js → GeodeticDistanceCalculator-D4iQ-_NX.js} +1 -1
- package/chunks/Geometry.js +1 -1
- package/chunks/OperatorClip.js +1 -1
- package/chunks/OperatorCut.js +1 -1
- package/chunks/OperatorGeneralize.js +1 -1
- package/chunks/OperatorGeodesicBuffer.js +1 -1
- package/chunks/OperatorGeodeticArea.js +1 -1
- package/chunks/OperatorGeodeticDistance.js +1 -1
- package/chunks/OperatorProximityGeodesic.js +1 -1
- package/chunks/OperatorShapePreservingLength.js +1 -1
- package/chunks/OperatorShapePreservingProject.js +1 -1
- package/chunks/Point2D.js +1 -1
- package/chunks/ProjectionTransformation.js +1 -1
- package/chunks/QuadraticBezier.js +1 -1
- package/chunks/ShadowHighlight.glsl.js +2 -4
- package/chunks/distanceOperator.js +1 -1
- package/core/deprecate.js +1 -1
- package/editing/templateUtils.js +1 -1
- package/geometry/operators/extendOperator.js +1 -1
- package/geometry/operators/gx/operatorAlphaShape.js +1 -1
- package/geometry/operators/gx/operatorBuffer.js +1 -1
- package/geometry/operators/gx/operatorGraphicBuffer.js +1 -1
- package/geometry/operators/gx/operatorIntegrate.js +1 -1
- package/geometry/operators/gx/operatorOffset.js +1 -1
- package/geometry/operators/gx/operatorSymmetricDifference.js +1 -1
- package/geometry/operators/isNearOperator.js +1 -1
- package/geometry/operators/projectOperator.js +1 -1
- package/geometry/operators/shapePreservingProjectOperator.js +1 -1
- package/geometry/operators/support/jsonConverter.js +1 -1
- package/interfaces.d.ts +616 -122
- package/layers/FeatureLayer.js +1 -1
- package/layers/GeoJSONLayer.js +1 -1
- package/layers/OGCFeatureLayer.js +1 -1
- package/layers/RouteLayer.js +1 -1
- package/layers/SubtypeGroupLayer.js +1 -1
- package/layers/WFSLayer.js +1 -1
- package/layers/graphics/data/queryUtils.js +1 -1
- package/layers/mixins/TrackableLayer.d.ts +4 -0
- package/layers/support/SubtypeSublayer.js +1 -1
- package/layers/support/TitleCreator.js +5 -0
- package/layers/support/TrackInfo.d.ts +4 -0
- package/layers/support/TrackPartInfo.d.ts +4 -0
- package/layers/support/rasterDatasets/WCSRaster.js +1 -1
- package/layers/support/rasterFormats/RasterCodec.js +1 -1
- package/layers/support/rasterFormats/TiffDecoder.js +1 -1
- package/layers/support/rasterFormats/pixelRangeUtils.js +1 -1
- package/networks/Network.js +1 -1
- package/networks/RulesTable.js +1 -1
- package/networks/UtilityNetwork.js +1 -1
- package/networks/support/networkFieldUtils.js +5 -0
- package/networks/support/typeUtils.js +1 -1
- package/package.json +1 -1
- package/rest/query/executeForIds.js +1 -1
- package/rest/support/BinParametersBase.js +1 -1
- package/support/revision.js +1 -1
- package/symbols/cim/CIMSymbolRasterizer.js +1 -1
- package/symbols/cim/rasterizingUtils.js +1 -1
- package/symbols/support/previewCIMSymbol.js +1 -1
- package/symbols/support/previewSymbol2D.js +1 -1
- package/symbols/support/symbolUtils.js +1 -1
- package/views/2d/engine/webgl/AttributeStoreView.js +1 -1
- package/views/2d/layers/FeatureLayerView2D.js +1 -1
- package/views/2d/layers/RouteLayerView2D.js +1 -1
- package/views/2d/layers/features/FeatureContainer.js +1 -1
- package/views/2d/layers/features/FeaturePipelineWorker.js +1 -1
- package/views/2d/layers/features/sources/FeatureSource.js +1 -1
- package/views/2d/layers/features/sources/strategies/chunks/Overrides.js +1 -1
- package/views/2d/layers/features/sources/strategies/chunks/SourceChunkStore.js +1 -1
- package/views/2d/layers/features/support/FeatureSetReader.js +1 -1
- package/views/2d/layers/support/RouteLayerInteraction.js +1 -1
- package/views/3d/interactive/editingTools/transform/ScaleRotateMeshAdapter.js +1 -1
- package/views/3d/interactive/editingTools/transform/TransformTool3D.js +1 -1
- package/views/3d/layers/graphics/Graphics3DMeshFillSymbolLayer.js +1 -1
- package/views/3d/webgl-engine/collections/Component/ComponentData.js +1 -1
- package/views/3d/webgl-engine/collections/Component/Material/ComponentMaterial.js +1 -1
- package/views/3d/webgl-engine/core/renderPasses/RenderPassManager.js +1 -1
- package/views/3d/webgl-engine/lib/ShadowAccumulator.js +1 -1
- package/views/3d/webgl-engine/lib/lodRendering/LodRenderer.js +1 -1
- package/views/3d/webgl-engine/materials/renderers/MergedRenderer.js +1 -1
- package/views/3d/webgl-engine/materials/renderers/PerBufferData.js +1 -1
- package/views/SceneView.js +1 -1
- package/views/View.js +1 -1
- package/views/layers/FeatureLayerView.js +1 -1
- package/views/support/RequiredFieldsOptions.js +5 -0
- package/widgets/AreaMeasurement2D/AreaMeasurement2DTool.js +1 -1
- package/widgets/AreaMeasurement2D/AreaMeasurement2DViewModel.js +1 -1
- package/widgets/AreaMeasurement2D.js +1 -1
- package/widgets/BasemapGallery.js +1 -1
- package/widgets/BasemapToggle.js +1 -1
- package/widgets/BatchAttributeForm/BatchAttributeFormViewModel.js +1 -1
- package/widgets/BatchAttributeForm/ReactiveGraphic.js +1 -1
- package/widgets/BatchAttributeForm/inputs/EditableInput.js +1 -1
- package/widgets/BatchAttributeForm/inputs/FieldInput.js +1 -1
- package/widgets/BatchAttributeForm/inputs/GroupInput.js +1 -1
- package/widgets/BatchAttributeForm/inputs/InputBase.js +1 -1
- package/widgets/BatchAttributeForm/inputs/support/inputUtils.js +1 -1
- package/widgets/BatchAttributeForm/templates/support/createBatchFormTemplate.js +1 -1
- package/widgets/BatchAttributeForm.js +1 -1
- package/widgets/Bookmarks/BookmarksViewModel.js +1 -1
- package/widgets/Compass/CompassViewModel.js +1 -1
- package/widgets/DirectionalPad.js +1 -1
- package/widgets/Directions/DirectionsViewModel.js +1 -1
- package/widgets/Directions.js +1 -1
- package/widgets/DistanceMeasurement2D/DistanceMeasurement2DTool.js +1 -1
- package/widgets/DistanceMeasurement2D/DistanceMeasurement2DViewModel.js +1 -1
- package/widgets/DistanceMeasurement2D.js +1 -1
- package/widgets/Editor/AddAssociationWorkflow.js +5 -0
- package/widgets/Editor/AddAssociationWorkflowData.js +5 -0
- package/widgets/Editor/EditorViewModel.js +1 -1
- package/widgets/Editor/UpdateWorkflow.js +1 -1
- package/widgets/Editor/components/UpdateFeaturePanelContent.js +1 -1
- package/widgets/Editor.js +1 -1
- package/widgets/Feature/FeatureUtilityNetworkAssociationList.js +1 -1
- package/widgets/Feature/FeatureUtilityNetworkAssociations.js +1 -1
- package/widgets/Feature/FeatureViewModel.js +1 -1
- package/widgets/Feature/support/featureUtils.js +1 -1
- package/widgets/FeatureForm/FeatureFormUtilityNetworkAssociations/FeatureFormUtilityNetworkAssociationList.js +1 -1
- package/widgets/FeatureForm/FeatureFormUtilityNetworkAssociations/UtilityNetworkAssociationItemList.js +5 -0
- package/widgets/FeatureForm/FeatureFormUtilityNetworkAssociations/UtilityNetworkAssociationSettings.js +5 -0
- package/widgets/FeatureForm/FeatureFormViewModel.js +1 -1
- package/widgets/FeatureForm/UtilityNetworkAssociationAddAssociationViewModel.js +5 -0
- package/widgets/FeatureForm/UtilityNetworkAssociationInput.js +1 -1
- package/widgets/FeatureForm.js +1 -1
- package/widgets/FeatureTable/support/FeatureStore.js +1 -1
- package/widgets/Fullscreen.js +1 -1
- package/widgets/Home.js +1 -1
- package/widgets/Legend/LegendViewModel.js +1 -1
- package/widgets/Legend/support/ActiveLayerInfo.js +1 -1
- package/widgets/Legend.js +1 -1
- package/widgets/Locate.js +1 -1
- package/widgets/OrientedImageryViewer/OrientedImageryViewerViewModel.js +1 -1
- package/widgets/OrientedImageryViewer/imageMeasurementUtils.js +1 -1
- package/widgets/OrientedImageryViewer/symbols.js +1 -1
- package/widgets/ScaleBar.js +1 -1
- package/widgets/Swipe.js +1 -1
- package/widgets/Track.js +1 -1
- package/widgets/UtilityNetworkAssociations/UtilityNetworkAssociationsViewModel.d.ts +2 -2
- package/widgets/UtilityNetworkTrace/UtilityNetworkTraceViewModel.js +1 -1
- package/widgets/UtilityNetworkTrace.js +1 -1
- package/widgets/support/FilterBuilder/FilterBuilderViewModel.js +1 -1
- package/widgets/support/FilterBuilder.js +1 -1
- package/widgets/support/FilterCondition/FilterConditionViewModel.js +1 -1
- package/widgets/support/FilterCondition.js +1 -1
- package/widgets/support/GoTo.js +1 -1
- package/widgets/support/UtilityNetworkAssociations/FeatureUtilityNetworkAssociationsViewModel.js +5 -0
- package/widgets/support/UtilityNetworkAssociations/UtilityNetworkAssociationList.js +1 -1
- package/widgets/support/UtilityNetworkAssociations/utilityNetworkUtils.js +1 -1
- package/widgets/support/goToUtils.js +5 -0
- package/assets/esri/core/workers/chunks/01c3507d78398baaf61b.js +0 -1
- package/assets/esri/core/workers/chunks/0ac1399d252f2df670b6.js +0 -1
- package/assets/esri/core/workers/chunks/177d4c2c10ef7369006f.js +0 -1
- package/assets/esri/core/workers/chunks/26a2bd432e7a1b3870c3.js +0 -1
- package/assets/esri/core/workers/chunks/3d5442055e01493efcb2.js +0 -1
- package/assets/esri/core/workers/chunks/44abd2cd17aae3299ede.js +0 -1
- package/assets/esri/core/workers/chunks/594d923400fd74881833.js +0 -1
- package/assets/esri/core/workers/chunks/61795bde00f2e16d04f1.js +0 -1
- package/assets/esri/core/workers/chunks/7058001bf66f9f3d5d45.js +0 -1
- package/assets/esri/core/workers/chunks/746c964cf07e4306f21f.js +0 -1
- package/assets/esri/core/workers/chunks/74f42e46bf551aab14dc.js +0 -1
- package/assets/esri/core/workers/chunks/7bf08823f861628144a1.js +0 -1
- package/assets/esri/core/workers/chunks/8c32cee395da0a7b9a8e.js +0 -1
- package/assets/esri/core/workers/chunks/91384398f01485631f70.js +0 -1
- package/assets/esri/core/workers/chunks/946a9890f3621d1dfbc5.js +0 -1
- package/assets/esri/core/workers/chunks/9fb45c006d790273e8c1.js +0 -1
- package/assets/esri/core/workers/chunks/a2409d4921c02614169a.js +0 -1
- package/assets/esri/core/workers/chunks/a6be1105a5e1f9597c5e.js +0 -1
- package/assets/esri/core/workers/chunks/af917f69d9c6e9937263.js +0 -1
- package/assets/esri/core/workers/chunks/cc75bbfd779f409943a3.js +0 -1
- package/assets/esri/core/workers/chunks/d0e9874eb304010305c6.js +0 -1
- package/assets/esri/core/workers/chunks/d27a199fd8e2ade69254.js +0 -1
- package/assets/esri/core/workers/chunks/d339dee99c4820b63f39.js +0 -1
- package/assets/esri/core/workers/chunks/d35efcbe439500bf18bc.js +0 -1
- package/assets/esri/core/workers/chunks/d44d210e94406509e980.js +0 -314
- package/assets/esri/core/workers/chunks/e5e3b6d00d27b5bb354f.js +0 -1
- package/assets/esri/core/workers/chunks/f14b318bab5efcf43419.js +0 -1
- package/assets/esri/core/workers/chunks/f29715459ecd46180829.js +0 -1
- package/assets/esri/core/workers/chunks/f9070edd8e0b2a57af79.js +0 -1
- package/chunks/Bufferer-DjC-SKTJ.js +0 -5
- package/chunks/Distance2DCalculator-8-JrFGHH.js +0 -5
- package/widgets/FeatureForm/FeatureFormUtilityNetworkAssociations/FeatureFormUtilityNetworkAssociationSettings.js +0 -5
- package/widgets/support/UtilityNetworkAssociations/UtilityNetworkAssociationsViewModel.d.ts +0 -4
- package/widgets/support/UtilityNetworkAssociations/UtilityNetworkAssociationsViewModel.js +0 -5
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[1088,5008,6061],{35274:(e,t,n)=>{n.d(t,{D:()=>E,m:()=>m,s:()=>d,w:()=>y});var s=n(90237),i=n(55537),r=n(35368),a=n(12189),o=n(83661),_=n(79187),h=n(95213);function m(){return{outPoint:new o.P,index:-1,t:Number.NaN}}function u(e,t,n){return{outPoint:e.clone(),index:t,t:n}}function c(e,t,n,s){e.outPoint.assign(t),e.index=n,e.t=s}function l(e,t){e.outPoint.assign(t.outPoint),e.index=t.index,e.t=t.t}function g(e,t,n,s){e.index=n,e.t=s,t.queryCoord2D(e.t,e.outPoint)}function p(e,t){const n=m();l(n,e),l(e,t),l(t,n)}function y(e,t,n,s,r,o){if(e.getGeometryType()===i.G.enumPolygon){for(;s.nextPath();)if(s.hasNextSegment()){const t=s.nextSegment();if(0!==(0,a.g)(e,t.getEndXY(),0))return c(r,t.getEndXY(),-1,Number.NaN),c(o,t.getEndXY(),-1,Number.NaN),!0}s.resetToFirstPath()}if(t.getGeometryType()===i.G.enumPolygon){for(;n.nextPath();)if(n.hasNextSegment()){const e=n.nextSegment();if(0!==(0,a.g)(t,e.getEndXY(),0))return c(r,e.getEndXY(),-1,Number.NaN),c(o,e.getEndXY(),-1,Number.NaN),!0}n.resetToFirstPath()}return!1}function d(e){const t=e.getPathCount(),n=(0,o.d)(e.getSegmentCount(),0);let s=0;for(let i=0;i<t;++i){const t=s+e.getSegmentCountPath(i);for(let r=s,a=e.getPathStart(i);r<t;++r,++a)n[r]=a;s=t}return(0,r.s)(e.getPointCount(),n),n}function P(e,t){return!!Number.isNaN(t)||e<=t}function f(e){const t=new r.a;return t.addEnvelope(e,!1),t}class E{constructor(e,t){if(this.m_env2DgeometryA=null,this.m_env2DgeometryB=null,this.m_progressCounter=0,this.m_progressTracker=t,this.m_maxSqrDistance=e*e,this.m_maxDistance=e,this.m_bIsNearCalc=!1,Number.isNaN(this.m_maxDistance)?this.m_maxDistance=Number.POSITIVE_INFINITY:this.m_maxDistance=e,this.m_maxSqrDistance=this.m_maxDistance*this.m_maxDistance,Number.isFinite(this.m_maxSqrDistance)){let e=Math.sqrt(this.m_maxSqrDistance);for(;e<this.m_maxDistance;)this.m_maxSqrDistance*=1+Number.EPSILON,e=Math.sqrt(this.m_maxSqrDistance)}}calculate(e,t,n,s){if((e.getGeometryType()!==h.P.type||t.getGeometryType()!==h.P.type)&&(this.m_env2DgeometryA=new _.J,this.m_env2DgeometryB=new _.J,e.queryEnvelope(this.m_env2DgeometryA),t.queryEnvelope(this.m_env2DgeometryB),!P(this.m_env2DgeometryA.distanceFromEnvelope(this.m_env2DgeometryB),this.m_maxDistance)))return Number.POSITIVE_INFINITY;const i=u(new o.P,(0,o.j)(),Number.NaN),r=u(new o.P,(0,o.j)(),Number.NaN),a=this._ExecuteBruteForce(e,t,i,r);return P(a,this.m_maxDistance)?(null!==n&&l(n,i),null!==s&&l(s,r),a):Number.POSITIVE_INFINITY}isNear(e,t){if(this.m_bIsNearCalc=!0,e.isEmpty()||t.isEmpty())return!1;if(e===t)return!0;let n=!0;if(e.getGeometryType()!==h.P.type&&e.getGeometryType()!==h.E.type||t.getGeometryType()!==h.P.type&&t.getGeometryType()!==h.E.type||(n=!1),n){if(this.m_env2DgeometryA=new _.J,this.m_env2DgeometryB=new _.J,e.queryEnvelope(this.m_env2DgeometryA),t.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 s=u(new o.P,(0,o.j)(),Number.NaN),i=u(new o.P,(0,o.j)(),Number.NaN);return this._ExecuteBruteForce(e,t,s,i)<=this.m_maxDistance}progress_(e=!1){}_ExecuteBruteForce(e,t,n,s){switch(e.getGeometryType()){case i.G.enumPoint:return this.distancePointGeometry(e,t,n,s);case i.G.enumMultiPoint:return this.distanceMultipointGeometry(e,t,n,s);case i.G.enumEnvelope:return this.distanceEnvelopeGeometry(e,t,n,s);case i.G.enumPolyline:case i.G.enumPolygon:return this.distanceMultipathGeometry(e,t,n,s);default:return Number.NaN}}distancePointGeometry(e,t,n,s){switch(t.getGeometryType()){case i.G.enumPoint:return this.distancePointPoint(e,t,n,s);case i.G.enumMultiPoint:return this.distancePointMultipoint(e,t,n,s);case i.G.enumPolyline:case i.G.enumPolygon:return this.distancePointMultipath(e,t,n,s);case i.G.enumEnvelope:return this.distancePointEnvelope(e,t,n,s);default:return Number.NaN}}distancePointPoint(e,t,n,s){const i=e.getXY(),r=t.getXY();return c(n,i,0,0),c(s,r,0,0),Math.sqrt(o.P.sqrDistance(i,r))}distancePointMultipoint(e,t,n,s){const i=e.getXY();let r=this.m_maxSqrDistance,a=r,_=!1;const h=t.getPointCount(),m=new o.P;for(let e=0;e<h;++e)if(t.queryXY(e,m),a=o.P.sqrDistance(i,m),this.m_bIsNearCalc){if(a<=r)return 0}else if(!(a>r)&&(!_&&a===r||a<r)&&(r=a,c(n,i,0,0),c(s,m,e,0),_=!0,0===r))return 0;return _?Math.sqrt(r):Number.POSITIVE_INFINITY}distancePointMultipath(e,t,n,s){const r=!this.m_env2DgeometryA.isIntersecting(this.m_env2DgeometryB),h=e.getXY();if(!r&&t.getGeometryType()===i.G.enumPolygon&&0!==(0,a.g)(t,h,0))return c(n,h,0,0),c(s,h,-1,Number.NaN),0;t.getImpl().getAccelerators();let m=this.m_maxSqrDistance,u=m,l=-1;const g=new _.J,p=t.querySegmentIterator();let y=!1;for(;p.nextPath();)for(;p.hasNextSegment();){const e=p.nextSegment();e.queryEnvelope(g);const t=g.sqrDistance(h);if(t>m)continue;if(!this.m_bIsNearCalc&&y&&t===m)continue;l=e.getClosestCoordinate(h,!1);const i=e.getCoord2D(l);if(u=o.P.sqrDistance(h,i),this.m_bIsNearCalc){if(u<=m)return 0}else if(!(u>m)&&(!y||u<m)&&(m=u,c(n,h,0,0),c(s,i,p.getStartPointIndex(),l),y=!0,0===m))return 0}return y?Math.sqrt(m):Number.POSITIVE_INFINITY}distancePointEnvelope(e,t,n,s){const i=e.getXY();c(n,i,0,0),c(s,i,-1,Number.NaN);const r=t.asEnvelope2D();return r.contains(i)?0:Math.sqrt(r.sqrDistance(i,s.outPoint))}distanceMultipointGeometry(e,t,n,s){switch(t.getGeometryType()){case i.G.enumPoint:{this.m_env2DgeometryB=(0,o.b)(this.m_env2DgeometryA,this.m_env2DgeometryA=this.m_env2DgeometryB);const i=this.distancePointMultipoint(t,e,s,n);return this.m_env2DgeometryB=(0,o.b)(this.m_env2DgeometryA,this.m_env2DgeometryA=this.m_env2DgeometryB),i}case i.G.enumMultiPoint:return this.distanceMultipointMultipoint(e,t,n,s,1,1);case i.G.enumPolyline:case i.G.enumPolygon:return this.distanceMultipointMultipath(e,t,n,s);case i.G.enumEnvelope:return this.distanceMultipointMultipath(e,f(t),n,s);default:return Number.NaN}}distanceMultipointMultipoint(e,t,n,i,r,a){const _={stack:[],error:void 0,hasError:!1};try{if(this.m_bIsNearCalc&&1===r&&1===a){const s=Math.trunc((0,o.c)(Math.sqrt(e.getPointCount())+1,1,(0,o.i)())),r=Math.trunc((0,o.c)(Math.sqrt(t.getPointCount())+1,1,(0,o.i)()));if((s>=4||r>=4)&&this.distanceMultipointMultipoint(e,t,n,i,s,r)<=this.m_maxSqrDistance)return 0}let h=this.m_maxSqrDistance;const m=[e],u=[t],l=this.swapGeometriesIfBGtA(m,u);l&&(this.m_env2DgeometryB=(0,o.b)(this.m_env2DgeometryA,this.m_env2DgeometryA=this.m_env2DgeometryB),a=(0,o.b)(r,r=a),p(n,i)),(0,s.b)(_,(0,o.h)((()=>{p(n,i),this.m_env2DgeometryB=(0,o.b)(this.m_env2DgeometryA,this.m_env2DgeometryA=this.m_env2DgeometryB)}),!l),!1);const g=m[0].getImpl(),y=u[0].getImpl(),d=g.getPointCount(),P=y.getPointCount(),f=P>1;let E=!1;const S=new o.P,x=new o.P;for(let e=0;e<d;e+=r){if(g.queryXY(e,S),f){const e=this.m_env2DgeometryB.sqrDistance(S);if(this.m_bIsNearCalc){if(e>h)continue;if(this.m_env2DgeometryB.sqrMaxMinDistance(S)<=h)return 0}else if(e>=h)continue}for(let t=0;t<P;t+=a){y.queryXY(t,x);const s=o.P.sqrDistance(S,x);if(this.m_bIsNearCalc){if(s<=h)return 0}else if(!(s>h||E&&s===h)&&(!E||s<h)&&(c(n,S,e,0),c(i,x,t,0),E=!0,h=s,0===h))return E?Math.sqrt(h):Number.POSITIVE_INFINITY}}return E?Math.sqrt(h):Number.POSITIVE_INFINITY}catch(e){_.error=e,_.hasError=!0}finally{(0,s.c)(_)}}distanceMultipointMultipath(e,t,n,s){let r=!!this.m_env2DgeometryA.isIntersecting(this.m_env2DgeometryB)&&t.getGeometryType()===i.G.enumPolygon;const h=t.querySegmentIterator();h.stripAttributes();const m=new _.J,u=new o.P;let l=this.m_maxSqrDistance;const g=e.getImpl(),p=g.getPointCount(),y=p>1;let d=!1;for(;h.nextPath();)for(;h.hasNextSegment();){const e=h.nextSegment();if(e.queryLooseEnvelope(m),y){const e=m.sqrDistanceEnvelope(this.m_env2DgeometryA,null,null);if(this.m_bIsNearCalc){if(e>l)continue}else if(e>l||d&&e===l)continue}for(let i=0;i<p;i++){if(g.queryXY(i,u),r&&0!==(0,a.g)(t,u,0))return c(n,u,-1,Number.NaN),c(s,u,i,0),0;{const e=m.sqrDistance(u);if(this.m_bIsNearCalc){if(e>l)continue}else if(e>l)continue}const o=e.getClosestCoordinate(u,!1),_=e.getCoord2D(o);u.subThis(_);const p=u.sqrLength();if(this.m_bIsNearCalc){if(p<=l)return 0}else if(!(p>l)&&(!d||p<l)&&(l=p,c(n,g.getXY(i),i,0),c(s,_,h.getStartPointIndex(),o),d=!0,0===l))return 0}r=!1}return d?Math.sqrt(l):Number.POSITIVE_INFINITY}distanceEnvelopeGeometry(e,t,n,s){switch(t.getGeometryType()){case i.G.enumPoint:return this.distancePointEnvelope(t,e,s,n);case i.G.enumMultiPoint:{this.m_env2DgeometryB=(0,o.b)(this.m_env2DgeometryA,this.m_env2DgeometryA=this.m_env2DgeometryB);const i=this.distanceMultipointMultipath(t,f(e),s,n);return this.m_env2DgeometryB=(0,o.b)(this.m_env2DgeometryA,this.m_env2DgeometryA=this.m_env2DgeometryB),i}case i.G.enumPolyline:case i.G.enumPolygon:return this.distanceMultipathMultipath(f(e),t,n,s);case i.G.enumEnvelope:return this.distanceEnvelopeEnvelope(e,t,n,s);default:return Number.NaN}}distanceEnvelopeEnvelope(e,t,n,s){n.t=Number.NaN,n.index=-1,s.t=Number.NaN,s.index=-1;const i=e.asEnvelope2D(),r=t.asEnvelope2D();return Math.sqrt(i.sqrDistanceEnvelope(r,n.outPoint,s.outPoint))}distanceMultipathGeometry(e,t,n,s){switch(t.getGeometryType()){case i.G.enumPoint:{this.m_env2DgeometryB=(0,o.b)(this.m_env2DgeometryA,this.m_env2DgeometryA=this.m_env2DgeometryB);const i=this.distancePointMultipath(t,e,s,n);return this.m_env2DgeometryB=(0,o.b)(this.m_env2DgeometryA,this.m_env2DgeometryA=this.m_env2DgeometryB),i}case i.G.enumMultiPoint:{this.m_env2DgeometryB=(0,o.b)(this.m_env2DgeometryA,this.m_env2DgeometryA=this.m_env2DgeometryB);const i=this.distanceMultipointMultipath(t,e,s,n);return this.m_env2DgeometryB=(0,o.b)(this.m_env2DgeometryA,this.m_env2DgeometryA=this.m_env2DgeometryB),i}case i.G.enumPolyline:case i.G.enumPolygon:return this.distanceMultipathMultipath(e,t,n,s);case i.G.enumEnvelope:return this.distanceMultipathMultipath(e,f(t),n,s);default:return Number.NaN}}distanceMultipathMultipath(e,t,n,i){const a={stack:[],error:void 0,hasError:!1};try{const h=[e],u=[t],c=this.swapGeometriesIfAGtB(h,u);c&&(this.m_env2DgeometryB=(0,o.b)(this.m_env2DgeometryA,this.m_env2DgeometryA=this.m_env2DgeometryB),p(n,i)),(0,s.b)(a,(0,o.h)((()=>{p(n,i),this.m_env2DgeometryB=(0,o.b)(this.m_env2DgeometryA,this.m_env2DgeometryA=this.m_env2DgeometryB)}),!c),!1);const P=h[0],f=u[0],E=P.querySegmentIterator();E.stripAttributes();const S=f.querySegmentIterator();if(S.stripAttributes(),this.m_bIsNearCalc&&this.m_env2DgeometryA.sqrMaxMinDistanceEnvelope(this.m_env2DgeometryB)<=this.m_maxSqrDistance)return 0;if(this.m_bIsNearCalc){const e=Math.trunc((0,o.c)(Math.sqrt(P.getPointCount())+1,1,(0,o.i)())),t=Math.trunc((0,o.c)(Math.sqrt(P.getPointCount())+1,1,(0,o.i)()));if(this.distanceMultipointMultipoint(P,f,n,i,e,t)<=this.m_maxSqrDistance)return 0}if(this.m_env2DgeometryA.isIntersecting(this.m_env2DgeometryB)){const e=m(),t=m();if(y(P,f,E,S,e,t))return l(n,e),l(i,t),0}const x=d(P),N=[],v=new r.S,A=new _.J,M=new _.J,D=new _.J;let b=this.m_maxSqrDistance,C=!0,T=!1;for(let e=0,t=x.length;e<t;++e){P.querySegment(x[e],v,!0);const t=v.get();if(t.queryEnvelope(A),!(A.sqrDistanceEnvelope(this.m_env2DgeometryB,null,null)>b)){if(this.m_bIsNearCalc&&A.sqrMaxDistanceEnvelope(this.m_env2DgeometryB)<=b)return 0;for(;S.nextPath();){if(this.progress_(),C)f.queryPathEnvelope(S.getPathIndex(),D),N[S.getPathIndex()]=D.clone();else if(A.sqrDistanceEnvelope(N[S.getPathIndex()],null,null)>b)continue;for(;S.hasNextSegment();){const s=S.nextSegment();if(s.queryEnvelope(M),A.sqrDistanceEnvelope(M,null,null)<=b){const r=!A.isIntersecting(M),a=[0],o=[0];let _=t.distance(s,r,a,o);if(_*=_,this.m_bIsNearCalc&&_<=this.m_maxSqrDistance)return 0;if(_<b||_===b&&x[e]<n.index){if(T=!0,g(n,t,x[e],a[0]),g(i,s,S.getStartPointIndex(),o[0]),0===_)return 0;b=_}}}}S.resetToFirstPath(),C=!1}}return T?Math.sqrt(b):Number.POSITIVE_INFINITY}catch(e){a.error=e,a.hasError=!0}finally{(0,s.c)(a)}}swapGeometriesIfAGtB(e,t){return(0,i.v)(e[0])>(0,i.v)(t[0])&&(t[0]=(0,o.b)(e[0],e[0]=t[0]),!0)}swapGeometriesIfBGtA(e,t){return this.swapGeometriesIfAGtB(t,e)}}},85008:(e,t,n)=>{n.r(t),n.d(t,{OperatorGeodeticArea:()=>T});var s=n(55537),i=n(35368),r=n(5247),a=n(12189),o=n(83661),_=n(79187),h=n(95213),m=n(31139),u=n(47591),c=n(90237),l=n(11878);n(35274),n(76061),n(31088),Symbol.dispose;class g{constructor(e,t,n,s,i=0,r=4){this.m_ptDistFrom=new o.P,this.m_segStartPt=new o.P,this.m_segEndPt=new o.P,this.m_geodeticLength=new a.E,this.m_az12=new a.E,this.m_minGeodeticDist=new a.E,this.m_segStartPt3d=new h.h,this.m_segEndPt3d=new h.h,this.m_sr=s,this.m_distCurveType=i,this.m_segCurveType=r,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 _=(0,a.G)();this.m_inputGCS.querySpheroidData(_),this.m_a=_.majorSemiAxis,this.m_eSquared=_.e2,this.setPointDistFrom(e),this.setSegmentEndPoints(t,n)}setSegmentEndPoints(e,t){this.m_segStartPt.assign(e),this.m_segEndPt.assign(t),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,a.Q)(this.m_a,this.m_eSquared,this.m_segStartPt)),this.m_segEndPt3d.assign((0,a.Q)(this.m_a,this.m_eSquared,this.m_segEndPt))),this.calculateAndUpdateSegmentLength()}setPointDistFrom(e){this.m_ptDistFrom.assign(e),this.m_ptDistFrom.scale(this.m_rpu)}setSegmentCurveType(e){this.m_segCurveType=e}setDistanceCurveType(e){this.m_distCurveType=e}makeFunctor(){return e=>{let t;switch(this.m_segCurveType){case 0:case 1:case 3:{const n={stack:[],error:void 0,hasError:!1};try{const s=(0,c.b)(n,new a.E,!1),i=(0,c.b)(n,new a.E,!1);a.F.geodeticCoordinate(this.m_a,this.m_eSquared,this.m_segStartPt.x,this.m_segStartPt.y,this.m_geodeticLength.val*e,this.m_az12.val,s,i,this.m_segCurveType),t=new o.P(s.val,i.val);break}catch(e){n.error=e,n.hasError=!0}finally{(0,c.c)(n)}}case 2:{const n=h.h.lerp(this.m_segStartPt3d,this.m_segEndPt3d,e);t=(0,a.Y)(this.m_a,this.m_eSquared,n);break}case 4:t=o.P.lerp(this.m_segStartPt,this.m_segEndPt,e),this.m_bIsPannablePcs&&((0,a.S)(this.m_sr,0,[t],1),t.mulThis(this.m_rpu));break;default:(0,s.c)("Invalid curve type")}return a.F.geodeticDistance(this.m_a,this.m_eSquared,this.m_ptDistFrom.x,this.m_ptDistFrom.y,t.x,t.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:a.F.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=o.P.distance(this.m_segStartPt,this.m_segEndPt);break;default:(0,s.c)("Invalid curve type")}}[Symbol.dispose](){this.m_geodeticLength[Symbol.dispose](),this.m_az12[Symbol.dispose](),this.m_minGeodeticDist[Symbol.dispose]()}}Symbol.dispose;class p{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,o.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&&a.Z.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 y(e,t,n,s,i){const o=(new r.O).execute(e,t,0,0,i);let h;h=s?(new a.v).execute(o,s,i):o;const m=1===n.getUnit().getUnitToBaseFactor()?Math.PI/180:1,u=new _.J;h.queryEnvelope(u);const c=new _.J,l=new _.J,g=new _.J;c.setCoords({xmin:u.xmin,ymin:75*m,xmax:u.xmax,ymax:90*m}),l.setCoords({xmin:u.xmin,ymin:-60*m,xmax:u.xmax,ymax:75*m}),g.setCoords({xmin:u.xmin,ymin:-90*m,xmax:u.xmax,ymax:-60*m}),c.inflateCoords(.01*c.width(),0),l.inflateCoords(.01*l.width(),0),g.inflateCoords(.01*g.width(),0);let p=0;return p+=d(h,c,n,i),p+=d(h,l,n,i),p+=d(h,g,n,i),p}function d(e,t,n,i){const r=(new m.O).execute(e,t,n,i);if(null!==r&&!r.isEmpty()){const e=new _.J;r.queryEnvelope(e);const{first:t,second:h}=function(e,t){const n=function(e,t){const n=e.getUnit().getUnitToBaseFactor(),i=t.getCenter();i.scale(180*n/Math.PI);const r=new o.P;r.x=0,r.y=0;let _=0;if(0===_){i.y>45?(r.y=o.l,_=0):i.y<-45?(r.y=-o.l,_=1):i.x>=45&&i.x<135?(r.x=o.l,_=2):i.x>=135||i.x<-135?(r.x=o.l,_=3):i.x<-45&&i.x>=-135?(r.x=-o.l,_=4):(r.x=0,_=5);const e=n*Math.sqrt((0,o.s)(t.xmin-t.xmax)+(0,o.s)(t.ymin-t.ymax)),s=r.clone(),a=t.getCenter();if(a.scale(n),_<2&&(s.x=a.x),o.P.distance(s,a)+.5*e>o.l)return null}const h=P[_];if(null!==h&&h.getGCS().equalHorizontal(e))return h;const m=e.getText(),u=r.x,c=r.y;let l=0,g=-1;6!==_?g=a.a4.PE_PRJ_LAMBERT_AZIMUTHAL_EQAREA:((0,s.g)(false),l=0,g=a.a4.PE_PRJ_CYLINDRICAL_EQAREA);const p=(0,a.aw)("EqualAreaPCS");let y;g===a.a4.PE_PRJ_LAMBERT_AZIMUTHAL_EQAREA?y=`PROJCS["${p}",${m},PROJECTION["Lambert_Azimuthal_Equal_Area"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",${u}],PARAMETER["Latitude_of_Origin",${c}],UNIT["Meter",1.0]]`:g===a.a4.PE_PRJ_CYLINDRICAL_EQAREA?y=`PROJCS["${p}",${m},PROJECTION["Cylindrical_Equal_Area"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",${u}],PARAMETER["Standard_Parallel_1",${l}],PARAMETER["Latitude_of_Origin",${c}],UNIT["Meter",1.0]]`:(0,s.c)("getEqualAreaPcsFixed");const d=(0,a.a)(y);return P[_]&&P[_].destroy(),P[_]=d,d}(e,t);if(null!==n)return(0,o.n)(n,!1);const i=e.getText(),r=e.getUnit().getUnitToBaseFactor(),_=(t.xmin+t.width()/2)*r,h=(t.ymin+t.height()/2)*r;let m=0,u=0,c=-1;t.ymin*r>=75*Math.PI/180||t.ymax*r<=-60*Math.PI/180?c=a.a4.PE_PRJ_LAMBERT_AZIMUTHAL_EQAREA:t.ymin>0||t.ymax<0?(m=(t.ymin+1/3*t.height())*r,u=(t.ymin+2/3*t.height())*r,c=a.a4.PE_PRJ_ALBERS):(m=(t.ymin+2/3*t.height())*r,c=a.a4.PE_PRJ_CYLINDRICAL_EQAREA);const l=(0,a.aw)("EqualAreaPCS");let g;return c===a.a4.PE_PRJ_LAMBERT_AZIMUTHAL_EQAREA?g=`PROJCS["${l}",${i},PROJECTION["Lambert_Azimuthal_Equal_Area"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",${_}],PARAMETER["Latitude_of_Origin",${h}],UNIT["Meter",1.0]]`:c===a.a4.PE_PRJ_ALBERS?g=`PROJCS["${l}",${i},PROJECTION["Albers"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",${_}],PARAMETER["Standard_Parallel_1",${m}],PARAMETER["Standard_Parallel_2",${u}],PARAMETER["Latitude_of_Origin",${h}],UNIT["Meter",1.0]]`:c===a.a4.PE_PRJ_CYLINDRICAL_EQAREA?g=`PROJCS["${l}",${i},PROJECTION["Cylindrical_Equal_Area"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",${_}],PARAMETER["Standard_Parallel_1",${m}],PARAMETER["Latitude_of_Origin",${h}],UNIT["Meter",1.0]]`:(0,s.c)("getEqualAreaPCSInstance"),(0,o.n)((0,a.a)(g),!0)}(n,e),m=(0,a.p)(n,t,null),u=(new a.v).execute(r,m,i).calculateArea2D();return h&&t.destroy(),u}return 0}const P=[null,null,null,null,null,null,null];class f{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.t)(""),e.isEmpty()||e.getDimension()<2)return 0;if((0,s.d)(e),e.getGeometryType()===s.G.enumEnvelope){const s=new i.a;return s.addEnvelope(e,!1),this.execute(s,t,n)}let c=e;e.getDescription().getAttributeCount()>1&&(c=e.clone(),c.dropAllAttributes());const l=(new r.O).execute(c,0,t.getTolerance(0),0,n);let g=null;const d=t.getGCS();d!==t&&(g=(0,a.p)(t,d));let P=(new a.h).execute(l,t,!1,n);return P.isEmpty()?0:(P===e&&(P=e.clone()),t.isPannable()?function(e,t,n){const s=new _.J;e.queryEnvelope(s);const r=(0,h.c)(t,s,!0).total(),u=t.getPannableExtent();u.xmin=s.xmin-10*r,u.xmax=s.xmax+10*r;const c=(new m.O).execute(e,u,t,n).getImpl().querySegmentIterator();c.stripAttributes();const l=(0,a.G)();t.querySpheroidData(l);const g=l.e2,y=0===g?2:1,d=new o.P(0,0),P=new o.P(0,0),f=new o.K(0),E=new p(d,P,t,g,100);for(;c.nextPath();)for(;c.hasNextSegment();){const e=c.nextSegment();d.assign(e.getStartXY()),P.assign(e.getEndXY()),E.setSegmentEndPoints(d,P);const t=(0,i.x)(6,0,1,1e-12,1e-15,E.makeFunctor());f.pe((P.x-d.x)*t)}const S=l.majorSemiAxis;return y*S*S*(1-g)*Math.PI*f.getResult()/t.getPannableExtent().width()}(P,t,n):function(e,t,n,s,i){const r=function(e,t,n){const s=e.calculateLength2D(),i=(new u.O).execute(e,t,n)/25e3,r=s/e.getSegmentCount()*2;let a=Math.min(r,s/i);return 0===a&&(a=1),(0,o.n)(a,s/a)}(e,t,i);let a=y(e,r.first,n,s,i),_=1,h=0,m=0;do{if(_++,r.first*=.5,r.first<50*t.getTolerance(0))return a;r.second*=2,m=y(e,r.first,n,s,i),h=Math.abs(m-a),a=m}while(Math.abs(a)>1&&h>1e-8*Math.abs(a)&&(r.second<65e3&&_<8||_<4));return m}(P,t,d,g,n))}}function E(){return{m_p_PCS:new o.P,m_factor:Number.NaN,setValues:S,assign:x}}function S(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 N{constructor(e,t,n,s){this.m_ptStart=new h.h,this.m_ptEnd=new h.h,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 r;r=0===this.m_e2?2*i:i*((0,o.y)(this.m_e*i)+1/(1-this.m_e2*i*i)),this.m_baseA=r}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,r=n*n+s*s,a=i/Math.sqrt(i*i+this.m_c1MinusE2*this.m_c1MinusE2*r);let _;return _=0===this.m_e2?2*a:a*((0,o.y)(this.m_e*a)+1/(1-this.m_e2*a*a)),(this.m_deltaY*n-this.m_deltaX*s)/r*(_-this.m_baseA)}}}function v(){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:A,changeSign:M,assign:D,clone:b}}function A(e,t,n,s){const i=.5*e;this.sin_phi=Math.sin(e);const r=t*this.sin_phi,a=.5*Math.asin(r);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+r)*(1-r),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(a+n),this.sin_half_asin_e_sin_phi_pz=Math.sin(a+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 M(){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 D(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 b(){return{...this}}class C{constructor(e,t,n){this.m_transformPCS2GCS=null,this.m_scaleToRadians=new l.T,this.m_scaleToDegrees=new l.T,this.m_progressTracker=n,(0,s.g)(4!==t),this.m_curveType=t,this.m_inputSR=e,e&&0!==e.getCoordinateSystemType()||(0,s.t)(""),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 r.O).execute(n,0,this.m_inputSR.getTolerance(0),0,this.m_progressTracker)),this.m_inputSR.isPannable()){const e=new _.J;n.queryEnvelope(e);const t=this.m_inputSR.getPannableExtent();if(!t.containsEnvelope(e)){const s=t.getCenterX()-e.getCenterX(),i=new l.T;i.setShiftCoords(s,0),n.applyTransformation(i),e.move(s,0);const r=new o.E;t.queryIntervalX(r);const _=new o.E;e.queryIntervalX(_),n=r.contains(_)?(0,a.w)(n,this.m_inputSR):(new a.v).foldInto360RangeGeodetic(n,this.m_inputSR,this.m_curveType)}}if(this.m_transformPCS2GCS?(n=(new a.h).execute(n,this.m_inputSR,!1,this.m_progressTracker),t=n.createInstance(),(0,a.$)(this.m_transformPCS2GCS,n,t,this.m_progressTracker)||(t=(new a.v).execute(n,this.m_transformPCS2GCS,this.m_progressTracker))):t=(new a.h).execute(n,this.m_inputGCS,!1,this.m_progressTracker),t.isEmpty())return 0;if(1===this.m_curveType){const e=(0,a.G)();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,a.G)();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=a.ax.unit(9101),s=this.m_inputGCS.getPECoordSys(),i=(0,c.b)(e,s.cloneAlterUnits(n),!1);let r,o,_=this.executeClippedPolygonGeodeticArea(t,i,0),h=0;do{h++,r=this.executeClippedPolygonGeodeticArea(t,i,h),o=Math.abs(r-_),_=r}while(Math.abs(r)>1&&o>1e-8*Math.abs(r)&&h<7);return r}catch(t){e.error=t,e.hasError=!0}finally{(0,c.c)(e)}}}executeClippedPolygonGeodeticArea(e,t,n){const s={stack:[],error:void 0,hasError:!1};try{const i=new _.J;e.queryEnvelope(i);const r=(0,c.b)(s,this.getEqualAreaPCSInstance(t,i),!1),h=e.clone();(0,a.ay)(r,h);const m=50,u=h.getImpl().getAttributeStreamRef(0),l=e.getImpl().getAttributeStreamRef(0),g=(0,c.b)(s,new a.E,!1),p=(0,c.b)(s,new a.E,!1),y=40,d=[0,0],P=(0,o.p)(E,y),f=(0,o.d)(y,-1),S=E(),x=E();let N,v;const A=r;let M=h.calculateArea2D();const D=new o.K(0),b=.5*Math.PI,C=1e-10*Math.abs(M)+1e-6,T=e.getPathCount();let q,w,I,G;const R=new o.P,L=new o.P,B=new o.P,z=new o.P,F=new o.P,Y=new o.P;let O,k;for(w=e.getPathStart(0),q=0;q<T;q++,w=I)for(I=e.getPathEnd(q),u.queryPoint2D(I-1<<1,B),l.queryPoint2D(I-1<<1,R),Math.abs(R.y)>b&&(R.y=(0,o.f)(b,R.y)),G=w;G<I;G++,B.assign(z),R.assign(L)){if(u.queryPoint2D(G<<1,z),l.queryPoint2D(G<<1,L),Math.abs(L.y)>b&&(L.y=(0,o.f)(b,L.y)),O=o.P.distance(B,z),O<m||0===R.y&&0===L.y)continue;a.F.geodeticDistance(this.m_a,this.m_eSquared,R.x,R.y,L.x,L.y,g,p,null,this.m_curveType);const e=g.val,t=p.val;for(S.setValues(0,B),x.setValues(1,z),v=n,P[0].assign(x),f[0]=n,N=0;N>=0;){k=.5*(S.m_factor+x.m_factor),a.F.geodeticCoordinate(this.m_a,this.m_eSquared,R.x,R.y,e*k,t,g,p,this.m_curveType),F.x=g.val,F.y=p.val,d[0]=F.x,d[1]=F.y,a.Z.geogToProj(A,1,d),Y.x=d[0],Y.y=d[1];const n=.5*-Y.offset(S.m_p_PCS,x.m_p_PCS)*o.P.distance(S.m_p_PCS,x.m_p_PCS);if(D.pe(n),Math.abs(n)>C||Math.abs(n)>0&&v>0)x.setValues(k,Y),N++,P[N].assign(x),Math.abs(n)<=C?(v--,f[N-1]=v,f[N]=v):(v=f[N-1],f[N]=v);else{if(N<=0)break;S.assign(x),N--,x.assign(P[N]),v=f[N]}}}return M+=D.getResult(),Math.abs(M)}catch(e){s.error=e,s.hasError=!0}finally{(0,c.c)(s)}}executeClippedPolygonGreatEllipticArea(e){const t=[],n=[],s=new o.P,i=new o.P,r=(0,a.Q)(1,this.m_eSquared,new o.P(0,.5*Math.PI)),m=new o.K(0),u=new o.K(0),c=new o.K(0),l=new h.h,g=new h.h,p=new _.J;e.queryLooseEnvelope(p);let y=0;p.containsCoords(p.xmin,0)||(y=Math.abs(p.ymin)<Math.abs(p.ymax)?p.ymin:p.ymax);const d=new N(this.m_eSquared,l,g,y),P=this.m_a*this.m_a,f=e.getImpl().querySegmentIterator();for(f.stripAttributes();f.nextPath();)for(;f.hasNextSegment();){const e=f.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)l.assign((0,a.Q)(this.m_a,this.m_eSquared,e.getStartXY())),g.assign((0,a.Q)(this.m_a,this.m_eSquared,e.getEndXY())),d.setSegmentEndPoints(l,g),this.adaptiveIntegrationWithRomberg(d,m);for(let e of n){let t=e.getStartXY(),n=e.getEndXY(),s=y;t.y<0&&(n=(0,o.b)(t,t=n),t.y=-t.y,n.y=-n.y,s=-s);const i=(0,a.Q)(1,this.m_eSquared,t),_=(0,a.Q)(1,this.m_eSquared,n),m=Math.min(t.y,n.y),l=(0,a.az)(this.m_eSquared,t.x,n.x,s,m);u.pe(l);const g=Math.abs((0,a.az)(this.m_eSquared,t.x,n.x,m,o.l)),p=new h.h;p.setSub(i,r);const d=new h.h;d.setSub(_,r);const f=new h.h;f.setCrossProductVector(p,d);let E=P*(g-.5*f.length());E=(0,o.f)(E,n.x-t.x),c.pe(E)}t.length=0,n.length=0}return c.getResult()+P*(.5*(1-this.m_eSquared)*m.getResult()+u.getResult())}getEqualAreaPCSInstance(e,t){const n=t.getCenterX();let s,i;const r=t.height();let _,h;(_=t.ymin>45*Math.PI/180||t.ymax<45*-Math.PI/180)?s=(0,o.f)(.5*Math.PI,t.getCenterY()):(s=t.getCenterY(),i=t.ymin+r*(2/3));const m=(0,a.aw)("EqualAreaPCS"),u=e.toString();return h=_?a.ax.fromString(a.a4.PE_TYPE_PROJCS,`PROJCS["${m}", ${u}, 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]]`):a.ax.fromString(a.a4.PE_TYPE_PROJCS,`PROJCS["${m}", ${u}, 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]]`),h}splitSegmentCrossingItegralThreshold(e,t,n){const s=100,r=400,_=(0,a.Q)(this.m_a,this.m_eSquared,new o.P(0,o.l)),m=(0,a.Q)(this.m_a,this.m_eSquared,new o.P(0,-o.l)),u=this.splitSegmentPassingThroughPole(e);for(let e of u){const u=e.getStartXY(),c=e.getEndXY(),l=(0,a.Q)(this.m_a,this.m_eSquared,u),g=(0,a.Q)(this.m_a,this.m_eSquared,c),p=new o.P,y=new h.h;let d=h.h.sqrDistance(_,l),P=h.h.sqrDistance(l,g);if(d<=s){if(!(P>r)){n.push(new i.L({start:u,end:c}));continue}y.assign(g.sub(l)),y.normalizeThis(),y.assign(l.add(y.mul(20))),p.assign((0,a.Y)(this.m_a,this.m_eSquared,y)),n.push(new i.L({start:u,end:p})),u.assign(p)}if(l.assign((0,a.Q)(this.m_a,this.m_eSquared,u)),d=h.h.sqrDistance(_,g),P=h.h.sqrDistance(l,g),d<=s){if(!(P>r)){n.push(new i.L({start:u,end:c}));continue}y.assign(g.sub(l)),y.normalizeThis(),y.assign(g.sub(y.mul(20))),p.assign((0,a.Y)(this.m_a,this.m_eSquared,y)),n.push(new i.L({start:p,end:c})),c.assign(p)}if(l.assign((0,a.Q)(this.m_a,this.m_eSquared,u)),g.assign((0,a.Q)(this.m_a,this.m_eSquared,c)),d=h.h.sqrDistance(m,l),P=h.h.sqrDistance(l,g),d<=s){if(!(P>r)){n.push(new i.L({start:u,end:c}));continue}y.assign(g.sub(l)),y.normalizeThis(),y.assign(l.add(y.mul(20))),p.assign((0,a.Y)(this.m_a,this.m_eSquared,y)),n.push(new i.L({start:u,end:p})),u.assign(p)}if(l.assign((0,a.Q)(this.m_a,this.m_eSquared,u)),g.assign((0,a.Q)(this.m_a,this.m_eSquared,c)),d=h.h.sqrDistance(m,g),P=h.h.sqrDistance(l,g),d<=s){if(!(P>r)){n.push(new i.L({start:u,end:c}));continue}y.assign(g.sub(l)),y.normalizeThis(),y.assign(g.sub(y.mul(20))),p.assign((0,a.Y)(this.m_a,this.m_eSquared,y)),n.push(new i.L({start:p,end:c})),c.assign(p)}t.push(new i.L({start:u,end:c}))}}splitSegmentPassingThroughPole(e){const t={stack:[],error:void 0,hasError:!1};try{const n=[],s=new h.h,r=new h.h,_=new h.h,m=new o.P,u=20,l=3.124139361,p=10,y=e.getStartXY(),d=e.getEndXY(),P=(0,c.b)(t,new a.E,!1);if(a.F.geodeticDistance(this.m_a,this.m_eSquared,y.x,y.y,d.x,d.y,P,null,null,2),Math.abs(d.x-y.x)>l&&P.val>u){const e=new g(new o.P(0,90),y.divide(this.m_rpu),d.divide(this.m_rpu),this.m_inputGCS,2,2);let t=(0,a.U)(e.makeFunctor(),0,1,1e-10);if(t.second<=p&&t.first>0&&t.first<1)return s.assign((0,a.Q)(this.m_a,this.m_eSquared,y)),r.assign((0,a.Q)(this.m_a,this.m_eSquared,d)),(0,o.x)(s,r,t.first,_),m.assign((0,a.Y)(this.m_a,this.m_eSquared,_)),n.push(new i.L({start:y,end:m})),n.push(new i.L({start:m,end:d})),n;if(e.setPointDistFrom(new o.P(0,-90)),t=(0,a.U)(e.makeFunctor(),0,1,1e-10),t.second<=p&&t.first>0&&t.first<1)return s.assign((0,a.Q)(this.m_a,this.m_eSquared,y)),r.assign((0,a.Q)(this.m_a,this.m_eSquared,d)),(0,o.x)(s,r,t.first,_),m.assign((0,a.Y)(this.m_a,this.m_eSquared,_)),n.push(new i.L({start:y,end:m})),n.push(new i.L({start:m,end:d})),n}return n.push(new i.L({start:y,end:d})),n}catch(e){t.error=e,t.hasError=!0}finally{(0,c.c)(t)}}adaptiveIntegrationWithRomberg(e,t){const n=e.makeFunctor();let s=0,r=1,a=n(s),o=n(r);const _=1e-17,h=1e-14;let m=(s+r)/2,u=n(m),c=Math.abs(u-a),l=Math.abs(o-u),g=0;for(;g++<32&&(c/l<.1||l/c<.1);)c<l?(t.pe((0,i.x)(5,s,m,h,_,n)),s=m,a=u):(t.pe((0,i.x)(5,m,r,h,_,n)),r=m,o=u),m=(s+r)/2,u=Math.abs(n(m)),c=Math.abs(u-a),l=Math.abs(o-u);t.pe((0,i.x)(5,s,r,h,_,n))}loxodromeAreaHemi(e,t,n,s,i){const r=n.clone(),a=i.clone();let _,h,m,u,c,l,g,p,y,d,P,f,E,S,x,N;return r.make_negative&&r.changeSign(),a.make_negative&&a.changeSign(),P=s-t,1===Math.abs(r.sin_phi)||1===Math.abs(a.sin_phi)?e.half_qp*P:r.sin_phi===a.sin_phi?(d=.5*e.one_m_e_2*r.sin_phi*(1/r.one_m_e_2_sin_2_phi+(0,o.y)(e.e*r.sin_phi))*P,d):(x=Math.log(a.sin_half_phi_pf*r.sin_half_phi_pz/(a.sin_half_phi_pz*r.sin_half_phi_pf)),N=Math.log(a.sin_half_asin_e_sin_phi_pf*r.sin_half_asin_e_sin_phi_pz/(a.sin_half_asin_e_sin_phi_pz*r.sin_half_asin_e_sin_phi_pf)),1===this.m_eSquared?(c=0,_=.5*(x+a.sin_phi/a.one_m_e_2_sin_2_phi-r.sin_phi/r.one_m_e_2_sin_2_phi),h=0):(c=-2*e.atanh_e_over_e*(Math.log(a.one_p_sin_phi/r.one_p_sin_phi)-e.e*N),_=(x-e.e*N)/e.one_m_e_2,h=(Math.log(a.one_m_e_2_sin_2_phi/r.one_m_e_2_sin_2_phi)+c/e.atanh_e_over_e)/e.one_m_e_2),m=-N*(r.atanh_esin_phi+a.atanh_esin_phi),u=1/r.one_m_e_2_sin_2_phi-1/a.one_m_e_2_sin_2_phi,l=(0,o.z)(a.one_m_sin_phi/e.one_p_e,e.e)-(0,o.z)(r.one_m_sin_phi/e.one_p_e,e.e),g=(0,o.z)(a.one_p_sin_phi/e.one_p_e,e.e)-(0,o.z)(r.one_p_sin_phi/e.one_p_e,e.e),p=(0,o.z)(r.one_m_sin_phi/-e.one_m_e,e.e)-(0,o.z)(a.one_m_sin_phi/-e.one_m_e,e.e),y=(0,o.z)(r.one_p_sin_phi/-e.one_m_e,e.e)-(0,o.z)(a.one_p_sin_phi/-e.one_m_e,e.e),d=.25/_*(h+m+u+c+.5*(l+g+p+y)),d+=e.half_qp,f=.5*e.one_m_e_2*r.sin_phi*(1/r.one_m_e_2_sin_2_phi+(0,o.y)(e.e*r.sin_phi)),E=.5*e.one_m_e_2*a.sin_phi*(1/a.one_m_e_2_sin_2_phi+(0,o.y)(e.e*a.sin_phi)),E<f&&(S=f,f=E,E=S),d<f&&(d=f),d>E&&(d=E),d*=P,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=v(),r=v();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,o.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,r.initialize(0,s.e,s.f,s.z);const a=e.getPathCount(),_=new o.P,h=new o.P,m=e.getImpl().getAttributeStreamRef(0);for(let o=0;o<a;o++){const a=e.getPathStart(o),u=e.getPathEnd(o);if(!(u-a<=1)){m.queryPoint2D(2*(u-1),_);for(let e=a;e<u;e++){m.queryPoint2D(2*e,h);const o=_.y*t,u=h.y*t;if(e===a?(i.initialize(o,s.e,s.f,s.z),i.make_negative=!1):i.assign(r),r.initialize(u,s.e,s.f,s.z),r.make_negative=!1,_.y*h.y<0){if(_.y>=90&&h.y<=-90||h.y>=90&&_.y<=-90)return Number.NaN;const e=v();e.initialize(0,s.e,s.f,s.z),e.make_negative=!1;const a=i.atanh_sin_phi-s.e*i.atanh_esin_phi,m=r.atanh_sin_phi-s.e*r.atanh_esin_phi,u=(m*_.x-a*h.x)/(m-a);o<0?(i.make_negative=!0,n-=this.loxodromeAreaHemi(s,_.x*t,i,u*t,e),i.make_negative=!1,n+=this.loxodromeAreaHemi(s,u*t,e,h.x*t,r)):(n+=this.loxodromeAreaHemi(s,_.x*t,i,u*t,e),r.make_negative=!0,n-=this.loxodromeAreaHemi(s,u*t,e,h.x*t,r),r.make_negative=!1)}else _.y>=0?n+=this.loxodromeAreaHemi(s,_.x*t,i,h.x*t,r):(i.make_negative=!0,r.make_negative=!0,n-=this.loxodromeAreaHemi(s,_.x*t,i,h.x*t,r),i.make_negative=!1,r.make_negative=!1);_.assign(h)}}}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.a;return t.addEnvelope(e,!1),this.calculate(t)}return this.m_inputSR!==this.m_inputGCS&&null===this.m_transformPCS2GCS&&(this.m_transformPCS2GCS=(0,a.p)(this.m_inputSR,this.m_inputGCS,null)),this.executePolygonGeodeticArea(e)}}class T{getOperatorType(){return 10311}supportsCurves(){return!0}accelerateGeometry(e,t,n){return!1}canAccelerateGeometry(e){return!1}execute(e,t,n,i){return(0,s.d)(e),4===n?(new f).execute(e,t,i):new C(t,n,i).calculate(e)}}},31088:(e,t,n)=>{n.r(t),n.d(t,{OperatorGeodeticDensifyByLength:()=>a,OperatorGeodeticDensifyCursor:()=>o});var s=n(76061),i=n(55537),r=n(12189);class a{getOperatorType(){return 10310}supportsCurves(){return!0}accelerateGeometry(e,t,n){return!1}canAccelerateGeometry(e){return!1}executeMany(e,t,n,s,i){return new o(e,n,s,t,-1,-1,i)}execute(e,t,n,r,a){const o=new s.S([e]),_=this.executeMany(o,t,n,r,a).next();return _||(0,i.c)("null output"),_}}class o extends s.G{constructor(e,t,n,s,r,a,o){super(),this.m_progressTracker=o,a>0&&(0,i.b)(""),4!==n&&r>0&&(0,i.b)(""),t||(0,i.t)(""),0===t.getCoordinateSystemType()&&(0,i.t)(""),s>0||r>0||(0,i.t)(""),this.m_index=-1,this.m_inputGeoms=e,this.m_spatialReference=t,this.m_curveType=n,this.m_maxLengthMeters=s,this.m_maxDeviationMeters=r,this.m_maxAngle=a}next(){{let e;for(;e=this.m_inputGeoms.next();)return(0,i.d)(e),this.m_index=this.m_inputGeoms.getGeometryID(),this.geodeticDensify(e);return null}}getGeometryID(){return this.m_index}tock(){return!0}getRank(){return 1}geodeticDensify(e){return(0,r.u)(e,this.m_spatialReference,this.m_curveType,this.m_maxLengthMeters,this.m_maxDeviationMeters,this.m_progressTracker)}}},47591:(e,t,n)=>{n.d(t,{O:()=>p});var s=n(55537),i=n(12189),r=n(35368),a=n(83661),o=n(95213),_=n(79187),h=n(5247),m=n(31139);function u(){return{m_pGcs:new a.P,m_xyz:new o.h,m_factor:Number.NaN,m_geoLength:Number.NaN,setValues:c,setLength:l,assign:g}}function c(e,t,n,s){this.m_factor=e,this.m_pGcs.assign(t),this.m_xyz.assign(s),this.m_geoLength=n}function l(e){this.m_geoLength=e}function g(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 p{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 h.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,i.Z.geogToProj(e,2,n),s=n[1],a=n[3]}const o=new _.J;e.queryEnvelope(o),o.ymin=a,o.ymax=s,e=(new m.O).execute(e,o,t,r)}else{const n=t.getPCSHorizon();if((e=(new i.f).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,_,h){const m=(0,i.G)();n.querySpheroidData(m);const c=m.majorSemiAxis,l=m.e2,g=n.getUnit().getUnitToBaseFactor(),p=(0,a.p)(u,40),P=(0,a.d)(40,Number.NaN),f=u(),E=u();let S;const x=[0,0,0,0],N=t.getPECoordSys(),v=new a.P,A=new a.P,M=new a.P,D=new a.P,b=new a.P;let C=0;const T=e.querySegmentIterator();for(;T.nextPath();)for(;T.hasNextSegment();){const e=T.nextSegment();v.assign(e.getStartXY()),A.assign(e.getEndXY()),2===t.getCoordinateSystemType()?(x[0]=v.x,x[1]=v.y,x[2]=A.x,x[3]=A.y,i.Z.projToGeog(N,2,x),M.x=x[0]*g,M.y=x[1]*g,D.x=x[2]*g,D.y=x[3]*g):(M.setCoordsPoint2D(v),D.setCoordsPoint2D(A),M.scale(g),D.scale(g));const n=new o.h,r=new o.h;y(c,l,M,n),y(c,l,D,r);let a=d(c,n,r);f.setValues(0,M,Number.NaN,n),E.setValues(1,D,a,r),S=_,p[0].assign(E),P[0]=_;let h=0;for(;;){h>128&&(0,s.c)("iterations exceeded");const n=.5*(f.m_factor+E.m_factor),r=e.getCoord2D(n);2===t.getCoordinateSystemType()?(x[0]=r.x,x[1]=r.y,i.Z.projToGeog(N,1,x),b.x=x[0]*g,b.y=x[1]*g):(b.setCoordsPoint2D(r),b.scale(g)),M.setCoordsPoint2D(f.m_pGcs),D.setCoordsPoint2D(E.m_pGcs);const m=new o.h;y(c,l,b,m);const u=d(c,f.m_xyz,m),v=d(c,E.m_xyz,m);a=E.m_geoLength,Number.isNaN(a)&&(a=d(c,f.m_xyz,E.m_xyz));const A=u+v,T=S===_&&A>=20&&Math.abs(A-a)>1e-8*(a+A);if(h+2<40&&(T||Math.abs(A-a)>0&&S>0))E.setLength(v),p[h].assign(E),E.setValues(n,b,u,m),p[++h].assign(E),T?(S=_,P[h]=_):(S--,P[h-1]=S,P[h]=S);else{if(C+=A,0===h)break;f.assign(E),E.assign(p[--h]),S=P[h]}}}return C}execute(e,t,n){if(t&&0!==t.getCoordinateSystemType()||(0,s.t)(""),e.isEmpty()||e.getDimension()<1)return 0;let a=null;const o=t.getGCS();o!==t&&(a=(0,i.p)(t,o,null));const _=e.getGeometryType();if(_===s.G.enumEnvelope){const s=new r.a;return s.addEnvelope(e,!1),this._ExecuteShapePreservingLength(s,t,o,a,n)}if((0,s.f)(_)){const s=new r.P;return s.addSegment(e,!0),this._ExecuteShapePreservingLength(s,t,o,a,n)}return this._ExecuteShapePreservingLength(e,t,o,a,n)}}function y(e,t,n,s){s.assign((0,i.Q)(e,t,n))}function d(e,t,n){const s=e,i=new o.h;i.setSub(t,n);const r=i.length();return 2*s*Math.asin(r/(2*s))}},76061:(e,t,n)=>{n.d(t,{G:()=>s,S:()=>i});class s{*[Symbol.iterator](){let e=this.next();for(;e;)yield e,e=this.next()}}class i extends s{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}}}}]);
|