chunk-CQDUGEQJ.js 2.4 KB

1
  1. import{h as C}from"./chunk-K2IDXOCV.js";import{a as b}from"./chunk-45OWWDV7.js";import{a}from"./chunk-I46SWINN.js";import{a as S}from"./chunk-LNIYJJXS.js";var H={},q=new a,Q=new a,G=new C,N=new b;function W(f,s,O,T,A,_,P,u,M,c){var h=f+s;a.multiplyByScalar(T,Math.cos(h),q),a.multiplyByScalar(O,Math.sin(h),Q),a.add(q,Q,q);var l=Math.cos(f);l=l*l;var y=Math.sin(f);y=y*y;var v=_/Math.sqrt(P*l+A*y),m=v/u;return C.fromAxisAngle(q,m,G),b.fromQuaternion(G,N),b.multiplyByVector(N,M,c),a.normalize(c,c),a.multiplyByScalar(c,u,c),c}var U=new a,Z=new a,j=new a,D=new a;H.raisePositionsToHeight=function(f,s,O){for(var T=s.ellipsoid,A=s.height,_=s.extrudedHeight,P=O?f.length/3*2:f.length/3,u=new Float64Array(P*3),M=f.length,c=O?M:0,h=0;h<M;h+=3){var l=h+1,y=h+2,v=a.fromArray(f,h,U);T.scaleToGeodeticSurface(v,v);var m=a.clone(v,Z),x=T.geodeticSurfaceNormal(v,D),w=a.multiplyByScalar(x,A,j);a.add(v,w,v),O&&(a.multiplyByScalar(x,_,w),a.add(m,w,m),u[h+c]=m.x,u[l+c]=m.y,u[y+c]=m.z),u[h]=v.x,u[l]=v.y,u[y]=v.z}return u};var J=new a,K=new a,X=new a;H.computeEllipsePositions=function(f,s,O){var T=f.semiMinorAxis,A=f.semiMajorAxis,_=f.rotation,P=f.center,u=f.granularity*8,M=T*T,c=A*A,h=A*T,l=a.magnitude(P),y=a.normalize(P,J),v=a.cross(a.UNIT_Z,P,K);v=a.normalize(v,v);var m=a.cross(y,v,X),x=1+Math.ceil(S.PI_OVER_TWO/u),w=S.PI_OVER_TWO/(x-1),o=S.PI_OVER_TWO-x*w;o<0&&(x-=Math.ceil(Math.abs(o)/w));var k=2*(x*(x+2)),e=s?new Array(k*3):void 0,t=0,r=U,i=Z,L=x*4*3,z=L-1,R=0,n=O?new Array(L):void 0,I,V,p,E,g;for(o=S.PI_OVER_TWO,r=W(o,_,m,v,M,h,c,l,y,r),s&&(e[t++]=r.x,e[t++]=r.y,e[t++]=r.z),O&&(n[z--]=r.z,n[z--]=r.y,n[z--]=r.x),o=S.PI_OVER_TWO-w,I=1;I<x+1;++I){if(r=W(o,_,m,v,M,h,c,l,y,r),i=W(Math.PI-o,_,m,v,M,h,c,l,y,i),s){for(e[t++]=r.x,e[t++]=r.y,e[t++]=r.z,p=2*I+2,V=1;V<p-1;++V)E=V/(p-1),g=a.lerp(r,i,E,j),e[t++]=g.x,e[t++]=g.y,e[t++]=g.z;e[t++]=i.x,e[t++]=i.y,e[t++]=i.z}O&&(n[z--]=r.z,n[z--]=r.y,n[z--]=r.x,n[R++]=i.x,n[R++]=i.y,n[R++]=i.z),o=S.PI_OVER_TWO-(I+1)*w}for(I=x;I>1;--I){if(o=S.PI_OVER_TWO-(I-1)*w,r=W(-o,_,m,v,M,h,c,l,y,r),i=W(o+Math.PI,_,m,v,M,h,c,l,y,i),s){for(e[t++]=r.x,e[t++]=r.y,e[t++]=r.z,p=2*(I-1)+2,V=1;V<p-1;++V)E=V/(p-1),g=a.lerp(r,i,E,j),e[t++]=g.x,e[t++]=g.y,e[t++]=g.z;e[t++]=i.x,e[t++]=i.y,e[t++]=i.z}O&&(n[z--]=r.z,n[z--]=r.y,n[z--]=r.x,n[R++]=i.x,n[R++]=i.y,n[R++]=i.z)}o=S.PI_OVER_TWO,r=W(-o,_,m,v,M,h,c,l,y,r);var B={};return s&&(e[t++]=r.x,e[t++]=r.y,e[t++]=r.z,B.positions=e,B.numPts=x),O&&(n[z--]=r.z,n[z--]=r.y,n[z--]=r.x,B.outerPositions=n),B};var rr=H;export{rr as a};