UNPKG

@arcgis/core

Version:

ArcGIS Maps SDK for JavaScript: A complete 2D and 3D mapping and data visualization API

6 lines (5 loc) 1.19 kB
/* All material copyright ESRI, All Rights Reserved, unless otherwise specified. See https://js.arcgis.com/4.33/esri/copyright.txt for details. */ import{generalizeOptimizedGeometry as n,quantizeOptimizedGeometry as e,convertToMultipoint as r,convertToPolygon as t,convertToPolyline as o,convertToPoint as i,removeZMValues as s}from"../featureConversionUtils.js";import l from"../OptimizedGeometry.js";const u=new l,f=new l,m=new l,c={esriGeometryPoint:i,esriGeometryPolyline:o,esriGeometryPolygon:t,esriGeometryMultipoint:r};function y(n,r,t,o=n.hasZ,s=n.hasM){if(null==r)return null;const l=n.hasZ&&o,u=n.hasM&&s;if(t){const f=e(m,r,n.hasZ,n.hasM,"esriGeometryPoint",t,o,s);return i(f,l,u)}return i(r,l,u)}function a(r,t,o,i,l,y,a=t,h=o){const p=t&&a,G=o&&h,g=null!=i?"coords"in i?i:i.geometry:null;if(null==g)return null;if(l){let i=n(f,g,t,o,r,l,a,h);return y&&(i=e(m,i,p,G,r,y)),c[r]?.(i,p,G)??null}if(y){const n=e(m,g,t,o,r,y,a,h);return c[r]?.(n,p,G)??null}return s(u,g,t,o,a,h),c[r]?.(u,p,G)??null}function h(n){return n&&p in n?JSON.parse(JSON.stringify(n,G)):n}const p="_geVersion",G=(n,e)=>n===p?void 0:e;export{h as cleanFromGeometryEngine,a as getGeometry,y as transformCentroid};