bmh_cesium/public/lib/cesiumjs/Cesium/Workers/IntersectionTests-d04ec592.js

2 lines
13 KiB
JavaScript
Raw Normal View History

2025-03-09 23:23:50 +00:00
define(["exports","./when-cbf8cd21","./Check-35e1a91d","./Math-e66fad2a","./Cartesian2-44433f55","./Transforms-d9350502"],function(a,q,t,T,U,W){"use strict";var B={};function C(a,t,e){var r=a+t;return T.CesiumMath.sign(a)!==T.CesiumMath.sign(t)&&Math.abs(r/Math.max(Math.abs(a),Math.abs(t)))<e?0:r}B.computeDiscriminant=function(a,t,e){return t*t-4*a*e},B.computeRealRoots=function(a,t,e){var r;if(0===a)return 0===t?[]:[-e/t];if(0===t){if(0===e)return[0,0];var n=Math.abs(e),i=Math.abs(a);if(n<i&&n/i<T.CesiumMath.EPSILON14)return[0,0];if(i<n&&i/n<T.CesiumMath.EPSILON14)return[];if((r=-e/a)<0)return[];var s=Math.sqrt(r);return[-s,s]}if(0===e)return(r=-t/a)<0?[r,0]:[0,r];var o=C(t*t,-(4*a*e),T.CesiumMath.EPSILON14);if(o<0)return[];var u=-.5*C(t,T.CesiumMath.sign(t)*Math.sqrt(o),T.CesiumMath.EPSILON14);return 0<t?[u/a,e/u]:[e/u,u/a]};var b={};function o(a,t,e,r){var n=a,i=t/3,s=e/3,o=r,u=n*s,C=i*o,c=i*i,l=s*s,h=n*s-c,M=n*o-i*s,f=i*o-l,m=4*h*f-M*M;if(m<0){var d,g,v,p=u*l<=c*C?-2*i*(g=h)+(d=n)*M:-(d=o)*M+2*s*(g=f),w=-(p<0?-1:1)*Math.abs(d)*Math.sqrt(-m),R=(v=w-p)/2,S=R<0?-Math.pow(-R,1/3):Math.pow(R,1/3),O=v===w?-S:-g/S,x=g<=0?S+O:-p/(S*S+O*O+g);return u*l<=c*C?[(x-i)/n]:[-o/(x+s)]}var y=h,P=-2*i*h+n*M,N=f,b=-o*M+2*s*f,q=Math.sqrt(m),L=Math.sqrt(3)/2,I=Math.abs(Math.atan2(n*q,-P)/3);x=2*Math.sqrt(-y);var E=Math.cos(I);v=x*E;var z=x*(-E/2-L*Math.sin(I)),T=2*i<v+z?v-i:z-i,U=n,W=T/U,I=Math.abs(Math.atan2(o*q,-b)/3),B=-o,V=(v=(x=2*Math.sqrt(-N))*(E=Math.cos(I)))+(z=x*(-E/2-L*Math.sin(I)))<2*s?v+s:z+s,Z=B/V,A=-T*V-U*B,D=(s*A-i*(T*B))/(-i*A+s*(U*V));return W<=D?W<=Z?D<=Z?[W,D,Z]:[W,Z,D]:[Z,W,D]:W<=Z?[D,W,Z]:D<=Z?[D,Z,W]:[Z,D,W]}b.computeDiscriminant=function(a,t,e,r){var n=t*t,i=e*e;return 18*a*t*e*r+n*i-27*(a*a)*(r*r)-4*(a*i*e+n*t*r)},b.computeRealRoots=function(a,t,e,r){var n,i;if(0===a)return B.computeRealRoots(t,e,r);if(0!==t)return 0===e?0===r?(i=-t/a)<0?[i,0,0]:[0,0,i]:o(a,t,0,r):0===r?0===(n=B.computeRealRoots(a,t,e)).length?[0]:n[1]<=0?[n[0],n[1],0]:0<=n[0]?[0,n[0],n[1]]:[n[0],0,n[1]]:o(a,t,e,r);if(0!==e)return 0===r?0===(n=B.computeRealRoots(a,0,e)).Length?[0]:[n[0],0,n[1]]:o(a,0,e,r);if(0===r)return[0,0,0];var s=(i=-r/a)<0?-Math.pow(-i,1/3):Math.pow(i,1/3);return[s,s,s]};var V={};function c(a,t,e,r){var n=a*a,i=t-3*n/8,s=e-t*a/2+n*a/8,o=r-e*a/4+t*n/16-3*n*n/256,u=b.computeRealRoots(1,2*i,i*i-4*o,-s*s);if(0<u.length){var C=-a/4,c=u[u.length-1];if(Math.abs(c)<T.CesiumMath.EPSILON14){var l=B.computeRealRoots(1,i,o);if(2===l.length){var h,M=l[0],f=l[1];if(0<=M&&0<=f){var m=Math.sqrt(M),d=Math.sqrt(f);return[C-d,C-m,C+m,C+d]}if(0<=M&&f<0)return[C-(h=Math.sqrt(M)),C+h];if(M<0&&0<=f)return[C-(h=Math.sqrt(f)),C+h]}return[]}if(0<c){var g=Math.sqrt(c),v=(i+c-s/g)/2,p=(i+c+s/g)/2,w=B.computeRealRoots(1,g,v),R=B.computeRealRoots(1,-g,p);return 0!==w.length?(w[0]+=C,w[1]+=C,0!==R.length?(R[0]+=C,R[1]+=C,w[1]<=R[0]?[w[0],w[1],R[0],R[1]]:R[1]<=w[0]?[R[0],R[1],w[0],w[1]]:w[0]>=R[0]&&w[1]<=R[1]?[R[0],w[0],w[1],R[1]]:R[0]>=w[0]&&R[1]<=w[1]?[w[0],R[0],R[1],w[1]]:w[0]>R[0]&&w[0]<R[1]?[R[0],w[0],R[1],w[1]]:[w[0],R[0],w[1],R[1]]):w):0!==R.length?(R[0]+=C,R[1]+=C,R):[]}}return[]}function l(a,t,e,r){var n=a*a,i=-2*t,s=e*a+t*t-4*r,o=n*r-e*t*a+e*e,u=b.computeRealRoots(1,i,s,o);if(0<u.length){var C,c,l,h,M,f,m,d,g=u[0],v=t-g,p=v*v,w=a/2,R=v/2,S=p-4*r,O=p+4*Math.abs(r),x=n-4*g,y=n+4*Math.abs(g);l=g<0||S*y<x*O?(c=(C=Math.sqrt(x))/2,0===C?0:(a*R-e)/C):(c=0===(h=Math.sqrt(S))?0:(a*R-e)/h,h/2),0==w&&0===c?f=M=0:T.CesiumMath.sign(w)===T.CesiumMath.sign(c)?f=g/(M=w+c):M=g/(f=w-c),0==R&&0===l?d=m=0:T.CesiumMath.sign(R)===T.CesiumMath.sign(l)?d=r/(m=R+l):m=r/(d=R-l);var P=B.computeRealRoots(1,M,m),N=B.computeRealRoots(1,f,d);if(0!==P.length)return 0!==N.length?P[1]<=N[0]?[P[0],P[1],N[0],N[1]]:N[1]<=P[0]?[N[0],N[1],P[0],P[1]]:P[0]>=N[0]&&P[1]<=N[1]?[N[0],P[0],P[1],N[1]]:N[0]>=P[0]&&N[1]<=P[1]?[P[0],N[0],N[1],P[1]]:P[0]>N[0]&&P[0]<N[1]?[N[0],P[0],N[1],P[1]]:[P[0],N[0],P[1],N[1]]:P;if(0!==N.length)return N}return[]}function e(a,t){t=U.Cartesian3.clone(q.defaultValue(t,U.Cartesian3.ZERO)),U.Cartesian3.equals(t,U.Cartesian3.ZERO)||U.Cartesian3.normalize(t,t),this.o