@arcgis/core
Version:
ArcGIS Maps SDK for JavaScript: A complete 2D and 3D mapping and data visualization API
3 lines (2 loc) • 1.28 kB
JavaScript
/* COPYRIGHT Esri - https://js.arcgis.com/5.0.8/LICENSE.txt */
import{deduplicate as e}from"../../../../../geometry/support/meshUtils/deduplicate.js";import{computeNeighbors as t}from"../../../support/meshProcessing.js";import{newLayout as i}from"../../../support/buffer/InterleavedLayout.js";import{EdgeInputBufferLayout as s}from"./bufferLayouts.js";import{RegularEdgeBufferWriter as r,SilhouetteEdgeBufferWriter as n}from"./edgeBufferWriters.js";import{extractEdges as o}from"./edgePreprocessing.js";function c(e){const t=f(e.data,e.skipDeduplicate,e.indices,e.indicesLength);return p.updateSettings(e.writerSettings),d.updateSettings(e.writerSettings),o(t,p,d)}function f(i,r,n,o){if(r){const e=t(n,o,i.count);return new u(n,o,e,i)}const c=e(i.buffer,i.stride/4,{originalIndices:n}),f=t(c.indices,o,c.uniqueCount);return{faces:c.indices,facesLength:c.indices.length,neighbors:f,vertices:s.createView(c.buffer)}}class u{constructor(e,t,i,s){this.faces=e,this.facesLength=t,this.neighbors=i,this.vertices=s}}const p=new r,d=new n,g=i().vec3f("position0").vec3f("position1"),a=i().vec3f("position0").vec3f("position1").u16("componentIndex",{integer:!0});export{c as extract,a as extractComponentsEdgeLocationsLayout,f as extractEdgeInformation,g as extractEdgeLocationsLayout};