gy-cesium 0.0.1 → 0.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/v2/gy-cesium.cjs.js +1 -1
- package/lib/v2/gy-cesium.es.js +641 -20
- package/lib/v2/gy-cesium.umd.js +1 -1
- package/lib/v2/style.css +1 -1
- package/lib/v3/gy-cesium.cjs.js +9 -9
- package/lib/v3/gy-cesium.es.js +643 -21
- package/lib/v3/gy-cesium.umd.js +9 -9
- package/lib/v3/style.css +1 -1
- package/package.json +1 -1
package/lib/v2/gy-cesium.cjs.js
CHANGED
|
@@ -52,4 +52,4 @@ const{entries:entries,setPrototypeOf:setPrototypeOf,isFrozen:isFrozen,getPrototy
|
|
|
52
52
|
* Knockout ES5 plugin - https://github.com/SteveSanderson/knockout-es5
|
|
53
53
|
* Copyright (c) Steve Sanderson
|
|
54
54
|
* MIT license
|
|
55
|
-
*/var OBSERVABLES_PROPERTY="__knockoutObservables",SUBSCRIBABLE_PROPERTY="__knockoutSubscribable";function track(e,t){if(!e)throw new Error("When calling ko.track, you must pass an object as the first parameter.");var i=this,n=getAllObservablesForObject(e,!0);return(t=t||Object.getOwnPropertyNames(e)).forEach((function(t){if(t!==OBSERVABLES_PROPERTY&&t!==SUBSCRIBABLE_PROPERTY&&!(t in n)){var r=e[t],o=r instanceof Array,a=i.isObservable(r)?r:o?i.observableArray(r):i.observable(r);Object.defineProperty(e,t,{configurable:!0,enumerable:!0,get:a,set:i.isWriteableObservable(a)?a:void 0}),n[t]=a,o&¬ifyWhenPresentOrFutureArrayValuesMutate(i,a)}})),e}function getAllObservablesForObject(e,t){var i=e[OBSERVABLES_PROPERTY];return!i&&t&&(i={},Object.defineProperty(e,OBSERVABLES_PROPERTY,{value:i})),i}function defineComputedProperty(e,t,i){var n={owner:e,deferEvaluation:!0};if("function"==typeof i)n.read=i;else{if("value"in i)throw new Error('For ko.defineProperty, you must not specify a "value" for the property. You must provide a "get" function.');if("function"!=typeof i.get)throw new Error('For ko.defineProperty, the third parameter must be either an evaluator function, or an options object containing a function called "get".');n.read=i.get,n.write=i.set}return e[t]=this.computed(n),track.call(this,e,[t]),e}function notifyWhenPresentOrFutureArrayValuesMutate(e,t){var i=null;e.computed((function(){i&&(i.dispose(),i=null);var n=t();n instanceof Array&&(i=startWatchingArrayInstance(e,t,n))}))}function startWatchingArrayInstance(e,t,i){return getSubscribableForArray(e,i).subscribe(t)}function getSubscribableForArray(e,t){var i=t[SUBSCRIBABLE_PROPERTY];if(!i){i=new e.subscribable,Object.defineProperty(t,SUBSCRIBABLE_PROPERTY,{value:i});var n={};wrapStandardArrayMutators(t,i,n),addKnockoutArrayMutators(e,t,i,n)}return i}function wrapStandardArrayMutators(e,t,i){["pop","push","reverse","shift","sort","splice","unshift"].forEach((function(n){var r=e[n];e[n]=function(){var e=r.apply(this,arguments);return!0!==i.pause&&t.notifySubscribers(this),e}}))}function addKnockoutArrayMutators(e,t,i,n){["remove","removeAll","destroy","destroyAll","replace"].forEach((function(r){Object.defineProperty(t,r,{enumerable:!1,value:function(){var o;n.pause=!0;try{o=e.observableArray.fn[r].apply(e.observableArray(t),arguments)}finally{n.pause=!1}return i.notifySubscribers(t),o}})}))}function getObservable(e,t){if(!e)return null;var i=getAllObservablesForObject(e,!1);return i&&i[t]||null}function valueHasMutated(e,t){var i=getObservable(e,t);i&&i.valueHasMutated()}function attachToKo(e){e.track=track,e.getObservable=getObservable,e.valueHasMutated=valueHasMutated,e.defineProperty=defineComputedProperty}const knockout_es5={attachToKo:attachToKo},svgNS$1="http://www.w3.org/2000/svg",svgClassName="cesium-svgPath-svg",SvgPathBindingHandler={register:function(e){e.bindingHandlers.cesiumSvgPath={init:function(t,i){const n=document.createElementNS(svgNS$1,"svg:svg");n.setAttribute("class",svgClassName);const r=document.createElementNS(svgNS$1,"path");return n.appendChild(r),e.virtualElements.setDomNodeChildren(t,[n]),e.computed({read:function(){const t=e.unwrap(i());r.setAttribute("d",e.unwrap(t.path));const o=e.unwrap(t.width),a=e.unwrap(t.height);n.setAttribute("width",o),n.setAttribute("height",a),n.setAttribute("viewBox",`0 0 ${o} ${a}`),t.css&&n.setAttribute("class",`${svgClassName} ${e.unwrap(t.css)}`)},disposeWhenNodeIsRemoved:t}),{controlsDescendantBindings:!0}}},e.virtualElements.allowedBindings.cesiumSvgPath=!0}},SvgPathBindingHandler$1=SvgPathBindingHandler;function ClockViewModel(e){defined(e)||(e=new Clock),this._clock=e,this._eventHelper=new EventHelper,this._eventHelper.add(e.onTick,this.synchronize,this),this.systemTime=knockout$1.observable(JulianDate.now()),this.systemTime.equalityComparer=JulianDate.equals,this.startTime=knockout$1.observable(e.startTime),this.startTime.equalityComparer=JulianDate.equals,this.startTime.subscribe((function(t){e.startTime=t,this.synchronize()}),this),this.stopTime=knockout$1.observable(e.stopTime),this.stopTime.equalityComparer=JulianDate.equals,this.stopTime.subscribe((function(t){e.stopTime=t,this.synchronize()}),this),this.currentTime=knockout$1.observable(e.currentTime),this.currentTime.equalityComparer=JulianDate.equals,this.currentTime.subscribe((function(t){e.currentTime=t,this.synchronize()}),this),this.multiplier=knockout$1.observable(e.multiplier),this.multiplier.subscribe((function(t){e.multiplier=t,this.synchronize()}),this),this.clockStep=knockout$1.observable(e.clockStep),this.clockStep.subscribe((function(t){e.clockStep=t,this.synchronize()}),this),this.clockRange=knockout$1.observable(e.clockRange),this.clockRange.subscribe((function(t){e.clockRange=t,this.synchronize()}),this),this.canAnimate=knockout$1.observable(e.canAnimate),this.canAnimate.subscribe((function(t){e.canAnimate=t,this.synchronize()}),this),this.shouldAnimate=knockout$1.observable(e.shouldAnimate),this.shouldAnimate.subscribe((function(t){e.shouldAnimate=t,this.synchronize()}),this),knockout$1.track(this,["systemTime","startTime","stopTime","currentTime","multiplier","clockStep","clockRange","canAnimate","shouldAnimate"])}function Command(){this.canExecute=void 0,this.beforeExecute=void 0,this.afterExecute=void 0,DeveloperError.throwInstantiationError()}knockout_es5.attachToKo(knockout$1),SvgPathBindingHandler$1.register(knockout$1),Object.defineProperties(ClockViewModel.prototype,{clock:{get:function(){return this._clock}}}),ClockViewModel.prototype.synchronize=function(){const e=this._clock;this.systemTime=JulianDate.now(),this.startTime=e.startTime,this.stopTime=e.stopTime,this.currentTime=e.currentTime,this.multiplier=e.multiplier,this.clockStep=e.clockStep,this.clockRange=e.clockRange,this.canAnimate=e.canAnimate,this.shouldAnimate=e.shouldAnimate},ClockViewModel.prototype.isDestroyed=function(){return!1},ClockViewModel.prototype.destroy=function(){this._eventHelper.removeAll(),destroyObject(this)};const InspectorShared={createCheckbox:function(e,t,i){Check$1.typeOf.string("labelText",e),Check$1.typeOf.string("checkedBinding",t);const n=document.createElement("div"),r=document.createElement("label"),o=document.createElement("input");o.type="checkbox";let a=`checked: ${t}`;return defined(i)&&(a+=`, enable: ${i}`),o.setAttribute("data-bind",a),r.appendChild(o),r.appendChild(document.createTextNode(e)),n.appendChild(r),n},createSection:function(e,t,i,n){Check$1.defined("panel",e),Check$1.typeOf.string("headerText",t),Check$1.typeOf.string("sectionVisibleBinding",i),Check$1.typeOf.string("toggleSectionVisibilityBinding",n);const r=document.createElement("div");r.className="cesium-cesiumInspector-section",r.setAttribute("data-bind",`css: { "cesium-cesiumInspector-section-collapsed": !${i} }`),e.appendChild(r);const o=document.createElement("h3");o.className="cesium-cesiumInspector-sectionHeader",o.appendChild(document.createTextNode(t)),o.setAttribute("data-bind",`click: ${n}`),r.appendChild(o);const a=document.createElement("div");return a.className="cesium-cesiumInspector-sectionContent",r.appendChild(a),a},createRangeInput:function(e,t,i,n,r,o){Check$1.typeOf.string("rangeText",e),Check$1.typeOf.string("sliderValueBinding",t),Check$1.typeOf.number("min",i),Check$1.typeOf.number("max",n),o=defaultValue(o,t);const a=document.createElement("input");a.setAttribute("data-bind",`value: ${o}`),a.type="number";const s=document.createElement("input");s.type="range",s.min=i,s.max=n,s.step=defaultValue(r,"any"),s.setAttribute("data-bind",`valueUpdate: "input", value: ${t}`);const c=document.createElement("div");c.appendChild(s);const l=document.createElement("div");return l.className="cesium-cesiumInspector-slider",l.appendChild(document.createTextNode(e)),l.appendChild(a),l.appendChild(c),l},createButton:function(e,t,i){Check$1.typeOf.string("buttonText",e),Check$1.typeOf.string("clickedBinding",t);const n=document.createElement("button");n.type="button",n.textContent=e,n.className="cesium-cesiumInspector-pickButton";let r=`click: ${t}`;return defined(i)&&(r+=`, css: {"cesium-cesiumInspector-pickButtonHighlight" : ${i}}`),n.setAttribute("data-bind",r),n}},InspectorShared$1=InspectorShared;function ToggleButtonViewModel(e,t){if(!defined(e))throw new DeveloperError("command is required.");this._command=e,t=defaultValue(t,defaultValue.EMPTY_OBJECT),this.toggled=defaultValue(t.toggled,!1),this.tooltip=defaultValue(t.tooltip,""),knockout$1.track(this,["toggled","tooltip"])}function createCommand(e,t){if(!defined(e))throw new DeveloperError("func is required.");t=defaultValue(t,!0);const i=new Event,n=new Event;function r(){if(!r.canExecute)throw new DeveloperError("Cannot execute command, canExecute is false.");const t={args:arguments,cancel:!1};let o;return i.raiseEvent(t),t.cancel||(o=e.apply(null,arguments),n.raiseEvent(o)),o}return r.canExecute=t,knockout$1.track(r,["canExecute"]),Object.defineProperties(r,{beforeExecute:{value:i},afterExecute:{value:n}}),r}function subscribeAndEvaluate(e,t,i,n,r){return i.call(n,e[t]),knockout$1.getObservable(e,t).subscribe(i,n,r)}Object.defineProperties(ToggleButtonViewModel.prototype,{command:{get:function(){return this._command}}});const svgNS="http://www.w3.org/2000/svg",xlinkNS="http://www.w3.org/1999/xlink";let widgetForDrag;const gradientEnabledColor0=Color.fromCssColorString("rgba(247,250,255,0.384)"),gradientEnabledColor1=Color.fromCssColorString("rgba(143,191,255,0.216)"),gradientEnabledColor2=Color.fromCssColorString("rgba(153,197,255,0.098)"),gradientEnabledColor3=Color.fromCssColorString("rgba(255,255,255,0.086)"),gradientDisabledColor0=Color.fromCssColorString("rgba(255,255,255,0.267)"),gradientDisabledColor1=Color.fromCssColorString("rgba(255,255,255,0)"),gradientKnobColor=Color.fromCssColorString("rgba(66,67,68,0.3)"),gradientPointerColor=Color.fromCssColorString("rgba(0,0,0,0.5)");function getElementColor(e){return Color.fromCssColorString(window.getComputedStyle(e).getPropertyValue("color"))}const svgIconsById={animation_pathReset:{tagName:"path",transform:"translate(16,16) scale(0.85) translate(-16,-16)",d:"M24.316,5.318,9.833,13.682,9.833,5.5,5.5,5.5,5.5,25.5,9.833,25.5,9.833,17.318,24.316,25.682z"},animation_pathPause:{tagName:"path",transform:"translate(16,16) scale(0.85) translate(-16,-16)",d:"M13,5.5,7.5,5.5,7.5,25.5,13,25.5zM24.5,5.5,19,5.5,19,25.5,24.5,25.5z"},animation_pathPlay:{tagName:"path",transform:"translate(16,16) scale(0.85) translate(-16,-16)",d:"M6.684,25.682L24.316,15.5L6.684,5.318V25.682z"},animation_pathPlayReverse:{tagName:"path",transform:"translate(16,16) scale(-0.85,0.85) translate(-16,-16)",d:"M6.684,25.682L24.316,15.5L6.684,5.318V25.682z"},animation_pathLoop:{tagName:"path",transform:"translate(16,16) scale(0.85) translate(-16,-16)",d:"M24.249,15.499c-0.009,4.832-3.918,8.741-8.75,8.75c-2.515,0-4.768-1.064-6.365-2.763l2.068-1.442l-7.901-3.703l0.744,8.694l2.193-1.529c2.244,2.594,5.562,4.242,9.26,4.242c6.767,0,12.249-5.482,12.249-12.249H24.249zM15.499,6.75c2.516,0,4.769,1.065,6.367,2.764l-2.068,1.443l7.901,3.701l-0.746-8.693l-2.192,1.529c-2.245-2.594-5.562-4.245-9.262-4.245C8.734,3.25,3.25,8.734,3.249,15.499H6.75C6.758,10.668,10.668,6.758,15.499,6.75z"},animation_pathClock:{tagName:"path",transform:"translate(16,16) scale(0.85) translate(-16,-15.5)",d:"M15.5,2.374C8.251,2.375,2.376,8.251,2.374,15.5C2.376,22.748,8.251,28.623,15.5,28.627c7.249-0.004,13.124-5.879,13.125-13.127C28.624,8.251,22.749,2.375,15.5,2.374zM15.5,25.623C9.909,25.615,5.385,21.09,5.375,15.5C5.385,9.909,9.909,5.384,15.5,5.374c5.59,0.01,10.115,4.535,10.124,10.125C25.615,21.09,21.091,25.615,15.5,25.623zM8.625,15.5c-0.001-0.552-0.448-0.999-1.001-1c-0.553,0-1,0.448-1,1c0,0.553,0.449,1,1,1C8.176,16.5,8.624,16.053,8.625,15.5zM8.179,18.572c-0.478,0.277-0.642,0.889-0.365,1.367c0.275,0.479,0.889,0.641,1.365,0.365c0.479-0.275,0.643-0.887,0.367-1.367C9.27,18.461,8.658,18.297,8.179,18.572zM9.18,10.696c-0.479-0.276-1.09-0.112-1.366,0.366s-0.111,1.09,0.365,1.366c0.479,0.276,1.09,0.113,1.367-0.366C9.821,11.584,9.657,10.973,9.18,10.696zM22.822,12.428c0.478-0.275,0.643-0.888,0.366-1.366c-0.275-0.478-0.89-0.642-1.366-0.366c-0.479,0.278-0.642,0.89-0.366,1.367C21.732,12.54,22.344,12.705,22.822,12.428zM12.062,21.455c-0.478-0.275-1.089-0.111-1.366,0.367c-0.275,0.479-0.111,1.09,0.366,1.365c0.478,0.277,1.091,0.111,1.365-0.365C12.704,22.344,12.54,21.732,12.062,21.455zM12.062,9.545c0.479-0.276,0.642-0.888,0.366-1.366c-0.276-0.478-0.888-0.642-1.366-0.366s-0.642,0.888-0.366,1.366C10.973,9.658,11.584,9.822,12.062,9.545zM22.823,18.572c-0.48-0.275-1.092-0.111-1.367,0.365c-0.275,0.479-0.112,1.092,0.367,1.367c0.477,0.275,1.089,0.113,1.365-0.365C23.464,19.461,23.3,18.848,22.823,18.572zM19.938,7.813c-0.477-0.276-1.091-0.111-1.365,0.366c-0.275,0.48-0.111,1.091,0.366,1.367s1.089,0.112,1.366-0.366C20.581,8.702,20.418,8.089,19.938,7.813zM23.378,14.5c-0.554,0.002-1.001,0.45-1.001,1c0.001,0.552,0.448,1,1.001,1c0.551,0,1-0.447,1-1C24.378,14.949,23.929,14.5,23.378,14.5zM15.501,6.624c-0.552,0-1,0.448-1,1l-0.466,7.343l-3.004,1.96c-0.478,0.277-0.642,0.889-0.365,1.365c0.275,0.479,0.889,0.643,1.365,0.367l3.305-1.676C15.39,16.99,15.444,17,15.501,17c0.828,0,1.5-0.671,1.5-1.5l-0.5-7.876C16.501,7.072,16.053,6.624,15.501,6.624zM15.501,22.377c-0.552,0-1,0.447-1,1s0.448,1,1,1s1-0.447,1-1S16.053,22.377,15.501,22.377zM18.939,21.455c-0.479,0.277-0.643,0.889-0.366,1.367c0.275,0.477,0.888,0.643,1.366,0.365c0.478-0.275,0.642-0.889,0.366-1.365C20.028,21.344,19.417,21.18,18.939,21.455z"},animation_pathWingButton:{tagName:"path",d:"m 4.5,0.5 c -2.216,0 -4,1.784 -4,4 l 0,24 c 0,2.216 1.784,4 4,4 l 13.71875,0 C 22.478584,27.272785 27.273681,22.511272 32.5,18.25 l 0,-13.75 c 0,-2.216 -1.784,-4 -4,-4 l -24,0 z"},animation_pathPointer:{tagName:"path",d:"M-15,-65,-15,-55,15,-55,15,-65,0,-95z"},animation_pathSwooshFX:{tagName:"path",d:"m 85,0 c 0,16.617 -4.813944,35.356 -13.131081,48.4508 h 6.099803 c 8.317138,-13.0948 13.13322,-28.5955 13.13322,-45.2124 0,-46.94483 -38.402714,-85.00262 -85.7743869,-85.00262 -1.0218522,0 -2.0373001,0.0241 -3.0506131,0.0589 45.958443,1.59437 82.723058,35.77285 82.723058,81.70532 z"}};function svgFromObject(e){const t=document.createElementNS(svgNS,e.tagName);for(const i in e)if(e.hasOwnProperty(i)&&"tagName"!==i)if("children"===i){const i=e.children.length;for(let n=0;n<i;++n)t.appendChild(svgFromObject(e.children[n]))}else 0===i.indexOf("xlink:")?t.setAttributeNS(xlinkNS,i.substring(6),e[i]):"textContent"===i?t.textContent=e[i]:t.setAttribute(i,e[i]);return t}function svgText(e,t,i){const n=document.createElementNS(svgNS,"text");n.setAttribute("x",e),n.setAttribute("y",t),n.setAttribute("class","cesium-animation-svgText");const r=document.createElementNS(svgNS,"tspan");return r.textContent=i,n.appendChild(r),n}function setShuttleRingPointer(e,t,i){e.setAttribute("transform",`translate(100,100) rotate(${i})`),t.setAttribute("transform",`rotate(${i})`)}const makeColorStringScratch=new Color;function makeColorString(e,t){const i=t.alpha,n=1-i;return makeColorStringScratch.red=e.red*n+t.red*i,makeColorStringScratch.green=e.green*n+t.green*i,makeColorStringScratch.blue=e.blue*n+t.blue*i,makeColorStringScratch.toCssColorString()}function rectButton(e,t,i){const n=svgIconsById[i];return svgFromObject({tagName:"g",class:"cesium-animation-rectButton",transform:`translate(${e},${t})`,children:[{tagName:"rect",class:"cesium-animation-buttonGlow",width:32,height:32,rx:2,ry:2},{tagName:"rect",class:"cesium-animation-buttonMain",width:32,height:32,rx:4,ry:4},{class:"cesium-animation-buttonPath",id:i,tagName:n.tagName,transform:n.transform,d:n.d},{tagName:"title",textContent:""}]})}function wingButton(e,t,i){const n=svgIconsById[i],r=svgIconsById.animation_pathWingButton;return svgFromObject({tagName:"g",class:"cesium-animation-rectButton",transform:`translate(${e},${t})`,children:[{class:"cesium-animation-buttonGlow",id:"animation_pathWingButton",tagName:r.tagName,d:r.d},{class:"cesium-animation-buttonMain",id:"animation_pathWingButton",tagName:r.tagName,d:r.d},{class:"cesium-animation-buttonPath",id:i,tagName:n.tagName,transform:n.transform,d:n.d},{tagName:"title",textContent:""}]})}function setShuttleRingFromMouseOrTouch(e,t){const i=e._viewModel,n=i.shuttleRingDragging;if(!n||widgetForDrag===e)if("mousedown"===t.type||n&&"mousemove"===t.type||"touchstart"===t.type&&1===t.touches.length||n&&"touchmove"===t.type&&1===t.touches.length){const r=e._centerX,o=e._centerY,a=e._svgNode.getBoundingClientRect();let s,c;if("touchstart"===t.type||"touchmove"===t.type?(s=t.touches[0].clientX,c=t.touches[0].clientY):(s=t.clientX,c=t.clientY),!n&&(s>a.right||s<a.left||c<a.top||c>a.bottom))return;const l=e._shuttleRingPointer.getBoundingClientRect(),d=s-r-a.left,u=c-o-a.top;let h=180*Math.atan2(u,d)/Math.PI+90;h>180&&(h-=360);const p=i.shuttleRingAngle;n||s<l.right&&s>l.left&&c>l.top&&c<l.bottom?(widgetForDrag=e,i.shuttleRingDragging=!0,i.shuttleRingAngle=h):h<p?i.slower():h>p&&i.faster(),t.preventDefault()}else e===widgetForDrag&&(widgetForDrag=void 0),i.shuttleRingDragging=!1}function SvgButton(e,t){this._viewModel=t,this.svgElement=e,this._enabled=void 0,this._toggled=void 0;const i=this;this._clickFunction=function(){const e=i._viewModel.command;e.canExecute&&e()},e.addEventListener("click",this._clickFunction,!0),this._subscriptions=[subscribeAndEvaluate(t,"toggled",this.setToggled,this),subscribeAndEvaluate(t,"tooltip",this.setTooltip,this),subscribeAndEvaluate(t.command,"canExecute",this.setEnabled,this)]}function Animation(e,t){if(!defined(e))throw new DeveloperError("container is required.");if(!defined(t))throw new DeveloperError("viewModel is required.");e=getElement(e),this._viewModel=t,this._container=e,this._centerX=0,this._centerY=0,this._defsElement=void 0,this._svgNode=void 0,this._topG=void 0,this._lastHeight=void 0,this._lastWidth=void 0;const i=e.ownerDocument,n=document.createElement("style");n.textContent=".cesium-animation-rectButton .cesium-animation-buttonGlow { filter: url(#animation_blurred); }.cesium-animation-rectButton .cesium-animation-buttonMain { fill: url(#animation_buttonNormal); }.cesium-animation-buttonToggled .cesium-animation-buttonMain { fill: url(#animation_buttonToggled); }.cesium-animation-rectButton:hover .cesium-animation-buttonMain { fill: url(#animation_buttonHovered); }.cesium-animation-buttonDisabled .cesium-animation-buttonMain { fill: url(#animation_buttonDisabled); }.cesium-animation-shuttleRingG .cesium-animation-shuttleRingSwoosh { fill: url(#animation_shuttleRingSwooshGradient); }.cesium-animation-shuttleRingG:hover .cesium-animation-shuttleRingSwoosh { fill: url(#animation_shuttleRingSwooshHovered); }.cesium-animation-shuttleRingPointer { fill: url(#animation_shuttleRingPointerGradient); }.cesium-animation-shuttleRingPausePointer { fill: url(#animation_shuttleRingPointerPaused); }.cesium-animation-knobOuter { fill: url(#animation_knobOuter); }.cesium-animation-knobInner { fill: url(#animation_knobInner); }",i.head.insertBefore(n,i.head.childNodes[0]);const r=document.createElement("div");r.className="cesium-animation-theme",r.innerHTML='<div class="cesium-animation-themeNormal"></div><div class="cesium-animation-themeHover"></div><div class="cesium-animation-themeSelect"></div><div class="cesium-animation-themeDisabled"></div><div class="cesium-animation-themeKnob"></div><div class="cesium-animation-themePointer"></div><div class="cesium-animation-themeSwoosh"></div><div class="cesium-animation-themeSwooshHover"></div>',this._theme=r,this._themeNormal=r.childNodes[0],this._themeHover=r.childNodes[1],this._themeSelect=r.childNodes[2],this._themeDisabled=r.childNodes[3],this._themeKnob=r.childNodes[4],this._themePointer=r.childNodes[5],this._themeSwoosh=r.childNodes[6],this._themeSwooshHover=r.childNodes[7];const o=document.createElementNS(svgNS,"svg:svg");this._svgNode=o,o.setAttributeNS("http://www.w3.org/2000/xmlns/","xmlns:xlink",xlinkNS);const a=document.createElementNS(svgNS,"g");this._topG=a,this._realtimeSVG=new SvgButton(wingButton(3,4,"animation_pathClock"),t.playRealtimeViewModel),this._playReverseSVG=new SvgButton(rectButton(44,99,"animation_pathPlayReverse"),t.playReverseViewModel),this._playForwardSVG=new SvgButton(rectButton(124,99,"animation_pathPlay"),t.playForwardViewModel),this._pauseSVG=new SvgButton(rectButton(84,99,"animation_pathPause"),t.pauseViewModel);const s=document.createElementNS(svgNS,"g");s.appendChild(this._realtimeSVG.svgElement),s.appendChild(this._playReverseSVG.svgElement),s.appendChild(this._playForwardSVG.svgElement),s.appendChild(this._pauseSVG.svgElement);const c=svgFromObject({tagName:"circle",class:"cesium-animation-shuttleRingBack",cx:100,cy:100,r:99});this._shuttleRingBackPanel=c;const l=svgIconsById.animation_pathSwooshFX,d=svgIconsById.animation_pathPointer,u=svgFromObject({tagName:"g",class:"cesium-animation-shuttleRingSwoosh",children:[{tagName:l.tagName,transform:"translate(100,97) scale(-1,1)",id:"animation_pathSwooshFX",d:l.d},{tagName:l.tagName,transform:"translate(100,97)",id:"animation_pathSwooshFX",d:l.d},{tagName:"line",x1:100,y1:8,x2:100,y2:22}]});this._shuttleRingSwooshG=u,this._shuttleRingPointer=svgFromObject({class:"cesium-animation-shuttleRingPointer",id:"animation_pathPointer",tagName:d.tagName,d:d.d});const h=svgFromObject({tagName:"g",transform:"translate(100,100)"});this._knobOuter=svgFromObject({tagName:"circle",class:"cesium-animation-knobOuter",cx:0,cy:0,r:71});const p=svgFromObject({tagName:"circle",class:"cesium-animation-knobInner",cx:0,cy:0,r:61});this._knobDate=svgText(0,-24,""),this._knobTime=svgText(0,-7,""),this._knobStatus=svgText(0,-41,"");const f=svgFromObject({tagName:"circle",class:"cesium-animation-blank",cx:0,cy:0,r:61}),m=document.createElementNS(svgNS,"g");m.setAttribute("class","cesium-animation-shuttleRingG"),e.appendChild(r),a.appendChild(m),a.appendChild(h),a.appendChild(s),m.appendChild(c),m.appendChild(u),m.appendChild(this._shuttleRingPointer),h.appendChild(this._knobOuter),h.appendChild(p),h.appendChild(this._knobDate),h.appendChild(this._knobTime),h.appendChild(this._knobStatus),h.appendChild(f),o.appendChild(a),e.appendChild(o);const g=this;function _(e){setShuttleRingFromMouseOrTouch(g,e)}this._mouseCallback=_,c.addEventListener("mousedown",_,!0),c.addEventListener("touchstart",_,!0),u.addEventListener("mousedown",_,!0),u.addEventListener("touchstart",_,!0),i.addEventListener("mousemove",_,!0),i.addEventListener("touchmove",_,!0),i.addEventListener("mouseup",_,!0),i.addEventListener("touchend",_,!0),i.addEventListener("touchcancel",_,!0),this._shuttleRingPointer.addEventListener("mousedown",_,!0),this._shuttleRingPointer.addEventListener("touchstart",_,!0),this._knobOuter.addEventListener("mousedown",_,!0),this._knobOuter.addEventListener("touchstart",_,!0);const y=this._knobTime.childNodes[0],C=this._knobDate.childNodes[0],S=this._knobStatus.childNodes[0];let A;this._subscriptions=[subscribeAndEvaluate(t.pauseViewModel,"toggled",(function(e){A!==e&&(A=e,A?g._shuttleRingPointer.setAttribute("class","cesium-animation-shuttleRingPausePointer"):g._shuttleRingPointer.setAttribute("class","cesium-animation-shuttleRingPointer"))})),subscribeAndEvaluate(t,"shuttleRingAngle",(function(e){setShuttleRingPointer(g._shuttleRingPointer,g._knobOuter,e)})),subscribeAndEvaluate(t,"dateLabel",(function(e){C.textContent!==e&&(C.textContent=e)})),subscribeAndEvaluate(t,"timeLabel",(function(e){y.textContent!==e&&(y.textContent=e)})),subscribeAndEvaluate(t,"multiplierLabel",(function(e){S.textContent!==e&&(S.textContent=e)}))],this.applyThemeChanges(),this.resize()}SvgButton.prototype.destroy=function(){this.svgElement.removeEventListener("click",this._clickFunction,!0);const e=this._subscriptions;for(let t=0,i=e.length;t<i;t++)e[t].dispose();destroyObject(this)},SvgButton.prototype.isDestroyed=function(){return!1},SvgButton.prototype.setEnabled=function(e){if(this._enabled!==e){if(this._enabled=e,!e)return void this.svgElement.setAttribute("class","cesium-animation-buttonDisabled");if(this._toggled)return void this.svgElement.setAttribute("class","cesium-animation-rectButton cesium-animation-buttonToggled");this.svgElement.setAttribute("class","cesium-animation-rectButton")}},SvgButton.prototype.setToggled=function(e){this._toggled!==e&&(this._toggled=e,this._enabled&&(e?this.svgElement.setAttribute("class","cesium-animation-rectButton cesium-animation-buttonToggled"):this.svgElement.setAttribute("class","cesium-animation-rectButton")))},SvgButton.prototype.setTooltip=function(e){this.svgElement.getElementsByTagName("title")[0].textContent=e},Object.defineProperties(Animation.prototype,{container:{get:function(){return this._container}},viewModel:{get:function(){return this._viewModel}}}),Animation.prototype.isDestroyed=function(){return!1},Animation.prototype.destroy=function(){defined(this._observer)&&(this._observer.disconnect(),this._observer=void 0);const e=this._container.ownerDocument,t=this._mouseCallback;this._shuttleRingBackPanel.removeEventListener("mousedown",t,!0),this._shuttleRingBackPanel.removeEventListener("touchstart",t,!0),this._shuttleRingSwooshG.removeEventListener("mousedown",t,!0),this._shuttleRingSwooshG.removeEventListener("touchstart",t,!0),e.removeEventListener("mousemove",t,!0),e.removeEventListener("touchmove",t,!0),e.removeEventListener("mouseup",t,!0),e.removeEventListener("touchend",t,!0),e.removeEventListener("touchcancel",t,!0),this._shuttleRingPointer.removeEventListener("mousedown",t,!0),this._shuttleRingPointer.removeEventListener("touchstart",t,!0),this._knobOuter.removeEventListener("mousedown",t,!0),this._knobOuter.removeEventListener("touchstart",t,!0),this._container.removeChild(this._svgNode),this._container.removeChild(this._theme),this._realtimeSVG.destroy(),this._playReverseSVG.destroy(),this._playForwardSVG.destroy(),this._pauseSVG.destroy();const i=this._subscriptions;for(let n=0,r=i.length;n<r;n++)i[n].dispose();return destroyObject(this)},Animation.prototype.resize=function(){const e=this._container.clientWidth,t=this._container.clientHeight;if(e===this._lastWidth&&t===this._lastHeight)return;const i=this._svgNode,n=200,r=132;let o=e,a=t;0===e&&0===t?(o=n,a=r):0===e?(a=t,o=n*(t/r)):0===t&&(o=e,a=r*(e/n));const s=o/n,c=a/r;i.style.cssText=`width: ${o}px; height: ${a}px; position: absolute; bottom: 0; left: 0; overflow: hidden;`,i.setAttribute("width",o),i.setAttribute("height",a),i.setAttribute("viewBox",`0 0 ${o} ${a}`),this._topG.setAttribute("transform",`scale(${s},${c})`),this._centerX=Math.max(1,100*s),this._centerY=Math.max(1,100*c),this._lastHeight=e,this._lastWidth=t},Animation.prototype.applyThemeChanges=function(){const e=this._container.ownerDocument;if(!e.body.contains(this._container)){if(defined(this._observer))return;const t=this;return t._observer=new MutationObserver((function(){e.body.contains(t._container)&&(t._observer.disconnect(),t._observer=void 0,t.applyThemeChanges())})),void t._observer.observe(e,{childList:!0,subtree:!0})}const t=getElementColor(this._themeNormal),i=getElementColor(this._themeHover),n=getElementColor(this._themeSelect),r=getElementColor(this._themeDisabled),o=getElementColor(this._themeKnob),a=getElementColor(this._themePointer),s=getElementColor(this._themeSwoosh),c=getElementColor(this._themeSwooshHover),l=svgFromObject({tagName:"defs",children:[{id:"animation_buttonNormal",tagName:"linearGradient",x1:"50%",y1:"0%",x2:"50%",y2:"100%",children:[{tagName:"stop",offset:"0%","stop-color":makeColorString(t,gradientEnabledColor0)},{tagName:"stop",offset:"12%","stop-color":makeColorString(t,gradientEnabledColor1)},{tagName:"stop",offset:"46%","stop-color":makeColorString(t,gradientEnabledColor2)},{tagName:"stop",offset:"81%","stop-color":makeColorString(t,gradientEnabledColor3)}]},{id:"animation_buttonHovered",tagName:"linearGradient",x1:"50%",y1:"0%",x2:"50%",y2:"100%",children:[{tagName:"stop",offset:"0%","stop-color":makeColorString(i,gradientEnabledColor0)},{tagName:"stop",offset:"12%","stop-color":makeColorString(i,gradientEnabledColor1)},{tagName:"stop",offset:"46%","stop-color":makeColorString(i,gradientEnabledColor2)},{tagName:"stop",offset:"81%","stop-color":makeColorString(i,gradientEnabledColor3)}]},{id:"animation_buttonToggled",tagName:"linearGradient",x1:"50%",y1:"0%",x2:"50%",y2:"100%",children:[{tagName:"stop",offset:"0%","stop-color":makeColorString(n,gradientEnabledColor0)},{tagName:"stop",offset:"12%","stop-color":makeColorString(n,gradientEnabledColor1)},{tagName:"stop",offset:"46%","stop-color":makeColorString(n,gradientEnabledColor2)},{tagName:"stop",offset:"81%","stop-color":makeColorString(n,gradientEnabledColor3)}]},{id:"animation_buttonDisabled",tagName:"linearGradient",x1:"50%",y1:"0%",x2:"50%",y2:"100%",children:[{tagName:"stop",offset:"0%","stop-color":makeColorString(r,gradientDisabledColor0)},{tagName:"stop",offset:"75%","stop-color":makeColorString(r,gradientDisabledColor1)}]},{id:"animation_blurred",tagName:"filter",width:"200%",height:"200%",x:"-50%",y:"-50%",children:[{tagName:"feGaussianBlur",stdDeviation:4,in:"SourceGraphic"}]},{id:"animation_shuttleRingSwooshGradient",tagName:"linearGradient",x1:"50%",y1:"0%",x2:"50%",y2:"100%",children:[{tagName:"stop",offset:"0%","stop-opacity":.2,"stop-color":s.toCssColorString()},{tagName:"stop",offset:"85%","stop-opacity":.85,"stop-color":s.toCssColorString()},{tagName:"stop",offset:"95%","stop-opacity":.05,"stop-color":s.toCssColorString()}]},{id:"animation_shuttleRingSwooshHovered",tagName:"linearGradient",x1:"50%",y1:"0%",x2:"50%",y2:"100%",children:[{tagName:"stop",offset:"0%","stop-opacity":.2,"stop-color":c.toCssColorString()},{tagName:"stop",offset:"85%","stop-opacity":.85,"stop-color":c.toCssColorString()},{tagName:"stop",offset:"95%","stop-opacity":.05,"stop-color":c.toCssColorString()}]},{id:"animation_shuttleRingPointerGradient",tagName:"linearGradient",x1:"0%",y1:"50%",x2:"100%",y2:"50%",children:[{tagName:"stop",offset:"0%","stop-color":a.toCssColorString()},{tagName:"stop",offset:"40%","stop-color":a.toCssColorString()},{tagName:"stop",offset:"60%","stop-color":makeColorString(a,gradientPointerColor)},{tagName:"stop",offset:"100%","stop-color":makeColorString(a,gradientPointerColor)}]},{id:"animation_shuttleRingPointerPaused",tagName:"linearGradient",x1:"0%",y1:"50%",x2:"100%",y2:"50%",children:[{tagName:"stop",offset:"0%","stop-color":"#CCC"},{tagName:"stop",offset:"40%","stop-color":"#CCC"},{tagName:"stop",offset:"60%","stop-color":"#555"},{tagName:"stop",offset:"100%","stop-color":"#555"}]},{id:"animation_knobOuter",tagName:"linearGradient",x1:"20%",y1:"0%",x2:"90%",y2:"100%",children:[{tagName:"stop",offset:"5%","stop-color":makeColorString(o,gradientEnabledColor0)},{tagName:"stop",offset:"60%","stop-color":makeColorString(o,gradientKnobColor)},{tagName:"stop",offset:"85%","stop-color":makeColorString(o,gradientEnabledColor1)}]},{id:"animation_knobInner",tagName:"linearGradient",x1:"20%",y1:"0%",x2:"90%",y2:"100%",children:[{tagName:"stop",offset:"5%","stop-color":makeColorString(o,gradientKnobColor)},{tagName:"stop",offset:"60%","stop-color":makeColorString(o,gradientEnabledColor0)},{tagName:"stop",offset:"85%","stop-color":makeColorString(o,gradientEnabledColor3)}]}]});defined(this._defsElement)?this._svgNode.replaceChild(l,this._defsElement):this._svgNode.appendChild(l),this._defsElement=l};const monthNames=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],realtimeShuttleRingAngle=15,maxShuttleRingAngle=105;function numberComparator(e,t){return e-t}function getTypicalMultiplierIndex(e,t){const i=binarySearch(t,e,numberComparator);return i<0?~i:i}function angleToMultiplier(e,t){if(Math.abs(e)<=realtimeShuttleRingAngle)return e/realtimeShuttleRingAngle;const i=realtimeShuttleRingAngle,n=maxShuttleRingAngle;let r;let o;return e>0?(r=Math.log(t[t.length-1]),o=(r-0)/(n-i),Math.exp(0+o*(e-i))):(r=Math.log(-t[0]),o=(r-0)/(n-i),-Math.exp(0+o*(Math.abs(e)-i)))}function multiplierToAngle(e,t,i){if(i.clockStep===ClockStep$1.SYSTEM_CLOCK)return realtimeShuttleRingAngle;if(Math.abs(e)<=1)return e*realtimeShuttleRingAngle;const n=t[t.length-1];e>n?e=n:e<-n&&(e=-n);const r=realtimeShuttleRingAngle,o=maxShuttleRingAngle;let a;let s;return e>0?(a=Math.log(n),s=(a-0)/(o-r),(Math.log(e)-0)/s+r):(a=Math.log(-t[0]),s=(a-0)/(o-r),-((Math.log(Math.abs(e))-0)/s+r))}function AnimationViewModel(e){if(!defined(e))throw new DeveloperError("clockViewModel is required.");const t=this;this._clockViewModel=e,this._allShuttleRingTicks=[],this._dateFormatter=AnimationViewModel.defaultDateFormatter,this._timeFormatter=AnimationViewModel.defaultTimeFormatter,this.shuttleRingDragging=!1,this.snapToTicks=!1,knockout$1.track(this,["_allShuttleRingTicks","_dateFormatter","_timeFormatter","shuttleRingDragging","snapToTicks"]),this._sortedFilteredPositiveTicks=[],this.setShuttleRingTicks(AnimationViewModel.defaultTicks),this.timeLabel=void 0,knockout$1.defineProperty(this,"timeLabel",(function(){return t._timeFormatter(t._clockViewModel.currentTime,t)})),this.dateLabel=void 0,knockout$1.defineProperty(this,"dateLabel",(function(){return t._dateFormatter(t._clockViewModel.currentTime,t)})),this.multiplierLabel=void 0,knockout$1.defineProperty(this,"multiplierLabel",(function(){const e=t._clockViewModel;if(e.clockStep===ClockStep$1.SYSTEM_CLOCK)return"Today";const i=e.multiplier;return i%1==0?`${i.toFixed(0)}x`:`${i.toFixed(3).replace(/0{0,3}$/,"")}x`})),this.shuttleRingAngle=void 0,knockout$1.defineProperty(this,"shuttleRingAngle",{get:function(){return multiplierToAngle(e.multiplier,t._allShuttleRingTicks,e)},set:function(e){e=Math.max(Math.min(e,maxShuttleRingAngle),-maxShuttleRingAngle);const i=t._allShuttleRingTicks,n=t._clockViewModel;if(n.clockStep=ClockStep$1.SYSTEM_CLOCK_MULTIPLIER,Math.abs(e)===maxShuttleRingAngle)return void(n.multiplier=e>0?i[i.length-1]:i[0]);let r=angleToMultiplier(e,i);if(t.snapToTicks)r=i[getTypicalMultiplierIndex(r,i)];else if(0!==r){const e=Math.abs(r);if(e>100){const t=e.toFixed(0).length-2,i=Math.pow(10,t);r=Math.round(r/i)*i|0}else e>realtimeShuttleRingAngle?r=Math.round(r):e>1?r=+r.toFixed(1):e>0&&(r=+r.toFixed(2))}n.multiplier=r}}),this._canAnimate=void 0,knockout$1.defineProperty(this,"_canAnimate",(function(){const e=t._clockViewModel,i=e.clockRange;if(t.shuttleRingDragging||i===ClockRange$1.UNBOUNDED)return!0;const n=e.multiplier,r=e.currentTime,o=e.startTime;let a=!1;if(i===ClockRange$1.LOOP_STOP)a=JulianDate.greaterThan(r,o)||r.equals(o)&&n>0;else{const t=e.stopTime;a=JulianDate.greaterThan(r,o)&&JulianDate.lessThan(r,t)||r.equals(o)&&n>0||r.equals(t)&&n<0}return a||(e.shouldAnimate=!1),a})),this._isSystemTimeAvailable=void 0,knockout$1.defineProperty(this,"_isSystemTimeAvailable",(function(){const e=t._clockViewModel;if(e.clockRange===ClockRange$1.UNBOUNDED)return!0;const i=e.systemTime;return JulianDate.greaterThanOrEquals(i,e.startTime)&&JulianDate.lessThanOrEquals(i,e.stopTime)})),this._isAnimating=void 0,knockout$1.defineProperty(this,"_isAnimating",(function(){return t._clockViewModel.shouldAnimate&&(t._canAnimate||t.shuttleRingDragging)}));const i=createCommand((function(){const e=t._clockViewModel;e.shouldAnimate?e.shouldAnimate=!1:t._canAnimate&&(e.shouldAnimate=!0)}));this._pauseViewModel=new ToggleButtonViewModel(i,{toggled:knockout$1.computed((function(){return!t._isAnimating})),tooltip:"Pause"});const n=createCommand((function(){const e=t._clockViewModel,i=e.multiplier;i>0&&(e.multiplier=-i),e.shouldAnimate=!0}));this._playReverseViewModel=new ToggleButtonViewModel(n,{toggled:knockout$1.computed((function(){return t._isAnimating&&e.multiplier<0})),tooltip:"Play Reverse"});const r=createCommand((function(){const e=t._clockViewModel,i=e.multiplier;i<0&&(e.multiplier=-i),e.shouldAnimate=!0}));this._playForwardViewModel=new ToggleButtonViewModel(r,{toggled:knockout$1.computed((function(){return t._isAnimating&&e.multiplier>0&&e.clockStep!==ClockStep$1.SYSTEM_CLOCK})),tooltip:"Play Forward"});const o=createCommand((function(){t._clockViewModel.clockStep=ClockStep$1.SYSTEM_CLOCK}),knockout$1.getObservable(this,"_isSystemTimeAvailable"));this._playRealtimeViewModel=new ToggleButtonViewModel(o,{toggled:knockout$1.computed((function(){return e.clockStep===ClockStep$1.SYSTEM_CLOCK})),tooltip:knockout$1.computed((function(){return t._isSystemTimeAvailable?"Today (real-time)":"Current time not in range"}))}),this._slower=createCommand((function(){const e=t._clockViewModel,i=t._allShuttleRingTicks,n=getTypicalMultiplierIndex(e.multiplier,i)-1;n>=0&&(e.multiplier=i[n])})),this._faster=createCommand((function(){const e=t._clockViewModel,i=t._allShuttleRingTicks,n=getTypicalMultiplierIndex(e.multiplier,i)+1;n<i.length&&(e.multiplier=i[n])}))}function BaseLayerPickerViewModel(e){const t=(e=defaultValue(e,defaultValue.EMPTY_OBJECT)).globe,i=defaultValue(e.imageryProviderViewModels,[]),n=defaultValue(e.terrainProviderViewModels,[]);if(!defined(t))throw new DeveloperError("globe is required");this._globe=t,this.imageryProviderViewModels=i.slice(0),this.terrainProviderViewModels=n.slice(0),this.dropDownVisible=!1,knockout$1.track(this,["imageryProviderViewModels","terrainProviderViewModels","dropDownVisible"]);const r=knockout$1.getObservable(this,"imageryProviderViewModels"),o=knockout$1.pureComputed((function(){const e=r(),t={};let i;for(i=0;i<e.length;i++){const n=e[i],r=n.category;defined(t[r])?t[r].push(n):t[r]=[n]}const n=Object.keys(t),o=[];for(i=0;i<n.length;i++){const e=n[i];o.push({name:e,providers:t[e]})}return o}));this._imageryProviders=o;const a=knockout$1.getObservable(this,"terrainProviderViewModels"),s=knockout$1.pureComputed((function(){const e=a(),t={};let i;for(i=0;i<e.length;i++){const n=e[i],r=n.category;defined(t[r])?t[r].push(n):t[r]=[n]}const n=Object.keys(t),r=[];for(i=0;i<n.length;i++){const e=n[i];r.push({name:e,providers:t[e]})}return r}));this._terrainProviders=s,this.buttonTooltip=void 0,knockout$1.defineProperty(this,"buttonTooltip",(function(){const e=this.selectedImagery,t=this.selectedTerrain,i=defined(e)?e.name:void 0,n=defined(t)?t.name:void 0;return defined(i)&&defined(n)?`${i}\n${n}`:defined(i)?i:n})),this.buttonImageUrl=void 0,knockout$1.defineProperty(this,"buttonImageUrl",(function(){const e=this.selectedImagery;if(defined(e))return e.iconUrl})),this.selectedImagery=void 0;const c=knockout$1.observable();this._currentImageryLayers=[],knockout$1.defineProperty(this,"selectedImagery",{get:function(){return c()},set:function(e){if(c()===e)return void(this.dropDownVisible=!1);let t;const i=this._currentImageryLayers,n=i.length,r=this._globe.imageryLayers;let o=!1;for(t=0;t<n;t++){const e=r.length;for(let n=0;n<e;n++){const e=r.get(n);if(e===i[t]){r.remove(e),o=!0;break}}}if(defined(e)){const i=e.creationCommand();if(Array.isArray(i)){const e=i.length;for(this._currentImageryLayers=[],t=e-1;t>=0;t--){const e=ImageryLayer.fromProviderAsync(i[t]);r.add(e,0),this._currentImageryLayers.push(e)}}else{this._currentImageryLayers=[];const t=ImageryLayer.fromProviderAsync(i);if(t.name=e.name,o)r.add(t,0);else{const e=r.get(0);defined(e)&&r.remove(e),r.add(t,0)}this._currentImageryLayers.push(t)}}c(e),this.dropDownVisible=!1}}),this.selectedTerrain=void 0;const l=knockout$1.observable();knockout$1.defineProperty(this,"selectedTerrain",{get:function(){return l()},set:function(e){if(l()===e)return void(this.dropDownVisible=!1);let t;defined(e)&&(t=e.creationCommand());let i=!1;const n=this._globe.terrainProviderChanged.addEventListener((()=>{i=!0,n()})),r=new Terrain(Promise.resolve(t)).readyEvent.addEventListener((e=>{i||(this._globe.depthTestAgainstTerrain=!(e instanceof EllipsoidTerrainProvider),this._globe.terrainProvider=e,r())}));l(e),this.dropDownVisible=!1}});const d=this;this._toggleDropDown=createCommand((function(){d.dropDownVisible=!d.dropDownVisible})),this.selectedImagery=defaultValue(e.selectedImageryProviderViewModel,i[0]),this.selectedTerrain=defaultValue(e.selectedTerrainProviderViewModel,n[0])}function BaseLayerPicker(e,t){if(!defined(e))throw new DeveloperError("container is required.");e=getElement(e);const i=new BaseLayerPickerViewModel(t),n=document.createElement("button");n.type="button",n.className="cesium-button cesium-toolbar-button",n.setAttribute("data-bind","attr: { title: buttonTooltip },click: toggleDropDown"),e.appendChild(n);const r=document.createElement("img");r.setAttribute("draggable","false"),r.className="cesium-baseLayerPicker-selected",r.setAttribute("data-bind","attr: { src: buttonImageUrl }, visible: !!buttonImageUrl"),n.appendChild(r);const o=document.createElement("div");o.className="cesium-baseLayerPicker-dropDown",o.setAttribute("data-bind",'css: { "cesium-baseLayerPicker-dropDown-visible" : dropDownVisible }'),e.appendChild(o);const a=document.createElement("div");a.className="cesium-baseLayerPicker-sectionTitle",a.setAttribute("data-bind","visible: imageryProviderViewModels.length > 0"),a.innerHTML="Imagery",o.appendChild(a);const s=document.createElement("div");s.className="cesium-baseLayerPicker-section",s.setAttribute("data-bind","foreach: _imageryProviders"),o.appendChild(s);const c=document.createElement("div");c.className="cesium-baseLayerPicker-category",s.appendChild(c);const l=document.createElement("div");l.className="cesium-baseLayerPicker-categoryTitle",l.setAttribute("data-bind","text: name"),c.appendChild(l);const d=document.createElement("div");d.className="cesium-baseLayerPicker-choices",d.setAttribute("data-bind","foreach: providers"),c.appendChild(d);const u=document.createElement("div");u.className="cesium-baseLayerPicker-item",u.setAttribute("data-bind",'css: { "cesium-baseLayerPicker-selectedItem" : $data === $parents[1].selectedImagery },attr: { title: tooltip },visible: creationCommand.canExecute,click: function($data) { $parents[1].selectedImagery = $data; }'),d.appendChild(u);const h=document.createElement("img");h.className="cesium-baseLayerPicker-itemIcon",h.setAttribute("data-bind","attr: { src: iconUrl }"),h.setAttribute("draggable","false"),u.appendChild(h);const p=document.createElement("div");p.className="cesium-baseLayerPicker-itemLabel",p.setAttribute("data-bind","text: name"),u.appendChild(p);const f=document.createElement("div");f.className="cesium-baseLayerPicker-sectionTitle",f.setAttribute("data-bind","visible: terrainProviderViewModels.length > 0"),f.innerHTML="Terrain",o.appendChild(f);const m=document.createElement("div");m.className="cesium-baseLayerPicker-section",m.setAttribute("data-bind","foreach: _terrainProviders"),o.appendChild(m);const g=document.createElement("div");g.className="cesium-baseLayerPicker-category",m.appendChild(g);const _=document.createElement("div");_.className="cesium-baseLayerPicker-categoryTitle",_.setAttribute("data-bind","text: name"),g.appendChild(_);const y=document.createElement("div");y.className="cesium-baseLayerPicker-choices",y.setAttribute("data-bind","foreach: providers"),g.appendChild(y);const C=document.createElement("div");C.className="cesium-baseLayerPicker-item",C.setAttribute("data-bind",'css: { "cesium-baseLayerPicker-selectedItem" : $data === $parents[1].selectedTerrain },attr: { title: tooltip },visible: creationCommand.canExecute,click: function($data) { $parents[1].selectedTerrain = $data; }'),y.appendChild(C);const S=document.createElement("img");S.className="cesium-baseLayerPicker-itemIcon",S.setAttribute("data-bind","attr: { src: iconUrl }"),S.setAttribute("draggable","false"),C.appendChild(S);const A=document.createElement("div");A.className="cesium-baseLayerPicker-itemLabel",A.setAttribute("data-bind","text: name"),C.appendChild(A),knockout$1.applyBindings(i,n),knockout$1.applyBindings(i,o),this._viewModel=i,this._container=e,this._element=n,this._dropPanel=o,this._closeDropDown=function(e){n.contains(e.target)||o.contains(e.target)||(i.dropDownVisible=!1)},FeatureDetection$1.supportsPointerEvents()?document.addEventListener("pointerdown",this._closeDropDown,!0):(document.addEventListener("mousedown",this._closeDropDown,!0),document.addEventListener("touchstart",this._closeDropDown,!0))}function ProviderViewModel(e){if(!defined(e.name))throw new DeveloperError("options.name is required.");if(!defined(e.tooltip))throw new DeveloperError("options.tooltip is required.");if(!defined(e.iconUrl))throw new DeveloperError("options.iconUrl is required.");if("function"!=typeof e.creationFunction)throw new DeveloperError("options.creationFunction is required.");let t=e.creationFunction;defined(t.canExecute)||(t=createCommand(t)),this._creationCommand=t,this.name=e.name,this.tooltip=e.tooltip,this.iconUrl=e.iconUrl,this._category=defaultValue(e.category,""),knockout$1.track(this,["name","tooltip","iconUrl"])}function createDefaultImageryProviderViewModels(){const e=[];return e.push(new ProviderViewModel({name:"Bing Maps Aerial",iconUrl:buildModuleUrl("Widgets/Images/ImageryProviders/bingAerial.png"),tooltip:"Bing Maps aerial imagery, provided by Cesium ion",category:"Cesium ion",creationFunction:function(){return createWorldImageryAsync({style:IonWorldImageryStyle$1.AERIAL})}})),e.push(new ProviderViewModel({name:"Bing Maps Aerial with Labels",iconUrl:buildModuleUrl("Widgets/Images/ImageryProviders/bingAerialLabels.png"),tooltip:"Bing Maps aerial imagery with labels, provided by Cesium ion",category:"Cesium ion",creationFunction:function(){return createWorldImageryAsync({style:IonWorldImageryStyle$1.AERIAL_WITH_LABELS})}})),e.push(new ProviderViewModel({name:"Bing Maps Roads",iconUrl:buildModuleUrl("Widgets/Images/ImageryProviders/bingRoads.png"),tooltip:"Bing Maps standard road maps, provided by Cesium ion",category:"Cesium ion",creationFunction:function(){return createWorldImageryAsync({style:IonWorldImageryStyle$1.ROAD})}})),e.push(new ProviderViewModel({name:"ArcGIS World Imagery",iconUrl:buildModuleUrl("Widgets/Images/ImageryProviders/ArcGisMapServiceWorldImagery.png"),tooltip:"ArcGIS World Imagery provides one meter or better satellite and aerial imagery in many parts of the world and lower resolution satellite imagery worldwide. The map includes 15m TerraColor imagery at small and mid-scales (~1:591M down to ~1:288k) for the world. The map features Maxar imagery at 0.3m resolution for select metropolitan areas around the world, 0.5m resolution across the United States and parts of Western Europe, and 1m resolution imagery across the rest of the world. In addition to commercial sources, the World Imagery map features high-resolution aerial photography contributed by the GIS User Community. This imagery ranges from 0.3m to 0.03m resolution (down to ~1:280 nin select communities). For more information on this map, including the terms of use, visit us online at \nhttps://www.arcgis.com/home/item.html?id=10df2279f9684e4a9f6a7f08febac2a9",category:"Other",creationFunction:function(){return ArcGisMapServerImageryProvider.fromBasemapType(ArcGisBaseMapType$1.SATELLITE,{enablePickFeatures:!1})}})),e.push(new ProviderViewModel({name:"ArcGIS World Hillshade",iconUrl:buildModuleUrl("Widgets/Images/ImageryProviders/ArcGisMapServiceWorldHillshade.png"),tooltip:"ArcGIS World Hillshade map portrays elevation as an artistic hillshade. This map is designed to be used as a backdrop for topographical, soil, hydro, landcover or other outdoor recreational maps. The map was compiled from a variety of sources from several data providers. The basemap has global coverage down to a scale of ~1:72k. In select areas of the United States and Europe, coverage is available down to ~1:9k. For more information on this map, including the terms of use, visit us online at \nhttps://www.arcgis.com/home/item.html?id=1b243539f4514b6ba35e7d995890db1d",category:"Other",creationFunction:function(){return ArcGisMapServerImageryProvider.fromBasemapType(ArcGisBaseMapType$1.HILLSHADE,{enablePickFeatures:!1})}})),e.push(new ProviderViewModel({name:"Esri World Ocean",iconUrl:buildModuleUrl("Widgets/Images/ImageryProviders/ArcGisMapServiceWorldOcean.png"),tooltip:"ArcGIS World Ocean map is designed to be used as a base map by marine GIS professionals and as a reference map by anyone interested in ocean data. The base map features marine bathymetry. Land features include inland waters and roads overlaid on land cover and shaded relief imagery. The map was compiled from a variety of best available sources from several data providers, including General Bathymetric Chart of the Oceans GEBCO_08 Grid, National Oceanic and Atmospheric Administration (NOAA), and National Geographic, Garmin, HERE, Geonames.org, and Esri, and various other contributors. The base map currently provides coverage for the world down to a scale of ~1:577k, and coverage down to 1:72k in US coastal areas, and various other areas. Coverage down to ~ 1:9k is available limited areas based on regional hydrographic survey data. The base map was designed and developed by Esri. For more information on this map, including our terms of use, visit us online at \nhttps://www.arcgis.com/home/item.html?id=1e126e7520f9466c9ca28b8f28b5e500",category:"Other",creationFunction:function(){return ArcGisMapServerImageryProvider.fromBasemapType(ArcGisBaseMapType$1.OCEANS,{enablePickFeatures:!1})}})),e.push(new ProviderViewModel({name:"OpenStreetMap",iconUrl:buildModuleUrl("Widgets/Images/ImageryProviders/openStreetMap.png"),tooltip:"OpenStreetMap (OSM) is a collaborative project to create a free editable map of the world.\nhttp://www.openstreetmap.org",category:"Other",creationFunction:function(){return new OpenStreetMapImageryProvider({url:"https://a.tile.openstreetmap.org/"})}})),e.push(new ProviderViewModel({name:"Stamen Watercolor",iconUrl:buildModuleUrl("Widgets/Images/ImageryProviders/stamenWatercolor.png"),tooltip:"Reminiscent of hand drawn maps, Stamen watercolor maps apply raster effect area washes and organic edges over a paper texture to add warm pop to any map.\nhttp://maps.stamen.com",category:"Other",creationFunction:function(){return new OpenStreetMapImageryProvider({url:"https://stamen-tiles.a.ssl.fastly.net/watercolor/",credit:"Map tiles by Stamen Design, under CC BY 3.0. Data by OpenStreetMap, under CC BY SA."})}})),e.push(new ProviderViewModel({name:"Stamen Toner",iconUrl:buildModuleUrl("Widgets/Images/ImageryProviders/stamenToner.png"),tooltip:"A high contrast black and white map.\nhttp://maps.stamen.com",category:"Other",creationFunction:function(){return new OpenStreetMapImageryProvider({url:"https://stamen-tiles.a.ssl.fastly.net/toner/",credit:"Map tiles by Stamen Design, under CC BY 3.0. Data by OpenStreetMap, under CC BY SA."})}})),e.push(new ProviderViewModel({name:"Sentinel-2",iconUrl:buildModuleUrl("Widgets/Images/ImageryProviders/sentinel-2.png"),tooltip:"Sentinel-2 cloudless by EOX IT Services GmbH (Contains modified Copernicus Sentinel data 2016 and 2017).",category:"Cesium ion",creationFunction:function(){return IonImageryProvider.fromAssetId(3954)}})),e.push(new ProviderViewModel({name:"Blue Marble",iconUrl:buildModuleUrl("Widgets/Images/ImageryProviders/blueMarble.png"),tooltip:"Blue Marble Next Generation July, 2004 imagery from NASA.",category:"Cesium ion",creationFunction:function(){return IonImageryProvider.fromAssetId(3845)}})),e.push(new ProviderViewModel({name:"Earth at night",iconUrl:buildModuleUrl("Widgets/Images/ImageryProviders/earthAtNight.png"),tooltip:"The Earth at night, also known as The Black Marble, is a 500 meter resolution global composite imagery layer released by NASA.",category:"Cesium ion",creationFunction:function(){return IonImageryProvider.fromAssetId(3812)}})),e.push(new ProviderViewModel({name:"Natural Earth II",iconUrl:buildModuleUrl("Widgets/Images/ImageryProviders/naturalEarthII.png"),tooltip:"Natural Earth II, darkened for contrast.\nhttp://www.naturalearthdata.com/",category:"Cesium ion",creationFunction:function(){return TileMapServiceImageryProvider.fromUrl(buildModuleUrl("Assets/Textures/NaturalEarthII"))}})),e}function createDefaultTerrainProviderViewModels(){const e=[];return e.push(new ProviderViewModel({name:"WGS84 Ellipsoid",iconUrl:buildModuleUrl("Widgets/Images/TerrainProviders/Ellipsoid.png"),tooltip:"WGS84 standard ellipsoid, also known as EPSG:4326",category:"Cesium ion",creationFunction:function(){return new EllipsoidTerrainProvider}})),e.push(new ProviderViewModel({name:"Cesium World Terrain",iconUrl:buildModuleUrl("Widgets/Images/TerrainProviders/CesiumWorldTerrain.png"),tooltip:"High-resolution global terrain tileset curated from several datasources and hosted by Cesium ion",category:"Cesium ion",creationFunction:function(){return createWorldTerrainAsync({requestWaterMask:!0,requestVertexNormals:!0})}})),e}function getPickTileset(e){return function(t){const i=e._scene.pick(t.position);defined(i)&&i.primitive instanceof Cesium3DTileset&&(e.tileset=i.primitive),e.pickActive=!1}}function selectTilesetOnHover(e,t){t?e._eventHandler.setInputAction((function(t){const i=e._scene.pick(t.endPosition);defined(i)&&i.primitive instanceof Cesium3DTileset&&(e.tileset=i.primitive)}),ScreenSpaceEventType$1.MOUSE_MOVE):(e._eventHandler.removeInputAction(ScreenSpaceEventType$1.MOUSE_MOVE),e.picking=e.picking)}AnimationViewModel.defaultDateFormatter=function(e,t){const i=JulianDate.toGregorianDate(e);return`${monthNames[i.month-1]} ${i.day} ${i.year}`},AnimationViewModel.defaultTicks=[.001,.002,.005,.01,.02,.05,.1,.25,.5,1,2,5,10,15,30,60,120,300,600,900,1800,3600,7200,14400,21600,43200,86400,172800,345600,604800],AnimationViewModel.defaultTimeFormatter=function(e,t){const i=JulianDate.toGregorianDate(e),n=Math.round(i.millisecond);return Math.abs(t._clockViewModel.multiplier)<1?`${i.hour.toString().padStart(2,"0")}:${i.minute.toString().padStart(2,"0")}:${i.second.toString().padStart(2,"0")}.${n.toString().padStart(3,"0")}`:`${i.hour.toString().padStart(2,"0")}:${i.minute.toString().padStart(2,"0")}:${i.second.toString().padStart(2,"0")} UTC`},AnimationViewModel.prototype.getShuttleRingTicks=function(){return this._sortedFilteredPositiveTicks.slice(0)},AnimationViewModel.prototype.setShuttleRingTicks=function(e){if(!defined(e))throw new DeveloperError("positiveTicks is required.");let t,i,n;const r={},o=this._sortedFilteredPositiveTicks;for(o.length=0,t=0,i=e.length;t<i;++t)n=e[t],r.hasOwnProperty(n)||(r[n]=!0,o.push(n));o.sort(numberComparator);const a=[];for(i=o.length,t=i-1;t>=0;--t)n=o[t],0!==n&&a.push(-n);Array.prototype.push.apply(a,o),this._allShuttleRingTicks=a},Object.defineProperties(AnimationViewModel.prototype,{slower:{get:function(){return this._slower}},faster:{get:function(){return this._faster}},clockViewModel:{get:function(){return this._clockViewModel}},pauseViewModel:{get:function(){return this._pauseViewModel}},playReverseViewModel:{get:function(){return this._playReverseViewModel}},playForwardViewModel:{get:function(){return this._playForwardViewModel}},playRealtimeViewModel:{get:function(){return this._playRealtimeViewModel}},dateFormatter:{get:function(){return this._dateFormatter},set:function(e){if("function"!=typeof e)throw new DeveloperError("dateFormatter must be a function");this._dateFormatter=e}},timeFormatter:{get:function(){return this._timeFormatter},set:function(e){if("function"!=typeof e)throw new DeveloperError("timeFormatter must be a function");this._timeFormatter=e}}}),AnimationViewModel._maxShuttleRingAngle=maxShuttleRingAngle,AnimationViewModel._realtimeShuttleRingAngle=realtimeShuttleRingAngle,Object.defineProperties(BaseLayerPickerViewModel.prototype,{toggleDropDown:{get:function(){return this._toggleDropDown}},globe:{get:function(){return this._globe}}}),Object.defineProperties(BaseLayerPicker.prototype,{container:{get:function(){return this._container}},viewModel:{get:function(){return this._viewModel}}}),BaseLayerPicker.prototype.isDestroyed=function(){return!1},BaseLayerPicker.prototype.destroy=function(){return FeatureDetection$1.supportsPointerEvents()?document.removeEventListener("pointerdown",this._closeDropDown,!0):(document.removeEventListener("mousedown",this._closeDropDown,!0),document.removeEventListener("touchstart",this._closeDropDown,!0)),knockout$1.cleanNode(this._element),knockout$1.cleanNode(this._dropPanel),this._container.removeChild(this._element),this._container.removeChild(this._dropPanel),destroyObject(this)},Object.defineProperties(ProviderViewModel.prototype,{creationCommand:{get:function(){return this._creationCommand}},category:{get:function(){return this._category}}});const stringOptions={maximumFractionDigits:3};function formatMemoryString(e){const t=e/1048576;return t<1?t.toLocaleString(void 0,stringOptions):Math.round(t).toLocaleString()}function getStatistics(e,t){if(!defined(e))return"";const i=t?e._statisticsPerPass[Cesium3DTilePass$1.PICK]:e._statisticsPerPass[Cesium3DTilePass$1.RENDER];let n='<ul class="cesium-cesiumInspector-statistics">';return n+=`<li><strong>Visited: </strong>${i.visited.toLocaleString()}</li><li><strong>Selected: </strong>${i.selected.toLocaleString()}</li><li><strong>Commands: </strong>${i.numberOfCommands.toLocaleString()}</li>`,n+="</ul>",t||(n+='<ul class="cesium-cesiumInspector-statistics">',n+=`<li><strong>Requests: </strong>${i.numberOfPendingRequests.toLocaleString()}</li><li><strong>Attempted: </strong>${i.numberOfAttemptedRequests.toLocaleString()}</li><li><strong>Processing: </strong>${i.numberOfTilesProcessing.toLocaleString()}</li><li><strong>Content Ready: </strong>${i.numberOfTilesWithContentReady.toLocaleString()}</li><li><strong>Total: </strong>${i.numberOfTilesTotal.toLocaleString()}</li>`,n+="</ul>",n+='<ul class="cesium-cesiumInspector-statistics">',n+=`<li><strong>Features Selected: </strong>${i.numberOfFeaturesSelected.toLocaleString()}</li><li><strong>Features Loaded: </strong>${i.numberOfFeaturesLoaded.toLocaleString()}</li><li><strong>Points Selected: </strong>${i.numberOfPointsSelected.toLocaleString()}</li><li><strong>Points Loaded: </strong>${i.numberOfPointsLoaded.toLocaleString()}</li><li><strong>Triangles Selected: </strong>${i.numberOfTrianglesSelected.toLocaleString()}</li>`,n+="</ul>",n+='<ul class="cesium-cesiumInspector-statistics">',n+=`<li><strong>Tiles styled: </strong>${i.numberOfTilesStyled.toLocaleString()}</li><li><strong>Features styled: </strong>${i.numberOfFeaturesStyled.toLocaleString()}</li>`,n+="</ul>",n+='<ul class="cesium-cesiumInspector-statistics">',n+=`<li><strong>Children Union Culled: </strong>${i.numberOfTilesCulledWithChildrenUnion.toLocaleString()}</li>`,n+="</ul>",n+='<ul class="cesium-cesiumInspector-statistics">',n+=`<li><strong>Geometry Memory (MB): </strong>${formatMemoryString(i.geometryByteLength)}</li><li><strong>Texture Memory (MB): </strong>${formatMemoryString(i.texturesByteLength)}</li><li><strong>Batch Table Memory (MB): </strong>${formatMemoryString(i.batchTableByteLength)}</li>`,n+="</ul>"),n}function getResourceCacheStatistics(){const e=ResourceCache.statistics;return`\n <ul class="cesium-cesiumInspector-statistics">\n <li><strong>Geometry Memory (MB): </strong>${formatMemoryString(e.geometryByteLength)}</li>\n <li><strong>Texture Memory (MB): </strong>${formatMemoryString(e.texturesByteLength)}</li>\n </ul>\n `}const colorBlendModes=[{text:"Highlight",value:Cesium3DTileColorBlendMode$1.HIGHLIGHT},{text:"Replace",value:Cesium3DTileColorBlendMode$1.REPLACE},{text:"Mix",value:Cesium3DTileColorBlendMode$1.MIX}],highlightColor=new Color(1,1,0,.4),scratchColor=new Color,oldColor=new Color;function Cesium3DTilesInspectorViewModel(e,t){Check$1.typeOf.object("scene",e),Check$1.typeOf.object("performanceContainer",t);const i=this,n=e.canvas;this._eventHandler=new ScreenSpaceEventHandler(n),this._scene=e,this._performanceContainer=t,this._canvas=n,this._performanceDisplay=new PerformanceDisplay({container:t}),this._statisticsText="",this._pickStatisticsText="",this._resourceCacheStatisticsText="",this._editorError="",this.performance=!1,this.showStatistics=!0,this.showPickStatistics=!0,this.showResourceCacheStatistics=!1,this.inspectorVisible=!0,this.tilesetVisible=!1,this.displayVisible=!1,this.updateVisible=!1,this.loggingVisible=!1,this.styleVisible=!1,this.tileDebugLabelsVisible=!1,this.optimizationVisible=!1,this.styleString="{}",this.hasEnabledWireframe=!1,this._tileset=void 0,this._feature=void 0,this._tile=void 0,knockout$1.track(this,["performance","inspectorVisible","_statisticsText","_pickStatisticsText","_resourceCacheStatisticsText","_editorError","showPickStatistics","showStatistics","showResourceCacheStatistics","tilesetVisible","displayVisible","updateVisible","loggingVisible","styleVisible","optimizationVisible","tileDebugLabelsVisible","styleString","_feature","_tile","_tileset","hasEnabledWireframe"]),this._properties=knockout$1.observable({}),this.properties=[],knockout$1.defineProperty(this,"properties",(function(){const e=[],t=i._properties();for(const i in t)t.hasOwnProperty(i)&&e.push(i);return e}));const r=knockout$1.observable();knockout$1.defineProperty(this,"dynamicScreenSpaceError",{get:function(){return r()},set:function(e){r(e),defined(i._tileset)&&(i._tileset.dynamicScreenSpaceError=e)}}),this.dynamicScreenSpaceError=!1;const o=knockout$1.observable();knockout$1.defineProperty(this,"colorBlendMode",{get:function(){return o()},set:function(e){o(e),defined(i._tileset)&&(i._tileset.colorBlendMode=e,i._scene.requestRender())}}),this.colorBlendMode=Cesium3DTileColorBlendMode$1.HIGHLIGHT;const a=knockout$1.observable(),s=knockout$1.observable();knockout$1.defineProperty(this,"picking",{get:function(){return s()},set:function(t){s(t),t?i._eventHandler.setInputAction((function(t){const n=e.pick(t.endPosition);if(n instanceof Cesium3DTileFeature?(i.feature=n,i.tile=n.content.tile):defined(n)&&defined(n.content)?(i.feature=void 0,i.tile=n.content.tile):(i.feature=void 0,i.tile=void 0),defined(i._tileset)){if(a&&defined(n)&&defined(n.content)){let r;e.pickPositionSupported&&(r=e.pickPosition(t.endPosition),defined(r)&&(i._tileset.debugPickPosition=r)),i._tileset.debugPickedTile=n.content.tile}else i._tileset.debugPickedTile=void 0;i._scene.requestRender()}}),ScreenSpaceEventType$1.MOUSE_MOVE):(i.feature=void 0,i.tile=void 0,i._eventHandler.removeInputAction(ScreenSpaceEventType$1.MOUSE_MOVE))}}),this.picking=!0;const c=knockout$1.observable();knockout$1.defineProperty(this,"colorize",{get:function(){return c()},set:function(e){c(e),defined(i._tileset)&&(i._tileset.debugColorizeTiles=e,i._scene.requestRender())}}),this.colorize=!1;const l=knockout$1.observable();knockout$1.defineProperty(this,"wireframe",{get:function(){return l()},set:function(e){l(e),defined(i._tileset)&&(i._tileset.debugWireframe=e,i._scene.requestRender())}}),this.wireframe=!1;const d=knockout$1.observable();knockout$1.defineProperty(this,"showBoundingVolumes",{get:function(){return d()},set:function(e){d(e),defined(i._tileset)&&(i._tileset.debugShowBoundingVolume=e,i._scene.requestRender())}}),this.showBoundingVolumes=!1;const u=knockout$1.observable();knockout$1.defineProperty(this,"showContentBoundingVolumes",{get:function(){return u()},set:function(e){u(e),defined(i._tileset)&&(i._tileset.debugShowContentBoundingVolume=e,i._scene.requestRender())}}),this.showContentBoundingVolumes=!1;const h=knockout$1.observable();knockout$1.defineProperty(this,"showRequestVolumes",{get:function(){return h()},set:function(e){h(e),defined(i._tileset)&&(i._tileset.debugShowViewerRequestVolume=e,i._scene.requestRender())}}),this.showRequestVolumes=!1;const p=knockout$1.observable();knockout$1.defineProperty(this,"freezeFrame",{get:function(){return p()},set:function(e){p(e),defined(i._tileset)&&(i._tileset.debugFreezeFrame=e,i._scene.debugShowFrustumPlanes=e,i._scene.requestRender())}}),this.freezeFrame=!1,knockout$1.defineProperty(this,"showOnlyPickedTileDebugLabel",{get:function(){return a()},set:function(e){a(e),defined(i._tileset)&&(i._tileset.debugPickedTileLabelOnly=e,i._scene.requestRender())}}),this.showOnlyPickedTileDebugLabel=!1;const f=knockout$1.observable();knockout$1.defineProperty(this,"showGeometricError",{get:function(){return f()},set:function(e){f(e),defined(i._tileset)&&(i._tileset.debugShowGeometricError=e,i._scene.requestRender())}}),this.showGeometricError=!1;const m=knockout$1.observable();knockout$1.defineProperty(this,"showRenderingStatistics",{get:function(){return m()},set:function(e){m(e),defined(i._tileset)&&(i._tileset.debugShowRenderingStatistics=e,i._scene.requestRender())}}),this.showRenderingStatistics=!1;const g=knockout$1.observable();knockout$1.defineProperty(this,"showMemoryUsage",{get:function(){return g()},set:function(e){g(e),defined(i._tileset)&&(i._tileset.debugShowMemoryUsage=e,i._scene.requestRender())}}),this.showMemoryUsage=!1;const _=knockout$1.observable();knockout$1.defineProperty(this,"showUrl",{get:function(){return _()},set:function(e){_(e),defined(i._tileset)&&(i._tileset.debugShowUrl=e,i._scene.requestRender())}}),this.showUrl=!1;const y=knockout$1.observable();knockout$1.defineProperty(this,"maximumScreenSpaceError",{get:function(){return y()},set:function(e){e=Number(e),isNaN(e)||(y(e),defined(i._tileset)&&(i._tileset.maximumScreenSpaceError=e))}}),this.maximumScreenSpaceError=16;const C=knockout$1.observable();knockout$1.defineProperty(this,"dynamicScreenSpaceErrorDensity",{get:function(){return C()},set:function(e){e=Number(e),isNaN(e)||(C(e),defined(i._tileset)&&(i._tileset.dynamicScreenSpaceErrorDensity=e))}}),this.dynamicScreenSpaceErrorDensity=.00278,this.dynamicScreenSpaceErrorDensitySliderValue=void 0,knockout$1.defineProperty(this,"dynamicScreenSpaceErrorDensitySliderValue",{get:function(){return Math.pow(C(),1/6)},set:function(e){C(Math.pow(e,6))}});const S=knockout$1.observable();knockout$1.defineProperty(this,"dynamicScreenSpaceErrorFactor",{get:function(){return S()},set:function(e){e=Number(e),isNaN(e)||(S(e),defined(i._tileset)&&(i._tileset.dynamicScreenSpaceErrorFactor=e))}}),this.dynamicScreenSpaceErrorFactor=4;const A=getPickTileset(this),T=knockout$1.observable();knockout$1.defineProperty(this,"pickActive",{get:function(){return T()},set:function(e){T(e),e?i._eventHandler.setInputAction(A,ScreenSpaceEventType$1.LEFT_CLICK):i._eventHandler.removeInputAction(ScreenSpaceEventType$1.LEFT_CLICK)}});const v=knockout$1.observable();knockout$1.defineProperty(this,"pointCloudShading",{get:function(){return v()},set:function(e){v(e),defined(i._tileset)&&(i._tileset.pointCloudShading.attenuation=e)}}),this.pointCloudShading=!1;const E=knockout$1.observable();knockout$1.defineProperty(this,"geometricErrorScale",{get:function(){return E()},set:function(e){e=Number(e),isNaN(e)||(E(e),defined(i._tileset)&&(i._tileset.pointCloudShading.geometricErrorScale=e))}}),this.geometricErrorScale=1;const b=knockout$1.observable();knockout$1.defineProperty(this,"maximumAttenuation",{get:function(){return b()},set:function(e){e=Number(e),isNaN(e)||(b(e),defined(i._tileset)&&(i._tileset.pointCloudShading.maximumAttenuation=0===e?void 0:e))}}),this.maximumAttenuation=0;const x=knockout$1.observable();knockout$1.defineProperty(this,"baseResolution",{get:function(){return x()},set:function(e){e=Number(e),isNaN(e)||(x(e),defined(i._tileset)&&(i._tileset.pointCloudShading.baseResolution=0===e?void 0:e))}}),this.baseResolution=0;const D=knockout$1.observable();knockout$1.defineProperty(this,"eyeDomeLighting",{get:function(){return D()},set:function(e){D(e),defined(i._tileset)&&(i._tileset.pointCloudShading.eyeDomeLighting=e)}}),this.eyeDomeLighting=!1;const P=knockout$1.observable();knockout$1.defineProperty(this,"eyeDomeLightingStrength",{get:function(){return P()},set:function(e){e=Number(e),isNaN(e)||(P(e),defined(i._tileset)&&(i._tileset.pointCloudShading.eyeDomeLightingStrength=e))}}),this.eyeDomeLightingStrength=1;const w=knockout$1.observable();knockout$1.defineProperty(this,"eyeDomeLightingRadius",{get:function(){return w()},set:function(e){e=Number(e),isNaN(e)||(w(e),defined(i._tileset)&&(i._tileset.pointCloudShading.eyeDomeLightingRadius=e))}}),this.eyeDomeLightingRadius=1,this.pickActive=!1;const I=knockout$1.observable();knockout$1.defineProperty(this,"skipLevelOfDetail",{get:function(){return I()},set:function(e){I(e),defined(i._tileset)&&(i._tileset.skipLevelOfDetail=e)}}),this.skipLevelOfDetail=!0;const M=knockout$1.observable();knockout$1.defineProperty(this,"skipScreenSpaceErrorFactor",{get:function(){return M()},set:function(e){e=Number(e),isNaN(e)||(M(e),defined(i._tileset)&&(i._tileset.skipScreenSpaceErrorFactor=e))}}),this.skipScreenSpaceErrorFactor=16;const O=knockout$1.observable();knockout$1.defineProperty(this,"baseScreenSpaceError",{get:function(){return O()},set:function(e){e=Number(e),isNaN(e)||(O(e),defined(i._tileset)&&(i._tileset.baseScreenSpaceError=e))}}),this.baseScreenSpaceError=1024;const R=knockout$1.observable();knockout$1.defineProperty(this,"skipLevels",{get:function(){return R()},set:function(e){e=Number(e),isNaN(e)||(R(e),defined(i._tileset)&&(i._tileset.skipLevels=e))}}),this.skipLevels=1;const B=knockout$1.observable();knockout$1.defineProperty(this,"immediatelyLoadDesiredLevelOfDetail",{get:function(){return B()},set:function(e){B(e),defined(i._tileset)&&(i._tileset.immediatelyLoadDesiredLevelOfDetail=e)}}),this.immediatelyLoadDesiredLevelOfDetail=!1;const L=knockout$1.observable();knockout$1.defineProperty(this,"loadSiblings",{get:function(){return L()},set:function(e){L(e),defined(i._tileset)&&(i._tileset.loadSiblings=e)}}),this.loadSiblings=!1,this._style=void 0,this._shouldStyle=!1,this._definedProperties=["properties","dynamicScreenSpaceError","colorBlendMode","picking","colorize","wireframe","showBoundingVolumes","showContentBoundingVolumes","showRequestVolumes","freezeFrame","maximumScreenSpaceError","dynamicScreenSpaceErrorDensity","baseScreenSpaceError","skipScreenSpaceErrorFactor","skipLevelOfDetail","skipLevels","immediatelyLoadDesiredLevelOfDetail","loadSiblings","dynamicScreenSpaceErrorDensitySliderValue","dynamicScreenSpaceErrorFactor","pickActive","showOnlyPickedTileDebugLabel","showGeometricError","showRenderingStatistics","showMemoryUsage","showUrl","pointCloudShading","geometricErrorScale","maximumAttenuation","baseResolution","eyeDomeLighting","eyeDomeLightingStrength","eyeDomeLightingRadius"],this._removePostRenderEvent=e.postRender.addEventListener((function(){i._update()})),defined(this._tileset)||selectTilesetOnHover(this,!0)}function hasFeatures(e){if(!defined(e))return!1;if(e.featuresLength>0)return!0;const t=e.innerContents;if(defined(t)){const e=t.length;for(let i=0;i<e;++i)if(!hasFeatures(t[i]))return!1;return!0}return!1}function Cesium3DTilesInspector(e,t){Check$1.defined("container",e),Check$1.typeOf.object("scene",t),e=getElement(e);const i=document.createElement("div"),n=document.createElement("div");n.setAttribute("data-bind","visible: performance");const r=new Cesium3DTilesInspectorViewModel(t,n);this._viewModel=r,this._container=e,this._element=i;const o=document.createElement("div");o.textContent="3D Tiles Inspector",o.className="cesium-cesiumInspector-button",o.setAttribute("data-bind","click: toggleInspector"),i.appendChild(o),i.className="cesium-cesiumInspector cesium-3DTilesInspector",i.setAttribute("data-bind",'css: { "cesium-cesiumInspector-visible" : inspectorVisible, "cesium-cesiumInspector-hidden" : !inspectorVisible}'),e.appendChild(i);const a=document.createElement("div");a.className="cesium-cesiumInspector-dropDown",i.appendChild(a);const s=InspectorShared$1.createSection,c=InspectorShared$1.createCheckbox,l=InspectorShared$1.createRangeInput,d=InspectorShared$1.createButton,u=s(a,"Tileset","tilesetVisible","toggleTileset"),h=s(a,"Display","displayVisible","toggleDisplay"),p=s(a,"Update","updateVisible","toggleUpdate"),f=s(a,"Logging","loggingVisible","toggleLogging"),m=s(a,"Tile Debug Labels","tileDebugLabelsVisible","toggleTileDebugLabels"),g=s(a,"Style","styleVisible","toggleStyle"),_=s(a,"Optimization","optimizationVisible","toggleOptimization"),y=document.createElement("div");y.className="field-group";const C=document.createElement("label");C.className="field-label",C.appendChild(document.createTextNode("Properties: "));const S=document.createElement("div");S.setAttribute("data-bind","text: properties"),y.appendChild(C),y.appendChild(S),u.appendChild(y),u.appendChild(d("Pick Tileset","togglePickTileset","pickActive")),u.appendChild(d("Trim Tiles Cache","trimTilesCache")),u.appendChild(c("Enable Picking","picking")),h.appendChild(c("Colorize","colorize"));const A=h.appendChild(c("Wireframe","wireframe","_tileset === undefined || hasEnabledWireframe")),T=document.createElement("p");T.setAttribute("data-bind","visible: _tileset !== undefined && !hasEnabledWireframe"),T.setAttribute("class","cesium-3DTilesInspector-disabledElementsInfo"),T.innerText="Set enableDebugWireframe to true in the tileset constructor to enable this option.",A.appendChild(T),h.appendChild(c("Bounding Volumes","showBoundingVolumes")),h.appendChild(c("Content Volumes","showContentBoundingVolumes")),h.appendChild(c("Request Volumes","showRequestVolumes")),h.appendChild(c("Point Cloud Shading","pointCloudShading"));const v=document.createElement("div");v.setAttribute("data-bind","visible: pointCloudShading"),v.appendChild(l("Geometric Error Scale","geometricErrorScale",0,2,.01)),v.appendChild(l("Maximum Attenuation","maximumAttenuation",0,32,1)),v.appendChild(l("Base Resolution","baseResolution",0,1,.01)),v.appendChild(c("Eye Dome Lighting (EDL)","eyeDomeLighting")),h.appendChild(v);const E=document.createElement("div");E.setAttribute("data-bind","visible: eyeDomeLighting"),E.appendChild(l("EDL Strength","eyeDomeLightingStrength",0,2,.1)),E.appendChild(l("EDL Radius","eyeDomeLightingRadius",0,4,.1)),v.appendChild(E),p.appendChild(c("Freeze Frame","freezeFrame")),p.appendChild(c("Dynamic Screen Space Error","dynamicScreenSpaceError"));const b=document.createElement("div");b.appendChild(l("Maximum Screen Space Error","maximumScreenSpaceError",0,128,1)),p.appendChild(b);const x=document.createElement("div");x.setAttribute("data-bind","visible: dynamicScreenSpaceError"),x.appendChild(l("Screen Space Error Density","dynamicScreenSpaceErrorDensitySliderValue",0,1,.005,"dynamicScreenSpaceErrorDensity")),x.appendChild(l("Screen Space Error Factor","dynamicScreenSpaceErrorFactor",1,10,.1)),p.appendChild(x),f.appendChild(c("Performance","performance")),f.appendChild(n),f.appendChild(c("Statistics","showStatistics"));const D=document.createElement("div");D.className="cesium-3dTilesInspector-statistics",D.setAttribute("data-bind","html: statisticsText, visible: showStatistics"),f.appendChild(D),f.appendChild(c("Pick Statistics","showPickStatistics"));const P=document.createElement("div");P.className="cesium-3dTilesInspector-statistics",P.setAttribute("data-bind","html: pickStatisticsText, visible: showPickStatistics"),f.appendChild(P),f.appendChild(c("Resource Cache Statistics","showResourceCacheStatistics"));const w=document.createElement("div");w.className="cesium-3dTilesInspector-statistics",w.setAttribute("data-bind","html: resourceCacheStatisticsText, visible: showResourceCacheStatistics"),f.appendChild(w);const I=document.createElement("div");g.appendChild(I),I.appendChild(document.createTextNode("Color Blend Mode: "));const M=document.createElement("select");M.setAttribute("data-bind",'options: colorBlendModes, optionsText: "text", optionsValue: "value", value: colorBlendMode'),I.appendChild(M);const O=document.createElement("textarea");O.setAttribute("data-bind","textInput: styleString, event: { keydown: styleEditorKeyPress }"),I.className="cesium-cesiumInspector-styleEditor",I.appendChild(O);const R=d("Compile (Ctrl+Enter)","compileStyle");I.appendChild(R);const B=document.createElement("div");B.className="cesium-cesiumInspector-error",B.setAttribute("data-bind","text: editorError"),I.appendChild(B),m.appendChild(c("Show Picked Only","showOnlyPickedTileDebugLabel")),m.appendChild(c("Geometric Error","showGeometricError")),m.appendChild(c("Rendering Statistics","showRenderingStatistics")),m.appendChild(c("Memory Usage (MB)","showMemoryUsage")),m.appendChild(c("Url","showUrl")),_.appendChild(c("Skip Tile LODs","skipLevelOfDetail"));const L=document.createElement("div");L.appendChild(l("Skip SSE Factor","skipScreenSpaceErrorFactor",1,50,1)),_.appendChild(L);const N=document.createElement("div");N.appendChild(l("SSE before skipping LOD","baseScreenSpaceError",0,4096,1)),_.appendChild(N);const F=document.createElement("div");F.appendChild(l("Min. levels to skip","skipLevels",0,10,1)),_.appendChild(F),_.appendChild(c("Load only tiles that meet the max SSE.","immediatelyLoadDesiredLevelOfDetail")),_.appendChild(c("Load siblings of visible tiles","loadSiblings")),knockout$1.applyBindings(r,i)}function frustumStatisticsToString(e){let t;if(defined(e)){t="Command Statistics";const i=e.commandsInFrustums;for(const e in i)if(i.hasOwnProperty(e)){let n,r=parseInt(e,10);if(7===r)n="1, 2 and 3";else{const e=[];for(let t=2;t>=0;t--){const i=Math.pow(2,t);r>=i&&(e.push(t+1),r-=i)}n=e.reverse().join(" and ")}t+=`<br> ${i[e]} in frustum ${n}`}t+=`<br>Total: ${e.totalCommands}`}return t}function boundDepthFrustum(e,t,i){let n=Math.min(i,t);return n=Math.max(n,e),n}Object.defineProperties(Cesium3DTilesInspectorViewModel.prototype,{scene:{get:function(){return this._scene}},performanceContainer:{get:function(){return this._performanceContainer}},statisticsText:{get:function(){return this._statisticsText}},pickStatisticsText:{get:function(){return this._pickStatisticsText}},resourceCacheStatisticsText:{get:function(){return this._resourceCacheStatisticsText}},colorBlendModes:{get:function(){return colorBlendModes}},editorError:{get:function(){return this._editorError}},tileset:{get:function(){return this._tileset},set:function(e){if(this._tileset=e,this._style=void 0,this.styleString="{}",this.feature=void 0,this.tile=void 0,defined(e)){const t=this;e._readyPromise.then((function(e){t.isDestroyed()||t._properties(e.properties)}));const i=["colorize","wireframe","showBoundingVolumes","showContentBoundingVolumes","showRequestVolumes","freezeFrame","showOnlyPickedTileDebugLabel","showGeometricError","showRenderingStatistics","showMemoryUsage","showUrl"],n=i.length;for(let e=0;e<n;++e){const t=i[e];this[t]=this[t]}this.maximumScreenSpaceError=e.maximumScreenSpaceError,this.dynamicScreenSpaceError=e.dynamicScreenSpaceError,this.dynamicScreenSpaceErrorDensity=e.dynamicScreenSpaceErrorDensity,this.dynamicScreenSpaceErrorFactor=e.dynamicScreenSpaceErrorFactor,this.colorBlendMode=e.colorBlendMode,this.skipLevelOfDetail=e.skipLevelOfDetail,this.skipScreenSpaceErrorFactor=e.skipScreenSpaceErrorFactor,this.baseScreenSpaceError=e.baseScreenSpaceError,this.skipLevels=e.skipLevels,this.immediatelyLoadDesiredLevelOfDetail=e.immediatelyLoadDesiredLevelOfDetail,this.loadSiblings=e.loadSiblings,this.hasEnabledWireframe=e._enableDebugWireframe;const r=e.pointCloudShading;this.pointCloudShading=r.attenuation,this.geometricErrorScale=r.geometricErrorScale,this.maximumAttenuation=r.maximumAttenuation?r.maximumAttenuation:0,this.baseResolution=r.baseResolution?r.baseResolution:0,this.eyeDomeLighting=r.eyeDomeLighting,this.eyeDomeLightingStrength=r.eyeDomeLightingStrength,this.eyeDomeLightingRadius=r.eyeDomeLightingRadius,this._scene.requestRender()}else this._properties({});this._statisticsText=getStatistics(e,!1),this._pickStatisticsText=getStatistics(e,!0),this._resourceCacheStatisticsText=getResourceCacheStatistics(),selectTilesetOnHover(this,!1)}},feature:{get:function(){return this._feature},set:function(e){if(this._feature===e)return;const t=this._feature;defined(t)&&!t.content.isDestroyed()&&(!this.colorize&&defined(this._style)?t.color=defined(this._style.color)?this._style.color.evaluateColor(t,scratchColor):Color.WHITE:t.color=oldColor,this._scene.requestRender()),defined(e)&&(Color.clone(e.color,oldColor),e.color=highlightColor,this._scene.requestRender()),this._feature=e}},tile:{get:function(){return this._tile},set:function(e){if(this._tile===e)return;const t=this._tile;!defined(t)||t.isDestroyed()||hasFeatures(t.content)||(t.color=oldColor,this._scene.requestRender()),defined(e)&&!hasFeatures(e.content)&&(Color.clone(e.color,oldColor),e.color=highlightColor,this._scene.requestRender()),this._tile=e}}}),Cesium3DTilesInspectorViewModel.prototype.togglePickTileset=function(){this.pickActive=!this.pickActive},Cesium3DTilesInspectorViewModel.prototype.toggleInspector=function(){this.inspectorVisible=!this.inspectorVisible},Cesium3DTilesInspectorViewModel.prototype.toggleTileset=function(){this.tilesetVisible=!this.tilesetVisible},Cesium3DTilesInspectorViewModel.prototype.toggleDisplay=function(){this.displayVisible=!this.displayVisible},Cesium3DTilesInspectorViewModel.prototype.toggleUpdate=function(){this.updateVisible=!this.updateVisible},Cesium3DTilesInspectorViewModel.prototype.toggleLogging=function(){this.loggingVisible=!this.loggingVisible},Cesium3DTilesInspectorViewModel.prototype.toggleStyle=function(){this.styleVisible=!this.styleVisible},Cesium3DTilesInspectorViewModel.prototype.toggleTileDebugLabels=function(){this.tileDebugLabelsVisible=!this.tileDebugLabelsVisible},Cesium3DTilesInspectorViewModel.prototype.toggleOptimization=function(){this.optimizationVisible=!this.optimizationVisible},Cesium3DTilesInspectorViewModel.prototype.trimTilesCache=function(){defined(this._tileset)&&this._tileset.trimLoadedTiles()},Cesium3DTilesInspectorViewModel.prototype.compileStyle=function(){const e=this._tileset;if(defined(e)&&this.styleString!==JSON.stringify(e.style)){this._editorError="";try{0===this.styleString.length&&(this.styleString="{}"),this._style=new Cesium3DTileStyle(JSON.parse(this.styleString)),this._shouldStyle=!0,this._scene.requestRender()}catch(t){this._editorError=t.toString()}this.feature=this._feature,this.tile=this._tile}},Cesium3DTilesInspectorViewModel.prototype.styleEditorKeyPress=function(e,t){if(9===t.keyCode){t.preventDefault();const e=t.target,i=e.selectionStart,n=e.selectionEnd;let r=n;const o=e.value.slice(i,n).split("\n"),a=o.length;let s;if(t.shiftKey)for(s=0;s<a;++s)" "===o[s][0]&&(" "===o[s][1]?(o[s]=o[s].substr(2),r-=2):(o[s]=o[s].substr(1),r-=1));else for(s=0;s<a;++s)o[s]=` ${o[s]}`,r+=2;const c=o.join("\n");e.value=e.value.slice(0,i)+c+e.value.slice(n),e.selectionStart=i!==n?i:r,e.selectionEnd=r}else!t.ctrlKey||10!==t.keyCode&&13!==t.keyCode||this.compileStyle();return!0},Cesium3DTilesInspectorViewModel.prototype._update=function(){const e=this._tileset;if(this.performance&&this._performanceDisplay.update(),defined(e)){if(e.isDestroyed())return this.tile=void 0,this.feature=void 0,void(this.tileset=void 0);const t=e.style;this._style!==e.style&&(this._shouldStyle?(e.style=this._style,this._shouldStyle=!1):(this._style=t,this.styleString=JSON.stringify(t.style,null," ")))}this.showStatistics&&(this._statisticsText=getStatistics(e,!1),this._pickStatisticsText=getStatistics(e,!0),this._resourceCacheStatisticsText=getResourceCacheStatistics())},Cesium3DTilesInspectorViewModel.prototype.isDestroyed=function(){return!1},Cesium3DTilesInspectorViewModel.prototype.destroy=function(){this._eventHandler.destroy(),this._removePostRenderEvent();const e=this;return this._definedProperties.forEach((function(t){knockout$1.getObservable(e,t).dispose()})),destroyObject(this)},Cesium3DTilesInspectorViewModel.getStatistics=getStatistics,Object.defineProperties(Cesium3DTilesInspector.prototype,{container:{get:function(){return this._container}},viewModel:{get:function(){return this._viewModel}}}),Cesium3DTilesInspector.prototype.isDestroyed=function(){return!1},Cesium3DTilesInspector.prototype.destroy=function(){return knockout$1.cleanNode(this._element),this._container.removeChild(this._element),this.viewModel.destroy(),destroyObject(this)};const scratchPickRay=new Ray,scratchPickCartesian=new Cartesian3;function CesiumInspectorViewModel(e,t){if(!defined(e))throw new DeveloperError("scene is required");if(!defined(t))throw new DeveloperError("performanceContainer is required");const i=this,n=e.canvas,r=new ScreenSpaceEventHandler(n);this._eventHandler=r,this._scene=e,this._canvas=n,this._primitive=void 0,this._tile=void 0,this._modelMatrixPrimitive=void 0,this._performanceDisplay=void 0,this._performanceContainer=t;const o=this._scene.globe;let a;function s(e){const t=i._scene.pick({x:e.position.x,y:e.position.y});defined(t)&&(i.primitive=defined(t.collection)?t.collection:t.primitive),i._scene.requestRender(),i.pickPrimitiveActive=!1}function c(e){let t;const n=o.ellipsoid,r=i._scene.camera.getPickRay(e.position,scratchPickRay),a=o.pick(r,i._scene,scratchPickCartesian);if(defined(a)){const e=n.cartesianToCartographic(a),i=o._surface.tileProvider._tilesToRenderByTextureCount;for(let n=0;!t&&n<i.length;++n){const r=i[n];if(defined(r))for(let i=0;!t&&i<r.length;++i){const n=r[i];Rectangle.contains(n.rectangle,e)&&(t=n)}}}i.tile=t,i.pickTileActive=!1}o.depthTestAgainstTerrain=!0,this.frustums=!1,this.frustumPlanes=!1,this.performance=!1,this.shaderCacheText="",this.primitiveBoundingSphere=!1,this.primitiveReferenceFrame=!1,this.filterPrimitive=!1,this.tileBoundingSphere=!1,this.filterTile=!1,this.wireframe=!1,this.depthFrustum=1,this._numberOfFrustums=1,this.suspendUpdates=!1,this.tileCoordinates=!1,this.frustumStatisticText=!1,this.tileText="",this.hasPickedPrimitive=!1,this.hasPickedTile=!1,this.pickPrimitiveActive=!1,this.pickTileActive=!1,this.dropDownVisible=!0,this.generalVisible=!0,this.primitivesVisible=!1,this.terrainVisible=!1,this.depthFrustumText="",knockout$1.track(this,["frustums","frustumPlanes","performance","shaderCacheText","primitiveBoundingSphere","primitiveReferenceFrame","filterPrimitive","tileBoundingSphere","filterTile","wireframe","depthFrustum","suspendUpdates","tileCoordinates","frustumStatisticText","tileText","hasPickedPrimitive","hasPickedTile","pickPrimitiveActive","pickTileActive","dropDownVisible","generalVisible","primitivesVisible","terrainVisible","depthFrustumText"]),this._toggleDropDown=createCommand((function(){i.dropDownVisible=!i.dropDownVisible})),this._toggleGeneral=createCommand((function(){i.generalVisible=!i.generalVisible})),this._togglePrimitives=createCommand((function(){i.primitivesVisible=!i.primitivesVisible})),this._toggleTerrain=createCommand((function(){i.terrainVisible=!i.terrainVisible})),this._frustumsSubscription=knockout$1.getObservable(this,"frustums").subscribe((function(e){i._scene.debugShowFrustums=e,i._scene.requestRender()})),this._frustumPlanesSubscription=knockout$1.getObservable(this,"frustumPlanes").subscribe((function(e){i._scene.debugShowFrustumPlanes=e,i._scene.requestRender()})),this._performanceSubscription=knockout$1.getObservable(this,"performance").subscribe((function(e){e?i._performanceDisplay=new PerformanceDisplay({container:i._performanceContainer}):i._performanceContainer.innerHTML=""})),this._showPrimitiveBoundingSphere=createCommand((function(){return i._primitive.debugShowBoundingVolume=i.primitiveBoundingSphere,i._scene.requestRender(),!0})),this._primitiveBoundingSphereSubscription=knockout$1.getObservable(this,"primitiveBoundingSphere").subscribe((function(){i._showPrimitiveBoundingSphere()})),this._showPrimitiveReferenceFrame=createCommand((function(){if(i.primitiveReferenceFrame){const e=i._primitive.modelMatrix;i._modelMatrixPrimitive=new DebugModelMatrixPrimitive({modelMatrix:e}),i._scene.primitives.add(i._modelMatrixPrimitive)}else defined(i._modelMatrixPrimitive)&&(i._scene.primitives.remove(i._modelMatrixPrimitive),i._modelMatrixPrimitive=void 0);return i._scene.requestRender(),!0})),this._primitiveReferenceFrameSubscription=knockout$1.getObservable(this,"primitiveReferenceFrame").subscribe((function(){i._showPrimitiveReferenceFrame()})),this._doFilterPrimitive=createCommand((function(){return i.filterPrimitive?i._scene.debugCommandFilter=function(e){return!(!defined(i._modelMatrixPrimitive)||e.owner!==i._modelMatrixPrimitive._primitive)||!!defined(i._primitive)&&(e.owner===i._primitive||e.owner===i._primitive._billboardCollection||e.owner.primitive===i._primitive)}:i._scene.debugCommandFilter=void 0,!0})),this._filterPrimitiveSubscription=knockout$1.getObservable(this,"filterPrimitive").subscribe((function(){i._doFilterPrimitive(),i._scene.requestRender()})),this._wireframeSubscription=knockout$1.getObservable(this,"wireframe").subscribe((function(e){o._surface.tileProvider._debug.wireframe=e,i._scene.requestRender()})),this._depthFrustumSubscription=knockout$1.getObservable(this,"depthFrustum").subscribe((function(e){i._scene.debugShowDepthFrustum=e,i._scene.requestRender()})),this._incrementDepthFrustum=createCommand((function(){const e=i.depthFrustum+1;return i.depthFrustum=boundDepthFrustum(1,i._numberOfFrustums,e),i._scene.requestRender(),!0})),this._decrementDepthFrustum=createCommand((function(){const e=i.depthFrustum-1;return i.depthFrustum=boundDepthFrustum(1,i._numberOfFrustums,e),i._scene.requestRender(),!0})),this._suspendUpdatesSubscription=knockout$1.getObservable(this,"suspendUpdates").subscribe((function(e){o._surface._debug.suspendLodUpdate=e,e||(i.filterTile=!1)})),this._showTileCoordinates=createCommand((function(){return i.tileCoordinates&&!defined(a)?a=e.imageryLayers.addImageryProvider(new TileCoordinatesImageryProvider({tilingScheme:e.terrainProvider.tilingScheme})):!i.tileCoordinates&&defined(a)&&(e.imageryLayers.remove(a),a=void 0),!0})),this._tileCoordinatesSubscription=knockout$1.getObservable(this,"tileCoordinates").subscribe((function(){i._showTileCoordinates(),i._scene.requestRender()})),this._tileBoundingSphereSubscription=knockout$1.getObservable(this,"tileBoundingSphere").subscribe((function(){i._showTileBoundingSphere(),i._scene.requestRender()})),this._showTileBoundingSphere=createCommand((function(){return i.tileBoundingSphere?o._surface.tileProvider._debug.boundingSphereTile=i._tile:o._surface.tileProvider._debug.boundingSphereTile=void 0,i._scene.requestRender(),!0})),this._doFilterTile=createCommand((function(){return i.filterTile?(i.suspendUpdates=!0,o._surface._tilesToRender=[],defined(i._tile)&&i._tile.renderable&&o._surface._tilesToRender.push(i._tile)):i.suspendUpdates=!1,!0})),this._filterTileSubscription=knockout$1.getObservable(this,"filterTile").subscribe((function(){i.doFilterTile(),i._scene.requestRender()})),this._pickPrimitive=createCommand((function(){i.pickPrimitiveActive=!i.pickPrimitiveActive})),this._pickPrimitiveActiveSubscription=knockout$1.getObservable(this,"pickPrimitiveActive").subscribe((function(e){e?r.setInputAction(s,ScreenSpaceEventType$1.LEFT_CLICK):r.removeInputAction(ScreenSpaceEventType$1.LEFT_CLICK)})),this._pickTile=createCommand((function(){i.pickTileActive=!i.pickTileActive})),this._pickTileActiveSubscription=knockout$1.getObservable(this,"pickTileActive").subscribe((function(e){e?r.setInputAction(c,ScreenSpaceEventType$1.LEFT_CLICK):r.removeInputAction(ScreenSpaceEventType$1.LEFT_CLICK)})),this._removePostRenderEvent=e.postRender.addEventListener((function(){i._update()}))}function CesiumInspector(e,t){if(!defined(e))throw new DeveloperError("container is required.");if(!defined(t))throw new DeveloperError("scene is required.");e=getElement(e);const i=document.createElement("div"),n=new CesiumInspectorViewModel(t,i);this._viewModel=n,this._container=e;const r=document.createElement("div");this._element=r;const o=document.createElement("div");o.textContent="Cesium Inspector",o.className="cesium-cesiumInspector-button",o.setAttribute("data-bind","click: toggleDropDown"),r.appendChild(o),r.className="cesium-cesiumInspector",r.setAttribute("data-bind",'css: { "cesium-cesiumInspector-visible" : dropDownVisible, "cesium-cesiumInspector-hidden" : !dropDownVisible }'),e.appendChild(this._element);const a=document.createElement("div");a.className="cesium-cesiumInspector-dropDown",r.appendChild(a);const s=InspectorShared$1.createSection,c=InspectorShared$1.createCheckbox,l=s(a,"General","generalVisible","toggleGeneral"),d=c("Show Frustums","frustums"),u=document.createElement("div");u.className="cesium-cesiumInspector-frustumStatistics",u.setAttribute("data-bind","visible: frustums, html: frustumStatisticText"),d.appendChild(u),l.appendChild(d),l.appendChild(c("Show Frustum Planes","frustumPlanes")),l.appendChild(c("Performance Display","performance")),i.className="cesium-cesiumInspector-performanceDisplay",l.appendChild(i);const h=document.createElement("div");h.className="cesium-cesiumInspector-shaderCache",h.setAttribute("data-bind","html: shaderCacheText"),l.appendChild(h);const p=document.createElement("div");l.appendChild(p);const f=document.createElement("span");f.setAttribute("data-bind",'html: " Frustum:"'),p.appendChild(f);const m=document.createElement("span");m.setAttribute("data-bind","text: depthFrustumText"),p.appendChild(m);const g=document.createElement("input");g.type="button",g.value="-",g.className="cesium-cesiumInspector-pickButton",g.setAttribute("data-bind","click: decrementDepthFrustum"),p.appendChild(g);const _=document.createElement("input");_.type="button",_.value="+",_.className="cesium-cesiumInspector-pickButton",_.setAttribute("data-bind","click: incrementDepthFrustum"),p.appendChild(_);const y=s(a,"Primitives","primitivesVisible","togglePrimitives"),C=document.createElement("div");C.className="cesium-cesiumInspector-pickSection",y.appendChild(C);const S=document.createElement("input");S.type="button",S.value="Pick a primitive",S.className="cesium-cesiumInspector-pickButton",S.setAttribute("data-bind",'css: {"cesium-cesiumInspector-pickButtonHighlight" : pickPrimitiveActive}, click: pickPrimitive');let A=document.createElement("div");A.className="cesium-cesiumInspector-center",A.appendChild(S),C.appendChild(A),C.appendChild(c("Show bounding sphere","primitiveBoundingSphere","hasPickedPrimitive")),C.appendChild(c("Show reference frame","primitiveReferenceFrame","hasPickedPrimitive")),this._primitiveOnly=c("Show only selected","filterPrimitive","hasPickedPrimitive"),C.appendChild(this._primitiveOnly);const T=s(a,"Terrain","terrainVisible","toggleTerrain"),v=document.createElement("div");v.className="cesium-cesiumInspector-pickSection",T.appendChild(v);const E=document.createElement("input");E.type="button",E.value="Pick a tile",E.className="cesium-cesiumInspector-pickButton",E.setAttribute("data-bind",'css: {"cesium-cesiumInspector-pickButtonHighlight" : pickTileActive}, click: pickTile'),A=document.createElement("div"),A.appendChild(E),A.className="cesium-cesiumInspector-center",v.appendChild(A);const b=document.createElement("div");v.appendChild(b);const x=document.createElement("input");x.type="button",x.value="Parent",x.className="cesium-cesiumInspector-pickButton",x.setAttribute("data-bind","click: selectParent");const D=document.createElement("input");D.type="button",D.value="NW",D.className="cesium-cesiumInspector-pickButton",D.setAttribute("data-bind","click: selectNW");const P=document.createElement("input");P.type="button",P.value="NE",P.className="cesium-cesiumInspector-pickButton",P.setAttribute("data-bind","click: selectNE");const w=document.createElement("input");w.type="button",w.value="SW",w.className="cesium-cesiumInspector-pickButton",w.setAttribute("data-bind","click: selectSW");const I=document.createElement("input");I.type="button",I.value="SE",I.className="cesium-cesiumInspector-pickButton",I.setAttribute("data-bind","click: selectSE");const M=document.createElement("div");M.className="cesium-cesiumInspector-tileText",b.className="cesium-cesiumInspector-frustumStatistics",b.appendChild(M),b.setAttribute("data-bind","visible: hasPickedTile"),M.setAttribute("data-bind","html: tileText");const O=document.createElement("div");O.className="cesium-cesiumInspector-relativeText",O.textContent="Select relative:",b.appendChild(O);const R=document.createElement("table"),B=document.createElement("tr"),L=document.createElement("tr"),N=document.createElement("td");N.appendChild(x);const F=document.createElement("td");F.appendChild(D);const $=document.createElement("td");$.appendChild(P),B.appendChild(N),B.appendChild(F),B.appendChild($);const V=document.createElement("td"),k=document.createElement("td");k.appendChild(w);const U=document.createElement("td");U.appendChild(I),L.appendChild(V),L.appendChild(k),L.appendChild(U),R.appendChild(B),R.appendChild(L),b.appendChild(R),v.appendChild(c("Show bounding volume","tileBoundingSphere","hasPickedTile")),v.appendChild(c("Show only selected","filterTile","hasPickedTile")),T.appendChild(c("Wireframe","wireframe")),T.appendChild(c("Suspend LOD update","suspendUpdates")),T.appendChild(c("Show tile coordinates","tileCoordinates")),knockout$1.applyBindings(n,this._element)}function FullscreenButtonViewModel(e,t){defined(t)||(t=document.body),t=getElement(t);const i=this,n=knockout$1.observable(Fullscreen$1.fullscreen),r=knockout$1.observable(Fullscreen$1.enabled),o=t.ownerDocument;this.isFullscreen=void 0,knockout$1.defineProperty(this,"isFullscreen",{get:function(){return n()}}),this.isFullscreenEnabled=void 0,knockout$1.defineProperty(this,"isFullscreenEnabled",{get:function(){return r()},set:function(e){r(e&&Fullscreen$1.enabled)}}),this.tooltip=void 0,knockout$1.defineProperty(this,"tooltip",(function(){return this.isFullscreenEnabled?n()?"Exit full screen":"Full screen":"Full screen unavailable"})),this._command=createCommand((function(){Fullscreen$1.fullscreen?Fullscreen$1.exitFullscreen():Fullscreen$1.requestFullscreen(i._fullscreenElement)}),knockout$1.getObservable(this,"isFullscreenEnabled")),this._fullscreenElement=defaultValue(getElement(e),o.body),this._callback=function(){n(Fullscreen$1.fullscreen)},o.addEventListener(Fullscreen$1.changeEventName,this._callback)}Object.defineProperties(CesiumInspectorViewModel.prototype,{scene:{get:function(){return this._scene}},performanceContainer:{get:function(){return this._performanceContainer}},toggleDropDown:{get:function(){return this._toggleDropDown}},showPrimitiveBoundingSphere:{get:function(){return this._showPrimitiveBoundingSphere}},showPrimitiveReferenceFrame:{get:function(){return this._showPrimitiveReferenceFrame}},doFilterPrimitive:{get:function(){return this._doFilterPrimitive}},incrementDepthFrustum:{get:function(){return this._incrementDepthFrustum}},decrementDepthFrustum:{get:function(){return this._decrementDepthFrustum}},showTileCoordinates:{get:function(){return this._showTileCoordinates}},showTileBoundingSphere:{get:function(){return this._showTileBoundingSphere}},doFilterTile:{get:function(){return this._doFilterTile}},toggleGeneral:{get:function(){return this._toggleGeneral}},togglePrimitives:{get:function(){return this._togglePrimitives}},toggleTerrain:{get:function(){return this._toggleTerrain}},pickPrimitive:{get:function(){return this._pickPrimitive}},pickTile:{get:function(){return this._pickTile}},selectParent:{get:function(){const e=this;return createCommand((function(){e.tile=e.tile.parent}))}},selectNW:{get:function(){const e=this;return createCommand((function(){e.tile=e.tile.northwestChild}))}},selectNE:{get:function(){const e=this;return createCommand((function(){e.tile=e.tile.northeastChild}))}},selectSW:{get:function(){const e=this;return createCommand((function(){e.tile=e.tile.southwestChild}))}},selectSE:{get:function(){const e=this;return createCommand((function(){e.tile=e.tile.southeastChild}))}},primitive:{get:function(){return this._primitive},set:function(e){const t=this._primitive;e!==t&&(this.hasPickedPrimitive=!0,defined(t)&&(t.debugShowBoundingVolume=!1),this._scene.debugCommandFilter=void 0,defined(this._modelMatrixPrimitive)&&(this._scene.primitives.remove(this._modelMatrixPrimitive),this._modelMatrixPrimitive=void 0),this._primitive=e,e.show=!1,setTimeout((function(){e.show=!0}),50),this.showPrimitiveBoundingSphere(),this.showPrimitiveReferenceFrame(),this.doFilterPrimitive())}},tile:{get:function(){return this._tile},set:function(e){if(defined(e)){this.hasPickedTile=!0;if(e!==this._tile){this.tileText=`L: ${e.level} X: ${e.x} Y: ${e.y}`,this.tileText+=`<br>SW corner: ${e.rectangle.west}, ${e.rectangle.south}`,this.tileText+=`<br>NE corner: ${e.rectangle.east}, ${e.rectangle.north}`;const t=e.data;defined(t)&&defined(t.tileBoundingRegion)?this.tileText+=`<br>Min: ${t.tileBoundingRegion.minimumHeight} Max: ${t.tileBoundingRegion.maximumHeight}`:this.tileText+="<br>(Tile is not loaded)"}this._tile=e,this.showTileBoundingSphere(),this.doFilterTile()}else this.hasPickedTile=!1,this._tile=void 0}}}),CesiumInspectorViewModel.prototype._update=function(){this.frustums&&(this.frustumStatisticText=frustumStatisticsToString(this._scene.debugFrustumStatistics));const e=this._scene.numberOfFrustums;this._numberOfFrustums=e,this.depthFrustum=boundDepthFrustum(1,e,this.depthFrustum),this.depthFrustumText=`${this.depthFrustum} of ${e}`,this.performance&&this._performanceDisplay.update(),this.primitiveReferenceFrame&&(this._modelMatrixPrimitive.modelMatrix=this._primitive.modelMatrix),this.shaderCacheText=`Cached shaders: ${this._scene.context.shaderCache.numberOfShaders}`},CesiumInspectorViewModel.prototype.isDestroyed=function(){return!1},CesiumInspectorViewModel.prototype.destroy=function(){return this._eventHandler.destroy(),this._removePostRenderEvent(),this._frustumsSubscription.dispose(),this._frustumPlanesSubscription.dispose(),this._performanceSubscription.dispose(),this._primitiveBoundingSphereSubscription.dispose(),this._primitiveReferenceFrameSubscription.dispose(),this._filterPrimitiveSubscription.dispose(),this._wireframeSubscription.dispose(),this._depthFrustumSubscription.dispose(),this._suspendUpdatesSubscription.dispose(),this._tileCoordinatesSubscription.dispose(),this._tileBoundingSphereSubscription.dispose(),this._filterTileSubscription.dispose(),this._pickPrimitiveActiveSubscription.dispose(),this._pickTileActiveSubscription.dispose(),destroyObject(this)},Object.defineProperties(CesiumInspector.prototype,{container:{get:function(){return this._container}},viewModel:{get:function(){return this._viewModel}}}),CesiumInspector.prototype.isDestroyed=function(){return!1},CesiumInspector.prototype.destroy=function(){return knockout$1.cleanNode(this._element),this._container.removeChild(this._element),this.viewModel.destroy(),destroyObject(this)},Object.defineProperties(FullscreenButtonViewModel.prototype,{fullscreenElement:{get:function(){return this._fullscreenElement},set:function(e){if(!(e instanceof Element))throw new DeveloperError("value must be a valid Element.");this._fullscreenElement=e}},command:{get:function(){return this._command}}}),FullscreenButtonViewModel.prototype.isDestroyed=function(){return!1},FullscreenButtonViewModel.prototype.destroy=function(){document.removeEventListener(Fullscreen$1.changeEventName,this._callback),destroyObject(this)};const enterFullScreenPath="M 83.96875 17.5625 L 83.96875 17.59375 L 76.65625 24.875 L 97.09375 24.96875 L 76.09375 45.96875 L 81.9375 51.8125 L 102.78125 30.9375 L 102.875 51.15625 L 110.15625 43.875 L 110.1875 17.59375 L 83.96875 17.5625 z M 44.125 17.59375 L 17.90625 17.625 L 17.9375 43.90625 L 25.21875 51.1875 L 25.3125 30.96875 L 46.15625 51.8125 L 52 45.96875 L 31 25 L 51.4375 24.90625 L 44.125 17.59375 z M 46.0625 76.03125 L 25.1875 96.875 L 25.09375 76.65625 L 17.8125 83.9375 L 17.8125 110.21875 L 44 110.25 L 51.3125 102.9375 L 30.90625 102.84375 L 51.875 81.875 L 46.0625 76.03125 z M 82 76.15625 L 76.15625 82 L 97.15625 103 L 76.71875 103.0625 L 84.03125 110.375 L 110.25 110.34375 L 110.21875 84.0625 L 102.9375 76.8125 L 102.84375 97 L 82 76.15625 z",exitFullScreenPath="M 104.34375 17.5625 L 83.5 38.4375 L 83.40625 18.21875 L 76.125 25.5 L 76.09375 51.78125 L 102.3125 51.8125 L 102.3125 51.78125 L 109.625 44.5 L 89.1875 44.40625 L 110.1875 23.40625 L 104.34375 17.5625 z M 23.75 17.59375 L 17.90625 23.4375 L 38.90625 44.4375 L 18.5 44.53125 L 25.78125 51.8125 L 52 51.78125 L 51.96875 25.53125 L 44.6875 18.25 L 44.625 38.46875 L 23.75 17.59375 z M 25.6875 76.03125 L 18.375 83.3125 L 38.78125 83.40625 L 17.8125 104.40625 L 23.625 110.25 L 44.5 89.375 L 44.59375 109.59375 L 51.875 102.3125 L 51.875 76.0625 L 25.6875 76.03125 z M 102.375 76.15625 L 76.15625 76.1875 L 76.1875 102.4375 L 83.46875 109.71875 L 83.5625 89.53125 L 104.40625 110.375 L 110.25 104.53125 L 89.25 83.53125 L 109.6875 83.46875 L 102.375 76.15625 z";function FullscreenButton(e,t){if(!defined(e))throw new DeveloperError("container is required.");const i=new FullscreenButtonViewModel(t,e=getElement(e));i._exitFullScreenPath=exitFullScreenPath,i._enterFullScreenPath=enterFullScreenPath;const n=document.createElement("button");n.type="button",n.className="cesium-button cesium-fullscreenButton",n.setAttribute("data-bind","attr: { title: tooltip },click: command,enable: isFullscreenEnabled,cesiumSvgPath: { path: isFullscreen ? _exitFullScreenPath : _enterFullScreenPath, width: 128, height: 128 }"),e.appendChild(n),knockout$1.applyBindings(i,n),this._container=e,this._viewModel=i,this._element=n}Object.defineProperties(FullscreenButton.prototype,{container:{get:function(){return this._container}},viewModel:{get:function(){return this._viewModel}}}),FullscreenButton.prototype.isDestroyed=function(){return!1},FullscreenButton.prototype.destroy=function(){return this._viewModel.destroy(),knockout$1.cleanNode(this._element),this._container.removeChild(this._element),destroyObject(this)};const DEFAULT_HEIGHT=1e3;function GeocoderViewModel(e){if(!defined(e)||!defined(e.scene))throw new DeveloperError("options.scene is required.");defined(e.geocoderServices)?this._geocoderServices=e.geocoderServices:this._geocoderServices=[new CartographicGeocoderService,new IonGeocoderService({scene:e.scene})],this._viewContainer=e.container,this._scene=e.scene,this._flightDuration=e.flightDuration,this._searchText="",this._isSearchInProgress=!1,this._wasGeocodeCancelled=!1,this._previousCredits=[],this._complete=new Event,this._suggestions=[],this._selectedSuggestion=void 0,this._showSuggestions=!0,this._handleArrowDown=handleArrowDown,this._handleArrowUp=handleArrowUp;const t=this;this._suggestionsVisible=knockout$1.pureComputed((function(){const e=knockout$1.getObservable(t,"_suggestions")().length>0,i=knockout$1.getObservable(t,"_showSuggestions")();return e&&i})),this._searchCommand=createCommand((function(e){return e=defaultValue(e,GeocodeType$1.SEARCH),t._focusTextbox=!1,defined(t._selectedSuggestion)?(t.activateSuggestion(t._selectedSuggestion),!1):(t.hideSuggestions(),t.isSearchInProgress?void cancelGeocode(t):geocode(t,t._geocoderServices,e))})),this.deselectSuggestion=function(){t._selectedSuggestion=void 0},this.handleKeyDown=function(e,t){const i="ArrowDown"===t.key||"Down"===t.key||40===t.keyCode,n="ArrowUp"===t.key||"Up"===t.key||38===t.keyCode;return(i||n)&&t.preventDefault(),!0},this.handleKeyUp=function(e,i){const n="ArrowDown"===i.key||"Down"===i.key||40===i.keyCode,r="ArrowUp"===i.key||"Up"===i.key||38===i.keyCode,o="Enter"===i.key||13===i.keyCode;return r?handleArrowUp(t):n?handleArrowDown(t):o&&t._searchCommand(),!0},this.activateSuggestion=function(e){t.hideSuggestions(),t._searchText=e.displayName;const i=e.destination;clearSuggestions(t),t.destinationFound(t,i)},this.hideSuggestions=function(){t._showSuggestions=!1,t._selectedSuggestion=void 0},this.showSuggestions=function(){t._showSuggestions=!0},this.handleMouseover=function(e,i){e!==t._selectedSuggestion&&(t._selectedSuggestion=e)},this.keepExpanded=!1,this.autoComplete=defaultValue(e.autocomplete,!0),this.destinationFound=defaultValue(e.destinationFound,GeocoderViewModel.flyToDestination),this._focusTextbox=!1,knockout$1.track(this,["_searchText","_isSearchInProgress","keepExpanded","_suggestions","_selectedSuggestion","_showSuggestions","_focusTextbox"]);const i=knockout$1.getObservable(this,"_searchText");i.extend({rateLimit:{timeout:500}}),this._suggestionSubscription=i.subscribe((function(){GeocoderViewModel._updateSearchSuggestions(t)})),this.isSearchInProgress=void 0,knockout$1.defineProperty(this,"isSearchInProgress",{get:function(){return this._isSearchInProgress}}),this.searchText=void 0,knockout$1.defineProperty(this,"searchText",{get:function(){return this.isSearchInProgress?"Searching...":this._searchText},set:function(e){if("string"!=typeof e)throw new DeveloperError("value must be a valid string.");this._searchText=e}}),this.flightDuration=void 0,knockout$1.defineProperty(this,"flightDuration",{get:function(){return this._flightDuration},set:function(e){if(defined(e)&&e<0)throw new DeveloperError("value must be positive.");this._flightDuration=e}})}function handleArrowUp(e){if(0===e._suggestions.length)return;const t=e._suggestions.indexOf(e._selectedSuggestion);if(-1===t||0===t)return void(e._selectedSuggestion=void 0);const i=t-1;e._selectedSuggestion=e._suggestions[i],GeocoderViewModel._adjustSuggestionsScroll(e,i)}function handleArrowDown(e){if(0===e._suggestions.length)return;const t=e._suggestions.length,i=(e._suggestions.indexOf(e._selectedSuggestion)+1)%t;e._selectedSuggestion=e._suggestions[i],GeocoderViewModel._adjustSuggestionsScroll(e,i)}function computeFlyToLocationForCartographic(e,t){const i=defined(t)?t.availability:void 0;return defined(i)?sampleTerrainMostDetailed(t,[e]).then((function(t){return(e=t[0]).height+=DEFAULT_HEIGHT,e})):(e.height+=DEFAULT_HEIGHT,Promise.resolve(e))}function flyToDestination(e,t){const i=e._scene,n=i.mapProjection.ellipsoid,r=i.camera,o=i.terrainProvider;let a,s=t;return t instanceof Rectangle?CesiumMath$1.equalsEpsilon(t.south,t.north,CesiumMath$1.EPSILON7)&&CesiumMath$1.equalsEpsilon(t.east,t.west,CesiumMath$1.EPSILON7)?t=Rectangle.center(t):a=computeFlyToLocationForRectangle(t,i):t=n.cartesianToCartographic(t),defined(a)||(a=computeFlyToLocationForCartographic(t,o)),a.then((function(e){s=n.cartographicToCartesian(e)})).finally((function(){r.flyTo({destination:s,complete:function(){e._complete.raiseEvent()},duration:e._flightDuration,endTransform:Matrix4.IDENTITY})}))}async function attemptGeocode(e,t,i){try{return{state:"fulfilled",value:await e.geocode(t,i),credits:e.credit}}catch(n){return{state:"rejected",reason:n}}}async function geocode(e,t,i){const n=e._searchText;if(hasOnlyWhitespace(n))return void e.showSuggestions();let r,o;for(e._isSearchInProgress=!0,e._wasGeocodeCancelled=!1,r=0;r<t.length;r++){if(e._wasGeocodeCancelled)return;if(o=await attemptGeocode(t[r],n,i),defined(o)&&"fulfilled"===o.state&&o.value.length>0)break}if(e._wasGeocodeCancelled)return;e._isSearchInProgress=!1,clearCredits(e);const a=o.value;if("fulfilled"===o.state&&defined(a)&&a.length>0){e._searchText=a[0].displayName,e.destinationFound(e,a[0].destination);defined(updateCredits(e,GeocoderService.getCreditsFromResult(a[0])))||updateCredit(e,t[r].credit)}else e._searchText=`${n} (not found)`}function updateCredit(e,t){!defined(t)||e._scene.isDestroyed()||e._scene.frameState.creditDisplay.isDestroyed()||(e._scene.frameState.creditDisplay.addStaticCredit(t),e._previousCredits.push(t))}function updateCredits(e,t){return defined(t)&&t.forEach((t=>updateCredit(e,t))),t}function clearCredits(e){e._scene.isDestroyed()||e._scene.frameState.creditDisplay.isDestroyed()||e._previousCredits.forEach((t=>{e._scene.frameState.creditDisplay.removeStaticCredit(t)})),e._previousCredits.length=0}function adjustSuggestionsScroll(e,t){const i=getElement(e._viewContainer),n=i.getElementsByClassName("search-results")[0],r=i.getElementsByTagName("li")[t];if(0===t)return void(n.scrollTop=0);const o=r.offsetTop;o+r.clientHeight>n.clientHeight?n.scrollTop=o+r.clientHeight:o<n.scrollTop&&(n.scrollTop=o)}function cancelGeocode(e){e._isSearchInProgress&&(e._isSearchInProgress=!1,e._wasGeocodeCancelled=!0)}function hasOnlyWhitespace(e){return/^\s*$/.test(e)}function clearSuggestions(e){knockout$1.getObservable(e,"_suggestions").removeAll()}async function updateSearchSuggestions(e){if(!e.autoComplete)return;const t=e._searchText;if(clearSuggestions(e),clearCredits(e),!hasOnlyWhitespace(t))for(const i of e._geocoderServices){const n=await i.geocode(t,GeocodeType$1.AUTOCOMPLETE);if(e._suggestions=e._suggestions.concat(n),n.length>0){let t=!0;n.forEach((i=>{const n=GeocoderService.getCreditsFromResult(i);t=t&&!defined(n),updateCredits(e,n)})),t&&updateCredit(e,i.credit)}if(e._suggestions.length>=5)return}}Object.defineProperties(GeocoderViewModel.prototype,{complete:{get:function(){return this._complete}},scene:{get:function(){return this._scene}},search:{get:function(){return this._searchCommand}},selectedSuggestion:{get:function(){return this._selectedSuggestion}},suggestions:{get:function(){return this._suggestions}}}),GeocoderViewModel.prototype.destroy=function(){this._suggestionSubscription.dispose()},GeocoderViewModel.flyToDestination=flyToDestination,GeocoderViewModel._updateSearchSuggestions=updateSearchSuggestions,GeocoderViewModel._adjustSuggestionsScroll=adjustSuggestionsScroll,GeocoderViewModel.prototype.isDestroyed=function(){return!1},GeocoderViewModel.prototype.destroy=function(){return clearCredits(this),destroyObject(this)};const startSearchPath="M29.772,26.433l-7.126-7.126c0.96-1.583,1.523-3.435,1.524-5.421C24.169,8.093,19.478,3.401,13.688,3.399C7.897,3.401,3.204,8.093,3.204,13.885c0,5.789,4.693,10.481,10.484,10.481c1.987,0,3.839-0.563,5.422-1.523l7.128,7.127L29.772,26.433zM7.203,13.885c0.006-3.582,2.903-6.478,6.484-6.486c3.579,0.008,6.478,2.904,6.484,6.486c-0.007,3.58-2.905,6.476-6.484,6.484C10.106,20.361,7.209,17.465,7.203,13.885z",stopSearchPath="M24.778,21.419 19.276,15.917 24.777,10.415 21.949,7.585 16.447,13.087 10.945,7.585 8.117,10.415 13.618,15.917 8.116,21.419 10.946,24.248 16.447,18.746 21.948,24.248z";function Geocoder(e){if(!defined(e)||!defined(e.container))throw new DeveloperError("options.container is required.");if(!defined(e.scene))throw new DeveloperError("options.scene is required.");const t=getElement(e.container),i=new GeocoderViewModel(e);i._startSearchPath=startSearchPath,i._stopSearchPath=stopSearchPath;const n=document.createElement("form");n.setAttribute("data-bind","submit: search");const r=document.createElement("input");r.type="search",r.className="cesium-geocoder-input",r.setAttribute("placeholder","Enter an address or landmark..."),r.setAttribute("data-bind",'textInput: searchText,disable: isSearchInProgress,event: { keyup: handleKeyUp, keydown: handleKeyDown, mouseover: deselectSuggestion },css: { "cesium-geocoder-input-wide" : keepExpanded || searchText.length > 0 },hasFocus: _focusTextbox'),this._onTextBoxFocus=function(){setTimeout((function(){r.select()}),0)},r.addEventListener("focus",this._onTextBoxFocus,!1),n.appendChild(r),this._textBox=r;const o=document.createElement("span");o.className="cesium-geocoder-searchButton",o.setAttribute("data-bind","click: search,cesiumSvgPath: { path: isSearchInProgress ? _stopSearchPath : _startSearchPath, width: 32, height: 32 }"),n.appendChild(o),t.appendChild(n);const a=document.createElement("div");a.className="search-results",a.setAttribute("data-bind","visible: _suggestionsVisible");const s=document.createElement("ul");s.setAttribute("data-bind","foreach: _suggestions");const c=document.createElement("li");s.appendChild(c),c.setAttribute("data-bind","text: $data.displayName, click: $parent.activateSuggestion, event: { mouseover: $parent.handleMouseover}, css: { active: $data === $parent._selectedSuggestion }"),a.appendChild(s),t.appendChild(a),knockout$1.applyBindings(i,n),knockout$1.applyBindings(i,a),this._container=t,this._searchSuggestionsContainer=a,this._viewModel=i,this._form=n,this._onInputBegin=function(e){let n=e.target;"function"==typeof e.composedPath&&(n=e.composedPath()[0]),t.contains(n)||(i._focusTextbox=!1,i.hideSuggestions())},this._onInputEnd=function(e){i._focusTextbox=!0,i.showSuggestions()},FeatureDetection$1.supportsPointerEvents()?(document.addEventListener("pointerdown",this._onInputBegin,!0),t.addEventListener("pointerup",this._onInputEnd,!0),t.addEventListener("pointercancel",this._onInputEnd,!0)):(document.addEventListener("mousedown",this._onInputBegin,!0),t.addEventListener("mouseup",this._onInputEnd,!0),document.addEventListener("touchstart",this._onInputBegin,!0),t.addEventListener("touchend",this._onInputEnd,!0),t.addEventListener("touchcancel",this._onInputEnd,!0))}function HomeButtonViewModel(e,t){if(!defined(e))throw new DeveloperError("scene is required.");this._scene=e,this._duration=t;const i=this;this._command=createCommand((function(){i._scene.camera.flyHome(i._duration)})),this.tooltip="View Home",knockout$1.track(this,["tooltip"])}function HomeButton(e,t,i){if(!defined(e))throw new DeveloperError("container is required.");e=getElement(e);const n=new HomeButtonViewModel(t,i);n._svgPath="M14,4l-10,8.75h20l-4.25-3.7188v-4.6562h-2.812v2.1875l-2.938-2.5625zm-7.0938,9.906v10.094h14.094v-10.094h-14.094zm2.1876,2.313h3.3122v4.25h-3.3122v-4.25zm5.8442,1.281h3.406v6.438h-3.406v-6.438z";const r=document.createElement("button");r.type="button",r.className="cesium-button cesium-toolbar-button cesium-home-button",r.setAttribute("data-bind","attr: { title: tooltip },click: command,cesiumSvgPath: { path: _svgPath, width: 28, height: 28 }"),e.appendChild(r),knockout$1.applyBindings(n,r),this._container=e,this._viewModel=n,this._element=r}Object.defineProperties(Geocoder.prototype,{container:{get:function(){return this._container}},searchSuggestionsContainer:{get:function(){return this._searchSuggestionsContainer}},viewModel:{get:function(){return this._viewModel}}}),Geocoder.prototype.isDestroyed=function(){return!1},Geocoder.prototype.destroy=function(){const e=this._container;return FeatureDetection$1.supportsPointerEvents()?(document.removeEventListener("pointerdown",this._onInputBegin,!0),e.removeEventListener("pointerup",this._onInputEnd,!0)):(document.removeEventListener("mousedown",this._onInputBegin,!0),e.removeEventListener("mouseup",this._onInputEnd,!0),document.removeEventListener("touchstart",this._onInputBegin,!0),e.removeEventListener("touchend",this._onInputEnd,!0)),this._viewModel.destroy(),knockout$1.cleanNode(this._form),knockout$1.cleanNode(this._searchSuggestionsContainer),e.removeChild(this._form),e.removeChild(this._searchSuggestionsContainer),this._textBox.removeEventListener("focus",this._onTextBoxFocus,!1),destroyObject(this)},Object.defineProperties(HomeButtonViewModel.prototype,{scene:{get:function(){return this._scene}},command:{get:function(){return this._command}},duration:{get:function(){return this._duration},set:function(e){if(defined(e)&&e<0)throw new DeveloperError("value must be positive.");this._duration=e}}}),Object.defineProperties(HomeButton.prototype,{container:{get:function(){return this._container}},viewModel:{get:function(){return this._viewModel}}}),HomeButton.prototype.isDestroyed=function(){return!1},HomeButton.prototype.destroy=function(){return knockout$1.cleanNode(this._element),this._container.removeChild(this._element),destroyObject(this)};const cameraEnabledPath="M 13.84375 7.03125 C 11.412798 7.03125 9.46875 8.975298 9.46875 11.40625 L 9.46875 11.59375 L 2.53125 7.21875 L 2.53125 24.0625 L 9.46875 19.6875 C 9.4853444 22.104033 11.423165 24.0625 13.84375 24.0625 L 25.875 24.0625 C 28.305952 24.0625 30.28125 22.087202 30.28125 19.65625 L 30.28125 11.40625 C 30.28125 8.975298 28.305952 7.03125 25.875 7.03125 L 13.84375 7.03125 z",cameraDisabledPath="M 27.34375 1.65625 L 5.28125 27.9375 L 8.09375 30.3125 L 30.15625 4.03125 L 27.34375 1.65625 z M 13.84375 7.03125 C 11.412798 7.03125 9.46875 8.975298 9.46875 11.40625 L 9.46875 11.59375 L 2.53125 7.21875 L 2.53125 24.0625 L 9.46875 19.6875 C 9.4724893 20.232036 9.5676108 20.7379 9.75 21.21875 L 21.65625 7.03125 L 13.84375 7.03125 z M 28.21875 7.71875 L 14.53125 24.0625 L 25.875 24.0625 C 28.305952 24.0625 30.28125 22.087202 30.28125 19.65625 L 30.28125 11.40625 C 30.28125 9.8371439 29.456025 8.4902779 28.21875 7.71875 z";function InfoBoxViewModel(){this._cameraClicked=new Event,this._closeClicked=new Event,this.maxHeight=500,this.enableCamera=!1,this.isCameraTracking=!1,this.showInfo=!1,this.titleText="",this.description="",knockout$1.track(this,["showInfo","titleText","description","maxHeight","enableCamera","isCameraTracking"]),this._loadingIndicatorHtml='<div class="cesium-infoBox-loadingContainer"><span class="cesium-infoBox-loading"></span></div>',this.cameraIconPath=void 0,knockout$1.defineProperty(this,"cameraIconPath",{get:function(){return!this.enableCamera||this.isCameraTracking?cameraDisabledPath:cameraEnabledPath}}),knockout$1.defineProperty(this,"_bodyless",{get:function(){return!defined(this.description)||0===this.description.length}})}function InfoBox(e){Check$1.defined("container",e),e=getElement(e);const t=document.createElement("div");t.className="cesium-infoBox",t.setAttribute("data-bind",'css: { "cesium-infoBox-visible" : showInfo, "cesium-infoBox-bodyless" : _bodyless }'),e.appendChild(t);const i=document.createElement("div");i.className="cesium-infoBox-title",i.setAttribute("data-bind","text: titleText"),t.appendChild(i);const n=document.createElement("button");n.type="button",n.className="cesium-button cesium-infoBox-camera",n.setAttribute("data-bind",'attr: { title: "Focus camera on object" },click: function () { cameraClicked.raiseEvent(this); },enable: enableCamera,cesiumSvgPath: { path: cameraIconPath, width: 32, height: 32 }'),t.appendChild(n);const r=document.createElement("button");r.type="button",r.className="cesium-infoBox-close",r.setAttribute("data-bind","click: function () { closeClicked.raiseEvent(this); }"),r.innerHTML="×",t.appendChild(r);const o=document.createElement("iframe");o.className="cesium-infoBox-iframe",o.setAttribute("sandbox","allow-same-origin allow-popups allow-forms"),o.setAttribute("data-bind","style : { maxHeight : maxHeightOffset(40) }"),o.setAttribute("allowfullscreen",!0),t.appendChild(o);const a=new InfoBoxViewModel;knockout$1.applyBindings(a,t),this._container=e,this._element=t,this._frame=o,this._viewModel=a,this._descriptionSubscription=void 0;const s=this;o.addEventListener("load",(function(){const e=o.contentDocument,i=e.createElement("link");i.href=buildModuleUrl("Widgets/InfoBox/InfoBoxDescription.css"),i.rel="stylesheet",i.type="text/css";const n=e.createElement("div");n.className="cesium-infoBox-description",e.head.appendChild(i),e.body.appendChild(n),s._descriptionSubscription=subscribeAndEvaluate(a,"description",(function(e){o.style.height="5px",n.innerHTML=e;let i=null;const r=n.firstElementChild;if(null!==r&&1===n.childNodes.length){const e=window.getComputedStyle(r);if(null!==e){const t=e["background-color"],n=Color.fromCssColorString(t);defined(n)&&0!==n.alpha&&(i=e["background-color"])}}t.style["background-color"]=i;const a=n.getBoundingClientRect().height;o.style.height=`${a}px`}))})),o.setAttribute("src","about:blank")}function NavigationHelpButtonViewModel(){this.showInstructions=!1;const e=this;this._command=createCommand((function(){e.showInstructions=!e.showInstructions})),this._showClick=createCommand((function(){e._touch=!1})),this._showTouch=createCommand((function(){e._touch=!0})),this._touch=!1,this.tooltip="Navigation Instructions",knockout$1.track(this,["tooltip","showInstructions","_touch"])}function NavigationHelpButton(e){if(!defined(e)||!defined(e.container))throw new DeveloperError("options.container is required.");const t=getElement(e.container),i=new NavigationHelpButtonViewModel,n=defaultValue(e.instructionsInitiallyVisible,!1);i.showInstructions=n,i._svgPath="M16,1.466C7.973,1.466,1.466,7.973,1.466,16c0,8.027,6.507,14.534,14.534,14.534c8.027,0,14.534-6.507,14.534-14.534C30.534,7.973,24.027,1.466,16,1.466z M17.328,24.371h-2.707v-2.596h2.707V24.371zM17.328,19.003v0.858h-2.707v-1.057c0-3.19,3.63-3.696,3.63-5.963c0-1.034-0.924-1.826-2.134-1.826c-1.254,0-2.354,0.924-2.354,0.924l-1.541-1.915c0,0,1.519-1.584,4.137-1.584c2.487,0,4.796,1.54,4.796,4.136C21.156,16.208,17.328,16.627,17.328,19.003z";const r=document.createElement("span");r.className="cesium-navigationHelpButton-wrapper",t.appendChild(r);const o=document.createElement("button");o.type="button",o.className="cesium-button cesium-toolbar-button cesium-navigation-help-button",o.setAttribute("data-bind","attr: { title: tooltip },click: command,cesiumSvgPath: { path: _svgPath, width: 32, height: 32 }"),r.appendChild(o);const a=document.createElement("div");a.className="cesium-navigation-help",a.setAttribute("data-bind",'css: { "cesium-navigation-help-visible" : showInstructions}'),r.appendChild(a);const s=document.createElement("button");s.type="button",s.className="cesium-navigation-button cesium-navigation-button-left",s.setAttribute("data-bind",'click: showClick, css: {"cesium-navigation-button-selected": !_touch, "cesium-navigation-button-unselected": _touch}');const c=document.createElement("img");c.src=buildModuleUrl("Widgets/Images/NavigationHelp/Mouse.svg"),c.className="cesium-navigation-button-icon",c.style.width="25px",c.style.height="25px",s.appendChild(c),s.appendChild(document.createTextNode("Mouse"));const l=document.createElement("button");l.type="button",l.className="cesium-navigation-button cesium-navigation-button-right",l.setAttribute("data-bind",'click: showTouch, css: {"cesium-navigation-button-selected": _touch, "cesium-navigation-button-unselected": !_touch}');const d=document.createElement("img");d.src=buildModuleUrl("Widgets/Images/NavigationHelp/Touch.svg"),d.className="cesium-navigation-button-icon",d.style.width="25px",d.style.height="25px",l.appendChild(d),l.appendChild(document.createTextNode("Touch")),a.appendChild(s),a.appendChild(l);const u=document.createElement("div");u.className="cesium-click-navigation-help cesium-navigation-help-instructions",u.setAttribute("data-bind",'css: { "cesium-click-navigation-help-visible" : !_touch}'),u.innerHTML=` <table> <tr> <td><img src="${buildModuleUrl("Widgets/Images/NavigationHelp/MouseLeft.svg")}" width="48" height="48" /></td> <td> <div class="cesium-navigation-help-pan">Pan view</div> <div class="cesium-navigation-help-details">Left click + drag</div> </td> </tr> <tr> <td><img src="${buildModuleUrl("Widgets/Images/NavigationHelp/MouseRight.svg")}" width="48" height="48" /></td> <td> <div class="cesium-navigation-help-zoom">Zoom view</div> <div class="cesium-navigation-help-details">Right click + drag, or</div> <div class="cesium-navigation-help-details">Mouse wheel scroll</div> </td> </tr> <tr> <td><img src="${buildModuleUrl("Widgets/Images/NavigationHelp/MouseMiddle.svg")}" width="48" height="48" /></td> <td> <div class="cesium-navigation-help-rotate">Rotate view</div> <div class="cesium-navigation-help-details">Middle click + drag, or</div> <div class="cesium-navigation-help-details">CTRL + Left/Right click + drag</div> </td> </tr> </table>`,a.appendChild(u);const h=document.createElement("div");h.className="cesium-touch-navigation-help cesium-navigation-help-instructions",h.setAttribute("data-bind",'css: { "cesium-touch-navigation-help-visible" : _touch}'),h.innerHTML=` <table> <tr> <td><img src="${buildModuleUrl("Widgets/Images/NavigationHelp/TouchDrag.svg")}" width="70" height="48" /></td> <td> <div class="cesium-navigation-help-pan">Pan view</div> <div class="cesium-navigation-help-details">One finger drag</div> </td> </tr> <tr> <td><img src="${buildModuleUrl("Widgets/Images/NavigationHelp/TouchZoom.svg")}" width="70" height="48" /></td> <td> <div class="cesium-navigation-help-zoom">Zoom view</div> <div class="cesium-navigation-help-details">Two finger pinch</div> </td> </tr> <tr> <td><img src="${buildModuleUrl("Widgets/Images/NavigationHelp/TouchTilt.svg")}" width="70" height="48" /></td> <td> <div class="cesium-navigation-help-rotate">Tilt view</div> <div class="cesium-navigation-help-details">Two finger drag, same direction</div> </td> </tr> <tr> <td><img src="${buildModuleUrl("Widgets/Images/NavigationHelp/TouchRotate.svg")}" width="70" height="48" /></td> <td> <div class="cesium-navigation-help-tilt">Rotate view</div> <div class="cesium-navigation-help-details">Two finger drag, opposite direction</div> </td> </tr> </table>`,a.appendChild(h),knockout$1.applyBindings(i,r),this._container=t,this._viewModel=i,this._wrapper=r,this._closeInstructions=function(e){r.contains(e.target)||(i.showInstructions=!1)},FeatureDetection$1.supportsPointerEvents()?document.addEventListener("pointerdown",this._closeInstructions,!0):(document.addEventListener("mousedown",this._closeInstructions,!0),document.addEventListener("touchstart",this._closeInstructions,!0))}function PerformanceWatchdogViewModel(e){if(!defined(e)||!defined(e.scene))throw new DeveloperError("options.scene is required.");this._scene=e.scene,this.lowFrameRateMessage=defaultValue(e.lowFrameRateMessage,"This application appears to be performing poorly on your system. Please try using a different web browser or updating your video drivers."),this.lowFrameRateMessageDismissed=!1,this.showingLowFrameRateMessage=!1,knockout$1.track(this,["lowFrameRateMessage","lowFrameRateMessageDismissed","showingLowFrameRateMessage"]);const t=this;this._dismissMessage=createCommand((function(){t.showingLowFrameRateMessage=!1,t.lowFrameRateMessageDismissed=!0}));const i=FrameRateMonitor.fromScene(e.scene);this._unsubscribeLowFrameRate=i.lowFrameRate.addEventListener((function(){t.lowFrameRateMessageDismissed||(t.showingLowFrameRateMessage=!0)})),this._unsubscribeNominalFrameRate=i.nominalFrameRate.addEventListener((function(){t.showingLowFrameRateMessage=!1}))}function PerformanceWatchdog(e){if(!defined(e)||!defined(e.container))throw new DeveloperError("options.container is required.");if(!defined(e.scene))throw new DeveloperError("options.scene is required.");const t=getElement(e.container),i=new PerformanceWatchdogViewModel(e),n=document.createElement("div");n.className="cesium-performance-watchdog-message-area",n.setAttribute("data-bind","visible: showingLowFrameRateMessage");const r=document.createElement("button");r.setAttribute("type","button"),r.className="cesium-performance-watchdog-message-dismiss",r.innerHTML="×",r.setAttribute("data-bind","click: dismissMessage"),n.appendChild(r);const o=document.createElement("div");o.className="cesium-performance-watchdog-message",o.setAttribute("data-bind","html: lowFrameRateMessage"),n.appendChild(o),t.appendChild(n),knockout$1.applyBindings(i,n),this._container=t,this._viewModel=i,this._element=n}function ProjectionPickerViewModel(e){if(!defined(e))throw new DeveloperError("scene is required.");this._scene=e,this._orthographic=e.camera.frustum instanceof OrthographicFrustum,this._flightInProgress=!1,this.dropDownVisible=!1,this.tooltipPerspective="Perspective Projection",this.tooltipOrthographic="Orthographic Projection",this.selectedTooltip=void 0,this.sceneMode=e.mode,knockout$1.track(this,["_orthographic","_flightInProgress","sceneMode","dropDownVisible","tooltipPerspective","tooltipOrthographic"]);const t=this;knockout$1.defineProperty(this,"selectedTooltip",(function(){return t._orthographic?t.tooltipOrthographic:t.tooltipPerspective})),this._toggleDropDown=createCommand((function(){t.sceneMode===SceneMode$1.SCENE2D||t._flightInProgress||(t.dropDownVisible=!t.dropDownVisible)})),this._eventHelper=new EventHelper,this._eventHelper.add(e.morphComplete,(function(e,i,n,r){t.sceneMode=n,t._orthographic=n===SceneMode$1.SCENE2D||t._scene.camera.frustum instanceof OrthographicFrustum})),this._eventHelper.add(e.preRender,(function(){t._flightInProgress=defined(e.camera._currentFlight)})),this._switchToPerspective=createCommand((function(){t.sceneMode!==SceneMode$1.SCENE2D&&(t._scene.camera.switchToPerspectiveFrustum(),t._orthographic=!1,t.dropDownVisible=!1)})),this._switchToOrthographic=createCommand((function(){t.sceneMode!==SceneMode$1.SCENE2D&&(t._scene.camera.switchToOrthographicFrustum(),t._orthographic=!0,t.dropDownVisible=!1)})),this._sceneMode=SceneMode$1}InfoBoxViewModel.prototype.maxHeightOffset=function(e){return this.maxHeight-e+"px"},Object.defineProperties(InfoBoxViewModel.prototype,{cameraClicked:{get:function(){return this._cameraClicked}},closeClicked:{get:function(){return this._closeClicked}}}),Object.defineProperties(InfoBox.prototype,{container:{get:function(){return this._container}},viewModel:{get:function(){return this._viewModel}},frame:{get:function(){return this._frame}}}),InfoBox.prototype.isDestroyed=function(){return!1},InfoBox.prototype.destroy=function(){const e=this._container;return knockout$1.cleanNode(this._element),e.removeChild(this._element),defined(this._descriptionSubscription)&&this._descriptionSubscription.dispose(),destroyObject(this)},Object.defineProperties(NavigationHelpButtonViewModel.prototype,{command:{get:function(){return this._command}},showClick:{get:function(){return this._showClick}},showTouch:{get:function(){return this._showTouch}}}),Object.defineProperties(NavigationHelpButton.prototype,{container:{get:function(){return this._container}},viewModel:{get:function(){return this._viewModel}}}),NavigationHelpButton.prototype.isDestroyed=function(){return!1},NavigationHelpButton.prototype.destroy=function(){return FeatureDetection$1.supportsPointerEvents()?document.removeEventListener("pointerdown",this._closeInstructions,!0):(document.removeEventListener("mousedown",this._closeInstructions,!0),document.removeEventListener("touchstart",this._closeInstructions,!0)),knockout$1.cleanNode(this._wrapper),this._container.removeChild(this._wrapper),destroyObject(this)},Object.defineProperties(PerformanceWatchdogViewModel.prototype,{scene:{get:function(){return this._scene}},dismissMessage:{get:function(){return this._dismissMessage}}}),PerformanceWatchdogViewModel.prototype.destroy=function(){return this._unsubscribeLowFrameRate(),this._unsubscribeNominalFrameRate(),destroyObject(this)},Object.defineProperties(PerformanceWatchdog.prototype,{container:{get:function(){return this._container}},viewModel:{get:function(){return this._viewModel}}}),PerformanceWatchdog.prototype.isDestroyed=function(){return!1},PerformanceWatchdog.prototype.destroy=function(){return this._viewModel.destroy(),knockout$1.cleanNode(this._element),this._container.removeChild(this._element),destroyObject(this)},Object.defineProperties(ProjectionPickerViewModel.prototype,{scene:{get:function(){return this._scene}},toggleDropDown:{get:function(){return this._toggleDropDown}},switchToPerspective:{get:function(){return this._switchToPerspective}},switchToOrthographic:{get:function(){return this._switchToOrthographic}},isOrthographicProjection:{get:function(){return this._orthographic}}}),ProjectionPickerViewModel.prototype.isDestroyed=function(){return!1},ProjectionPickerViewModel.prototype.destroy=function(){this._eventHelper.removeAll(),destroyObject(this)};const perspectivePath="M 28.15625,10.4375 9.125,13.21875 13.75,43.25 41.75,55.09375 50.8125,37 54.5,11.9375 z m 0.125,3 19.976451,0.394265 L 43.03125,16.875 22.6875,14.28125 z M 50.971746,15.705477 47.90625,36.03125 42.53125,46 44.84375,19.3125 z M 12.625,16.03125 l 29.15625,3.6875 -2.65625,31 L 16.4375,41.125 z",orthographicPath="m 31.560594,6.5254438 -20.75,12.4687502 0.1875,24.5625 22.28125,11.8125 19.5,-12 0.65625,-0.375 0,-0.75 0.0312,-23.21875 z m 0.0625,3.125 16.65625,9.5000002 -16.125,10.28125 -17.34375,-9.71875 z m 18.96875,11.1875002 0.15625,20.65625 -17.46875,10.59375 0.15625,-20.28125 z m -37.0625,1.25 17.21875,9.625 -0.15625,19.21875 -16.9375,-9 z";function ProjectionPicker(e,t){if(!defined(e))throw new DeveloperError("container is required.");if(!defined(t))throw new DeveloperError("scene is required.");e=getElement(e);const i=new ProjectionPickerViewModel(t);i._perspectivePath=perspectivePath,i._orthographicPath=orthographicPath;const n=document.createElement("span");n.className="cesium-projectionPicker-wrapper cesium-toolbar-button",e.appendChild(n);const r=document.createElement("button");r.type="button",r.className="cesium-button cesium-toolbar-button",r.setAttribute("data-bind",'css: { "cesium-projectionPicker-buttonPerspective": !_orthographic, "cesium-projectionPicker-buttonOrthographic": _orthographic, "cesium-button-disabled" : sceneMode === _sceneMode.SCENE2D || _flightInProgress, "cesium-projectionPicker-selected": dropDownVisible },attr: { title: selectedTooltip },click: toggleDropDown'),r.innerHTML='\x3c!-- ko cesiumSvgPath: { path: _perspectivePath, width: 64, height: 64, css: "cesium-projectionPicker-iconPerspective" } --\x3e\x3c!-- /ko --\x3e\x3c!-- ko cesiumSvgPath: { path: _orthographicPath, width: 64, height: 64, css: "cesium-projectionPicker-iconOrthographic" } --\x3e\x3c!-- /ko --\x3e',n.appendChild(r);const o=document.createElement("button");o.type="button",o.className="cesium-button cesium-toolbar-button cesium-projectionPicker-dropDown-icon",o.setAttribute("data-bind",'css: { "cesium-projectionPicker-visible" : (dropDownVisible && _orthographic), "cesium-projectionPicker-none" : !_orthographic, "cesium-projectionPicker-hidden" : !dropDownVisible },attr: { title: tooltipPerspective },click: switchToPerspective,cesiumSvgPath: { path: _perspectivePath, width: 64, height: 64 }'),n.appendChild(o);const a=document.createElement("button");a.type="button",a.className="cesium-button cesium-toolbar-button cesium-projectionPicker-dropDown-icon",a.setAttribute("data-bind",'css: { "cesium-projectionPicker-visible" : (dropDownVisible && !_orthographic), "cesium-projectionPicker-none" : _orthographic, "cesium-projectionPicker-hidden" : !dropDownVisible},attr: { title: tooltipOrthographic },click: switchToOrthographic,cesiumSvgPath: { path: _orthographicPath, width: 64, height: 64 }'),n.appendChild(a),knockout$1.applyBindings(i,n),this._viewModel=i,this._container=e,this._wrapper=n,this._closeDropDown=function(e){n.contains(e.target)||(i.dropDownVisible=!1)},FeatureDetection$1.supportsPointerEvents()?document.addEventListener("pointerdown",this._closeDropDown,!0):(document.addEventListener("mousedown",this._closeDropDown,!0),document.addEventListener("touchstart",this._closeDropDown,!0))}function SceneModePickerViewModel(e,t){if(!defined(e))throw new DeveloperError("scene is required.");this._scene=e;const i=this;this._eventHelper=new EventHelper,this._eventHelper.add(e.morphStart,(function(e,t,n,r){i.sceneMode=n,i.dropDownVisible=!1})),this._duration=defaultValue(t,2),this.sceneMode=e.mode,this.dropDownVisible=!1,this.tooltip2D="2D",this.tooltip3D="3D",this.tooltipColumbusView="Columbus View",knockout$1.track(this,["sceneMode","dropDownVisible","tooltip2D","tooltip3D","tooltipColumbusView"]),this.selectedTooltip=void 0,knockout$1.defineProperty(this,"selectedTooltip",(function(){const e=i.sceneMode;return e===SceneMode$1.SCENE2D?i.tooltip2D:e===SceneMode$1.SCENE3D?i.tooltip3D:i.tooltipColumbusView})),this._toggleDropDown=createCommand((function(){i.dropDownVisible=!i.dropDownVisible})),this._morphTo2D=createCommand((function(){e.morphTo2D(i._duration)})),this._morphTo3D=createCommand((function(){e.morphTo3D(i._duration)})),this._morphToColumbusView=createCommand((function(){e.morphToColumbusView(i._duration)})),this._sceneMode=SceneMode$1}Object.defineProperties(ProjectionPicker.prototype,{container:{get:function(){return this._container}},viewModel:{get:function(){return this._viewModel}}}),ProjectionPicker.prototype.isDestroyed=function(){return!1},ProjectionPicker.prototype.destroy=function(){return this._viewModel.destroy(),FeatureDetection$1.supportsPointerEvents()?document.removeEventListener("pointerdown",this._closeDropDown,!0):(document.removeEventListener("mousedown",this._closeDropDown,!0),document.removeEventListener("touchstart",this._closeDropDown,!0)),knockout$1.cleanNode(this._wrapper),this._container.removeChild(this._wrapper),destroyObject(this)},Object.defineProperties(SceneModePickerViewModel.prototype,{scene:{get:function(){return this._scene}},duration:{get:function(){return this._duration},set:function(e){if(e<0)throw new DeveloperError("duration value must be positive.");this._duration=e}},toggleDropDown:{get:function(){return this._toggleDropDown}},morphTo2D:{get:function(){return this._morphTo2D}},morphTo3D:{get:function(){return this._morphTo3D}},morphToColumbusView:{get:function(){return this._morphToColumbusView}}}),SceneModePickerViewModel.prototype.isDestroyed=function(){return!1},SceneModePickerViewModel.prototype.destroy=function(){this._eventHelper.removeAll(),destroyObject(this)};const globePath="m 32.401392,4.9330437 c -7.087603,0 -14.096095,2.884602 -19.10793,7.8946843 -5.0118352,5.010083 -7.9296167,11.987468 -7.9296167,19.072999 0,7.085531 2.9177815,14.097848 7.9296167,19.107931 4.837653,4.835961 11.541408,7.631372 18.374354,7.82482 0.05712,0.01231 0.454119,0.139729 0.454119,0.139729 l 0.03493,-0.104797 c 0.08246,7.84e-4 0.162033,0.03493 0.244525,0.03493 0.08304,0 0.161515,-0.03414 0.244526,-0.03493 l 0.03493,0.104797 c 0,0 0.309474,-0.129487 0.349323,-0.139729 6.867765,-0.168094 13.582903,-2.965206 18.444218,-7.82482 2.558195,-2.5573 4.551081,-5.638134 5.903547,-8.977584 1.297191,-3.202966 2.02607,-6.661489 2.02607,-10.130347 0,-6.237309 -2.366261,-12.31219 -6.322734,-17.116794 -0.0034,-0.02316 0.0049,-0.04488 0,-0.06986 -0.01733,-0.08745 -0.104529,-0.278855 -0.104797,-0.279458 -5.31e-4,-0.0012 -0.522988,-0.628147 -0.523984,-0.62878 -3.47e-4,-2.2e-4 -0.133444,-0.03532 -0.244525,-0.06987 C 51.944299,13.447603 51.751076,13.104317 51.474391,12.827728 46.462556,7.8176457 39.488996,4.9330437 32.401392,4.9330437 z m -2.130866,3.5281554 0.104797,9.6762289 c -4.111695,-0.08361 -7.109829,-0.423664 -9.257041,-0.943171 1.198093,-2.269271 2.524531,-4.124404 3.91241,-5.414496 2.167498,-2.0147811 3.950145,-2.8540169 5.239834,-3.3185619 z m 2.794579,0 c 1.280302,0.4754953 3.022186,1.3285948 5.065173,3.2486979 1.424667,1.338973 2.788862,3.303645 3.982275,5.728886 -2.29082,0.403367 -5.381258,0.621049 -8.942651,0.698645 L 33.065105,8.4611991 z m 5.728886,0.2445256 c 4.004072,1.1230822 7.793098,3.1481363 10.724195,6.0782083 0.03468,0.03466 0.07033,0.06991 0.104797,0.104797 -0.45375,0.313891 -0.923054,0.663002 -1.956205,1.082899 -0.647388,0.263114 -1.906242,0.477396 -2.829511,0.733577 -1.382296,-2.988132 -3.027146,-5.368585 -4.785716,-7.0213781 -0.422866,-0.397432 -0.835818,-0.6453247 -1.25756,-0.9781032 z m -15.33525,0.7685092 c -0.106753,0.09503 -0.207753,0.145402 -0.31439,0.244526 -1.684973,1.5662541 -3.298068,3.8232211 -4.680919,6.5672591 -0.343797,-0.14942 -1.035052,-0.273198 -1.292493,-0.419186 -0.956528,-0.542427 -1.362964,-1.022024 -1.537018,-1.292493 -0.0241,-0.03745 -0.01868,-0.0401 -0.03493,-0.06986 2.250095,-2.163342 4.948824,-3.869984 7.859752,-5.0302421 z m -9.641296,7.0912431 c 0.464973,0.571618 0.937729,1.169056 1.956205,1.746612 0.349907,0.198425 1.107143,0.335404 1.537018,0.523983 -1.20166,3.172984 -1.998037,7.051901 -2.165798,11.772162 C 14.256557,30.361384 12.934823,30.161483 12.280427,29.90959 10.644437,29.279855 9.6888882,28.674891 9.1714586,28.267775 8.6540289,27.860658 8.6474751,27.778724 8.6474751,27.778724 l -0.069864,0.03493 C 9.3100294,23.691285 11.163248,19.798527 13.817445,16.565477 z m 37.552149,0.523984 c 2.548924,3.289983 4.265057,7.202594 4.890513,11.318043 -0.650428,0.410896 -1.756876,1.001936 -3.563088,1.606882 -1.171552,0.392383 -3.163859,0.759153 -4.960377,1.117832 -0.04367,-4.752703 -0.784809,-8.591423 -1.88634,-11.807094 0.917574,-0.263678 2.170552,-0.486495 2.864443,-0.76851 1.274693,-0.518066 2.003942,-1.001558 2.654849,-1.467153 z m -31.439008,2.619917 c 2.487341,0.672766 5.775813,1.137775 10.479669,1.222628 l 0.104797,10.689263 0,0.03493 0,0.733577 c -5.435005,-0.09059 -9.512219,-0.519044 -12.610536,-1.117831 0.106127,-4.776683 0.879334,-8.55791 2.02607,-11.562569 z m 23.264866,0.31439 c 1.073459,3.067541 1.833795,6.821314 1.816476,11.702298 -3.054474,0.423245 -7.062018,0.648559 -11.702298,0.698644 l 0,-0.838373 -0.104796,-10.654331 c 4.082416,-0.0864 7.404468,-0.403886 9.990618,-0.908238 z M 8.2632205,30.922625 c 0.7558676,0.510548 1.5529563,1.013339 3.0041715,1.57195 0.937518,0.360875 2.612202,0.647642 3.91241,0.978102 0.112814,3.85566 0.703989,7.107756 1.606883,9.920754 -1.147172,-0.324262 -2.644553,-0.640648 -3.423359,-0.978102 -1.516688,-0.657177 -2.386627,-1.287332 -2.864443,-1.71168 -0.477816,-0.424347 -0.489051,-0.489051 -0.489051,-0.489051 L 9.8002387,40.319395 C 8.791691,37.621767 8.1584238,34.769583 8.1584238,31.900727 c 0,-0.330153 0.090589,-0.648169 0.1047967,-0.978102 z m 48.2763445,0.419186 c 0.0047,0.188973 0.06986,0.36991 0.06986,0.558916 0,2.938869 -0.620228,5.873558 -1.676747,8.628261 -0.07435,0.07583 -0.06552,0.07411 -0.454119,0.349323 -0.606965,0.429857 -1.631665,1.042044 -3.318562,1.676747 -1.208528,0.454713 -3.204964,0.850894 -5.135038,1.25756 0.84593,-2.765726 1.41808,-6.005357 1.606883,-9.815957 2.232369,-0.413371 4.483758,-0.840201 5.938479,-1.327425 1.410632,-0.472457 2.153108,-0.89469 2.96924,-1.327425 z m -38.530252,2.864443 c 3.208141,0.56697 7.372279,0.898588 12.575603,0.978103 l 0.174662,9.885821 c -4.392517,-0.06139 -8.106722,-0.320566 -10.863925,-0.803441 -1.051954,-2.664695 -1.692909,-6.043794 -1.88634,-10.060483 z m 26.793022,0.31439 c -0.246298,3.923551 -0.877762,7.263679 -1.816476,9.885822 -2.561957,0.361954 -5.766249,0.560708 -9.431703,0.62878 l -0.174661,-9.815957 c 4.491734,-0.04969 8.334769,-0.293032 11.42284,-0.698645 z M 12.035901,44.860585 c 0.09977,0.04523 0.105535,0.09465 0.209594,0.139729 1.337656,0.579602 3.441099,1.058072 5.589157,1.537018 1.545042,3.399208 3.548524,5.969402 5.589157,7.789888 -3.034411,-1.215537 -5.871615,-3.007978 -8.174142,-5.309699 -1.245911,-1.245475 -2.271794,-2.662961 -3.213766,-4.156936 z m 40.69605,0 c -0.941972,1.493975 -1.967855,2.911461 -3.213765,4.156936 -2.74253,2.741571 -6.244106,4.696717 -9.955686,5.868615 0.261347,-0.241079 0.507495,-0.394491 0.768509,-0.663713 1.674841,-1.727516 3.320792,-4.181056 4.645987,-7.265904 2.962447,-0.503021 5.408965,-1.122293 7.161107,-1.781544 0.284034,-0.106865 0.337297,-0.207323 0.593848,-0.31439 z m -31.404076,2.305527 c 2.645807,0.376448 5.701178,0.649995 9.466635,0.698645 l 0.139729,7.789888 c -1.38739,-0.480844 -3.316218,-1.29837 -5.659022,-3.388427 -1.388822,-1.238993 -2.743668,-3.0113 -3.947342,-5.100106 z m 20.365491,0.104797 c -1.04872,2.041937 -2.174337,3.779068 -3.353494,4.995309 -1.853177,1.911459 -3.425515,2.82679 -4.611055,3.353494 l -0.139729,-7.789887 c 3.13091,-0.05714 5.728238,-0.278725 8.104278,-0.558916 z",flatMapPath="m 2.9825053,17.550598 0,1.368113 0,26.267766 0,1.368113 1.36811,0 54.9981397,0 1.36811,0 0,-1.368113 0,-26.267766 0,-1.368113 -1.36811,0 -54.9981397,0 -1.36811,0 z m 2.73623,2.736226 10.3292497,0 0,10.466063 -10.3292497,0 0,-10.466063 z m 13.0654697,0 11.69737,0 0,10.466063 -11.69737,0 0,-10.466063 z m 14.43359,0 11.69737,0 0,10.466063 -11.69737,0 0,-10.466063 z m 14.43359,0 10.32926,0 0,10.466063 -10.32926,0 0,-10.466063 z m -41.9326497,13.202288 10.3292497,0 0,10.329252 -10.3292497,0 0,-10.329252 z m 13.0654697,0 11.69737,0 0,10.329252 -11.69737,0 0,-10.329252 z m 14.43359,0 11.69737,0 0,10.329252 -11.69737,0 0,-10.329252 z m 14.43359,0 10.32926,0 0,10.329252 -10.32926,0 0,-10.329252 z",columbusViewPath="m 14.723969,17.675598 -0.340489,0.817175 -11.1680536,26.183638 -0.817175,1.872692 2.076986,0 54.7506996,0 2.07698,0 -0.81717,-1.872692 -11.16805,-26.183638 -0.34049,-0.817175 -0.91933,0 -32.414586,0 -0.919322,0 z m 1.838643,2.723916 6.196908,0 -2.928209,10.418977 -7.729111,0 4.460412,-10.418977 z m 9.02297,0 4.903049,0 0,10.418977 -7.831258,0 2.928209,-10.418977 z m 7.626964,0 5.584031,0 2.62176,10.418977 -8.205791,0 0,-10.418977 z m 8.410081,0 5.51593,0 4.46042,10.418977 -7.38863,0 -2.58772,-10.418977 z m -30.678091,13.142892 8.103649,0 -2.89416,10.282782 -9.6018026,0 4.3923136,-10.282782 z m 10.929711,0 8.614384,0 0,10.282782 -11.508544,0 2.89416,-10.282782 z m 11.338299,0 8.852721,0 2.58772,10.282782 -11.440441,0 0,-10.282782 z m 11.678781,0 7.86531,0 4.39231,10.282782 -9.6699,0 -2.58772,-10.282782 z";function SceneModePicker(e,t,i){if(!defined(e))throw new DeveloperError("container is required.");if(!defined(t))throw new DeveloperError("scene is required.");e=getElement(e);const n=new SceneModePickerViewModel(t,i);n._globePath=globePath,n._flatMapPath=flatMapPath,n._columbusViewPath=columbusViewPath;const r=document.createElement("span");r.className="cesium-sceneModePicker-wrapper cesium-toolbar-button",e.appendChild(r);const o=document.createElement("button");o.type="button",o.className="cesium-button cesium-toolbar-button",o.setAttribute("data-bind",'css: { "cesium-sceneModePicker-button2D": sceneMode === _sceneMode.SCENE2D, "cesium-sceneModePicker-button3D": sceneMode === _sceneMode.SCENE3D, "cesium-sceneModePicker-buttonColumbusView": sceneMode === _sceneMode.COLUMBUS_VIEW, "cesium-sceneModePicker-selected": dropDownVisible },attr: { title: selectedTooltip },click: toggleDropDown'),o.innerHTML='\x3c!-- ko cesiumSvgPath: { path: _globePath, width: 64, height: 64, css: "cesium-sceneModePicker-slide-svg cesium-sceneModePicker-icon3D" } --\x3e\x3c!-- /ko --\x3e\x3c!-- ko cesiumSvgPath: { path: _flatMapPath, width: 64, height: 64, css: "cesium-sceneModePicker-slide-svg cesium-sceneModePicker-icon2D" } --\x3e\x3c!-- /ko --\x3e\x3c!-- ko cesiumSvgPath: { path: _columbusViewPath, width: 64, height: 64, css: "cesium-sceneModePicker-slide-svg cesium-sceneModePicker-iconColumbusView" } --\x3e\x3c!-- /ko --\x3e',r.appendChild(o);const a=document.createElement("button");a.type="button",a.className="cesium-button cesium-toolbar-button cesium-sceneModePicker-dropDown-icon",a.setAttribute("data-bind",'css: { "cesium-sceneModePicker-visible" : (dropDownVisible && (sceneMode !== _sceneMode.SCENE3D)) || (!dropDownVisible && (sceneMode === _sceneMode.SCENE3D)), "cesium-sceneModePicker-none" : sceneMode === _sceneMode.SCENE3D, "cesium-sceneModePicker-hidden" : !dropDownVisible },attr: { title: tooltip3D },click: morphTo3D,cesiumSvgPath: { path: _globePath, width: 64, height: 64 }'),r.appendChild(a);const s=document.createElement("button");s.type="button",s.className="cesium-button cesium-toolbar-button cesium-sceneModePicker-dropDown-icon",s.setAttribute("data-bind",'css: { "cesium-sceneModePicker-visible" : (dropDownVisible && (sceneMode !== _sceneMode.SCENE2D)), "cesium-sceneModePicker-none" : sceneMode === _sceneMode.SCENE2D, "cesium-sceneModePicker-hidden" : !dropDownVisible },attr: { title: tooltip2D },click: morphTo2D,cesiumSvgPath: { path: _flatMapPath, width: 64, height: 64 }'),r.appendChild(s);const c=document.createElement("button");c.type="button",c.className="cesium-button cesium-toolbar-button cesium-sceneModePicker-dropDown-icon",c.setAttribute("data-bind",'css: { "cesium-sceneModePicker-visible" : (dropDownVisible && (sceneMode !== _sceneMode.COLUMBUS_VIEW)) || (!dropDownVisible && (sceneMode === _sceneMode.COLUMBUS_VIEW)), "cesium-sceneModePicker-none" : sceneMode === _sceneMode.COLUMBUS_VIEW, "cesium-sceneModePicker-hidden" : !dropDownVisible},attr: { title: tooltipColumbusView },click: morphToColumbusView,cesiumSvgPath: { path: _columbusViewPath, width: 64, height: 64 }'),r.appendChild(c),knockout$1.applyBindings(n,r),this._viewModel=n,this._container=e,this._wrapper=r,this._closeDropDown=function(e){r.contains(e.target)||(n.dropDownVisible=!1)},FeatureDetection$1.supportsPointerEvents()?document.addEventListener("pointerdown",this._closeDropDown,!0):(document.addEventListener("mousedown",this._closeDropDown,!0),document.addEventListener("touchstart",this._closeDropDown,!0))}Object.defineProperties(SceneModePicker.prototype,{container:{get:function(){return this._container}},viewModel:{get:function(){return this._viewModel}}}),SceneModePicker.prototype.isDestroyed=function(){return!1},SceneModePicker.prototype.destroy=function(){return this._viewModel.destroy(),FeatureDetection$1.supportsPointerEvents()?document.removeEventListener("pointerdown",this._closeDropDown,!0):(document.removeEventListener("mousedown",this._closeDropDown,!0),document.removeEventListener("touchstart",this._closeDropDown,!0)),knockout$1.cleanNode(this._wrapper),this._container.removeChild(this._wrapper),destroyObject(this)};const screenSpacePos=new Cartesian2,offScreen="-1000px";function SelectionIndicatorViewModel(e,t,i){if(!defined(e))throw new DeveloperError("scene is required.");if(!defined(t))throw new DeveloperError("selectionIndicatorElement is required.");if(!defined(i))throw new DeveloperError("container is required.");this._scene=e,this._screenPositionX=offScreen,this._screenPositionY=offScreen,this._tweens=e.tweens,this._container=defaultValue(i,document.body),this._selectionIndicatorElement=t,this._scale=1,this.position=void 0,this.showSelection=!1,knockout$1.track(this,["position","_screenPositionX","_screenPositionY","_scale","showSelection"]),this.isVisible=void 0,knockout$1.defineProperty(this,"isVisible",{get:function(){return this.showSelection&&defined(this.position)}}),knockout$1.defineProperty(this,"_transform",{get:function(){return`scale(${this._scale})`}}),this.computeScreenSpacePosition=function(t,i){return SceneTransforms$1.wgs84ToWindowCoordinates(e,t,i)}}function SelectionIndicator(e,t){if(!defined(e))throw new DeveloperError("container is required.");e=getElement(e),this._container=e;const i=document.createElement("div");i.className="cesium-selection-wrapper",i.setAttribute("data-bind",'style: { "top" : _screenPositionY, "left" : _screenPositionX },css: { "cesium-selection-wrapper-visible" : isVisible }'),e.appendChild(i),this._element=i;const n="http://www.w3.org/2000/svg",r=document.createElementNS(n,"svg:svg");r.setAttribute("width",160),r.setAttribute("height",160),r.setAttribute("viewBox","0 0 160 160");const o=document.createElementNS(n,"g");o.setAttribute("transform","translate(80,80)"),r.appendChild(o);const a=document.createElementNS(n,"path");a.setAttribute("data-bind","attr: { transform: _transform }"),a.setAttribute("d","M -34 -34 L -34 -11.25 L -30 -15.25 L -30 -30 L -15.25 -30 L -11.25 -34 L -34 -34 z M 11.25 -34 L 15.25 -30 L 30 -30 L 30 -15.25 L 34 -11.25 L 34 -34 L 11.25 -34 z M -34 11.25 L -34 34 L -11.25 34 L -15.25 30 L -30 30 L -30 15.25 L -34 11.25 z M 34 11.25 L 30 15.25 L 30 30 L 15.25 30 L 11.25 34 L 34 34 L 34 11.25 z"),o.appendChild(a),i.appendChild(r);const s=new SelectionIndicatorViewModel(t,this._element,this._container);this._viewModel=s,knockout$1.applyBindings(this._viewModel,this._element)}function TimelineHighlightRange(e,t,i){this._color=e,this._height=t,this._base=defaultValue(i,0)}function TimelineTrack(e,t,i,n){this.interval=e,this.height=t,this.color=i||new Color(.5,.5,.5,1),this.backgroundColor=n||new Color(0,0,0,0)}SelectionIndicatorViewModel.prototype.update=function(){if(this.showSelection&&defined(this.position)){const e=this.computeScreenSpacePosition(this.position,screenSpacePos);if(defined(e)){const t=this._container,i=t.parentNode.clientWidth,n=t.parentNode.clientHeight,r=this._selectionIndicatorElement.clientWidth,o=.5*r;e.x=Math.min(Math.max(e.x,-r),i+r)-o,e.y=Math.min(Math.max(e.y,-r),n+r)-o,this._screenPositionX=`${Math.floor(e.x+.25)}px`,this._screenPositionY=`${Math.floor(e.y+.25)}px`}else this._screenPositionX=offScreen,this._screenPositionY=offScreen}},SelectionIndicatorViewModel.prototype.animateAppear=function(){this._tweens.addProperty({object:this,property:"_scale",startValue:2,stopValue:1,duration:.8,easingFunction:EasingFunction$1.EXPONENTIAL_OUT})},SelectionIndicatorViewModel.prototype.animateDepart=function(){this._tweens.addProperty({object:this,property:"_scale",startValue:this._scale,stopValue:1.5,duration:.8,easingFunction:EasingFunction$1.EXPONENTIAL_OUT})},Object.defineProperties(SelectionIndicatorViewModel.prototype,{container:{get:function(){return this._container}},selectionIndicatorElement:{get:function(){return this._selectionIndicatorElement}},scene:{get:function(){return this._scene}}}),Object.defineProperties(SelectionIndicator.prototype,{container:{get:function(){return this._container}},viewModel:{get:function(){return this._viewModel}}}),SelectionIndicator.prototype.isDestroyed=function(){return!1},SelectionIndicator.prototype.destroy=function(){const e=this._container;return knockout$1.cleanNode(this._element),e.removeChild(this._element),destroyObject(this)},TimelineHighlightRange.prototype.getHeight=function(){return this._height},TimelineHighlightRange.prototype.getBase=function(){return this._base},TimelineHighlightRange.prototype.getStartTime=function(){return this._start},TimelineHighlightRange.prototype.getStopTime=function(){return this._stop},TimelineHighlightRange.prototype.setRange=function(e,t){this._start=e,this._stop=t},TimelineHighlightRange.prototype.render=function(e){let t="";if(this._start&&this._stop&&this._color){const i=JulianDate.secondsDifference(this._start,e.epochJulian);let n=Math.round(e.timeBarWidth*e.getAlpha(i));const r=JulianDate.secondsDifference(this._stop,e.epochJulian);let o=Math.round(e.timeBarWidth*e.getAlpha(r))-n;n<0&&(o+=n,n=0),n+o>e.timeBarWidth&&(o=e.timeBarWidth-n),o>0&&(t=`<span class="cesium-timeline-highlight" style="left: ${n.toString()}px; width: ${o.toString()}px; bottom: ${this._base.toString()}px; height: ${this._height}px; background-color: ${this._color};"></span>`)}return t},TimelineTrack.prototype.render=function(e,t){const i=this.interval.start,n=this.interval.stop,r=t.startJulian,o=JulianDate.addSeconds(t.startJulian,t.duration,new JulianDate);if(JulianDate.lessThan(i,r)&&JulianDate.greaterThan(n,o))e.fillStyle=this.color.toCssColorString(),e.fillRect(0,t.y,t.timeBarWidth,this.height);else if(JulianDate.lessThanOrEquals(i,o)&&JulianDate.greaterThanOrEquals(n,r)){let r,o,a;for(r=0;r<t.timeBarWidth;++r){const e=JulianDate.addSeconds(t.startJulian,r/t.timeBarWidth*t.duration,new JulianDate);!defined(o)&&JulianDate.greaterThanOrEquals(e,i)?o=r:!defined(a)&&JulianDate.greaterThanOrEquals(e,n)&&(a=r)}e.fillStyle=this.backgroundColor.toCssColorString(),e.fillRect(0,t.y,t.timeBarWidth,this.height),defined(o)&&(defined(a)||(a=t.timeBarWidth),e.fillStyle=this.color.toCssColorString(),e.fillRect(o,t.y,Math.max(a-o,1),this.height))}};let timelineWheelDelta=1e12;const timelineMouseMode={none:0,scrub:1,slide:2,zoom:3,touchOnly:4},timelineTouchMode={none:0,scrub:1,slideZoom:2,singleTap:3,ignore:4},timelineTicScales=[.001,.002,.005,.01,.02,.05,.1,.25,.5,1,2,5,10,15,30,60,120,300,600,900,1800,3600,7200,14400,21600,43200,86400,172800,345600,604800,1296e3,2592e3,5184e3,7776e3,15552e3,31536e3,63072e3,126144e3,15768e4,31536e4,63072e4,126144e4,15768e5,31536e5,63072e5,126144e5,15768e6,31536e6],timelineMonthNames=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function Timeline(e,t){if(!defined(e))throw new DeveloperError("container is required.");if(!defined(t))throw new DeveloperError("clock is required.");const i=(e=getElement(e)).ownerDocument;this.container=e;const n=i.createElement("div");n.className="cesium-timeline-main",e.appendChild(n),this._topDiv=n,this._endJulian=void 0,this._epochJulian=void 0,this._lastXPos=void 0,this._scrubElement=void 0,this._startJulian=void 0,this._timeBarSecondsSpan=void 0,this._clock=t,this._scrubJulian=t.currentTime,this._mainTicSpan=-1,this._mouseMode=timelineMouseMode.none,this._touchMode=timelineTouchMode.none,this._touchState={centerX:0,spanX:0},this._mouseX=0,this._timelineDrag=0,this._timelineDragLocation=void 0,this._lastHeight=void 0,this._lastWidth=void 0,this._topDiv.innerHTML='<div class="cesium-timeline-bar"></div><div class="cesium-timeline-trackContainer"><canvas class="cesium-timeline-tracks" width="10" height="1"></canvas></div><div class="cesium-timeline-needle"></div><span class="cesium-timeline-ruler"></span>',this._timeBarEle=this._topDiv.childNodes[0],this._trackContainer=this._topDiv.childNodes[1],this._trackListEle=this._topDiv.childNodes[1].childNodes[0],this._needleEle=this._topDiv.childNodes[2],this._rulerEle=this._topDiv.childNodes[3],this._context=this._trackListEle.getContext("2d"),this._trackList=[],this._highlightRanges=[],this.zoomTo(t.startTime,t.stopTime),this._onMouseDown=createMouseDownCallback(this),this._onMouseUp=createMouseUpCallback(this),this._onMouseMove=createMouseMoveCallback(this),this._onMouseWheel=createMouseWheelCallback(this),this._onTouchStart=createTouchStartCallback(this),this._onTouchMove=createTouchMoveCallback(this),this._onTouchEnd=createTouchEndCallback(this);const r=this._timeBarEle;i.addEventListener("mouseup",this._onMouseUp,!1),i.addEventListener("mousemove",this._onMouseMove,!1),r.addEventListener("mousedown",this._onMouseDown,!1),r.addEventListener("DOMMouseScroll",this._onMouseWheel,!1),r.addEventListener("mousewheel",this._onMouseWheel,!1),r.addEventListener("touchstart",this._onTouchStart,!1),r.addEventListener("touchmove",this._onTouchMove,!1),r.addEventListener("touchend",this._onTouchEnd,!1),r.addEventListener("touchcancel",this._onTouchEnd,!1),this._topDiv.oncontextmenu=function(){return!1},t.onTick.addEventListener(this.updateFromClock,this),this.updateFromClock()}function twoDigits(e){return e<10?`0${e.toString()}`:e.toString()}function createMouseDownCallback(e){return function(t){e._mouseMode!==timelineMouseMode.touchOnly&&(0===t.button?(e._mouseMode=timelineMouseMode.scrub,e._scrubElement&&(e._scrubElement.style.backgroundPosition="-16px 0"),e._onMouseMove(t)):(e._mouseX=t.clientX,2===t.button?e._mouseMode=timelineMouseMode.zoom:e._mouseMode=timelineMouseMode.slide)),t.preventDefault()}}function createMouseUpCallback(e){return function(t){e._mouseMode=timelineMouseMode.none,e._scrubElement&&(e._scrubElement.style.backgroundPosition="0 0"),e._timelineDrag=0,e._timelineDragLocation=void 0}}function createMouseMoveCallback(e){return function(t){let i;if(e._mouseMode===timelineMouseMode.scrub){t.preventDefault();const i=t.clientX-e._topDiv.getBoundingClientRect().left;i<0?(e._timelineDragLocation=0,e._timelineDrag=-.01*e._timeBarSecondsSpan):i>e._topDiv.clientWidth?(e._timelineDragLocation=e._topDiv.clientWidth,e._timelineDrag=.01*e._timeBarSecondsSpan):(e._timelineDragLocation=void 0,e._setTimeBarTime(i,i*e._timeBarSecondsSpan/e._topDiv.clientWidth))}else if(e._mouseMode===timelineMouseMode.slide){if(i=e._mouseX-t.clientX,e._mouseX=t.clientX,0!==i){const t=i*e._timeBarSecondsSpan/e._topDiv.clientWidth;e.zoomTo(JulianDate.addSeconds(e._startJulian,t,new JulianDate),JulianDate.addSeconds(e._endJulian,t,new JulianDate))}}else e._mouseMode===timelineMouseMode.zoom&&(i=e._mouseX-t.clientX,e._mouseX=t.clientX,0!==i&&e.zoomFrom(Math.pow(1.01,i)))}}function createMouseWheelCallback(e){return function(t){let i=t.wheelDeltaY||t.wheelDelta||-t.detail;timelineWheelDelta=Math.max(Math.min(Math.abs(i),timelineWheelDelta),1),i/=timelineWheelDelta,e.zoomFrom(Math.pow(1.05,-i))}}function createTouchStartCallback(e){return function(t){const i=t.touches.length;let n,r;const o=e._topDiv.getBoundingClientRect().left;t.preventDefault(),e._mouseMode=timelineMouseMode.touchOnly,1===i?(n=JulianDate.secondsDifference(e._scrubJulian,e._startJulian),r=Math.round(n*e._topDiv.clientWidth/e._timeBarSecondsSpan+o),Math.abs(t.touches[0].clientX-r)<50?(e._touchMode=timelineTouchMode.scrub,e._scrubElement&&(e._scrubElement.style.backgroundPosition=1===i?"-16px 0":"0 0")):(e._touchMode=timelineTouchMode.singleTap,e._touchState.centerX=t.touches[0].clientX-o)):2===i?(e._touchMode=timelineTouchMode.slideZoom,e._touchState.centerX=.5*(t.touches[0].clientX+t.touches[1].clientX)-o,e._touchState.spanX=Math.abs(t.touches[0].clientX-t.touches[1].clientX)):e._touchMode=timelineTouchMode.ignore}}function createTouchEndCallback(e){return function(t){const i=t.touches.length,n=e._topDiv.getBoundingClientRect().left;e._touchMode===timelineTouchMode.singleTap?(e._touchMode=timelineTouchMode.scrub,e._onTouchMove(t)):e._touchMode===timelineTouchMode.scrub&&e._onTouchMove(t),e._mouseMode=timelineMouseMode.touchOnly,1!==i?e._touchMode=i>0?timelineTouchMode.ignore:timelineTouchMode.none:e._touchMode===timelineTouchMode.slideZoom&&(e._touchState.centerX=t.touches[0].clientX-n),e._scrubElement&&(e._scrubElement.style.backgroundPosition="0 0")}}function createTouchMoveCallback(e){return function(t){let i,n,r,o,a,s,c=1;const l=e._topDiv.getBoundingClientRect().left;e._touchMode===timelineTouchMode.singleTap&&(e._touchMode=timelineTouchMode.slideZoom),e._mouseMode=timelineMouseMode.touchOnly,e._touchMode===timelineTouchMode.scrub?(t.preventDefault(),1===t.changedTouches.length&&(n=t.changedTouches[0].clientX-l,n>=0&&n<=e._topDiv.clientWidth&&e._setTimeBarTime(n,n*e._timeBarSecondsSpan/e._topDiv.clientWidth))):e._touchMode===timelineTouchMode.slideZoom&&(r=t.touches.length,2===r?(o=.5*(t.touches[0].clientX+t.touches[1].clientX)-l,a=Math.abs(t.touches[0].clientX-t.touches[1].clientX)):1===r&&(o=t.touches[0].clientX-l,a=0),defined(o)&&(a>0&&e._touchState.spanX>0?(c=e._touchState.spanX/a,s=JulianDate.addSeconds(e._startJulian,(e._touchState.centerX*e._timeBarSecondsSpan-o*e._timeBarSecondsSpan*c)/e._topDiv.clientWidth,new JulianDate)):(i=e._touchState.centerX-o,s=JulianDate.addSeconds(e._startJulian,i*e._timeBarSecondsSpan/e._topDiv.clientWidth,new JulianDate)),e.zoomTo(s,JulianDate.addSeconds(s,e._timeBarSecondsSpan*c,new JulianDate)),e._touchState.centerX=o,e._touchState.spanX=a))}}Timeline.prototype.addEventListener=function(e,t,i){this._topDiv.addEventListener(e,t,i)},Timeline.prototype.removeEventListener=function(e,t,i){this._topDiv.removeEventListener(e,t,i)},Timeline.prototype.isDestroyed=function(){return!1},Timeline.prototype.destroy=function(){this._clock.onTick.removeEventListener(this.updateFromClock,this);const e=this.container.ownerDocument;e.removeEventListener("mouseup",this._onMouseUp,!1),e.removeEventListener("mousemove",this._onMouseMove,!1);const t=this._timeBarEle;t.removeEventListener("mousedown",this._onMouseDown,!1),t.removeEventListener("DOMMouseScroll",this._onMouseWheel,!1),t.removeEventListener("mousewheel",this._onMouseWheel,!1),t.removeEventListener("touchstart",this._onTouchStart,!1),t.removeEventListener("touchmove",this._onTouchMove,!1),t.removeEventListener("touchend",this._onTouchEnd,!1),t.removeEventListener("touchcancel",this._onTouchEnd,!1),this.container.removeChild(this._topDiv),destroyObject(this)},Timeline.prototype.addHighlightRange=function(e,t,i){const n=new TimelineHighlightRange(e,t,i);return this._highlightRanges.push(n),this.resize(),n},Timeline.prototype.addTrack=function(e,t,i,n){const r=new TimelineTrack(e,t,i,n);return this._trackList.push(r),this._lastHeight=void 0,this.resize(),r},Timeline.prototype.zoomTo=function(e,t){if(!defined(e))throw new DeveloperError("startTime is required.");if(!defined(t))throw new DeveloperError("stopTime is required");if(JulianDate.lessThanOrEquals(t,e))throw new DeveloperError("Start time must come before end time.");if(this._startJulian=e,this._endJulian=t,this._timeBarSecondsSpan=JulianDate.secondsDifference(t,e),this._clock&&this._clock.clockRange!==ClockRange$1.UNBOUNDED){const e=this._clock.startTime,t=this._clock.stopTime,i=JulianDate.secondsDifference(t,e),n=JulianDate.secondsDifference(e,this._startJulian),r=JulianDate.secondsDifference(t,this._endJulian);this._timeBarSecondsSpan>=i?(this._timeBarSecondsSpan=i,this._startJulian=this._clock.startTime,this._endJulian=this._clock.stopTime):n>0?(this._endJulian=JulianDate.addSeconds(this._endJulian,n,new JulianDate),this._startJulian=e,this._timeBarSecondsSpan=JulianDate.secondsDifference(this._endJulian,this._startJulian)):r<0&&(this._startJulian=JulianDate.addSeconds(this._startJulian,r,new JulianDate),this._endJulian=t,this._timeBarSecondsSpan=JulianDate.secondsDifference(this._endJulian,this._startJulian))}this._makeTics();const i=document.createEvent("Event");i.initEvent("setzoom",!0,!0),i.startJulian=this._startJulian,i.endJulian=this._endJulian,i.epochJulian=this._epochJulian,i.totalSpan=this._timeBarSecondsSpan,i.mainTicSpan=this._mainTicSpan,this._topDiv.dispatchEvent(i)},Timeline.prototype.zoomFrom=function(e){let t=JulianDate.secondsDifference(this._scrubJulian,this._startJulian);e>1||t<0||t>this._timeBarSecondsSpan?t=.5*this._timeBarSecondsSpan:t+=t-.5*this._timeBarSecondsSpan;const i=this._timeBarSecondsSpan-t;this.zoomTo(JulianDate.addSeconds(this._startJulian,t-t*e,new JulianDate),JulianDate.addSeconds(this._endJulian,i*e-i,new JulianDate))},Timeline.prototype.makeLabel=function(e){const t=JulianDate.toGregorianDate(e),i=t.millisecond;let n=" UTC";if(i>0&&this._timeBarSecondsSpan<3600){for(n=Math.floor(i).toString();n.length<3;)n=`0${n}`;n=`.${n}`}return`${timelineMonthNames[t.month-1]} ${t.day} ${t.year} ${twoDigits(t.hour)}:${twoDigits(t.minute)}:${twoDigits(t.second)}${n}`},Timeline.prototype.smallestTicInPixels=7,Timeline.prototype._makeTics=function(){const e=this._timeBarEle,t=JulianDate.secondsDifference(this._scrubJulian,this._startJulian),i=Math.round(t*this._topDiv.clientWidth/this._timeBarSecondsSpan),n=i-8;let r;const o=this;this._needleEle.style.left=`${i.toString()}px`;let a="";const s=.01,c=31536e6,l=1e-10;let d=0,u=this._timeBarSecondsSpan;u<s?(u=s,this._timeBarSecondsSpan=s,this._endJulian=JulianDate.addSeconds(this._startJulian,s,new JulianDate)):u>c&&(u=c,this._timeBarSecondsSpan=c,this._endJulian=JulianDate.addSeconds(this._startJulian,c,new JulianDate));let h=this._timeBarEle.clientWidth;h<10&&(h=10);const p=this._startJulian,f=Math.min(u/h*1e-5,.4);let m;const g=JulianDate.toGregorianDate(p);m=u>31536e4?JulianDate.fromDate(new Date(Date.UTC(100*Math.floor(g.year/100),0))):u>31536e3?JulianDate.fromDate(new Date(Date.UTC(10*Math.floor(g.year/10),0))):u>86400?JulianDate.fromDate(new Date(Date.UTC(g.year,0))):JulianDate.fromDate(new Date(Date.UTC(g.year,g.month,g.day)));const _=JulianDate.secondsDifference(this._startJulian,JulianDate.addSeconds(m,f,new JulianDate));let y=_+u;function C(e){return Math.floor(_/e)*e}function S(e,t){return Math.ceil(e/t+.5)*t}function A(e){return(e-_)/u}function T(e,t){return e-t*Math.round(e/t)}this._epochJulian=m,this._rulerEle.innerHTML=this.makeLabel(JulianDate.addSeconds(this._endJulian,-.01,new JulianDate));let v=this._rulerEle.offsetWidth+20;v<30&&(v=180);const E=d;d-=l;const b={startTime:_,startJulian:p,epochJulian:m,duration:u,timeBarWidth:h,getAlpha:A};this._highlightRanges.forEach((function(e){a+=e.render(b)}));let x=0,D=0,P=0,w=v/h;w>1&&(w=1),w*=this._timeBarSecondsSpan;let I=-1,M=-1;const O=timelineTicScales.length;let R;for(R=0;R<O;++R){const e=timelineTicScales[R];if(++I,x=e,e>w&&e>d)break;M<0&&h*(e/this._timeBarSecondsSpan)>=this.smallestTicInPixels&&(M=I)}if(I>0){for(;I>0;)if(--I,Math.abs(T(x,timelineTicScales[I]))<1e-5){timelineTicScales[I]>=d&&(D=timelineTicScales[I]);break}if(M>=0)for(;M<I;){if(Math.abs(T(D,timelineTicScales[M]))<1e-5&&timelineTicScales[M]>=d){P=timelineTicScales[M];break}++M}}d=E,d>l&&P<1e-5&&Math.abs(d-x)>l&&(P=d,d<=x+l&&(D=0));let B,L=-999999;if(h*(P/this._timeBarSecondsSpan)>=3)for(r=C(P);r<=y;r=S(r,P))a+=`<span class="cesium-timeline-ticTiny" style="left: ${Math.round(h*A(r)).toString()}px;"></span>`;if(h*(D/this._timeBarSecondsSpan)>=3)for(r=C(D);r<=y;r=S(r,D))a+=`<span class="cesium-timeline-ticSub" style="left: ${Math.round(h*A(r)).toString()}px;"></span>`;if(h*(x/this._timeBarSecondsSpan)>=2){this._mainTicSpan=x,y+=x,r=C(x);const e=JulianDate.computeTaiMinusUtc(m);for(;r<=y;){let t=JulianDate.addSeconds(p,r-_,new JulianDate);if(x>2.1){const i=JulianDate.computeTaiMinusUtc(t);Math.abs(i-e)>.1&&(r+=i-e,t=JulianDate.addSeconds(p,r-_,new JulianDate))}const i=Math.round(h*A(r)),n=this.makeLabel(t);this._rulerEle.innerHTML=n,B=this._rulerEle.offsetWidth,B<10&&(B=v);const o=i-(B/2-1);o>L?(L=o+B+5,a+=`<span class="cesium-timeline-ticMain" style="left: ${i.toString()}px;"></span><span class="cesium-timeline-ticLabel" style="left: ${o.toString()}px;">${n}</span>`):a+=`<span class="cesium-timeline-ticSub" style="left: ${i.toString()}px;"></span>`,r=S(r,x)}}else this._mainTicSpan=-1;a+=`<span class="cesium-timeline-icon16" style="left:${n}px;bottom:0;background-position: 0 0;"></span>`,e.innerHTML=a,this._scrubElement=e.lastChild,this._context.clearRect(0,0,this._trackListEle.width,this._trackListEle.height),b.y=0,this._trackList.forEach((function(e){e.render(o._context,b),b.y+=e.height}))},Timeline.prototype.updateFromClock=function(){this._scrubJulian=this._clock.currentTime;const e=this._scrubElement;if(defined(this._scrubElement)){const t=JulianDate.secondsDifference(this._scrubJulian,this._startJulian),i=Math.round(t*this._topDiv.clientWidth/this._timeBarSecondsSpan);this._lastXPos!==i&&(this._lastXPos=i,e.style.left=i-8+"px",this._needleEle.style.left=`${i}px`)}defined(this._timelineDragLocation)&&(this._setTimeBarTime(this._timelineDragLocation,this._timelineDragLocation*this._timeBarSecondsSpan/this._topDiv.clientWidth),this.zoomTo(JulianDate.addSeconds(this._startJulian,this._timelineDrag,new JulianDate),JulianDate.addSeconds(this._endJulian,this._timelineDrag,new JulianDate)))},Timeline.prototype._setTimeBarTime=function(e,t){if(e=Math.round(e),this._scrubJulian=JulianDate.addSeconds(this._startJulian,t,new JulianDate),this._scrubElement){const t=e-8;this._scrubElement.style.left=`${t.toString()}px`,this._needleEle.style.left=`${e.toString()}px`}const i=document.createEvent("Event");i.initEvent("settime",!0,!0),i.clientX=e,i.timeSeconds=t,i.timeJulian=this._scrubJulian,i.clock=this._clock,this._topDiv.dispatchEvent(i)},Timeline.prototype.resize=function(){const e=this.container.clientWidth,t=this.container.clientHeight;if(e===this._lastWidth&&t===this._lastHeight)return;this._trackContainer.style.height=`${t}px`;let i=1;this._trackList.forEach((function(e){i+=e.height})),this._trackListEle.style.height=`${i.toString()}px`,this._trackListEle.width=this._trackListEle.clientWidth,this._trackListEle.height=i,this._makeTics(),this._lastXPos=void 0,this._lastWidth=e,this._lastHeight=t};var media={webm:"data:video/webm;base64,GkXfowEAAAAAAAAfQoaBAUL3gQFC8oEEQvOBCEKChHdlYm1Ch4EEQoWBAhhTgGcBAAAAAAAVkhFNm3RALE27i1OrhBVJqWZTrIHfTbuMU6uEFlSua1OsggEwTbuMU6uEHFO7a1OsghV17AEAAAAAAACkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAVSalmAQAAAAAAAEUq17GDD0JATYCNTGF2ZjU1LjMzLjEwMFdBjUxhdmY1NS4zMy4xMDBzpJBlrrXf3DCDVB8KcgbMpcr+RImIQJBgAAAAAAAWVK5rAQAAAAAAD++uAQAAAAAAADLXgQFzxYEBnIEAIrWcg3VuZIaFVl9WUDiDgQEj44OEAmJaAOABAAAAAAAABrCBsLqBkK4BAAAAAAAPq9eBAnPFgQKcgQAitZyDdW5khohBX1ZPUkJJU4OBAuEBAAAAAAAAEZ+BArWIQOdwAAAAAABiZIEgY6JPbwIeVgF2b3JiaXMAAAAAAoC7AAAAAAAAgLUBAAAAAAC4AQN2b3JiaXMtAAAAWGlwaC5PcmcgbGliVm9yYmlzIEkgMjAxMDExMDEgKFNjaGF1ZmVudWdnZXQpAQAAABUAAABlbmNvZGVyPUxhdmM1NS41Mi4xMDIBBXZvcmJpcyVCQ1YBAEAAACRzGCpGpXMWhBAaQlAZ4xxCzmvsGUJMEYIcMkxbyyVzkCGkoEKIWyiB0JBVAABAAACHQXgUhIpBCCGEJT1YkoMnPQghhIg5eBSEaUEIIYQQQgghhBBCCCGERTlokoMnQQgdhOMwOAyD5Tj4HIRFOVgQgydB6CCED0K4moOsOQghhCQ1SFCDBjnoHITCLCiKgsQwuBaEBDUojILkMMjUgwtCiJqDSTX4GoRnQXgWhGlBCCGEJEFIkIMGQcgYhEZBWJKDBjm4FITLQagahCo5CB+EIDRkFQCQAACgoiiKoigKEBqyCgDIAAAQQFEUx3EcyZEcybEcCwgNWQUAAAEACAAAoEiKpEiO5EiSJFmSJVmSJVmS5omqLMuyLMuyLMsyEBqyCgBIAABQUQxFcRQHCA1ZBQBkAAAIoDiKpViKpWiK54iOCISGrAIAgAAABAAAEDRDUzxHlETPVFXXtm3btm3btm3btm3btm1blmUZCA1ZBQBAAAAQ0mlmqQaIMAMZBkJDVgEACAAAgBGKMMSA0JBVAABAAACAGEoOogmtOd+c46BZDppKsTkdnEi1eZKbirk555xzzsnmnDHOOeecopxZDJoJrTnnnMSgWQqaCa0555wnsXnQmiqtOeeccc7pYJwRxjnnnCateZCajbU555wFrWmOmkuxOeecSLl5UptLtTnnnHPOOeecc84555zqxekcnBPOOeecqL25lpvQxTnnnE/G6d6cEM4555xzzjnnnHPOOeecIDRkFQAABABAEIaNYdwpCNLnaCBGEWIaMulB9+gwCRqDnELq0ehopJQ6CCWVcVJKJwgNWQUAAAIAQAghhRRSSCGFFFJIIYUUYoghhhhyyimnoIJKKqmooowyyyyzzDLLLLPMOuyssw47DDHEEEMrrcRSU2011lhr7jnnmoO0VlprrbVSSimllFIKQkNWAQAgAAAEQgYZZJBRSCGFFGKIKaeccgoqqIDQkFUAACAAgAAAAABP8hzRER3RER3RER3RER3R8RzPESVREiVREi3TMjXTU0VVdWXXlnVZt31b2IVd933d933d+HVhWJZlWZZlWZZlWZZlWZZlWZYgNGQVAAACAAAghBBCSCGFFFJIKcYYc8w56CSUEAgNWQUAAAIACAAAAHAUR3EcyZEcSbIkS9IkzdIsT/M0TxM9URRF0zRV0RVdUTdtUTZl0zVdUzZdVVZtV5ZtW7Z125dl2/d93/d93/d93/d93/d9XQdCQ1YBABIAADqSIymSIimS4ziOJElAaMgqAEAGAEAAAIriKI7jOJIkSZIlaZJneZaomZrpmZ4qqkBoyCoAABAAQAAAAAAAAIqmeIqpeIqoeI7oiJJomZaoqZoryqbsuq7ruq7ruq7ruq7ruq7ruq7ruq7ruq7ruq7ruq7ruq7ruq4LhIasAgAkAAB0JEdyJEdSJEVSJEdygNCQVQCADACAAAAcwzEkRXIsy9I0T/M0TxM90RM901NFV3SB0JBVAAAgAIAAAAAAAAAMybAUy9EcTRIl1VItVVMt1VJF1VNVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVN0zRNEwgNWQkAkAEAkBBTLS3GmgmLJGLSaqugYwxS7KWxSCpntbfKMYUYtV4ah5RREHupJGOKQcwtpNApJq3WVEKFFKSYYyoVUg5SIDRkhQAQmgHgcBxAsixAsiwAAAAAAAAAkDQN0DwPsDQPAAAAAAAAACRNAyxPAzTPAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABA0jRA8zxA8zwAAAAAAAAA0DwP8DwR8EQRAAAAAAAAACzPAzTRAzxRBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABA0jRA8zxA8zwAAAAAAAAAsDwP8EQR0DwRAAAAAAAAACzPAzxRBDzRAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAEOAAABBgIRQasiIAiBMAcEgSJAmSBM0DSJYFTYOmwTQBkmVB06BpME0AAAAAAAAAAAAAJE2DpkHTIIoASdOgadA0iCIAAAAAAAAAAAAAkqZB06BpEEWApGnQNGgaRBEAAAAAAAAAAAAAzzQhihBFmCbAM02IIkQRpgkAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAGHAAAAgwoQwUGrIiAIgTAHA4imUBAIDjOJYFAACO41gWAABYliWKAABgWZooAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAYcAAACDChDBQashIAiAIAcCiKZQHHsSzgOJYFJMmyAJYF0DyApgFEEQAIAAAocAAACLBBU2JxgEJDVgIAUQAABsWxLE0TRZKkaZoniiRJ0zxPFGma53meacLzPM80IYqiaJoQRVE0TZimaaoqME1VFQAAUOAAABBgg6bE4gCFhqwEAEICAByKYlma5nmeJ4qmqZokSdM8TxRF0TRNU1VJkqZ5niiKommapqqyLE3zPFEURdNUVVWFpnmeKIqiaaqq6sLzPE8URdE0VdV14XmeJ4qiaJqq6roQRVE0TdNUTVV1XSCKpmmaqqqqrgtETxRNU1Vd13WB54miaaqqq7ouEE3TVFVVdV1ZBpimaaqq68oyQFVV1XVdV5YBqqqqruu6sgxQVdd1XVmWZQCu67qyLMsCAAAOHAAAAoygk4wqi7DRhAsPQKEhKwKAKAAAwBimFFPKMCYhpBAaxiSEFEImJaXSUqogpFJSKRWEVEoqJaOUUmopVRBSKamUCkIqJZVSAADYgQMA2IGFUGjISgAgDwCAMEYpxhhzTiKkFGPOOScRUoox55yTSjHmnHPOSSkZc8w556SUzjnnnHNSSuacc845KaVzzjnnnJRSSuecc05KKSWEzkEnpZTSOeecEwAAVOAAABBgo8jmBCNBhYasBABSAQAMjmNZmuZ5omialiRpmud5niiapiZJmuZ5nieKqsnzPE8URdE0VZXneZ4oiqJpqirXFUXTNE1VVV2yLIqmaZqq6rowTdNUVdd1XZimaaqq67oubFtVVdV1ZRm2raqq6rqyDFzXdWXZloEsu67s2rIAAPAEBwCgAhtWRzgpGgssNGQlAJABAEAYg5BCCCFlEEIKIYSUUggJAAAYcAAACDChDBQashIASAUAAIyx1lprrbXWQGettdZaa62AzFprrbXWWmuttdZaa6211lJrrbXWWmuttdZaa6211lprrbXWWmuttdZaa6211lprrbXWWmuttdZaa6211lprrbXWWmstpZRSSimllFJKKaWUUkoppZRSSgUA+lU4APg/2LA6wknRWGChISsBgHAAAMAYpRhzDEIppVQIMeacdFRai7FCiDHnJKTUWmzFc85BKCGV1mIsnnMOQikpxVZjUSmEUlJKLbZYi0qho5JSSq3VWIwxqaTWWoutxmKMSSm01FqLMRYjbE2ptdhqq7EYY2sqLbQYY4zFCF9kbC2m2moNxggjWywt1VprMMYY3VuLpbaaizE++NpSLDHWXAAAd4MDAESCjTOsJJ0VjgYXGrISAAgJACAQUooxxhhzzjnnpFKMOeaccw5CCKFUijHGnHMOQgghlIwx5pxzEEIIIYRSSsaccxBCCCGEkFLqnHMQQgghhBBKKZ1zDkIIIYQQQimlgxBCCCGEEEoopaQUQgghhBBCCKmklEIIIYRSQighlZRSCCGEEEIpJaSUUgohhFJCCKGElFJKKYUQQgillJJSSimlEkoJJYQSUikppRRKCCGUUkpKKaVUSgmhhBJKKSWllFJKIYQQSikFAAAcOAAABBhBJxlVFmGjCRcegEJDVgIAZAAAkKKUUiktRYIipRikGEtGFXNQWoqocgxSzalSziDmJJaIMYSUk1Qy5hRCDELqHHVMKQYtlRhCxhik2HJLoXMOAAAAQQCAgJAAAAMEBTMAwOAA4XMQdAIERxsAgCBEZohEw0JweFAJEBFTAUBigkIuAFRYXKRdXECXAS7o4q4DIQQhCEEsDqCABByccMMTb3jCDU7QKSp1IAAAAAAADADwAACQXAAREdHMYWRobHB0eHyAhIiMkAgAAAAAABcAfAAAJCVAREQ0cxgZGhscHR4fICEiIyQBAIAAAgAAAAAggAAEBAQAAAAAAAIAAAAEBB9DtnUBAAAAAAAEPueBAKOFggAAgACjzoEAA4BwBwCdASqwAJAAAEcIhYWIhYSIAgIABhwJ7kPfbJyHvtk5D32ych77ZOQ99snIe+2TkPfbJyHvtk5D32ych77ZOQ99YAD+/6tQgKOFggADgAqjhYIAD4AOo4WCACSADqOZgQArADECAAEQEAAYABhYL/QACIBDmAYAAKOFggA6gA6jhYIAT4AOo5mBAFMAMQIAARAQABgAGFgv9AAIgEOYBgAAo4WCAGSADqOFggB6gA6jmYEAewAxAgABEBAAGAAYWC/0AAiAQ5gGAACjhYIAj4AOo5mBAKMAMQIAARAQABgAGFgv9AAIgEOYBgAAo4WCAKSADqOFggC6gA6jmYEAywAxAgABEBAAGAAYWC/0AAiAQ5gGAACjhYIAz4AOo4WCAOSADqOZgQDzADECAAEQEAAYABhYL/QACIBDmAYAAKOFggD6gA6jhYIBD4AOo5iBARsAEQIAARAQFGAAYWC/0AAiAQ5gGACjhYIBJIAOo4WCATqADqOZgQFDADECAAEQEAAYABhYL/QACIBDmAYAAKOFggFPgA6jhYIBZIAOo5mBAWsAMQIAARAQABgAGFgv9AAIgEOYBgAAo4WCAXqADqOFggGPgA6jmYEBkwAxAgABEBAAGAAYWC/0AAiAQ5gGAACjhYIBpIAOo4WCAbqADqOZgQG7ADECAAEQEAAYABhYL/QACIBDmAYAAKOFggHPgA6jmYEB4wAxAgABEBAAGAAYWC/0AAiAQ5gGAACjhYIB5IAOo4WCAfqADqOZgQILADECAAEQEAAYABhYL/QACIBDmAYAAKOFggIPgA6jhYICJIAOo5mBAjMAMQIAARAQABgAGFgv9AAIgEOYBgAAo4WCAjqADqOFggJPgA6jmYECWwAxAgABEBAAGAAYWC/0AAiAQ5gGAACjhYICZIAOo4WCAnqADqOZgQKDADECAAEQEAAYABhYL/QACIBDmAYAAKOFggKPgA6jhYICpIAOo5mBAqsAMQIAARAQABgAGFgv9AAIgEOYBgAAo4WCArqADqOFggLPgA6jmIEC0wARAgABEBAUYABhYL/QACIBDmAYAKOFggLkgA6jhYIC+oAOo5mBAvsAMQIAARAQABgAGFgv9AAIgEOYBgAAo4WCAw+ADqOZgQMjADECAAEQEAAYABhYL/QACIBDmAYAAKOFggMkgA6jhYIDOoAOo5mBA0sAMQIAARAQABgAGFgv9AAIgEOYBgAAo4WCA0+ADqOFggNkgA6jmYEDcwAxAgABEBAAGAAYWC/0AAiAQ5gGAACjhYIDeoAOo4WCA4+ADqOZgQObADECAAEQEAAYABhYL/QACIBDmAYAAKOFggOkgA6jhYIDuoAOo5mBA8MAMQIAARAQABgAGFgv9AAIgEOYBgAAo4WCA8+ADqOFggPkgA6jhYID+oAOo4WCBA+ADhxTu2sBAAAAAAAAEbuPs4EDt4r3gQHxghEr8IEK",mp4:"data:video/mp4;base64,AAAAHGZ0eXBNNFYgAAACAGlzb21pc28yYXZjMQAAAAhmcmVlAAAGF21kYXTeBAAAbGliZmFhYyAxLjI4AABCAJMgBDIARwAAArEGBf//rdxF6b3m2Ui3lizYINkj7u94MjY0IC0gY29yZSAxNDIgcjIgOTU2YzhkOCAtIEguMjY0L01QRUctNCBBVkMgY29kZWMgLSBDb3B5bGVmdCAyMDAzLTIwMTQgLSBodHRwOi8vd3d3LnZpZGVvbGFuLm9yZy94MjY0Lmh0bWwgLSBvcHRpb25zOiBjYWJhYz0wIHJlZj0zIGRlYmxvY2s9MTowOjAgYW5hbHlzZT0weDE6MHgxMTEgbWU9aGV4IHN1Ym1lPTcgcHN5PTEgcHN5X3JkPTEuMDA6MC4wMCBtaXhlZF9yZWY9MSBtZV9yYW5nZT0xNiBjaHJvbWFfbWU9MSB0cmVsbGlzPTEgOHg4ZGN0PTAgY3FtPTAgZGVhZHpvbmU9MjEsMTEgZmFzdF9wc2tpcD0xIGNocm9tYV9xcF9vZmZzZXQ9LTIgdGhyZWFkcz02IGxvb2thaGVhZF90aHJlYWRzPTEgc2xpY2VkX3RocmVhZHM9MCBucj0wIGRlY2ltYXRlPTEgaW50ZXJsYWNlZD0wIGJsdXJheV9jb21wYXQ9MCBjb25zdHJhaW5lZF9pbnRyYT0wIGJmcmFtZXM9MCB3ZWlnaHRwPTAga2V5aW50PTI1MCBrZXlpbnRfbWluPTI1IHNjZW5lY3V0PTQwIGludHJhX3JlZnJlc2g9MCByY19sb29rYWhlYWQ9NDAgcmM9Y3JmIG1idHJlZT0xIGNyZj0yMy4wIHFjb21wPTAuNjAgcXBtaW49MCBxcG1heD02OSBxcHN0ZXA9NCB2YnZfbWF4cmF0ZT03NjggdmJ2X2J1ZnNpemU9MzAwMCBjcmZfbWF4PTAuMCBuYWxfaHJkPW5vbmUgZmlsbGVyPTAgaXBfcmF0aW89MS40MCBhcT0xOjEuMDAAgAAAAFZliIQL8mKAAKvMnJycnJycnJycnXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXiEASZACGQAjgCEASZACGQAjgAAAAAdBmjgX4GSAIQBJkAIZACOAAAAAB0GaVAX4GSAhAEmQAhkAI4AhAEmQAhkAI4AAAAAGQZpgL8DJIQBJkAIZACOAIQBJkAIZACOAAAAABkGagC/AySEASZACGQAjgAAAAAZBmqAvwMkhAEmQAhkAI4AhAEmQAhkAI4AAAAAGQZrAL8DJIQBJkAIZACOAAAAABkGa4C/AySEASZACGQAjgCEASZACGQAjgAAAAAZBmwAvwMkhAEmQAhkAI4AAAAAGQZsgL8DJIQBJkAIZACOAIQBJkAIZACOAAAAABkGbQC/AySEASZACGQAjgCEASZACGQAjgAAAAAZBm2AvwMkhAEmQAhkAI4AAAAAGQZuAL8DJIQBJkAIZACOAIQBJkAIZACOAAAAABkGboC/AySEASZACGQAjgAAAAAZBm8AvwMkhAEmQAhkAI4AhAEmQAhkAI4AAAAAGQZvgL8DJIQBJkAIZACOAAAAABkGaAC/AySEASZACGQAjgCEASZACGQAjgAAAAAZBmiAvwMkhAEmQAhkAI4AhAEmQAhkAI4AAAAAGQZpAL8DJIQBJkAIZACOAAAAABkGaYC/AySEASZACGQAjgCEASZACGQAjgAAAAAZBmoAvwMkhAEmQAhkAI4AAAAAGQZqgL8DJIQBJkAIZACOAIQBJkAIZACOAAAAABkGawC/AySEASZACGQAjgAAAAAZBmuAvwMkhAEmQAhkAI4AhAEmQAhkAI4AAAAAGQZsAL8DJIQBJkAIZACOAAAAABkGbIC/AySEASZACGQAjgCEASZACGQAjgAAAAAZBm0AvwMkhAEmQAhkAI4AhAEmQAhkAI4AAAAAGQZtgL8DJIQBJkAIZACOAAAAABkGbgCvAySEASZACGQAjgCEASZACGQAjgAAAAAZBm6AnwMkhAEmQAhkAI4AhAEmQAhkAI4AhAEmQAhkAI4AhAEmQAhkAI4AAAAhubW9vdgAAAGxtdmhkAAAAAAAAAAAAAAAAAAAD6AAABDcAAQAAAQAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAzB0cmFrAAAAXHRraGQAAAADAAAAAAAAAAAAAAABAAAAAAAAA+kAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAABAAAAAALAAAACQAAAAAAAkZWR0cwAAABxlbHN0AAAAAAAAAAEAAAPpAAAAAAABAAAAAAKobWRpYQAAACBtZGhkAAAAAAAAAAAAAAAAAAB1MAAAdU5VxAAAAAAALWhkbHIAAAAAAAAAAHZpZGUAAAAAAAAAAAAAAABWaWRlb0hhbmRsZXIAAAACU21pbmYAAAAUdm1oZAAAAAEAAAAAAAAAAAAAACRkaW5mAAAAHGRyZWYAAAAAAAAAAQAAAAx1cmwgAAAAAQAAAhNzdGJsAAAAr3N0c2QAAAAAAAAAAQAAAJ9hdmMxAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAALAAkABIAAAASAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGP//AAAALWF2Y0MBQsAN/+EAFWdCwA3ZAsTsBEAAAPpAADqYA8UKkgEABWjLg8sgAAAAHHV1aWRraEDyXyRPxbo5pRvPAyPzAAAAAAAAABhzdHRzAAAAAAAAAAEAAAAeAAAD6QAAABRzdHNzAAAAAAAAAAEAAAABAAAAHHN0c2MAAAAAAAAAAQAAAAEAAAABAAAAAQAAAIxzdHN6AAAAAAAAAAAAAAAeAAADDwAAAAsAAAALAAAACgAAAAoAAAAKAAAACgAAAAoAAAAKAAAACgAAAAoAAAAKAAAACgAAAAoAAAAKAAAACgAAAAoAAAAKAAAACgAAAAoAAAAKAAAACgAAAAoAAAAKAAAACgAAAAoAAAAKAAAACgAAAAoAAAAKAAAAiHN0Y28AAAAAAAAAHgAAAEYAAANnAAADewAAA5gAAAO0AAADxwAAA+MAAAP2AAAEEgAABCUAAARBAAAEXQAABHAAAASMAAAEnwAABLsAAATOAAAE6gAABQYAAAUZAAAFNQAABUgAAAVkAAAFdwAABZMAAAWmAAAFwgAABd4AAAXxAAAGDQAABGh0cmFrAAAAXHRraGQAAAADAAAAAAAAAAAAAAACAAAAAAAABDcAAAAAAAAAAAAAAAEBAAAAAAEAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAkZWR0cwAAABxlbHN0AAAAAAAAAAEAAAQkAAADcAABAAAAAAPgbWRpYQAAACBtZGhkAAAAAAAAAAAAAAAAAAC7gAAAykBVxAAAAAAALWhkbHIAAAAAAAAAAHNvdW4AAAAAAAAAAAAAAABTb3VuZEhhbmRsZXIAAAADi21pbmYAAAAQc21oZAAAAAAAAAAAAAAAJGRpbmYAAAAcZHJlZgAAAAAAAAABAAAADHVybCAAAAABAAADT3N0YmwAAABnc3RzZAAAAAAAAAABAAAAV21wNGEAAAAAAAAAAQAAAAAAAAAAAAIAEAAAAAC7gAAAAAAAM2VzZHMAAAAAA4CAgCIAAgAEgICAFEAVBbjYAAu4AAAADcoFgICAAhGQBoCAgAECAAAAIHN0dHMAAAAAAAAAAgAAADIAAAQAAAAAAQAAAkAAAAFUc3RzYwAAAAAAAAAbAAAAAQAAAAEAAAABAAAAAgAAAAIAAAABAAAAAwAAAAEAAAABAAAABAAAAAIAAAABAAAABgAAAAEAAAABAAAABwAAAAIAAAABAAAACAAAAAEAAAABAAAACQAAAAIAAAABAAAACgAAAAEAAAABAAAACwAAAAIAAAABAAAADQAAAAEAAAABAAAADgAAAAIAAAABAAAADwAAAAEAAAABAAAAEAAAAAIAAAABAAAAEQAAAAEAAAABAAAAEgAAAAIAAAABAAAAFAAAAAEAAAABAAAAFQAAAAIAAAABAAAAFgAAAAEAAAABAAAAFwAAAAIAAAABAAAAGAAAAAEAAAABAAAAGQAAAAIAAAABAAAAGgAAAAEAAAABAAAAGwAAAAIAAAABAAAAHQAAAAEAAAABAAAAHgAAAAIAAAABAAAAHwAAAAQAAAABAAAA4HN0c3oAAAAAAAAAAAAAADMAAAAaAAAACQAAAAkAAAAJAAAACQAAAAkAAAAJAAAACQAAAAkAAAAJAAAACQAAAAkAAAAJAAAACQAAAAkAAAAJAAAACQAAAAkAAAAJAAAACQAAAAkAAAAJAAAACQAAAAkAAAAJAAAACQAAAAkAAAAJAAAACQAAAAkAAAAJAAAACQAAAAkAAAAJAAAACQAAAAkAAAAJAAAACQAAAAkAAAAJAAAACQAAAAkAAAAJAAAACQAAAAkAAAAJAAAACQAAAAkAAAAJAAAACQAAAAkAAACMc3RjbwAAAAAAAAAfAAAALAAAA1UAAANyAAADhgAAA6IAAAO+AAAD0QAAA+0AAAQAAAAEHAAABC8AAARLAAAEZwAABHoAAASWAAAEqQAABMUAAATYAAAE9AAABRAAAAUjAAAFPwAABVIAAAVuAAAFgQAABZ0AAAWwAAAFzAAABegAAAX7AAAGFwAAAGJ1ZHRhAAAAWm1ldGEAAAAAAAAAIWhkbHIAAAAAAAAAAG1kaXJhcHBsAAAAAAAAAAAAAAAALWlsc3QAAAAlqXRvbwAAAB1kYXRhAAAAAQAAAABMYXZmNTUuMzMuMTAw"};const{webm:webm,mp4:mp4}=media,oldIOS=()=>"undefined"!=typeof navigator&&parseFloat((""+(/CPU.*OS ([0-9_]{3,4})[0-9_]{0,1}|(CPU like).*AppleWebKit.*Mobile/i.exec(navigator.userAgent)||[0,""])[1]).replace("undefined","3_2").replace("_",".").replace("_",""))<10&&!window.MSStream,nativeWakeLock=()=>"wakeLock"in navigator;class NoSleep{constructor(){if(this.enabled=!1,nativeWakeLock()){this._wakeLock=null;const e=()=>{null!==this._wakeLock&&"visible"===document.visibilityState&&this.enable()};document.addEventListener("visibilitychange",e),document.addEventListener("fullscreenchange",e)}else oldIOS()?this.noSleepTimer=null:(this.noSleepVideo=document.createElement("video"),this.noSleepVideo.setAttribute("title","No Sleep"),this.noSleepVideo.setAttribute("playsinline",""),this._addSourceToVideo(this.noSleepVideo,"webm",webm),this._addSourceToVideo(this.noSleepVideo,"mp4",mp4),this.noSleepVideo.addEventListener("loadedmetadata",(()=>{this.noSleepVideo.duration<=1?this.noSleepVideo.setAttribute("loop",""):this.noSleepVideo.addEventListener("timeupdate",(()=>{this.noSleepVideo.currentTime>.5&&(this.noSleepVideo.currentTime=Math.random())}))})))}_addSourceToVideo(e,t,i){var n=document.createElement("source");n.src=i,n.type=`video/${t}`,e.appendChild(n)}get isEnabled(){return this.enabled}enable(){if(nativeWakeLock())return navigator.wakeLock.request("screen").then((e=>{this._wakeLock=e,this.enabled=!0,this._wakeLock.addEventListener("release",(()=>{}))})).catch((e=>{throw this.enabled=!1,e}));if(oldIOS())return this.disable(),this.noSleepTimer=window.setInterval((()=>{document.hidden||(window.location.href=window.location.href.split("#")[0],window.setTimeout(window.stop,0))}),15e3),this.enabled=!0,Promise.resolve();return this.noSleepVideo.play().then((e=>(this.enabled=!0,e))).catch((e=>{throw this.enabled=!1,e}))}disable(){nativeWakeLock()?(this._wakeLock&&this._wakeLock.release(),this._wakeLock=null):oldIOS()?this.noSleepTimer&&(window.clearInterval(this.noSleepTimer),this.noSleepTimer=null):this.noSleepVideo.pause(),this.enabled=!1}}var src=NoSleep;function lockScreen(e){let t=!1;const i=window.screen;return defined(i)&&(defined(i.lockOrientation)?t=i.lockOrientation(e):defined(i.mozLockOrientation)?t=i.mozLockOrientation(e):defined(i.msLockOrientation)?t=i.msLockOrientation(e):defined(i.orientation&&i.orientation.lock)&&(t=i.orientation.lock(e))),t}function unlockScreen(){const e=window.screen;defined(e)&&(defined(e.unlockOrientation)?e.unlockOrientation():defined(e.mozUnlockOrientation)?e.mozUnlockOrientation():defined(e.msUnlockOrientation)?e.msUnlockOrientation():defined(e.orientation&&e.orientation.unlock)&&e.orientation.unlock())}function toggleVR(e,t,i,n){n()||(i()?(t.useWebVR=!1,e._locked&&(unlockScreen(),e._locked=!1),e._noSleep.disable(),Fullscreen$1.exitFullscreen(),i(!1)):(Fullscreen$1.fullscreen||Fullscreen$1.requestFullscreen(e._vrElement),e._noSleep.enable(),e._locked||(e._locked=lockScreen("landscape")),t.useWebVR=!0,i(!0)))}function VRButtonViewModel(e,t){if(!defined(e))throw new DeveloperError("scene is required.");const i=this,n=knockout$1.observable(Fullscreen$1.enabled),r=knockout$1.observable(!1);this.isVRMode=void 0,knockout$1.defineProperty(this,"isVRMode",{get:function(){return r()}}),this.isVREnabled=void 0,knockout$1.defineProperty(this,"isVREnabled",{get:function(){return n()},set:function(e){n(e&&Fullscreen$1.enabled)}}),this.tooltip=void 0,knockout$1.defineProperty(this,"tooltip",(function(){return n()?r()?"Exit VR mode":"Enter VR mode":"VR mode is unavailable"}));const o=knockout$1.observable(!1);this._isOrthographic=void 0,knockout$1.defineProperty(this,"_isOrthographic",{get:function(){return o()}}),this._eventHelper=new EventHelper,this._eventHelper.add(e.preRender,(function(){o(e.camera.frustum instanceof OrthographicFrustum)})),this._locked=!1,this._noSleep=new src,this._command=createCommand((function(){toggleVR(i,e,r,o)}),knockout$1.getObservable(this,"isVREnabled")),this._vrElement=defaultValue(getElement(t),document.body),this._callback=function(){!Fullscreen$1.fullscreen&&r()&&(e.useWebVR=!1,i._locked&&(unlockScreen(),i._locked=!1),i._noSleep.disable(),r(!1))},document.addEventListener(Fullscreen$1.changeEventName,this._callback)}Object.defineProperties(VRButtonViewModel.prototype,{vrElement:{get:function(){return this._vrElement},set:function(e){if(!(e instanceof Element))throw new DeveloperError("value must be a valid Element.");this._vrElement=e}},command:{get:function(){return this._command}}}),VRButtonViewModel.prototype.isDestroyed=function(){return!1},VRButtonViewModel.prototype.destroy=function(){this._eventHelper.removeAll(),document.removeEventListener(Fullscreen$1.changeEventName,this._callback),destroyObject(this)};const enterVRPath="M 5.3125 6.375 C 4.008126 6.375 2.96875 7.4141499 2.96875 8.71875 L 2.96875 19.5 C 2.96875 20.8043 4.008126 21.875 5.3125 21.875 L 13.65625 21.875 C 13.71832 20.0547 14.845166 18.59375 16.21875 18.59375 C 17.592088 18.59375 18.71881 20.0552 18.78125 21.875 L 27.09375 21.875 C 28.398125 21.875 29.4375 20.8043 29.4375 19.5 L 29.4375 8.71875 C 29.4375 7.4141499 28.398125 6.375 27.09375 6.375 L 5.3125 6.375 z M 9.625 10.4375 C 11.55989 10.4375 13.125 12.03385 13.125 13.96875 C 13.125 15.90365 11.55989 17.46875 9.625 17.46875 C 7.69011 17.46875 6.125 15.90365 6.125 13.96875 C 6.125 12.03385 7.69011 10.4375 9.625 10.4375 z M 22.46875 10.4375 C 24.40364 10.4375 25.96875 12.03385 25.96875 13.96875 C 25.96875 15.90365 24.40364 17.46875 22.46875 17.46875 C 20.53386 17.46875 18.96875 15.90365 18.96875 13.96875 C 18.96875 12.03385 20.53386 10.4375 22.46875 10.4375 z",exitVRPath="M 25.770585,2.4552065 C 15.72282,13.962707 10.699956,19.704407 8.1768352,22.580207 c -1.261561,1.4379 -1.902282,2.1427 -2.21875,2.5 -0.141624,0.1599 -0.208984,0.2355 -0.25,0.2813 l 0.6875,0.75 c 10e-5,-10e-5 0.679191,0.727 0.6875,0.7187 0.01662,-0.016 0.02451,-0.024 0.03125,-0.031 0.01348,-0.014 0.04013,-0.038 0.0625,-0.062 0.04474,-0.05 0.120921,-0.1315 0.28125,-0.3126 0.320657,-0.3619 0.956139,-1.0921 2.2187499,-2.5312 2.5252219,-2.8781 7.5454589,-8.6169 17.5937499,-20.1250005 l -1.5,-1.3125 z m -20.5624998,3.9063 c -1.304375,0 -2.34375,1.0391 -2.34375,2.3437 l 0,10.8125005 c 0,1.3043 1.039375,2.375 2.34375,2.375 l 2.25,0 c 1.9518039,-2.2246 7.4710958,-8.5584 13.5624998,-15.5312005 l -15.8124998,0 z m 21.1249998,0 c -1.855467,2.1245 -2.114296,2.4005 -3.59375,4.0936995 1.767282,0.1815 3.15625,1.685301 3.15625,3.500001 0,1.9349 -1.56511,3.5 -3.5,3.5 -1.658043,0 -3.043426,-1.1411 -3.40625,-2.6875 -1.089617,1.2461 -2.647139,2.9988 -3.46875,3.9375 0.191501,-0.062 0.388502,-0.094 0.59375,-0.094 1.373338,0 2.50006,1.4614 2.5625,3.2812 l 8.3125,0 c 1.304375,0 2.34375,-1.0707 2.34375,-2.375 l 0,-10.8125005 c 0,-1.3046 -1.039375,-2.3437 -2.34375,-2.3437 l -0.65625,0 z M 9.5518351,10.423906 c 1.9348899,0 3.4999999,1.596401 3.4999999,3.531301 0,1.9349 -1.56511,3.5 -3.4999999,3.5 -1.9348899,0 -3.4999999,-1.5651 -3.4999999,-3.5 0,-1.9349 1.56511,-3.531301 3.4999999,-3.531301 z m 4.2187499,10.312601 c -0.206517,0.2356 -0.844218,0.9428 -1.03125,1.1562 l 0.8125,0 c 0.01392,-0.4081 0.107026,-0.7968 0.21875,-1.1562 z";function VRButton(e,t,i){if(!defined(e))throw new DeveloperError("container is required.");if(!defined(t))throw new DeveloperError("scene is required.");e=getElement(e);const n=new VRButtonViewModel(t,i);n._exitVRPath=exitVRPath,n._enterVRPath=enterVRPath;const r=document.createElement("button");r.type="button",r.className="cesium-button cesium-vrButton",r.setAttribute("data-bind",'css: { "cesium-button-disabled" : _isOrthographic }, attr: { title: tooltip },click: command,enable: isVREnabled,cesiumSvgPath: { path: isVRMode ? _exitVRPath : _enterVRPath, width: 32, height: 32 }'),e.appendChild(r),knockout$1.applyBindings(n,r),this._container=e,this._viewModel=n,this._element=r}Object.defineProperties(VRButton.prototype,{container:{get:function(){return this._container}},viewModel:{get:function(){return this._viewModel}}}),VRButton.prototype.isDestroyed=function(){return!1},VRButton.prototype.destroy=function(){return this._viewModel.destroy(),knockout$1.cleanNode(this._element),this._container.removeChild(this._element),destroyObject(this)};const boundingSphereScratch=new BoundingSphere;function onTimelineScrubfunction(e){const t=e.clock;t.currentTime=e.timeJulian,t.shouldAnimate=!1}function getCesium3DTileFeatureDescription(e){const t=e.getPropertyIds();let i="";return t.forEach((function(t){const n=e.getProperty(t);defined(n)&&(i+=`<tr><th>${t}</th><td>${n}</td></tr>`)})),i.length>0&&(i=`<table class="cesium-infoBox-defaultTable"><tbody>${i}</tbody></table>`),i}function getCesium3DTileFeatureName(e){let t;const i=[],n=e.getPropertyIds();for(t=0;t<n.length;t++){const r=n[t];/^name$/i.test(r)?i[0]=e.getProperty(r):/name/i.test(r)?i[1]=e.getProperty(r):/^title$/i.test(r)?i[2]=e.getProperty(r):/^(id|identifier)$/i.test(r)?i[3]=e.getProperty(r):/element/i.test(r)?i[4]=e.getProperty(r):/(id|identifier)$/i.test(r)&&(i[5]=e.getProperty(r))}const r=i.length;for(t=0;t<r;t++){const e=i[t];if(defined(e)&&""!==e)return e}return"Unnamed Feature"}function pickEntity(e,t){const i=e.scene.pick(t.position);if(defined(i)){const e=defaultValue(i.id,i.primitive.id);if(e instanceof Entity)return e;if(i instanceof Cesium3DTileFeature)return new Entity({name:getCesium3DTileFeatureName(i),description:getCesium3DTileFeatureDescription(i),feature:i})}if(defined(e.scene.globe))return pickImageryLayerFeature(e,t.position)}const scratchStopTime=new JulianDate;function trackDataSourceClock(e,t,i){if(defined(i)){const n=i.clock;if(defined(n)&&(n.getValue(t),defined(e))){const t=n.startTime;let i=n.stopTime;JulianDate.equals(t,i)&&(i=JulianDate.addSeconds(t,CesiumMath$1.EPSILON2,scratchStopTime)),e.updateFromClock(),e.zoomTo(t,i)}}}const cartesian3Scratch=new Cartesian3;function pickImageryLayerFeature(e,t){const i=e.scene,n=i.camera.getPickRay(t),r=i.imageryLayers.pickImageryLayerFeatures(n,i);if(!defined(r))return;const o=new Entity({id:"Loading...",description:"Loading feature information..."});return r.then((function(t){if(e.selectedEntity!==o)return;if(!defined(t)||0===t.length)return void(e.selectedEntity=createNoFeaturesEntity());const i=t[0],n=new Entity({id:i.name,description:i.description});if(defined(i.position)){const t=e.scene.globe.ellipsoid.cartographicToCartesian(i.position,cartesian3Scratch);n.position=new ConstantPositionProperty(t)}e.selectedEntity=n}),(function(){e.selectedEntity===o&&(e.selectedEntity=createNoFeaturesEntity())})),o}function createNoFeaturesEntity(){return new Entity({id:"None",description:"No features found."})}function enableVRUI(e,t){const i=e._geocoder,n=e._homeButton,r=e._sceneModePicker,o=e._projectionPicker,a=e._baseLayerPicker,s=e._animation,c=e._timeline,l=e._fullscreenButton,d=e._infoBox,u=e._selectionIndicator,h=t?"hidden":"visible";if(defined(i)&&(i.container.style.visibility=h),defined(n)&&(n.container.style.visibility=h),defined(r)&&(r.container.style.visibility=h),defined(o)&&(o.container.style.visibility=h),defined(a)&&(a.container.style.visibility=h),defined(s)&&(s.container.style.visibility=h),defined(c)&&(c.container.style.visibility=h),defined(l)&&l.viewModel.isFullscreenEnabled&&(l.container.style.visibility=h),defined(d)&&(d.container.style.visibility=h),defined(u)&&(u.container.style.visibility=h),e._container){const i=t||!defined(l)?0:l.container.clientWidth;e._vrButton.container.style.right=`${i}px`,e.forceResize()}}function Viewer(e,t){if(!defined(e))throw new DeveloperError("container is required.");e=getElement(e);const i=!(defined((t=defaultValue(t,defaultValue.EMPTY_OBJECT)).globe)&&!1===t.globe||defined(t.baseLayerPicker)&&!1===t.baseLayerPicker);if(!i&&defined(t.selectedImageryProviderViewModel))throw new DeveloperError("options.selectedImageryProviderViewModel is not available when not using the BaseLayerPicker widget. Either specify options.baseLayer instead or set options.baseLayerPicker to true.");if(!i&&defined(t.selectedTerrainProviderViewModel))throw new DeveloperError("options.selectedTerrainProviderViewModel is not available when not using the BaseLayerPicker widget. Either specify options.terrainProvider instead or set options.baseLayerPicker to true.");const n=this,r=document.createElement("div");r.className="cesium-viewer",e.appendChild(r);const o=document.createElement("div");o.className="cesium-viewer-cesiumWidgetContainer",r.appendChild(o);const a=document.createElement("div");a.className="cesium-viewer-bottom",r.appendChild(a);const s=defaultValue(t.scene3DOnly,!1);let c,l,d=!1;defined(t.clockViewModel)?(l=t.clockViewModel,c=l.clock):(c=new Clock,l=new ClockViewModel(c),d=!0),defined(t.shouldAnimate)&&(c.shouldAnimate=t.shouldAnimate);const u=new CesiumWidget(o,{baseLayer:!(i||defined(t.baseLayer)||defined(t.imageryProvider))&&void 0,clock:c,skyBox:t.skyBox,skyAtmosphere:t.skyAtmosphere,sceneMode:t.sceneMode,mapProjection:t.mapProjection,globe:t.globe,orderIndependentTranslucency:t.orderIndependentTranslucency,contextOptions:t.contextOptions,useDefaultRenderLoop:t.useDefaultRenderLoop,targetFrameRate:t.targetFrameRate,showRenderLoopErrors:t.showRenderLoopErrors,useBrowserRecommendedResolution:t.useBrowserRecommendedResolution,creditContainer:defined(t.creditContainer)?t.creditContainer:a,creditViewport:t.creditViewport,scene3DOnly:s,shadows:t.shadows,terrainShadows:t.terrainShadows,mapMode2D:t.mapMode2D,blurActiveElementOnCanvasFocus:t.blurActiveElementOnCanvasFocus,requestRenderMode:t.requestRenderMode,maximumRenderTimeChange:t.maximumRenderTimeChange,depthPlaneEllipsoidOffset:t.depthPlaneEllipsoidOffset,msaaSamples:t.msaaSamples});let h=t.dataSources,p=!1;defined(h)||(h=new DataSourceCollection,p=!0);const f=u.scene,m=new DataSourceDisplay({scene:f,dataSourceCollection:h}),g=new EventHelper;let _,y;if(g.add(c.onTick,Viewer.prototype._onTick,this),g.add(f.morphStart,Viewer.prototype._clearTrackedObject,this),!defined(t.selectionIndicator)||!1!==t.selectionIndicator){const e=document.createElement("div");e.className="cesium-viewer-selectionIndicatorContainer",r.appendChild(e),_=new SelectionIndicator(e,f)}if(!defined(t.infoBox)||!1!==t.infoBox){const e=document.createElement("div");e.className="cesium-viewer-infoBoxContainer",r.appendChild(e),y=new InfoBox(e);const t=y.viewModel;g.add(t.cameraClicked,Viewer.prototype._onInfoBoxCameraClicked,this),g.add(t.closeClicked,Viewer.prototype._onInfoBoxClockClicked,this)}const C=document.createElement("div");let S,A,T,v,E,b,x,D,P,w,I,M,O,R,B;if(C.className="cesium-viewer-toolbar",r.appendChild(C),!defined(t.geocoder)||!1!==t.geocoder){const e=document.createElement("div");let i;e.className="cesium-viewer-geocoderContainer",C.appendChild(e),defined(t.geocoder)&&"boolean"!=typeof t.geocoder&&(i=Array.isArray(t.geocoder)?t.geocoder:[t.geocoder]),S=new Geocoder({container:e,geocoderServices:i,scene:f}),g.add(S.viewModel.search.beforeExecute,Viewer.prototype._clearObjects,this)}if(defined(t.homeButton)&&!1===t.homeButton||(A=new HomeButton(C,f),defined(S)&&g.add(A.viewModel.command.afterExecute,(function(){const e=S.viewModel;e.searchText="",e.isSearchInProgress&&e.search()})),g.add(A.viewModel.command.beforeExecute,Viewer.prototype._clearTrackedObject,this)),!0===t.sceneModePicker&&s)throw new DeveloperError("options.sceneModePicker is not available when options.scene3DOnly is set to true.");if(s||defined(t.sceneModePicker)&&!1===t.sceneModePicker||(T=new SceneModePicker(C,f)),t.projectionPicker&&(v=new ProjectionPicker(C,f)),i){const e=defaultValue(t.imageryProviderViewModels,createDefaultImageryProviderViewModels()),i=defaultValue(t.terrainProviderViewModels,createDefaultTerrainProviderViewModels());E=new BaseLayerPicker(C,{globe:f.globe,imageryProviderViewModels:e,selectedImageryProviderViewModel:t.selectedImageryProviderViewModel,terrainProviderViewModels:i,selectedTerrainProviderViewModel:t.selectedTerrainProviderViewModel});b=C.getElementsByClassName("cesium-baseLayerPicker-dropDown")[0]}if(defined(t.imageryProvider)&&!1!==t.imageryProvider&&(deprecationWarning("Viewer options.imageryProvider","options.imageryProvider was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107. Use options.baseLayer instead."),i&&(E.viewModel.selectedImagery=void 0),f.imageryLayers.removeAll(),f.imageryLayers.addImageryProvider(t.imageryProvider)),defined(t.baseLayer)&&!1!==t.baseLayer&&(i&&(E.viewModel.selectedImagery=void 0),f.imageryLayers.removeAll(),f.imageryLayers.add(t.baseLayer)),defined(t.terrainProvider)&&(i&&(E.viewModel.selectedTerrain=void 0),f.terrainProvider=t.terrainProvider),defined(t.terrain)){if(defined(t.terrainProvider))throw new DeveloperError("Specify either options.terrainProvider or options.terrain.");i&&(E.viewModel.selectedTerrain=void 0,f.globe.depthTestAgainstTerrain=!0),f.setTerrain(t.terrain)}if(!defined(t.navigationHelpButton)||!1!==t.navigationHelpButton){let e=!0;try{if(defined(window.localStorage)){const t=window.localStorage.getItem("cesium-hasSeenNavHelp");defined(t)&&Boolean(t)?e=!1:window.localStorage.setItem("cesium-hasSeenNavHelp","true")}}catch(N){}x=new NavigationHelpButton({container:C,instructionsInitiallyVisible:defaultValue(t.navigationInstructionsInitiallyVisible,e)})}if(!defined(t.animation)||!1!==t.animation){const e=document.createElement("div");e.className="cesium-viewer-animationContainer",r.appendChild(e),D=new Animation(e,new AnimationViewModel(l))}if(!defined(t.timeline)||!1!==t.timeline){const e=document.createElement("div");e.className="cesium-viewer-timelineContainer",r.appendChild(e),P=new Timeline(e,c),P.addEventListener("settime",onTimelineScrubfunction,!1),P.zoomTo(c.startTime,c.stopTime)}if(defined(t.fullscreenButton)&&!1===t.fullscreenButton||(M=document.createElement("div"),M.className="cesium-viewer-fullscreenContainer",r.appendChild(M),w=new FullscreenButton(M,t.fullscreenElement),I=subscribeAndEvaluate(w.viewModel,"isFullscreenEnabled",(function(e){M.style.display=e?"block":"none",defined(P)&&(P.container.style.right=`${M.clientWidth}px`,P.resize())}))),t.vrButton){const e=document.createElement("div");e.className="cesium-viewer-vrContainer",r.appendChild(e),O=new VRButton(e,f,t.fullScreenElement),R=subscribeAndEvaluate(O.viewModel,"isVREnabled",(function(t){e.style.display=t?"block":"none",defined(w)&&(e.style.right=`${M.clientWidth}px`),defined(P)&&(P.container.style.right=`${e.clientWidth}px`,P.resize())})),B=subscribeAndEvaluate(O.viewModel,"isVRMode",(function(e){enableVRUI(n,e)}))}this._baseLayerPickerDropDown=b,this._fullscreenSubscription=I,this._vrSubscription=R,this._vrModeSubscription=B,this._dataSourceChangedListeners={},this._automaticallyTrackDataSourceClocks=defaultValue(t.automaticallyTrackDataSourceClocks,!0),this._container=e,this._bottomContainer=a,this._element=r,this._cesiumWidget=u,this._selectionIndicator=_,this._infoBox=y,this._dataSourceCollection=h,this._destroyDataSourceCollection=p,this._dataSourceDisplay=m,this._clockViewModel=l,this._destroyClockViewModel=d,this._toolbar=C,this._homeButton=A,this._sceneModePicker=T,this._projectionPicker=v,this._baseLayerPicker=E,this._navigationHelpButton=x,this._animation=D,this._timeline=P,this._fullscreenButton=w,this._vrButton=O,this._geocoder=S,this._eventHelper=g,this._lastWidth=0,this._lastHeight=0,this._allowDataSourcesToSuspendAnimation=!0,this._entityView=void 0,this._enableInfoOrSelection=defined(y)||defined(_),this._clockTrackedDataSource=void 0,this._trackedEntity=void 0,this._needTrackedEntityUpdate=!1,this._selectedEntity=void 0,this._zoomIsFlight=!1,this._zoomTarget=void 0,this._zoomPromise=void 0,this._zoomOptions=void 0,this._selectedEntityChanged=new Event,this._trackedEntityChanged=new Event,knockout$1.track(this,["_trackedEntity","_selectedEntity","_clockTrackedDataSource"]),g.add(h.dataSourceAdded,Viewer.prototype._onDataSourceAdded,this),g.add(h.dataSourceRemoved,Viewer.prototype._onDataSourceRemoved,this),g.add(f.postUpdate,Viewer.prototype.resize,this),g.add(f.postRender,Viewer.prototype._postRender,this);const L=h.length;for(let F=0;F<L;F++)this._dataSourceAdded(h,h.get(F));this._dataSourceAdded(void 0,m.defaultDataSource),g.add(h.dataSourceAdded,Viewer.prototype._dataSourceAdded,this),g.add(h.dataSourceRemoved,Viewer.prototype._dataSourceRemoved,this),u.screenSpaceEventHandler.setInputAction((function(e){n.selectedEntity=pickEntity(n,e)}),ScreenSpaceEventType$1.LEFT_CLICK),u.screenSpaceEventHandler.setInputAction((function(e){const t=pickEntity(n,e);defined(t)?Property.getValueOrUndefined(t.position,n.clock.currentTime)?n.trackedEntity=t:n.zoomTo(t):defined(n.trackedEntity)&&(n.trackedEntity=void 0)}),ScreenSpaceEventType$1.LEFT_DOUBLE_CLICK)}function zoomToOrFly(e,t,i,n){if(!defined(t))throw new DeveloperError("zoomTarget is required.");cancelZoom(e);const r=new Promise((t=>{e._completeZoom=function(e){t(e)}}));return e._zoomPromise=r,e._zoomIsFlight=n,e._zoomOptions=i,Promise.resolve(t).then((function(t){if(e._zoomPromise===r){if(t instanceof ImageryLayer){let i;return i=defined(t.imageryProvider)?t.imageryProvider._readyPromise.then((()=>t.getImageryRectangle())):new Promise((e=>{const i=t.readyEvent.addEventListener((()=>{i(),e(t.getImageryRectangle())}))})),void i.then((function(t){return computeFlyToLocationForRectangle(t,e.scene)})).then((function(t){e._zoomPromise===r&&(e._zoomTarget=t)}))}if(t instanceof Cesium3DTileset||t instanceof TimeDynamicPointCloud||t instanceof VoxelPrimitive)e._zoomTarget=t;else if(t.isLoading&&defined(t.loadingEvent)){const i=t.loadingEvent.addEventListener((function(){i(),e._zoomPromise===r&&(e._zoomTarget=t.entities.values.slice(0))}))}else Array.isArray(t)?e._zoomTarget=t.slice(0):(defined((t=defaultValue(t.values,t)).entities)&&(t=t.entities.values),Array.isArray(t)?e._zoomTarget=t.slice(0):e._zoomTarget=[t])}})),e.scene.requestRender(),r}function clearZoom(e){e._zoomPromise=void 0,e._zoomTarget=void 0,e._zoomOptions=void 0}function cancelZoom(e){defined(e._zoomPromise)&&(clearZoom(e),e._completeZoom(!1))}function updateZoomTarget(e){const t=e._zoomTarget;if(!defined(t)||e.scene.mode===SceneMode$1.MORPHING)return;const i=e.scene,n=i.camera,r=defaultValue(e._zoomOptions,{});let o;if(t instanceof Cesium3DTileset||t instanceof VoxelPrimitive)return t._readyPromise.then((function(){const i=t.boundingSphere;defined(r.offset)||(r.offset=new HeadingPitchRange(0,-.5,i.radius)),o={offset:r.offset,duration:r.duration,maximumHeight:r.maximumHeight,complete:function(){e._completeZoom(!0)},cancel:function(){e._completeZoom(!1)}},e._zoomIsFlight?n.flyToBoundingSphere(t.boundingSphere,o):(n.viewBoundingSphere(i,r.offset),n.lookAtTransform(Matrix4.IDENTITY),e._completeZoom(!0)),clearZoom(e)})).catch((()=>{cancelZoom(e)}));if(t instanceof TimeDynamicPointCloud)return t._readyPromise.then((function(){const i=t.boundingSphere;defined(r.offset)||(r.offset=new HeadingPitchRange(0,-.5,i.radius)),o={offset:r.offset,duration:r.duration,maximumHeight:r.maximumHeight,complete:function(){e._completeZoom(!0)},cancel:function(){e._completeZoom(!1)}},e._zoomIsFlight?n.flyToBoundingSphere(i,o):(n.viewBoundingSphere(i,r.offset),n.lookAtTransform(Matrix4.IDENTITY),e._completeZoom(!0)),clearZoom(e)}));if(t instanceof Cartographic)return o={destination:i.mapProjection.ellipsoid.cartographicToCartesian(t),duration:r.duration,maximumHeight:r.maximumHeight,complete:function(){e._completeZoom(!0)},cancel:function(){e._completeZoom(!1)}},e._zoomIsFlight?n.flyTo(o):(n.setView(o),e._completeZoom(!0)),void clearZoom(e);const a=t,s=[];for(let l=0,d=a.length;l<d;l++){const t=e._dataSourceDisplay.getBoundingSphere(a[l],!1,boundingSphereScratch);if(t===BoundingSphereState$1.PENDING)return;t!==BoundingSphereState$1.FAILED&&s.push(BoundingSphere.clone(boundingSphereScratch))}if(0===s.length)return void cancelZoom(e);e.trackedEntity=void 0;const c=BoundingSphere.fromBoundingSpheres(s);e._zoomIsFlight?(clearZoom(e),n.flyToBoundingSphere(c,{duration:r.duration,maximumHeight:r.maximumHeight,complete:function(){e._completeZoom(!0)},cancel:function(){e._completeZoom(!1)},offset:r.offset})):(n.viewBoundingSphere(c,r.offset),n.lookAtTransform(Matrix4.IDENTITY),clearZoom(e),e._completeZoom(!0))}function updateTrackedEntity(e){if(!e._needTrackedEntityUpdate)return;const t=e._trackedEntity,i=e.clock.currentTime;if(!defined(Property.getValueOrUndefined(t.position,i)))return;const n=e.scene,r=e._dataSourceDisplay.getBoundingSphere(t,!1,boundingSphereScratch);if(r===BoundingSphereState$1.PENDING)return;const o=n.mode;o!==SceneMode$1.COLUMBUS_VIEW&&o!==SceneMode$1.SCENE2D||(n.screenSpaceCameraController.enableTranslate=!1),o!==SceneMode$1.COLUMBUS_VIEW&&o!==SceneMode$1.SCENE3D||(n.screenSpaceCameraController.enableTilt=!1);const a=r!==BoundingSphereState$1.FAILED?boundingSphereScratch:void 0;e._entityView=new EntityView(t,n,n.mapProjection.ellipsoid),e._entityView.update(i,a),e._needTrackedEntityUpdate=!1}function viewerCesium3DTilesInspectorMixin(e){Check$1.typeOf.object("viewer",e);const t=document.createElement("div");t.className="cesium-viewer-cesium3DTilesInspectorContainer",e.container.appendChild(t);const i=new Cesium3DTilesInspector(t,e.scene);Object.defineProperties(e,{cesium3DTilesInspector:{get:function(){return i}}})}function viewerCesiumInspectorMixin(e){if(!defined(e))throw new DeveloperError("viewer is required.");const t=document.createElement("div");t.className="cesium-viewer-cesiumInspectorContainer",e.container.appendChild(t);const i=new CesiumInspector(t,e.scene);Object.defineProperties(e,{cesiumInspector:{get:function(){return i}}})}function viewerDragDropMixin(e,t){if(!defined(e))throw new DeveloperError("viewer is required.");if(e.hasOwnProperty("dropTarget"))throw new DeveloperError("dropTarget is already defined by another mixin.");if(e.hasOwnProperty("dropEnabled"))throw new DeveloperError("dropEnabled is already defined by another mixin.");if(e.hasOwnProperty("dropError"))throw new DeveloperError("dropError is already defined by another mixin.");if(e.hasOwnProperty("clearOnDrop"))throw new DeveloperError("clearOnDrop is already defined by another mixin.");if(e.hasOwnProperty("flyToOnDrop"))throw new DeveloperError("flyToOnDrop is already defined by another mixin.");t=defaultValue(t,defaultValue.EMPTY_OBJECT);let i=!0,n=defaultValue(t.flyToOnDrop,!0);const r=new Event;let o=defaultValue(t.clearOnDrop,!0),a=defaultValue(t.dropTarget,e.container),s=defaultValue(t.clampToGround,!0),c=t.proxy;function l(t){stop(t),o&&(e.entities.removeAll(),e.dataSources.removeAll());const i=t.dataTransfer.files,n=i.length;for(let r=0;r<n;r++){const t=i[r],n=new FileReader;n.onload=createOnLoadCallback(e,t,c,s),n.onerror=createDropErrorCallback(e,t),n.readAsText(t)}}a=getElement(a),Object.defineProperties(e,{dropTarget:{get:function(){return a},set:function(e){if(!defined(e))throw new DeveloperError("value is required.");unsubscribe(a,l),a=e,subscribe(a,l)}},dropEnabled:{get:function(){return i},set:function(e){e!==i&&(e?subscribe(a,l):unsubscribe(a,l),i=e)}},dropError:{get:function(){return r}},clearOnDrop:{get:function(){return o},set:function(e){o=e}},flyToOnDrop:{get:function(){return n},set:function(e){n=e}},proxy:{get:function(){return c},set:function(e){c=e}},clampToGround:{get:function(){return s},set:function(e){s=e}}}),subscribe(a,l),e.destroy=wrapFunction(e,e.destroy,(function(){e.dropEnabled=!1})),e._handleDrop=l}function stop(e){e.stopPropagation(),e.preventDefault()}function unsubscribe(e,t){const i=e;defined(i)&&(i.removeEventListener("drop",t,!1),i.removeEventListener("dragenter",stop,!1),i.removeEventListener("dragover",stop,!1),i.removeEventListener("dragexit",stop,!1))}function subscribe(e,t){e.addEventListener("drop",t,!1),e.addEventListener("dragenter",stop,!1),e.addEventListener("dragover",stop,!1),e.addEventListener("dragexit",stop,!1)}function createOnLoadCallback(e,t,i,n){const r=e.scene;return function(o){const a=t.name;try{let s;if(/\.czml$/i.test(a))s=CzmlDataSource.load(JSON.parse(o.target.result),{sourceUri:a});else if(/\.geojson$/i.test(a)||/\.json$/i.test(a)||/\.topojson$/i.test(a))s=GeoJsonDataSource.load(JSON.parse(o.target.result),{sourceUri:a,clampToGround:n});else if(/\.(kml|kmz)$/i.test(a))s=KmlDataSource.load(t,{sourceUri:a,proxy:i,camera:r.camera,canvas:r.canvas,clampToGround:n,screenOverlayContainer:e.container});else{if(!/\.gpx$/i.test(a))return void e.dropError.raiseEvent(e,a,`Unrecognized file: ${a}`);s=GpxDataSource.load(t,{sourceUri:a,proxy:i})}defined(s)&&e.dataSources.add(s).then((function(t){e.flyToOnDrop&&e.flyTo(t)})).catch((function(t){e.dropError.raiseEvent(e,a,t)}))}catch(s){e.dropError.raiseEvent(e,a,s)}}}function createDropErrorCallback(e,t){return function(i){e.dropError.raiseEvent(e,t.name,i.target.error)}}function viewerPerformanceWatchdogMixin(e,t){if(!defined(e))throw new DeveloperError("viewer is required.");t=defaultValue(t,defaultValue.EMPTY_OBJECT);const i=new PerformanceWatchdog({scene:e.scene,container:e.bottomContainer,lowFrameRateMessage:t.lowFrameRateMessage});Object.defineProperties(e,{performanceWatchdog:{get:function(){return i}}})}function formatShaderString(e){const t=e.split("\n");let i;for(i=0;i<t.length&&!t[i].match(/\S/);i++);if(i===t.length)return"";let n="";const r=/^\s*/,o=t[i].match(r)[0].length;for(let a=i;a<t.length;a++){let e=t[a];e.match(r)[0].length>=o&&(e=e.slice(o)),n+=`${e}\n`}return n}function VoxelInspectorViewModel(e){Check$1.typeOf.object("scene",e),this._scene=e,this._voxelPrimitive=void 0,this._customShaderCompilationRemoveCallback=void 0,this._definedProperties=[],this._getPrimitiveFunctions=[],this._modelMatrixReady=!1;const t=this;function i(i){const{name:n,initialValue:r}=i;t._definedProperties.push(n);let o=i.setPrimitiveFunction;!0===o&&(o=function(e){t._voxelPrimitive[n]=e});let a=i.getPrimitiveFunction;!0===a&&(a=function(){t[n]=t._voxelPrimitive[n]}),defined(a)&&t._getPrimitiveFunctions.push(a);const s=knockout$1.observable();return knockout$1.defineProperty(t,n,{get:function(){return s()},set:function(i){"number"==typeof r&&"string"==typeof i&&(i=Number(i),isNaN(i)&&(i=r)),"boolean"==typeof r&&"number"==typeof i&&(i=1===i),s(i),defined(o)&&defined(t._voxelPrimitive)&&(o(i),e.requestRender())}}),t[n]=r,s}function n(e,i){return function(n){const r=t._voxelPrimitive[e].clone();r[i]=n,t._voxelPrimitive[e]=r}}i({name:"inspectorVisible",initialValue:!0}),i({name:"displayVisible",initialValue:!1}),i({name:"transformVisible",initialValue:!1}),i({name:"boundsVisible",initialValue:!1}),i({name:"clippingVisible",initialValue:!1}),i({name:"shaderVisible",initialValue:!1}),i({name:"shaderString",initialValue:"",getPrimitiveFunction:function(){const e=t._voxelPrimitive.customShader.fragmentShaderText;t.shaderString=formatShaderString(e)}}),i({name:"shaderCompilationMessage",initialValue:""}),i({name:"shaderCompilationSuccess",initialValue:!0}),i({name:"depthTest",initialValue:!1,setPrimitiveFunction:!0,getPrimitiveFunction:!0}),i({name:"show",initialValue:!0,setPrimitiveFunction:!0,getPrimitiveFunction:!0}),i({name:"disableUpdate",initialValue:!1,setPrimitiveFunction:!0,getPrimitiveFunction:!0}),i({name:"debugDraw",initialValue:!1,setPrimitiveFunction:!0,getPrimitiveFunction:!0}),i({name:"jitter",initialValue:!0,setPrimitiveFunction:!0,getPrimitiveFunction:!0}),i({name:"nearestSampling",initialValue:!0,setPrimitiveFunction:!0,getPrimitiveFunction:!0}),i({name:"screenSpaceError",initialValue:4,setPrimitiveFunction:!0,getPrimitiveFunction:!0}),i({name:"stepSize",initialValue:1,setPrimitiveFunction:!0,getPrimitiveFunction:!0}),i({name:"shapeIsBox",getPrimitiveFunction:function(){const e=t._voxelPrimitive.shape;t.shapeIsBox=e===VoxelShapeType$1.BOX}}),i({name:"shapeIsEllipsoid",getPrimitiveFunction:function(){const e=t._voxelPrimitive.shape;t.shapeIsEllipsoid=e===VoxelShapeType$1.ELLIPSOID}}),i({name:"shapeIsCylinder",getPrimitiveFunction:function(){const e=t._voxelPrimitive.shape;t.shapeIsCylinder=e===VoxelShapeType$1.CYLINDER}}),i({name:"boundsBoxMaxX",initialValue:0,setPrimitiveFunction:n("maxBounds","x"),getPrimitiveFunction:function(){t.boundsBoxMaxX=t._voxelPrimitive.maxBounds.x}}),i({name:"boundsBoxMinX",initialValue:0,setPrimitiveFunction:n("minBounds","x"),getPrimitiveFunction:function(){t.boundsBoxMinX=t._voxelPrimitive.minBounds.x}}),i({name:"boundsBoxMaxY",initialValue:0,setPrimitiveFunction:n("maxBounds","y"),getPrimitiveFunction:function(){t.boundsBoxMaxY=t._voxelPrimitive.maxBounds.y}}),i({name:"boundsBoxMinY",initialValue:0,setPrimitiveFunction:n("minBounds","y"),getPrimitiveFunction:function(){t.boundsBoxMinY=t._voxelPrimitive.minBounds.y}}),i({name:"boundsBoxMaxZ",initialValue:0,setPrimitiveFunction:n("maxBounds","z"),getPrimitiveFunction:function(){t.boundsBoxMaxZ=t._voxelPrimitive.maxBounds.z}}),i({name:"boundsBoxMinZ",initialValue:0,setPrimitiveFunction:n("minBounds","z"),getPrimitiveFunction:function(){t.boundsBoxMinZ=t._voxelPrimitive.minBounds.z}}),i({name:"boundsEllipsoidMaxLongitude",initialValue:0,setPrimitiveFunction:n("maxBounds","x"),getPrimitiveFunction:function(){t.boundsEllipsoidMaxLongitude=t._voxelPrimitive.maxBounds.x}}),i({name:"boundsEllipsoidMinLongitude",initialValue:0,setPrimitiveFunction:n("minBounds","x"),getPrimitiveFunction:function(){t.boundsEllipsoidMinLongitude=t._voxelPrimitive.minBounds.x}}),i({name:"boundsEllipsoidMaxLatitude",initialValue:0,setPrimitiveFunction:n("maxBounds","y"),getPrimitiveFunction:function(){t.boundsEllipsoidMaxLatitude=t._voxelPrimitive.maxBounds.y}}),i({name:"boundsEllipsoidMinLatitude",initialValue:0,setPrimitiveFunction:n("minBounds","y"),getPrimitiveFunction:function(){t.boundsEllipsoidMinLatitude=t._voxelPrimitive.minBounds.y}}),i({name:"boundsEllipsoidMaxHeight",initialValue:0,setPrimitiveFunction:n("maxBounds","z"),getPrimitiveFunction:function(){t.boundsEllipsoidMaxHeight=t._voxelPrimitive.maxBounds.z}}),i({name:"boundsEllipsoidMinHeight",initialValue:0,setPrimitiveFunction:n("minBounds","z"),getPrimitiveFunction:function(){t.boundsEllipsoidMinHeight=t._voxelPrimitive.minBounds.z}}),i({name:"boundsCylinderMaxRadius",initialValue:0,setPrimitiveFunction:n("maxBounds","x"),getPrimitiveFunction:function(){t.boundsCylinderMaxRadius=t._voxelPrimitive.maxBounds.x}}),i({name:"boundsCylinderMinRadius",initialValue:0,setPrimitiveFunction:n("minBounds","x"),getPrimitiveFunction:function(){t.boundsCylinderMinRadius=t._voxelPrimitive.minBounds.x}}),i({name:"boundsCylinderMaxHeight",initialValue:0,setPrimitiveFunction:n("maxBounds","y"),getPrimitiveFunction:function(){t.boundsCylinderMaxHeight=t._voxelPrimitive.maxBounds.y}}),i({name:"boundsCylinderMinHeight",initialValue:0,setPrimitiveFunction:n("minBounds","y"),getPrimitiveFunction:function(){t.boundsCylinderMinHeight=t._voxelPrimitive.minBounds.y}}),i({name:"boundsCylinderMaxAngle",initialValue:0,setPrimitiveFunction:n("maxBounds","z"),getPrimitiveFunction:function(){t.boundsCylinderMaxAngle=t._voxelPrimitive.maxBounds.z}}),i({name:"boundsCylinderMinAngle",initialValue:0,setPrimitiveFunction:n("minBounds","z"),getPrimitiveFunction:function(){t.boundsCylinderMinAngle=t._voxelPrimitive.minBounds.z}}),i({name:"clippingBoxMaxX",initialValue:0,setPrimitiveFunction:n("maxClippingBounds","x"),getPrimitiveFunction:function(){t.clippingBoxMaxX=t._voxelPrimitive.maxClippingBounds.x}}),i({name:"clippingBoxMinX",initialValue:0,setPrimitiveFunction:n("minClippingBounds","x"),getPrimitiveFunction:function(){t.clippingBoxMinX=t._voxelPrimitive.minClippingBounds.x}}),i({name:"clippingBoxMaxY",initialValue:0,setPrimitiveFunction:n("maxClippingBounds","y"),getPrimitiveFunction:function(){t.clippingBoxMaxY=t._voxelPrimitive.maxClippingBounds.y}}),i({name:"clippingBoxMinY",initialValue:0,setPrimitiveFunction:n("minClippingBounds","y"),getPrimitiveFunction:function(){t.clippingBoxMinY=t._voxelPrimitive.minClippingBounds.y}}),i({name:"clippingBoxMaxZ",initialValue:0,setPrimitiveFunction:n("maxClippingBounds","z"),getPrimitiveFunction:function(){t.clippingBoxMaxZ=t._voxelPrimitive.maxClippingBounds.z}}),i({name:"clippingBoxMinZ",initialValue:0,setPrimitiveFunction:n("minClippingBounds","z"),getPrimitiveFunction:function(){t.clippingBoxMinZ=t._voxelPrimitive.minClippingBounds.z}}),i({name:"clippingEllipsoidMaxLongitude",initialValue:0,setPrimitiveFunction:n("maxClippingBounds","x"),getPrimitiveFunction:function(){t.clippingEllipsoidMaxLongitude=t._voxelPrimitive.maxClippingBounds.x}}),i({name:"clippingEllipsoidMinLongitude",initialValue:0,setPrimitiveFunction:n("minClippingBounds","x"),getPrimitiveFunction:function(){t.clippingEllipsoidMinLongitude=t._voxelPrimitive.minClippingBounds.x}}),i({name:"clippingEllipsoidMaxLatitude",initialValue:0,setPrimitiveFunction:n("maxClippingBounds","y"),getPrimitiveFunction:function(){t.clippingEllipsoidMaxLatitude=t._voxelPrimitive.maxClippingBounds.y}}),i({name:"clippingEllipsoidMinLatitude",initialValue:0,setPrimitiveFunction:n("minClippingBounds","y"),getPrimitiveFunction:function(){t.clippingEllipsoidMinLatitude=t._voxelPrimitive.minClippingBounds.y}}),i({name:"clippingEllipsoidMaxHeight",initialValue:0,setPrimitiveFunction:n("maxClippingBounds","z"),getPrimitiveFunction:function(){t.clippingEllipsoidMaxHeight=t._voxelPrimitive.maxClippingBounds.z}}),i({name:"clippingEllipsoidMinHeight",initialValue:0,setPrimitiveFunction:n("minClippingBounds","z"),getPrimitiveFunction:function(){t.clippingEllipsoidMinHeight=t._voxelPrimitive.minClippingBounds.z}}),i({name:"clippingCylinderMaxRadius",initialValue:0,setPrimitiveFunction:n("maxClippingBounds","x"),getPrimitiveFunction:function(){t.clippingCylinderMaxRadius=t._voxelPrimitive.maxClippingBounds.x}}),i({name:"clippingCylinderMinRadius",initialValue:0,setPrimitiveFunction:n("minClippingBounds","x"),getPrimitiveFunction:function(){t.clippingCylinderMinRadius=t._voxelPrimitive.minClippingBounds.x}}),i({name:"clippingCylinderMaxHeight",initialValue:0,setPrimitiveFunction:n("maxClippingBounds","y"),getPrimitiveFunction:function(){t.clippingCylinderMaxHeight=t._voxelPrimitive.maxClippingBounds.y}}),i({name:"clippingCylinderMinHeight",initialValue:0,setPrimitiveFunction:n("minClippingBounds","y"),getPrimitiveFunction:function(){t.clippingCylinderMinHeight=t._voxelPrimitive.minClippingBounds.y}}),i({name:"clippingCylinderMaxAngle",initialValue:0,setPrimitiveFunction:n("maxClippingBounds","z"),getPrimitiveFunction:function(){t.clippingCylinderMaxAngle=t._voxelPrimitive.maxClippingBounds.z}}),i({name:"clippingCylinderMinAngle",initialValue:0,setPrimitiveFunction:n("minClippingBounds","z"),getPrimitiveFunction:function(){t.clippingCylinderMinAngle=t._voxelPrimitive.minClippingBounds.z}}),i({name:"translationX",initialValue:0,setPrimitiveFunction:function(){t._modelMatrixReady&&setModelMatrix(t)},getPrimitiveFunction:function(){t.translationX=Matrix4.getTranslation(t._voxelPrimitive.modelMatrix,new Cartesian3).x}}),i({name:"translationY",initialValue:0,setPrimitiveFunction:function(){t._modelMatrixReady&&setModelMatrix(t)},getPrimitiveFunction:function(){t.translationY=Matrix4.getTranslation(t._voxelPrimitive.modelMatrix,new Cartesian3).y}}),i({name:"translationZ",initialValue:0,setPrimitiveFunction:function(){t._modelMatrixReady&&setModelMatrix(t)},getPrimitiveFunction:function(){t.translationZ=Matrix4.getTranslation(t._voxelPrimitive.modelMatrix,new Cartesian3).z}}),i({name:"scaleX",initialValue:1,setPrimitiveFunction:function(){t._modelMatrixReady&&setModelMatrix(t)},getPrimitiveFunction:function(){t.scaleX=Matrix4.getScale(t._voxelPrimitive.modelMatrix,new Cartesian3).x}}),i({name:"scaleY",initialValue:1,setPrimitiveFunction:function(){t._modelMatrixReady&&setModelMatrix(t)},getPrimitiveFunction:function(){t.scaleY=Matrix4.getScale(t._voxelPrimitive.modelMatrix,new Cartesian3).y}}),i({name:"scaleZ",initialValue:1,setPrimitiveFunction:function(){t._modelMatrixReady&&setModelMatrix(t)},getPrimitiveFunction:function(){t.scaleZ=Matrix4.getScale(t._voxelPrimitive.modelMatrix,new Cartesian3).z}}),i({name:"angleX",initialValue:0,setPrimitiveFunction:function(){t._modelMatrixReady&&setModelMatrix(t)}}),i({name:"angleY",initialValue:0,setPrimitiveFunction:function(){t._modelMatrixReady&&setModelMatrix(t)}}),i({name:"angleZ",initialValue:0,setPrimitiveFunction:function(){t._modelMatrixReady&&setModelMatrix(t)}})}Object.defineProperties(Viewer.prototype,{container:{get:function(){return this._container}},creditDisplay:{get:function(){return this._cesiumWidget.creditDisplay}},bottomContainer:{get:function(){return this._bottomContainer}},cesiumWidget:{get:function(){return this._cesiumWidget}},selectionIndicator:{get:function(){return this._selectionIndicator}},infoBox:{get:function(){return this._infoBox}},geocoder:{get:function(){return this._geocoder}},homeButton:{get:function(){return this._homeButton}},sceneModePicker:{get:function(){return this._sceneModePicker}},projectionPicker:{get:function(){return this._projectionPicker}},baseLayerPicker:{get:function(){return this._baseLayerPicker}},navigationHelpButton:{get:function(){return this._navigationHelpButton}},animation:{get:function(){return this._animation}},timeline:{get:function(){return this._timeline}},fullscreenButton:{get:function(){return this._fullscreenButton}},vrButton:{get:function(){return this._vrButton}},dataSourceDisplay:{get:function(){return this._dataSourceDisplay}},entities:{get:function(){return this._dataSourceDisplay.defaultDataSource.entities}},dataSources:{get:function(){return this._dataSourceCollection}},canvas:{get:function(){return this._cesiumWidget.canvas}},scene:{get:function(){return this._cesiumWidget.scene}},shadows:{get:function(){return this.scene.shadowMap.enabled},set:function(e){this.scene.shadowMap.enabled=e}},terrainShadows:{get:function(){return this.scene.globe.shadows},set:function(e){this.scene.globe.shadows=e}},shadowMap:{get:function(){return this.scene.shadowMap}},imageryLayers:{get:function(){return this.scene.imageryLayers}},terrainProvider:{get:function(){return this.scene.terrainProvider},set:function(e){this.scene.terrainProvider=e}},camera:{get:function(){return this.scene.camera}},postProcessStages:{get:function(){return this.scene.postProcessStages}},clock:{get:function(){return this._clockViewModel.clock}},clockViewModel:{get:function(){return this._clockViewModel}},screenSpaceEventHandler:{get:function(){return this._cesiumWidget.screenSpaceEventHandler}},targetFrameRate:{get:function(){return this._cesiumWidget.targetFrameRate},set:function(e){this._cesiumWidget.targetFrameRate=e}},useDefaultRenderLoop:{get:function(){return this._cesiumWidget.useDefaultRenderLoop},set:function(e){this._cesiumWidget.useDefaultRenderLoop=e}},resolutionScale:{get:function(){return this._cesiumWidget.resolutionScale},set:function(e){this._cesiumWidget.resolutionScale=e}},useBrowserRecommendedResolution:{get:function(){return this._cesiumWidget.useBrowserRecommendedResolution},set:function(e){this._cesiumWidget.useBrowserRecommendedResolution=e}},allowDataSourcesToSuspendAnimation:{get:function(){return this._allowDataSourcesToSuspendAnimation},set:function(e){this._allowDataSourcesToSuspendAnimation=e}},trackedEntity:{get:function(){return this._trackedEntity},set:function(e){if(this._trackedEntity!==e){this._trackedEntity=e,cancelZoom(this);const t=this.scene,i=t.mode;defined(e)&&defined(e.position)?this._needTrackedEntityUpdate=!0:(this._needTrackedEntityUpdate=!1,i!==SceneMode$1.COLUMBUS_VIEW&&i!==SceneMode$1.SCENE2D||(t.screenSpaceCameraController.enableTranslate=!0),i!==SceneMode$1.COLUMBUS_VIEW&&i!==SceneMode$1.SCENE3D||(t.screenSpaceCameraController.enableTilt=!0),this._entityView=void 0,this.camera.lookAtTransform(Matrix4.IDENTITY)),this._trackedEntityChanged.raiseEvent(e),this.scene.requestRender()}}},selectedEntity:{get:function(){return this._selectedEntity},set:function(e){if(this._selectedEntity!==e){this._selectedEntity=e;const t=defined(this._selectionIndicator)?this._selectionIndicator.viewModel:void 0;defined(e)?defined(t)&&t.animateAppear():defined(t)&&t.animateDepart(),this._selectedEntityChanged.raiseEvent(e)}}},selectedEntityChanged:{get:function(){return this._selectedEntityChanged}},trackedEntityChanged:{get:function(){return this._trackedEntityChanged}},clockTrackedDataSource:{get:function(){return this._clockTrackedDataSource},set:function(e){this._clockTrackedDataSource!==e&&(this._clockTrackedDataSource=e,trackDataSourceClock(this._timeline,this.clock,e))}}}),Viewer.prototype.extend=function(e,t){if(!defined(e))throw new DeveloperError("mixin is required.");e(this,t)},Viewer.prototype.resize=function(){const e=this._cesiumWidget,t=this._container,i=t.clientWidth,n=t.clientHeight,r=defined(this._animation),o=defined(this._timeline);if(e.resize(),i===this._lastWidth&&n===this._lastHeight)return;const a=n-125,s=this._baseLayerPickerDropDown;if(defined(s)&&(s.style.maxHeight=`${a}px`),defined(this._geocoder)){this._geocoder.searchSuggestionsContainer.style.maxHeight=`${a}px`}defined(this._infoBox)&&(this._infoBox.viewModel.maxHeight=a);const c=this._timeline;let l,d=0,u=0,h=0;if(r&&"hidden"!==window.getComputedStyle(this._animation.container).visibility){const e=this._lastWidth;l=this._animation.container,i>900?(d=169,e<=900&&(l.style.width="169px",l.style.height="112px",this._animation.resize())):i>=600?(d=136,(e<600||e>900)&&(l.style.width="136px",l.style.height="90px",this._animation.resize())):(d=106,(e>600||0===e)&&(l.style.width="106px",l.style.height="70px",this._animation.resize())),u=d+5}if(o&&"hidden"!==window.getComputedStyle(this._timeline.container).visibility){const e=this._fullscreenButton,t=this._vrButton,i=c.container,n=i.style;h=i.clientHeight+3,n.left=`${d}px`;let r=0;defined(e)&&(r+=e.container.clientWidth),defined(t)&&(r+=t.container.clientWidth),n.right=`${r}px`,c.resize()}this._bottomContainer.style.left=`${u}px`,this._bottomContainer.style.bottom=`${h}px`,this._lastWidth=i,this._lastHeight=n},Viewer.prototype.forceResize=function(){this._lastWidth=0,this.resize()},Viewer.prototype.render=function(){this._cesiumWidget.render()},Viewer.prototype.isDestroyed=function(){return!1},Viewer.prototype.destroy=function(){let e;this.screenSpaceEventHandler.removeInputAction(ScreenSpaceEventType$1.LEFT_CLICK),this.screenSpaceEventHandler.removeInputAction(ScreenSpaceEventType$1.LEFT_DOUBLE_CLICK);const t=this.dataSources,i=t.length;for(e=0;e<i;e++)this._dataSourceRemoved(t,t.get(e));return this._dataSourceRemoved(void 0,this._dataSourceDisplay.defaultDataSource),this._container.removeChild(this._element),this._element.removeChild(this._toolbar),this._eventHelper.removeAll(),defined(this._geocoder)&&(this._geocoder=this._geocoder.destroy()),defined(this._homeButton)&&(this._homeButton=this._homeButton.destroy()),defined(this._sceneModePicker)&&(this._sceneModePicker=this._sceneModePicker.destroy()),defined(this._projectionPicker)&&(this._projectionPicker=this._projectionPicker.destroy()),defined(this._baseLayerPicker)&&(this._baseLayerPicker=this._baseLayerPicker.destroy()),defined(this._animation)&&(this._element.removeChild(this._animation.container),this._animation=this._animation.destroy()),defined(this._timeline)&&(this._timeline.removeEventListener("settime",onTimelineScrubfunction,!1),this._element.removeChild(this._timeline.container),this._timeline=this._timeline.destroy()),defined(this._fullscreenButton)&&(this._fullscreenSubscription.dispose(),this._element.removeChild(this._fullscreenButton.container),this._fullscreenButton=this._fullscreenButton.destroy()),defined(this._vrButton)&&(this._vrSubscription.dispose(),this._vrModeSubscription.dispose(),this._element.removeChild(this._vrButton.container),this._vrButton=this._vrButton.destroy()),defined(this._infoBox)&&(this._element.removeChild(this._infoBox.container),this._infoBox=this._infoBox.destroy()),defined(this._selectionIndicator)&&(this._element.removeChild(this._selectionIndicator.container),this._selectionIndicator=this._selectionIndicator.destroy()),this._destroyClockViewModel&&(this._clockViewModel=this._clockViewModel.destroy()),this._dataSourceDisplay=this._dataSourceDisplay.destroy(),this._cesiumWidget=this._cesiumWidget.destroy(),this._destroyDataSourceCollection&&(this._dataSourceCollection=this._dataSourceCollection.destroy()),destroyObject(this)},Viewer.prototype._dataSourceAdded=function(e,t){t.entities.collectionChanged.addEventListener(Viewer.prototype._onEntityCollectionChanged,this)},Viewer.prototype._dataSourceRemoved=function(e,t){const i=t.entities;i.collectionChanged.removeEventListener(Viewer.prototype._onEntityCollectionChanged,this),defined(this.trackedEntity)&&i.getById(this.trackedEntity.id)===this.trackedEntity&&(this.trackedEntity=void 0),defined(this.selectedEntity)&&i.getById(this.selectedEntity.id)===this.selectedEntity&&(this.selectedEntity=void 0)},Viewer.prototype._onTick=function(e){const t=e.currentTime,i=this._dataSourceDisplay.update(t);this._allowDataSourcesToSuspendAnimation&&(this._clockViewModel.canAnimate=i);const n=this._entityView;if(defined(n)){const e=this._trackedEntity;this._dataSourceDisplay.getBoundingSphere(e,!1,boundingSphereScratch)===BoundingSphereState$1.DONE&&n.update(t,boundingSphereScratch)}let r,o=!1;const a=this.selectedEntity,s=defined(a)&&this._enableInfoOrSelection;if(s&&a.isShowing&&a.isAvailable(t)){this._dataSourceDisplay.getBoundingSphere(a,!0,boundingSphereScratch)!==BoundingSphereState$1.FAILED?r=boundingSphereScratch.center:defined(a.position)&&(r=a.position.getValue(t,r)),o=defined(r)}const c=defined(this._selectionIndicator)?this._selectionIndicator.viewModel:void 0;defined(c)&&(c.position=Cartesian3.clone(r,c.position),c.showSelection=s&&o,c.update());const l=defined(this._infoBox)?this._infoBox.viewModel:void 0;defined(l)&&(l.showInfo=s,l.enableCamera=o,l.isCameraTracking=this.trackedEntity===this.selectedEntity,s?(l.titleText=defaultValue(a.name,a.id),l.description=Property.getValueOrDefault(a.description,t,"")):(l.titleText="",l.description=""))},Viewer.prototype._onEntityCollectionChanged=function(e,t,i){const n=i.length;for(let r=0;r<n;r++){const e=i[r];this.trackedEntity===e&&(this.trackedEntity=void 0),this.selectedEntity===e&&(this.selectedEntity=void 0)}},Viewer.prototype._onInfoBoxCameraClicked=function(e){if(e.isCameraTracking&&this.trackedEntity===this.selectedEntity)this.trackedEntity=void 0;else{defined(this.selectedEntity.position)?this.trackedEntity=this.selectedEntity:this.zoomTo(this.selectedEntity)}},Viewer.prototype._clearTrackedObject=function(){this.trackedEntity=void 0},Viewer.prototype._onInfoBoxClockClicked=function(e){this.selectedEntity=void 0},Viewer.prototype._clearObjects=function(){this.trackedEntity=void 0,this.selectedEntity=void 0},Viewer.prototype._onDataSourceChanged=function(e){this.clockTrackedDataSource===e&&trackDataSourceClock(this.timeline,this.clock,e)},Viewer.prototype._onDataSourceAdded=function(e,t){this._automaticallyTrackDataSourceClocks&&(this.clockTrackedDataSource=t);const i=t.entities.id,n=this._eventHelper.add(t.changedEvent,Viewer.prototype._onDataSourceChanged,this);this._dataSourceChangedListeners[i]=n},Viewer.prototype._onDataSourceRemoved=function(e,t){const i=this.clockTrackedDataSource===t,n=t.entities.id;if(this._dataSourceChangedListeners[n](),this._dataSourceChangedListeners[n]=void 0,i){const t=e.length;this._automaticallyTrackDataSourceClocks&&t>0?this.clockTrackedDataSource=e.get(t-1):this.clockTrackedDataSource=void 0}},Viewer.prototype.zoomTo=function(e,t){return zoomToOrFly(this,e,{offset:t},!1)},Viewer.prototype.flyTo=function(e,t){return zoomToOrFly(this,e,t,!0)},Viewer.prototype._postRender=function(){updateZoomTarget(this),updateTrackedEntity(this)};const scratchTranslation=new Cartesian3,scratchScale=new Cartesian3,scratchHeadingPitchRoll=new HeadingPitchRoll,scratchRotation=new Matrix3;function setModelMatrix(e){const t=Cartesian3.fromElements(e.translationX,e.translationY,e.translationZ,scratchTranslation),i=Cartesian3.fromElements(e.scaleX,e.scaleY,e.scaleZ,scratchScale),n=scratchHeadingPitchRoll;n.heading=e.angleX,n.pitch=e.angleY,n.roll=e.angleZ;const r=Matrix3.fromHeadingPitchRoll(n,scratchRotation),o=Matrix3.multiplyByScale(r,i,r);e._voxelPrimitive.modelMatrix=Matrix4.fromRotationTranslation(o,t,e._voxelPrimitive.modelMatrix)}function VoxelInspector(e,t){Check$1.defined("container",e),Check$1.typeOf.object("scene",t),e=getElement(e);const i=document.createElement("div"),n=new VoxelInspectorViewModel(t);this._viewModel=n,this._container=e,this._element=i;const r=document.createElement("div");r.textContent="Voxel Inspector",r.className="cesium-cesiumInspector-button",r.setAttribute("data-bind","click: toggleInspector"),i.appendChild(r),i.className="cesium-cesiumInspector cesium-VoxelInspector",i.setAttribute("data-bind",'css: { "cesium-cesiumInspector-visible" : inspectorVisible, "cesium-cesiumInspector-hidden" : !inspectorVisible}'),e.appendChild(i);const o=document.createElement("div");o.className="cesium-cesiumInspector-dropDown",i.appendChild(o);const a=InspectorShared$1.createSection,s=InspectorShared$1.createCheckbox,c=InspectorShared$1.createRangeInput,l=InspectorShared$1.createButton,d=a(o,"Display","displayVisible","toggleDisplay"),u=a(o,"Transform","transformVisible","toggleTransform"),h=a(o,"Bounds","boundsVisible","toggleBounds"),p=a(o,"Clipping","clippingVisible","toggleClipping"),f=a(o,"Shader","shaderVisible","toggleShader");d.appendChild(s("Depth Test","depthTest")),d.appendChild(s("Show","show")),d.appendChild(s("Disable Update","disableUpdate")),d.appendChild(s("Debug Draw","debugDraw")),d.appendChild(s("Jitter","jitter")),d.appendChild(s("Nearest Sampling","nearestSampling")),d.appendChild(c("Screen Space Error","screenSpaceError",0,128)),d.appendChild(c("Step Size","stepSize",0,2));const m=CesiumMath$1.PI;u.appendChild(c("Translation X","translationX",-10,10)),u.appendChild(c("Translation Y","translationY",-10,10)),u.appendChild(c("Translation Z","translationZ",-10,10)),u.appendChild(c("Scale X","scaleX",0,10)),u.appendChild(c("Scale Y","scaleY",0,10)),u.appendChild(c("Scale Z","scaleZ",0,10)),u.appendChild(c("Heading","angleX",-m,+m)),u.appendChild(c("Pitch","angleY",-m,+m)),u.appendChild(c("Roll","angleZ",-m,+m));const g=VoxelShapeType$1.getMinBounds(VoxelShapeType$1.BOX),_=VoxelShapeType$1.getMaxBounds(VoxelShapeType$1.BOX),y=Cartesian3.fromElements(VoxelShapeType$1.getMinBounds(VoxelShapeType$1.ELLIPSOID).x,VoxelShapeType$1.getMinBounds(VoxelShapeType$1.ELLIPSOID).y,-Ellipsoid.WGS84.maximumRadius,new Cartesian3),C=Cartesian3.fromElements(VoxelShapeType$1.getMaxBounds(VoxelShapeType$1.ELLIPSOID).x,VoxelShapeType$1.getMaxBounds(VoxelShapeType$1.ELLIPSOID).y,1e7,new Cartesian3),S=VoxelShapeType$1.getMinBounds(VoxelShapeType$1.CYLINDER),A=VoxelShapeType$1.getMaxBounds(VoxelShapeType$1.CYLINDER);makeCoordinateRange("Max X","Min X","Max Y","Min Y","Max Z","Min Z","boundsBoxMaxX","boundsBoxMinX","boundsBoxMaxY","boundsBoxMinY","boundsBoxMaxZ","boundsBoxMinZ",g,_,"shapeIsBox",h),makeCoordinateRange("Max Longitude","Min Longitude","Max Latitude","Min Latitude","Max Height","Min Height","boundsEllipsoidMaxLongitude","boundsEllipsoidMinLongitude","boundsEllipsoidMaxLatitude","boundsEllipsoidMinLatitude","boundsEllipsoidMaxHeight","boundsEllipsoidMinHeight",y,C,"shapeIsEllipsoid",h),makeCoordinateRange("Max Radius","Min Radius","Max Height","Min Height","Max Angle","Min Angle","boundsCylinderMaxRadius","boundsCylinderMinRadius","boundsCylinderMaxHeight","boundsCylinderMinHeight","boundsCylinderMaxAngle","boundsCylinderMinAngle",S,A,"shapeIsCylinder",h),makeCoordinateRange("Max X","Min X","Max Y","Min Y","Max Z","Min Z","clippingBoxMaxX","clippingBoxMinX","clippingBoxMaxY","clippingBoxMinY","clippingBoxMaxZ","clippingBoxMinZ",g,_,"shapeIsBox",p),makeCoordinateRange("Max Longitude","Min Longitude","Max Latitude","Min Latitude","Max Height","Min Height","clippingEllipsoidMaxLongitude","clippingEllipsoidMinLongitude","clippingEllipsoidMaxLatitude","clippingEllipsoidMinLatitude","clippingEllipsoidMaxHeight","clippingEllipsoidMinHeight",y,C,"shapeIsEllipsoid",p),makeCoordinateRange("Max Radius","Min Radius","Max Height","Min Height","Max Angle","Min Angle","clippingCylinderMaxRadius","clippingCylinderMinRadius","clippingCylinderMaxHeight","clippingCylinderMinHeight","clippingCylinderMaxAngle","clippingCylinderMinAngle",S,A,"shapeIsCylinder",p);const T=document.createElement("div");f.appendChild(T);const v=document.createElement("textarea");v.setAttribute("data-bind","textInput: shaderString, event: { keydown: shaderEditorKeyPress }"),T.className="cesium-cesiumInspector-styleEditor",T.appendChild(v);const E=l("Compile (Ctrl+Enter)","compileShader");T.appendChild(E);const b=document.createElement("label");b.style.display="block",b.setAttribute("data-bind","text: shaderCompilationMessage, style: {color: shaderCompilationSuccess ? 'green' : 'red'}"),T.appendChild(b),knockout$1.applyBindings(n,i)}function makeCoordinateRange(e,t,i,n,r,o,a,s,c,l,d,u,h,p,f,m){const g=InspectorShared$1.createRangeInput,_=h,y=p,C=m.appendChild(document.createElement("div"));C.setAttribute("data-bind",`if: ${f}`),C.appendChild(g(e,a,_.x,y.x)),C.appendChild(g(t,s,_.x,y.x)),C.appendChild(g(i,c,_.y,y.y)),C.appendChild(g(n,l,_.y,y.y)),C.appendChild(g(r,d,_.z,y.z)),C.appendChild(g(o,u,_.z,y.z))}function viewerVoxelInspectorMixin(e){Check$1.typeOf.object("viewer",e);const t=document.createElement("div");t.className="cesium-viewer-voxelInspectorContainer",e.container.appendChild(t);const i=new VoxelInspector(t,e.scene);Object.defineProperties(e,{voxelInspector:{get:function(){return i}}})}Object.defineProperties(VoxelInspectorViewModel.prototype,{scene:{get:function(){return this._scene}},voxelPrimitive:{get:function(){return this._voxelPrimitive},set:function(e){if(defined(this._customShaderCompilationRemoveCallback)&&this._customShaderCompilationRemoveCallback(),defined(e)){this._voxelPrimitive=e;const t=this;t._voxelPrimitive._readyPromise.then((function(){t._customShaderCompilationRemoveCallback=t._voxelPrimitive.customShaderCompilationEvent.addEventListener((function(e){const i=t._voxelPrimitive.customShader.fragmentShaderText;t.shaderString=formatShaderString(i),defined(e)?(t.shaderCompilationMessage=e.message,t.shaderCompilationSuccess=!1):(t.shaderCompilationMessage="Shader compiled successfully!",t.shaderCompilationSuccess=!0)})),t._modelMatrixReady=!1;for(let e=0;e<t._getPrimitiveFunctions.length;e++)t._getPrimitiveFunctions[e]();t._modelMatrixReady=!0,setModelMatrix(t)}))}}}}),VoxelInspectorViewModel.prototype.toggleInspector=function(){this.inspectorVisible=!this.inspectorVisible},VoxelInspectorViewModel.prototype.toggleDisplay=function(){this.displayVisible=!this.displayVisible},VoxelInspectorViewModel.prototype.toggleTransform=function(){this.transformVisible=!this.transformVisible},VoxelInspectorViewModel.prototype.toggleBounds=function(){this.boundsVisible=!this.boundsVisible},VoxelInspectorViewModel.prototype.toggleClipping=function(){this.clippingVisible=!this.clippingVisible},VoxelInspectorViewModel.prototype.toggleShader=function(){this.shaderVisible=!this.shaderVisible},VoxelInspectorViewModel.prototype.compileShader=function(){defined(this._voxelPrimitive)&&(this._voxelPrimitive.customShader=new CustomShader({fragmentShaderText:this.shaderString,uniforms:this._voxelPrimitive.customShader.uniforms}))},VoxelInspectorViewModel.prototype.shaderEditorKeyPress=function(e,t){if(9===t.keyCode){t.preventDefault();const e=t.target,i=e.selectionStart,n=e.selectionEnd;let r=n;const o=e.value.slice(i,n).split("\n"),a=o.length;let s;if(t.shiftKey)for(s=0;s<a;++s)" "===o[s][0]&&(" "===o[s][1]?(o[s]=o[s].substr(2),r-=2):(o[s]=o[s].substr(1),r-=1));else for(s=0;s<a;++s)o[s]=` ${o[s]}`,r+=2;const c=o.join("\n");e.value=e.value.slice(0,i)+c+e.value.slice(n),e.selectionStart=i!==n?i:r,e.selectionEnd=r}else!t.ctrlKey||10!==t.keyCode&&13!==t.keyCode||this.compileShader();return!0},VoxelInspectorViewModel.prototype.isDestroyed=function(){return!1},VoxelInspectorViewModel.prototype.destroy=function(){const e=this;return this._definedProperties.forEach((function(t){knockout$1.getObservable(e,t).dispose()})),destroyObject(this)},Object.defineProperties(VoxelInspector.prototype,{container:{get:function(){return this._container}},viewModel:{get:function(){return this._viewModel}}}),VoxelInspector.prototype.isDestroyed=function(){return!1},VoxelInspector.prototype.destroy=function(){return knockout$1.cleanNode(this._element),this._container.removeChild(this._element),this.viewModel.destroy(),destroyObject(this)};const VERSION="1.105.2",Cesium=Object.freeze(Object.defineProperty({__proto__:null,VERSION:VERSION,AutomaticUniforms:AutomaticUniforms$1,Buffer:Buffer$1,BufferUsage:BufferUsage$1,ClearCommand:ClearCommand,ComputeCommand:ComputeCommand,ComputeEngine:ComputeEngine,Context:Context,ContextLimits:ContextLimits$1,CubeMap:CubeMap,CubeMapFace:CubeMapFace,DrawCommand:DrawCommand,Framebuffer:Framebuffer,FramebufferManager:FramebufferManager,MipmapHint:MipmapHint$1,MultisampleFramebuffer:MultisampleFramebuffer,Pass:Pass$1,PassState:PassState,PixelDatatype:PixelDatatype$1,RenderState:RenderState,Renderbuffer:Renderbuffer,RenderbufferFormat:RenderbufferFormat$1,Sampler:Sampler,ShaderBuilder:ShaderBuilder,ShaderCache:ShaderCache,ShaderDestination:ShaderDestination$1,ShaderFunction:ShaderFunction,ShaderProgram:ShaderProgram,ShaderSource:ShaderSource,ShaderStruct:ShaderStruct,Texture:Texture,TextureCache:TextureCache,TextureMagnificationFilter:TextureMagnificationFilter$1,TextureMinificationFilter:TextureMinificationFilter$1,TextureWrap:TextureWrap$1,UniformState:UniformState,VertexArray:VertexArray,VertexArrayFacade:VertexArrayFacade,createUniform:createUniform$1,createUniformArray:createUniformArray,demodernizeShader:demodernizeShader,freezeRenderState:freezeRenderState,loadCubeMap:loadCubeMap,BillboardGraphics:BillboardGraphics,BillboardVisualizer:BillboardVisualizer,BoundingSphereState:BoundingSphereState$1,BoxGeometryUpdater:BoxGeometryUpdater,BoxGraphics:BoxGraphics,CallbackProperty:CallbackProperty,Cesium3DTilesetGraphics:Cesium3DTilesetGraphics,Cesium3DTilesetVisualizer:Cesium3DTilesetVisualizer,CheckerboardMaterialProperty:CheckerboardMaterialProperty,ColorMaterialProperty:ColorMaterialProperty,CompositeEntityCollection:CompositeEntityCollection,CompositeMaterialProperty:CompositeMaterialProperty,CompositePositionProperty:CompositePositionProperty,CompositeProperty:CompositeProperty,ConstantPositionProperty:ConstantPositionProperty,ConstantProperty:ConstantProperty,CorridorGeometryUpdater:CorridorGeometryUpdater,CorridorGraphics:CorridorGraphics,CustomDataSource:CustomDataSource,CylinderGeometryUpdater:CylinderGeometryUpdater,CylinderGraphics:CylinderGraphics,CzmlDataSource:CzmlDataSource,DataSource:DataSource,DataSourceClock:DataSourceClock,DataSourceCollection:DataSourceCollection,DataSourceDisplay:DataSourceDisplay,DynamicGeometryBatch:DynamicGeometryBatch,DynamicGeometryUpdater:DynamicGeometryUpdater$1,EllipseGeometryUpdater:EllipseGeometryUpdater,EllipseGraphics:EllipseGraphics,EllipsoidGeometryUpdater:EllipsoidGeometryUpdater,EllipsoidGraphics:EllipsoidGraphics,Entity:Entity,EntityCluster:EntityCluster,EntityCollection:EntityCollection,EntityView:EntityView,GeoJsonDataSource:GeoJsonDataSource,GeometryUpdater:GeometryUpdater,GeometryVisualizer:GeometryVisualizer,GpxDataSource:GpxDataSource,GridMaterialProperty:GridMaterialProperty,GroundGeometryUpdater:GroundGeometryUpdater,ImageMaterialProperty:ImageMaterialProperty,KmlCamera:KmlCamera,KmlDataSource:KmlDataSource,KmlLookAt:KmlLookAt,KmlTour:KmlTour,KmlTourFlyTo:KmlTourFlyTo,KmlTourWait:KmlTourWait,LabelGraphics:LabelGraphics,LabelVisualizer:LabelVisualizer,MaterialProperty:MaterialProperty,ModelGraphics:ModelGraphics,ModelVisualizer:ModelVisualizer,NodeTransformationProperty:NodeTransformationProperty,PathGraphics:PathGraphics,PathVisualizer:PathVisualizer,PlaneGeometryUpdater:PlaneGeometryUpdater,PlaneGraphics:PlaneGraphics,PointGraphics:PointGraphics,PointVisualizer:PointVisualizer,PolygonGeometryUpdater:PolygonGeometryUpdater,PolygonGraphics:PolygonGraphics,PolylineArrowMaterialProperty:PolylineArrowMaterialProperty,PolylineDashMaterialProperty:PolylineDashMaterialProperty,PolylineGeometryUpdater:PolylineGeometryUpdater,PolylineGlowMaterialProperty:PolylineGlowMaterialProperty,PolylineGraphics:PolylineGraphics,PolylineOutlineMaterialProperty:PolylineOutlineMaterialProperty,PolylineVisualizer:PolylineVisualizer,PolylineVolumeGeometryUpdater:PolylineVolumeGeometryUpdater,PolylineVolumeGraphics:PolylineVolumeGraphics,PositionProperty:PositionProperty,PositionPropertyArray:PositionPropertyArray,Property:Property,PropertyArray:PropertyArray,PropertyBag:PropertyBag,RectangleGeometryUpdater:RectangleGeometryUpdater,RectangleGraphics:RectangleGraphics,ReferenceProperty:ReferenceProperty,Rotation:Rotation$1,SampledPositionProperty:SampledPositionProperty,SampledProperty:SampledProperty,ScaledPositionProperty:ScaledPositionProperty,StaticGeometryColorBatch:StaticGeometryColorBatch,StaticGeometryPerMaterialBatch:StaticGeometryPerMaterialBatch,StaticGroundGeometryColorBatch:StaticGroundGeometryColorBatch,StaticGroundGeometryPerMaterialBatch:StaticGroundGeometryPerMaterialBatch,StaticGroundPolylinePerMaterialBatch:StaticGroundPolylinePerMaterialBatch,StaticOutlineGeometryBatch:StaticOutlineGeometryBatch,StripeMaterialProperty:StripeMaterialProperty,StripeOrientation:StripeOrientation$1,TerrainOffsetProperty:TerrainOffsetProperty,TimeIntervalCollectionPositionProperty:TimeIntervalCollectionPositionProperty,TimeIntervalCollectionProperty:TimeIntervalCollectionProperty,VelocityOrientationProperty:VelocityOrientationProperty,VelocityVectorProperty:VelocityVectorProperty,Visualizer:Visualizer,WallGeometryUpdater:WallGeometryUpdater,WallGraphics:WallGraphics,createMaterialPropertyDescriptor:createMaterialPropertyDescriptor,createPropertyDescriptor:createPropertyDescriptor,createRawPropertyDescriptor:createRawPropertyDescriptor,exportKml:exportKml,getElement:getElement,heightReferenceOnEntityPropertyChanged:heightReferenceOnEntityPropertyChanged,CesiumWidget:CesiumWidget,_shadersAdjustTranslucentFS:AdjustTranslucentFS,_shadersAtmosphereCommon:AtmosphereCommon,_shadersBillboardCollectionFS:BillboardCollectionFS,_shadersBillboardCollectionVS:BillboardCollectionVS,_shadersBrdfLutGeneratorFS:BrdfLutGeneratorFS,_shadersCloudCollectionFS:CloudCollectionFS,_shadersCloudCollectionVS:CloudCollectionVS,_shadersCloudNoiseFS:CloudNoiseFS,_shadersCloudNoiseVS:CloudNoiseVS,_shadersCompareAndPackTranslucentDepth:CompareAndPackTranslucentDepth,_shadersCompositeOITFS:CompositeOITFS,_shadersDepthPlaneFS:DepthPlaneFS,_shadersDepthPlaneVS:DepthPlaneVS,_shadersEllipsoidFS:EllipsoidFS,_shadersEllipsoidVS:EllipsoidVS,_shadersFXAA3_11:FXAA3_11,_shadersGlobeFS:GlobeFS,_shadersGlobeVS:GlobeVS,_shadersGroundAtmosphere:GroundAtmosphere,_shadersOctahedralProjectionAtlasFS:OctahedralProjectionAtlasFS,_shadersOctahedralProjectionFS:OctahedralProjectionFS,_shadersOctahedralProjectionVS:OctahedralProjectionVS,_shadersPointPrimitiveCollectionFS:PointPrimitiveCollectionFS,_shadersPointPrimitiveCollectionVS:PointPrimitiveCollectionVS,_shadersPolylineCommon:PolylineCommon,_shadersPolylineFS:PolylineFS$1,_shadersPolylineShadowVolumeFS:PolylineShadowVolumeFS,_shadersPolylineShadowVolumeMorphFS:PolylineShadowVolumeMorphFS,_shadersPolylineShadowVolumeMorphVS:PolylineShadowVolumeMorphVS,_shadersPolylineShadowVolumeVS:PolylineShadowVolumeVS,_shadersPolylineVS:PolylineVS,_shadersReprojectWebMercatorFS:ReprojectWebMercatorFS,_shadersReprojectWebMercatorVS:ReprojectWebMercatorVS,_shadersShadowVolumeAppearanceFS:ShadowVolumeAppearanceFS,_shadersShadowVolumeAppearanceVS:ShadowVolumeAppearanceVS,_shadersShadowVolumeFS:ShadowVolumeFS,_shadersSkyAtmosphereCommon:SkyAtmosphereCommon,_shadersSkyAtmosphereFS:SkyAtmosphereFS,_shadersSkyAtmosphereVS:SkyAtmosphereVS,_shadersSkyBoxFS:SkyBoxFS,_shadersSkyBoxVS:SkyBoxVS,_shadersSunFS:SunFS,_shadersSunTextureFS:SunTextureFS,_shadersSunVS:SunVS,_shadersVector3DTileClampedPolylinesFS:Vector3DTileClampedPolylinesFS,_shadersVector3DTileClampedPolylinesVS:Vector3DTileClampedPolylinesVS,_shadersVector3DTilePolylinesVS:Vector3DTilePolylinesVS,_shadersVectorTileVS:VectorTileVS,_shadersViewportQuadFS:ViewportQuadFS,_shadersViewportQuadVS:ViewportQuadVS,ApproximateTerrainHeights:ApproximateTerrainHeights$1,ArcGISTiledElevationTerrainProvider:ArcGISTiledElevationTerrainProvider,ArcType:ArcType$1,ArticulationStageType:ArticulationStageType$1,AssociativeArray:AssociativeArray,AttributeCompression:AttributeCompression$1,AxisAlignedBoundingBox:AxisAlignedBoundingBox,BingMapsGeocoderService:BingMapsGeocoderService,BoundingRectangle:BoundingRectangle,BoundingSphere:BoundingSphere,BoxGeometry:BoxGeometry,BoxOutlineGeometry:BoxOutlineGeometry,Cartesian2:Cartesian2,Cartesian3:Cartesian3,Cartesian4:Cartesian4,Cartographic:Cartographic,CartographicGeocoderService:CartographicGeocoderService,CatmullRomSpline:CatmullRomSpline,CesiumTerrainProvider:CesiumTerrainProvider,Check:Check$1,CircleGeometry:CircleGeometry,CircleOutlineGeometry:CircleOutlineGeometry,Clock:Clock,ClockRange:ClockRange$1,ClockStep:ClockStep$1,Color:Color,ColorGeometryInstanceAttribute:ColorGeometryInstanceAttribute,ComponentDatatype:ComponentDatatype$1,CompressedTextureBuffer:CompressedTextureBuffer,ConstantSpline:ConstantSpline,CoplanarPolygonGeometry:CoplanarPolygonGeometry,CoplanarPolygonGeometryLibrary:CoplanarPolygonGeometryLibrary$1,CoplanarPolygonOutlineGeometry:CoplanarPolygonOutlineGeometry,CornerType:CornerType$1,CorridorGeometry:CorridorGeometry,CorridorGeometryLibrary:CorridorGeometryLibrary$1,CorridorOutlineGeometry:CorridorOutlineGeometry,Credit:Credit,CubicRealPolynomial:CubicRealPolynomial$1,CullingVolume:CullingVolume,CustomHeightmapTerrainProvider:CustomHeightmapTerrainProvider,CylinderGeometry:CylinderGeometry,CylinderGeometryLibrary:CylinderGeometryLibrary$1,CylinderOutlineGeometry:CylinderOutlineGeometry,DefaultProxy:DefaultProxy,DeveloperError:DeveloperError,DistanceDisplayCondition:DistanceDisplayCondition,DistanceDisplayConditionGeometryInstanceAttribute:DistanceDisplayConditionGeometryInstanceAttribute,DoubleEndedPriorityQueue:DoubleEndedPriorityQueue,DoublyLinkedList:DoublyLinkedList,EarthOrientationParameters:EarthOrientationParameters,EarthOrientationParametersSample:EarthOrientationParametersSample,EasingFunction:EasingFunction$1,EllipseGeometry:EllipseGeometry,EllipseGeometryLibrary:EllipseGeometryLibrary$1,EllipseOutlineGeometry:EllipseOutlineGeometry,Ellipsoid:Ellipsoid,EllipsoidGeodesic:EllipsoidGeodesic,EllipsoidGeometry:EllipsoidGeometry,EllipsoidOutlineGeometry:EllipsoidOutlineGeometry,EllipsoidRhumbLine:EllipsoidRhumbLine,EllipsoidTangentPlane:EllipsoidTangentPlane,EllipsoidTerrainProvider:EllipsoidTerrainProvider,EllipsoidalOccluder:EllipsoidalOccluder,EncodedCartesian3:EncodedCartesian3,Event:Event,EventHelper:EventHelper,ExtrapolationType:ExtrapolationType$1,FeatureDetection:FeatureDetection$1,FrustumGeometry:FrustumGeometry,FrustumOutlineGeometry:FrustumOutlineGeometry,Fullscreen:Fullscreen$1,GeocodeType:GeocodeType$1,GeocoderService:GeocoderService,GeographicProjection:GeographicProjection,GeographicTilingScheme:GeographicTilingScheme,Geometry:Geometry,GeometryAttribute:GeometryAttribute,GeometryAttributes:GeometryAttributes,GeometryFactory:GeometryFactory,GeometryInstance:GeometryInstance,GeometryInstanceAttribute:GeometryInstanceAttribute,GeometryOffsetAttribute:GeometryOffsetAttribute$1,GeometryPipeline:GeometryPipeline$1,GeometryType:GeometryType$1,GoogleEarthEnterpriseMetadata:GoogleEarthEnterpriseMetadata,GoogleEarthEnterpriseTerrainData:GoogleEarthEnterpriseTerrainData,GoogleEarthEnterpriseTerrainProvider:GoogleEarthEnterpriseTerrainProvider,GoogleEarthEnterpriseTileInformation:GoogleEarthEnterpriseTileInformation,GoogleMaps:GoogleMaps$1,GregorianDate:GregorianDate,GroundPolylineGeometry:GroundPolylineGeometry,HeadingPitchRange:HeadingPitchRange,HeadingPitchRoll:HeadingPitchRoll,Heap:Heap,HeightmapEncoding:HeightmapEncoding$1,HeightmapTerrainData:HeightmapTerrainData,HeightmapTessellator:HeightmapTessellator$1,HermitePolynomialApproximation:HermitePolynomialApproximation$1,HermiteSpline:HermiteSpline,HilbertOrder:HilbertOrder$1,Iau2000Orientation:Iau2000Orientation$1,Iau2006XysData:Iau2006XysData,Iau2006XysSample:Iau2006XysSample,IauOrientationAxes:IauOrientationAxes,IauOrientationParameters:IauOrientationParameters,IndexDatatype:IndexDatatype$1,InterpolationAlgorithm:InterpolationAlgorithm$1,InterpolationType:InterpolationType$1,Intersect:Intersect$1,IntersectionTests:IntersectionTests$1,Intersections2D:Intersections2D$1,Interval:Interval,Ion:Ion$1,IonGeocoderService:IonGeocoderService,IonResource:IonResource,Iso8601:Iso8601$1,JulianDate:JulianDate,KTX2Transcoder:KTX2Transcoder,KeyboardEventModifier:KeyboardEventModifier$1,LagrangePolynomialApproximation:LagrangePolynomialApproximation$1,LeapSecond:LeapSecond,LinearApproximation:LinearApproximation$1,LinearSpline:LinearSpline,ManagedArray:ManagedArray,MapProjection:MapProjection,Math:CesiumMath$1,Matrix2:Matrix2,Matrix3:Matrix3,Matrix4:Matrix4,MorphWeightSpline:MorphWeightSpline,MortonOrder:MortonOrder$1,NearFarScalar:NearFarScalar,Occluder:Occluder,OffsetGeometryInstanceAttribute:OffsetGeometryInstanceAttribute,OpenCageGeocoderService:OpenCageGeocoderService,OrientedBoundingBox:OrientedBoundingBox,OrthographicFrustum:OrthographicFrustum,OrthographicOffCenterFrustum:OrthographicOffCenterFrustum,Packable:Packable$1,PackableForInterpolation:PackableForInterpolation$1,PeliasGeocoderService:PeliasGeocoderService,PerspectiveFrustum:PerspectiveFrustum,PerspectiveOffCenterFrustum:PerspectiveOffCenterFrustum,PinBuilder:PinBuilder,PixelFormat:PixelFormat$1,Plane:Plane,PlaneGeometry:PlaneGeometry,PlaneOutlineGeometry:PlaneOutlineGeometry,PolygonGeometry:PolygonGeometry,PolygonGeometryLibrary:PolygonGeometryLibrary$1,PolygonHierarchy:PolygonHierarchy,PolygonOutlineGeometry:PolygonOutlineGeometry,PolygonPipeline:PolygonPipeline$1,PolylineGeometry:PolylineGeometry,PolylinePipeline:PolylinePipeline$1,PolylineVolumeGeometry:PolylineVolumeGeometry,PolylineVolumeGeometryLibrary:PolylineVolumeGeometryLibrary$1,PolylineVolumeOutlineGeometry:PolylineVolumeOutlineGeometry,PrimitiveType:PrimitiveType$1,Proxy:Proxy,QuadraticRealPolynomial:QuadraticRealPolynomial$1,QuantizedMeshTerrainData:QuantizedMeshTerrainData,QuarticRealPolynomial:QuarticRealPolynomial$1,Quaternion:Quaternion,QuaternionSpline:QuaternionSpline,Queue:Queue,Ray:Ray,Rectangle:Rectangle,RectangleCollisionChecker:RectangleCollisionChecker,RectangleGeometry:RectangleGeometry,RectangleGeometryLibrary:RectangleGeometryLibrary$1,RectangleOutlineGeometry:RectangleOutlineGeometry,ReferenceFrame:ReferenceFrame$1,Request:Request,RequestErrorEvent:RequestErrorEvent,RequestScheduler:RequestScheduler,RequestState:RequestState$1,RequestType:RequestType$1,Resource:Resource,RuntimeError:RuntimeError,S2Cell:S2Cell,ScreenSpaceEventHandler:ScreenSpaceEventHandler,ScreenSpaceEventType:ScreenSpaceEventType$1,ShowGeometryInstanceAttribute:ShowGeometryInstanceAttribute,Simon1994PlanetaryPositions:Simon1994PlanetaryPositions$1,SimplePolylineGeometry:SimplePolylineGeometry,SphereGeometry:SphereGeometry,SphereOutlineGeometry:SphereOutlineGeometry,Spherical:Spherical,Spline:Spline,SteppedSpline:SteppedSpline,TaskProcessor:TaskProcessor,TerrainData:TerrainData,TerrainEncoding:TerrainEncoding,TerrainExaggeration:TerrainExaggeration$1,TerrainMesh:TerrainMesh,TerrainProvider:TerrainProvider,TerrainQuantization:TerrainQuantization$1,TileAvailability:TileAvailability,TileEdge:TileEdge$1,TileProviderError:TileProviderError,TilingScheme:TilingScheme,TimeConstants:TimeConstants$1,TimeInterval:TimeInterval,TimeIntervalCollection:TimeIntervalCollection,TimeStandard:TimeStandard$1,Tipsify:Tipsify$1,Transforms:Transforms$1,TranslationRotationScale:TranslationRotationScale,TridiagonalSystemSolver:TridiagonalSystemSolver$1,TrustedServers:TrustedServers$1,VRTheWorldTerrainProvider:VRTheWorldTerrainProvider,VertexFormat:VertexFormat,VideoSynchronizer:VideoSynchronizer,Visibility:Visibility$1,VulkanConstants:VulkanConstants$1,WallGeometry:WallGeometry,WallGeometryLibrary:WallGeometryLibrary$1,WallOutlineGeometry:WallOutlineGeometry,WebGLConstants:WebGLConstants$1,WebMercatorProjection:WebMercatorProjection,WebMercatorTilingScheme:WebMercatorTilingScheme,WindingOrder:WindingOrder$1,WireframeIndexGenerator:WireframeIndexGenerator$1,appendForwardSlash:appendForwardSlash,arrayRemoveDuplicates:arrayRemoveDuplicates,barycentricCoordinates:barycentricCoordinates,binarySearch:binarySearch,buildModuleUrl:buildModuleUrl,clone:clone$1,combine:combine$2,createGuid:createGuid,createWorldTerrain:createWorldTerrain,createWorldTerrainAsync:createWorldTerrainAsync,decodeGoogleEarthEnterpriseData:decodeGoogleEarthEnterpriseData,decodeVectorPolylinePositions:decodeVectorPolylinePositions,defaultValue:defaultValue,defer:defer,defined:defined,deprecationWarning:deprecationWarning,destroyObject:destroyObject,formatError:formatError,getAbsoluteUri:getAbsoluteUri,getBaseUri:getBaseUri,getExtensionFromUri:getExtensionFromUri,getFilenameFromUri:getFilenameFromUri,getImageFromTypedArray:getImageFromTypedArray,getImagePixels:getImagePixels,getJsonFromTypedArray:getJsonFromTypedArray,getMagic:getMagic,getStringFromTypedArray:getStringFromTypedArray,getTimestamp:getTimestamp$1,isBitSet:isBitSet,isBlobUri:isBlobUri,isCrossOriginUrl:isCrossOriginUrl,isDataUri:isDataUri,isLeapYear:isLeapYear,loadAndExecuteScript:loadAndExecuteScript,loadImageFromTypedArray:loadImageFromTypedArray,loadKTX2:loadKTX2,mergeSort:mergeSort,objectToQuery:objectToQuery,oneTimeWarning:oneTimeWarning,parseResponseHeaders:parseResponseHeaders,pointInsideTriangle:pointInsideTriangle,queryToObject:queryToObject,resizeImageToNextPowerOfTwo:resizeImageToNextPowerOfTwo,sampleTerrain:sampleTerrain,sampleTerrainMostDetailed:sampleTerrainMostDetailed,scaleToGeodeticSurface:scaleToGeodeticSurface,subdivideArray:subdivideArray,webGLConstantToGlslType:webGLConstantToGlslType,wrapFunction:wrapFunction,writeTextToCanvas:writeTextToCanvas,AlphaMode:AlphaMode$1,Appearance:Appearance,ArcGisBaseMapType:ArcGisBaseMapType$1,ArcGisMapServerImageryProvider:ArcGisMapServerImageryProvider,ArcGisMapService:ArcGisMapService$1,AttributeType:AttributeType$1,AutoExposure:AutoExposure,Axis:Axis$1,B3dmParser:B3dmParser$1,BatchTable:BatchTable,BatchTableHierarchy:BatchTableHierarchy,BatchTexture:BatchTexture,Billboard:Billboard,BillboardCollection:BillboardCollection,BingMapsImageryProvider:BingMapsImageryProvider,BingMapsStyle:BingMapsStyle$1,BlendEquation:BlendEquation$1,BlendFunction:BlendFunction$1,BlendOption:BlendOption$1,BlendingState:BlendingState$1,BoxEmitter:BoxEmitter,BrdfLutGenerator:BrdfLutGenerator,BufferLoader:BufferLoader,Camera:Camera,CameraEventAggregator:CameraEventAggregator,CameraEventType:CameraEventType$1,CameraFlightPath:CameraFlightPath$1,Cesium3DContentGroup:Cesium3DContentGroup,Cesium3DTile:Cesium3DTile,Cesium3DTileBatchTable:Cesium3DTileBatchTable,Cesium3DTileColorBlendMode:Cesium3DTileColorBlendMode$1,Cesium3DTileContent:Cesium3DTileContent,Cesium3DTileContentFactory:Cesium3DTileContentFactory$1,Cesium3DTileContentState:Cesium3DTileContentState$1,Cesium3DTileContentType:Cesium3DTileContentType$1,Cesium3DTileFeature:Cesium3DTileFeature,Cesium3DTileFeatureTable:Cesium3DTileFeatureTable,Cesium3DTileOptimizationHint:Cesium3DTileOptimizationHint$1,Cesium3DTileOptimizations:Cesium3DTileOptimizations$1,Cesium3DTilePass:Cesium3DTilePass$1,Cesium3DTilePassState:Cesium3DTilePassState,Cesium3DTilePointFeature:Cesium3DTilePointFeature,Cesium3DTileRefine:Cesium3DTileRefine$1,Cesium3DTileStyle:Cesium3DTileStyle,Cesium3DTileStyleEngine:Cesium3DTileStyleEngine,Cesium3DTilesVoxelProvider:Cesium3DTilesVoxelProvider,Cesium3DTileset:Cesium3DTileset,Cesium3DTilesetBaseTraversal:Cesium3DTilesetBaseTraversal,Cesium3DTilesetCache:Cesium3DTilesetCache,Cesium3DTilesetHeatmap:Cesium3DTilesetHeatmap,Cesium3DTilesetMetadata:Cesium3DTilesetMetadata,Cesium3DTilesetMostDetailedTraversal:Cesium3DTilesetMostDetailedTraversal,Cesium3DTilesetSkipTraversal:Cesium3DTilesetSkipTraversal,Cesium3DTilesetStatistics:Cesium3DTilesetStatistics,Cesium3DTilesetTraversal:Cesium3DTilesetTraversal,CircleEmitter:CircleEmitter,ClassificationPrimitive:ClassificationPrimitive,ClassificationType:ClassificationType$1,ClippingPlane:ClippingPlane,ClippingPlaneCollection:ClippingPlaneCollection,CloudCollection:CloudCollection,CloudType:CloudType$1,ColorBlendMode:ColorBlendMode$1,Composite3DTileContent:Composite3DTileContent,ConditionsExpression:ConditionsExpression,ConeEmitter:ConeEmitter,ContentMetadata:ContentMetadata,CreditDisplay:CreditDisplay,CullFace:CullFace$1,CumulusCloud:CumulusCloud,DebugAppearance:DebugAppearance,DebugCameraPrimitive:DebugCameraPrimitive,DebugInspector:DebugInspector,DebugModelMatrixPrimitive:DebugModelMatrixPrimitive,DepthFunction:DepthFunction$1,DepthPlane:DepthPlane,DerivedCommand:DerivedCommand,DeviceOrientationCameraController:DeviceOrientationCameraController,DirectionalLight:DirectionalLight,DiscardEmptyTileImagePolicy:DiscardEmptyTileImagePolicy,DiscardMissingTileImagePolicy:DiscardMissingTileImagePolicy,DracoLoader:DracoLoader,EllipsoidPrimitive:EllipsoidPrimitive,EllipsoidSurfaceAppearance:EllipsoidSurfaceAppearance,Empty3DTileContent:Empty3DTileContent,Expression:Expression,ExpressionNodeType:ExpressionNodeType$1,Fog:Fog,FrameRateMonitor:FrameRateMonitor,FrameState:FrameState,FrustumCommands:FrustumCommands,Geometry3DTileContent:Geometry3DTileContent,GetFeatureInfoFormat:GetFeatureInfoFormat,Globe:Globe,GlobeDepth:GlobeDepth,GlobeSurfaceShaderSet:GlobeSurfaceShaderSet,GlobeSurfaceTile:GlobeSurfaceTile,GlobeSurfaceTileProvider:GlobeSurfaceTileProvider,GlobeTranslucency:GlobeTranslucency,GlobeTranslucencyFramebuffer:GlobeTranslucencyFramebuffer,GlobeTranslucencyState:GlobeTranslucencyState,GltfBufferViewLoader:GltfBufferViewLoader,GltfDracoLoader:GltfDracoLoader,GltfImageLoader:GltfImageLoader,GltfIndexBufferLoader:GltfIndexBufferLoader,GltfJsonLoader:GltfJsonLoader,GltfLoader:GltfLoader$1,GltfLoaderUtil:GltfLoaderUtil$1,GltfStructuralMetadataLoader:GltfStructuralMetadataLoader,GltfTextureLoader:GltfTextureLoader,GltfVertexBufferLoader:GltfVertexBufferLoader,GoogleEarthEnterpriseImageryProvider:GoogleEarthEnterpriseImageryProvider,GoogleEarthEnterpriseMapsProvider:GoogleEarthEnterpriseMapsProvider,GridImageryProvider:GridImageryProvider,GroundPolylinePrimitive:GroundPolylinePrimitive,GroundPrimitive:GroundPrimitive,GroupMetadata:GroupMetadata,HeightReference:HeightReference$1,HorizontalOrigin:HorizontalOrigin$1,I3SDataProvider:I3SDataProvider,I3SFeature:I3SFeature,I3SField:I3SField,I3SGeometry:I3SGeometry,I3SLayer:I3SLayer,I3SNode:I3SNode,I3dmParser:I3dmParser$1,ImageBasedLighting:ImageBasedLighting,Imagery:Imagery,ImageryLayer:ImageryLayer,ImageryLayerCollection:ImageryLayerCollection,ImageryLayerFeatureInfo:ImageryLayerFeatureInfo,ImageryProvider:ImageryProvider,ImageryState:ImageryState$1,Implicit3DTileContent:Implicit3DTileContent,ImplicitAvailabilityBitstream:ImplicitAvailabilityBitstream,ImplicitMetadataView:ImplicitMetadataView,ImplicitSubdivisionScheme:ImplicitSubdivisionScheme$1,ImplicitSubtree:ImplicitSubtree,ImplicitSubtreeCache:ImplicitSubtreeCache,ImplicitSubtreeMetadata:ImplicitSubtreeMetadata,ImplicitTileCoordinates:ImplicitTileCoordinates,ImplicitTileset:ImplicitTileset,InstanceAttributeSemantic:InstanceAttributeSemantic$1,InvertClassification:InvertClassification,IonImageryProvider:IonImageryProvider,IonWorldImageryStyle:IonWorldImageryStyle$1,JobScheduler:JobScheduler,JobType:JobType$1,JsonMetadataTable:JsonMetadataTable,KeyframeNode:KeyframeNode,Label:Label,LabelCollection:LabelCollection,LabelStyle:LabelStyle$1,Light:Light,MapMode2D:MapMode2D$1,MapboxImageryProvider:MapboxImageryProvider,MapboxStyleImageryProvider:MapboxStyleImageryProvider,Material:Material$4,MaterialAppearance:MaterialAppearance,Megatexture:Megatexture$1,MetadataClass:MetadataClass,MetadataClassProperty:MetadataClassProperty,MetadataComponentType:MetadataComponentType$1,MetadataEntity:MetadataEntity,MetadataEnum:MetadataEnum,MetadataEnumValue:MetadataEnumValue,MetadataSchema:MetadataSchema,MetadataSchemaLoader:MetadataSchemaLoader,MetadataSemantic:MetadataSemantic$1,MetadataTable:MetadataTable,MetadataTableProperty:MetadataTableProperty,MetadataType:MetadataType$1,ModelAnimationLoop:ModelAnimationLoop$1,ModelAnimationState:ModelAnimationState$1,ModelComponents:ModelComponents$1,Moon:Moon,Multiple3DTileContent:Multiple3DTileContent,NeverTileDiscardPolicy:NeverTileDiscardPolicy,OIT:OIT,OctahedralProjectedCubeMap:OctahedralProjectedCubeMap,OpenStreetMapImageryProvider:OpenStreetMapImageryProvider,OrderedGroundPrimitiveCollection:OrderedGroundPrimitiveCollection,Particle:Particle,ParticleBurst:ParticleBurst,ParticleEmitter:ParticleEmitter,ParticleSystem:ParticleSystem,PerInstanceColorAppearance:PerInstanceColorAppearance,PerformanceDisplay:PerformanceDisplay,PickDepth:PickDepth,PickDepthFramebuffer:PickDepthFramebuffer,PickFramebuffer:PickFramebuffer,Picking:Picking,PntsParser:PntsParser$1,PointCloud:PointCloud,PointCloudEyeDomeLighting:PointCloudEyeDomeLighting,PointCloudShading:PointCloudShading,PointPrimitive:PointPrimitive,PointPrimitiveCollection:PointPrimitiveCollection,Polyline:Polyline,PolylineCollection:PolylineCollection,PolylineColorAppearance:PolylineColorAppearance,PolylineMaterialAppearance:PolylineMaterialAppearance,PostProcessStage:PostProcessStage,PostProcessStageCollection:PostProcessStageCollection,PostProcessStageComposite:PostProcessStageComposite,PostProcessStageLibrary:PostProcessStageLibrary$1,PostProcessStageSampleMode:PostProcessStageSampleMode$1,PostProcessStageTextureCache:PostProcessStageTextureCache,Primitive:Primitive$3,PrimitiveCollection:PrimitiveCollection,PrimitiveLoadPlan:PrimitiveLoadPlan,PrimitivePipeline:PrimitivePipeline$1,PrimitiveState:PrimitiveState$1,PropertyAttribute:PropertyAttribute,PropertyAttributeProperty:PropertyAttributeProperty,PropertyTable:PropertyTable,PropertyTexture:PropertyTexture,PropertyTextureProperty:PropertyTextureProperty,QuadtreeOccluders:QuadtreeOccluders,QuadtreePrimitive:QuadtreePrimitive,QuadtreeTile:QuadtreeTile,QuadtreeTileLoadState:QuadtreeTileLoadState$1,QuadtreeTileProvider:QuadtreeTileProvider,ResourceCache:ResourceCache,ResourceCacheKey:ResourceCacheKey$1,ResourceCacheStatistics:ResourceCacheStatistics,ResourceLoader:ResourceLoader,ResourceLoaderState:ResourceLoaderState$1,SDFSettings:SDFSettings$1,Scene:Scene,SceneFramebuffer:SceneFramebuffer,SceneMode:SceneMode$1,SceneTransforms:SceneTransforms$1,SceneTransitioner:SceneTransitioner,ScreenSpaceCameraController:ScreenSpaceCameraController,ShadowMap:ShadowMap,ShadowMapShader:ShadowMapShader,ShadowMode:ShadowMode$1,ShadowVolumeAppearance:ShadowVolumeAppearance,SingleTileImageryProvider:SingleTileImageryProvider,SkyAtmosphere:SkyAtmosphere,SkyBox:SkyBox,SpatialNode:SpatialNode,SphereEmitter:SphereEmitter,SplitDirection:SplitDirection$1,Splitter:Splitter$1,StencilConstants:StencilConstants$1,StencilFunction:StencilFunction$1,StencilOperation:StencilOperation$1,StructuralMetadata:StructuralMetadata,StyleExpression:StyleExpression,Sun:Sun,SunLight:SunLight,SunPostProcess:SunPostProcess,SupportedImageFormats:SupportedImageFormats,Terrain:Terrain,TerrainFillMesh:TerrainFillMesh,TerrainState:TerrainState$2,TextureAtlas:TextureAtlas,TileBoundingRegion:TileBoundingRegion,TileBoundingS2Cell:TileBoundingS2Cell,TileBoundingSphere:TileBoundingSphere,TileBoundingVolume:TileBoundingVolume,TileCoordinatesImageryProvider:TileCoordinatesImageryProvider,TileDiscardPolicy:TileDiscardPolicy,TileImagery:TileImagery,TileMapServiceImageryProvider:TileMapServiceImageryProvider,TileMetadata:TileMetadata,TileOrientedBoundingBox:TileOrientedBoundingBox,TileReplacementQueue:TileReplacementQueue,TileSelectionResult:TileSelectionResult$1,TileState:TileState$1,Tileset3DTileContent:Tileset3DTileContent,TilesetMetadata:TilesetMetadata,TimeDynamicImagery:TimeDynamicImagery,TimeDynamicPointCloud:TimeDynamicPointCloud,Tonemapper:Tonemapper$1,TranslucentTileClassification:TranslucentTileClassification,TweenCollection:TweenCollection,UrlTemplateImageryProvider:UrlTemplateImageryProvider,Vector3DTileBatch:Vector3DTileBatch,Vector3DTileClampedPolylines:Vector3DTileClampedPolylines,Vector3DTileContent:Vector3DTileContent,Vector3DTileGeometry:Vector3DTileGeometry,Vector3DTilePoints:Vector3DTilePoints,Vector3DTilePolygons:Vector3DTilePolygons,Vector3DTilePolylines:Vector3DTilePolylines,Vector3DTilePrimitive:Vector3DTilePrimitive,VertexAttributeSemantic:VertexAttributeSemantic$1,VerticalOrigin:VerticalOrigin$1,View:View,ViewportQuad:ViewportQuad,VoxelBoxShape:VoxelBoxShape,VoxelContent:VoxelContent,VoxelCylinderShape:VoxelCylinderShape,VoxelEllipsoidShape:VoxelEllipsoidShape,VoxelPrimitive:VoxelPrimitive,VoxelProvider:VoxelProvider,VoxelRenderResources:VoxelRenderResources,VoxelShape:VoxelShape,VoxelShapeType:VoxelShapeType$1,VoxelTraversal:VoxelTraversal,WebMapServiceImageryProvider:WebMapServiceImageryProvider,WebMapTileServiceImageryProvider:WebMapTileServiceImageryProvider,buildVoxelDrawCommands:buildVoxelDrawCommands,computeFlyToLocationForRectangle:computeFlyToLocationForRectangle,createBillboardPointCallback:createBillboardPointCallback,createElevationBandMaterial:createElevationBandMaterial,createGooglePhotorealistic3DTileset:createGooglePhotorealistic3DTileset,createOsmBuildings:createOsmBuildings,createOsmBuildingsAsync:createOsmBuildingsAsync,createTangentSpaceDebugPrimitive:createTangentSpaceDebugPrimitive,createWorldImagery:createWorldImagery,createWorldImageryAsync:createWorldImageryAsync,findContentMetadata:findContentMetadata,findGroupMetadata:findGroupMetadata,findTileMetadata:findTileMetadata,getBinaryAccessor:getBinaryAccessor,getClipAndStyleCode:getClipAndStyleCode,getClippingFunction:getClippingFunction,hasExtension:hasExtension,parseBatchTable:parseBatchTable,parseBoundingVolumeSemantics:parseBoundingVolumeSemantics,parseFeatureMetadataLegacy:parseFeatureMetadataLegacy,parseStructuralMetadata:parseStructuralMetadata,preprocess3DTileContent:preprocess3DTileContent,processVoxelProperties:processVoxelProperties,_shadersCzmBuiltins:CzmBuiltins,_shadersAllMaterialAppearanceFS:AllMaterialAppearanceFS,_shadersAllMaterialAppearanceVS:AllMaterialAppearanceVS,_shadersBasicMaterialAppearanceFS:BasicMaterialAppearanceFS,_shadersBasicMaterialAppearanceVS:BasicMaterialAppearanceVS,_shadersEllipsoidSurfaceAppearanceFS:EllipsoidSurfaceAppearanceFS,_shadersEllipsoidSurfaceAppearanceVS:EllipsoidSurfaceAppearanceVS,_shadersPerInstanceColorAppearanceFS:PerInstanceColorAppearanceFS,_shadersPerInstanceColorAppearanceVS:PerInstanceColorAppearanceVS,_shadersPerInstanceFlatColorAppearanceFS:PerInstanceFlatColorAppearanceFS,_shadersPerInstanceFlatColorAppearanceVS:PerInstanceFlatColorAppearanceVS,_shadersPolylineColorAppearanceVS:PolylineColorAppearanceVS,_shadersPolylineMaterialAppearanceVS:PolylineMaterialAppearanceVS,_shadersTexturedMaterialAppearanceFS:TexturedMaterialAppearanceFS,_shadersTexturedMaterialAppearanceVS:TexturedMaterialAppearanceVS,_shadersAspectRampMaterial:AspectRampMaterial,_shadersBumpMapMaterial:BumpMapMaterial,_shadersCheckerboardMaterial:CheckerboardMaterial,_shadersDotMaterial:DotMaterial,_shadersElevationBandMaterial:ElevationBandMaterial,_shadersElevationContourMaterial:ElevationContourMaterial,_shadersElevationRampMaterial:ElevationRampMaterial,_shadersFadeMaterial:FadeMaterial,_shadersGridMaterial:GridMaterial,_shadersNormalMapMaterial:NormalMapMaterial,_shadersPolylineArrowMaterial:PolylineArrowMaterial,_shadersPolylineDashMaterial:PolylineDashMaterial,_shadersPolylineGlowMaterial:PolylineGlowMaterial,_shadersPolylineOutlineMaterial:PolylineOutlineMaterial,_shadersRimLightingMaterial:RimLightingMaterial,_shadersSlopeRampMaterial:SlopeRampMaterial,_shadersStripeMaterial:StripeMaterial,_shadersWater:WaterMaterial,_shadersCPUStylingStageFS:CPUStylingStageFS,_shadersCPUStylingStageVS:CPUStylingStageVS,_shadersCustomShaderStageFS:CustomShaderStageFS,_shadersCustomShaderStageVS:CustomShaderStageVS,_shadersFeatureIdStageFS:FeatureIdStageFS,_shadersFeatureIdStageVS:FeatureIdStageVS,_shadersGeometryStageFS:GeometryStageFS,_shadersGeometryStageVS:GeometryStageVS,_shadersImageBasedLightingStageFS:ImageBasedLightingStageFS,_shadersInstancingStageCommon:InstancingStageCommon,_shadersInstancingStageVS:InstancingStageVS,_shadersLegacyInstancingStageVS:LegacyInstancingStageVS,_shadersLightingStageFS:LightingStageFS,_shadersMaterialStageFS:MaterialStageFS,_shadersMetadataStageFS:MetadataStageFS,_shadersMetadataStageVS:MetadataStageVS,_shadersModelClippingPlanesStageFS:ModelClippingPlanesStageFS,_shadersModelColorStageFS:ModelColorStageFS,_shadersModelFS:ModelFS,_shadersModelSilhouetteStageFS:ModelSilhouetteStageFS,_shadersModelSilhouetteStageVS:ModelSilhouetteStageVS,_shadersModelSplitterStageFS:ModelSplitterStageFS,_shadersModelVS:ModelVS,_shadersMorphTargetsStageVS:MorphTargetsStageVS,_shadersPointCloudStylingStageVS:PointCloudStylingStageVS,_shadersPrimitiveOutlineStageFS:PrimitiveOutlineStageFS,_shadersPrimitiveOutlineStageVS:PrimitiveOutlineStageVS,_shadersSelectedFeatureIdStageCommon:SelectedFeatureIdStageCommon,_shadersSkinningStageVS:SkinningStageVS,_shadersAcesTonemappingStage:AcesTonemapping,_shadersAdditiveBlend:AdditiveBlend,_shadersAmbientOcclusionGenerate:AmbientOcclusionGenerate,_shadersAmbientOcclusionModulate:AmbientOcclusionModulate,_shadersBlackAndWhite:BlackAndWhite,_shadersBloomComposite:BloomComposite,_shadersBrightPass:BrightPass,_shadersBrightness:Brightness,_shadersCompositeTranslucentClassification:CompositeTranslucentClassification,_shadersContrastBias:ContrastBias,_shadersDepthOfField:DepthOfField,_shadersDepthView:DepthView,_shadersDepthViewPacked:DepthViewPacked,_shadersEdgeDetection:EdgeDetection,_shadersFXAA:FXAA,_shadersFilmicTonemapping:FilmicTonemapping,_shadersGaussianBlur1D:GaussianBlur1D,_shadersLensFlare:LensFlare,_shadersModifiedReinhardTonemapping:ModifiedReinhardTonemapping,_shadersNightVision:NightVision,_shadersPassThrough:PassThrough,_shadersPassThroughDepth:PassThroughDepth,_shadersPointCloudEyeDomeLighting:PointCloudEyeDomeLightingShader,_shadersReinhardTonemapping:ReinhardTonemapping,_shadersSilhouette:Silhouette,_shadersIntersectBox:IntersectBox,_shadersIntersectClippingPlanes:IntersectClippingPlanes,_shadersIntersectCylinder:IntersectCylinder,_shadersIntersectDepth:IntersectDepth,_shadersIntersectEllipsoid:IntersectEllipsoid,_shadersIntersection:Intersection,_shadersIntersectionUtils:IntersectionUtils,_shadersMegatexture:Megatexture,_shadersOctree:Octree,_shadersVoxelFS:VoxelFS,_shadersVoxelVS:VoxelVS,_shadersconvertUvToBox:convertUvToBox,_shadersconvertUvToCylinder:convertUvToCylinder,_shadersconvertUvToEllipsoid:convertUvToEllipsoid,ForEach:ForEach,addBuffer:addBuffer,addDefaults:addDefaults,addExtensionsRequired:addExtensionsRequired,addExtensionsUsed:addExtensionsUsed,addPipelineExtras:addPipelineExtras,addToArray:addToArray,findAccessorMinMax:findAccessorMinMax,forEachTextureInMaterial:forEachTextureInMaterial,getAccessorByteStride:getAccessorByteStride,getComponentReader:getComponentReader,moveTechniqueRenderStates:moveTechniqueRenderStates,moveTechniquesToExtension:moveTechniquesToExtension,numberOfComponentsForType:numberOfComponentsForType,parseGlb:parseGlb,readAccessorPacked:readAccessorPacked,removeExtension:removeExtension,removeExtensionsRequired:removeExtensionsRequired,removeExtensionsUsed:removeExtensionsUsed,removePipelineExtras:removePipelineExtras,removeUnusedElements:removeUnusedElements,updateAccessorComponentTypes:updateAccessorComponentTypes,updateVersion:updateVersion,usesExtension:usesExtension,AlphaPipelineStage:AlphaPipelineStage$1,B3dmLoader:B3dmLoader,BatchTexturePipelineStage:BatchTexturePipelineStage$1,CPUStylingPipelineStage:CPUStylingPipelineStage$1,ClassificationModelDrawCommand:ClassificationModelDrawCommand,ClassificationPipelineStage:ClassificationPipelineStage$1,CustomShader:CustomShader,CustomShaderMode:CustomShaderMode$1,CustomShaderPipelineStage:CustomShaderPipelineStage$1,CustomShaderTranslucencyMode:CustomShaderTranslucencyMode$1,DequantizationPipelineStage:DequantizationPipelineStage$1,FeatureIdPipelineStage:FeatureIdPipelineStage$1,GeoJsonLoader:GeoJsonLoader,GeometryPipelineStage:GeometryPipelineStage$1,I3dmLoader:I3dmLoader,ImageBasedLightingPipelineStage:ImageBasedLightingPipelineStage$1,InstancingPipelineStage:InstancingPipelineStage$1,LightingModel:LightingModel$1,LightingPipelineStage:LightingPipelineStage$1,MaterialPipelineStage:MaterialPipelineStage$1,MetadataPipelineStage:MetadataPipelineStage$1,Model:Model,Model3DTileContent:Model3DTileContent,ModelAlphaOptions:ModelAlphaOptions,ModelAnimation:ModelAnimation,ModelAnimationChannel:ModelAnimationChannel,ModelAnimationCollection:ModelAnimationCollection,ModelArticulation:ModelArticulation,ModelArticulationStage:ModelArticulationStage,ModelClippingPlanesPipelineStage:ModelClippingPlanesPipelineStage$1,ModelColorPipelineStage:ModelColorPipelineStage$1,ModelDrawCommand:ModelDrawCommand,ModelFeature:ModelFeature,ModelFeatureTable:ModelFeatureTable,ModelLightingOptions:ModelLightingOptions,ModelMatrixUpdateStage:ModelMatrixUpdateStage$1,ModelNode:ModelNode,ModelRenderResources:ModelRenderResources,ModelRuntimeNode:ModelRuntimeNode,ModelRuntimePrimitive:ModelRuntimePrimitive,ModelSceneGraph:ModelSceneGraph,ModelSilhouettePipelineStage:ModelSilhouettePipelineStage$1,ModelSkin:ModelSkin,ModelSplitterPipelineStage:ModelSplitterPipelineStage$1,ModelStatistics:ModelStatistics,ModelType:ModelType$1,ModelUtility:ModelUtility,MorphTargetsPipelineStage:MorphTargetsPipelineStage$1,NodeRenderResources:NodeRenderResources,NodeStatisticsPipelineStage:NodeStatisticsPipelineStage$1,PickingPipelineStage:PickingPipelineStage$1,PntsLoader:PntsLoader,PointCloudStylingPipelineStage:PointCloudStylingPipelineStage$1,PrimitiveOutlineGenerator:PrimitiveOutlineGenerator,PrimitiveOutlinePipelineStage:PrimitiveOutlinePipelineStage$1,PrimitiveRenderResources:PrimitiveRenderResources,PrimitiveStatisticsPipelineStage:PrimitiveStatisticsPipelineStage$1,SceneMode2DPipelineStage:SceneMode2DPipelineStage$1,SelectedFeatureIdPipelineStage:SelectedFeatureIdPipelineStage$1,SkinningPipelineStage:SkinningPipelineStage$1,StyleCommandsNeeded:StyleCommandsNeeded$1,TextureManager:TextureManager,TextureUniform:TextureUniform,TilesetPipelineStage:TilesetPipelineStage$1,UniformType:UniformType$1,VaryingType:VaryingType$1,WireframePipelineStage:WireframePipelineStage$1,buildDrawCommand:buildDrawCommand,_shadersdegreesPerRadian:czm_degreesPerRadian,_shadersdepthRange:czm_depthRange,_shadersepsilon1:czm_epsilon1,_shadersepsilon2:czm_epsilon2,_shadersepsilon3:czm_epsilon3,_shadersepsilon4:czm_epsilon4,_shadersepsilon5:czm_epsilon5,_shadersepsilon6:czm_epsilon6,_shadersepsilon7:czm_epsilon7,_shadersinfinity:czm_infinity,_shadersoneOverPi:czm_oneOverPi,_shadersoneOverTwoPi:czm_oneOverTwoPi,_shaderspassCesium3DTile:czm_passCesium3DTile,_shaderspassCesium3DTileClassification:czm_passCesium3DTileClassification,_shaderspassCesium3DTileClassificationIgnoreShow:czm_passCesium3DTileClassificationIgnoreShow,_shaderspassClassification:czm_passClassification,_shaderspassCompute:czm_passCompute,_shaderspassEnvironment:czm_passEnvironment,_shaderspassGlobe:czm_passGlobe,_shaderspassOpaque:czm_passOpaque,_shaderspassOverlay:czm_passOverlay,_shaderspassTerrainClassification:czm_passTerrainClassification,_shaderspassTranslucent:czm_passTranslucent,_shaderspassVoxels:czm_passVoxels,_shaderspi:czm_pi,_shaderspiOverFour:czm_piOverFour,_shaderspiOverSix:czm_piOverSix,_shaderspiOverThree:czm_piOverThree,_shaderspiOverTwo:czm_piOverTwo,_shadersradiansPerDegree:czm_radiansPerDegree,_shaderssceneMode2D:czm_sceneMode2D,_shaderssceneMode3D:czm_sceneMode3D,_shaderssceneModeColumbusView:czm_sceneModeColumbusView,_shaderssceneModeMorphing:czm_sceneModeMorphing,_shaderssolarRadius:czm_solarRadius,_shadersthreePiOver2:czm_threePiOver2,_shaderstwoPi:czm_twoPi,_shaderswebMercatorMaxLatitude:czm_webMercatorMaxLatitude,_shadersHSBToRGB:czm_HSBToRGB,_shadersHSLToRGB:czm_HSLToRGB,_shadersRGBToHSB:czm_RGBToHSB,_shadersRGBToHSL:czm_RGBToHSL,_shadersRGBToXYZ:czm_RGBToXYZ,_shadersXYZToRGB:czm_XYZToRGB,_shadersacesTonemapping:czm_acesTonemapping,_shadersalphaWeight:czm_alphaWeight,_shadersantialias:czm_antialias,_shadersapproximateSphericalCoordinates:czm_approximateSphericalCoordinates,_shadersbackFacing:czm_backFacing,_shadersbranchFreeTernary:czm_branchFreeTernary,_shaderscascadeColor:czm_cascadeColor,_shaderscascadeDistance:czm_cascadeDistance,_shaderscascadeMatrix:czm_cascadeMatrix,_shaderscascadeWeights:czm_cascadeWeights,_shaderscolumbusViewMorph:czm_columbusViewMorph,_shaderscomputePosition:czm_computePosition,_shaderscosineAndSine:czm_cosineAndSine,_shadersdecompressTextureCoordinates:czm_decompressTextureCoordinates,_shadersdefaultPbrMaterial:czm_defaultPbrMaterial,_shadersdepthClamp:czm_depthClamp,_shaderseastNorthUpToEyeCoordinates:czm_eastNorthUpToEyeCoordinates,_shadersellipsoidContainsPoint:czm_ellipsoidContainsPoint,_shadersellipsoidWgs84TextureCoordinates:czm_ellipsoidWgs84TextureCoordinates,_shadersequalsEpsilon:czm_equalsEpsilon,_shaderseyeOffset:czm_eyeOffset,_shaderseyeToWindowCoordinates:czm_eyeToWindowCoordinates,_shadersfastApproximateAtan:czm_fastApproximateAtan,_shadersfog:czm_fog,_shadersgammaCorrect:czm_gammaCorrect,_shadersgeodeticSurfaceNormal:czm_geodeticSurfaceNormal,_shadersgetDefaultMaterial:czm_getDefaultMaterial,_shadersgetLambertDiffuse:czm_getLambertDiffuse,_shadersgetSpecular:czm_getSpecular,_shadersgetWaterNoise:czm_getWaterNoise,_shadershue:czm_hue,_shadersinverseGamma:czm_inverseGamma,_shadersisEmpty:czm_isEmpty,_shadersisFull:czm_isFull,_shaderslatitudeToWebMercatorFraction:czm_latitudeToWebMercatorFraction,_shaderslineDistance:czm_lineDistance,_shaderslinearToSrgb:czm_linearToSrgb,_shadersluminance:czm_luminance,_shadersmetersPerPixel:czm_metersPerPixel,_shadersmodelToWindowCoordinates:czm_modelToWindowCoordinates,_shadersmultiplyWithColorBalance:czm_multiplyWithColorBalance,_shadersnearFarScalar:czm_nearFarScalar,_shadersoctDecode:czm_octDecode,_shaderspackDepth:czm_packDepth,_shaderspbrLighting:czm_pbrLighting,_shaderspbrMetallicRoughnessMaterial:czm_pbrMetallicRoughnessMaterial,_shaderspbrSpecularGlossinessMaterial:czm_pbrSpecularGlossinessMaterial,_shadersphong:czm_phong,_shadersplaneDistance:czm_planeDistance,_shaderspointAlongRay:czm_pointAlongRay,_shadersrayEllipsoidIntersectionInterval:czm_rayEllipsoidIntersectionInterval,_shadersraySphereIntersectionInterval:czm_raySphereIntersectionInterval,_shadersreadDepth:czm_readDepth,_shadersreadNonPerspective:czm_readNonPerspective,_shadersreverseLogDepth:czm_reverseLogDepth,_shadersround:czm_round,_shaderssampleOctahedralProjection:czm_sampleOctahedralProjection,_shaderssaturation:czm_saturation,_shadersshadowDepthCompare:czm_shadowDepthCompare,_shadersshadowVisibility:czm_shadowVisibility,_shaderssignNotZero:czm_signNotZero,_shaderssphericalHarmonics:czm_sphericalHarmonics,_shaderssrgbToLinear:czm_srgbToLinear,_shaderstangentToEyeSpaceMatrix:czm_tangentToEyeSpaceMatrix,_shaderstextureCube:czm_textureCube,_shaderstransformPlane:czm_transformPlane,_shaderstranslateRelativeToEye:czm_translateRelativeToEye,_shaderstranslucentPhong:czm_translucentPhong,_shaderstranspose:czm_transpose,_shadersunpackDepth:czm_unpackDepth,_shadersunpackFloat:czm_unpackFloat,_shadersunpackUint:czm_unpackUint,_shadersvalueTransform:czm_valueTransform,_shadersvertexLogDepth:czm_vertexLogDepth,_shaderswindowToEyeCoordinates:czm_windowToEyeCoordinates,_shaderswriteDepthClamp:czm_writeDepthClamp,_shaderswriteLogDepth:czm_writeLogDepth,_shaderswriteNonPerspective:czm_writeNonPerspective,_shadersdepthRangeStruct:czm_depthRangeStruct,_shadersmaterial:czm_material,_shadersmaterialInput:czm_materialInput,_shadersmodelMaterial:czm_modelMaterial,_shadersmodelVertexOutput:czm_modelVertexOutput,_shaderspbrParameters:czm_pbrParameters,_shadersray:czm_ray,_shadersraySegment:czm_raySegment,_shadersshadowParameters:czm_shadowParameters,createTaskProcessorWorker:createTaskProcessorWorker,ClockViewModel:ClockViewModel,Command:Command,InspectorShared:InspectorShared$1,SvgPathBindingHandler:SvgPathBindingHandler$1,ToggleButtonViewModel:ToggleButtonViewModel,createCommand:createCommand,subscribeAndEvaluate:subscribeAndEvaluate,Animation:Animation,AnimationViewModel:AnimationViewModel,BaseLayerPicker:BaseLayerPicker,BaseLayerPickerViewModel:BaseLayerPickerViewModel,ProviderViewModel:ProviderViewModel,createDefaultImageryProviderViewModels:createDefaultImageryProviderViewModels,createDefaultTerrainProviderViewModels:createDefaultTerrainProviderViewModels,CesiumInspector:CesiumInspector,CesiumInspectorViewModel:CesiumInspectorViewModel,Cesium3DTilesInspector:Cesium3DTilesInspector,Cesium3DTilesInspectorViewModel:Cesium3DTilesInspectorViewModel,FullscreenButton:FullscreenButton,FullscreenButtonViewModel:FullscreenButtonViewModel,Geocoder:Geocoder,GeocoderViewModel:GeocoderViewModel,HomeButton:HomeButton,HomeButtonViewModel:HomeButtonViewModel,InfoBox:InfoBox,InfoBoxViewModel:InfoBoxViewModel,NavigationHelpButton:NavigationHelpButton,NavigationHelpButtonViewModel:NavigationHelpButtonViewModel,PerformanceWatchdog:PerformanceWatchdog,PerformanceWatchdogViewModel:PerformanceWatchdogViewModel,ProjectionPicker:ProjectionPicker,ProjectionPickerViewModel:ProjectionPickerViewModel,SceneModePicker:SceneModePicker,SceneModePickerViewModel:SceneModePickerViewModel,SelectionIndicator:SelectionIndicator,SelectionIndicatorViewModel:SelectionIndicatorViewModel,knockout_3_5_1:knockout$1,knockout_es5:knockout_es5,knockout:knockout$1,Timeline:Timeline,TimelineHighlightRange:TimelineHighlightRange,TimelineTrack:TimelineTrack,VRButton:VRButton,VRButtonViewModel:VRButtonViewModel,Viewer:Viewer,viewerCesium3DTilesInspectorMixin:viewerCesium3DTilesInspectorMixin,viewerCesiumInspectorMixin:viewerCesiumInspectorMixin,viewerDragDropMixin:viewerDragDropMixin,viewerPerformanceWatchdogMixin:viewerPerformanceWatchdogMixin,viewerVoxelInspectorMixin:viewerVoxelInspectorMixin,VoxelInspector:VoxelInspector,VoxelInspectorViewModel:VoxelInspectorViewModel},Symbol.toStringTag,{value:"Module"})),widgets="",PI=3.141592653589793,a=6378245,ee=.006693421622965943;function bd09togcj02(e,t){let i=52.35987755982988,n=e-.0065,r=t-.006,o=Math.sqrt(n*n+r*r)-2e-5*Math.sin(r*i),a=Math.atan2(r,n)-3e-6*Math.cos(n*i);return[o*Math.cos(a),o*Math.sin(a)]}function gcj02towgs84(e,t){if(outOfChina(e,t))return[e,t];{let i=transformlat(e-105,t-35),n=transformlng(e-105,t-35),r=t/180*PI,o=Math.sin(r);o=1-ee*o*o;let s=Math.sqrt(o);i=180*i/(a*(1-ee)/(o*s)*PI),n=180*n/(a/s*Math.cos(r)*PI);return[2*e-(e+n),2*t-(t+i)]}}function bd09towgs84(e,t){const i=bd09togcj02(e,t);return gcj02towgs84(i[0],i[1])}function transformlat(e,t){let i=2*e-100+3*t+.2*t*t+.1*e*t+.2*Math.sqrt(Math.abs(e));return i+=2*(20*Math.sin(6*e*PI)+20*Math.sin(2*e*PI))/3,i+=2*(20*Math.sin(t*PI)+40*Math.sin(t/3*PI))/3,i+=2*(160*Math.sin(t/12*PI)+320*Math.sin(t*PI/30))/3,i}function transformlng(e,t){let i=300+e+2*t+.1*e*e+.1*e*t+.1*Math.sqrt(Math.abs(e));return i+=2*(20*Math.sin(6*e*PI)+20*Math.sin(2*e*PI))/3,i+=2*(20*Math.sin(e*PI)+40*Math.sin(e/3*PI))/3,i+=2*(150*Math.sin(e/12*PI)+300*Math.sin(e/30*PI))/3,i}function outOfChina(e,t){return e<72.004||e>137.8347||t<.8293||t>55.8271||!1}const toRadians=e=>CesiumMath$1.toRadians(e),lonlatToPosition=(e,t,i=0)=>Cartesian3.fromDegrees(e,t,i);class CesiumLoader{constructor(){__publicField(this,"Cesium"),this.Cesium=Cesium}}class TilesetLoader extends CesiumLoader{constructor(e,t,i){super(),__publicField(this,"tileset"),__publicField(this,"finish"),__publicField(this,"loaded"),__publicField(this,"height"),__publicField(this,"offsetX"),__publicField(this,"offsetY"),__publicField(this,"rotateX"),__publicField(this,"rotateY"),__publicField(this,"rotateZ"),__publicField(this,"scale"),__publicField(this,"opacity"),__publicField(this,"readyFun"),__publicField(this,"loadedFun"),__publicField(this,"contentList"),__publicField(this,"tilesetModelObj"),__publicField(this,"centerMatrix4"),__publicField(this,"id"),__publicField(this,"cesiumObj"),__publicField(this,"url"),__publicField(this,"splitDirection"),this.tileset=null,this.contentList=[],this.finish=!1,this.loaded=!1,this.readyFun=null,this.loadedFun=null,this.height=(null==i?void 0:i.height)||0,this.offsetX=(null==i?void 0:i.offsetX)||0,this.offsetY=(null==i?void 0:i.offsetY)||0,this.rotateX=(null==i?void 0:i.rotateX)||0,this.rotateY=(null==i?void 0:i.rotateY)||0,this.rotateZ=(null==i?void 0:i.rotateZ)||0,this.opacity=(null==i?void 0:i.opacity)||1,this.scale=(null==i?void 0:i.scale)||0,this.id=(null==i?void 0:i.id)||"",this.splitDirection=(null==i?void 0:i.splitDirection)||"NONE",this.tilesetModelObj={},this.centerMatrix4=null,this.cesiumObj=e,this.url=t,this.load3DTile()}getModelName(){return this.id||this.url.slice(this.url.lastIndexOf("/"))}getControlValue(){return{offsetX:this.offsetX,offsetY:this.offsetY,height:this.height,rotateX:this.rotateX,rotateY:this.rotateY,rotateZ:this.rotateZ,scale:this.scale,opacity:this.opacity}}getControlOptions(){return[{name:"offsetX",value:"offsetX",type:"number",step:1},{name:"offsetY",value:"offsetY",type:"number",step:1},{name:"高度",value:"height",type:"number"},{name:"缩放",value:"scale",type:"number",step:.01},{name:"rotateX",value:"rotateX",type:"slider",min:-180,max:180},{name:"rotateY",value:"rotateY",type:"slider",min:-180,max:180},{name:"rotateZ",value:"rotateZ",type:"slider",min:-180,max:180},{name:"透明度",value:"opacity",type:"slider",min:0,max:1,step:.01}]}updateStyle(e){this.offsetX=e.offsetX,this.offsetY=e.offsetY,this.height=e.height,this.opacity=e.opacity,this.scale=e.scale,this.rotateX=e.rotateX,this.rotateY=e.rotateY,this.rotateZ=e.rotateZ,this.setPointion(this.height,this.offsetX,this.offsetY),this.setOpacity(this.opacity),this.setTileMatrix4()}readyFinish(e){e&&(this.finish?e(this.tileset):this.readyFun=e)}loadFinish(e){e&&(this.loadedFun?e(this.contentList):this.loadedFun=e)}load3DTile(){this.Cesium.Cesium3DTileset.fromUrl(this.url).then((e=>{if(this.tileset=e,this.setPointion(this.height,this.offsetX,this.offsetY),this.cesiumObj.hideEarth){let e=new Cartesian3;this.cesiumObj.HIDEMODELCETNER.clone(e),this.tileset.boundingSphere.center=e}e.allTilesLoaded.addEventListener((()=>{let t=this.getTilesetAllContent(e),i={};t.forEach((e=>{let t=e.featuresLength;for(let n=0;n<t;n++){let t=e.getFeature(n),r=t.getProperty("name");i[r]?i[r].push(t):i[r]=[t]}})),this.tilesetModelObj=i,this.contentList=t,this.loadedFun&&this.loadedFun(this.contentList),this.loaded=!0})),this.setTileMatrix4(),this.cesiumObj.view.scene.primitives.add(e),this.cesiumObj.isSplitView&&this.splitDirection&&(e.splitDirection=SplitDirection$1[this.splitDirection]),this.id&&(this.cesiumObj.primitiveObj[this.id]=e),this.readyFun&&this.readyFun(this.tileset),this.finish=!0,this.tileset.tilesetLoaderObj=this,1!=this.opacity&&this.setOpacity(this.opacity)}))}setOpacity(e){this.tileset.style=new this.Cesium.Cesium3DTileStyle({color:{evaluateColor:()=>new this.Cesium.Color(1,1,1,e)},show:!0})}setPointion(e,t=0,i=0){if(this.tileset){let n=this.tileset.boundingSphere.center.clone();const r=this.Cesium.Cartographic.fromCartesian(n),o=this.Cesium.Cartesian3.fromRadians(r.longitude,r.latitude,0);t/=1e5,i/=1e5;const a=this.Cesium.Cartesian3.fromRadians(r.longitude+t,r.latitude+i,e),s=this.Cesium.Cartesian3.subtract(a,o,new this.Cesium.Cartesian3);this.tileset.modelMatrix=this.Cesium.Matrix4.fromTranslation(s)}else this.height=e,this.offsetX=t,this.offsetY=i}getChildAllContent(e){let t=[];if(e){t.push(e);let i=e.innerContents;i&&i.forEach((e=>{t.push(...this.getChildAllContent(e))}))}return t}getTilesetAllContent(e){let t=[];if(e){e.root.children.forEach((e=>{t.push(...this.getChildAllContent(e.content))}))}return t}getTilesetCenterMatrix4(){if(!this.centerMatrix4){let e=this.tileset.boundingSphere,t=this.Cesium.Cartographic.fromCartesian(e.center),i=this.Cesium.Math.toDegrees(t.longitude),n=this.Cesium.Math.toDegrees(t.latitude),r=this.Cesium.Cartesian3.fromRadians(this.Cesium.Math.toRadians(i),this.Cesium.Math.toRadians(n),0),o=this.Cesium.Transforms.eastNorthUpToFixedFrame(r);this.centerMatrix4=o.clone()}return this.centerMatrix4}setTileMatrix4(){let e=this.getTilesetCenterMatrix4().clone(),t=this.Cesium.Matrix4.fromUniformScale(this.scale);this.Cesium.Matrix4.multiply(e,t,e);let i=this.Cesium.Matrix3.fromRotationX(this.Cesium.Math.toRadians(this.rotateX)),n=this.Cesium.Matrix4.fromRotationTranslation(i);this.Cesium.Matrix4.multiply(e,n,e);let r=this.Cesium.Matrix3.fromRotationY(this.Cesium.Math.toRadians(this.rotateY)),o=this.Cesium.Matrix4.fromRotationTranslation(r);this.Cesium.Matrix4.multiply(e,o,e);let a=this.Cesium.Matrix3.fromRotationZ(this.Cesium.Math.toRadians(this.rotateZ)),s=this.Cesium.Matrix4.fromRotationTranslation(a);this.Cesium.Matrix4.multiply(e,s,e),this.tileset._root.transform=e}flyTo(){this.cesiumObj.view.flyTo(this.tileset)}}class GltfLoader extends CesiumLoader{constructor(e,t,i){super(),__publicField(this,"url"),__publicField(this,"cesiumObj"),__publicField(this,"id"),__publicField(this,"animationsLength"),__publicField(this,"rotateX"),__publicField(this,"rotateY"),__publicField(this,"rotateZ"),__publicField(this,"scale"),__publicField(this,"lon"),__publicField(this,"lat"),__publicField(this,"height"),__publicField(this,"loopAllAnimations"),__publicField(this,"loopAllAnimationsSpeed"),__publicField(this,"gltfModel"),__publicField(this,"animationList"),__publicField(this,"animationList_linshi"),__publicField(this,"isLoadFinish"),__publicField(this,"loadFinFun"),__publicField(this,"isFlyToObj"),__publicField(this,"modelMatrix"),__publicField(this,"splitDirection"),__publicField(this,"opacity"),__publicField(this,"options"),this.url=t,this.options=i,this.cesiumObj=e,this.id=i.id||"",this.rotateX=i.rotateX||0,this.rotateY=i.rotateY||0,this.rotateZ=i.rotateZ||0,this.scale=i.scale||1,this.opacity=i.opacity||1,this.splitDirection=i.splitDirection||"NONE",this.setLonLat(this.options),this.height=i.height||0,this.animationsLength=0,this.loopAllAnimations=i.loopAllAnimations||"",this.loopAllAnimationsSpeed=i.loopAllAnimationsSpeed||1,this.gltfModel=null,this.animationList=[],this.animationList_linshi=[],this.isLoadFinish=!1,this.loadFinFun=null,this.isFlyToObj=null,this.modelMatrix=null,this.url&&void 0!==this.lon&&void 0!==this.lat&&this.loadModel()}setLonLat(e){let t,i;if(this.cesiumObj.hideEarth){let n=(e.x||0)/1e5,r=(e.y||0)/1e5;t=this.cesiumObj.HIDEMODELLONLAT[0]+n,i=this.cesiumObj.HIDEMODELLONLAT[1]+r}else t=e.lon,i=e.lat;this.lon=t,this.lat=i}getModelName(){return this.id||this.url.slice(this.url.lastIndexOf("/"))}getControlValue(){return{x:this.options.x||0,y:this.options.y||0,lon:this.lon,lat:this.lat,height:this.height,rotateX:this.rotateX,rotateY:this.rotateY,rotateZ:this.rotateZ,scale:this.scale,opacity:this.opacity}}getControlOptions(){let e=[{name:"经度",value:"lon",type:"number",step:1e-5},{name:"纬度",value:"lat",type:"number",step:1e-5}];this.cesiumObj.hideEarth&&(e=[{name:"x偏移",value:"x",type:"number",step:1},{name:"y偏移",value:"y",type:"number",step:1}]);return e=e.concat([{name:"高度",value:"height",type:"number"},{name:"缩放",value:"scale",type:"number",step:.01},{name:"rotateX",value:"rotateX",type:"slider",min:-180,max:180},{name:"rotateY",value:"rotateY",type:"slider",min:-180,max:180},{name:"rotateZ",value:"rotateZ",type:"slider",min:-180,max:180},{name:"透明度",value:"opacity",type:"slider",min:0,max:1,step:.01}]),e}updateStyle(e){this.setLonLat(e),this.height=e.height,this.rotateX=e.rotateX,this.rotateY=e.rotateY,this.rotateZ=e.rotateZ,this.scale=e.scale,this.opacity=e.opacity,this.setModelMatrix(),this.gltfModel.modelMatrix=this.modelMatrix,this.gltfModel.scale=this.scale,this.gltfModel.style=new Cesium3DTileStyle({color:`color('rgba(255,255, 255, ${this.opacity})')`})}loadFinish(e){this.isLoadFinish?e(this.gltfModel):this.loadFinFun=e}setModelMatrix(){let[e,t]=this.cesiumObj.lonlatToWGS84(this.lon,this.lat);const i=Cartesian3.fromDegrees(e,t,this.height),n=new HeadingPitchRoll(CesiumMath$1.toRadians(this.rotateZ),CesiumMath$1.toRadians(this.rotateX),CesiumMath$1.toRadians(this.rotateY)),r=Transforms$1.localFrameToFixedFrameGenerator("north","west");this.modelMatrix=Transforms$1.headingPitchRollToFixedFrame(i,n,Ellipsoid.WGS84,r)}loadModel(){this.setModelMatrix(),Model.fromGltfAsync({url:this.url,scale:this.scale,id:this.id||null,modelMatrix:this.modelMatrix,gltfCallback:e=>{var t;this.animationsLength=(null==(t=e.animations)?void 0:t.length)||0}}).then((e=>{this.gltfModel=e,this.cesiumObj.view.scene.primitives.add(this.gltfModel),this.id&&(this.cesiumObj.primitiveObj[this.id]=this.gltfModel),this.cesiumObj.isSplitView&&(this.gltfModel.splitDirection=SplitDirection$1[this.splitDirection]),1!==this.opacity&&(this.gltfModel.style=new Cesium3DTileStyle({color:`color('rgba(255,255, 255, ${this.opacity})')`})),this.gltfModel.readyEvent.addEventListener((()=>{this.loopAllAnimations&&this.addAllAnimations(),this.isLoadFinish=!0,this.loadFinFun&&this.loadFinFun(this.gltfModel),this.isFlyToObj&&this.flyTo(this.isFlyToObj),this.cesiumObj.view.trackedEntity=this.gltfModel,0!==this.animationList_linshi.length&&this.animationList_linshi.forEach((e=>{this.addAnimation(e)}))}))}))}addAnimation(e){if(!this.isLoadFinish)return void this.animationList_linshi.push(e);let t=e.index;if(void 0===e.index)return;if(t+1>this.animationsLength)return;let i=e.loop||"NONE";e.speed;let n=e.reverse||!1;if(this.loopAllAnimations)return;let r=this.animationList.findIndex((e=>e.index===t));-1!==r&&(this.animationList[r],this.animationList.splice(r,1));let o={index:t,loop:ModelAnimationLoop$1[i],multiplier:this.loopAllAnimationsSpeed,reverse:n},a=this.gltfModel.activeAnimations.add(o);this.animationList.push({index:t,anim:a})}addAllAnimations(){let e=!1;"REVERSE"===this.loopAllAnimations&&(e=!0),"MIRRORED_REPEAT"!==this.loopAllAnimations&&(this.loopAllAnimations="REPEAT");for(let t=0;t<this.animationsLength;t++)this.gltfModel.activeAnimations.add({index:t,loop:ModelAnimationLoop$1[this.loopAllAnimations],multiplier:this.loopAllAnimationsSpeed,reverse:e})}stopAllAnimations(){this.loopAllAnimations="",this.gltfModel.activeAnimations.removeAll()}flyTo(e){let t=(e=e||{}).offsetX||0,i=e.offsetY||.002,n=e.height||200;if(this.isLoadFinish){let[e,r]=this.cesiumObj.lonlatToWGS84(this.lon,this.lat),o=e-t,a=r-i;this.cesiumObj.changeCamera(o,a,n,{isFly:!0,heading:-1,pitch:-38})}else this.isFlyToObj=e}}class GyEdgeDetectionStage{constructor(e,t,i){__publicField(this,"view"),__publicField(this,"select"),__publicField(this,"edgedetectionstage"),__publicField(this,"color"),__publicField(this,"length"),this.view=e,this.select=null,this.edgedetectionstage=null,this.color=Color.fromCssColorString(t),this.length=i||.01,this.init()}clear(){this.edgedetectionstage.selected=[]}selectFeature(e){this.edgedetectionstage.selected=[],Array.isArray(e)||(e=[e]),this.select=e,this.edgedetectionstage.selected=e}init(){this.edgedetectionstage=PostProcessStageLibrary$1.createEdgeDetectionStage(),this.edgedetectionstage.uniforms.color=this.color,this.edgedetectionstage.uniforms.length=this.length,this.edgedetectionstage.selected=[],this.view.scene.postProcessStages.add(PostProcessStageLibrary$1.createSilhouetteStage([this.edgedetectionstage]))}}const BASEURL="/gy-cesium";let model1=null,model3=null,model4=null;class CesiumModel{constructor(e,t){var i,n;__publicField(this,"options"),__publicField(this,"contentId"),__publicField(this,"camera"),__publicField(this,"view"),__publicField(this,"controls"),__publicField(this,"isDebug"),__publicField(this,"edgeDetectionStage"),__publicField(this,"step"),__publicField(this,"lonlatType"),__publicField(this,"videoShed3d"),__publicField(this,"primitiveObj"),__publicField(this,"currentScence"),__publicField(this,"sceneObj"),__publicField(this,"filesObj"),__publicField(this,"hideEarth"),__publicField(this,"isSplitView"),__publicField(this,"modelControlsFun"),__publicField(this,"HIDEMODELLONLAT"),__publicField(this,"HIDEMODELCETNER");let r={token:"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiJkNWU0NjY3Yy00N2JjLTQxMmQtYmNkNC01MjM3ZjJiMzI3MGQiLCJpZCI6MTM5NTQ1LCJpYXQiOjE2ODQzNzc3NDl9.xwrLw1UquYPiRZY3ROYlAgzF_azXN1KuKJwdD_VMHwc",lonlatType:"WGS84",minDistance:1,maxDistance:Number.POSITIVE_INFINITY,extent:null,config:null,hideEarth:!1,isSplitView:!1,beforeInit:()=>{},afterInit:()=>{},startSceneLoaded:()=>{},sceneLoaded:()=>{},fileLoaded:()=>{}};this.isDebug=!0,this.contentId=e,this.options=Object.assign({},r,t),this.camera=null,this.view=null,this.controls=null,this.edgeDetectionStage=null,this.step=1,this.hideEarth=this.options.hideEarth||!1,this.isSplitView=this.options.isSplitView||!1,this.lonlatType=this.options.lonlatType||"WGS84",this.sceneObj=(null==(i=this.options.config)?void 0:i.scene)||{},this.filesObj=(null==(n=this.options.config)?void 0:n.files)||{},this.videoShed3d=null,this.primitiveObj={},this.currentScence="",this.modelControlsFun=null,this.HIDEMODELLONLAT=[116.39123036680564,39.90781148407254],this.HIDEMODELCETNER=Cartesian3.fromDegrees(this.HIDEMODELLONLAT[0],this.HIDEMODELLONLAT[1],0),this.init3DModel()}init3DModel(){var e,t,i;null==(t=(e=this.options).beforeInit)||t.call(e),this.options.token&&(Ion$1.defaultAccessToken=this.options.token),this.view=new Viewer(this.contentId,{animation:!1,baseLayerPicker:!1,geocoder:!1,infoBox:!1,timeline:!1,sceneModePicker:!1,navigationHelpButton:!1,fullscreenButton:!1,homeButton:!1,requestRenderMode:!1,scene3DOnly:!1,automaticallyTrackDataSourceClocks:!1,shouldAnimate:!0,imageryProvider:new UrlTemplateImageryProvider({url:"http://172.18.8.146:10000/map/gaodeMap/ccMap/{z}/{x}/{y}.jpg"})}),this.isDebug&&(window.view=this.view),this.hideEarth?(this.view.scene.globe=null,this.view.scene.sun.show=!1,this.view.scene.moon.show=!1,this.view.scene.skyBox.show=!1,this.view.scene.undergroundMode=!0,this.view.scene.backgroundcolor=new Color(0,0,0,0)):this.view.scene.globe.depthTestAgainstTerrain=!0,this.camera=this.view.camera,this.changeControls(),this.splitView();let n={lon:116.388415,lat:39.865688,heading:-1,pitch:-38};this.hideEarth&&(n.lon=this.HIDEMODELLONLAT[0],n.lat=this.HIDEMODELLONLAT[1]),this.changeCamera(...this.lonlatToWGS84(n.lon,n.lat),4e3,{isFly:!1,heading:-1,pitch:-38}),null==(i=this.options.afterInit)||i.call(this),this.view.clock.currentTime=JulianDate.fromIso8601("2023-05-18T02:00:00Z"),this.addEvents(),this.addModelExtent(),this.addPostProcessStages()}splitView(){const e=document.getElementById("slider");this.isSplitView?this.view.scene.splitPosition=e.offsetLeft/e.parentElement.offsetWidth:null==e||e.remove()}getCameraOpt(e,t,i=0,{heading:n,pitch:r,roll:o}={}){e=Number(e),t=Number(t),i=Number(i);let a={destination:lonlatToPosition(e,t,i)},s=null;return void 0===n&&void 0===r||(s={},n&&(n=Number(n),s.heading=toRadians(n)),r&&(r=Number(r),s.pitch=toRadians(r)),o&&(o=Number(o),s.pitch=toRadians(o))),s&&(a.orientation=s),a}changeCamera(e,t,i=0,{heading:n,pitch:r,isFly:o,roll:a}={isFly:!0}){const s=this.getCameraOpt(e,t,i,{heading:n,pitch:r,roll:a});let c="flyTo";o||(c="setView"),this.camera[c](s)}changeControls(){this.view.scene.screenSpaceCameraController.minimumZoomDistance=this.options.minDistance||1,this.view.scene.screenSpaceCameraController.maximumZoomDistance=this.options.maxDistance||3e4;const{scene:e}=this.view;e.screenSpaceCameraController.zoomEventTypes=[CameraEventType$1.WHEEL],e.screenSpaceCameraController.tiltEventTypes=[CameraEventType$1.RIGHT_DRAG]}addPostProcessStages(){this.view.scene.postProcessStages.fxaa.enabled=!0,this.edgeDetectionStage=new GyEdgeDetectionStage(this.view,"#0062ff",.01)}addEvents(){}addClickEvent(e){this.view.screenSpaceEventHandler.setInputAction((t=>{this.edgeDetectionStage&&this.edgeDetectionStage.clear();const i=this.view.scene.pick(t.position);if(!defined(i))return;let n=i.getProperty("name"),r=null;if(n){r=i.tileset.tilesetLoaderObj.tilesetModelObj[n]}e&&e(i,r)}),ScreenSpaceEventType$1.LEFT_CLICK)}addModelExtent(){if(this.options.extent&&!this.hideEarth){const e=this.view.scene,t=e.globe,i=Rectangle.fromDegrees(...this.options.extent);t.cartographicLimitRectangle=i,t.showSkirts=!1,t.backFaceCulling=!1,t.undergroundColor=void 0,e.skyAtmosphere.show=!1}}cesiumConClick(){switch(this.step){case 0:this.view.trackedEntity=null,this.changeCamera(...this.lonlatToWGS84(116.388415,39.865688),4e3,{isFly:!0,heading:-1,pitch:-38}),this.step++;break;case 1:this.view.flyTo(model1),this.step++;break;case 2:this.changeCamera(...this.lonlatToWGS84(116.403042,39.893806),500,{isFly:!0,heading:-1,pitch:-38}),this.step++;break;case 3:model4.flyTo(),this.step++;break;case 4:this.view.trackedEntity=model3,model3.viewFrom=new Cartesian3(-150,-250,100),this.step=0}}lonlatToWGS84(e,t){return e=Number(e),t=Number(t),"GCJ02"===this.lonlatType?gcj02towgs84(e,t):"BD09"===this.lonlatType?bd09towgs84(e,t):(this.lonlatType,[e,t])}getEntityById(e){return e?this.view.entities.getById(e):null}getPrimitiveById(e){return e&&this.primitiveObj[e]||null}initSceneCamera(){let e=this.currentScence,t=this.sceneObj[e],i=null==t?void 0:t.camera;if(i){let e,t;if(this.hideEarth){let n=(i.x||0)/1e5,r=(i.y||0)/1e5;[e,t]=this.lonlatToWGS84(this.HIDEMODELLONLAT[0]+n,this.HIDEMODELLONLAT[1]+r)}else[e,t]=this.lonlatToWGS84(i.lon,i.lat);this.changeCamera(e,t,i.hei,{heading:i.heading,pitch:i.pitch,isFly:!0,roll:i.roll})}}initModelPos(){}addTilesetModel(e,t){return new TilesetLoader(this,e,t)}addGltfModel(e,t){return new GltfLoader(this,e,t)}addVideoShadow(e,t){if(this.lonlatToWGS84(t.lon,t.lat),this.hideEarth){let e=(t.x||0)/1e5,i=(t.y||0)/1e5;this.lonlatToWGS84(this.HIDEMODELLONLAT[0]+e,this.HIDEMODELLONLAT[1]+i)}this.changeCamera(...this.lonlatToWGS84(116.403042,39.899806),500,{isFly:!1,heading:0,pitch:-89})}loadGltfModel(e){return new Promise((t=>{let i=e.path+"/"+e.file,n=this.addGltfModel(i,e);n.loadFinish((i=>{var r;let o=e.file,a=o.slice(0,o.lastIndexOf("."));null==(r=this.options.fileLoaded)||r.call(this,n,e.id||a,e),t(n)}))}))}loadTilesModel(e){return new Promise((t=>{let i=e.path+"/"+e.file,n=this.addTilesetModel(i,e);n.loadFinish((i=>{var r;let o=e.file,a=o.slice(0,o.lastIndexOf("."));null==(r=this.options.fileLoaded)||r.call(this,n,e.id||a,e),t(n)}))}))}addSceneType(e){return new Promise(((t,i)=>{let n=this.filesObj[e];if(n){let e=[];n.forEach((t=>{let i=t.file,n=i.slice(i.lastIndexOf(".")+1).toLowerCase();"glb"!==n&&"gltf"!==n&&"json"!==n||("json"===n?e.push(this.loadTilesModel(t)):e.push(this.loadGltfModel(t)))})),Promise.all(e).then(((...e)=>{t(e)})).catch((e=>{i(e)}))}}))}loadScene(e,t=!0){var i;if(this.currentScence!==e){this.currentScence=e;let n=this.sceneObj[e];if(null==(i=this.options.startSceneLoaded)||i.call(this),n){t&&this.initSceneCamera(),this.initModelPos();let e=n.type,i=[];Array.isArray(e)||(e=[e]),e.forEach((e=>{i.push(this.addSceneType(e))})),Promise.all(i).then(((...e)=>{var t,i;let n=e.flat(1/0);null==(t=this.modelControlsFun)||t.call(this,n),null==(i=this.options.sceneLoaded)||i.call(n)})).catch((e=>{var t;null==(t=this.options.sceneLoaded)||t.call(this,e)}))}}}destroy(){}testGlb(){this.addGltfModel(BASEURL+"/data/model/000001.glb",{loopAllAnimations:"REPEAT",scale:5e3,lon:116.405315,lat:39.908775}).addAnimation({index:1})}test3dtils(){let e=BASEURL+"/data/tiananmen/tileset.json";this.addTilesetModel(e,{height:0,offsetX:1.2,scale:.2092,offsetY:-32.5})}test3(){this.addGltfModel(BASEURL+"/data/model/shandian.glb",{id:"testModel",loopAllAnimations:"REVERSE",scale:20,lon:116.395483,lat:39.902591,hei:40}).flyTo(),this.videoShed3d;let e=gcj02towgs84(116.377545,39.907015),t=gcj02towgs84(116.411824,39.908218),i=Cartesian3.fromDegrees(e[0],e[1],5),n=Cartesian3.fromDegrees(t[0],t[1],5),r=0,o=this.view.entities.add({id:"car",name:"car",position:new CallbackProperty((function(){return r>5e3&&(r=0),r++,Cartesian3.lerp(i,n,r/5e3,new Cartesian3)}),!1),model:{uri:BASEURL+"/data/model/GroundVehicle.glb",scale:5,runAnimations:!0}});model3=o}test(){new TilesetLoader(this,BASEURL+"/data/tiananmen/tileset.json",{height:0,offsetX:1.2,scale:.2092,offsetY:-32.5}).readyFinish((e=>{this.view.scene.primitives.add(e)})),new TilesetLoader(this,BASEURL+"/data/3dtiles/tileset.json",{height:-80,scale:80,offsetY:-10,opacity:1}).readyFinish((e=>{this.view.scene.primitives.add(e),model1=e}));let e=document.getElementById("trailer"),t=new Plane(Cartesian3.UNIT_Z,0),i=Matrix3.fromRotationX(CesiumMath$1.toRadians(0)),n=Matrix4.fromRotationTranslation(i);Plane.transform(t,n,t);let r=Matrix3.fromRotationZ(CesiumMath$1.toRadians(0)),o=Matrix4.fromRotationTranslation(r);Plane.transform(t,o,t),this.view.entities.add({polygon:{hierarchy:new PolygonHierarchy(Cartesian3.fromDegreesArray([116.391304,39.902576,116.412024,39.90119,116.412058,39.893791,116.39127,39.88])),material:e,disableDepthTestDistance:Number.POSITIVE_INFINITY}});let a=gcj02towgs84(116.377545,39.907015),s=gcj02towgs84(116.411824,39.908218),c=Cartesian3.fromDegrees(a[0],a[1],5),l=Cartesian3.fromDegrees(s[0],s[1],5),d=0,u=this.view.entities.add({id:"car",name:"car",position:new CallbackProperty((function(){return d>5e3&&(d=0),d++,Cartesian3.lerp(c,l,d/5e3,new Cartesian3)}),!1),model:{uri:BASEURL+"/data/model/GroundVehicle.glb",scale:5,runAnimations:!0}});model3=u;let h=gcj02towgs84(116.395483,39.902591);const p=Cartesian3.fromDegrees(h[0],h[1],40),f=new HeadingPitchRoll(CesiumMath$1.toRadians(90),0,0),m=Transforms$1.headingPitchRollQuaternion(p,f);let g=this.view.entities.add({id:"testModel",name:"testModel",position:p,orientation:m,model:{uri:BASEURL+"/data/model/shandian.glb",scale:20,runAnimations:!0}});model4=g}}window.CESIUM_BASE_URL=BASEURL+"/cesiumStatic";let gyCesiumResultObj={};const gyModelInit=e=>{if((e=e||"")&&gyCesiumResultObj[e])return gyCesiumResultObj[e];const t=vueDemi.ref(null),i=vueDemi.ref(!1);let n={init:n=>{t.value=new CesiumModel(e,n),i.value=!0},destroy:()=>{var i;delete gyCesiumResultObj[e],null==(i=t.value)||i.destroy()},model:t,modelFinish:i};return gyCesiumResultObj[e]=n,n},gyCesium=e=>gyCesiumResultObj[e]?gyCesiumResultObj[e]:gyModelInit.call(void 0,e),__vue2_script$2=vueDemi.defineComponent({name:"GyCesium",props:{id:{type:String,default:"gyCesium"},lonlatType:{type:String,default:"WGS84"},config:{type:Object,default:()=>({})},extent:{type:Array,default:null},hideEarth:{type:Boolean,default:!1},isSplitView:{type:Boolean,default:!1},hasModelControls:{type:Boolean,default:!1}},emits:["afterInit","beforeInit","startSceneLoaded","sceneLoaded","fileLoaded"],setup(e,{emit:t}){let i=null;i=gyCesium(e.id);let n={lonlatType:e.lonlatType,config:e.config,extent:e.extent,hideEarth:e.hideEarth,isSplitView:e.isSplitView,beforeInit:function(){t("beforeInit",this)},afterInit:function(){t("afterInit",this)},startSceneLoaded:function(){t("startSceneLoaded",this)},sceneLoaded:function(){t("sceneLoaded",this)},fileLoaded:function(e,i,n){t("fileLoaded",e,i,n,this)}};return vueDemi.onMounted((()=>{i.init(n)})),vueDemi.onBeforeUnmount((()=>{i.destroy()})),{clickFun:()=>{i&&i.model&&i.model.value.cesiumConClick()}}}});var render$2=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"GyCesium",attrs:{id:e.id,tabindex:"0"},on:{click:function(t){return t.ctrlKey?e.clickFun.apply(null,arguments):null}}},[e.hasModelControls?i("ModelControls"):e._e(),i("div",{attrs:{id:"slider"}}),e._t("default")],2)},staticRenderFns$2=[];const GyCesium_vue_vue_type_style_index_0_lang="";function normalizeComponent(e,t,i,n,r,o,a,s){var c,l="function"==typeof e?e.options:e;if(t&&(l.render=t,l.staticRenderFns=i,l._compiled=!0),n&&(l.functional=!0),o&&(l._scopeId="data-v-"+o),a?(c=function(e){(e=e||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(e=__VUE_SSR_CONTEXT__),r&&r.call(this,e),e&&e._registeredComponents&&e._registeredComponents.add(a)},l._ssrRegister=c):r&&(c=s?function(){r.call(this,(l.functional?this.parent:this).$root.$options.shadowRoot)}:r),c)if(l.functional){l._injectStyles=c;var d=l.render;l.render=function(e,t){return c.call(t),d(e,t)}}else{var u=l.beforeCreate;l.beforeCreate=u?[].concat(u,c):[c]}return{exports:e,options:l}}const __cssModules$2={};var __component__$2=normalizeComponent(__vue2_script$2,render$2,staticRenderFns$2,!1,__vue2_injectStyles$2,null,null,null);function __vue2_injectStyles$2(e){for(let t in __cssModules$2)this[t]=__cssModules$2[t]}const GyCesium=function(){return __component__$2.exports}(),__vue2_script$1=vueDemi.defineComponent({name:"ModelControls",props:{modelId:{type:String,default:""}},setup(e){const{proxy:t}=vueDemi.getCurrentInstance();vueDemi.ref("");const i=e.modelId||t.$parent.id;let n=null;i&&(n=gyCesium(i));const r=vueDemi.computed((()=>null==n?void 0:n.modelFinish.value));vueDemi.watch(r,(e=>{n.model.value.modelControlsFun=e=>{o=e,d()}})),vueDemi.onMounted((()=>{d()}));let o=[];const a=vueDemi.ref([]),s=vueDemi.ref([]),c=vueDemi.ref({}),l=vueDemi.ref(0),d=()=>{if(l.value=0,o&&0!==o.length){if(0!==o.length){let e=["无"];o.forEach(((t,i)=>{let n=(null==t?void 0:t.getModelName())||`model-${i}`;e.push(n)})),a.value=e}}else u()},u=()=>{s.value=[],c.value=[],a.value=[],o=[]},h=()=>{let e=l.value-1,t=o[e];t&&t.getControlValue?c.value=t.getControlValue():c.value={},t&&t.getControlOptions?s.value=t.getControlOptions():s.value=[]};return{formData:c,modelChooseIndex:l,modelNameList:a,optionsList:s,setModelControl:h,changeDataFun:()=>{var e;let t=l.value-1,i=o[t];null==(e=null==i?void 0:i.updateStyle)||e.call(i,c.value)},changeModelList:()=>{var e;if(0!==l.value){let t=l.value-1,i=o[t];null==(e=null==i?void 0:i.flyTo)||e.call(i),h()}else s.value=[],c.value=[]}}}});var render$1=function(){var e=this,t=e.$createElement,i=e._self._c||t;return 0!==e.modelNameList.length?i("div",{staticClass:"ModelControl"},[i("el-select",{attrs:{placeholder:"Select",size:"small"},on:{change:e.changeModelList},model:{value:e.modelChooseIndex,callback:function(t){e.modelChooseIndex=t},expression:"modelChooseIndex"}},e._l(e.modelNameList,(function(e,t){return i("el-option",{key:t,attrs:{label:e,value:t}})})),1),e._l(e.optionsList,(function(t,n){return[i("div",{staticClass:"ModelControl-item"},["number"===t.type||"slider"===t.type?i("div",{staticClass:"ModelControl-item-con ModelControl-slider"},[i("div",{staticClass:"ModelControl-name"},[e._v(e._s(t.name))]),i("el-input-number",{attrs:{size:"small",min:void 0!==t.min?t.min:-1/0,max:void 0!==t.max?t.max:1/0,step:t.step||1,"controls-position":"right"},on:{change:e.changeDataFun},model:{value:e.formData[t.value],callback:function(i){e.$set(e.formData,t.value,i)},expression:"formData[item.value]"}})],1):"slider"===t.type?i("div",{staticClass:"ModelControl-item-con ModelControl-slider"},[i("div",{staticClass:"ModelControl-name"},[e._v(e._s(t.name))]),i("el-slider",{attrs:{size:"small",min:t.min||0,max:t.max||100,step:t.step||1},on:{change:e.changeDataFun},model:{value:e.formData[t.value],callback:function(i){e.$set(e.formData,t.value,i)},expression:"formData[item.value]"}})],1):"switch"===t.type?i("div",{staticClass:"ModelControl-item-con ModelControl-switch"},[i("div",{staticClass:"ModelControl-name"},[e._v(e._s(t.name))]),i("el-switch",{attrs:{size:"small"},on:{change:e.changeDataFun},model:{value:e.formData[t.value],callback:function(i){e.$set(e.formData,t.value,i)},expression:"formData[item.value]"}})],1):e._e()])]}))],2):e._e()},staticRenderFns$1=[];const ModelControls_vue_vue_type_style_index_0_scoped_true_lang="",__cssModules$1={};var __component__$1=normalizeComponent(__vue2_script$1,render$1,staticRenderFns$1,!1,__vue2_injectStyles$1,"b43f6898",null,null);function __vue2_injectStyles$1(e){for(let t in __cssModules$1)this[t]=__cssModules$1[t]}const ModelControls=function(){return __component__$1.exports}(),__vue2_script=vueDemi.defineComponent({name:"GyCesiumVideoShadow",props:{videoUrl:{type:Object,default:()=>({})},modelId:{type:String,default:""},lon:{type:Number,default:null},lat:{type:Number,default:null},height:{type:Number,default:0},rotateX:{type:Number,default:0},rotateY:{type:Number,default:0},far:{type:Number,default:1e4},fov:{type:Number,default:60},aspectRatio:{type:Number,default:60},alpha:{type:Number,default:1},debugFrustum:{type:Boolean,default:!1}},emits:[],setup(e,{emit:t}){const{proxy:i}=vueDemi.getCurrentInstance();vueDemi.ref("");const n=e.modelId||i.$parent.id;let r=null;n&&(r=gyCesium(n));const o=vueDemi.ref(null),a=vueDemi.computed((()=>null==r?void 0:r.modelFinish.value));vueDemi.watch(a,(e=>{s()})),vueDemi.onMounted((()=>{s()}));const s=()=>{if(r&&r.model.value&&a.value&&o.value){let t={lon:e.lon,lat:e.lat,height:e.height,rotateX:e.rotateX,rotateY:e.rotateY,far:e.far,fov:e.fov,aspectRatio:e.aspectRatio,alpha:e.alpha,debugFrustum:e.debugFrustum};r.model.value.addVideoShadow(o.value,t)}};return{trailer:o}}});var render=function(){var e=this,t=e.$createElement;return(e._self._c||t)("video",{ref:"trailer",staticClass:"video-main",attrs:{src:e.videoUrl,muted:"",autoplay:"",loop:"",crossorigin:""},domProps:{muted:!0}})},staticRenderFns=[];const GyCesiumVideoShadow_vue_vue_type_style_index_0_lang="",__cssModules={};var __component__=normalizeComponent(__vue2_script,render,staticRenderFns,!1,__vue2_injectStyles,null,null,null);function __vue2_injectStyles(e){for(let t in __cssModules)this[t]=__cssModules[t]}const GyCesiumVideoShadow=function(){return __component__.exports}(),components=Object.freeze(Object.defineProperty({__proto__:null,GyCesium:GyCesium,ModelControls:ModelControls,VideoShadow:GyCesiumVideoShadow},Symbol.toStringTag,{value:"Module"}));let install=e=>{if(!install.installed){Object.keys(components).map((e=>components[e])).forEach((t=>{(t.hasOwnProperty("name")||t.hasOwnProperty("__name"))&&t.hasOwnProperty("setup")&&e.component(t.name||t.__name,t)}))}};const index={install:install};exports.default=index,exports.gyCesium=gyCesium,exports.install=install;
|
|
55
|
+
*/var OBSERVABLES_PROPERTY="__knockoutObservables",SUBSCRIBABLE_PROPERTY="__knockoutSubscribable";function track(e,t){if(!e)throw new Error("When calling ko.track, you must pass an object as the first parameter.");var i=this,n=getAllObservablesForObject(e,!0);return(t=t||Object.getOwnPropertyNames(e)).forEach((function(t){if(t!==OBSERVABLES_PROPERTY&&t!==SUBSCRIBABLE_PROPERTY&&!(t in n)){var r=e[t],o=r instanceof Array,a=i.isObservable(r)?r:o?i.observableArray(r):i.observable(r);Object.defineProperty(e,t,{configurable:!0,enumerable:!0,get:a,set:i.isWriteableObservable(a)?a:void 0}),n[t]=a,o&¬ifyWhenPresentOrFutureArrayValuesMutate(i,a)}})),e}function getAllObservablesForObject(e,t){var i=e[OBSERVABLES_PROPERTY];return!i&&t&&(i={},Object.defineProperty(e,OBSERVABLES_PROPERTY,{value:i})),i}function defineComputedProperty(e,t,i){var n={owner:e,deferEvaluation:!0};if("function"==typeof i)n.read=i;else{if("value"in i)throw new Error('For ko.defineProperty, you must not specify a "value" for the property. You must provide a "get" function.');if("function"!=typeof i.get)throw new Error('For ko.defineProperty, the third parameter must be either an evaluator function, or an options object containing a function called "get".');n.read=i.get,n.write=i.set}return e[t]=this.computed(n),track.call(this,e,[t]),e}function notifyWhenPresentOrFutureArrayValuesMutate(e,t){var i=null;e.computed((function(){i&&(i.dispose(),i=null);var n=t();n instanceof Array&&(i=startWatchingArrayInstance(e,t,n))}))}function startWatchingArrayInstance(e,t,i){return getSubscribableForArray(e,i).subscribe(t)}function getSubscribableForArray(e,t){var i=t[SUBSCRIBABLE_PROPERTY];if(!i){i=new e.subscribable,Object.defineProperty(t,SUBSCRIBABLE_PROPERTY,{value:i});var n={};wrapStandardArrayMutators(t,i,n),addKnockoutArrayMutators(e,t,i,n)}return i}function wrapStandardArrayMutators(e,t,i){["pop","push","reverse","shift","sort","splice","unshift"].forEach((function(n){var r=e[n];e[n]=function(){var e=r.apply(this,arguments);return!0!==i.pause&&t.notifySubscribers(this),e}}))}function addKnockoutArrayMutators(e,t,i,n){["remove","removeAll","destroy","destroyAll","replace"].forEach((function(r){Object.defineProperty(t,r,{enumerable:!1,value:function(){var o;n.pause=!0;try{o=e.observableArray.fn[r].apply(e.observableArray(t),arguments)}finally{n.pause=!1}return i.notifySubscribers(t),o}})}))}function getObservable(e,t){if(!e)return null;var i=getAllObservablesForObject(e,!1);return i&&i[t]||null}function valueHasMutated(e,t){var i=getObservable(e,t);i&&i.valueHasMutated()}function attachToKo(e){e.track=track,e.getObservable=getObservable,e.valueHasMutated=valueHasMutated,e.defineProperty=defineComputedProperty}const knockout_es5={attachToKo:attachToKo},svgNS$1="http://www.w3.org/2000/svg",svgClassName="cesium-svgPath-svg",SvgPathBindingHandler={register:function(e){e.bindingHandlers.cesiumSvgPath={init:function(t,i){const n=document.createElementNS(svgNS$1,"svg:svg");n.setAttribute("class",svgClassName);const r=document.createElementNS(svgNS$1,"path");return n.appendChild(r),e.virtualElements.setDomNodeChildren(t,[n]),e.computed({read:function(){const t=e.unwrap(i());r.setAttribute("d",e.unwrap(t.path));const o=e.unwrap(t.width),a=e.unwrap(t.height);n.setAttribute("width",o),n.setAttribute("height",a),n.setAttribute("viewBox",`0 0 ${o} ${a}`),t.css&&n.setAttribute("class",`${svgClassName} ${e.unwrap(t.css)}`)},disposeWhenNodeIsRemoved:t}),{controlsDescendantBindings:!0}}},e.virtualElements.allowedBindings.cesiumSvgPath=!0}},SvgPathBindingHandler$1=SvgPathBindingHandler;function ClockViewModel(e){defined(e)||(e=new Clock),this._clock=e,this._eventHelper=new EventHelper,this._eventHelper.add(e.onTick,this.synchronize,this),this.systemTime=knockout$1.observable(JulianDate.now()),this.systemTime.equalityComparer=JulianDate.equals,this.startTime=knockout$1.observable(e.startTime),this.startTime.equalityComparer=JulianDate.equals,this.startTime.subscribe((function(t){e.startTime=t,this.synchronize()}),this),this.stopTime=knockout$1.observable(e.stopTime),this.stopTime.equalityComparer=JulianDate.equals,this.stopTime.subscribe((function(t){e.stopTime=t,this.synchronize()}),this),this.currentTime=knockout$1.observable(e.currentTime),this.currentTime.equalityComparer=JulianDate.equals,this.currentTime.subscribe((function(t){e.currentTime=t,this.synchronize()}),this),this.multiplier=knockout$1.observable(e.multiplier),this.multiplier.subscribe((function(t){e.multiplier=t,this.synchronize()}),this),this.clockStep=knockout$1.observable(e.clockStep),this.clockStep.subscribe((function(t){e.clockStep=t,this.synchronize()}),this),this.clockRange=knockout$1.observable(e.clockRange),this.clockRange.subscribe((function(t){e.clockRange=t,this.synchronize()}),this),this.canAnimate=knockout$1.observable(e.canAnimate),this.canAnimate.subscribe((function(t){e.canAnimate=t,this.synchronize()}),this),this.shouldAnimate=knockout$1.observable(e.shouldAnimate),this.shouldAnimate.subscribe((function(t){e.shouldAnimate=t,this.synchronize()}),this),knockout$1.track(this,["systemTime","startTime","stopTime","currentTime","multiplier","clockStep","clockRange","canAnimate","shouldAnimate"])}function Command(){this.canExecute=void 0,this.beforeExecute=void 0,this.afterExecute=void 0,DeveloperError.throwInstantiationError()}knockout_es5.attachToKo(knockout$1),SvgPathBindingHandler$1.register(knockout$1),Object.defineProperties(ClockViewModel.prototype,{clock:{get:function(){return this._clock}}}),ClockViewModel.prototype.synchronize=function(){const e=this._clock;this.systemTime=JulianDate.now(),this.startTime=e.startTime,this.stopTime=e.stopTime,this.currentTime=e.currentTime,this.multiplier=e.multiplier,this.clockStep=e.clockStep,this.clockRange=e.clockRange,this.canAnimate=e.canAnimate,this.shouldAnimate=e.shouldAnimate},ClockViewModel.prototype.isDestroyed=function(){return!1},ClockViewModel.prototype.destroy=function(){this._eventHelper.removeAll(),destroyObject(this)};const InspectorShared={createCheckbox:function(e,t,i){Check$1.typeOf.string("labelText",e),Check$1.typeOf.string("checkedBinding",t);const n=document.createElement("div"),r=document.createElement("label"),o=document.createElement("input");o.type="checkbox";let a=`checked: ${t}`;return defined(i)&&(a+=`, enable: ${i}`),o.setAttribute("data-bind",a),r.appendChild(o),r.appendChild(document.createTextNode(e)),n.appendChild(r),n},createSection:function(e,t,i,n){Check$1.defined("panel",e),Check$1.typeOf.string("headerText",t),Check$1.typeOf.string("sectionVisibleBinding",i),Check$1.typeOf.string("toggleSectionVisibilityBinding",n);const r=document.createElement("div");r.className="cesium-cesiumInspector-section",r.setAttribute("data-bind",`css: { "cesium-cesiumInspector-section-collapsed": !${i} }`),e.appendChild(r);const o=document.createElement("h3");o.className="cesium-cesiumInspector-sectionHeader",o.appendChild(document.createTextNode(t)),o.setAttribute("data-bind",`click: ${n}`),r.appendChild(o);const a=document.createElement("div");return a.className="cesium-cesiumInspector-sectionContent",r.appendChild(a),a},createRangeInput:function(e,t,i,n,r,o){Check$1.typeOf.string("rangeText",e),Check$1.typeOf.string("sliderValueBinding",t),Check$1.typeOf.number("min",i),Check$1.typeOf.number("max",n),o=defaultValue(o,t);const a=document.createElement("input");a.setAttribute("data-bind",`value: ${o}`),a.type="number";const s=document.createElement("input");s.type="range",s.min=i,s.max=n,s.step=defaultValue(r,"any"),s.setAttribute("data-bind",`valueUpdate: "input", value: ${t}`);const c=document.createElement("div");c.appendChild(s);const l=document.createElement("div");return l.className="cesium-cesiumInspector-slider",l.appendChild(document.createTextNode(e)),l.appendChild(a),l.appendChild(c),l},createButton:function(e,t,i){Check$1.typeOf.string("buttonText",e),Check$1.typeOf.string("clickedBinding",t);const n=document.createElement("button");n.type="button",n.textContent=e,n.className="cesium-cesiumInspector-pickButton";let r=`click: ${t}`;return defined(i)&&(r+=`, css: {"cesium-cesiumInspector-pickButtonHighlight" : ${i}}`),n.setAttribute("data-bind",r),n}},InspectorShared$1=InspectorShared;function ToggleButtonViewModel(e,t){if(!defined(e))throw new DeveloperError("command is required.");this._command=e,t=defaultValue(t,defaultValue.EMPTY_OBJECT),this.toggled=defaultValue(t.toggled,!1),this.tooltip=defaultValue(t.tooltip,""),knockout$1.track(this,["toggled","tooltip"])}function createCommand(e,t){if(!defined(e))throw new DeveloperError("func is required.");t=defaultValue(t,!0);const i=new Event,n=new Event;function r(){if(!r.canExecute)throw new DeveloperError("Cannot execute command, canExecute is false.");const t={args:arguments,cancel:!1};let o;return i.raiseEvent(t),t.cancel||(o=e.apply(null,arguments),n.raiseEvent(o)),o}return r.canExecute=t,knockout$1.track(r,["canExecute"]),Object.defineProperties(r,{beforeExecute:{value:i},afterExecute:{value:n}}),r}function subscribeAndEvaluate(e,t,i,n,r){return i.call(n,e[t]),knockout$1.getObservable(e,t).subscribe(i,n,r)}Object.defineProperties(ToggleButtonViewModel.prototype,{command:{get:function(){return this._command}}});const svgNS="http://www.w3.org/2000/svg",xlinkNS="http://www.w3.org/1999/xlink";let widgetForDrag;const gradientEnabledColor0=Color.fromCssColorString("rgba(247,250,255,0.384)"),gradientEnabledColor1=Color.fromCssColorString("rgba(143,191,255,0.216)"),gradientEnabledColor2=Color.fromCssColorString("rgba(153,197,255,0.098)"),gradientEnabledColor3=Color.fromCssColorString("rgba(255,255,255,0.086)"),gradientDisabledColor0=Color.fromCssColorString("rgba(255,255,255,0.267)"),gradientDisabledColor1=Color.fromCssColorString("rgba(255,255,255,0)"),gradientKnobColor=Color.fromCssColorString("rgba(66,67,68,0.3)"),gradientPointerColor=Color.fromCssColorString("rgba(0,0,0,0.5)");function getElementColor(e){return Color.fromCssColorString(window.getComputedStyle(e).getPropertyValue("color"))}const svgIconsById={animation_pathReset:{tagName:"path",transform:"translate(16,16) scale(0.85) translate(-16,-16)",d:"M24.316,5.318,9.833,13.682,9.833,5.5,5.5,5.5,5.5,25.5,9.833,25.5,9.833,17.318,24.316,25.682z"},animation_pathPause:{tagName:"path",transform:"translate(16,16) scale(0.85) translate(-16,-16)",d:"M13,5.5,7.5,5.5,7.5,25.5,13,25.5zM24.5,5.5,19,5.5,19,25.5,24.5,25.5z"},animation_pathPlay:{tagName:"path",transform:"translate(16,16) scale(0.85) translate(-16,-16)",d:"M6.684,25.682L24.316,15.5L6.684,5.318V25.682z"},animation_pathPlayReverse:{tagName:"path",transform:"translate(16,16) scale(-0.85,0.85) translate(-16,-16)",d:"M6.684,25.682L24.316,15.5L6.684,5.318V25.682z"},animation_pathLoop:{tagName:"path",transform:"translate(16,16) scale(0.85) translate(-16,-16)",d:"M24.249,15.499c-0.009,4.832-3.918,8.741-8.75,8.75c-2.515,0-4.768-1.064-6.365-2.763l2.068-1.442l-7.901-3.703l0.744,8.694l2.193-1.529c2.244,2.594,5.562,4.242,9.26,4.242c6.767,0,12.249-5.482,12.249-12.249H24.249zM15.499,6.75c2.516,0,4.769,1.065,6.367,2.764l-2.068,1.443l7.901,3.701l-0.746-8.693l-2.192,1.529c-2.245-2.594-5.562-4.245-9.262-4.245C8.734,3.25,3.25,8.734,3.249,15.499H6.75C6.758,10.668,10.668,6.758,15.499,6.75z"},animation_pathClock:{tagName:"path",transform:"translate(16,16) scale(0.85) translate(-16,-15.5)",d:"M15.5,2.374C8.251,2.375,2.376,8.251,2.374,15.5C2.376,22.748,8.251,28.623,15.5,28.627c7.249-0.004,13.124-5.879,13.125-13.127C28.624,8.251,22.749,2.375,15.5,2.374zM15.5,25.623C9.909,25.615,5.385,21.09,5.375,15.5C5.385,9.909,9.909,5.384,15.5,5.374c5.59,0.01,10.115,4.535,10.124,10.125C25.615,21.09,21.091,25.615,15.5,25.623zM8.625,15.5c-0.001-0.552-0.448-0.999-1.001-1c-0.553,0-1,0.448-1,1c0,0.553,0.449,1,1,1C8.176,16.5,8.624,16.053,8.625,15.5zM8.179,18.572c-0.478,0.277-0.642,0.889-0.365,1.367c0.275,0.479,0.889,0.641,1.365,0.365c0.479-0.275,0.643-0.887,0.367-1.367C9.27,18.461,8.658,18.297,8.179,18.572zM9.18,10.696c-0.479-0.276-1.09-0.112-1.366,0.366s-0.111,1.09,0.365,1.366c0.479,0.276,1.09,0.113,1.367-0.366C9.821,11.584,9.657,10.973,9.18,10.696zM22.822,12.428c0.478-0.275,0.643-0.888,0.366-1.366c-0.275-0.478-0.89-0.642-1.366-0.366c-0.479,0.278-0.642,0.89-0.366,1.367C21.732,12.54,22.344,12.705,22.822,12.428zM12.062,21.455c-0.478-0.275-1.089-0.111-1.366,0.367c-0.275,0.479-0.111,1.09,0.366,1.365c0.478,0.277,1.091,0.111,1.365-0.365C12.704,22.344,12.54,21.732,12.062,21.455zM12.062,9.545c0.479-0.276,0.642-0.888,0.366-1.366c-0.276-0.478-0.888-0.642-1.366-0.366s-0.642,0.888-0.366,1.366C10.973,9.658,11.584,9.822,12.062,9.545zM22.823,18.572c-0.48-0.275-1.092-0.111-1.367,0.365c-0.275,0.479-0.112,1.092,0.367,1.367c0.477,0.275,1.089,0.113,1.365-0.365C23.464,19.461,23.3,18.848,22.823,18.572zM19.938,7.813c-0.477-0.276-1.091-0.111-1.365,0.366c-0.275,0.48-0.111,1.091,0.366,1.367s1.089,0.112,1.366-0.366C20.581,8.702,20.418,8.089,19.938,7.813zM23.378,14.5c-0.554,0.002-1.001,0.45-1.001,1c0.001,0.552,0.448,1,1.001,1c0.551,0,1-0.447,1-1C24.378,14.949,23.929,14.5,23.378,14.5zM15.501,6.624c-0.552,0-1,0.448-1,1l-0.466,7.343l-3.004,1.96c-0.478,0.277-0.642,0.889-0.365,1.365c0.275,0.479,0.889,0.643,1.365,0.367l3.305-1.676C15.39,16.99,15.444,17,15.501,17c0.828,0,1.5-0.671,1.5-1.5l-0.5-7.876C16.501,7.072,16.053,6.624,15.501,6.624zM15.501,22.377c-0.552,0-1,0.447-1,1s0.448,1,1,1s1-0.447,1-1S16.053,22.377,15.501,22.377zM18.939,21.455c-0.479,0.277-0.643,0.889-0.366,1.367c0.275,0.477,0.888,0.643,1.366,0.365c0.478-0.275,0.642-0.889,0.366-1.365C20.028,21.344,19.417,21.18,18.939,21.455z"},animation_pathWingButton:{tagName:"path",d:"m 4.5,0.5 c -2.216,0 -4,1.784 -4,4 l 0,24 c 0,2.216 1.784,4 4,4 l 13.71875,0 C 22.478584,27.272785 27.273681,22.511272 32.5,18.25 l 0,-13.75 c 0,-2.216 -1.784,-4 -4,-4 l -24,0 z"},animation_pathPointer:{tagName:"path",d:"M-15,-65,-15,-55,15,-55,15,-65,0,-95z"},animation_pathSwooshFX:{tagName:"path",d:"m 85,0 c 0,16.617 -4.813944,35.356 -13.131081,48.4508 h 6.099803 c 8.317138,-13.0948 13.13322,-28.5955 13.13322,-45.2124 0,-46.94483 -38.402714,-85.00262 -85.7743869,-85.00262 -1.0218522,0 -2.0373001,0.0241 -3.0506131,0.0589 45.958443,1.59437 82.723058,35.77285 82.723058,81.70532 z"}};function svgFromObject(e){const t=document.createElementNS(svgNS,e.tagName);for(const i in e)if(e.hasOwnProperty(i)&&"tagName"!==i)if("children"===i){const i=e.children.length;for(let n=0;n<i;++n)t.appendChild(svgFromObject(e.children[n]))}else 0===i.indexOf("xlink:")?t.setAttributeNS(xlinkNS,i.substring(6),e[i]):"textContent"===i?t.textContent=e[i]:t.setAttribute(i,e[i]);return t}function svgText(e,t,i){const n=document.createElementNS(svgNS,"text");n.setAttribute("x",e),n.setAttribute("y",t),n.setAttribute("class","cesium-animation-svgText");const r=document.createElementNS(svgNS,"tspan");return r.textContent=i,n.appendChild(r),n}function setShuttleRingPointer(e,t,i){e.setAttribute("transform",`translate(100,100) rotate(${i})`),t.setAttribute("transform",`rotate(${i})`)}const makeColorStringScratch=new Color;function makeColorString(e,t){const i=t.alpha,n=1-i;return makeColorStringScratch.red=e.red*n+t.red*i,makeColorStringScratch.green=e.green*n+t.green*i,makeColorStringScratch.blue=e.blue*n+t.blue*i,makeColorStringScratch.toCssColorString()}function rectButton(e,t,i){const n=svgIconsById[i];return svgFromObject({tagName:"g",class:"cesium-animation-rectButton",transform:`translate(${e},${t})`,children:[{tagName:"rect",class:"cesium-animation-buttonGlow",width:32,height:32,rx:2,ry:2},{tagName:"rect",class:"cesium-animation-buttonMain",width:32,height:32,rx:4,ry:4},{class:"cesium-animation-buttonPath",id:i,tagName:n.tagName,transform:n.transform,d:n.d},{tagName:"title",textContent:""}]})}function wingButton(e,t,i){const n=svgIconsById[i],r=svgIconsById.animation_pathWingButton;return svgFromObject({tagName:"g",class:"cesium-animation-rectButton",transform:`translate(${e},${t})`,children:[{class:"cesium-animation-buttonGlow",id:"animation_pathWingButton",tagName:r.tagName,d:r.d},{class:"cesium-animation-buttonMain",id:"animation_pathWingButton",tagName:r.tagName,d:r.d},{class:"cesium-animation-buttonPath",id:i,tagName:n.tagName,transform:n.transform,d:n.d},{tagName:"title",textContent:""}]})}function setShuttleRingFromMouseOrTouch(e,t){const i=e._viewModel,n=i.shuttleRingDragging;if(!n||widgetForDrag===e)if("mousedown"===t.type||n&&"mousemove"===t.type||"touchstart"===t.type&&1===t.touches.length||n&&"touchmove"===t.type&&1===t.touches.length){const r=e._centerX,o=e._centerY,a=e._svgNode.getBoundingClientRect();let s,c;if("touchstart"===t.type||"touchmove"===t.type?(s=t.touches[0].clientX,c=t.touches[0].clientY):(s=t.clientX,c=t.clientY),!n&&(s>a.right||s<a.left||c<a.top||c>a.bottom))return;const l=e._shuttleRingPointer.getBoundingClientRect(),d=s-r-a.left,u=c-o-a.top;let h=180*Math.atan2(u,d)/Math.PI+90;h>180&&(h-=360);const p=i.shuttleRingAngle;n||s<l.right&&s>l.left&&c>l.top&&c<l.bottom?(widgetForDrag=e,i.shuttleRingDragging=!0,i.shuttleRingAngle=h):h<p?i.slower():h>p&&i.faster(),t.preventDefault()}else e===widgetForDrag&&(widgetForDrag=void 0),i.shuttleRingDragging=!1}function SvgButton(e,t){this._viewModel=t,this.svgElement=e,this._enabled=void 0,this._toggled=void 0;const i=this;this._clickFunction=function(){const e=i._viewModel.command;e.canExecute&&e()},e.addEventListener("click",this._clickFunction,!0),this._subscriptions=[subscribeAndEvaluate(t,"toggled",this.setToggled,this),subscribeAndEvaluate(t,"tooltip",this.setTooltip,this),subscribeAndEvaluate(t.command,"canExecute",this.setEnabled,this)]}function Animation(e,t){if(!defined(e))throw new DeveloperError("container is required.");if(!defined(t))throw new DeveloperError("viewModel is required.");e=getElement(e),this._viewModel=t,this._container=e,this._centerX=0,this._centerY=0,this._defsElement=void 0,this._svgNode=void 0,this._topG=void 0,this._lastHeight=void 0,this._lastWidth=void 0;const i=e.ownerDocument,n=document.createElement("style");n.textContent=".cesium-animation-rectButton .cesium-animation-buttonGlow { filter: url(#animation_blurred); }.cesium-animation-rectButton .cesium-animation-buttonMain { fill: url(#animation_buttonNormal); }.cesium-animation-buttonToggled .cesium-animation-buttonMain { fill: url(#animation_buttonToggled); }.cesium-animation-rectButton:hover .cesium-animation-buttonMain { fill: url(#animation_buttonHovered); }.cesium-animation-buttonDisabled .cesium-animation-buttonMain { fill: url(#animation_buttonDisabled); }.cesium-animation-shuttleRingG .cesium-animation-shuttleRingSwoosh { fill: url(#animation_shuttleRingSwooshGradient); }.cesium-animation-shuttleRingG:hover .cesium-animation-shuttleRingSwoosh { fill: url(#animation_shuttleRingSwooshHovered); }.cesium-animation-shuttleRingPointer { fill: url(#animation_shuttleRingPointerGradient); }.cesium-animation-shuttleRingPausePointer { fill: url(#animation_shuttleRingPointerPaused); }.cesium-animation-knobOuter { fill: url(#animation_knobOuter); }.cesium-animation-knobInner { fill: url(#animation_knobInner); }",i.head.insertBefore(n,i.head.childNodes[0]);const r=document.createElement("div");r.className="cesium-animation-theme",r.innerHTML='<div class="cesium-animation-themeNormal"></div><div class="cesium-animation-themeHover"></div><div class="cesium-animation-themeSelect"></div><div class="cesium-animation-themeDisabled"></div><div class="cesium-animation-themeKnob"></div><div class="cesium-animation-themePointer"></div><div class="cesium-animation-themeSwoosh"></div><div class="cesium-animation-themeSwooshHover"></div>',this._theme=r,this._themeNormal=r.childNodes[0],this._themeHover=r.childNodes[1],this._themeSelect=r.childNodes[2],this._themeDisabled=r.childNodes[3],this._themeKnob=r.childNodes[4],this._themePointer=r.childNodes[5],this._themeSwoosh=r.childNodes[6],this._themeSwooshHover=r.childNodes[7];const o=document.createElementNS(svgNS,"svg:svg");this._svgNode=o,o.setAttributeNS("http://www.w3.org/2000/xmlns/","xmlns:xlink",xlinkNS);const a=document.createElementNS(svgNS,"g");this._topG=a,this._realtimeSVG=new SvgButton(wingButton(3,4,"animation_pathClock"),t.playRealtimeViewModel),this._playReverseSVG=new SvgButton(rectButton(44,99,"animation_pathPlayReverse"),t.playReverseViewModel),this._playForwardSVG=new SvgButton(rectButton(124,99,"animation_pathPlay"),t.playForwardViewModel),this._pauseSVG=new SvgButton(rectButton(84,99,"animation_pathPause"),t.pauseViewModel);const s=document.createElementNS(svgNS,"g");s.appendChild(this._realtimeSVG.svgElement),s.appendChild(this._playReverseSVG.svgElement),s.appendChild(this._playForwardSVG.svgElement),s.appendChild(this._pauseSVG.svgElement);const c=svgFromObject({tagName:"circle",class:"cesium-animation-shuttleRingBack",cx:100,cy:100,r:99});this._shuttleRingBackPanel=c;const l=svgIconsById.animation_pathSwooshFX,d=svgIconsById.animation_pathPointer,u=svgFromObject({tagName:"g",class:"cesium-animation-shuttleRingSwoosh",children:[{tagName:l.tagName,transform:"translate(100,97) scale(-1,1)",id:"animation_pathSwooshFX",d:l.d},{tagName:l.tagName,transform:"translate(100,97)",id:"animation_pathSwooshFX",d:l.d},{tagName:"line",x1:100,y1:8,x2:100,y2:22}]});this._shuttleRingSwooshG=u,this._shuttleRingPointer=svgFromObject({class:"cesium-animation-shuttleRingPointer",id:"animation_pathPointer",tagName:d.tagName,d:d.d});const h=svgFromObject({tagName:"g",transform:"translate(100,100)"});this._knobOuter=svgFromObject({tagName:"circle",class:"cesium-animation-knobOuter",cx:0,cy:0,r:71});const p=svgFromObject({tagName:"circle",class:"cesium-animation-knobInner",cx:0,cy:0,r:61});this._knobDate=svgText(0,-24,""),this._knobTime=svgText(0,-7,""),this._knobStatus=svgText(0,-41,"");const f=svgFromObject({tagName:"circle",class:"cesium-animation-blank",cx:0,cy:0,r:61}),m=document.createElementNS(svgNS,"g");m.setAttribute("class","cesium-animation-shuttleRingG"),e.appendChild(r),a.appendChild(m),a.appendChild(h),a.appendChild(s),m.appendChild(c),m.appendChild(u),m.appendChild(this._shuttleRingPointer),h.appendChild(this._knobOuter),h.appendChild(p),h.appendChild(this._knobDate),h.appendChild(this._knobTime),h.appendChild(this._knobStatus),h.appendChild(f),o.appendChild(a),e.appendChild(o);const g=this;function _(e){setShuttleRingFromMouseOrTouch(g,e)}this._mouseCallback=_,c.addEventListener("mousedown",_,!0),c.addEventListener("touchstart",_,!0),u.addEventListener("mousedown",_,!0),u.addEventListener("touchstart",_,!0),i.addEventListener("mousemove",_,!0),i.addEventListener("touchmove",_,!0),i.addEventListener("mouseup",_,!0),i.addEventListener("touchend",_,!0),i.addEventListener("touchcancel",_,!0),this._shuttleRingPointer.addEventListener("mousedown",_,!0),this._shuttleRingPointer.addEventListener("touchstart",_,!0),this._knobOuter.addEventListener("mousedown",_,!0),this._knobOuter.addEventListener("touchstart",_,!0);const y=this._knobTime.childNodes[0],C=this._knobDate.childNodes[0],S=this._knobStatus.childNodes[0];let A;this._subscriptions=[subscribeAndEvaluate(t.pauseViewModel,"toggled",(function(e){A!==e&&(A=e,A?g._shuttleRingPointer.setAttribute("class","cesium-animation-shuttleRingPausePointer"):g._shuttleRingPointer.setAttribute("class","cesium-animation-shuttleRingPointer"))})),subscribeAndEvaluate(t,"shuttleRingAngle",(function(e){setShuttleRingPointer(g._shuttleRingPointer,g._knobOuter,e)})),subscribeAndEvaluate(t,"dateLabel",(function(e){C.textContent!==e&&(C.textContent=e)})),subscribeAndEvaluate(t,"timeLabel",(function(e){y.textContent!==e&&(y.textContent=e)})),subscribeAndEvaluate(t,"multiplierLabel",(function(e){S.textContent!==e&&(S.textContent=e)}))],this.applyThemeChanges(),this.resize()}SvgButton.prototype.destroy=function(){this.svgElement.removeEventListener("click",this._clickFunction,!0);const e=this._subscriptions;for(let t=0,i=e.length;t<i;t++)e[t].dispose();destroyObject(this)},SvgButton.prototype.isDestroyed=function(){return!1},SvgButton.prototype.setEnabled=function(e){if(this._enabled!==e){if(this._enabled=e,!e)return void this.svgElement.setAttribute("class","cesium-animation-buttonDisabled");if(this._toggled)return void this.svgElement.setAttribute("class","cesium-animation-rectButton cesium-animation-buttonToggled");this.svgElement.setAttribute("class","cesium-animation-rectButton")}},SvgButton.prototype.setToggled=function(e){this._toggled!==e&&(this._toggled=e,this._enabled&&(e?this.svgElement.setAttribute("class","cesium-animation-rectButton cesium-animation-buttonToggled"):this.svgElement.setAttribute("class","cesium-animation-rectButton")))},SvgButton.prototype.setTooltip=function(e){this.svgElement.getElementsByTagName("title")[0].textContent=e},Object.defineProperties(Animation.prototype,{container:{get:function(){return this._container}},viewModel:{get:function(){return this._viewModel}}}),Animation.prototype.isDestroyed=function(){return!1},Animation.prototype.destroy=function(){defined(this._observer)&&(this._observer.disconnect(),this._observer=void 0);const e=this._container.ownerDocument,t=this._mouseCallback;this._shuttleRingBackPanel.removeEventListener("mousedown",t,!0),this._shuttleRingBackPanel.removeEventListener("touchstart",t,!0),this._shuttleRingSwooshG.removeEventListener("mousedown",t,!0),this._shuttleRingSwooshG.removeEventListener("touchstart",t,!0),e.removeEventListener("mousemove",t,!0),e.removeEventListener("touchmove",t,!0),e.removeEventListener("mouseup",t,!0),e.removeEventListener("touchend",t,!0),e.removeEventListener("touchcancel",t,!0),this._shuttleRingPointer.removeEventListener("mousedown",t,!0),this._shuttleRingPointer.removeEventListener("touchstart",t,!0),this._knobOuter.removeEventListener("mousedown",t,!0),this._knobOuter.removeEventListener("touchstart",t,!0),this._container.removeChild(this._svgNode),this._container.removeChild(this._theme),this._realtimeSVG.destroy(),this._playReverseSVG.destroy(),this._playForwardSVG.destroy(),this._pauseSVG.destroy();const i=this._subscriptions;for(let n=0,r=i.length;n<r;n++)i[n].dispose();return destroyObject(this)},Animation.prototype.resize=function(){const e=this._container.clientWidth,t=this._container.clientHeight;if(e===this._lastWidth&&t===this._lastHeight)return;const i=this._svgNode,n=200,r=132;let o=e,a=t;0===e&&0===t?(o=n,a=r):0===e?(a=t,o=n*(t/r)):0===t&&(o=e,a=r*(e/n));const s=o/n,c=a/r;i.style.cssText=`width: ${o}px; height: ${a}px; position: absolute; bottom: 0; left: 0; overflow: hidden;`,i.setAttribute("width",o),i.setAttribute("height",a),i.setAttribute("viewBox",`0 0 ${o} ${a}`),this._topG.setAttribute("transform",`scale(${s},${c})`),this._centerX=Math.max(1,100*s),this._centerY=Math.max(1,100*c),this._lastHeight=e,this._lastWidth=t},Animation.prototype.applyThemeChanges=function(){const e=this._container.ownerDocument;if(!e.body.contains(this._container)){if(defined(this._observer))return;const t=this;return t._observer=new MutationObserver((function(){e.body.contains(t._container)&&(t._observer.disconnect(),t._observer=void 0,t.applyThemeChanges())})),void t._observer.observe(e,{childList:!0,subtree:!0})}const t=getElementColor(this._themeNormal),i=getElementColor(this._themeHover),n=getElementColor(this._themeSelect),r=getElementColor(this._themeDisabled),o=getElementColor(this._themeKnob),a=getElementColor(this._themePointer),s=getElementColor(this._themeSwoosh),c=getElementColor(this._themeSwooshHover),l=svgFromObject({tagName:"defs",children:[{id:"animation_buttonNormal",tagName:"linearGradient",x1:"50%",y1:"0%",x2:"50%",y2:"100%",children:[{tagName:"stop",offset:"0%","stop-color":makeColorString(t,gradientEnabledColor0)},{tagName:"stop",offset:"12%","stop-color":makeColorString(t,gradientEnabledColor1)},{tagName:"stop",offset:"46%","stop-color":makeColorString(t,gradientEnabledColor2)},{tagName:"stop",offset:"81%","stop-color":makeColorString(t,gradientEnabledColor3)}]},{id:"animation_buttonHovered",tagName:"linearGradient",x1:"50%",y1:"0%",x2:"50%",y2:"100%",children:[{tagName:"stop",offset:"0%","stop-color":makeColorString(i,gradientEnabledColor0)},{tagName:"stop",offset:"12%","stop-color":makeColorString(i,gradientEnabledColor1)},{tagName:"stop",offset:"46%","stop-color":makeColorString(i,gradientEnabledColor2)},{tagName:"stop",offset:"81%","stop-color":makeColorString(i,gradientEnabledColor3)}]},{id:"animation_buttonToggled",tagName:"linearGradient",x1:"50%",y1:"0%",x2:"50%",y2:"100%",children:[{tagName:"stop",offset:"0%","stop-color":makeColorString(n,gradientEnabledColor0)},{tagName:"stop",offset:"12%","stop-color":makeColorString(n,gradientEnabledColor1)},{tagName:"stop",offset:"46%","stop-color":makeColorString(n,gradientEnabledColor2)},{tagName:"stop",offset:"81%","stop-color":makeColorString(n,gradientEnabledColor3)}]},{id:"animation_buttonDisabled",tagName:"linearGradient",x1:"50%",y1:"0%",x2:"50%",y2:"100%",children:[{tagName:"stop",offset:"0%","stop-color":makeColorString(r,gradientDisabledColor0)},{tagName:"stop",offset:"75%","stop-color":makeColorString(r,gradientDisabledColor1)}]},{id:"animation_blurred",tagName:"filter",width:"200%",height:"200%",x:"-50%",y:"-50%",children:[{tagName:"feGaussianBlur",stdDeviation:4,in:"SourceGraphic"}]},{id:"animation_shuttleRingSwooshGradient",tagName:"linearGradient",x1:"50%",y1:"0%",x2:"50%",y2:"100%",children:[{tagName:"stop",offset:"0%","stop-opacity":.2,"stop-color":s.toCssColorString()},{tagName:"stop",offset:"85%","stop-opacity":.85,"stop-color":s.toCssColorString()},{tagName:"stop",offset:"95%","stop-opacity":.05,"stop-color":s.toCssColorString()}]},{id:"animation_shuttleRingSwooshHovered",tagName:"linearGradient",x1:"50%",y1:"0%",x2:"50%",y2:"100%",children:[{tagName:"stop",offset:"0%","stop-opacity":.2,"stop-color":c.toCssColorString()},{tagName:"stop",offset:"85%","stop-opacity":.85,"stop-color":c.toCssColorString()},{tagName:"stop",offset:"95%","stop-opacity":.05,"stop-color":c.toCssColorString()}]},{id:"animation_shuttleRingPointerGradient",tagName:"linearGradient",x1:"0%",y1:"50%",x2:"100%",y2:"50%",children:[{tagName:"stop",offset:"0%","stop-color":a.toCssColorString()},{tagName:"stop",offset:"40%","stop-color":a.toCssColorString()},{tagName:"stop",offset:"60%","stop-color":makeColorString(a,gradientPointerColor)},{tagName:"stop",offset:"100%","stop-color":makeColorString(a,gradientPointerColor)}]},{id:"animation_shuttleRingPointerPaused",tagName:"linearGradient",x1:"0%",y1:"50%",x2:"100%",y2:"50%",children:[{tagName:"stop",offset:"0%","stop-color":"#CCC"},{tagName:"stop",offset:"40%","stop-color":"#CCC"},{tagName:"stop",offset:"60%","stop-color":"#555"},{tagName:"stop",offset:"100%","stop-color":"#555"}]},{id:"animation_knobOuter",tagName:"linearGradient",x1:"20%",y1:"0%",x2:"90%",y2:"100%",children:[{tagName:"stop",offset:"5%","stop-color":makeColorString(o,gradientEnabledColor0)},{tagName:"stop",offset:"60%","stop-color":makeColorString(o,gradientKnobColor)},{tagName:"stop",offset:"85%","stop-color":makeColorString(o,gradientEnabledColor1)}]},{id:"animation_knobInner",tagName:"linearGradient",x1:"20%",y1:"0%",x2:"90%",y2:"100%",children:[{tagName:"stop",offset:"5%","stop-color":makeColorString(o,gradientKnobColor)},{tagName:"stop",offset:"60%","stop-color":makeColorString(o,gradientEnabledColor0)},{tagName:"stop",offset:"85%","stop-color":makeColorString(o,gradientEnabledColor3)}]}]});defined(this._defsElement)?this._svgNode.replaceChild(l,this._defsElement):this._svgNode.appendChild(l),this._defsElement=l};const monthNames=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],realtimeShuttleRingAngle=15,maxShuttleRingAngle=105;function numberComparator(e,t){return e-t}function getTypicalMultiplierIndex(e,t){const i=binarySearch(t,e,numberComparator);return i<0?~i:i}function angleToMultiplier(e,t){if(Math.abs(e)<=realtimeShuttleRingAngle)return e/realtimeShuttleRingAngle;const i=realtimeShuttleRingAngle,n=maxShuttleRingAngle;let r;let o;return e>0?(r=Math.log(t[t.length-1]),o=(r-0)/(n-i),Math.exp(0+o*(e-i))):(r=Math.log(-t[0]),o=(r-0)/(n-i),-Math.exp(0+o*(Math.abs(e)-i)))}function multiplierToAngle(e,t,i){if(i.clockStep===ClockStep$1.SYSTEM_CLOCK)return realtimeShuttleRingAngle;if(Math.abs(e)<=1)return e*realtimeShuttleRingAngle;const n=t[t.length-1];e>n?e=n:e<-n&&(e=-n);const r=realtimeShuttleRingAngle,o=maxShuttleRingAngle;let a;let s;return e>0?(a=Math.log(n),s=(a-0)/(o-r),(Math.log(e)-0)/s+r):(a=Math.log(-t[0]),s=(a-0)/(o-r),-((Math.log(Math.abs(e))-0)/s+r))}function AnimationViewModel(e){if(!defined(e))throw new DeveloperError("clockViewModel is required.");const t=this;this._clockViewModel=e,this._allShuttleRingTicks=[],this._dateFormatter=AnimationViewModel.defaultDateFormatter,this._timeFormatter=AnimationViewModel.defaultTimeFormatter,this.shuttleRingDragging=!1,this.snapToTicks=!1,knockout$1.track(this,["_allShuttleRingTicks","_dateFormatter","_timeFormatter","shuttleRingDragging","snapToTicks"]),this._sortedFilteredPositiveTicks=[],this.setShuttleRingTicks(AnimationViewModel.defaultTicks),this.timeLabel=void 0,knockout$1.defineProperty(this,"timeLabel",(function(){return t._timeFormatter(t._clockViewModel.currentTime,t)})),this.dateLabel=void 0,knockout$1.defineProperty(this,"dateLabel",(function(){return t._dateFormatter(t._clockViewModel.currentTime,t)})),this.multiplierLabel=void 0,knockout$1.defineProperty(this,"multiplierLabel",(function(){const e=t._clockViewModel;if(e.clockStep===ClockStep$1.SYSTEM_CLOCK)return"Today";const i=e.multiplier;return i%1==0?`${i.toFixed(0)}x`:`${i.toFixed(3).replace(/0{0,3}$/,"")}x`})),this.shuttleRingAngle=void 0,knockout$1.defineProperty(this,"shuttleRingAngle",{get:function(){return multiplierToAngle(e.multiplier,t._allShuttleRingTicks,e)},set:function(e){e=Math.max(Math.min(e,maxShuttleRingAngle),-maxShuttleRingAngle);const i=t._allShuttleRingTicks,n=t._clockViewModel;if(n.clockStep=ClockStep$1.SYSTEM_CLOCK_MULTIPLIER,Math.abs(e)===maxShuttleRingAngle)return void(n.multiplier=e>0?i[i.length-1]:i[0]);let r=angleToMultiplier(e,i);if(t.snapToTicks)r=i[getTypicalMultiplierIndex(r,i)];else if(0!==r){const e=Math.abs(r);if(e>100){const t=e.toFixed(0).length-2,i=Math.pow(10,t);r=Math.round(r/i)*i|0}else e>realtimeShuttleRingAngle?r=Math.round(r):e>1?r=+r.toFixed(1):e>0&&(r=+r.toFixed(2))}n.multiplier=r}}),this._canAnimate=void 0,knockout$1.defineProperty(this,"_canAnimate",(function(){const e=t._clockViewModel,i=e.clockRange;if(t.shuttleRingDragging||i===ClockRange$1.UNBOUNDED)return!0;const n=e.multiplier,r=e.currentTime,o=e.startTime;let a=!1;if(i===ClockRange$1.LOOP_STOP)a=JulianDate.greaterThan(r,o)||r.equals(o)&&n>0;else{const t=e.stopTime;a=JulianDate.greaterThan(r,o)&&JulianDate.lessThan(r,t)||r.equals(o)&&n>0||r.equals(t)&&n<0}return a||(e.shouldAnimate=!1),a})),this._isSystemTimeAvailable=void 0,knockout$1.defineProperty(this,"_isSystemTimeAvailable",(function(){const e=t._clockViewModel;if(e.clockRange===ClockRange$1.UNBOUNDED)return!0;const i=e.systemTime;return JulianDate.greaterThanOrEquals(i,e.startTime)&&JulianDate.lessThanOrEquals(i,e.stopTime)})),this._isAnimating=void 0,knockout$1.defineProperty(this,"_isAnimating",(function(){return t._clockViewModel.shouldAnimate&&(t._canAnimate||t.shuttleRingDragging)}));const i=createCommand((function(){const e=t._clockViewModel;e.shouldAnimate?e.shouldAnimate=!1:t._canAnimate&&(e.shouldAnimate=!0)}));this._pauseViewModel=new ToggleButtonViewModel(i,{toggled:knockout$1.computed((function(){return!t._isAnimating})),tooltip:"Pause"});const n=createCommand((function(){const e=t._clockViewModel,i=e.multiplier;i>0&&(e.multiplier=-i),e.shouldAnimate=!0}));this._playReverseViewModel=new ToggleButtonViewModel(n,{toggled:knockout$1.computed((function(){return t._isAnimating&&e.multiplier<0})),tooltip:"Play Reverse"});const r=createCommand((function(){const e=t._clockViewModel,i=e.multiplier;i<0&&(e.multiplier=-i),e.shouldAnimate=!0}));this._playForwardViewModel=new ToggleButtonViewModel(r,{toggled:knockout$1.computed((function(){return t._isAnimating&&e.multiplier>0&&e.clockStep!==ClockStep$1.SYSTEM_CLOCK})),tooltip:"Play Forward"});const o=createCommand((function(){t._clockViewModel.clockStep=ClockStep$1.SYSTEM_CLOCK}),knockout$1.getObservable(this,"_isSystemTimeAvailable"));this._playRealtimeViewModel=new ToggleButtonViewModel(o,{toggled:knockout$1.computed((function(){return e.clockStep===ClockStep$1.SYSTEM_CLOCK})),tooltip:knockout$1.computed((function(){return t._isSystemTimeAvailable?"Today (real-time)":"Current time not in range"}))}),this._slower=createCommand((function(){const e=t._clockViewModel,i=t._allShuttleRingTicks,n=getTypicalMultiplierIndex(e.multiplier,i)-1;n>=0&&(e.multiplier=i[n])})),this._faster=createCommand((function(){const e=t._clockViewModel,i=t._allShuttleRingTicks,n=getTypicalMultiplierIndex(e.multiplier,i)+1;n<i.length&&(e.multiplier=i[n])}))}function BaseLayerPickerViewModel(e){const t=(e=defaultValue(e,defaultValue.EMPTY_OBJECT)).globe,i=defaultValue(e.imageryProviderViewModels,[]),n=defaultValue(e.terrainProviderViewModels,[]);if(!defined(t))throw new DeveloperError("globe is required");this._globe=t,this.imageryProviderViewModels=i.slice(0),this.terrainProviderViewModels=n.slice(0),this.dropDownVisible=!1,knockout$1.track(this,["imageryProviderViewModels","terrainProviderViewModels","dropDownVisible"]);const r=knockout$1.getObservable(this,"imageryProviderViewModels"),o=knockout$1.pureComputed((function(){const e=r(),t={};let i;for(i=0;i<e.length;i++){const n=e[i],r=n.category;defined(t[r])?t[r].push(n):t[r]=[n]}const n=Object.keys(t),o=[];for(i=0;i<n.length;i++){const e=n[i];o.push({name:e,providers:t[e]})}return o}));this._imageryProviders=o;const a=knockout$1.getObservable(this,"terrainProviderViewModels"),s=knockout$1.pureComputed((function(){const e=a(),t={};let i;for(i=0;i<e.length;i++){const n=e[i],r=n.category;defined(t[r])?t[r].push(n):t[r]=[n]}const n=Object.keys(t),r=[];for(i=0;i<n.length;i++){const e=n[i];r.push({name:e,providers:t[e]})}return r}));this._terrainProviders=s,this.buttonTooltip=void 0,knockout$1.defineProperty(this,"buttonTooltip",(function(){const e=this.selectedImagery,t=this.selectedTerrain,i=defined(e)?e.name:void 0,n=defined(t)?t.name:void 0;return defined(i)&&defined(n)?`${i}\n${n}`:defined(i)?i:n})),this.buttonImageUrl=void 0,knockout$1.defineProperty(this,"buttonImageUrl",(function(){const e=this.selectedImagery;if(defined(e))return e.iconUrl})),this.selectedImagery=void 0;const c=knockout$1.observable();this._currentImageryLayers=[],knockout$1.defineProperty(this,"selectedImagery",{get:function(){return c()},set:function(e){if(c()===e)return void(this.dropDownVisible=!1);let t;const i=this._currentImageryLayers,n=i.length,r=this._globe.imageryLayers;let o=!1;for(t=0;t<n;t++){const e=r.length;for(let n=0;n<e;n++){const e=r.get(n);if(e===i[t]){r.remove(e),o=!0;break}}}if(defined(e)){const i=e.creationCommand();if(Array.isArray(i)){const e=i.length;for(this._currentImageryLayers=[],t=e-1;t>=0;t--){const e=ImageryLayer.fromProviderAsync(i[t]);r.add(e,0),this._currentImageryLayers.push(e)}}else{this._currentImageryLayers=[];const t=ImageryLayer.fromProviderAsync(i);if(t.name=e.name,o)r.add(t,0);else{const e=r.get(0);defined(e)&&r.remove(e),r.add(t,0)}this._currentImageryLayers.push(t)}}c(e),this.dropDownVisible=!1}}),this.selectedTerrain=void 0;const l=knockout$1.observable();knockout$1.defineProperty(this,"selectedTerrain",{get:function(){return l()},set:function(e){if(l()===e)return void(this.dropDownVisible=!1);let t;defined(e)&&(t=e.creationCommand());let i=!1;const n=this._globe.terrainProviderChanged.addEventListener((()=>{i=!0,n()})),r=new Terrain(Promise.resolve(t)).readyEvent.addEventListener((e=>{i||(this._globe.depthTestAgainstTerrain=!(e instanceof EllipsoidTerrainProvider),this._globe.terrainProvider=e,r())}));l(e),this.dropDownVisible=!1}});const d=this;this._toggleDropDown=createCommand((function(){d.dropDownVisible=!d.dropDownVisible})),this.selectedImagery=defaultValue(e.selectedImageryProviderViewModel,i[0]),this.selectedTerrain=defaultValue(e.selectedTerrainProviderViewModel,n[0])}function BaseLayerPicker(e,t){if(!defined(e))throw new DeveloperError("container is required.");e=getElement(e);const i=new BaseLayerPickerViewModel(t),n=document.createElement("button");n.type="button",n.className="cesium-button cesium-toolbar-button",n.setAttribute("data-bind","attr: { title: buttonTooltip },click: toggleDropDown"),e.appendChild(n);const r=document.createElement("img");r.setAttribute("draggable","false"),r.className="cesium-baseLayerPicker-selected",r.setAttribute("data-bind","attr: { src: buttonImageUrl }, visible: !!buttonImageUrl"),n.appendChild(r);const o=document.createElement("div");o.className="cesium-baseLayerPicker-dropDown",o.setAttribute("data-bind",'css: { "cesium-baseLayerPicker-dropDown-visible" : dropDownVisible }'),e.appendChild(o);const a=document.createElement("div");a.className="cesium-baseLayerPicker-sectionTitle",a.setAttribute("data-bind","visible: imageryProviderViewModels.length > 0"),a.innerHTML="Imagery",o.appendChild(a);const s=document.createElement("div");s.className="cesium-baseLayerPicker-section",s.setAttribute("data-bind","foreach: _imageryProviders"),o.appendChild(s);const c=document.createElement("div");c.className="cesium-baseLayerPicker-category",s.appendChild(c);const l=document.createElement("div");l.className="cesium-baseLayerPicker-categoryTitle",l.setAttribute("data-bind","text: name"),c.appendChild(l);const d=document.createElement("div");d.className="cesium-baseLayerPicker-choices",d.setAttribute("data-bind","foreach: providers"),c.appendChild(d);const u=document.createElement("div");u.className="cesium-baseLayerPicker-item",u.setAttribute("data-bind",'css: { "cesium-baseLayerPicker-selectedItem" : $data === $parents[1].selectedImagery },attr: { title: tooltip },visible: creationCommand.canExecute,click: function($data) { $parents[1].selectedImagery = $data; }'),d.appendChild(u);const h=document.createElement("img");h.className="cesium-baseLayerPicker-itemIcon",h.setAttribute("data-bind","attr: { src: iconUrl }"),h.setAttribute("draggable","false"),u.appendChild(h);const p=document.createElement("div");p.className="cesium-baseLayerPicker-itemLabel",p.setAttribute("data-bind","text: name"),u.appendChild(p);const f=document.createElement("div");f.className="cesium-baseLayerPicker-sectionTitle",f.setAttribute("data-bind","visible: terrainProviderViewModels.length > 0"),f.innerHTML="Terrain",o.appendChild(f);const m=document.createElement("div");m.className="cesium-baseLayerPicker-section",m.setAttribute("data-bind","foreach: _terrainProviders"),o.appendChild(m);const g=document.createElement("div");g.className="cesium-baseLayerPicker-category",m.appendChild(g);const _=document.createElement("div");_.className="cesium-baseLayerPicker-categoryTitle",_.setAttribute("data-bind","text: name"),g.appendChild(_);const y=document.createElement("div");y.className="cesium-baseLayerPicker-choices",y.setAttribute("data-bind","foreach: providers"),g.appendChild(y);const C=document.createElement("div");C.className="cesium-baseLayerPicker-item",C.setAttribute("data-bind",'css: { "cesium-baseLayerPicker-selectedItem" : $data === $parents[1].selectedTerrain },attr: { title: tooltip },visible: creationCommand.canExecute,click: function($data) { $parents[1].selectedTerrain = $data; }'),y.appendChild(C);const S=document.createElement("img");S.className="cesium-baseLayerPicker-itemIcon",S.setAttribute("data-bind","attr: { src: iconUrl }"),S.setAttribute("draggable","false"),C.appendChild(S);const A=document.createElement("div");A.className="cesium-baseLayerPicker-itemLabel",A.setAttribute("data-bind","text: name"),C.appendChild(A),knockout$1.applyBindings(i,n),knockout$1.applyBindings(i,o),this._viewModel=i,this._container=e,this._element=n,this._dropPanel=o,this._closeDropDown=function(e){n.contains(e.target)||o.contains(e.target)||(i.dropDownVisible=!1)},FeatureDetection$1.supportsPointerEvents()?document.addEventListener("pointerdown",this._closeDropDown,!0):(document.addEventListener("mousedown",this._closeDropDown,!0),document.addEventListener("touchstart",this._closeDropDown,!0))}function ProviderViewModel(e){if(!defined(e.name))throw new DeveloperError("options.name is required.");if(!defined(e.tooltip))throw new DeveloperError("options.tooltip is required.");if(!defined(e.iconUrl))throw new DeveloperError("options.iconUrl is required.");if("function"!=typeof e.creationFunction)throw new DeveloperError("options.creationFunction is required.");let t=e.creationFunction;defined(t.canExecute)||(t=createCommand(t)),this._creationCommand=t,this.name=e.name,this.tooltip=e.tooltip,this.iconUrl=e.iconUrl,this._category=defaultValue(e.category,""),knockout$1.track(this,["name","tooltip","iconUrl"])}function createDefaultImageryProviderViewModels(){const e=[];return e.push(new ProviderViewModel({name:"Bing Maps Aerial",iconUrl:buildModuleUrl("Widgets/Images/ImageryProviders/bingAerial.png"),tooltip:"Bing Maps aerial imagery, provided by Cesium ion",category:"Cesium ion",creationFunction:function(){return createWorldImageryAsync({style:IonWorldImageryStyle$1.AERIAL})}})),e.push(new ProviderViewModel({name:"Bing Maps Aerial with Labels",iconUrl:buildModuleUrl("Widgets/Images/ImageryProviders/bingAerialLabels.png"),tooltip:"Bing Maps aerial imagery with labels, provided by Cesium ion",category:"Cesium ion",creationFunction:function(){return createWorldImageryAsync({style:IonWorldImageryStyle$1.AERIAL_WITH_LABELS})}})),e.push(new ProviderViewModel({name:"Bing Maps Roads",iconUrl:buildModuleUrl("Widgets/Images/ImageryProviders/bingRoads.png"),tooltip:"Bing Maps standard road maps, provided by Cesium ion",category:"Cesium ion",creationFunction:function(){return createWorldImageryAsync({style:IonWorldImageryStyle$1.ROAD})}})),e.push(new ProviderViewModel({name:"ArcGIS World Imagery",iconUrl:buildModuleUrl("Widgets/Images/ImageryProviders/ArcGisMapServiceWorldImagery.png"),tooltip:"ArcGIS World Imagery provides one meter or better satellite and aerial imagery in many parts of the world and lower resolution satellite imagery worldwide. The map includes 15m TerraColor imagery at small and mid-scales (~1:591M down to ~1:288k) for the world. The map features Maxar imagery at 0.3m resolution for select metropolitan areas around the world, 0.5m resolution across the United States and parts of Western Europe, and 1m resolution imagery across the rest of the world. In addition to commercial sources, the World Imagery map features high-resolution aerial photography contributed by the GIS User Community. This imagery ranges from 0.3m to 0.03m resolution (down to ~1:280 nin select communities). For more information on this map, including the terms of use, visit us online at \nhttps://www.arcgis.com/home/item.html?id=10df2279f9684e4a9f6a7f08febac2a9",category:"Other",creationFunction:function(){return ArcGisMapServerImageryProvider.fromBasemapType(ArcGisBaseMapType$1.SATELLITE,{enablePickFeatures:!1})}})),e.push(new ProviderViewModel({name:"ArcGIS World Hillshade",iconUrl:buildModuleUrl("Widgets/Images/ImageryProviders/ArcGisMapServiceWorldHillshade.png"),tooltip:"ArcGIS World Hillshade map portrays elevation as an artistic hillshade. This map is designed to be used as a backdrop for topographical, soil, hydro, landcover or other outdoor recreational maps. The map was compiled from a variety of sources from several data providers. The basemap has global coverage down to a scale of ~1:72k. In select areas of the United States and Europe, coverage is available down to ~1:9k. For more information on this map, including the terms of use, visit us online at \nhttps://www.arcgis.com/home/item.html?id=1b243539f4514b6ba35e7d995890db1d",category:"Other",creationFunction:function(){return ArcGisMapServerImageryProvider.fromBasemapType(ArcGisBaseMapType$1.HILLSHADE,{enablePickFeatures:!1})}})),e.push(new ProviderViewModel({name:"Esri World Ocean",iconUrl:buildModuleUrl("Widgets/Images/ImageryProviders/ArcGisMapServiceWorldOcean.png"),tooltip:"ArcGIS World Ocean map is designed to be used as a base map by marine GIS professionals and as a reference map by anyone interested in ocean data. The base map features marine bathymetry. Land features include inland waters and roads overlaid on land cover and shaded relief imagery. The map was compiled from a variety of best available sources from several data providers, including General Bathymetric Chart of the Oceans GEBCO_08 Grid, National Oceanic and Atmospheric Administration (NOAA), and National Geographic, Garmin, HERE, Geonames.org, and Esri, and various other contributors. The base map currently provides coverage for the world down to a scale of ~1:577k, and coverage down to 1:72k in US coastal areas, and various other areas. Coverage down to ~ 1:9k is available limited areas based on regional hydrographic survey data. The base map was designed and developed by Esri. For more information on this map, including our terms of use, visit us online at \nhttps://www.arcgis.com/home/item.html?id=1e126e7520f9466c9ca28b8f28b5e500",category:"Other",creationFunction:function(){return ArcGisMapServerImageryProvider.fromBasemapType(ArcGisBaseMapType$1.OCEANS,{enablePickFeatures:!1})}})),e.push(new ProviderViewModel({name:"OpenStreetMap",iconUrl:buildModuleUrl("Widgets/Images/ImageryProviders/openStreetMap.png"),tooltip:"OpenStreetMap (OSM) is a collaborative project to create a free editable map of the world.\nhttp://www.openstreetmap.org",category:"Other",creationFunction:function(){return new OpenStreetMapImageryProvider({url:"https://a.tile.openstreetmap.org/"})}})),e.push(new ProviderViewModel({name:"Stamen Watercolor",iconUrl:buildModuleUrl("Widgets/Images/ImageryProviders/stamenWatercolor.png"),tooltip:"Reminiscent of hand drawn maps, Stamen watercolor maps apply raster effect area washes and organic edges over a paper texture to add warm pop to any map.\nhttp://maps.stamen.com",category:"Other",creationFunction:function(){return new OpenStreetMapImageryProvider({url:"https://stamen-tiles.a.ssl.fastly.net/watercolor/",credit:"Map tiles by Stamen Design, under CC BY 3.0. Data by OpenStreetMap, under CC BY SA."})}})),e.push(new ProviderViewModel({name:"Stamen Toner",iconUrl:buildModuleUrl("Widgets/Images/ImageryProviders/stamenToner.png"),tooltip:"A high contrast black and white map.\nhttp://maps.stamen.com",category:"Other",creationFunction:function(){return new OpenStreetMapImageryProvider({url:"https://stamen-tiles.a.ssl.fastly.net/toner/",credit:"Map tiles by Stamen Design, under CC BY 3.0. Data by OpenStreetMap, under CC BY SA."})}})),e.push(new ProviderViewModel({name:"Sentinel-2",iconUrl:buildModuleUrl("Widgets/Images/ImageryProviders/sentinel-2.png"),tooltip:"Sentinel-2 cloudless by EOX IT Services GmbH (Contains modified Copernicus Sentinel data 2016 and 2017).",category:"Cesium ion",creationFunction:function(){return IonImageryProvider.fromAssetId(3954)}})),e.push(new ProviderViewModel({name:"Blue Marble",iconUrl:buildModuleUrl("Widgets/Images/ImageryProviders/blueMarble.png"),tooltip:"Blue Marble Next Generation July, 2004 imagery from NASA.",category:"Cesium ion",creationFunction:function(){return IonImageryProvider.fromAssetId(3845)}})),e.push(new ProviderViewModel({name:"Earth at night",iconUrl:buildModuleUrl("Widgets/Images/ImageryProviders/earthAtNight.png"),tooltip:"The Earth at night, also known as The Black Marble, is a 500 meter resolution global composite imagery layer released by NASA.",category:"Cesium ion",creationFunction:function(){return IonImageryProvider.fromAssetId(3812)}})),e.push(new ProviderViewModel({name:"Natural Earth II",iconUrl:buildModuleUrl("Widgets/Images/ImageryProviders/naturalEarthII.png"),tooltip:"Natural Earth II, darkened for contrast.\nhttp://www.naturalearthdata.com/",category:"Cesium ion",creationFunction:function(){return TileMapServiceImageryProvider.fromUrl(buildModuleUrl("Assets/Textures/NaturalEarthII"))}})),e}function createDefaultTerrainProviderViewModels(){const e=[];return e.push(new ProviderViewModel({name:"WGS84 Ellipsoid",iconUrl:buildModuleUrl("Widgets/Images/TerrainProviders/Ellipsoid.png"),tooltip:"WGS84 standard ellipsoid, also known as EPSG:4326",category:"Cesium ion",creationFunction:function(){return new EllipsoidTerrainProvider}})),e.push(new ProviderViewModel({name:"Cesium World Terrain",iconUrl:buildModuleUrl("Widgets/Images/TerrainProviders/CesiumWorldTerrain.png"),tooltip:"High-resolution global terrain tileset curated from several datasources and hosted by Cesium ion",category:"Cesium ion",creationFunction:function(){return createWorldTerrainAsync({requestWaterMask:!0,requestVertexNormals:!0})}})),e}function getPickTileset(e){return function(t){const i=e._scene.pick(t.position);defined(i)&&i.primitive instanceof Cesium3DTileset&&(e.tileset=i.primitive),e.pickActive=!1}}function selectTilesetOnHover(e,t){t?e._eventHandler.setInputAction((function(t){const i=e._scene.pick(t.endPosition);defined(i)&&i.primitive instanceof Cesium3DTileset&&(e.tileset=i.primitive)}),ScreenSpaceEventType$1.MOUSE_MOVE):(e._eventHandler.removeInputAction(ScreenSpaceEventType$1.MOUSE_MOVE),e.picking=e.picking)}AnimationViewModel.defaultDateFormatter=function(e,t){const i=JulianDate.toGregorianDate(e);return`${monthNames[i.month-1]} ${i.day} ${i.year}`},AnimationViewModel.defaultTicks=[.001,.002,.005,.01,.02,.05,.1,.25,.5,1,2,5,10,15,30,60,120,300,600,900,1800,3600,7200,14400,21600,43200,86400,172800,345600,604800],AnimationViewModel.defaultTimeFormatter=function(e,t){const i=JulianDate.toGregorianDate(e),n=Math.round(i.millisecond);return Math.abs(t._clockViewModel.multiplier)<1?`${i.hour.toString().padStart(2,"0")}:${i.minute.toString().padStart(2,"0")}:${i.second.toString().padStart(2,"0")}.${n.toString().padStart(3,"0")}`:`${i.hour.toString().padStart(2,"0")}:${i.minute.toString().padStart(2,"0")}:${i.second.toString().padStart(2,"0")} UTC`},AnimationViewModel.prototype.getShuttleRingTicks=function(){return this._sortedFilteredPositiveTicks.slice(0)},AnimationViewModel.prototype.setShuttleRingTicks=function(e){if(!defined(e))throw new DeveloperError("positiveTicks is required.");let t,i,n;const r={},o=this._sortedFilteredPositiveTicks;for(o.length=0,t=0,i=e.length;t<i;++t)n=e[t],r.hasOwnProperty(n)||(r[n]=!0,o.push(n));o.sort(numberComparator);const a=[];for(i=o.length,t=i-1;t>=0;--t)n=o[t],0!==n&&a.push(-n);Array.prototype.push.apply(a,o),this._allShuttleRingTicks=a},Object.defineProperties(AnimationViewModel.prototype,{slower:{get:function(){return this._slower}},faster:{get:function(){return this._faster}},clockViewModel:{get:function(){return this._clockViewModel}},pauseViewModel:{get:function(){return this._pauseViewModel}},playReverseViewModel:{get:function(){return this._playReverseViewModel}},playForwardViewModel:{get:function(){return this._playForwardViewModel}},playRealtimeViewModel:{get:function(){return this._playRealtimeViewModel}},dateFormatter:{get:function(){return this._dateFormatter},set:function(e){if("function"!=typeof e)throw new DeveloperError("dateFormatter must be a function");this._dateFormatter=e}},timeFormatter:{get:function(){return this._timeFormatter},set:function(e){if("function"!=typeof e)throw new DeveloperError("timeFormatter must be a function");this._timeFormatter=e}}}),AnimationViewModel._maxShuttleRingAngle=maxShuttleRingAngle,AnimationViewModel._realtimeShuttleRingAngle=realtimeShuttleRingAngle,Object.defineProperties(BaseLayerPickerViewModel.prototype,{toggleDropDown:{get:function(){return this._toggleDropDown}},globe:{get:function(){return this._globe}}}),Object.defineProperties(BaseLayerPicker.prototype,{container:{get:function(){return this._container}},viewModel:{get:function(){return this._viewModel}}}),BaseLayerPicker.prototype.isDestroyed=function(){return!1},BaseLayerPicker.prototype.destroy=function(){return FeatureDetection$1.supportsPointerEvents()?document.removeEventListener("pointerdown",this._closeDropDown,!0):(document.removeEventListener("mousedown",this._closeDropDown,!0),document.removeEventListener("touchstart",this._closeDropDown,!0)),knockout$1.cleanNode(this._element),knockout$1.cleanNode(this._dropPanel),this._container.removeChild(this._element),this._container.removeChild(this._dropPanel),destroyObject(this)},Object.defineProperties(ProviderViewModel.prototype,{creationCommand:{get:function(){return this._creationCommand}},category:{get:function(){return this._category}}});const stringOptions={maximumFractionDigits:3};function formatMemoryString(e){const t=e/1048576;return t<1?t.toLocaleString(void 0,stringOptions):Math.round(t).toLocaleString()}function getStatistics(e,t){if(!defined(e))return"";const i=t?e._statisticsPerPass[Cesium3DTilePass$1.PICK]:e._statisticsPerPass[Cesium3DTilePass$1.RENDER];let n='<ul class="cesium-cesiumInspector-statistics">';return n+=`<li><strong>Visited: </strong>${i.visited.toLocaleString()}</li><li><strong>Selected: </strong>${i.selected.toLocaleString()}</li><li><strong>Commands: </strong>${i.numberOfCommands.toLocaleString()}</li>`,n+="</ul>",t||(n+='<ul class="cesium-cesiumInspector-statistics">',n+=`<li><strong>Requests: </strong>${i.numberOfPendingRequests.toLocaleString()}</li><li><strong>Attempted: </strong>${i.numberOfAttemptedRequests.toLocaleString()}</li><li><strong>Processing: </strong>${i.numberOfTilesProcessing.toLocaleString()}</li><li><strong>Content Ready: </strong>${i.numberOfTilesWithContentReady.toLocaleString()}</li><li><strong>Total: </strong>${i.numberOfTilesTotal.toLocaleString()}</li>`,n+="</ul>",n+='<ul class="cesium-cesiumInspector-statistics">',n+=`<li><strong>Features Selected: </strong>${i.numberOfFeaturesSelected.toLocaleString()}</li><li><strong>Features Loaded: </strong>${i.numberOfFeaturesLoaded.toLocaleString()}</li><li><strong>Points Selected: </strong>${i.numberOfPointsSelected.toLocaleString()}</li><li><strong>Points Loaded: </strong>${i.numberOfPointsLoaded.toLocaleString()}</li><li><strong>Triangles Selected: </strong>${i.numberOfTrianglesSelected.toLocaleString()}</li>`,n+="</ul>",n+='<ul class="cesium-cesiumInspector-statistics">',n+=`<li><strong>Tiles styled: </strong>${i.numberOfTilesStyled.toLocaleString()}</li><li><strong>Features styled: </strong>${i.numberOfFeaturesStyled.toLocaleString()}</li>`,n+="</ul>",n+='<ul class="cesium-cesiumInspector-statistics">',n+=`<li><strong>Children Union Culled: </strong>${i.numberOfTilesCulledWithChildrenUnion.toLocaleString()}</li>`,n+="</ul>",n+='<ul class="cesium-cesiumInspector-statistics">',n+=`<li><strong>Geometry Memory (MB): </strong>${formatMemoryString(i.geometryByteLength)}</li><li><strong>Texture Memory (MB): </strong>${formatMemoryString(i.texturesByteLength)}</li><li><strong>Batch Table Memory (MB): </strong>${formatMemoryString(i.batchTableByteLength)}</li>`,n+="</ul>"),n}function getResourceCacheStatistics(){const e=ResourceCache.statistics;return`\n <ul class="cesium-cesiumInspector-statistics">\n <li><strong>Geometry Memory (MB): </strong>${formatMemoryString(e.geometryByteLength)}</li>\n <li><strong>Texture Memory (MB): </strong>${formatMemoryString(e.texturesByteLength)}</li>\n </ul>\n `}const colorBlendModes=[{text:"Highlight",value:Cesium3DTileColorBlendMode$1.HIGHLIGHT},{text:"Replace",value:Cesium3DTileColorBlendMode$1.REPLACE},{text:"Mix",value:Cesium3DTileColorBlendMode$1.MIX}],highlightColor=new Color(1,1,0,.4),scratchColor=new Color,oldColor=new Color;function Cesium3DTilesInspectorViewModel(e,t){Check$1.typeOf.object("scene",e),Check$1.typeOf.object("performanceContainer",t);const i=this,n=e.canvas;this._eventHandler=new ScreenSpaceEventHandler(n),this._scene=e,this._performanceContainer=t,this._canvas=n,this._performanceDisplay=new PerformanceDisplay({container:t}),this._statisticsText="",this._pickStatisticsText="",this._resourceCacheStatisticsText="",this._editorError="",this.performance=!1,this.showStatistics=!0,this.showPickStatistics=!0,this.showResourceCacheStatistics=!1,this.inspectorVisible=!0,this.tilesetVisible=!1,this.displayVisible=!1,this.updateVisible=!1,this.loggingVisible=!1,this.styleVisible=!1,this.tileDebugLabelsVisible=!1,this.optimizationVisible=!1,this.styleString="{}",this.hasEnabledWireframe=!1,this._tileset=void 0,this._feature=void 0,this._tile=void 0,knockout$1.track(this,["performance","inspectorVisible","_statisticsText","_pickStatisticsText","_resourceCacheStatisticsText","_editorError","showPickStatistics","showStatistics","showResourceCacheStatistics","tilesetVisible","displayVisible","updateVisible","loggingVisible","styleVisible","optimizationVisible","tileDebugLabelsVisible","styleString","_feature","_tile","_tileset","hasEnabledWireframe"]),this._properties=knockout$1.observable({}),this.properties=[],knockout$1.defineProperty(this,"properties",(function(){const e=[],t=i._properties();for(const i in t)t.hasOwnProperty(i)&&e.push(i);return e}));const r=knockout$1.observable();knockout$1.defineProperty(this,"dynamicScreenSpaceError",{get:function(){return r()},set:function(e){r(e),defined(i._tileset)&&(i._tileset.dynamicScreenSpaceError=e)}}),this.dynamicScreenSpaceError=!1;const o=knockout$1.observable();knockout$1.defineProperty(this,"colorBlendMode",{get:function(){return o()},set:function(e){o(e),defined(i._tileset)&&(i._tileset.colorBlendMode=e,i._scene.requestRender())}}),this.colorBlendMode=Cesium3DTileColorBlendMode$1.HIGHLIGHT;const a=knockout$1.observable(),s=knockout$1.observable();knockout$1.defineProperty(this,"picking",{get:function(){return s()},set:function(t){s(t),t?i._eventHandler.setInputAction((function(t){const n=e.pick(t.endPosition);if(n instanceof Cesium3DTileFeature?(i.feature=n,i.tile=n.content.tile):defined(n)&&defined(n.content)?(i.feature=void 0,i.tile=n.content.tile):(i.feature=void 0,i.tile=void 0),defined(i._tileset)){if(a&&defined(n)&&defined(n.content)){let r;e.pickPositionSupported&&(r=e.pickPosition(t.endPosition),defined(r)&&(i._tileset.debugPickPosition=r)),i._tileset.debugPickedTile=n.content.tile}else i._tileset.debugPickedTile=void 0;i._scene.requestRender()}}),ScreenSpaceEventType$1.MOUSE_MOVE):(i.feature=void 0,i.tile=void 0,i._eventHandler.removeInputAction(ScreenSpaceEventType$1.MOUSE_MOVE))}}),this.picking=!0;const c=knockout$1.observable();knockout$1.defineProperty(this,"colorize",{get:function(){return c()},set:function(e){c(e),defined(i._tileset)&&(i._tileset.debugColorizeTiles=e,i._scene.requestRender())}}),this.colorize=!1;const l=knockout$1.observable();knockout$1.defineProperty(this,"wireframe",{get:function(){return l()},set:function(e){l(e),defined(i._tileset)&&(i._tileset.debugWireframe=e,i._scene.requestRender())}}),this.wireframe=!1;const d=knockout$1.observable();knockout$1.defineProperty(this,"showBoundingVolumes",{get:function(){return d()},set:function(e){d(e),defined(i._tileset)&&(i._tileset.debugShowBoundingVolume=e,i._scene.requestRender())}}),this.showBoundingVolumes=!1;const u=knockout$1.observable();knockout$1.defineProperty(this,"showContentBoundingVolumes",{get:function(){return u()},set:function(e){u(e),defined(i._tileset)&&(i._tileset.debugShowContentBoundingVolume=e,i._scene.requestRender())}}),this.showContentBoundingVolumes=!1;const h=knockout$1.observable();knockout$1.defineProperty(this,"showRequestVolumes",{get:function(){return h()},set:function(e){h(e),defined(i._tileset)&&(i._tileset.debugShowViewerRequestVolume=e,i._scene.requestRender())}}),this.showRequestVolumes=!1;const p=knockout$1.observable();knockout$1.defineProperty(this,"freezeFrame",{get:function(){return p()},set:function(e){p(e),defined(i._tileset)&&(i._tileset.debugFreezeFrame=e,i._scene.debugShowFrustumPlanes=e,i._scene.requestRender())}}),this.freezeFrame=!1,knockout$1.defineProperty(this,"showOnlyPickedTileDebugLabel",{get:function(){return a()},set:function(e){a(e),defined(i._tileset)&&(i._tileset.debugPickedTileLabelOnly=e,i._scene.requestRender())}}),this.showOnlyPickedTileDebugLabel=!1;const f=knockout$1.observable();knockout$1.defineProperty(this,"showGeometricError",{get:function(){return f()},set:function(e){f(e),defined(i._tileset)&&(i._tileset.debugShowGeometricError=e,i._scene.requestRender())}}),this.showGeometricError=!1;const m=knockout$1.observable();knockout$1.defineProperty(this,"showRenderingStatistics",{get:function(){return m()},set:function(e){m(e),defined(i._tileset)&&(i._tileset.debugShowRenderingStatistics=e,i._scene.requestRender())}}),this.showRenderingStatistics=!1;const g=knockout$1.observable();knockout$1.defineProperty(this,"showMemoryUsage",{get:function(){return g()},set:function(e){g(e),defined(i._tileset)&&(i._tileset.debugShowMemoryUsage=e,i._scene.requestRender())}}),this.showMemoryUsage=!1;const _=knockout$1.observable();knockout$1.defineProperty(this,"showUrl",{get:function(){return _()},set:function(e){_(e),defined(i._tileset)&&(i._tileset.debugShowUrl=e,i._scene.requestRender())}}),this.showUrl=!1;const y=knockout$1.observable();knockout$1.defineProperty(this,"maximumScreenSpaceError",{get:function(){return y()},set:function(e){e=Number(e),isNaN(e)||(y(e),defined(i._tileset)&&(i._tileset.maximumScreenSpaceError=e))}}),this.maximumScreenSpaceError=16;const C=knockout$1.observable();knockout$1.defineProperty(this,"dynamicScreenSpaceErrorDensity",{get:function(){return C()},set:function(e){e=Number(e),isNaN(e)||(C(e),defined(i._tileset)&&(i._tileset.dynamicScreenSpaceErrorDensity=e))}}),this.dynamicScreenSpaceErrorDensity=.00278,this.dynamicScreenSpaceErrorDensitySliderValue=void 0,knockout$1.defineProperty(this,"dynamicScreenSpaceErrorDensitySliderValue",{get:function(){return Math.pow(C(),1/6)},set:function(e){C(Math.pow(e,6))}});const S=knockout$1.observable();knockout$1.defineProperty(this,"dynamicScreenSpaceErrorFactor",{get:function(){return S()},set:function(e){e=Number(e),isNaN(e)||(S(e),defined(i._tileset)&&(i._tileset.dynamicScreenSpaceErrorFactor=e))}}),this.dynamicScreenSpaceErrorFactor=4;const A=getPickTileset(this),T=knockout$1.observable();knockout$1.defineProperty(this,"pickActive",{get:function(){return T()},set:function(e){T(e),e?i._eventHandler.setInputAction(A,ScreenSpaceEventType$1.LEFT_CLICK):i._eventHandler.removeInputAction(ScreenSpaceEventType$1.LEFT_CLICK)}});const v=knockout$1.observable();knockout$1.defineProperty(this,"pointCloudShading",{get:function(){return v()},set:function(e){v(e),defined(i._tileset)&&(i._tileset.pointCloudShading.attenuation=e)}}),this.pointCloudShading=!1;const E=knockout$1.observable();knockout$1.defineProperty(this,"geometricErrorScale",{get:function(){return E()},set:function(e){e=Number(e),isNaN(e)||(E(e),defined(i._tileset)&&(i._tileset.pointCloudShading.geometricErrorScale=e))}}),this.geometricErrorScale=1;const b=knockout$1.observable();knockout$1.defineProperty(this,"maximumAttenuation",{get:function(){return b()},set:function(e){e=Number(e),isNaN(e)||(b(e),defined(i._tileset)&&(i._tileset.pointCloudShading.maximumAttenuation=0===e?void 0:e))}}),this.maximumAttenuation=0;const x=knockout$1.observable();knockout$1.defineProperty(this,"baseResolution",{get:function(){return x()},set:function(e){e=Number(e),isNaN(e)||(x(e),defined(i._tileset)&&(i._tileset.pointCloudShading.baseResolution=0===e?void 0:e))}}),this.baseResolution=0;const D=knockout$1.observable();knockout$1.defineProperty(this,"eyeDomeLighting",{get:function(){return D()},set:function(e){D(e),defined(i._tileset)&&(i._tileset.pointCloudShading.eyeDomeLighting=e)}}),this.eyeDomeLighting=!1;const P=knockout$1.observable();knockout$1.defineProperty(this,"eyeDomeLightingStrength",{get:function(){return P()},set:function(e){e=Number(e),isNaN(e)||(P(e),defined(i._tileset)&&(i._tileset.pointCloudShading.eyeDomeLightingStrength=e))}}),this.eyeDomeLightingStrength=1;const w=knockout$1.observable();knockout$1.defineProperty(this,"eyeDomeLightingRadius",{get:function(){return w()},set:function(e){e=Number(e),isNaN(e)||(w(e),defined(i._tileset)&&(i._tileset.pointCloudShading.eyeDomeLightingRadius=e))}}),this.eyeDomeLightingRadius=1,this.pickActive=!1;const I=knockout$1.observable();knockout$1.defineProperty(this,"skipLevelOfDetail",{get:function(){return I()},set:function(e){I(e),defined(i._tileset)&&(i._tileset.skipLevelOfDetail=e)}}),this.skipLevelOfDetail=!0;const M=knockout$1.observable();knockout$1.defineProperty(this,"skipScreenSpaceErrorFactor",{get:function(){return M()},set:function(e){e=Number(e),isNaN(e)||(M(e),defined(i._tileset)&&(i._tileset.skipScreenSpaceErrorFactor=e))}}),this.skipScreenSpaceErrorFactor=16;const O=knockout$1.observable();knockout$1.defineProperty(this,"baseScreenSpaceError",{get:function(){return O()},set:function(e){e=Number(e),isNaN(e)||(O(e),defined(i._tileset)&&(i._tileset.baseScreenSpaceError=e))}}),this.baseScreenSpaceError=1024;const R=knockout$1.observable();knockout$1.defineProperty(this,"skipLevels",{get:function(){return R()},set:function(e){e=Number(e),isNaN(e)||(R(e),defined(i._tileset)&&(i._tileset.skipLevels=e))}}),this.skipLevels=1;const B=knockout$1.observable();knockout$1.defineProperty(this,"immediatelyLoadDesiredLevelOfDetail",{get:function(){return B()},set:function(e){B(e),defined(i._tileset)&&(i._tileset.immediatelyLoadDesiredLevelOfDetail=e)}}),this.immediatelyLoadDesiredLevelOfDetail=!1;const L=knockout$1.observable();knockout$1.defineProperty(this,"loadSiblings",{get:function(){return L()},set:function(e){L(e),defined(i._tileset)&&(i._tileset.loadSiblings=e)}}),this.loadSiblings=!1,this._style=void 0,this._shouldStyle=!1,this._definedProperties=["properties","dynamicScreenSpaceError","colorBlendMode","picking","colorize","wireframe","showBoundingVolumes","showContentBoundingVolumes","showRequestVolumes","freezeFrame","maximumScreenSpaceError","dynamicScreenSpaceErrorDensity","baseScreenSpaceError","skipScreenSpaceErrorFactor","skipLevelOfDetail","skipLevels","immediatelyLoadDesiredLevelOfDetail","loadSiblings","dynamicScreenSpaceErrorDensitySliderValue","dynamicScreenSpaceErrorFactor","pickActive","showOnlyPickedTileDebugLabel","showGeometricError","showRenderingStatistics","showMemoryUsage","showUrl","pointCloudShading","geometricErrorScale","maximumAttenuation","baseResolution","eyeDomeLighting","eyeDomeLightingStrength","eyeDomeLightingRadius"],this._removePostRenderEvent=e.postRender.addEventListener((function(){i._update()})),defined(this._tileset)||selectTilesetOnHover(this,!0)}function hasFeatures(e){if(!defined(e))return!1;if(e.featuresLength>0)return!0;const t=e.innerContents;if(defined(t)){const e=t.length;for(let i=0;i<e;++i)if(!hasFeatures(t[i]))return!1;return!0}return!1}function Cesium3DTilesInspector(e,t){Check$1.defined("container",e),Check$1.typeOf.object("scene",t),e=getElement(e);const i=document.createElement("div"),n=document.createElement("div");n.setAttribute("data-bind","visible: performance");const r=new Cesium3DTilesInspectorViewModel(t,n);this._viewModel=r,this._container=e,this._element=i;const o=document.createElement("div");o.textContent="3D Tiles Inspector",o.className="cesium-cesiumInspector-button",o.setAttribute("data-bind","click: toggleInspector"),i.appendChild(o),i.className="cesium-cesiumInspector cesium-3DTilesInspector",i.setAttribute("data-bind",'css: { "cesium-cesiumInspector-visible" : inspectorVisible, "cesium-cesiumInspector-hidden" : !inspectorVisible}'),e.appendChild(i);const a=document.createElement("div");a.className="cesium-cesiumInspector-dropDown",i.appendChild(a);const s=InspectorShared$1.createSection,c=InspectorShared$1.createCheckbox,l=InspectorShared$1.createRangeInput,d=InspectorShared$1.createButton,u=s(a,"Tileset","tilesetVisible","toggleTileset"),h=s(a,"Display","displayVisible","toggleDisplay"),p=s(a,"Update","updateVisible","toggleUpdate"),f=s(a,"Logging","loggingVisible","toggleLogging"),m=s(a,"Tile Debug Labels","tileDebugLabelsVisible","toggleTileDebugLabels"),g=s(a,"Style","styleVisible","toggleStyle"),_=s(a,"Optimization","optimizationVisible","toggleOptimization"),y=document.createElement("div");y.className="field-group";const C=document.createElement("label");C.className="field-label",C.appendChild(document.createTextNode("Properties: "));const S=document.createElement("div");S.setAttribute("data-bind","text: properties"),y.appendChild(C),y.appendChild(S),u.appendChild(y),u.appendChild(d("Pick Tileset","togglePickTileset","pickActive")),u.appendChild(d("Trim Tiles Cache","trimTilesCache")),u.appendChild(c("Enable Picking","picking")),h.appendChild(c("Colorize","colorize"));const A=h.appendChild(c("Wireframe","wireframe","_tileset === undefined || hasEnabledWireframe")),T=document.createElement("p");T.setAttribute("data-bind","visible: _tileset !== undefined && !hasEnabledWireframe"),T.setAttribute("class","cesium-3DTilesInspector-disabledElementsInfo"),T.innerText="Set enableDebugWireframe to true in the tileset constructor to enable this option.",A.appendChild(T),h.appendChild(c("Bounding Volumes","showBoundingVolumes")),h.appendChild(c("Content Volumes","showContentBoundingVolumes")),h.appendChild(c("Request Volumes","showRequestVolumes")),h.appendChild(c("Point Cloud Shading","pointCloudShading"));const v=document.createElement("div");v.setAttribute("data-bind","visible: pointCloudShading"),v.appendChild(l("Geometric Error Scale","geometricErrorScale",0,2,.01)),v.appendChild(l("Maximum Attenuation","maximumAttenuation",0,32,1)),v.appendChild(l("Base Resolution","baseResolution",0,1,.01)),v.appendChild(c("Eye Dome Lighting (EDL)","eyeDomeLighting")),h.appendChild(v);const E=document.createElement("div");E.setAttribute("data-bind","visible: eyeDomeLighting"),E.appendChild(l("EDL Strength","eyeDomeLightingStrength",0,2,.1)),E.appendChild(l("EDL Radius","eyeDomeLightingRadius",0,4,.1)),v.appendChild(E),p.appendChild(c("Freeze Frame","freezeFrame")),p.appendChild(c("Dynamic Screen Space Error","dynamicScreenSpaceError"));const b=document.createElement("div");b.appendChild(l("Maximum Screen Space Error","maximumScreenSpaceError",0,128,1)),p.appendChild(b);const x=document.createElement("div");x.setAttribute("data-bind","visible: dynamicScreenSpaceError"),x.appendChild(l("Screen Space Error Density","dynamicScreenSpaceErrorDensitySliderValue",0,1,.005,"dynamicScreenSpaceErrorDensity")),x.appendChild(l("Screen Space Error Factor","dynamicScreenSpaceErrorFactor",1,10,.1)),p.appendChild(x),f.appendChild(c("Performance","performance")),f.appendChild(n),f.appendChild(c("Statistics","showStatistics"));const D=document.createElement("div");D.className="cesium-3dTilesInspector-statistics",D.setAttribute("data-bind","html: statisticsText, visible: showStatistics"),f.appendChild(D),f.appendChild(c("Pick Statistics","showPickStatistics"));const P=document.createElement("div");P.className="cesium-3dTilesInspector-statistics",P.setAttribute("data-bind","html: pickStatisticsText, visible: showPickStatistics"),f.appendChild(P),f.appendChild(c("Resource Cache Statistics","showResourceCacheStatistics"));const w=document.createElement("div");w.className="cesium-3dTilesInspector-statistics",w.setAttribute("data-bind","html: resourceCacheStatisticsText, visible: showResourceCacheStatistics"),f.appendChild(w);const I=document.createElement("div");g.appendChild(I),I.appendChild(document.createTextNode("Color Blend Mode: "));const M=document.createElement("select");M.setAttribute("data-bind",'options: colorBlendModes, optionsText: "text", optionsValue: "value", value: colorBlendMode'),I.appendChild(M);const O=document.createElement("textarea");O.setAttribute("data-bind","textInput: styleString, event: { keydown: styleEditorKeyPress }"),I.className="cesium-cesiumInspector-styleEditor",I.appendChild(O);const R=d("Compile (Ctrl+Enter)","compileStyle");I.appendChild(R);const B=document.createElement("div");B.className="cesium-cesiumInspector-error",B.setAttribute("data-bind","text: editorError"),I.appendChild(B),m.appendChild(c("Show Picked Only","showOnlyPickedTileDebugLabel")),m.appendChild(c("Geometric Error","showGeometricError")),m.appendChild(c("Rendering Statistics","showRenderingStatistics")),m.appendChild(c("Memory Usage (MB)","showMemoryUsage")),m.appendChild(c("Url","showUrl")),_.appendChild(c("Skip Tile LODs","skipLevelOfDetail"));const L=document.createElement("div");L.appendChild(l("Skip SSE Factor","skipScreenSpaceErrorFactor",1,50,1)),_.appendChild(L);const N=document.createElement("div");N.appendChild(l("SSE before skipping LOD","baseScreenSpaceError",0,4096,1)),_.appendChild(N);const F=document.createElement("div");F.appendChild(l("Min. levels to skip","skipLevels",0,10,1)),_.appendChild(F),_.appendChild(c("Load only tiles that meet the max SSE.","immediatelyLoadDesiredLevelOfDetail")),_.appendChild(c("Load siblings of visible tiles","loadSiblings")),knockout$1.applyBindings(r,i)}function frustumStatisticsToString(e){let t;if(defined(e)){t="Command Statistics";const i=e.commandsInFrustums;for(const e in i)if(i.hasOwnProperty(e)){let n,r=parseInt(e,10);if(7===r)n="1, 2 and 3";else{const e=[];for(let t=2;t>=0;t--){const i=Math.pow(2,t);r>=i&&(e.push(t+1),r-=i)}n=e.reverse().join(" and ")}t+=`<br> ${i[e]} in frustum ${n}`}t+=`<br>Total: ${e.totalCommands}`}return t}function boundDepthFrustum(e,t,i){let n=Math.min(i,t);return n=Math.max(n,e),n}Object.defineProperties(Cesium3DTilesInspectorViewModel.prototype,{scene:{get:function(){return this._scene}},performanceContainer:{get:function(){return this._performanceContainer}},statisticsText:{get:function(){return this._statisticsText}},pickStatisticsText:{get:function(){return this._pickStatisticsText}},resourceCacheStatisticsText:{get:function(){return this._resourceCacheStatisticsText}},colorBlendModes:{get:function(){return colorBlendModes}},editorError:{get:function(){return this._editorError}},tileset:{get:function(){return this._tileset},set:function(e){if(this._tileset=e,this._style=void 0,this.styleString="{}",this.feature=void 0,this.tile=void 0,defined(e)){const t=this;e._readyPromise.then((function(e){t.isDestroyed()||t._properties(e.properties)}));const i=["colorize","wireframe","showBoundingVolumes","showContentBoundingVolumes","showRequestVolumes","freezeFrame","showOnlyPickedTileDebugLabel","showGeometricError","showRenderingStatistics","showMemoryUsage","showUrl"],n=i.length;for(let e=0;e<n;++e){const t=i[e];this[t]=this[t]}this.maximumScreenSpaceError=e.maximumScreenSpaceError,this.dynamicScreenSpaceError=e.dynamicScreenSpaceError,this.dynamicScreenSpaceErrorDensity=e.dynamicScreenSpaceErrorDensity,this.dynamicScreenSpaceErrorFactor=e.dynamicScreenSpaceErrorFactor,this.colorBlendMode=e.colorBlendMode,this.skipLevelOfDetail=e.skipLevelOfDetail,this.skipScreenSpaceErrorFactor=e.skipScreenSpaceErrorFactor,this.baseScreenSpaceError=e.baseScreenSpaceError,this.skipLevels=e.skipLevels,this.immediatelyLoadDesiredLevelOfDetail=e.immediatelyLoadDesiredLevelOfDetail,this.loadSiblings=e.loadSiblings,this.hasEnabledWireframe=e._enableDebugWireframe;const r=e.pointCloudShading;this.pointCloudShading=r.attenuation,this.geometricErrorScale=r.geometricErrorScale,this.maximumAttenuation=r.maximumAttenuation?r.maximumAttenuation:0,this.baseResolution=r.baseResolution?r.baseResolution:0,this.eyeDomeLighting=r.eyeDomeLighting,this.eyeDomeLightingStrength=r.eyeDomeLightingStrength,this.eyeDomeLightingRadius=r.eyeDomeLightingRadius,this._scene.requestRender()}else this._properties({});this._statisticsText=getStatistics(e,!1),this._pickStatisticsText=getStatistics(e,!0),this._resourceCacheStatisticsText=getResourceCacheStatistics(),selectTilesetOnHover(this,!1)}},feature:{get:function(){return this._feature},set:function(e){if(this._feature===e)return;const t=this._feature;defined(t)&&!t.content.isDestroyed()&&(!this.colorize&&defined(this._style)?t.color=defined(this._style.color)?this._style.color.evaluateColor(t,scratchColor):Color.WHITE:t.color=oldColor,this._scene.requestRender()),defined(e)&&(Color.clone(e.color,oldColor),e.color=highlightColor,this._scene.requestRender()),this._feature=e}},tile:{get:function(){return this._tile},set:function(e){if(this._tile===e)return;const t=this._tile;!defined(t)||t.isDestroyed()||hasFeatures(t.content)||(t.color=oldColor,this._scene.requestRender()),defined(e)&&!hasFeatures(e.content)&&(Color.clone(e.color,oldColor),e.color=highlightColor,this._scene.requestRender()),this._tile=e}}}),Cesium3DTilesInspectorViewModel.prototype.togglePickTileset=function(){this.pickActive=!this.pickActive},Cesium3DTilesInspectorViewModel.prototype.toggleInspector=function(){this.inspectorVisible=!this.inspectorVisible},Cesium3DTilesInspectorViewModel.prototype.toggleTileset=function(){this.tilesetVisible=!this.tilesetVisible},Cesium3DTilesInspectorViewModel.prototype.toggleDisplay=function(){this.displayVisible=!this.displayVisible},Cesium3DTilesInspectorViewModel.prototype.toggleUpdate=function(){this.updateVisible=!this.updateVisible},Cesium3DTilesInspectorViewModel.prototype.toggleLogging=function(){this.loggingVisible=!this.loggingVisible},Cesium3DTilesInspectorViewModel.prototype.toggleStyle=function(){this.styleVisible=!this.styleVisible},Cesium3DTilesInspectorViewModel.prototype.toggleTileDebugLabels=function(){this.tileDebugLabelsVisible=!this.tileDebugLabelsVisible},Cesium3DTilesInspectorViewModel.prototype.toggleOptimization=function(){this.optimizationVisible=!this.optimizationVisible},Cesium3DTilesInspectorViewModel.prototype.trimTilesCache=function(){defined(this._tileset)&&this._tileset.trimLoadedTiles()},Cesium3DTilesInspectorViewModel.prototype.compileStyle=function(){const e=this._tileset;if(defined(e)&&this.styleString!==JSON.stringify(e.style)){this._editorError="";try{0===this.styleString.length&&(this.styleString="{}"),this._style=new Cesium3DTileStyle(JSON.parse(this.styleString)),this._shouldStyle=!0,this._scene.requestRender()}catch(t){this._editorError=t.toString()}this.feature=this._feature,this.tile=this._tile}},Cesium3DTilesInspectorViewModel.prototype.styleEditorKeyPress=function(e,t){if(9===t.keyCode){t.preventDefault();const e=t.target,i=e.selectionStart,n=e.selectionEnd;let r=n;const o=e.value.slice(i,n).split("\n"),a=o.length;let s;if(t.shiftKey)for(s=0;s<a;++s)" "===o[s][0]&&(" "===o[s][1]?(o[s]=o[s].substr(2),r-=2):(o[s]=o[s].substr(1),r-=1));else for(s=0;s<a;++s)o[s]=` ${o[s]}`,r+=2;const c=o.join("\n");e.value=e.value.slice(0,i)+c+e.value.slice(n),e.selectionStart=i!==n?i:r,e.selectionEnd=r}else!t.ctrlKey||10!==t.keyCode&&13!==t.keyCode||this.compileStyle();return!0},Cesium3DTilesInspectorViewModel.prototype._update=function(){const e=this._tileset;if(this.performance&&this._performanceDisplay.update(),defined(e)){if(e.isDestroyed())return this.tile=void 0,this.feature=void 0,void(this.tileset=void 0);const t=e.style;this._style!==e.style&&(this._shouldStyle?(e.style=this._style,this._shouldStyle=!1):(this._style=t,this.styleString=JSON.stringify(t.style,null," ")))}this.showStatistics&&(this._statisticsText=getStatistics(e,!1),this._pickStatisticsText=getStatistics(e,!0),this._resourceCacheStatisticsText=getResourceCacheStatistics())},Cesium3DTilesInspectorViewModel.prototype.isDestroyed=function(){return!1},Cesium3DTilesInspectorViewModel.prototype.destroy=function(){this._eventHandler.destroy(),this._removePostRenderEvent();const e=this;return this._definedProperties.forEach((function(t){knockout$1.getObservable(e,t).dispose()})),destroyObject(this)},Cesium3DTilesInspectorViewModel.getStatistics=getStatistics,Object.defineProperties(Cesium3DTilesInspector.prototype,{container:{get:function(){return this._container}},viewModel:{get:function(){return this._viewModel}}}),Cesium3DTilesInspector.prototype.isDestroyed=function(){return!1},Cesium3DTilesInspector.prototype.destroy=function(){return knockout$1.cleanNode(this._element),this._container.removeChild(this._element),this.viewModel.destroy(),destroyObject(this)};const scratchPickRay=new Ray,scratchPickCartesian=new Cartesian3;function CesiumInspectorViewModel(e,t){if(!defined(e))throw new DeveloperError("scene is required");if(!defined(t))throw new DeveloperError("performanceContainer is required");const i=this,n=e.canvas,r=new ScreenSpaceEventHandler(n);this._eventHandler=r,this._scene=e,this._canvas=n,this._primitive=void 0,this._tile=void 0,this._modelMatrixPrimitive=void 0,this._performanceDisplay=void 0,this._performanceContainer=t;const o=this._scene.globe;let a;function s(e){const t=i._scene.pick({x:e.position.x,y:e.position.y});defined(t)&&(i.primitive=defined(t.collection)?t.collection:t.primitive),i._scene.requestRender(),i.pickPrimitiveActive=!1}function c(e){let t;const n=o.ellipsoid,r=i._scene.camera.getPickRay(e.position,scratchPickRay),a=o.pick(r,i._scene,scratchPickCartesian);if(defined(a)){const e=n.cartesianToCartographic(a),i=o._surface.tileProvider._tilesToRenderByTextureCount;for(let n=0;!t&&n<i.length;++n){const r=i[n];if(defined(r))for(let i=0;!t&&i<r.length;++i){const n=r[i];Rectangle.contains(n.rectangle,e)&&(t=n)}}}i.tile=t,i.pickTileActive=!1}o.depthTestAgainstTerrain=!0,this.frustums=!1,this.frustumPlanes=!1,this.performance=!1,this.shaderCacheText="",this.primitiveBoundingSphere=!1,this.primitiveReferenceFrame=!1,this.filterPrimitive=!1,this.tileBoundingSphere=!1,this.filterTile=!1,this.wireframe=!1,this.depthFrustum=1,this._numberOfFrustums=1,this.suspendUpdates=!1,this.tileCoordinates=!1,this.frustumStatisticText=!1,this.tileText="",this.hasPickedPrimitive=!1,this.hasPickedTile=!1,this.pickPrimitiveActive=!1,this.pickTileActive=!1,this.dropDownVisible=!0,this.generalVisible=!0,this.primitivesVisible=!1,this.terrainVisible=!1,this.depthFrustumText="",knockout$1.track(this,["frustums","frustumPlanes","performance","shaderCacheText","primitiveBoundingSphere","primitiveReferenceFrame","filterPrimitive","tileBoundingSphere","filterTile","wireframe","depthFrustum","suspendUpdates","tileCoordinates","frustumStatisticText","tileText","hasPickedPrimitive","hasPickedTile","pickPrimitiveActive","pickTileActive","dropDownVisible","generalVisible","primitivesVisible","terrainVisible","depthFrustumText"]),this._toggleDropDown=createCommand((function(){i.dropDownVisible=!i.dropDownVisible})),this._toggleGeneral=createCommand((function(){i.generalVisible=!i.generalVisible})),this._togglePrimitives=createCommand((function(){i.primitivesVisible=!i.primitivesVisible})),this._toggleTerrain=createCommand((function(){i.terrainVisible=!i.terrainVisible})),this._frustumsSubscription=knockout$1.getObservable(this,"frustums").subscribe((function(e){i._scene.debugShowFrustums=e,i._scene.requestRender()})),this._frustumPlanesSubscription=knockout$1.getObservable(this,"frustumPlanes").subscribe((function(e){i._scene.debugShowFrustumPlanes=e,i._scene.requestRender()})),this._performanceSubscription=knockout$1.getObservable(this,"performance").subscribe((function(e){e?i._performanceDisplay=new PerformanceDisplay({container:i._performanceContainer}):i._performanceContainer.innerHTML=""})),this._showPrimitiveBoundingSphere=createCommand((function(){return i._primitive.debugShowBoundingVolume=i.primitiveBoundingSphere,i._scene.requestRender(),!0})),this._primitiveBoundingSphereSubscription=knockout$1.getObservable(this,"primitiveBoundingSphere").subscribe((function(){i._showPrimitiveBoundingSphere()})),this._showPrimitiveReferenceFrame=createCommand((function(){if(i.primitiveReferenceFrame){const e=i._primitive.modelMatrix;i._modelMatrixPrimitive=new DebugModelMatrixPrimitive({modelMatrix:e}),i._scene.primitives.add(i._modelMatrixPrimitive)}else defined(i._modelMatrixPrimitive)&&(i._scene.primitives.remove(i._modelMatrixPrimitive),i._modelMatrixPrimitive=void 0);return i._scene.requestRender(),!0})),this._primitiveReferenceFrameSubscription=knockout$1.getObservable(this,"primitiveReferenceFrame").subscribe((function(){i._showPrimitiveReferenceFrame()})),this._doFilterPrimitive=createCommand((function(){return i.filterPrimitive?i._scene.debugCommandFilter=function(e){return!(!defined(i._modelMatrixPrimitive)||e.owner!==i._modelMatrixPrimitive._primitive)||!!defined(i._primitive)&&(e.owner===i._primitive||e.owner===i._primitive._billboardCollection||e.owner.primitive===i._primitive)}:i._scene.debugCommandFilter=void 0,!0})),this._filterPrimitiveSubscription=knockout$1.getObservable(this,"filterPrimitive").subscribe((function(){i._doFilterPrimitive(),i._scene.requestRender()})),this._wireframeSubscription=knockout$1.getObservable(this,"wireframe").subscribe((function(e){o._surface.tileProvider._debug.wireframe=e,i._scene.requestRender()})),this._depthFrustumSubscription=knockout$1.getObservable(this,"depthFrustum").subscribe((function(e){i._scene.debugShowDepthFrustum=e,i._scene.requestRender()})),this._incrementDepthFrustum=createCommand((function(){const e=i.depthFrustum+1;return i.depthFrustum=boundDepthFrustum(1,i._numberOfFrustums,e),i._scene.requestRender(),!0})),this._decrementDepthFrustum=createCommand((function(){const e=i.depthFrustum-1;return i.depthFrustum=boundDepthFrustum(1,i._numberOfFrustums,e),i._scene.requestRender(),!0})),this._suspendUpdatesSubscription=knockout$1.getObservable(this,"suspendUpdates").subscribe((function(e){o._surface._debug.suspendLodUpdate=e,e||(i.filterTile=!1)})),this._showTileCoordinates=createCommand((function(){return i.tileCoordinates&&!defined(a)?a=e.imageryLayers.addImageryProvider(new TileCoordinatesImageryProvider({tilingScheme:e.terrainProvider.tilingScheme})):!i.tileCoordinates&&defined(a)&&(e.imageryLayers.remove(a),a=void 0),!0})),this._tileCoordinatesSubscription=knockout$1.getObservable(this,"tileCoordinates").subscribe((function(){i._showTileCoordinates(),i._scene.requestRender()})),this._tileBoundingSphereSubscription=knockout$1.getObservable(this,"tileBoundingSphere").subscribe((function(){i._showTileBoundingSphere(),i._scene.requestRender()})),this._showTileBoundingSphere=createCommand((function(){return i.tileBoundingSphere?o._surface.tileProvider._debug.boundingSphereTile=i._tile:o._surface.tileProvider._debug.boundingSphereTile=void 0,i._scene.requestRender(),!0})),this._doFilterTile=createCommand((function(){return i.filterTile?(i.suspendUpdates=!0,o._surface._tilesToRender=[],defined(i._tile)&&i._tile.renderable&&o._surface._tilesToRender.push(i._tile)):i.suspendUpdates=!1,!0})),this._filterTileSubscription=knockout$1.getObservable(this,"filterTile").subscribe((function(){i.doFilterTile(),i._scene.requestRender()})),this._pickPrimitive=createCommand((function(){i.pickPrimitiveActive=!i.pickPrimitiveActive})),this._pickPrimitiveActiveSubscription=knockout$1.getObservable(this,"pickPrimitiveActive").subscribe((function(e){e?r.setInputAction(s,ScreenSpaceEventType$1.LEFT_CLICK):r.removeInputAction(ScreenSpaceEventType$1.LEFT_CLICK)})),this._pickTile=createCommand((function(){i.pickTileActive=!i.pickTileActive})),this._pickTileActiveSubscription=knockout$1.getObservable(this,"pickTileActive").subscribe((function(e){e?r.setInputAction(c,ScreenSpaceEventType$1.LEFT_CLICK):r.removeInputAction(ScreenSpaceEventType$1.LEFT_CLICK)})),this._removePostRenderEvent=e.postRender.addEventListener((function(){i._update()}))}function CesiumInspector(e,t){if(!defined(e))throw new DeveloperError("container is required.");if(!defined(t))throw new DeveloperError("scene is required.");e=getElement(e);const i=document.createElement("div"),n=new CesiumInspectorViewModel(t,i);this._viewModel=n,this._container=e;const r=document.createElement("div");this._element=r;const o=document.createElement("div");o.textContent="Cesium Inspector",o.className="cesium-cesiumInspector-button",o.setAttribute("data-bind","click: toggleDropDown"),r.appendChild(o),r.className="cesium-cesiumInspector",r.setAttribute("data-bind",'css: { "cesium-cesiumInspector-visible" : dropDownVisible, "cesium-cesiumInspector-hidden" : !dropDownVisible }'),e.appendChild(this._element);const a=document.createElement("div");a.className="cesium-cesiumInspector-dropDown",r.appendChild(a);const s=InspectorShared$1.createSection,c=InspectorShared$1.createCheckbox,l=s(a,"General","generalVisible","toggleGeneral"),d=c("Show Frustums","frustums"),u=document.createElement("div");u.className="cesium-cesiumInspector-frustumStatistics",u.setAttribute("data-bind","visible: frustums, html: frustumStatisticText"),d.appendChild(u),l.appendChild(d),l.appendChild(c("Show Frustum Planes","frustumPlanes")),l.appendChild(c("Performance Display","performance")),i.className="cesium-cesiumInspector-performanceDisplay",l.appendChild(i);const h=document.createElement("div");h.className="cesium-cesiumInspector-shaderCache",h.setAttribute("data-bind","html: shaderCacheText"),l.appendChild(h);const p=document.createElement("div");l.appendChild(p);const f=document.createElement("span");f.setAttribute("data-bind",'html: " Frustum:"'),p.appendChild(f);const m=document.createElement("span");m.setAttribute("data-bind","text: depthFrustumText"),p.appendChild(m);const g=document.createElement("input");g.type="button",g.value="-",g.className="cesium-cesiumInspector-pickButton",g.setAttribute("data-bind","click: decrementDepthFrustum"),p.appendChild(g);const _=document.createElement("input");_.type="button",_.value="+",_.className="cesium-cesiumInspector-pickButton",_.setAttribute("data-bind","click: incrementDepthFrustum"),p.appendChild(_);const y=s(a,"Primitives","primitivesVisible","togglePrimitives"),C=document.createElement("div");C.className="cesium-cesiumInspector-pickSection",y.appendChild(C);const S=document.createElement("input");S.type="button",S.value="Pick a primitive",S.className="cesium-cesiumInspector-pickButton",S.setAttribute("data-bind",'css: {"cesium-cesiumInspector-pickButtonHighlight" : pickPrimitiveActive}, click: pickPrimitive');let A=document.createElement("div");A.className="cesium-cesiumInspector-center",A.appendChild(S),C.appendChild(A),C.appendChild(c("Show bounding sphere","primitiveBoundingSphere","hasPickedPrimitive")),C.appendChild(c("Show reference frame","primitiveReferenceFrame","hasPickedPrimitive")),this._primitiveOnly=c("Show only selected","filterPrimitive","hasPickedPrimitive"),C.appendChild(this._primitiveOnly);const T=s(a,"Terrain","terrainVisible","toggleTerrain"),v=document.createElement("div");v.className="cesium-cesiumInspector-pickSection",T.appendChild(v);const E=document.createElement("input");E.type="button",E.value="Pick a tile",E.className="cesium-cesiumInspector-pickButton",E.setAttribute("data-bind",'css: {"cesium-cesiumInspector-pickButtonHighlight" : pickTileActive}, click: pickTile'),A=document.createElement("div"),A.appendChild(E),A.className="cesium-cesiumInspector-center",v.appendChild(A);const b=document.createElement("div");v.appendChild(b);const x=document.createElement("input");x.type="button",x.value="Parent",x.className="cesium-cesiumInspector-pickButton",x.setAttribute("data-bind","click: selectParent");const D=document.createElement("input");D.type="button",D.value="NW",D.className="cesium-cesiumInspector-pickButton",D.setAttribute("data-bind","click: selectNW");const P=document.createElement("input");P.type="button",P.value="NE",P.className="cesium-cesiumInspector-pickButton",P.setAttribute("data-bind","click: selectNE");const w=document.createElement("input");w.type="button",w.value="SW",w.className="cesium-cesiumInspector-pickButton",w.setAttribute("data-bind","click: selectSW");const I=document.createElement("input");I.type="button",I.value="SE",I.className="cesium-cesiumInspector-pickButton",I.setAttribute("data-bind","click: selectSE");const M=document.createElement("div");M.className="cesium-cesiumInspector-tileText",b.className="cesium-cesiumInspector-frustumStatistics",b.appendChild(M),b.setAttribute("data-bind","visible: hasPickedTile"),M.setAttribute("data-bind","html: tileText");const O=document.createElement("div");O.className="cesium-cesiumInspector-relativeText",O.textContent="Select relative:",b.appendChild(O);const R=document.createElement("table"),B=document.createElement("tr"),L=document.createElement("tr"),N=document.createElement("td");N.appendChild(x);const F=document.createElement("td");F.appendChild(D);const $=document.createElement("td");$.appendChild(P),B.appendChild(N),B.appendChild(F),B.appendChild($);const V=document.createElement("td"),k=document.createElement("td");k.appendChild(w);const U=document.createElement("td");U.appendChild(I),L.appendChild(V),L.appendChild(k),L.appendChild(U),R.appendChild(B),R.appendChild(L),b.appendChild(R),v.appendChild(c("Show bounding volume","tileBoundingSphere","hasPickedTile")),v.appendChild(c("Show only selected","filterTile","hasPickedTile")),T.appendChild(c("Wireframe","wireframe")),T.appendChild(c("Suspend LOD update","suspendUpdates")),T.appendChild(c("Show tile coordinates","tileCoordinates")),knockout$1.applyBindings(n,this._element)}function FullscreenButtonViewModel(e,t){defined(t)||(t=document.body),t=getElement(t);const i=this,n=knockout$1.observable(Fullscreen$1.fullscreen),r=knockout$1.observable(Fullscreen$1.enabled),o=t.ownerDocument;this.isFullscreen=void 0,knockout$1.defineProperty(this,"isFullscreen",{get:function(){return n()}}),this.isFullscreenEnabled=void 0,knockout$1.defineProperty(this,"isFullscreenEnabled",{get:function(){return r()},set:function(e){r(e&&Fullscreen$1.enabled)}}),this.tooltip=void 0,knockout$1.defineProperty(this,"tooltip",(function(){return this.isFullscreenEnabled?n()?"Exit full screen":"Full screen":"Full screen unavailable"})),this._command=createCommand((function(){Fullscreen$1.fullscreen?Fullscreen$1.exitFullscreen():Fullscreen$1.requestFullscreen(i._fullscreenElement)}),knockout$1.getObservable(this,"isFullscreenEnabled")),this._fullscreenElement=defaultValue(getElement(e),o.body),this._callback=function(){n(Fullscreen$1.fullscreen)},o.addEventListener(Fullscreen$1.changeEventName,this._callback)}Object.defineProperties(CesiumInspectorViewModel.prototype,{scene:{get:function(){return this._scene}},performanceContainer:{get:function(){return this._performanceContainer}},toggleDropDown:{get:function(){return this._toggleDropDown}},showPrimitiveBoundingSphere:{get:function(){return this._showPrimitiveBoundingSphere}},showPrimitiveReferenceFrame:{get:function(){return this._showPrimitiveReferenceFrame}},doFilterPrimitive:{get:function(){return this._doFilterPrimitive}},incrementDepthFrustum:{get:function(){return this._incrementDepthFrustum}},decrementDepthFrustum:{get:function(){return this._decrementDepthFrustum}},showTileCoordinates:{get:function(){return this._showTileCoordinates}},showTileBoundingSphere:{get:function(){return this._showTileBoundingSphere}},doFilterTile:{get:function(){return this._doFilterTile}},toggleGeneral:{get:function(){return this._toggleGeneral}},togglePrimitives:{get:function(){return this._togglePrimitives}},toggleTerrain:{get:function(){return this._toggleTerrain}},pickPrimitive:{get:function(){return this._pickPrimitive}},pickTile:{get:function(){return this._pickTile}},selectParent:{get:function(){const e=this;return createCommand((function(){e.tile=e.tile.parent}))}},selectNW:{get:function(){const e=this;return createCommand((function(){e.tile=e.tile.northwestChild}))}},selectNE:{get:function(){const e=this;return createCommand((function(){e.tile=e.tile.northeastChild}))}},selectSW:{get:function(){const e=this;return createCommand((function(){e.tile=e.tile.southwestChild}))}},selectSE:{get:function(){const e=this;return createCommand((function(){e.tile=e.tile.southeastChild}))}},primitive:{get:function(){return this._primitive},set:function(e){const t=this._primitive;e!==t&&(this.hasPickedPrimitive=!0,defined(t)&&(t.debugShowBoundingVolume=!1),this._scene.debugCommandFilter=void 0,defined(this._modelMatrixPrimitive)&&(this._scene.primitives.remove(this._modelMatrixPrimitive),this._modelMatrixPrimitive=void 0),this._primitive=e,e.show=!1,setTimeout((function(){e.show=!0}),50),this.showPrimitiveBoundingSphere(),this.showPrimitiveReferenceFrame(),this.doFilterPrimitive())}},tile:{get:function(){return this._tile},set:function(e){if(defined(e)){this.hasPickedTile=!0;if(e!==this._tile){this.tileText=`L: ${e.level} X: ${e.x} Y: ${e.y}`,this.tileText+=`<br>SW corner: ${e.rectangle.west}, ${e.rectangle.south}`,this.tileText+=`<br>NE corner: ${e.rectangle.east}, ${e.rectangle.north}`;const t=e.data;defined(t)&&defined(t.tileBoundingRegion)?this.tileText+=`<br>Min: ${t.tileBoundingRegion.minimumHeight} Max: ${t.tileBoundingRegion.maximumHeight}`:this.tileText+="<br>(Tile is not loaded)"}this._tile=e,this.showTileBoundingSphere(),this.doFilterTile()}else this.hasPickedTile=!1,this._tile=void 0}}}),CesiumInspectorViewModel.prototype._update=function(){this.frustums&&(this.frustumStatisticText=frustumStatisticsToString(this._scene.debugFrustumStatistics));const e=this._scene.numberOfFrustums;this._numberOfFrustums=e,this.depthFrustum=boundDepthFrustum(1,e,this.depthFrustum),this.depthFrustumText=`${this.depthFrustum} of ${e}`,this.performance&&this._performanceDisplay.update(),this.primitiveReferenceFrame&&(this._modelMatrixPrimitive.modelMatrix=this._primitive.modelMatrix),this.shaderCacheText=`Cached shaders: ${this._scene.context.shaderCache.numberOfShaders}`},CesiumInspectorViewModel.prototype.isDestroyed=function(){return!1},CesiumInspectorViewModel.prototype.destroy=function(){return this._eventHandler.destroy(),this._removePostRenderEvent(),this._frustumsSubscription.dispose(),this._frustumPlanesSubscription.dispose(),this._performanceSubscription.dispose(),this._primitiveBoundingSphereSubscription.dispose(),this._primitiveReferenceFrameSubscription.dispose(),this._filterPrimitiveSubscription.dispose(),this._wireframeSubscription.dispose(),this._depthFrustumSubscription.dispose(),this._suspendUpdatesSubscription.dispose(),this._tileCoordinatesSubscription.dispose(),this._tileBoundingSphereSubscription.dispose(),this._filterTileSubscription.dispose(),this._pickPrimitiveActiveSubscription.dispose(),this._pickTileActiveSubscription.dispose(),destroyObject(this)},Object.defineProperties(CesiumInspector.prototype,{container:{get:function(){return this._container}},viewModel:{get:function(){return this._viewModel}}}),CesiumInspector.prototype.isDestroyed=function(){return!1},CesiumInspector.prototype.destroy=function(){return knockout$1.cleanNode(this._element),this._container.removeChild(this._element),this.viewModel.destroy(),destroyObject(this)},Object.defineProperties(FullscreenButtonViewModel.prototype,{fullscreenElement:{get:function(){return this._fullscreenElement},set:function(e){if(!(e instanceof Element))throw new DeveloperError("value must be a valid Element.");this._fullscreenElement=e}},command:{get:function(){return this._command}}}),FullscreenButtonViewModel.prototype.isDestroyed=function(){return!1},FullscreenButtonViewModel.prototype.destroy=function(){document.removeEventListener(Fullscreen$1.changeEventName,this._callback),destroyObject(this)};const enterFullScreenPath="M 83.96875 17.5625 L 83.96875 17.59375 L 76.65625 24.875 L 97.09375 24.96875 L 76.09375 45.96875 L 81.9375 51.8125 L 102.78125 30.9375 L 102.875 51.15625 L 110.15625 43.875 L 110.1875 17.59375 L 83.96875 17.5625 z M 44.125 17.59375 L 17.90625 17.625 L 17.9375 43.90625 L 25.21875 51.1875 L 25.3125 30.96875 L 46.15625 51.8125 L 52 45.96875 L 31 25 L 51.4375 24.90625 L 44.125 17.59375 z M 46.0625 76.03125 L 25.1875 96.875 L 25.09375 76.65625 L 17.8125 83.9375 L 17.8125 110.21875 L 44 110.25 L 51.3125 102.9375 L 30.90625 102.84375 L 51.875 81.875 L 46.0625 76.03125 z M 82 76.15625 L 76.15625 82 L 97.15625 103 L 76.71875 103.0625 L 84.03125 110.375 L 110.25 110.34375 L 110.21875 84.0625 L 102.9375 76.8125 L 102.84375 97 L 82 76.15625 z",exitFullScreenPath="M 104.34375 17.5625 L 83.5 38.4375 L 83.40625 18.21875 L 76.125 25.5 L 76.09375 51.78125 L 102.3125 51.8125 L 102.3125 51.78125 L 109.625 44.5 L 89.1875 44.40625 L 110.1875 23.40625 L 104.34375 17.5625 z M 23.75 17.59375 L 17.90625 23.4375 L 38.90625 44.4375 L 18.5 44.53125 L 25.78125 51.8125 L 52 51.78125 L 51.96875 25.53125 L 44.6875 18.25 L 44.625 38.46875 L 23.75 17.59375 z M 25.6875 76.03125 L 18.375 83.3125 L 38.78125 83.40625 L 17.8125 104.40625 L 23.625 110.25 L 44.5 89.375 L 44.59375 109.59375 L 51.875 102.3125 L 51.875 76.0625 L 25.6875 76.03125 z M 102.375 76.15625 L 76.15625 76.1875 L 76.1875 102.4375 L 83.46875 109.71875 L 83.5625 89.53125 L 104.40625 110.375 L 110.25 104.53125 L 89.25 83.53125 L 109.6875 83.46875 L 102.375 76.15625 z";function FullscreenButton(e,t){if(!defined(e))throw new DeveloperError("container is required.");const i=new FullscreenButtonViewModel(t,e=getElement(e));i._exitFullScreenPath=exitFullScreenPath,i._enterFullScreenPath=enterFullScreenPath;const n=document.createElement("button");n.type="button",n.className="cesium-button cesium-fullscreenButton",n.setAttribute("data-bind","attr: { title: tooltip },click: command,enable: isFullscreenEnabled,cesiumSvgPath: { path: isFullscreen ? _exitFullScreenPath : _enterFullScreenPath, width: 128, height: 128 }"),e.appendChild(n),knockout$1.applyBindings(i,n),this._container=e,this._viewModel=i,this._element=n}Object.defineProperties(FullscreenButton.prototype,{container:{get:function(){return this._container}},viewModel:{get:function(){return this._viewModel}}}),FullscreenButton.prototype.isDestroyed=function(){return!1},FullscreenButton.prototype.destroy=function(){return this._viewModel.destroy(),knockout$1.cleanNode(this._element),this._container.removeChild(this._element),destroyObject(this)};const DEFAULT_HEIGHT=1e3;function GeocoderViewModel(e){if(!defined(e)||!defined(e.scene))throw new DeveloperError("options.scene is required.");defined(e.geocoderServices)?this._geocoderServices=e.geocoderServices:this._geocoderServices=[new CartographicGeocoderService,new IonGeocoderService({scene:e.scene})],this._viewContainer=e.container,this._scene=e.scene,this._flightDuration=e.flightDuration,this._searchText="",this._isSearchInProgress=!1,this._wasGeocodeCancelled=!1,this._previousCredits=[],this._complete=new Event,this._suggestions=[],this._selectedSuggestion=void 0,this._showSuggestions=!0,this._handleArrowDown=handleArrowDown,this._handleArrowUp=handleArrowUp;const t=this;this._suggestionsVisible=knockout$1.pureComputed((function(){const e=knockout$1.getObservable(t,"_suggestions")().length>0,i=knockout$1.getObservable(t,"_showSuggestions")();return e&&i})),this._searchCommand=createCommand((function(e){return e=defaultValue(e,GeocodeType$1.SEARCH),t._focusTextbox=!1,defined(t._selectedSuggestion)?(t.activateSuggestion(t._selectedSuggestion),!1):(t.hideSuggestions(),t.isSearchInProgress?void cancelGeocode(t):geocode(t,t._geocoderServices,e))})),this.deselectSuggestion=function(){t._selectedSuggestion=void 0},this.handleKeyDown=function(e,t){const i="ArrowDown"===t.key||"Down"===t.key||40===t.keyCode,n="ArrowUp"===t.key||"Up"===t.key||38===t.keyCode;return(i||n)&&t.preventDefault(),!0},this.handleKeyUp=function(e,i){const n="ArrowDown"===i.key||"Down"===i.key||40===i.keyCode,r="ArrowUp"===i.key||"Up"===i.key||38===i.keyCode,o="Enter"===i.key||13===i.keyCode;return r?handleArrowUp(t):n?handleArrowDown(t):o&&t._searchCommand(),!0},this.activateSuggestion=function(e){t.hideSuggestions(),t._searchText=e.displayName;const i=e.destination;clearSuggestions(t),t.destinationFound(t,i)},this.hideSuggestions=function(){t._showSuggestions=!1,t._selectedSuggestion=void 0},this.showSuggestions=function(){t._showSuggestions=!0},this.handleMouseover=function(e,i){e!==t._selectedSuggestion&&(t._selectedSuggestion=e)},this.keepExpanded=!1,this.autoComplete=defaultValue(e.autocomplete,!0),this.destinationFound=defaultValue(e.destinationFound,GeocoderViewModel.flyToDestination),this._focusTextbox=!1,knockout$1.track(this,["_searchText","_isSearchInProgress","keepExpanded","_suggestions","_selectedSuggestion","_showSuggestions","_focusTextbox"]);const i=knockout$1.getObservable(this,"_searchText");i.extend({rateLimit:{timeout:500}}),this._suggestionSubscription=i.subscribe((function(){GeocoderViewModel._updateSearchSuggestions(t)})),this.isSearchInProgress=void 0,knockout$1.defineProperty(this,"isSearchInProgress",{get:function(){return this._isSearchInProgress}}),this.searchText=void 0,knockout$1.defineProperty(this,"searchText",{get:function(){return this.isSearchInProgress?"Searching...":this._searchText},set:function(e){if("string"!=typeof e)throw new DeveloperError("value must be a valid string.");this._searchText=e}}),this.flightDuration=void 0,knockout$1.defineProperty(this,"flightDuration",{get:function(){return this._flightDuration},set:function(e){if(defined(e)&&e<0)throw new DeveloperError("value must be positive.");this._flightDuration=e}})}function handleArrowUp(e){if(0===e._suggestions.length)return;const t=e._suggestions.indexOf(e._selectedSuggestion);if(-1===t||0===t)return void(e._selectedSuggestion=void 0);const i=t-1;e._selectedSuggestion=e._suggestions[i],GeocoderViewModel._adjustSuggestionsScroll(e,i)}function handleArrowDown(e){if(0===e._suggestions.length)return;const t=e._suggestions.length,i=(e._suggestions.indexOf(e._selectedSuggestion)+1)%t;e._selectedSuggestion=e._suggestions[i],GeocoderViewModel._adjustSuggestionsScroll(e,i)}function computeFlyToLocationForCartographic(e,t){const i=defined(t)?t.availability:void 0;return defined(i)?sampleTerrainMostDetailed(t,[e]).then((function(t){return(e=t[0]).height+=DEFAULT_HEIGHT,e})):(e.height+=DEFAULT_HEIGHT,Promise.resolve(e))}function flyToDestination(e,t){const i=e._scene,n=i.mapProjection.ellipsoid,r=i.camera,o=i.terrainProvider;let a,s=t;return t instanceof Rectangle?CesiumMath$1.equalsEpsilon(t.south,t.north,CesiumMath$1.EPSILON7)&&CesiumMath$1.equalsEpsilon(t.east,t.west,CesiumMath$1.EPSILON7)?t=Rectangle.center(t):a=computeFlyToLocationForRectangle(t,i):t=n.cartesianToCartographic(t),defined(a)||(a=computeFlyToLocationForCartographic(t,o)),a.then((function(e){s=n.cartographicToCartesian(e)})).finally((function(){r.flyTo({destination:s,complete:function(){e._complete.raiseEvent()},duration:e._flightDuration,endTransform:Matrix4.IDENTITY})}))}async function attemptGeocode(e,t,i){try{return{state:"fulfilled",value:await e.geocode(t,i),credits:e.credit}}catch(n){return{state:"rejected",reason:n}}}async function geocode(e,t,i){const n=e._searchText;if(hasOnlyWhitespace(n))return void e.showSuggestions();let r,o;for(e._isSearchInProgress=!0,e._wasGeocodeCancelled=!1,r=0;r<t.length;r++){if(e._wasGeocodeCancelled)return;if(o=await attemptGeocode(t[r],n,i),defined(o)&&"fulfilled"===o.state&&o.value.length>0)break}if(e._wasGeocodeCancelled)return;e._isSearchInProgress=!1,clearCredits(e);const a=o.value;if("fulfilled"===o.state&&defined(a)&&a.length>0){e._searchText=a[0].displayName,e.destinationFound(e,a[0].destination);defined(updateCredits(e,GeocoderService.getCreditsFromResult(a[0])))||updateCredit(e,t[r].credit)}else e._searchText=`${n} (not found)`}function updateCredit(e,t){!defined(t)||e._scene.isDestroyed()||e._scene.frameState.creditDisplay.isDestroyed()||(e._scene.frameState.creditDisplay.addStaticCredit(t),e._previousCredits.push(t))}function updateCredits(e,t){return defined(t)&&t.forEach((t=>updateCredit(e,t))),t}function clearCredits(e){e._scene.isDestroyed()||e._scene.frameState.creditDisplay.isDestroyed()||e._previousCredits.forEach((t=>{e._scene.frameState.creditDisplay.removeStaticCredit(t)})),e._previousCredits.length=0}function adjustSuggestionsScroll(e,t){const i=getElement(e._viewContainer),n=i.getElementsByClassName("search-results")[0],r=i.getElementsByTagName("li")[t];if(0===t)return void(n.scrollTop=0);const o=r.offsetTop;o+r.clientHeight>n.clientHeight?n.scrollTop=o+r.clientHeight:o<n.scrollTop&&(n.scrollTop=o)}function cancelGeocode(e){e._isSearchInProgress&&(e._isSearchInProgress=!1,e._wasGeocodeCancelled=!0)}function hasOnlyWhitespace(e){return/^\s*$/.test(e)}function clearSuggestions(e){knockout$1.getObservable(e,"_suggestions").removeAll()}async function updateSearchSuggestions(e){if(!e.autoComplete)return;const t=e._searchText;if(clearSuggestions(e),clearCredits(e),!hasOnlyWhitespace(t))for(const i of e._geocoderServices){const n=await i.geocode(t,GeocodeType$1.AUTOCOMPLETE);if(e._suggestions=e._suggestions.concat(n),n.length>0){let t=!0;n.forEach((i=>{const n=GeocoderService.getCreditsFromResult(i);t=t&&!defined(n),updateCredits(e,n)})),t&&updateCredit(e,i.credit)}if(e._suggestions.length>=5)return}}Object.defineProperties(GeocoderViewModel.prototype,{complete:{get:function(){return this._complete}},scene:{get:function(){return this._scene}},search:{get:function(){return this._searchCommand}},selectedSuggestion:{get:function(){return this._selectedSuggestion}},suggestions:{get:function(){return this._suggestions}}}),GeocoderViewModel.prototype.destroy=function(){this._suggestionSubscription.dispose()},GeocoderViewModel.flyToDestination=flyToDestination,GeocoderViewModel._updateSearchSuggestions=updateSearchSuggestions,GeocoderViewModel._adjustSuggestionsScroll=adjustSuggestionsScroll,GeocoderViewModel.prototype.isDestroyed=function(){return!1},GeocoderViewModel.prototype.destroy=function(){return clearCredits(this),destroyObject(this)};const startSearchPath="M29.772,26.433l-7.126-7.126c0.96-1.583,1.523-3.435,1.524-5.421C24.169,8.093,19.478,3.401,13.688,3.399C7.897,3.401,3.204,8.093,3.204,13.885c0,5.789,4.693,10.481,10.484,10.481c1.987,0,3.839-0.563,5.422-1.523l7.128,7.127L29.772,26.433zM7.203,13.885c0.006-3.582,2.903-6.478,6.484-6.486c3.579,0.008,6.478,2.904,6.484,6.486c-0.007,3.58-2.905,6.476-6.484,6.484C10.106,20.361,7.209,17.465,7.203,13.885z",stopSearchPath="M24.778,21.419 19.276,15.917 24.777,10.415 21.949,7.585 16.447,13.087 10.945,7.585 8.117,10.415 13.618,15.917 8.116,21.419 10.946,24.248 16.447,18.746 21.948,24.248z";function Geocoder(e){if(!defined(e)||!defined(e.container))throw new DeveloperError("options.container is required.");if(!defined(e.scene))throw new DeveloperError("options.scene is required.");const t=getElement(e.container),i=new GeocoderViewModel(e);i._startSearchPath=startSearchPath,i._stopSearchPath=stopSearchPath;const n=document.createElement("form");n.setAttribute("data-bind","submit: search");const r=document.createElement("input");r.type="search",r.className="cesium-geocoder-input",r.setAttribute("placeholder","Enter an address or landmark..."),r.setAttribute("data-bind",'textInput: searchText,disable: isSearchInProgress,event: { keyup: handleKeyUp, keydown: handleKeyDown, mouseover: deselectSuggestion },css: { "cesium-geocoder-input-wide" : keepExpanded || searchText.length > 0 },hasFocus: _focusTextbox'),this._onTextBoxFocus=function(){setTimeout((function(){r.select()}),0)},r.addEventListener("focus",this._onTextBoxFocus,!1),n.appendChild(r),this._textBox=r;const o=document.createElement("span");o.className="cesium-geocoder-searchButton",o.setAttribute("data-bind","click: search,cesiumSvgPath: { path: isSearchInProgress ? _stopSearchPath : _startSearchPath, width: 32, height: 32 }"),n.appendChild(o),t.appendChild(n);const a=document.createElement("div");a.className="search-results",a.setAttribute("data-bind","visible: _suggestionsVisible");const s=document.createElement("ul");s.setAttribute("data-bind","foreach: _suggestions");const c=document.createElement("li");s.appendChild(c),c.setAttribute("data-bind","text: $data.displayName, click: $parent.activateSuggestion, event: { mouseover: $parent.handleMouseover}, css: { active: $data === $parent._selectedSuggestion }"),a.appendChild(s),t.appendChild(a),knockout$1.applyBindings(i,n),knockout$1.applyBindings(i,a),this._container=t,this._searchSuggestionsContainer=a,this._viewModel=i,this._form=n,this._onInputBegin=function(e){let n=e.target;"function"==typeof e.composedPath&&(n=e.composedPath()[0]),t.contains(n)||(i._focusTextbox=!1,i.hideSuggestions())},this._onInputEnd=function(e){i._focusTextbox=!0,i.showSuggestions()},FeatureDetection$1.supportsPointerEvents()?(document.addEventListener("pointerdown",this._onInputBegin,!0),t.addEventListener("pointerup",this._onInputEnd,!0),t.addEventListener("pointercancel",this._onInputEnd,!0)):(document.addEventListener("mousedown",this._onInputBegin,!0),t.addEventListener("mouseup",this._onInputEnd,!0),document.addEventListener("touchstart",this._onInputBegin,!0),t.addEventListener("touchend",this._onInputEnd,!0),t.addEventListener("touchcancel",this._onInputEnd,!0))}function HomeButtonViewModel(e,t){if(!defined(e))throw new DeveloperError("scene is required.");this._scene=e,this._duration=t;const i=this;this._command=createCommand((function(){i._scene.camera.flyHome(i._duration)})),this.tooltip="View Home",knockout$1.track(this,["tooltip"])}function HomeButton(e,t,i){if(!defined(e))throw new DeveloperError("container is required.");e=getElement(e);const n=new HomeButtonViewModel(t,i);n._svgPath="M14,4l-10,8.75h20l-4.25-3.7188v-4.6562h-2.812v2.1875l-2.938-2.5625zm-7.0938,9.906v10.094h14.094v-10.094h-14.094zm2.1876,2.313h3.3122v4.25h-3.3122v-4.25zm5.8442,1.281h3.406v6.438h-3.406v-6.438z";const r=document.createElement("button");r.type="button",r.className="cesium-button cesium-toolbar-button cesium-home-button",r.setAttribute("data-bind","attr: { title: tooltip },click: command,cesiumSvgPath: { path: _svgPath, width: 28, height: 28 }"),e.appendChild(r),knockout$1.applyBindings(n,r),this._container=e,this._viewModel=n,this._element=r}Object.defineProperties(Geocoder.prototype,{container:{get:function(){return this._container}},searchSuggestionsContainer:{get:function(){return this._searchSuggestionsContainer}},viewModel:{get:function(){return this._viewModel}}}),Geocoder.prototype.isDestroyed=function(){return!1},Geocoder.prototype.destroy=function(){const e=this._container;return FeatureDetection$1.supportsPointerEvents()?(document.removeEventListener("pointerdown",this._onInputBegin,!0),e.removeEventListener("pointerup",this._onInputEnd,!0)):(document.removeEventListener("mousedown",this._onInputBegin,!0),e.removeEventListener("mouseup",this._onInputEnd,!0),document.removeEventListener("touchstart",this._onInputBegin,!0),e.removeEventListener("touchend",this._onInputEnd,!0)),this._viewModel.destroy(),knockout$1.cleanNode(this._form),knockout$1.cleanNode(this._searchSuggestionsContainer),e.removeChild(this._form),e.removeChild(this._searchSuggestionsContainer),this._textBox.removeEventListener("focus",this._onTextBoxFocus,!1),destroyObject(this)},Object.defineProperties(HomeButtonViewModel.prototype,{scene:{get:function(){return this._scene}},command:{get:function(){return this._command}},duration:{get:function(){return this._duration},set:function(e){if(defined(e)&&e<0)throw new DeveloperError("value must be positive.");this._duration=e}}}),Object.defineProperties(HomeButton.prototype,{container:{get:function(){return this._container}},viewModel:{get:function(){return this._viewModel}}}),HomeButton.prototype.isDestroyed=function(){return!1},HomeButton.prototype.destroy=function(){return knockout$1.cleanNode(this._element),this._container.removeChild(this._element),destroyObject(this)};const cameraEnabledPath="M 13.84375 7.03125 C 11.412798 7.03125 9.46875 8.975298 9.46875 11.40625 L 9.46875 11.59375 L 2.53125 7.21875 L 2.53125 24.0625 L 9.46875 19.6875 C 9.4853444 22.104033 11.423165 24.0625 13.84375 24.0625 L 25.875 24.0625 C 28.305952 24.0625 30.28125 22.087202 30.28125 19.65625 L 30.28125 11.40625 C 30.28125 8.975298 28.305952 7.03125 25.875 7.03125 L 13.84375 7.03125 z",cameraDisabledPath="M 27.34375 1.65625 L 5.28125 27.9375 L 8.09375 30.3125 L 30.15625 4.03125 L 27.34375 1.65625 z M 13.84375 7.03125 C 11.412798 7.03125 9.46875 8.975298 9.46875 11.40625 L 9.46875 11.59375 L 2.53125 7.21875 L 2.53125 24.0625 L 9.46875 19.6875 C 9.4724893 20.232036 9.5676108 20.7379 9.75 21.21875 L 21.65625 7.03125 L 13.84375 7.03125 z M 28.21875 7.71875 L 14.53125 24.0625 L 25.875 24.0625 C 28.305952 24.0625 30.28125 22.087202 30.28125 19.65625 L 30.28125 11.40625 C 30.28125 9.8371439 29.456025 8.4902779 28.21875 7.71875 z";function InfoBoxViewModel(){this._cameraClicked=new Event,this._closeClicked=new Event,this.maxHeight=500,this.enableCamera=!1,this.isCameraTracking=!1,this.showInfo=!1,this.titleText="",this.description="",knockout$1.track(this,["showInfo","titleText","description","maxHeight","enableCamera","isCameraTracking"]),this._loadingIndicatorHtml='<div class="cesium-infoBox-loadingContainer"><span class="cesium-infoBox-loading"></span></div>',this.cameraIconPath=void 0,knockout$1.defineProperty(this,"cameraIconPath",{get:function(){return!this.enableCamera||this.isCameraTracking?cameraDisabledPath:cameraEnabledPath}}),knockout$1.defineProperty(this,"_bodyless",{get:function(){return!defined(this.description)||0===this.description.length}})}function InfoBox(e){Check$1.defined("container",e),e=getElement(e);const t=document.createElement("div");t.className="cesium-infoBox",t.setAttribute("data-bind",'css: { "cesium-infoBox-visible" : showInfo, "cesium-infoBox-bodyless" : _bodyless }'),e.appendChild(t);const i=document.createElement("div");i.className="cesium-infoBox-title",i.setAttribute("data-bind","text: titleText"),t.appendChild(i);const n=document.createElement("button");n.type="button",n.className="cesium-button cesium-infoBox-camera",n.setAttribute("data-bind",'attr: { title: "Focus camera on object" },click: function () { cameraClicked.raiseEvent(this); },enable: enableCamera,cesiumSvgPath: { path: cameraIconPath, width: 32, height: 32 }'),t.appendChild(n);const r=document.createElement("button");r.type="button",r.className="cesium-infoBox-close",r.setAttribute("data-bind","click: function () { closeClicked.raiseEvent(this); }"),r.innerHTML="×",t.appendChild(r);const o=document.createElement("iframe");o.className="cesium-infoBox-iframe",o.setAttribute("sandbox","allow-same-origin allow-popups allow-forms"),o.setAttribute("data-bind","style : { maxHeight : maxHeightOffset(40) }"),o.setAttribute("allowfullscreen",!0),t.appendChild(o);const a=new InfoBoxViewModel;knockout$1.applyBindings(a,t),this._container=e,this._element=t,this._frame=o,this._viewModel=a,this._descriptionSubscription=void 0;const s=this;o.addEventListener("load",(function(){const e=o.contentDocument,i=e.createElement("link");i.href=buildModuleUrl("Widgets/InfoBox/InfoBoxDescription.css"),i.rel="stylesheet",i.type="text/css";const n=e.createElement("div");n.className="cesium-infoBox-description",e.head.appendChild(i),e.body.appendChild(n),s._descriptionSubscription=subscribeAndEvaluate(a,"description",(function(e){o.style.height="5px",n.innerHTML=e;let i=null;const r=n.firstElementChild;if(null!==r&&1===n.childNodes.length){const e=window.getComputedStyle(r);if(null!==e){const t=e["background-color"],n=Color.fromCssColorString(t);defined(n)&&0!==n.alpha&&(i=e["background-color"])}}t.style["background-color"]=i;const a=n.getBoundingClientRect().height;o.style.height=`${a}px`}))})),o.setAttribute("src","about:blank")}function NavigationHelpButtonViewModel(){this.showInstructions=!1;const e=this;this._command=createCommand((function(){e.showInstructions=!e.showInstructions})),this._showClick=createCommand((function(){e._touch=!1})),this._showTouch=createCommand((function(){e._touch=!0})),this._touch=!1,this.tooltip="Navigation Instructions",knockout$1.track(this,["tooltip","showInstructions","_touch"])}function NavigationHelpButton(e){if(!defined(e)||!defined(e.container))throw new DeveloperError("options.container is required.");const t=getElement(e.container),i=new NavigationHelpButtonViewModel,n=defaultValue(e.instructionsInitiallyVisible,!1);i.showInstructions=n,i._svgPath="M16,1.466C7.973,1.466,1.466,7.973,1.466,16c0,8.027,6.507,14.534,14.534,14.534c8.027,0,14.534-6.507,14.534-14.534C30.534,7.973,24.027,1.466,16,1.466z M17.328,24.371h-2.707v-2.596h2.707V24.371zM17.328,19.003v0.858h-2.707v-1.057c0-3.19,3.63-3.696,3.63-5.963c0-1.034-0.924-1.826-2.134-1.826c-1.254,0-2.354,0.924-2.354,0.924l-1.541-1.915c0,0,1.519-1.584,4.137-1.584c2.487,0,4.796,1.54,4.796,4.136C21.156,16.208,17.328,16.627,17.328,19.003z";const r=document.createElement("span");r.className="cesium-navigationHelpButton-wrapper",t.appendChild(r);const o=document.createElement("button");o.type="button",o.className="cesium-button cesium-toolbar-button cesium-navigation-help-button",o.setAttribute("data-bind","attr: { title: tooltip },click: command,cesiumSvgPath: { path: _svgPath, width: 32, height: 32 }"),r.appendChild(o);const a=document.createElement("div");a.className="cesium-navigation-help",a.setAttribute("data-bind",'css: { "cesium-navigation-help-visible" : showInstructions}'),r.appendChild(a);const s=document.createElement("button");s.type="button",s.className="cesium-navigation-button cesium-navigation-button-left",s.setAttribute("data-bind",'click: showClick, css: {"cesium-navigation-button-selected": !_touch, "cesium-navigation-button-unselected": _touch}');const c=document.createElement("img");c.src=buildModuleUrl("Widgets/Images/NavigationHelp/Mouse.svg"),c.className="cesium-navigation-button-icon",c.style.width="25px",c.style.height="25px",s.appendChild(c),s.appendChild(document.createTextNode("Mouse"));const l=document.createElement("button");l.type="button",l.className="cesium-navigation-button cesium-navigation-button-right",l.setAttribute("data-bind",'click: showTouch, css: {"cesium-navigation-button-selected": _touch, "cesium-navigation-button-unselected": !_touch}');const d=document.createElement("img");d.src=buildModuleUrl("Widgets/Images/NavigationHelp/Touch.svg"),d.className="cesium-navigation-button-icon",d.style.width="25px",d.style.height="25px",l.appendChild(d),l.appendChild(document.createTextNode("Touch")),a.appendChild(s),a.appendChild(l);const u=document.createElement("div");u.className="cesium-click-navigation-help cesium-navigation-help-instructions",u.setAttribute("data-bind",'css: { "cesium-click-navigation-help-visible" : !_touch}'),u.innerHTML=` <table> <tr> <td><img src="${buildModuleUrl("Widgets/Images/NavigationHelp/MouseLeft.svg")}" width="48" height="48" /></td> <td> <div class="cesium-navigation-help-pan">Pan view</div> <div class="cesium-navigation-help-details">Left click + drag</div> </td> </tr> <tr> <td><img src="${buildModuleUrl("Widgets/Images/NavigationHelp/MouseRight.svg")}" width="48" height="48" /></td> <td> <div class="cesium-navigation-help-zoom">Zoom view</div> <div class="cesium-navigation-help-details">Right click + drag, or</div> <div class="cesium-navigation-help-details">Mouse wheel scroll</div> </td> </tr> <tr> <td><img src="${buildModuleUrl("Widgets/Images/NavigationHelp/MouseMiddle.svg")}" width="48" height="48" /></td> <td> <div class="cesium-navigation-help-rotate">Rotate view</div> <div class="cesium-navigation-help-details">Middle click + drag, or</div> <div class="cesium-navigation-help-details">CTRL + Left/Right click + drag</div> </td> </tr> </table>`,a.appendChild(u);const h=document.createElement("div");h.className="cesium-touch-navigation-help cesium-navigation-help-instructions",h.setAttribute("data-bind",'css: { "cesium-touch-navigation-help-visible" : _touch}'),h.innerHTML=` <table> <tr> <td><img src="${buildModuleUrl("Widgets/Images/NavigationHelp/TouchDrag.svg")}" width="70" height="48" /></td> <td> <div class="cesium-navigation-help-pan">Pan view</div> <div class="cesium-navigation-help-details">One finger drag</div> </td> </tr> <tr> <td><img src="${buildModuleUrl("Widgets/Images/NavigationHelp/TouchZoom.svg")}" width="70" height="48" /></td> <td> <div class="cesium-navigation-help-zoom">Zoom view</div> <div class="cesium-navigation-help-details">Two finger pinch</div> </td> </tr> <tr> <td><img src="${buildModuleUrl("Widgets/Images/NavigationHelp/TouchTilt.svg")}" width="70" height="48" /></td> <td> <div class="cesium-navigation-help-rotate">Tilt view</div> <div class="cesium-navigation-help-details">Two finger drag, same direction</div> </td> </tr> <tr> <td><img src="${buildModuleUrl("Widgets/Images/NavigationHelp/TouchRotate.svg")}" width="70" height="48" /></td> <td> <div class="cesium-navigation-help-tilt">Rotate view</div> <div class="cesium-navigation-help-details">Two finger drag, opposite direction</div> </td> </tr> </table>`,a.appendChild(h),knockout$1.applyBindings(i,r),this._container=t,this._viewModel=i,this._wrapper=r,this._closeInstructions=function(e){r.contains(e.target)||(i.showInstructions=!1)},FeatureDetection$1.supportsPointerEvents()?document.addEventListener("pointerdown",this._closeInstructions,!0):(document.addEventListener("mousedown",this._closeInstructions,!0),document.addEventListener("touchstart",this._closeInstructions,!0))}function PerformanceWatchdogViewModel(e){if(!defined(e)||!defined(e.scene))throw new DeveloperError("options.scene is required.");this._scene=e.scene,this.lowFrameRateMessage=defaultValue(e.lowFrameRateMessage,"This application appears to be performing poorly on your system. Please try using a different web browser or updating your video drivers."),this.lowFrameRateMessageDismissed=!1,this.showingLowFrameRateMessage=!1,knockout$1.track(this,["lowFrameRateMessage","lowFrameRateMessageDismissed","showingLowFrameRateMessage"]);const t=this;this._dismissMessage=createCommand((function(){t.showingLowFrameRateMessage=!1,t.lowFrameRateMessageDismissed=!0}));const i=FrameRateMonitor.fromScene(e.scene);this._unsubscribeLowFrameRate=i.lowFrameRate.addEventListener((function(){t.lowFrameRateMessageDismissed||(t.showingLowFrameRateMessage=!0)})),this._unsubscribeNominalFrameRate=i.nominalFrameRate.addEventListener((function(){t.showingLowFrameRateMessage=!1}))}function PerformanceWatchdog(e){if(!defined(e)||!defined(e.container))throw new DeveloperError("options.container is required.");if(!defined(e.scene))throw new DeveloperError("options.scene is required.");const t=getElement(e.container),i=new PerformanceWatchdogViewModel(e),n=document.createElement("div");n.className="cesium-performance-watchdog-message-area",n.setAttribute("data-bind","visible: showingLowFrameRateMessage");const r=document.createElement("button");r.setAttribute("type","button"),r.className="cesium-performance-watchdog-message-dismiss",r.innerHTML="×",r.setAttribute("data-bind","click: dismissMessage"),n.appendChild(r);const o=document.createElement("div");o.className="cesium-performance-watchdog-message",o.setAttribute("data-bind","html: lowFrameRateMessage"),n.appendChild(o),t.appendChild(n),knockout$1.applyBindings(i,n),this._container=t,this._viewModel=i,this._element=n}function ProjectionPickerViewModel(e){if(!defined(e))throw new DeveloperError("scene is required.");this._scene=e,this._orthographic=e.camera.frustum instanceof OrthographicFrustum,this._flightInProgress=!1,this.dropDownVisible=!1,this.tooltipPerspective="Perspective Projection",this.tooltipOrthographic="Orthographic Projection",this.selectedTooltip=void 0,this.sceneMode=e.mode,knockout$1.track(this,["_orthographic","_flightInProgress","sceneMode","dropDownVisible","tooltipPerspective","tooltipOrthographic"]);const t=this;knockout$1.defineProperty(this,"selectedTooltip",(function(){return t._orthographic?t.tooltipOrthographic:t.tooltipPerspective})),this._toggleDropDown=createCommand((function(){t.sceneMode===SceneMode$1.SCENE2D||t._flightInProgress||(t.dropDownVisible=!t.dropDownVisible)})),this._eventHelper=new EventHelper,this._eventHelper.add(e.morphComplete,(function(e,i,n,r){t.sceneMode=n,t._orthographic=n===SceneMode$1.SCENE2D||t._scene.camera.frustum instanceof OrthographicFrustum})),this._eventHelper.add(e.preRender,(function(){t._flightInProgress=defined(e.camera._currentFlight)})),this._switchToPerspective=createCommand((function(){t.sceneMode!==SceneMode$1.SCENE2D&&(t._scene.camera.switchToPerspectiveFrustum(),t._orthographic=!1,t.dropDownVisible=!1)})),this._switchToOrthographic=createCommand((function(){t.sceneMode!==SceneMode$1.SCENE2D&&(t._scene.camera.switchToOrthographicFrustum(),t._orthographic=!0,t.dropDownVisible=!1)})),this._sceneMode=SceneMode$1}InfoBoxViewModel.prototype.maxHeightOffset=function(e){return this.maxHeight-e+"px"},Object.defineProperties(InfoBoxViewModel.prototype,{cameraClicked:{get:function(){return this._cameraClicked}},closeClicked:{get:function(){return this._closeClicked}}}),Object.defineProperties(InfoBox.prototype,{container:{get:function(){return this._container}},viewModel:{get:function(){return this._viewModel}},frame:{get:function(){return this._frame}}}),InfoBox.prototype.isDestroyed=function(){return!1},InfoBox.prototype.destroy=function(){const e=this._container;return knockout$1.cleanNode(this._element),e.removeChild(this._element),defined(this._descriptionSubscription)&&this._descriptionSubscription.dispose(),destroyObject(this)},Object.defineProperties(NavigationHelpButtonViewModel.prototype,{command:{get:function(){return this._command}},showClick:{get:function(){return this._showClick}},showTouch:{get:function(){return this._showTouch}}}),Object.defineProperties(NavigationHelpButton.prototype,{container:{get:function(){return this._container}},viewModel:{get:function(){return this._viewModel}}}),NavigationHelpButton.prototype.isDestroyed=function(){return!1},NavigationHelpButton.prototype.destroy=function(){return FeatureDetection$1.supportsPointerEvents()?document.removeEventListener("pointerdown",this._closeInstructions,!0):(document.removeEventListener("mousedown",this._closeInstructions,!0),document.removeEventListener("touchstart",this._closeInstructions,!0)),knockout$1.cleanNode(this._wrapper),this._container.removeChild(this._wrapper),destroyObject(this)},Object.defineProperties(PerformanceWatchdogViewModel.prototype,{scene:{get:function(){return this._scene}},dismissMessage:{get:function(){return this._dismissMessage}}}),PerformanceWatchdogViewModel.prototype.destroy=function(){return this._unsubscribeLowFrameRate(),this._unsubscribeNominalFrameRate(),destroyObject(this)},Object.defineProperties(PerformanceWatchdog.prototype,{container:{get:function(){return this._container}},viewModel:{get:function(){return this._viewModel}}}),PerformanceWatchdog.prototype.isDestroyed=function(){return!1},PerformanceWatchdog.prototype.destroy=function(){return this._viewModel.destroy(),knockout$1.cleanNode(this._element),this._container.removeChild(this._element),destroyObject(this)},Object.defineProperties(ProjectionPickerViewModel.prototype,{scene:{get:function(){return this._scene}},toggleDropDown:{get:function(){return this._toggleDropDown}},switchToPerspective:{get:function(){return this._switchToPerspective}},switchToOrthographic:{get:function(){return this._switchToOrthographic}},isOrthographicProjection:{get:function(){return this._orthographic}}}),ProjectionPickerViewModel.prototype.isDestroyed=function(){return!1},ProjectionPickerViewModel.prototype.destroy=function(){this._eventHelper.removeAll(),destroyObject(this)};const perspectivePath="M 28.15625,10.4375 9.125,13.21875 13.75,43.25 41.75,55.09375 50.8125,37 54.5,11.9375 z m 0.125,3 19.976451,0.394265 L 43.03125,16.875 22.6875,14.28125 z M 50.971746,15.705477 47.90625,36.03125 42.53125,46 44.84375,19.3125 z M 12.625,16.03125 l 29.15625,3.6875 -2.65625,31 L 16.4375,41.125 z",orthographicPath="m 31.560594,6.5254438 -20.75,12.4687502 0.1875,24.5625 22.28125,11.8125 19.5,-12 0.65625,-0.375 0,-0.75 0.0312,-23.21875 z m 0.0625,3.125 16.65625,9.5000002 -16.125,10.28125 -17.34375,-9.71875 z m 18.96875,11.1875002 0.15625,20.65625 -17.46875,10.59375 0.15625,-20.28125 z m -37.0625,1.25 17.21875,9.625 -0.15625,19.21875 -16.9375,-9 z";function ProjectionPicker(e,t){if(!defined(e))throw new DeveloperError("container is required.");if(!defined(t))throw new DeveloperError("scene is required.");e=getElement(e);const i=new ProjectionPickerViewModel(t);i._perspectivePath=perspectivePath,i._orthographicPath=orthographicPath;const n=document.createElement("span");n.className="cesium-projectionPicker-wrapper cesium-toolbar-button",e.appendChild(n);const r=document.createElement("button");r.type="button",r.className="cesium-button cesium-toolbar-button",r.setAttribute("data-bind",'css: { "cesium-projectionPicker-buttonPerspective": !_orthographic, "cesium-projectionPicker-buttonOrthographic": _orthographic, "cesium-button-disabled" : sceneMode === _sceneMode.SCENE2D || _flightInProgress, "cesium-projectionPicker-selected": dropDownVisible },attr: { title: selectedTooltip },click: toggleDropDown'),r.innerHTML='\x3c!-- ko cesiumSvgPath: { path: _perspectivePath, width: 64, height: 64, css: "cesium-projectionPicker-iconPerspective" } --\x3e\x3c!-- /ko --\x3e\x3c!-- ko cesiumSvgPath: { path: _orthographicPath, width: 64, height: 64, css: "cesium-projectionPicker-iconOrthographic" } --\x3e\x3c!-- /ko --\x3e',n.appendChild(r);const o=document.createElement("button");o.type="button",o.className="cesium-button cesium-toolbar-button cesium-projectionPicker-dropDown-icon",o.setAttribute("data-bind",'css: { "cesium-projectionPicker-visible" : (dropDownVisible && _orthographic), "cesium-projectionPicker-none" : !_orthographic, "cesium-projectionPicker-hidden" : !dropDownVisible },attr: { title: tooltipPerspective },click: switchToPerspective,cesiumSvgPath: { path: _perspectivePath, width: 64, height: 64 }'),n.appendChild(o);const a=document.createElement("button");a.type="button",a.className="cesium-button cesium-toolbar-button cesium-projectionPicker-dropDown-icon",a.setAttribute("data-bind",'css: { "cesium-projectionPicker-visible" : (dropDownVisible && !_orthographic), "cesium-projectionPicker-none" : _orthographic, "cesium-projectionPicker-hidden" : !dropDownVisible},attr: { title: tooltipOrthographic },click: switchToOrthographic,cesiumSvgPath: { path: _orthographicPath, width: 64, height: 64 }'),n.appendChild(a),knockout$1.applyBindings(i,n),this._viewModel=i,this._container=e,this._wrapper=n,this._closeDropDown=function(e){n.contains(e.target)||(i.dropDownVisible=!1)},FeatureDetection$1.supportsPointerEvents()?document.addEventListener("pointerdown",this._closeDropDown,!0):(document.addEventListener("mousedown",this._closeDropDown,!0),document.addEventListener("touchstart",this._closeDropDown,!0))}function SceneModePickerViewModel(e,t){if(!defined(e))throw new DeveloperError("scene is required.");this._scene=e;const i=this;this._eventHelper=new EventHelper,this._eventHelper.add(e.morphStart,(function(e,t,n,r){i.sceneMode=n,i.dropDownVisible=!1})),this._duration=defaultValue(t,2),this.sceneMode=e.mode,this.dropDownVisible=!1,this.tooltip2D="2D",this.tooltip3D="3D",this.tooltipColumbusView="Columbus View",knockout$1.track(this,["sceneMode","dropDownVisible","tooltip2D","tooltip3D","tooltipColumbusView"]),this.selectedTooltip=void 0,knockout$1.defineProperty(this,"selectedTooltip",(function(){const e=i.sceneMode;return e===SceneMode$1.SCENE2D?i.tooltip2D:e===SceneMode$1.SCENE3D?i.tooltip3D:i.tooltipColumbusView})),this._toggleDropDown=createCommand((function(){i.dropDownVisible=!i.dropDownVisible})),this._morphTo2D=createCommand((function(){e.morphTo2D(i._duration)})),this._morphTo3D=createCommand((function(){e.morphTo3D(i._duration)})),this._morphToColumbusView=createCommand((function(){e.morphToColumbusView(i._duration)})),this._sceneMode=SceneMode$1}Object.defineProperties(ProjectionPicker.prototype,{container:{get:function(){return this._container}},viewModel:{get:function(){return this._viewModel}}}),ProjectionPicker.prototype.isDestroyed=function(){return!1},ProjectionPicker.prototype.destroy=function(){return this._viewModel.destroy(),FeatureDetection$1.supportsPointerEvents()?document.removeEventListener("pointerdown",this._closeDropDown,!0):(document.removeEventListener("mousedown",this._closeDropDown,!0),document.removeEventListener("touchstart",this._closeDropDown,!0)),knockout$1.cleanNode(this._wrapper),this._container.removeChild(this._wrapper),destroyObject(this)},Object.defineProperties(SceneModePickerViewModel.prototype,{scene:{get:function(){return this._scene}},duration:{get:function(){return this._duration},set:function(e){if(e<0)throw new DeveloperError("duration value must be positive.");this._duration=e}},toggleDropDown:{get:function(){return this._toggleDropDown}},morphTo2D:{get:function(){return this._morphTo2D}},morphTo3D:{get:function(){return this._morphTo3D}},morphToColumbusView:{get:function(){return this._morphToColumbusView}}}),SceneModePickerViewModel.prototype.isDestroyed=function(){return!1},SceneModePickerViewModel.prototype.destroy=function(){this._eventHelper.removeAll(),destroyObject(this)};const globePath="m 32.401392,4.9330437 c -7.087603,0 -14.096095,2.884602 -19.10793,7.8946843 -5.0118352,5.010083 -7.9296167,11.987468 -7.9296167,19.072999 0,7.085531 2.9177815,14.097848 7.9296167,19.107931 4.837653,4.835961 11.541408,7.631372 18.374354,7.82482 0.05712,0.01231 0.454119,0.139729 0.454119,0.139729 l 0.03493,-0.104797 c 0.08246,7.84e-4 0.162033,0.03493 0.244525,0.03493 0.08304,0 0.161515,-0.03414 0.244526,-0.03493 l 0.03493,0.104797 c 0,0 0.309474,-0.129487 0.349323,-0.139729 6.867765,-0.168094 13.582903,-2.965206 18.444218,-7.82482 2.558195,-2.5573 4.551081,-5.638134 5.903547,-8.977584 1.297191,-3.202966 2.02607,-6.661489 2.02607,-10.130347 0,-6.237309 -2.366261,-12.31219 -6.322734,-17.116794 -0.0034,-0.02316 0.0049,-0.04488 0,-0.06986 -0.01733,-0.08745 -0.104529,-0.278855 -0.104797,-0.279458 -5.31e-4,-0.0012 -0.522988,-0.628147 -0.523984,-0.62878 -3.47e-4,-2.2e-4 -0.133444,-0.03532 -0.244525,-0.06987 C 51.944299,13.447603 51.751076,13.104317 51.474391,12.827728 46.462556,7.8176457 39.488996,4.9330437 32.401392,4.9330437 z m -2.130866,3.5281554 0.104797,9.6762289 c -4.111695,-0.08361 -7.109829,-0.423664 -9.257041,-0.943171 1.198093,-2.269271 2.524531,-4.124404 3.91241,-5.414496 2.167498,-2.0147811 3.950145,-2.8540169 5.239834,-3.3185619 z m 2.794579,0 c 1.280302,0.4754953 3.022186,1.3285948 5.065173,3.2486979 1.424667,1.338973 2.788862,3.303645 3.982275,5.728886 -2.29082,0.403367 -5.381258,0.621049 -8.942651,0.698645 L 33.065105,8.4611991 z m 5.728886,0.2445256 c 4.004072,1.1230822 7.793098,3.1481363 10.724195,6.0782083 0.03468,0.03466 0.07033,0.06991 0.104797,0.104797 -0.45375,0.313891 -0.923054,0.663002 -1.956205,1.082899 -0.647388,0.263114 -1.906242,0.477396 -2.829511,0.733577 -1.382296,-2.988132 -3.027146,-5.368585 -4.785716,-7.0213781 -0.422866,-0.397432 -0.835818,-0.6453247 -1.25756,-0.9781032 z m -15.33525,0.7685092 c -0.106753,0.09503 -0.207753,0.145402 -0.31439,0.244526 -1.684973,1.5662541 -3.298068,3.8232211 -4.680919,6.5672591 -0.343797,-0.14942 -1.035052,-0.273198 -1.292493,-0.419186 -0.956528,-0.542427 -1.362964,-1.022024 -1.537018,-1.292493 -0.0241,-0.03745 -0.01868,-0.0401 -0.03493,-0.06986 2.250095,-2.163342 4.948824,-3.869984 7.859752,-5.0302421 z m -9.641296,7.0912431 c 0.464973,0.571618 0.937729,1.169056 1.956205,1.746612 0.349907,0.198425 1.107143,0.335404 1.537018,0.523983 -1.20166,3.172984 -1.998037,7.051901 -2.165798,11.772162 C 14.256557,30.361384 12.934823,30.161483 12.280427,29.90959 10.644437,29.279855 9.6888882,28.674891 9.1714586,28.267775 8.6540289,27.860658 8.6474751,27.778724 8.6474751,27.778724 l -0.069864,0.03493 C 9.3100294,23.691285 11.163248,19.798527 13.817445,16.565477 z m 37.552149,0.523984 c 2.548924,3.289983 4.265057,7.202594 4.890513,11.318043 -0.650428,0.410896 -1.756876,1.001936 -3.563088,1.606882 -1.171552,0.392383 -3.163859,0.759153 -4.960377,1.117832 -0.04367,-4.752703 -0.784809,-8.591423 -1.88634,-11.807094 0.917574,-0.263678 2.170552,-0.486495 2.864443,-0.76851 1.274693,-0.518066 2.003942,-1.001558 2.654849,-1.467153 z m -31.439008,2.619917 c 2.487341,0.672766 5.775813,1.137775 10.479669,1.222628 l 0.104797,10.689263 0,0.03493 0,0.733577 c -5.435005,-0.09059 -9.512219,-0.519044 -12.610536,-1.117831 0.106127,-4.776683 0.879334,-8.55791 2.02607,-11.562569 z m 23.264866,0.31439 c 1.073459,3.067541 1.833795,6.821314 1.816476,11.702298 -3.054474,0.423245 -7.062018,0.648559 -11.702298,0.698644 l 0,-0.838373 -0.104796,-10.654331 c 4.082416,-0.0864 7.404468,-0.403886 9.990618,-0.908238 z M 8.2632205,30.922625 c 0.7558676,0.510548 1.5529563,1.013339 3.0041715,1.57195 0.937518,0.360875 2.612202,0.647642 3.91241,0.978102 0.112814,3.85566 0.703989,7.107756 1.606883,9.920754 -1.147172,-0.324262 -2.644553,-0.640648 -3.423359,-0.978102 -1.516688,-0.657177 -2.386627,-1.287332 -2.864443,-1.71168 -0.477816,-0.424347 -0.489051,-0.489051 -0.489051,-0.489051 L 9.8002387,40.319395 C 8.791691,37.621767 8.1584238,34.769583 8.1584238,31.900727 c 0,-0.330153 0.090589,-0.648169 0.1047967,-0.978102 z m 48.2763445,0.419186 c 0.0047,0.188973 0.06986,0.36991 0.06986,0.558916 0,2.938869 -0.620228,5.873558 -1.676747,8.628261 -0.07435,0.07583 -0.06552,0.07411 -0.454119,0.349323 -0.606965,0.429857 -1.631665,1.042044 -3.318562,1.676747 -1.208528,0.454713 -3.204964,0.850894 -5.135038,1.25756 0.84593,-2.765726 1.41808,-6.005357 1.606883,-9.815957 2.232369,-0.413371 4.483758,-0.840201 5.938479,-1.327425 1.410632,-0.472457 2.153108,-0.89469 2.96924,-1.327425 z m -38.530252,2.864443 c 3.208141,0.56697 7.372279,0.898588 12.575603,0.978103 l 0.174662,9.885821 c -4.392517,-0.06139 -8.106722,-0.320566 -10.863925,-0.803441 -1.051954,-2.664695 -1.692909,-6.043794 -1.88634,-10.060483 z m 26.793022,0.31439 c -0.246298,3.923551 -0.877762,7.263679 -1.816476,9.885822 -2.561957,0.361954 -5.766249,0.560708 -9.431703,0.62878 l -0.174661,-9.815957 c 4.491734,-0.04969 8.334769,-0.293032 11.42284,-0.698645 z M 12.035901,44.860585 c 0.09977,0.04523 0.105535,0.09465 0.209594,0.139729 1.337656,0.579602 3.441099,1.058072 5.589157,1.537018 1.545042,3.399208 3.548524,5.969402 5.589157,7.789888 -3.034411,-1.215537 -5.871615,-3.007978 -8.174142,-5.309699 -1.245911,-1.245475 -2.271794,-2.662961 -3.213766,-4.156936 z m 40.69605,0 c -0.941972,1.493975 -1.967855,2.911461 -3.213765,4.156936 -2.74253,2.741571 -6.244106,4.696717 -9.955686,5.868615 0.261347,-0.241079 0.507495,-0.394491 0.768509,-0.663713 1.674841,-1.727516 3.320792,-4.181056 4.645987,-7.265904 2.962447,-0.503021 5.408965,-1.122293 7.161107,-1.781544 0.284034,-0.106865 0.337297,-0.207323 0.593848,-0.31439 z m -31.404076,2.305527 c 2.645807,0.376448 5.701178,0.649995 9.466635,0.698645 l 0.139729,7.789888 c -1.38739,-0.480844 -3.316218,-1.29837 -5.659022,-3.388427 -1.388822,-1.238993 -2.743668,-3.0113 -3.947342,-5.100106 z m 20.365491,0.104797 c -1.04872,2.041937 -2.174337,3.779068 -3.353494,4.995309 -1.853177,1.911459 -3.425515,2.82679 -4.611055,3.353494 l -0.139729,-7.789887 c 3.13091,-0.05714 5.728238,-0.278725 8.104278,-0.558916 z",flatMapPath="m 2.9825053,17.550598 0,1.368113 0,26.267766 0,1.368113 1.36811,0 54.9981397,0 1.36811,0 0,-1.368113 0,-26.267766 0,-1.368113 -1.36811,0 -54.9981397,0 -1.36811,0 z m 2.73623,2.736226 10.3292497,0 0,10.466063 -10.3292497,0 0,-10.466063 z m 13.0654697,0 11.69737,0 0,10.466063 -11.69737,0 0,-10.466063 z m 14.43359,0 11.69737,0 0,10.466063 -11.69737,0 0,-10.466063 z m 14.43359,0 10.32926,0 0,10.466063 -10.32926,0 0,-10.466063 z m -41.9326497,13.202288 10.3292497,0 0,10.329252 -10.3292497,0 0,-10.329252 z m 13.0654697,0 11.69737,0 0,10.329252 -11.69737,0 0,-10.329252 z m 14.43359,0 11.69737,0 0,10.329252 -11.69737,0 0,-10.329252 z m 14.43359,0 10.32926,0 0,10.329252 -10.32926,0 0,-10.329252 z",columbusViewPath="m 14.723969,17.675598 -0.340489,0.817175 -11.1680536,26.183638 -0.817175,1.872692 2.076986,0 54.7506996,0 2.07698,0 -0.81717,-1.872692 -11.16805,-26.183638 -0.34049,-0.817175 -0.91933,0 -32.414586,0 -0.919322,0 z m 1.838643,2.723916 6.196908,0 -2.928209,10.418977 -7.729111,0 4.460412,-10.418977 z m 9.02297,0 4.903049,0 0,10.418977 -7.831258,0 2.928209,-10.418977 z m 7.626964,0 5.584031,0 2.62176,10.418977 -8.205791,0 0,-10.418977 z m 8.410081,0 5.51593,0 4.46042,10.418977 -7.38863,0 -2.58772,-10.418977 z m -30.678091,13.142892 8.103649,0 -2.89416,10.282782 -9.6018026,0 4.3923136,-10.282782 z m 10.929711,0 8.614384,0 0,10.282782 -11.508544,0 2.89416,-10.282782 z m 11.338299,0 8.852721,0 2.58772,10.282782 -11.440441,0 0,-10.282782 z m 11.678781,0 7.86531,0 4.39231,10.282782 -9.6699,0 -2.58772,-10.282782 z";function SceneModePicker(e,t,i){if(!defined(e))throw new DeveloperError("container is required.");if(!defined(t))throw new DeveloperError("scene is required.");e=getElement(e);const n=new SceneModePickerViewModel(t,i);n._globePath=globePath,n._flatMapPath=flatMapPath,n._columbusViewPath=columbusViewPath;const r=document.createElement("span");r.className="cesium-sceneModePicker-wrapper cesium-toolbar-button",e.appendChild(r);const o=document.createElement("button");o.type="button",o.className="cesium-button cesium-toolbar-button",o.setAttribute("data-bind",'css: { "cesium-sceneModePicker-button2D": sceneMode === _sceneMode.SCENE2D, "cesium-sceneModePicker-button3D": sceneMode === _sceneMode.SCENE3D, "cesium-sceneModePicker-buttonColumbusView": sceneMode === _sceneMode.COLUMBUS_VIEW, "cesium-sceneModePicker-selected": dropDownVisible },attr: { title: selectedTooltip },click: toggleDropDown'),o.innerHTML='\x3c!-- ko cesiumSvgPath: { path: _globePath, width: 64, height: 64, css: "cesium-sceneModePicker-slide-svg cesium-sceneModePicker-icon3D" } --\x3e\x3c!-- /ko --\x3e\x3c!-- ko cesiumSvgPath: { path: _flatMapPath, width: 64, height: 64, css: "cesium-sceneModePicker-slide-svg cesium-sceneModePicker-icon2D" } --\x3e\x3c!-- /ko --\x3e\x3c!-- ko cesiumSvgPath: { path: _columbusViewPath, width: 64, height: 64, css: "cesium-sceneModePicker-slide-svg cesium-sceneModePicker-iconColumbusView" } --\x3e\x3c!-- /ko --\x3e',r.appendChild(o);const a=document.createElement("button");a.type="button",a.className="cesium-button cesium-toolbar-button cesium-sceneModePicker-dropDown-icon",a.setAttribute("data-bind",'css: { "cesium-sceneModePicker-visible" : (dropDownVisible && (sceneMode !== _sceneMode.SCENE3D)) || (!dropDownVisible && (sceneMode === _sceneMode.SCENE3D)), "cesium-sceneModePicker-none" : sceneMode === _sceneMode.SCENE3D, "cesium-sceneModePicker-hidden" : !dropDownVisible },attr: { title: tooltip3D },click: morphTo3D,cesiumSvgPath: { path: _globePath, width: 64, height: 64 }'),r.appendChild(a);const s=document.createElement("button");s.type="button",s.className="cesium-button cesium-toolbar-button cesium-sceneModePicker-dropDown-icon",s.setAttribute("data-bind",'css: { "cesium-sceneModePicker-visible" : (dropDownVisible && (sceneMode !== _sceneMode.SCENE2D)), "cesium-sceneModePicker-none" : sceneMode === _sceneMode.SCENE2D, "cesium-sceneModePicker-hidden" : !dropDownVisible },attr: { title: tooltip2D },click: morphTo2D,cesiumSvgPath: { path: _flatMapPath, width: 64, height: 64 }'),r.appendChild(s);const c=document.createElement("button");c.type="button",c.className="cesium-button cesium-toolbar-button cesium-sceneModePicker-dropDown-icon",c.setAttribute("data-bind",'css: { "cesium-sceneModePicker-visible" : (dropDownVisible && (sceneMode !== _sceneMode.COLUMBUS_VIEW)) || (!dropDownVisible && (sceneMode === _sceneMode.COLUMBUS_VIEW)), "cesium-sceneModePicker-none" : sceneMode === _sceneMode.COLUMBUS_VIEW, "cesium-sceneModePicker-hidden" : !dropDownVisible},attr: { title: tooltipColumbusView },click: morphToColumbusView,cesiumSvgPath: { path: _columbusViewPath, width: 64, height: 64 }'),r.appendChild(c),knockout$1.applyBindings(n,r),this._viewModel=n,this._container=e,this._wrapper=r,this._closeDropDown=function(e){r.contains(e.target)||(n.dropDownVisible=!1)},FeatureDetection$1.supportsPointerEvents()?document.addEventListener("pointerdown",this._closeDropDown,!0):(document.addEventListener("mousedown",this._closeDropDown,!0),document.addEventListener("touchstart",this._closeDropDown,!0))}Object.defineProperties(SceneModePicker.prototype,{container:{get:function(){return this._container}},viewModel:{get:function(){return this._viewModel}}}),SceneModePicker.prototype.isDestroyed=function(){return!1},SceneModePicker.prototype.destroy=function(){return this._viewModel.destroy(),FeatureDetection$1.supportsPointerEvents()?document.removeEventListener("pointerdown",this._closeDropDown,!0):(document.removeEventListener("mousedown",this._closeDropDown,!0),document.removeEventListener("touchstart",this._closeDropDown,!0)),knockout$1.cleanNode(this._wrapper),this._container.removeChild(this._wrapper),destroyObject(this)};const screenSpacePos=new Cartesian2,offScreen="-1000px";function SelectionIndicatorViewModel(e,t,i){if(!defined(e))throw new DeveloperError("scene is required.");if(!defined(t))throw new DeveloperError("selectionIndicatorElement is required.");if(!defined(i))throw new DeveloperError("container is required.");this._scene=e,this._screenPositionX=offScreen,this._screenPositionY=offScreen,this._tweens=e.tweens,this._container=defaultValue(i,document.body),this._selectionIndicatorElement=t,this._scale=1,this.position=void 0,this.showSelection=!1,knockout$1.track(this,["position","_screenPositionX","_screenPositionY","_scale","showSelection"]),this.isVisible=void 0,knockout$1.defineProperty(this,"isVisible",{get:function(){return this.showSelection&&defined(this.position)}}),knockout$1.defineProperty(this,"_transform",{get:function(){return`scale(${this._scale})`}}),this.computeScreenSpacePosition=function(t,i){return SceneTransforms$1.wgs84ToWindowCoordinates(e,t,i)}}function SelectionIndicator(e,t){if(!defined(e))throw new DeveloperError("container is required.");e=getElement(e),this._container=e;const i=document.createElement("div");i.className="cesium-selection-wrapper",i.setAttribute("data-bind",'style: { "top" : _screenPositionY, "left" : _screenPositionX },css: { "cesium-selection-wrapper-visible" : isVisible }'),e.appendChild(i),this._element=i;const n="http://www.w3.org/2000/svg",r=document.createElementNS(n,"svg:svg");r.setAttribute("width",160),r.setAttribute("height",160),r.setAttribute("viewBox","0 0 160 160");const o=document.createElementNS(n,"g");o.setAttribute("transform","translate(80,80)"),r.appendChild(o);const a=document.createElementNS(n,"path");a.setAttribute("data-bind","attr: { transform: _transform }"),a.setAttribute("d","M -34 -34 L -34 -11.25 L -30 -15.25 L -30 -30 L -15.25 -30 L -11.25 -34 L -34 -34 z M 11.25 -34 L 15.25 -30 L 30 -30 L 30 -15.25 L 34 -11.25 L 34 -34 L 11.25 -34 z M -34 11.25 L -34 34 L -11.25 34 L -15.25 30 L -30 30 L -30 15.25 L -34 11.25 z M 34 11.25 L 30 15.25 L 30 30 L 15.25 30 L 11.25 34 L 34 34 L 34 11.25 z"),o.appendChild(a),i.appendChild(r);const s=new SelectionIndicatorViewModel(t,this._element,this._container);this._viewModel=s,knockout$1.applyBindings(this._viewModel,this._element)}function TimelineHighlightRange(e,t,i){this._color=e,this._height=t,this._base=defaultValue(i,0)}function TimelineTrack(e,t,i,n){this.interval=e,this.height=t,this.color=i||new Color(.5,.5,.5,1),this.backgroundColor=n||new Color(0,0,0,0)}SelectionIndicatorViewModel.prototype.update=function(){if(this.showSelection&&defined(this.position)){const e=this.computeScreenSpacePosition(this.position,screenSpacePos);if(defined(e)){const t=this._container,i=t.parentNode.clientWidth,n=t.parentNode.clientHeight,r=this._selectionIndicatorElement.clientWidth,o=.5*r;e.x=Math.min(Math.max(e.x,-r),i+r)-o,e.y=Math.min(Math.max(e.y,-r),n+r)-o,this._screenPositionX=`${Math.floor(e.x+.25)}px`,this._screenPositionY=`${Math.floor(e.y+.25)}px`}else this._screenPositionX=offScreen,this._screenPositionY=offScreen}},SelectionIndicatorViewModel.prototype.animateAppear=function(){this._tweens.addProperty({object:this,property:"_scale",startValue:2,stopValue:1,duration:.8,easingFunction:EasingFunction$1.EXPONENTIAL_OUT})},SelectionIndicatorViewModel.prototype.animateDepart=function(){this._tweens.addProperty({object:this,property:"_scale",startValue:this._scale,stopValue:1.5,duration:.8,easingFunction:EasingFunction$1.EXPONENTIAL_OUT})},Object.defineProperties(SelectionIndicatorViewModel.prototype,{container:{get:function(){return this._container}},selectionIndicatorElement:{get:function(){return this._selectionIndicatorElement}},scene:{get:function(){return this._scene}}}),Object.defineProperties(SelectionIndicator.prototype,{container:{get:function(){return this._container}},viewModel:{get:function(){return this._viewModel}}}),SelectionIndicator.prototype.isDestroyed=function(){return!1},SelectionIndicator.prototype.destroy=function(){const e=this._container;return knockout$1.cleanNode(this._element),e.removeChild(this._element),destroyObject(this)},TimelineHighlightRange.prototype.getHeight=function(){return this._height},TimelineHighlightRange.prototype.getBase=function(){return this._base},TimelineHighlightRange.prototype.getStartTime=function(){return this._start},TimelineHighlightRange.prototype.getStopTime=function(){return this._stop},TimelineHighlightRange.prototype.setRange=function(e,t){this._start=e,this._stop=t},TimelineHighlightRange.prototype.render=function(e){let t="";if(this._start&&this._stop&&this._color){const i=JulianDate.secondsDifference(this._start,e.epochJulian);let n=Math.round(e.timeBarWidth*e.getAlpha(i));const r=JulianDate.secondsDifference(this._stop,e.epochJulian);let o=Math.round(e.timeBarWidth*e.getAlpha(r))-n;n<0&&(o+=n,n=0),n+o>e.timeBarWidth&&(o=e.timeBarWidth-n),o>0&&(t=`<span class="cesium-timeline-highlight" style="left: ${n.toString()}px; width: ${o.toString()}px; bottom: ${this._base.toString()}px; height: ${this._height}px; background-color: ${this._color};"></span>`)}return t},TimelineTrack.prototype.render=function(e,t){const i=this.interval.start,n=this.interval.stop,r=t.startJulian,o=JulianDate.addSeconds(t.startJulian,t.duration,new JulianDate);if(JulianDate.lessThan(i,r)&&JulianDate.greaterThan(n,o))e.fillStyle=this.color.toCssColorString(),e.fillRect(0,t.y,t.timeBarWidth,this.height);else if(JulianDate.lessThanOrEquals(i,o)&&JulianDate.greaterThanOrEquals(n,r)){let r,o,a;for(r=0;r<t.timeBarWidth;++r){const e=JulianDate.addSeconds(t.startJulian,r/t.timeBarWidth*t.duration,new JulianDate);!defined(o)&&JulianDate.greaterThanOrEquals(e,i)?o=r:!defined(a)&&JulianDate.greaterThanOrEquals(e,n)&&(a=r)}e.fillStyle=this.backgroundColor.toCssColorString(),e.fillRect(0,t.y,t.timeBarWidth,this.height),defined(o)&&(defined(a)||(a=t.timeBarWidth),e.fillStyle=this.color.toCssColorString(),e.fillRect(o,t.y,Math.max(a-o,1),this.height))}};let timelineWheelDelta=1e12;const timelineMouseMode={none:0,scrub:1,slide:2,zoom:3,touchOnly:4},timelineTouchMode={none:0,scrub:1,slideZoom:2,singleTap:3,ignore:4},timelineTicScales=[.001,.002,.005,.01,.02,.05,.1,.25,.5,1,2,5,10,15,30,60,120,300,600,900,1800,3600,7200,14400,21600,43200,86400,172800,345600,604800,1296e3,2592e3,5184e3,7776e3,15552e3,31536e3,63072e3,126144e3,15768e4,31536e4,63072e4,126144e4,15768e5,31536e5,63072e5,126144e5,15768e6,31536e6],timelineMonthNames=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function Timeline(e,t){if(!defined(e))throw new DeveloperError("container is required.");if(!defined(t))throw new DeveloperError("clock is required.");const i=(e=getElement(e)).ownerDocument;this.container=e;const n=i.createElement("div");n.className="cesium-timeline-main",e.appendChild(n),this._topDiv=n,this._endJulian=void 0,this._epochJulian=void 0,this._lastXPos=void 0,this._scrubElement=void 0,this._startJulian=void 0,this._timeBarSecondsSpan=void 0,this._clock=t,this._scrubJulian=t.currentTime,this._mainTicSpan=-1,this._mouseMode=timelineMouseMode.none,this._touchMode=timelineTouchMode.none,this._touchState={centerX:0,spanX:0},this._mouseX=0,this._timelineDrag=0,this._timelineDragLocation=void 0,this._lastHeight=void 0,this._lastWidth=void 0,this._topDiv.innerHTML='<div class="cesium-timeline-bar"></div><div class="cesium-timeline-trackContainer"><canvas class="cesium-timeline-tracks" width="10" height="1"></canvas></div><div class="cesium-timeline-needle"></div><span class="cesium-timeline-ruler"></span>',this._timeBarEle=this._topDiv.childNodes[0],this._trackContainer=this._topDiv.childNodes[1],this._trackListEle=this._topDiv.childNodes[1].childNodes[0],this._needleEle=this._topDiv.childNodes[2],this._rulerEle=this._topDiv.childNodes[3],this._context=this._trackListEle.getContext("2d"),this._trackList=[],this._highlightRanges=[],this.zoomTo(t.startTime,t.stopTime),this._onMouseDown=createMouseDownCallback(this),this._onMouseUp=createMouseUpCallback(this),this._onMouseMove=createMouseMoveCallback(this),this._onMouseWheel=createMouseWheelCallback(this),this._onTouchStart=createTouchStartCallback(this),this._onTouchMove=createTouchMoveCallback(this),this._onTouchEnd=createTouchEndCallback(this);const r=this._timeBarEle;i.addEventListener("mouseup",this._onMouseUp,!1),i.addEventListener("mousemove",this._onMouseMove,!1),r.addEventListener("mousedown",this._onMouseDown,!1),r.addEventListener("DOMMouseScroll",this._onMouseWheel,!1),r.addEventListener("mousewheel",this._onMouseWheel,!1),r.addEventListener("touchstart",this._onTouchStart,!1),r.addEventListener("touchmove",this._onTouchMove,!1),r.addEventListener("touchend",this._onTouchEnd,!1),r.addEventListener("touchcancel",this._onTouchEnd,!1),this._topDiv.oncontextmenu=function(){return!1},t.onTick.addEventListener(this.updateFromClock,this),this.updateFromClock()}function twoDigits(e){return e<10?`0${e.toString()}`:e.toString()}function createMouseDownCallback(e){return function(t){e._mouseMode!==timelineMouseMode.touchOnly&&(0===t.button?(e._mouseMode=timelineMouseMode.scrub,e._scrubElement&&(e._scrubElement.style.backgroundPosition="-16px 0"),e._onMouseMove(t)):(e._mouseX=t.clientX,2===t.button?e._mouseMode=timelineMouseMode.zoom:e._mouseMode=timelineMouseMode.slide)),t.preventDefault()}}function createMouseUpCallback(e){return function(t){e._mouseMode=timelineMouseMode.none,e._scrubElement&&(e._scrubElement.style.backgroundPosition="0 0"),e._timelineDrag=0,e._timelineDragLocation=void 0}}function createMouseMoveCallback(e){return function(t){let i;if(e._mouseMode===timelineMouseMode.scrub){t.preventDefault();const i=t.clientX-e._topDiv.getBoundingClientRect().left;i<0?(e._timelineDragLocation=0,e._timelineDrag=-.01*e._timeBarSecondsSpan):i>e._topDiv.clientWidth?(e._timelineDragLocation=e._topDiv.clientWidth,e._timelineDrag=.01*e._timeBarSecondsSpan):(e._timelineDragLocation=void 0,e._setTimeBarTime(i,i*e._timeBarSecondsSpan/e._topDiv.clientWidth))}else if(e._mouseMode===timelineMouseMode.slide){if(i=e._mouseX-t.clientX,e._mouseX=t.clientX,0!==i){const t=i*e._timeBarSecondsSpan/e._topDiv.clientWidth;e.zoomTo(JulianDate.addSeconds(e._startJulian,t,new JulianDate),JulianDate.addSeconds(e._endJulian,t,new JulianDate))}}else e._mouseMode===timelineMouseMode.zoom&&(i=e._mouseX-t.clientX,e._mouseX=t.clientX,0!==i&&e.zoomFrom(Math.pow(1.01,i)))}}function createMouseWheelCallback(e){return function(t){let i=t.wheelDeltaY||t.wheelDelta||-t.detail;timelineWheelDelta=Math.max(Math.min(Math.abs(i),timelineWheelDelta),1),i/=timelineWheelDelta,e.zoomFrom(Math.pow(1.05,-i))}}function createTouchStartCallback(e){return function(t){const i=t.touches.length;let n,r;const o=e._topDiv.getBoundingClientRect().left;t.preventDefault(),e._mouseMode=timelineMouseMode.touchOnly,1===i?(n=JulianDate.secondsDifference(e._scrubJulian,e._startJulian),r=Math.round(n*e._topDiv.clientWidth/e._timeBarSecondsSpan+o),Math.abs(t.touches[0].clientX-r)<50?(e._touchMode=timelineTouchMode.scrub,e._scrubElement&&(e._scrubElement.style.backgroundPosition=1===i?"-16px 0":"0 0")):(e._touchMode=timelineTouchMode.singleTap,e._touchState.centerX=t.touches[0].clientX-o)):2===i?(e._touchMode=timelineTouchMode.slideZoom,e._touchState.centerX=.5*(t.touches[0].clientX+t.touches[1].clientX)-o,e._touchState.spanX=Math.abs(t.touches[0].clientX-t.touches[1].clientX)):e._touchMode=timelineTouchMode.ignore}}function createTouchEndCallback(e){return function(t){const i=t.touches.length,n=e._topDiv.getBoundingClientRect().left;e._touchMode===timelineTouchMode.singleTap?(e._touchMode=timelineTouchMode.scrub,e._onTouchMove(t)):e._touchMode===timelineTouchMode.scrub&&e._onTouchMove(t),e._mouseMode=timelineMouseMode.touchOnly,1!==i?e._touchMode=i>0?timelineTouchMode.ignore:timelineTouchMode.none:e._touchMode===timelineTouchMode.slideZoom&&(e._touchState.centerX=t.touches[0].clientX-n),e._scrubElement&&(e._scrubElement.style.backgroundPosition="0 0")}}function createTouchMoveCallback(e){return function(t){let i,n,r,o,a,s,c=1;const l=e._topDiv.getBoundingClientRect().left;e._touchMode===timelineTouchMode.singleTap&&(e._touchMode=timelineTouchMode.slideZoom),e._mouseMode=timelineMouseMode.touchOnly,e._touchMode===timelineTouchMode.scrub?(t.preventDefault(),1===t.changedTouches.length&&(n=t.changedTouches[0].clientX-l,n>=0&&n<=e._topDiv.clientWidth&&e._setTimeBarTime(n,n*e._timeBarSecondsSpan/e._topDiv.clientWidth))):e._touchMode===timelineTouchMode.slideZoom&&(r=t.touches.length,2===r?(o=.5*(t.touches[0].clientX+t.touches[1].clientX)-l,a=Math.abs(t.touches[0].clientX-t.touches[1].clientX)):1===r&&(o=t.touches[0].clientX-l,a=0),defined(o)&&(a>0&&e._touchState.spanX>0?(c=e._touchState.spanX/a,s=JulianDate.addSeconds(e._startJulian,(e._touchState.centerX*e._timeBarSecondsSpan-o*e._timeBarSecondsSpan*c)/e._topDiv.clientWidth,new JulianDate)):(i=e._touchState.centerX-o,s=JulianDate.addSeconds(e._startJulian,i*e._timeBarSecondsSpan/e._topDiv.clientWidth,new JulianDate)),e.zoomTo(s,JulianDate.addSeconds(s,e._timeBarSecondsSpan*c,new JulianDate)),e._touchState.centerX=o,e._touchState.spanX=a))}}Timeline.prototype.addEventListener=function(e,t,i){this._topDiv.addEventListener(e,t,i)},Timeline.prototype.removeEventListener=function(e,t,i){this._topDiv.removeEventListener(e,t,i)},Timeline.prototype.isDestroyed=function(){return!1},Timeline.prototype.destroy=function(){this._clock.onTick.removeEventListener(this.updateFromClock,this);const e=this.container.ownerDocument;e.removeEventListener("mouseup",this._onMouseUp,!1),e.removeEventListener("mousemove",this._onMouseMove,!1);const t=this._timeBarEle;t.removeEventListener("mousedown",this._onMouseDown,!1),t.removeEventListener("DOMMouseScroll",this._onMouseWheel,!1),t.removeEventListener("mousewheel",this._onMouseWheel,!1),t.removeEventListener("touchstart",this._onTouchStart,!1),t.removeEventListener("touchmove",this._onTouchMove,!1),t.removeEventListener("touchend",this._onTouchEnd,!1),t.removeEventListener("touchcancel",this._onTouchEnd,!1),this.container.removeChild(this._topDiv),destroyObject(this)},Timeline.prototype.addHighlightRange=function(e,t,i){const n=new TimelineHighlightRange(e,t,i);return this._highlightRanges.push(n),this.resize(),n},Timeline.prototype.addTrack=function(e,t,i,n){const r=new TimelineTrack(e,t,i,n);return this._trackList.push(r),this._lastHeight=void 0,this.resize(),r},Timeline.prototype.zoomTo=function(e,t){if(!defined(e))throw new DeveloperError("startTime is required.");if(!defined(t))throw new DeveloperError("stopTime is required");if(JulianDate.lessThanOrEquals(t,e))throw new DeveloperError("Start time must come before end time.");if(this._startJulian=e,this._endJulian=t,this._timeBarSecondsSpan=JulianDate.secondsDifference(t,e),this._clock&&this._clock.clockRange!==ClockRange$1.UNBOUNDED){const e=this._clock.startTime,t=this._clock.stopTime,i=JulianDate.secondsDifference(t,e),n=JulianDate.secondsDifference(e,this._startJulian),r=JulianDate.secondsDifference(t,this._endJulian);this._timeBarSecondsSpan>=i?(this._timeBarSecondsSpan=i,this._startJulian=this._clock.startTime,this._endJulian=this._clock.stopTime):n>0?(this._endJulian=JulianDate.addSeconds(this._endJulian,n,new JulianDate),this._startJulian=e,this._timeBarSecondsSpan=JulianDate.secondsDifference(this._endJulian,this._startJulian)):r<0&&(this._startJulian=JulianDate.addSeconds(this._startJulian,r,new JulianDate),this._endJulian=t,this._timeBarSecondsSpan=JulianDate.secondsDifference(this._endJulian,this._startJulian))}this._makeTics();const i=document.createEvent("Event");i.initEvent("setzoom",!0,!0),i.startJulian=this._startJulian,i.endJulian=this._endJulian,i.epochJulian=this._epochJulian,i.totalSpan=this._timeBarSecondsSpan,i.mainTicSpan=this._mainTicSpan,this._topDiv.dispatchEvent(i)},Timeline.prototype.zoomFrom=function(e){let t=JulianDate.secondsDifference(this._scrubJulian,this._startJulian);e>1||t<0||t>this._timeBarSecondsSpan?t=.5*this._timeBarSecondsSpan:t+=t-.5*this._timeBarSecondsSpan;const i=this._timeBarSecondsSpan-t;this.zoomTo(JulianDate.addSeconds(this._startJulian,t-t*e,new JulianDate),JulianDate.addSeconds(this._endJulian,i*e-i,new JulianDate))},Timeline.prototype.makeLabel=function(e){const t=JulianDate.toGregorianDate(e),i=t.millisecond;let n=" UTC";if(i>0&&this._timeBarSecondsSpan<3600){for(n=Math.floor(i).toString();n.length<3;)n=`0${n}`;n=`.${n}`}return`${timelineMonthNames[t.month-1]} ${t.day} ${t.year} ${twoDigits(t.hour)}:${twoDigits(t.minute)}:${twoDigits(t.second)}${n}`},Timeline.prototype.smallestTicInPixels=7,Timeline.prototype._makeTics=function(){const e=this._timeBarEle,t=JulianDate.secondsDifference(this._scrubJulian,this._startJulian),i=Math.round(t*this._topDiv.clientWidth/this._timeBarSecondsSpan),n=i-8;let r;const o=this;this._needleEle.style.left=`${i.toString()}px`;let a="";const s=.01,c=31536e6,l=1e-10;let d=0,u=this._timeBarSecondsSpan;u<s?(u=s,this._timeBarSecondsSpan=s,this._endJulian=JulianDate.addSeconds(this._startJulian,s,new JulianDate)):u>c&&(u=c,this._timeBarSecondsSpan=c,this._endJulian=JulianDate.addSeconds(this._startJulian,c,new JulianDate));let h=this._timeBarEle.clientWidth;h<10&&(h=10);const p=this._startJulian,f=Math.min(u/h*1e-5,.4);let m;const g=JulianDate.toGregorianDate(p);m=u>31536e4?JulianDate.fromDate(new Date(Date.UTC(100*Math.floor(g.year/100),0))):u>31536e3?JulianDate.fromDate(new Date(Date.UTC(10*Math.floor(g.year/10),0))):u>86400?JulianDate.fromDate(new Date(Date.UTC(g.year,0))):JulianDate.fromDate(new Date(Date.UTC(g.year,g.month,g.day)));const _=JulianDate.secondsDifference(this._startJulian,JulianDate.addSeconds(m,f,new JulianDate));let y=_+u;function C(e){return Math.floor(_/e)*e}function S(e,t){return Math.ceil(e/t+.5)*t}function A(e){return(e-_)/u}function T(e,t){return e-t*Math.round(e/t)}this._epochJulian=m,this._rulerEle.innerHTML=this.makeLabel(JulianDate.addSeconds(this._endJulian,-.01,new JulianDate));let v=this._rulerEle.offsetWidth+20;v<30&&(v=180);const E=d;d-=l;const b={startTime:_,startJulian:p,epochJulian:m,duration:u,timeBarWidth:h,getAlpha:A};this._highlightRanges.forEach((function(e){a+=e.render(b)}));let x=0,D=0,P=0,w=v/h;w>1&&(w=1),w*=this._timeBarSecondsSpan;let I=-1,M=-1;const O=timelineTicScales.length;let R;for(R=0;R<O;++R){const e=timelineTicScales[R];if(++I,x=e,e>w&&e>d)break;M<0&&h*(e/this._timeBarSecondsSpan)>=this.smallestTicInPixels&&(M=I)}if(I>0){for(;I>0;)if(--I,Math.abs(T(x,timelineTicScales[I]))<1e-5){timelineTicScales[I]>=d&&(D=timelineTicScales[I]);break}if(M>=0)for(;M<I;){if(Math.abs(T(D,timelineTicScales[M]))<1e-5&&timelineTicScales[M]>=d){P=timelineTicScales[M];break}++M}}d=E,d>l&&P<1e-5&&Math.abs(d-x)>l&&(P=d,d<=x+l&&(D=0));let B,L=-999999;if(h*(P/this._timeBarSecondsSpan)>=3)for(r=C(P);r<=y;r=S(r,P))a+=`<span class="cesium-timeline-ticTiny" style="left: ${Math.round(h*A(r)).toString()}px;"></span>`;if(h*(D/this._timeBarSecondsSpan)>=3)for(r=C(D);r<=y;r=S(r,D))a+=`<span class="cesium-timeline-ticSub" style="left: ${Math.round(h*A(r)).toString()}px;"></span>`;if(h*(x/this._timeBarSecondsSpan)>=2){this._mainTicSpan=x,y+=x,r=C(x);const e=JulianDate.computeTaiMinusUtc(m);for(;r<=y;){let t=JulianDate.addSeconds(p,r-_,new JulianDate);if(x>2.1){const i=JulianDate.computeTaiMinusUtc(t);Math.abs(i-e)>.1&&(r+=i-e,t=JulianDate.addSeconds(p,r-_,new JulianDate))}const i=Math.round(h*A(r)),n=this.makeLabel(t);this._rulerEle.innerHTML=n,B=this._rulerEle.offsetWidth,B<10&&(B=v);const o=i-(B/2-1);o>L?(L=o+B+5,a+=`<span class="cesium-timeline-ticMain" style="left: ${i.toString()}px;"></span><span class="cesium-timeline-ticLabel" style="left: ${o.toString()}px;">${n}</span>`):a+=`<span class="cesium-timeline-ticSub" style="left: ${i.toString()}px;"></span>`,r=S(r,x)}}else this._mainTicSpan=-1;a+=`<span class="cesium-timeline-icon16" style="left:${n}px;bottom:0;background-position: 0 0;"></span>`,e.innerHTML=a,this._scrubElement=e.lastChild,this._context.clearRect(0,0,this._trackListEle.width,this._trackListEle.height),b.y=0,this._trackList.forEach((function(e){e.render(o._context,b),b.y+=e.height}))},Timeline.prototype.updateFromClock=function(){this._scrubJulian=this._clock.currentTime;const e=this._scrubElement;if(defined(this._scrubElement)){const t=JulianDate.secondsDifference(this._scrubJulian,this._startJulian),i=Math.round(t*this._topDiv.clientWidth/this._timeBarSecondsSpan);this._lastXPos!==i&&(this._lastXPos=i,e.style.left=i-8+"px",this._needleEle.style.left=`${i}px`)}defined(this._timelineDragLocation)&&(this._setTimeBarTime(this._timelineDragLocation,this._timelineDragLocation*this._timeBarSecondsSpan/this._topDiv.clientWidth),this.zoomTo(JulianDate.addSeconds(this._startJulian,this._timelineDrag,new JulianDate),JulianDate.addSeconds(this._endJulian,this._timelineDrag,new JulianDate)))},Timeline.prototype._setTimeBarTime=function(e,t){if(e=Math.round(e),this._scrubJulian=JulianDate.addSeconds(this._startJulian,t,new JulianDate),this._scrubElement){const t=e-8;this._scrubElement.style.left=`${t.toString()}px`,this._needleEle.style.left=`${e.toString()}px`}const i=document.createEvent("Event");i.initEvent("settime",!0,!0),i.clientX=e,i.timeSeconds=t,i.timeJulian=this._scrubJulian,i.clock=this._clock,this._topDiv.dispatchEvent(i)},Timeline.prototype.resize=function(){const e=this.container.clientWidth,t=this.container.clientHeight;if(e===this._lastWidth&&t===this._lastHeight)return;this._trackContainer.style.height=`${t}px`;let i=1;this._trackList.forEach((function(e){i+=e.height})),this._trackListEle.style.height=`${i.toString()}px`,this._trackListEle.width=this._trackListEle.clientWidth,this._trackListEle.height=i,this._makeTics(),this._lastXPos=void 0,this._lastWidth=e,this._lastHeight=t};var media={webm:"data:video/webm;base64,GkXfowEAAAAAAAAfQoaBAUL3gQFC8oEEQvOBCEKChHdlYm1Ch4EEQoWBAhhTgGcBAAAAAAAVkhFNm3RALE27i1OrhBVJqWZTrIHfTbuMU6uEFlSua1OsggEwTbuMU6uEHFO7a1OsghV17AEAAAAAAACkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAVSalmAQAAAAAAAEUq17GDD0JATYCNTGF2ZjU1LjMzLjEwMFdBjUxhdmY1NS4zMy4xMDBzpJBlrrXf3DCDVB8KcgbMpcr+RImIQJBgAAAAAAAWVK5rAQAAAAAAD++uAQAAAAAAADLXgQFzxYEBnIEAIrWcg3VuZIaFVl9WUDiDgQEj44OEAmJaAOABAAAAAAAABrCBsLqBkK4BAAAAAAAPq9eBAnPFgQKcgQAitZyDdW5khohBX1ZPUkJJU4OBAuEBAAAAAAAAEZ+BArWIQOdwAAAAAABiZIEgY6JPbwIeVgF2b3JiaXMAAAAAAoC7AAAAAAAAgLUBAAAAAAC4AQN2b3JiaXMtAAAAWGlwaC5PcmcgbGliVm9yYmlzIEkgMjAxMDExMDEgKFNjaGF1ZmVudWdnZXQpAQAAABUAAABlbmNvZGVyPUxhdmM1NS41Mi4xMDIBBXZvcmJpcyVCQ1YBAEAAACRzGCpGpXMWhBAaQlAZ4xxCzmvsGUJMEYIcMkxbyyVzkCGkoEKIWyiB0JBVAABAAACHQXgUhIpBCCGEJT1YkoMnPQghhIg5eBSEaUEIIYQQQgghhBBCCCGERTlokoMnQQgdhOMwOAyD5Tj4HIRFOVgQgydB6CCED0K4moOsOQghhCQ1SFCDBjnoHITCLCiKgsQwuBaEBDUojILkMMjUgwtCiJqDSTX4GoRnQXgWhGlBCCGEJEFIkIMGQcgYhEZBWJKDBjm4FITLQagahCo5CB+EIDRkFQCQAACgoiiKoigKEBqyCgDIAAAQQFEUx3EcyZEcybEcCwgNWQUAAAEACAAAoEiKpEiO5EiSJFmSJVmSJVmS5omqLMuyLMuyLMsyEBqyCgBIAABQUQxFcRQHCA1ZBQBkAAAIoDiKpViKpWiK54iOCISGrAIAgAAABAAAEDRDUzxHlETPVFXXtm3btm3btm3btm3btm1blmUZCA1ZBQBAAAAQ0mlmqQaIMAMZBkJDVgEACAAAgBGKMMSA0JBVAABAAACAGEoOogmtOd+c46BZDppKsTkdnEi1eZKbirk555xzzsnmnDHOOeecopxZDJoJrTnnnMSgWQqaCa0555wnsXnQmiqtOeeccc7pYJwRxjnnnCateZCajbU555wFrWmOmkuxOeecSLl5UptLtTnnnHPOOeecc84555zqxekcnBPOOeecqL25lpvQxTnnnE/G6d6cEM4555xzzjnnnHPOOeecIDRkFQAABABAEIaNYdwpCNLnaCBGEWIaMulB9+gwCRqDnELq0ehopJQ6CCWVcVJKJwgNWQUAAAIAQAghhRRSSCGFFFJIIYUUYoghhhhyyimnoIJKKqmooowyyyyzzDLLLLPMOuyssw47DDHEEEMrrcRSU2011lhr7jnnmoO0VlprrbVSSimllFIKQkNWAQAgAAAEQgYZZJBRSCGFFGKIKaeccgoqqIDQkFUAACAAgAAAAABP8hzRER3RER3RER3RER3R8RzPESVREiVREi3TMjXTU0VVdWXXlnVZt31b2IVd933d933d+HVhWJZlWZZlWZZlWZZlWZZlWZYgNGQVAAACAAAghBBCSCGFFFJIKcYYc8w56CSUEAgNWQUAAAIACAAAAHAUR3EcyZEcSbIkS9IkzdIsT/M0TxM9URRF0zRV0RVdUTdtUTZl0zVdUzZdVVZtV5ZtW7Z125dl2/d93/d93/d93/d93/d9XQdCQ1YBABIAADqSIymSIimS4ziOJElAaMgqAEAGAEAAAIriKI7jOJIkSZIlaZJneZaomZrpmZ4qqkBoyCoAABAAQAAAAAAAAIqmeIqpeIqoeI7oiJJomZaoqZoryqbsuq7ruq7ruq7ruq7ruq7ruq7ruq7ruq7ruq7ruq7ruq7ruq4LhIasAgAkAAB0JEdyJEdSJEVSJEdygNCQVQCADACAAAAcwzEkRXIsy9I0T/M0TxM90RM901NFV3SB0JBVAAAgAIAAAAAAAAAMybAUy9EcTRIl1VItVVMt1VJF1VNVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVN0zRNEwgNWQkAkAEAkBBTLS3GmgmLJGLSaqugYwxS7KWxSCpntbfKMYUYtV4ah5RREHupJGOKQcwtpNApJq3WVEKFFKSYYyoVUg5SIDRkhQAQmgHgcBxAsixAsiwAAAAAAAAAkDQN0DwPsDQPAAAAAAAAACRNAyxPAzTPAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABA0jRA8zxA8zwAAAAAAAAA0DwP8DwR8EQRAAAAAAAAACzPAzTRAzxRBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABA0jRA8zxA8zwAAAAAAAAAsDwP8EQR0DwRAAAAAAAAACzPAzxRBDzRAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAEOAAABBgIRQasiIAiBMAcEgSJAmSBM0DSJYFTYOmwTQBkmVB06BpME0AAAAAAAAAAAAAJE2DpkHTIIoASdOgadA0iCIAAAAAAAAAAAAAkqZB06BpEEWApGnQNGgaRBEAAAAAAAAAAAAAzzQhihBFmCbAM02IIkQRpgkAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAGHAAAAgwoQwUGrIiAIgTAHA4imUBAIDjOJYFAACO41gWAABYliWKAABgWZooAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAYcAAACDChDBQashIAiAIAcCiKZQHHsSzgOJYFJMmyAJYF0DyApgFEEQAIAAAocAAACLBBU2JxgEJDVgIAUQAABsWxLE0TRZKkaZoniiRJ0zxPFGma53meacLzPM80IYqiaJoQRVE0TZimaaoqME1VFQAAUOAAABBgg6bE4gCFhqwEAEICAByKYlma5nmeJ4qmqZokSdM8TxRF0TRNU1VJkqZ5niiKommapqqyLE3zPFEURdNUVVWFpnmeKIqiaaqq6sLzPE8URdE0VdV14XmeJ4qiaJqq6roQRVE0TdNUTVV1XSCKpmmaqqqqrgtETxRNU1Vd13WB54miaaqqq7ouEE3TVFVVdV1ZBpimaaqq68oyQFVV1XVdV5YBqqqqruu6sgxQVdd1XVmWZQCu67qyLMsCAAAOHAAAAoygk4wqi7DRhAsPQKEhKwKAKAAAwBimFFPKMCYhpBAaxiSEFEImJaXSUqogpFJSKRWEVEoqJaOUUmopVRBSKamUCkIqJZVSAADYgQMA2IGFUGjISgAgDwCAMEYpxhhzTiKkFGPOOScRUoox55yTSjHmnHPOSSkZc8w556SUzjnnnHNSSuacc845KaVzzjnnnJRSSuecc05KKSWEzkEnpZTSOeecEwAAVOAAABBgo8jmBCNBhYasBABSAQAMjmNZmuZ5omialiRpmud5niiapiZJmuZ5nieKqsnzPE8URdE0VZXneZ4oiqJpqirXFUXTNE1VVV2yLIqmaZqq6rowTdNUVdd1XZimaaqq67oubFtVVdV1ZRm2raqq6rqyDFzXdWXZloEsu67s2rIAAPAEBwCgAhtWRzgpGgssNGQlAJABAEAYg5BCCCFlEEIKIYSUUggJAAAYcAAACDChDBQashIASAUAAIyx1lprrbXWQGettdZaa62AzFprrbXWWmuttdZaa6211lJrrbXWWmuttdZaa6211lprrbXWWmuttdZaa6211lprrbXWWmuttdZaa6211lprrbXWWmstpZRSSimllFJKKaWUUkoppZRSSgUA+lU4APg/2LA6wknRWGChISsBgHAAAMAYpRhzDEIppVQIMeacdFRai7FCiDHnJKTUWmzFc85BKCGV1mIsnnMOQikpxVZjUSmEUlJKLbZYi0qho5JSSq3VWIwxqaTWWoutxmKMSSm01FqLMRYjbE2ptdhqq7EYY2sqLbQYY4zFCF9kbC2m2moNxggjWywt1VprMMYY3VuLpbaaizE++NpSLDHWXAAAd4MDAESCjTOsJJ0VjgYXGrISAAgJACAQUooxxhhzzjnnpFKMOeaccw5CCKFUijHGnHMOQgghlIwx5pxzEEIIIYRSSsaccxBCCCGEkFLqnHMQQgghhBBKKZ1zDkIIIYQQQimlgxBCCCGEEEoopaQUQgghhBBCCKmklEIIIYRSQighlZRSCCGEEEIpJaSUUgohhFJCCKGElFJKKYUQQgillJJSSimlEkoJJYQSUikppRRKCCGUUkpKKaVUSgmhhBJKKSWllFJKIYQQSikFAAAcOAAABBhBJxlVFmGjCRcegEJDVgIAZAAAkKKUUiktRYIipRikGEtGFXNQWoqocgxSzalSziDmJJaIMYSUk1Qy5hRCDELqHHVMKQYtlRhCxhik2HJLoXMOAAAAQQCAgJAAAAMEBTMAwOAA4XMQdAIERxsAgCBEZohEw0JweFAJEBFTAUBigkIuAFRYXKRdXECXAS7o4q4DIQQhCEEsDqCABByccMMTb3jCDU7QKSp1IAAAAAAADADwAACQXAAREdHMYWRobHB0eHyAhIiMkAgAAAAAABcAfAAAJCVAREQ0cxgZGhscHR4fICEiIyQBAIAAAgAAAAAggAAEBAQAAAAAAAIAAAAEBB9DtnUBAAAAAAAEPueBAKOFggAAgACjzoEAA4BwBwCdASqwAJAAAEcIhYWIhYSIAgIABhwJ7kPfbJyHvtk5D32ych77ZOQ99snIe+2TkPfbJyHvtk5D32ych77ZOQ99YAD+/6tQgKOFggADgAqjhYIAD4AOo4WCACSADqOZgQArADECAAEQEAAYABhYL/QACIBDmAYAAKOFggA6gA6jhYIAT4AOo5mBAFMAMQIAARAQABgAGFgv9AAIgEOYBgAAo4WCAGSADqOFggB6gA6jmYEAewAxAgABEBAAGAAYWC/0AAiAQ5gGAACjhYIAj4AOo5mBAKMAMQIAARAQABgAGFgv9AAIgEOYBgAAo4WCAKSADqOFggC6gA6jmYEAywAxAgABEBAAGAAYWC/0AAiAQ5gGAACjhYIAz4AOo4WCAOSADqOZgQDzADECAAEQEAAYABhYL/QACIBDmAYAAKOFggD6gA6jhYIBD4AOo5iBARsAEQIAARAQFGAAYWC/0AAiAQ5gGACjhYIBJIAOo4WCATqADqOZgQFDADECAAEQEAAYABhYL/QACIBDmAYAAKOFggFPgA6jhYIBZIAOo5mBAWsAMQIAARAQABgAGFgv9AAIgEOYBgAAo4WCAXqADqOFggGPgA6jmYEBkwAxAgABEBAAGAAYWC/0AAiAQ5gGAACjhYIBpIAOo4WCAbqADqOZgQG7ADECAAEQEAAYABhYL/QACIBDmAYAAKOFggHPgA6jmYEB4wAxAgABEBAAGAAYWC/0AAiAQ5gGAACjhYIB5IAOo4WCAfqADqOZgQILADECAAEQEAAYABhYL/QACIBDmAYAAKOFggIPgA6jhYICJIAOo5mBAjMAMQIAARAQABgAGFgv9AAIgEOYBgAAo4WCAjqADqOFggJPgA6jmYECWwAxAgABEBAAGAAYWC/0AAiAQ5gGAACjhYICZIAOo4WCAnqADqOZgQKDADECAAEQEAAYABhYL/QACIBDmAYAAKOFggKPgA6jhYICpIAOo5mBAqsAMQIAARAQABgAGFgv9AAIgEOYBgAAo4WCArqADqOFggLPgA6jmIEC0wARAgABEBAUYABhYL/QACIBDmAYAKOFggLkgA6jhYIC+oAOo5mBAvsAMQIAARAQABgAGFgv9AAIgEOYBgAAo4WCAw+ADqOZgQMjADECAAEQEAAYABhYL/QACIBDmAYAAKOFggMkgA6jhYIDOoAOo5mBA0sAMQIAARAQABgAGFgv9AAIgEOYBgAAo4WCA0+ADqOFggNkgA6jmYEDcwAxAgABEBAAGAAYWC/0AAiAQ5gGAACjhYIDeoAOo4WCA4+ADqOZgQObADECAAEQEAAYABhYL/QACIBDmAYAAKOFggOkgA6jhYIDuoAOo5mBA8MAMQIAARAQABgAGFgv9AAIgEOYBgAAo4WCA8+ADqOFggPkgA6jhYID+oAOo4WCBA+ADhxTu2sBAAAAAAAAEbuPs4EDt4r3gQHxghEr8IEK",mp4:"data:video/mp4;base64,AAAAHGZ0eXBNNFYgAAACAGlzb21pc28yYXZjMQAAAAhmcmVlAAAGF21kYXTeBAAAbGliZmFhYyAxLjI4AABCAJMgBDIARwAAArEGBf//rdxF6b3m2Ui3lizYINkj7u94MjY0IC0gY29yZSAxNDIgcjIgOTU2YzhkOCAtIEguMjY0L01QRUctNCBBVkMgY29kZWMgLSBDb3B5bGVmdCAyMDAzLTIwMTQgLSBodHRwOi8vd3d3LnZpZGVvbGFuLm9yZy94MjY0Lmh0bWwgLSBvcHRpb25zOiBjYWJhYz0wIHJlZj0zIGRlYmxvY2s9MTowOjAgYW5hbHlzZT0weDE6MHgxMTEgbWU9aGV4IHN1Ym1lPTcgcHN5PTEgcHN5X3JkPTEuMDA6MC4wMCBtaXhlZF9yZWY9MSBtZV9yYW5nZT0xNiBjaHJvbWFfbWU9MSB0cmVsbGlzPTEgOHg4ZGN0PTAgY3FtPTAgZGVhZHpvbmU9MjEsMTEgZmFzdF9wc2tpcD0xIGNocm9tYV9xcF9vZmZzZXQ9LTIgdGhyZWFkcz02IGxvb2thaGVhZF90aHJlYWRzPTEgc2xpY2VkX3RocmVhZHM9MCBucj0wIGRlY2ltYXRlPTEgaW50ZXJsYWNlZD0wIGJsdXJheV9jb21wYXQ9MCBjb25zdHJhaW5lZF9pbnRyYT0wIGJmcmFtZXM9MCB3ZWlnaHRwPTAga2V5aW50PTI1MCBrZXlpbnRfbWluPTI1IHNjZW5lY3V0PTQwIGludHJhX3JlZnJlc2g9MCByY19sb29rYWhlYWQ9NDAgcmM9Y3JmIG1idHJlZT0xIGNyZj0yMy4wIHFjb21wPTAuNjAgcXBtaW49MCBxcG1heD02OSBxcHN0ZXA9NCB2YnZfbWF4cmF0ZT03NjggdmJ2X2J1ZnNpemU9MzAwMCBjcmZfbWF4PTAuMCBuYWxfaHJkPW5vbmUgZmlsbGVyPTAgaXBfcmF0aW89MS40MCBhcT0xOjEuMDAAgAAAAFZliIQL8mKAAKvMnJycnJycnJycnXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXiEASZACGQAjgCEASZACGQAjgAAAAAdBmjgX4GSAIQBJkAIZACOAAAAAB0GaVAX4GSAhAEmQAhkAI4AhAEmQAhkAI4AAAAAGQZpgL8DJIQBJkAIZACOAIQBJkAIZACOAAAAABkGagC/AySEASZACGQAjgAAAAAZBmqAvwMkhAEmQAhkAI4AhAEmQAhkAI4AAAAAGQZrAL8DJIQBJkAIZACOAAAAABkGa4C/AySEASZACGQAjgCEASZACGQAjgAAAAAZBmwAvwMkhAEmQAhkAI4AAAAAGQZsgL8DJIQBJkAIZACOAIQBJkAIZACOAAAAABkGbQC/AySEASZACGQAjgCEASZACGQAjgAAAAAZBm2AvwMkhAEmQAhkAI4AAAAAGQZuAL8DJIQBJkAIZACOAIQBJkAIZACOAAAAABkGboC/AySEASZACGQAjgAAAAAZBm8AvwMkhAEmQAhkAI4AhAEmQAhkAI4AAAAAGQZvgL8DJIQBJkAIZACOAAAAABkGaAC/AySEASZACGQAjgCEASZACGQAjgAAAAAZBmiAvwMkhAEmQAhkAI4AhAEmQAhkAI4AAAAAGQZpAL8DJIQBJkAIZACOAAAAABkGaYC/AySEASZACGQAjgCEASZACGQAjgAAAAAZBmoAvwMkhAEmQAhkAI4AAAAAGQZqgL8DJIQBJkAIZACOAIQBJkAIZACOAAAAABkGawC/AySEASZACGQAjgAAAAAZBmuAvwMkhAEmQAhkAI4AhAEmQAhkAI4AAAAAGQZsAL8DJIQBJkAIZACOAAAAABkGbIC/AySEASZACGQAjgCEASZACGQAjgAAAAAZBm0AvwMkhAEmQAhkAI4AhAEmQAhkAI4AAAAAGQZtgL8DJIQBJkAIZACOAAAAABkGbgCvAySEASZACGQAjgCEASZACGQAjgAAAAAZBm6AnwMkhAEmQAhkAI4AhAEmQAhkAI4AhAEmQAhkAI4AhAEmQAhkAI4AAAAhubW9vdgAAAGxtdmhkAAAAAAAAAAAAAAAAAAAD6AAABDcAAQAAAQAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAzB0cmFrAAAAXHRraGQAAAADAAAAAAAAAAAAAAABAAAAAAAAA+kAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAABAAAAAALAAAACQAAAAAAAkZWR0cwAAABxlbHN0AAAAAAAAAAEAAAPpAAAAAAABAAAAAAKobWRpYQAAACBtZGhkAAAAAAAAAAAAAAAAAAB1MAAAdU5VxAAAAAAALWhkbHIAAAAAAAAAAHZpZGUAAAAAAAAAAAAAAABWaWRlb0hhbmRsZXIAAAACU21pbmYAAAAUdm1oZAAAAAEAAAAAAAAAAAAAACRkaW5mAAAAHGRyZWYAAAAAAAAAAQAAAAx1cmwgAAAAAQAAAhNzdGJsAAAAr3N0c2QAAAAAAAAAAQAAAJ9hdmMxAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAALAAkABIAAAASAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGP//AAAALWF2Y0MBQsAN/+EAFWdCwA3ZAsTsBEAAAPpAADqYA8UKkgEABWjLg8sgAAAAHHV1aWRraEDyXyRPxbo5pRvPAyPzAAAAAAAAABhzdHRzAAAAAAAAAAEAAAAeAAAD6QAAABRzdHNzAAAAAAAAAAEAAAABAAAAHHN0c2MAAAAAAAAAAQAAAAEAAAABAAAAAQAAAIxzdHN6AAAAAAAAAAAAAAAeAAADDwAAAAsAAAALAAAACgAAAAoAAAAKAAAACgAAAAoAAAAKAAAACgAAAAoAAAAKAAAACgAAAAoAAAAKAAAACgAAAAoAAAAKAAAACgAAAAoAAAAKAAAACgAAAAoAAAAKAAAACgAAAAoAAAAKAAAACgAAAAoAAAAKAAAAiHN0Y28AAAAAAAAAHgAAAEYAAANnAAADewAAA5gAAAO0AAADxwAAA+MAAAP2AAAEEgAABCUAAARBAAAEXQAABHAAAASMAAAEnwAABLsAAATOAAAE6gAABQYAAAUZAAAFNQAABUgAAAVkAAAFdwAABZMAAAWmAAAFwgAABd4AAAXxAAAGDQAABGh0cmFrAAAAXHRraGQAAAADAAAAAAAAAAAAAAACAAAAAAAABDcAAAAAAAAAAAAAAAEBAAAAAAEAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAkZWR0cwAAABxlbHN0AAAAAAAAAAEAAAQkAAADcAABAAAAAAPgbWRpYQAAACBtZGhkAAAAAAAAAAAAAAAAAAC7gAAAykBVxAAAAAAALWhkbHIAAAAAAAAAAHNvdW4AAAAAAAAAAAAAAABTb3VuZEhhbmRsZXIAAAADi21pbmYAAAAQc21oZAAAAAAAAAAAAAAAJGRpbmYAAAAcZHJlZgAAAAAAAAABAAAADHVybCAAAAABAAADT3N0YmwAAABnc3RzZAAAAAAAAAABAAAAV21wNGEAAAAAAAAAAQAAAAAAAAAAAAIAEAAAAAC7gAAAAAAAM2VzZHMAAAAAA4CAgCIAAgAEgICAFEAVBbjYAAu4AAAADcoFgICAAhGQBoCAgAECAAAAIHN0dHMAAAAAAAAAAgAAADIAAAQAAAAAAQAAAkAAAAFUc3RzYwAAAAAAAAAbAAAAAQAAAAEAAAABAAAAAgAAAAIAAAABAAAAAwAAAAEAAAABAAAABAAAAAIAAAABAAAABgAAAAEAAAABAAAABwAAAAIAAAABAAAACAAAAAEAAAABAAAACQAAAAIAAAABAAAACgAAAAEAAAABAAAACwAAAAIAAAABAAAADQAAAAEAAAABAAAADgAAAAIAAAABAAAADwAAAAEAAAABAAAAEAAAAAIAAAABAAAAEQAAAAEAAAABAAAAEgAAAAIAAAABAAAAFAAAAAEAAAABAAAAFQAAAAIAAAABAAAAFgAAAAEAAAABAAAAFwAAAAIAAAABAAAAGAAAAAEAAAABAAAAGQAAAAIAAAABAAAAGgAAAAEAAAABAAAAGwAAAAIAAAABAAAAHQAAAAEAAAABAAAAHgAAAAIAAAABAAAAHwAAAAQAAAABAAAA4HN0c3oAAAAAAAAAAAAAADMAAAAaAAAACQAAAAkAAAAJAAAACQAAAAkAAAAJAAAACQAAAAkAAAAJAAAACQAAAAkAAAAJAAAACQAAAAkAAAAJAAAACQAAAAkAAAAJAAAACQAAAAkAAAAJAAAACQAAAAkAAAAJAAAACQAAAAkAAAAJAAAACQAAAAkAAAAJAAAACQAAAAkAAAAJAAAACQAAAAkAAAAJAAAACQAAAAkAAAAJAAAACQAAAAkAAAAJAAAACQAAAAkAAAAJAAAACQAAAAkAAAAJAAAACQAAAAkAAACMc3RjbwAAAAAAAAAfAAAALAAAA1UAAANyAAADhgAAA6IAAAO+AAAD0QAAA+0AAAQAAAAEHAAABC8AAARLAAAEZwAABHoAAASWAAAEqQAABMUAAATYAAAE9AAABRAAAAUjAAAFPwAABVIAAAVuAAAFgQAABZ0AAAWwAAAFzAAABegAAAX7AAAGFwAAAGJ1ZHRhAAAAWm1ldGEAAAAAAAAAIWhkbHIAAAAAAAAAAG1kaXJhcHBsAAAAAAAAAAAAAAAALWlsc3QAAAAlqXRvbwAAAB1kYXRhAAAAAQAAAABMYXZmNTUuMzMuMTAw"};const{webm:webm,mp4:mp4}=media,oldIOS=()=>"undefined"!=typeof navigator&&parseFloat((""+(/CPU.*OS ([0-9_]{3,4})[0-9_]{0,1}|(CPU like).*AppleWebKit.*Mobile/i.exec(navigator.userAgent)||[0,""])[1]).replace("undefined","3_2").replace("_",".").replace("_",""))<10&&!window.MSStream,nativeWakeLock=()=>"wakeLock"in navigator;class NoSleep{constructor(){if(this.enabled=!1,nativeWakeLock()){this._wakeLock=null;const e=()=>{null!==this._wakeLock&&"visible"===document.visibilityState&&this.enable()};document.addEventListener("visibilitychange",e),document.addEventListener("fullscreenchange",e)}else oldIOS()?this.noSleepTimer=null:(this.noSleepVideo=document.createElement("video"),this.noSleepVideo.setAttribute("title","No Sleep"),this.noSleepVideo.setAttribute("playsinline",""),this._addSourceToVideo(this.noSleepVideo,"webm",webm),this._addSourceToVideo(this.noSleepVideo,"mp4",mp4),this.noSleepVideo.addEventListener("loadedmetadata",(()=>{this.noSleepVideo.duration<=1?this.noSleepVideo.setAttribute("loop",""):this.noSleepVideo.addEventListener("timeupdate",(()=>{this.noSleepVideo.currentTime>.5&&(this.noSleepVideo.currentTime=Math.random())}))})))}_addSourceToVideo(e,t,i){var n=document.createElement("source");n.src=i,n.type=`video/${t}`,e.appendChild(n)}get isEnabled(){return this.enabled}enable(){if(nativeWakeLock())return navigator.wakeLock.request("screen").then((e=>{this._wakeLock=e,this.enabled=!0,this._wakeLock.addEventListener("release",(()=>{}))})).catch((e=>{throw this.enabled=!1,e}));if(oldIOS())return this.disable(),this.noSleepTimer=window.setInterval((()=>{document.hidden||(window.location.href=window.location.href.split("#")[0],window.setTimeout(window.stop,0))}),15e3),this.enabled=!0,Promise.resolve();return this.noSleepVideo.play().then((e=>(this.enabled=!0,e))).catch((e=>{throw this.enabled=!1,e}))}disable(){nativeWakeLock()?(this._wakeLock&&this._wakeLock.release(),this._wakeLock=null):oldIOS()?this.noSleepTimer&&(window.clearInterval(this.noSleepTimer),this.noSleepTimer=null):this.noSleepVideo.pause(),this.enabled=!1}}var src=NoSleep;function lockScreen(e){let t=!1;const i=window.screen;return defined(i)&&(defined(i.lockOrientation)?t=i.lockOrientation(e):defined(i.mozLockOrientation)?t=i.mozLockOrientation(e):defined(i.msLockOrientation)?t=i.msLockOrientation(e):defined(i.orientation&&i.orientation.lock)&&(t=i.orientation.lock(e))),t}function unlockScreen(){const e=window.screen;defined(e)&&(defined(e.unlockOrientation)?e.unlockOrientation():defined(e.mozUnlockOrientation)?e.mozUnlockOrientation():defined(e.msUnlockOrientation)?e.msUnlockOrientation():defined(e.orientation&&e.orientation.unlock)&&e.orientation.unlock())}function toggleVR(e,t,i,n){n()||(i()?(t.useWebVR=!1,e._locked&&(unlockScreen(),e._locked=!1),e._noSleep.disable(),Fullscreen$1.exitFullscreen(),i(!1)):(Fullscreen$1.fullscreen||Fullscreen$1.requestFullscreen(e._vrElement),e._noSleep.enable(),e._locked||(e._locked=lockScreen("landscape")),t.useWebVR=!0,i(!0)))}function VRButtonViewModel(e,t){if(!defined(e))throw new DeveloperError("scene is required.");const i=this,n=knockout$1.observable(Fullscreen$1.enabled),r=knockout$1.observable(!1);this.isVRMode=void 0,knockout$1.defineProperty(this,"isVRMode",{get:function(){return r()}}),this.isVREnabled=void 0,knockout$1.defineProperty(this,"isVREnabled",{get:function(){return n()},set:function(e){n(e&&Fullscreen$1.enabled)}}),this.tooltip=void 0,knockout$1.defineProperty(this,"tooltip",(function(){return n()?r()?"Exit VR mode":"Enter VR mode":"VR mode is unavailable"}));const o=knockout$1.observable(!1);this._isOrthographic=void 0,knockout$1.defineProperty(this,"_isOrthographic",{get:function(){return o()}}),this._eventHelper=new EventHelper,this._eventHelper.add(e.preRender,(function(){o(e.camera.frustum instanceof OrthographicFrustum)})),this._locked=!1,this._noSleep=new src,this._command=createCommand((function(){toggleVR(i,e,r,o)}),knockout$1.getObservable(this,"isVREnabled")),this._vrElement=defaultValue(getElement(t),document.body),this._callback=function(){!Fullscreen$1.fullscreen&&r()&&(e.useWebVR=!1,i._locked&&(unlockScreen(),i._locked=!1),i._noSleep.disable(),r(!1))},document.addEventListener(Fullscreen$1.changeEventName,this._callback)}Object.defineProperties(VRButtonViewModel.prototype,{vrElement:{get:function(){return this._vrElement},set:function(e){if(!(e instanceof Element))throw new DeveloperError("value must be a valid Element.");this._vrElement=e}},command:{get:function(){return this._command}}}),VRButtonViewModel.prototype.isDestroyed=function(){return!1},VRButtonViewModel.prototype.destroy=function(){this._eventHelper.removeAll(),document.removeEventListener(Fullscreen$1.changeEventName,this._callback),destroyObject(this)};const enterVRPath="M 5.3125 6.375 C 4.008126 6.375 2.96875 7.4141499 2.96875 8.71875 L 2.96875 19.5 C 2.96875 20.8043 4.008126 21.875 5.3125 21.875 L 13.65625 21.875 C 13.71832 20.0547 14.845166 18.59375 16.21875 18.59375 C 17.592088 18.59375 18.71881 20.0552 18.78125 21.875 L 27.09375 21.875 C 28.398125 21.875 29.4375 20.8043 29.4375 19.5 L 29.4375 8.71875 C 29.4375 7.4141499 28.398125 6.375 27.09375 6.375 L 5.3125 6.375 z M 9.625 10.4375 C 11.55989 10.4375 13.125 12.03385 13.125 13.96875 C 13.125 15.90365 11.55989 17.46875 9.625 17.46875 C 7.69011 17.46875 6.125 15.90365 6.125 13.96875 C 6.125 12.03385 7.69011 10.4375 9.625 10.4375 z M 22.46875 10.4375 C 24.40364 10.4375 25.96875 12.03385 25.96875 13.96875 C 25.96875 15.90365 24.40364 17.46875 22.46875 17.46875 C 20.53386 17.46875 18.96875 15.90365 18.96875 13.96875 C 18.96875 12.03385 20.53386 10.4375 22.46875 10.4375 z",exitVRPath="M 25.770585,2.4552065 C 15.72282,13.962707 10.699956,19.704407 8.1768352,22.580207 c -1.261561,1.4379 -1.902282,2.1427 -2.21875,2.5 -0.141624,0.1599 -0.208984,0.2355 -0.25,0.2813 l 0.6875,0.75 c 10e-5,-10e-5 0.679191,0.727 0.6875,0.7187 0.01662,-0.016 0.02451,-0.024 0.03125,-0.031 0.01348,-0.014 0.04013,-0.038 0.0625,-0.062 0.04474,-0.05 0.120921,-0.1315 0.28125,-0.3126 0.320657,-0.3619 0.956139,-1.0921 2.2187499,-2.5312 2.5252219,-2.8781 7.5454589,-8.6169 17.5937499,-20.1250005 l -1.5,-1.3125 z m -20.5624998,3.9063 c -1.304375,0 -2.34375,1.0391 -2.34375,2.3437 l 0,10.8125005 c 0,1.3043 1.039375,2.375 2.34375,2.375 l 2.25,0 c 1.9518039,-2.2246 7.4710958,-8.5584 13.5624998,-15.5312005 l -15.8124998,0 z m 21.1249998,0 c -1.855467,2.1245 -2.114296,2.4005 -3.59375,4.0936995 1.767282,0.1815 3.15625,1.685301 3.15625,3.500001 0,1.9349 -1.56511,3.5 -3.5,3.5 -1.658043,0 -3.043426,-1.1411 -3.40625,-2.6875 -1.089617,1.2461 -2.647139,2.9988 -3.46875,3.9375 0.191501,-0.062 0.388502,-0.094 0.59375,-0.094 1.373338,0 2.50006,1.4614 2.5625,3.2812 l 8.3125,0 c 1.304375,0 2.34375,-1.0707 2.34375,-2.375 l 0,-10.8125005 c 0,-1.3046 -1.039375,-2.3437 -2.34375,-2.3437 l -0.65625,0 z M 9.5518351,10.423906 c 1.9348899,0 3.4999999,1.596401 3.4999999,3.531301 0,1.9349 -1.56511,3.5 -3.4999999,3.5 -1.9348899,0 -3.4999999,-1.5651 -3.4999999,-3.5 0,-1.9349 1.56511,-3.531301 3.4999999,-3.531301 z m 4.2187499,10.312601 c -0.206517,0.2356 -0.844218,0.9428 -1.03125,1.1562 l 0.8125,0 c 0.01392,-0.4081 0.107026,-0.7968 0.21875,-1.1562 z";function VRButton(e,t,i){if(!defined(e))throw new DeveloperError("container is required.");if(!defined(t))throw new DeveloperError("scene is required.");e=getElement(e);const n=new VRButtonViewModel(t,i);n._exitVRPath=exitVRPath,n._enterVRPath=enterVRPath;const r=document.createElement("button");r.type="button",r.className="cesium-button cesium-vrButton",r.setAttribute("data-bind",'css: { "cesium-button-disabled" : _isOrthographic }, attr: { title: tooltip },click: command,enable: isVREnabled,cesiumSvgPath: { path: isVRMode ? _exitVRPath : _enterVRPath, width: 32, height: 32 }'),e.appendChild(r),knockout$1.applyBindings(n,r),this._container=e,this._viewModel=n,this._element=r}Object.defineProperties(VRButton.prototype,{container:{get:function(){return this._container}},viewModel:{get:function(){return this._viewModel}}}),VRButton.prototype.isDestroyed=function(){return!1},VRButton.prototype.destroy=function(){return this._viewModel.destroy(),knockout$1.cleanNode(this._element),this._container.removeChild(this._element),destroyObject(this)};const boundingSphereScratch=new BoundingSphere;function onTimelineScrubfunction(e){const t=e.clock;t.currentTime=e.timeJulian,t.shouldAnimate=!1}function getCesium3DTileFeatureDescription(e){const t=e.getPropertyIds();let i="";return t.forEach((function(t){const n=e.getProperty(t);defined(n)&&(i+=`<tr><th>${t}</th><td>${n}</td></tr>`)})),i.length>0&&(i=`<table class="cesium-infoBox-defaultTable"><tbody>${i}</tbody></table>`),i}function getCesium3DTileFeatureName(e){let t;const i=[],n=e.getPropertyIds();for(t=0;t<n.length;t++){const r=n[t];/^name$/i.test(r)?i[0]=e.getProperty(r):/name/i.test(r)?i[1]=e.getProperty(r):/^title$/i.test(r)?i[2]=e.getProperty(r):/^(id|identifier)$/i.test(r)?i[3]=e.getProperty(r):/element/i.test(r)?i[4]=e.getProperty(r):/(id|identifier)$/i.test(r)&&(i[5]=e.getProperty(r))}const r=i.length;for(t=0;t<r;t++){const e=i[t];if(defined(e)&&""!==e)return e}return"Unnamed Feature"}function pickEntity(e,t){const i=e.scene.pick(t.position);if(defined(i)){const e=defaultValue(i.id,i.primitive.id);if(e instanceof Entity)return e;if(i instanceof Cesium3DTileFeature)return new Entity({name:getCesium3DTileFeatureName(i),description:getCesium3DTileFeatureDescription(i),feature:i})}if(defined(e.scene.globe))return pickImageryLayerFeature(e,t.position)}const scratchStopTime=new JulianDate;function trackDataSourceClock(e,t,i){if(defined(i)){const n=i.clock;if(defined(n)&&(n.getValue(t),defined(e))){const t=n.startTime;let i=n.stopTime;JulianDate.equals(t,i)&&(i=JulianDate.addSeconds(t,CesiumMath$1.EPSILON2,scratchStopTime)),e.updateFromClock(),e.zoomTo(t,i)}}}const cartesian3Scratch=new Cartesian3;function pickImageryLayerFeature(e,t){const i=e.scene,n=i.camera.getPickRay(t),r=i.imageryLayers.pickImageryLayerFeatures(n,i);if(!defined(r))return;const o=new Entity({id:"Loading...",description:"Loading feature information..."});return r.then((function(t){if(e.selectedEntity!==o)return;if(!defined(t)||0===t.length)return void(e.selectedEntity=createNoFeaturesEntity());const i=t[0],n=new Entity({id:i.name,description:i.description});if(defined(i.position)){const t=e.scene.globe.ellipsoid.cartographicToCartesian(i.position,cartesian3Scratch);n.position=new ConstantPositionProperty(t)}e.selectedEntity=n}),(function(){e.selectedEntity===o&&(e.selectedEntity=createNoFeaturesEntity())})),o}function createNoFeaturesEntity(){return new Entity({id:"None",description:"No features found."})}function enableVRUI(e,t){const i=e._geocoder,n=e._homeButton,r=e._sceneModePicker,o=e._projectionPicker,a=e._baseLayerPicker,s=e._animation,c=e._timeline,l=e._fullscreenButton,d=e._infoBox,u=e._selectionIndicator,h=t?"hidden":"visible";if(defined(i)&&(i.container.style.visibility=h),defined(n)&&(n.container.style.visibility=h),defined(r)&&(r.container.style.visibility=h),defined(o)&&(o.container.style.visibility=h),defined(a)&&(a.container.style.visibility=h),defined(s)&&(s.container.style.visibility=h),defined(c)&&(c.container.style.visibility=h),defined(l)&&l.viewModel.isFullscreenEnabled&&(l.container.style.visibility=h),defined(d)&&(d.container.style.visibility=h),defined(u)&&(u.container.style.visibility=h),e._container){const i=t||!defined(l)?0:l.container.clientWidth;e._vrButton.container.style.right=`${i}px`,e.forceResize()}}function Viewer(e,t){if(!defined(e))throw new DeveloperError("container is required.");e=getElement(e);const i=!(defined((t=defaultValue(t,defaultValue.EMPTY_OBJECT)).globe)&&!1===t.globe||defined(t.baseLayerPicker)&&!1===t.baseLayerPicker);if(!i&&defined(t.selectedImageryProviderViewModel))throw new DeveloperError("options.selectedImageryProviderViewModel is not available when not using the BaseLayerPicker widget. Either specify options.baseLayer instead or set options.baseLayerPicker to true.");if(!i&&defined(t.selectedTerrainProviderViewModel))throw new DeveloperError("options.selectedTerrainProviderViewModel is not available when not using the BaseLayerPicker widget. Either specify options.terrainProvider instead or set options.baseLayerPicker to true.");const n=this,r=document.createElement("div");r.className="cesium-viewer",e.appendChild(r);const o=document.createElement("div");o.className="cesium-viewer-cesiumWidgetContainer",r.appendChild(o);const a=document.createElement("div");a.className="cesium-viewer-bottom",r.appendChild(a);const s=defaultValue(t.scene3DOnly,!1);let c,l,d=!1;defined(t.clockViewModel)?(l=t.clockViewModel,c=l.clock):(c=new Clock,l=new ClockViewModel(c),d=!0),defined(t.shouldAnimate)&&(c.shouldAnimate=t.shouldAnimate);const u=new CesiumWidget(o,{baseLayer:!(i||defined(t.baseLayer)||defined(t.imageryProvider))&&void 0,clock:c,skyBox:t.skyBox,skyAtmosphere:t.skyAtmosphere,sceneMode:t.sceneMode,mapProjection:t.mapProjection,globe:t.globe,orderIndependentTranslucency:t.orderIndependentTranslucency,contextOptions:t.contextOptions,useDefaultRenderLoop:t.useDefaultRenderLoop,targetFrameRate:t.targetFrameRate,showRenderLoopErrors:t.showRenderLoopErrors,useBrowserRecommendedResolution:t.useBrowserRecommendedResolution,creditContainer:defined(t.creditContainer)?t.creditContainer:a,creditViewport:t.creditViewport,scene3DOnly:s,shadows:t.shadows,terrainShadows:t.terrainShadows,mapMode2D:t.mapMode2D,blurActiveElementOnCanvasFocus:t.blurActiveElementOnCanvasFocus,requestRenderMode:t.requestRenderMode,maximumRenderTimeChange:t.maximumRenderTimeChange,depthPlaneEllipsoidOffset:t.depthPlaneEllipsoidOffset,msaaSamples:t.msaaSamples});let h=t.dataSources,p=!1;defined(h)||(h=new DataSourceCollection,p=!0);const f=u.scene,m=new DataSourceDisplay({scene:f,dataSourceCollection:h}),g=new EventHelper;let _,y;if(g.add(c.onTick,Viewer.prototype._onTick,this),g.add(f.morphStart,Viewer.prototype._clearTrackedObject,this),!defined(t.selectionIndicator)||!1!==t.selectionIndicator){const e=document.createElement("div");e.className="cesium-viewer-selectionIndicatorContainer",r.appendChild(e),_=new SelectionIndicator(e,f)}if(!defined(t.infoBox)||!1!==t.infoBox){const e=document.createElement("div");e.className="cesium-viewer-infoBoxContainer",r.appendChild(e),y=new InfoBox(e);const t=y.viewModel;g.add(t.cameraClicked,Viewer.prototype._onInfoBoxCameraClicked,this),g.add(t.closeClicked,Viewer.prototype._onInfoBoxClockClicked,this)}const C=document.createElement("div");let S,A,T,v,E,b,x,D,P,w,I,M,O,R,B;if(C.className="cesium-viewer-toolbar",r.appendChild(C),!defined(t.geocoder)||!1!==t.geocoder){const e=document.createElement("div");let i;e.className="cesium-viewer-geocoderContainer",C.appendChild(e),defined(t.geocoder)&&"boolean"!=typeof t.geocoder&&(i=Array.isArray(t.geocoder)?t.geocoder:[t.geocoder]),S=new Geocoder({container:e,geocoderServices:i,scene:f}),g.add(S.viewModel.search.beforeExecute,Viewer.prototype._clearObjects,this)}if(defined(t.homeButton)&&!1===t.homeButton||(A=new HomeButton(C,f),defined(S)&&g.add(A.viewModel.command.afterExecute,(function(){const e=S.viewModel;e.searchText="",e.isSearchInProgress&&e.search()})),g.add(A.viewModel.command.beforeExecute,Viewer.prototype._clearTrackedObject,this)),!0===t.sceneModePicker&&s)throw new DeveloperError("options.sceneModePicker is not available when options.scene3DOnly is set to true.");if(s||defined(t.sceneModePicker)&&!1===t.sceneModePicker||(T=new SceneModePicker(C,f)),t.projectionPicker&&(v=new ProjectionPicker(C,f)),i){const e=defaultValue(t.imageryProviderViewModels,createDefaultImageryProviderViewModels()),i=defaultValue(t.terrainProviderViewModels,createDefaultTerrainProviderViewModels());E=new BaseLayerPicker(C,{globe:f.globe,imageryProviderViewModels:e,selectedImageryProviderViewModel:t.selectedImageryProviderViewModel,terrainProviderViewModels:i,selectedTerrainProviderViewModel:t.selectedTerrainProviderViewModel});b=C.getElementsByClassName("cesium-baseLayerPicker-dropDown")[0]}if(defined(t.imageryProvider)&&!1!==t.imageryProvider&&(deprecationWarning("Viewer options.imageryProvider","options.imageryProvider was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107. Use options.baseLayer instead."),i&&(E.viewModel.selectedImagery=void 0),f.imageryLayers.removeAll(),f.imageryLayers.addImageryProvider(t.imageryProvider)),defined(t.baseLayer)&&!1!==t.baseLayer&&(i&&(E.viewModel.selectedImagery=void 0),f.imageryLayers.removeAll(),f.imageryLayers.add(t.baseLayer)),defined(t.terrainProvider)&&(i&&(E.viewModel.selectedTerrain=void 0),f.terrainProvider=t.terrainProvider),defined(t.terrain)){if(defined(t.terrainProvider))throw new DeveloperError("Specify either options.terrainProvider or options.terrain.");i&&(E.viewModel.selectedTerrain=void 0,f.globe.depthTestAgainstTerrain=!0),f.setTerrain(t.terrain)}if(!defined(t.navigationHelpButton)||!1!==t.navigationHelpButton){let e=!0;try{if(defined(window.localStorage)){const t=window.localStorage.getItem("cesium-hasSeenNavHelp");defined(t)&&Boolean(t)?e=!1:window.localStorage.setItem("cesium-hasSeenNavHelp","true")}}catch(N){}x=new NavigationHelpButton({container:C,instructionsInitiallyVisible:defaultValue(t.navigationInstructionsInitiallyVisible,e)})}if(!defined(t.animation)||!1!==t.animation){const e=document.createElement("div");e.className="cesium-viewer-animationContainer",r.appendChild(e),D=new Animation(e,new AnimationViewModel(l))}if(!defined(t.timeline)||!1!==t.timeline){const e=document.createElement("div");e.className="cesium-viewer-timelineContainer",r.appendChild(e),P=new Timeline(e,c),P.addEventListener("settime",onTimelineScrubfunction,!1),P.zoomTo(c.startTime,c.stopTime)}if(defined(t.fullscreenButton)&&!1===t.fullscreenButton||(M=document.createElement("div"),M.className="cesium-viewer-fullscreenContainer",r.appendChild(M),w=new FullscreenButton(M,t.fullscreenElement),I=subscribeAndEvaluate(w.viewModel,"isFullscreenEnabled",(function(e){M.style.display=e?"block":"none",defined(P)&&(P.container.style.right=`${M.clientWidth}px`,P.resize())}))),t.vrButton){const e=document.createElement("div");e.className="cesium-viewer-vrContainer",r.appendChild(e),O=new VRButton(e,f,t.fullScreenElement),R=subscribeAndEvaluate(O.viewModel,"isVREnabled",(function(t){e.style.display=t?"block":"none",defined(w)&&(e.style.right=`${M.clientWidth}px`),defined(P)&&(P.container.style.right=`${e.clientWidth}px`,P.resize())})),B=subscribeAndEvaluate(O.viewModel,"isVRMode",(function(e){enableVRUI(n,e)}))}this._baseLayerPickerDropDown=b,this._fullscreenSubscription=I,this._vrSubscription=R,this._vrModeSubscription=B,this._dataSourceChangedListeners={},this._automaticallyTrackDataSourceClocks=defaultValue(t.automaticallyTrackDataSourceClocks,!0),this._container=e,this._bottomContainer=a,this._element=r,this._cesiumWidget=u,this._selectionIndicator=_,this._infoBox=y,this._dataSourceCollection=h,this._destroyDataSourceCollection=p,this._dataSourceDisplay=m,this._clockViewModel=l,this._destroyClockViewModel=d,this._toolbar=C,this._homeButton=A,this._sceneModePicker=T,this._projectionPicker=v,this._baseLayerPicker=E,this._navigationHelpButton=x,this._animation=D,this._timeline=P,this._fullscreenButton=w,this._vrButton=O,this._geocoder=S,this._eventHelper=g,this._lastWidth=0,this._lastHeight=0,this._allowDataSourcesToSuspendAnimation=!0,this._entityView=void 0,this._enableInfoOrSelection=defined(y)||defined(_),this._clockTrackedDataSource=void 0,this._trackedEntity=void 0,this._needTrackedEntityUpdate=!1,this._selectedEntity=void 0,this._zoomIsFlight=!1,this._zoomTarget=void 0,this._zoomPromise=void 0,this._zoomOptions=void 0,this._selectedEntityChanged=new Event,this._trackedEntityChanged=new Event,knockout$1.track(this,["_trackedEntity","_selectedEntity","_clockTrackedDataSource"]),g.add(h.dataSourceAdded,Viewer.prototype._onDataSourceAdded,this),g.add(h.dataSourceRemoved,Viewer.prototype._onDataSourceRemoved,this),g.add(f.postUpdate,Viewer.prototype.resize,this),g.add(f.postRender,Viewer.prototype._postRender,this);const L=h.length;for(let F=0;F<L;F++)this._dataSourceAdded(h,h.get(F));this._dataSourceAdded(void 0,m.defaultDataSource),g.add(h.dataSourceAdded,Viewer.prototype._dataSourceAdded,this),g.add(h.dataSourceRemoved,Viewer.prototype._dataSourceRemoved,this),u.screenSpaceEventHandler.setInputAction((function(e){n.selectedEntity=pickEntity(n,e)}),ScreenSpaceEventType$1.LEFT_CLICK),u.screenSpaceEventHandler.setInputAction((function(e){const t=pickEntity(n,e);defined(t)?Property.getValueOrUndefined(t.position,n.clock.currentTime)?n.trackedEntity=t:n.zoomTo(t):defined(n.trackedEntity)&&(n.trackedEntity=void 0)}),ScreenSpaceEventType$1.LEFT_DOUBLE_CLICK)}function zoomToOrFly(e,t,i,n){if(!defined(t))throw new DeveloperError("zoomTarget is required.");cancelZoom(e);const r=new Promise((t=>{e._completeZoom=function(e){t(e)}}));return e._zoomPromise=r,e._zoomIsFlight=n,e._zoomOptions=i,Promise.resolve(t).then((function(t){if(e._zoomPromise===r){if(t instanceof ImageryLayer){let i;return i=defined(t.imageryProvider)?t.imageryProvider._readyPromise.then((()=>t.getImageryRectangle())):new Promise((e=>{const i=t.readyEvent.addEventListener((()=>{i(),e(t.getImageryRectangle())}))})),void i.then((function(t){return computeFlyToLocationForRectangle(t,e.scene)})).then((function(t){e._zoomPromise===r&&(e._zoomTarget=t)}))}if(t instanceof Cesium3DTileset||t instanceof TimeDynamicPointCloud||t instanceof VoxelPrimitive)e._zoomTarget=t;else if(t.isLoading&&defined(t.loadingEvent)){const i=t.loadingEvent.addEventListener((function(){i(),e._zoomPromise===r&&(e._zoomTarget=t.entities.values.slice(0))}))}else Array.isArray(t)?e._zoomTarget=t.slice(0):(defined((t=defaultValue(t.values,t)).entities)&&(t=t.entities.values),Array.isArray(t)?e._zoomTarget=t.slice(0):e._zoomTarget=[t])}})),e.scene.requestRender(),r}function clearZoom(e){e._zoomPromise=void 0,e._zoomTarget=void 0,e._zoomOptions=void 0}function cancelZoom(e){defined(e._zoomPromise)&&(clearZoom(e),e._completeZoom(!1))}function updateZoomTarget(e){const t=e._zoomTarget;if(!defined(t)||e.scene.mode===SceneMode$1.MORPHING)return;const i=e.scene,n=i.camera,r=defaultValue(e._zoomOptions,{});let o;if(t instanceof Cesium3DTileset||t instanceof VoxelPrimitive)return t._readyPromise.then((function(){const i=t.boundingSphere;defined(r.offset)||(r.offset=new HeadingPitchRange(0,-.5,i.radius)),o={offset:r.offset,duration:r.duration,maximumHeight:r.maximumHeight,complete:function(){e._completeZoom(!0)},cancel:function(){e._completeZoom(!1)}},e._zoomIsFlight?n.flyToBoundingSphere(t.boundingSphere,o):(n.viewBoundingSphere(i,r.offset),n.lookAtTransform(Matrix4.IDENTITY),e._completeZoom(!0)),clearZoom(e)})).catch((()=>{cancelZoom(e)}));if(t instanceof TimeDynamicPointCloud)return t._readyPromise.then((function(){const i=t.boundingSphere;defined(r.offset)||(r.offset=new HeadingPitchRange(0,-.5,i.radius)),o={offset:r.offset,duration:r.duration,maximumHeight:r.maximumHeight,complete:function(){e._completeZoom(!0)},cancel:function(){e._completeZoom(!1)}},e._zoomIsFlight?n.flyToBoundingSphere(i,o):(n.viewBoundingSphere(i,r.offset),n.lookAtTransform(Matrix4.IDENTITY),e._completeZoom(!0)),clearZoom(e)}));if(t instanceof Cartographic)return o={destination:i.mapProjection.ellipsoid.cartographicToCartesian(t),duration:r.duration,maximumHeight:r.maximumHeight,complete:function(){e._completeZoom(!0)},cancel:function(){e._completeZoom(!1)}},e._zoomIsFlight?n.flyTo(o):(n.setView(o),e._completeZoom(!0)),void clearZoom(e);const a=t,s=[];for(let l=0,d=a.length;l<d;l++){const t=e._dataSourceDisplay.getBoundingSphere(a[l],!1,boundingSphereScratch);if(t===BoundingSphereState$1.PENDING)return;t!==BoundingSphereState$1.FAILED&&s.push(BoundingSphere.clone(boundingSphereScratch))}if(0===s.length)return void cancelZoom(e);e.trackedEntity=void 0;const c=BoundingSphere.fromBoundingSpheres(s);e._zoomIsFlight?(clearZoom(e),n.flyToBoundingSphere(c,{duration:r.duration,maximumHeight:r.maximumHeight,complete:function(){e._completeZoom(!0)},cancel:function(){e._completeZoom(!1)},offset:r.offset})):(n.viewBoundingSphere(c,r.offset),n.lookAtTransform(Matrix4.IDENTITY),clearZoom(e),e._completeZoom(!0))}function updateTrackedEntity(e){if(!e._needTrackedEntityUpdate)return;const t=e._trackedEntity,i=e.clock.currentTime;if(!defined(Property.getValueOrUndefined(t.position,i)))return;const n=e.scene,r=e._dataSourceDisplay.getBoundingSphere(t,!1,boundingSphereScratch);if(r===BoundingSphereState$1.PENDING)return;const o=n.mode;o!==SceneMode$1.COLUMBUS_VIEW&&o!==SceneMode$1.SCENE2D||(n.screenSpaceCameraController.enableTranslate=!1),o!==SceneMode$1.COLUMBUS_VIEW&&o!==SceneMode$1.SCENE3D||(n.screenSpaceCameraController.enableTilt=!1);const a=r!==BoundingSphereState$1.FAILED?boundingSphereScratch:void 0;e._entityView=new EntityView(t,n,n.mapProjection.ellipsoid),e._entityView.update(i,a),e._needTrackedEntityUpdate=!1}function viewerCesium3DTilesInspectorMixin(e){Check$1.typeOf.object("viewer",e);const t=document.createElement("div");t.className="cesium-viewer-cesium3DTilesInspectorContainer",e.container.appendChild(t);const i=new Cesium3DTilesInspector(t,e.scene);Object.defineProperties(e,{cesium3DTilesInspector:{get:function(){return i}}})}function viewerCesiumInspectorMixin(e){if(!defined(e))throw new DeveloperError("viewer is required.");const t=document.createElement("div");t.className="cesium-viewer-cesiumInspectorContainer",e.container.appendChild(t);const i=new CesiumInspector(t,e.scene);Object.defineProperties(e,{cesiumInspector:{get:function(){return i}}})}function viewerDragDropMixin(e,t){if(!defined(e))throw new DeveloperError("viewer is required.");if(e.hasOwnProperty("dropTarget"))throw new DeveloperError("dropTarget is already defined by another mixin.");if(e.hasOwnProperty("dropEnabled"))throw new DeveloperError("dropEnabled is already defined by another mixin.");if(e.hasOwnProperty("dropError"))throw new DeveloperError("dropError is already defined by another mixin.");if(e.hasOwnProperty("clearOnDrop"))throw new DeveloperError("clearOnDrop is already defined by another mixin.");if(e.hasOwnProperty("flyToOnDrop"))throw new DeveloperError("flyToOnDrop is already defined by another mixin.");t=defaultValue(t,defaultValue.EMPTY_OBJECT);let i=!0,n=defaultValue(t.flyToOnDrop,!0);const r=new Event;let o=defaultValue(t.clearOnDrop,!0),a=defaultValue(t.dropTarget,e.container),s=defaultValue(t.clampToGround,!0),c=t.proxy;function l(t){stop(t),o&&(e.entities.removeAll(),e.dataSources.removeAll());const i=t.dataTransfer.files,n=i.length;for(let r=0;r<n;r++){const t=i[r],n=new FileReader;n.onload=createOnLoadCallback(e,t,c,s),n.onerror=createDropErrorCallback(e,t),n.readAsText(t)}}a=getElement(a),Object.defineProperties(e,{dropTarget:{get:function(){return a},set:function(e){if(!defined(e))throw new DeveloperError("value is required.");unsubscribe(a,l),a=e,subscribe(a,l)}},dropEnabled:{get:function(){return i},set:function(e){e!==i&&(e?subscribe(a,l):unsubscribe(a,l),i=e)}},dropError:{get:function(){return r}},clearOnDrop:{get:function(){return o},set:function(e){o=e}},flyToOnDrop:{get:function(){return n},set:function(e){n=e}},proxy:{get:function(){return c},set:function(e){c=e}},clampToGround:{get:function(){return s},set:function(e){s=e}}}),subscribe(a,l),e.destroy=wrapFunction(e,e.destroy,(function(){e.dropEnabled=!1})),e._handleDrop=l}function stop(e){e.stopPropagation(),e.preventDefault()}function unsubscribe(e,t){const i=e;defined(i)&&(i.removeEventListener("drop",t,!1),i.removeEventListener("dragenter",stop,!1),i.removeEventListener("dragover",stop,!1),i.removeEventListener("dragexit",stop,!1))}function subscribe(e,t){e.addEventListener("drop",t,!1),e.addEventListener("dragenter",stop,!1),e.addEventListener("dragover",stop,!1),e.addEventListener("dragexit",stop,!1)}function createOnLoadCallback(e,t,i,n){const r=e.scene;return function(o){const a=t.name;try{let s;if(/\.czml$/i.test(a))s=CzmlDataSource.load(JSON.parse(o.target.result),{sourceUri:a});else if(/\.geojson$/i.test(a)||/\.json$/i.test(a)||/\.topojson$/i.test(a))s=GeoJsonDataSource.load(JSON.parse(o.target.result),{sourceUri:a,clampToGround:n});else if(/\.(kml|kmz)$/i.test(a))s=KmlDataSource.load(t,{sourceUri:a,proxy:i,camera:r.camera,canvas:r.canvas,clampToGround:n,screenOverlayContainer:e.container});else{if(!/\.gpx$/i.test(a))return void e.dropError.raiseEvent(e,a,`Unrecognized file: ${a}`);s=GpxDataSource.load(t,{sourceUri:a,proxy:i})}defined(s)&&e.dataSources.add(s).then((function(t){e.flyToOnDrop&&e.flyTo(t)})).catch((function(t){e.dropError.raiseEvent(e,a,t)}))}catch(s){e.dropError.raiseEvent(e,a,s)}}}function createDropErrorCallback(e,t){return function(i){e.dropError.raiseEvent(e,t.name,i.target.error)}}function viewerPerformanceWatchdogMixin(e,t){if(!defined(e))throw new DeveloperError("viewer is required.");t=defaultValue(t,defaultValue.EMPTY_OBJECT);const i=new PerformanceWatchdog({scene:e.scene,container:e.bottomContainer,lowFrameRateMessage:t.lowFrameRateMessage});Object.defineProperties(e,{performanceWatchdog:{get:function(){return i}}})}function formatShaderString(e){const t=e.split("\n");let i;for(i=0;i<t.length&&!t[i].match(/\S/);i++);if(i===t.length)return"";let n="";const r=/^\s*/,o=t[i].match(r)[0].length;for(let a=i;a<t.length;a++){let e=t[a];e.match(r)[0].length>=o&&(e=e.slice(o)),n+=`${e}\n`}return n}function VoxelInspectorViewModel(e){Check$1.typeOf.object("scene",e),this._scene=e,this._voxelPrimitive=void 0,this._customShaderCompilationRemoveCallback=void 0,this._definedProperties=[],this._getPrimitiveFunctions=[],this._modelMatrixReady=!1;const t=this;function i(i){const{name:n,initialValue:r}=i;t._definedProperties.push(n);let o=i.setPrimitiveFunction;!0===o&&(o=function(e){t._voxelPrimitive[n]=e});let a=i.getPrimitiveFunction;!0===a&&(a=function(){t[n]=t._voxelPrimitive[n]}),defined(a)&&t._getPrimitiveFunctions.push(a);const s=knockout$1.observable();return knockout$1.defineProperty(t,n,{get:function(){return s()},set:function(i){"number"==typeof r&&"string"==typeof i&&(i=Number(i),isNaN(i)&&(i=r)),"boolean"==typeof r&&"number"==typeof i&&(i=1===i),s(i),defined(o)&&defined(t._voxelPrimitive)&&(o(i),e.requestRender())}}),t[n]=r,s}function n(e,i){return function(n){const r=t._voxelPrimitive[e].clone();r[i]=n,t._voxelPrimitive[e]=r}}i({name:"inspectorVisible",initialValue:!0}),i({name:"displayVisible",initialValue:!1}),i({name:"transformVisible",initialValue:!1}),i({name:"boundsVisible",initialValue:!1}),i({name:"clippingVisible",initialValue:!1}),i({name:"shaderVisible",initialValue:!1}),i({name:"shaderString",initialValue:"",getPrimitiveFunction:function(){const e=t._voxelPrimitive.customShader.fragmentShaderText;t.shaderString=formatShaderString(e)}}),i({name:"shaderCompilationMessage",initialValue:""}),i({name:"shaderCompilationSuccess",initialValue:!0}),i({name:"depthTest",initialValue:!1,setPrimitiveFunction:!0,getPrimitiveFunction:!0}),i({name:"show",initialValue:!0,setPrimitiveFunction:!0,getPrimitiveFunction:!0}),i({name:"disableUpdate",initialValue:!1,setPrimitiveFunction:!0,getPrimitiveFunction:!0}),i({name:"debugDraw",initialValue:!1,setPrimitiveFunction:!0,getPrimitiveFunction:!0}),i({name:"jitter",initialValue:!0,setPrimitiveFunction:!0,getPrimitiveFunction:!0}),i({name:"nearestSampling",initialValue:!0,setPrimitiveFunction:!0,getPrimitiveFunction:!0}),i({name:"screenSpaceError",initialValue:4,setPrimitiveFunction:!0,getPrimitiveFunction:!0}),i({name:"stepSize",initialValue:1,setPrimitiveFunction:!0,getPrimitiveFunction:!0}),i({name:"shapeIsBox",getPrimitiveFunction:function(){const e=t._voxelPrimitive.shape;t.shapeIsBox=e===VoxelShapeType$1.BOX}}),i({name:"shapeIsEllipsoid",getPrimitiveFunction:function(){const e=t._voxelPrimitive.shape;t.shapeIsEllipsoid=e===VoxelShapeType$1.ELLIPSOID}}),i({name:"shapeIsCylinder",getPrimitiveFunction:function(){const e=t._voxelPrimitive.shape;t.shapeIsCylinder=e===VoxelShapeType$1.CYLINDER}}),i({name:"boundsBoxMaxX",initialValue:0,setPrimitiveFunction:n("maxBounds","x"),getPrimitiveFunction:function(){t.boundsBoxMaxX=t._voxelPrimitive.maxBounds.x}}),i({name:"boundsBoxMinX",initialValue:0,setPrimitiveFunction:n("minBounds","x"),getPrimitiveFunction:function(){t.boundsBoxMinX=t._voxelPrimitive.minBounds.x}}),i({name:"boundsBoxMaxY",initialValue:0,setPrimitiveFunction:n("maxBounds","y"),getPrimitiveFunction:function(){t.boundsBoxMaxY=t._voxelPrimitive.maxBounds.y}}),i({name:"boundsBoxMinY",initialValue:0,setPrimitiveFunction:n("minBounds","y"),getPrimitiveFunction:function(){t.boundsBoxMinY=t._voxelPrimitive.minBounds.y}}),i({name:"boundsBoxMaxZ",initialValue:0,setPrimitiveFunction:n("maxBounds","z"),getPrimitiveFunction:function(){t.boundsBoxMaxZ=t._voxelPrimitive.maxBounds.z}}),i({name:"boundsBoxMinZ",initialValue:0,setPrimitiveFunction:n("minBounds","z"),getPrimitiveFunction:function(){t.boundsBoxMinZ=t._voxelPrimitive.minBounds.z}}),i({name:"boundsEllipsoidMaxLongitude",initialValue:0,setPrimitiveFunction:n("maxBounds","x"),getPrimitiveFunction:function(){t.boundsEllipsoidMaxLongitude=t._voxelPrimitive.maxBounds.x}}),i({name:"boundsEllipsoidMinLongitude",initialValue:0,setPrimitiveFunction:n("minBounds","x"),getPrimitiveFunction:function(){t.boundsEllipsoidMinLongitude=t._voxelPrimitive.minBounds.x}}),i({name:"boundsEllipsoidMaxLatitude",initialValue:0,setPrimitiveFunction:n("maxBounds","y"),getPrimitiveFunction:function(){t.boundsEllipsoidMaxLatitude=t._voxelPrimitive.maxBounds.y}}),i({name:"boundsEllipsoidMinLatitude",initialValue:0,setPrimitiveFunction:n("minBounds","y"),getPrimitiveFunction:function(){t.boundsEllipsoidMinLatitude=t._voxelPrimitive.minBounds.y}}),i({name:"boundsEllipsoidMaxHeight",initialValue:0,setPrimitiveFunction:n("maxBounds","z"),getPrimitiveFunction:function(){t.boundsEllipsoidMaxHeight=t._voxelPrimitive.maxBounds.z}}),i({name:"boundsEllipsoidMinHeight",initialValue:0,setPrimitiveFunction:n("minBounds","z"),getPrimitiveFunction:function(){t.boundsEllipsoidMinHeight=t._voxelPrimitive.minBounds.z}}),i({name:"boundsCylinderMaxRadius",initialValue:0,setPrimitiveFunction:n("maxBounds","x"),getPrimitiveFunction:function(){t.boundsCylinderMaxRadius=t._voxelPrimitive.maxBounds.x}}),i({name:"boundsCylinderMinRadius",initialValue:0,setPrimitiveFunction:n("minBounds","x"),getPrimitiveFunction:function(){t.boundsCylinderMinRadius=t._voxelPrimitive.minBounds.x}}),i({name:"boundsCylinderMaxHeight",initialValue:0,setPrimitiveFunction:n("maxBounds","y"),getPrimitiveFunction:function(){t.boundsCylinderMaxHeight=t._voxelPrimitive.maxBounds.y}}),i({name:"boundsCylinderMinHeight",initialValue:0,setPrimitiveFunction:n("minBounds","y"),getPrimitiveFunction:function(){t.boundsCylinderMinHeight=t._voxelPrimitive.minBounds.y}}),i({name:"boundsCylinderMaxAngle",initialValue:0,setPrimitiveFunction:n("maxBounds","z"),getPrimitiveFunction:function(){t.boundsCylinderMaxAngle=t._voxelPrimitive.maxBounds.z}}),i({name:"boundsCylinderMinAngle",initialValue:0,setPrimitiveFunction:n("minBounds","z"),getPrimitiveFunction:function(){t.boundsCylinderMinAngle=t._voxelPrimitive.minBounds.z}}),i({name:"clippingBoxMaxX",initialValue:0,setPrimitiveFunction:n("maxClippingBounds","x"),getPrimitiveFunction:function(){t.clippingBoxMaxX=t._voxelPrimitive.maxClippingBounds.x}}),i({name:"clippingBoxMinX",initialValue:0,setPrimitiveFunction:n("minClippingBounds","x"),getPrimitiveFunction:function(){t.clippingBoxMinX=t._voxelPrimitive.minClippingBounds.x}}),i({name:"clippingBoxMaxY",initialValue:0,setPrimitiveFunction:n("maxClippingBounds","y"),getPrimitiveFunction:function(){t.clippingBoxMaxY=t._voxelPrimitive.maxClippingBounds.y}}),i({name:"clippingBoxMinY",initialValue:0,setPrimitiveFunction:n("minClippingBounds","y"),getPrimitiveFunction:function(){t.clippingBoxMinY=t._voxelPrimitive.minClippingBounds.y}}),i({name:"clippingBoxMaxZ",initialValue:0,setPrimitiveFunction:n("maxClippingBounds","z"),getPrimitiveFunction:function(){t.clippingBoxMaxZ=t._voxelPrimitive.maxClippingBounds.z}}),i({name:"clippingBoxMinZ",initialValue:0,setPrimitiveFunction:n("minClippingBounds","z"),getPrimitiveFunction:function(){t.clippingBoxMinZ=t._voxelPrimitive.minClippingBounds.z}}),i({name:"clippingEllipsoidMaxLongitude",initialValue:0,setPrimitiveFunction:n("maxClippingBounds","x"),getPrimitiveFunction:function(){t.clippingEllipsoidMaxLongitude=t._voxelPrimitive.maxClippingBounds.x}}),i({name:"clippingEllipsoidMinLongitude",initialValue:0,setPrimitiveFunction:n("minClippingBounds","x"),getPrimitiveFunction:function(){t.clippingEllipsoidMinLongitude=t._voxelPrimitive.minClippingBounds.x}}),i({name:"clippingEllipsoidMaxLatitude",initialValue:0,setPrimitiveFunction:n("maxClippingBounds","y"),getPrimitiveFunction:function(){t.clippingEllipsoidMaxLatitude=t._voxelPrimitive.maxClippingBounds.y}}),i({name:"clippingEllipsoidMinLatitude",initialValue:0,setPrimitiveFunction:n("minClippingBounds","y"),getPrimitiveFunction:function(){t.clippingEllipsoidMinLatitude=t._voxelPrimitive.minClippingBounds.y}}),i({name:"clippingEllipsoidMaxHeight",initialValue:0,setPrimitiveFunction:n("maxClippingBounds","z"),getPrimitiveFunction:function(){t.clippingEllipsoidMaxHeight=t._voxelPrimitive.maxClippingBounds.z}}),i({name:"clippingEllipsoidMinHeight",initialValue:0,setPrimitiveFunction:n("minClippingBounds","z"),getPrimitiveFunction:function(){t.clippingEllipsoidMinHeight=t._voxelPrimitive.minClippingBounds.z}}),i({name:"clippingCylinderMaxRadius",initialValue:0,setPrimitiveFunction:n("maxClippingBounds","x"),getPrimitiveFunction:function(){t.clippingCylinderMaxRadius=t._voxelPrimitive.maxClippingBounds.x}}),i({name:"clippingCylinderMinRadius",initialValue:0,setPrimitiveFunction:n("minClippingBounds","x"),getPrimitiveFunction:function(){t.clippingCylinderMinRadius=t._voxelPrimitive.minClippingBounds.x}}),i({name:"clippingCylinderMaxHeight",initialValue:0,setPrimitiveFunction:n("maxClippingBounds","y"),getPrimitiveFunction:function(){t.clippingCylinderMaxHeight=t._voxelPrimitive.maxClippingBounds.y}}),i({name:"clippingCylinderMinHeight",initialValue:0,setPrimitiveFunction:n("minClippingBounds","y"),getPrimitiveFunction:function(){t.clippingCylinderMinHeight=t._voxelPrimitive.minClippingBounds.y}}),i({name:"clippingCylinderMaxAngle",initialValue:0,setPrimitiveFunction:n("maxClippingBounds","z"),getPrimitiveFunction:function(){t.clippingCylinderMaxAngle=t._voxelPrimitive.maxClippingBounds.z}}),i({name:"clippingCylinderMinAngle",initialValue:0,setPrimitiveFunction:n("minClippingBounds","z"),getPrimitiveFunction:function(){t.clippingCylinderMinAngle=t._voxelPrimitive.minClippingBounds.z}}),i({name:"translationX",initialValue:0,setPrimitiveFunction:function(){t._modelMatrixReady&&setModelMatrix(t)},getPrimitiveFunction:function(){t.translationX=Matrix4.getTranslation(t._voxelPrimitive.modelMatrix,new Cartesian3).x}}),i({name:"translationY",initialValue:0,setPrimitiveFunction:function(){t._modelMatrixReady&&setModelMatrix(t)},getPrimitiveFunction:function(){t.translationY=Matrix4.getTranslation(t._voxelPrimitive.modelMatrix,new Cartesian3).y}}),i({name:"translationZ",initialValue:0,setPrimitiveFunction:function(){t._modelMatrixReady&&setModelMatrix(t)},getPrimitiveFunction:function(){t.translationZ=Matrix4.getTranslation(t._voxelPrimitive.modelMatrix,new Cartesian3).z}}),i({name:"scaleX",initialValue:1,setPrimitiveFunction:function(){t._modelMatrixReady&&setModelMatrix(t)},getPrimitiveFunction:function(){t.scaleX=Matrix4.getScale(t._voxelPrimitive.modelMatrix,new Cartesian3).x}}),i({name:"scaleY",initialValue:1,setPrimitiveFunction:function(){t._modelMatrixReady&&setModelMatrix(t)},getPrimitiveFunction:function(){t.scaleY=Matrix4.getScale(t._voxelPrimitive.modelMatrix,new Cartesian3).y}}),i({name:"scaleZ",initialValue:1,setPrimitiveFunction:function(){t._modelMatrixReady&&setModelMatrix(t)},getPrimitiveFunction:function(){t.scaleZ=Matrix4.getScale(t._voxelPrimitive.modelMatrix,new Cartesian3).z}}),i({name:"angleX",initialValue:0,setPrimitiveFunction:function(){t._modelMatrixReady&&setModelMatrix(t)}}),i({name:"angleY",initialValue:0,setPrimitiveFunction:function(){t._modelMatrixReady&&setModelMatrix(t)}}),i({name:"angleZ",initialValue:0,setPrimitiveFunction:function(){t._modelMatrixReady&&setModelMatrix(t)}})}Object.defineProperties(Viewer.prototype,{container:{get:function(){return this._container}},creditDisplay:{get:function(){return this._cesiumWidget.creditDisplay}},bottomContainer:{get:function(){return this._bottomContainer}},cesiumWidget:{get:function(){return this._cesiumWidget}},selectionIndicator:{get:function(){return this._selectionIndicator}},infoBox:{get:function(){return this._infoBox}},geocoder:{get:function(){return this._geocoder}},homeButton:{get:function(){return this._homeButton}},sceneModePicker:{get:function(){return this._sceneModePicker}},projectionPicker:{get:function(){return this._projectionPicker}},baseLayerPicker:{get:function(){return this._baseLayerPicker}},navigationHelpButton:{get:function(){return this._navigationHelpButton}},animation:{get:function(){return this._animation}},timeline:{get:function(){return this._timeline}},fullscreenButton:{get:function(){return this._fullscreenButton}},vrButton:{get:function(){return this._vrButton}},dataSourceDisplay:{get:function(){return this._dataSourceDisplay}},entities:{get:function(){return this._dataSourceDisplay.defaultDataSource.entities}},dataSources:{get:function(){return this._dataSourceCollection}},canvas:{get:function(){return this._cesiumWidget.canvas}},scene:{get:function(){return this._cesiumWidget.scene}},shadows:{get:function(){return this.scene.shadowMap.enabled},set:function(e){this.scene.shadowMap.enabled=e}},terrainShadows:{get:function(){return this.scene.globe.shadows},set:function(e){this.scene.globe.shadows=e}},shadowMap:{get:function(){return this.scene.shadowMap}},imageryLayers:{get:function(){return this.scene.imageryLayers}},terrainProvider:{get:function(){return this.scene.terrainProvider},set:function(e){this.scene.terrainProvider=e}},camera:{get:function(){return this.scene.camera}},postProcessStages:{get:function(){return this.scene.postProcessStages}},clock:{get:function(){return this._clockViewModel.clock}},clockViewModel:{get:function(){return this._clockViewModel}},screenSpaceEventHandler:{get:function(){return this._cesiumWidget.screenSpaceEventHandler}},targetFrameRate:{get:function(){return this._cesiumWidget.targetFrameRate},set:function(e){this._cesiumWidget.targetFrameRate=e}},useDefaultRenderLoop:{get:function(){return this._cesiumWidget.useDefaultRenderLoop},set:function(e){this._cesiumWidget.useDefaultRenderLoop=e}},resolutionScale:{get:function(){return this._cesiumWidget.resolutionScale},set:function(e){this._cesiumWidget.resolutionScale=e}},useBrowserRecommendedResolution:{get:function(){return this._cesiumWidget.useBrowserRecommendedResolution},set:function(e){this._cesiumWidget.useBrowserRecommendedResolution=e}},allowDataSourcesToSuspendAnimation:{get:function(){return this._allowDataSourcesToSuspendAnimation},set:function(e){this._allowDataSourcesToSuspendAnimation=e}},trackedEntity:{get:function(){return this._trackedEntity},set:function(e){if(this._trackedEntity!==e){this._trackedEntity=e,cancelZoom(this);const t=this.scene,i=t.mode;defined(e)&&defined(e.position)?this._needTrackedEntityUpdate=!0:(this._needTrackedEntityUpdate=!1,i!==SceneMode$1.COLUMBUS_VIEW&&i!==SceneMode$1.SCENE2D||(t.screenSpaceCameraController.enableTranslate=!0),i!==SceneMode$1.COLUMBUS_VIEW&&i!==SceneMode$1.SCENE3D||(t.screenSpaceCameraController.enableTilt=!0),this._entityView=void 0,this.camera.lookAtTransform(Matrix4.IDENTITY)),this._trackedEntityChanged.raiseEvent(e),this.scene.requestRender()}}},selectedEntity:{get:function(){return this._selectedEntity},set:function(e){if(this._selectedEntity!==e){this._selectedEntity=e;const t=defined(this._selectionIndicator)?this._selectionIndicator.viewModel:void 0;defined(e)?defined(t)&&t.animateAppear():defined(t)&&t.animateDepart(),this._selectedEntityChanged.raiseEvent(e)}}},selectedEntityChanged:{get:function(){return this._selectedEntityChanged}},trackedEntityChanged:{get:function(){return this._trackedEntityChanged}},clockTrackedDataSource:{get:function(){return this._clockTrackedDataSource},set:function(e){this._clockTrackedDataSource!==e&&(this._clockTrackedDataSource=e,trackDataSourceClock(this._timeline,this.clock,e))}}}),Viewer.prototype.extend=function(e,t){if(!defined(e))throw new DeveloperError("mixin is required.");e(this,t)},Viewer.prototype.resize=function(){const e=this._cesiumWidget,t=this._container,i=t.clientWidth,n=t.clientHeight,r=defined(this._animation),o=defined(this._timeline);if(e.resize(),i===this._lastWidth&&n===this._lastHeight)return;const a=n-125,s=this._baseLayerPickerDropDown;if(defined(s)&&(s.style.maxHeight=`${a}px`),defined(this._geocoder)){this._geocoder.searchSuggestionsContainer.style.maxHeight=`${a}px`}defined(this._infoBox)&&(this._infoBox.viewModel.maxHeight=a);const c=this._timeline;let l,d=0,u=0,h=0;if(r&&"hidden"!==window.getComputedStyle(this._animation.container).visibility){const e=this._lastWidth;l=this._animation.container,i>900?(d=169,e<=900&&(l.style.width="169px",l.style.height="112px",this._animation.resize())):i>=600?(d=136,(e<600||e>900)&&(l.style.width="136px",l.style.height="90px",this._animation.resize())):(d=106,(e>600||0===e)&&(l.style.width="106px",l.style.height="70px",this._animation.resize())),u=d+5}if(o&&"hidden"!==window.getComputedStyle(this._timeline.container).visibility){const e=this._fullscreenButton,t=this._vrButton,i=c.container,n=i.style;h=i.clientHeight+3,n.left=`${d}px`;let r=0;defined(e)&&(r+=e.container.clientWidth),defined(t)&&(r+=t.container.clientWidth),n.right=`${r}px`,c.resize()}this._bottomContainer.style.left=`${u}px`,this._bottomContainer.style.bottom=`${h}px`,this._lastWidth=i,this._lastHeight=n},Viewer.prototype.forceResize=function(){this._lastWidth=0,this.resize()},Viewer.prototype.render=function(){this._cesiumWidget.render()},Viewer.prototype.isDestroyed=function(){return!1},Viewer.prototype.destroy=function(){let e;this.screenSpaceEventHandler.removeInputAction(ScreenSpaceEventType$1.LEFT_CLICK),this.screenSpaceEventHandler.removeInputAction(ScreenSpaceEventType$1.LEFT_DOUBLE_CLICK);const t=this.dataSources,i=t.length;for(e=0;e<i;e++)this._dataSourceRemoved(t,t.get(e));return this._dataSourceRemoved(void 0,this._dataSourceDisplay.defaultDataSource),this._container.removeChild(this._element),this._element.removeChild(this._toolbar),this._eventHelper.removeAll(),defined(this._geocoder)&&(this._geocoder=this._geocoder.destroy()),defined(this._homeButton)&&(this._homeButton=this._homeButton.destroy()),defined(this._sceneModePicker)&&(this._sceneModePicker=this._sceneModePicker.destroy()),defined(this._projectionPicker)&&(this._projectionPicker=this._projectionPicker.destroy()),defined(this._baseLayerPicker)&&(this._baseLayerPicker=this._baseLayerPicker.destroy()),defined(this._animation)&&(this._element.removeChild(this._animation.container),this._animation=this._animation.destroy()),defined(this._timeline)&&(this._timeline.removeEventListener("settime",onTimelineScrubfunction,!1),this._element.removeChild(this._timeline.container),this._timeline=this._timeline.destroy()),defined(this._fullscreenButton)&&(this._fullscreenSubscription.dispose(),this._element.removeChild(this._fullscreenButton.container),this._fullscreenButton=this._fullscreenButton.destroy()),defined(this._vrButton)&&(this._vrSubscription.dispose(),this._vrModeSubscription.dispose(),this._element.removeChild(this._vrButton.container),this._vrButton=this._vrButton.destroy()),defined(this._infoBox)&&(this._element.removeChild(this._infoBox.container),this._infoBox=this._infoBox.destroy()),defined(this._selectionIndicator)&&(this._element.removeChild(this._selectionIndicator.container),this._selectionIndicator=this._selectionIndicator.destroy()),this._destroyClockViewModel&&(this._clockViewModel=this._clockViewModel.destroy()),this._dataSourceDisplay=this._dataSourceDisplay.destroy(),this._cesiumWidget=this._cesiumWidget.destroy(),this._destroyDataSourceCollection&&(this._dataSourceCollection=this._dataSourceCollection.destroy()),destroyObject(this)},Viewer.prototype._dataSourceAdded=function(e,t){t.entities.collectionChanged.addEventListener(Viewer.prototype._onEntityCollectionChanged,this)},Viewer.prototype._dataSourceRemoved=function(e,t){const i=t.entities;i.collectionChanged.removeEventListener(Viewer.prototype._onEntityCollectionChanged,this),defined(this.trackedEntity)&&i.getById(this.trackedEntity.id)===this.trackedEntity&&(this.trackedEntity=void 0),defined(this.selectedEntity)&&i.getById(this.selectedEntity.id)===this.selectedEntity&&(this.selectedEntity=void 0)},Viewer.prototype._onTick=function(e){const t=e.currentTime,i=this._dataSourceDisplay.update(t);this._allowDataSourcesToSuspendAnimation&&(this._clockViewModel.canAnimate=i);const n=this._entityView;if(defined(n)){const e=this._trackedEntity;this._dataSourceDisplay.getBoundingSphere(e,!1,boundingSphereScratch)===BoundingSphereState$1.DONE&&n.update(t,boundingSphereScratch)}let r,o=!1;const a=this.selectedEntity,s=defined(a)&&this._enableInfoOrSelection;if(s&&a.isShowing&&a.isAvailable(t)){this._dataSourceDisplay.getBoundingSphere(a,!0,boundingSphereScratch)!==BoundingSphereState$1.FAILED?r=boundingSphereScratch.center:defined(a.position)&&(r=a.position.getValue(t,r)),o=defined(r)}const c=defined(this._selectionIndicator)?this._selectionIndicator.viewModel:void 0;defined(c)&&(c.position=Cartesian3.clone(r,c.position),c.showSelection=s&&o,c.update());const l=defined(this._infoBox)?this._infoBox.viewModel:void 0;defined(l)&&(l.showInfo=s,l.enableCamera=o,l.isCameraTracking=this.trackedEntity===this.selectedEntity,s?(l.titleText=defaultValue(a.name,a.id),l.description=Property.getValueOrDefault(a.description,t,"")):(l.titleText="",l.description=""))},Viewer.prototype._onEntityCollectionChanged=function(e,t,i){const n=i.length;for(let r=0;r<n;r++){const e=i[r];this.trackedEntity===e&&(this.trackedEntity=void 0),this.selectedEntity===e&&(this.selectedEntity=void 0)}},Viewer.prototype._onInfoBoxCameraClicked=function(e){if(e.isCameraTracking&&this.trackedEntity===this.selectedEntity)this.trackedEntity=void 0;else{defined(this.selectedEntity.position)?this.trackedEntity=this.selectedEntity:this.zoomTo(this.selectedEntity)}},Viewer.prototype._clearTrackedObject=function(){this.trackedEntity=void 0},Viewer.prototype._onInfoBoxClockClicked=function(e){this.selectedEntity=void 0},Viewer.prototype._clearObjects=function(){this.trackedEntity=void 0,this.selectedEntity=void 0},Viewer.prototype._onDataSourceChanged=function(e){this.clockTrackedDataSource===e&&trackDataSourceClock(this.timeline,this.clock,e)},Viewer.prototype._onDataSourceAdded=function(e,t){this._automaticallyTrackDataSourceClocks&&(this.clockTrackedDataSource=t);const i=t.entities.id,n=this._eventHelper.add(t.changedEvent,Viewer.prototype._onDataSourceChanged,this);this._dataSourceChangedListeners[i]=n},Viewer.prototype._onDataSourceRemoved=function(e,t){const i=this.clockTrackedDataSource===t,n=t.entities.id;if(this._dataSourceChangedListeners[n](),this._dataSourceChangedListeners[n]=void 0,i){const t=e.length;this._automaticallyTrackDataSourceClocks&&t>0?this.clockTrackedDataSource=e.get(t-1):this.clockTrackedDataSource=void 0}},Viewer.prototype.zoomTo=function(e,t){return zoomToOrFly(this,e,{offset:t},!1)},Viewer.prototype.flyTo=function(e,t){return zoomToOrFly(this,e,t,!0)},Viewer.prototype._postRender=function(){updateZoomTarget(this),updateTrackedEntity(this)};const scratchTranslation=new Cartesian3,scratchScale=new Cartesian3,scratchHeadingPitchRoll=new HeadingPitchRoll,scratchRotation=new Matrix3;function setModelMatrix(e){const t=Cartesian3.fromElements(e.translationX,e.translationY,e.translationZ,scratchTranslation),i=Cartesian3.fromElements(e.scaleX,e.scaleY,e.scaleZ,scratchScale),n=scratchHeadingPitchRoll;n.heading=e.angleX,n.pitch=e.angleY,n.roll=e.angleZ;const r=Matrix3.fromHeadingPitchRoll(n,scratchRotation),o=Matrix3.multiplyByScale(r,i,r);e._voxelPrimitive.modelMatrix=Matrix4.fromRotationTranslation(o,t,e._voxelPrimitive.modelMatrix)}function VoxelInspector(e,t){Check$1.defined("container",e),Check$1.typeOf.object("scene",t),e=getElement(e);const i=document.createElement("div"),n=new VoxelInspectorViewModel(t);this._viewModel=n,this._container=e,this._element=i;const r=document.createElement("div");r.textContent="Voxel Inspector",r.className="cesium-cesiumInspector-button",r.setAttribute("data-bind","click: toggleInspector"),i.appendChild(r),i.className="cesium-cesiumInspector cesium-VoxelInspector",i.setAttribute("data-bind",'css: { "cesium-cesiumInspector-visible" : inspectorVisible, "cesium-cesiumInspector-hidden" : !inspectorVisible}'),e.appendChild(i);const o=document.createElement("div");o.className="cesium-cesiumInspector-dropDown",i.appendChild(o);const a=InspectorShared$1.createSection,s=InspectorShared$1.createCheckbox,c=InspectorShared$1.createRangeInput,l=InspectorShared$1.createButton,d=a(o,"Display","displayVisible","toggleDisplay"),u=a(o,"Transform","transformVisible","toggleTransform"),h=a(o,"Bounds","boundsVisible","toggleBounds"),p=a(o,"Clipping","clippingVisible","toggleClipping"),f=a(o,"Shader","shaderVisible","toggleShader");d.appendChild(s("Depth Test","depthTest")),d.appendChild(s("Show","show")),d.appendChild(s("Disable Update","disableUpdate")),d.appendChild(s("Debug Draw","debugDraw")),d.appendChild(s("Jitter","jitter")),d.appendChild(s("Nearest Sampling","nearestSampling")),d.appendChild(c("Screen Space Error","screenSpaceError",0,128)),d.appendChild(c("Step Size","stepSize",0,2));const m=CesiumMath$1.PI;u.appendChild(c("Translation X","translationX",-10,10)),u.appendChild(c("Translation Y","translationY",-10,10)),u.appendChild(c("Translation Z","translationZ",-10,10)),u.appendChild(c("Scale X","scaleX",0,10)),u.appendChild(c("Scale Y","scaleY",0,10)),u.appendChild(c("Scale Z","scaleZ",0,10)),u.appendChild(c("Heading","angleX",-m,+m)),u.appendChild(c("Pitch","angleY",-m,+m)),u.appendChild(c("Roll","angleZ",-m,+m));const g=VoxelShapeType$1.getMinBounds(VoxelShapeType$1.BOX),_=VoxelShapeType$1.getMaxBounds(VoxelShapeType$1.BOX),y=Cartesian3.fromElements(VoxelShapeType$1.getMinBounds(VoxelShapeType$1.ELLIPSOID).x,VoxelShapeType$1.getMinBounds(VoxelShapeType$1.ELLIPSOID).y,-Ellipsoid.WGS84.maximumRadius,new Cartesian3),C=Cartesian3.fromElements(VoxelShapeType$1.getMaxBounds(VoxelShapeType$1.ELLIPSOID).x,VoxelShapeType$1.getMaxBounds(VoxelShapeType$1.ELLIPSOID).y,1e7,new Cartesian3),S=VoxelShapeType$1.getMinBounds(VoxelShapeType$1.CYLINDER),A=VoxelShapeType$1.getMaxBounds(VoxelShapeType$1.CYLINDER);makeCoordinateRange("Max X","Min X","Max Y","Min Y","Max Z","Min Z","boundsBoxMaxX","boundsBoxMinX","boundsBoxMaxY","boundsBoxMinY","boundsBoxMaxZ","boundsBoxMinZ",g,_,"shapeIsBox",h),makeCoordinateRange("Max Longitude","Min Longitude","Max Latitude","Min Latitude","Max Height","Min Height","boundsEllipsoidMaxLongitude","boundsEllipsoidMinLongitude","boundsEllipsoidMaxLatitude","boundsEllipsoidMinLatitude","boundsEllipsoidMaxHeight","boundsEllipsoidMinHeight",y,C,"shapeIsEllipsoid",h),makeCoordinateRange("Max Radius","Min Radius","Max Height","Min Height","Max Angle","Min Angle","boundsCylinderMaxRadius","boundsCylinderMinRadius","boundsCylinderMaxHeight","boundsCylinderMinHeight","boundsCylinderMaxAngle","boundsCylinderMinAngle",S,A,"shapeIsCylinder",h),makeCoordinateRange("Max X","Min X","Max Y","Min Y","Max Z","Min Z","clippingBoxMaxX","clippingBoxMinX","clippingBoxMaxY","clippingBoxMinY","clippingBoxMaxZ","clippingBoxMinZ",g,_,"shapeIsBox",p),makeCoordinateRange("Max Longitude","Min Longitude","Max Latitude","Min Latitude","Max Height","Min Height","clippingEllipsoidMaxLongitude","clippingEllipsoidMinLongitude","clippingEllipsoidMaxLatitude","clippingEllipsoidMinLatitude","clippingEllipsoidMaxHeight","clippingEllipsoidMinHeight",y,C,"shapeIsEllipsoid",p),makeCoordinateRange("Max Radius","Min Radius","Max Height","Min Height","Max Angle","Min Angle","clippingCylinderMaxRadius","clippingCylinderMinRadius","clippingCylinderMaxHeight","clippingCylinderMinHeight","clippingCylinderMaxAngle","clippingCylinderMinAngle",S,A,"shapeIsCylinder",p);const T=document.createElement("div");f.appendChild(T);const v=document.createElement("textarea");v.setAttribute("data-bind","textInput: shaderString, event: { keydown: shaderEditorKeyPress }"),T.className="cesium-cesiumInspector-styleEditor",T.appendChild(v);const E=l("Compile (Ctrl+Enter)","compileShader");T.appendChild(E);const b=document.createElement("label");b.style.display="block",b.setAttribute("data-bind","text: shaderCompilationMessage, style: {color: shaderCompilationSuccess ? 'green' : 'red'}"),T.appendChild(b),knockout$1.applyBindings(n,i)}function makeCoordinateRange(e,t,i,n,r,o,a,s,c,l,d,u,h,p,f,m){const g=InspectorShared$1.createRangeInput,_=h,y=p,C=m.appendChild(document.createElement("div"));C.setAttribute("data-bind",`if: ${f}`),C.appendChild(g(e,a,_.x,y.x)),C.appendChild(g(t,s,_.x,y.x)),C.appendChild(g(i,c,_.y,y.y)),C.appendChild(g(n,l,_.y,y.y)),C.appendChild(g(r,d,_.z,y.z)),C.appendChild(g(o,u,_.z,y.z))}function viewerVoxelInspectorMixin(e){Check$1.typeOf.object("viewer",e);const t=document.createElement("div");t.className="cesium-viewer-voxelInspectorContainer",e.container.appendChild(t);const i=new VoxelInspector(t,e.scene);Object.defineProperties(e,{voxelInspector:{get:function(){return i}}})}Object.defineProperties(VoxelInspectorViewModel.prototype,{scene:{get:function(){return this._scene}},voxelPrimitive:{get:function(){return this._voxelPrimitive},set:function(e){if(defined(this._customShaderCompilationRemoveCallback)&&this._customShaderCompilationRemoveCallback(),defined(e)){this._voxelPrimitive=e;const t=this;t._voxelPrimitive._readyPromise.then((function(){t._customShaderCompilationRemoveCallback=t._voxelPrimitive.customShaderCompilationEvent.addEventListener((function(e){const i=t._voxelPrimitive.customShader.fragmentShaderText;t.shaderString=formatShaderString(i),defined(e)?(t.shaderCompilationMessage=e.message,t.shaderCompilationSuccess=!1):(t.shaderCompilationMessage="Shader compiled successfully!",t.shaderCompilationSuccess=!0)})),t._modelMatrixReady=!1;for(let e=0;e<t._getPrimitiveFunctions.length;e++)t._getPrimitiveFunctions[e]();t._modelMatrixReady=!0,setModelMatrix(t)}))}}}}),VoxelInspectorViewModel.prototype.toggleInspector=function(){this.inspectorVisible=!this.inspectorVisible},VoxelInspectorViewModel.prototype.toggleDisplay=function(){this.displayVisible=!this.displayVisible},VoxelInspectorViewModel.prototype.toggleTransform=function(){this.transformVisible=!this.transformVisible},VoxelInspectorViewModel.prototype.toggleBounds=function(){this.boundsVisible=!this.boundsVisible},VoxelInspectorViewModel.prototype.toggleClipping=function(){this.clippingVisible=!this.clippingVisible},VoxelInspectorViewModel.prototype.toggleShader=function(){this.shaderVisible=!this.shaderVisible},VoxelInspectorViewModel.prototype.compileShader=function(){defined(this._voxelPrimitive)&&(this._voxelPrimitive.customShader=new CustomShader({fragmentShaderText:this.shaderString,uniforms:this._voxelPrimitive.customShader.uniforms}))},VoxelInspectorViewModel.prototype.shaderEditorKeyPress=function(e,t){if(9===t.keyCode){t.preventDefault();const e=t.target,i=e.selectionStart,n=e.selectionEnd;let r=n;const o=e.value.slice(i,n).split("\n"),a=o.length;let s;if(t.shiftKey)for(s=0;s<a;++s)" "===o[s][0]&&(" "===o[s][1]?(o[s]=o[s].substr(2),r-=2):(o[s]=o[s].substr(1),r-=1));else for(s=0;s<a;++s)o[s]=` ${o[s]}`,r+=2;const c=o.join("\n");e.value=e.value.slice(0,i)+c+e.value.slice(n),e.selectionStart=i!==n?i:r,e.selectionEnd=r}else!t.ctrlKey||10!==t.keyCode&&13!==t.keyCode||this.compileShader();return!0},VoxelInspectorViewModel.prototype.isDestroyed=function(){return!1},VoxelInspectorViewModel.prototype.destroy=function(){const e=this;return this._definedProperties.forEach((function(t){knockout$1.getObservable(e,t).dispose()})),destroyObject(this)},Object.defineProperties(VoxelInspector.prototype,{container:{get:function(){return this._container}},viewModel:{get:function(){return this._viewModel}}}),VoxelInspector.prototype.isDestroyed=function(){return!1},VoxelInspector.prototype.destroy=function(){return knockout$1.cleanNode(this._element),this._container.removeChild(this._element),this.viewModel.destroy(),destroyObject(this)};const VERSION="1.105.2",Cesium=Object.freeze(Object.defineProperty({__proto__:null,VERSION:VERSION,AutomaticUniforms:AutomaticUniforms$1,Buffer:Buffer$1,BufferUsage:BufferUsage$1,ClearCommand:ClearCommand,ComputeCommand:ComputeCommand,ComputeEngine:ComputeEngine,Context:Context,ContextLimits:ContextLimits$1,CubeMap:CubeMap,CubeMapFace:CubeMapFace,DrawCommand:DrawCommand,Framebuffer:Framebuffer,FramebufferManager:FramebufferManager,MipmapHint:MipmapHint$1,MultisampleFramebuffer:MultisampleFramebuffer,Pass:Pass$1,PassState:PassState,PixelDatatype:PixelDatatype$1,RenderState:RenderState,Renderbuffer:Renderbuffer,RenderbufferFormat:RenderbufferFormat$1,Sampler:Sampler,ShaderBuilder:ShaderBuilder,ShaderCache:ShaderCache,ShaderDestination:ShaderDestination$1,ShaderFunction:ShaderFunction,ShaderProgram:ShaderProgram,ShaderSource:ShaderSource,ShaderStruct:ShaderStruct,Texture:Texture,TextureCache:TextureCache,TextureMagnificationFilter:TextureMagnificationFilter$1,TextureMinificationFilter:TextureMinificationFilter$1,TextureWrap:TextureWrap$1,UniformState:UniformState,VertexArray:VertexArray,VertexArrayFacade:VertexArrayFacade,createUniform:createUniform$1,createUniformArray:createUniformArray,demodernizeShader:demodernizeShader,freezeRenderState:freezeRenderState,loadCubeMap:loadCubeMap,BillboardGraphics:BillboardGraphics,BillboardVisualizer:BillboardVisualizer,BoundingSphereState:BoundingSphereState$1,BoxGeometryUpdater:BoxGeometryUpdater,BoxGraphics:BoxGraphics,CallbackProperty:CallbackProperty,Cesium3DTilesetGraphics:Cesium3DTilesetGraphics,Cesium3DTilesetVisualizer:Cesium3DTilesetVisualizer,CheckerboardMaterialProperty:CheckerboardMaterialProperty,ColorMaterialProperty:ColorMaterialProperty,CompositeEntityCollection:CompositeEntityCollection,CompositeMaterialProperty:CompositeMaterialProperty,CompositePositionProperty:CompositePositionProperty,CompositeProperty:CompositeProperty,ConstantPositionProperty:ConstantPositionProperty,ConstantProperty:ConstantProperty,CorridorGeometryUpdater:CorridorGeometryUpdater,CorridorGraphics:CorridorGraphics,CustomDataSource:CustomDataSource,CylinderGeometryUpdater:CylinderGeometryUpdater,CylinderGraphics:CylinderGraphics,CzmlDataSource:CzmlDataSource,DataSource:DataSource,DataSourceClock:DataSourceClock,DataSourceCollection:DataSourceCollection,DataSourceDisplay:DataSourceDisplay,DynamicGeometryBatch:DynamicGeometryBatch,DynamicGeometryUpdater:DynamicGeometryUpdater$1,EllipseGeometryUpdater:EllipseGeometryUpdater,EllipseGraphics:EllipseGraphics,EllipsoidGeometryUpdater:EllipsoidGeometryUpdater,EllipsoidGraphics:EllipsoidGraphics,Entity:Entity,EntityCluster:EntityCluster,EntityCollection:EntityCollection,EntityView:EntityView,GeoJsonDataSource:GeoJsonDataSource,GeometryUpdater:GeometryUpdater,GeometryVisualizer:GeometryVisualizer,GpxDataSource:GpxDataSource,GridMaterialProperty:GridMaterialProperty,GroundGeometryUpdater:GroundGeometryUpdater,ImageMaterialProperty:ImageMaterialProperty,KmlCamera:KmlCamera,KmlDataSource:KmlDataSource,KmlLookAt:KmlLookAt,KmlTour:KmlTour,KmlTourFlyTo:KmlTourFlyTo,KmlTourWait:KmlTourWait,LabelGraphics:LabelGraphics,LabelVisualizer:LabelVisualizer,MaterialProperty:MaterialProperty,ModelGraphics:ModelGraphics,ModelVisualizer:ModelVisualizer,NodeTransformationProperty:NodeTransformationProperty,PathGraphics:PathGraphics,PathVisualizer:PathVisualizer,PlaneGeometryUpdater:PlaneGeometryUpdater,PlaneGraphics:PlaneGraphics,PointGraphics:PointGraphics,PointVisualizer:PointVisualizer,PolygonGeometryUpdater:PolygonGeometryUpdater,PolygonGraphics:PolygonGraphics,PolylineArrowMaterialProperty:PolylineArrowMaterialProperty,PolylineDashMaterialProperty:PolylineDashMaterialProperty,PolylineGeometryUpdater:PolylineGeometryUpdater,PolylineGlowMaterialProperty:PolylineGlowMaterialProperty,PolylineGraphics:PolylineGraphics,PolylineOutlineMaterialProperty:PolylineOutlineMaterialProperty,PolylineVisualizer:PolylineVisualizer,PolylineVolumeGeometryUpdater:PolylineVolumeGeometryUpdater,PolylineVolumeGraphics:PolylineVolumeGraphics,PositionProperty:PositionProperty,PositionPropertyArray:PositionPropertyArray,Property:Property,PropertyArray:PropertyArray,PropertyBag:PropertyBag,RectangleGeometryUpdater:RectangleGeometryUpdater,RectangleGraphics:RectangleGraphics,ReferenceProperty:ReferenceProperty,Rotation:Rotation$1,SampledPositionProperty:SampledPositionProperty,SampledProperty:SampledProperty,ScaledPositionProperty:ScaledPositionProperty,StaticGeometryColorBatch:StaticGeometryColorBatch,StaticGeometryPerMaterialBatch:StaticGeometryPerMaterialBatch,StaticGroundGeometryColorBatch:StaticGroundGeometryColorBatch,StaticGroundGeometryPerMaterialBatch:StaticGroundGeometryPerMaterialBatch,StaticGroundPolylinePerMaterialBatch:StaticGroundPolylinePerMaterialBatch,StaticOutlineGeometryBatch:StaticOutlineGeometryBatch,StripeMaterialProperty:StripeMaterialProperty,StripeOrientation:StripeOrientation$1,TerrainOffsetProperty:TerrainOffsetProperty,TimeIntervalCollectionPositionProperty:TimeIntervalCollectionPositionProperty,TimeIntervalCollectionProperty:TimeIntervalCollectionProperty,VelocityOrientationProperty:VelocityOrientationProperty,VelocityVectorProperty:VelocityVectorProperty,Visualizer:Visualizer,WallGeometryUpdater:WallGeometryUpdater,WallGraphics:WallGraphics,createMaterialPropertyDescriptor:createMaterialPropertyDescriptor,createPropertyDescriptor:createPropertyDescriptor,createRawPropertyDescriptor:createRawPropertyDescriptor,exportKml:exportKml,getElement:getElement,heightReferenceOnEntityPropertyChanged:heightReferenceOnEntityPropertyChanged,CesiumWidget:CesiumWidget,_shadersAdjustTranslucentFS:AdjustTranslucentFS,_shadersAtmosphereCommon:AtmosphereCommon,_shadersBillboardCollectionFS:BillboardCollectionFS,_shadersBillboardCollectionVS:BillboardCollectionVS,_shadersBrdfLutGeneratorFS:BrdfLutGeneratorFS,_shadersCloudCollectionFS:CloudCollectionFS,_shadersCloudCollectionVS:CloudCollectionVS,_shadersCloudNoiseFS:CloudNoiseFS,_shadersCloudNoiseVS:CloudNoiseVS,_shadersCompareAndPackTranslucentDepth:CompareAndPackTranslucentDepth,_shadersCompositeOITFS:CompositeOITFS,_shadersDepthPlaneFS:DepthPlaneFS,_shadersDepthPlaneVS:DepthPlaneVS,_shadersEllipsoidFS:EllipsoidFS,_shadersEllipsoidVS:EllipsoidVS,_shadersFXAA3_11:FXAA3_11,_shadersGlobeFS:GlobeFS,_shadersGlobeVS:GlobeVS,_shadersGroundAtmosphere:GroundAtmosphere,_shadersOctahedralProjectionAtlasFS:OctahedralProjectionAtlasFS,_shadersOctahedralProjectionFS:OctahedralProjectionFS,_shadersOctahedralProjectionVS:OctahedralProjectionVS,_shadersPointPrimitiveCollectionFS:PointPrimitiveCollectionFS,_shadersPointPrimitiveCollectionVS:PointPrimitiveCollectionVS,_shadersPolylineCommon:PolylineCommon,_shadersPolylineFS:PolylineFS$1,_shadersPolylineShadowVolumeFS:PolylineShadowVolumeFS,_shadersPolylineShadowVolumeMorphFS:PolylineShadowVolumeMorphFS,_shadersPolylineShadowVolumeMorphVS:PolylineShadowVolumeMorphVS,_shadersPolylineShadowVolumeVS:PolylineShadowVolumeVS,_shadersPolylineVS:PolylineVS,_shadersReprojectWebMercatorFS:ReprojectWebMercatorFS,_shadersReprojectWebMercatorVS:ReprojectWebMercatorVS,_shadersShadowVolumeAppearanceFS:ShadowVolumeAppearanceFS,_shadersShadowVolumeAppearanceVS:ShadowVolumeAppearanceVS,_shadersShadowVolumeFS:ShadowVolumeFS,_shadersSkyAtmosphereCommon:SkyAtmosphereCommon,_shadersSkyAtmosphereFS:SkyAtmosphereFS,_shadersSkyAtmosphereVS:SkyAtmosphereVS,_shadersSkyBoxFS:SkyBoxFS,_shadersSkyBoxVS:SkyBoxVS,_shadersSunFS:SunFS,_shadersSunTextureFS:SunTextureFS,_shadersSunVS:SunVS,_shadersVector3DTileClampedPolylinesFS:Vector3DTileClampedPolylinesFS,_shadersVector3DTileClampedPolylinesVS:Vector3DTileClampedPolylinesVS,_shadersVector3DTilePolylinesVS:Vector3DTilePolylinesVS,_shadersVectorTileVS:VectorTileVS,_shadersViewportQuadFS:ViewportQuadFS,_shadersViewportQuadVS:ViewportQuadVS,ApproximateTerrainHeights:ApproximateTerrainHeights$1,ArcGISTiledElevationTerrainProvider:ArcGISTiledElevationTerrainProvider,ArcType:ArcType$1,ArticulationStageType:ArticulationStageType$1,AssociativeArray:AssociativeArray,AttributeCompression:AttributeCompression$1,AxisAlignedBoundingBox:AxisAlignedBoundingBox,BingMapsGeocoderService:BingMapsGeocoderService,BoundingRectangle:BoundingRectangle,BoundingSphere:BoundingSphere,BoxGeometry:BoxGeometry,BoxOutlineGeometry:BoxOutlineGeometry,Cartesian2:Cartesian2,Cartesian3:Cartesian3,Cartesian4:Cartesian4,Cartographic:Cartographic,CartographicGeocoderService:CartographicGeocoderService,CatmullRomSpline:CatmullRomSpline,CesiumTerrainProvider:CesiumTerrainProvider,Check:Check$1,CircleGeometry:CircleGeometry,CircleOutlineGeometry:CircleOutlineGeometry,Clock:Clock,ClockRange:ClockRange$1,ClockStep:ClockStep$1,Color:Color,ColorGeometryInstanceAttribute:ColorGeometryInstanceAttribute,ComponentDatatype:ComponentDatatype$1,CompressedTextureBuffer:CompressedTextureBuffer,ConstantSpline:ConstantSpline,CoplanarPolygonGeometry:CoplanarPolygonGeometry,CoplanarPolygonGeometryLibrary:CoplanarPolygonGeometryLibrary$1,CoplanarPolygonOutlineGeometry:CoplanarPolygonOutlineGeometry,CornerType:CornerType$1,CorridorGeometry:CorridorGeometry,CorridorGeometryLibrary:CorridorGeometryLibrary$1,CorridorOutlineGeometry:CorridorOutlineGeometry,Credit:Credit,CubicRealPolynomial:CubicRealPolynomial$1,CullingVolume:CullingVolume,CustomHeightmapTerrainProvider:CustomHeightmapTerrainProvider,CylinderGeometry:CylinderGeometry,CylinderGeometryLibrary:CylinderGeometryLibrary$1,CylinderOutlineGeometry:CylinderOutlineGeometry,DefaultProxy:DefaultProxy,DeveloperError:DeveloperError,DistanceDisplayCondition:DistanceDisplayCondition,DistanceDisplayConditionGeometryInstanceAttribute:DistanceDisplayConditionGeometryInstanceAttribute,DoubleEndedPriorityQueue:DoubleEndedPriorityQueue,DoublyLinkedList:DoublyLinkedList,EarthOrientationParameters:EarthOrientationParameters,EarthOrientationParametersSample:EarthOrientationParametersSample,EasingFunction:EasingFunction$1,EllipseGeometry:EllipseGeometry,EllipseGeometryLibrary:EllipseGeometryLibrary$1,EllipseOutlineGeometry:EllipseOutlineGeometry,Ellipsoid:Ellipsoid,EllipsoidGeodesic:EllipsoidGeodesic,EllipsoidGeometry:EllipsoidGeometry,EllipsoidOutlineGeometry:EllipsoidOutlineGeometry,EllipsoidRhumbLine:EllipsoidRhumbLine,EllipsoidTangentPlane:EllipsoidTangentPlane,EllipsoidTerrainProvider:EllipsoidTerrainProvider,EllipsoidalOccluder:EllipsoidalOccluder,EncodedCartesian3:EncodedCartesian3,Event:Event,EventHelper:EventHelper,ExtrapolationType:ExtrapolationType$1,FeatureDetection:FeatureDetection$1,FrustumGeometry:FrustumGeometry,FrustumOutlineGeometry:FrustumOutlineGeometry,Fullscreen:Fullscreen$1,GeocodeType:GeocodeType$1,GeocoderService:GeocoderService,GeographicProjection:GeographicProjection,GeographicTilingScheme:GeographicTilingScheme,Geometry:Geometry,GeometryAttribute:GeometryAttribute,GeometryAttributes:GeometryAttributes,GeometryFactory:GeometryFactory,GeometryInstance:GeometryInstance,GeometryInstanceAttribute:GeometryInstanceAttribute,GeometryOffsetAttribute:GeometryOffsetAttribute$1,GeometryPipeline:GeometryPipeline$1,GeometryType:GeometryType$1,GoogleEarthEnterpriseMetadata:GoogleEarthEnterpriseMetadata,GoogleEarthEnterpriseTerrainData:GoogleEarthEnterpriseTerrainData,GoogleEarthEnterpriseTerrainProvider:GoogleEarthEnterpriseTerrainProvider,GoogleEarthEnterpriseTileInformation:GoogleEarthEnterpriseTileInformation,GoogleMaps:GoogleMaps$1,GregorianDate:GregorianDate,GroundPolylineGeometry:GroundPolylineGeometry,HeadingPitchRange:HeadingPitchRange,HeadingPitchRoll:HeadingPitchRoll,Heap:Heap,HeightmapEncoding:HeightmapEncoding$1,HeightmapTerrainData:HeightmapTerrainData,HeightmapTessellator:HeightmapTessellator$1,HermitePolynomialApproximation:HermitePolynomialApproximation$1,HermiteSpline:HermiteSpline,HilbertOrder:HilbertOrder$1,Iau2000Orientation:Iau2000Orientation$1,Iau2006XysData:Iau2006XysData,Iau2006XysSample:Iau2006XysSample,IauOrientationAxes:IauOrientationAxes,IauOrientationParameters:IauOrientationParameters,IndexDatatype:IndexDatatype$1,InterpolationAlgorithm:InterpolationAlgorithm$1,InterpolationType:InterpolationType$1,Intersect:Intersect$1,IntersectionTests:IntersectionTests$1,Intersections2D:Intersections2D$1,Interval:Interval,Ion:Ion$1,IonGeocoderService:IonGeocoderService,IonResource:IonResource,Iso8601:Iso8601$1,JulianDate:JulianDate,KTX2Transcoder:KTX2Transcoder,KeyboardEventModifier:KeyboardEventModifier$1,LagrangePolynomialApproximation:LagrangePolynomialApproximation$1,LeapSecond:LeapSecond,LinearApproximation:LinearApproximation$1,LinearSpline:LinearSpline,ManagedArray:ManagedArray,MapProjection:MapProjection,Math:CesiumMath$1,Matrix2:Matrix2,Matrix3:Matrix3,Matrix4:Matrix4,MorphWeightSpline:MorphWeightSpline,MortonOrder:MortonOrder$1,NearFarScalar:NearFarScalar,Occluder:Occluder,OffsetGeometryInstanceAttribute:OffsetGeometryInstanceAttribute,OpenCageGeocoderService:OpenCageGeocoderService,OrientedBoundingBox:OrientedBoundingBox,OrthographicFrustum:OrthographicFrustum,OrthographicOffCenterFrustum:OrthographicOffCenterFrustum,Packable:Packable$1,PackableForInterpolation:PackableForInterpolation$1,PeliasGeocoderService:PeliasGeocoderService,PerspectiveFrustum:PerspectiveFrustum,PerspectiveOffCenterFrustum:PerspectiveOffCenterFrustum,PinBuilder:PinBuilder,PixelFormat:PixelFormat$1,Plane:Plane,PlaneGeometry:PlaneGeometry,PlaneOutlineGeometry:PlaneOutlineGeometry,PolygonGeometry:PolygonGeometry,PolygonGeometryLibrary:PolygonGeometryLibrary$1,PolygonHierarchy:PolygonHierarchy,PolygonOutlineGeometry:PolygonOutlineGeometry,PolygonPipeline:PolygonPipeline$1,PolylineGeometry:PolylineGeometry,PolylinePipeline:PolylinePipeline$1,PolylineVolumeGeometry:PolylineVolumeGeometry,PolylineVolumeGeometryLibrary:PolylineVolumeGeometryLibrary$1,PolylineVolumeOutlineGeometry:PolylineVolumeOutlineGeometry,PrimitiveType:PrimitiveType$1,Proxy:Proxy,QuadraticRealPolynomial:QuadraticRealPolynomial$1,QuantizedMeshTerrainData:QuantizedMeshTerrainData,QuarticRealPolynomial:QuarticRealPolynomial$1,Quaternion:Quaternion,QuaternionSpline:QuaternionSpline,Queue:Queue,Ray:Ray,Rectangle:Rectangle,RectangleCollisionChecker:RectangleCollisionChecker,RectangleGeometry:RectangleGeometry,RectangleGeometryLibrary:RectangleGeometryLibrary$1,RectangleOutlineGeometry:RectangleOutlineGeometry,ReferenceFrame:ReferenceFrame$1,Request:Request,RequestErrorEvent:RequestErrorEvent,RequestScheduler:RequestScheduler,RequestState:RequestState$1,RequestType:RequestType$1,Resource:Resource,RuntimeError:RuntimeError,S2Cell:S2Cell,ScreenSpaceEventHandler:ScreenSpaceEventHandler,ScreenSpaceEventType:ScreenSpaceEventType$1,ShowGeometryInstanceAttribute:ShowGeometryInstanceAttribute,Simon1994PlanetaryPositions:Simon1994PlanetaryPositions$1,SimplePolylineGeometry:SimplePolylineGeometry,SphereGeometry:SphereGeometry,SphereOutlineGeometry:SphereOutlineGeometry,Spherical:Spherical,Spline:Spline,SteppedSpline:SteppedSpline,TaskProcessor:TaskProcessor,TerrainData:TerrainData,TerrainEncoding:TerrainEncoding,TerrainExaggeration:TerrainExaggeration$1,TerrainMesh:TerrainMesh,TerrainProvider:TerrainProvider,TerrainQuantization:TerrainQuantization$1,TileAvailability:TileAvailability,TileEdge:TileEdge$1,TileProviderError:TileProviderError,TilingScheme:TilingScheme,TimeConstants:TimeConstants$1,TimeInterval:TimeInterval,TimeIntervalCollection:TimeIntervalCollection,TimeStandard:TimeStandard$1,Tipsify:Tipsify$1,Transforms:Transforms$1,TranslationRotationScale:TranslationRotationScale,TridiagonalSystemSolver:TridiagonalSystemSolver$1,TrustedServers:TrustedServers$1,VRTheWorldTerrainProvider:VRTheWorldTerrainProvider,VertexFormat:VertexFormat,VideoSynchronizer:VideoSynchronizer,Visibility:Visibility$1,VulkanConstants:VulkanConstants$1,WallGeometry:WallGeometry,WallGeometryLibrary:WallGeometryLibrary$1,WallOutlineGeometry:WallOutlineGeometry,WebGLConstants:WebGLConstants$1,WebMercatorProjection:WebMercatorProjection,WebMercatorTilingScheme:WebMercatorTilingScheme,WindingOrder:WindingOrder$1,WireframeIndexGenerator:WireframeIndexGenerator$1,appendForwardSlash:appendForwardSlash,arrayRemoveDuplicates:arrayRemoveDuplicates,barycentricCoordinates:barycentricCoordinates,binarySearch:binarySearch,buildModuleUrl:buildModuleUrl,clone:clone$1,combine:combine$2,createGuid:createGuid,createWorldTerrain:createWorldTerrain,createWorldTerrainAsync:createWorldTerrainAsync,decodeGoogleEarthEnterpriseData:decodeGoogleEarthEnterpriseData,decodeVectorPolylinePositions:decodeVectorPolylinePositions,defaultValue:defaultValue,defer:defer,defined:defined,deprecationWarning:deprecationWarning,destroyObject:destroyObject,formatError:formatError,getAbsoluteUri:getAbsoluteUri,getBaseUri:getBaseUri,getExtensionFromUri:getExtensionFromUri,getFilenameFromUri:getFilenameFromUri,getImageFromTypedArray:getImageFromTypedArray,getImagePixels:getImagePixels,getJsonFromTypedArray:getJsonFromTypedArray,getMagic:getMagic,getStringFromTypedArray:getStringFromTypedArray,getTimestamp:getTimestamp$1,isBitSet:isBitSet,isBlobUri:isBlobUri,isCrossOriginUrl:isCrossOriginUrl,isDataUri:isDataUri,isLeapYear:isLeapYear,loadAndExecuteScript:loadAndExecuteScript,loadImageFromTypedArray:loadImageFromTypedArray,loadKTX2:loadKTX2,mergeSort:mergeSort,objectToQuery:objectToQuery,oneTimeWarning:oneTimeWarning,parseResponseHeaders:parseResponseHeaders,pointInsideTriangle:pointInsideTriangle,queryToObject:queryToObject,resizeImageToNextPowerOfTwo:resizeImageToNextPowerOfTwo,sampleTerrain:sampleTerrain,sampleTerrainMostDetailed:sampleTerrainMostDetailed,scaleToGeodeticSurface:scaleToGeodeticSurface,subdivideArray:subdivideArray,webGLConstantToGlslType:webGLConstantToGlslType,wrapFunction:wrapFunction,writeTextToCanvas:writeTextToCanvas,AlphaMode:AlphaMode$1,Appearance:Appearance,ArcGisBaseMapType:ArcGisBaseMapType$1,ArcGisMapServerImageryProvider:ArcGisMapServerImageryProvider,ArcGisMapService:ArcGisMapService$1,AttributeType:AttributeType$1,AutoExposure:AutoExposure,Axis:Axis$1,B3dmParser:B3dmParser$1,BatchTable:BatchTable,BatchTableHierarchy:BatchTableHierarchy,BatchTexture:BatchTexture,Billboard:Billboard,BillboardCollection:BillboardCollection,BingMapsImageryProvider:BingMapsImageryProvider,BingMapsStyle:BingMapsStyle$1,BlendEquation:BlendEquation$1,BlendFunction:BlendFunction$1,BlendOption:BlendOption$1,BlendingState:BlendingState$1,BoxEmitter:BoxEmitter,BrdfLutGenerator:BrdfLutGenerator,BufferLoader:BufferLoader,Camera:Camera,CameraEventAggregator:CameraEventAggregator,CameraEventType:CameraEventType$1,CameraFlightPath:CameraFlightPath$1,Cesium3DContentGroup:Cesium3DContentGroup,Cesium3DTile:Cesium3DTile,Cesium3DTileBatchTable:Cesium3DTileBatchTable,Cesium3DTileColorBlendMode:Cesium3DTileColorBlendMode$1,Cesium3DTileContent:Cesium3DTileContent,Cesium3DTileContentFactory:Cesium3DTileContentFactory$1,Cesium3DTileContentState:Cesium3DTileContentState$1,Cesium3DTileContentType:Cesium3DTileContentType$1,Cesium3DTileFeature:Cesium3DTileFeature,Cesium3DTileFeatureTable:Cesium3DTileFeatureTable,Cesium3DTileOptimizationHint:Cesium3DTileOptimizationHint$1,Cesium3DTileOptimizations:Cesium3DTileOptimizations$1,Cesium3DTilePass:Cesium3DTilePass$1,Cesium3DTilePassState:Cesium3DTilePassState,Cesium3DTilePointFeature:Cesium3DTilePointFeature,Cesium3DTileRefine:Cesium3DTileRefine$1,Cesium3DTileStyle:Cesium3DTileStyle,Cesium3DTileStyleEngine:Cesium3DTileStyleEngine,Cesium3DTilesVoxelProvider:Cesium3DTilesVoxelProvider,Cesium3DTileset:Cesium3DTileset,Cesium3DTilesetBaseTraversal:Cesium3DTilesetBaseTraversal,Cesium3DTilesetCache:Cesium3DTilesetCache,Cesium3DTilesetHeatmap:Cesium3DTilesetHeatmap,Cesium3DTilesetMetadata:Cesium3DTilesetMetadata,Cesium3DTilesetMostDetailedTraversal:Cesium3DTilesetMostDetailedTraversal,Cesium3DTilesetSkipTraversal:Cesium3DTilesetSkipTraversal,Cesium3DTilesetStatistics:Cesium3DTilesetStatistics,Cesium3DTilesetTraversal:Cesium3DTilesetTraversal,CircleEmitter:CircleEmitter,ClassificationPrimitive:ClassificationPrimitive,ClassificationType:ClassificationType$1,ClippingPlane:ClippingPlane,ClippingPlaneCollection:ClippingPlaneCollection,CloudCollection:CloudCollection,CloudType:CloudType$1,ColorBlendMode:ColorBlendMode$1,Composite3DTileContent:Composite3DTileContent,ConditionsExpression:ConditionsExpression,ConeEmitter:ConeEmitter,ContentMetadata:ContentMetadata,CreditDisplay:CreditDisplay,CullFace:CullFace$1,CumulusCloud:CumulusCloud,DebugAppearance:DebugAppearance,DebugCameraPrimitive:DebugCameraPrimitive,DebugInspector:DebugInspector,DebugModelMatrixPrimitive:DebugModelMatrixPrimitive,DepthFunction:DepthFunction$1,DepthPlane:DepthPlane,DerivedCommand:DerivedCommand,DeviceOrientationCameraController:DeviceOrientationCameraController,DirectionalLight:DirectionalLight,DiscardEmptyTileImagePolicy:DiscardEmptyTileImagePolicy,DiscardMissingTileImagePolicy:DiscardMissingTileImagePolicy,DracoLoader:DracoLoader,EllipsoidPrimitive:EllipsoidPrimitive,EllipsoidSurfaceAppearance:EllipsoidSurfaceAppearance,Empty3DTileContent:Empty3DTileContent,Expression:Expression,ExpressionNodeType:ExpressionNodeType$1,Fog:Fog,FrameRateMonitor:FrameRateMonitor,FrameState:FrameState,FrustumCommands:FrustumCommands,Geometry3DTileContent:Geometry3DTileContent,GetFeatureInfoFormat:GetFeatureInfoFormat,Globe:Globe,GlobeDepth:GlobeDepth,GlobeSurfaceShaderSet:GlobeSurfaceShaderSet,GlobeSurfaceTile:GlobeSurfaceTile,GlobeSurfaceTileProvider:GlobeSurfaceTileProvider,GlobeTranslucency:GlobeTranslucency,GlobeTranslucencyFramebuffer:GlobeTranslucencyFramebuffer,GlobeTranslucencyState:GlobeTranslucencyState,GltfBufferViewLoader:GltfBufferViewLoader,GltfDracoLoader:GltfDracoLoader,GltfImageLoader:GltfImageLoader,GltfIndexBufferLoader:GltfIndexBufferLoader,GltfJsonLoader:GltfJsonLoader,GltfLoader:GltfLoader$1,GltfLoaderUtil:GltfLoaderUtil$1,GltfStructuralMetadataLoader:GltfStructuralMetadataLoader,GltfTextureLoader:GltfTextureLoader,GltfVertexBufferLoader:GltfVertexBufferLoader,GoogleEarthEnterpriseImageryProvider:GoogleEarthEnterpriseImageryProvider,GoogleEarthEnterpriseMapsProvider:GoogleEarthEnterpriseMapsProvider,GridImageryProvider:GridImageryProvider,GroundPolylinePrimitive:GroundPolylinePrimitive,GroundPrimitive:GroundPrimitive,GroupMetadata:GroupMetadata,HeightReference:HeightReference$1,HorizontalOrigin:HorizontalOrigin$1,I3SDataProvider:I3SDataProvider,I3SFeature:I3SFeature,I3SField:I3SField,I3SGeometry:I3SGeometry,I3SLayer:I3SLayer,I3SNode:I3SNode,I3dmParser:I3dmParser$1,ImageBasedLighting:ImageBasedLighting,Imagery:Imagery,ImageryLayer:ImageryLayer,ImageryLayerCollection:ImageryLayerCollection,ImageryLayerFeatureInfo:ImageryLayerFeatureInfo,ImageryProvider:ImageryProvider,ImageryState:ImageryState$1,Implicit3DTileContent:Implicit3DTileContent,ImplicitAvailabilityBitstream:ImplicitAvailabilityBitstream,ImplicitMetadataView:ImplicitMetadataView,ImplicitSubdivisionScheme:ImplicitSubdivisionScheme$1,ImplicitSubtree:ImplicitSubtree,ImplicitSubtreeCache:ImplicitSubtreeCache,ImplicitSubtreeMetadata:ImplicitSubtreeMetadata,ImplicitTileCoordinates:ImplicitTileCoordinates,ImplicitTileset:ImplicitTileset,InstanceAttributeSemantic:InstanceAttributeSemantic$1,InvertClassification:InvertClassification,IonImageryProvider:IonImageryProvider,IonWorldImageryStyle:IonWorldImageryStyle$1,JobScheduler:JobScheduler,JobType:JobType$1,JsonMetadataTable:JsonMetadataTable,KeyframeNode:KeyframeNode,Label:Label,LabelCollection:LabelCollection,LabelStyle:LabelStyle$1,Light:Light,MapMode2D:MapMode2D$1,MapboxImageryProvider:MapboxImageryProvider,MapboxStyleImageryProvider:MapboxStyleImageryProvider,Material:Material$4,MaterialAppearance:MaterialAppearance,Megatexture:Megatexture$1,MetadataClass:MetadataClass,MetadataClassProperty:MetadataClassProperty,MetadataComponentType:MetadataComponentType$1,MetadataEntity:MetadataEntity,MetadataEnum:MetadataEnum,MetadataEnumValue:MetadataEnumValue,MetadataSchema:MetadataSchema,MetadataSchemaLoader:MetadataSchemaLoader,MetadataSemantic:MetadataSemantic$1,MetadataTable:MetadataTable,MetadataTableProperty:MetadataTableProperty,MetadataType:MetadataType$1,ModelAnimationLoop:ModelAnimationLoop$1,ModelAnimationState:ModelAnimationState$1,ModelComponents:ModelComponents$1,Moon:Moon,Multiple3DTileContent:Multiple3DTileContent,NeverTileDiscardPolicy:NeverTileDiscardPolicy,OIT:OIT,OctahedralProjectedCubeMap:OctahedralProjectedCubeMap,OpenStreetMapImageryProvider:OpenStreetMapImageryProvider,OrderedGroundPrimitiveCollection:OrderedGroundPrimitiveCollection,Particle:Particle,ParticleBurst:ParticleBurst,ParticleEmitter:ParticleEmitter,ParticleSystem:ParticleSystem,PerInstanceColorAppearance:PerInstanceColorAppearance,PerformanceDisplay:PerformanceDisplay,PickDepth:PickDepth,PickDepthFramebuffer:PickDepthFramebuffer,PickFramebuffer:PickFramebuffer,Picking:Picking,PntsParser:PntsParser$1,PointCloud:PointCloud,PointCloudEyeDomeLighting:PointCloudEyeDomeLighting,PointCloudShading:PointCloudShading,PointPrimitive:PointPrimitive,PointPrimitiveCollection:PointPrimitiveCollection,Polyline:Polyline,PolylineCollection:PolylineCollection,PolylineColorAppearance:PolylineColorAppearance,PolylineMaterialAppearance:PolylineMaterialAppearance,PostProcessStage:PostProcessStage,PostProcessStageCollection:PostProcessStageCollection,PostProcessStageComposite:PostProcessStageComposite,PostProcessStageLibrary:PostProcessStageLibrary$1,PostProcessStageSampleMode:PostProcessStageSampleMode$1,PostProcessStageTextureCache:PostProcessStageTextureCache,Primitive:Primitive$3,PrimitiveCollection:PrimitiveCollection,PrimitiveLoadPlan:PrimitiveLoadPlan,PrimitivePipeline:PrimitivePipeline$1,PrimitiveState:PrimitiveState$1,PropertyAttribute:PropertyAttribute,PropertyAttributeProperty:PropertyAttributeProperty,PropertyTable:PropertyTable,PropertyTexture:PropertyTexture,PropertyTextureProperty:PropertyTextureProperty,QuadtreeOccluders:QuadtreeOccluders,QuadtreePrimitive:QuadtreePrimitive,QuadtreeTile:QuadtreeTile,QuadtreeTileLoadState:QuadtreeTileLoadState$1,QuadtreeTileProvider:QuadtreeTileProvider,ResourceCache:ResourceCache,ResourceCacheKey:ResourceCacheKey$1,ResourceCacheStatistics:ResourceCacheStatistics,ResourceLoader:ResourceLoader,ResourceLoaderState:ResourceLoaderState$1,SDFSettings:SDFSettings$1,Scene:Scene,SceneFramebuffer:SceneFramebuffer,SceneMode:SceneMode$1,SceneTransforms:SceneTransforms$1,SceneTransitioner:SceneTransitioner,ScreenSpaceCameraController:ScreenSpaceCameraController,ShadowMap:ShadowMap,ShadowMapShader:ShadowMapShader,ShadowMode:ShadowMode$1,ShadowVolumeAppearance:ShadowVolumeAppearance,SingleTileImageryProvider:SingleTileImageryProvider,SkyAtmosphere:SkyAtmosphere,SkyBox:SkyBox,SpatialNode:SpatialNode,SphereEmitter:SphereEmitter,SplitDirection:SplitDirection$1,Splitter:Splitter$1,StencilConstants:StencilConstants$1,StencilFunction:StencilFunction$1,StencilOperation:StencilOperation$1,StructuralMetadata:StructuralMetadata,StyleExpression:StyleExpression,Sun:Sun,SunLight:SunLight,SunPostProcess:SunPostProcess,SupportedImageFormats:SupportedImageFormats,Terrain:Terrain,TerrainFillMesh:TerrainFillMesh,TerrainState:TerrainState$2,TextureAtlas:TextureAtlas,TileBoundingRegion:TileBoundingRegion,TileBoundingS2Cell:TileBoundingS2Cell,TileBoundingSphere:TileBoundingSphere,TileBoundingVolume:TileBoundingVolume,TileCoordinatesImageryProvider:TileCoordinatesImageryProvider,TileDiscardPolicy:TileDiscardPolicy,TileImagery:TileImagery,TileMapServiceImageryProvider:TileMapServiceImageryProvider,TileMetadata:TileMetadata,TileOrientedBoundingBox:TileOrientedBoundingBox,TileReplacementQueue:TileReplacementQueue,TileSelectionResult:TileSelectionResult$1,TileState:TileState$1,Tileset3DTileContent:Tileset3DTileContent,TilesetMetadata:TilesetMetadata,TimeDynamicImagery:TimeDynamicImagery,TimeDynamicPointCloud:TimeDynamicPointCloud,Tonemapper:Tonemapper$1,TranslucentTileClassification:TranslucentTileClassification,TweenCollection:TweenCollection,UrlTemplateImageryProvider:UrlTemplateImageryProvider,Vector3DTileBatch:Vector3DTileBatch,Vector3DTileClampedPolylines:Vector3DTileClampedPolylines,Vector3DTileContent:Vector3DTileContent,Vector3DTileGeometry:Vector3DTileGeometry,Vector3DTilePoints:Vector3DTilePoints,Vector3DTilePolygons:Vector3DTilePolygons,Vector3DTilePolylines:Vector3DTilePolylines,Vector3DTilePrimitive:Vector3DTilePrimitive,VertexAttributeSemantic:VertexAttributeSemantic$1,VerticalOrigin:VerticalOrigin$1,View:View,ViewportQuad:ViewportQuad,VoxelBoxShape:VoxelBoxShape,VoxelContent:VoxelContent,VoxelCylinderShape:VoxelCylinderShape,VoxelEllipsoidShape:VoxelEllipsoidShape,VoxelPrimitive:VoxelPrimitive,VoxelProvider:VoxelProvider,VoxelRenderResources:VoxelRenderResources,VoxelShape:VoxelShape,VoxelShapeType:VoxelShapeType$1,VoxelTraversal:VoxelTraversal,WebMapServiceImageryProvider:WebMapServiceImageryProvider,WebMapTileServiceImageryProvider:WebMapTileServiceImageryProvider,buildVoxelDrawCommands:buildVoxelDrawCommands,computeFlyToLocationForRectangle:computeFlyToLocationForRectangle,createBillboardPointCallback:createBillboardPointCallback,createElevationBandMaterial:createElevationBandMaterial,createGooglePhotorealistic3DTileset:createGooglePhotorealistic3DTileset,createOsmBuildings:createOsmBuildings,createOsmBuildingsAsync:createOsmBuildingsAsync,createTangentSpaceDebugPrimitive:createTangentSpaceDebugPrimitive,createWorldImagery:createWorldImagery,createWorldImageryAsync:createWorldImageryAsync,findContentMetadata:findContentMetadata,findGroupMetadata:findGroupMetadata,findTileMetadata:findTileMetadata,getBinaryAccessor:getBinaryAccessor,getClipAndStyleCode:getClipAndStyleCode,getClippingFunction:getClippingFunction,hasExtension:hasExtension,parseBatchTable:parseBatchTable,parseBoundingVolumeSemantics:parseBoundingVolumeSemantics,parseFeatureMetadataLegacy:parseFeatureMetadataLegacy,parseStructuralMetadata:parseStructuralMetadata,preprocess3DTileContent:preprocess3DTileContent,processVoxelProperties:processVoxelProperties,_shadersCzmBuiltins:CzmBuiltins,_shadersAllMaterialAppearanceFS:AllMaterialAppearanceFS,_shadersAllMaterialAppearanceVS:AllMaterialAppearanceVS,_shadersBasicMaterialAppearanceFS:BasicMaterialAppearanceFS,_shadersBasicMaterialAppearanceVS:BasicMaterialAppearanceVS,_shadersEllipsoidSurfaceAppearanceFS:EllipsoidSurfaceAppearanceFS,_shadersEllipsoidSurfaceAppearanceVS:EllipsoidSurfaceAppearanceVS,_shadersPerInstanceColorAppearanceFS:PerInstanceColorAppearanceFS,_shadersPerInstanceColorAppearanceVS:PerInstanceColorAppearanceVS,_shadersPerInstanceFlatColorAppearanceFS:PerInstanceFlatColorAppearanceFS,_shadersPerInstanceFlatColorAppearanceVS:PerInstanceFlatColorAppearanceVS,_shadersPolylineColorAppearanceVS:PolylineColorAppearanceVS,_shadersPolylineMaterialAppearanceVS:PolylineMaterialAppearanceVS,_shadersTexturedMaterialAppearanceFS:TexturedMaterialAppearanceFS,_shadersTexturedMaterialAppearanceVS:TexturedMaterialAppearanceVS,_shadersAspectRampMaterial:AspectRampMaterial,_shadersBumpMapMaterial:BumpMapMaterial,_shadersCheckerboardMaterial:CheckerboardMaterial,_shadersDotMaterial:DotMaterial,_shadersElevationBandMaterial:ElevationBandMaterial,_shadersElevationContourMaterial:ElevationContourMaterial,_shadersElevationRampMaterial:ElevationRampMaterial,_shadersFadeMaterial:FadeMaterial,_shadersGridMaterial:GridMaterial,_shadersNormalMapMaterial:NormalMapMaterial,_shadersPolylineArrowMaterial:PolylineArrowMaterial,_shadersPolylineDashMaterial:PolylineDashMaterial,_shadersPolylineGlowMaterial:PolylineGlowMaterial,_shadersPolylineOutlineMaterial:PolylineOutlineMaterial,_shadersRimLightingMaterial:RimLightingMaterial,_shadersSlopeRampMaterial:SlopeRampMaterial,_shadersStripeMaterial:StripeMaterial,_shadersWater:WaterMaterial,_shadersCPUStylingStageFS:CPUStylingStageFS,_shadersCPUStylingStageVS:CPUStylingStageVS,_shadersCustomShaderStageFS:CustomShaderStageFS,_shadersCustomShaderStageVS:CustomShaderStageVS,_shadersFeatureIdStageFS:FeatureIdStageFS,_shadersFeatureIdStageVS:FeatureIdStageVS,_shadersGeometryStageFS:GeometryStageFS,_shadersGeometryStageVS:GeometryStageVS,_shadersImageBasedLightingStageFS:ImageBasedLightingStageFS,_shadersInstancingStageCommon:InstancingStageCommon,_shadersInstancingStageVS:InstancingStageVS,_shadersLegacyInstancingStageVS:LegacyInstancingStageVS,_shadersLightingStageFS:LightingStageFS,_shadersMaterialStageFS:MaterialStageFS,_shadersMetadataStageFS:MetadataStageFS,_shadersMetadataStageVS:MetadataStageVS,_shadersModelClippingPlanesStageFS:ModelClippingPlanesStageFS,_shadersModelColorStageFS:ModelColorStageFS,_shadersModelFS:ModelFS,_shadersModelSilhouetteStageFS:ModelSilhouetteStageFS,_shadersModelSilhouetteStageVS:ModelSilhouetteStageVS,_shadersModelSplitterStageFS:ModelSplitterStageFS,_shadersModelVS:ModelVS,_shadersMorphTargetsStageVS:MorphTargetsStageVS,_shadersPointCloudStylingStageVS:PointCloudStylingStageVS,_shadersPrimitiveOutlineStageFS:PrimitiveOutlineStageFS,_shadersPrimitiveOutlineStageVS:PrimitiveOutlineStageVS,_shadersSelectedFeatureIdStageCommon:SelectedFeatureIdStageCommon,_shadersSkinningStageVS:SkinningStageVS,_shadersAcesTonemappingStage:AcesTonemapping,_shadersAdditiveBlend:AdditiveBlend,_shadersAmbientOcclusionGenerate:AmbientOcclusionGenerate,_shadersAmbientOcclusionModulate:AmbientOcclusionModulate,_shadersBlackAndWhite:BlackAndWhite,_shadersBloomComposite:BloomComposite,_shadersBrightPass:BrightPass,_shadersBrightness:Brightness,_shadersCompositeTranslucentClassification:CompositeTranslucentClassification,_shadersContrastBias:ContrastBias,_shadersDepthOfField:DepthOfField,_shadersDepthView:DepthView,_shadersDepthViewPacked:DepthViewPacked,_shadersEdgeDetection:EdgeDetection,_shadersFXAA:FXAA,_shadersFilmicTonemapping:FilmicTonemapping,_shadersGaussianBlur1D:GaussianBlur1D,_shadersLensFlare:LensFlare,_shadersModifiedReinhardTonemapping:ModifiedReinhardTonemapping,_shadersNightVision:NightVision,_shadersPassThrough:PassThrough,_shadersPassThroughDepth:PassThroughDepth,_shadersPointCloudEyeDomeLighting:PointCloudEyeDomeLightingShader,_shadersReinhardTonemapping:ReinhardTonemapping,_shadersSilhouette:Silhouette,_shadersIntersectBox:IntersectBox,_shadersIntersectClippingPlanes:IntersectClippingPlanes,_shadersIntersectCylinder:IntersectCylinder,_shadersIntersectDepth:IntersectDepth,_shadersIntersectEllipsoid:IntersectEllipsoid,_shadersIntersection:Intersection,_shadersIntersectionUtils:IntersectionUtils,_shadersMegatexture:Megatexture,_shadersOctree:Octree,_shadersVoxelFS:VoxelFS,_shadersVoxelVS:VoxelVS,_shadersconvertUvToBox:convertUvToBox,_shadersconvertUvToCylinder:convertUvToCylinder,_shadersconvertUvToEllipsoid:convertUvToEllipsoid,ForEach:ForEach,addBuffer:addBuffer,addDefaults:addDefaults,addExtensionsRequired:addExtensionsRequired,addExtensionsUsed:addExtensionsUsed,addPipelineExtras:addPipelineExtras,addToArray:addToArray,findAccessorMinMax:findAccessorMinMax,forEachTextureInMaterial:forEachTextureInMaterial,getAccessorByteStride:getAccessorByteStride,getComponentReader:getComponentReader,moveTechniqueRenderStates:moveTechniqueRenderStates,moveTechniquesToExtension:moveTechniquesToExtension,numberOfComponentsForType:numberOfComponentsForType,parseGlb:parseGlb,readAccessorPacked:readAccessorPacked,removeExtension:removeExtension,removeExtensionsRequired:removeExtensionsRequired,removeExtensionsUsed:removeExtensionsUsed,removePipelineExtras:removePipelineExtras,removeUnusedElements:removeUnusedElements,updateAccessorComponentTypes:updateAccessorComponentTypes,updateVersion:updateVersion,usesExtension:usesExtension,AlphaPipelineStage:AlphaPipelineStage$1,B3dmLoader:B3dmLoader,BatchTexturePipelineStage:BatchTexturePipelineStage$1,CPUStylingPipelineStage:CPUStylingPipelineStage$1,ClassificationModelDrawCommand:ClassificationModelDrawCommand,ClassificationPipelineStage:ClassificationPipelineStage$1,CustomShader:CustomShader,CustomShaderMode:CustomShaderMode$1,CustomShaderPipelineStage:CustomShaderPipelineStage$1,CustomShaderTranslucencyMode:CustomShaderTranslucencyMode$1,DequantizationPipelineStage:DequantizationPipelineStage$1,FeatureIdPipelineStage:FeatureIdPipelineStage$1,GeoJsonLoader:GeoJsonLoader,GeometryPipelineStage:GeometryPipelineStage$1,I3dmLoader:I3dmLoader,ImageBasedLightingPipelineStage:ImageBasedLightingPipelineStage$1,InstancingPipelineStage:InstancingPipelineStage$1,LightingModel:LightingModel$1,LightingPipelineStage:LightingPipelineStage$1,MaterialPipelineStage:MaterialPipelineStage$1,MetadataPipelineStage:MetadataPipelineStage$1,Model:Model,Model3DTileContent:Model3DTileContent,ModelAlphaOptions:ModelAlphaOptions,ModelAnimation:ModelAnimation,ModelAnimationChannel:ModelAnimationChannel,ModelAnimationCollection:ModelAnimationCollection,ModelArticulation:ModelArticulation,ModelArticulationStage:ModelArticulationStage,ModelClippingPlanesPipelineStage:ModelClippingPlanesPipelineStage$1,ModelColorPipelineStage:ModelColorPipelineStage$1,ModelDrawCommand:ModelDrawCommand,ModelFeature:ModelFeature,ModelFeatureTable:ModelFeatureTable,ModelLightingOptions:ModelLightingOptions,ModelMatrixUpdateStage:ModelMatrixUpdateStage$1,ModelNode:ModelNode,ModelRenderResources:ModelRenderResources,ModelRuntimeNode:ModelRuntimeNode,ModelRuntimePrimitive:ModelRuntimePrimitive,ModelSceneGraph:ModelSceneGraph,ModelSilhouettePipelineStage:ModelSilhouettePipelineStage$1,ModelSkin:ModelSkin,ModelSplitterPipelineStage:ModelSplitterPipelineStage$1,ModelStatistics:ModelStatistics,ModelType:ModelType$1,ModelUtility:ModelUtility,MorphTargetsPipelineStage:MorphTargetsPipelineStage$1,NodeRenderResources:NodeRenderResources,NodeStatisticsPipelineStage:NodeStatisticsPipelineStage$1,PickingPipelineStage:PickingPipelineStage$1,PntsLoader:PntsLoader,PointCloudStylingPipelineStage:PointCloudStylingPipelineStage$1,PrimitiveOutlineGenerator:PrimitiveOutlineGenerator,PrimitiveOutlinePipelineStage:PrimitiveOutlinePipelineStage$1,PrimitiveRenderResources:PrimitiveRenderResources,PrimitiveStatisticsPipelineStage:PrimitiveStatisticsPipelineStage$1,SceneMode2DPipelineStage:SceneMode2DPipelineStage$1,SelectedFeatureIdPipelineStage:SelectedFeatureIdPipelineStage$1,SkinningPipelineStage:SkinningPipelineStage$1,StyleCommandsNeeded:StyleCommandsNeeded$1,TextureManager:TextureManager,TextureUniform:TextureUniform,TilesetPipelineStage:TilesetPipelineStage$1,UniformType:UniformType$1,VaryingType:VaryingType$1,WireframePipelineStage:WireframePipelineStage$1,buildDrawCommand:buildDrawCommand,_shadersdegreesPerRadian:czm_degreesPerRadian,_shadersdepthRange:czm_depthRange,_shadersepsilon1:czm_epsilon1,_shadersepsilon2:czm_epsilon2,_shadersepsilon3:czm_epsilon3,_shadersepsilon4:czm_epsilon4,_shadersepsilon5:czm_epsilon5,_shadersepsilon6:czm_epsilon6,_shadersepsilon7:czm_epsilon7,_shadersinfinity:czm_infinity,_shadersoneOverPi:czm_oneOverPi,_shadersoneOverTwoPi:czm_oneOverTwoPi,_shaderspassCesium3DTile:czm_passCesium3DTile,_shaderspassCesium3DTileClassification:czm_passCesium3DTileClassification,_shaderspassCesium3DTileClassificationIgnoreShow:czm_passCesium3DTileClassificationIgnoreShow,_shaderspassClassification:czm_passClassification,_shaderspassCompute:czm_passCompute,_shaderspassEnvironment:czm_passEnvironment,_shaderspassGlobe:czm_passGlobe,_shaderspassOpaque:czm_passOpaque,_shaderspassOverlay:czm_passOverlay,_shaderspassTerrainClassification:czm_passTerrainClassification,_shaderspassTranslucent:czm_passTranslucent,_shaderspassVoxels:czm_passVoxels,_shaderspi:czm_pi,_shaderspiOverFour:czm_piOverFour,_shaderspiOverSix:czm_piOverSix,_shaderspiOverThree:czm_piOverThree,_shaderspiOverTwo:czm_piOverTwo,_shadersradiansPerDegree:czm_radiansPerDegree,_shaderssceneMode2D:czm_sceneMode2D,_shaderssceneMode3D:czm_sceneMode3D,_shaderssceneModeColumbusView:czm_sceneModeColumbusView,_shaderssceneModeMorphing:czm_sceneModeMorphing,_shaderssolarRadius:czm_solarRadius,_shadersthreePiOver2:czm_threePiOver2,_shaderstwoPi:czm_twoPi,_shaderswebMercatorMaxLatitude:czm_webMercatorMaxLatitude,_shadersHSBToRGB:czm_HSBToRGB,_shadersHSLToRGB:czm_HSLToRGB,_shadersRGBToHSB:czm_RGBToHSB,_shadersRGBToHSL:czm_RGBToHSL,_shadersRGBToXYZ:czm_RGBToXYZ,_shadersXYZToRGB:czm_XYZToRGB,_shadersacesTonemapping:czm_acesTonemapping,_shadersalphaWeight:czm_alphaWeight,_shadersantialias:czm_antialias,_shadersapproximateSphericalCoordinates:czm_approximateSphericalCoordinates,_shadersbackFacing:czm_backFacing,_shadersbranchFreeTernary:czm_branchFreeTernary,_shaderscascadeColor:czm_cascadeColor,_shaderscascadeDistance:czm_cascadeDistance,_shaderscascadeMatrix:czm_cascadeMatrix,_shaderscascadeWeights:czm_cascadeWeights,_shaderscolumbusViewMorph:czm_columbusViewMorph,_shaderscomputePosition:czm_computePosition,_shaderscosineAndSine:czm_cosineAndSine,_shadersdecompressTextureCoordinates:czm_decompressTextureCoordinates,_shadersdefaultPbrMaterial:czm_defaultPbrMaterial,_shadersdepthClamp:czm_depthClamp,_shaderseastNorthUpToEyeCoordinates:czm_eastNorthUpToEyeCoordinates,_shadersellipsoidContainsPoint:czm_ellipsoidContainsPoint,_shadersellipsoidWgs84TextureCoordinates:czm_ellipsoidWgs84TextureCoordinates,_shadersequalsEpsilon:czm_equalsEpsilon,_shaderseyeOffset:czm_eyeOffset,_shaderseyeToWindowCoordinates:czm_eyeToWindowCoordinates,_shadersfastApproximateAtan:czm_fastApproximateAtan,_shadersfog:czm_fog,_shadersgammaCorrect:czm_gammaCorrect,_shadersgeodeticSurfaceNormal:czm_geodeticSurfaceNormal,_shadersgetDefaultMaterial:czm_getDefaultMaterial,_shadersgetLambertDiffuse:czm_getLambertDiffuse,_shadersgetSpecular:czm_getSpecular,_shadersgetWaterNoise:czm_getWaterNoise,_shadershue:czm_hue,_shadersinverseGamma:czm_inverseGamma,_shadersisEmpty:czm_isEmpty,_shadersisFull:czm_isFull,_shaderslatitudeToWebMercatorFraction:czm_latitudeToWebMercatorFraction,_shaderslineDistance:czm_lineDistance,_shaderslinearToSrgb:czm_linearToSrgb,_shadersluminance:czm_luminance,_shadersmetersPerPixel:czm_metersPerPixel,_shadersmodelToWindowCoordinates:czm_modelToWindowCoordinates,_shadersmultiplyWithColorBalance:czm_multiplyWithColorBalance,_shadersnearFarScalar:czm_nearFarScalar,_shadersoctDecode:czm_octDecode,_shaderspackDepth:czm_packDepth,_shaderspbrLighting:czm_pbrLighting,_shaderspbrMetallicRoughnessMaterial:czm_pbrMetallicRoughnessMaterial,_shaderspbrSpecularGlossinessMaterial:czm_pbrSpecularGlossinessMaterial,_shadersphong:czm_phong,_shadersplaneDistance:czm_planeDistance,_shaderspointAlongRay:czm_pointAlongRay,_shadersrayEllipsoidIntersectionInterval:czm_rayEllipsoidIntersectionInterval,_shadersraySphereIntersectionInterval:czm_raySphereIntersectionInterval,_shadersreadDepth:czm_readDepth,_shadersreadNonPerspective:czm_readNonPerspective,_shadersreverseLogDepth:czm_reverseLogDepth,_shadersround:czm_round,_shaderssampleOctahedralProjection:czm_sampleOctahedralProjection,_shaderssaturation:czm_saturation,_shadersshadowDepthCompare:czm_shadowDepthCompare,_shadersshadowVisibility:czm_shadowVisibility,_shaderssignNotZero:czm_signNotZero,_shaderssphericalHarmonics:czm_sphericalHarmonics,_shaderssrgbToLinear:czm_srgbToLinear,_shaderstangentToEyeSpaceMatrix:czm_tangentToEyeSpaceMatrix,_shaderstextureCube:czm_textureCube,_shaderstransformPlane:czm_transformPlane,_shaderstranslateRelativeToEye:czm_translateRelativeToEye,_shaderstranslucentPhong:czm_translucentPhong,_shaderstranspose:czm_transpose,_shadersunpackDepth:czm_unpackDepth,_shadersunpackFloat:czm_unpackFloat,_shadersunpackUint:czm_unpackUint,_shadersvalueTransform:czm_valueTransform,_shadersvertexLogDepth:czm_vertexLogDepth,_shaderswindowToEyeCoordinates:czm_windowToEyeCoordinates,_shaderswriteDepthClamp:czm_writeDepthClamp,_shaderswriteLogDepth:czm_writeLogDepth,_shaderswriteNonPerspective:czm_writeNonPerspective,_shadersdepthRangeStruct:czm_depthRangeStruct,_shadersmaterial:czm_material,_shadersmaterialInput:czm_materialInput,_shadersmodelMaterial:czm_modelMaterial,_shadersmodelVertexOutput:czm_modelVertexOutput,_shaderspbrParameters:czm_pbrParameters,_shadersray:czm_ray,_shadersraySegment:czm_raySegment,_shadersshadowParameters:czm_shadowParameters,createTaskProcessorWorker:createTaskProcessorWorker,ClockViewModel:ClockViewModel,Command:Command,InspectorShared:InspectorShared$1,SvgPathBindingHandler:SvgPathBindingHandler$1,ToggleButtonViewModel:ToggleButtonViewModel,createCommand:createCommand,subscribeAndEvaluate:subscribeAndEvaluate,Animation:Animation,AnimationViewModel:AnimationViewModel,BaseLayerPicker:BaseLayerPicker,BaseLayerPickerViewModel:BaseLayerPickerViewModel,ProviderViewModel:ProviderViewModel,createDefaultImageryProviderViewModels:createDefaultImageryProviderViewModels,createDefaultTerrainProviderViewModels:createDefaultTerrainProviderViewModels,CesiumInspector:CesiumInspector,CesiumInspectorViewModel:CesiumInspectorViewModel,Cesium3DTilesInspector:Cesium3DTilesInspector,Cesium3DTilesInspectorViewModel:Cesium3DTilesInspectorViewModel,FullscreenButton:FullscreenButton,FullscreenButtonViewModel:FullscreenButtonViewModel,Geocoder:Geocoder,GeocoderViewModel:GeocoderViewModel,HomeButton:HomeButton,HomeButtonViewModel:HomeButtonViewModel,InfoBox:InfoBox,InfoBoxViewModel:InfoBoxViewModel,NavigationHelpButton:NavigationHelpButton,NavigationHelpButtonViewModel:NavigationHelpButtonViewModel,PerformanceWatchdog:PerformanceWatchdog,PerformanceWatchdogViewModel:PerformanceWatchdogViewModel,ProjectionPicker:ProjectionPicker,ProjectionPickerViewModel:ProjectionPickerViewModel,SceneModePicker:SceneModePicker,SceneModePickerViewModel:SceneModePickerViewModel,SelectionIndicator:SelectionIndicator,SelectionIndicatorViewModel:SelectionIndicatorViewModel,knockout_3_5_1:knockout$1,knockout_es5:knockout_es5,knockout:knockout$1,Timeline:Timeline,TimelineHighlightRange:TimelineHighlightRange,TimelineTrack:TimelineTrack,VRButton:VRButton,VRButtonViewModel:VRButtonViewModel,Viewer:Viewer,viewerCesium3DTilesInspectorMixin:viewerCesium3DTilesInspectorMixin,viewerCesiumInspectorMixin:viewerCesiumInspectorMixin,viewerDragDropMixin:viewerDragDropMixin,viewerPerformanceWatchdogMixin:viewerPerformanceWatchdogMixin,viewerVoxelInspectorMixin:viewerVoxelInspectorMixin,VoxelInspector:VoxelInspector,VoxelInspectorViewModel:VoxelInspectorViewModel},Symbol.toStringTag,{value:"Module"})),widgets="",PI=3.141592653589793,a=6378245,ee=.006693421622965943;function bd09togcj02(e,t){let i=52.35987755982988,n=e-.0065,r=t-.006,o=Math.sqrt(n*n+r*r)-2e-5*Math.sin(r*i),a=Math.atan2(r,n)-3e-6*Math.cos(n*i);return[o*Math.cos(a),o*Math.sin(a)]}function gcj02towgs84(e,t){if(outOfChina(e,t))return[e,t];{let i=transformlat(e-105,t-35),n=transformlng(e-105,t-35),r=t/180*PI,o=Math.sin(r);o=1-ee*o*o;let s=Math.sqrt(o);i=180*i/(a*(1-ee)/(o*s)*PI),n=180*n/(a/s*Math.cos(r)*PI);return[2*e-(e+n),2*t-(t+i)]}}function bd09towgs84(e,t){const i=bd09togcj02(e,t);return gcj02towgs84(i[0],i[1])}function transformlat(e,t){let i=2*e-100+3*t+.2*t*t+.1*e*t+.2*Math.sqrt(Math.abs(e));return i+=2*(20*Math.sin(6*e*PI)+20*Math.sin(2*e*PI))/3,i+=2*(20*Math.sin(t*PI)+40*Math.sin(t/3*PI))/3,i+=2*(160*Math.sin(t/12*PI)+320*Math.sin(t*PI/30))/3,i}function transformlng(e,t){let i=300+e+2*t+.1*e*e+.1*e*t+.1*Math.sqrt(Math.abs(e));return i+=2*(20*Math.sin(6*e*PI)+20*Math.sin(2*e*PI))/3,i+=2*(20*Math.sin(e*PI)+40*Math.sin(e/3*PI))/3,i+=2*(150*Math.sin(e/12*PI)+300*Math.sin(e/30*PI))/3,i}function outOfChina(e,t){return e<72.004||e>137.8347||t<.8293||t>55.8271||!1}const toRadians=e=>CesiumMath$1.toRadians(e),lonlatToPosition=(e,t,i=0)=>Cartesian3.fromDegrees(e,t,i);class CesiumLoader{constructor(){__publicField(this,"Cesium"),this.Cesium=Cesium}}class TilesetLoader extends CesiumLoader{constructor(e,t,i){super(),__publicField(this,"tileset"),__publicField(this,"finish"),__publicField(this,"loaded"),__publicField(this,"height"),__publicField(this,"offsetX"),__publicField(this,"offsetY"),__publicField(this,"rotateX"),__publicField(this,"rotateY"),__publicField(this,"rotateZ"),__publicField(this,"scale"),__publicField(this,"opacity"),__publicField(this,"readyFun"),__publicField(this,"loadedFun"),__publicField(this,"contentList"),__publicField(this,"tilesetModelObj"),__publicField(this,"centerMatrix4"),__publicField(this,"id"),__publicField(this,"cesiumObj"),__publicField(this,"url"),__publicField(this,"splitDirection"),this.tileset=null,this.contentList=[],this.finish=!1,this.loaded=!1,this.readyFun=null,this.loadedFun=null,this.height=(null==i?void 0:i.height)||0,this.offsetX=(null==i?void 0:i.offsetX)||0,this.offsetY=(null==i?void 0:i.offsetY)||0,this.rotateX=(null==i?void 0:i.rotateX)||0,this.rotateY=(null==i?void 0:i.rotateY)||0,this.rotateZ=(null==i?void 0:i.rotateZ)||0,this.opacity=(null==i?void 0:i.opacity)||1,this.scale=(null==i?void 0:i.scale)||0,this.id=(null==i?void 0:i.id)||"",this.splitDirection=(null==i?void 0:i.splitDirection)||"NONE",this.tilesetModelObj={},this.centerMatrix4=null,this.cesiumObj=e,this.url=t,this.load3DTile()}getModelName(){return this.id||this.url.slice(this.url.lastIndexOf("/")+1)}getControlValue(){return{offsetX:this.offsetX,offsetY:this.offsetY,height:this.height,rotateX:this.rotateX,rotateY:this.rotateY,rotateZ:this.rotateZ,scale:this.scale,opacity:this.opacity}}getControlOptions(){return[{name:"offsetX",value:"offsetX",type:"number",step:1},{name:"offsetY",value:"offsetY",type:"number",step:1},{name:"高度",value:"height",type:"number"},{name:"缩放",value:"scale",type:"number",step:.01},{name:"rotateX",value:"rotateX",type:"slider",min:-180,max:180},{name:"rotateY",value:"rotateY",type:"slider",min:-180,max:180},{name:"rotateZ",value:"rotateZ",type:"slider",min:-180,max:180},{name:"透明度",value:"opacity",type:"slider",min:0,max:1,step:.01}]}updateStyle(e){this.offsetX=e.offsetX,this.offsetY=e.offsetY,this.height=e.height,this.opacity=e.opacity,this.scale=e.scale,this.rotateX=e.rotateX,this.rotateY=e.rotateY,this.rotateZ=e.rotateZ,this.setPointion(this.height,this.offsetX,this.offsetY),this.setOpacity(this.opacity),this.setTileMatrix4()}readyFinish(e){e&&(this.finish?e(this.tileset):this.readyFun=e)}loadFinish(e){e&&(this.loadedFun?e(this.contentList):this.loadedFun=e)}load3DTile(){this.Cesium.Cesium3DTileset.fromUrl(this.url).then((e=>{if(this.tileset=e,this.setPointion(this.height,this.offsetX,this.offsetY),this.cesiumObj.hideEarth){let e=new Cartesian3;this.cesiumObj.HIDEMODELCETNER.clone(e),this.tileset.boundingSphere.center=e}e.allTilesLoaded.addEventListener((()=>{let t=this.getTilesetAllContent(e),i={};t.forEach((e=>{let t=e.featuresLength;for(let n=0;n<t;n++){let t=e.getFeature(n),r=t.getProperty("name");i[r]?i[r].push(t):i[r]=[t]}})),this.tilesetModelObj=i,this.contentList=t,this.loadedFun&&this.loadedFun(this.contentList),this.loaded=!0})),this.setTileMatrix4(),this.cesiumObj.view.scene.primitives.add(e),this.cesiumObj.isSplitView&&this.splitDirection&&(e.splitDirection=SplitDirection$1[this.splitDirection]),this.id&&(this.cesiumObj.primitiveObj[this.id]=e),this.readyFun&&this.readyFun(this.tileset),this.finish=!0,this.tileset.tilesetLoaderObj=this,1!=this.opacity&&this.setOpacity(this.opacity)}))}setOpacity(e){this.tileset.style=new this.Cesium.Cesium3DTileStyle({color:{evaluateColor:()=>new this.Cesium.Color(1,1,1,e)},show:!0})}setPointion(e,t=0,i=0){if(this.tileset){let n=this.tileset.boundingSphere.center.clone();const r=this.Cesium.Cartographic.fromCartesian(n),o=this.Cesium.Cartesian3.fromRadians(r.longitude,r.latitude,0);t/=1e5,i/=1e5;const a=this.Cesium.Cartesian3.fromRadians(r.longitude+t,r.latitude+i,e),s=this.Cesium.Cartesian3.subtract(a,o,new this.Cesium.Cartesian3);this.tileset.modelMatrix=this.Cesium.Matrix4.fromTranslation(s)}else this.height=e,this.offsetX=t,this.offsetY=i}getChildAllContent(e){let t=[];if(e){t.push(e);let i=e.innerContents;i&&i.forEach((e=>{t.push(...this.getChildAllContent(e))}))}return t}getTilesetAllContent(e){let t=[];if(e){e.root.children.forEach((e=>{t.push(...this.getChildAllContent(e.content))}))}return t}getTilesetCenterMatrix4(){if(!this.centerMatrix4){let e=this.tileset.boundingSphere,t=this.Cesium.Cartographic.fromCartesian(e.center),i=this.Cesium.Math.toDegrees(t.longitude),n=this.Cesium.Math.toDegrees(t.latitude),r=this.Cesium.Cartesian3.fromRadians(this.Cesium.Math.toRadians(i),this.Cesium.Math.toRadians(n),0),o=this.Cesium.Transforms.eastNorthUpToFixedFrame(r);this.centerMatrix4=o.clone()}return this.centerMatrix4}setTileMatrix4(){let e=this.getTilesetCenterMatrix4().clone(),t=this.Cesium.Matrix4.fromUniformScale(this.scale);this.Cesium.Matrix4.multiply(e,t,e);let i=this.Cesium.Matrix3.fromRotationX(this.Cesium.Math.toRadians(this.rotateX)),n=this.Cesium.Matrix4.fromRotationTranslation(i);this.Cesium.Matrix4.multiply(e,n,e);let r=this.Cesium.Matrix3.fromRotationY(this.Cesium.Math.toRadians(this.rotateY)),o=this.Cesium.Matrix4.fromRotationTranslation(r);this.Cesium.Matrix4.multiply(e,o,e);let a=this.Cesium.Matrix3.fromRotationZ(this.Cesium.Math.toRadians(this.rotateZ)),s=this.Cesium.Matrix4.fromRotationTranslation(a);this.Cesium.Matrix4.multiply(e,s,e),this.tileset._root.transform=e}flyTo(){this.cesiumObj.view.flyTo(this.tileset)}}class GltfLoader extends CesiumLoader{constructor(e,t,i){super(),__publicField(this,"url"),__publicField(this,"cesiumObj"),__publicField(this,"id"),__publicField(this,"animationsLength"),__publicField(this,"rotateX"),__publicField(this,"rotateY"),__publicField(this,"rotateZ"),__publicField(this,"scale"),__publicField(this,"lon"),__publicField(this,"lat"),__publicField(this,"height"),__publicField(this,"loopAllAnimations"),__publicField(this,"loopAllAnimationsSpeed"),__publicField(this,"gltfModel"),__publicField(this,"animationList"),__publicField(this,"animationList_linshi"),__publicField(this,"isLoadFinish"),__publicField(this,"loadFinFun"),__publicField(this,"isFlyToObj"),__publicField(this,"modelMatrix"),__publicField(this,"splitDirection"),__publicField(this,"opacity"),__publicField(this,"options"),this.url=t,this.options=i,this.cesiumObj=e,this.id=i.id||"",this.rotateX=i.rotateX||0,this.rotateY=i.rotateY||0,this.rotateZ=i.rotateZ||0,this.scale=i.scale||1,this.opacity=i.opacity||1,this.splitDirection=i.splitDirection||"NONE",this.setLonLat(this.options),this.height=i.height||0,this.animationsLength=0,this.loopAllAnimations=i.loopAllAnimations||"",this.loopAllAnimationsSpeed=i.loopAllAnimationsSpeed||1,this.gltfModel=null,this.animationList=[],this.animationList_linshi=[],this.isLoadFinish=!1,this.loadFinFun=null,this.isFlyToObj=null,this.modelMatrix=null,this.url&&void 0!==this.lon&&void 0!==this.lat&&this.loadModel()}setLonLat(e){let t,i;if(this.cesiumObj.hideEarth){let n=(e.x||0)/1e5,r=(e.y||0)/1e5;t=this.cesiumObj.HIDEMODELLONLAT[0]+n,i=this.cesiumObj.HIDEMODELLONLAT[1]+r}else t=e.lon,i=e.lat;this.lon=t,this.lat=i}getModelName(){return this.id||this.url.slice(this.url.lastIndexOf("/")+1)}getControlValue(){return{x:this.options.x||0,y:this.options.y||0,lon:this.lon,lat:this.lat,height:this.height,rotateX:this.rotateX,rotateY:this.rotateY,rotateZ:this.rotateZ,scale:this.scale,opacity:this.opacity}}getControlOptions(){let e=[{name:"经度",value:"lon",type:"number",step:1e-5},{name:"纬度",value:"lat",type:"number",step:1e-5}];this.cesiumObj.hideEarth&&(e=[{name:"x偏移",value:"x",type:"number",step:1},{name:"y偏移",value:"y",type:"number",step:1}]);return e=e.concat([{name:"高度",value:"height",type:"number"},{name:"缩放",value:"scale",type:"number",step:.01},{name:"rotateX",value:"rotateX",type:"slider",min:-180,max:180},{name:"rotateY",value:"rotateY",type:"slider",min:-180,max:180},{name:"rotateZ",value:"rotateZ",type:"slider",min:-180,max:180},{name:"透明度",value:"opacity",type:"slider",min:0,max:1,step:.01}]),e}updateStyle(e){this.setLonLat(e),this.height=e.height,this.rotateX=e.rotateX,this.rotateY=e.rotateY,this.rotateZ=e.rotateZ,this.scale=e.scale,this.opacity=e.opacity,this.setModelMatrix(),this.gltfModel.modelMatrix=this.modelMatrix,this.gltfModel.scale=this.scale,this.gltfModel.style=new Cesium3DTileStyle({color:`color('rgba(255,255, 255, ${this.opacity})')`})}loadFinish(e){this.isLoadFinish?e(this.gltfModel):this.loadFinFun=e}setModelMatrix(){let[e,t]=this.cesiumObj.lonlatToWGS84(this.lon,this.lat);const i=Cartesian3.fromDegrees(e,t,this.height),n=new HeadingPitchRoll(CesiumMath$1.toRadians(this.rotateZ),CesiumMath$1.toRadians(this.rotateX),CesiumMath$1.toRadians(this.rotateY)),r=Transforms$1.localFrameToFixedFrameGenerator("north","west");this.modelMatrix=Transforms$1.headingPitchRollToFixedFrame(i,n,Ellipsoid.WGS84,r)}loadModel(){this.setModelMatrix(),Model.fromGltfAsync({url:this.url,scale:this.scale,id:this.id||null,modelMatrix:this.modelMatrix,gltfCallback:e=>{var t;this.animationsLength=(null==(t=e.animations)?void 0:t.length)||0}}).then((e=>{this.gltfModel=e,this.cesiumObj.view.scene.primitives.add(this.gltfModel),this.id&&(this.cesiumObj.primitiveObj[this.id]=this.gltfModel),this.cesiumObj.isSplitView&&(this.gltfModel.splitDirection=SplitDirection$1[this.splitDirection]),1!==this.opacity&&(this.gltfModel.style=new Cesium3DTileStyle({color:`color('rgba(255,255, 255, ${this.opacity})')`})),this.gltfModel.readyEvent.addEventListener((()=>{this.loopAllAnimations&&this.addAllAnimations(),this.isLoadFinish=!0,this.loadFinFun&&this.loadFinFun(this.gltfModel),this.isFlyToObj&&this.flyTo(this.isFlyToObj),this.cesiumObj.view.trackedEntity=this.gltfModel,0!==this.animationList_linshi.length&&this.animationList_linshi.forEach((e=>{this.addAnimation(e)}))}))}))}addAnimation(e){if(!this.isLoadFinish)return void this.animationList_linshi.push(e);let t=e.index;if(void 0===e.index)return;if(t+1>this.animationsLength)return;let i=e.loop||"NONE";e.speed;let n=e.reverse||!1;if(this.loopAllAnimations)return;let r=this.animationList.findIndex((e=>e.index===t));-1!==r&&(this.animationList[r],this.animationList.splice(r,1));let o={index:t,loop:ModelAnimationLoop$1[i],multiplier:this.loopAllAnimationsSpeed,reverse:n},a=this.gltfModel.activeAnimations.add(o);this.animationList.push({index:t,anim:a})}addAllAnimations(){let e=!1;"REVERSE"===this.loopAllAnimations&&(e=!0),"MIRRORED_REPEAT"!==this.loopAllAnimations&&(this.loopAllAnimations="REPEAT");for(let t=0;t<this.animationsLength;t++)this.gltfModel.activeAnimations.add({index:t,loop:ModelAnimationLoop$1[this.loopAllAnimations],multiplier:this.loopAllAnimationsSpeed,reverse:e})}stopAllAnimations(){this.loopAllAnimations="",this.gltfModel.activeAnimations.removeAll()}flyTo(e){let t=(e=e||{}).offsetX||0,i=e.offsetY||.002,n=e.height||200;if(this.isLoadFinish){let[e,r]=this.cesiumObj.lonlatToWGS84(this.lon,this.lat),o=e-t,a=r-i;this.cesiumObj.changeCamera(o,a,n,{isFly:!0,heading:-1,pitch:-38})}else this.isFlyToObj=e}}class GyEdgeDetectionStage{constructor(e,t,i){__publicField(this,"view"),__publicField(this,"select"),__publicField(this,"edgedetectionstage"),__publicField(this,"color"),__publicField(this,"length"),this.view=e,this.select=null,this.edgedetectionstage=null,this.color=Color.fromCssColorString(t),this.length=i||.01,this.init()}clear(){this.edgedetectionstage.selected=[]}selectFeature(e){this.edgedetectionstage.selected=[],Array.isArray(e)||(e=[e]),this.select=e,this.edgedetectionstage.selected=e}init(){this.edgedetectionstage=PostProcessStageLibrary$1.createEdgeDetectionStage(),this.edgedetectionstage.uniforms.color=this.color,this.edgedetectionstage.uniforms.length=this.length,this.edgedetectionstage.selected=[],this.view.scene.postProcessStages.add(PostProcessStageLibrary$1.createSilhouetteStage([this.edgedetectionstage]))}}class CT{constructor(){__publicField(this,"PI"),__publicField(this,"a"),__publicField(this,"b"),__publicField(this,"f"),__publicField(this,"e_sq"),__publicField(this,"ee"),__publicField(this,"WGSF"),__publicField(this,"WGSe2"),__publicField(this,"WGSa"),__publicField(this,"EPSILON"),__publicField(this,"M_PI"),this.PI=3.141592653589793,this.a=6378137,this.b=6356752.3142,this.f=(this.a-this.b)/this.a,this.e_sq=this.f*(2-this.f),this.ee=.00669437999013,this.WGSF=1/298.257223563,this.WGSe2=this.WGSF*(2-this.WGSF),this.WGSa=6378137,this.EPSILON=1e-12}CalculateCoordinates(e,t,i,n){let r,o;n*=Math.cos(2*this.PI/360*i),360<t&&(t%=360),t<0&&(t=360+t%360),e=null,i=this.lonLat2WebMercator(e),t<=90?(r=n*Math.cos(2*this.PI/360*t),o=n*Math.sin(2*this.PI/360*t),e={x:i.x+r,y:i.y-o}):90<t&&t<=180?(r=n*Math.sin(2*this.PI/360*(t-90)),o=n*Math.cos(2*this.PI/360*(t-90)),e={x:i.x-r,y:i.y-o}):180<t&&t<=270?(r=n*Math.cos(2*this.PI/360*(t-180)),o=n*Math.sin(2*this.PI/360*(t-180)),e={x:i.x-r,y:i.y+o}):(r=n*Math.sin(2*this.PI/360*(t-270)),o=n*Math.cos(2*this.PI/360*(t-270)),e={x:i.x+r,y:i.y+o});let a=n*Math.sin(2*this.PI/360*i);return{lng:(e=this.webMercator2LonLat(e)).x,lat:e.y,height:a}}lonLat2WebMercator(e){return{x:e.x*this.a/180,y:Math.log(Math.tan((90+e.y)*this.PI/360))/(this.PI/180)*this.a/180}}webMercator2LonLat(e){let t=e.x/this.a*180;return e=e.y/this.a*180,{x:t,y:180/this.PI*(2*Math.exp(e*this.PI/180)-this.PI/2)}}get_atan(e,t){let i=0;return 0==e?i=this.PI/2:0==t?i=this.PI:(i=Math.atan(Math.abs(t/e)),0<t&&e<0?i=this.PI-i:t<0&&e<0?i=this.PI+i:t<0&&0<e&&(i=2*this.M_PI-i)),i}ConvertLLAToXYZ(e){let t=this.PI/180*e.longitude,i=this.PI/180*e.latitude,n=e.altitude;return{x:((e=this.a/Math.sqrt(1-this.ee*Math.sin(i)*Math.sin(i)))+n)*Math.cos(i)*Math.cos(t),y:(e+n)*Math.cos(i)*Math.sin(t),z:(e*(1-this.ee)+n)*Math.sin(i)}}ConvertXYZToLLA(e){let t,i=this.get_atan(e.x,e.y);i<0&&(i+=this.PI);let n=this.get_atan(Math.sqrt(e.x*e.x+e.y*e.y),e.z),r=Math.sqrt(1-this.WGSe2*Math.sin(n)*Math.sin(n)),o=(this.WGSa,0);for(;t=n,r=Math.sqrt(1-this.WGSe2*Math.sin(t)*Math.sin(t)),o=this.WGSa/r,n=this.get_atan(Math.sqrt(e.x*e.x+e.y*e.y),e.z+o*this.WGSe2*Math.sin(t)),Math.abs(n-t)>this.EPSILON;);let a=Math.sqrt(e.x*e.x+e.y*e.y)/Math.cos(n)-this.WGSa/Math.sqrt(1-this.WGSe2*Math.sin(n)*Math.sin(n));return{longitude:180*i/this.PI,latitude:180*n/this.PI,altitude:a}}enu_to_ecef(e,t){let i,n=t.distance,r=t.azimuth,o=t.elevation,a=0<=o?n*Math.sin(this.PI/180*o):-1*n*Math.sin(this.PI/180*Math.abs(o)),s=n*Math.cos(this.PI/180*Math.abs(o)),c=0;i=r<=90?(c=s*Math.sin(this.PI/180*r),s*Math.cos(this.PI/180*r)):90<r&&r<180?(c=s*Math.cos(this.PI/180*(r-90)),-1*s*Math.sin(this.PI/180*(r-90))):180<r&&r<270?(c=-1*s*Math.sin(this.PI/180*(r-180)),-1*s*Math.cos(this.PI/180*(r-180))):(c=-1*s*Math.sin(this.PI/180*(360-r)),s*Math.cos(this.PI/180*(360-r)));let l=this.radians(e.latitude),d=this.radians(e.longitude);return t=e.altitude,n=Math.sin(l),o=this.a/Math.sqrt(1-this.e_sq*n*n),s=Math.sin(l),r=Math.cos(l),e=Math.sin(d),n=Math.cos(d),l=(t+o)*r*n,d=(t+o)*r*e,t=(t+(1-this.e_sq)*o)*s,o=r*a-s*i,r=s*a+r*i,i=n*o-e*c,c=e*o+n*c,this.ConvertXYZToLLA({x:i+l,y:c+d,z:r+t})}radians(e){return this.PI/180*e}}class VideoShed3d{constructor(e,t,i){var n;__publicField(this,"viewer"),__publicField(this,"CT"),__publicField(this,"options"),__publicField(this,"near"),__publicField(this,"cameraPosition"),__publicField(this,"position"),__publicField(this,"alpha"),__publicField(this,"video"),__publicField(this,"debugFrustum"),__publicField(this,"aspectRatio"),__publicField(this,"fov"),__publicField(this,"activeVideoListener"),__publicField(this,"videoTexture"),__publicField(this,"orientation"),__publicField(this,"viewShadowMap"),__publicField(this,"cameraFrustum"),__publicField(this,"postProcess"),__publicField(this,"_camerafov"),__publicField(this,"_cameraPosition"),__publicField(this,"_debugFrustum"),__publicField(this,"_position"),__publicField(this,"_aspectRatio"),__publicField(this,"url"),__publicField(this,"id"),__publicField(this,"oldOpt"),__publicField(this,"cesiumObj"),this.viewer=e,this.activeVideoListener=null,this.id=i.id||null,this.CT=new CT,this.cesiumObj=t,this.setOptions(i);let r=this.initCameraParam();this.near=r.near||.1,this.cameraPosition=r.cameraPosition,this.position=r.position,this.alpha=r.alpha||1,this.video=this.options.video,this.url=(null==(n=this.options.video)?void 0:n.src)||"",this.debugFrustum=defaultValue(r.debugFrustum,!0),this.aspectRatio=this.options.aspectRatio||1,this.fov=r.fov||400,this.cameraPosition&&this.position&&(this.activeVideo(),this.getOrientation(),this.createShadowMap(),this.addCameraFrustum(),this.addPostProcess(),this.viewer.scene.primitives.add(this))}setOptions(e){let t;if(this.oldOpt=e,this.cesiumObj.hideEarth){let i=(e.x||0)/1e5,n=(e.y||0)/1e5;t=this.cesiumObj.lonlatToWGS84(this.cesiumObj.HIDEMODELLONLAT[0]+i,this.cesiumObj.HIDEMODELLONLAT[1]+n)}else t=this.cesiumObj.lonlatToWGS84(e.lon,e.lat);let i={id:e.id||null,video:e.video,position:{x:t[0],y:t[1],z:e.height||300},rotation:{x:e.rotateX||0,y:e.rotateY||0},near:e.near||0,far:e.far||1e4,fov:e.fov||60,aspectRatio:e.aspectRatio||1,alpha:e.alpha||1,debugFrustum:e.debugFrustum||!1};this.options=i}getModelName(){return this.id||this.url.slice(this.url.lastIndexOf("/")+1)}getControlValue(){return{x:this.oldOpt.x||0,y:this.oldOpt.y||0,lon:this.oldOpt.lon,lat:this.oldOpt.lat,height:this.oldOpt.height,rotateX:this.oldOpt.rotateX,rotateY:this.oldOpt.rotateY,far:this.oldOpt.far,fov:this.oldOpt.fov,aspectRatio:this.oldOpt.aspectRatio,alpha:this.oldOpt.alpha,debugFrustum:this.oldOpt.debugFrustum}}flyTo(){let e;if(this.cesiumObj.hideEarth){let t=(this.oldOpt.x||0)/1e5,i=(this.oldOpt.y||0)/1e5;e=this.cesiumObj.lonlatToWGS84(this.cesiumObj.HIDEMODELLONLAT[0]+t,this.cesiumObj.HIDEMODELLONLAT[1]+i)}else e=this.cesiumObj.lonlatToWGS84(this.oldOpt.lon,this.oldOpt.lat);this.cesiumObj.changeCamera(e[0],e[1],this.oldOpt.height+300,{isFly:!0,heading:0})}getControlOptions(){let e=[{name:"经度",value:"lon",type:"number",step:1e-5},{name:"纬度",value:"lat",type:"number",step:1e-5}];this.cesiumObj.hideEarth&&(e=[{name:"x偏移",value:"x",type:"number",step:1},{name:"y偏移",value:"y",type:"number",step:1}]);return e=e.concat([{name:"高度",value:"height",type:"number"},{name:"rotateX",value:"rotateX",type:"slider",min:-180,max:180},{name:"rotateY",value:"rotateY",type:"slider",min:-180,max:180},{name:"距离",value:"far",type:"number"},{name:"张角",value:"fov",type:"number"},{name:"长宽比",value:"aspectRatio",type:"number",min:1e-6,step:.1},{name:"透明度",value:"alpha",type:"slider",min:0,max:1,step:.01},{name:"是否显示辅助线",value:"debugFrustum",type:"switch"}]),e}initCameraParam(){let e=this.CT.enu_to_ecef({longitude:+this.options.position.x,latitude:+this.options.position.y,altitude:+this.options.position.z},{distance:this.options.far,azimuth:+this.options.rotation.y,elevation:+this.options.rotation.x});return e=Cartesian3.fromDegrees(e.longitude,e.latitude,e.altitude),Cartesian3.fromDegrees(+this.options.position.x,+this.options.position.y,0),{cameraPosition:Cartesian3.fromDegrees(+this.options.position.x,+this.options.position.y,+this.options.position.z),position:e,alpha:this.options.alpha,near:this.options.near,fov:this.options.fov,debugFrustum:this.options.debugFrustum}}activeVideo(){let e=this.video,t=this;e&&(this.activeVideoListener||(this.activeVideoListener=function(){t.videoTexture&&t.videoTexture.destroy(),t.videoTexture=new Texture({context:t.viewer.scene.context,source:e,width:1,height:1,pixelFormat:PixelFormat$1.RGBA,pixelDatatype:PixelDatatype$1.UNSIGNED_BYTE})}),this.viewer.clock.onTick.addEventListener(this.activeVideoListener))}getOrientation(){let e=Cartesian3.normalize(Cartesian3.subtract(this.position,this.cameraPosition,new Cartesian3),new Cartesian3),t=Cartesian3.normalize(this.cameraPosition,new Cartesian3),i=new Camera(this.viewer.scene);i.position=this.cameraPosition,i.direction=e,i.up=t,e=i.directionWC,t=i.upWC;let n=i.rightWC,r=new Cartesian3,o=new Matrix3,a=new Quaternion,s=Cartesian3.negate(n,r);return Matrix3.setColumn(o,0,s,o),Matrix3.setColumn(o,1,t,o),Matrix3.setColumn(o,2,e,o),a=Quaternion.fromRotationMatrix(o,a),this.orientation=a}createShadowMap(){let e=new Camera(this.viewer.scene);e.position=this.cameraPosition,e.direction=Cartesian3.subtract(this.position,this.cameraPosition,new Cartesian3(0,0,0)),e.up=Cartesian3.normalize(this.cameraPosition,new Cartesian3(0,0,0));let t=Cartesian3.distance(this.position,this.cameraPosition);e.frustum=new PerspectiveFrustum({fov:CesiumMath$1.toRadians(this.fov),aspectRatio:this.aspectRatio,near:this.near,far:t}),this.viewShadowMap=new ShadowMap({lightCamera:e,enable:!1,darkness:1,isPointLight:!1,isSpotLight:!0,cascadesEnabled:!1,context:this.viewer.scene.context,pointLightRadius:t})}addCameraFrustum(){this.cameraFrustum=new Primitive$3({geometryInstances:new GeometryInstance({geometry:new FrustumOutlineGeometry({origin:this.cameraPosition,orientation:this.orientation,frustum:this.viewShadowMap._lightCamera.frustum}),attributes:{color:ColorGeometryInstanceAttribute.fromColor(Color.YELLOW.withAlpha(.5))}}),appearance:new PerInstanceColorAppearance({closed:!1,flat:!0,faceForward:!0}),asynchronous:!1,cull:!0,show:this.debugFrustum}),this.viewer.scene.primitives.add(this.cameraFrustum)}addPostProcess(){let e=this,t=e.viewShadowMap._isPointLight?e.viewShadowMap._pointBias:e.viewShadowMap._primitiveBias;this.postProcess=new PostProcessStage({fragmentShader:"\n uniform float mixNum;\n uniform sampler2D colorTexture;\n uniform sampler2D stcshadow;\n uniform sampler2D videoTexture;\n uniform sampler2D depthTexture;\n uniform mat4 _shadowMap_matrix;\n uniform vec4 shadowMap_lightPositionEC;\n uniform vec4 shadowMap_normalOffsetScaleDistanceMaxDistanceAndDarkness;\n uniform vec4 shadowMap_texelSizeDepthBiasAndNormalShadingSmooth;\n in vec2 v_textureCoordinates;\n vec4 toEye(in vec2 uv, in float depth){ \n vec2 xy = vec2((uv.x * 2.0 - 1.0),(uv.y * 2.0 - 1.0));\n vec4 posInCamera =czm_inverseProjection * vec4(xy, depth, 1.0);\n posInCamera =posInCamera / posInCamera.w;\n return posInCamera;\n }\n float getDepth(in vec4 depth){ \n float z_window = czm_unpackDepth(depth);\n z_window = czm_reverseLogDepth(z_window);\n float n_range = czm_depthRange.near;\n float f_range = czm_depthRange.far;\n return (2.0 * z_window - n_range - f_range) / (f_range - n_range);\n }\n float _czm_sampleShadowMap(sampler2D shadowMap, vec2 uv){ \n return texture(shadowMap, uv).r;\n }\n float _czm_shadowDepthCompare(sampler2D shadowMap, vec2 uv, float depth){ \n return step(depth, _czm_sampleShadowMap(shadowMap, uv));\n }\n float _czm_shadowVisibility(sampler2D shadowMap, czm_shadowParameters shadowParameters){ \n float depthBias = shadowParameters.depthBias;\n float depth = shadowParameters.depth;\n float nDotL = shadowParameters.nDotL;\n float normalShadingSmooth = shadowParameters.normalShadingSmooth;\n float darkness = shadowParameters.darkness;\n vec2 uv = shadowParameters.texCoords;\n depth -= depthBias;\n vec2 texelStepSize = shadowParameters.texelStepSize;\n float radius = 1.0;\n float dx0 = -texelStepSize.x * radius;\n float dy0 = -texelStepSize.y * radius;\n float dx1 = texelStepSize.x * radius;\n float dy1 = texelStepSize.y * radius;\n float visibility = ( _czm_shadowDepthCompare(shadowMap, uv, depth) +_czm_shadowDepthCompare(shadowMap, uv + vec2(dx0, dy0), depth) + _czm_shadowDepthCompare(shadowMap, uv + vec2(0.0, dy0), depth) + _czm_shadowDepthCompare(shadowMap, uv + vec2(dx1, dy0), depth) + _czm_shadowDepthCompare(shadowMap, uv + vec2(dx0, 0.0), depth) + _czm_shadowDepthCompare(shadowMap, uv + vec2(dx1, 0.0), depth) + _czm_shadowDepthCompare(shadowMap, uv + vec2(dx0, dy1), depth) + _czm_shadowDepthCompare(shadowMap, uv + vec2(0.0, dy1), depth) + _czm_shadowDepthCompare(shadowMap, uv + vec2(dx1, dy1), depth) ) * (1.0 / 9.0) ;\n return visibility;\n }\n vec3 pointProjectOnPlane(in vec3 planeNormal, in vec3 planeOrigin, in vec3 point){ \n vec3 v01 = point -planeOrigin;\n float d = dot(planeNormal, v01) ;\n return (point - planeNormal * d);\n }\n float ptm(vec3 pt){ \n return sqrt(pt.x*pt.x + pt.y*pt.y + pt.z*pt.z);\n }\n void main() { \n const float PI = 3.141592653589793;\n vec4 color = texture(colorTexture, v_textureCoordinates);\n vec4 currD = texture(depthTexture, v_textureCoordinates);\n if(currD.r>=1.0){ \n out_FragColor = color;\n return;\n } \n float depth = getDepth(currD);\n vec4 positionEC = toEye(v_textureCoordinates, depth);\n vec3 normalEC = vec3(1.0);\n czm_shadowParameters shadowParameters;\n shadowParameters.texelStepSize = shadowMap_texelSizeDepthBiasAndNormalShadingSmooth.xy;\n shadowParameters.depthBias = shadowMap_texelSizeDepthBiasAndNormalShadingSmooth.z;\n shadowParameters.normalShadingSmooth = shadowMap_texelSizeDepthBiasAndNormalShadingSmooth.w;\n shadowParameters.darkness = shadowMap_normalOffsetScaleDistanceMaxDistanceAndDarkness.w;\n shadowParameters.depthBias *= max(depth * 0.01, 1.0);\n vec3 directionEC = normalize(positionEC.xyz - shadowMap_lightPositionEC.xyz);\n float nDotL = clamp(dot(normalEC, -directionEC), 0.0, 1.0);\n vec4 shadowPosition = _shadowMap_matrix * positionEC;\n shadowPosition /= shadowPosition.w;\n if (any(lessThan(shadowPosition.xyz, vec3(0.0))) || any(greaterThan(shadowPosition.xyz, vec3(1.0)))) { \n out_FragColor = color;\n return;\n } \n shadowParameters.texCoords = shadowPosition.xy;\n shadowParameters.depth = shadowPosition.z;\n shadowParameters.nDotL = nDotL;\n float visibility = _czm_shadowVisibility(stcshadow, shadowParameters);\n vec4 videoColor = texture(videoTexture,shadowPosition.xy);\n if(visibility==1.0){ \n out_FragColor = mix(color,vec4(videoColor.xyz,1.0),mixNum*videoColor.a);\n }else{ \n if(abs(shadowPosition.z-0.0)<0.01){ \n return;\n }\n out_FragColor = color;\n }\n }",uniforms:{mixNum:function(){return e.alpha},stcshadow:function(){return e.viewShadowMap._shadowMapTexture},videoTexture:function(){return e.videoTexture},_shadowMap_matrix:function(){return e.viewShadowMap._shadowMapMatrix},shadowMap_lightPositionEC:function(){return e.viewShadowMap._lightPositionEC},shadowMap_texelSizeDepthBiasAndNormalShadingSmooth:function(){let i=new Cartesian2;return i.x=1/e.viewShadowMap._textureSize.x,i.y=1/e.viewShadowMap._textureSize.y,Cartesian4.fromElements(i.x,i.y,t.depthBias,t.normalShadingSmooth,this.combinedUniforms1)},shadowMap_normalOffsetScaleDistanceMaxDistanceAndDarkness:function(){return Cartesian4.fromElements(t.normalOffsetScale,e.viewShadowMap._distance,e.viewShadowMap.maximumDistance,e.viewShadowMap._darkness,this.combinedUniforms2)}}}),this.viewer.scene.postProcessStages.add(this.postProcess)}getStyle(){return this.options}updateStyle(e){this.viewer.scene.primitives.remove(this.cameraFrustum),e.video=this.oldOpt.video,this.setOptions(e);let t=this.initCameraParam();this.near=t.near||.1,this.cameraPosition=t.cameraPosition,this.position=t.position,this.alpha=t.alpha||1,this.debugFrustum=defaultValue(t.debugFrustum,!0),this.aspectRatio=e.aspectRatio||1,this.fov=t.fov||400,this.cameraPosition&&this.position&&(this.getOrientation(),this.createShadowMap(),this.addCameraFrustum())}deActiveVideo(){this.activeVideoListener&&(this.viewer.clock.onTick.removeEventListener(this.activeVideoListener),delete this.activeVideoListener)}update(e){this.viewShadowMap&&this.viewer.scene.frameState.shadowMaps.push(this.viewShadowMap)}setFrustumVisible(e){this.cameraFrustum&&(this.debugFrustum=e,this.cameraFrustum.show=this.debugFrustum)}destroy(){this.viewer.scene.postProcessStages.remove(this.postProcess),this.viewer.scene.primitives.remove(this.cameraFrustum),this.activeVideoListener&&this.viewer.clock.onTick.removeEventListener(this.activeVideoListener),this.activeVideoListener&&delete this.activeVideoListener,delete this.postProcess,delete this.viewShadowMap,delete this.cameraPosition,delete this.position,delete this.alpha,delete this._camerafov,delete this._cameraPosition,delete this.videoTexture,delete this.cameraFrustum,delete this._debugFrustum,delete this._position,delete this._aspectRatio,delete this.url,delete this.orientation,this.viewer.scene.primitives.remove(this),delete this.viewer}remove(){this.destroy()}}const BASEURL="/gy-cesium";let model1=null,model3=null,model4=null;class CesiumModel{constructor(e,t){var i,n;__publicField(this,"options"),__publicField(this,"contentId"),__publicField(this,"camera"),__publicField(this,"view"),__publicField(this,"controls"),__publicField(this,"isDebug"),__publicField(this,"edgeDetectionStage"),__publicField(this,"step"),__publicField(this,"lonlatType"),__publicField(this,"videoShed3d"),__publicField(this,"primitiveObj"),__publicField(this,"currentScence"),__publicField(this,"sceneObj"),__publicField(this,"filesObj"),__publicField(this,"hideEarth"),__publicField(this,"isSplitView"),__publicField(this,"modelControlsFun"),__publicField(this,"HIDEMODELLONLAT"),__publicField(this,"HIDEMODELCETNER");let r={token:"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiJkNWU0NjY3Yy00N2JjLTQxMmQtYmNkNC01MjM3ZjJiMzI3MGQiLCJpZCI6MTM5NTQ1LCJpYXQiOjE2ODQzNzc3NDl9.xwrLw1UquYPiRZY3ROYlAgzF_azXN1KuKJwdD_VMHwc",lonlatType:"WGS84",minDistance:1,maxDistance:Number.POSITIVE_INFINITY,extent:null,config:null,hideEarth:!1,isSplitView:!1,beforeInit:()=>{},afterInit:()=>{},startSceneLoaded:()=>{},sceneLoaded:()=>{},fileLoaded:()=>{}};this.isDebug=!0,this.contentId=e,this.options=Object.assign({},r,t),this.camera=null,this.view=null,this.controls=null,this.edgeDetectionStage=null,this.step=1,this.hideEarth=this.options.hideEarth||!1,this.isSplitView=this.options.isSplitView||!1,this.lonlatType=this.options.lonlatType||"WGS84",this.sceneObj=(null==(i=this.options.config)?void 0:i.scene)||{},this.filesObj=(null==(n=this.options.config)?void 0:n.files)||{},this.videoShed3d=null,this.primitiveObj={},this.currentScence="",this.modelControlsFun=null,this.HIDEMODELLONLAT=[116.39123036680564,39.90781148407254],this.HIDEMODELCETNER=Cartesian3.fromDegrees(this.HIDEMODELLONLAT[0],this.HIDEMODELLONLAT[1],0),this.init3DModel()}init3DModel(){var e,t,i;null==(t=(e=this.options).beforeInit)||t.call(e),this.options.token&&(Ion$1.defaultAccessToken=this.options.token),this.view=new Viewer(this.contentId,{animation:!1,baseLayerPicker:!1,geocoder:!1,infoBox:!1,timeline:!1,sceneModePicker:!1,navigationHelpButton:!1,fullscreenButton:!1,homeButton:!1,requestRenderMode:!1,scene3DOnly:!1,automaticallyTrackDataSourceClocks:!1,shouldAnimate:!0,imageryProvider:new UrlTemplateImageryProvider({url:"http://172.18.8.146:10000/map/gaodeMap/ccMap/{z}/{x}/{y}.jpg"})}),this.isDebug&&(window.view=this.view),this.hideEarth?(this.view.scene.globe=null,this.view.scene.sun.show=!1,this.view.scene.moon.show=!1,this.view.scene.skyBox.show=!1,this.view.scene.undergroundMode=!0,this.view.scene.backgroundcolor=new Color(0,0,0,0)):this.view.scene.globe.depthTestAgainstTerrain=!0,this.camera=this.view.camera,this.changeControls(),this.splitView();let n={lon:116.388415,lat:39.865688,heading:-1,pitch:-38};this.hideEarth&&(n.lon=this.HIDEMODELLONLAT[0],n.lat=this.HIDEMODELLONLAT[1]),this.changeCamera(...this.lonlatToWGS84(n.lon,n.lat),4e3,{isFly:!1,heading:-1,pitch:-38}),null==(i=this.options.afterInit)||i.call(this),this.view.clock.currentTime=JulianDate.fromIso8601("2023-05-18T02:00:00Z"),this.addEvents(),this.addModelExtent(),this.addPostProcessStages()}splitView(){const e=document.getElementById("slider");this.isSplitView?this.view.scene.splitPosition=e.offsetLeft/e.parentElement.offsetWidth:null==e||e.remove()}getCameraOpt(e,t,i=0,{heading:n,pitch:r,roll:o}={}){e=Number(e),t=Number(t),i=Number(i);let a={destination:lonlatToPosition(e,t,i)},s=null;return void 0===n&&void 0===r||(s={},n&&(n=Number(n),s.heading=toRadians(n)),r&&(r=Number(r),s.pitch=toRadians(r)),o&&(o=Number(o),s.pitch=toRadians(o))),s&&(a.orientation=s),a}changeCamera(e,t,i=0,{heading:n,pitch:r,isFly:o,roll:a}={isFly:!0}){const s=this.getCameraOpt(e,t,i,{heading:n,pitch:r,roll:a});let c="flyTo";o||(c="setView"),this.camera[c](s)}changeControls(){this.view.scene.screenSpaceCameraController.minimumZoomDistance=this.options.minDistance||1,this.view.scene.screenSpaceCameraController.maximumZoomDistance=this.options.maxDistance||3e4;const{scene:e}=this.view;e.screenSpaceCameraController.zoomEventTypes=[CameraEventType$1.WHEEL],e.screenSpaceCameraController.tiltEventTypes=[CameraEventType$1.RIGHT_DRAG]}addPostProcessStages(){this.view.scene.postProcessStages.fxaa.enabled=!0,this.edgeDetectionStage=new GyEdgeDetectionStage(this.view,"#0062ff",.01)}addEvents(){}addClickEvent(e){this.view.screenSpaceEventHandler.setInputAction((t=>{this.edgeDetectionStage&&this.edgeDetectionStage.clear();const i=this.view.scene.pick(t.position);if(!defined(i))return;let n=i.getProperty("name"),r=null;if(n){r=i.tileset.tilesetLoaderObj.tilesetModelObj[n]}e&&e(i,r)}),ScreenSpaceEventType$1.LEFT_CLICK)}addModelExtent(){if(this.options.extent&&!this.hideEarth){const e=this.view.scene,t=e.globe,i=Rectangle.fromDegrees(...this.options.extent);t.cartographicLimitRectangle=i,t.showSkirts=!1,t.backFaceCulling=!1,t.undergroundColor=void 0,e.skyAtmosphere.show=!1}}cesiumConClick(){switch(this.step){case 0:this.view.trackedEntity=null,this.changeCamera(...this.lonlatToWGS84(116.388415,39.865688),4e3,{isFly:!0,heading:-1,pitch:-38}),this.step++;break;case 1:this.view.flyTo(model1),this.step++;break;case 2:this.changeCamera(...this.lonlatToWGS84(116.403042,39.893806),500,{isFly:!0,heading:-1,pitch:-38}),this.step++;break;case 3:model4.flyTo(),this.step++;break;case 4:this.view.trackedEntity=model3,model3.viewFrom=new Cartesian3(-150,-250,100),this.step=0}}lonlatToWGS84(e,t){return e=Number(e),t=Number(t),"GCJ02"===this.lonlatType?gcj02towgs84(e,t):"BD09"===this.lonlatType?bd09towgs84(e,t):(this.lonlatType,[e,t])}getEntityById(e){return e?this.view.entities.getById(e):null}getPrimitiveById(e){return e&&this.primitiveObj[e]||null}initSceneCamera(){let e=this.currentScence,t=this.sceneObj[e],i=null==t?void 0:t.camera;if(i){let e,t;if(this.hideEarth){let n=(i.x||0)/1e5,r=(i.y||0)/1e5;[e,t]=this.lonlatToWGS84(this.HIDEMODELLONLAT[0]+n,this.HIDEMODELLONLAT[1]+r)}else[e,t]=this.lonlatToWGS84(i.lon,i.lat);this.changeCamera(e,t,i.hei,{heading:i.heading,pitch:i.pitch,isFly:!0,roll:i.roll})}}initModelPos(){}addTilesetModel(e,t){return new TilesetLoader(this,e,t)}addGltfModel(e,t){return new GltfLoader(this,e,t)}addVideoShadow(e,t){var i;if(!(this.hideEarth||t.lon&&t.lat))return;t.video=e;let n=new VideoShed3d(this.view,this,t);null==(i=this.modelControlsFun)||i.call(this,[n])}loadGltfModel(e){return new Promise((t=>{let i=e.path+"/"+e.file,n=this.addGltfModel(i,e);n.loadFinish((i=>{var r;let o=e.file,a=o.slice(0,o.lastIndexOf("."));null==(r=this.options.fileLoaded)||r.call(this,n,e.id||a,e),t(n)}))}))}loadTilesModel(e){return new Promise((t=>{let i=e.path+"/"+e.file,n=this.addTilesetModel(i,e);n.loadFinish((i=>{var r;let o=e.file,a=o.slice(0,o.lastIndexOf("."));null==(r=this.options.fileLoaded)||r.call(this,n,e.id||a,e),t(n)}))}))}addSceneType(e){return new Promise(((t,i)=>{let n=this.filesObj[e];if(n){let e=[];n.forEach((t=>{let i=t.file,n=i.slice(i.lastIndexOf(".")+1).toLowerCase();"glb"!==n&&"gltf"!==n&&"json"!==n||("json"===n?e.push(this.loadTilesModel(t)):e.push(this.loadGltfModel(t)))})),Promise.all(e).then(((...e)=>{t(e)})).catch((e=>{i(e)}))}}))}loadScene(e,t=!0){var i;if(this.currentScence!==e){this.currentScence=e;let n=this.sceneObj[e];if(null==(i=this.options.startSceneLoaded)||i.call(this),n){t&&this.initSceneCamera(),this.initModelPos();let e=n.type,i=[];Array.isArray(e)||(e=[e]),e.forEach((e=>{i.push(this.addSceneType(e))})),Promise.all(i).then(((...e)=>{var t,i;let n=e.flat(1/0);null==(t=this.modelControlsFun)||t.call(this,n),null==(i=this.options.sceneLoaded)||i.call(n)})).catch((e=>{var t;null==(t=this.options.sceneLoaded)||t.call(this,e)}))}}}destroy(){}testGlb(){this.addGltfModel(BASEURL+"/data/model/000001.glb",{loopAllAnimations:"REPEAT",scale:5e3,lon:116.405315,lat:39.908775}).addAnimation({index:1})}test3dtils(){let e=BASEURL+"/data/tiananmen/tileset.json";this.addTilesetModel(e,{height:0,offsetX:1.2,scale:.2092,offsetY:-32.5})}test3(){this.addGltfModel(BASEURL+"/data/model/shandian.glb",{id:"testModel",loopAllAnimations:"REVERSE",scale:20,lon:116.395483,lat:39.902591,hei:40}).flyTo(),this.videoShed3d;let e=gcj02towgs84(116.377545,39.907015),t=gcj02towgs84(116.411824,39.908218),i=Cartesian3.fromDegrees(e[0],e[1],5),n=Cartesian3.fromDegrees(t[0],t[1],5),r=0,o=this.view.entities.add({id:"car",name:"car",position:new CallbackProperty((function(){return r>5e3&&(r=0),r++,Cartesian3.lerp(i,n,r/5e3,new Cartesian3)}),!1),model:{uri:BASEURL+"/data/model/GroundVehicle.glb",scale:5,runAnimations:!0}});model3=o}test(){new TilesetLoader(this,BASEURL+"/data/tiananmen/tileset.json",{height:0,offsetX:1.2,scale:.2092,offsetY:-32.5}).readyFinish((e=>{this.view.scene.primitives.add(e)})),new TilesetLoader(this,BASEURL+"/data/3dtiles/tileset.json",{height:-80,scale:80,offsetY:-10,opacity:1}).readyFinish((e=>{this.view.scene.primitives.add(e),model1=e}));let e=document.getElementById("trailer"),t=new Plane(Cartesian3.UNIT_Z,0),i=Matrix3.fromRotationX(CesiumMath$1.toRadians(0)),n=Matrix4.fromRotationTranslation(i);Plane.transform(t,n,t);let r=Matrix3.fromRotationZ(CesiumMath$1.toRadians(0)),o=Matrix4.fromRotationTranslation(r);Plane.transform(t,o,t),this.view.entities.add({polygon:{hierarchy:new PolygonHierarchy(Cartesian3.fromDegreesArray([116.391304,39.902576,116.412024,39.90119,116.412058,39.893791,116.39127,39.88])),material:e,disableDepthTestDistance:Number.POSITIVE_INFINITY}});let a=gcj02towgs84(116.377545,39.907015),s=gcj02towgs84(116.411824,39.908218),c=Cartesian3.fromDegrees(a[0],a[1],5),l=Cartesian3.fromDegrees(s[0],s[1],5),d=0,u=this.view.entities.add({id:"car",name:"car",position:new CallbackProperty((function(){return d>5e3&&(d=0),d++,Cartesian3.lerp(c,l,d/5e3,new Cartesian3)}),!1),model:{uri:BASEURL+"/data/model/GroundVehicle.glb",scale:5,runAnimations:!0}});model3=u;let h=gcj02towgs84(116.395483,39.902591);const p=Cartesian3.fromDegrees(h[0],h[1],40),f=new HeadingPitchRoll(CesiumMath$1.toRadians(90),0,0),m=Transforms$1.headingPitchRollQuaternion(p,f);let g=this.view.entities.add({id:"testModel",name:"testModel",position:p,orientation:m,model:{uri:BASEURL+"/data/model/shandian.glb",scale:20,runAnimations:!0}});model4=g}}window.CESIUM_BASE_URL=BASEURL+"/cesiumStatic";let gyCesiumResultObj={};const gyModelInit=e=>{if((e=e||"")&&gyCesiumResultObj[e])return gyCesiumResultObj[e];const t=vueDemi.ref(null),i=vueDemi.ref(!1);let n={init:n=>{t.value=new CesiumModel(e,n),i.value=!0},destroy:()=>{var i;delete gyCesiumResultObj[e],null==(i=t.value)||i.destroy()},model:t,modelFinish:i};return gyCesiumResultObj[e]=n,n},gyCesium=e=>gyCesiumResultObj[e]?gyCesiumResultObj[e]:gyModelInit.call(void 0,e),__vue2_script$2=vueDemi.defineComponent({name:"GyCesium",props:{id:{type:String,default:"gyCesium"},lonlatType:{type:String,default:"WGS84"},config:{type:Object,default:()=>({})},extent:{type:Array,default:null},hideEarth:{type:Boolean,default:!1},isSplitView:{type:Boolean,default:!1},hasModelControls:{type:Boolean,default:!1}},emits:["afterInit","beforeInit","startSceneLoaded","sceneLoaded","fileLoaded"],setup(e,{emit:t}){let i=null;i=gyCesium(e.id);let n={lonlatType:e.lonlatType,config:e.config,extent:e.extent,hideEarth:e.hideEarth,isSplitView:e.isSplitView,beforeInit:function(){t("beforeInit",this)},afterInit:function(){t("afterInit",this)},startSceneLoaded:function(){t("startSceneLoaded",this)},sceneLoaded:function(){t("sceneLoaded",this)},fileLoaded:function(e,i,n){t("fileLoaded",e,i,n,this)}};return vueDemi.onMounted((()=>{i.init(n)})),vueDemi.onBeforeUnmount((()=>{i.destroy()})),{clickFun:()=>{i&&i.model&&i.model.value.cesiumConClick()}}}});var render$2=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"GyCesium",attrs:{id:e.id,tabindex:"0"},on:{click:function(t){return t.ctrlKey?e.clickFun.apply(null,arguments):null}}},[e.hasModelControls?i("ModelControls"):e._e(),i("div",{attrs:{id:"slider"}}),e._t("default")],2)},staticRenderFns$2=[];const GyCesium_vue_vue_type_style_index_0_lang="";function normalizeComponent(e,t,i,n,r,o,a,s){var c,l="function"==typeof e?e.options:e;if(t&&(l.render=t,l.staticRenderFns=i,l._compiled=!0),n&&(l.functional=!0),o&&(l._scopeId="data-v-"+o),a?(c=function(e){(e=e||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(e=__VUE_SSR_CONTEXT__),r&&r.call(this,e),e&&e._registeredComponents&&e._registeredComponents.add(a)},l._ssrRegister=c):r&&(c=s?function(){r.call(this,(l.functional?this.parent:this).$root.$options.shadowRoot)}:r),c)if(l.functional){l._injectStyles=c;var d=l.render;l.render=function(e,t){return c.call(t),d(e,t)}}else{var u=l.beforeCreate;l.beforeCreate=u?[].concat(u,c):[c]}return{exports:e,options:l}}const __cssModules$2={};var __component__$2=normalizeComponent(__vue2_script$2,render$2,staticRenderFns$2,!1,__vue2_injectStyles$2,null,null,null);function __vue2_injectStyles$2(e){for(let t in __cssModules$2)this[t]=__cssModules$2[t]}const GyCesium=function(){return __component__$2.exports}(),__vue2_script$1=vueDemi.defineComponent({name:"ModelControls",props:{modelId:{type:String,default:""}},setup(e){const{proxy:t}=vueDemi.getCurrentInstance();vueDemi.ref("");const i=e.modelId||t.$parent.id;let n=null;i&&(n=gyCesium(i));const r=vueDemi.computed((()=>null==n?void 0:n.modelFinish.value));vueDemi.watch(r,(e=>{n.model.value.modelControlsFun=e=>{o=o.concat(...e),d()}})),vueDemi.onMounted((()=>{d()}));let o=[];const a=vueDemi.ref([]),s=vueDemi.ref([]),c=vueDemi.ref({}),l=vueDemi.ref(0),d=()=>{if(l.value=0,o&&0!==o.length){if(0!==o.length){let e=["无"];o.forEach(((t,i)=>{let n=(null==t?void 0:t.getModelName())||`model-${i}`;e.push(n)})),a.value=e}}else u()},u=()=>{s.value=[],c.value=[],a.value=[],o=[]},h=()=>{let e=l.value-1,t=o[e];t&&t.getControlValue?c.value=t.getControlValue():c.value={},t&&t.getControlOptions?s.value=t.getControlOptions():s.value=[]};return{formData:c,modelChooseIndex:l,modelNameList:a,optionsList:s,setModelControl:h,changeDataFun:()=>{var e;let t=l.value-1,i=o[t];null==(e=null==i?void 0:i.updateStyle)||e.call(i,c.value)},changeModelList:()=>{var e;if(0!==l.value){let t=l.value-1,i=o[t];null==(e=null==i?void 0:i.flyTo)||e.call(i),h()}else s.value=[],c.value=[]}}}});var render$1=function(){var e=this,t=e.$createElement,i=e._self._c||t;return 0!==e.modelNameList.length?i("div",{staticClass:"ModelControl"},[i("el-select",{attrs:{placeholder:"Select",size:"small"},on:{change:e.changeModelList},model:{value:e.modelChooseIndex,callback:function(t){e.modelChooseIndex=t},expression:"modelChooseIndex"}},e._l(e.modelNameList,(function(e,t){return i("el-option",{key:t,attrs:{label:e,value:t}})})),1),e._l(e.optionsList,(function(t,n){return[i("div",{staticClass:"ModelControl-item"},["number"===t.type||"slider"===t.type?i("div",{staticClass:"ModelControl-item-con ModelControl-slider"},[i("div",{staticClass:"ModelControl-name"},[e._v(e._s(t.name))]),i("el-input-number",{attrs:{size:"small",min:void 0!==t.min?t.min:-1/0,max:void 0!==t.max?t.max:1/0,step:t.step||1,"controls-position":"right"},on:{change:e.changeDataFun},model:{value:e.formData[t.value],callback:function(i){e.$set(e.formData,t.value,i)},expression:"formData[item.value]"}})],1):"slider"===t.type?i("div",{staticClass:"ModelControl-item-con ModelControl-slider"},[i("div",{staticClass:"ModelControl-name"},[e._v(e._s(t.name))]),i("el-slider",{attrs:{size:"small",min:t.min||0,max:t.max||100,step:t.step||1},on:{change:e.changeDataFun},model:{value:e.formData[t.value],callback:function(i){e.$set(e.formData,t.value,i)},expression:"formData[item.value]"}})],1):"switch"===t.type?i("div",{staticClass:"ModelControl-item-con ModelControl-switch"},[i("div",{staticClass:"ModelControl-name"},[e._v(e._s(t.name))]),i("el-switch",{attrs:{size:"small"},on:{change:e.changeDataFun},model:{value:e.formData[t.value],callback:function(i){e.$set(e.formData,t.value,i)},expression:"formData[item.value]"}})],1):e._e()])]}))],2):e._e()},staticRenderFns$1=[];const ModelControls_vue_vue_type_style_index_0_scoped_true_lang="",__cssModules$1={};var __component__$1=normalizeComponent(__vue2_script$1,render$1,staticRenderFns$1,!1,__vue2_injectStyles$1,"1053e9b0",null,null);function __vue2_injectStyles$1(e){for(let t in __cssModules$1)this[t]=__cssModules$1[t]}const ModelControls=function(){return __component__$1.exports}(),__vue2_script=vueDemi.defineComponent({name:"GyCesiumVideoShadow",props:{videoUrl:{type:String,default:""},modelId:{type:String,default:""},id:{type:String,default:null},lon:{type:Number,default:null},lat:{type:Number,default:null},height:{type:Number,default:0},rotateX:{type:Number,default:0},rotateY:{type:Number,default:0},far:{type:Number,default:1e4},fov:{type:Number,default:60},aspectRatio:{type:Number,default:1},alpha:{type:Number,default:1},debugFrustum:{type:Boolean,default:!1}},emits:[],setup(e,{emit:t}){const{proxy:i}=vueDemi.getCurrentInstance();vueDemi.ref("");const n=e.modelId||i.$parent.id;let r=null;n&&(r=gyCesium(n));const o=vueDemi.ref(null),a=vueDemi.computed((()=>null==r?void 0:r.modelFinish.value));vueDemi.watch(a,(e=>{s()})),vueDemi.onMounted((()=>{s()}));const s=()=>{if(r&&r.model.value&&a.value&&o.value){let t={id:e.id,lon:e.lon,lat:e.lat,height:e.height,rotateX:e.rotateX,rotateY:e.rotateY,far:e.far,fov:e.fov,aspectRatio:e.aspectRatio,alpha:e.alpha,debugFrustum:e.debugFrustum};r.model.value.addVideoShadow(o.value,t)}};return{trailer:o}}});var render=function(){var e=this,t=e.$createElement,i=e._self._c||t;return e.videoUrl?i("video",{ref:"trailer",staticClass:"video-main",attrs:{src:e.videoUrl,muted:"",autoplay:"",loop:"",crossorigin:""},domProps:{muted:!0}}):e._e()},staticRenderFns=[];const GyCesiumVideoShadow_vue_vue_type_style_index_0_lang="",__cssModules={};var __component__=normalizeComponent(__vue2_script,render,staticRenderFns,!1,__vue2_injectStyles,null,null,null);function __vue2_injectStyles(e){for(let t in __cssModules)this[t]=__cssModules[t]}const GyCesiumVideoShadow=function(){return __component__.exports}(),components=Object.freeze(Object.defineProperty({__proto__:null,GyCesium:GyCesium,ModelControls:ModelControls,VideoShadow:GyCesiumVideoShadow},Symbol.toStringTag,{value:"Module"}));let install=e=>{if(!install.installed){Object.keys(components).map((e=>components[e])).forEach((t=>{(t.hasOwnProperty("name")||t.hasOwnProperty("__name"))&&t.hasOwnProperty("setup")&&e.component(t.name||t.__name,t)}))}};const index={install:install};exports.default=index,exports.gyCesium=gyCesium,exports.install=install;
|