@arcgis/core 4.33.0-next.20250430 → 4.33.0-next.20250502
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/02b38423276536596aba.js +1 -0
- package/assets/esri/core/workers/chunks/{de16b771d2c8d816c738.js → 05c80002c37002ac99e8.js} +1 -1
- package/assets/esri/core/workers/chunks/{5d40c4783f58af1ae0dc.js → 0e8181e7fc1386d08ffc.js} +1 -1
- package/assets/esri/core/workers/chunks/{96e5d192c8d23c1e324f.js → 13e68c43acc8916520db.js} +1 -1
- package/assets/esri/core/workers/chunks/{e6a5911ea21bef32834b.js → 1bc22af4cc4effcbcf2b.js} +1 -1
- package/assets/esri/core/workers/chunks/{9b2ab27159500315fbc1.js → 26850ec0917ee355ddb7.js} +1 -1
- package/assets/esri/core/workers/chunks/{1bd4fe77ba6fb25322e7.js → 29e2b105f55adafc3a6d.js} +1 -1
- package/assets/esri/core/workers/chunks/{5d63dfa5a60c88e03b28.js → 2c77a543a174e5bc736a.js} +1 -1
- package/assets/esri/core/workers/chunks/{d0ddf4f1c6a351b447c7.js → 30d7d2c7d6e9e5e2ecb9.js} +1 -1
- package/assets/esri/core/workers/chunks/3cee3ff926f47aae476f.js +1 -0
- package/assets/esri/core/workers/chunks/{febae745a29a17ca130a.js → 4480e4b61affb3b2e9d6.js} +1 -1
- package/assets/esri/core/workers/chunks/{4d4a271351fd288277d2.js → 49085a0b3a74e158f32f.js} +1 -1
- package/assets/esri/core/workers/chunks/{392e64a573f67817db02.js → 4cb199b547e5b97e65fb.js} +1 -1
- package/assets/esri/core/workers/chunks/4df36ee2406861c7afa8.js +1 -0
- package/assets/esri/core/workers/chunks/{ba917175ca2a6681501e.js → 563594357f3648652a5c.js} +1 -1
- package/assets/esri/core/workers/chunks/{abfc5f9ac16c3e885c5f.js → 56db71ea7eb8a5652d98.js} +1 -1
- package/assets/esri/core/workers/chunks/{e56647e61296643c5f84.js → 5719471414810b6a9aec.js} +1 -1
- package/assets/esri/core/workers/chunks/{235efd948ae470a6f238.js → 60b1365d25581ccf0485.js} +1 -1
- package/assets/esri/core/workers/chunks/{3795793643f4db64af0e.js → 63c25455b9cf1b3df76a.js} +1 -1
- package/assets/esri/core/workers/chunks/{cb25b45a6b385e60c68d.js → 653ff3e631fea8ad393a.js} +122 -121
- package/assets/esri/core/workers/chunks/{909be86782af3deb448e.js → 654fe135d41af81daa13.js} +1 -1
- package/assets/esri/core/workers/chunks/{cd9343c78a7c3acdbbcd.js → 681b2662f6ce936afd7e.js} +1 -1
- package/assets/esri/core/workers/chunks/6d89d42bcba213be2d9d.js +1 -0
- package/assets/esri/core/workers/chunks/6ecc3a3737ae8622dfa4.js +1 -0
- package/assets/esri/core/workers/chunks/6fef5a07f75b2a5736ad.js +1 -0
- package/assets/esri/core/workers/chunks/6ff46126c82354e6c78e.js +1 -0
- package/assets/esri/core/workers/chunks/{65f2b22d8fc12e6d4a87.js → 7000d9158da929a16071.js} +1 -1
- package/assets/esri/core/workers/chunks/71dc9d78dec981078a1a.js +1 -0
- package/assets/esri/core/workers/chunks/{ab6ecd8eeec5ff761b34.js → 73bca519c93920bc8c9f.js} +1 -1
- package/assets/esri/core/workers/chunks/{7551011117c3d36ff3db.js → 743cdbff5c4616ddc2b4.js} +1 -1
- package/assets/esri/core/workers/chunks/7a282674d77875c58acd.js +1 -0
- package/assets/esri/core/workers/chunks/{968956284f44187f0622.js → 8540fb31bd0b29ff1906.js} +1 -1
- package/assets/esri/core/workers/chunks/8c5cea49e48f8858f115.js +1 -0
- package/assets/esri/core/workers/chunks/{237a965bd41ba8903e03.js → 921c040d0497031fd8ff.js} +1 -1
- package/assets/esri/core/workers/chunks/{96d2a0777f5c418055fb.js → 92b48e3365d1cc933113.js} +1 -1
- package/assets/esri/core/workers/chunks/{5d485c07848164099859.js → 95a4da3150ad8e8e36d8.js} +1 -1
- package/assets/esri/core/workers/chunks/9652cfd4668b95036c87.js +39 -0
- package/assets/esri/core/workers/chunks/{46fb6ba8900286d18b6f.js → 9d564f79b82d427fc1da.js} +1 -1
- package/assets/esri/core/workers/chunks/9f07919ade6707b103da.js +1 -0
- package/assets/esri/core/workers/chunks/{00612d6e05b1c8647668.js → 9fff43ffcd5602ccc50f.js} +1 -1
- package/assets/esri/core/workers/chunks/{1cc5c566e68f2255d035.js → a6ca68ef6311ffc365b2.js} +1 -1
- package/assets/esri/core/workers/chunks/{5a51c75a2932d9da001a.js → a8d043b73e087bee7c40.js} +1 -1
- package/assets/esri/core/workers/chunks/{d3174ff4dd5acd16485a.js → c041f4a1d18d42e27ad7.js} +1 -1
- package/assets/esri/core/workers/chunks/{ebfa4a0334401f5e004a.js → c12765e0c8b44e349c2a.js} +1 -1
- package/assets/esri/core/workers/chunks/{afddb94ff4e1a70022c7.js → c3b2b05996e2008adbe3.js} +1 -1
- package/assets/esri/core/workers/chunks/c9a2c4fd169b943db4b4.js +1 -0
- package/assets/esri/core/workers/chunks/{4fb4884d2de42792abe3.js → d1a9e8db5ba403abe721.js} +1 -1
- package/assets/esri/core/workers/chunks/d35cd309ba7bb8968a22.js +1 -0
- package/assets/esri/core/workers/chunks/{6e6422eda398774acbc7.js → d60da671aba70485050e.js} +1 -1
- package/assets/esri/core/workers/chunks/{7a8df1225abd54ff68ed.js → db298b292a4e43cba72d.js} +1 -1
- package/assets/esri/core/workers/chunks/{2bda2cfc6e81818d7d33.js → dcaeb57c69d432118604.js} +1 -1
- package/assets/esri/core/workers/chunks/{fb455fd89b74b70a6a2b.js → e613df03ceb39e29befa.js} +1 -1
- package/assets/esri/core/workers/chunks/{05d7d8ff3e4cbad32580.js → e8dcaa7837b6fe7bff20.js} +1 -1
- package/assets/esri/core/workers/chunks/ec1a4b82cbc44ba45f83.js +1 -0
- package/assets/esri/core/workers/chunks/ec778cc7a55068f51937.js +1 -0
- package/assets/esri/core/workers/chunks/{51339193abddfe37745d.js → f2b63597ae956db74eb3.js} +1 -1
- package/chunks/Bufferer-CicaNej1.js +1 -1
- package/chunks/Distance2DCalculator-C1KHhZwD.js +1 -1
- package/chunks/Envelope.js +1 -1
- package/chunks/Envelope2D.js +1 -1
- package/chunks/GeodeticDistanceCalculator-CcF1gMZX.js +1 -1
- package/chunks/Geometry.js +1 -1
- package/chunks/GeometryCleaner-BEJM7I4l.js +1 -1
- package/chunks/OperatorClip.js +1 -1
- package/chunks/OperatorCrosses.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/OperatorGeodeticDensifyByLength.js +1 -1
- package/chunks/OperatorGeodeticDistance.js +1 -1
- package/chunks/OperatorGeodeticLength.js +1 -1
- package/chunks/OperatorIntersects.js +1 -1
- package/chunks/OperatorMultiPartToSinglePart.js +1 -1
- package/chunks/OperatorOverlaps.js +1 -1
- package/chunks/OperatorProximity.js +1 -1
- package/chunks/OperatorProximityGeodesic.js +1 -1
- package/chunks/OperatorShapePreservingLength.js +1 -1
- package/chunks/OperatorShapePreservingProject.js +1 -1
- package/chunks/OperatorSimplifyOGC.js +1 -1
- package/chunks/OperatorTouches.js +1 -1
- package/chunks/OperatorWithin.js +1 -1
- package/chunks/Point2D.js +1 -1
- package/chunks/ProjectionTransformation.js +1 -1
- package/chunks/QuadraticBezier.js +1 -1
- package/chunks/SSAO.glsl.js +43 -42
- package/chunks/SideCalculator2D-BNwb5gvz.js +1 -1
- package/chunks/Transformation2D.js +1 -1
- package/chunks/containsOperator.js +1 -1
- package/chunks/disjointOperator.js +1 -1
- package/chunks/equalsOperator.js +1 -1
- package/core/NestedMap.js +1 -1
- package/core/deprecate.js +1 -1
- package/geometry/operators/extendOperator.js +1 -1
- package/geometry/operators/gx/operatorAlphaShape.js +1 -1
- package/geometry/operators/gx/operatorAutoComplete.js +1 -1
- package/geometry/operators/gx/operatorBuffer.js +1 -1
- package/geometry/operators/gx/operatorDifference.js +1 -1
- package/geometry/operators/gx/operatorGraphicBuffer.js +1 -1
- package/geometry/operators/gx/operatorIntegrate.js +1 -1
- package/geometry/operators/gx/operatorIntersection.js +1 -1
- package/geometry/operators/gx/operatorLabelPoint.js +1 -1
- package/geometry/operators/gx/operatorLinesToPolygons.js +1 -1
- package/geometry/operators/gx/operatorLocateBetween.js +1 -1
- package/geometry/operators/gx/operatorMinimumBoundingCircle.js +1 -1
- package/geometry/operators/gx/operatorOffset.js +1 -1
- package/geometry/operators/gx/operatorPolygonOverlay.js +1 -1
- package/geometry/operators/gx/operatorPolygonSlicer.js +1 -1
- package/geometry/operators/gx/operatorSimplify.js +1 -1
- package/geometry/operators/gx/operatorSymmetricDifference.js +1 -1
- package/geometry/operators/gx/operatorUnion.js +1 -1
- package/geometry/operators/isNearOperator.js +1 -1
- package/geometry/operators/json/containsOperator.js +1 -1
- package/geometry/operators/json/disjointOperator.js +1 -1
- package/geometry/operators/reshapeOperator.js +1 -1
- package/geometry/operators/support/apiConverter.js +1 -1
- package/geometry/operators/support/initNoPeFactory.js +1 -1
- package/geometry/operators/support/jsonConverter.js +1 -1
- package/interfaces.d.ts +263 -39
- package/layers/MapImageLayer.js +1 -1
- package/layers/RouteLayer.js +1 -1
- package/layers/mixins/operationalLayers.js +1 -1
- package/layers/save/mapImageLayerUtils.js +5 -0
- package/package.json +1 -1
- package/portal/support/portalItemUtils.js +1 -1
- package/support/revision.js +1 -1
- package/views/2d/engine/webgl/shaderGraph/techniques/mesh/utils.js +1 -1
- package/views/3d/environment/EnvironmentManager.js +1 -1
- package/views/3d/glTF/LoaderResult.js +1 -1
- package/views/3d/glTF/loader.js +1 -1
- package/views/3d/interactive/Manipulator3D.js +1 -1
- package/views/3d/interactive/visualElements/Object3DVisualElement.js +1 -1
- package/views/3d/interactive/visualElements/VisualElementResources.js +1 -1
- package/views/3d/layers/I3SMeshView3D.js +1 -1
- package/views/3d/layers/SceneLayerGraphicsView3D.js +1 -1
- package/views/3d/layers/graphics/DeconflictAABR.js +5 -0
- package/views/3d/layers/graphics/Deconflictor.js +1 -1
- package/views/3d/layers/graphics/Graphics3DDrapedGraphicLayer.js +1 -1
- package/views/3d/layers/graphics/Graphics3DGraphic.js +1 -1
- package/views/3d/layers/graphics/Graphics3DObject3DGraphicLayer.js +1 -1
- package/views/3d/layers/graphics/Labeler.js +1 -1
- package/views/3d/layers/graphics/objectResourceUtils.js +1 -1
- package/views/3d/layers/graphics/pipeline/rendering/DirectRenderer.js +1 -1
- package/views/3d/layers/support/StageLayerElevationProvider.js +1 -1
- package/views/3d/webgl-engine/Stage.js +1 -1
- package/views/3d/webgl-engine/core/FBOCacheFormats.js +1 -1
- package/views/3d/webgl-engine/core/renderPasses/AllRenderPasses.js +1 -1
- package/views/3d/webgl-engine/core/shaderLibrary/shading/ReadShadowMap.glsl.js +2 -2
- package/views/3d/webgl-engine/lib/ContentObjectType.js +1 -1
- package/views/3d/webgl-engine/lib/GPUPointOcclusionQuery.js +5 -0
- package/views/3d/webgl-engine/lib/GridLocalOriginFactory.js +1 -1
- package/views/3d/webgl-engine/lib/Intersector.js +1 -1
- package/views/3d/webgl-engine/lib/IntersectorTarget.js +1 -1
- package/views/3d/webgl-engine/lib/ModelDirtySet.js +1 -1
- package/views/3d/webgl-engine/lib/Object3D.js +1 -1
- package/views/3d/webgl-engine/lib/Octree.js +1 -1
- package/views/3d/webgl-engine/lib/OrderIndependentTransparency.js +1 -1
- package/views/3d/webgl-engine/lib/RendererBase.js +1 -1
- package/views/3d/webgl-engine/lib/ShadowMap.js +1 -1
- package/views/3d/webgl-engine/lib/WebGLLayer.js +1 -1
- package/views/3d/webgl-engine/lib/depthRangeUtils.js +1 -1
- package/views/3d/webgl-engine/materials/DefaultMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/WaterTechnique.js +1 -1
- package/views/3d/webgl-engine/parts/Model.js +1 -1
- package/views/3d/webgl-engine/shaders/ColorMaterialTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/DefaultMaterialTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/ImageMaterialTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/PatternTechnique.js +1 -1
- package/views/SelectionManager.js +1 -1
- package/views/ui/DefaultUI.js +1 -1
- package/views/webgl/Sync.js +5 -0
- package/widgets/Directions/DirectionsViewModel.js +1 -1
- package/widgets/Directions/css.js +5 -0
- package/widgets/Directions.js +1 -1
- package/widgets/FeatureTable/FeatureTableViewModel.js +1 -1
- package/widgets/FeatureTable/support/AttachmentsViewOptions.d.ts +4 -0
- package/widgets/FeatureTable.js +1 -1
- package/widgets/Fullscreen/FullscreenViewModel.js +1 -1
- package/widgets/Fullscreen.js +1 -1
- package/widgets/LayerList/LayerListItem.js +1 -1
- package/widgets/LayerList/ListItemPanel.js +1 -1
- package/widgets/NavigationToggle/NavigationToggleViewModel.js +1 -1
- package/widgets/NavigationToggle.js +1 -1
- package/widgets/OrientedImageryViewer/imageMeasurementUtils.js +1 -1
- package/widgets/TableList/ListItemPanel.js +1 -1
- package/widgets/Weather/WeatherViewModel.js +1 -1
- package/widgets/Weather.js +1 -1
- package/assets/esri/core/workers/chunks/11b55e7e76e50fe11bbe.js +0 -1
- package/assets/esri/core/workers/chunks/25142d431dd1e5e82234.js +0 -1
- package/assets/esri/core/workers/chunks/2c92f6f268aa2de5432c.js +0 -1
- package/assets/esri/core/workers/chunks/7bfa18dd8771d4932533.js +0 -1
- package/assets/esri/core/workers/chunks/7fce62ef3f0b011e0d35.js +0 -1
- package/assets/esri/core/workers/chunks/84d7ed2cf5fe23a0888f.js +0 -1
- package/assets/esri/core/workers/chunks/86931186095c23e47c0c.js +0 -1
- package/assets/esri/core/workers/chunks/8c8d812a7f2d29c29676.js +0 -1
- package/assets/esri/core/workers/chunks/a79511b926a2830bb160.js +0 -1
- package/assets/esri/core/workers/chunks/b780c7062b1b18a5ae19.js +0 -1
- package/assets/esri/core/workers/chunks/b8248939373e25a8d6db.js +0 -1
- package/assets/esri/core/workers/chunks/baa9fd23414f03ef90bc.js +0 -1
- package/assets/esri/core/workers/chunks/c819535525e9a27bae1f.js +0 -39
- package/assets/esri/core/workers/chunks/e08bff9f8247909776a4.js +0 -1
- package/assets/esri/core/workers/chunks/f2bc75a718a10065011d.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[1364,6061],{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.b)("not implemented for multipatch"),e):e}},64523:(e,t,s)=>{s.d(t,{O:()=>l});var n=s(90237),i=s(76061),r=s(55537),m=s(35368),o=s(95213),h=s(83661),a=s(5247);class l{getOperatorType(){return 10204}supportsCurves(){return!0}accelerateGeometry(e,t,s){return!1}canAccelerateGeometry(e){return!1}executeMany(e,t,s,n){return new c(e,t,s,n)}execute(e,t,s,n){return e||(0,r.t)("null param is not allowed."),new c(null,t,s,n).generalize(e)}}class c extends i.G{constructor(e,t,s,n){super(),this.m_pline=null,this.m_point=new o.P,this.m_stack=[],this.m_resultstack=[],this.m_callCount=0,this.m_progressTracker=n,this.m_geoms=e,this.m_maxDeviation=t,this.m_bRemoveDegenerateParts=s}tock(){return!0}getRank(){return 1}next(){const e=this.m_geoms.next();return null===e?null:((0,r.d)(e),this.generalize(e))}getGeometryID(){return this.m_geoms.getGeometryID()}generalize(e){const t=e.getGeometryType();if((0,r.e)(t))return e;if(t===r.G.enumEnvelope){const t=new m.a({vd:e.getDescription()});return t.addEnvelope(e,!1),this.generalize(t)}if((0,r.f)(t)){const t=new m.P({vd:e.getDescription()});return t.addSegment(e,!0),this.generalize(t)}if((0,r.h)(t)||(0,r.b)(""),e.isEmpty()||this.m_maxDeviation<=0)return e;const s=(new a.O).execute(e,0,.05*this.m_maxDeviation,0,this.m_progressTracker);e.hasNonLinearSegments()&&(this.m_maxDeviation*=.95);const i=s,o=e.createInstance();o.getGeometryType()===r.G.enumPolygon&&o.setFillRule(e.getFillRule()),this.m_xy=i.getAttributeStreamRef(0);{const e={stack:[],error:void 0,hasError:!1};try{const t=new m.L;this.m_pline=t,(0,n.b)(e,(0,h.h)((()=>{this.m_pline=null}),!1),!1);for(let e=0,t=i.getPathCount();e<t;e++)this.generalizePath(i.getImpl(),e,o.getImpl())}catch(t){e.error=t,e.hasError=!0}finally{(0,n.c)(e)}}return this.m_resultstack.length=0,this.m_stack.length=0,o}generalizePath(e,t,s){if(e.getPathSize(t)<2)return;this.m_resultstack.length=0,this.m_stack.length=0;const n=e.getPathStart(t),i=e.getPathEnd(t)-1,r=e.isClosedPath(t),m=e.isClosedPathInXYPlane(t);let o=0,a=-1;this.m_stack.push(r?n:i),this.m_stack.push(n);let l=!1,c=!1;for(!this.m_bRemoveDegenerateParts&&m&&(l=!0,c=!0);this.m_stack.length>1;){const t=this.m_stack.at(-1);this.m_stack.pop();const s=this.m_stack.at(-1);let n=e.getXY(t);this.m_pline.setStartXY(n),n=e.getXY(s),this.m_pline.setEndXY(n);const r=[Number.NaN];let m=this.findGreatestDistance(t,s,i,r);m>=0&&(l?l=!1:(c&&r[0]>o&&(o=r[0],a=m),r[0]<=this.m_maxDeviation&&(m=-1))),m>=0?(this.m_stack.push(m),this.m_stack.push(t)):this.m_resultstack.push(t)}r||this.m_resultstack.push(this.m_stack[0]);const u=this.m_resultstack.length;if(u===e.getPathSize(t)&&u===this.m_stack.length)s.addPath(e,t,!0);else if(this.m_resultstack.length>0){if(this.m_bRemoveDegenerateParts&&this.m_resultstack.length<=2){if(r||1===this.m_resultstack.length)return;if(h.P.distance(e.getXY(this.m_resultstack[0]),e.getXY(this.m_resultstack[1]))<=this.m_maxDeviation)return}if(c&&a>=0&&o<=this.m_maxDeviation){const e=this.m_resultstack.at(-1)>a;this.m_resultstack.push(a),e&&(this.m_resultstack[this.m_resultstack.length-2]=(0,h.b)(this.m_resultstack[this.m_resultstack.length-1],this.m_resultstack[this.m_resultstack.length-1]=this.m_resultstack[this.m_resultstack.length-2]))}for(let t=0,n=this.m_resultstack.length;t<n;t++)e.getPointByVal(this.m_resultstack[t],this.m_point),0===t?s.startPathPoint(this.m_point):s.lineToPoint(this.m_point);if(r){for(let e=this.m_resultstack.length;e<3;e++)s.lineToPoint(this.m_point);s.closePathWithLine()}}}findGreatestDistance(e,t,s,n){let i=t-1;t<=e&&(i=s);let r=-1,m=0;const o=new h.P;for(let t=e+1;t<=i;t++){this.m_xy.queryPoint2D(2*t,o);const e=o.x,s=o.y,n=this.m_pline.getClosestCoordinate(o,!1);o.assign(this.m_pline.getCoord2D(n)),o.x-=e,o.y-=s;const i=o.length();i>m&&(r=t,m=i),this.m_callCount++}return n[0]=m,r}}},76061:(e,t,s)=>{s.d(t,{G:()=>n,S:()=>i});class n{*[Symbol.iterator](){let e=this.next();for(;e;)yield e,e=this.next()}}class i extends n{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}}},91364:(e,t,s)=>{s.d(t,{g7:()=>M,yv:()=>G,fz:()=>R});var n=s(76061),i=s(55537),r=s(12189),m=s(79187),o=s(90237),h=s(95213),a=s(83661),l=s(35368),c=s(11878),u=s(1364);class _{getOperatorType(){return 10104}accelerateGeometry(e,t,s){return!1}canAccelerateGeometry(e){return!1}supportsCurves(){return!0}isSimple(e,t,s,n,i){return 5===(0,r.n)(e,t,s,n,i)}executeMany(e,t,s,n){return new f(e,t,s,n)}execute(e,t,s,r){const m=new n.S([e]),o=this.executeMany(m,t,s,r).next();return o||(0,i.c)("null output"),o}}class f extends n.G{constructor(e,t,s,n){super(),e||(0,i.t)(""),this.m_progressTracker=n,this.m_bForceSimplify=s,this.m_index=-1,this.m_inputGeometryCursor=e,this.m_spatialReference=t}next(){const e=this.m_inputGeometryCursor.next();return e?((0,i.d)(e),this.m_index=this.m_inputGeometryCursor.getGeometryID(),this.simplify(e)):null}getGeometryID(){return this.m_index}tock(){return!1}getRank(){return 1}simplify(e){return e||(0,i.t)(""),(0,r.o)(e,this.m_spatialReference,this.m_bForceSimplify,this.m_progressTracker)}}var g,d,p=s(64523);function P(e,t,s,n,i,r){return{m_from:e.clone(),m_to:t.clone(),m_center:s.clone(),m_next:i,m_type:n}}function y(e,t,s,n,i){return{m_from:e.clone(),m_to:t.clone(),m_next:s,m_type:4,m_center:new a.P}}(d=g||(g={}))[d.enumDummy=256]="enumDummy",d[d.enumLine=1]="enumLine",d[d.enumArc=2]="enumArc",d[d.enumMiter=8]="enumMiter",d[d.enumBevel=16]="enumBevel",d[d.enumJoinMask=26]="enumJoinMask",d[d.enumConnectionMask=27]="enumConnectionMask";class b extends n.G{constructor(e,t,s,n,i,r,m,o,h,a){super(),this.m_index=0,this.m_bufferedPolygon=null,this.m_x=0,this.m_y=0,this.m_progressTracker=a,this.m_parent=e,this.m_mp=t,this.m_distance=s,this.m_spatialReference=n,this.m_densifyDist=o,this.m_maxVertexInCompleteCircle=h,this.m_joins=i,this.m_caps=r,this.m_miterLimit=m}next(){const e=new h.P;for(;;){if(this.m_index===this.m_mp.getPointCount())return null;if(1===this.m_caps)return this.m_index=this.m_mp.getPointCount(),new l.a({vd:this.m_mp.getDescription()});if(this.m_mp.getPointByVal(this.m_index,e),this.m_index++,!e.isEmpty())break}let t,s=!1;if(null===this.m_bufferedPolygon&&(this.m_x=e.getX(),this.m_y=e.getY(),this.m_bufferedPolygon=this.m_parent.buffer(e,this.m_distance,this.m_spatialReference,this.m_joins,this.m_caps,this.m_miterLimit,this.m_densifyDist,this.m_maxVertexInCompleteCircle),s=!0),t=this.m_index<this.m_mp.getPointCount()?this.m_bufferedPolygon.clone():this.m_bufferedPolygon,!s){const s=new c.T,n=e.getX()-this.m_x,i=e.getY()-this.m_y;s.setShiftCoords(n,i),t.applyTransformation(s)}return(0,h.s)(t,0),t}getGeometryID(){return 0}getRank(){return 1}tock(){return!0}}class x extends n.G{constructor(e){super(),this.m_currentPathIndex=0,this.m_polyline=e}next(){if(!this.m_polyline)return null;const e=this.m_polyline.getImpl(),t=e.getPathCount();if(this.m_currentPathIndex<t){const t=this.m_currentPathIndex;if(this.m_currentPathIndex++,!e.isClosedPathInXYPlane(t)){let s=e.getXY(e.getPathEnd(t)-1);for(;this.m_currentPathIndex<e.getPathCount();){const t=e.getXY(e.getPathStart(this.m_currentPathIndex));if(e.isClosedPathInXYPlane(this.m_currentPathIndex))break;if(!t.equals(s))break;s=e.getXY(e.getPathEnd(this.m_currentPathIndex)-1),this.m_currentPathIndex++}}if(0===t&&this.m_currentPathIndex===this.m_polyline.getPathCount()){const e=this.m_polyline;return this.m_polyline=null,e}const s=new l.P({vd:this.m_polyline.getDescription()});s.addPath(this.m_polyline,t,!0);for(let n=t+1;n<this.m_currentPathIndex;n++)s.addSegmentsFromPath(this.m_polyline,n,0,e.getSegmentCountPath(n),!1);return this.m_currentPathIndex===this.m_polyline.getPathCount()&&(this.m_polyline=null),s}return null}getGeometryID(){return 0}getRank(){return 1}tock(){return!0}}class C extends n.G{constructor(e,t,s){super(),this.m_geometry=null,this.m_index=0,this.m_bufferer=e,this.m_geoms=t,this.m_index=0,this.m_bFilter=s}next(){if(null===this.m_geometry&&(this.m_index=0,this.m_geometry=this.m_geoms.next(),!this.m_geometry))return null;const e=this.m_geometry.getImpl();if(this.m_index<e.getPathCount()){const e=this.m_index;return this.m_index++,this.m_bufferer.bufferPolylinePath(this.m_geometry,e,this.m_bFilter)}return this.m_geometry=null,this.next()}getGeometryID(){return 0}getRank(){return 1}tock(){return!0}}class D extends n.G{constructor(e){super(),this.m_index=0,this.m_bufferer=e}next(){const e=this.m_bufferer.m_geometry;if(this.m_index<e.getPathCount()){const t=this.m_index,s=e.calculateRingArea2D(this.m_index);for((0,i.g)(s>0),this.m_index++;this.m_index<e.getPathCount()&&!(e.calculateRingArea2D(this.m_index)>0);)this.m_index++;let n;return n=0===t&&this.m_index===e.getPathCount()?this.m_bufferer.bufferPolygonImpl(e,0,e.getPathCount()):this.m_bufferer.bufferPolygonImpl(e,t,this.m_index),n}return null}getGeometryID(){return 0}getRank(){return 1}tock(){return!0}}class w{constructor(e){this.m_geometry=null,this.m_bufferCommands=[],this.m_originalGeomType=i.G.enumUnknown,this.m_maxVertexInCompleteCircle=-1,this.m_circleTemplateSize=-1,this.m_oldCircleTemplateSize=0,this.m_spatialReference=null,this.m_tolerance=new h.C(0,0),this.m_smallTolerance=new h.C(0,0),this.m_filterTolerance=0,this.m_densifyDist=-1,this.m_distance=Number.NaN,this.m_absDistance=0,this.m_absDistanceReversed=0,this.m_dA=-1,this.m_miterLimit=4,this.m_joins=0,this.m_caps=0,this.m_bRoundBuffer=!0,this.m_bOutputLoops=!0,this.m_bFilter=!0,this.m_circleTemplate=[],this.m_leftStack=[],this.m_middleStack=[],this.m_helperLine1=new l.L,this.m_helperLine2=new l.L,this.m_helperArray=[],this.m_progressCounter=0,this.m_densificator=l.D.constructDefault(e),this.m_progressTracker=e}buffer(e,t,s,n,r,o,c,_){if(e||(0,i.t)("Geometry.Bufferer.Impl.Buffer"),c<0&&(0,i.t)("Geometry.Bufferer.Impl.Buffer"),(0,i.j)(e.getGeometryType())&&(0,i.b)("Unsupported geometry type."),e.isEmpty())return new l.a({vd:e.getDescription()});if(this.m_joins=n,this.m_caps=r,this.m_bRoundBuffer=!1,this.m_miterLimit=o,this.m_originalGeomType=e.getGeometryType(),(0,i.k)(this.m_originalGeomType)?this.m_bRoundBuffer=0===this.m_joins:(0,i.e)(this.m_originalGeomType)?this.m_bRoundBuffer=0===this.m_caps:(0,i.l)(this.m_originalGeomType)&&(this.m_bRoundBuffer=0===this.m_joins&&0===this.m_caps),this.m_bFilter=this.m_bRoundBuffer,this.m_geometry=(0,u.c)(e),this.m_geometry.isEmpty())return new l.a({vd:e.getDescription()});const f=new m.Envelope2D;this.m_geometry.queryLooseEnvelope(f),t>0&&f.inflateCoords(t,t),this.m_tolerance=(0,h.a)(s,f,!0),this.m_smallTolerance=(0,h.a)(null,f,!0),_<=0&&(_=96),this.m_spatialReference=s,this.m_distance=t,this.m_absDistance=Math.abs(this.m_distance),this.m_absDistanceReversed=0!==this.m_absDistance?1/this.m_absDistance:0,Number.isNaN(c)||0===c?c=1e-5*this.m_absDistance:c>.5*this.m_absDistance&&(c=.5*this.m_absDistance),_<12&&(_=12);const g=Math.abs(t)*(1-Math.cos(Math.PI/_));if(g>c)c=g;else if(0!==t){const e=Math.PI/Math.acos(1-c/Math.abs(t));e<_-1&&(_=Math.trunc(e))<12&&(_=12,c=Math.abs(t)*(1-Math.cos(Math.PI/_)))}this.m_densifyDist=c,this.m_maxVertexInCompleteCircle=_,this.m_filterTolerance=this.m_bRoundBuffer?Math.min(this.m_smallTolerance.total(),.25*this.m_densifyDist):0,this.m_circleTemplateSize=this.calcN(),this.m_circleTemplateSize!==this.m_oldCircleTemplateSize&&(this.m_circleTemplate.length=0,this.m_oldCircleTemplateSize=this.m_circleTemplateSize),this.m_densifyDist>0&&(0,i.m)(this.m_geometry)&&(this.m_geometry=this.m_densificator.densifyEx(this.m_geometry,0,this.m_densifyDist,0,0!==this.m_joins,(0,a.i)()));const d=this.bufferImpl();return this.m_geometry=null,d}generateCircleTemplate(){if(this.m_circleTemplate.length)return;const e=this.m_circleTemplateSize,t=Math.trunc((e+3)/4),s=.5*Math.PI/t;this.m_dA=s,this.m_circleTemplate=(0,a.m)(a.P,4*t);const n=Math.cos(s),i=Math.sin(s),r=a.P.construct(0,1);for(let e=0;e<t;e++)this.m_circleTemplate[e+0*t].setCoords(r.y,-r.x),this.m_circleTemplate[e+1*t].setCoords(-r.x,-r.y),this.m_circleTemplate[e+2*t].setCoords(-r.y,r.x),this.m_circleTemplate[e+3*t].setCoords(r.x,r.y),r.rotateReverse(n,i)}bufferImpl(){const e=this.m_geometry.getGeometryType();if((0,i.f)(e)){const e=new l.P({vd:this.m_geometry.getDescription()});return e.addSegment(this.m_geometry,!0),this.m_geometry=e,this.bufferImpl()}if(this.m_distance<=this.m_tolerance.total()){if(!(0,i.k)(e))return new l.a({vd:this.m_geometry.getDescription()});if(this.m_distance<0){const e=new m.Envelope2D;if(this.m_geometry.queryEnvelope(e),e.width()<=2*this.m_absDistance||e.height()<=2*this.m_absDistance)return new l.a({vd:this.m_geometry.getDescription()})}}switch(this.m_geometry.getGeometryType()){case i.G.enumPoint:return this.bufferPoint();case i.G.enumMultiPoint:return this.bufferMultiPoint();case i.G.enumPolyline:return this.bufferPolyline();case i.G.enumPolygon:return this.bufferPolygon();case i.G.enumEnvelope:return this.bufferEnvelope();default:(0,i.c)("")}}bufferPolyline(){if(this.isDegenerateGeometry(this.m_geometry)){const e=new h.P;this.m_geometry.getPointByVal(0,e);const t=new m.Envelope2D;return this.m_geometry.queryEnvelope(t),e.setXY(t.getCenter()),this.bufferDegeneratePath(e,!0)}const e=this.m_geometry,t=this.m_geometry.getDescription();this.m_geometry=null;const s=new x(e);let n,i;n=0===this.m_joins?(new p.O).executeMany(s,.25*this.m_densifyDist,!1,this.m_progressTracker):s,i=this.m_bRoundBuffer?(new _).executeMany(n,null,!0,this.m_progressTracker):n;const o=new C(this,i,this.m_bFilter),a=(new r.h).executeMany(o,this.m_spatialReference,this.m_progressTracker,2),c=(new r.g).executeMany(a,this.m_spatialReference,!1,this.m_progressTracker).next();return null!==c?c:new l.a({vd:t})}bufferPolygon(){if(0===this.m_distance)return this.m_geometry;this.generateCircleTemplate();const e=(new r.g).execute(this.m_geometry,null,!1,this.m_progressTracker);if(this.m_distance<0){if(this.m_geometry=e,this.m_geometry.isEmpty())return this.m_geometry;const t=this.m_geometry,s=this.bufferPolygonImpl(t,0,t.getPathCount());return(new r.g).execute(s,this.m_spatialReference,!1,this.m_progressTracker)}{if(this.m_geometry=e,this.isDegenerateGeometry(this.m_geometry)){const e=new h.P;this.m_geometry.getPointByVal(0,e);const t=new m.Envelope2D;return this.m_geometry.queryEnvelope(t),e.setXY(t.getCenter()),this.bufferDegeneratePath(e,!0)}const t=new D(this),s=(new r.h).executeMany(t,this.m_spatialReference,this.m_progressTracker,2),n=(new r.g).executeMany(s,this.m_spatialReference,!1,this.m_progressTracker).next();return null!==n?n:new l.a({vd:this.m_geometry.getDescription()})}}bufferPolygonImpl(e,t,s){const n=e,i=n.getImpl();let r=new l.a({vd:e.getDescription()});for(let o=t;o<s;o++){if(i.getPathSize(o)<1)continue;const t=i.calculateRingArea2D(o),s=new m.Envelope2D;if(i.queryPathEnvelope(o,s),this.m_distance>0)if(t>0)if(this.isDegeneratePath(i,o)){const e=new h.P;i.getPointByVal(i.getPathStart(o),e),e.setXY(s.getCenter()),r.add(this.bufferDegeneratePath(e,!0),!1)}else{const t=new l.P({vd:e.getDescription()}),s=t.getImpl();if((0,l.i)(this.m_geometry,o)){const e=this.bufferConvexPath(n,o);r.add(e,!1)}else{this.bufferClosedPath(this.m_geometry,o,s,this.m_bRoundBuffer,1);const e=this.bufferCleanup(t);r.add(e,!1)}}else{if(s.width()+this.m_tolerance.total()<=2*this.m_absDistance||s.height()+this.m_tolerance.total()<=2*this.m_absDistance)continue;const t=new l.P({vd:e.getDescription()}),n=t.getImpl();if(this.bufferClosedPath(this.m_geometry,o,n,this.m_bRoundBuffer,1),!t.isEmpty()){const e=s,i=Math.max(1,this.m_absDistance),m=e.clone();m.inflateCoords(i,i),n.addEnvelope(m,!1);const o=this.bufferCleanup(t);r.reserve(r.getPointCount()+o.getPointCount()-4),S(o,r,m,!0)}}else if(t>0){if(s.width()+this.m_tolerance.total()<=2*this.m_absDistance||s.height()+this.m_tolerance.total()<=2*this.m_absDistance)continue;const t=new l.P({vd:e.getDescription()}),n=t.getImpl();if(this.bufferClosedPath(this.m_geometry,o,n,this.m_bRoundBuffer,-1),!t.isEmpty()){const e=new m.Envelope2D;n.queryLooseEnvelope(e);const s=Math.max(1,this.m_absDistance),i=e.clone();i.inflateCoords(s,s),n.addEnvelope(i,!1),S(this.bufferCleanup(t),r,i,!0)}}else{const t=new l.P({vd:e.getDescription()}),s=t.getImpl();this.bufferClosedPath(this.m_geometry,o,s,this.m_bRoundBuffer,-1);const n=this.bufferCleanup(t);for(let e=0,t=n.getPathCount();e<t;e++)r.addPath(n,e,!0)}}if(this.m_distance>0)return r.getPathCount()>1?this.bufferCleanup(r):v(r);{const e=new m.Envelope2D;if(r.queryLooseEnvelope(e),r.isEmpty())return v(r);{const t=Math.max(1,this.m_absDistance),s=e.clone();s.inflateCoords(t,t),r.addEnvelope(s,!1);const n=this.bufferCleanup(r);r=new l.a;const i=new l.a({vd:n.getDescription()});return S(n,i,s,!1),v(i)}}}bufferPoint(){return this.bufferPointImpl(this.m_geometry)}bufferPointImpl(e){const t=new l.a({vd:e.getDescription()});return 0===this.m_caps?(this.addCircle(t.getImpl(),e),this.setStrongSimple(t)):2===this.m_caps?(this.addSquare(t.getImpl(),e),this.setStrongSimple(t)):t}bufferDegeneratePath(e,t){const s=new l.a({vd:e.getDescription()});return t&&0===this.m_joins||!t&&0===this.m_caps?(this.addCircle(s.getImpl(),e),this.setStrongSimple(s)):t||2!==this.m_caps?s:(this.addSquare(s.getImpl(),e),this.setStrongSimple(s))}bufferMultiPoint(){const e=new b(this,this.m_geometry,this.m_distance,this.m_spatialReference,this.m_joins,this.m_caps,this.m_miterLimit,this.m_densifyDist,this.m_maxVertexInCompleteCircle,this.m_progressTracker);return(new r.h).executeMany(e,this.m_spatialReference,this.m_progressTracker,2).next()}bufferEnvelope(){let e=new l.a({vd:this.m_geometry.getDescription()});if(this.m_distance<=0){if(0===this.m_distance)e.addEnvelope(this.m_geometry,!1),T(this.m_geometry,this.m_tolerance.total())&&(e=this.setStrongSimple(e));else{const t=new h.E;this.m_geometry.queryEnvelope(t),t.inflateCoords(this.m_distance,this.m_distance),e.addEnvelope(t,!1),T(t,this.m_tolerance.total())&&(e=this.setStrongSimple(e))}return e}if(1===this.m_joins){const t=new h.E({copy:this.m_geometry});return t.inflateCoords(this.m_absDistance,this.m_absDistance),e.addEnvelope(t,!1),e}const t=this.m_geometry.clone();if(0===t.width()||0===t.height()){if(0===t.width()&&0===t.height()){const e=new h.P({vd:this.m_geometry.getDescription()});return t.queryCornerByVal(0,e),this.m_geometry=e,this.bufferImpl()}const e=new l.P({vd:this.m_geometry.getDescription()}),s=new h.P;return t.queryCornerByVal(0,s),e.startPathPoint(s),t.queryCornerByVal(2,s),e.lineToPoint(s),this.m_geometry=e,this.bufferImpl()}return e.addEnvelope(this.m_geometry,!1),this.m_geometry=e,this.bufferConvexPath(e,0)}bufferConvexPath(e,t){this.generateCircleTemplate();const s=e.hasAttribute(10),n=new l.a({vd:e.getDescription()}),r=n.getImpl();n.reserve((this.m_circleTemplate.length/10+4)*e.getPathSize(t));const m=new a.P,o=new a.P,h=new a.P,c=new a.P(0,0),u=new a.P,_=new a.P,f=e.getImpl(),d=e.getPathSize(t),p=e.getPathStart(t);for(let n=0,a=e.getPathSize(t);n<a;n++){const e=f.getXY(p+n),t=f.getXY(p+(n+1)%d),a=f.getXY(p+(n+2)%d);u.setSub(t,e),0===u.length()&&(0,i.c)("");const l=s&&!!(1&f.getAttributeAsInt(10,(n+1)%d,0));u.normalize();const P=u.clone();u.leftPerpendicularThis(),u.scale(this.m_absDistance),m.setAdd(u,e),o.setAdd(u,t),0===n?r.startPath(m):r.lineTo(m),r.lineTo(o),_.setSub(a,t),0===_.length()&&(0,i.c)(""),_.normalize();const y=_.clone();_.leftPerpendicularThis(),_.scale(this.m_absDistance),h.setAdd(_,t);let b=g.enumArc;const x=l?0:this.m_joins;if(2===x)b=g.enumBevel;else if(1===x){const e=-P.crossProduct(y);c.setSub(P,y),c.scale(this.m_absDistance/e),c.length()<this.m_miterLimit*this.m_absDistance?(c.addThis(t),b=g.enumMiter):b=g.enumBevel}else c.assign(t);this.addJoin(b,r,c,o,h,!1,!1)}return v(n)}bufferPolylinePath(e,t,s){this.generateCircleTemplate();const n=e,i=n.getImpl();if(i.getPathSize(t)<1)return null;let r;if(r=this.m_bRoundBuffer?i.isClosedPathInXYPlane(t):i.isClosedPath(t),this.isDegeneratePath(i,t)&&this.m_distance>0){const e=new h.P;i.getPointByVal(i.getPathStart(t),e);const s=new m.Envelope2D;return i.queryPathEnvelope(t,s),e.setXY(s.getCenter()),this.bufferDegeneratePath(e,r)}const o=new l.P({vd:e.getDescription()});o.reserve((Math.trunc(this.m_circleTemplate.length/10)+4)*i.getPathSize(t));const a=o.getImpl();return r?2!==this.bufferClosedPath(n,t,a,s,1)&&this.bufferClosedPath(n,t,a,s,-1):this.bufferOpenPath(n,t,a,s),this.bufferCleanup(o)}progress_(){}bufferCleanup(e,t=!1){const s=t?this.m_tolerance:this.m_smallTolerance;return(0,r.p)(e,s,!0,!t,-1,this.m_progressTracker,0,!1)}calcN(){if(0===this.m_densifyDist)return this.m_maxVertexInCompleteCircle;const e=1-this.m_densifyDist*Math.abs(this.m_absDistanceReversed);let t=4;return t=e<-1?4:2*Math.PI/Math.acos(e)+.5,t<4?t=4:t>this.m_maxVertexInCompleteCircle&&(t=this.m_maxVertexInCompleteCircle),Math.trunc(t)}addJoin(e,t,s,n,i,r,m){if(this.generateCircleTemplate(),r&&(t.startPath(n),r=!1),e===g.enumBevel)return void(m&&t.lineTo(i));if(e===g.enumMiter){const e=s.clone();return t.lineTo(e),void(m&&t.lineTo(i))}const o=new a.P;o.setSub(n,s),o.scale(this.m_absDistanceReversed);const h=new a.P;h.setSub(i,s),h.scale(this.m_absDistanceReversed);let l=Math.atan2(o.y,o.x)/this.m_dA;l<0&&(l=this.m_circleTemplate.length+l),l=this.m_circleTemplate.length-l;let c=Math.atan2(h.y,h.x)/this.m_dA;c<0&&(c=this.m_circleTemplate.length+c),c=this.m_circleTemplate.length-c,c<l&&(c+=this.m_circleTemplate.length);let u=Math.trunc(c),_=Math.ceil(l),f=this.m_circleTemplate[_%this.m_circleTemplate.length].clone();f.scaleAddThis(this.m_absDistance,s);const d=10*this.m_tolerance.total();f.sub(n).length()<d&&(_+=1),f=this.m_circleTemplate[u%this.m_circleTemplate.length].clone(),f.scaleAddThis(this.m_absDistance,s),f.sub(i).length()<d&&(u-=1);let p=u-_;p++;for(let e=0,n=_%this.m_circleTemplate.length;e<p;e++,n=(n+1)%this.m_circleTemplate.length)f=this.m_circleTemplate[n].clone(),f.scaleAddThis(this.m_absDistance,s),t.lineTo(f),this.progress_();m&&t.lineTo(i)}bufferClosedPath(e,t,s,n,i){const r=new l.E,m=r.addPathFromMultiPath(e,t,!0);return this.bufferClosedPathImpl(r,m,s,n,i)}bufferClosedPathImpl(e,t,s,n,r){const m=e.getFirstVertex(e.getFirstPath(t)),u=new h.P;if(e.queryPoint(m,u),e.filterClosePoints(this.m_filterTolerance,!1,!1,!1,-1),e.getPointCount(t)<2)return r<0?0:(this.m_bRoundBuffer&&this.addCircle(s,u),2);(0,i.g)(e.getFirstPath(t)!==l.n),(0,i.g)(e.getFirstVertex(e.getFirstPath(t))!==l.n);const _=e.getXY(e.getFirstVertex(e.getFirstPath(t))),f=new c.T;if(f.setShift(_.negate()),e.applyTransformation(f),n){const n=function(e,t,s,n,i,r,m){return function(e,t,s,n,i,r,m){const h={stack:[],error:void 0,hasError:!1};try{const n=e.getFirstPath(t),c=e.createUserIndex();(0,o.b)(h,(0,a.h)((()=>{e.removeUserIndex(c)}),!1),!1),function(e,t,s,n){let i=-1;const r=new a.P,m=new a.P,o=new a.P;for(let s=0,h=e.getPathSize(n),a=e.getFirstVertex(n);s<h;++s){-1===i&&(e.queryXY(a,m),i=e.getPrevVertex(a),-1!==i&&(e.queryXY(i,r),o.setSub(m,r),o.normalize()));const s=e.getNextVertex(a);if(-1===s)break;const n=e.getXY(s),h=n.sub(m);h.normalize(),-1!==i&&h.dotProduct(o)<-.99&&Math.abs(h.crossProduct(o))<1e-7&&e.setUserIndex(a,t,1),i=a,a=s,r.assign(m),m.assign(n),o.assign(h)}}(e,c,0,n);for(let t=0;t<100;++t){if(0===e.getPathSize(n))return 1;let t=e.getFirstVertex(n),r=e.getPathSize(n);if(r<3)return 1;e.isClosedPath(n)||(r-=1);const o=64;let h=0,a=!1;for(let n=0;n<r&&t!==l.n;n++){let l=0,u=t;for(let h=1,a=Math.min(o,r-n);h<a;h++)if(u=e.getNextVertexEx(u,s),h>1){const n=k(e,c,t,u,s,i,m,o);if(-1===n)break;l+=n,r-=n}if(h+=l,a=l>0,a){const n=e.getPrevVertexEx(t,s);if(-1!==n){t=n,r++;continue}}t=e.getNextVertexEx(t,s)}if(0===h)break}return e.filterClosePoints(r,!1,!1,!1,-1),1}catch(e){h.error=e,h.hasError=!0}finally{(0,o.c)(h)}}(e,t,s,0,i,r,m)}(e,t,r,0,this.m_absDistance,this.m_filterTolerance,this.m_densifyDist);if((0,i.g)(1===n),e.getPointCount(t)<2)return r<0?0:(this.addCircle(s,u),2)}const d=0!==this.m_joins&&e.getVertexDescription().hasAttribute(10);this.m_bufferCommands.length=0;const p=e.getFirstPath(t);let b=e.getFirstVertex(p),x=1===r?e.getPrevVertex(b):e.getNextVertex(b),C=1===r?e.getNextVertex(b):e.getPrevVertex(b),D=!0;const w=new a.P,v=new a.P,T=new a.P,S=new a.P,I=new a.P,E=new a.P,M=new a.P,G=new a.P,R=this.m_absDistance,V=e.getPathSize(p),A=new a.P(0,0);for(let t=0;t<V;t++){v.assign(e.getXY(C)),D&&(w.assign(e.getXY(b)),T.assign(e.getXY(x)),E.setSub(w,T),E.normalize(),G.leftPerpendicularOther(E),G.scale(R),S.setAdd(G,w));const t=d&&!!(1&e.getAttributeAsDbl(10,b,0));I.setSub(v,w),I.normalize(),M.leftPerpendicularOther(I),M.scale(R);const s=new a.P;s.setAdd(w,M);const n=E.crossProduct(I),i=E.dotProduct(I);if(n<0||i<0&&n<Math.abs(i)*Number.EPSILON*8){let e=!1;const i=t?0:this.m_joins;if(1===i){const t=-n;A.setSub(E,I),A.scale(this.m_absDistance/t),A.length()<this.m_miterLimit*this.m_absDistance&&(A.addThis(w),e=!0),this.m_bufferCommands.push(P(S,s,A,e?g.enumMiter:g.enumBevel,this.m_bufferCommands.length+1))}else this.m_bufferCommands.push(P(S,s,w,0===i?g.enumArc:g.enumBevel,this.m_bufferCommands.length+1))}else S.equals(s)||(this.m_bufferCommands.push(y(S,w,this.m_bufferCommands.length+1)),this.m_bufferCommands.push(y(w,s,this.m_bufferCommands.length+1)));const m=new a.P;m.setAdd(v,M),this.m_bufferCommands.push(P(s,m,w,g.enumLine,this.m_bufferCommands.length+1)),S.setCoordsPoint2D(m),G.setCoordsPoint2D(M),T.setCoordsPoint2D(w),w.setCoordsPoint2D(v),E.setCoordsPoint2D(I),x=b,b=C,D=!1,C=1===r?e.getNextVertex(b):e.getPrevVertex(b)}return this.m_bufferCommands.at(-1).m_next=0,this.processBufferCommands(s),f.setShift(_),s.applyTransformationToPath(f,s.getPathCount()-1),1}bufferOpenPath(e,t,s,n){if(this.m_bRoundBuffer){const i=new l.P({vd:e.getDescription()});return i.addPath(e,t,!1),i.addSegmentsFromPath(e,t,0,e.getSegmentCountPath(t),!1),this.bufferClosedPath(i,0,s,n,1)}let r=0;const m=new l.P({vd:e.getDescription()}),o=new a.P(0,0);{const n=new l.E,i=n.addPathFromMultiPath(e,t,!1),a=n.getFirstVertex(n.getFirstPath(i)),c=new h.P;if(n.queryPoint(a,c),o.assign(c.getXY()),n.filterClosePoints(0,!1,!1,!1,-1),n.getPointCount(i)<2)return this.m_bRoundBuffer&&this.addCircle(s,c),2;const u=n.getGeometry(n.getFirstGeometry());m.addPath(u,0,!1),r=m.getPointCount()-1,m.addSegmentsFromPath(u,0,0,u.getSegmentCountPath(0)-1,!1)}const u=new l.E,_=u.addPathFromMultiPath(m,0,!0);(0,i.g)(u.getFirstPath(_)!==l.n),(0,i.g)(u.getFirstVertex(u.getFirstPath(_))!==l.n);const f=new c.T;f.setShift(o.negate()),u.applyTransformation(f),this.m_bufferCommands.length=0;const d=u.getFirstPath(_),p=0!==this.m_joins&&u.getVertexDescription().hasAttribute(10);let b=u.getFirstVertex(d),x=u.getPrevVertex(b),C=u.getNextVertex(b),D=!0;const w=new a.P,v=new a.P,T=new a.P,k=new a.P,S=new a.P,I=new a.P,E=new a.P,M=new a.P,G=this.m_absDistance,R=u.getPathSize(d),V=new a.P(0,0);for(let e=0;e<R;e++){let t=!1;0!==e&&e!==r||(t=!0),v.assign(u.getXY(C)),D&&(w.assign(u.getXY(b)),T.assign(u.getXY(x)),I.setSub(w,T),I.normalize(),M.leftPerpendicularOther(I),M.scale(G),k.setAdd(M,w));const s=p&&!!(1&u.getAttributeAsDbl(10,b,0));S.setSub(v,w),S.normalize(),E.leftPerpendicularOther(S),E.scale(G);const n=new a.P;n.setAdd(w,E);const i=I.crossProduct(S),m=I.dotProduct(S);if(i<0||m<0&&i<Math.abs(m)*Number.EPSILON*8)if(t)if(0===this.m_caps)this.m_bufferCommands.push(P(k,n,w,g.enumArc,this.m_bufferCommands.length+1));else if(1===this.m_caps)this.m_bufferCommands.push(P(k,n,w,g.enumLine,this.m_bufferCommands.length+1));else{const e=S.mul(this.m_absDistance).negate(),t=e.clone();e.addThis(k),t.addThis(n),this.m_bufferCommands.push(P(k,e,w,g.enumLine,this.m_bufferCommands.length+1)),this.m_bufferCommands.push(P(e,t,w,g.enumLine,this.m_bufferCommands.length+1)),this.m_bufferCommands.push(P(t,n,w,g.enumLine,this.m_bufferCommands.length+1))}else{let e=!1;const t=s?0:this.m_joins;if(1===t){const t=-i;V.setSub(I,S),V.scale(this.m_absDistance/t),V.length()<this.m_miterLimit*this.m_absDistance&&(V.addThis(w),e=!0),this.m_bufferCommands.push(P(k,n,V,e?g.enumMiter:g.enumBevel,this.m_bufferCommands.length+1))}else this.m_bufferCommands.push(P(k,n,w,0===t?g.enumArc:g.enumBevel,this.m_bufferCommands.length+1))}else k.equals(n)||(this.m_bufferCommands.push(y(k,w,this.m_bufferCommands.length+1)),this.m_bufferCommands.push(y(w,n,this.m_bufferCommands.length+1)));const o=new a.P;o.setAdd(v,E),this.m_bufferCommands.push(P(n,o,w,g.enumLine,this.m_bufferCommands.length+1)),k.setCoordsPoint2D(o),M.setCoordsPoint2D(E),T.setCoordsPoint2D(w),w.setCoordsPoint2D(v),I.setCoordsPoint2D(S),x=b,b=C,D=!1,C=u.getNextVertex(b)}return this.m_bufferCommands.at(-1).m_next=0,this.processBufferCommands(s),f.setShift(o),s.applyTransformationToPath(f,s.getPathCount()-1),1}processBufferCommands(e){const t=this.cleanupBufferCommands();let s=!0,n=t+1;for(let i=t;n!==t;i=n){const t=this.m_bufferCommands[i];n=-1!==t.m_next?t.m_next:(i+1)%this.m_bufferCommands.length,t.m_type&&(s&&(e.startPath(t.m_from),s=!1),t.m_type&g.enumJoinMask?this.addJoin(t.m_type,e,t.m_center,t.m_from,t.m_to,!1,!0):e.lineTo(t.m_to))}}cleanupBufferCommands(){this.m_helperArray=(0,a.m)(a.P,9);let e=0;for(let t=0,s=this.m_bufferCommands.length;t<s;){const s=this.m_bufferCommands[t];if(s.m_type&g.enumConnectionMask){e=t;break}t=s.m_next}let t=e+1;for(let s=e;t!==e;s=t){const e=this.m_bufferCommands[s];t=e.m_next;let n=1,i=null;for(;t!==s&&(i=this.m_bufferCommands[t],!(i.m_type&g.enumConnectionMask));)t=i.m_next,n++;1!==n&&(e.m_type&i.m_type)===g.enumLine&&(this.m_helperLine1.setStartXY(e.m_from),this.m_helperLine1.setEndXY(e.m_to),this.m_helperLine2.setStartXY(i.m_from),this.m_helperLine2.setEndXY(i.m_to),1===this.m_helperLine1.intersect(this.m_helperLine2,this.m_helperArray,null,null,this.m_smallTolerance.total())&&(e.m_to.assign(this.m_helperArray[0]),i.m_from.assign(this.m_helperArray[0]),e.m_next=t))}return e}isDegeneratePath(e,t){if(1===e.getPathSize(t))return!0;if(0===this.m_joins&&0===this.m_caps){const s=new m.Envelope2D;if(e.queryPathEnvelope(t,s),Math.max(s.width(),s.height())<.5*this.m_densifyDist)return!0}return!1}isDegenerateGeometry(e){if(0===this.m_joins&&0===this.m_caps){const t=new m.Envelope2D;if(e.queryEnvelope(t),Math.max(t.width(),t.height())<.5*this.m_densifyDist)return!0}return!1}addCircle(e,t){const s=t.getXY();if(0!==this.m_circleTemplate.length){let t=this.m_circleTemplate[0].clone();t.scaleAddThis(this.m_absDistance,s),e.startPath(t);for(let n=1,i=this.m_circleTemplate.length;n<i;n++)t=this.m_circleTemplate[n].clone(),t.scaleAddThis(this.m_absDistance,s),e.lineTo(t);return}const n=this.m_circleTemplateSize,i=Math.trunc((n+3)/4),r=.5*Math.PI/i;e.reserve(4*i);const m=Math.cos(r),o=Math.sin(r);for(let t=3;t>=0;t--){const n=a.P.construct(0,this.m_absDistance);switch(t){case 0:for(let t=0;t<i;t++)e.lineToCoords(n.x+s.x,n.y+s.y),n.rotateReverse(m,o);break;case 1:for(let t=0;t<i;t++)e.lineToCoords(-n.y+s.x,n.x+s.y),n.rotateReverse(m,o);break;case 2:for(let t=0;t<i;t++)e.lineToCoords(-n.x+s.x,-n.y+s.y),n.rotateReverse(m,o);break;default:e.startPathCoords(n.y+s.x,-n.x+s.y);for(let t=1;t<i;t++)n.rotateReverse(m,o),e.lineToCoords(n.y+s.x,-n.x+s.y)}this.progress_()}}addSquare(e,t){const s=new h.E({vd:t.getDescription()});s.setCoords(t.getX(),t.getY(),t.getX(),t.getY()),s.inflateCoords(this.m_absDistance,this.m_absDistance),e.addEnvelope(s,!1)}setStrongSimple(e){return e.getImpl().setIsSimple(4,this.m_tolerance.total()),e.getImpl().updateOGCFlagsProtected(),e}}function v(e){return(0,h.s)(e,0),e}function T(e,t){return!!e.isEmpty()||Math.min(e.width(),e.height())>t}function k(e,t,s,n,r,m,o,h){const l=e.getXY(s),c=e.getXY(n);if(l.equals(c))return-1;const u=.25*o,_=.25*o,f=new a.P;f.setSub(c,l);const g=f.length(),d=g*g*.25,p=m*m-d;if(p<=d)return-1;const P=Math.sqrt(p);f.normalize();const y=f.clone();y.rightPerpendicularThis();const b=d/P,x=b<=_,C=a.P.lerp(c,l,.5),D=y.clone(),w=b-u;D.scaleAddThis(Math.max(0,w),C),y.negate().scaleAddThis(P,C);const v=3.61*(0,a.s)(m-_),T=D.sub(l),k=D.sub(c);let S=!1,I=0;const E=(0,a.d)(64,0);(0,i.g)(h===E.length);{for(let i=e.getPrevVertexEx(n,r);i!==s;){if(1===e.getUserIndex(i,t))return-1;if(!e.getXY(i).equals(c))break;{const t=e.getPrevVertexEx(i,r);e.removeVertex(i,!1),i=t}}const m=new a.P,o=l.clone();E[I++]=1;for(let i=e.getNextVertexEx(s,r);i!==n;){if(1===e.getUserIndex(i,t))return-1;const s=e.getXY(i);if(s.equals(o)){const t=e.getNextVertexEx(i,r);e.removeVertex(i,!1),i=t;continue}E[I++]=0;const n=new a.P;if(n.setSub(s,l),n.dotProduct(y)<0)return 0;(a.P.sqrDistance(s,l)>v||a.P.sqrDistance(s,c)>v)&&(S=!0);let h=0;if(s.sub(l).crossProduct(T)>=0&&(h=1),s.sub(c).crossProduct(k)<=0&&(h|=2),0===h)return 0;E[I-1]=h,m.assign(o),o.assign(s),i=e.getNextVertexEx(i,r)}if(1===I)return 0;(0,i.g)(I<E.length),E[I++]=2}let M=!0;for(let e=1,t=0;e<I;e++)if(E[e]!==E[e-1]&&(t++,M=t<3&&(1===t&&3===E[e]||2===t&&2===E[e]),!M))return 0;if(I>2&&M&&(3===I||!S)){let t=0,i=e.getNextVertexEx(s,r);for(x||(e.setXY(i,D),i=e.getNextVertexEx(i,r));i!==n;){const s=e.getNextVertexEx(i,r);e.removeVertex(i,!1),i=s,++t}return t}if((0,i.g)(3!==I),S&&I>3)return 0;const G=l.clone();let R=s;const V=l.clone();let A=1,X=-1,Y=R,B=0;for(I=1;Y!==n;){Y=e.getNextVertexEx(Y,r);const t=E[I++];if(0===t){if(Y===n)break;continue}const s=e.getXY(Y);if(-1!==X){if(X&A&t&3){e.removeVertex(R,!0),B++,R=Y,V.setCoordsPoint2D(s),A=t;continue}if(3===A&&0!==X&&0!==t){if(V.setCoordsPoint2D(D),x||V.equals(G)){e.removeVertex(R,!0),B++,R=Y,V.setCoordsPoint2D(s),A=t;continue}e.setXY(R,V)}}X=A,G.setCoordsPoint2D(V),R=Y,A=t,V.setCoordsPoint2D(s)}return B}function S(e,t,s,n){for(let i=0,r=e.getPathCount();i<r;i++){const r=e.getXY(e.getPathStart(i));r.x!==s.xmin&&r.x!==s.xmax&&t.addPath(e,i,n)}}class I extends n.G{constructor(e,t,s,n,i,r,o){super(),this.m_currentUnionEnvelope2D=new m.Envelope2D,this.m_index=-1,this.m_dindex=-1,this.m_progressTracker=o,this.m_bufferer=new w(o),this.m_inputGeoms=e,this.m_spatialReference=t,this.m_distances=s,this.m_maxDeviation=n,this.m_maxVerticesInFullCircle=i}tock(){return!0}getRank(){return 1}next(){{let e;for(;e=this.m_inputGeoms.next();)return(0,i.d)(e),this.m_index=this.m_inputGeoms.getGeometryID(),this.m_dindex+1<this.m_distances.length&&this.m_dindex++,this.buffer(e,this.m_distances[this.m_dindex]);return null}}getGeometryID(){return this.m_index}buffer(e,t){return this.m_bufferer.buffer(e,t,this.m_spatialReference,0,0,4,this.m_maxDeviation,this.m_maxVerticesInFullCircle)}}const E=new class{getOperatorType(){return 10004}supportsCurves(){return!0}accelerateGeometry(e,t,s){return!1}canAccelerateGeometry(e){return!1}executeMany(e,t,s,n,i){return this.executeManyEx(e,t,s,Number.NaN,96,n,i)}execute(e,t,s,r){Number.isFinite(s)||(0,i.t)("Invalid distance for buffer operation");const m=new n.S([e]),o=[s],h=this.executeMany(m,t,o,!1,r).next();return h||(0,i.c)("null buffer output"),h}executeManyEx(e,t,s,n,m,o,h){if(void 0!==s.find((e=>!Number.isFinite(e)))&&(0,i.t)("Invalid distance for buffer operation"),o){const i=new I(e,t,s,n,m,!1,h);return(new r.h).executeMany(i,t,h,2)}return new I(e,t,s,n,m,!1,h)}};function M(e,t,s){return E.execute(e,t,s,null)}function G(e,t,s,i,r,m){const o=E.executeManyEx(new n.S(e),t,s,i,r,m,null);return Array.from(o)}function R(){return E.supportsCurves()}}}]);
|
|
1
|
+
"use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[1364,6061],{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}},64523:(e,t,s)=>{s.d(t,{O:()=>l});var n=s(90237),i=s(76061),r=s(55537),m=s(35368),o=s(95213),h=s(83661),a=s(5247);class l{getOperatorType(){return 10204}supportsCurves(){return!0}accelerateGeometry(e,t,s){return!1}canAccelerateGeometry(e){return!1}executeMany(e,t,s,n){return new c(e,t,s,n)}execute(e,t,s,n){return e||(0,r.a)("null param is not allowed."),new c(null,t,s,n).generalize(e)}}class c extends i.G{constructor(e,t,s,n){super(),this.m_pline=null,this.m_point=new o.P,this.m_stack=[],this.m_resultstack=[],this.m_callCount=0,this.m_progressTracker=n,this.m_geoms=e,this.m_maxDeviation=t,this.m_bRemoveDegenerateParts=s}tock(){return!0}getRank(){return 1}next(){const e=this.m_geoms.next();return null===e?null:((0,r.d)(e),this.generalize(e))}getGeometryID(){return this.m_geoms.getGeometryID()}generalize(e){const t=e.getGeometryType();if((0,r.e)(t))return e;if(t===r.G.enumEnvelope){const t=new m.a({vd:e.getDescription()});return t.addEnvelope(e,!1),this.generalize(t)}if((0,r.f)(t)){const t=new m.P({vd:e.getDescription()});return t.addSegment(e,!0),this.generalize(t)}if((0,r.h)(t)||(0,r.t)(""),e.isEmpty()||this.m_maxDeviation<=0)return e;const s=(new a.O).execute(e,0,.05*this.m_maxDeviation,0,this.m_progressTracker);e.hasNonLinearSegments()&&(this.m_maxDeviation*=.95);const i=s,o=e.createInstance();o.getGeometryType()===r.G.enumPolygon&&o.setFillRule(e.getFillRule()),this.m_xy=i.getAttributeStreamRef(0);{const e={stack:[],error:void 0,hasError:!1};try{const t=new m.L;this.m_pline=t,(0,n.b)(e,(0,h.h)((()=>{this.m_pline=null}),!1),!1);for(let e=0,t=i.getPathCount();e<t;e++)this.generalizePath(i.getImpl(),e,o.getImpl())}catch(t){e.error=t,e.hasError=!0}finally{(0,n.c)(e)}}return this.m_resultstack.length=0,this.m_stack.length=0,o}generalizePath(e,t,s){if(e.getPathSize(t)<2)return;this.m_resultstack.length=0,this.m_stack.length=0;const n=e.getPathStart(t),i=e.getPathEnd(t)-1,r=e.isClosedPath(t),m=e.isClosedPathInXYPlane(t);let o=0,a=-1;this.m_stack.push(r?n:i),this.m_stack.push(n);let l=!1,c=!1;for(!this.m_bRemoveDegenerateParts&&m&&(l=!0,c=!0);this.m_stack.length>1;){const t=this.m_stack.at(-1);this.m_stack.pop();const s=this.m_stack.at(-1);let n=e.getXY(t);this.m_pline.setStartXY(n),n=e.getXY(s),this.m_pline.setEndXY(n);const r=[Number.NaN];let m=this.findGreatestDistance(t,s,i,r);m>=0&&(l?l=!1:(c&&r[0]>o&&(o=r[0],a=m),r[0]<=this.m_maxDeviation&&(m=-1))),m>=0?(this.m_stack.push(m),this.m_stack.push(t)):this.m_resultstack.push(t)}r||this.m_resultstack.push(this.m_stack[0]);const u=this.m_resultstack.length;if(u===e.getPathSize(t)&&u===this.m_stack.length)s.addPath(e,t,!0);else if(this.m_resultstack.length>0){if(this.m_bRemoveDegenerateParts&&this.m_resultstack.length<=2){if(r||1===this.m_resultstack.length)return;if(h.P.distance(e.getXY(this.m_resultstack[0]),e.getXY(this.m_resultstack[1]))<=this.m_maxDeviation)return}if(c&&a>=0&&o<=this.m_maxDeviation){const e=this.m_resultstack.at(-1)>a;this.m_resultstack.push(a),e&&(this.m_resultstack[this.m_resultstack.length-2]=(0,h.c)(this.m_resultstack[this.m_resultstack.length-1],this.m_resultstack[this.m_resultstack.length-1]=this.m_resultstack[this.m_resultstack.length-2]))}for(let t=0,n=this.m_resultstack.length;t<n;t++)e.getPointByVal(this.m_resultstack[t],this.m_point),0===t?s.startPathPoint(this.m_point):s.lineToPoint(this.m_point);if(r){for(let e=this.m_resultstack.length;e<3;e++)s.lineToPoint(this.m_point);s.closePathWithLine()}}}findGreatestDistance(e,t,s,n){let i=t-1;t<=e&&(i=s);let r=-1,m=0;const o=new h.P;for(let t=e+1;t<=i;t++){this.m_xy.queryPoint2D(2*t,o);const e=o.x,s=o.y,n=this.m_pline.getClosestCoordinate(o,!1);o.assign(this.m_pline.getCoord2D(n)),o.x-=e,o.y-=s;const i=o.length();i>m&&(r=t,m=i),this.m_callCount++}return n[0]=m,r}}},76061:(e,t,s)=>{s.d(t,{G:()=>n,S:()=>i});class n{*[Symbol.iterator](){let e=this.next();for(;e;)yield e,e=this.next()}}class i extends n{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}}},91364:(e,t,s)=>{s.d(t,{g7:()=>M,yv:()=>G,fz:()=>R});var n=s(76061),i=s(55537),r=s(12189),m=s(79187),o=s(90237),h=s(95213),a=s(83661),l=s(35368),c=s(11878),u=s(1364);class _{getOperatorType(){return 10104}accelerateGeometry(e,t,s){return!1}canAccelerateGeometry(e){return!1}supportsCurves(){return!0}isSimple(e,t,s,n,i){return 5===(0,r.n)(e,t,s,n,i)}executeMany(e,t,s,n){return new f(e,t,s,n)}execute(e,t,s,r){const m=new n.S([e]),o=this.executeMany(m,t,s,r).next();return o||(0,i.c)("null output"),o}}class f extends n.G{constructor(e,t,s,n){super(),e||(0,i.a)(""),this.m_progressTracker=n,this.m_bForceSimplify=s,this.m_index=-1,this.m_inputGeometryCursor=e,this.m_spatialReference=t}next(){const e=this.m_inputGeometryCursor.next();return e?((0,i.d)(e),this.m_index=this.m_inputGeometryCursor.getGeometryID(),this.simplify(e)):null}getGeometryID(){return this.m_index}tock(){return!1}getRank(){return 1}simplify(e){return e||(0,i.a)(""),(0,r.o)(e,this.m_spatialReference,this.m_bForceSimplify,this.m_progressTracker)}}var g,d,p=s(64523);function P(e,t,s,n,i,r){return{m_from:e.clone(),m_to:t.clone(),m_center:s.clone(),m_next:i,m_type:n}}function y(e,t,s,n,i){return{m_from:e.clone(),m_to:t.clone(),m_next:s,m_type:4,m_center:new a.P}}(d=g||(g={}))[d.enumDummy=256]="enumDummy",d[d.enumLine=1]="enumLine",d[d.enumArc=2]="enumArc",d[d.enumMiter=8]="enumMiter",d[d.enumBevel=16]="enumBevel",d[d.enumJoinMask=26]="enumJoinMask",d[d.enumConnectionMask=27]="enumConnectionMask";class b extends n.G{constructor(e,t,s,n,i,r,m,o,h,a){super(),this.m_index=0,this.m_bufferedPolygon=null,this.m_x=0,this.m_y=0,this.m_progressTracker=a,this.m_parent=e,this.m_mp=t,this.m_distance=s,this.m_spatialReference=n,this.m_densifyDist=o,this.m_maxVertexInCompleteCircle=h,this.m_joins=i,this.m_caps=r,this.m_miterLimit=m}next(){const e=new h.P;for(;;){if(this.m_index===this.m_mp.getPointCount())return null;if(1===this.m_caps)return this.m_index=this.m_mp.getPointCount(),new l.a({vd:this.m_mp.getDescription()});if(this.m_mp.getPointByVal(this.m_index,e),this.m_index++,!e.isEmpty())break}let t,s=!1;if(null===this.m_bufferedPolygon&&(this.m_x=e.getX(),this.m_y=e.getY(),this.m_bufferedPolygon=this.m_parent.buffer(e,this.m_distance,this.m_spatialReference,this.m_joins,this.m_caps,this.m_miterLimit,this.m_densifyDist,this.m_maxVertexInCompleteCircle),s=!0),t=this.m_index<this.m_mp.getPointCount()?this.m_bufferedPolygon.clone():this.m_bufferedPolygon,!s){const s=new c.T,n=e.getX()-this.m_x,i=e.getY()-this.m_y;s.setShiftCoords(n,i),t.applyTransformation(s)}return(0,h.s)(t,0),t}getGeometryID(){return 0}getRank(){return 1}tock(){return!0}}class x extends n.G{constructor(e){super(),this.m_currentPathIndex=0,this.m_polyline=e}next(){if(!this.m_polyline)return null;const e=this.m_polyline.getImpl(),t=e.getPathCount();if(this.m_currentPathIndex<t){const t=this.m_currentPathIndex;if(this.m_currentPathIndex++,!e.isClosedPathInXYPlane(t)){let s=e.getXY(e.getPathEnd(t)-1);for(;this.m_currentPathIndex<e.getPathCount();){const t=e.getXY(e.getPathStart(this.m_currentPathIndex));if(e.isClosedPathInXYPlane(this.m_currentPathIndex))break;if(!t.equals(s))break;s=e.getXY(e.getPathEnd(this.m_currentPathIndex)-1),this.m_currentPathIndex++}}if(0===t&&this.m_currentPathIndex===this.m_polyline.getPathCount()){const e=this.m_polyline;return this.m_polyline=null,e}const s=new l.P({vd:this.m_polyline.getDescription()});s.addPath(this.m_polyline,t,!0);for(let n=t+1;n<this.m_currentPathIndex;n++)s.addSegmentsFromPath(this.m_polyline,n,0,e.getSegmentCountPath(n),!1);return this.m_currentPathIndex===this.m_polyline.getPathCount()&&(this.m_polyline=null),s}return null}getGeometryID(){return 0}getRank(){return 1}tock(){return!0}}class C extends n.G{constructor(e,t,s){super(),this.m_geometry=null,this.m_index=0,this.m_bufferer=e,this.m_geoms=t,this.m_index=0,this.m_bFilter=s}next(){if(null===this.m_geometry&&(this.m_index=0,this.m_geometry=this.m_geoms.next(),!this.m_geometry))return null;const e=this.m_geometry.getImpl();if(this.m_index<e.getPathCount()){const e=this.m_index;return this.m_index++,this.m_bufferer.bufferPolylinePath(this.m_geometry,e,this.m_bFilter)}return this.m_geometry=null,this.next()}getGeometryID(){return 0}getRank(){return 1}tock(){return!0}}class D extends n.G{constructor(e){super(),this.m_index=0,this.m_bufferer=e}next(){const e=this.m_bufferer.m_geometry;if(this.m_index<e.getPathCount()){const t=this.m_index,s=e.calculateRingArea2D(this.m_index);for((0,i.g)(s>0),this.m_index++;this.m_index<e.getPathCount()&&!(e.calculateRingArea2D(this.m_index)>0);)this.m_index++;let n;return n=0===t&&this.m_index===e.getPathCount()?this.m_bufferer.bufferPolygonImpl(e,0,e.getPathCount()):this.m_bufferer.bufferPolygonImpl(e,t,this.m_index),n}return null}getGeometryID(){return 0}getRank(){return 1}tock(){return!0}}class w{constructor(e){this.m_geometry=null,this.m_bufferCommands=[],this.m_originalGeomType=i.G.enumUnknown,this.m_maxVertexInCompleteCircle=-1,this.m_circleTemplateSize=-1,this.m_oldCircleTemplateSize=0,this.m_spatialReference=null,this.m_tolerance=new h.C(0,0),this.m_smallTolerance=new h.C(0,0),this.m_filterTolerance=0,this.m_densifyDist=-1,this.m_distance=Number.NaN,this.m_absDistance=0,this.m_absDistanceReversed=0,this.m_dA=-1,this.m_miterLimit=4,this.m_joins=0,this.m_caps=0,this.m_bRoundBuffer=!0,this.m_bOutputLoops=!0,this.m_bFilter=!0,this.m_circleTemplate=[],this.m_leftStack=[],this.m_middleStack=[],this.m_helperLine1=new l.L,this.m_helperLine2=new l.L,this.m_helperArray=[],this.m_progressCounter=0,this.m_densificator=l.D.constructDefault(e),this.m_progressTracker=e}buffer(e,t,s,n,r,o,c,_){if(e||(0,i.a)("Geometry.Bufferer.Impl.Buffer"),c<0&&(0,i.a)("Geometry.Bufferer.Impl.Buffer"),(0,i.j)(e.getGeometryType())&&(0,i.t)("Unsupported geometry type."),e.isEmpty())return new l.a({vd:e.getDescription()});if(this.m_joins=n,this.m_caps=r,this.m_bRoundBuffer=!1,this.m_miterLimit=o,this.m_originalGeomType=e.getGeometryType(),(0,i.k)(this.m_originalGeomType)?this.m_bRoundBuffer=0===this.m_joins:(0,i.e)(this.m_originalGeomType)?this.m_bRoundBuffer=0===this.m_caps:(0,i.l)(this.m_originalGeomType)&&(this.m_bRoundBuffer=0===this.m_joins&&0===this.m_caps),this.m_bFilter=this.m_bRoundBuffer,this.m_geometry=(0,u.c)(e),this.m_geometry.isEmpty())return new l.a({vd:e.getDescription()});const f=new m.Envelope2D;this.m_geometry.queryLooseEnvelope(f),t>0&&f.inflateCoords(t,t),this.m_tolerance=(0,h.c)(s,f,!0),this.m_smallTolerance=(0,h.c)(null,f,!0),_<=0&&(_=96),this.m_spatialReference=s,this.m_distance=t,this.m_absDistance=Math.abs(this.m_distance),this.m_absDistanceReversed=0!==this.m_absDistance?1/this.m_absDistance:0,Number.isNaN(c)||0===c?c=1e-5*this.m_absDistance:c>.5*this.m_absDistance&&(c=.5*this.m_absDistance),_<12&&(_=12);const g=Math.abs(t)*(1-Math.cos(Math.PI/_));if(g>c)c=g;else if(0!==t){const e=Math.PI/Math.acos(1-c/Math.abs(t));e<_-1&&(_=Math.trunc(e))<12&&(_=12,c=Math.abs(t)*(1-Math.cos(Math.PI/_)))}this.m_densifyDist=c,this.m_maxVertexInCompleteCircle=_,this.m_filterTolerance=this.m_bRoundBuffer?Math.min(this.m_smallTolerance.total(),.25*this.m_densifyDist):0,this.m_circleTemplateSize=this.calcN(),this.m_circleTemplateSize!==this.m_oldCircleTemplateSize&&(this.m_circleTemplate.length=0,this.m_oldCircleTemplateSize=this.m_circleTemplateSize),this.m_densifyDist>0&&(0,i.m)(this.m_geometry)&&(this.m_geometry=this.m_densificator.densifyEx(this.m_geometry,0,this.m_densifyDist,0,0!==this.m_joins,(0,a.i)()));const d=this.bufferImpl();return this.m_geometry=null,d}generateCircleTemplate(){if(this.m_circleTemplate.length)return;const e=this.m_circleTemplateSize,t=Math.trunc((e+3)/4),s=.5*Math.PI/t;this.m_dA=s,this.m_circleTemplate=(0,a.m)(a.P,4*t);const n=Math.cos(s),i=Math.sin(s),r=a.P.construct(0,1);for(let e=0;e<t;e++)this.m_circleTemplate[e+0*t].setCoords(r.y,-r.x),this.m_circleTemplate[e+1*t].setCoords(-r.x,-r.y),this.m_circleTemplate[e+2*t].setCoords(-r.y,r.x),this.m_circleTemplate[e+3*t].setCoords(r.x,r.y),r.rotateReverse(n,i)}bufferImpl(){const e=this.m_geometry.getGeometryType();if((0,i.f)(e)){const e=new l.P({vd:this.m_geometry.getDescription()});return e.addSegment(this.m_geometry,!0),this.m_geometry=e,this.bufferImpl()}if(this.m_distance<=this.m_tolerance.total()){if(!(0,i.k)(e))return new l.a({vd:this.m_geometry.getDescription()});if(this.m_distance<0){const e=new m.Envelope2D;if(this.m_geometry.queryEnvelope(e),e.width()<=2*this.m_absDistance||e.height()<=2*this.m_absDistance)return new l.a({vd:this.m_geometry.getDescription()})}}switch(this.m_geometry.getGeometryType()){case i.G.enumPoint:return this.bufferPoint();case i.G.enumMultiPoint:return this.bufferMultiPoint();case i.G.enumPolyline:return this.bufferPolyline();case i.G.enumPolygon:return this.bufferPolygon();case i.G.enumEnvelope:return this.bufferEnvelope();default:(0,i.c)("")}}bufferPolyline(){if(this.isDegenerateGeometry(this.m_geometry)){const e=new h.P;this.m_geometry.getPointByVal(0,e);const t=new m.Envelope2D;return this.m_geometry.queryEnvelope(t),e.setXY(t.getCenter()),this.bufferDegeneratePath(e,!0)}const e=this.m_geometry,t=this.m_geometry.getDescription();this.m_geometry=null;const s=new x(e);let n,i;n=0===this.m_joins?(new p.O).executeMany(s,.25*this.m_densifyDist,!1,this.m_progressTracker):s,i=this.m_bRoundBuffer?(new _).executeMany(n,null,!0,this.m_progressTracker):n;const o=new C(this,i,this.m_bFilter),a=(new r.j).executeMany(o,this.m_spatialReference,this.m_progressTracker,2),c=(new r.O).executeMany(a,this.m_spatialReference,!1,this.m_progressTracker).next();return null!==c?c:new l.a({vd:t})}bufferPolygon(){if(0===this.m_distance)return this.m_geometry;this.generateCircleTemplate();const e=(new r.O).execute(this.m_geometry,null,!1,this.m_progressTracker);if(this.m_distance<0){if(this.m_geometry=e,this.m_geometry.isEmpty())return this.m_geometry;const t=this.m_geometry,s=this.bufferPolygonImpl(t,0,t.getPathCount());return(new r.O).execute(s,this.m_spatialReference,!1,this.m_progressTracker)}{if(this.m_geometry=e,this.isDegenerateGeometry(this.m_geometry)){const e=new h.P;this.m_geometry.getPointByVal(0,e);const t=new m.Envelope2D;return this.m_geometry.queryEnvelope(t),e.setXY(t.getCenter()),this.bufferDegeneratePath(e,!0)}const t=new D(this),s=(new r.j).executeMany(t,this.m_spatialReference,this.m_progressTracker,2),n=(new r.O).executeMany(s,this.m_spatialReference,!1,this.m_progressTracker).next();return null!==n?n:new l.a({vd:this.m_geometry.getDescription()})}}bufferPolygonImpl(e,t,s){const n=e,i=n.getImpl();let r=new l.a({vd:e.getDescription()});for(let o=t;o<s;o++){if(i.getPathSize(o)<1)continue;const t=i.calculateRingArea2D(o),s=new m.Envelope2D;if(i.queryPathEnvelope(o,s),this.m_distance>0)if(t>0)if(this.isDegeneratePath(i,o)){const e=new h.P;i.getPointByVal(i.getPathStart(o),e),e.setXY(s.getCenter()),r.add(this.bufferDegeneratePath(e,!0),!1)}else{const t=new l.P({vd:e.getDescription()}),s=t.getImpl();if((0,l.i)(this.m_geometry,o)){const e=this.bufferConvexPath(n,o);r.add(e,!1)}else{this.bufferClosedPath(this.m_geometry,o,s,this.m_bRoundBuffer,1);const e=this.bufferCleanup(t);r.add(e,!1)}}else{if(s.width()+this.m_tolerance.total()<=2*this.m_absDistance||s.height()+this.m_tolerance.total()<=2*this.m_absDistance)continue;const t=new l.P({vd:e.getDescription()}),n=t.getImpl();if(this.bufferClosedPath(this.m_geometry,o,n,this.m_bRoundBuffer,1),!t.isEmpty()){const e=s,i=Math.max(1,this.m_absDistance),m=e.clone();m.inflateCoords(i,i),n.addEnvelope(m,!1);const o=this.bufferCleanup(t);r.reserve(r.getPointCount()+o.getPointCount()-4),S(o,r,m,!0)}}else if(t>0){if(s.width()+this.m_tolerance.total()<=2*this.m_absDistance||s.height()+this.m_tolerance.total()<=2*this.m_absDistance)continue;const t=new l.P({vd:e.getDescription()}),n=t.getImpl();if(this.bufferClosedPath(this.m_geometry,o,n,this.m_bRoundBuffer,-1),!t.isEmpty()){const e=new m.Envelope2D;n.queryLooseEnvelope(e);const s=Math.max(1,this.m_absDistance),i=e.clone();i.inflateCoords(s,s),n.addEnvelope(i,!1),S(this.bufferCleanup(t),r,i,!0)}}else{const t=new l.P({vd:e.getDescription()}),s=t.getImpl();this.bufferClosedPath(this.m_geometry,o,s,this.m_bRoundBuffer,-1);const n=this.bufferCleanup(t);for(let e=0,t=n.getPathCount();e<t;e++)r.addPath(n,e,!0)}}if(this.m_distance>0)return r.getPathCount()>1?this.bufferCleanup(r):v(r);{const e=new m.Envelope2D;if(r.queryLooseEnvelope(e),r.isEmpty())return v(r);{const t=Math.max(1,this.m_absDistance),s=e.clone();s.inflateCoords(t,t),r.addEnvelope(s,!1);const n=this.bufferCleanup(r);r=new l.a;const i=new l.a({vd:n.getDescription()});return S(n,i,s,!1),v(i)}}}bufferPoint(){return this.bufferPointImpl(this.m_geometry)}bufferPointImpl(e){const t=new l.a({vd:e.getDescription()});return 0===this.m_caps?(this.addCircle(t.getImpl(),e),this.setStrongSimple(t)):2===this.m_caps?(this.addSquare(t.getImpl(),e),this.setStrongSimple(t)):t}bufferDegeneratePath(e,t){const s=new l.a({vd:e.getDescription()});return t&&0===this.m_joins||!t&&0===this.m_caps?(this.addCircle(s.getImpl(),e),this.setStrongSimple(s)):t||2!==this.m_caps?s:(this.addSquare(s.getImpl(),e),this.setStrongSimple(s))}bufferMultiPoint(){const e=new b(this,this.m_geometry,this.m_distance,this.m_spatialReference,this.m_joins,this.m_caps,this.m_miterLimit,this.m_densifyDist,this.m_maxVertexInCompleteCircle,this.m_progressTracker);return(new r.j).executeMany(e,this.m_spatialReference,this.m_progressTracker,2).next()}bufferEnvelope(){let e=new l.a({vd:this.m_geometry.getDescription()});if(this.m_distance<=0){if(0===this.m_distance)e.addEnvelope(this.m_geometry,!1),T(this.m_geometry,this.m_tolerance.total())&&(e=this.setStrongSimple(e));else{const t=new h.E;this.m_geometry.queryEnvelope(t),t.inflateCoords(this.m_distance,this.m_distance),e.addEnvelope(t,!1),T(t,this.m_tolerance.total())&&(e=this.setStrongSimple(e))}return e}if(1===this.m_joins){const t=new h.E({copy:this.m_geometry});return t.inflateCoords(this.m_absDistance,this.m_absDistance),e.addEnvelope(t,!1),e}const t=this.m_geometry.clone();if(0===t.width()||0===t.height()){if(0===t.width()&&0===t.height()){const e=new h.P({vd:this.m_geometry.getDescription()});return t.queryCornerByVal(0,e),this.m_geometry=e,this.bufferImpl()}const e=new l.P({vd:this.m_geometry.getDescription()}),s=new h.P;return t.queryCornerByVal(0,s),e.startPathPoint(s),t.queryCornerByVal(2,s),e.lineToPoint(s),this.m_geometry=e,this.bufferImpl()}return e.addEnvelope(this.m_geometry,!1),this.m_geometry=e,this.bufferConvexPath(e,0)}bufferConvexPath(e,t){this.generateCircleTemplate();const s=e.hasAttribute(10),n=new l.a({vd:e.getDescription()}),r=n.getImpl();n.reserve((this.m_circleTemplate.length/10+4)*e.getPathSize(t));const m=new a.P,o=new a.P,h=new a.P,c=new a.P(0,0),u=new a.P,_=new a.P,f=e.getImpl(),d=e.getPathSize(t),p=e.getPathStart(t);for(let n=0,a=e.getPathSize(t);n<a;n++){const e=f.getXY(p+n),t=f.getXY(p+(n+1)%d),a=f.getXY(p+(n+2)%d);u.setSub(t,e),0===u.length()&&(0,i.c)("");const l=s&&!!(1&f.getAttributeAsInt(10,(n+1)%d,0));u.normalize();const P=u.clone();u.leftPerpendicularThis(),u.scale(this.m_absDistance),m.setAdd(u,e),o.setAdd(u,t),0===n?r.startPath(m):r.lineTo(m),r.lineTo(o),_.setSub(a,t),0===_.length()&&(0,i.c)(""),_.normalize();const y=_.clone();_.leftPerpendicularThis(),_.scale(this.m_absDistance),h.setAdd(_,t);let b=g.enumArc;const x=l?0:this.m_joins;if(2===x)b=g.enumBevel;else if(1===x){const e=-P.crossProduct(y);c.setSub(P,y),c.scale(this.m_absDistance/e),c.length()<this.m_miterLimit*this.m_absDistance?(c.addThis(t),b=g.enumMiter):b=g.enumBevel}else c.assign(t);this.addJoin(b,r,c,o,h,!1,!1)}return v(n)}bufferPolylinePath(e,t,s){this.generateCircleTemplate();const n=e,i=n.getImpl();if(i.getPathSize(t)<1)return null;let r;if(r=this.m_bRoundBuffer?i.isClosedPathInXYPlane(t):i.isClosedPath(t),this.isDegeneratePath(i,t)&&this.m_distance>0){const e=new h.P;i.getPointByVal(i.getPathStart(t),e);const s=new m.Envelope2D;return i.queryPathEnvelope(t,s),e.setXY(s.getCenter()),this.bufferDegeneratePath(e,r)}const o=new l.P({vd:e.getDescription()});o.reserve((Math.trunc(this.m_circleTemplate.length/10)+4)*i.getPathSize(t));const a=o.getImpl();return r?2!==this.bufferClosedPath(n,t,a,s,1)&&this.bufferClosedPath(n,t,a,s,-1):this.bufferOpenPath(n,t,a,s),this.bufferCleanup(o)}progress_(){}bufferCleanup(e,t=!1){const s=t?this.m_tolerance:this.m_smallTolerance;return(0,r.p)(e,s,!0,!t,-1,this.m_progressTracker,0,!1)}calcN(){if(0===this.m_densifyDist)return this.m_maxVertexInCompleteCircle;const e=1-this.m_densifyDist*Math.abs(this.m_absDistanceReversed);let t=4;return t=e<-1?4:2*Math.PI/Math.acos(e)+.5,t<4?t=4:t>this.m_maxVertexInCompleteCircle&&(t=this.m_maxVertexInCompleteCircle),Math.trunc(t)}addJoin(e,t,s,n,i,r,m){if(this.generateCircleTemplate(),r&&(t.startPath(n),r=!1),e===g.enumBevel)return void(m&&t.lineTo(i));if(e===g.enumMiter){const e=s.clone();return t.lineTo(e),void(m&&t.lineTo(i))}const o=new a.P;o.setSub(n,s),o.scale(this.m_absDistanceReversed);const h=new a.P;h.setSub(i,s),h.scale(this.m_absDistanceReversed);let l=Math.atan2(o.y,o.x)/this.m_dA;l<0&&(l=this.m_circleTemplate.length+l),l=this.m_circleTemplate.length-l;let c=Math.atan2(h.y,h.x)/this.m_dA;c<0&&(c=this.m_circleTemplate.length+c),c=this.m_circleTemplate.length-c,c<l&&(c+=this.m_circleTemplate.length);let u=Math.trunc(c),_=Math.ceil(l),f=this.m_circleTemplate[_%this.m_circleTemplate.length].clone();f.scaleAddThis(this.m_absDistance,s);const d=10*this.m_tolerance.total();f.sub(n).length()<d&&(_+=1),f=this.m_circleTemplate[u%this.m_circleTemplate.length].clone(),f.scaleAddThis(this.m_absDistance,s),f.sub(i).length()<d&&(u-=1);let p=u-_;p++;for(let e=0,n=_%this.m_circleTemplate.length;e<p;e++,n=(n+1)%this.m_circleTemplate.length)f=this.m_circleTemplate[n].clone(),f.scaleAddThis(this.m_absDistance,s),t.lineTo(f),this.progress_();m&&t.lineTo(i)}bufferClosedPath(e,t,s,n,i){const r=new l.E,m=r.addPathFromMultiPath(e,t,!0);return this.bufferClosedPathImpl(r,m,s,n,i)}bufferClosedPathImpl(e,t,s,n,r){const m=e.getFirstVertex(e.getFirstPath(t)),u=new h.P;if(e.queryPoint(m,u),e.filterClosePoints(this.m_filterTolerance,!1,!1,!1,-1),e.getPointCount(t)<2)return r<0?0:(this.m_bRoundBuffer&&this.addCircle(s,u),2);(0,i.g)(e.getFirstPath(t)!==l.n),(0,i.g)(e.getFirstVertex(e.getFirstPath(t))!==l.n);const _=e.getXY(e.getFirstVertex(e.getFirstPath(t))),f=new c.T;if(f.setShift(_.negate()),e.applyTransformation(f),n){const n=function(e,t,s,n,i,r,m){return function(e,t,s,n,i,r,m){const h={stack:[],error:void 0,hasError:!1};try{const n=e.getFirstPath(t),c=e.createUserIndex();(0,o.b)(h,(0,a.h)((()=>{e.removeUserIndex(c)}),!1),!1),function(e,t,s,n){let i=-1;const r=new a.P,m=new a.P,o=new a.P;for(let s=0,h=e.getPathSize(n),a=e.getFirstVertex(n);s<h;++s){-1===i&&(e.queryXY(a,m),i=e.getPrevVertex(a),-1!==i&&(e.queryXY(i,r),o.setSub(m,r),o.normalize()));const s=e.getNextVertex(a);if(-1===s)break;const n=e.getXY(s),h=n.sub(m);h.normalize(),-1!==i&&h.dotProduct(o)<-.99&&Math.abs(h.crossProduct(o))<1e-7&&e.setUserIndex(a,t,1),i=a,a=s,r.assign(m),m.assign(n),o.assign(h)}}(e,c,0,n);for(let t=0;t<100;++t){if(0===e.getPathSize(n))return 1;let t=e.getFirstVertex(n),r=e.getPathSize(n);if(r<3)return 1;e.isClosedPath(n)||(r-=1);const o=64;let h=0,a=!1;for(let n=0;n<r&&t!==l.n;n++){let l=0,u=t;for(let h=1,a=Math.min(o,r-n);h<a;h++)if(u=e.getNextVertexEx(u,s),h>1){const n=k(e,c,t,u,s,i,m,o);if(-1===n)break;l+=n,r-=n}if(h+=l,a=l>0,a){const n=e.getPrevVertexEx(t,s);if(-1!==n){t=n,r++;continue}}t=e.getNextVertexEx(t,s)}if(0===h)break}return e.filterClosePoints(r,!1,!1,!1,-1),1}catch(e){h.error=e,h.hasError=!0}finally{(0,o.c)(h)}}(e,t,s,0,i,r,m)}(e,t,r,0,this.m_absDistance,this.m_filterTolerance,this.m_densifyDist);if((0,i.g)(1===n),e.getPointCount(t)<2)return r<0?0:(this.addCircle(s,u),2)}const d=0!==this.m_joins&&e.getVertexDescription().hasAttribute(10);this.m_bufferCommands.length=0;const p=e.getFirstPath(t);let b=e.getFirstVertex(p),x=1===r?e.getPrevVertex(b):e.getNextVertex(b),C=1===r?e.getNextVertex(b):e.getPrevVertex(b),D=!0;const w=new a.P,v=new a.P,T=new a.P,S=new a.P,I=new a.P,E=new a.P,M=new a.P,G=new a.P,R=this.m_absDistance,V=e.getPathSize(p),A=new a.P(0,0);for(let t=0;t<V;t++){v.assign(e.getXY(C)),D&&(w.assign(e.getXY(b)),T.assign(e.getXY(x)),E.setSub(w,T),E.normalize(),G.leftPerpendicularOther(E),G.scale(R),S.setAdd(G,w));const t=d&&!!(1&e.getAttributeAsDbl(10,b,0));I.setSub(v,w),I.normalize(),M.leftPerpendicularOther(I),M.scale(R);const s=new a.P;s.setAdd(w,M);const n=E.crossProduct(I),i=E.dotProduct(I);if(n<0||i<0&&n<Math.abs(i)*Number.EPSILON*8){let e=!1;const i=t?0:this.m_joins;if(1===i){const t=-n;A.setSub(E,I),A.scale(this.m_absDistance/t),A.length()<this.m_miterLimit*this.m_absDistance&&(A.addThis(w),e=!0),this.m_bufferCommands.push(P(S,s,A,e?g.enumMiter:g.enumBevel,this.m_bufferCommands.length+1))}else this.m_bufferCommands.push(P(S,s,w,0===i?g.enumArc:g.enumBevel,this.m_bufferCommands.length+1))}else S.equals(s)||(this.m_bufferCommands.push(y(S,w,this.m_bufferCommands.length+1)),this.m_bufferCommands.push(y(w,s,this.m_bufferCommands.length+1)));const m=new a.P;m.setAdd(v,M),this.m_bufferCommands.push(P(s,m,w,g.enumLine,this.m_bufferCommands.length+1)),S.setCoordsPoint2D(m),G.setCoordsPoint2D(M),T.setCoordsPoint2D(w),w.setCoordsPoint2D(v),E.setCoordsPoint2D(I),x=b,b=C,D=!1,C=1===r?e.getNextVertex(b):e.getPrevVertex(b)}return this.m_bufferCommands.at(-1).m_next=0,this.processBufferCommands(s),f.setShift(_),s.applyTransformationToPath(f,s.getPathCount()-1),1}bufferOpenPath(e,t,s,n){if(this.m_bRoundBuffer){const i=new l.P({vd:e.getDescription()});return i.addPath(e,t,!1),i.addSegmentsFromPath(e,t,0,e.getSegmentCountPath(t),!1),this.bufferClosedPath(i,0,s,n,1)}let r=0;const m=new l.P({vd:e.getDescription()}),o=new a.P(0,0);{const n=new l.E,i=n.addPathFromMultiPath(e,t,!1),a=n.getFirstVertex(n.getFirstPath(i)),c=new h.P;if(n.queryPoint(a,c),o.assign(c.getXY()),n.filterClosePoints(0,!1,!1,!1,-1),n.getPointCount(i)<2)return this.m_bRoundBuffer&&this.addCircle(s,c),2;const u=n.getGeometry(n.getFirstGeometry());m.addPath(u,0,!1),r=m.getPointCount()-1,m.addSegmentsFromPath(u,0,0,u.getSegmentCountPath(0)-1,!1)}const u=new l.E,_=u.addPathFromMultiPath(m,0,!0);(0,i.g)(u.getFirstPath(_)!==l.n),(0,i.g)(u.getFirstVertex(u.getFirstPath(_))!==l.n);const f=new c.T;f.setShift(o.negate()),u.applyTransformation(f),this.m_bufferCommands.length=0;const d=u.getFirstPath(_),p=0!==this.m_joins&&u.getVertexDescription().hasAttribute(10);let b=u.getFirstVertex(d),x=u.getPrevVertex(b),C=u.getNextVertex(b),D=!0;const w=new a.P,v=new a.P,T=new a.P,k=new a.P,S=new a.P,I=new a.P,E=new a.P,M=new a.P,G=this.m_absDistance,R=u.getPathSize(d),V=new a.P(0,0);for(let e=0;e<R;e++){let t=!1;0!==e&&e!==r||(t=!0),v.assign(u.getXY(C)),D&&(w.assign(u.getXY(b)),T.assign(u.getXY(x)),I.setSub(w,T),I.normalize(),M.leftPerpendicularOther(I),M.scale(G),k.setAdd(M,w));const s=p&&!!(1&u.getAttributeAsDbl(10,b,0));S.setSub(v,w),S.normalize(),E.leftPerpendicularOther(S),E.scale(G);const n=new a.P;n.setAdd(w,E);const i=I.crossProduct(S),m=I.dotProduct(S);if(i<0||m<0&&i<Math.abs(m)*Number.EPSILON*8)if(t)if(0===this.m_caps)this.m_bufferCommands.push(P(k,n,w,g.enumArc,this.m_bufferCommands.length+1));else if(1===this.m_caps)this.m_bufferCommands.push(P(k,n,w,g.enumLine,this.m_bufferCommands.length+1));else{const e=S.mul(this.m_absDistance).negate(),t=e.clone();e.addThis(k),t.addThis(n),this.m_bufferCommands.push(P(k,e,w,g.enumLine,this.m_bufferCommands.length+1)),this.m_bufferCommands.push(P(e,t,w,g.enumLine,this.m_bufferCommands.length+1)),this.m_bufferCommands.push(P(t,n,w,g.enumLine,this.m_bufferCommands.length+1))}else{let e=!1;const t=s?0:this.m_joins;if(1===t){const t=-i;V.setSub(I,S),V.scale(this.m_absDistance/t),V.length()<this.m_miterLimit*this.m_absDistance&&(V.addThis(w),e=!0),this.m_bufferCommands.push(P(k,n,V,e?g.enumMiter:g.enumBevel,this.m_bufferCommands.length+1))}else this.m_bufferCommands.push(P(k,n,w,0===t?g.enumArc:g.enumBevel,this.m_bufferCommands.length+1))}else k.equals(n)||(this.m_bufferCommands.push(y(k,w,this.m_bufferCommands.length+1)),this.m_bufferCommands.push(y(w,n,this.m_bufferCommands.length+1)));const o=new a.P;o.setAdd(v,E),this.m_bufferCommands.push(P(n,o,w,g.enumLine,this.m_bufferCommands.length+1)),k.setCoordsPoint2D(o),M.setCoordsPoint2D(E),T.setCoordsPoint2D(w),w.setCoordsPoint2D(v),I.setCoordsPoint2D(S),x=b,b=C,D=!1,C=u.getNextVertex(b)}return this.m_bufferCommands.at(-1).m_next=0,this.processBufferCommands(s),f.setShift(o),s.applyTransformationToPath(f,s.getPathCount()-1),1}processBufferCommands(e){const t=this.cleanupBufferCommands();let s=!0,n=t+1;for(let i=t;n!==t;i=n){const t=this.m_bufferCommands[i];n=-1!==t.m_next?t.m_next:(i+1)%this.m_bufferCommands.length,t.m_type&&(s&&(e.startPath(t.m_from),s=!1),t.m_type&g.enumJoinMask?this.addJoin(t.m_type,e,t.m_center,t.m_from,t.m_to,!1,!0):e.lineTo(t.m_to))}}cleanupBufferCommands(){this.m_helperArray=(0,a.m)(a.P,9);let e=0;for(let t=0,s=this.m_bufferCommands.length;t<s;){const s=this.m_bufferCommands[t];if(s.m_type&g.enumConnectionMask){e=t;break}t=s.m_next}let t=e+1;for(let s=e;t!==e;s=t){const e=this.m_bufferCommands[s];t=e.m_next;let n=1,i=null;for(;t!==s&&(i=this.m_bufferCommands[t],!(i.m_type&g.enumConnectionMask));)t=i.m_next,n++;1!==n&&(e.m_type&i.m_type)===g.enumLine&&(this.m_helperLine1.setStartXY(e.m_from),this.m_helperLine1.setEndXY(e.m_to),this.m_helperLine2.setStartXY(i.m_from),this.m_helperLine2.setEndXY(i.m_to),1===this.m_helperLine1.intersect(this.m_helperLine2,this.m_helperArray,null,null,this.m_smallTolerance.total())&&(e.m_to.assign(this.m_helperArray[0]),i.m_from.assign(this.m_helperArray[0]),e.m_next=t))}return e}isDegeneratePath(e,t){if(1===e.getPathSize(t))return!0;if(0===this.m_joins&&0===this.m_caps){const s=new m.Envelope2D;if(e.queryPathEnvelope(t,s),Math.max(s.width(),s.height())<.5*this.m_densifyDist)return!0}return!1}isDegenerateGeometry(e){if(0===this.m_joins&&0===this.m_caps){const t=new m.Envelope2D;if(e.queryEnvelope(t),Math.max(t.width(),t.height())<.5*this.m_densifyDist)return!0}return!1}addCircle(e,t){const s=t.getXY();if(0!==this.m_circleTemplate.length){let t=this.m_circleTemplate[0].clone();t.scaleAddThis(this.m_absDistance,s),e.startPath(t);for(let n=1,i=this.m_circleTemplate.length;n<i;n++)t=this.m_circleTemplate[n].clone(),t.scaleAddThis(this.m_absDistance,s),e.lineTo(t);return}const n=this.m_circleTemplateSize,i=Math.trunc((n+3)/4),r=.5*Math.PI/i;e.reserve(4*i);const m=Math.cos(r),o=Math.sin(r);for(let t=3;t>=0;t--){const n=a.P.construct(0,this.m_absDistance);switch(t){case 0:for(let t=0;t<i;t++)e.lineToCoords(n.x+s.x,n.y+s.y),n.rotateReverse(m,o);break;case 1:for(let t=0;t<i;t++)e.lineToCoords(-n.y+s.x,n.x+s.y),n.rotateReverse(m,o);break;case 2:for(let t=0;t<i;t++)e.lineToCoords(-n.x+s.x,-n.y+s.y),n.rotateReverse(m,o);break;default:e.startPathCoords(n.y+s.x,-n.x+s.y);for(let t=1;t<i;t++)n.rotateReverse(m,o),e.lineToCoords(n.y+s.x,-n.x+s.y)}this.progress_()}}addSquare(e,t){const s=new h.E({vd:t.getDescription()});s.setCoords(t.getX(),t.getY(),t.getX(),t.getY()),s.inflateCoords(this.m_absDistance,this.m_absDistance),e.addEnvelope(s,!1)}setStrongSimple(e){return e.getImpl().setIsSimple(4,this.m_tolerance.total()),e.getImpl().updateOGCFlagsProtected(),e}}function v(e){return(0,h.s)(e,0),e}function T(e,t){return!!e.isEmpty()||Math.min(e.width(),e.height())>t}function k(e,t,s,n,r,m,o,h){const l=e.getXY(s),c=e.getXY(n);if(l.equals(c))return-1;const u=.25*o,_=.25*o,f=new a.P;f.setSub(c,l);const g=f.length(),d=g*g*.25,p=m*m-d;if(p<=d)return-1;const P=Math.sqrt(p);f.normalize();const y=f.clone();y.rightPerpendicularThis();const b=d/P,x=b<=_,C=a.P.lerp(c,l,.5),D=y.clone(),w=b-u;D.scaleAddThis(Math.max(0,w),C),y.negate().scaleAddThis(P,C);const v=3.61*(0,a.a)(m-_),T=D.sub(l),k=D.sub(c);let S=!1,I=0;const E=(0,a.d)(64,0);(0,i.g)(h===E.length);{for(let i=e.getPrevVertexEx(n,r);i!==s;){if(1===e.getUserIndex(i,t))return-1;if(!e.getXY(i).equals(c))break;{const t=e.getPrevVertexEx(i,r);e.removeVertex(i,!1),i=t}}const m=new a.P,o=l.clone();E[I++]=1;for(let i=e.getNextVertexEx(s,r);i!==n;){if(1===e.getUserIndex(i,t))return-1;const s=e.getXY(i);if(s.equals(o)){const t=e.getNextVertexEx(i,r);e.removeVertex(i,!1),i=t;continue}E[I++]=0;const n=new a.P;if(n.setSub(s,l),n.dotProduct(y)<0)return 0;(a.P.sqrDistance(s,l)>v||a.P.sqrDistance(s,c)>v)&&(S=!0);let h=0;if(s.sub(l).crossProduct(T)>=0&&(h=1),s.sub(c).crossProduct(k)<=0&&(h|=2),0===h)return 0;E[I-1]=h,m.assign(o),o.assign(s),i=e.getNextVertexEx(i,r)}if(1===I)return 0;(0,i.g)(I<E.length),E[I++]=2}let M=!0;for(let e=1,t=0;e<I;e++)if(E[e]!==E[e-1]&&(t++,M=t<3&&(1===t&&3===E[e]||2===t&&2===E[e]),!M))return 0;if(I>2&&M&&(3===I||!S)){let t=0,i=e.getNextVertexEx(s,r);for(x||(e.setXY(i,D),i=e.getNextVertexEx(i,r));i!==n;){const s=e.getNextVertexEx(i,r);e.removeVertex(i,!1),i=s,++t}return t}if((0,i.g)(3!==I),S&&I>3)return 0;const G=l.clone();let R=s;const V=l.clone();let A=1,X=-1,Y=R,B=0;for(I=1;Y!==n;){Y=e.getNextVertexEx(Y,r);const t=E[I++];if(0===t){if(Y===n)break;continue}const s=e.getXY(Y);if(-1!==X){if(X&A&t&3){e.removeVertex(R,!0),B++,R=Y,V.setCoordsPoint2D(s),A=t;continue}if(3===A&&0!==X&&0!==t){if(V.setCoordsPoint2D(D),x||V.equals(G)){e.removeVertex(R,!0),B++,R=Y,V.setCoordsPoint2D(s),A=t;continue}e.setXY(R,V)}}X=A,G.setCoordsPoint2D(V),R=Y,A=t,V.setCoordsPoint2D(s)}return B}function S(e,t,s,n){for(let i=0,r=e.getPathCount();i<r;i++){const r=e.getXY(e.getPathStart(i));r.x!==s.xmin&&r.x!==s.xmax&&t.addPath(e,i,n)}}class I extends n.G{constructor(e,t,s,n,i,r,o){super(),this.m_currentUnionEnvelope2D=new m.Envelope2D,this.m_index=-1,this.m_dindex=-1,this.m_progressTracker=o,this.m_bufferer=new w(o),this.m_inputGeoms=e,this.m_spatialReference=t,this.m_distances=s,this.m_maxDeviation=n,this.m_maxVerticesInFullCircle=i}tock(){return!0}getRank(){return 1}next(){{let e;for(;e=this.m_inputGeoms.next();)return(0,i.d)(e),this.m_index=this.m_inputGeoms.getGeometryID(),this.m_dindex+1<this.m_distances.length&&this.m_dindex++,this.buffer(e,this.m_distances[this.m_dindex]);return null}}getGeometryID(){return this.m_index}buffer(e,t){return this.m_bufferer.buffer(e,t,this.m_spatialReference,0,0,4,this.m_maxDeviation,this.m_maxVerticesInFullCircle)}}const E=new class{getOperatorType(){return 10004}supportsCurves(){return!0}accelerateGeometry(e,t,s){return!1}canAccelerateGeometry(e){return!1}executeMany(e,t,s,n,i){return this.executeManyEx(e,t,s,Number.NaN,96,n,i)}execute(e,t,s,r){Number.isFinite(s)||(0,i.a)("Invalid distance for buffer operation");const m=new n.S([e]),o=[s],h=this.executeMany(m,t,o,!1,r).next();return h||(0,i.c)("null buffer output"),h}executeManyEx(e,t,s,n,m,o,h){if(void 0!==s.find((e=>!Number.isFinite(e)))&&(0,i.a)("Invalid distance for buffer operation"),o){const i=new I(e,t,s,n,m,!1,h);return(new r.j).executeMany(i,t,h,2)}return new I(e,t,s,n,m,!1,h)}};function M(e,t,s){return E.execute(e,t,s,null)}function G(e,t,s,i,r,m){const o=E.executeManyEx(new n.S(e),t,s,i,r,m,null);return Array.from(o)}function R(){return E.supportsCurves()}}}]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[1088],{31088:(e,t,r)=>{r.r(t),r.d(t,{OperatorGeodeticDensifyByLength:()=>u,OperatorGeodeticDensifyCursor:()=>
|
|
1
|
+
"use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[1088],{31088:(e,t,r)=>{r.r(t),r.d(t,{OperatorGeodeticDensifyByLength:()=>u,OperatorGeodeticDensifyCursor:()=>a});var s=r(76061),n=r(55537),i=r(12189);class u{getOperatorType(){return 10310}supportsCurves(){return!0}accelerateGeometry(e,t,r){return!1}canAccelerateGeometry(e){return!1}executeMany(e,t,r,s,n){return new a(e,r,s,t,-1,-1,n)}execute(e,t,r,i,u){const a=new s.S([e]),m=this.executeMany(a,t,r,i,u).next();return m||(0,n.c)("null output"),m}}class a extends s.G{constructor(e,t,r,s,i,u,a){super(),this.m_progressTracker=a,u>0&&(0,n.t)(""),4!==r&&i>0&&(0,n.t)(""),t||(0,n.a)(""),0===t.getCoordinateSystemType()&&(0,n.a)(""),s>0||i>0||(0,n.a)(""),this.m_index=-1,this.m_inputGeoms=e,this.m_spatialReference=t,this.m_curveType=r,this.m_maxLengthMeters=s,this.m_maxDeviationMeters=i,this.m_maxAngle=u}next(){{let e;for(;e=this.m_inputGeoms.next();)return(0,n.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,i.L)(e,this.m_spatialReference,this.m_curveType,this.m_maxLengthMeters,this.m_maxDeviationMeters,this.m_progressTracker)}}}}]);
|