/*
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
See https://js.arcgis.com/4.24/esri/copyright.txt for details.
*/
define(["exports","../../../../../core/maybe","../../../../../chunks/mat4","../../../../../chunks/mat4f64","../../lib/Util","../../../../webgl/doublePrecisionUtils"],(function(e,t,n,o,i,r){"use strict";function s(e,n){return t.isNone(e)&&(e=[]),e.push(n),e}function a(e,n){if(t.isNone(e))return null;const o=e.filter((e=>e!==n));return 0===o.length?null:o}function l(e){return!!t.isSome(e)&&!e.visible}function c(e,o,r){const s=e.origin.vec3;i.setMatrixTranslation3(d,-s[0],-s[1],-s[2]),t.isSome(e.transformation)?n.multiply(o,d,e.transformation):n.copy(o,d),r&&(n.invert(r,o),n.transpose(r,r))}function u(e,t,n,o,i){f[0]=e.get(t,0),f[1]=e.get(t,1),f[2]=e.get(t,2),r.encodeDoubleArray(f,b,3),n.set(i,0,b[0]),o.set(i,0,b[1]),n.set(i,1,b[2]),o.set(i,1,b[3]),n.set(i,2,b[4]),o.set(i,2,b[5])}const f=new Float64Array(3),b=new Float32Array(6),d=o.create();e.addObject3DStateID=s,e.calculateTransformRelativeToOrigin=c,e.encodeDoubleVec3=u,e.isInstanceHidden=l,e.removeObject3DStateID=a,Object.defineProperties(e,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));
