@arcgis/core
Version:
ArcGIS Maps SDK for JavaScript: A complete 2D and 3D mapping and data visualization API
6 lines (5 loc) • 2.09 kB
JavaScript
/*
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
See https://js.arcgis.com/4.32/esri/copyright.txt for details.
*/
import{e as t}from"../../../../chunks/earcut.js";import e from"../../../../geometry/Extent.js";import r from"../../../../geometry/Polygon.js";import{Axis as i}from"../../../../geometry/support/Axis.js";import{getZeroIndexArray as o}from"../../../../geometry/support/Indices.js";import{leastSignificantAxis as n}from"../../../../geometry/support/polygonUtils.js";import{Attribute as a}from"../../webgl-engine/lib/Attribute.js";import{ContentObjectType as s}from"../../webgl-engine/lib/ContentObjectType.js";import{Geometry as u}from"../../webgl-engine/lib/Geometry.js";import{VertexAttribute as c}from"../../webgl-engine/lib/VertexAttribute.js";function p(e,r,o){const a=(r.length>0?r[0]:e.length/3)-1,s=n(e,a,o);if(s!==i.Z){e=e.slice();for(let t=0;t<e.length;t+=3)e[t+s]=e[t+2]}return t(e,r,3)}function l(t){const e=[[c.POSITION,new a(t.attributeData.position,t.indices,3,!0)]],r=o(t.indices.length);return null!=t.attributeData.colorFeature?e.push([c.COLORFEATUREATTRIBUTE,new a([t.attributeData.colorFeature],r,1,!0)]):t.attributeData.color&&e.push([c.COLOR,new a(t.attributeData.color,r,4,!0)]),t.attributeData.uvMapSpace&&e.push([c.UVMAPSPACE,new a(t.attributeData.uvMapSpace,t.indices,4,!0)]),t.attributeData.boundingRect&&e.push([c.BOUNDINGRECT,new a(t.attributeData.boundingRect,t.indices,9,!0)]),new u(t.material,e,t.mapPositions,s.Mesh,t.attributeData.objectAndLayerIdColor)}function m(t,e=null){const r=[[c.POSITION,new a(t.attributeData.position,t.indices,3,!0)],[c.UV0,new a(t.attributeData.uv0,t.indices,2,!0)]];return new u(t.material,r,t.mapPositions,s.Mesh,e)}function b(t){switch(t.type){case"extent":if(t instanceof e)return r.fromExtent(t);break;case"polygon":return t}return null}class g{constructor(t,e,r){this.renderData=t,this.layerUid=e,this.graphicUid=r,this.outGeometries=new Array}}export{g as PolygonCreationDataBase,l as createColorGeometry,p as createIndices3D,m as createWaterGeometry,b as geometryAsPolygon};