@arcgis/core
Version:
ArcGIS Maps SDK for JavaScript: A complete 2D and 3D mapping and data visualization API
6 lines (5 loc) • 967 B
JavaScript
/*
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
See https://js.arcgis.com/4.32/esri/copyright.txt for details.
*/
import{GeometryCursor as t}from"../../../geometry/GeometryCursor.js";import{collectMultipath as e}from"../../../geometry/geometryCursorCollectUtils.js";import{SimpleEffectCursor as o}from"../CIMEffects.js";import{getEffectOperator as r}from"../CIMOperators.js";import{getEffectsInflateSize as s}from"../CIMSymbolHelper.js";const n=96/72;class l{static executeEffects(t,e,l,c,f){const m=n,p=s(t);let u=new o(e);for(const o of t){const t=r(o);t&&(u=t.execute(u,o,m,l,c,p,f))}return u}static applyEffects(n,l,c){if(!n)return l;const f=s(n);let m,p=new o(t.fromJSONCIM(l));for(const t of n){const e=r(t);e&&(p=e.execute(p,t,1,null,c,f,!1))}const u=[];let i=null;for(;m=p.next();)u.push(...e(m)),i=m.geometryType;return 0===u.length||null===i?null:"esriGeometryPolygon"===i?{rings:u}:{paths:u}}}export{l as CIMEffectHelper};