@arcgis/core
Version:
ArcGIS Maps SDK for JavaScript: A complete 2D and 3D mapping and data visualization API
3 lines (2 loc) • 1.12 kB
JavaScript
/* COPYRIGHT Esri - https://js.arcgis.com/5.0.19/LICENSE.txt */
import{transformMat3 as r,add as t}from"../../../../core/libs/gl-matrix-2/math/vec3.js";import{create as o}from"../../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{projectBuffer as e}from"../../../../geometry/projection/projectBuffer.js";import{fromBuffer as n,set as a,zero as m,create as i}from"../../../../geometry/support/aaBoundingBox.js";import{newDoubleArray as s}from"../../../../geometry/support/DoubleArray.js";function c(r,t,o){const i=s(24);return s=>{const c=s.meta.featureExtents,p=new Float64Array(c.buffer,6*s.index*Float64Array.BYTES_PER_ELEMENT,6);return p[0]===Number.POSITIVE_INFINITY&&(f(s.index,o,s.meta.objectHandle,i,0),e(i,t,0,i,r,0)?n(i,p):a(p,m)),p}}function f(o,e,n,a,m){const i=e.getComponentAabb(n,o,u),s=e.getObjectTransform(n);for(let c=0;c<8;++c)l[0]=1&c?i[0]:i[3],l[1]=2&c?i[1]:i[4],l[2]=4&c?i[2]:i[5],r(l,l,s.rotationScale),t(l,l,s.position),a[m++]=l[0],a[m++]=l[1],a[m++]=l[2];return a}const p=24,u=i(),l=o();export{f as boundingBoxCornerPoints,p as boundingBoxCornersPointsStride,c as createGetFeatureExtent};