@arcgis/core
Version:
ArcGIS Maps SDK for JavaScript: A complete 2D and 3D mapping and data visualization API
6 lines (5 loc) • 1 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{reallocGrowthFactor as t}from"../../../../core/arrayUtils.js";function n(n,i,e,s){if(e>=i)return n;null==n&&(n=r());const a=n.isVisibleBit;let l=n.data;const c=u(l),f=e/c|0,h=e-c*f,B=(i-1)/c|0,E=l,b=s===a;if(!(e<E.length*c)&&b){const n=f+1,i=Math.ceil(E.length*t),r=B+1;let e=Math.max(n,i);e=Math.min(e,r),l=new Uint32Array(e),l.set(E)}return f<l.length&&(l[f]=o(l[f],h,b)),n.data=l,n}function i(t,n){if(null==t)return!0;const{isVisibleBit:i,data:r}=t,o=u(r);return n<r.length*o?e(i,r,n,o):!t.isVisibleBit}function r(t=!0){return{isVisibleBit:!t,data:new Uint32Array(0)}}function e(t,n,i,r){const e=i/r|0,u=i-e*r;return s(n[e],u)===t}function u(t){const n=8;return t.BYTES_PER_ELEMENT*n}function o(t,n,i){return t&~(1<<n)|(i?1:0)<<n}function s(t,n){return!!(t&1<<n)}export{r as defaultVisibilities,i as getVisibility,n as updateVisibilityWithCount};