@arcgis/core
Version:
ArcGIS Maps SDK for JavaScript: A complete 2D and 3D mapping and data visualization API
1 lines • 8.84 kB
JavaScript
"use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[3169,6061,7817,8125],{76061:(e,t,n)=>{n.d(t,{G:()=>s,S:()=>r});class s{*[Symbol.iterator](){let e=this.next();for(;e;)yield e,e=this.next()}}class r 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}}},68925:(e,t,n)=>{n.d(t,{c:()=>c,e:()=>u,s:()=>i});var s=n(4576),r=n(90756),o=n(78125);function u(e,t){const n=(0,o.getSpatialReference)(e);return(0,r.g)((0,o.fromGeometry)(e),(0,o.fromPolyline)(t),(0,o.fromSpatialReference)(n)).map((e=>(0,o.toGeometry)(e,n))).filter(s.Ru)}const i=(0,r.f)(),c=Object.freeze(Object.defineProperty({__proto__:null,execute:u,supportsCurves:i},Symbol.toStringTag,{value:"Module"}))},37817:(e,t,n)=>{n.r(t),n.d(t,{execute:()=>s.e,supportsCurves:()=>s.s}),n(4576),n(90756),n(78125);var s=n(68925)},90756:(e,t,n)=>{n.d(t,{g:()=>h,f:()=>y});var s=n(76061),r=n(55537),o=n(35368),u=n(95213),i=n(12189),c=i.C;function a(e,t){return{m_geometry:e,m_side:t}}class m extends s.G{constructor(e,t,n,s,r){super(),this.m_cutIndex=-1,this.m_cuts=[],this.m_progressTracker=r,this.m_cuttee=t.clone(),this.m_cutter=new o.P({copy:n}),this.m_bConsiderTouch=e;const i=(0,u.g)(t,n);this.m_tolerance=(0,u.a)(s,i,!0)}next(){return-1===this.m_cutIndex&&this.generateCuts(),++this.m_cutIndex<this.m_cuts.length?this.m_cuts[this.m_cutIndex]:null}getGeometryID(){return this.m_cutIndex}tock(){return!0}getRank(){return 1}generateCuts(){switch(this.m_cuttee.getGeometryType()){case r.G.enumPolyline:this.generatePolylineCuts();break;case r.G.enumPolygon:this.generatePolygonCuts()}}generatePolylineCuts(){const e=new o.P,t=new o.P,n=new o.P;this.m_cuts.length=0,this.m_cuts.push(e),this.m_cuts.push(t);const s=[];!function(e,t,n,s,r,u){if(t.isEmpty()){const e=a(t,0);return void r.push(e)}if(n.isEmpty()){const e=a(t,0);return void r.push(e)}const m=[],l=new o.E;{const o=l.createGeometryUserIndex(),h=l.addGeometry(t),y=l.addGeometry(n),p=new i.T(u);let g=0,f=null;if(l.hasCurves()){f=new c;const e=l.getEnvelope2D(u);g=(0,i.s)(s.total());const t=(0,i.k)(s.total(),e);(0,i.l)(l,t,s.total(),12e3,f,null,u)}l.dbgVerifyCurves(),p.setEditShapeCrackAndCluster(l,s),p.cut(e,o,h,y,m);for(const e of m){null!==f&&f.stitchCurves(l,e,g,!1);const t=a(l.getGeometry(e),(0,i.m)(l.getGeometryUserIndex(e,o)));r.push(t)}null!==f&&f.clearStitcher(l)}}(this.m_bConsiderTouch,this.m_cuttee,this.m_cutter,this.m_tolerance,s,this.m_progressTracker);for(let o=0;o<s.length;o++){const u=s[o];1===u.m_side?e.add(u.m_geometry,!1):2===u.m_side||4===u.m_side?t.add(u.m_geometry,!1):3===u.m_side?this.m_cuts.push(u.m_geometry):0===u.m_side?n.add(u.m_geometry,!1):(0,r.c)("")}n.isEmpty()||e.isEmpty()&&t.isEmpty()&&!(this.m_cuts.length>=3)||this.m_cuts.push(n),e.isEmpty()&&t.isEmpty()&&this.m_cuts.length<3&&(this.m_cuts.length=0)}generatePolygonCuts(){const e=new o.a,t=new o.a,n=new o.a;this.m_cuts.length=0,this.m_cuts.push(e),this.m_cuts.push(t);const s=[];!function(e,t,n,s,r,u){if(t.isEmpty()){const e=a(t,0);return void r.push(e)}if(n.isEmpty()){const e=a(t,0);return void r.push(e)}const m=[],l=new o.E;{const e=l.createGeometryUserIndex(),h=l.addGeometry(t),y=l.addGeometry(n),p=new i.T(u);let g=0,f=null;if(l.hasCurves()){f=new c;const e=l.getEnvelope2D(u);g=(0,i.s)(s.total());const t=(0,i.k)(s.total(),e);(0,i.l)(l,t,s.total(),12e3,f,null,u)}l.dbgVerifyCurves(),p.setEditShapeCrackAndCluster(l,s),p.cut(!1,e,h,y,m),null!==f&&f.stitchCurves(l,o.n,g,!0);let d=l.getGeometry(h);const _=new o.a,C=new o.a,G=[];for(let t=0;t<m.length;t++){let n=null;{const r=new o.E,c=r.addGeometry(d),a=r.addGeometry(l.getGeometry(m[t]));if(r.hasCurves()){const e=r.getEnvelope2D(u);g=(0,i.s)(s.total());const t=(0,i.k)(s.total(),e);(0,i.l)(r,t,s.total(),12e3,f,null,u)}p.setEditShapeCrackAndCluster(r,s);const h=p.intersection(c,a);if(null!==f&&f.stitchCurves(r,o.n,g,!0),n=r.getGeometry(h),n.isEmpty())continue;const y=l.getGeometryUserIndex(m[t],e);2===y?_.add(n,!1):1===y?C.add(n,!1):G.push(n)}{const e=new o.E,n=e.addGeometry(d),r=e.addGeometry(l.getGeometry(m[t]));if(e.hasCurves()){const t=e.getEnvelope2D(u);g=(0,i.s)(s.total());const n=(0,i.k)(s.total(),t);(0,i.l)(e,n,s.total(),12e3,f,null,u)}p.setEditShapeCrackAndCluster(e,s);const c=p.difference(n,r);null!==f&&f.stitchCurves(e,o.n,g,!0),d=e.getGeometry(c)}}if(!d.isEmpty()&&m.length>0&&G.push(d),_.isEmpty()&&C.isEmpty())return;if(!_.isEmpty()){const e=a(_,1);r.push(e)}if(!C.isEmpty()){const e=a(C,2);r.push(e)}for(let e=0,t=G.length;e<t;++e){const t=a(G[e],3);r.push(t)}}}(this.m_bConsiderTouch,this.m_cuttee,this.m_cutter,this.m_tolerance,s,this.m_progressTracker);for(let o=0;o<s.length;o++){const u=s[o];1===u.m_side?e.add(u.m_geometry,!1):2===u.m_side?t.add(u.m_geometry,!1):3===u.m_side?this.m_cuts.push(u.m_geometry):0===u.m_side?n.add(u.m_geometry,!1):(0,r.c)("")}(0,r.g)(n.isEmpty()||1===s.length),e.isEmpty()&&t.isEmpty()&&this.m_cuts.length<3&&(this.m_cuts.length=0)}}const l=new class{getOperatorType(){return 10005}accelerateGeometry(e,t,n){return!1}canAccelerateGeometry(e){return!1}supportsCurves(){return!0}execute(e,t,n,s,r){return new m(e,t,n,s,r)}};function h(e,t,n){const s=l.execute(!0,e,t,n,null);return Array.from(s)}function y(){return l.supportsCurves()}},78125:(e,t,n)=>{n.r(t),n.d(t,{fromExtent:()=>C,fromGeometry:()=>_,fromMultipoint:()=>G,fromPoint:()=>x,fromPolygon:()=>v,fromPolyline:()=>E,fromSpatialReference:()=>w,getSpatialReference:()=>d,toExtent:()=>k,toGeometry:()=>P,toMultipoint:()=>M,toPoint:()=>V,toPolygon:()=>R,toPolyline:()=>I});var s=n(83661),r=(n(79187),n(55537)),o=n(95213),u=n(35368),i=n(12189),c=n(5443),a=n(48526),m=n(86738),l=n(39829),h=n(82799),y=(n(90293),n(83299));const p="_gxVersion",g=2,f=1;function d(e){return Array.isArray(e)?e[0].spatialReference:e.spatialReference}function _(e){switch(e.type){case"point":return x(e);case"multipoint":return G(e);case"polyline":return E(e);case"polygon":return v(e);case"extent":return C(e);default:throw new Error(`Unsupported geometry type: ${e.type}`)}}function C(e){if(!e.getCacheValue(p)){const t=new o.E;t.setCoords(e.xmin,e.ymin,e.xmax,e.ymax),e.hasM&&t.setInterval(g,0,e.mmin,e.mmax),e.hasZ&&t.setInterval(f,0,e.zmin,e.zmax),e.setCacheValue(p,t)}return e.getCacheValue(p)}function G(e){if(!e.getCacheValue(p)){const t=new u.M,n=new o.P,s=e.points,r=e.hasM,i=e.hasZ,c=i?3:2;for(let e=0,o=s.length;e<o;e++){const o=s[e];n.setXYCoords(o[0],o[1]),i&&n.setZ(o[2]??0),r&&n.setM(o[c]??NaN),t.add(n)}e.setCacheValue(p,t)}return e.getCacheValue(p)}function x(e){if(!e.getCacheValue(p)){const t=new o.P;t.setXYCoords(e.x,e.y),e.hasM&&t.setM(e.m),e.hasZ&&t.setZ(e.z),e.setCacheValue(p,t)}return e.getCacheValue(p)}function v(e){if(!e.getCacheValue(p)){const{curveRings:t,hasM:n,hasZ:s,rings:r}=e,o=(0,y.fromGeometryToGXGeometry)({curveRings:t,hasM:n,hasZ:s,rings:r});e.setCacheValue(p,o)}return e.getCacheValue(p)}function E(e){if(!e.getCacheValue(p)){const{curvePaths:t,hasM:n,hasZ:s,paths:r}=e,o=(0,y.fromGeometryToGXGeometry)({curvePaths:t,hasM:n,hasZ:s,paths:r});e.setCacheValue(p,o)}return e.getCacheValue(p)}function w(e){if(e.wkid)return(0,i.c)(e.wkid);const t=e.wkt2||e.wkt;return t?(0,i.b)(t):null}function P(e,t){if(e)switch(e.getGeometryType()){case r.G.enumPoint:return V(e,t);case r.G.enumEnvelope:return k(e,t);case r.G.enumMultiPoint:return M(e,t);case r.G.enumPolyline:return I(e,t);case r.G.enumPolygon:return R(e,t)}return null}function k(e,t){if(e.isEmpty())return null;const n=new c.A({xmin:e.getXMin(),ymin:e.getYMin(),xmax:e.getXMax(),ymax:e.getYMax(),spatialReference:t}),s=e.getDescription();if(s.hasM()){const t=e.queryInterval(g,0);n.mmin=t.vmin,n.mmax=t.vmax}if(s.hasZ()){const t=e.queryInterval(f,0);n.zmin=t.vmin,n.zmax=t.vmax}return n.setCacheValue(p,e),n}function M(e,t){if(e.isEmpty())return null;const n=e.getDescription(),s=n.hasM(),r=n.hasZ(),u=[],i=new o.P;for(let t=0,n=e.getPointCount();t<n;t++){e.getPointByVal(t,i);const n=[i.getX(),i.getY()];r&&n.push(i.getZ()),s&&n.push(i.getM()),u.push(n)}const c=new a.A({hasM:s,hasZ:r,points:u,spatialReference:t});return c.setCacheValue(p,e),c}function V(e,t){if(e instanceof s.P)return new m.A({x:e.x,y:e.y,spatialReference:t});if(e.isEmpty())return null;const n=new m.A({x:e.getX(),y:e.getY(),spatialReference:t}),r=e.getDescription();return r.hasM()&&(n.m=e.getM()),r.hasZ()&&(n.z=e.getZ()),n.setCacheValue(p,e),n}function R(e,t){if(e.isEmpty())return null;const n=l.A.fromJSON({spatialReference:t,...(0,y.toGeometry)(e,null)});return n.setCacheValue(p,e),n}function I(e,t){if(e.isEmpty())return null;const n=h.A.fromJSON({spatialReference:t,...(0,y.toGeometry)(e,null)});return n.setCacheValue(p,e),n}}}]);