/** * @license * Cesium - https://github.com/CesiumGS/cesium * Version 1.99 * * 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. */ define(["exports","./Matrix3-edb29a7e","./Math-a304e2d6","./Transforms-3ea76111"],(function(a,t,e,n){"use strict";const i={},r=new t.Cartesian3,s=new t.Cartesian3,o=new n.Quaternion,l=new t.Matrix3;function c(a,e,i,c,C,y,u,m,h,x){const M=a+e;t.Cartesian3.multiplyByScalar(c,Math.cos(M),r),t.Cartesian3.multiplyByScalar(i,Math.sin(M),s),t.Cartesian3.add(r,s,r);let z=Math.cos(a);z*=z;let f=Math.sin(a);f*=f;const d=y/Math.sqrt(u*z+C*f)/m;return n.Quaternion.fromAxisAngle(r,d,o),t.Matrix3.fromQuaternion(o,l),t.Matrix3.multiplyByVector(l,h,x),t.Cartesian3.normalize(x,x),t.Cartesian3.multiplyByScalar(x,m,x),x}const C=new t.Cartesian3,y=new t.Cartesian3,u=new t.Cartesian3,m=new t.Cartesian3;i.raisePositionsToHeight=function(a,e,n){const i=e.ellipsoid,r=e.height,s=e.extrudedHeight,o=n?a.length/3*2:a.length/3,l=new Float64Array(3*o),c=a.length,h=n?c:0;for(let e=0;e1;--b){if(I=e.CesiumMath.PI_OVER_TWO-(b-1)*T,V=c(-I,o,w,p,z,d,f,_,O,V),A=c(I+Math.PI,o,w,p,z,d,f,_,O,A),n){for(g[E++]=V.x,g[E++]=V.y,g[E++]=V.z,Q=2*(b-1)+2,v=1;v