| 1 |
- import{a as z,b as H}from"./chunk-CNH2JJ5Q.js";import{a as G}from"./chunk-QK4WXGAD.js";import{h as T}from"./chunk-K2IDXOCV.js";import{a as C}from"./chunk-45OWWDV7.js";import{a as r}from"./chunk-I46SWINN.js";import{a as V}from"./chunk-LNIYJJXS.js";import{a as b}from"./chunk-NUC3LT2W.js";var O={},A=new r,X=new r,P=new r,I=new r,g=[new r,new r],Y=new r,Z=new r,_=new r,rr=new r,ar=new r,er=new r,nr=new r,ir=new r,lr=new r,tr=new r,J=new T,K=new C;function Q(n,l,t,v,i){var y=r.angleBetween(r.subtract(l,n,A),r.subtract(t,n,X)),d=v===z.BEVELED?1:Math.ceil(y/V.toRadians(5))+1,e=d*3,o=new Array(e);o[e-3]=t.x,o[e-2]=t.y,o[e-1]=t.z;var m;i?m=C.fromQuaternion(T.fromAxisAngle(r.negate(n,A),y/d,J),K):m=C.fromQuaternion(T.fromAxisAngle(n,y/d,J),K);var a=0;l=r.clone(l,A);for(var s=0;s<d;s++)l=C.multiplyByVector(m,l,l),o[a++]=l.x,o[a++]=l.y,o[a++]=l.z;return o}function or(n){var l=Y,t=Z,v=_,i=n[1];t=r.fromArray(n[1],i.length-3,t),v=r.fromArray(n[0],0,v),l=r.midpoint(t,v,l);var y=Q(l,t,v,z.ROUNDED,!1),d=n.length-1,e=n[d-1];i=n[d],t=r.fromArray(e,e.length-3,t),v=r.fromArray(i,0,v),l=r.midpoint(t,v,l);var o=Q(l,t,v,z.ROUNDED,!1);return[y,o]}function W(n,l,t,v){var i=A;return v?i=r.add(n,l,i):(l=r.negate(l,l),i=r.add(n,l,i)),[i.x,i.y,i.z,t.x,t.y,t.z]}function q(n,l,t,v){for(var i=new Array(n.length),y=new Array(n.length),d=r.multiplyByScalar(l,t,A),e=r.negate(d,X),o=0,m=n.length-1,a=0;a<n.length;a+=3){var s=r.fromArray(n,a,P),h=r.add(s,e,I);i[o++]=h.x,i[o++]=h.y,i[o++]=h.z;var u=r.add(s,d,I);y[m--]=u.z,y[m--]=u.y,y[m--]=u.x}return v.push(i,y),v}O.addAttribute=function(n,l,t,v){var i=l.x,y=l.y,d=l.z;b(t)&&(n[t]=i,n[t+1]=y,n[t+2]=d),b(v)&&(n[v]=d,n[v-1]=y,n[v-2]=i)};var vr=new r,sr=new r;O.computePositions=function(n){var l=n.granularity,t=n.positions,v=n.ellipsoid,i=n.width/2,y=n.cornerType,d=n.saveAttributes,e=Y,o=Z,m=_,a=rr,s=ar,h=er,u=nr,c=ir,p=lr,x=tr,w=[],B=d?[]:void 0,S=d?[]:void 0,f=t[0],D=t[1];o=r.normalize(r.subtract(D,f,o),o),e=v.geodeticSurfaceNormal(f,e),a=r.normalize(r.cross(e,o,a),a),d&&(B.push(a.x,a.y,a.z),S.push(e.x,e.y,e.z)),u=r.clone(f,u),f=D,m=r.negate(o,m);var E,N=[],U,$=t.length;for(U=1;U<$-1;U++){e=v.geodeticSurfaceNormal(f,e),D=t[U+1],o=r.normalize(r.subtract(D,f,o),o),s=r.normalize(r.add(o,m,s),s);var L=r.multiplyByScalar(e,r.dot(o,e),vr);r.subtract(o,L,L),r.normalize(L,L);var R=r.multiplyByScalar(e,r.dot(m,e),sr);r.subtract(m,R,R),r.normalize(R,R);var k=!V.equalsEpsilon(Math.abs(r.dot(L,R)),1,V.EPSILON7);if(k){s=r.cross(s,e,s),s=r.cross(e,s,s),s=r.normalize(s,s);var j=i/Math.max(.25,r.magnitude(r.cross(s,m,A))),M=H.angleIsGreaterThanPi(o,m,f,v);s=r.multiplyByScalar(s,j,s),M?(c=r.add(f,s,c),x=r.add(c,r.multiplyByScalar(a,i,x),x),p=r.add(c,r.multiplyByScalar(a,i*2,p),p),g[0]=r.clone(u,g[0]),g[1]=r.clone(x,g[1]),E=G.generateArc({positions:g,granularity:l,ellipsoid:v}),w=q(E,a,i,w),d&&(B.push(a.x,a.y,a.z),S.push(e.x,e.y,e.z)),h=r.clone(p,h),a=r.normalize(r.cross(e,o,a),a),p=r.add(c,r.multiplyByScalar(a,i*2,p),p),u=r.add(c,r.multiplyByScalar(a,i,u),u),y===z.ROUNDED||y===z.BEVELED?N.push({leftPositions:Q(c,h,p,y,M)}):N.push({leftPositions:W(f,r.negate(s,s),p,M)})):(p=r.add(f,s,p),x=r.add(p,r.negate(r.multiplyByScalar(a,i,x),x),x),c=r.add(p,r.negate(r.multiplyByScalar(a,i*2,c),c),c),g[0]=r.clone(u,g[0]),g[1]=r.clone(x,g[1]),E=G.generateArc({positions:g,granularity:l,ellipsoid:v}),w=q(E,a,i,w),d&&(B.push(a.x,a.y,a.z),S.push(e.x,e.y,e.z)),h=r.clone(c,h),a=r.normalize(r.cross(e,o,a),a),c=r.add(p,r.negate(r.multiplyByScalar(a,i*2,c),c),c),u=r.add(p,r.negate(r.multiplyByScalar(a,i,u),u),u),y===z.ROUNDED||y===z.BEVELED?N.push({rightPositions:Q(p,h,c,y,M)}):N.push({rightPositions:W(f,s,c,M)})),m=r.negate(o,m)}f=D}e=v.geodeticSurfaceNormal(f,e),g[0]=r.clone(u,g[0]),g[1]=r.clone(f,g[1]),E=G.generateArc({positions:g,granularity:l,ellipsoid:v}),w=q(E,a,i,w),d&&(B.push(a.x,a.y,a.z),S.push(e.x,e.y,e.z));var F;return y===z.ROUNDED&&(F=or(w)),{positions:w,corners:N,lefts:B,normals:S,endPositions:F}};var hr=O;export{hr as a};
|