You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

777 lines
424 KiB

var dg=Object.defineProperty,pg=Object.defineProperties;var fg=Object.getOwnPropertyDescriptors;var Ri=Object.getOwnPropertySymbols;var Fa=Object.prototype.hasOwnProperty,Na=Object.prototype.propertyIsEnumerable;var tn=(j,Q,K)=>Q in j?dg(j,Q,{enumerable:!0,configurable:!0,writable:!0,value:K}):j[Q]=K,N=(j,Q)=>{for(var K in Q||(Q={}))Fa.call(Q,K)&&tn(j,K,Q[K]);if(Ri)for(var K of Ri(Q))Na.call(Q,K)&&tn(j,K,Q[K]);return j},ue=(j,Q)=>pg(j,fg(Q));var te=(j,Q)=>{var K={};for(var _e in j)Fa.call(j,_e)&&Q.indexOf(_e)<0&&(K[_e]=j[_e]);if(j!=null&&Ri)for(var _e of Ri(j))Q.indexOf(_e)<0&&Na.call(j,_e)&&(K[_e]=j[_e]);return K};var b=(j,Q,K)=>(tn(j,typeof Q!="symbol"?Q+"":Q,K),K);(function(j,Q){typeof exports=="object"&&typeof module!="undefined"?module.exports=Q():typeof define=="function"&&define.amd?define(Q):(j=typeof globalThis!="undefined"?globalThis:j||self,j.VE=Q())})(this,function(){"use strict";function j(i){return i!=null&&typeof i=="object"&&i["@@functional/placeholder"]===!0}function Q(i){return function e(t){return arguments.length===0||j(t)?e:i.apply(this,arguments)}}function K(i){return function e(t,r){switch(arguments.length){case 0:return e;case 1:return j(t)?e:Q(function(n){return i(t,n)});default:return j(t)&&j(r)?e:j(t)?Q(function(n){return i(n,r)}):j(r)?Q(function(n){return i(t,n)}):i(t,r)}}}function _e(i,e){switch(i){case 0:return function(){return e.apply(this,arguments)};case 1:return function(t){return e.apply(this,arguments)};case 2:return function(t,r){return e.apply(this,arguments)};case 3:return function(t,r,n){return e.apply(this,arguments)};case 4:return function(t,r,n,s){return e.apply(this,arguments)};case 5:return function(t,r,n,s,o){return e.apply(this,arguments)};case 6:return function(t,r,n,s,o,l){return e.apply(this,arguments)};case 7:return function(t,r,n,s,o,l,c){return e.apply(this,arguments)};case 8:return function(t,r,n,s,o,l,c,h){return e.apply(this,arguments)};case 9:return function(t,r,n,s,o,l,c,h,u){return e.apply(this,arguments)};case 10:return function(t,r,n,s,o,l,c,h,u,p){return e.apply(this,arguments)};default:throw new Error("First argument to _arity must be a non-negative integer no greater than ten")}}function rn(i,e,t){return function(){for(var r=[],n=0,s=i,o=0;o<e.length||n<arguments.length;){var l;o<e.length&&(!j(e[o])||n>=arguments.length)?l=e[o]:(l=arguments[n],n+=1),r[o]=l,j(l)||(s-=1),o+=1}return s<=0?t.apply(this,r):_e(s,rn(i,r,t))}}var Ua=K(function(e,t){return e===1?Q(t):_e(e,rn(e,[],t))}),Tt=Ua;function je(i){return function e(t,r,n){switch(arguments.length){case 0:return e;case 1:return j(t)?e:K(function(s,o){return i(t,s,o)});case 2:return j(t)&&j(r)?e:j(t)?K(function(s,o){return i(s,r,o)}):j(r)?K(function(s,o){return i(t,s,o)}):Q(function(s){return i(t,r,s)});default:return j(t)&&j(r)&&j(n)?e:j(t)&&j(r)?K(function(s,o){return i(s,o,n)}):j(t)&&j(n)?K(function(s,o){return i(s,r,o)}):j(r)&&j(n)?K(function(s,o){return i(t,s,o)}):j(t)?Q(function(s){return i(s,r,n)}):j(r)?Q(function(s){return i(t,s,n)}):j(n)?Q(function(s){return i(t,r,s)}):i(t,r,n)}}}var ei=Array.isArray||function(e){return e!=null&&e.length>=0&&Object.prototype.toString.call(e)==="[object Array]"};function Wa(i){return i!=null&&typeof i["@@transducer/step"]=="function"}function ti(i,e,t){return function(){if(arguments.length===0)return t();var r=Array.prototype.slice.call(arguments,0),n=r.pop();if(!ei(n)){for(var s=0;s<i.length;){if(typeof n[i[s]]=="function")return n[i[s]].apply(n,r);s+=1}if(Wa(n)){var o=e.apply(null,r);return o(n)}}return t.apply(this,arguments)}}function nn(i){return i&&i["@@transducer/reduced"]?i:{"@@transducer/value":i,"@@transducer/reduced":!0}}var ct={init:function(){return this.xf["@@transducer/init"]()},result:function(i){return this.xf["@@transducer/result"](i)}},Va=function(){function i(e,t){this.xf=t,this.f=e,this.all=!0}return i.prototype["@@transducer/init"]=ct.init,i.prototype["@@transducer/result"]=function(e){return this.all&&(e=this.xf["@@transducer/step"](e,!0)),this.xf["@@transducer/result"](e)},i.prototype["@@transducer/step"]=function(e,t){return this.f(t)||(this.all=!1,e=nn(this.xf["@@transducer/step"](e,!1))),e},i}(),ja=K(function(e,t){return new Va(e,t)}),qa=ja,Qa=K(ti(["all"],qa,function(e,t){for(var r=0;r<t.length;){if(!e(t[r]))return!1;r+=1}return!0})),sn=Qa;function ii(i,e){for(var t=0,r=e.length,n=Array(r);t<r;)n[t]=i(e[t]),t+=1;return n}function Bi(i){return Object.prototype.toString.call(i)==="[object String]"}var Ya=Q(function(e){return ei(e)?!0:!e||typeof e!="object"||Bi(e)?!1:e.nodeType===1?!!e.length:e.length===0?!0:e.length>0?e.hasOwnProperty(0)&&e.hasOwnProperty(e.length-1):!1}),Ka=Ya,Ja=function(){function i(e){this.f=e}return i.prototype["@@transducer/init"]=function(){throw new Error("init not implemented on XWrap")},i.prototype["@@transducer/result"]=function(e){return e},i.prototype["@@transducer/step"]=function(e,t){return this.f(e,t)},i}();function Xa(i){return new Ja(i)}var Za=K(function(e,t){return _e(e.length,function(){return e.apply(t,arguments)})}),$a=Za;function el(i,e,t){for(var r=0,n=t.length;r<n;){if(e=i["@@transducer/step"](e,t[r]),e&&e["@@transducer/reduced"]){e=e["@@transducer/value"];break}r+=1}return i["@@transducer/result"](e)}function on(i,e,t){for(var r=t.next();!r.done;){if(e=i["@@transducer/step"](e,r.value),e&&e["@@transducer/reduced"]){e=e["@@transducer/value"];break}r=t.next()}return i["@@transducer/result"](e)}function an(i,e,t,r){return i["@@transducer/result"](t[r]($a(i["@@transducer/step"],i),e))}var ln=typeof Symbol!="undefined"?Symbol.iterator:"@@iterator";function Li(i,e,t){if(typeof i=="function"&&(i=Xa(i)),Ka(t))return el(i,e,t);if(typeof t["fantasy-land/reduce"]=="function")return an(i,e,t,"fantasy-land/reduce");if(t[ln]!=null)return on(i,e,t[ln]());if(typeof t.next=="function")return on(i,e,t);if(typeof t.reduce=="function")return an(i,e,t,"reduce");throw new TypeError("reduce: list must be array or iterable")}var tl=function(){function i(e,t){this.xf=t,this.f=e}return i.prototype["@@transducer/init"]=ct.init,i.prototype["@@transducer/result"]=ct.result,i.prototype["@@transducer/step"]=function(e,t){return this.xf["@@transducer/step"](e,this.f(t))},i}(),il=K(function(e,t){return new tl(e,t)}),rl=il;function ze(i,e){return Object.prototype.hasOwnProperty.call(e,i)}var cn=Object.prototype.toString,nl=function(){return cn.call(arguments)==="[object Arguments]"?function(e){return cn.call(e)==="[object Arguments]"}:function(e){return ze("callee",e)}}(),sl=nl,ol=!{toString:null}.propertyIsEnumerable("toString"),hn=["constructor","valueOf","isPrototypeOf","toString","propertyIsEnumerable","hasOwnProperty","toLocaleString"],un=function(){return arguments.propertyIsEnumerable("length")}(),al=function(e,t){for(var r=0;r<e.length;){if(e[r]===t)return!0;r+=1}return!1},ll=Q(typeof Object.keys=="function"&&!un?function(e){return Object(e)!==e?[]:Object.keys(e)}:function(e){if(Object(e)!==e)return[];var t,r,n=[],s=un&&sl(e);for(t in e)ze(t,e)&&(!s||t!=="length")&&(n[n.length]=t);if(ol)for(r=hn.length-1;r>=0;)t=hn[r],ze(t,e)&&!al(n,t)&&(n[n.length]=t),r-=1;return n}),ht=ll,cl=K(ti(["fantasy-land/map","map"],rl,function(e,t){switch(Object.prototype.toString.call(t)){case"[object Function]":return Tt(t.length,function(){return e.call(this,t.apply(this,arguments))});case"[object Object]":return Li(function(r,n){return r[n]=e(t[n]),r},{},ht(t));default:return ii(e,t)}})),hl=cl,zi=Number.isInteger||function(e){return e<<0===e},ul=K(function(e,t){var r=e<0?t.length+e:e;return Bi(t)?t.charAt(r):t[r]}),dl=ul,pl=K(function(e,t){return e.map(function(r){for(var n=t,s=0,o;s<r.length;){if(n==null)return;o=r[s],n=zi(o)?dl(o,n):n[o],s+=1}return n})}),fl=pl,ml=K(function(e,t){return fl([e],t)[0]}),dn=ml,gl=je(Li),pn=gl,vl=Q(function(e){return function(){return e}}),yl=vl,_l=function(){function i(e,t){this.xf=t,this.f=e,this.any=!1}return i.prototype["@@transducer/init"]=ct.init,i.prototype["@@transducer/result"]=function(e){return this.any||(e=this.xf["@@transducer/step"](e,!1)),this.xf["@@transducer/result"](e)},i.prototype["@@transducer/step"]=function(e,t){return this.f(t)&&(this.any=!0,e=nn(this.xf["@@transducer/step"](e,!0))),e},i}(),Cl=K(function(e,t){return new _l(e,t)}),wl=Cl,bl=K(ti(["any"],wl,function(e,t){for(var r=0;r<t.length;){if(e(t[r]))return!0;r+=1}return!1})),fn=bl,xl=je(function(e,t,r){var n={};for(var s in r)n[s]=r[s];return n[e]=t,n}),Al=xl,Pl=Q(function(e){return e==null}),Gi=Pl,Sl=je(function i(e,t,r){if(e.length===0)return t;var n=e[0];if(e.length>1){var s=!Gi(r)&&ze(n,r)?r[n]:zi(e[1])?[]:{};t=i(Array.prototype.slice.call(e,1),t,s)}if(zi(n)&&ei(r)){var o=[].concat(r);return o[n]=t,o}else return Al(n,t,r)}),Tl=Sl;function Ml(i){var e=Object.prototype.toString.call(i);return e==="[object Function]"||e==="[object AsyncFunction]"||e==="[object GeneratorFunction]"||e==="[object AsyncGeneratorFunction]"}var El=Q(function(e){return Tt(e.length,e)}),Dl=El,kl=Dl(function(e){return e.apply(this,Array.prototype.slice.call(arguments,1))}),Il=kl;function Ol(i){return new RegExp(i.source,(i.global?"g":"")+(i.ignoreCase?"i":"")+(i.multiline?"m":"")+(i.sticky?"y":"")+(i.unicode?"u":""))}var Rl=Q(function(e){return e===null?"Null":e===void 0?"Undefined":Object.prototype.toString.call(e).slice(8,-1)}),Hi=Rl;function mn(i,e,t,r){var n=function(o){for(var l=e.length,c=0;c<l;){if(i===e[c])return t[c];c+=1}e[c+1]=i,t[c+1]=o;for(var h in i)o[h]=r?mn(i[h],e,t,!0):i[h];return o};switch(Hi(i)){case"Object":return n({});case"Array":return n([]);case"Date":return new Date(i.valueOf());case"RegExp":return Ol(i);default:return i}}var Bl=Q(function(e){return e!=null&&typeof e.clone=="function"?e.clone():mn(e,[],[],!0)}),Ll=Bl,zl=Q(function(e){return!e}),Gl=zl;function Hl(i,e){return function(){return e.call(this,i.apply(this,arguments))}}function gn(i,e){return function(){var t=arguments.length;if(t===0)return e();var r=arguments[t-1];return ei(r)||typeof r[i]!="function"?e.apply(this,arguments):r[i].apply(r,Array.prototype.slice.call(arguments,0,t-1))}}var Fl=je(gn("slice",function(e,t,r){return Array.prototype.slice.call(r,e,t)})),Nl=Fl,Ul=Q(gn("tail",Nl(1,1/0))),Wl=Ul;function Mt(){if(arguments.length===0)throw new Error("pipe requires at least one argument");return _e(arguments[0].length,pn(Hl,arguments[0],Wl(arguments)))}var Vl=Q(function(e){return Bi(e)?e.split("").reverse().join(""):Array.prototype.slice.call(e,0).reverse()}),jl=Vl;function ql(i){return i}var Ql=Q(ql),ri=Ql;function vn(i){for(var e=[],t;!(t=i.next()).done;)e.push(t.value);return e}function yn(i,e,t){for(var r=0,n=t.length;r<n;){if(i(e,t[r]))return!0;r+=1}return!1}function Yl(i){var e=String(i).match(/^function (\w*)/);return e==null?"":e[1]}function Kl(i,e){return i===e?i!==0||1/i==1/e:i!==i&&e!==e}var Fi=typeof Object.is=="function"?Object.is:Kl;function _n(i,e,t,r){var n=vn(i),s=vn(e);function o(l,c){return Ni(l,c,t.slice(),r.slice())}return!yn(function(l,c){return!yn(o,c,l)},s,n)}function Ni(i,e,t,r){if(Fi(i,e))return!0;var n=Hi(i);if(n!==Hi(e)||i==null||e==null)return!1;if(typeof i["fantasy-land/equals"]=="function"||typeof e["fantasy-land/equals"]=="function")return typeof i["fantasy-land/equals"]=="function"&&i["fantasy-land/equals"](e)&&typeof e["fantasy-land/equals"]=="function"&&e["fantasy-land/equals"](i);if(typeof i.equals=="function"||typeof e.equals=="function")return typeof i.equals=="function"&&i.equals(e)&&typeof e.equals=="function"&&e.equals(i);switch(n){case"Arguments":case"Array":case"Object":if(typeof i.constructor=="function"&&Yl(i.constructor)==="Promise")return i===e;break;case"Boolean":case"Number":case"String":if(!(typeof i==typeof e&&Fi(i.valueOf(),e.valueOf())))return!1;break;case"Date":if(!Fi(i.valueOf(),e.valueOf()))return!1;break;case"Error":return i.name===e.name&&i.message===e.message;case"RegExp":if(!(i.source===e.source&&i.global===e.global&&i.ignoreCase===e.ignoreCase&&i.multiline===e.multiline&&i.sticky===e.sticky&&i.unicode===e.unicode))return!1;break}for(var s=t.length-1;s>=0;){if(t[s]===i)return r[s]===e;s-=1}switch(n){case"Map":return i.size!==e.size?!1:_n(i.entries(),e.entries(),t.concat([i]),r.concat([e]));case"Set":return i.size!==e.size?!1:_n(i.values(),e.values(),t.concat([i]),r.concat([e]));case"Arguments":case"Array":case"Object":case"Boolean":case"Number":case"String":case"Date":case"Error":case"RegExp":case"Int8Array":case"Uint8Array":case"Uint8ClampedArray":case"Int16Array":case"Uint16Array":case"Int32Array":case"Uint32Array":case"Float32Array":case"Float64Array":case"ArrayBuffer":break;default:return!1}var o=ht(i);if(o.length!==ht(e).length)return!1;var l=t.concat([i]),c=r.concat([e]);for(s=o.length-1;s>=0;){var h=o[s];if(!(ze(h,e)&&Ni(e[h],i[h],l,c)))return!1;s-=1}return!0}var Jl=K(function(e,t){return Ni(e,t,[],[])}),Cn=Jl;function Xl(i,e,t){var r,n;if(typeof i.indexOf=="function")switch(typeof e){case"number":if(e===0){for(r=1/e;t<i.length;){if(n=i[t],n===0&&1/n===r)return t;t+=1}return-1}else if(e!==e){for(;t<i.length;){if(n=i[t],typeof n=="number"&&n!==n)return t;t+=1}return-1}return i.indexOf(e,t);case"string":case"boolean":case"function":case"undefined":return i.indexOf(e,t);case"object":if(e===null)return i.indexOf(e,t)}for(;t<i.length;){if(Cn(i[t],e))return t;t+=1}return-1}function Zl(i,e){return Xl(e,i,0)>=0}function Ui(i){var e=i.replace(/\\/g,"\\\\").replace(/[\b]/g,"\\b").replace(/\f/g,"\\f").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/\t/g,"\\t").replace(/\v/g,"\\v").replace(/\0/g,"\\0");return'"'+e.replace(/"/g,'\\"')+'"'}var Et=function(e){return(e<10?"0":"")+e},$l=typeof Date.prototype.toISOString=="function"?function(e){return e.toISOString()}:function(e){return e.getUTCFullYear()+"-"+Et(e.getUTCMonth()+1)+"-"+Et(e.getUTCDate())+"T"+Et(e.getUTCHours())+":"+Et(e.getUTCMinutes())+":"+Et(e.getUTCSeconds())+"."+(e.getUTCMilliseconds()/1e3).toFixed(3).slice(2,5)+"Z"},ec=$l;function tc(i){return function(){return!i.apply(this,arguments)}}function ic(i,e){for(var t=0,r=e.length,n=[];t<r;)i(e[t])&&(n[n.length]=e[t]),t+=1;return n}function Wi(i){return Object.prototype.toString.call(i)==="[object Object]"}var rc=function(){function i(e,t){this.xf=t,this.f=e}return i.prototype["@@transducer/init"]=ct.init,i.prototype["@@transducer/result"]=ct.result,i.prototype["@@transducer/step"]=function(e,t){return this.f(t)?this.xf["@@transducer/step"](e,t):e},i}(),nc=K(function(e,t){return new rc(e,t)}),sc=nc,oc=K(ti(["filter"],sc,function(i,e){return Wi(e)?Li(function(t,r){return i(e[r])&&(t[r]=e[r]),t},{},ht(e)):ic(i,e)})),ac=oc,lc=K(function(e,t){return ac(tc(e),t)}),cc=lc;function wn(i,e){var t=function(o){var l=e.concat([i]);return Zl(o,l)?"<Circular>":wn(o,l)},r=function(s,o){return ii(function(l){return Ui(l)+": "+t(s[l])},o.slice().sort())};switch(Object.prototype.toString.call(i)){case"[object Arguments]":return"(function() { return arguments; }("+ii(t,i).join(", ")+"))";case"[object Array]":return"["+ii(t,i).concat(r(i,cc(function(s){return/^\d+$/.test(s)},ht(i)))).join(", ")+"]";case"[object Boolean]":return typeof i=="object"?"new Boolean("+t(i.valueOf())+")":i.toString();case"[object Date]":return"new Date("+(isNaN(i.valueOf())?t(NaN):Ui(ec(i)))+")";case"[object Null]":return"null";case"[object Number]":return typeof i=="object"?"new Number("+t(i.valueOf())+")":1/i==-1/0?"-0":i.toString(10);case"[object String]":return typeof i=="object"?"new String("+t(i.valueOf())+")":Ui(i);case"[object Undefined]":return"undefined";default:if(typeof i.toString=="function"){var n=i.toString();if(n!=="[object Object]")return n}return"{"+r(i,ht(i)).join(", ")+"}"}}var hc=Q(function(e){return wn(e,[])}),uc=hc,dc=Q(function(e){return Tt(e.length,function(t,r){var n=Array.prototype.slice.call(arguments,0);return n[0]=r,n[1]=t,e.apply(this,n)})}),bn=dc;function pc(i){if(i==null)throw new TypeError("Cannot convert undefined or null to object");for(var e=Object(i),t=1,r=arguments.length;t<r;){var n=arguments[t];if(n!=null)for(var s in n)ze(s,n)&&(e[s]=n[s]);t+=1}return e}var xn=typeof Object.assign=="function"?Object.assign:pc,fc=K(function(e,t){var r={};return r[e]=t,r}),mc=fc,gc=K(function(e,t){return Tt(e+1,function(){var r=arguments[e];if(r!=null&&Ml(r[t]))return r[t].apply(r,Array.prototype.slice.call(arguments,0,e));throw new TypeError(uc(r)+' does not have a method named "'+t+'"')})}),vc=gc,yc=K(function(e,t){return t!=null&&t.constructor===e||t instanceof e}),ut=yc,_c=K(function(e,t){return function(r){return function(n){return hl(function(s){return t(s,n)},r(e(n)))}}}),Cc=_c,wc=Q(function(e){return Cc(dn(e),Tl(e))}),bc=wc,xc=K(function(e,t){return xn({},e,t)}),Ac=xc,Pc=Q(function(e){return xn.apply(null,[{}].concat(e))}),Sc=Pc,Tc=je(function(e,t,r){var n={},s;for(s in t)ze(s,t)&&(n[s]=ze(s,r)?e(s,t[s],r[s]):t[s]);for(s in r)ze(s,r)&&!ze(s,n)&&(n[s]=r[s]);return n}),An=Tc,Mc=je(function i(e,t,r){return An(function(n,s,o){return Wi(s)&&Wi(o)?i(e,s,o):e(n,s,o)},t,r)}),Ec=Mc,Dc=K(function(e,t){return Ec(function(r,n,s){return s},e,t)}),kc=Dc,Pn=function(i){return{value:i,map:function(e){return Pn(e(i))}}},Ic=je(function(e,t,r){return e(function(n){return Pn(t(n))})(r).value}),Oc=Ic,Rc=K(function(e,t){return Tt(t.length,function(){for(var r=[],n=0;n<t.length;)r.push(t[n].call(this,arguments[n])),n+=1;return e.apply(this,r.concat(Array.prototype.slice.call(arguments,t.length)))})}),Vi=Rc,Bc=je(function(e,t,r){return Oc(e,yl(t),r)}),Lc=Bc,zc=vc(1,"split"),ji=zc;const a=window.Cesium,dt={tianditu:"4b9993a0f552a05db2d41d45c9d2be69",gaode:"9ac67fe65f055fa2cadab5092140ddb5",badiu:"8FY2N3FuTxKPeyqmvNNGwtT5o52YY22Q"},Gc=function(i){const e=new a.Cartesian3(i.x,i.y,i.z),t=a.Cartographic.fromCartesian(e),r=a.Math.toDegrees(t.latitude),n=a.Math.toDegrees(t.longitude),s=t.height;return{x:n,y:r,z:s}},Hc=function(i){return i&&(i instanceof a.Cartographic?a.Ellipsoid.WGS84.cartographicToCartesian(i):Ee(i)?a.Cartesian3.fromDegrees(...i):xe(i)?a.Cartesian3.fromDegrees(...i.split(",")):As([i.lng,i.lat])?a.Cartesian3.fromDegrees(i.lng,i.lat,i.alt||i.height):As([i.longitude,i.latitude])?a.Cartesian3.fromDegrees(i.longitude,i.latitude,i.alt||i.height):i)};function Fc(i,e,t){t=t||{},t.cartesian=t.cartesian||a.Cartographic.fromCartesian(e);let r=t.cartesian;if(t.asyn)i.clampToHeightMostDetailed([e]).then(n=>{let s=n[0];if(a.defined(s)){let o=a.Cartographic.fromCartesian(s),l=o.height;if(a.defined(l)&&l>-1e3){t.calback&&t.calback(l,o);return}}Sn(i,e,t)});else{let n=i.sampleHeight(r);if(a.defined(n)&&n>-1e3)return t.calback&&t.calback(n,r),n}return 0}function Sn(i,e,t){t=t||{};let r=t.cartesian||a.Cartographic.fromCartesian(e);if(!Nc(i))return t.calback&&t.calback(r.height,r),r.height;if(t.asyn)a.when(a.sampleTerrainMostDetailed(i.terrainProvider,[r]),s=>{let o=s[0],l;a.defined(o)&&a.defined(o.height)?l=o.height:l=i.globe.getHeight(r),t.calback&&t.calback(l,r)});else{let s=i.globe.getHeight(r);if(a.defined(s)&&s>-1e3)return t.calback&&t.calback(s,r),s}return 0}function Nc(i){return!(i.terrainProvider==new a.EllipsoidTerrainProvider({ellipsoid:a.Ellipsoid.WGS84})||i.terrainProvider instanceof a.EllipsoidTerrainProvider)}function Uc(i,e){if(e=Number(e)||0,isNaN(e)||e==0)return i;if(i instanceof Array){let r=[];for(let n=0,s=i.length;n<s;n++){let o=a.Cartographic.fromCartesian(i[n]),l=a.Cartesian3.fromRadians(o.longitude,o.latitude,o.height+e);r.push(l)}return r}let t=a.Cartographic.fromCartesian(i);return a.Cartesian3.fromRadians(t.longitude,t.latitude,t.height+e)}function Wc(i,e){if(e=Number(e)||0,isNaN(e))return i;if(i instanceof Array){let r=[];for(let n=0,s=i.length;n<s;n++){let o=a.Cartographic.fromCartesian(i[n]),l=a.Cartesian3.fromRadians(o.longitude,o.latitude,e);r.push(l)}return r}let t=a.Cartographic.fromCartesian(i);return a.Cartesian3.fromRadians(t.longitude,t.latitude,e)}function Tn(i,e,t,r){if(!a.defined(e)||!a.defined(i))return new a.HeadingPitchRoll;let n=a.Matrix4.fromRotationTranslation(a.Matrix3.fromQuaternion(e,new a.Matrix3),i,new a.Matrix4);return Vc(n,t,r)}function Vc(i,e,t,r){return a.Transforms.fixedFrameToHeadingPitchRoll(i,e,t,r)}function jc(i,e={},t){var f;const r=e.roll||0,n=e.pitch||0,s=e.heading||0,o=new a.HeadingPitchRoll(Math.PI*(s/180),Math.PI*(n/180),Math.PI*(r/180)),l=a.Matrix3.fromHeadingPitchRoll(o,new a.Matrix3),c=(f=t.root)==null?void 0:f.transform;if(c&&!c.equals(a.Matrix4.IDENTITY)){const m=a.Matrix4.multiplyByTranslation(a.Transforms.eastNorthUpToFixedFrame(i),new a.Cartesian3,new a.Matrix4);return a.Matrix4.multiplyByMatrix3(m,a.Matrix3.fromHeadingPitchRoll(o,new a.Matrix3),m),{transform:m}}const u=a.Matrix4.multiplyByPoint(a.Matrix4.inverse(t.modelMatrix,new a.Matrix4),t.boundingSphere.center,new a.Cartesian3),p=a.Transforms.eastNorthUpToFixedFrame(u),d=a.Transforms.eastNorthUpToFixedFrame(i);return{modelMatrix:a.Matrix4.multiplyByMatrix3(a.Matrix4.multiply(d,a.Matrix4.inverse(p,new a.Matrix4),new a.Matrix4),l,new a.Matrix4)}}function Mn(i){let e=i.position;if(!e)return null;if(!(i.semiAxis||i.semiMajorAxis||i.semiMinorAxis))return;let t=a.defaultValue(i.count,1),r=a.defaultValue(i.semiMajorAxis,i.semiAxis||i.radius),n=a.defaultValue(i.semiMinorAxis,i.semiAxis||i.radius),s=a.defaultValue(i.rotation,-90),l=a.EllipseGeometryLibrary.computeEllipsePositions({center:e,semiMajorAxis:r,semiMinorAxis:n,rotation:a.Math.toRadians(s),granularity:Math.PI/(16*t)},!0,!0).outerPositions,c=[];for(let h=0,u=l.length;h<u;h+=3){let p=new a.Cartesian3(l[h],l[h+1],l[h+2]);c.push(p)}return c}const qc=i=>{const e=a.Cartesian3,t=a.Matrix3,r=new e,n=new e,s=new e,o=[new e,new e,new e,new e,new e,new e,new e,new e],l=i.center,c=i.halfAxes,h=t.getColumn(c,0,r),u=t.getColumn(c,1,n),p=t.getColumn(c,2,s);return e.clone(l,o[0]),e.subtract(o[0],h,o[0]),e.subtract(o[0],u,o[0]),e.subtract(o[0],p,o[0]),e.clone(l,o[1]),e.subtract(o[1],h,o[1]),e.subtract(o[1],u,o[1]),e.add(o[1],p,o[1]),e.clone(l,o[2]),e.subtract(o[2],h,o[2]),e.add(o[2],u,o[2]),e.subtract(o[2],p,o[2]),e.clone(l,o[3]),e.subtract(o[3],h,o[3]),e.add(o[3],u,o[3]),e.add(o[3],p,o[3]),e.clone(l,o[4]),e.add(o[4],h,o[4]),e.subtract(o[4],u,o[4]),e.subtract(o[4],p,o[4]),e.clone(l,o[5]),e.add(o[5],h,o[5]),e.subtract(o[5],u,o[5]),e.add(o[5],p,o[5]),e.clone(l,o[6]),e.add(o[6],h,o[6]),e.add(o[6],u,o[6]),e.subtract(o[6],p,o[6]),e.clone(l,o[7]),e.add(o[7],h,o[7]),e.add(o[7],u,o[7]),e.add(o[7],p,o[7]),o};function Qc(i,e,t){let r=a.Cartographic.fromCartesian(i);r.height=r.height-10;let n=a.Cartographic.toCartesian(r),s=a.Cartesian3.normalize(a.Cartesian3.subtract(n,i,new a.Cartesian3),new a.Cartesian3),o=a.Quaternion.fromAxisAngle(s,a.Math.toRadians(t)),l=a.Matrix3.fromQuaternion(o),c=a.Matrix4.fromRotationTranslation(l),h=a.Cartesian3.subtract(e,i,new a.Cartesian3),u=a.Matrix4.multiplyByPoint(c,h,new a.Cartesian3);return a.Cartesian3.add(u,i,new a.Cartesian3)}function qi(i,e,t){t===void 0&&(t={});var r={type:"Feature"};return(t.id===0||t.id)&&(r.id=t.id),t.bbox&&(r.bbox=t.bbox),r.properties=e||{},r.geometry=i,r}function ni(i,e,t){if(t===void 0&&(t={}),!i)throw new Error("coordinates is required");if(!Array.isArray(i))throw new Error("coordinates must be an Array");if(i.length<2)throw new Error("coordinates must be at least 2 numbers long");if(!En(i[0])||!En(i[1]))throw new Error("coordinates must contain numbers");var r={type:"Point",coordinates:i};return qi(r,e,t)}function Qi(i,e,t){t===void 0&&(t={});for(var r=0,n=i;r<n.length;r++){var s=n[r];if(s.length<4)throw new Error("Each LinearRing of a Polygon must have 4 or more Positions.");for(var o=0;o<s[s.length-1].length;o++)if(s[s.length-1][o]!==s[0][o])throw new Error("First and last Position are not equivalent.")}var l={type:"Polygon",coordinates:i};return qi(l,e,t)}function Yi(i,e,t){if(t===void 0&&(t={}),i.length<2)throw new Error("coordinates must be an array of two or more positions");var r={type:"LineString",coordinates:i};return qi(r,e,t)}function Yc(i,e){e===void 0&&(e={});var t={type:"FeatureCollection"};return e.id&&(t.id=e.id),e.bbox&&(t.bbox=e.bbox),t.features=i,t}function Kc(i){var e=i%(2*Math.PI);return e*180/Math.PI}function Ki(i){var e=i%360;return e*Math.PI/180}function En(i){return!isNaN(i)&&i!==null&&!Array.isArray(i)}function Dn(i,e,t){if(i!==null)for(var r,n,s,o,l,c,h,u=0,p=0,d,f=i.type,m=f==="FeatureCollection",g=f==="Feature",w=m?i.features.length:1,x=0;x<w;x++){h=m?i.features[x].geometry:g?i.geometry:i,d=h?h.type==="GeometryCollection":!1,l=d?h.geometries.length:1;for(var y=0;y<l;y++){var v=0,_=0;if(o=d?h.geometries[y]:h,o!==null){c=o.coordinates;var P=o.type;switch(u=t&&(P==="Polygon"||P==="MultiPolygon")?1:0,P){case null:break;case"Point":if(e(c,p,x,v,_)===!1)return!1;p++,v++;break;case"LineString":case"MultiPoint":for(r=0;r<c.length;r++){if(e(c[r],p,x,v,_)===!1)return!1;p++,P==="MultiPoint"&&v++}P==="LineString"&&v++;break;case"Polygon":case"MultiLineString":for(r=0;r<c.length;r++){for(n=0;n<c[r].length-u;n++){if(e(c[r][n],p,x,v,_)===!1)return!1;p++}P==="MultiLineString"&&v++,P==="Polygon"&&_++}P==="Polygon"&&v++;break;case"MultiPolygon":for(r=0;r<c.length;r++){for(_=0,n=0;n<c[r].length;n++){for(s=0;s<c[r][n].length-u;s++){if(e(c[r][n][s],p,x,v,_)===!1)return!1;p++}_++}v++}break;case"GeometryCollection":for(r=0;r<o.geometries.length;r++)if(Dn(o.geometries[r],e,t)===!1)return!1;break;default:throw new Error("Unknown Geometry Type")}}}}}function Jc(i,e){var t,r,n,s,o,l,c,h,u,p,d=0,f=i.type==="FeatureCollection",m=i.type==="Feature",g=f?i.features.length:1;for(t=0;t<g;t++){for(l=f?i.features[t].geometry:m?i.geometry:i,h=f?i.features[t].properties:m?i.properties:{},u=f?i.features[t].bbox:m?i.bbox:void 0,p=f?i.features[t].id:m?i.id:void 0,c=l?l.type==="GeometryCollection":!1,o=c?l.geometries.length:1,n=0;n<o;n++){if(s=c?l.geometries[n]:l,s===null){if(e(null,d,h,u,p)===!1)return!1;continue}switch(s.type){case"Point":case"LineString":case"MultiPoint":case"Polygon":case"MultiLineString":case"MultiPolygon":{if(e(s,d,h,u,p)===!1)return!1;break}case"GeometryCollection":{for(r=0;r<s.geometries.length;r++)if(e(s.geometries[r],d,h,u,p)===!1)return!1;break}default:throw new Error("Unknown Geometry Type")}}d++}}function Xc(i,e,t){var r=t;return Jc(i,function(n,s,o,l,c){s===0&&t===void 0?r=n:r=e(r,n,s,o,l,c)}),r}function pt(i){if(!i)throw new Error("coord is required");if(!Array.isArray(i)){if(i.type==="Feature"&&i.geometry!==null&&i.geometry.type==="Point")return i.geometry.coordinates;if(i.type==="Point")return i.coordinates}if(Array.isArray(i)&&i.length>=2&&!Array.isArray(i[0])&&!Array.isArray(i[1]))return i;throw new Error("coord must be GeoJSON Point or an Array of numbers")}function Zc(i){if(Array.isArray(i))return i;if(i.type==="Feature"){if(i.geometry!==null)return i.geometry.coordinates}else if(i.coordinates)return i.coordinates;throw new Error("coords must be GeoJSON Feature, Geometry Object or an Array")}function kn(i){return i.type==="Feature"?i.geometry:i}var me=typeof globalThis!="undefined"?globalThis:typeof window!="undefined"?window:typeof global!="undefined"?global:typeof self!="undefined"?self:{};function $c(i){if(i.__esModule)return i;var e=Object.defineProperty({},"__esModule",{value:!0});return Object.keys(i).forEach(function(t){var r=Object.getOwnPropertyDescriptor(i,t);Object.defineProperty(e,t,r.get?r:{enumerable:!0,get:function(){return i[t]}})}),e}function eh(i){throw new Error('Could not dynamically require "'+i+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}function th(i,e,t){if(t===void 0&&(t={}),!i)throw new Error("point is required");if(!e)throw new Error("polygon is required");var r=pt(i),n=kn(e),s=n.type,o=e.bbox,l=n.coordinates;if(o&&ih(r,o)===!1)return!1;s==="Polygon"&&(l=[l]);for(var c=!1,h=0;h<l.length&&!c;h++)if(In(r,l[h][0],t.ignoreBoundary)){for(var u=!1,p=1;p<l[h].length&&!u;)In(r,l[h][p],!t.ignoreBoundary)&&(u=!0),p++;u||(c=!0)}return c}function In(i,e,t){var r=!1;e[0][0]===e[e.length-1][0]&&e[0][1]===e[e.length-1][1]&&(e=e.slice(0,e.length-1));for(var n=0,s=e.length-1;n<e.length;s=n++){var o=e[n][0],l=e[n][1],c=e[s][0],h=e[s][1],u=i[1]*(o-c)+l*(c-i[0])+h*(i[0]-o)==0&&(o-i[0])*(c-i[0])<=0&&(l-i[1])*(h-i[1])<=0;if(u)return!t;var p=l>i[1]!=h>i[1]&&i[0]<(c-o)*(i[1]-l)/(h-l)+o;p&&(r=!r)}return r}function ih(i,e){return e[0]<=i[0]&&e[1]<=i[1]&&e[2]>=i[0]&&e[3]>=i[1]}var rh=function(){function i(e){this.points=e.points||[],this.duration=e.duration||1e4,this.sharpness=e.sharpness||.85,this.centers=[],this.controls=[],this.stepLength=e.stepLength||60,this.length=this.points.length,this.delay=0;for(var t=0;t<this.length;t++)this.points[t].z=this.points[t].z||0;for(var t=0;t<this.length-1;t++){var r=this.points[t],n=this.points[t+1];this.centers.push({x:(r.x+n.x)/2,y:(r.y+n.y)/2,z:(r.z+n.z)/2})}this.controls.push([this.points[0],this.points[0]]);for(var t=0;t<this.centers.length-1;t++){var s=this.points[t+1].x-(this.centers[t].x+this.centers[t+1].x)/2,o=this.points[t+1].y-(this.centers[t].y+this.centers[t+1].y)/2,l=this.points[t+1].z-(this.centers[t].y+this.centers[t+1].z)/2;this.controls.push([{x:(1-this.sharpness)*this.points[t+1].x+this.sharpness*(this.centers[t].x+s),y:(1-this.sharpness)*this.points[t+1].y+this.sharpness*(this.centers[t].y+o),z:(1-this.sharpness)*this.points[t+1].z+this.sharpness*(this.centers[t].z+l)},{x:(1-this.sharpness)*this.points[t+1].x+this.sharpness*(this.centers[t+1].x+s),y:(1-this.sharpness)*this.points[t+1].y+this.sharpness*(this.centers[t+1].y+o),z:(1-this.sharpness)*this.points[t+1].z+this.sharpness*(this.centers[t+1].z+l)}])}return this.controls.push([this.points[this.length-1],this.points[this.length-1]]),this.steps=this.cacheSteps(this.stepLength),this}return i.prototype.cacheSteps=function(e){var t=[],r=this.pos(0);t.push(0);for(var n=0;n<this.duration;n+=10){var s=this.pos(n),o=Math.sqrt((s.x-r.x)*(s.x-r.x)+(s.y-r.y)*(s.y-r.y)+(s.z-r.z)*(s.z-r.z));o>e&&(t.push(n),r=s)}return t},i.prototype.vector=function(e){var t=this.pos(e+10),r=this.pos(e-10);return{angle:180*Math.atan2(t.y-r.y,t.x-r.x)/3.14,speed:Math.sqrt((r.x-t.x)*(r.x-t.x)+(r.y-t.y)*(r.y-t.y)+(r.z-t.z)*(r.z-t.z))}},i.prototype.pos=function(e){var t=e-this.delay;t<0&&(t=0),t>this.duration&&(t=this.duration-1);var r=t/this.duration;if(r>=1)return this.points[this.length-1];var n=Math.floor((this.points.length-1)*r),s=(this.length-1)*r-n;return sh(s,this.points[n],this.controls[n][1],this.controls[n+1][0],this.points[n+1])},i}(),nh=rh;function sh(i,e,t,r,n){var s=oh(i),o={x:n.x*s[0]+r.x*s[1]+t.x*s[2]+e.x*s[3],y:n.y*s[0]+r.y*s[1]+t.y*s[2]+e.y*s[3],z:n.z*s[0]+r.z*s[1]+t.z*s[2]+e.z*s[3]};return o}function oh(i){var e=i*i,t=e*i;return[t,3*e*(1-i),3*i*(1-i)*(1-i),(1-i)*(1-i)*(1-i)]}function ah(i,e){e===void 0&&(e={});for(var t=e.resolution||1e4,r=e.sharpness||.85,n=[],s=kn(i).coordinates.map(function(h){return{x:h[0],y:h[1]}}),o=new nh({duration:t,points:s,sharpness:r}),l=function(h){var u=o.pos(h);Math.floor(h/100)%2==0&&n.push([u.x,u.y])},c=0;c<o.duration;c+=10)l(c);return l(o.duration),Yi(n,e.properties)}function lh(i,e){e===void 0&&(e={});var t=0,r=0,n=0;return Dn(i,function(s){t+=s[0],r+=s[1],n++},!0),ni([t/n,r/n],e.properties)}var On=6378137;function ch(i){return Xc(i,function(e,t){return e+hh(t)},0)}function hh(i){var e=0,t;switch(i.type){case"Polygon":return Rn(i.coordinates);case"MultiPolygon":for(t=0;t<i.coordinates.length;t++)e+=Rn(i.coordinates[t]);return e;case"Point":case"MultiPoint":case"LineString":case"MultiLineString":return 0}return 0}function Rn(i){var e=0;if(i&&i.length>0){e+=Math.abs(Bn(i[0]));for(var t=1;t<i.length;t++)e-=Math.abs(Bn(i[t]))}return e}function Bn(i){var e,t,r,n,s,o,l,c=0,h=i.length;if(h>2){for(l=0;l<h;l++)l===h-2?(n=h-2,s=h-1,o=0):l===h-1?(n=h-1,s=0,o=1):(n=l,s=l+1,o=l+2),e=i[n],t=i[s],r=i[o],c+=(Ji(r[0])-Ji(e[0]))*Math.sin(Ji(t[1]));c=c*On*On/2}return c}function Ji(i){return i*Math.PI/180}function uh(i,e,t){t===void 0&&(t={});var r;t.final?r=Ln(pt(e),pt(i)):r=Ln(pt(i),pt(e));var n=r>180?-(360-r):r;return n}function Ln(i,e){var t=Ki(i[1]),r=Ki(e[1]),n=Ki(e[0]-i[0]);n>Math.PI&&(n-=2*Math.PI),n<-Math.PI&&(n+=2*Math.PI);var s=Math.log(Math.tan(r/2+Math.PI/4)/Math.tan(t/2+Math.PI/4)),o=Math.atan2(n,s);return(Kc(o)+360)%360}const zn=(i,e)=>{const t=ni(i),r=Hn(e);return th(t,r)},dh=ni,Gn=Yi,ph=i=>wr(i[0],i[i.length-1])?Qi([i]):Qi([[...i,i[0]]]),fh=function(i){const e=Hn(i);return ch(e)};function Hn(i){const e=wr(i[0],i[i.length-1]);return Qi([i.concat(e?[]:[i[0]])])}const mh=function(i,e){const t=a.Cartographic.fromCartesian(i),r=a.Cartographic.fromCartesian(e);let n={type:"Feature",geometry:{type:"Point",coordinates:[a.Math.toDegrees(t.longitude),a.Math.toDegrees(t.latitude),t.height]}},s={type:"Feature",geometry:{type:"Point",coordinates:[a.Math.toDegrees(r.longitude),a.Math.toDegrees(r.latitude),r.height]}};return Math.round(uh(n,s))},Xi=function(i){const e=i.map(r=>new L(r)),t=lh(Yc(e.map(r=>ni(r.toLatLngArray()))));return pt(t).concat(e.reduce((r,n)=>r+n.height,0)/e.length)};window.getCenter=Xi;const R={Billboard:"billboard",Box:"box",Corridor:"corridor",Cylinder:"cylinder",DivPoint:"divPoint",Ellipse:"ellipse",Circle:"circle",GeoJson:"geoJson",Label:"label",Model:"model",Path:"path",Plane:"plane",Point:"point",Polyline:"polyline",Polygon:"polygon",PolylineVolume:"polylineVolume",Rectangle:"rectangle",RoamLine:"roamLine",Tileset:"tileset",Wall:"wall",Compose:"compose",Heatmap:"heatmap",Group:"group",BillboardGroup:"billboardGroup",Animate:"animate",Tooltip:"tooltip",Czml:"czml",Kml:"kml",PolylinePrimitive:"polylinePrimitive",PositionGroup:"PositionGroup"},Dt={Floor:"floor",Navigation:"navigation",LocationBar:"locationBar",Overview:"overview"},se={MaterialColor:"MaterialColor",Color:"Color",Checkerboard:"Checkerboard",CircleScan:"CircleScan",CircleWave:"CircleWave",Grid:"Grid",Image:"Image",LineFlow:"LineFlow",PolylineArrow:"PolylineArrow",PolylineDash:"PolylineDash",PolylineGlow:"PolylineGlow",Water:"Water",PolylineOutline:"PolylineOutline",Stripe:"Stripe",ODLine:"ODLine",LineTrail:"LineTrail",LineTrailOnce:"LineTrailOnce",LineFlowColor:"LineFlowColor",LineFlicker:"LineFlicker",PolyGrass:"PolyGrass",PolylineArrowLine:"PolylineArrowLine"},Y={Click:"click",RClick:"rClick",DbClick:"dbClick",Mousemove:"mousemove",Mouseenter:"mouseenter",Mouseleave:"mouseleave",Mousedown:"mousedown",Mouseup:"mouseup",Middledown:"middledown",Middleup:"middleup",RightMousedown:"rightMousedown",RightMouseup:"rightMouseup",MiddleClick:"middleClick",Wheel:"wheel",PinchStart:"pinchStart",PinchEnd:"pinchEnd",PinchMove:"pinchMove",MorphComplete:"morphComplete",MorphStart:"morphStart",PostRender:"postRender",PreRender:"preRender",PostUpdate:"postUpdate",PreUpdate:"preUpdate",RenderError:"renderError",TerrainProviderChanged:"terrainProviderChanged",CameraChanged:"cameraChanged",CameraMoveEnd:"cameraMoveEnd",CameraMoveStart:"cameraMoveStart",ClockStop:"clockStop",ClockTick:"clockTick",DrawStart:"drawStart",DrawPoint:"drawPoint",DrawRemovePoint:"drawRemovePoint",DrawEnd:"drawEnd",DrawCancel:"drawCancel",EditStart:"editStart",EditAddPoint:"editAddPoint",EditPoint:"editPoint",EditHeight:"editHeight",EditRemovePoint:"editRemovePoint",EditEnd:"editEnd"},de={INITIALIZED:"initialized",ADDED:"added",DESTROYED:"destroyed",REMOVED:"removed"},oe={Cloud:"cloud",Fog:"fog",Rain:"rain",Snow:"snow",Brightness:"brightness",Bloom:"bloom",DepthOfField:"depthOfField",Silhouette:"silhouette",Night:"night",BlackAndWhite:"blackAndWhite",VisualImpact:"visualImpact"};var gh=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",GraphicType:R,ControlType:Dt,MaterialType:se,EventType:Y,State:de,EffectType:oe});class Zi{constructor(){b(this,"events",{});b(this,"isDestroyed",!1);b(this,"forbidEvent",!1)}destroy(){this.isDestroyed||(this.isDestroyed=!0,this.fire("destroy"),this.events&&(Object.values(this.events).forEach(e=>{e.subscriptionMap.forEach(t=>{t.unsubscribe()}),e.fireSubject.complete()}),this.events=null))}on(e,t){const r=/\s|,/;if(r.test(e)){const n=e.split(r).map(s=>this.on(s,t));return()=>{n.forEach(s=>s())}}return this.events[e]||(this.events[e]=this._createObserver(e)),this.events[e].subscriptionMap.has(t)||this.events[e].subscriptionMap.set(t,this.events[e].observer.subscribe(n=>{t(...n,e)})),()=>{this.off(e,t)}}_createObserver(){}once(e,t){const r=/\s|,/;if(r.test(e)){let s=[];const o=(...l)=>(s.forEach(c=>c()),t(...l));return s=e.split(r).map(l=>this.on(l,o)),()=>{s.forEach(l=>l())}}const n=(...s)=>(this.off(e,n),t(...s));return this.on(e,n),()=>{this.off(e,n)}}off(e,t){const r=/\s|,/;if(r.test(e)){e.split(r).forEach(n=>{this.off(n,t)});return}this.events[e]&&this.events[e].subscriptionMap.has(t)&&(this.events[e].subscriptionMap.get(t).unsubscribe(),this.events[e].subscriptionMap.delete(t))}offAll(e){const t=/\s|,/;if(t.test(e)){e.split(t).forEach(r=>{this.offAll(r)});return}if(this.events[e])for(const r of this.events[e].subscriptionMap.keys())this.off(e,r)}fire(e,...t){if(this.forbidEvent)return;const r=/\s|,/;if(r.test(e)){e.split(r).forEach(n=>{this.fire(n,...t)});return}this.events[e]&&this.events[e].fireSubject.next(t)}hasEvent(e){return!!this.events[e]}}var $i=function(i,e){return $i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,r){t.__proto__=r}||function(t,r){for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(t[n]=r[n])},$i(i,e)};function ft(i,e){if(typeof e!="function"&&e!==null)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");$i(i,e);function t(){this.constructor=i}i.prototype=e===null?Object.create(e):(t.prototype=e.prototype,new t)}function vh(i,e,t,r){function n(s){return s instanceof t?s:new t(function(o){o(s)})}return new(t||(t=Promise))(function(s,o){function l(u){try{h(r.next(u))}catch(p){o(p)}}function c(u){try{h(r.throw(u))}catch(p){o(p)}}function h(u){u.done?s(u.value):n(u.value).then(l,c)}h((r=r.apply(i,e||[])).next())})}function Fn(i,e){var t={label:0,sent:function(){if(s[0]&1)throw s[1];return s[1]},trys:[],ops:[]},r,n,s,o;return o={next:l(0),throw:l(1),return:l(2)},typeof Symbol=="function"&&(o[Symbol.iterator]=function(){return this}),o;function l(h){return function(u){return c([h,u])}}function c(h){if(r)throw new TypeError("Generator is already executing.");for(;t;)try{if(r=1,n&&(s=h[0]&2?n.return:h[0]?n.throw||((s=n.return)&&s.call(n),0):n.next)&&!(s=s.call(n,h[1])).done)return s;switch(n=0,s&&(h=[h[0]&2,s.value]),h[0]){case 0:case 1:s=h;break;case 4:return t.label++,{value:h[1],done:!1};case 5:t.label++,n=h[1],h=[0];continue;case 7:h=t.ops.pop(),t.trys.pop();continue;default:if(s=t.trys,!(s=s.length>0&&s[s.length-1])&&(h[0]===6||h[0]===2)){t=0;continue}if(h[0]===3&&(!s||h[1]>s[0]&&h[1]<s[3])){t.label=h[1];break}if(h[0]===6&&t.label<s[1]){t.label=s[1],s=h;break}if(s&&t.label<s[2]){t.label=s[2],t.ops.push(h);break}s[2]&&t.ops.pop(),t.trys.pop();continue}h=e.call(i,t)}catch(u){h=[6,u],n=0}finally{r=s=0}if(h[0]&5)throw h[1];return{value:h[0]?h[1]:void 0,done:!0}}}function mt(i){var e=typeof Symbol=="function"&&Symbol.iterator,t=e&&i[e],r=0;if(t)return t.call(i);if(i&&typeof i.length=="number")return{next:function(){return i&&r>=i.length&&(i=void 0),{value:i&&i[r++],done:!i}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")}function Se(i,e){var t=typeof Symbol=="function"&&i[Symbol.iterator];if(!t)return i;var r=t.call(i),n,s=[],o;try{for(;(e===void 0||e-- >0)&&!(n=r.next()).done;)s.push(n.value)}catch(l){o={error:l}}finally{try{n&&!n.done&&(t=r.return)&&t.call(r)}finally{if(o)throw o.error}}return s}function Te(i,e,t){if(t||arguments.length===2)for(var r=0,n=e.length,s;r<n;r++)(s||!(r in e))&&(s||(s=Array.prototype.slice.call(e,0,r)),s[r]=e[r]);return i.concat(s||Array.prototype.slice.call(e))}function gt(i){return this instanceof gt?(this.v=i,this):new gt(i)}function yh(i,e,t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var r=t.apply(i,e||[]),n,s=[];return n={},o("next"),o("throw"),o("return"),n[Symbol.asyncIterator]=function(){return this},n;function o(d){r[d]&&(n[d]=function(f){return new Promise(function(m,g){s.push([d,f,m,g])>1||l(d,f)})})}function l(d,f){try{c(r[d](f))}catch(m){p(s[0][3],m)}}function c(d){d.value instanceof gt?Promise.resolve(d.value.v).then(h,u):p(s[0][2],d)}function h(d){l("next",d)}function u(d){l("throw",d)}function p(d,f){d(f),s.shift(),s.length&&l(s[0][0],s[0][1])}}function _h(i){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var e=i[Symbol.asyncIterator],t;return e?e.call(i):(i=typeof mt=="function"?mt(i):i[Symbol.iterator](),t={},r("next"),r("throw"),r("return"),t[Symbol.asyncIterator]=function(){return this},t);function r(s){t[s]=i[s]&&function(o){return new Promise(function(l,c){o=i[s](o),n(l,c,o.done,o.value)})}}function n(s,o,l,c){Promise.resolve(c).then(function(h){s({value:h,done:l})},o)}}function ae(i){return typeof i=="function"}function Nn(i){var e=function(r){Error.call(r),r.stack=new Error().stack},t=i(e);return t.prototype=Object.create(Error.prototype),t.prototype.constructor=t,t}var er=Nn(function(i){return function(t){i(this),this.message=t?t.length+` errors occurred during unsubscription:
`+t.map(function(r,n){return n+1+") "+r.toString()}).join(`
`):"",this.name="UnsubscriptionError",this.errors=t}});function tr(i,e){if(i){var t=i.indexOf(e);0<=t&&i.splice(t,1)}}var si=function(){function i(e){this.initialTeardown=e,this.closed=!1,this._parentage=null,this._finalizers=null}return i.prototype.unsubscribe=function(){var e,t,r,n,s;if(!this.closed){this.closed=!0;var o=this._parentage;if(o)if(this._parentage=null,Array.isArray(o))try{for(var l=mt(o),c=l.next();!c.done;c=l.next()){var h=c.value;h.remove(this)}}catch(g){e={error:g}}finally{try{c&&!c.done&&(t=l.return)&&t.call(l)}finally{if(e)throw e.error}}else o.remove(this);var u=this.initialTeardown;if(ae(u))try{u()}catch(g){s=g instanceof er?g.errors:[g]}var p=this._finalizers;if(p){this._finalizers=null;try{for(var d=mt(p),f=d.next();!f.done;f=d.next()){var m=f.value;try{Vn(m)}catch(g){s=s!=null?s:[],g instanceof er?s=Te(Te([],Se(s)),Se(g.errors)):s.push(g)}}}catch(g){r={error:g}}finally{try{f&&!f.done&&(n=d.return)&&n.call(d)}finally{if(r)throw r.error}}}if(s)throw new er(s)}},i.prototype.add=function(e){var t;if(e&&e!==this)if(this.closed)Vn(e);else{if(e instanceof i){if(e.closed||e._hasParent(this))return;e._addParent(this)}(this._finalizers=(t=this._finalizers)!==null&&t!==void 0?t:[]).push(e)}},i.prototype._hasParent=function(e){var t=this._parentage;return t===e||Array.isArray(t)&&t.includes(e)},i.prototype._addParent=function(e){var t=this._parentage;this._parentage=Array.isArray(t)?(t.push(e),t):t?[t,e]:e},i.prototype._removeParent=function(e){var t=this._parentage;t===e?this._parentage=null:Array.isArray(t)&&tr(t,e)},i.prototype.remove=function(e){var t=this._finalizers;t&&tr(t,e),e instanceof i&&e._removeParent(this)},i.EMPTY=function(){var e=new i;return e.closed=!0,e}(),i}(),Un=si.EMPTY;function Wn(i){return i instanceof si||i&&"closed"in i&&ae(i.remove)&&ae(i.add)&&ae(i.unsubscribe)}function Vn(i){ae(i)?i():i.unsubscribe()}var ir={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1},rr={setTimeout:function(i,e){for(var t=[],r=2;r<arguments.length;r++)t[r-2]=arguments[r];var n=rr.delegate;return(n==null?void 0:n.setTimeout)?n.setTimeout.apply(n,Te([i,e],Se(t))):setTimeout.apply(void 0,Te([i,e],Se(t)))},clearTimeout:function(i){var e=rr.delegate;return((e==null?void 0:e.clearTimeout)||clearTimeout)(i)},delegate:void 0};function jn(i){rr.setTimeout(function(){throw i})}function qn(){}var oi=null;function ai(i){if(ir.useDeprecatedSynchronousErrorHandling){var e=!oi;if(e&&(oi={errorThrown:!1,error:null}),i(),e){var t=oi,r=t.errorThrown,n=t.error;if(oi=null,r)throw n}}else i()}var nr=function(i){ft(e,i);function e(t){var r=i.call(this)||this;return r.isStopped=!1,t?(r.destination=t,Wn(t)&&t.add(r)):r.destination=xh,r}return e.create=function(t,r,n){return new kt(t,r,n)},e.prototype.next=function(t){this.isStopped||this._next(t)},e.prototype.error=function(t){this.isStopped||(this.isStopped=!0,this._error(t))},e.prototype.complete=function(){this.isStopped||(this.isStopped=!0,this._complete())},e.prototype.unsubscribe=function(){this.closed||(this.isStopped=!0,i.prototype.unsubscribe.call(this),this.destination=null)},e.prototype._next=function(t){this.destination.next(t)},e.prototype._error=function(t){try{this.destination.error(t)}finally{this.unsubscribe()}},e.prototype._complete=function(){try{this.destination.complete()}finally{this.unsubscribe()}},e}(si),Ch=Function.prototype.bind;function sr(i,e){return Ch.call(i,e)}var wh=function(){function i(e){this.partialObserver=e}return i.prototype.next=function(e){var t=this.partialObserver;if(t.next)try{t.next(e)}catch(r){li(r)}},i.prototype.error=function(e){var t=this.partialObserver;if(t.error)try{t.error(e)}catch(r){li(r)}else li(e)},i.prototype.complete=function(){var e=this.partialObserver;if(e.complete)try{e.complete()}catch(t){li(t)}},i}(),kt=function(i){ft(e,i);function e(t,r,n){var s=i.call(this)||this,o;if(ae(t)||!t)o={next:t!=null?t:void 0,error:r!=null?r:void 0,complete:n!=null?n:void 0};else{var l;s&&ir.useDeprecatedNextContext?(l=Object.create(t),l.unsubscribe=function(){return s.unsubscribe()},o={next:t.next&&sr(t.next,l),error:t.error&&sr(t.error,l),complete:t.complete&&sr(t.complete,l)}):o=t}return s.destination=new wh(o),s}return e}(nr);function li(i){jn(i)}function bh(i){throw i}var xh={closed:!0,next:qn,error:bh,complete:qn},or=function(){return typeof Symbol=="function"&&Symbol.observable||"@@observable"}();function Qn(i){return i}function Ah(i){return i.length===0?Qn:i.length===1?i[0]:function(t){return i.reduce(function(r,n){return n(r)},t)}}var le=function(){function i(e){e&&(this._subscribe=e)}return i.prototype.lift=function(e){var t=new i;return t.source=this,t.operator=e,t},i.prototype.subscribe=function(e,t,r){var n=this,s=Sh(e)?e:new kt(e,t,r);return ai(function(){var o=n,l=o.operator,c=o.source;s.add(l?l.call(s,c):c?n._subscribe(s):n._trySubscribe(s))}),s},i.prototype._trySubscribe=function(e){try{return this._subscribe(e)}catch(t){e.error(t)}},i.prototype.forEach=function(e,t){var r=this;return t=Yn(t),new t(function(n,s){var o=new kt({next:function(l){try{e(l)}catch(c){s(c),o.unsubscribe()}},error:s,complete:n});r.subscribe(o)})},i.prototype._subscribe=function(e){var t;return(t=this.source)===null||t===void 0?void 0:t.subscribe(e)},i.prototype[or]=function(){return this},i.prototype.pipe=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return Ah(e)(this)},i.prototype.toPromise=function(e){var t=this;return e=Yn(e),new e(function(r,n){var s;t.subscribe(function(o){return s=o},function(o){return n(o)},function(){return r(s)})})},i.create=function(e){return new i(e)},i}();function Yn(i){var e;return(e=i!=null?i:ir.Promise)!==null&&e!==void 0?e:Promise}function Ph(i){return i&&ae(i.next)&&ae(i.error)&&ae(i.complete)}function Sh(i){return i&&i instanceof nr||Ph(i)&&Wn(i)}function Th(i){return ae(i==null?void 0:i.lift)}function Fe(i){return function(e){if(Th(e))return e.lift(function(t){try{return i(t,this)}catch(r){this.error(r)}});throw new TypeError("Unable to lift unknown Observable type")}}function vt(i,e,t,r,n){return new Mh(i,e,t,r,n)}var Mh=function(i){ft(e,i);function e(t,r,n,s,o,l){var c=i.call(this,t)||this;return c.onFinalize=o,c.shouldUnsubscribe=l,c._next=r?function(h){try{r(h)}catch(u){t.error(u)}}:i.prototype._next,c._error=s?function(h){try{s(h)}catch(u){t.error(u)}finally{this.unsubscribe()}}:i.prototype._error,c._complete=n?function(){try{n()}catch(h){t.error(h)}finally{this.unsubscribe()}}:i.prototype._complete,c}return e.prototype.unsubscribe=function(){var t;if(!this.shouldUnsubscribe||this.shouldUnsubscribe()){var r=this.closed;i.prototype.unsubscribe.call(this),!r&&((t=this.onFinalize)===null||t===void 0||t.call(this))}},e}(nr),Eh=Nn(function(i){return function(){i(this),this.name="ObjectUnsubscribedError",this.message="object unsubscribed"}}),ci=function(i){ft(e,i);function e(){var t=i.call(this)||this;return t.closed=!1,t.currentObservers=null,t.observers=[],t.isStopped=!1,t.hasError=!1,t.thrownError=null,t}return e.prototype.lift=function(t){var r=new Kn(this,this);return r.operator=t,r},e.prototype._throwIfClosed=function(){if(this.closed)throw new Eh},e.prototype.next=function(t){var r=this;ai(function(){var n,s;if(r._throwIfClosed(),!r.isStopped){r.currentObservers||(r.currentObservers=Array.from(r.observers));try{for(var o=mt(r.currentObservers),l=o.next();!l.done;l=o.next()){var c=l.value;c.next(t)}}catch(h){n={error:h}}finally{try{l&&!l.done&&(s=o.return)&&s.call(o)}finally{if(n)throw n.error}}}})},e.prototype.error=function(t){var r=this;ai(function(){if(r._throwIfClosed(),!r.isStopped){r.hasError=r.isStopped=!0,r.thrownError=t;for(var n=r.observers;n.length;)n.shift().error(t)}})},e.prototype.complete=function(){var t=this;ai(function(){if(t._throwIfClosed(),!t.isStopped){t.isStopped=!0;for(var r=t.observers;r.length;)r.shift().complete()}})},e.prototype.unsubscribe=function(){this.isStopped=this.closed=!0,this.observers=this.currentObservers=null},Object.defineProperty(e.prototype,"observed",{get:function(){var t;return((t=this.observers)===null||t===void 0?void 0:t.length)>0},enumerable:!1,configurable:!0}),e.prototype._trySubscribe=function(t){return this._throwIfClosed(),i.prototype._trySubscribe.call(this,t)},e.prototype._subscribe=function(t){return this._throwIfClosed(),this._checkFinalizedStatuses(t),this._innerSubscribe(t)},e.prototype._innerSubscribe=function(t){var r=this,n=this,s=n.hasError,o=n.isStopped,l=n.observers;return s||o?Un:(this.currentObservers=null,l.push(t),new si(function(){r.currentObservers=null,tr(l,t)}))},e.prototype._checkFinalizedStatuses=function(t){var r=this,n=r.hasError,s=r.thrownError,o=r.isStopped;n?t.error(s):o&&t.complete()},e.prototype.asObservable=function(){var t=new le;return t.source=this,t},e.create=function(t,r){return new Kn(t,r)},e}(le),Kn=function(i){ft(e,i);function e(t,r){var n=i.call(this)||this;return n.destination=t,n.source=r,n}return e.prototype.next=function(t){var r,n;(n=(r=this.destination)===null||r===void 0?void 0:r.next)===null||n===void 0||n.call(r,t)},e.prototype.error=function(t){var r,n;(n=(r=this.destination)===null||r===void 0?void 0:r.error)===null||n===void 0||n.call(r,t)},e.prototype.complete=function(){var t,r;(r=(t=this.destination)===null||t===void 0?void 0:t.complete)===null||r===void 0||r.call(t)},e.prototype._subscribe=function(t){var r,n;return(n=(r=this.source)===null||r===void 0?void 0:r.subscribe(t))!==null&&n!==void 0?n:Un},e}(ci),Dh=function(i){ft(e,i);function e(t){var r=i.call(this)||this;return r._value=t,r}return Object.defineProperty(e.prototype,"value",{get:function(){return this.getValue()},enumerable:!1,configurable:!0}),e.prototype._subscribe=function(t){var r=i.prototype._subscribe.call(this,t);return!r.closed&&t.next(this._value),r},e.prototype.getValue=function(){var t=this,r=t.hasError,n=t.thrownError,s=t._value;if(r)throw n;return this._throwIfClosed(),s},e.prototype.next=function(t){i.prototype.next.call(this,this._value=t)},e}(ci),kh=new le(function(i){return i.complete()});function Ih(i){return i&&ae(i.schedule)}function ar(i){return i[i.length-1]}function Oh(i){return ae(ar(i))?i.pop():void 0}function Jn(i){return Ih(ar(i))?i.pop():void 0}function Rh(i,e){return typeof ar(i)=="number"?i.pop():e}var Xn=function(i){return i&&typeof i.length=="number"&&typeof i!="function"};function Zn(i){return ae(i==null?void 0:i.then)}function $n(i){return ae(i[or])}function es(i){return Symbol.asyncIterator&&ae(i==null?void 0:i[Symbol.asyncIterator])}function ts(i){return new TypeError("You provided "+(i!==null&&typeof i=="object"?"an invalid object":"'"+i+"'")+" where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.")}function Bh(){return typeof Symbol!="function"||!Symbol.iterator?"@@iterator":Symbol.iterator}var is=Bh();function rs(i){return ae(i==null?void 0:i[is])}function ns(i){return yh(this,arguments,function(){var t,r,n,s;return Fn(this,function(o){switch(o.label){case 0:t=i.getReader(),o.label=1;case 1:o.trys.push([1,,9,10]),o.label=2;case 2:return[4,gt(t.read())];case 3:return r=o.sent(),n=r.value,s=r.done,s?[4,gt(void 0)]:[3,5];case 4:return[2,o.sent()];case 5:return[4,gt(n)];case 6:return[4,o.sent()];case 7:return o.sent(),[3,2];case 8:return[3,10];case 9:return t.releaseLock(),[7];case 10:return[2]}})})}function ss(i){return ae(i==null?void 0:i.getReader)}function Xe(i){if(i instanceof le)return i;if(i!=null){if($n(i))return Lh(i);if(Xn(i))return zh(i);if(Zn(i))return Gh(i);if(es(i))return os(i);if(rs(i))return Hh(i);if(ss(i))return Fh(i)}throw ts(i)}function Lh(i){return new le(function(e){var t=i[or]();if(ae(t.subscribe))return t.subscribe(e);throw new TypeError("Provided object does not correctly implement Symbol.observable")})}function zh(i){return new le(function(e){for(var t=0;t<i.length&&!e.closed;t++)e.next(i[t]);e.complete()})}function Gh(i){return new le(function(e){i.then(function(t){e.closed||(e.next(t),e.complete())},function(t){return e.error(t)}).then(null,jn)})}function Hh(i){return new le(function(e){var t,r;try{for(var n=mt(i),s=n.next();!s.done;s=n.next()){var o=s.value;if(e.next(o),e.closed)return}}catch(l){t={error:l}}finally{try{s&&!s.done&&(r=n.return)&&r.call(n)}finally{if(t)throw t.error}}e.complete()})}function os(i){return new le(function(e){Nh(i,e).catch(function(t){return e.error(t)})})}function Fh(i){return os(ns(i))}function Nh(i,e){var t,r,n,s;return vh(this,void 0,void 0,function(){var o,l;return Fn(this,function(c){switch(c.label){case 0:c.trys.push([0,5,6,11]),t=_h(i),c.label=1;case 1:return[4,t.next()];case 2:if(r=c.sent(),!!r.done)return[3,4];if(o=r.value,e.next(o),e.closed)return[2];c.label=3;case 3:return[3,1];case 4:return[3,11];case 5:return l=c.sent(),n={error:l},[3,11];case 6:return c.trys.push([6,,9,10]),r&&!r.done&&(s=t.return)?[4,s.call(t)]:[3,8];case 7:c.sent(),c.label=8;case 8:return[3,10];case 9:if(n)throw n.error;return[7];case 10:return[7];case 11:return e.complete(),[2]}})})}function qe(i,e,t,r,n){r===void 0&&(r=0),n===void 0&&(n=!1);var s=e.schedule(function(){t(),n?i.add(this.schedule(null,r)):this.unsubscribe()},r);if(i.add(s),!n)return s}function as(i,e){return e===void 0&&(e=0),Fe(function(t,r){t.subscribe(vt(r,function(n){return qe(r,i,function(){return r.next(n)},e)},function(){return qe(r,i,function(){return r.complete()},e)},function(n){return qe(r,i,function(){return r.error(n)},e)}))})}function ls(i,e){return e===void 0&&(e=0),Fe(function(t,r){r.add(i.schedule(function(){return t.subscribe(r)},e))})}function Uh(i,e){return Xe(i).pipe(ls(e),as(e))}function Wh(i,e){return Xe(i).pipe(ls(e),as(e))}function Vh(i,e){return new le(function(t){var r=0;return e.schedule(function(){r===i.length?t.complete():(t.next(i[r++]),t.closed||this.schedule())})})}function jh(i,e){return new le(function(t){var r;return qe(t,e,function(){r=i[is](),qe(t,e,function(){var n,s,o;try{n=r.next(),s=n.value,o=n.done}catch(l){t.error(l);return}o?t.complete():t.next(s)},0,!0)}),function(){return ae(r==null?void 0:r.return)&&r.return()}})}function cs(i,e){if(!i)throw new Error("Iterable cannot be null");return new le(function(t){qe(t,e,function(){var r=i[Symbol.asyncIterator]();qe(t,e,function(){r.next().then(function(n){n.done?t.complete():t.next(n.value)})},0,!0)})})}function qh(i,e){return cs(ns(i),e)}function Qh(i,e){if(i!=null){if($n(i))return Uh(i,e);if(Xn(i))return Vh(i,e);if(Zn(i))return Wh(i,e);if(es(i))return cs(i,e);if(rs(i))return jh(i,e);if(ss(i))return qh(i,e)}throw ts(i)}function hs(i,e){return e?Qh(i,e):Xe(i)}function Yh(i,e){return Fe(function(t,r){var n=0;t.subscribe(vt(r,function(s){r.next(i.call(e,s,n++))}))})}function Kh(i,e,t,r,n,s,o,l){var c=[],h=0,u=0,p=!1,d=function(){p&&!c.length&&!h&&e.complete()},f=function(g){return h<r?m(g):c.push(g)},m=function(g){s&&e.next(g),h++;var w=!1;Xe(t(g,u++)).subscribe(vt(e,function(x){n==null||n(x),s?f(x):e.next(x)},function(){w=!0},void 0,function(){if(w)try{h--;for(var x=function(){var y=c.shift();o?qe(e,o,function(){return m(y)}):m(y)};c.length&&h<r;)x();d()}catch(y){e.error(y)}}))};return i.subscribe(vt(e,f,function(){p=!0,d()})),function(){l==null||l()}}function us(i,e,t){return t===void 0&&(t=1/0),ae(e)?us(function(r,n){return Yh(function(s,o){return e(r,s,n,o)})(Xe(i(r,n)))},t):(typeof e=="number"&&(t=e),Fe(function(r,n){return Kh(r,n,i,t)}))}function ds(i){return i===void 0&&(i=1/0),us(Qn,i)}function Jh(){return ds(1)}var Xh=Array.isArray;function ps(i){return i.length===1&&Xh(i[0])?i[0]:i}function Zh(i,e){return Fe(function(t,r){var n=0;t.subscribe(vt(r,function(s){return i.call(e,s,n++)&&r.next(s)}))})}function $h(){for(var i=[],e=0;e<arguments.length;e++)i[e]=arguments[e];var t=Oh(i),r=ps(i);return r.length?new le(function(n){var s=r.map(function(){return[]}),o=r.map(function(){return!1});n.add(function(){s=o=null});for(var l=function(h){Xe(r[h]).subscribe(vt(n,function(u){if(s[h].push(u),s.every(function(d){return d.length})){var p=s.map(function(d){return d.shift()});n.next(t?t.apply(void 0,Te([],Se(p))):p),s.some(function(d,f){return!d.length&&o[f]})&&n.complete()}},function(){o[h]=!0,!s[h].length&&n.complete()}))},c=0;!n.closed&&c<r.length;c++)l(c);return function(){s=o=null}}):kh}function eu(){for(var i=[],e=0;e<arguments.length;e++)i[e]=arguments[e];var t=Jn(i);return Fe(function(r,n){Jh()(hs(Te([r],Se(i)),t)).subscribe(n)})}function tu(){for(var i=[],e=0;e<arguments.length;e++)i[e]=arguments[e];return eu.apply(void 0,Te([],Se(i)))}function iu(){for(var i=[],e=0;e<arguments.length;e++)i[e]=arguments[e];var t=Jn(i),r=Rh(i,1/0);return i=ps(i),Fe(function(n,s){ds(r)(hs(Te([n],Se(i)),t)).subscribe(s)})}function lr(){for(var i=[],e=0;e<arguments.length;e++)i[e]=arguments[e];return iu.apply(void 0,Te([],Se(i)))}function cr(i){i===void 0&&(i={});var e=i.connector,t=e===void 0?function(){return new ci}:e,r=i.resetOnError,n=r===void 0?!0:r,s=i.resetOnComplete,o=s===void 0?!0:s,l=i.resetOnRefCountZero,c=l===void 0?!0:l;return function(h){var u,p,d,f=0,m=!1,g=!1,w=function(){p==null||p.unsubscribe(),p=void 0},x=function(){w(),u=d=void 0,m=g=!1},y=function(){var v=u;x(),v==null||v.unsubscribe()};return Fe(function(v,_){f++,!g&&!m&&w();var P=d=d!=null?d:t();_.add(function(){f--,f===0&&!g&&!m&&(p=hr(y,c))}),P.subscribe(_),!u&&f>0&&(u=new kt({next:function(O){return P.next(O)},error:function(O){g=!0,w(),p=hr(x,n,O),P.error(O)},complete:function(){m=!0,w(),p=hr(x,o),P.complete()}}),Xe(v).subscribe(u))})(h)}}function hr(i,e){for(var t=[],r=2;r<arguments.length;r++)t[r-2]=arguments[r];if(e===!0){i();return}if(e!==!1){var n=new kt({next:function(){n.unsubscribe(),i()}});return e.apply(void 0,Te([],Se(t))).subscribe(n)}}function ru(){for(var i=[],e=0;e<arguments.length;e++)i[e]=arguments[e];return Fe(function(t,r){$h.apply(void 0,Te([t],Se(i))).subscribe(r)})}function It(){for(var i=[],e=0;e<arguments.length;e++)i[e]=arguments[e];return ru.apply(void 0,Te([],Se(i)))}function fs({handler:i,map:e,type:t,eventName:r}){return new le(n=>(i.setInputAction(s=>{n.next(nu({event:s,map:e}))},t),()=>{i.removeInputAction(t)}))}function nu({event:i,map:e}){const t=e.viewer,r=i.position||i.endPosition;if(!r)return i;const n=t.camera.pickEllipsoid(r,t.scene.globe.ellipsoid);let s=t.scene.pick(r),o=s&&(s.id||s.primitive),l=o&&o._parentGraphic;if(l&&l.forbidEvent){s=null,o=null,l=null;const c=t.scene.drillPick(r);for(const h of c)if(s=h,o=s&&(s.id||s.primitive),l=o&&o._parentGraphic,l)if(l.forbidEvent)s=null,o=null,l=null;else break}return{event:i,position:r,target:o,targetGraphic:o&&o._parentGraphic,get point(){var h;let c;return s&&(((h=s==null?void 0:s.primitive)==null?void 0:h.disableDepthTestDistance)===1/0?(s.primitive.disableDepthTestDistance=0,t.scene.render(),c=t.scene.pickPosition(r),s.primitive.disableDepthTestDistance=1/0):c=t.scene.pickPosition(r)),c=c&&new L(c),c&&c.height>=-500?c:this.globePoint},get ellipsoidPoint(){return n&&new L(n)},get globePoint(){const c=t.scene.globe.pick(t.camera.getPickRay(r),t.scene);return c&&new L(c)},feature:s,get features(){return t.scene.drillPick(r)},intersection:c=>e.intersection(r,c)}}function su({map:i,type:e}){return new le(t=>{const r=n=>{const s=i.camera;t.next({camera:{heading:s.heading,pitch:s.pitch,roll:s.roll,positionWC:s.positionWC},event:n})};return i.viewer.scene[e].addEventListener(r),()=>{i.viewer.scene[e].removeEventListener(r)}})}function ou({map:i,type:e}){return new le(t=>{const r=n=>{const s=i.camera;t.next({event:n,camera:{heading:s.heading,pitch:s.pitch,roll:s.roll,positionWC:s.positionWC}})};return i.viewer.camera[e].addEventListener(r),()=>{i.viewer.camera[e].removeEventListener(r)}})}function au({map:i,type:e}){return new le(t=>{const r=n=>{t.next({event:n})};return i.viewer.clock[e].addEventListener(r),()=>{i.viewer.clock[e].removeEventListener(r)}})}function hi(){return new ci}const Ot={[Y.Click]:a.ScreenSpaceEventType.LEFT_CLICK,[Y.RClick]:a.ScreenSpaceEventType.RIGHT_CLICK,[Y.DbClick]:a.ScreenSpaceEventType.LEFT_DOUBLE_CLICK,[Y.Mousemove]:a.ScreenSpaceEventType.MOUSE_MOVE,[Y.Mousedown]:a.ScreenSpaceEventType.LEFT_DOWN,[Y.Mouseup]:a.ScreenSpaceEventType.LEFT_UP,[Y.RightMousedown]:a.ScreenSpaceEventType.RIGHT_DOWN,[Y.RightMouseup]:a.ScreenSpaceEventType.RIGHT_UP,[Y.Middledown]:a.ScreenSpaceEventType.MIDDLE_DOWN,[Y.Middleup]:a.ScreenSpaceEventType.MIDDLE_UP,[Y.MiddleClick]:a.ScreenSpaceEventType.MIDDLE_CLICK,[Y.Wheel]:a.ScreenSpaceEventType.WHEEL,[Y.PinchStart]:a.ScreenSpaceEventType.PINCH_START,[Y.PinchEnd]:a.ScreenSpaceEventType.PINCH_END,[Y.PinchMove]:a.ScreenSpaceEventType.PINCH_MOVE},ms={[Y.MorphComplete]:"morphComplete",[Y.MorphStart]:"morphStart",[Y.PostRender]:"postRender",[Y.PreRender]:"preRender",[Y.PostUpdate]:"postUpdate",[Y.PreUpdate]:"preUpdate",[Y.RenderError]:"renderError",[Y.TerrainProviderChanged]:"terrainProviderChanged"},gs={[Y.CameraChanged]:"changed",[Y.CameraMoveEnd]:"moveEnd",[Y.CameraMoveStart]:"moveStart"},vs={[Y.ClockStop]:"onStop",[Y.ClockTick]:"onTick"},ur=()=>{let i=hi();return{fireSubject:i,observer:i,subscriptionMap:new Map}},lu=({eventName:i,graphic:e})=>{if(ne(Ot[i])&&![Y.Mouseenter,Y.Mouseleave].includes(i))return ur();const t=hi(),r=new Dh(null),n=new le(s=>{const o=r.getValue();let l;if([Y.Mouseenter,Y.Mouseleave].includes(i)){let c=null;l=o.events[Y.Mousemove].observer.subscribe(([h,...u])=>{Y.Mouseenter===i&&c!==e&&h.targetGraphic===e&&(h.fromGraphic=c,h.toGraphic=h.targetGraphic,s.next([h,...u])),Y.Mouseleave===i&&c===e&&h.targetGraphic!==e&&(h.fromGraphic=c,h.toGraphic=h.targetGraphic,s.next([h,...u])),c=h.targetGraphic})}else l=o.events[i].observer.subscribe(([c,...h])=>{c&&c.targetGraphic===e&&s.next([c,...h])});return()=>{l.unsubscribe()}});return{fireSubject:t,addedToMapSubject:r,observer:t.pipe(lr(r.pipe(Zh(()=>!1),tu(n))),cr()),subscriptionMap:new Map}},cu=({handler:i,map:e,eventName:t})=>{let r=hi(),n;if(ne(Ot[t])||(n=fs({handler:i,map:e,type:Ot[t],eventName:t}).pipe(It())),ne(ms[t])||(n=su({map:e,type:ms[t]}).pipe(It())),ne(gs[t])||(n=ou({map:e,type:gs[t]}).pipe(It())),ne(vs[t])||(n=au({map:e,type:vs[t]}).pipe(It())),!n)return ur();let s=r.pipe(lr(n),cr());return{fireSubject:r,eventObserver:n,observer:s,subscriptionMap:new Map}},hu=({handler:i,map:e,eventName:t})=>{let r=hi(),n=fs({handler:i,map:e,type:Ot[t],eventName:t}).pipe(It());const s=new le(l=>{let c=!1,h=[n.subscribe(([u,...p])=>{c||l.next([u,...p])}),e.events[Y.Mousedown].observer.subscribe(()=>{c=!0}),e.events[Y.RightMousedown].observer.subscribe(()=>{c=!0}),e.events[Y.Middledown].observer.subscribe(()=>{c=!0}),e.events[Y.Mouseup].observer.subscribe(()=>{c=!1}),e.events[Y.RightMouseup].observer.subscribe(()=>{c=!1}),e.events[Y.Middleup].observer.subscribe(()=>{c=!1})];return()=>{h.forEach(u=>u.unsubscribe()),h=null}});let o=r.pipe(lr(s),cr());return{fireSubject:r,eventObserver:s,observer:o,subscriptionMap:new Map}};class uu extends Zi{_createObserver(e){const t=lu({eventName:e,graphic:this});return t.addedToMapSubject&&(this._map?(t.addedToMapSubject.next(this._map),t.addedToMapSubject.complete()):this.once("addToMap",r=>{t.addedToMapSubject.next(r),t.addedToMapSubject.complete()})),t}}class Qe extends uu{constructor(){super();this.state=de.INITIALIZED}_onAddToMap(e){this._map=e,this._addedHook(),this.state=de.ADDED}_addedHook(){}destroy(){this.state=de.DESTROYED,super.destroy(),this._map=null}}const du=i=>i instanceof a.Color,Ze=i=>{if(H(i))return du(i)?i:a.Color.fromCssColorString(i)},Z=i=>e=>{H(e[i])&&(e[i]=Ze(e[i]))},X=(i,e)=>t=>{var n,s;const r=t[i];H(r)&&(t[i]=(s=e[(n=r.toUpperCase)==null?void 0:n.call(r)])!=null?s:r)},J=(i,e)=>t=>{const r=t[i];H(r)&&(t[i]=Ee(r)?new e(...r):r)},ke=(i,e)=>t=>{var r;H(t[e])&&(t[i]=(r=t[e])!=null?r:t[i])},ge=i=>e=>{const t=e.opacity;H(t)&&i.forEach(r=>{e[r]instanceof a.Color&&(e[r]=e[r].withAlpha(t))})},re=(i,e)=>{const t=N({},e);return i.forEach(r=>{r(t)}),t},pu=[Z("evenColor"),Z("oddColor"),J("repeat",a.Cartesian2)];class fu extends a.CheckerboardMaterialProperty{constructor(e){super(re(pu,e));this.depthTest=e.depthTest}getValue(e,t){const r=super.getValue(e,t);return H(this.depthTest)&&(r.depthTest=this.depthTest),r}}var mu=`
czm_material czm_getMaterial(czm_materialInput materialInput)
{
czm_material material = czm_getDefaultMaterial(materialInput);
vec2 st = materialInput.st;
float angle;
angle = speed * czm_frameNumber/600.0;
st-=0.5;
st = mat2(cos(angle),-sin(angle),
sin(angle),cos(angle)) * st;
st+=0.5;
vec4 imgC = texture2D(image, st);
if(imgC.a>.0){
material.diffuse = color.rgb;
}
material.alpha = imgC.a * color.a;
return material;
}
`;class Me{constructor(e){this.options=e,this._definitionChanged=new a.Event}get typeName(){return`${this.type}Type`}getType(){return this.type}get isConstant(){return!0}equals(e){return e===this}get definitionChanged(){return this._definitionChanged}getValue(e,t){return t||(t={}),t.isStart||(t.isStart=!0,Object.keys(this.options).forEach(r=>{t[r]=this.options[r]})),t}}const gu={image:"",color:new a.Color(1,0,0,0),speed:10},vu=[Z("color")];class yu extends Me{constructor(e){super(re(vu,e));b(this,"type","CircleScan");this._initMaterial()}_initMaterial(){a.Material[this.typeName]||(a.Material[this.typeName]=this.type,a.Material._materialCache.addMaterial(this.type,{fabric:{type:this.type,uniforms:gu,source:mu},translucent:function(){return!0}}))}}var _u=`
czm_material czm_getMaterial(czm_materialInput materialInput)
{
czm_material material = czm_getDefaultMaterial(materialInput);
material.diffuse = 1.5 * color.rgb;
vec2 st = materialInput.st;
float dis = distance(st, vec2(0.5, 0.5));
float per = fract(speed*czm_frameNumber/1000.0);
if(count==1.0){
if(dis > per * 0.5){
discard;
}else {
material.alpha = color.a * dis / per / 2.0;
}
}
else{
vec3 str = materialInput.str;
if(abs(str.z)>0.001){
discard;
}
if(dis >0.5){
discard;
}
else {
float perDis = 0.5/count;
float disNum;
float bl = 0.0;
for(int i=0;i<=999;i++){
if(float(i)<=count){
disNum = perDis*float(i) - dis + per/count;
if(disNum>0.0){
if(disNum<perDis){
bl = 1.0-disNum/perDis;
}
else if(disNum-perDis<perDis){
bl = 1.0 - abs(1.0-disNum/perDis);
}
material.alpha = pow(bl,(1.0 + 10.0 * (1.0 - gradient)));
}
}
}
}
}
return material;
}
`;const Cu={speed:10,color:new a.Color(1,1,0,1),count:1,gradient:.1},wu=[Z("color")];class bu extends Me{constructor(e){super(re(wu,e));b(this,"type","CircleWave");this._initMaterial()}_initMaterial(){a.Material[this.typeName]||(a.Material[this.typeName]=this.type,a.Material._materialCache.addMaterial(this.type,{fabric:{type:this.type,uniforms:Cu,source:_u},translucent:function(){return!0}}))}}const xu=[Z("color")];class Au extends a.ColorMaterialProperty{constructor(e){super(re(xu,e).color);this.depthTest=e.depthTest}getValue(e,t){const r=super.getValue(e,t);return H(this.depthTest)&&(r.depthTest=this.depthTest),r}}const Pu=[Z("color"),J("lineCount",a.Cartesian2),J("lineThickness",a.Cartesian2),J("lineOffset",a.Cartesian2)];class Su extends a.GridMaterialProperty{constructor(e){super(re(Pu,e));this.depthTest=e.depthTest}getValue(e,t){const r=super.getValue(e,t);return H(this.depthTest)&&(r.depthTest=this.depthTest),r}}const Tu=[Z("color"),J("repeat",a.Cartesian2)];class Mu extends a.ImageMaterialProperty{constructor(e){super(N({transparent:!0},re(Tu,e)));this.depthTest=e.depthTest}getValue(e,t){const r=super.getValue(e,t);return H(this.depthTest)&&(r.depthTest=this.depthTest),r}}var Eu=`czm_material czm_getMaterial(czm_materialInput materialInput)
{
czm_material material = czm_getDefaultMaterial(materialInput);
vec2 st = repeat * materialInput.st;
float currTime;
if(time < 0.0){
currTime = speed*czm_frameNumber/1000.0;
}
else{
currTime = time;
}
vec4 colorImage = texture2D(image, vec2(fract((axisY?st.t:st.s) - currTime), st.t));
if(color.a == 0.0) {
if(colorImage.rgb == vec3(1.0)){
discard;
}
material.alpha = colorImage.a;
material.diffuse = colorImage.rgb;
}
else {
material.alpha = colorImage.a * color.a;
material.diffuse = max(color.rgb * material.alpha * 3.0, color.rgb);
}
if(hasImage2) {
vec4 colorBG = texture2D(image2,materialInput.st);
if(colorBG.a>0.5){
material.diffuse = color2.rgb;
}
}
return material;
}
`;const Du={time:-1,image:"",color:new a.Color(1,0,0,1),repeat:new a.Cartesian2(1,1),axisY:!1,speed:10,hasImage2:!1,image2:"",color2:new a.Color(1,1,1)},ku=[Z("color"),Z("color2"),J("repeat",a.Cartesian2),i=>{i.image2&&(i.hasImage2=!0)}];class Iu extends Me{constructor(e){super(re(ku,e));b(this,"type","LineFlow");this._initMaterial()}_initMaterial(){a.Material[this.typeName]||(a.Material[this.typeName]=this.type,a.Material._materialCache.addMaterial(this.type,{fabric:{type:this.type,uniforms:Du,source:Eu},translucent:function(){return!0}}))}}const Ou=[Z("color")];class Ru extends a.PolylineArrowMaterialProperty{constructor(e){super(re(Ou,e).color);this.depthTest=e.depthTest}getValue(e,t){const r=super.getValue(e,t);return H(this.depthTest)&&(r.depthTest=this.depthTest),r}}const Bu=[Z("color"),Z("gapColor")];class Lu extends a.PolylineDashMaterialProperty{constructor(e){super(re(Bu,e));this.depthTest=e.depthTest}getValue(e,t){const r=super.getValue(e,t);return H(this.depthTest)&&(r.depthTest=this.depthTest),r}}const zu=[Z("color")];class Gu extends a.PolylineGlowMaterialProperty{constructor(e){super(re(zu,e));this.depthTest=e.depthTest}getValue(e,t){const r=super.getValue(e,t);return H(this.depthTest)&&(r.depthTest=this.depthTest),r}}const Hu=[Z("color"),Z("outlineColor")];class Fu extends a.PolylineOutlineMaterialProperty{constructor(e){super(re(Hu,e));this.depthTest=e.depthTest}getValue(e,t){const r=super.getValue(e,t);return H(this.depthTest)&&(r.depthTest=this.depthTest),r}}const Nu=[Z("evenColor"),Z("oddColor"),X("orientation",a.StripeOrientation)];class Uu extends a.StripeMaterialProperty{constructor(e){super(re(Nu,e));this.depthTest=e.depthTest}getValue(e,t){const r=super.getValue(e,t);return H(this.depthTest)&&(r.depthTest=this.depthTest),r}}const Wu=[Z("baseWaterColor"),Z("blendColor")];class Vu extends Me{constructor(e){super(re(Wu,e));b(this,"type","Water");this.depthTest=e.depthTest}getValue(e,t){const r=super.getValue(e,t);return H(this.depthTest)&&(r.depthTest=this.depthTest),r}}var ju=`
uniform vec4 color;
uniform vec4 bgColor;
uniform float speed;
uniform float startTime;
uniform float bidirectional;
czm_material czm_getMaterial(czm_materialInput materialInput)
{
czm_material material = czm_getDefaultMaterial(materialInput);
vec2 st = materialInput.st;
float t = fract(startTime + czm_frameNumber * speed / 1000.0);
t *= 1.03;
float alpha0 = smoothstep(t - 0.03, t, st.s) * step(st.s, t);
float mt = 1. - t;
float alpha1 = smoothstep(mt + 0.03, mt, st.s) * step(mt, st.s);
float a0 = step(abs(bidirectional - 0.0) - 0.001, 0.);
float a1 = step(abs(bidirectional - 1.0) - 0.001, 0.);
float db = step(abs(bidirectional - 2.0) - 0.001, 0.);
float alpha = alpha0 * (a0 + db) + alpha1 * (a1 + db);
alpha = clamp(alpha, 0., 1.);
material.diffuse = color.rgb * alpha + bgColor.rgb * (1. - alpha);
material.alpha = color.a * alpha + bgColor.a * (1. - alpha);
// if (useImageAndRepeat.x != 0.) {
// float repeat = useImageAndRepeat.y;
// vec4 marsImageColor = texture2D(image, fract(vec2(fract((st.s-t)*repeat), st.t)));
// material.diffuse = marsImageColor.rgb;
// material.alpha = marsImageColor.a;
// }
return material;
}
`;const qu={bgColor:new a.Color(1,1,0,.1),color:new a.Color(1,1,0,.7),startTime:0,speed:20,bidirectional:0},Qu=[Z("color"),Z("bgColor")];class Yu extends Me{constructor(e){super(re(Qu,e));b(this,"type","ODLine");this._initMaterial()}_initMaterial(){a.Material[this.typeName]||(a.Material[this.typeName]=this.type,a.Material._materialCache.addMaterial(this.type,{fabric:{type:this.type,uniforms:qu,source:ju},translucent:function(){return!0}}))}}var Ku=`uniform vec4 bgColor;
uniform vec4 color;
uniform float speed;
czm_material czm_getMaterial(czm_materialInput materialInput){
czm_material material = czm_getDefaultMaterial(materialInput);
vec2 st = materialInput.st;
float time = fract(czm_frameNumber * speed / 1000.0);
vec3 fragColor = color.rgb;
if(st.t > 0.45 && st.t < 0.55 ) {
fragColor = vec3(1.0);
}
material.alpha = color.a * 1.5 * smoothstep(.0,1., fract(st.s - time));
material.diffuse = max(fragColor.rgb * material.alpha , fragColor.rgb);
if(material.alpha < bgColor.a){
material.alpha = bgColor.a;
material.diffuse = bgColor.rgb;
}
return material;
}
`;const Ju={color:new a.Color(1,1,0,.7),bgColor:new a.Color(0,0,0,0),speed:5},Xu=[Z("color"),Z("bgColor")];class Zu extends Me{constructor(e){super(re(Xu,e));b(this,"type","LineTrail");this._initMaterial()}_initMaterial(){a.Material[this.typeName]||(a.Material[this.typeName]=this.type,a.Material._materialCache.addMaterial(this.type,{fabric:{type:this.type,uniforms:Ju,source:Ku},translucent:function(){return!0}}))}}var $u=`
uniform vec4 color;
uniform float speed;
uniform float startTime;
uniform float percent;
uniform float alpha;
czm_material czm_getMaterial(czm_materialInput materialInput){
czm_material material = czm_getDefaultMaterial(materialInput);
vec2 st = materialInput.st;
float t =fract(startTime +czm_frameNumber * speed / 1000.0);
t *= (1.0 + percent);
float alpha1 = smoothstep(t- percent, t, st.s) * step(-t, -st.s);
alpha1 += alpha;
material.diffuse = color.rgb;
material.alpha = alpha1;
return material;
}
`;const ed={color:new a.Color(1,0,0,.7),alpha:.1,speed:20,percent:.04,startTime:0},td=[Z("color")];class id extends Me{constructor(e){super(re(td,e));b(this,"type","LineFlowColor");this._initMaterial()}_initMaterial(){a.Material[this.typeName]||(a.Material[this.typeName]=this.type,a.Material._materialCache.addMaterial(this.type,{fabric:{type:this.type,uniforms:ed,source:$u},translucent:function(){return!0}}))}}var rd=`
uniform vec4 color;
uniform float speed;
czm_material czm_getMaterial(czm_materialInput materialInput){
czm_material material = czm_getDefaultMaterial(materialInput);
float time = fract( czm_frameNumber * speed / 1000.0);
vec2 st = materialInput.st;
float scalar = smoothstep(0.0,1.0,time);
material.diffuse = color.rgb * scalar;
material.alpha = color.a * scalar ;
return material;
}
`;const nd={color:new a.Color(1,0,0,.7),speed:10},sd=[Z("color")];class od extends Me{constructor(e){super(re(sd,e));b(this,"type","LineFlicker");this._initMaterial()}_initMaterial(){a.Material[this.typeName]||(a.Material[this.typeName]=this.type,a.Material._materialCache.addMaterial(this.type,{fabric:{type:this.type,uniforms:nd,source:rd},translucent:function(){return!0}}))}}var ad=`uniform vec4 grassColor;
uniform vec4 dirtColor;
uniform float patchiness;
czm_material czm_getMaterial(czm_materialInput materialInput){
czm_material material = czm_getDefaultMaterial(materialInput);
vec2 st = materialInput.st;
float noise1 = (czm_snoise(st * patchiness * 1.0)) * 1.0;
float noise2 = (czm_snoise(st * patchiness * 2.0)) * 0.5;
float noise3 = (czm_snoise(st * patchiness * 4.0)) * 0.25;
float noise = sin(noise1 + noise2 + noise3) * 0.1;
vec4 color = mix(grassColor, dirtColor, noise);
//Make thatch patterns
float verticalNoise = czm_snoise(vec2(st.x * 100.0, st.y * 20.0)) * 0.02;
float horizontalNoise = czm_snoise(vec2(st.x * 20.0, st.y * 100.0)) * 0.02;
float stripeNoise = min(verticalNoise, horizontalNoise);
color.rgb += stripeNoise;
material.diffuse = color.rgb;
material.alpha = color.a;
return material;
}
`,ld=`/**
* @license
* Description : Array and textureless GLSL 2D/3D/4D simplex
* noise functions.
* Author : Ian McEwan, Ashima Arts.
* Maintainer : ijm
* Lastmod : 20110822 (ijm)
* License : Copyright (C) 2011 Ashima Arts. All rights reserved.
* Distributed under the MIT License. See LICENSE file.
* https://github.com/ashima/webgl-noise
*/
vec4 _czm_mod289(vec4 x)
{
return x - floor(x * (1.0 / 289.0)) * 289.0;
}
vec3 _czm_mod289(vec3 x)
{
return x - floor(x * (1.0 / 289.0)) * 289.0;
}
vec2 _czm_mod289(vec2 x)
{
return x - floor(x * (1.0 / 289.0)) * 289.0;
}
float _czm_mod289(float x)
{
return x - floor(x * (1.0 / 289.0)) * 289.0;
}
vec4 _czm_permute(vec4 x)
{
return _czm_mod289(((x*34.0)+1.0)*x);
}
vec3 _czm_permute(vec3 x)
{
return _czm_mod289(((x*34.0)+1.0)*x);
}
float _czm_permute(float x)
{
return _czm_mod289(((x*34.0)+1.0)*x);
}
vec4 _czm_taylorInvSqrt(vec4 r)
{
return 1.79284291400159 - 0.85373472095314 * r;
}
float _czm_taylorInvSqrt(float r)
{
return 1.79284291400159 - 0.85373472095314 * r;
}
vec4 _czm_grad4(float j, vec4 ip)
{
const vec4 ones = vec4(1.0, 1.0, 1.0, -1.0);
vec4 p,s;
p.xyz = floor( fract (vec3(j) * ip.xyz) * 7.0) * ip.z - 1.0;
p.w = 1.5 - dot(abs(p.xyz), ones.xyz);
s = vec4(lessThan(p, vec4(0.0)));
p.xyz = p.xyz + (s.xyz*2.0 - 1.0) * s.www;
return p;
}
/**
* DOC_TBA
*
* Implemented by Ian McEwan, Ashima Arts, and distributed under the MIT License. {@link https://github.com/ashima/webgl-noise}
*
* @name czm_snoise
* @glslFunction
*
* @see <a href="https://github.com/ashima/webgl-noise">https://github.com/ashima/webgl-noise</a>
* @see Stefan Gustavson's paper <a href="http://www.itn.liu.se/~stegu/simplexnoise/simplexnoise.pdf">Simplex noise demystified</a>
*/
float czm_snoise(vec2 v)
{
const vec4 C = vec4(0.211324865405187, // (3.0-sqrt(3.0))/6.0
0.366025403784439, // 0.5*(sqrt(3.0)-1.0)
-0.577350269189626, // -1.0 + 2.0 * C.x
0.024390243902439); // 1.0 / 41.0
// First corner
vec2 i = floor(v + dot(v, C.yy) );
vec2 x0 = v - i + dot(i, C.xx);
// Other corners
vec2 i1;
//i1.x = step( x0.y, x0.x ); // x0.x > x0.y ? 1.0 : 0.0
//i1.y = 1.0 - i1.x;
i1 = (x0.x > x0.y) ? vec2(1.0, 0.0) : vec2(0.0, 1.0);
// x0 = x0 - 0.0 + 0.0 * C.xx ;
// x1 = x0 - i1 + 1.0 * C.xx ;
// x2 = x0 - 1.0 + 2.0 * C.xx ;
vec4 x12 = x0.xyxy + C.xxzz;
x12.xy -= i1;
// Permutations
i = _czm_mod289(i); // Avoid truncation effects in permutation
vec3 p = _czm_permute( _czm_permute( i.y + vec3(0.0, i1.y, 1.0 )) + i.x + vec3(0.0, i1.x, 1.0 ));
vec3 m = max(0.5 - vec3(dot(x0,x0), dot(x12.xy,x12.xy), dot(x12.zw,x12.zw)), 0.0);
m = m*m ;
m = m*m ;
// Gradients: 41 points uniformly over a line, mapped onto a diamond.
// The ring size 17*17 = 289 is close to a multiple of 41 (41*7 = 287)
vec3 x = 2.0 * fract(p * C.www) - 1.0;
vec3 h = abs(x) - 0.5;
vec3 ox = floor(x + 0.5);
vec3 a0 = x - ox;
// Normalise gradients implicitly by scaling m
// Approximation of: m *= inversesqrt( a0*a0 + h*h );
m *= 1.79284291400159 - 0.85373472095314 * ( a0*a0 + h*h );
// Compute final noise value at P
vec3 g;
g.x = a0.x * x0.x + h.x * x0.y;
g.yz = a0.yz * x12.xz + h.yz * x12.yw;
return 130.0 * dot(m, g);
}
float czm_snoise(vec3 v)
{
const vec2 C = vec2(1.0/6.0, 1.0/3.0) ;
const vec4 D = vec4(0.0, 0.5, 1.0, 2.0);
// First corner
vec3 i = floor(v + dot(v, C.yyy) );
vec3 x0 = v - i + dot(i, C.xxx) ;
// Other corners
vec3 g = step(x0.yzx, x0.xyz);
vec3 l = 1.0 - g;
vec3 i1 = min( g.xyz, l.zxy );
vec3 i2 = max( g.xyz, l.zxy );
// x0 = x0 - 0.0 + 0.0 * C.xxx;
// x1 = x0 - i1 + 1.0 * C.xxx;
// x2 = x0 - i2 + 2.0 * C.xxx;
// x3 = x0 - 1.0 + 3.0 * C.xxx;
vec3 x1 = x0 - i1 + C.xxx;
vec3 x2 = x0 - i2 + C.yyy; // 2.0*C.x = 1/3 = C.y
vec3 x3 = x0 - D.yyy; // -1.0+3.0*C.x = -0.5 = -D.y
// Permutations
i = _czm_mod289(i);
vec4 p = _czm_permute( _czm_permute( _czm_permute(
i.z + vec4(0.0, i1.z, i2.z, 1.0 ))
+ i.y + vec4(0.0, i1.y, i2.y, 1.0 ))
+ i.x + vec4(0.0, i1.x, i2.x, 1.0 ));
// Gradients: 7x7 points over a square, mapped onto an octahedron.
// The ring size 17*17 = 289 is close to a multiple of 49 (49*6 = 294)
float n_ = 0.142857142857; // 1.0/7.0
vec3 ns = n_ * D.wyz - D.xzx;
vec4 j = p - 49.0 * floor(p * ns.z * ns.z); // mod(p,7*7)
vec4 x_ = floor(j * ns.z);
vec4 y_ = floor(j - 7.0 * x_ ); // mod(j,N)
vec4 x = x_ *ns.x + ns.yyyy;
vec4 y = y_ *ns.x + ns.yyyy;
vec4 h = 1.0 - abs(x) - abs(y);
vec4 b0 = vec4( x.xy, y.xy );
vec4 b1 = vec4( x.zw, y.zw );
//vec4 s0 = vec4(lessThan(b0,0.0))*2.0 - 1.0;
//vec4 s1 = vec4(lessThan(b1,0.0))*2.0 - 1.0;
vec4 s0 = floor(b0)*2.0 + 1.0;
vec4 s1 = floor(b1)*2.0 + 1.0;
vec4 sh = -step(h, vec4(0.0));
vec4 a0 = b0.xzyw + s0.xzyw*sh.xxyy ;
vec4 a1 = b1.xzyw + s1.xzyw*sh.zzww ;
vec3 p0 = vec3(a0.xy,h.x);
vec3 p1 = vec3(a0.zw,h.y);
vec3 p2 = vec3(a1.xy,h.z);
vec3 p3 = vec3(a1.zw,h.w);
//Normalise gradients
vec4 norm = _czm_taylorInvSqrt(vec4(dot(p0,p0), dot(p1,p1), dot(p2, p2), dot(p3,p3)));
p0 *= norm.x;
p1 *= norm.y;
p2 *= norm.z;
p3 *= norm.w;
// Mix final noise value
vec4 m = max(0.6 - vec4(dot(x0,x0), dot(x1,x1), dot(x2,x2), dot(x3,x3)), 0.0);
m = m * m;
return 42.0 * dot( m*m, vec4( dot(p0,x0), dot(p1,x1),
dot(p2,x2), dot(p3,x3) ) );
}
float czm_snoise(vec4 v)
{
const vec4 C = vec4( 0.138196601125011, // (5 - sqrt(5))/20 G4
0.276393202250021, // 2 * G4
0.414589803375032, // 3 * G4
-0.447213595499958); // -1 + 4 * G4
// (sqrt(5) - 1)/4 = F4, used once below
#define F4 0.309016994374947451
// First corner
vec4 i = floor(v + dot(v, vec4(F4)) );
vec4 x0 = v - i + dot(i, C.xxxx);
// Other corners
// Rank sorting originally contributed by Bill Licea-Kane, AMD (formerly ATI)
vec4 i0;
vec3 isX = step( x0.yzw, x0.xxx );
vec3 isYZ = step( x0.zww, x0.yyz );
// i0.x = dot( isX, vec3( 1.0 ) );
i0.x = isX.x + isX.y + isX.z;
i0.yzw = 1.0 - isX;
// i0.y += dot( isYZ.xy, vec2( 1.0 ) );
i0.y += isYZ.x + isYZ.y;
i0.zw += 1.0 - isYZ.xy;
i0.z += isYZ.z;
i0.w += 1.0 - isYZ.z;
// i0 now contains the unique values 0,1,2,3 in each channel
vec4 i3 = clamp( i0, 0.0, 1.0 );
vec4 i2 = clamp( i0-1.0, 0.0, 1.0 );
vec4 i1 = clamp( i0-2.0, 0.0, 1.0 );
// x0 = x0 - 0.0 + 0.0 * C.xxxx
// x1 = x0 - i1 + 1.0 * C.xxxx
// x2 = x0 - i2 + 2.0 * C.xxxx
// x3 = x0 - i3 + 3.0 * C.xxxx
// x4 = x0 - 1.0 + 4.0 * C.xxxx
vec4 x1 = x0 - i1 + C.xxxx;
vec4 x2 = x0 - i2 + C.yyyy;
vec4 x3 = x0 - i3 + C.zzzz;
vec4 x4 = x0 + C.wwww;
// Permutations
i = _czm_mod289(i);
float j0 = _czm_permute( _czm_permute( _czm_permute( _czm_permute(i.w) + i.z) + i.y) + i.x);
vec4 j1 = _czm_permute( _czm_permute( _czm_permute( _czm_permute (
i.w + vec4(i1.w, i2.w, i3.w, 1.0 ))
+ i.z + vec4(i1.z, i2.z, i3.z, 1.0 ))
+ i.y + vec4(i1.y, i2.y, i3.y, 1.0 ))
+ i.x + vec4(i1.x, i2.x, i3.x, 1.0 ));
// Gradients: 7x7x6 points over a cube, mapped onto a 4-cross polytope
// 7*7*6 = 294, which is close to the ring size 17*17 = 289.
vec4 ip = vec4(1.0/294.0, 1.0/49.0, 1.0/7.0, 0.0) ;
vec4 p0 = _czm_grad4(j0, ip);
vec4 p1 = _czm_grad4(j1.x, ip);
vec4 p2 = _czm_grad4(j1.y, ip);
vec4 p3 = _czm_grad4(j1.z, ip);
vec4 p4 = _czm_grad4(j1.w, ip);
// Normalise gradients
vec4 norm = _czm_taylorInvSqrt(vec4(dot(p0,p0), dot(p1,p1), dot(p2, p2), dot(p3,p3)));
p0 *= norm.x;
p1 *= norm.y;
p2 *= norm.z;
p3 *= norm.w;
p4 *= _czm_taylorInvSqrt(dot(p4,p4));
// Mix contributions from the five corners
vec3 m0 = max(0.6 - vec3(dot(x0,x0), dot(x1,x1), dot(x2,x2)), 0.0);
vec2 m1 = max(0.6 - vec2(dot(x3,x3), dot(x4,x4) ), 0.0);
m0 = m0 * m0;
m1 = m1 * m1;
return 49.0 * ( dot(m0*m0, vec3( dot( p0, x0 ), dot( p1, x1 ), dot( p2, x2 )))
+ dot(m1*m1, vec2( dot( p3, x3 ), dot( p4, x4 ) ) ) ) ;
}
`;const cd={grassColor:new a.Color(.25,.4,.1,1),dirtColor:new a.Color(.1,.1,.1,1),patchiness:1.5},hd=[Z("grassColor"),Z("dirtColor")];class ud extends Me{constructor(e){super(re(hd,e));b(this,"type","PolyGrass");this._initMaterial()}_initMaterial(){a.ShaderSource._czmBuiltinsAndUniforms.czm_snoise||(a.ShaderSource._czmBuiltinsAndUniforms.czm_snoise=ld),a.Material[this.typeName]||(a.Material[this.typeName]=this.type,a.Material._materialCache.addMaterial(this.type,{fabric:{type:this.type,uniforms:cd,source:ad},translucent:function(){return!0}}))}}var dd=`
uniform vec4 color;
uniform sampler2D image;
uniform float dashPattern;
varying float v_polylineAngle;
varying float v_width;
const float maskLength = 64.0;
mat2 rotate(float rad) {
float c = cos(rad);
float s = sin(rad);
return mat2(
c, s,
-s, c
);
}
czm_material czm_getMaterial(czm_materialInput materialInput)
{
czm_material material = czm_getDefaultMaterial(materialInput);
vec2 pos = rotate(v_polylineAngle) * gl_FragCoord.xy;
// Get the relative position within the dash from 0 to 1
float dashPosition = fract(pos.x / (v_width * 4.0 * czm_pixelRatio));
// Figure out the mask index.
float maskIndex = floor(dashPosition * maskLength);
// Test the bit mask.
float maskTest = floor(dashPattern / pow(2.0, maskIndex));
vec2 st = materialInput.st;
vec4 fragColor = color;
if (mod(maskTest, 2.0) < 1.0){
vec4 c= texture2D(image, vec2(dashPosition, st.t));
if (c.w>=0.01){
fragColor = vec4(1.0, 1.0, 1.0, 1.0);
}
}
if (fragColor.a < 0.005) { // matches 0/255 and 1/255
discard;
}
fragColor = czm_gammaCorrect(fragColor);
material.emission = fragColor.rgb;
material.alpha = fragColor.a;
return material;
}
`;const pd={color:new a.Color(1,0,1,1),dashPattern:255,image:""},fd=[Z("color")];class ys extends Me{constructor(e){super(re(fd,e));b(this,"type","PolylineArrowLine");this._initMaterial()}_initMaterial(){a.Material[this.typeName]||(a.Material[this.typeName]=this.type,a.Material._materialCache.addMaterial(this.type,{fabric:{type:this.type,uniforms:pd,source:dd},translucent:function(){return!0}}))}}var md=`uniform vec4 bgColor;
uniform vec4 color;
uniform float speed;
uniform float startTime;
czm_material czm_getMaterial(czm_materialInput materialInput){
czm_material material = czm_getDefaultMaterial(materialInput);
vec2 st = materialInput.st;
float time = (czm_frameNumber - startTime) * speed / 1000.0;
vec3 fragColor = color.rgb;
if(time - st.s < 0.0) {
material.alpha = 0.0;
} else {
material.alpha = color.a;
}
material.diffuse = max(fragColor.rgb * material.alpha , fragColor.rgb);
return material;
}
`;const gd={color:new a.Color(1,1,0,.7),speed:5,startTime:0},vd=[Z("color")];class yd extends Me{constructor(e){super(re(vd,e));b(this,"type","LineTrailOnce");this._initMaterial()}_initMaterial(){a.Material[this.typeName]||(a.Material[this.typeName]=this.type,a.Material._materialCache.addMaterial(this.type,{fabric:{type:this.type,uniforms:gd,source:md},translucent:function(){return!0}}))}}const _d=[Z("color")];class Cd extends Me{constructor(e){super(re(_d,e));b(this,"type","MaterialColor");this._initMaterial()}_initMaterial(){a.Material[this.typeName]||(a.Material[this.typeName]=this.type,a.Material._materialCache.addMaterial(this.type,{fabric:{type:"Color",uniforms:{color:{red:1,green:0,blue:0,alpha:.5}},components:{diffuse:"color.rgb",alpha:"color.a"}}}))}}const wd={[se.Checkerboard]:fu,[se.CircleScan]:yu,[se.CircleWave]:bu,[se.MaterialColor]:Cd,[se.Color]:Au,[se.Grid]:Su,[se.Image]:Mu,[se.LineFlow]:Iu,[se.PolylineArrow]:Ru,[se.PolylineDash]:Lu,[se.PolylineGlow]:Gu,[se.PolylineOutline]:Fu,[se.Stripe]:Uu,[se.Water]:Vu,[se.ODLine]:Yu,[se.LineTrail]:Zu,[se.LineTrailOnce]:yd,[se.LineFlowColor]:id,[se.LineFlicker]:od,[se.PolyGrass]:ud,[se.PolylineArrowLine]:ys,[se.PolylineArrowLine]:ys},bd=t=>{var r=t,{type:i}=r,e=te(r,["type"]);const n=wd[i];if(n)return new n(e);console.error(`\u4E0D\u5B58\u5728\u7C7B\u578B\u4E3A${i}\u7684material`)},xd=i=>{const e=i.opacity;H(e)&&(i.color=(i.color||a.Color.WHITE).withAlpha(e))},Ad=i=>{H(i.text)&&(i.text=i.text.replace(new RegExp("<br/>","gm"),`
`),Rt([i.fontStyle,i.fontWeight,i.fontSize,i.fontFamily])&&(i.font=`${i.fontStyle||"normal"} small-caps ${i.fontWeight||"normal"} ${i.fontSize||"30"}px ${i.fontFamily||"\u9ED1\u4F53"}`))},Pd=i=>{const e=i.color||i.fillColor;H(e)&&(i.fillColor=Ze(e),i.fill=!0)},Ie=i=>{const e=i.material||i.color;if(!ne(e)){if(e instanceof a.Color){i.material=e;return}if(xe(e)){i.material=Ze(e);return}pe(e)&&(i.material=bd(e))}},$e=i=>{H(i.outlineWidth)&&(i.style=i.outlineWidth?a.LabelStyle.FILL_AND_OUTLINE:a.LabelStyle.FILL)},Oe=i=>{const e=i.outlineColor||i.borderColor;H(e)&&(i.outlineColor=Ze(e))},Sd=i=>{const e=i.backgroundColor;H(e)&&(i.showBackground=!0,i.backgroundColor=Ze(e))},dr=i=>{const e=i.clampToTerrain;H(e)&&(i.heightReference=e?a.HeightReference.CLAMP_TO_GROUND:a.HeightReference.NONE)},pr=i=>{const e=i.clampToTerrain;H(e)&&(i.classificationType=e?a.ClassificationType.TERRAIN:a.ClassificationType.CESIUM_3D_TILE,e&&(i.clampToGround=!0))},fr=i=>{const e=i.visibleDepth;H(e)&&(e?i.disableDepthTestDistance=0:i.disableDepthTestDistance=Number.POSITIVE_INFINITY)},Td=i=>{const e=i.modelMatrix;H(e)&&(i.modelMatrix=Ee(e)?a.Matrix4.fromArray(e):e)},Ye=i=>{H(i.outlineWidth)&&(i.outline=!!i.outlineWidth)},mr=i=>{const e=i.clampToGround;H(e)&&(i.height=e?void 0:i.height,i.extrudedHeight=e?void 0:i.extrudedHeight)},gr=i=>{ne(i.extrudedHeight)&&i.lineHelper&&(i.outline=!1)},Md=[ke("heading","rotateX"),ke("pitch","rotateY"),ke("roll","rotateZ")],Ed={billboard:{adaptors:[ke("url","image"),J("alignedAxis",a.Cartesian3),J("pixelOffset",a.Cartesian2),J("eyeOffset",a.Cartesian3),X("horizontalOrigin",a.HorizontalOrigin),X("verticalOrigin",a.VerticalOrigin),Z("color"),J("scaleByDistance",a.NearFarScalar),J("translucencyByDistance",a.NearFarScalar),J("pixelOffsetScaleByDistance",a.NearFarScalar),J("distanceDisplayCondition",a.DistanceDisplayCondition),dr,fr,X("heightReference",a.HeightReference),ge(["color"])],defaultStyle:{horizontalOrigin:a.HorizontalOrigin.CENTER,verticalOrigin:a.VerticalOrigin.BOTTOM,isLabelInImage:!1}},label:{adaptors:[Ad,Pd,Sd,J("backgroundPadding",a.Cartesian2),J("pixelOffset",a.Cartesian2),J("eyeOffset",a.Cartesian3),X("horizontalOrigin",a.HorizontalOrigin),X("verticalOrigin",a.VerticalOrigin),Oe,ke("outlineWidth","borderWidth"),J("translucencyByDistance",a.NearFarScalar),J("pixelOffsetScaleByDistance",a.NearFarScalar),J("scaleByDistance",a.NearFarScalar),J("distanceDisplayCondition",a.DistanceDisplayCondition),$e,fr,dr,X("heightReference",a.HeightReference),ge(["fillColor","outlineColor","backgroundColor"])],defaultStyle:{}},point:{adaptors:[Z("color"),Oe,ke("outlineWidth","borderWidth"),J("scaleByDistance",a.NearFarScalar),J("translucencyByDistance",a.NearFarScalar),J("distanceDisplayCondition",a.DistanceDisplayCondition),fr,dr,X("heightReference",a.HeightReference),ge(["color","outlineColor"])],defaultStyle:{pixelSize:10}},divPoint:{adaptors:[X("verticalOrigin",a.VerticalOrigin),X("horizontalOrigin",a.HorizontalOrigin),J("distanceDisplayCondition",a.DistanceDisplayCondition),J("scaleByDistance",a.NearFarScalar),J("pixelOffset",a.Cartesian2)],defaultStyle:{horizontalOrigin:a.HorizontalOrigin.CENTER,verticalOrigin:a.VerticalOrigin.BOTTOM,scale:1}},geoJson:{adaptors:[ke("url","uri")],defaultStyle:{}},group:{adaptors:[],defaultStyle:{}},polyline:{adaptors:[Ie,J("distanceDisplayCondition",a.DistanceDisplayCondition),X("arcType",a.ArcType),Z("depthFailMaterial"),ge(["material"]),i=>{const e=i.clampToTerrain;H(e)&&(i.classificationType=e?a.ClassificationType.TERRAIN:a.ClassificationType.CESIUM_3D_TILE,e&&(i.clampToGround=!0))},X("classificationType",a.ClassificationType)],defaultStyle:{}},polygon:{adaptors:[X("extrudedHeightReference",a.HeightReference),Ie,Oe,Z("outlineColor"),ke("outlineWidth","borderWidth"),X("arcType",a.ArcType),J("distanceDisplayCondition",a.DistanceDisplayCondition),Ye,gr,pr,i=>{const e=i.clampToGround;H(e)&&(i.perPositionHeight=!e,i.height=e?void 0:i.height,i.extrudedHeight=e?void 0:i.extrudedHeight),H(i.height)&&(i.perPositionHeight=void 0)},X("heightReference",a.HeightReference),ge(["material","outlineColor"]),X("classificationType",a.ClassificationType)],defaultStyle:{perPositionHeight:!0,outlineWidth:0,lineHelper:!0}},ellipse:{adaptors:[i=>{const e=i.semiAxis;H(e)&&(i.semiMinorAxis=e,i.semiMajorAxis=e)},X("extrudedHeightReference",a.HeightReference),Ie,Oe,ke("outlineWidth","borderWidth"),X("shadows",a.ShadowMode),J("distanceDisplayCondition",a.DistanceDisplayCondition),pr,mr,X("classificationType",a.ClassificationType),X("heightReference",a.HeightReference),ge(["material","outlineColor"]),Ye,gr],defaultStyle:{height:0,outlineWidth:0}},box:{adaptors:[J("dimensions",a.Cartesian3),X("heightReference",a.HeightReference),Ye,Ie,Oe,X("shadows",a.ShadowMode),J("distanceDisplayCondition",a.DistanceDisplayCondition),ge(["material","outlineColor"])],defaultStyle:{}},corridor:{adaptors:[X("heightReference",a.HeightReference),X("extrudedHeightReference",a.extrudedHeightReference),X("cornerType",a.CornerType),Ie,Oe,$e,Ye,X("shadows",a.ShadowMode),X("arcType",a.ArcType),X("classificationType",a.ClassificationType),J("distanceDisplayCondition",a.DistanceDisplayCondition),ge(["material","outlineColor"]),pr,mr],defaultStyle:{height:0}},cylinder:{adaptors:[X("heightReference",a.HeightReference),Ie,Oe,$e,Ye,X("shadows",a.ShadowMode),X("arcType",a.ArcType),J("distanceDisplayCondition",a.DistanceDisplayCondition),ge(["material","outlineColor"])],defaultStyle:{}},model:{adaptors:[ke("uri","url"),X("heightReference",a.HeightReference),Z("silhouetteColor"),Z("color"),X("colorBlendMode",a.ColorBlendMode),J("imageBasedLightingFactor",a.Cartesian2),Z("lightColor"),J("distanceDisplayCondition",a.DistanceDisplayCondition),X("shadows",a.ShadowMode),ge(["color"])],defaultStyle:{}},path:{adaptors:[Ie,J("distanceDisplayCondition",a.DistanceDisplayCondition),Oe,$e,X("shadows",a.ShadowMode),J("distanceDisplayCondition",a.DistanceDisplayCondition),ge(["material","outlineColor"])],defaultStyle:{leadTime:0,trailTime:1/0}},plane:{adaptors:[Ie,J("dimensions",a.Cartesian2),J("plane",a.Plane),Z("outlineColor"),Ye,ge(["material","outlineColor"]),i=>{if(xe(i.plane)){const e={x:a.Cartesian3.UNIT_X,y:a.Cartesian3.UNIT_Y,z:a.Cartesian3.UNIT_Z};i.plane=new a.Plane(e[i.plane],0)}}],defaultStyle:{plane:"z"}},polylineVolume:{adaptors:[i=>{!i.shape||(i.shape=i.shape.map(e=>Ee(e)?new a.Cartesian2(...e):e))},X("cornerType",a.CornerType),Ie,Oe,$e,X("shadows",a.ShadowMode),J("distanceDisplayCondition",a.DistanceDisplayCondition),ge(["material","outlineColor"])],defaultStyle:{}},rectangle:{adaptors:[X("heightReference",a.HeightReference),X("extrudedHeightReference",a.extrudedHeightReference),Ie,Oe,$e,Ye,gr,X("shadows",a.ShadowMode),J("distanceDisplayCondition",a.DistanceDisplayCondition),X("classificationType",a.ClassificationType),ge(["material","outlineColor"]),mr],defaultStyle:{height:0,outlineWidth:0}},roamLine:{adaptors:[],defaultStyle:{}},tileset:{adaptors:[J("lightColor",a.Cartesian3),ke("url","uri"),Td,Z("color"),xd],defaultStyle:{}},wall:{adaptors:[Ie,Oe,$e,X("shadows",a.ShadowMode),J("distanceDisplayCondition",a.DistanceDisplayCondition),ge(["material","outlineColor"]),Ye],defaultStyle:{diffHeight:10}}},Ce=function(i,e,t=!0){if(!i||!e)return i;const r=Ed[e];if(!r)return i;const{adaptors:n,defaultStyle:s}=r;return t&&(i=Id([s,i])),re(Md.concat(n),i)};class Ke extends Qe{constructor(e={}){super();b(this,"isGraphic",!0);b(this,"graphicStyle",{});b(this,"_hasEdit",!1);b(this,"resourceStyleFields",[]);const h=e,{id:t=et(),visible:r=!0,forbidEvent:n=!1,style:s={},attr:o={},hasEdit:l=!1}=h,c=te(h,["id","visible","forbidEvent","style","attr","hasEdit"]);this.id=t,this.visible=r,this.forbidEvent=n,this.hasEdit=l,this.options=N({style:s,attr:o},c)}appendTo(e){if(e===this)return;let t=this.state;this.state=de.REMOVED,this._parent&&(this._parent.primitive.destroyPrimitives=!1,this._parent.removeGraphic(this),this._parent.primitive.destroyPrimitives=!0,this._parent=null),e.addGraphic(this),this.state=t}get style(){return this.options.style}get attr(){return this.options.attr||{}}set attr(e){this.options.attr=e||{}}setAttr(e){H(e)&&(this.options.attr=ie(this.attr,e))}_addedHook(){super._addedHook(),this.entity&&(this.entity._parentGraphic=this),this.primitive&&(this.primitive._parentGraphic=this),this.hasEdit&&this._map.drawTool,this.fire("addToMap",this._map)}show(){this.entity&&(this.entity.show=!0),this.primitive&&(this.primitive.show=!0),this.dataSource&&(this.dataSource.show=!0),this.visible=!0}hide(){this.entity&&(this.entity.show=!1),this.primitive&&(this.primitive.show=!1),this.dataSource&&(this.dataSource.show=!1),this.visible=!1}addTo(e){return e.addGraphic(this),this}destroy(){super.destroy(),this._parent&&(this._parent.removeGraphic(this),this._parent=null),this._map=null}setOptions({position:e,positions:t,attr:r,style:n,visible:s,hasEdit:o}={}){return H(o)&&(this.hasEdit=o),H(s)&&(s?this.show():this.hide()),H(r)&&this.setAttr(r),H(n)&&this.setStyle(n),H(e)&&(this.position=e),H(t)&&(this.positions=t),this}_replaceResourceStyle(e){return this._map&&this.resourceStyleFields&&this.resourceStyleFields.forEach(t=>{e[t]&&(e[t]=this._map.resource.getResource(e[t]))}),e}setStyle(e={},t){var h,u;if(!t){console.error("type \u4E0D\u80FD\u4E3A\u7A7A");return}this.options.style=Bt(this.style,this._replaceResourceStyle(e));const r=Ce(this.options.style,t);this.graphicStyle=ie(this.graphicStyle,r);const c=r,{label:n,addHeight:s,setHeight:o}=c,l=te(c,["label","addHeight","setHeight"]);n&&(n.clampToGround=(h=n.clampToGround)!=null?h:l.clampToGround,n.clampToTerrain=(u=n.clampToTerrain)!=null?u:l.clampToTerrain),[{type:"label",style:Ce(n,"label")},{type:t,style:l}].forEach(({type:p,style:d})=>{!d||(this.entity&&(this.entity[p]?Object.entries(d).forEach(([f,m])=>{this.entity[p][f]=m}):this.entity[p]=d),this.primitive&&t===this.type&&Object.entries(d).forEach(([f,m])=>{this.primitive[f]=m}))}),R.Billboard===this.type&&this.graphicStyle.isLabelInImage&&e.label&&this._map&&(this._map.imageBuilder.fromText(this.style.image||this.style.url,Ce(this.style.label,R.Label),this.graphicStyle).then(p=>{this.entity[R.Billboard].image=p}),this.entity.label.show=!1),this.fire("update:style",this.style)}flyTo(e){return this._map&&this._map.flyToGraphic(this,e),this}edit(e={}){if(!!this._map)return this._map.drawTool.edit(this,N({isRestorePositions:!0},e))}get hasEdit(){return this._hasEdit}set hasEdit(e){e&&this._map&&this._map.drawTool,this._hasEdit=e}_updateHelperLineStyle(){ne(this.graphicStyle.extrudedHeight)?(this.entity.polyline.show=!0,this.entity.polyline.width=this.graphicStyle.outlineWidth,this.style.outlineColor&&(this.entity.polyline.material=a.Color.fromCssColorString(this.style.outlineColor)),this.entity.polyline.clampToGround=this.style.clampToGround,this.entity.polyline.disableDepthTestDistance=this.style.disableDepthTestDistance):this.entity.polyline.show=!1}toData(){if(this.isPointGraphic)return new L(this.point).toLatLng();if(this.isPointsGraphic)return this.points.map(e=>new L(e).toLatLng())}toJSON(){const e={type:this.type,attr:this.attr,style:this.style};return this.isPointGraphic&&(e.position=new L(this.point).toLatLng()),this.isPointsGraphic&&(e.positions=this.points.map(t=>new L(t).toLatLng())),[R.Tileset,R.Model].includes(this.type)&&(e.rotate=this.hpr),this._map&&this.resourceStyleFields.concat("material.image").forEach(t=>{!Ss(t,e.style)||(e.style=kd(t,this._map.resource.addResource(Ss(t,e.style)),e.style))}),e}get isRealVisible(){let e=this,t=!0;for(;e;)!ne(e.visible)&&!e.visible&&(t=!1),e=e._parent;return t}}class yt extends Zi{_createObserver(){return ur()}}class _s extends yt{constructor(e,t={}){super();b(this,"state","ready");b(this,"currentIndex",-1);b(this,"positions",[]);this.options=t,this._map=e,this.clock=this._map.viewer.clock,this._init()}_init(){const e=this.clock;e.shouldAnimate=!1,this.startTime=e.currentTime.clone(),this.property=new a.SampledPositionProperty,e.startTime=this.startTime.clone(),e.clockRange=this.options.loop?a.ClockRange.LOOP_STOP:a.ClockRange.CLAMPED,e.onTick.addEventListener(this.onTick,this),e.onStop.addEventListener(this.onStop,this),this.options.positions&&this.options.positions.forEach(t=>{this.add(t)})}get orientation(){return new a.VelocityOrientationProperty(this.property)}destroy(){this.clock.onTick.removeEventListener(this.onTick,this),this.clock.onStop.removeEventListener(this.onStop,this),super.destroy()}onStop(){const e=this.clock;if(!e.shouldAnimate)return;e.clockRange!==a.ClockRange.LOOP_STOP&&(this.clock.shouldAnimate=!1);const t=this.positions.length;this.currentIndex=t-1,this.state="stop",this.fire("endItem",{position:this.positions[this.currentIndex],index:this.currentIndex}),this.fire("end")}onTick(){const e=this.clock;if(!e.shouldAnimate)return;const t=e.currentTime.clone(),r=this.property._property._times.findIndex(n=>a.JulianDate.greaterThanOrEquals(n,t));this.currentIndex!==r-1&&(this.currentIndex=r-1,this.fire("endItem",{position:this.positions[this.currentIndex],index:this.currentIndex})),this.fire("update",{point:this.currentValue,index:this.currentIndex,positions:this.positions})}get currentValue(){return this.property.getValue(this.clock.currentTime)}start(){if(!this.positions.length)return;const e=this.clock;e.stopTime=this.lastTime.clone(),e.currentTime=this.startTime.clone(),e.shouldAnimate=!0,this.fire("start"),this.state="pending"}reset(){this.state="ready";const e=this.clock;e.stopTime=this.lastTime.clone(),e.currentTime=this.startTime.clone(),e.shouldAnimate=!1}proceed(){const e=this.clock;e.stopTime=this.lastTime.clone(),e.shouldAnimate=!0,this.state="pending"}pause(){this.clock.shouldAnimate=!1,this.state="pause"}get lastTime(){var e;return(e=this.positions[this.positions.length-1])==null?void 0:e.sampleTime}get lastPoint(){var e;return(e=this.positions[this.positions.length-1])==null?void 0:e.getValue()}add(e){if(!e)return;e.getValue=e.getValue||function(){return new L(this)};const t=e.getValue();e.sampleValue=t;const r=this.property,n=this.startTime;let s=this.lastTime,o=null;s||(o=a.JulianDate.addSeconds(n,0,new a.JulianDate)),!o&&e.time&&(o=a.JulianDate.addSeconds(n,a.JulianDate.secondsDifference(a.JulianDate.fromDate(e.time),a.JulianDate.fromDate(this.startTime))));const l=e.speed||this.options.speed;if(!o&&l&&!e.duration){const u=a.Cartesian3.distance(t,this.lastPoint)/(l/3.6);o=a.JulianDate.addSeconds(s,u,new a.JulianDate)}const c=e.duration||this.options.duration||2e3;!o&&c&&(o=a.JulianDate.addSeconds(s,c/1e3,new a.JulianDate)),t&&r.addSample(o,t),this.positions.push(ue(N({},e),{sampleTime:o}))}refreshPosition(){if(!this.property)return;let e;this.positions.forEach(t=>{const r=t.getValue();t.sampleValue=r,e=r||e,e?this.property.addSample(t.sampleTime,e):this.property.removeSample(t.sampleTime)})}}const we={pixel:120,xAisColor:a.Color.RED,yAisColor:a.Color.GREEN,zAisColor:a.Color.BLUE,activeColor:a.Color.YELLOW};class vr extends yt{constructor({map:e,graphic:t,log:r=!1}){super();b(this,"dashScaleModelMatrix",a.Matrix4.IDENTITY.clone());b(this,"scaleModelMatrix",a.Matrix4.IDENTITY.clone());b(this,"moveModelMatrix",a.Matrix4.IDENTITY.clone());this._map=e,this._graphic=t,this._primitive=new a.PrimitiveCollection,e.viewer.scene.primitives.add(this._primitive),this._basePxMeter=this._getPxMeter(),this._originPoint=this._graphic.point,this._init();let n=null;this._dragging=!1,this.effectFuncs=[t.on("update:position",()=>{this._xAxisActive||this._yAxisActive||this._zAxisActive||(this.moveModelMatrix=a.Matrix4.fromTranslation(a.Cartesian3.subtract(t.point,this._originPoint,new a.Cartesian3)))}),e.on("preRender",()=>{const s=this._getPxMeter();if(s===n)return;n=s;const o=s/this._basePxMeter;this.scaleModelMatrix=this._scale({x:o,y:o,z:o}),this.update()}),e.on("mousemove",s=>{if(this._dragging||!this._xAxis._material)return;this._xAxisActive=!1,this._yAxisActive=!1,this._zAxisActive=!1;const o=s.features;if(o.find(l=>l.primitive===this._xyPlane)){const c=s.intersection(this._graphic.point).toMercator(),h=new L(this._graphic.point).toMercator(),u=c.x-h.x,p=c.y-h.y,d=this._getPxMeter(),f=u/d/we.pixel,m=p/d/we.pixel;f>=.05&&(this._xAxisActive=!0),m>=.05&&(this._yAxisActive=!0),this._xAxisActive&&this._yAxisActive&&(this.dashScaleModelMatrix=this._scale({x:f,y:m,z:1}),this.update())}o.find(l=>l.primitive===this._xAxis)&&(this._xAxisActive=!0),o.find(l=>l.primitive===this._yAxis)&&(this._yAxisActive=!0),o.find(l=>l.primitive===this._zAxis)&&(this._zAxisActive=!0),this._dashLine.show=!!(this._xAxisActive&&this._yAxisActive),this._xAxis._material.uniforms.color=this._xAxisActive?we.activeColor:we.xAisColor,this._yAxis._material.uniforms.color=this._yAxisActive?we.activeColor:we.yAisColor,this._zAxis._material.uniforms.color=this._zAxisActive?we.activeColor:we.zAisColor}),e.on("click",s=>{if(this._dragging||!(this._xAxisActive||this._yAxisActive||this._zAxisActive))return;let o,l;if(this._zAxisActive){let d=a.Cartesian3.subtract(this._graphic.point,e.camera.positionWC,new a.Cartesian3);d=a.Cartesian3.normalize(d,new a.Cartesian3);let f=a.Cartesian3.projectVector(d,a.Matrix4.multiplyByPoint(a.Transforms.eastNorthUpToFixedFrame(this._graphic.point),a.Cartesian3.UNIT_Z,new a.Cartesian3),new a.Cartesian3);const m=a.Cartesian3.subtract(f,d,new a.Cartesian3);l=a.Plane.fromPointNormal(this._graphic.point,a.Cartesian3.normalize(m,new a.Cartesian3)),o=s.intersection(l)}else o=s.intersection(this._graphic.point),l=a.Plane.fromPointNormal(o,a.Cartesian3.normalize(o,new a.Cartesian3));if(!o)return;const c=this.moveModelMatrix.clone();this._dragging=!0,this._startPoint=o;const h=a.Transforms.eastNorthUpToFixedFrame(o),u=a.Matrix4.inverse(h,new a.Matrix4);this.fire("drag-start"),this._targetPoint=this._graphic.point,this._graphic.primitive||(this._graphic.position=new a.CallbackProperty(()=>this._targetPoint,!1));const p=this._map.on("mousemove",d=>{const f=d.intersection(l);if(!f)return;const m=a.Matrix4.multiplyByPoint(u,f,new a.Cartesian3);this._xAxisActive||(m.x=0),this._yAxisActive||(m.y=0),this._zAxisActive||(m.z=0);const g=a.Matrix4.multiplyByPoint(h,m,new a.Cartesian3);this.moveModelMatrix=a.Matrix4.multiply(c,a.Matrix4.fromTranslation(a.Cartesian3.subtract(g,o,new a.Cartesian3)),new a.Matrix4),this.update(),this.updatePosition(),this._updateXYZBoxPrimitive(),this.fire("drag")});this._map.once("click",()=>{this.fire("drag-end"),this._graphic.position=this._targetPoint,this._dragging=!1,this._startPoint=null,this._updateXYZBoxPrimitive(),this._map.viewer.render(),this._map.scene.requestRender(),p()})})],this.log=r}get modelMatrix(){return a.Matrix4.multiply(this.moveModelMatrix,this.scaleModelMatrix,new a.Matrix4)}_updateXYZBoxPrimitive(){if(this._xyzBox&&this._primitive.remove(this._xyzBox),!this._startPoint)return;const e=[this._startPoint,a.Matrix4.multiplyByPoint(this.modelMatrix,this._originPoint,new a.Cartesian3)];let t;if(this._xAxisActive&&this._yAxisActive){const r=a.Rectangle.fromCartesianArray(e),n=e[0].height;t=[new L(a.Rectangle.northwest(r)).setHeight(n),new L(a.Rectangle.southwest(r)).setHeight(n),new L(a.Rectangle.southeast(r)).setHeight(n),new L(a.Rectangle.northeast(r)).setHeight(n),new L(a.Rectangle.northwest(r)).setHeight(n)]}else t=e;this._xyzBox=new a.Primitive({asynchronous:!1,allowPicking:!1,geometryInstances:new a.GeometryInstance({geometry:new a.PolylineGeometry({positions:t,width:2,vertexFormat:a.PolylineMaterialAppearance.VERTEX_FORMAT})}),appearance:new a.PolylineMaterialAppearance({material:new a.Material({fabric:{type:"PolylineDash",uniforms:{color:we.activeColor}}}),renderState:{depthTest:{enabled:!1}}})}),this._primitive.add(this._xyzBox)}updatePosition(){let e=a.Matrix4.multiplyByPoint(this.moveModelMatrix,this._originPoint,new a.Cartesian3);e&&!this._zAxisActive&&(e=new L(e,{setHeight:this._graphic.point.height})),this.log&&console.log(e),this._targetPoint=e,this._graphic.primitive&&(this._graphic.position=this._targetPoint)}_init(){const e=this._originPoint,t=e.toMercator(),r=this._basePxMeter*we.pixel,n=t.clone(),s=t.clone(),o=t.clone();n.x+=r,s.y+=r,o.z+=r;const l=L.fromMercator(n),c=L.fromMercator(s),h=L.fromMercator(o);this._xAxis=this._addAxisPrimitive([e,l],{color:we.xAisColor}),this._yAxis=this._addAxisPrimitive([e,c],{color:we.yAisColor}),this._zAxis=this._addAxisPrimitive([e,h],{color:we.zAisColor}),this._xyPlane=this._addXYPlanePrimitive([e,l,c]),this._dashLine=this._addDashPrimitive([e,l,c]),this._dashLine.show=!1}_addDashPrimitive(e){const t=a.Rectangle.fromCartesianArray(e),r=e[0].height,n=new a.Primitive({allowPicking:!1,geometryInstances:new a.GeometryInstance({geometry:new a.PolylineGeometry({positions:[new L(a.Rectangle.southeast(t)).setHeight(r),new L(a.Rectangle.northeast(t)).setHeight(r),new L(a.Rectangle.northwest(t)).setHeight(r)],width:2,vertexFormat:a.PolylineMaterialAppearance.VERTEX_FORMAT})}),appearance:new a.PolylineMaterialAppearance({material:new a.Material({fabric:{type:"PolylineDash",uniforms:{color:we.activeColor}}}),renderState:{depthTest:{enabled:!1}}})});return this._primitive.add(n),n}_addXYPlanePrimitive(e){const t=new a.Primitive({geometryInstances:new a.GeometryInstance({geometry:new a.RectangleGeometry({rectangle:a.Rectangle.fromCartesianArray(e),height:e[0].height}),attributes:{color:new a.ColorGeometryInstanceAttribute(0,0,1,.01)}}),appearance:new a.PerInstanceColorAppearance({translucent:!0,renderState:{depthTest:{enabled:!1}}})});return this._primitive.add(t,0),t}_addAxisPrimitive(e,{color:t}){const r=new a.Primitive({asynchronous:!0,geometryInstances:new a.GeometryInstance({geometry:new a.PolylineGeometry({positions:e,width:20,vertexFormat:a.PolylineMaterialAppearance.VERTEX_FORMAT})}),appearance:new a.PolylineMaterialAppearance({material:new a.Material({fabric:{type:"PolylineArrow",uniforms:{color:t}}}),renderState:{depthTest:{enabled:!1}}})});return this._primitive.add(r,0),r}_getPxMeter(){return this._map.getPxMeter(this._graphic.point)}_scale({x:e,y:t,z:r}){const n=a.Transforms.eastNorthUpToFixedFrame(this._originPoint),s=a.Matrix4.multiplyByScale(n,new a.Cartesian3(e,t,r),new a.Matrix4);return a.Matrix4.multiply(s,a.Matrix4.inverse(n,new a.Matrix4),new a.Matrix4)}update(){const e=this.modelMatrix;[this._xAxis,this._yAxis,this._zAxis,this._xyPlane].forEach(r=>{r&&(r.modelMatrix=e)});const t=a.Matrix4.multiply(this.dashScaleModelMatrix,this.scaleModelMatrix,new a.Matrix4);this._dashLine.modelMatrix=a.Matrix4.multiply(this.moveModelMatrix,t,new a.Matrix4)}destroy(){super.destroy(),this.effectFuncs&&(this.effectFuncs.forEach(e=>e()),this.effectFuncs=null),this._primitive&&this._map&&(this._map.viewer.scene.primitives.remove(this._primitive),this._primitive=null),this._xAxis=null,this._yAxis=null,this._zAxis=null,this._xyPlane=null,this._map=null,this._graphic=null}}class Re extends Ke{constructor(e){super(e);b(this,"isPointGraphic",!0);b(this,"_position",null);b(this,"_positionEdit",null);const{position:t}=this.options;this._position=t}_addedHook(){super._addedHook();const e=this.options.rotate;e&&this.rotate(e),this.setStyle(this.style);const{clampToGround:t,addHeight:r,setHeight:n}=this.style;Ps([t,r,n])&&this._updatePosition()}_updatePosition(){if(!this.options.position||this.options.position.getValue)this._position=this.options.position;else{if(this.style.clampToGround){this.clampToGround();return}const{setHeight:e,addHeight:t}=this.style;this._position=new L(this.options.position,{addHeight:t,setHeight:e})}this.entity&&(this.entity.position=this.position),this.primitive&&(this.primitive.position=this.position)}set position(e){var t;this.options.position=e,this.style.clampToGround&&(this.entity&&(this.entity.position=e),this.primitive&&(this.primitive.position=e)),(t=this._updatePosition)==null||t.call(this,!0),this.fire("update:position",this.position)}get position(){return this._position}get center(){return this.point}get point(){const e=this.position;if(e&&e.getValue){if(!this._map)return null;const t=e.getValue(this._map.viewer.clock.currentTime);return t&&new L(t)}return e&&new L(e)}get points(){return[this.point]}set orientation(e){this.entity&&(this.entity.orientation=e)}get orientation(){var e;return(e=this.entity)==null?void 0:e.orientation}addDynamicPosition(e){this._map||console.error("\u5FC5\u987B\u6DFB\u52A0\u5230map\u4E2D\u540E \u624D\u80FD\u8C03\u7528\u6B64\u65B9\u6CD5"),this._ani?(this._ani.add(e),this._ani.proceed()):(this._ani=new _s(this._map,{positions:[this.position]}),this.once("destroy",()=>{this._ani.destroy()}),this._ani.add(e),this._ani.start()),this.position=this._ani.property,this.orientation=this._ani.orientation}rotate(e){var o,l,c,h,u,p;const t=this.hpr,r=(l=(o=e.roll)!=null?o:e.rotateX)!=null?l:t.roll,n=(h=(c=e.pitch)!=null?c:e.rotateY)!=null?h:t.pitch,s=(p=(u=e.heading)!=null?u:e.rotateZ)!=null?p:t.heading;this.orientation=a.Transforms.headingPitchRollQuaternion(this.position,new a.HeadingPitchRoll(Math.PI*(s/180),Math.PI*(n/180),Math.PI*(r/180))),this.fire("update:hpr",this.hpr)}get hpr(){var l;const{heading:e,roll:t,pitch:r}=Tn(this.point,(l=this.orientation)==null?void 0:l.getValue(this._map.viewer.clock.currentTime)),n=a.Math.toDegrees(e),s=a.Math.toDegrees(t),o=a.Math.toDegrees(r);return{heading:n,roll:s,pitch:o,rotateZ:n,rotateX:s,rotateY:o}}set hpr(e){this.rotate(e)}clampToGround(){if(!this._map)return;const e=this.options.position;if(!(!e||e.getValue))return new L(e).clampToGround(this._map,{async:!0}).then(t=>{this._position=t.toCartesian3(),this.entity&&(this.entity.position=t),this.primitive&&(this.primitive.position=e)}),this}clampToTerrain(){if(!this._map)return;const e=this.options.position;if(!(!e||e.getValue))return new L(e).clampToTerrain(this._map,{async:!0}).then(t=>{this._position=t.toCartesian3(),this.entity&&(this.entity.position=t),this.primitive&&(this.primitive.position=e)}),this}setStyle(e,t){super.setStyle(e,t);const{clampToGround:r,addHeight:n,setHeight:s}=e;Rt([r,n,s])&&this._updatePosition()}toGeoJson(){return dh(this.point.toLatLngArray(),{attr:this.attr,style:this.style,type:this.type})}get isPositionEditing(){return!!this._positionEdit}startPositionEdit(e){!this._map||(this._positionEdit=new vr({map:this._map,graphic:this,log:e}))}stopPositionEdit(){this._positionEdit&&(this._positionEdit.destroy(),this._positionEdit=null)}}class yr extends Re{constructor(e){super(e);b(this,"type",R.Ellipse);this.entity=new a.Entity({show:this.visible,polyline:{},ellipse:{}})}_updatePosition(){if(super._updatePosition(),ne(this.graphicStyle.extrudedHeight))if(this.options.position&&this.options.position.getValue)this.entity.polyline.positions=new a.CallbackProperty(()=>{const e=this.getOuterPositions({count:90,position:this.point});return e&&e.concat(e[0])},!1);else{const e=this.getOuterPositions({count:90});this.entity.polyline.positions=e&&e.concat(e[0])}}setStyle(e,t=this.type){super.setStyle(e,t),this._updateHelperLineStyle()}getOuterPositions(e){var o,l,c;const t=this._map.viewer.clock.currentTime,r=((o=this.style.semiAxis)==null?void 0:o.getValue)?this.style.semiAxis.getValue(t):this.style.semiAxis,n=((l=this.style.semiMajorAxis)==null?void 0:l.getValue)?this.style.semiMajorAxis.getValue(t):this.style.semiMajorAxis,s=((c=this.style.semiMinorAxis)==null?void 0:c.getValue)?this.style.semiMinorAxis.getValue(t):this.style.semiMinorAxis;return Mn(N({position:this.point,semiMajorAxis:n,semiMinorAxis:s,semiAxis:r,rotation:0},e))}}class ui extends yr{constructor(){super(...arguments);b(this,"type",R.Circle)}setStyle(e){super.setStyle(e,R.Ellipse)}get radius(){return this._map?this.style.semiAxis.getValue?this.style.semiAxis.getValue(this._map.viewer.clock.currentTime):this.style.semiAxis:this.style.semiAxis}}const di=3.141592653589793*3e3/180,ve=3.141592653589793,Cs=6378245,ws=.006693421622965943;class _r{static BD09ToGCJ02(e,t){let r=+e-.0065,n=+t-.006,s=Math.sqrt(r*r+n*n)-2e-5*Math.sin(n*di),o=Math.atan2(n,r)-3e-6*Math.cos(r*di),l=s*Math.cos(o),c=s*Math.sin(o);return[l,c]}static GCJ02ToBD09(e,t){t=+t,e=+e;let r=Math.sqrt(e*e+t*t)+2e-5*Math.sin(t*di),n=Math.atan2(t,e)+3e-6*Math.cos(e*di),s=r*Math.cos(n)+.0065,o=r*Math.sin(n)+.006;return[s,o]}static WGS84ToGCJ02(e,t){if(t=+t,e=+e,this.out_of_china(e,t))return[e,t];{let r=this.delta(e,t);return[e+r[0],t+r[1]]}}static GCJ02ToWGS84(e,t){if(t=+t,e=+e,this.out_of_china(e,t))return[e,t];{let r=this.delta(e,t),n=e+r[0],s=t+r[1];return[e*2-n,t*2-s]}}static delta(e,t){let r=this.transformLng(e-105,t-35),n=this.transformLat(e-105,t-35);const s=t/180*ve;let o=Math.sin(s);o=1-ws*o*o;const l=Math.sqrt(o);return r=r*180/(Cs/l*Math.cos(s)*ve),n=n*180/(Cs*(1-ws)/(o*l)*ve),[r,n]}static transformLng(e,t){t=+t,e=+e;let r=300+e+2*t+.1*e*e+.1*e*t+.1*Math.sqrt(Math.abs(e));return r+=(20*Math.sin(6*e*ve)+20*Math.sin(2*e*ve))*2/3,r+=(20*Math.sin(e*ve)+40*Math.sin(e/3*ve))*2/3,r+=(150*Math.sin(e/12*ve)+300*Math.sin(e/30*ve))*2/3,r}static transformLat(e,t){t=+t,e=+e;let r=-100+2*e+3*t+.2*t*t+.1*e*t+.2*Math.sqrt(Math.abs(e));return r+=(20*Math.sin(6*e*ve)+20*Math.sin(2*e*ve))*2/3,r+=(20*Math.sin(t*ve)+40*Math.sin(t/3*ve))*2/3,r+=(160*Math.sin(t/12*ve)+320*Math.sin(t*ve/30))*2/3,r}static out_of_china(e,t){return t=+t,e=+e,!(e>73.66&&e<135.05&&t>3.86&&t<53.55)}}const bs=new a.WebMercatorProjection;class L extends a.Cartesian3{constructor(e,{setHeight:t,addHeight:r}={}){super();this.setValue(e,{setHeight:t,addHeight:r})}get height(){return this.toLatLng().alt}get value(){return{x:this.x,y:this.y,z:this.z}}set value(e){if(!e)return;const{x:t,y:r,z:n}=Hc(e);this.x=t,this.y=r,this.z=n}setValue(e,{setHeight:t,addHeight:r}={}){if(this.value=e,!!e)return H(r)&&this.addHeight(r),H(t)&&this.setHeight(t),this}addHeight(e){return e?(this.value=Uc(this.value,e),this):this}setHeight(e){return ne(e)?this:(this.value=Wc(this.value,e),this)}_getDefaultExclude(e){return e?e.getAllGraphics().filter(t=>{if(t.type!==R.Tileset)return t.primitive||t.entity}):[]}clampToGround(e,{async:t=!1,objectsToExclude:r}={}){if(!e)return console.warn("map is required!"),this;r=(r||this._getDefaultExclude(e)).map(o=>o instanceof Ke?o.primitive||o.entity:o).filter(Boolean);const n=e.viewer;if(t){const o=this.toCartographic();return o?Promise.all([new Promise(l=>{const c=n.scene.globe.terrainProvider;if(c instanceof a.EllipsoidTerrainProvider){l(0);return}return a.sampleTerrainMostDetailed(c,[o]).then(([{height:h=0}])=>{l(h)})}),new Promise(l=>{n.scene.sampleHeightMostDetailed([o],r).then(([{height:c=0}])=>(l(c),this))})]).then(l=>{let c=Math.max(...l);return c<-500&&(c=this.getHeightByGlobePick(e)),this.setHeight(c),this}):Promise.resolve(this)}let s=n.scene.sampleHeight(this.toCartographic(),r);return(s===void 0||s<-500)&&(s=this.getHeightByGlobePick(e)),this.setHeight(s),this}clampToTerrain(e,{async:t=!1}={}){if(!e)return console.warn("map is required!"),this;const r=e.viewer;if(t){const s=this.toCartographic();if(!s)return Promise.resolve(this);const o=r.scene.globe.terrainProvider;return o instanceof a.EllipsoidTerrainProvider?(this.setHeight(0),Promise.resolve(this)):a.sampleTerrainMostDetailed(o,[s]).then(([{height:l=0}])=>(console.log(l),l<-500&&(l=this.getHeightByGlobePick(e)),this.setHeight(l),this))}let n=r.scene.globe.getHeight(this.toCartographic());return n<-500&&(n=this.getHeightByGlobePick(e)),this.setHeight(n),this}getHeightByGlobePick(e){const t=e.viewer,r=t.scene.cartesianToCanvasCoordinates(this.value),n=t.scene.globe.pick(t.camera.getPickRay(r),t.scene);return n?new L(n).height:0}toMercator(){return bs.project(this.toCartographic())}toLatLng(){const e=this.toCartographic(this.value),t=a.Math.toDegrees(e.latitude),r=a.Math.toDegrees(e.longitude),n=e.height;return{lng:r,lat:t,alt:n}}toLatLngArray(){const{lng:e,lat:t,alt:r}=this.toLatLng();return[e,t,r]}toCartesian3(){return new a.Cartesian3(this.x,this.y,this.z)}toCartographic(){const e=a.Cartographic.fromCartesian(this.value);return e&&(e.height=Math.round(e.height*1e3)/1e3),e}clone(){return new L(this.value)}isInPolygon(e){e instanceof Ke&&(e=e.points);const t=this.toLatLng();return zn([t.lng,t.lat],e.map(r=>new L(r).toLatLngArray()))}isInCircle(e){e instanceof ui&&(e={point:e.point,radius:e.radius});const{point:t,radius:r}=e;return this.distance(t)<=r}distance(e){return a.Cartesian3.distance(this,new L(e))}isZero(){const{x:e,y:t,z:r}=this;return!e&&!t&&!r}BDToWGS84(){const{lng:e,lat:t,alt:r}=this.toLatLng();let n=_r.BD09ToGCJ02(e,t);return n=_r.GCJ02ToWGS84(n[0],n[1]),this.setValue({lng:n[0],lat:n[1],alt:r}),this}GCJ02ToWGS84(){const{lng:e,lat:t,alt:r}=this.toLatLng();let n=_r.GCJ02ToWGS84(e,t);return this.setValue({lng:n[0],lat:n[1],alt:r}),this}static fromMercator(e,t){return new L(bs.unproject(e),t)}static fromPositions(e){return new L(Xi(e))}toCirclePoints(e){return Mn(ue(N({count:90},e),{position:this}))}}const Ee=ut(Array),Dd=ut(Number),pi=ut(Function),pe=ut(Object),xs=ut(Boolean),xe=ut(String),H=Mt(Gi,Gl),ne=Gi,As=sn(H),Rt=fn(H),Ps=sn(ne);fn(ne);const ie=kc,Ss=Vi(Il,[Mt(ji("."),dn),ri]);Vi(bn(pn(Mt(bn(mc)))),[Mt(ji("."),jl),ri]);const kd=Vi(Lc,[Mt(ji("."),bc),ri,ri]),Bt=An((i,e,t)=>t&&t.getValue?t:i==="label"?Bt(e,t):t),fe=Ac,Id=Sc,Cr=Ll,wr=Cn,Ts=(i,...e)=>(e.forEach(t=>{Object.entries(t).forEach(([r,n])=>{i[r]=n})}),i),br=(i,e,t=!0)=>e[i]?e[i].map(r=>br(i,r,!1)).concat(t?[]:e).flat(1/0):e,xr=function(i,e,{initArgs:t=[],replace:r=!0}={}){var n;for(const s in e)(ne(i[s])||r)&&(i[s]=e[s]);if((n=i._extendInit)==null||n.call(i,...t),i._extendDestroy){const s=i.destroy;i.destroy=()=>{s==null||s.call(this),i._extendDestroy()}}},Ar=function(i,e={},t){if(!!e[i])for(const r of e[i]){if(t(r))return r;const n=Ar(i,r,t);if(n)return n}},et=()=>Math.random().toString(36).substr(2),fi=(i,e,t)=>{const r=i.filter(o=>e.some(l=>t(o,l))),n=i.filter(o=>!r.some(l=>t(l,o)));return{insert:e.filter(o=>!r.some(l=>t(l,o))),remove:n,equal:r.map(o=>({oldVal:i.find(l=>t(l,o)),newVal:e.find(l=>t(l,o))}))}},Od=function(){let i,e;const t=new Promise((r,n)=>{i=r,e=n});return t.reject=e,t.resolve=i,t},Rd=function({type:i,url:e}){return new Promise((t,r)=>{const n=new XMLHttpRequest;n.open(i.toUpperCase(),e,!0),n.onreadystatechange=function(){if(n.readyState===4)if(n.status===200)try{t(JSON.parse(n.responseText))}catch{r("\u89E3\u6790\u5931\u8D25")}else r("\u8BF7\u6C42\u5931\u8D25")},n.send()})},Lt=(i,e)=>(Object.entries(e).forEach(([t,r])=>{i[t]=r}),i);function Ms(i,e){const t=new a.WebMercatorProjection,r=t.project(new L(i).toCartographic());return a.Rectangle.fromCartographicArray([t.unproject({x:r.x-e,y:r.y-e,z:r.z}),t.unproject({x:r.x+e,y:r.y+e,z:r.z})])}function Bd(i){return new Promise((e,t)=>{const r=new XMLHttpRequest;r.open("GET",i,!0),r.responseType="blob",r.onload=function(){this.status===200||this.status===0?e(this.response):t()},r.send()})}const Ld=async i=>{const e=await Bd(i);return zd(e)},zd=i=>{if(!i)return;let e=new FileReader;return new Promise(t=>{const r=()=>{t(e.result),e.removeEventListener("load",r,!1),e=null};e.addEventListener("load",r,!1),e.readAsDataURL(i)})},Pr=window.Cesium;function Es(i,e){const t=i.prototype;i.prototype={};const r=Object.getOwnPropertyNames(t).filter(n=>n!=="constructor").reduce((n,s)=>ue(N({},n),{[s]:Object.getOwnPropertyDescriptor(t,s)}),{});Object.defineProperties(i.prototype,N(N({},r),e))}Es(Pr.MaterialAppearance,{renderState:{get(){return H(this.material.uniforms.depthTest)&&(this._renderState.depthTest.enabled=this.material.uniforms.depthTest),this._renderState}}}),Es(Pr.Resource,{_templateValues:{get(){return N(N({},Pr.Resource.defaultTemplateValues||{}),this.__templateValues)},set(i){this.__templateValues=i}}});const Gd=637099681e-2,Ds=[1289059486e-2,836237787e-2,5591021,348198983e-2,167804312e-2,0],mi=[75,60,45,30,15,0],Hd=[[1410526172116255e-23,898305509648872e-20,-1.9939833816331,200.9824383106796,-187.2403703815547,91.6087516669843,-23.38765649603339,2.57121317296198,-.03801003308653,173379812e-1],[-7435856389565537e-24,8983055097726239e-21,-.78625201886289,96.32687599759846,-1.85204757529826,-59.36935905485877,47.40033549296737,-16.50741931063887,2.28786674699375,1026014486e-2],[-3030883460898826e-23,898305509983578e-20,.30071316287616,59.74293618442277,7.357984074871,-25.38371002664745,13.45380521110908,-3.29883767235584,.32710905363475,685681737e-2],[-1981981304930552e-23,8983055099779535e-21,.03278182852591,40.31678527705744,.65659298677277,-4.44255534477492,.85341911805263,.12923347998204,-.04625736007561,448277706e-2],[309191371068437e-23,8983055096812155e-21,6995724062e-14,23.10934304144901,-.00023663490511,-.6321817810242,-.00663494467273,.03430082397953,-.00466043876332,25551644e-1],[2890871144776878e-24,8983055095805407e-21,-3068298e-14,7.47137025468032,-353937994e-14,-.02145144861037,-1234426596e-14,.00010322952773,-323890364e-14,826088.5]],ks=[[-.0015702102444,111320.7020616939,1704480524535203,-10338987376042340,26112667856603880,-35149669176653700,26595700718403920,-10725012454188240,1800819912950474,82.5],[.0008277824516172526,111320.7020463578,6477955746671607e-7,-4082003173641316e-6,1077490566351142e-5,-1517187553151559e-5,1205306533862167e-5,-5124939663577472e-6,9133119359512032e-7,67.5],[.00337398766765,111320.7020202162,4481351045890365e-9,-2339375119931662e-8,7968221547186455e-8,-1159649932797253e-7,9723671115602145e-8,-4366194633752821e-8,8477230501135234e-9,52.5],[.00220636496208,111320.7020209128,51751.86112841131,3796837749470245e-9,992013.7397791013,-122195221711287e-8,1340652697009075e-9,-620943.6990984312,144416.9293806241,37.5],[-.0003441963504368392,111320.7020576856,278.2353980772752,2485758690035394e-9,6070.750963243378,54821.18345352118,9540.606633304236,-2710.55326746645,1405.483844121726,22.5],[-.0003218135878613132,111320.7020701615,.00369383431289,823725.6402795718,.46104986909093,2351.343141331292,1.58060784298199,8.77738589078284,.37238884252424,7.45]];class Fd{constructor(){this.isWgs84=!1}getDistanceByMC(e,t){if(!e||!t||(e=this.convertMC2LL(e),!e))return 0;let r=this.toRadians(e.lng),n=this.toRadians(e.lat);if(t=this.convertMC2LL(t),!t)return 0;let s=this.toRadians(t.lng),o=this.toRadians(t.lat);return this.getDistance(r,s,n,o)}getDistanceByLL(e,t){if(!e||!t)return 0;e.lng=this.getLoop(e.lng,-180,180),e.lat=this.getRange(e.lat,-74,74),t.lng=this.getLoop(t.lng,-180,180),t.lat=this.getRange(t.lat,-74,74);let r=this.toRadians(e.lng),n=this.toRadians(e.lat),s=this.toRadians(t.lng),o=this.toRadians(t.lat);return this.getDistance(r,s,n,o)}convertMC2LL(e){if(!e)return{lng:0,lat:0};let t={};if(this.isWgs84){t.lng=e.lng/2003750834e-2*180;let s=e.lat/2003750834e-2*180;return t.lat=180/Math.PI*(2*Math.atan(Math.exp(s*Math.PI/180))-Math.PI/2),{lng:t.lng.toFixed(6),lat:t.lat.toFixed(6)}}let r={lng:Math.abs(e.lng),lat:Math.abs(e.lat)},n;for(let s=0;s<Ds.length;s++)if(r.lat>=Ds[s]){n=Hd[s];break}return t=this.convertor(e,n),{lng:t.lng.toFixed(6),lat:t.lat.toFixed(6)}}convertLL2MC(e){if(!e)return{lng:0,lat:0};if(e.lng>180||e.lng<-180||e.lat>90||e.lat<-90)return e;if(this.isWgs84){let s={},o=6378137;s.lng=e.lng*Math.PI/180*o;let l=e.lat*Math.PI/180;return s.lat=o/2*Math.log((1+Math.sin(l))/(1-Math.sin(l))),{lng:parseFloat(s.lng.toFixed(2)),lat:parseFloat(s.lat.toFixed(2))}}e.lng=this.getLoop(e.lng,-180,180),e.lat=this.getRange(e.lat,-74,74);let t={lng:e.lng,lat:e.lat},r;for(let s=0;s<mi.length;s++)if(t.lat>=mi[s]){r=ks[s];break}if(!r){for(let s=0;s<mi.length;s++)if(t.lat<=-mi[s]){r=ks[s];break}}let n=this.convertor(e,r);return{lng:parseFloat(n.lng.toFixed(2)),lat:parseFloat(n.lat.toFixed(2))}}convertor(e,t){if(!e||!t)return{lng:0,lat:0};let r=t[0]+t[1]*Math.abs(e.lng),n=Math.abs(e.lat)/t[9],s=t[2]+t[3]*n+t[4]*n*n+t[5]*n*n*n+t[6]*n*n*n*n+t[7]*n*n*n*n*n+t[8]*n*n*n*n*n*n;return r*=e.lng<0?-1:1,s*=e.lat<0?-1:1,{lng:r,lat:s}}getDistance(e,t,r,n){return Gd*Math.acos(Math.sin(r)*Math.sin(n)+Math.cos(r)*Math.cos(n)*Math.cos(t-e))}toRadians(e){return Math.PI*e/180}toDegrees(e){return 180*e/Math.PI}getRange(e,t,r){return t!=null&&(e=Math.max(e,t)),r!=null&&(e=Math.min(e,r)),e}getLoop(e,t,r){for(;e>r;)e-=r-t;for(;e<t;)e+=r-t;return e}lngLatToMercator(e){return this.convertLL2MC(e)}lngLatToPoint(e){let t=this.convertLL2MC(e);return{x:t.lng,y:t.lat}}mercatorToLngLat(e){return this.convertMC2LL(e)}pointToLngLat(e){let t={lng:e.x,lat:e.y};return this.convertMC2LL(t)}pointToPixel(e,t,r,n){if(!e)return;e=this.lngLatToMercator(e);let s=this.getZoomUnits(t),o=Math.round((e.lng-r.lng)/s+n.width/2),l=Math.round((r.lat-e.lat)/s+n.height/2);return{x:o,y:l}}pixelToPoint(e,t,r,n){if(!e)return;let s=this.getZoomUnits(t),o=r.lng+s*(e.x-n.width/2),l=r.lat-s*(e.y-n.height/2),c={lng:o,lat:l};return this.mercatorToLngLat(c)}getZoomUnits(e){return Math.pow(2,18-e)}}const gi=3.141592653589793*3e3/180,ye=3.141592653589793,Is=6378245,Os=.006693421622965943;class _t{static BD09ToGCJ02(e,t){let r=+e-.0065,n=+t-.006,s=Math.sqrt(r*r+n*n)-2e-5*Math.sin(n*gi),o=Math.atan2(n,r)-3e-6*Math.cos(r*gi),l=s*Math.cos(o),c=s*Math.sin(o);return[l,c]}static GCJ02ToBD09(e,t){t=+t,e=+e;let r=Math.sqrt(e*e+t*t)+2e-5*Math.sin(t*gi),n=Math.atan2(t,e)+3e-6*Math.cos(e*gi),s=r*Math.cos(n)+.0065,o=r*Math.sin(n)+.006;return[s,o]}static WGS84ToGCJ02(e,t){if(t=+t,e=+e,this.out_of_china(e,t))return[e,t];let r=this.delta(e,t);return[e+r[0],t+r[1]]}static GCJ02ToWGS84(e,t){if(t=+t,e=+e,this.out_of_china(e,t))return[e,t];let r=this.delta(e,t),n=e+r[0],s=t+r[1];return[e*2-n,t*2-s]}static delta(e,t){let r=this.transformLng(e-105,t-35),n=this.transformLat(e-105,t-35);const s=t/180*ye;let o=Math.sin(s);o=1-Os*o*o;const l=Math.sqrt(o);return r=r*180/(Is/l*Math.cos(s)*ye),n=n*180/(Is*(1-Os)/(o*l)*ye),[r,n]}static transformLng(e,t){t=+t,e=+e;let r=300+e+2*t+.1*e*e+.1*e*t+.1*Math.sqrt(Math.abs(e));return r+=(20*Math.sin(6*e*ye)+20*Math.sin(2*e*ye))*2/3,r+=(20*Math.sin(e*ye)+40*Math.sin(e/3*ye))*2/3,r+=(150*Math.sin(e/12*ye)+300*Math.sin(e/30*ye))*2/3,r}static transformLat(e,t){t=+t,e=+e;let r=-100+2*e+3*t+.2*t*t+.1*e*t+.2*Math.sqrt(Math.abs(e));return r+=(20*Math.sin(6*e*ye)+20*Math.sin(2*e*ye))*2/3,r+=(20*Math.sin(t*ye)+40*Math.sin(t/3*ye))*2/3,r+=(160*Math.sin(t/12*ye)+320*Math.sin(t*ye/30))*2/3,r}static out_of_china(e,t){return t=+t,e=+e,!(e>73.66&&e<135.05&&t>3.86&&t<53.55)}}class Rs extends Cesium.WebMercatorTilingScheme{constructor(e){super(e);let t=new Fd;this._projection.project=function(s,o){return o=o||{},o=_t.WGS84ToGCJ02(Cesium.Math.toDegrees(s.longitude),Cesium.Math.toDegrees(s.latitude)),o=_t.GCJ02ToBD09(o[0],o[1]),o[0]=Math.min(o[0],180),o[0]=Math.max(o[0],-180),o[1]=Math.min(o[1],74.000022),o[1]=Math.max(o[1],-71.988531),o=t.lngLatToPoint({lng:o[0],lat:o[1]}),new Cesium.Cartesian2(o.x,o.y)},this._projection.unproject=function(s,o){return o=o||{},o=t.mercatorToLngLat({lng:s.x,lat:s.y}),o=_t.BD09ToGCJ02(o.lng,o.lat),o=_t.GCJ02ToWGS84(o[0],o[1]),new Cesium.Cartographic(Cesium.Math.toRadians(o[0]),Cesium.Math.toRadians(o[1]))},this.resolutions=e.resolutions||[];const r=this._projection.unproject(this._rectangleSouthwestInMeters),n=this._projection.unproject(this._rectangleNortheastInMeters);this._rectangle=new Cesium.Rectangle(r.longitude,r.latitude,n.longitude,n.latitude)}tileXYToNativeRectangle(e,t,r,n){const s=this.resolutions[r],o=e*s,l=(e+1)*s,c=((t=-t)+1)*s,h=t*s;return Cesium.defined(n)?(n.west=o,n.south=h,n.east=l,n.north=c,n):new Cesium.Rectangle(o,h,l,c)}positionToTileXY(e,t,r){const n=this._rectangle;if(!Cesium.Rectangle.contains(n,e))return;const o=this._projection.project(e);if(!Cesium.defined(o))return;const l=this.resolutions[t],c=Math.floor(o.x/l),h=-Math.floor(o.y/l);return Cesium.defined(r)?(r.x=c,r.y=h,r):new Cesium.Cartesian2(c,h)}}const Nd="http://shangetu{s}.map.bdimg.com/it/u=x={x};y={y};z={z};v=009;type=sate&fm=46",Ud="http://online{s}.map.bdimg.com/tile/?qt=tile&x={x}&y={y}&z={z}&styles=sl&v=020",Wd="http://api{s}.map.bdimg.com/customimage/tile?&x={x}&y={y}&z={z}&scale=1&customid={style}";class Vd{constructor(e={}){if(this._url=e.style==="img"?Nd:e.style==="vec"?Ud:Wd,this._tileWidth=256,this._tileHeight=256,this._maximumLevel=18,this._crs=e.crs||"BD09",e.crs==="WGS84"){let t=[];for(let r=0;r<19;r++)t[r]=256*Math.pow(2,18-r);this._tilingScheme=new Rs({resolutions:t,rectangleSouthwestInMeters:new Cesium.Cartesian2(-2003772637e-2,-1247410417e-2),rectangleNortheastInMeters:new Cesium.Cartesian2(2003772637e-2,1247410417e-2)})}else this._tilingScheme=new Cesium.WebMercatorTilingScheme({rectangleSouthwestInMeters:new Cesium.Cartesian2(-33554054,-33746824),rectangleNortheastInMeters:new Cesium.Cartesian2(33554054,33746824)});this._rectangle=this._tilingScheme.rectangle,this._credit=void 0,this._style=e.style||"normal"}get url(){return this._url}get token(){return this._token}get tileWidth(){if(!this.ready)throw new Cesium.DeveloperError("tileWidth must not be called before the imagery provider is ready.");return this._tileWidth}get tileHeight(){if(!this.ready)throw new Cesium.DeveloperError("tileHeight must not be called before the imagery provider is ready.");return this._tileHeight}get maximumLevel(){if(!this.ready)throw new Cesium.DeveloperError("maximumLevel must not be called before the imagery provider is ready.");return this._maximumLevel}get minimumLevel(){if(!this.ready)throw new Cesium.DeveloperError("minimumLevel must not be called before the imagery provider is ready.");return 0}get tilingScheme(){if(!this.ready)throw new Cesium.DeveloperError("tilingScheme must not be called before the imagery provider is ready.");return this._tilingScheme}get rectangle(){if(!this.ready)throw new Cesium.DeveloperError("rectangle must not be called before the imagery provider is ready.");return this._rectangle}get ready(){return!!this._url}get credit(){return this._credit}get hasAlphaChannel(){return!0}getTileCredits(e,t,r){}requestImage(e,t,r){if(!this.ready)throw new Cesium.DeveloperError("requestImage must not be called before the imagery provider is ready.");let n=this._tilingScheme.getNumberOfXTilesAtLevel(r),s=this._tilingScheme.getNumberOfYTilesAtLevel(r),o=this._url.replace("{z}",r).replace("{s}",String(1)).replace("{style}",this._style);return this._crs==="WGS84"?o=o.replace("{x}",String(e)).replace("{y}",String(-t)):o=o.replace("{x}",String(e-n/2)).replace("{y}",String(s/2-t-1)),Cesium.ImageryProvider.loadImage(this,o)}}class Bs extends Cesium.WebMercatorTilingScheme{constructor(e){super(e);let t=new Cesium.WebMercatorProjection;this._projection.project=function(r,n){return n=_t.WGS84ToGCJ02(Cesium.Math.toDegrees(r.longitude),Cesium.Math.toDegrees(r.latitude)),n=t.project(new Cesium.Cartographic(Cesium.Math.toRadians(n[0]),Cesium.Math.toRadians(n[1]))),new Cesium.Cartesian2(n.x,n.y)},this._projection.unproject=function(r,n){let s=t.unproject(r);return n=_t.GCJ02ToWGS84(Cesium.Math.toDegrees(s.longitude),Cesium.Math.toDegrees(s.latitude)),new Cesium.Cartographic(Cesium.Math.toRadians(n[0]),Cesium.Math.toRadians(n[1]))}}}const jd="https://webst{s}.is.autonavi.com/appmaptile?style=6&x={x}&y={y}&z={z}",qd="https://webrd{s}.is.autonavi.com/appmaptile?lang=zh_cn&size=1&scale=1&style=8&x={x}&y={y}&z={z}",Qd="https://webst{s}.is.autonavi.com/appmaptile?lang=zh_cn&size=1&scale=1&style=8&x={x}&y={y}&z={z}";class Yd extends Cesium.UrlTemplateImageryProvider{constructor(e={}){e.url=e.style==="img"?jd:e.style==="cva"?Qd:qd,(!e.subdomains||!e.subdomains.length)&&(e.subdomains=["01","02","03","04"]),e.crs==="WGS84"&&(e.tilingScheme=new Bs);super(e)}}const Kd="https://p{s}.map.gtimg.com/sateTiles/{z}/{sx}/{sy}/{x}_{reverseY}.jpg?version=400",Jd="https://rt{s}.map.gtimg.com/tile?z={z}&x={x}&y={reverseY}&styleid={style}&scene=0&version=347";class Xd extends Cesium.UrlTemplateImageryProvider{constructor(e={}){let t=e.style==="img"?Kd:Jd;e.url=t.replace("{style}",e.style||1),(!e.subdomains||!e.subdomains.length)&&(e.subdomains=["0","1","2"]),e.style==="img"&&(e.customTags={sx:(r,n,s,o)=>n>>4,sy:(r,n,s,o)=>(1<<o)-s>>4});super(e)}}const Zd="//t{s}.tianditu.gov.cn/DataServer?T={style}_w&x={x}&y={y}&l={z}&tk={key}";class $d extends Cesium.UrlTemplateImageryProvider{constructor(e={}){super({url:Zd.replace(/\{style\}/g,e.style||"vec").replace(/\{key\}/g,e.key||""),subdomains:["0","1","2","3","4","5","6","7"],tilingScheme:new Cesium.WebMercatorTilingScheme,maximumLevel:(t=e.maximumLevel)!=null?t:18});var t}}const ep="http://mt{s}.google.cn/vt/lyrs=m@207000000&hl=zh-CN&gl=CN&src=app&x={x}&y={y}&z={z}&s=Galile",tp="http://mt{s}.google.cn/vt/lyrs=s&hl=zh-CN&x={x}&y={y}&z={z}&s=Gali",ip="http://mt{s}.google.cn/vt/lyrs=t@131,r@227000000&hl=zh-CN&gl=cn&x={x}&y={y}&z={z}&s=Galile";class rp extends Cesium.UrlTemplateImageryProvider{constructor(e={}){e.url=e.style==="img"?tp:e.style==="ter"?ip:ep,(!e.subdomains||!e.subdomains.length)&&(e.subdomains=["1","2","3"]);super(e)}}a.AmapImageryProvider=Yd,a.BaiduImageryProvider=Vd,a.TencentImageryProvider=Xd,a.TdtImageryProvider=$d,a.GoogleImageryProvider=rp;var np={editorUrl:"http://192.168.0.191/VAPSEarthEditor-local/#/sdk",infoBox:!1,animation:!1,timeline:!1,fullscreenButton:!1,vrButton:!1,geocoder:!1,sceneModePicker:!1,homeButton:!1,navigationHelpButton:!1,baseLayerPicker:!1,selectionIndicator:!1,baseMaps:[{id:2021,name:"\u5929\u5730\u56FE\u5F71\u50CF",icon:a.buildModuleUrl("../img/basemaps/tdt_img.png"),type:"tdt",layer:"img"},{id:1,name:"\u5929\u5730\u56FE\u5F71\u50CF(\u6807\u6CE8)",icon:a.buildModuleUrl("../img/basemaps/tdt_img.png"),type:"group",layers:[{type:"tdt",layer:"img",name:"\u5929\u5730\u56FE\u5F71\u50CF(\u6807\u6CE8)"},{type:"tdt",layer:"cva"}]},{id:3,name:"\u5929\u5730\u56FE\u7535\u5B50",icon:a.buildModuleUrl("../img/basemaps/tdt_vec.png"),type:"group",layers:[{name:"\u5929\u5730\u56FE\u7535\u5B50",type:"tdt",layer:"vec"},{type:"tdt",layer:"cva"}]},{id:4,name:"\u5929\u5730\u56FE\u5730\u5F62",icon:a.buildModuleUrl("../img/basemaps/tdt_vec.png"),type:"tdt",layer:"ter"},{id:5,name:"\u9AD8\u5FB7\u5F71\u50CF",icon:a.buildModuleUrl("../img/basemaps/gaode_img.png"),type:"gaode",layer:"img"},{id:6,name:"\u9AD8\u5FB7\u5F71\u50CF\uFF08\u6807\u6CE8\uFF09",type:"group",icon:a.buildModuleUrl("../img/basemaps/gaode_img.png"),layers:[{name:"\u9AD8\u5FB7\u5F71\u50CF",type:"gaode",layer:"img"},{name:"\u9AD8\u5FB7\u6807\u6CE8",type:"gaode",layer:"cva"}]},{id:7,name:"\u9AD8\u5FB7\u7535\u5B50",type:"gaode",icon:a.buildModuleUrl("../img/basemaps/gaode_vec.png"),layer:"elec"},{id:8,name:"\u767E\u5EA6\u5F71\u50CF",type:"baidu",icon:a.buildModuleUrl("../img/basemaps/bd-img.png"),layer:"img"},{id:9,name:"\u767E\u5EA6\u5F71\u50CF\uFF08\u6807\u6CE8\uFF09",type:"group",icon:a.buildModuleUrl("../img/basemaps/bd-img.png"),layers:[{name:"\u767E\u5EA6\u5F71\u50CF\uFF08\u6807\u6CE8\uFF09",type:"baidu",layer:"img"},{type:"baidu",layer:"vec"}]},{id:10,name:"\u767E\u5EA6\u7535\u5B50",icon:a.buildModuleUrl("../img/basemaps/bd-vec.png"),type:"baidu",layer:"normal"},{id:12,name:"ArcGIS\u5F71\u50CF",icon:a.buildModuleUrl("../img/basemaps/esriWorldImagery.png"),type:"xyz",url:"https://services.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}"},{id:21,name:"\u84DD\u8272\u5E95\u56FE",icon:a.buildModuleUrl("../img/basemaps/bd-c-midnight.png"),type:"xyz",chinaCrs:"GCJ02",url:"http://map.geoq.cn/arcgis/rest/services/ChinaOnlineStreetPurplishBlue/MapServer/tile/{z}/{y}/{x}"},{id:22,name:"\u9ED1\u8272\u5E95\u56FE",icon:a.buildModuleUrl("../img/basemaps/bd-c-dark.png"),type:"xyz",chinaCrs:"GCJ02",url:"https://rt1.map.gtimg.com/tile?z={z}&x={x}&y={reverseY}&styleid=4&scene=0"},{id:19,name:"\u7F51\u683C",type:"grid",backgroundColor:"transparent",icon:a.buildModuleUrl("../img/basemaps/grid.png"),cells:2,color:"rgba(255,255,255,.01)",glowColor:"rgba(255,255,255,.01)",glowWidth:2},{id:0,name:"\u65E0\u5E95\u56FE",type:"none",icon:a.buildModuleUrl("../img/basemaps/none.png")}],imageryProvider:2021,contextOptions:{webgl:{alpha:!0}},scene:{sun:{show:!1},moon:{show:!1},globe:{depthTestAgainstTerrain:!1},postProcessStages:{fxaa:{enabled:!0}},debugShowFramesPerSecond:!1},resolutionScale:window.devicePixelRatio,clock:{currentTime:a.JulianDate.fromDate(new Date("2021/9/01 12:00:00")),shouldAnimate:!1},terrainProviderViewModels:[]};class sp{constructor(e){b(this,"getTileCredits",function(e,t,r){});b(this,"requestImage",function(e,t,r){let n=document.createElement("canvas");if(n.width=256,n.height=256,r<this._minimumLevel||a.defined(this._maximumLevel)&&r>this._maximumLevel)return n;if(this.options.debuggerTileInfo){let s=n.getContext("2d");s.strokeStyle="#ffff00",s.lineWidth=2,s.strokeRect(1,1,255,255);let o=`L${r}X${e}Y${t}`;s.font="bold 25px Arial",s.textAlign="center",s.fillStyle="black",s.fillText(o,127,127),s.fillStyle="#ffff00",s.fillText(o,124,124)}return n});b(this,"_getGridKey",function(e){return`${e.level}_x${e.x}_y${e.y}`});b(this,"addImageryCache",function(e){e.level<this._minimumLevel||e.level<e.maxLevel-1||a.defined(this._maximumLevel)&&e.level>this._maximumLevel||this.options.addImageryCache&&(e.key=this._getGridKey(e),this.options.addImageryCache(e))});b(this,"removeImageryCache",function(e){if((e.maxLevel<this._minimumLevel||a.defined(this._maximumLevel)&&e.level>this._maximumLevel)&&this.options.removeAllImageryCache){this.options.removeAllImageryCache();return}this.options.removeImageryCache&&(e.key=this._getGridKey(e),this.options.removeImageryCache(e))});if(e=a.defaultValue(e,a.defaultValue.EMPTY_OBJECT),this.options=e,this._tileWidth=a.defaultValue(e.tileWidth,256),this._tileHeight=a.defaultValue(e.tileHeight,256),this._minimumLevel=a.defaultValue(e.minimumLevel,0),this._maximumLevel=e.maximumLevel,e.rectangle&&e.rectangle.xmin&&e.rectangle.xmax&&e.rectangle.ymin&&e.rectangle.ymax){let t=e.rectangle.xmin,r=e.rectangle.xmax,n=e.rectangle.ymin,s=e.rectangle.ymax;e.rectangle=a.Rectangle.fromDegrees(t,n,r,s)}this._tilingScheme=a.defaultValue(e.tilingScheme,new a.GeographicTilingScheme({ellipsoid:e.ellipsoid})),this._rectangle=a.defaultValue(e.rectangle,this._tilingScheme.rectangle),this._rectangle=a.Rectangle.intersection(this._rectangle,this._tilingScheme.rectangle),this._hasAlphaChannel=a.defaultValue(e.hasAlphaChannel,!0),this._errorEvent=new a.Event,this._readyPromise=a.when.resolve(!0),this._credit=void 0,this._ready=!0}get url(){return this._url}get token(){return this._token}get proxy(){return this._proxy}get tileWidth(){if(!this._ready)throw new Error("tileWidth must not be called before the imagery provider is ready.");return this._tileWidth}get tileHeight(){if(!this._ready)throw new Error("tileHeight must not be called before the imagery provider is ready.");return this._tileHeight}get maximumLevel(){if(!this._ready)throw new Error("maximumLevel must not be called before the imagery provider is ready.");return this._maximumLevel}get minimumLevel(){if(!this._ready)throw new Error("minimumLevel must not be called before the imagery provider is ready.");return 0}get tilingScheme(){if(!this._ready)throw new Error("tilingScheme must not be called before the imagery provider is ready.");return this._tilingScheme}get rectangle(){if(!this._ready)throw new Error("rectangle must not be called before the imagery provider is ready.");return this._rectangle}get tileDiscardPolicy(){if(!this._ready)throw new Error("tileDiscardPolicy must not be called before the imagery provider is ready.");return this._tileDiscardPolicy}get errorEvent(){return this._errorEvent}get ready(){return this._ready}get readyPromise(){return this._readyPromise.promise}get credit(){return this._credit}get usingPrecachedTiles(){return this._useTiles}get hasAlphaChannel(){return!0}get layers(){return this._layers}}var op={_extendInit(){},_currentMapId:null,getCurrentMapId(){return this.viewer.baseLayerPicker?this._currentMapId:(console.warn("baseLayerPicker \u4E3Atrue \u65F6\uFF0C\u624D\u5B58\u5728currentMapId"),null)},setImagerLayers(i){i.forEach(e=>{this.addBaseMap(e)})},initBaseMaps(i){if(i.baseLayerPicker){const e=this._getImageryProviderArr(i.baseMaps);if(i.imageryProviderViewModels=e,i.imageryProvider){const t=e.find(r=>r.id===i.imageryProvider)||e[0];t&&(i.selectedImageryProviderViewModel=t,this._currentMapId=t.id)}return}if(i.imageryProvider){const e=this.options.baseMaps.find(t=>t.id===i.imageryProvider);e&&setTimeout(()=>{this.addBaseMap(e)},0)}},_getImageryProviderArr(i){let e=[];return i.forEach(t=>{let r=new a.ProviderViewModel({name:t.name||"\u672A\u547D\u540D",tooltip:t.name||"\u672A\u547D\u540D",iconUrl:t.icon||"",creationFunction:t.type==="group"?()=>(setTimeout(()=>{this._currentMapId=t.id,console.log(`\u5F53\u524D\u5730\u56FE\u4E3A ${this._currentMapId}`),this.fire("currentMapIdChange",t.id)},0),t.layers.map(n=>this.createImageryProvider(N({id:t.id,group:t},n)))):()=>(setTimeout(()=>{this._currentMapId=t.id,console.log(`\u5F53\u524D\u5730\u56FE\u4E3A ${this._currentMapId}`),this.fire("currentMapIdChange",t.id)},0),this.createImageryProvider(t))});e.push(r),r.id=t.id}),e},setLayerOptions(i,e={}){if(pe(i)&&(i=i.id),!i)return;this.getImageryLayersById(i).forEach(r=>{Object.entries(e).forEach(([n,s])=>{r[n]=s})});const t=this.getAllImageryLayersConfig().find(r=>r.id===i);t&&(t.layerOptions||(t.layerOptions={}),Object.entries(e).forEach(([r,n])=>{t.layerOptions[r]=n}))},getImageryLayersById(i){return this.getAllImageryLayers().filter(e=>{if(!!e.imageryProvider.config)return e.imageryProvider.config.id===i})},getAllImageryLayers(){const i=[];for(let e=0;e<this.viewer.imageryLayers.length;e++){const t=this.viewer.imageryLayers.get(e);i.push(t)}return i},getAllImageryLayersConfig(){return this.getAllImageryLayers().map(e=>ue(N({},e.imageryProvider.config),{show:e.show})).filter(Boolean).reduce((e,t)=>(e.some(r=>r.id===t.id)||(t.group?e.push(t.group):e.push(t)),e),[])},addBaseMap(i){if(i.id||(i.id=et()),!this.getImageryLayersById(i.id).length){if(i.type==="group")i.layers.forEach(t=>{const r=this.createImageryProvider(ue(N({},t),{id:i.id,group:i})),n=new a.ImageryLayer(r);this.viewer.imageryLayers.add(n)});else{const t=this.createImageryProvider(i),r=new a.ImageryLayer(t);this.viewer.imageryLayers.add(r)}this.options.baseLayerPicker&&(this._currentMapId=i.id,console.log(`\u5F53\u524D\u5730\u56FE\u4E3A ${this._currentMapId}`),this.fire("currentMapIdChange",i.id))}i.layerOptions&&this.setLayerOptions(i.id,i.layerOptions)},createImageryProvider(i){var s,o;if(i.type==="none")return[];let e={};for(let l in i){let c=i[l];if(c!=null)switch(e[l]=c,l){default:break;case"crs":c=`${c}`.toUpperCase(),c=="4326"||c=="EPSG4326"||c=="EPSG:4326"||c=="WGS84"?e.tilingScheme=new a.GeographicTilingScheme({numberOfLevelZeroTilesX:i.numberOfLevelZeroTilesX||2,numberOfLevelZeroTilesY:i.numberOfLevelZeroTilesY||1}):c=="4490"||c=="EPSG4490"||c=="EPSG:4490"?(e.tilingScheme=new a.GeographicTilingScheme({numberOfLevelZeroTilesX:i.numberOfLevelZeroTilesX||2,numberOfLevelZeroTilesY:i.numberOfLevelZeroTilesY||1}),e.is4490=!0):e.tilingScheme=new a.WebMercatorTilingScheme({numberOfLevelZeroTilesX:i.numberOfLevelZeroTilesX||1,numberOfLevelZeroTilesY:i.numberOfLevelZeroTilesY||1});break;case"rectangle":e.rectangle=a.Rectangle.fromDegrees(c.xmin,c.ymin,c.xmax,c.ymax);break}}if(e.chinaCrs==="GCJ02"&&(e.tilingScheme=new Bs),e.chinaCrs==="BD09"){let l=[];for(let c=0;c<19;c++)l[c]=256*Math.pow(2,18-c);e.tilingScheme=new Rs({resolutions:l,rectangleSouthwestInMeters:new a.Cartesian2(-2003772637e-2,-1247410417e-2),rectangleNortheastInMeters:new a.Cartesian2(2003772637e-2,1247410417e-2)})}e.crs=(s=e.crs)!=null?s:"WGS84",e.style=(o=e.style)!=null?o:e.layer,e.is4490&&e.url&&(e.url=e.url.replace("{z}","{z4490}"),e.url=e.url.replace("{arc_z}","{arc_z4490}"),e.url=e.url.replace("{arc_Z}","{arc_Z4490}"));let t,r;switch(e.type_new||e.type){case"single":case"image":t=new a.SingleTileImageryProvider(e);break;case"xyz":case"tile":e.customTags=e.customTags||{},e.customTags["z&1"]=function(l,c,h,u){return u+1},e.customTags.z4490=function(l,c,h,u){return u+1},t=new a.UrlTemplateImageryProvider(e);break;case"wms":t=new a.WebMapServiceImageryProvider(e);break;case"tms":e.url||(e.url=a.buildModuleUrl("Assets/Textures/NaturalEarthII")),t=new a.TileMapServiceImageryProvider(e);break;case"wmts":t=new a.WebMapTileServiceImageryProvider(e);break;case"gee":t=new a.GoogleEarthEnterpriseImageryProvider({metadata:new a.GoogleEarthEnterpriseMetadata(e)});break;case"mapbox":t=new a.MapboxImageryProvider(e);break;case"mapboxstyle":t=new a.MapboxStyleImageryProvider(e);break;case"arcgis":case"arcgis_tile":case"arcgis_dynamic":t=new a.ArcGisMapServerImageryProvider(e);break;case"sm_img":case"supermap_img":t=new a.SuperMapImageryProvider(e);break;case"arcgis_cache":a.UrlTemplateImageryProvider.prototype.padLeft0||(a.UrlTemplateImageryProvider.prototype.padLeft0=function(l,c){l=String(l);let h=l.length;for(;h<c;)l=`0${l}`,h++;return l}),e.customTags={arc_x:function(c,h,u,p){return c.padLeft0(h.toString(16),8)},arc_y:function(c,h,u,p){return c.padLeft0(u.toString(16),8)},arc_z:function(c,h,u,p){return c.padLeft0(p.toString(),2)},arc_z4490:function(c,h,u,p){return c.padLeft0((p+1).toString(),2)},arc_X:function(c,h,u,p){return c.padLeft0(h.toString(16),8).toUpperCase()},arc_Y:function(c,h,u,p){return c.padLeft0(u.toString(16),8).toUpperCase()},arc_Z:function(c,h,u,p){return c.padLeft0(p.toString(),2).toUpperCase()},arc_Z4490:function(c,h,u,p){return c.padLeft0((p+1).toString(),2).toUpperCase()}},t=new a.UrlTemplateImageryProvider(e);break;case"tdt":e.key=dt.tianditu,t=new a.TdtImageryProvider(e);break;case"gaode":t=new a.AmapImageryProvider(e);break;case"baidu":t=new a.BaiduImageryProvider(e);break;case"google":if(i.crs=="4326"||i.crs=="wgs84")switch(e.layer){default:case"img_d":r="https://www.google.cn/maps/vt?lyrs=s&x={x}&y={y}&z={z}";break}else switch(e.layer){case"vec":default:r="https://mt{s}.google.cn/vt/lyrs=m@207000000&hl=zh-CN&gl=CN&src=app&x={x}&y={y}&z={z}&s=Galile";break;case"img_d":r="https://mt{s}.google.cn/vt/lyrs=s&hl=zh-CN&gl=CN&x={x}&y={y}&z={z}&s=Gali";break;case"img_z":r="https://mt{s}.google.cn/vt/imgtp=png32&lyrs=h@207000000&hl=zh-CN&gl=cn&x={x}&y={y}&z={z}&s=Galil";break;case"ter":r="https://mt{s}.google.cn/vt/lyrs=t@131,r@227000000&hl=zh-CN&gl=cn&x={x}&y={y}&z={z}&s=Galile";break}t=new a.UrlTemplateImageryProvider({url:r,subdomains:["1","2","3"],maximumLevel:20});break;case"osm":r="https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png",t=new a.UrlTemplateImageryProvider({url:r,subdomains:"abc",maximumLevel:18});break;case"bing":r="https://dev.virtualearth.net";var n=e.layer||a.BingMapsStyle.Aerial;t=new a.BingMapsImageryProvider({url:r,key:e.key||"AtkX3zhnRe5fyGuLU30uZw8r3sxdBDnpQly7KfFTCB2rGlDgXBG3yr-qEiQEicEc",mapStyle:n});break;case"custom_grid":e.cells=e.cells||2,e.color=a.Color.fromCssColorString(e.color||"rgba(255,255,255,1)"),e.glowWidth=e.glowWidth||3,e.glowColor?e.glowColor=a.Color.fromCssColorString(e.glowColor):e.glowColor=e.color.withAlpha(.3),e.backgroundColor=a.Color.fromCssColorString(e.backgroundColor||"rgba(0,0,0,0)"),t=new a.GridImageryProvider(e);break;case"custom_tilecoord":t=new a.TileCoordinatesImageryProvider(e);break;case"custom_featuregrid":t=new sp(e);break;case"grid":t=new a.GridImageryProvider(ap(e));break;default:console.log("config\u914D\u7F6E\u56FE\u5C42\u672A\u5904\u7406:",i);break}if(t&&(t.config=e),e.chinaCrs==="BD09"&&e.type!=="baidu"){t._rectangle=e.tilingScheme.rectangle;const l=t.requestImage;t.requestImage=function(c,h,u){return l.call(this,c,-h,u)}}return t},hideBaseMap(i){this.getImageryLayersById(i).forEach(e=>{e.show=!1})},showBaseMap(i){const e=this.getImageryLayersById(i);if(!e.length){if(this.options.baseLayerPicker){const t=this.viewer.baseLayerPicker.viewModel.imageryProviderViewModels.find(r=>r.id===i);t&&(this.viewer.baseLayerPicker.viewModel.selectedImagery=t),this._currentMapId=i,console.log(`\u5F53\u524D\u5730\u56FE\u4E3A ${this._currentMapId}`),this.fire("currentMapIdChange",i)}else{const t=this.options.baseMaps.find(r=>r.id===i);t&&this.addBaseMap(t)}return}e.forEach(t=>{t.show=!0})},removeBaseMap(i){const e=this.getImageryLayersById(i);!e||e.forEach(t=>{this.viewer.imageryLayers.remove(t)})}};function ap(i){const e={};for(const t in i)t.endsWith("Color")||t.endsWith("color")?e[t]=i[t]instanceof a.Color?i[t]:a.Color.fromCssColorString(i[t]):e[t]=i[t];return e}const tt={Ready:"ready",Start:"Start",End:"End"},lp={minPointNum:2,maxPointNum:1/0,style:{}};class it extends yt{constructor(r){var n=r,{map:e}=n,t=te(n,["map"]);super();b(this,"graphic",null);b(this,"mousePoint",null);this.options=ie(lp,t),this._map=e,this.points=[],this._initGraphic(),this.state=tt.Ready,this.toolTipMessage=fe(this.constructor.toolTipMessage,this.options.toolTipMessage)}updateToolTip(){const{minPointNum:e,maxPointNum:t}=this.options,r=this.points.length;if(r+1===t){this.tooltip=this.toolTipMessage.startThenEnd;return}if(r===0){this.tooltip=this.toolTipMessage.start;return}if(r>=e-1){this.tooltip=this.toolTipMessage.end;return}if(r<e){this.tooltip=this.toolTipMessage.pending;return}this.tooltip=""}set tooltip(e){this._map.tooltip.text=e}_initGraphic(){}start(){if(this.state===tt.Start)return console.log("\u5DF2\u5904\u4E8Estart\u72B6\u6001"),Promise.reject();this.state=tt.Start,this.fire("drawStart",{target:this.graphic}),this.setCrosshairCursor(!0),this.updateToolTip();let e;return this.drawEventEffect=[this._map.on("click",t=>{const r=t.point;!r||(e=setTimeout(()=>{this.state!==tt.End&&(this.points.push(r),this.updateToolTip(),this.fire("drawPoint",{point:r,points:this.points,target:this.graphic}),this.points.length>=this.options.maxPointNum&&this.end())},0))}),this._map.on("rClick",()=>{if(!this.points.length)return;const t=this.points.pop();this.updateToolTip(),this.fire("drawRemovePoint",{points:this.points,target:this.graphic,point:t})}),this._map.on("mousemove",t=>{const r=t.point;!r||(this.mousePoint=r)}),this._map.on("dbClick",()=>{e&&(clearTimeout(e),e=null),this.end()})],new Promise((t,r)=>{this.once("drawEnd drawCancel",(n,s)=>{s==="drawEnd"&&t(n),s==="drawCancel"&&r("\u53D6\u6D88\u7ED8\u5236")})})}end(){if(this.state!==tt.Start){console.log("\u6267\u884Cdraw end\u65F6\uFF0C\u672A\u5904\u4E8Estart\u72B6\u6001");return}this.state=tt.End,this.drawEventEffect.forEach(n=>n()),this.drawEventEffect=[],this.setCrosshairCursor(!1);const{minPointNum:e,maxPointNum:t}=this.options,r=this.points.length;this.tooltip="",r>=e&&r<=t?(this.fire("drawEnd",{points:this.points,target:this.graphic}),this.fire("drawEndDone",{points:this.points,target:this.graphic})):this.fire("drawCancel",{points:this.points,target:this.graphic})}setCrosshairCursor(e){this._map.setCursor(e?"crosshair":"")}destroy(){this.state!==tt.End&&(console.log("destroy \u4E4B\u524D \u672A\u5904\u4E8Eend\u72B6\u6001"),this.end()),this._map=null,this.options=null,this.graphic=null,super.destroy()}}b(it,"toolTipMessage",{startThenEnd:"\u5355\u51FB \u5B8C\u6210\u7ED8\u5236",start:"\u5355\u51FB \u5F00\u59CB\u7ED8\u5236",pending:"\u5355\u51FB\u589E\u52A0\u70B9\uFF0C\u53F3\u51FB\u5220\u9664\u70B9",end:"\u5355\u51FB\u589E\u52A0\u70B9\uFF0C\u53F3\u51FB\u5220\u9664\u70B9<br/>\u53CC\u51FB\u5B8C\u6210\u7ED8\u5236"});class Sr extends Re{constructor(e){super(e);b(this,"type",R.Billboard);b(this,"resourceStyleFields",["image","url"]);e.primitive?this.primitive={show:this.visible}:this.entity=new a.Entity({billboard:{},show:this.visible})}setStyle(e){super.setStyle(e,this.type)}}class Ls extends Re{constructor(e){super(e);b(this,"type",R.Model);b(this,"resourceStyleFields",["url","uri"]);this.entity=new a.Entity({show:this.visible})}setStyle(e){super.setStyle(e,this.type)}}var cp="data:image/png;base64,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";class hp{constructor(){this.canvas=document.createElement("canvas"),this.ctx=this.canvas.getContext("2d")}_formatExtend(e){if(Dd(e))return new Array(4).fill(e);if(Ee(e)){const[t,r=t,n=t,s=r]=e;return[t,r,n,s]}return new Array(4).fill(0)}_getBoundingRectanglePoints({x:e,y:t,width:r,height:n},s){const[o,l,c,h]=this._formatExtend(s);return{points:[[e+r/2,t+n/2],[e-h,t-o],[e-h,t+n+c-1],[e+r+l-1,t-o],[e+r+l,t+n+c-1]],boundingRectangle:{x:e-h,y:t-o,width:r+h+l,height:n+o+c}}}insert(e,t){const{points:r,boundingRectangle:n}=this._getBoundingRectanglePoints(e,t),s=r.every(([o,l])=>this.ctx.getImageData(o,l,1,1).data[3]!==255);return s&&(this.ctx.fillStyle="#000000",this.ctx.fillRect(n.x,n.y,n.width,n.height),this.ctx.fillStyle="#FF0000",r.forEach(o=>{this.ctx.fillRect(o[0],o[1],1,1)})),s}clear(){const e=document.body.clientWidth,t=document.body.clientHeight;this.canvas.width=e,this.canvas.height=t,this.ctx.clearRect(0,0,e,t)}destroy(){this.canvas=null,this.ctx=null}}function up(i,{className:e,style:t,attribute:r,event:n,container:s,child:o}={}){const l=document.createElement(i);return e&&mp(l,e),t&&ce(l,t),r&&pp(l,r),n&&dp(l,n),s&&s.appendChild(l),o&&(l.innerHTML="",xe(o)?l.innerHTML=o:Ee(o)?o.forEach(c=>{l.appendChild(c)}):l.appendChild(o)),l}function dp(i,e){Object.keys(e).forEach(t=>{zt(i,t,e[t])})}function pp(i,e){Object.keys(e).forEach(t=>{i.setAttribute(t,e[t])})}function zs(i){return typeof HTMLElement=="object"?i instanceof HTMLElement:!!(i&&typeof i=="object"&&(i.nodeType===1||i.nodeType===9)&&typeof i.nodeName=="string")}function fp(i,e){let t=i.className,r=t.split(/\s+/);for(let n=0;n<r.length;n++)if(r[n]==e)return!0;return!1}function ce(i,e){Object.keys(e).forEach(t=>{i.style[t]=e[t]})}function mp(i,e){if(fp(i,e))return;const t=i.className,r=t!=""?" ":"",n=t+r+e;i.className=n}const Gs=function(i,e,t){const r=window.document.createElement(i);return e&&(r.className=e),t&&t.appendChild(r),r},Hs=window.document?window.document.documentElement.style:null;function Fs(i){if(!Hs)return null;for(let e=0;e<i.length;e++)if(i[e]in Hs)return i[e];return i[0]}Fs(["userSelect","MozUserSelect","WebkitUserSelect","msUserSelect"]),Fs(["transform","WebkitTransform"]);const zt=function(i,e,t,r){if(!(!i||!e||!t))return r=r||{},i.addEventListener(e,t,r.capture),()=>{gp(i,e,t,r)}},gp=function(i,e,t,r){!i||!e||!t||(r=r||{},i.removeEventListener(e,t,r.capture))};class vp{constructor(e,t){b(this,"options",{triggerEvents:["cameraMoveEnd","cameraChanged"],label:!0,point:!0,billboard:!0});this.dataSource=e,this._map=t,this.avoidTest=new hp,this._resizeCancel=zt(window,"resize",()=>{this.update()})}setOptions(e){this.options=fe(this.options,e),this.update(),this._cancels&&(this._cancels.forEach(t=>t()),this._cancels=null),this._cancels=this.options.triggerEvents.map(t=>this._map.on(t,()=>{this.update()}))}update(){this.avoidTest.clear(),this._getPrimitives().forEach(t=>{const r=this.avoidTest.insert(t.boundingSphere,this.options.extend);t.primitive.clusterShow=r,t.label&&(t.label.clusterShow=r)})}_getPrimitives(){const e=[],t=this.dataSource._entityCluster;if(this.options.billboard&&t._billboardCollection)for(let r=0;r<t._billboardCollection.length;r++){const n=t._billboardCollection.get(r),s=n.computeScreenSpacePosition(this._map.scene);if(!s)continue;const o={primitive:n,boundingSphere:a.Billboard.getScreenSpaceBoundingBox(n,s)};t._labelCollection&&(o.label=t._labelCollection._labels.find(l=>l.id===n.id)),e.push(o)}if(this.options.point&&t._pointCollection)for(let r=0;r<t._pointCollection.length;r++){const n=t._pointCollection.get(r),s=n.computeScreenSpacePosition(this._map.scene);if(!s)continue;const o={primitive:n,boundingSphere:a.PointPrimitive.getScreenSpaceBoundingBox(n,s)};t._labelCollection&&(o.label=t._labelCollection._labels.find(l=>l.id===n.id)),e.push(o)}if(this.options.label&&t._labelCollection)for(let r=0;r<t._labelCollection.length;r++){const n=t._labelCollection.get(r);if(e.find(o=>o.label===n))continue;const s=n.computeScreenSpacePosition(this._map.scene);!s||e.push({primitive:n,boundingSphere:a.Label.getScreenSpaceBoundingBox(n,s)})}return e}destroy(){this.dataSource&&(this._getPrimitives().forEach(t=>{t.primitive.clusterShow=!0}),this.dataSource=null),this.avoidTest&&(this.avoidTest.destroy(),this.avoidTest=null),this._resizeCancel&&(this._resizeCancel(),this._resizeCancel=null),this._cancels&&(this._cancels.map(e=>e()),this.cancel=null),this._map&&(this._map=null)}}class rt extends Qe{constructor(e={}){const{id:t=et(),graphics:r,clustering:n,avoid:s,attr:o,visible:l=!0}=e;super();b(this,"type",R.Group);b(this,"options",{});b(this,"graphics",[]);b(this,"_dataSourceCollection",[]);this.options=e,this.id=t,this.visible=l,this.primitive=new a.PrimitiveCollection,this.dataSource=new a.CustomDataSource,this.billboardCollection=new a.BillboardCollection,this.primitive.add(this.billboardCollection),this.labelCollection=new a.LabelCollection,this.primitive.add(this.labelCollection),this.polylineCollection=new a.PolylineCollection,this.primitive.add(this.polylineCollection),this.pointPrimitiveCollection=new a.PointPrimitiveCollection,this.primitive.add(this.pointPrimitiveCollection),r&&r.length&&r.forEach(this.addGraphic.bind(this)),H(n)&&this.setClustering(n),H(s)&&this.setAvoid(s),o&&(this.attr=o),this.visible===!1&&this.hide()}get attr(){return this.options.attr||{}}set attr(e){this.options.attr=e||{}}setAttr(e){H(e)&&(this.options.attr=ie(this.attr,e))}avoidUpdate(){this._avoid&&this._avoid.update()}async setAvoid(e){if(!ne(e)){if(this._map||await new Promise(t=>{this.once("addToMap",t)}),xs(e)&&(e={enabled:e}),e.enabled){this._avoid||(this._avoid=new vp(this.dataSource,this._map)),this._avoid.setOptions(e);return}this._avoid&&(this._avoid.destroy(),this._avoid=null)}}setClustering(e){if(ne(e))return;xs(e)&&(e={enabled:e});const s=e,{enabled:t=!0,style:r=o=>({billboard:{show:!0,image:cp,verticalOrigin:"CENTER",width:40,height:40,eyeOffset:[0,0,-100]},label:{text:`${o>99?"99+":o}`,fontSize:15,verticalOrigin:"CENTER",horizontalOrigin:"CENTER",visibleDepth:!1}})}=s,n=te(s,["enabled","style"]);this._clustringRemoveListener&&this._clustringRemoveListener(),this._clustringRemoveListener=this.dataSource.clustering.clusterEvent.addEventListener((o,l)=>{l.billboard.attr={isCluster:!0},l.label.attr={isCluster:!0},l.point.attr={isCluster:!0};const{billboard:c,label:h,point:u}=r(o.length,o,l);c&&Lt(l.billboard,Ce(c,R.Billboard)),h&&Lt(l.label,Ce(h,R.Label)),u&&Lt(l.point,Ce(u,R.Point))}),this.dataSource.clustering.enabled=t,Lt(this.dataSource.clustering,n)}_addedHook(){super._addedHook(),this.graphics.forEach(e=>{e._onAddToMap(this._map)}),this.once("destroy",this._map.on("click",e=>{var t,r;((r=(t=e.target)==null?void 0:t.attr)==null?void 0:r.isCluster)&&this.fire("cluster-click",e)})),this.fire("addToMap")}addTo(e){return e.addGraphic(this),this}addGraphics(e){return e.map(t=>this.addGraphic(t))}get ContainerMap(){return{[R.Billboard]:this.billboardCollection,[R.Label]:this.labelCollection,[R.Point]:this.pointPrimitiveCollection,[R.Polyline]:this.polylineCollection}}addGraphic(e){if(pi(e)&&(e=e(this)),e._parent&&console.warn("graphic \u5DF2\u5B58\u5728 parent",e),e instanceof Array)return e.map(r=>this.addGraphic(r));if(!(e instanceof Qe)){const t=e,{type:r,on:n}=t,s=te(t,["type","on"]),o=wi[r];if(!o){console.warn(`\u4E0D\u5B58\u5728type\u4E3A${r}\u7684graphic`);return}e=new o(s),n&&Object.entries(n).forEach(([l,c])=>{e.on(l,c)})}if(e.entity&&this.dataSource.entities.add(e.entity),e.primitive){const r=this.ContainerMap[e.type]||this.primitive;e.primitive=r.add(e.primitive)}return e.dataSource&&(this._map?this._map.viewer.dataSources.add(e.dataSource):this.once("addToMap",()=>{this._map.viewer.dataSources.add(e.dataSource)}),this._dataSourceCollection.push(e.dataSource),e.dataSource.show=this.isRealVisible),this.graphics.push(e),this.state===de.ADDED&&e._onAddToMap(this._map),e._parent=this,e}removeGraphic(e){if(e instanceof Array){e.forEach(r=>{this.removeGraphic(r)});return}e instanceof Qe||(e=this.getGraphic(e));const t=this.graphics.findIndex(r=>r===e);if(t!==-1){if(e.entity&&this.dataSource.entities.remove(e.entity),e.primitive&&(this.ContainerMap[e.type]||this.primitive).remove(e.primitive),e.dataSource){this._map&&this._map.viewer.dataSources.remove(e.dataSource);const r=this._dataSourceCollection.find(n=>n===e.dataSource);r!==-1&&this._dataSourceCollection.splice(r,1)}this.graphics.splice(t,1),[de.DESTROYED,de.REMOVED].includes(e.state)||e.destroy()}}getAllGraphics(){return br("graphics",this)}getGraphic(e){return Ar("graphics",this,t=>t.id===e)}show(){this.dataSource.show=!0,this.primitive.show=!0,this.visible=!0,this._dataSourceCollection.forEach(e=>{e.show=!0})}hide(){this.dataSource.show=!1,this.primitive.show=!1,this.visible=!1,this._dataSourceCollection.forEach(e=>{e.show=this.isRealVisible})}get isRealVisible(){let e=this,t=!0;for(;e;)!ne(e.visible)&&!e.visible&&(t=!1),e=e._parent;return t}destroy(){[...this.graphics].forEach(e=>{e.destroy()}),this._parent&&this._parent.removeGraphic(this),this._clustringRemoveListener&&this._clustringRemoveListener(),this._dataSourceCollection&&(this._dataSourceCollection=null)}removeAllGraphic(){[...this.graphics].forEach(e=>{e.destroy()})}toGeoJson(){return{type:"FeatureCollection",features:this.graphics.map(e=>{var t;return(t=e.toGeoJson)==null?void 0:t.call(e)}).filter(Boolean)}}async loadGeoJson(e,t){let r=[];if(xe(e))try{r=await a.Resource.fetchJson({url:e})}catch(n){console.warn(n),r=[]}return pe(e)&&(r=e),this.loadFeature(r,t)}loadFeature(e,t={}){var c,h,u,p,d,f,m,g,w;if(!e)return;if(Ee(e))return e.map(x=>this.loadFeature(x,t));if(!pe(e))return;if(e.type==="FeatureCollection")return e.features.map(x=>this.loadFeature(x,t));if(e.type!=="Feature")return;const{geometry:{type:r,coordinates:n}={},properties:s={}}=e,o=t.onCreateGraphic||((x,y)=>y);let l=[];return r==="Point"&&l.push(o({type:r,coordinates:n,properties:s},{type:(h=(c=t.point)==null?void 0:c.type)!=null?h:"point",attr:s,position:n,style:(u=t.point)==null?void 0:u.style})),r==="MultiPoint"&&(l=n.map(x=>{var y,v,_;return o({type:r,coordinates:x,properties:s,group:this},{type:(v=(y=t.point)==null?void 0:y.type)!=null?v:"point",attr:s,position:x,style:(_=t.point)==null?void 0:_.style})})),r==="LineString"&&l.push(o({type:r,coordinates:n,properties:s},{type:(d=(p=t.polyline)==null?void 0:p.type)!=null?d:"polyline",attr:s,positions:n,style:(f=t.polyline)==null?void 0:f.style})),r==="MultiLineString"&&(l=n.map(x=>{var y,v,_;return o({type:r,coordinates:x,properties:s,group:this},{type:(v=(y=t.polyline)==null?void 0:y.type)!=null?v:"polyline",attr:s,positions:x,style:(_=t.polyline)==null?void 0:_.style})})),r==="Polygon"&&l.push(o({type:r,coordinates:n,properties:s},{type:(g=(m=t.polygon)==null?void 0:m.type)!=null?g:"polygon",attr:s,positions:n[0].slice(0,-1),style:(w=t.polygon)==null?void 0:w.style})),r==="MultiPolygon"&&(l=n.map(x=>{var y,v,_;return o({type:r,coordinates:x,properties:s,group:this},{type:(v=(y=t.polygon)==null?void 0:y.type)!=null?v:"polygon",attr:s,positions:x[0].slice(0,-1),style:(_=t.polygon)==null?void 0:_.style})})),this.addGraphics(l.filter(Boolean))}updateGraphics(e){const{insert:t,remove:r,equal:n}=fi(this.graphics,e,(s,o)=>s.id===o.id);return t.forEach(s=>{this.addGraphic(s)}),r.forEach(s=>{this.removeGraphic(s)}),n.forEach(({oldVal:s,newVal:o})=>{if(o.type===R.Group){s.updateGraphics(o.graphics);return}s.setOptions(o)}),this}async toJSON(){return{attr:this.attr,type:this.type,graphics:await Promise.all(this.graphics.map(e=>e.toJSON()))}}toData(){return this.graphics.map(e=>e.toData())}appendTo(e){if(e===this)return;let t=this.state;this.state=de.REMOVED,this._parent&&(this._parent.primitive.destroyPrimitives=!1,this._parent.removeGraphic(this),this._parent.primitive.destroyPrimitives=!0),e.addGraphic(this),this.state=t}}class Ns extends rt{constructor(e){super(e);b(this,"type",R.RoamLine);this.options=e,this._bindFloorControl(),console.warn("RoamLineGraphic\u7C7B\u5C06\u5728\u4E0B\u4E00\u4E2A\u5927\u7248\u672C\u79FB\u9664\uFF0C\u8BF7\u4F7F\u7528AnimteGraphgic\u7C7B\u66FF\u6362")}_addedHook(){super._addedHook();const e=this._map,{autoplay:t=!0}=this.options.style,r=this.options;this._ani=new _s(e,{speed:r.style.speed,duration:r.style.duration,loop:r.style.loop}),r.positions.forEach(s=>{this.add(s)}),["endItem","end","start","update"].forEach(s=>{this._ani.on(s,(...o)=>{this.fire(s,...o)})});const n=this;this.graphics.forEach(s=>{s.position=this._ani.property,s.orientation=new Proxy(this._ani.orientation,{get(o,l){return l==="getValue"?function(c){const h=Tn(n._ani.property.getValue(c),Reflect.get(o,l).apply(this,arguments));return h.pitch=a.Math.toRadians(0),a.Transforms.headingPitchRollQuaternion(n._ani.property.getValue(c),h)}:Reflect.get(o,l)}})}),t&&this.start()}_bindFloorControl(){const e=this.options.floorControl;e&&(this.once("destroy",e.on("floorHeightChange",()=>{this.refreshPosition()})),this.once("destroy",e.on("focusFloorChange",()=>{this._refreshGraphicInBuilding(),this.refreshPosition()})),this.once("destroy",e.on("focusBuildingChange",()=>{this._refreshGraphicInBuilding(),this.refreshPosition()})),this.on("endItem",()=>{this._refreshGraphicInBuilding()}))}_refreshGraphicInBuilding(){var l,c,h,u,p,d;const e=this.options.floorControl;if(!e)return;const t=this.positions[this.currentIndex];if(!t)return;const{focusBuildingId:r,focusFloorId:n}=e,{buildingId:s,floor:o}=t;!s||s===r&&(!n||n===o)?((l=this.model)==null||l.show(),(c=this.div)==null||c.show(),(h=this.billboard)==null||h.show()):((u=this.model)==null||u.hide(),(p=this.div)==null||p.hide(),(d=this.billboard)==null||d.hide())}add(e){const t=this.options.floorControl;if(!t)return this._ani.add(e);const r=()=>new L(e.value?pi(e.value)?e.value():e.value:e),n={getValue(){let l=0;if(n.buildingId&&n.buildingId===t.focusBuildingId&&e.floor&&(l=(e.floor-1)*t.floorHeight),!(t.focusFloorId&&t.focusFloorId<e.floor))return r().addHeight(l)},attr:e,floor:e.floor},s=r(),o=t.options.buildings.find(l=>s.isInPolygon(l.buildingRegion.coordinates[0]));return o&&(n.buildingId=o.id),this._ani.add(n)}restart(){var e;(e=this._ani)==null||e.restart()}start(){var e;(e=this._ani)==null||e.start()}pause(){var e;(e=this._ani)==null||e.pause()}proceed(){var e;(e=this._ani)==null||e.proceed()}get animateState(){var e;return(e=this._ani)==null?void 0:e.state}reset(){var e;(e=this._ani)==null||e.reset()}get positions(){var e;return(e=this._ani)==null?void 0:e.positions}get currentIndex(){var e;return(e=this._ani)==null?void 0:e.currentIndex}refreshPosition(...e){var t;return(t=this._ani)==null?void 0:t.refreshPosition(...e)}}class Tr extends Re{constructor(e){super(e);b(this,"type",R.DivPoint);b(this,"_forceUpdate",!1);this._init()}_updatePosition(){if(this.style.clampToTerrain){this.clampToTerrain();return}super._updatePosition()}_addedHook(){super._addedHook();const e=this._map;e.viewer.container.appendChild(this._dom),this.once("destroy",()=>{this._map.viewer.container.removeChild(this._dom)}),this.once("destroy",e.on("preRender",this.postRenderHandler.bind(this)))}setStyle(e,t=this.type){this.options.style=ie(this.options.style,e),this.graphicStyle=Ce(this.options.style,t);const{html:r,hasEvent:n=!1,zIndex:s}=this.graphicStyle,o=this._dom;zs(r)?(o.innerHTML="",o.appendChild(r)):o.innerHTML=r,ce(o,{position:"absolute",left:0,top:0,zIndex:s,"pointer-events":n?"auto":"none"});const{clampToGround:l,addHeight:c,setHeight:h}=e;Rt([l,c,h])&&this._updatePosition(),this.render()}render(){var v,_,P,O;const e=this._map.viewer.scene,t=this._map.viewer.camera,r=this.point,{depthTest:n=!0}=this.graphicStyle;if(!r){ce(this._dom,{display:"none"});return}if(n&&e.mode===a.SceneMode.SCENE3D){const W=new a.EllipsoidalOccluder(e.globe.ellipsoid,e.camera.positionWC).isPointVisible(r);ce(this._dom,{display:W?"block":"none"})}const s=a.SceneTransforms.wgs84ToWindowCoordinates(e,r),o=e.mode===a.SceneMode.SCENE3D?a.Cartesian3.distance(r,t.positionWC):t.positionCartographic.height;if(!s||this.graphicStyle.distanceDisplayCondition&&(this.graphicStyle.distanceDisplayCondition.near>o||this.graphicStyle.distanceDisplayCondition.far<o)){ce(this._dom,{display:"none"});return}if(!s)return;const l=this._dom.offsetHeight,c=this._dom.offsetWidth;let h=s.x,u=s.y;const{horizontalOrigin:p,verticalOrigin:d,pixelOffset:f}=this.graphicStyle,m={[a.HorizontalOrigin.LEFT]:{handler:k=>k,axis:"left"},[a.HorizontalOrigin.CENTER]:{handler:k=>k-c/2,axis:"center"},[a.HorizontalOrigin.RIGHT]:{handler:k=>k-c,axis:"right"}},g={[a.VerticalOrigin.CENTER]:{handler:k=>k-l/2,axis:"center"},[a.VerticalOrigin.TOP]:{handler:k=>k,axis:"top"},[a.VerticalOrigin.BOTTOM]:{handler:k=>k-l,axis:"bottom"},[a.VerticalOrigin.BASELINE]:{handler:k=>k-l,axis:"bottom"}};if(h=(_=(v=m[p])==null?void 0:v.handler(h))!=null?_:h,u=(O=(P=g[d])==null?void 0:P.handler(u))!=null?O:u,f){const{x:k=0,y:W=0}=f;h+=k,u+=W}let w=this.graphicStyle.scale;if(this.graphicStyle.scaleByDistance){const k=this.graphicStyle.scaleByDistance;o<=k.near?w*=k.nearValue:o>k.near&&o<k.far?w*=k.nearValue+(k.farValue-k.nearValue)*(o-k.near)/(k.far-k.near):w*=k.farValue}const x=`matrix(${w},0,0,${w},${h},${u})`,y=[m[p].axis,g[d].axis].join(" ");this._map.once("postRender",()=>{ce(this._dom,{transform:x,"transform-origin":y,"-ms-transform":x,"-ms-transform-origin":y,"-webkit-transform":x,"-webkit-transform-origin":y,"-moz-transform":x,"-moz-transform-origin":y,"-o-transform":x,"-o-transform-origin":y})})}postRenderHandler({camera:e}){if(!this.visible||!this.point||!this.isRealVisible){ce(this._dom,{display:"none"});return}const t=this.point,r=[this._map.viewer.container.clientWidth,this._map.viewer.container.clientHeight,t.x,t.y,t.z,e.positionWC.x,e.positionWC.y,e.positionWC.z,e.heading,e.pitch,e.roll].join("-");r!==this._camera_cache&&(this._camera_cache=r,this.render())}_init(){this._dom=Gs("div")}addTo(e){return e.addGraphic(this),this}show(){this._dom&&(this.visible=!0,ce(this._dom,{display:"block"}))}hide(){this._dom&&(this.visible=!1,ce(this._dom,{display:"none"}))}set text(e){this.setStyle({html:`<div style="background: rgba(0,0,0,.8);border-radius: 3px;padding:2px 6px;font-size:10px;color: #fff;">${e}</div>`})}async toJSON(){const e=await super.toJSON(),t=a.buildModuleUrl("../plugin/html2canvas.esm.js"),{default:r}=await import(t),n=await r(this._dom,{allowTaint:!0,backgroundColor:null});return e.style.html=`<img src="${n.toDataURL()}"/>`,e.style.hasEvent=!1,e}}class vi{constructor({target:e,transform:t}={}){this.target=e,this.inverseTransform=a.Matrix4.inverseTransformation(t,new a.Matrix4)}clip(e){return this.clear(),e.length&&this.booleanClockwise(e)&&(e=e.reverse()),this.addClippingPlanes(e),this}addClippingPlanes(e){let t=this.inverseTransform,r=e.length,n,s,o,l=[];for(let c=0;c<r;++c){let h=(c+1)%r;n=e[c],s=e[h],wr(n,s)||(o=this.createPlane(n,s,t),l.push(o))}this.target.clippingPlanes=new a.ClippingPlaneCollection({planes:l,edgeWidth:0,edgeColor:a.Color.WHITE})}getOriginCoordinateSystemPoint(e,t){return a.Matrix4.multiplyByPoint(t,e,new a.Cartesian3(0,0,0))}createPlane(e,t,r){let n=this.getOriginCoordinateSystemPoint(e,r),s=this.getOriginCoordinateSystemPoint(t,r),o=new a.Cartesian3(0,0,10),l=a.Cartesian3.subtract(s,n,new a.Cartesian3),c=a.Cartesian3.cross(l,o,new a.Cartesian3);c=a.Cartesian3.normalize(c,c);let h=a.Plane.fromPointNormal(n,c);return a.ClippingPlane.fromPlane(h)}booleanClockwise(e){const t=a.Cartesian3.subtract(e[0],e[1],new a.Cartesian3),r=a.Cartesian3.subtract(e[0],e[2],new a.Cartesian3);return t.z=0,r.z=0,a.Cartesian3.cross(t,r,new a.Cartesian3).z<0}cartesian3ToDegrees(e){let t=a.Cartographic.fromCartesian(e);return[a.Math.toDegrees(t.longitude),a.Math.toDegrees(t.latitude)]}clear(){!this.target||(this.target.clippingPlanes=new a.ClippingPlaneCollection({planes:[],edgeWidth:1,edgeColor:a.Color.WHITE}))}destroy(){this.target&&(this.clear(),this.target=null)}}var yp=`
void fragmentMain(FragmentInput fsInput, inout czm_modelMaterial material)
{
vec4 position = czm_inverseModelView * vec4(fsInput.attributes.positionEC,1); // \u4F4D\u7F6E
// \u6CE8\u610Fshader\u4E2D\u5199\u6D6E\u70B9\u6570\u662F\uFF0C\u4E00\u5B9A\u8981\u5E26\u5C0F\u6570\u70B9\uFF0C\u5426\u5219\u4F1A\u62A5\u9519\uFF0C\u6BD4\u59820\u9700\u8981\u5199\u62100.0\uFF0C1\u8981\u5199\u62101.0
float _baseHeight = 0.0; // \u7269\u4F53\u7684\u57FA\u7840\u9AD8\u5EA6\uFF0C\u9700\u8981\u4FEE\u6539\u6210\u4E00\u4E2A\u5408\u9002\u7684\u5EFA\u7B51\u57FA\u7840\u9AD8\u5EA6
float _heightRange = 60.0; // \u9AD8\u4EAE\u7684\u8303\u56F4(_baseHeight ~ _baseHeight + _heightRange)
float _glowRange = 100.0; // \u5149\u73AF\u7684\u79FB\u52A8\u8303\u56F4(\u9AD8\u5EA6)
// \u5EFA\u7B51\u57FA\u7840\u8272
float mars_height = position.z - _baseHeight;
float mars_a11 = fract(czm_frameNumber / 120.0) * 3.14159265 * 2.0;
float mars_a12 = mars_height / _heightRange + sin(mars_a11) * 0.1;
material.diffuse = vec3(1.0, 1.0, 1.0); // \u989C\u8272
material.diffuse *= vec3(mars_a12);// \u6E10\u53D8
// \u52A8\u6001\u5149\u73AF
float time = fract(czm_frameNumber / 360.0);
time = abs(time - 0.5) * 2.0;
float mars_h = clamp(mars_height / _glowRange, 0.0, 1.0);
float mars_diff = step(0.005, abs(mars_h - time));
material.diffuse += material.diffuse * (1.0 - mars_diff);
} `,_p=`
void fragmentMain(FragmentInput fsInput, inout czm_modelMaterial material)
{
vec3 finalColor = material.diffuse;
vec3 rgba = material.diffuse;
//\u8C03\u6574\u4EAE\u5EA6
finalColor = finalColor * brightness;
//\u8C03\u6574\u9971\u548C\u5EA6
float luminance = 0.2125 * rgba.r + 0.7154 * rgba.g + 0.0721 * rgba.b;
vec3 saturationTarget = vec3(luminance, luminance, luminance);
finalColor = mix(saturationTarget, finalColor, saturation);
//\u8C03\u6574\u5BF9\u6BD4\u5EA6
vec3 contrastTarget = vec3(0.5,0.5,0.5);
finalColor = mix(contrastTarget, finalColor, contrast);
material.diffuse = finalColor;
} `;class yi extends Ke{constructor(e){super(e);b(this,"type",R.Tileset);b(this,"resourceStyleFields",["url","uri"]);b(this,"sceneTreePromise",Od());b(this,"_color",{conditions:[]});b(this,"_height",0);b(this,"_positionEdit",null);this.style.url||console.warn("tilest url is required\uFF01"),this.primitive=new a.Cesium3DTileset(N({},Ce(this.style,this.type))),this._getSceneTree(),this.primitive.readyPromise.then(()=>{this.fire("ready"),(e.position||e.rotate)&&this.moveTo(e.position,e.rotate)}),["allTilesLoaded","initialTilesLoaded","tileFailed","tileLoad","tileUnload"].forEach(t=>{this.primitive[t].addEventListener((...r)=>{this.fire(t,...r)})})}_getTileProperty(e){if(!(e.content&&e.content.featuresLength))return;const t=e.content.featuresLength,r=[];for(let n=0;n<t;n++){const s=e.content.getFeature(n),o=s.getPropertyNames();r.push(o.reduce((l,c)=>ue(N({},l),{[c]:s.getProperty(c),feature:s}),{}))}return r}getAllPropertyWithTile(){return this.primitive._root.children.map(e=>{const t=this._getTileProperty(e);return{tile:e,property:t}}).filter(e=>e&&e.property&&e.property.length>0)}getAllProperty(){return this.primitive._root.children.map(this._getTileProperty).filter(e=>e&&e.length>0)}async _getSceneTree(){try{const e=await Rd({type:"GET",url:this.style.url.replace(/tileset.json/g,"scenetree.json")});this.sceneTree=e.scenes,this.sceneTreePromise.resolve()}catch{this.sceneTree=[],this.sceneTreePromise.resolve()}}findElementByName(e,t=this.sceneTree){for(const r of t){if(r.name===e)return r;if(r.children){const n=this.findElementByName(e,r.children);if(n)return n}}}locateScene(e,t={}){var o;if(xe(e)&&(e=this.findElementByName(e)),!e)return;const r=e.sphere,n=this.primitive;if(!r||r[3]<=0)return;let s=new a.Cartesian3(r[0],r[1],r[2]);try{let l=n._root.transform;l=a.Matrix4.inverse(l,new a.Matrix4);let c=n.root.computedTransform,h=a.Matrix4.multiply(c,l,new a.Matrix4);s=a.Matrix4.multiplyByPoint(h,s,new a.Cartesian3),this._map.viewer.camera.flyToBoundingSphere(new a.BoundingSphere(s,(o=t.range)!=null?o:r[3]+t.offsetRange||0),N({duration:.5},t)),t.lookAt&&this._map.viewer.camera.lookAt(s)}catch{}}_addedHook(){super._addedHook(),this.setStyle(this.style)}flyTo(e){return this.primitive.readyPromise.then(()=>{super.flyTo(e)}),this}get boundingSphere(){try{return this.primitive.boundingSphere}catch{return null}}get readyPromise(){return Promise.all([this.primitive.readyPromise,this.sceneTreePromise])}get point(){return new L(Cp(this.primitive))}get center(){return this.point}get position(){return this.point}set position(e){this.moveTo(e)}get hpr(){const{heading:e,roll:t,pitch:r}=a.Transforms.fixedFrameToHeadingPitchRoll(this.primitive.root.transform);return{heading:a.Math.toDegrees(e),roll:a.Math.toDegrees(t),pitch:a.Math.toDegrees(r)}}set hpr(e){this.rotate(e)}rotate(e){this.moveTo(null,e)}async moveTo(e,t={}){var c,h,u,p,d,f;await this.readyPromise;const r=new L(e||this.point);if(r.isZero())return;const n=this.hpr,s=(h=(c=t.heading)!=null?c:t.rotateZ)!=null?h:n.heading,o=(p=(u=t.pitch)!=null?u:t.rotateY)!=null?p:n.pitch,l=(f=(d=t.roll)!=null?d:t.rotateX)!=null?f:n.roll;if(!r.isZero()){this._position=e;const{modelMatrix:m,transform:g}=jc(r,{heading:s,pitch:o,roll:l},this.primitive);H(m)&&this.setStyle({modelMatrix:m}),H(g)&&(this.primitive.root.transform=g),requestAnimationFrame(()=>{e&&this.fire("update:position",this.point),t&&this.fire("update:hpr",this.hpr)})}return this}setColorStyle(e=this._color,t){H(e)&&(this._color=Cr(e)),xe(e)&&(e={conditions:[["true",e]]}),Ee(t)&&(e.conditions=[...t,...e.conditions]);const r=this.primitive.style||new a.Cesium3DTileStyle;return r.color=e,this.primitive.style=null,this.primitive.style=r,this}setShowStyle(e){const t=this.primitive.style||new a.Cesium3DTileStyle;return t.show=e,this.primitive.style=null,this.primitive.style=t,this}async setStyle(e={}){var u;if(!this.primitive)return;this.options.style=ie(this.style,e),this.fire("update:style",this.style);const h=Ce(this.options.style,this.type),{modelMatrix:t,color:r,opacity:n,height:s,leJzwStyle:o,visualImpact:l}=h,c=te(h,["modelMatrix","color","opacity","height","leJzwStyle","visualImpact"]);if(H(t)&&(this.primitive.modelMatrix=t),Rt([r,n])&&this.setColorStyle(`color('${r.toCssColorString()}')`),H(e.visualImpact))if(this.primitive.enableModelExperimental=!0,a.ExperimentalFeatures&&(a.ExperimentalFeatures.enableModelExperimental=!0),pe(l)){const{brightness:p=1,saturation:d=1,contrast:f=1,light:m}=l;if((u=this.primitive.customShader)==null?void 0:u.isVisualImpact)this.primitive.customShader.setUniform("brightness",p),this.primitive.customShader.setUniform("saturation",d),this.primitive.customShader.setUniform("contrast",f);else{const g={fragmentShaderText:_p,uniforms:{brightness:{type:a.UniformType.FLOAT,value:p},saturation:{type:a.UniformType.FLOAT,value:d},contrast:{type:a.UniformType.FLOAT,value:f}}};H(m)&&(g.lightingModel=m?a.LightingModel.PBR:a.LightingModel.UNLIT),this.primitive.customShader=new a.CustomShader(g)}this.primitive.customShader.isVisualImpact=!0}else this.primitive.customShader=void 0;if(H(e.leJzwStyle)&&(a.ExperimentalFeatures&&(a.ExperimentalFeatures.enableModelExperimental=!0),this.primitive.enableModelExperimental=!0,o?this.primitive.customShader=new a.CustomShader({lightingModel:a.LightingModel.UNLIT,fragmentShaderText:xe(o)?o:yp}):this.primitive.customShader=void 0),Object.entries(c).forEach(([p,d])=>{this.primitive[p]=d}),H(e.clampToGround)){if(e.clampToGround){this.clampToGround();return}this.setHeight(this.style.height||0);return}H(s)&&this.setHeight(s)}clampToGround(){this.primitive.readyPromise.then(()=>{this.point.clampToTerrain(this._map,{async:!0}).then(t=>{t.addHeight(-1e3);const r=this.distanceSquaredTo(t)-this._height,n=1e3-r;console.log(`\u8C03\u6574\u9AD8\u5EA6\u4E3A${n}`),this.setHeight(n)})})}get height(){return this.point.height}setHeight(e){ne(e)||(this._height=e,this.readyPromise.then(()=>{const t=this.primitive,r=t.boundingSphere,n=a.Cartographic.fromCartesian(r.center),s=a.Cartesian3.fromRadians(n.longitude,n.latitude,0),o=a.Cartesian3.fromRadians(n.longitude,n.latitude,e),l=a.Cartesian3.subtract(o,s,new a.Cartesian3),c=this.style.modelMatrix?a.Matrix4.fromArray(this.style.modelMatrix):a.Matrix4.IDENTITY;t.modelMatrix=a.Matrix4.multiply(c,a.Matrix4.fromTranslation(l),new a.Matrix4),requestAnimationFrame(()=>{this.fire("update:position",this.point)})}))}distanceSquaredTo(e){if(!e)return;const t=new L(e);return Math.sqrt(this.primitive._root.boundingVolume.boundingVolume.distanceSquaredTo(t))}clip(e,{terrain:t=!1}={}){this.tilesetClip&&(this.tilesetClip.destroy(),this.tilesetClip=null),this.globeClip&&(this.globeClip.destroy(),this.globeClip=null),!!(e&&e.length)&&(this.tilesetClip=new vi({target:this.primitive,transform:a.Transforms.eastNorthUpToFixedFrame(this.point)}).clip(e.reverse().map(r=>new L(r))),t&&Promise.all(e.reverse().map(r=>new L(r).clampToTerrain(this._map,{async:!0}))).then(r=>{this.globeClip=new vi({target:this._map.globe,transform:a.Matrix4.IDENTITY}).clip(r)}),this.once("destroy",()=>{this.tilesetClip&&(this.tilesetClip.destroy(),this.tilesetClip=null),this.globeClip&&(this.globeClip.destroy(),this.globeClip=null)}))}get boundingPoints(){return qc(this.primitive.root.boundingVolume.boundingVolume).map(e=>new L(e))}get isPositionEditing(){return!!this._positionEdit}startPositionEdit(e){!this._map||(this._positionEdit=new vr({map:this._map,graphic:this,log:e}))}stopPositionEdit(){this._positionEdit&&(this._positionEdit.destroy(),this._positionEdit=null)}}function Cp(i){var n;let e={};const t=(n=i.root)==null?void 0:n.transform;if(t&&!t.equals(a.Matrix4.IDENTITY)){let s=i.root.computedTransform,o=a.Matrix4.getTranslation(s,new a.Cartesian3),l=a.Cartographic.fromCartesian(o);a.defined(l)&&(e.lng=Number(a.Math.toDegrees(l.longitude).toFixed(6)),e.lat=Number(a.Math.toDegrees(l.latitude).toFixed(6)),e.alt=Number(l.height.toFixed(2)))}else{let o=i.boundingSphere.center,l=a.Cartographic.fromCartesian(o),c=Number(l.height.toFixed(2)),h=Number(a.Math.toDegrees(l.longitude).toFixed(6)),u=Number(a.Math.toDegrees(l.latitude).toFixed(6));e={lng:h,lat:u,alt:c}}return e}class Us extends Re{constructor(e){super(e);b(this,"type",R.Path);this.entity=new a.Entity({show:this.visible})}setStyle(e){super.setStyle(e,this.type)}}class _i extends Re{constructor(e){super(e);b(this,"type",R.Label);e.primitive?this.primitive={show:this.visible}:this.entity=new a.Entity({show:this.visible})}setStyle(e){super.setStyle(e,this.type)}get text(){return this.style.text}set text(e){this.setStyle({text:e})}}class Mr extends Re{constructor(e){super(e);b(this,"type",R.Point);e.primitive?this.primitive={show:this.visible}:this.entity=new a.Entity({show:this.visible})}setStyle(e,t=this.type){super.setStyle(e,t)}}class Ct extends Ke{constructor(e){super(e);b(this,"isPointsGraphic",!0);const{positions:t=[]}=e;this._positions=t}get positions(){return this._positions}set positions(e){var t;this.options.positions=e,(t=this._updatePosition)==null||t.call(this),this.fire("update:positions",this.hpr)}get points(){const e=this.positions;return e.getValue?this._map?this._positions.getValue(this._map.viewer.clock.currentTime).map(t=>new L(t)):[]:e.map(t=>new L(t))}get boundingSphere(){return a.BoundingSphere.fromPoints(this.points)}get center(){return this.points.length?new L(Xi(this.points)):null}_addedHook(){super._addedHook(),this.setStyle(this.style);const{clampToGround:e,addHeight:t,setHeight:r}=this.style;Ps([e,t,r])&&this._updatePosition()}setStyle(e,t){super.setStyle(e,t);const{clampToGround:r,addHeight:n,setHeight:s,height:o}=e;Rt([r,n,s,o])&&this._updatePosition()}_updatePosition(){const e=this.options.positions;if(!e){this._positions=e;return}if(e.getValue){this._positions=e;return}const{setHeight:t,addHeight:r}=this.style;e.length?this._positions=e.map(n=>new L(n,{setHeight:t,addHeight:r})):this._positions=e,this.entity&&this.style.label&&(this.style.clampToGround?this.center.clampToGround(this._map,{async:!0}).then(n=>{this.entity.position=n}):this.entity.position=this.center)}}class Er extends Ct{constructor(e){super(e);b(this,"type",R.Polyline);e.primitive?this.primitive={show:this.visible}:this.entity=new a.Entity({polyline:{},show:this.visible})}setStyle(e){super.setStyle(e,this.type)}_updatePosition(){super._updatePosition();const e=this.positions;this.entity&&(this.entity.polyline.positions=e)}toGeoJson(){return Gn(this.points.map(e=>e.toLatLngArray()),{attr:this.attr,style:this.style,type:this.type})}}const wp={style:{point:{show:!0,pixelSize:10,color:"#3388ff",outline:!0,outlineColor:"#ffffff",outlineOpacity:.6,outlineWidth:2},polyline:{show:!0,lineType:"solid",color:"#3388ff",width:2},polygon:{show:!0,lineType:"solid",color:"#3388ff",width:2}}};class Ws extends Ke{constructor(e={}){super(Bt(wp,e));b(this,"type",R.GeoJson);this.dataSource=new a.GeoJsonDataSource,this.setOptions(e)}setOptions(e){(e.url||e.data)&&(this.readyPromise=this.dataSource.load(e.url||e.data),e.url&&(this.options.url=e.url),e.data&&(this.options.data=e.data),e.style||this.setStyle()),super.setOptions(e)}async setStyle(e={}){!this.dataSource||(await this.readyPromise,this.readyPromise.then(t=>{this.options.style=Bt(this.style,e);const r=Ce(this.options.style,this.type),n=[R.Polyline,R.Polygon,R.Point].reduce((s,o)=>(r[o]&&(s[o]=Ce(r[o],o)),s),{});t.entities.values.forEach(s=>{var o;if(s.billboard&&(s.billboard=void 0,s.point={}),this.options.polygonToPolyline&&s.polygon){const l=s.polygon.hierarchy.getValue().positions;s.polyline={positions:l.concat((o=l[0])!=null?o:[])}}Object.entries(n).forEach(([l,c])=>{s[l]&&Object.keys(c).forEach(h=>{s[l][h]=c[h]})})})}))}async toJSON(){const e=await super.toJSON();return this.options.url&&(e.url=this.options.url),this.options.data&&(e.data=this.options.data),e}toData(){return this.options.url||this.options.data||""}get boundingSphere(){return this._map?this._map.getBoundingSphere(this.dataSource.entities.values):new a.BoundingSphere}}class Dr extends Ct{constructor(e={}){super(e);b(this,"type",R.Polygon);this.entity=new a.Entity({polygon:{},polyline:{arcType:a.ArcType.GEODESIC},show:this.visible})}setStyle(e){super.setStyle(e,this.type),this._updateHelperLineStyle(),this.graphicStyle.clampToGround?this.entity.polyline.arcType=a.ArcType.GEODESIC:this.entity.polyline.arcType=this.graphicStyle.height!==void 0?a.ArcType.GEODESIC:a.ArcType.NONE}_updatePosition(){super._updatePosition();const e=this.positions;this.entity&&(this.entity.polygon.show=!!(e&&e.length||e&&e.getValue),this.entity.polygon.hierarchy=e,this.entity.position=this.center,ne(this.graphicStyle.extrudedHeight)&&(e&&e.getValue?this.entity.polyline.positions=new a.CallbackProperty(()=>{const{positions:t}=e.getValue();return[...t,t[0]].filter(Boolean)},!1):this.entity.polyline.positions=e&&[...e,e[0]].map(t=>new L(t,{setHeight:this.style.height}))))}get points(){return this._positions?this._positions.getValue?this._map?this._positions.getValue(this._map.viewer.clock.currentTime).positions.map(e=>new L(e)):[]:this._positions.map(e=>new L(e,{addHeight:this.style.addHeight,setHeight:this.style.setHeight})):[]}toGeoJson(){return ph(this.points.map(e=>e.toLatLngArray()),{attr:this.attr,style:this.style,type:this.type})}}class Vs extends Re{constructor(e){super(e);b(this,"type",R.Box);this.entity=new a.Entity({show:this.visible})}setStyle(e){super.setStyle(e,this.type)}}class js extends Ct{constructor(e){super(e);b(this,"type",R.Corridor);this.entity=new a.Entity({corridor:{},show:this.visible})}setStyle(e){super.setStyle(e,this.type)}_updatePosition(){super._updatePosition();const e=this.positions;this.entity&&(this.entity.corridor.positions=e)}}class qs extends Re{constructor(e){super(e);b(this,"type",R.Cylinder);this.entity=new a.Entity({show:this.visible})}setStyle(e){super.setStyle(e,this.type)}}class Qs extends Ct{constructor(e){super(e);b(this,"type",R.PolylineVolume);this.entity=new a.Entity({polylineVolume:{},show:this.visible})}setStyle(e){super.setStyle(e,this.type)}_updatePosition(){super._updatePosition();const e=this.positions;this.entity&&(this.entity.polylineVolume.positions=e)}}class Ci extends Ct{constructor(e){super(e);b(this,"type",R.Rectangle);this.entity=new a.Entity({rectangle:{},polyline:{arcType:a.ArcType.RHUMB},show:this.visible})}set positions(e){this._positions=e,this.options.positions=e,this._updatePosition&&this._updatePosition()}get rectangle(){return this.entity.rectangle.coordinates.getValue(this._map.viewer.clock.currentTime)}get boundingPoints(){let e=this.rectangle;return e?[a.Rectangle.southeast(e),a.Rectangle.northeast(e),a.Rectangle.northwest(e),a.Rectangle.southwest(e)].map(t=>new L(t)):[]}get positions(){const e=this.rectangle;return e?[a.Rectangle.northwest(e),a.Rectangle.southeast(e)].map(t=>new L(t)):[]}setStyle(e){super.setStyle(e,this.type),this._updateHelperLineStyle()}_updatePosition(){let e=this._positions;if(this.entity&&(e instanceof Array&&(e=a.Rectangle.fromCartesianArray(e.map(t=>new L(t)))),this.entity.rectangle.coordinates=e,ne(this.graphicStyle.extrudedHeight)))if(e&&e.getValue){const t=this;this.entity.polyline.positions=new a.CallbackProperty(()=>{const r=this.boundingPoints;return r.concat(r[0]).map(n=>new L(n,{setHeight:t.style.height}))},!1)}else{const t=this.boundingPoints;this.entity.polyline.positions=t.concat(t[0]).map(r=>new L(r,{setHeight:this.style.height}))}}}class kr extends Ct{constructor(e){super(e);b(this,"type",R.Wall);this.entity=new a.Entity({wall:{positions:this.positions},show:this.visible})}setStyle(e){var t,r,n;if(H(e.diffHeight)||H(e.height)){const s=(t=e.closure)!=null?t:this.style.closure,o=(r=e.height)!=null?r:this.style.height,l=(n=e.diffHeight)!=null?n:this.style.diffHeight;if(this.positions.getValue)e.minimumHeights=new a.CallbackProperty(()=>{const c=this.points;return(s?c.concat(c[0]):c).filter(Boolean).map(h=>o!=null?o:h.height)},!1),e.maximumHeights=new a.CallbackProperty(()=>{const c=this.points;return(s?c.concat(c[0]):c).filter(Boolean).map(h=>(o!=null?o:h.height)+l)},!1);else{const c=this.points;e.minimumHeights=(s?c.concat(c[0]):c).filter(Boolean).map(h=>o!=null?o:h.height),e.maximumHeights=(s?c.concat(c[0]):c).filter(Boolean).map(h=>(o!=null?o:h.height)+l)}}super.setStyle(e,this.type),e.closure&&this._updatePosition()}_updatePosition(){super._updatePosition();const e=this.positions;this.entity&&(this.graphicStyle.closure&&e&&!e.getValue?this.entity.wall.positions=[...e,e[0]].filter(Boolean):this.graphicStyle.closure?this.entity.wall.positions=new a.CallbackProperty((...t)=>{const r=e.getValue(...t);return r&&[...r,r[0]].filter(Boolean)},!1):this.entity.wall.positions=e)}}class Ys extends Re{constructor(e){super(e);b(this,"type",R.Plane);this.entity=new a.Entity({show:this.visible})}setStyle(e){super.setStyle(e,this.type)}}(function(i,e,t){typeof module!="undefined"&&module.exports?module.exports=t():typeof define=="function"&&define.amd?define(t):e[i]=t()})("h337",window,()=>{let i={defaultRadius:40,defaultRenderer:"canvas2d",defaultGradient:{.25:"rgb(0,0,255)",.55:"rgb(0,255,0)",.85:"yellow",1:"rgb(255,0,0)"},defaultMaxOpacity:1,defaultMinOpacity:0,defaultBlur:.85,defaultXField:"x",defaultYField:"y",defaultValueField:"value",plugins:{}},e=function(){let c=function(p){this._coordinator={},this._data=[],this._radi=[],this._min=10,this._max=1,this._xField=p.xField||p.defaultXField,this._yField=p.yField||p.defaultYField,this._valueField=p.valueField||p.defaultValueField,p.radius&&(this._cfgRadius=p.radius)},h=i.defaultRadius;return c.prototype={_organiseData(u,p){let d=u[this._xField],f=u[this._yField],m=this._radi,g=this._data,w=this._max,x=this._min,y=u[this._valueField]||1,v=u.radius||this._cfgRadius||h;g[d]||(g[d]=[],m[d]=[]),g[d][f]?g[d][f]+=y:(g[d][f]=y,m[d][f]=v);let _=g[d][f];return _>w?(p?this.setDataMax(_):this._max=_,!1):_<x?(p?this.setDataMin(_):this._min=_,!1):{x:d,y:f,value:y,radius:v,min:x,max:w}},_unOrganizeData(){let u=[],p=this._data,d=this._radi;for(let f in p)for(let m in p[f])u.push({x:f,y:m,radius:d[f][m],value:p[f][m]});return{min:this._min,max:this._max,data:u}},_onExtremaChange(){this._coordinator.emit("extremachange",{min:this._min,max:this._max})},addData(){if(arguments[0].length>0){let u=arguments[0],p=u.length;for(;p--;)this.addData.call(this,u[p])}else{let u=this._organiseData(arguments[0],!0);u&&(this._data.length===0&&(this._min=this._max=u.value),this._coordinator.emit("renderpartial",{min:this._min,max:this._max,data:[u]}))}return this},setData(u){let p=u.data,d=p.length;this._data=[],this._radi=[];for(let f=0;f<d;f++)this._organiseData(p[f],!1);return this._max=u.max,this._min=u.min||0,this._onExtremaChange(),this._coordinator.emit("renderall",this._getInternalData()),this},removeData(){},setDataMax(u){return this._max=u,this._onExtremaChange(),this._coordinator.emit("renderall",this._getInternalData()),this},setDataMin(u){return this._min=u,this._onExtremaChange(),this._coordinator.emit("renderall",this._getInternalData()),this},setCoordinator(u){this._coordinator=u},_getInternalData(){return{max:this._max,min:this._min,data:this._data,radi:this._radi}},getData(){return this._unOrganizeData()}},c}(),t=function(){let c=function(d){let f=d.gradient||d.defaultGradient,m=document.createElement("canvas"),g=m.getContext("2d");m.width=256,m.height=1;let w=g.createLinearGradient(0,0,256,1);for(let x in f)w.addColorStop(x,f[x]);return g.fillStyle=w,g.fillRect(0,0,256,1),g.getImageData(0,0,256,1).data},h=function(d,f){let m=document.createElement("canvas"),g=m.getContext("2d"),w=d,x=d;if(m.width=m.height=d*2,f==1)g.beginPath(),g.arc(w,x,d,0,2*Math.PI,!1),g.fillStyle="rgba(0,0,0,1)",g.fill();else{let y=g.createRadialGradient(w,x,d*f,w,x,d);y.addColorStop(0,"rgba(0,0,0,1)"),y.addColorStop(1,"rgba(0,0,0,0)"),g.fillStyle=y,g.fillRect(0,0,2*d,2*d)}return m},u=function(d){let f=[],m=d.min,g=d.max,w=d.radi;var d=d.data;let x=Object.keys(d),y=x.length;for(;y--;){let v=x[y],_=Object.keys(d[v]),P=_.length;for(;P--;){let O=_[P],k=d[v][O],W=w[v][O];f.push({x:v,y:O,value:k,radius:W})}}return{min:m,max:g,data:f}};function p(d){let f=d.container,m=this.shadowCanvas=document.createElement("canvas"),g=this.canvas=d.canvas||document.createElement("canvas");this._renderBoundaries=[1e4,1e4,0,0];let w=getComputedStyle(d.container)||{};g.className="heatmap-canvas",this._width=g.width=m.width=d.width||+w.width.replace(/px/,""),this._height=g.height=m.height=d.height||+w.height.replace(/px/,""),this.shadowCtx=m.getContext("2d"),this.ctx=g.getContext("2d"),g.style.cssText=m.style.cssText="position:absolute;left:0;top:0;",f.style.position="relative",f.appendChild(g),this._palette=c(d),this._templates={},this._setStyles(d)}return p.prototype={renderPartial(d){d.data.length>0&&(this._drawAlpha(d),this._colorize())},renderAll(d){this._clear(),d.data.length>0&&(this._drawAlpha(u(d)),this._colorize())},_updateGradient(d){this._palette=c(d)},updateConfig(d){d.gradient&&this._updateGradient(d),this._setStyles(d)},setDimensions(d,f){this._width=d,this._height=f,this.canvas.width=this.shadowCanvas.width=d,this.canvas.height=this.shadowCanvas.height=f},_clear(){this.shadowCtx.clearRect(0,0,this._width,this._height),this.ctx.clearRect(0,0,this._width,this._height)},_setStyles(d){this._blur=d.blur==0?0:d.blur||d.defaultBlur,d.backgroundColor&&(this.canvas.style.backgroundColor=d.backgroundColor),this._width=this.canvas.width=this.shadowCanvas.width=d.width||this._width,this._height=this.canvas.height=this.shadowCanvas.height=d.height||this._height,this._opacity=(d.opacity||0)*255,this._maxOpacity=(d.maxOpacity||d.defaultMaxOpacity)*255,this._minOpacity=(d.minOpacity||d.defaultMinOpacity)*255,this._useGradientOpacity=!!d.useGradientOpacity},_drawAlpha(d){let f=this._min=d.min,m=this._max=d.max;var d=d.data||[];let g=d.length,w=1-this._blur;for(;g--;){let y=d[g],v=y.x,_=y.y,P=y.radius,O=Math.min(y.value,m),k=v-P,W=_-P,U=this.shadowCtx;var x;this._templates[P]?x=this._templates[P]:this._templates[P]=x=h(P,w);let C=(O-f)/(m-f);U.globalAlpha=C<.01?.01:C,U.drawImage(x,k,W),k<this._renderBoundaries[0]&&(this._renderBoundaries[0]=k),W<this._renderBoundaries[1]&&(this._renderBoundaries[1]=W),k+2*P>this._renderBoundaries[2]&&(this._renderBoundaries[2]=k+2*P),W+2*P>this._renderBoundaries[3]&&(this._renderBoundaries[3]=W+2*P)}},_colorize(){let d=this._renderBoundaries[0],f=this._renderBoundaries[1],m=this._renderBoundaries[2]-d,g=this._renderBoundaries[3]-f,w=this._width,x=this._height,y=this._opacity,v=this._maxOpacity,_=this._minOpacity,P=this._useGradientOpacity;d<0&&(d=0),f<0&&(f=0),d+m>w&&(m=w-d),f+g>x&&(g=x-f);let O=this.shadowCtx.getImageData(d,f,m,g),k=O.data,W=k.length,U=this._palette;for(let S=3;S<W;S+=4){let z=k[S],A=z*4;if(!!A){var C;y>0?C=y:z<v?z<_?C=_:C=z:C=v,k[S-3]=U[A],k[S-2]=U[A+1],k[S-1]=U[A+2],k[S]=P?U[A+3]:C}}this.ctx.putImageData(O,d,f),this._renderBoundaries=[1e3,1e3,0,0]},getValueAt(d){let f,w=this.shadowCtx.getImageData(d.x,d.y,1,1).data[3],x=this._max,y=this._min;return f=Math.abs(x-y)*(w/255)>>0,f},getDataURL(){return this.canvas.toDataURL()}},p}(),r=function(){let c=!1;return i.defaultRenderer==="canvas2d"&&(c=t),c}(),n={merge(){let l={},c=arguments.length;for(let h=0;h<c;h++){let u=arguments[h];for(let p in u)l[p]=u[p]}return l}},s=function(){let c=function(){function d(){this.cStore={}}return d.prototype={on(f,m,g){let w=this.cStore;w[f]||(w[f]=[]),w[f].push(x=>m.call(g,x))},emit(f,m){let g=this.cStore;if(g[f]){let w=g[f].length;for(let x=0;x<w;x++)g[f][x](m)}}},d}(),h=function(p){let d=p._renderer,f=p._coordinator,m=p._store;f.on("renderpartial",d.renderPartial,d),f.on("renderall",d.renderAll,d),f.on("extremachange",g=>{p._config.onExtremaChange&&p._config.onExtremaChange({min:g.min,max:g.max,gradient:p._config.gradient||p._config.defaultGradient})}),m.setCoordinator(f)};function u(){let p=this._config=n.merge(i,arguments[0]||{});if(this._coordinator=new c,p.plugin){let d=p.plugin;if(i.plugins[d]){let f=i.plugins[d];this._renderer=new f.renderer(p),this._store=new f.store(p)}else throw new Error(`Plugin '${d}' not found. Maybe it was not registered.`)}else this._renderer=new r(p),this._store=new e(p);h(this)}return u.prototype={addData(){return this._store.addData.apply(this._store,arguments),this},removeData(){return this._store.removeData&&this._store.removeData.apply(this._store,arguments),this},setData(){return this._store.setData.apply(this._store,arguments),this},setDataMax(){return this._store.setDataMax.apply(this._store,arguments),this},setDataMin(){return this._store.setDataMin.apply(this._store,arguments),this},configure(p){return this._config=n.merge(this._config,p),this._renderer.updateConfig(this._config),this._coordinator.emit("renderall",this._store._getInternalData()),this},repaint(){return this._coordinator.emit("renderall",this._store._getInternalData()),this},getData(){return this._store.getData()},getDataURL(){return this._renderer.getDataURL()},getValueAt(p){return this._store.getValueAt?this._store.getValueAt(p):this._renderer.getValueAt?this._renderer.getValueAt(p):null}},u}();return{create(l){return new s(l)},register(l,c){i.plugins[l]=c}}});class Ks extends Ci{_getMRect(e){let t=this._WMP.project(a.Rectangle.southwest(e)),r=this._WMP.project(a.Rectangle.northeast(e));return{west:t.x,south:t.y,east:r.x,north:r.y}}_getRect(e){var c;const t=a.Rectangle.fromCartesianArray(e.map(h=>new L(h.position))),{x:r,y:n,width:s,height:o}=a.BoundingRectangle.fromRectangle(t,this._WMP),l=(c=this.style.radius)!=null?c:40;return a.Rectangle.fromCartographicArray([this._WMP.unproject({x:r-l,y:n-l}),this._WMP.unproject({x:r+s-l,y:n-l}),this._WMP.unproject({x:r+s+l,y:n+o+l}),this._WMP.unproject({x:r+l,y:n+o+l})])}setPositions(e){var s,o;if(!this._map){console.warn("\u8BF7\u5148\u6DFB\u52A0\u5230 map\u4E2D");return}this._heat||(this._heat=this._createHeatMap());const t=this._getRect(e),r=this._getMRect(t),n=Math.min(this._width/Math.abs(r.west-r.east),this._height/Math.abs(r.north-r.south));console.log({max:(s=this.options.style.max)!=null?s:Math.max(...e.map(l=>l.value)),data:e.map(l=>{const{x:c,y:h}=this._WMP.project(new L(l.position).toCartographic());return{x:Math.round(Math.abs(c-r.west)*n),y:Math.round(Math.abs(h-r.north)*n),value:l.value}})}),this._heat.setData({max:(o=this.options.style.max)!=null?o:Math.max(...e.map(l=>l.value)),data:e.map(l=>{const{x:c,y:h}=this._WMP.project(new L(l.position).toCartographic());return{x:Math.round(Math.abs(c-r.west)*n),y:Math.round(Math.abs(h-r.north)*n),value:l.value}})}),this.setStyle({clampToGround:!0,material:{type:"Image",image:this._heat._renderer.canvas}}),this.positions=a.Rectangle.fromCartographicArray([this._WMP.unproject({x:r.west,y:r.north}),this._WMP.unproject({x:r.west+this._width/n,y:r.north-this._height/n})])}_createHeatMap(){this._WMP=new a.WebMercatorProjection;const e=document.createElement("div");return this._width=this._map.viewer.canvas.width,this._height=this._map.viewer.canvas.height,e.setAttribute("style",`width:${this._width}px;height:${this._height}px;margin: 0px;display:none;`),document.body.appendChild(e),this.once("destroy",()=>{document.body.removeChild(e)}),window.h337.create(N({container:e},this.style))}}var Gt={Linear:{None:function(i){return i}},Quadratic:{In:function(i){return i*i},Out:function(i){return i*(2-i)},InOut:function(i){return(i*=2)<1?.5*i*i:-.5*(--i*(i-2)-1)}},Cubic:{In:function(i){return i*i*i},Out:function(i){return--i*i*i+1},InOut:function(i){return(i*=2)<1?.5*i*i*i:.5*((i-=2)*i*i+2)}},Quartic:{In:function(i){return i*i*i*i},Out:function(i){return 1- --i*i*i*i},InOut:function(i){return(i*=2)<1?.5*i*i*i*i:-.5*((i-=2)*i*i*i-2)}},Quintic:{In:function(i){return i*i*i*i*i},Out:function(i){return--i*i*i*i*i+1},InOut:function(i){return(i*=2)<1?.5*i*i*i*i*i:.5*((i-=2)*i*i*i*i+2)}},Sinusoidal:{In:function(i){return 1-Math.cos(i*Math.PI/2)},Out:function(i){return Math.sin(i*Math.PI/2)},InOut:function(i){return .5*(1-Math.cos(Math.PI*i))}},Exponential:{In:function(i){return i===0?0:Math.pow(1024,i-1)},Out:function(i){return i===1?1:1-Math.pow(2,-10*i)},InOut:function(i){return i===0?0:i===1?1:(i*=2)<1?.5*Math.pow(1024,i-1):.5*(-Math.pow(2,-10*(i-1))+2)}},Circular:{In:function(i){return 1-Math.sqrt(1-i*i)},Out:function(i){return Math.sqrt(1- --i*i)},InOut:function(i){return(i*=2)<1?-.5*(Math.sqrt(1-i*i)-1):.5*(Math.sqrt(1-(i-=2)*i)+1)}},Elastic:{In:function(i){return i===0?0:i===1?1:-Math.pow(2,10*(i-1))*Math.sin((i-1.1)*5*Math.PI)},Out:function(i){return i===0?0:i===1?1:Math.pow(2,-10*i)*Math.sin((i-.1)*5*Math.PI)+1},InOut:function(i){return i===0?0:i===1?1:(i*=2,i<1?-.5*Math.pow(2,10*(i-1))*Math.sin((i-1.1)*5*Math.PI):.5*Math.pow(2,-10*(i-1))*Math.sin((i-1.1)*5*Math.PI)+1)}},Back:{In:function(i){var e=1.70158;return i*i*((e+1)*i-e)},Out:function(i){var e=1.70158;return--i*i*((e+1)*i+e)+1},InOut:function(i){var e=1.70158*1.525;return(i*=2)<1?.5*(i*i*((e+1)*i-e)):.5*((i-=2)*i*((e+1)*i+e)+2)}},Bounce:{In:function(i){return 1-Gt.Bounce.Out(1-i)},Out:function(i){return i<1/2.75?7.5625*i*i:i<2/2.75?7.5625*(i-=1.5/2.75)*i+.75:i<2.5/2.75?7.5625*(i-=2.25/2.75)*i+.9375:7.5625*(i-=2.625/2.75)*i+.984375},InOut:function(i){return i<.5?Gt.Bounce.In(i*2)*.5:Gt.Bounce.Out(i*2-1)*.5+.5}}},Ht;typeof self=="undefined"&&typeof process!="undefined"&&process.hrtime?Ht=function(){var i=process.hrtime();return i[0]*1e3+i[1]/1e6}:typeof self!="undefined"&&self.performance!==void 0&&self.performance.now!==void 0?Ht=self.performance.now.bind(self.performance):Date.now!==void 0?Ht=Date.now:Ht=function(){return new Date().getTime()};var nt=Ht,Js=function(){function i(){this._tweens={},this._tweensAddedDuringUpdate={}}return i.prototype.getAll=function(){var e=this;return Object.keys(this._tweens).map(function(t){return e._tweens[t]})},i.prototype.removeAll=function(){this._tweens={}},i.prototype.add=function(e){this._tweens[e.getId()]=e,this._tweensAddedDuringUpdate[e.getId()]=e},i.prototype.remove=function(e){delete this._tweens[e.getId()],delete this._tweensAddedDuringUpdate[e.getId()]},i.prototype.update=function(e,t){e===void 0&&(e=nt()),t===void 0&&(t=!1);var r=Object.keys(this._tweens);if(r.length===0)return!1;for(;r.length>0;){this._tweensAddedDuringUpdate={};for(var n=0;n<r.length;n++){var s=this._tweens[r[n]],o=!t;s&&s.update(e,o)===!1&&!t&&delete this._tweens[r[n]]}r=Object.keys(this._tweensAddedDuringUpdate)}return!0},i}(),wt={Linear:function(i,e){var t=i.length-1,r=t*e,n=Math.floor(r),s=wt.Utils.Linear;return e<0?s(i[0],i[1],r):e>1?s(i[t],i[t-1],t-r):s(i[n],i[n+1>t?t:n+1],r-n)},Bezier:function(i,e){for(var t=0,r=i.length-1,n=Math.pow,s=wt.Utils.Bernstein,o=0;o<=r;o++)t+=n(1-e,r-o)*n(e,o)*i[o]*s(r,o);return t},CatmullRom:function(i,e){var t=i.length-1,r=t*e,n=Math.floor(r),s=wt.Utils.CatmullRom;return i[0]===i[t]?(e<0&&(n=Math.floor(r=t*(1+e))),s(i[(n-1+t)%t],i[n],i[(n+1)%t],i[(n+2)%t],r-n)):e<0?i[0]-(s(i[0],i[0],i[1],i[1],-r)-i[0]):e>1?i[t]-(s(i[t],i[t],i[t-1],i[t-1],r-t)-i[t]):s(i[n?n-1:0],i[n],i[t<n+1?t:n+1],i[t<n+2?t:n+2],r-n)},Utils:{Linear:function(i,e,t){return(e-i)*t+i},Bernstein:function(i,e){var t=wt.Utils.Factorial;return t(i)/t(e)/t(i-e)},Factorial:function(){var i=[1];return function(e){var t=1;if(i[e])return i[e];for(var r=e;r>1;r--)t*=r;return i[e]=t,t}}(),CatmullRom:function(i,e,t,r,n){var s=(t-i)*.5,o=(r-e)*.5,l=n*n,c=n*l;return(2*e-2*t+s+o)*c+(-3*e+3*t-2*s-o)*l+s*n+e}}},Ir=function(){function i(){}return i.nextId=function(){return i._nextId++},i._nextId=0,i}(),Xs=new Js,bp=function(){function i(e,t){t===void 0&&(t=Xs),this._object=e,this._group=t,this._isPaused=!1,this._pauseStart=0,this._valuesStart={},this._valuesEnd={},this._valuesStartRepeat={},this._duration=1e3,this._initialRepeat=0,this._repeat=0,this._yoyo=!1,this._isPlaying=!1,this._reversed=!1,this._delayTime=0,this._startTime=0,this._easingFunction=Gt.Linear.None,this._interpolationFunction=wt.Linear,this._chainedTweens=[],this._onStartCallbackFired=!1,this._id=Ir.nextId(),this._isChainStopped=!1,this._goToEnd=!1}return i.prototype.getId=function(){return this._id},i.prototype.isPlaying=function(){return this._isPlaying},i.prototype.isPaused=function(){return this._isPaused},i.prototype.to=function(e,t){return this._valuesEnd=Object.create(e),t!==void 0&&(this._duration=t),this},i.prototype.duration=function(e){return this._duration=e,this},i.prototype.start=function(e){if(this._isPlaying)return this;if(this._group&&this._group.add(this),this._repeat=this._initialRepeat,this._reversed){this._reversed=!1;for(var t in this._valuesStartRepeat)this._swapEndStartRepeatValues(t),this._valuesStart[t]=this._valuesStartRepeat[t]}return this._isPlaying=!0,this._isPaused=!1,this._onStartCallbackFired=!1,this._isChainStopped=!1,this._startTime=e!==void 0?typeof e=="string"?nt()+parseFloat(e):e:nt(),this._startTime+=this._delayTime,this._setupProperties(this._object,this._valuesStart,this._valuesEnd,this._valuesStartRepeat),this},i.prototype._setupProperties=function(e,t,r,n){for(var s in r){var o=e[s],l=Array.isArray(o),c=l?"array":typeof o,h=!l&&Array.isArray(r[s]);if(!(c==="undefined"||c==="function")){if(h){var u=r[s];if(u.length===0)continue;u=u.map(this._handleRelativeValue.bind(this,o)),r[s]=[o].concat(u)}if((c==="object"||l)&&o&&!h){t[s]=l?[]:{};for(var p in o)t[s][p]=o[p];n[s]=l?[]:{},this._setupProperties(o,t[s],r[s],n[s])}else typeof t[s]=="undefined"&&(t[s]=o),l||(t[s]*=1),h?n[s]=r[s].slice().reverse():n[s]=t[s]||0}}},i.prototype.stop=function(){return this._isChainStopped||(this._isChainStopped=!0,this.stopChainedTweens()),this._isPlaying?(this._group&&this._group.remove(this),this._isPlaying=!1,this._isPaused=!1,this._onStopCallback&&this._onStopCallback(this._object),this):this},i.prototype.end=function(){return this._goToEnd=!0,this.update(1/0),this},i.prototype.pause=function(e){return e===void 0&&(e=nt()),this._isPaused||!this._isPlaying?this:(this._isPaused=!0,this._pauseStart=e,this._group&&this._group.remove(this),this)},i.prototype.resume=function(e){return e===void 0&&(e=nt()),!this._isPaused||!this._isPlaying?this:(this._isPaused=!1,this._startTime+=e-this._pauseStart,this._pauseStart=0,this._group&&this._group.add(this),this)},i.prototype.stopChainedTweens=function(){for(var e=0,t=this._chainedTweens.length;e<t;e++)this._chainedTweens[e].stop();return this},i.prototype.group=function(e){return this._group=e,this},i.prototype.delay=function(e){return this._delayTime=e,this},i.prototype.repeat=function(e){return this._initialRepeat=e,this._repeat=e,this},i.prototype.repeatDelay=function(e){return this._repeatDelayTime=e,this},i.prototype.yoyo=function(e){return this._yoyo=e,this},i.prototype.easing=function(e){return this._easingFunction=e,this},i.prototype.interpolation=function(e){return this._interpolationFunction=e,this},i.prototype.chain=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return this._chainedTweens=e,this},i.prototype.onStart=function(e){return this._onStartCallback=e,this},i.prototype.onUpdate=function(e){return this._onUpdateCallback=e,this},i.prototype.onRepeat=function(e){return this._onRepeatCallback=e,this},i.prototype.onComplete=function(e){return this._onCompleteCallback=e,this},i.prototype.onStop=function(e){return this._onStopCallback=e,this},i.prototype.update=function(e,t){if(e===void 0&&(e=nt()),t===void 0&&(t=!0),this._isPaused)return!0;var r,n,s=this._startTime+this._duration;if(!this._goToEnd&&!this._isPlaying){if(e>s)return!1;t&&this.start(e)}if(this._goToEnd=!1,e<this._startTime)return!0;this._onStartCallbackFired===!1&&(this._onStartCallback&&this._onStartCallback(this._object),this._onStartCallbackFired=!0),n=(e-this._startTime)/this._duration,n=this._duration===0||n>1?1:n;var o=this._easingFunction(n);if(this._updateProperties(this._object,this._valuesStart,this._valuesEnd,o),this._onUpdateCallback&&this._onUpdateCallback(this._object,n),n===1)if(this._repeat>0){isFinite(this._repeat)&&this._repeat--;for(r in this._valuesStartRepeat)!this._yoyo&&typeof this._valuesEnd[r]=="string"&&(this._valuesStartRepeat[r]=this._valuesStartRepeat[r]+parseFloat(this._valuesEnd[r])),this._yoyo&&this._swapEndStartRepeatValues(r),this._valuesStart[r]=this._valuesStartRepeat[r];return this._yoyo&&(this._reversed=!this._reversed),this._repeatDelayTime!==void 0?this._startTime=e+this._repeatDelayTime:this._startTime=e+this._delayTime,this._onRepeatCallback&&this._onRepeatCallback(this._object),!0}else{this._onCompleteCallback&&this._onCompleteCallback(this._object);for(var l=0,c=this._chainedTweens.length;l<c;l++)this._chainedTweens[l].start(this._startTime+this._duration);return this._isPlaying=!1,!1}return!0},i.prototype._updateProperties=function(e,t,r,n){for(var s in r)if(t[s]!==void 0){var o=t[s]||0,l=r[s],c=Array.isArray(e[s]),h=Array.isArray(l),u=!c&&h;u?e[s]=this._interpolationFunction(l,n):typeof l=="object"&&l?this._updateProperties(e[s],o,l,n):(l=this._handleRelativeValue(o,l),typeof l=="number"&&(e[s]=o+(l-o)*n))}},i.prototype._handleRelativeValue=function(e,t){return typeof t!="string"?t:t.charAt(0)==="+"||t.charAt(0)==="-"?e+parseFloat(t):parseFloat(t)},i.prototype._swapEndStartRepeatValues=function(e){var t=this._valuesStartRepeat[e],r=this._valuesEnd[e];typeof r=="string"?this._valuesStartRepeat[e]=this._valuesStartRepeat[e]+parseFloat(r):this._valuesStartRepeat[e]=this._valuesEnd[e],this._valuesEnd[e]=t},i}(),xp="18.6.4",Ap=Ir.nextId,Ge=Xs,Pp=Ge.getAll.bind(Ge),Sp=Ge.removeAll.bind(Ge),Tp=Ge.add.bind(Ge),Mp=Ge.remove.bind(Ge),Ep=Ge.update.bind(Ge),Zs={Easing:Gt,Group:Js,Interpolation:wt,now:nt,Sequence:Ir,nextId:Ap,Tween:bp,VERSION:xp,getAll:Pp,removeAll:Sp,add:Tp,remove:Mp,update:Ep};const Dp={duration:1e3,delay:0,autoplay:!0,loop:!1,speed:null};class $s extends rt{constructor(e){super(e);b(this,"type",R.Animate);b(this,"group",null);b(this,"positions",[]);b(this,"value",{});b(this,"playingTween",null);b(this,"lastTween",null);b(this,"firstTween",null);this.options=fe(Dp,e),this.group=new Zs.Group}_addedHook(){super._addedHook(),this.options.positions.forEach(e=>{this.add(e)}),this.options.autoplay&&this.start(),this.cancel=this._map.on("preUpdate",()=>{this.group.update()})}add(e){!e||(e.position||(e={position:e}),this.positions.push(e),this.isPending&&!this.options.loop&&this._createTween(e,this.positions.length+1,this.positions[this.positions.length-1]))}get isPending(){return!!this.playingTween}stop(){this.playingTween&&this.playingTween.stop(),this.playingTween=null}pause(){this.playingTween&&this.playingTween.pause()}resume(){this.playingTween&&this.playingTween.resume()}updatePosition(){}_createTween(e,t,r){var o;let n=e.duration;if(ne(n)){let l=(o=e.speed)!=null?o:this.options.speed;H(l)&&(n=a.Cartesian3.distance(e.position,r.position)/(l/3.6))}const s=new Zs.Tween(this.value,this.group).delay(e.delay||0).to(e.position,n!=null?n:this.options.duration).onUpdate(()=>{this.updatePosition()}).onStart(()=>{this.playingTween=s,this.fire("startItem",e)}).onComplete(()=>{this.playingTween=null,this.fire("endItem",e)});this.firstTween||(this.firstTween=s),this.lastTween&&this.lastTween.chain(s),this.lastTween=s}start(){if(this.group.removeAll(),this.firstTween=null,this.lastTween=null,this.positions.length<2)return;const[e,...t]=this.positions;Lt(this.value,e.position),t.forEach((r,n)=>{this._createTween(r,n+1,this.positions[n])}),this.firstTween.start(),this.options.loop&&this.lastTween.chain(this.firstTween),this.graphics.forEach(r=>{r.orientation=new kp(new a.CallbackProperty(()=>this.value&&Cr(this.value),!1)),r.position=new a.CallbackProperty(()=>this.value&&Cr(this.value),!1)})}destroy(){this.cancel&&(this.cancel(),this.cancel=null),super.destroy()}async toJSON(){const e=await super.toJSON();return e.autoplay=this.options.autoplay,e.duration=this.options.duration,e.speed=this.options.speed,e.loop=this.options.loop,e.positions=this.options.positions,e}}class kp{constructor(e){b(this,"positionPrev",null);b(this,"positionNow",null);b(this,"_preValue",null);this.property=e}getValue(){this.positionPrev=this.positionNow,this.positionNow=this.property.getValue();const e=this._getValue();return e&&(this._preValue=e),e||this._preValue}_getValue(){if(!this.positionPrev||a.Cartesian3.equals(this.positionPrev,this.positionNow))return;let e=a.Cartesian3.subtract(this.positionNow,this.positionPrev,new a.Cartesian3);e=a.Cartesian3.normalize(e,new a.Cartesian3);const t=a.Transforms.rotationMatrixFromPositionVelocity(this.positionNow,e,void 0,new a.Matrix3);return a.Quaternion.fromRotationMatrix(t,new a.Cartesian3)}}class eo extends Tr{constructor(){super(...arguments);b(this,"type",R.Tooltip)}set text(e){e?this.show():(this.hide(),this.position=null),this.setStyle({html:`<div style="background: rgba(0,0,0,.8);border-radius: 3px;padding:2px 6px;font-size:10px;color: #fff;">${e}</div>`})}setStyle(e){super.setStyle(e,R.DivPoint)}}class to extends Ke{constructor(e={}){super(e);b(this,"type",R.Czml);this.dataSource=new a.CzmlDataSource,this.setOptions(e)}setOptions(e){(e.url||e.data)&&(this.readyPromise=this.dataSource.load(e.url||e.data),e.url&&(this.options.url=e.url),e.data&&(this.options.data=e.data),e.style||this.setStyle()),super.setOptions(e)}async setStyle(e={}){!!this.dataSource}async toJSON(){const e=await super.toJSON();return this.options.url&&(e.url=this.options.url),this.options.data&&(e.data=this.options.data),e}toData(){return this.options.url||this.options.data||""}get boundingSphere(){return this._map?this._map.getBoundingSphere(this.dataSource.entities.values):new a.BoundingSphere}}class io extends Ke{constructor(e={}){super(e);b(this,"type",R.Kml);this.dataSource=new a.KmlDataSource,this.setOptions(e)}setOptions(e){(e.url||e.data)&&(this.readyPromise=this.dataSource.load(e.url||e.data),e.url&&(this.options.url=e.url),e.data&&(this.options.data=e.data),e.style||this.setStyle()),super.setOptions(e)}async setStyle(e={}){!this.dataSource||(await this.readyPromise,this.readyPromise.then(t=>{this.options.style=Bt(this.style,e);const r=Ce(this.options.style,this.type),n=[R.Polyline,R.Polygon,R.Point,R.Billboard,R.Label].reduce((o,l)=>(r[l]&&(o[l]=Ce(r[l],l,!1)),o),{});function s(o){Object.entries(n).forEach(([l,c])=>{o[l]&&Object.keys(c).forEach(h=>{o[l][h]=c[h]})})}t.entities.values.forEach(o=>{s(o)})}))}async toJSON(){const e=await super.toJSON();return this.options.url&&(e.url=this.options.url),this.options.data&&(e.data=this.options.data),e}toData(){return this.options.url||this.options.data||""}get boundingSphere(){return this._map?this._map.getBoundingSphere(this.dataSource.entities.values):new a.BoundingSphere}}class ro extends Re{constructor(e={}){super();b(this,"type",R.PolylinePrimitive);let{positions:t,style:{width:r=1,material:n,color:s="#fff",visibleDepth:o=!0}={}}=e;n||(n=new a.Material({fabric:{type:"Color",uniforms:{color:Ze(s)}}})),this.primitive=new a.Primitive({geometryInstances:new a.GeometryInstance({geometry:new a.PolylineGeometry({positions:t.map(l=>new L(l)),width:r,vertexFormat:a.PolylineMaterialAppearance.VERTEX_FORMAT})}),appearance:new a.PolylineMaterialAppearance({material:n,renderState:{depthTest:{enabled:o}}})})}setStyle(){}_updatePosition(){}toGeoJson(){return Gn(this.points.map(e=>e.toLatLngArray()),{attr:this.attr,style:this.style,type:this.type})}}var no={exports:{}};(function(i,e){(function(t,r){i.exports=r()})(me,function(){var t=1e3,r=6e4,n=36e5,s="millisecond",o="second",l="minute",c="hour",h="day",u="week",p="month",d="quarter",f="year",m="date",g="Invalid Date",w=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,x=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,y={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_")},v=function(A,T,E){var F=String(A);return!F||F.length>=T?A:""+Array(T+1-F.length).join(E)+A},_={s:v,z:function(A){var T=-A.utcOffset(),E=Math.abs(T),F=Math.floor(E/60),G=E%60;return(T<=0?"+":"-")+v(F,2,"0")+":"+v(G,2,"0")},m:function A(T,E){if(T.date()<E.date())return-A(E,T);var F=12*(E.year()-T.year())+(E.month()-T.month()),G=T.clone().add(F,p),q=E-G<0,V=T.clone().add(F+(q?-1:1),p);return+(-(F+(E-G)/(q?G-V:V-G))||0)},a:function(A){return A<0?Math.ceil(A)||0:Math.floor(A)},p:function(A){return{M:p,y:f,w:u,d:h,D:m,h:c,m:l,s:o,ms:s,Q:d}[A]||String(A||"").toLowerCase().replace(/s$/,"")},u:function(A){return A===void 0}},P="en",O={};O[P]=y;var k=function(A){return A instanceof S},W=function A(T,E,F){var G;if(!T)return P;if(typeof T=="string"){var q=T.toLowerCase();O[q]&&(G=q),E&&(O[q]=E,G=q);var V=T.split("-");if(!G&&V.length>1)return A(V[0])}else{var ee=T.name;O[ee]=T,G=ee}return!F&&G&&(P=G),G||!F&&P},U=function(A,T){if(k(A))return A.clone();var E=typeof T=="object"?T:{};return E.date=A,E.args=arguments,new S(E)},C=_;C.l=W,C.i=k,C.w=function(A,T){return U(A,{locale:T.$L,utc:T.$u,x:T.$x,$offset:T.$offset})};var S=function(){function A(E){this.$L=W(E.locale,null,!0),this.parse(E)}var T=A.prototype;return T.parse=function(E){this.$d=function(F){var G=F.date,q=F.utc;if(G===null)return new Date(NaN);if(C.u(G))return new Date;if(G instanceof Date)return new Date(G);if(typeof G=="string"&&!/Z$/i.test(G)){var V=G.match(w);if(V){var ee=V[2]-1||0,M=(V[7]||"0").substring(0,3);return q?new Date(Date.UTC(V[1],ee,V[3]||1,V[4]||0,V[5]||0,V[6]||0,M)):new Date(V[1],ee,V[3]||1,V[4]||0,V[5]||0,V[6]||0,M)}}return new Date(G)}(E),this.$x=E.x||{},this.init()},T.init=function(){var E=this.$d;this.$y=E.getFullYear(),this.$M=E.getMonth(),this.$D=E.getDate(),this.$W=E.getDay(),this.$H=E.getHours(),this.$m=E.getMinutes(),this.$s=E.getSeconds(),this.$ms=E.getMilliseconds()},T.$utils=function(){return C},T.isValid=function(){return this.$d.toString()!==g},T.isSame=function(E,F){var G=U(E);return this.startOf(F)<=G&&G<=this.endOf(F)},T.isAfter=function(E,F){return U(E)<this.startOf(F)},T.isBefore=function(E,F){return this.endOf(F)<U(E)},T.$g=function(E,F,G){return C.u(E)?this[F]:this.set(G,E)},T.unix=function(){return Math.floor(this.valueOf()/1e3)},T.valueOf=function(){return this.$d.getTime()},T.startOf=function(E,F){var G=this,q=!!C.u(F)||F,V=C.p(E),ee=function(St,be){var Je=C.w(G.$u?Date.UTC(G.$y,be,St):new Date(G.$y,be,St),G);return q?Je:Je.endOf(h)},M=function(St,be){return C.w(G.toDate()[St].apply(G.toDate("s"),(q?[0,0,0,0]:[23,59,59,999]).slice(be)),G)},D=this.$W,I=this.$M,B=this.$D,Ve="set"+(this.$u?"UTC":"");switch(V){case f:return q?ee(1,0):ee(31,11);case p:return q?ee(1,I):ee(0,I+1);case u:var Zt=this.$locale().weekStart||0,$t=(D<Zt?D+7:D)-Zt;return ee(q?B-$t:B+(6-$t),I);case h:case m:return M(Ve+"Hours",0);case c:return M(Ve+"Minutes",1);case l:return M(Ve+"Seconds",2);case o:return M(Ve+"Milliseconds",3);default:return this.clone()}},T.endOf=function(E){return this.startOf(E,!1)},T.$set=function(E,F){var G,q=C.p(E),V="set"+(this.$u?"UTC":""),ee=(G={},G[h]=V+"Date",G[m]=V+"Date",G[p]=V+"Month",G[f]=V+"FullYear",G[c]=V+"Hours",G[l]=V+"Minutes",G[o]=V+"Seconds",G[s]=V+"Milliseconds",G)[q],M=q===h?this.$D+(F-this.$W):F;if(q===p||q===f){var D=this.clone().set(m,1);D.$d[ee](M),D.init(),this.$d=D.set(m,Math.min(this.$D,D.daysInMonth())).$d}else ee&&this.$d[ee](M);return this.init(),this},T.set=function(E,F){return this.clone().$set(E,F)},T.get=function(E){return this[C.p(E)]()},T.add=function(E,F){var G,q=this;E=Number(E);var V=C.p(F),ee=function(I){var B=U(q);return C.w(B.date(B.date()+Math.round(I*E)),q)};if(V===p)return this.set(p,this.$M+E);if(V===f)return this.set(f,this.$y+E);if(V===h)return ee(1);if(V===u)return ee(7);var M=(G={},G[l]=r,G[c]=n,G[o]=t,G)[V]||1,D=this.$d.getTime()+E*M;return C.w(D,this)},T.subtract=function(E,F){return this.add(-1*E,F)},T.format=function(E){var F=this,G=this.$locale();if(!this.isValid())return G.invalidDate||g;var q=E||"YYYY-MM-DDTHH:mm:ssZ",V=C.z(this),ee=this.$H,M=this.$m,D=this.$M,I=G.weekdays,B=G.months,Ve=function(be,Je,en,Oi){return be&&(be[Je]||be(F,q))||en[Je].slice(0,Oi)},Zt=function(be){return C.s(ee%12||12,be,"0")},$t=G.meridiem||function(be,Je,en){var Oi=be<12?"AM":"PM";return en?Oi.toLowerCase():Oi},St={YY:String(this.$y).slice(-2),YYYY:this.$y,M:D+1,MM:C.s(D+1,2,"0"),MMM:Ve(G.monthsShort,D,B,3),MMMM:Ve(B,D),D:this.$D,DD:C.s(this.$D,2,"0"),d:String(this.$W),dd:Ve(G.weekdaysMin,this.$W,I,2),ddd:Ve(G.weekdaysShort,this.$W,I,3),dddd:I[this.$W],H:String(ee),HH:C.s(ee,2,"0"),h:Zt(1),hh:Zt(2),a:$t(ee,M,!0),A:$t(ee,M,!1),m:String(M),mm:C.s(M,2,"0"),s:String(this.$s),ss:C.s(this.$s,2,"0"),SSS:C.s(this.$ms,3,"0"),Z:V};return q.replace(x,function(be,Je){return Je||St[be]||V.replace(":","")})},T.utcOffset=function(){return 15*-Math.round(this.$d.getTimezoneOffset()/15)},T.diff=function(E,F,G){var q,V=C.p(F),ee=U(E),M=(ee.utcOffset()-this.utcOffset())*r,D=this-ee,I=C.m(this,ee);return I=(q={},q[f]=I/12,q[p]=I,q[d]=I/3,q[u]=(D-M)/6048e5,q[h]=(D-M)/864e5,q[c]=D/n,q[l]=D/r,q[o]=D/t,q)[V]||D,G?I:C.a(I)},T.daysInMonth=function(){return this.endOf(p).$D},T.$locale=function(){return O[this.$L]},T.locale=function(E,F){if(!E)return this.$L;var G=this.clone(),q=W(E,F,!0);return q&&(G.$L=q),G},T.clone=function(){return C.w(this.$d,this)},T.toDate=function(){return new Date(this.valueOf())},T.toJSON=function(){return this.isValid()?this.toISOString():null},T.toISOString=function(){return this.$d.toISOString()},T.toString=function(){return this.$d.toUTCString()},A}(),z=S.prototype;return U.prototype=z,[["$ms",s],["$s",o],["$m",l],["$H",c],["$W",h],["$M",p],["$y",f],["$D",m]].forEach(function(A){z[A[1]]=function(T){return this.$g(T,A[0],A[1])}}),U.extend=function(A,T){return A.$i||(A(T,S,U),A.$i=!0),U},U.locale=W,U.isDayjs=k,U.unix=function(A){return U(1e3*A)},U.en=O[P],U.Ls=O,U.p={},U})})(no);var Or=no.exports;class so extends rt{constructor(r={}){var n=r,{time:e}=n,t=te(n,["time"]);super(N({time:e},t));b(this,"type",R.PositionGroup);b(this,"_store",{});e||console.error("time\u5FC5\u4F20"),this._time=e}get isRuning(){return this._map?this._map.viewer.clock.shouldAnimate:null}start(){this._map&&(this._map.viewer.clock.shouldAnimate=!0)}stop(){this._map&&(this._map.viewer.clock.shouldAnimate=!1)}_addedHook(){super._addedHook(),this.time=this._time}set time(e){if(this._map){this._map.viewer.clock.currentTime=this._formatTime(e);return}this._time=e}get time(){return this._time}updateGraphics(e,t=!1){const{insert:r,remove:n,equal:s}=fi(this.graphics,e,(o,l)=>o.id===l.id);return r.forEach(o=>{const l=new a.SampledPositionProperty;this.options.forwardExtrapolationType&&(l.forwardExtrapolationType=a.ExtrapolationType[this.options.forwardExtrapolationType.toUpperCase()]),l.forwardExtrapolationType=a.ExtrapolationType.HOLD,l.backwardExtrapolationType=a.ExtrapolationType.HOLD;const c=this.addGraphic(ue(N({},o),{position:l}));this.update(c.id,{time:o.time,position:o.position})}),s.forEach(({oldVal:o,newVal:l})=>{if(l.type===R.Group){o.updateGraphics(l.graphics);return}o.setOptions(ue(N({},l),{position:void 0})),this.update(o.id,{time:l.time,position:l.position})}),t&&n.forEach(o=>{this.removeGraphic(o)}),this}_formatTime(e){return a.JulianDate.fromDate(Or(e).toDate())}update(e,{time:t,position:r}){t&&r&&(this._store[e]||(this._store[e]={}),this._store[e][t]=r,this.getGraphic(e).position.addSample(this._formatTime(t),new L(pi(r)?r():r)))}refresh(){Object.entries(this._store).forEach(([e,t])=>{const r=Object.keys(t).map(o=>this._formatTime(o)),n=Object.values(t).map(o=>pi(o)?o():o);this.getGraphic(e).position.addSamples(r,n)})}destroy(){super.destroy(),this._store=null}}const wi={[R.Billboard]:Sr,[R.Model]:Ls,[R.RoamLine]:Ns,[R.DivPoint]:Tr,[R.Tileset]:yi,[R.Path]:Us,[R.Label]:_i,[R.Ellipse]:yr,[R.Circle]:ui,[R.Point]:Mr,[R.Polyline]:Er,[R.GeoJson]:Ws,[R.Polygon]:Dr,[R.Box]:Vs,[R.Corridor]:js,[R.Cylinder]:qs,[R.PolylineVolume]:Qs,[R.Rectangle]:Ci,[R.Wall]:kr,[R.Plane]:Ys,[R.Heatmap]:Ks,[R.Group]:rt,[R.Animate]:$s,[R.Tooltip]:eo,[R.Czml]:to,[R.Kml]:io,[R.PolylinePrimitive]:ro,[R.PositionGroup]:so};var Ip=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",GraphicMap:wi,TooltipGraphic:eo,BillboardGraphic:Sr,ModelGraphic:Ls,RoamLineGraphic:Ns,DivPointGraphic:Tr,TilesetGraphic:yi,PathGraphic:Us,LabelGraphic:_i,EllipseGraphic:yr,CircleGraphic:ui,PointGraphic:Mr,PolyLineGraphic:Er,GeoJsonGraphic:Ws,PolygonGraphic:Dr,BoxGraphic:Vs,CorridorGraphic:js,CylinderGraphic:qs,PolylineVolumeGraphic:Qs,RectangleGraphic:Ci,WallGraphic:kr,PlaneGraphic:Ys,HeatmapGraphic:Ks,GroupGraphic:rt,AnimateGraphic:$s,CzmlGraphic:to,KmlGraphic:io,PolylinePrimitiveGraphic:ro,PositionGroupGraphic:so});class Ft extends it{constructor(e){super(ie(new.target.DefaultOptions,e))}_initGraphic(){const{type:e,style:t,attr:r,parent:n=this._map}=this.options,s=wi[e];s||console.error(`\u4E0D\u652F\u6301\u7684\u7C7B\u578B\uFF1A${e}`),this.graphic=new s({style:t,attr:r}),this.once("drawEnd",()=>{this.graphic.position=this.points[0],n.addGraphic(this.graphic)}),this.once("drawCancel",()=>{this.graphic.destroy()})}}b(Ft,"DefaultOptions",{minPointNum:1,maxPointNum:1,style:{pixelSize:10,color:"#3388ff",opacity:1,outline:!0,outlineColor:"#ffffff",outlineOpacity:.6,outlineWidth:2,visibleDepth:!1}});class oo extends it{constructor(e){super(ie(new.target.DefaultOptions,e))}_initGraphic(){const{style:e,attr:t,parent:r=this._map}=this.options;this.graphic=new Er({style:e,attr:t,positions:new a.CallbackProperty(()=>this.points.concat(this.mousePoint).filter(Boolean),!1)}).addTo(r),this.once("drawEnd",()=>{if(this.options.isRestorePositions)this.graphic.positions=this.points.filter(Boolean);else{const n=this.points;this.graphic.positions=new a.CallbackProperty(()=>n,!1)}}),this.once("drawCancel",()=>{this.graphic.destroy()})}}b(oo,"DefaultOptions",{minPointNum:2,maxPointNum:1/0,style:{lineType:"solid",color:"#3388ff",width:2}});class ao extends it{constructor(e){super(ie(new.target.DefaultOptions,e))}_initGraphic(){const{style:e,attr:t,parent:r=this._map}=this.options;this.graphic=new Dr({style:e,attr:t,positions:new a.CallbackProperty(()=>new a.PolygonHierarchy(this.points.concat(this.mousePoint).filter(Boolean)),!1)}).addTo(r),this.once("drawEnd",()=>{if(this.options.isRestorePositions)this.graphic.positions=this.points.filter(Boolean);else{const n=this.points;this.graphic.positions=new a.CallbackProperty(()=>new a.PolygonHierarchy(n),!1)}}),this.once("drawCancel",()=>{this.graphic.destroy()})}}b(ao,"DefaultOptions",{minPointNum:3,maxPointNum:9999,style:{color:"#3388ff",opacity:.5,outlineWidth:2,outlineColor:"#fff"}});class lo extends it{constructor(e){super(ie(new.target.DefaultOptions,e))}_initGraphic(){const{style:e,attr:t,parent:r=this._map}=this.options;this.graphic=new Ci({style:e,attr:t,positions:new a.CallbackProperty(()=>{const n=this.points.concat(this.mousePoint).filter(Boolean);return n.length>1?a.Rectangle.fromCartesianArray(n):null},!1)}).addTo(r),this.once("drawEnd",()=>{if(this.options.isRestorePositions)this.graphic.positions=this.points.filter(Boolean);else{const n=this.points;this.graphic.positions=new a.CallbackProperty(()=>a.Rectangle.fromCartesianArray(n),!1)}}),this.once("drawCancel",()=>{this.graphic.destroy()})}}b(lo,"DefaultOptions",{minPointNum:2,maxPointNum:2,style:{color:"#3388ff",opacity:.5,outlineWidth:2,outlineColor:"#fff"}});class co extends it{constructor(e){super(ie(new.target.DefaultOptions,e))}_initGraphic(){const{style:e,attr:t,parent:r=this._map}=this.options;this.graphic=new ui({style:ue(N({},e),{semiAxis:new a.CallbackProperty(()=>{const n=[this.points[0],this.points[1]||this.mousePoint].filter(Boolean);if(n.length===2)return a.Cartesian3.distance(...n)||void 0},!1)}),attr:t,position:new a.CallbackProperty(()=>{if([this.points[0],this.points[1]||this.mousePoint].filter(Boolean).length===2)return this.points[0]},!1)}).addTo(r),this.once("drawEnd",()=>{if(this.options.isRestorePositions)this.graphic.position=this.points[0],this.graphic.setStyle({semiAxis:a.Cartesian3.distance(...this.points)});else{const n=this.points,s=a.Cartesian3.distance(...n);this.graphic.position=new a.CallbackProperty(()=>n[0],!1),this.graphic.setStyle({semiAxis:s})}}),this.once("drawCancel",()=>{this.graphic.destroy()})}}b(co,"DefaultOptions",{minPointNum:2,maxPointNum:2,style:{color:"#3388ff",opacity:.5,visibleDepth:!1,outlineColor:"#fff",outlineWidth:2}});class ho extends Ft{}b(ho,"DefaultOptions",{minPointNum:1,maxPointNum:1,style:{visibleDepth:!1}});class uo extends Ft{}b(uo,"DefaultOptions",{minPointNum:1,maxPointNum:1,style:{visibleDepth:!1}});class po extends Ft{}b(po,"DefaultOptions",{minPointNum:1,maxPointNum:1,style:{visibleDepth:!1}});class fo extends yt{constructor(n){var s=n,{map:e,id:t}=s,r=te(s,["map","id"]);super();b(this,"options",{});b(this,"point",null);b(this,"graphic",null);this.id=t,this._map=e,this.setOptions(ie(new.target.defaultOptions,r)),this.initGraphic()}setOptions(e){const{position:t,style:r,attr:n,visible:s}=e;if(this.options=ie(this.options,e),H(t)){const o=new L(t);this.options.style.clampToGround&&o.clampToGround(this._map),this.point=o}H(r)&&this.graphic&&this.graphic.setStyle(r),H(n)&&this.graphic&&this.graphic.setAttr(n),H(s)&&this.graphic&&(s?this.graphic.show():this.graphic.hide())}initGraphic(){this.graphic=new Mr({position:new a.CallbackProperty(()=>this.point,!1),style:this.options.style,attr:ue(N({},this.options.attr),{isAnchor:!0})}),this.bindEvent()}_mouseMoveEvent(){}bindEvent(){let e=!1,t=this.graphic.on("mouseenter",()=>{e||this.fire("mouseenter")}),r=this.graphic.on("mouseleave",()=>{e||this.fire("mouseleave")}),n=this.graphic.on("mousedown",o=>{const l=o.point;if(!l)return;e=!0,this._map.disableCameraControl(),this.setCrosshairCursor(!0),this.graphic.hide(),this.fire("dragStart",{target:this.graphic,point:l});const c=this._map.on("mousemove",this._mouseMoveEvent.bind(this));this._map.once("mouseup",()=>{c(),setTimeout(()=>{this._map.enableCameraControl()},1e3/60*10),this.setCrosshairCursor(!1),this.graphic.show(),this.fire("dragEnd",{target:this.graphic}),this.graphic.once("mouseleave",()=>{e=!1})})}),s=this.graphic.on("rClick",()=>{this.fire("rClick")});this.once("destroy",()=>{r(),t(),n(),s(),r=null,t=null,n=null,s=null})}setCrosshairCursor(e){this._map.setCursor(e?"crosshair":"")}destroy(){this._map=null,this.options=null,this.point=null,super.destroy()}}class mo extends fo{_mouseMoveEvent(e){const t=e.point;!t||(this.point=t,this.fire("drag",{target:this.graphic,point:t}))}}b(mo,"defaultOptions",{style:{pixelSize:10,color:"#2745af",opacity:1,outlineColor:"#ffffff",outlineOpacity:.6,outlineWidth:2,visibleDepth:!1}});class go extends fo{_mouseMoveEvent(e){const t=new L(this._map.camera.positionWC).height,r=a.Plane.fromPointNormal(this.point,a.Cartesian3.normalize(a.Cartesian3.subtract(this._map.camera.positionWC,this.point.clone().setHeight(t),new a.Cartesian3),new a.Cartesian3)),n=this._map.intersection(e.position,r).height,s=this.point.height;this.fire("drag",{target:this.graphic,height:n,offsetHeight:n-s})}}b(go,"defaultOptions",{style:{pixelSize:10,color:"#ef21a7",opacity:1,outlineColor:"#ffffff",outlineOpacity:.6,outlineWidth:2,visibleDepth:!1}});const vo={Position:"position",Height:"height"},Op={[vo.Position]:mo,[vo.Height]:go};class Rp{constructor({map:e}){b(this,"anchors",[]);this.group=new rt({attr:{isHelper:!0}}).addTo(e),this._map=e}addAnchor(n){var s=n,{type:e,event:t}=s,r=te(s,["type","event"]);const o=Op[e];if(!o){console.log(`\u4E0D\u652F\u6301\u7C7B\u578B\u4E3A${e}\u7684anchor`);return}const l=new o(N({map:this._map},r));return t&&Object.entries(t).forEach(([c,h])=>{l.on(c,h)}),this.anchors.push(l),l}removeAnchor(e){const t=this.anchors.findIndex(r=>r.id===e.id);this.anchors.splice(t,1)}updateAnchors(e){const{insert:t,remove:r,equal:n}=fi(this.anchors,e,(s,o)=>s.id===o.id);t.forEach(s=>{this.addAnchor(s)}),r.forEach(s=>{this.removeAnchor(s)}),n.forEach(({oldVal:s,newVal:o})=>{s.setOptions(o)}),this.group.updateGraphics(this.anchors.map(s=>s.graphic))}clearAllAnchor(){this.anchors.forEach(e=>e.destroy()),this.group.removeAllGraphic(),this.anchors=[]}hideAllAnchor(){this.group.getAllGraphics().forEach(e=>{e.hide()})}showAllAnchor(){this.group.getAllGraphics().forEach(e=>{e.show()})}hideHelperAnchor(){this.group.getAllGraphics().forEach(e=>{e.attr.isHelper&&e.hide()})}showHelperAnchor(){this.group.getAllGraphics().forEach(e=>{e.attr.isHelper&&e.show()})}destroy(){this.group.destroy(),this.group=null,this._map=null}}const Nt={Ready:"ready",Start:"Start",End:"End"};class st extends yt{constructor(n){var s=n,{graphic:e,map:t}=s,r=te(s,["graphic","map"]);super();b(this,"points",[]);this.graphic=e,this.options=r,this._map=t,this.anchorGroup=new Rp({map:t}),this.toolTipMessage=fe(this.constructor.toolTipMessage,this.options.toolTipMessage)}start(){if(this.state===Nt.Start)return console.log("\u5DF2\u5904\u4E8Estart\u72B6\u6001"),Promise.reject();this.state=Nt.Start;const e=this.graphic.points;return this.fire("editStart",{target:this.graphic,points:e}),this.points=e,this._setupPositions(),this._updateAnchor(),new Promise(t=>{this.once("editEnd",t)})}end(){if(this.state!==Nt.Start){console.log("\u6267\u884Cedit end\u65F6\uFF0C \u672A\u5904\u4E8Estart\u72B6\u6001");return}this.state=Nt.End,this.tooltip="",this.fire("editEnd",{target:this.graphic,points:this.points}),this.fire("editEndDone",{target:this.graphic,points:this.points})}set tooltip(e){this._map.tooltip.text=e}_setupPositions(){}get clampToGround(){return this.graphic.graphicStyle.clampToGround}_updateAnchor(){}destroy(){this.state!==Nt.End&&(console.log("destroy \u4E4B\u524D \u672A\u5904\u4E8Eend\u72B6\u6001"),this.end()),this._map=null,this.options=null,this.graphic=null,this.anchorGroup.destroy(),this.anchorGroup=null,super.destroy()}}b(st,"toolTipMessage",{positionHover:"\u62D6\u52A8\u8BE5\u70B9\u540E \u4FEE\u6539\u4F4D\u7F6E",midPositionHover:"\u62D6\u52A8\u8BE5\u70B9\u540E \u589E\u52A0\u70B9",end:"\u91CA\u653E\u540E \u5B8C\u6210\u4FEE\u6539",del:"<br/>\u53F3\u51FB\u5220\u9664\u70B9"});class ot extends st{constructor(e){super(ie(new.target.DefaultOptions,e))}_setupPositions(){this.graphic.position=this.points[0]}_updateAnchor(){this.setCrosshairCursor(!0),this.graphic.hide(),this.tooltip=this.toolTipMessage.end,this._map.once("click",e=>{const t=e.point;!t||(this.graphic.position=t,this.graphic.show(),this.setCrosshairCursor(!1),this.end())})}setCrosshairCursor(e){this._map.setCursor(e?"crosshair":"")}}b(ot,"DefaultOptions",{minPointNum:1,maxPointNum:1}),b(ot,"toolTipMessage",{end:"\u70B9\u51FB\u540E \u5B8C\u6210\u4FEE\u6539"});class yo extends st{constructor(e){super(ie(new.target.DefaultOptions,e))}_setupPositions(){this.graphic.positions=new a.CallbackProperty(()=>this.points,!1),this.once("editEnd",()=>{if(this.options.isRestorePositions)this.graphic.positions=this.points.filter(Boolean);else{const e=this.points;this.graphic.positions=new a.CallbackProperty(()=>e,!1)}})}_updateAnchor(){const e=[];for(let t=0;t<this.points.length;t++)e.push({id:`position-${t}`,position:this.points[t],type:"position",visible:!0,event:{dragStart:()=>{this.tooltip=this.toolTipMessage.end},drag:r=>{this.points[t]=r.point,this.anchorGroup.hideAllAnchor()},dragEnd:()=>{this.fire("editPoint",{target:this.graphic,point:this.points[t],points:this.points}),this._updateAnchor(),this.tooltip=""},mouseenter:()=>{this.points.length-1>=this.options.minPointNum?this.tooltip=this.toolTipMessage.positionHover+this.toolTipMessage.del:this.tooltip=this.toolTipMessage.positionHover},mouseleave:()=>{this.tooltip=""},rClick:()=>{if(this.points.length-1>=this.options.minPointNum){const[r]=this.points.splice(t,1);this._updateAnchor(),this.fire("editRemovePoint",{target:this.graphic,point:r,points:this.points})}}},style:{clampToGround:this.clampToGround}}),this.points.length!==this.options.maxPointNum&&t!==this.points.length-1&&e.push({id:`mid-${t}`,position:a.Cartesian3.midpoint(this.points[t],this.points[t+1],new a.Cartesian3),visible:!0,type:"position",style:{opacity:.4,clampToGround:this.clampToGround},attr:{isHelper:!0},event:{dragStart:r=>{this.points.splice(t+1,0,r.point),this.anchorGroup.hideAllAnchor(),this.tooltip=this.toolTipMessage.end},drag:r=>{this.points[t+1]=r.point},dragEnd:()=>{this.tooltip="",this.fire("editAddPoint",{target:this.graphic,point:this.points[t+1],points:this.points}),this._updateAnchor()},mouseenter:()=>{this.tooltip=this.toolTipMessage.midPositionHover},mouseleave:()=>{this.tooltip=""}}});this.anchorGroup.updateAnchors(e)}}b(yo,"DefaultOptions",{minPointNum:2,maxPointNum:9999});class _o extends st{constructor(e){super(ie(new.target.DefaultOptions,e))}_setupPositions(){this.graphic.positions=new a.CallbackProperty(()=>new a.PolygonHierarchy(this.points),!1),this.once("editEnd",()=>{if(this.options.isRestorePositions)this.graphic.positions=this.points.filter(Boolean);else{const e=this.points;this.graphic.positions=new a.CallbackProperty(()=>new a.PolygonHierarchy(e),!1)}})}_updateAnchor(){const e=this.points,t=[];for(let r=0;r<this.points.length;r++)t.push({id:`position-${r}`,position:e[r],type:"position",visible:!0,event:{dragStart:()=>{this.tooltip=this.toolTipMessage.end},drag:n=>{this.points[r]=n.point,this.anchorGroup.hideAllAnchor()},dragEnd:()=>{this.fire("editPoint",{target:this.graphic,point:this.points[r],points:this.points}),this._updateAnchor(),this.tooltip=""},mouseenter:()=>{this.points.length-1>=this.options.minPointNum?this.tooltip=this.toolTipMessage.positionHover+this.toolTipMessage.del:this.tooltip=this.toolTipMessage.positionHover},mouseleave:()=>{this.tooltip=""},rClick:()=>{if(this.points.length-1>=this.options.minPointNum){const[n]=this.points.splice(r,1);this._updateAnchor(),this.fire("editRemovePoint",{target:this.graphic,point:n,points:this.points})}}},style:{clampToGround:this.clampToGround}}),this.points.length!==this.options.maxPointNum&&t.push({id:`mid-${r}`,position:a.Cartesian3.midpoint(e[r],e[(r+1)%this.points.length],new a.Cartesian3),visible:!0,type:"position",style:{opacity:.4,clampToGround:this.clampToGround},attr:{isHelper:!0},event:{dragStart:n=>{this.points.splice(r+1,0,n.point),this.anchorGroup.hideAllAnchor(),this.tooltip=this.toolTipMessage.end},drag:n=>{this.points[r+1]=n.point},dragEnd:()=>{this.tooltip="",this.fire("editAddPoint",{target:this.graphic,point:this.points[r+1],points:this.points}),this._updateAnchor()},mouseenter:()=>{this.tooltip=this.toolTipMessage.midPositionHover},mouseleave:()=>{this.tooltip=""}}});this.anchorGroup.updateAnchors(t)}}b(_o,"DefaultOptions",{minPointNum:3,maxPointNum:9999});class Bp extends ot{}class Lp extends ot{}class zp extends ot{}class Rr extends st{constructor(e){super(ie(new.target.DefaultOptions,e))}_setupPositions(){this.points=[this.graphic.point,this.graphic.getOuterPositions()[0]],this.graphic.setOptions({position:new a.CallbackProperty(()=>this.points[0],!1)}),this.once("editEnd",()=>{if(this.options.isRestorePositions)this.graphic.position=this.points[0];else{const e=this.points;this.graphic.position=new a.CallbackProperty(()=>e[0],!1)}})}_updateAnchor(){const e=[{id:"position",position:this.points[0],type:"position",visible:!0,style:{clampToGround:this.clampToGround},event:{dragStart:()=>{this.tooltip=this.toolTipMessage.end,this.anchorGroup.hideAllAnchor()},drag:t=>{this.points[0]=t.point},dragEnd:()=>{this.points=[this.points[0],this.graphic.getOuterPositions()[0]],this.fire("editPoint",{target:this.graphic,point:this.points[0],points:this.points}),this._updateAnchor(),this.tooltip=""},mouseenter:()=>{this.tooltip=this.toolTipMessage.positionHover},mouseleave:()=>{this.tooltip=""}}},{id:"radius",position:this.points[1],type:"position",visible:!0,style:{clampToGround:this.clampToGround,color:"yellow"},event:{dragStart:()=>{this.tooltip=this.toolTipMessage.end},drag:t=>{this.points[1]=t.point,this.graphic.setStyle({semiAxis:a.Cartesian3.distance(...this.points)})},dragEnd:()=>{this.fire("editPoint",{target:this.graphic,point:this.points[1],points:this.points}),this.tooltip=""},mouseenter:()=>{this.tooltip=this.toolTipMessage.circleHover},mouseleave:()=>{this.tooltip=""}},attr:{isHelper:!0}}];this.anchorGroup.updateAnchors(e)}}b(Rr,"DefaultOptions",{minPointNum:2,maxPointNum:2}),b(Rr,"toolTipMessage",{positionHover:"\u62D6\u52A8\u8BE5\u70B9\u540E \u4FEE\u6539\u4F4D\u7F6E",circleHover:"\u62D6\u52A8\u8BE5\u70B9\u540E \u4FEE\u6539\u534A\u5F84",end:"\u91CA\u653E\u540E \u5B8C\u6210\u4FEE\u6539"});class Co extends st{constructor(e){super(ie(new.target.DefaultOptions,e))}_setupPositions(){this.graphic.positions=new a.CallbackProperty(()=>a.Rectangle.fromCartesianArray(this.points),!1),this.once("editEnd",()=>{if(this.options.isRestorePositions)this.graphic.positions=this.points.filter(Boolean);else{const e=this.points;this.graphic.positions=new a.CallbackProperty(()=>a.Rectangle.fromCartesianArray(e),!1)}})}_updateAnchor(){const e=this.points,t=[];for(let r=0;r<this.points.length;r++)t.push({id:`position-${r}`,position:e[r],type:"position",visible:!0,event:{dragStart:()=>{this.tooltip=this.toolTipMessage.end},drag:n=>{this.points[r]=n.point},dragEnd:()=>{this.fire("editPoint",{target:this.graphic,point:this.points[r],points:this.points}),this._updateAnchor(),this.tooltip=""},mouseenter:()=>{this.tooltip=this.toolTipMessage.positionHover},mouseleave:()=>{this.tooltip=""}},style:{clampToGround:this.clampToGround}});this.anchorGroup.updateAnchors(t)}}b(Co,"DefaultOptions",{minPointNum:2,maxPointNum:2});class wo extends it{constructor(e){super(ie(new.target.DefaultOptions,e))}_initGraphic(){const{style:e,attr:t,parent:r=this._map}=this.options;this.graphic=new kr({style:e,attr:t,positions:new a.CallbackProperty(()=>this.points.concat(this.mousePoint).filter(Boolean),!1)}).addTo(r),this.once("drawEnd",()=>{if(this.options.isRestorePositions)this.graphic.positions=this.points.filter(Boolean);else{const n=this.points;this.graphic.positions=new a.CallbackProperty(()=>n,!1)}}),this.once("drawCancel",()=>{this.graphic.destroy()})}}b(wo,"DefaultOptions",{minPointNum:2,maxPointNum:9999,style:{color:"#3388ff",diffHeight:10}});class bo extends st{constructor(e){super(ie(new.target.DefaultOptions,e))}_setupPositions(){this.graphic.positions=new a.CallbackProperty(()=>this.points,!1),this.once("editEnd",()=>{if(this.options.isRestorePositions)this.graphic.positions=this.points.filter(Boolean);else{const e=this.points;this.graphic.positions=new a.CallbackProperty(()=>e,!1)}})}_updateAnchor(){var s;const e=[],t=this.graphic.style.height,r=this.points.map(o=>o.clone().setHeight(t));let n=(s=this.graphic.style.diffHeight)!=null?s:0;for(let o=0;o<r.length;o++)e.push({id:`position-${o}`,position:r[o],type:"position",visible:!0,event:{dragStart:()=>{this.tooltip=this.toolTipMessage.end},drag:l=>{this.points[o]=l.point,this.anchorGroup.hideAllAnchor()},dragEnd:()=>{this.fire("editPoint",{target:this.graphic,point:this.points[o],points:this.points}),this._updateAnchor(),this.tooltip=""},mouseenter:()=>{this.points.length-1>=this.options.minPointNum?this.tooltip=this.toolTipMessage.positionHover+this.toolTipMessage.del:this.tooltip=this.toolTipMessage.positionHover},mouseleave:()=>{this.tooltip=""},rClick:()=>{if(this.points.length-1>=this.options.minPointNum){const[l]=this.points.splice(o,1);this._updateAnchor(),this.fire("editRemovePoint",{target:this.graphic,point:l,points:this.points})}}},style:{clampToGround:this.clampToGround}}),e.push({id:`height-${o}`,position:r[o].clone().addHeight(n),type:"height",visible:!0,event:{dragStart:()=>{var l;n=(l=this.graphic.style.diffHeight)!=null?l:0},drag:({offsetHeight:l})=>{this.graphic.setStyle({diffHeight:l+n}),this.anchorGroup.hideAllAnchor()},dragEnd:()=>{this.fire("editHeight",{target:this.graphic,point:this.points[o],points:this.points}),this._updateAnchor()}},style:{clampToGround:this.clampToGround}}),this.points.length!==this.options.maxPointNum&&o!==r.length-1&&e.push({id:`mid-${o}`,position:a.Cartesian3.midpoint(r[o],r[o+1],new a.Cartesian3),visible:!0,type:"position",style:{opacity:.4,clampToGround:this.clampToGround},attr:{isHelper:!0},event:{dragStart:l=>{this.points.splice(o+1,0,l.point),this.anchorGroup.hideAllAnchor(),this.tooltip=this.toolTipMessage.end},drag:l=>{this.points[o+1]=l.point},dragEnd:()=>{this.tooltip="",this.fire("editAddPoint",{target:this.graphic,point:this.points[o+1],points:this.points}),this._updateAnchor()},mouseenter:()=>{this.tooltip=this.toolTipMessage.midPositionHover},mouseleave:()=>{this.tooltip=""}}});this.anchorGroup.updateAnchors(e)}}b(bo,"DefaultOptions",{minPointNum:2,maxPointNum:9999});const he={Ready:"ready",Draw:"draw",Edit:"edit"},Gp={[R.Point]:{DrawClass:Ft,EditClass:ot},[R.Polyline]:{DrawClass:oo,EditClass:yo},[R.Polygon]:{DrawClass:ao,EditClass:_o},[R.Circle]:{DrawClass:co,EditClass:Rr},[R.Billboard]:{DrawClass:po,EditClass:Bp},[R.Label]:{DrawClass:ho,EditClass:Lp},[R.Rectangle]:{DrawClass:lo,EditClass:Co},[R.Model]:{DrawClass:uo,EditClass:zp},[R.Wall]:{DrawClass:wo,EditClass:bo}};class xo extends yt{constructor({map:e}){super();b(this,"state",he.Ready);b(this,"graphics",[]);b(this,"effects",[]);b(this,"isContinued",null);b(this,"worker",null);this._map=e,this.once("destroy",e.on("click",t=>{var n;const r=t.targetGraphic;if(this.state!==he.Draw&&!(this.state===he.Edit&&((n=this.worker)==null?void 0:n.graphic)===r)){if(r&&r.hasEdit){this.edit(r);return}r&&r.attr.isAnchor||this.worker instanceof ot||this.state!==he.Ready&&this.finish()}}))}draw(s){var o=s,{isAutoEditing:e,isContinued:t,hasEdit:r=!1}=o,n=te(o,["isAutoEditing","isContinued","hasEdit"]);if(this.state!==he.Ready&&this.finish(),this.state=he.Draw,this._createWorker(n),!this.worker){this.state=he.Ready;return}return this.worker.once("drawEndDone drawCancel",({target:l},c)=>{if(this._clearWorker(),c==="drawEndDone"){if(l.hasEdit=r,this.graphics.push(l),e){this.edit(l,n);return}t?this.draw(...arguments):this.isContinued=null;return}this.isContinued=null}),this.isContinued=!!t,this.worker.start()}_createWorker(e){this.worker&&(console.log("_createWorker\u5B58\u5728\u975E\u6CD5\u7684worker",this.worker),this.worker.destroy(),this.worker=null);const t=Gp[e.type];if(!t){console.error(`drawTool\u6682\u4E0D\u652F\u6301type\u4E3A${e.type}\u7684\u56FE\u5F62`);return}this.state===he.Draw&&(this.worker=new t.DrawClass(ue(N({},e),{map:this._map})),this.worker.on("drawStart drawPoint drawRemovePoint drawEnd drawCancel",(r,n)=>{this.fire(n,r)})),this.state===he.Edit&&(this.worker=new t.EditClass(ue(N({},e),{map:this._map})),this.worker.on("editStart editAddPoint editPoint editHeight editRemovePoint editEnd",(r,n)=>{this.fire(n,r)}))}edit(e,t){var r;if(this.state===he.Edit&&e===((r=this.worker)==null?void 0:r.graphic)){console.log("edit \u540C\u4E00\u4E2Agraphic");return}if(this.state!==he.Ready&&this.finish(),this.state=he.Edit,this._createWorker(N({graphic:e,type:e.type},t)),!this.worker){this.state=he.Ready;return}return this.worker.once("editEndDone",()=>{this._clearWorker()}),this.worker.start()}finish(){this.state===he.Draw&&this.worker&&this.worker.end(),this.state===he.Edit&&this.worker&&this.worker.end(),this._clearWorker()}_clearWorker(){this.worker&&(this.worker.destroy(),this.worker=null),this.state=he.Ready}clear(){this.state!==he.Ready&&this.finish(),this.graphics.forEach(e=>{e.destroy()}),this.graphics=[]}destroy(){this.state!==he.Ready&&this.finish(),this.graphics=[],super.destroy()}}const Br=function(i){if(!a.defined(i)||i.length<2)return 0;let e=0;for(let t=1,r=i.length;t<r;t++)e+=a.Cartesian3.distance(i[t-1],i[t]);return e};function Hp(i,e){let t=a.Rectangle.fromCartesianArray(i),r=Math.max(t.height,t.width);return r/=a.defaultValue(e,10),r}function Fp(i){let e=i.positions,t=i.scene,r=Hp(e,i.splitNum||100);r<=0&&(r=null);let n=a.PolylinePipeline.generateArc({positions:e,height:i.height,minDistance:i.minDistance,granularity:r}),s=[];for(let o=0;o<n.length;o+=3){let l=a.Cartesian3.unpack(n,o);if(t&&a.defaultValue(i.surfaceHeight,!0)){let c=Np(t,l,i),h=a.Cartographic.fromCartesian(l);l=a.Cartesian3.fromRadians(h.longitude,h.latitude,c)}s.push(l)}return s}function Np(i,e,t){return i instanceof a.Viewer&&(i=i.scene),t=t||{},a.defaultValue(t.has3dtiles,a.defined(Ao(i,e)))?Fc(i,e,t):Sn(i,e,t)}const Up={start:function(e){this.params=e,this.scene=e.viewer?e.viewer.scene:e.scene;let t=e.positions;if(t==null||t.length==0){this.end(t);return}if(this.positions=t,a.defaultValue(e.split,!0)){t=Fp({scene:this.scene,positions:t,height:e.height,minDistance:e.minDistance,surfaceHeight:e.splitSurfaceHeight,splitNum:a.defaultValue(e.splitNum,100)});let o=[];for(let l=0,c=t.length;l<c;++l)o.push(t[l].clone());this.positions=o}let n=a.defaultValue(e.has3dtiles,a.defined(Ao(this.scene,t))),s=Wp(this.scene);if(this._has3dtiles=n,this._hasTerrain=s,!s&&!n){this.end(t);return}return s?this.clampToTerrain(t):this.clampTo3DTileset(t),this},clampToTerrain:function(e){let t=this.scene.globe.ellipsoid,r=t.cartesianArrayToCartographicArray(e),n=a.Cartographic.fromCartesian(e[0]).height,s=this;a.when(a.sampleTerrainMostDetailed(this.scene.terrainProvider,r),o=>{o=s.removeNullData(o);let l=!1,c=a.defaultValue(s.params.offset,0);for(let u=0;u<o.length;++u)o[u].height==null?(l=!0,o[u].height=n):o[u].height=c+o[u].height;let h=t.cartographicArrayToCartesianArray(o);s._has3dtiles?s.clampTo3DTileset(h):s.end(h,l)})},clampTo3DTileset:function(e){let t=this,r=[];for(let n=0,s=e.length;n<s;++n)r.push(e[n].clone());this.scene.clampToHeightMostDetailed(r).then(n=>{n=t.removeNullData(n),n.length==0&&(n=e),t.end(n)})},end:function(e,t){this.params.calback&&this.params.calback(e,t,this.positions)},removeNullData:function(e){let t=[];for(let r=0;r<e.length;++r)e[r]!=null&&t.push(e[r]);return t}};function Wp(i){return!!i.terrainProvider}function Ao(i,e){if(!e)return null;i instanceof a.Viewer&&(i=i.scene),e instanceof a.Cartesian3&&(e=[e]);for(let t=0,r=e.length;t<r;++t){let n=e[t],s=a.SceneTransforms.wgs84ToWindowCoordinates(i,n);if(!a.defined(s))continue;let o=i.pick(s,10,10);if(a.defined(o)&&a.defined(o.primitive)&&o.primitive instanceof a.Cesium3DTileset)return o.primitive}return null}function Vp(i){let e=i.positions,t={};for(let o in i)o=="positions"||o=="calback"||(t[o]=i[o]);let r=0,n=e.length-1;function s(){if(console.log({index:r,allcount:n}),r>=n){console.log("done"),i.calbak&&i.calbak(),i.calbakEnd&&i.calbakEnd();return}t.positions=[e[r],e[r+1]],t.calback=function(o,l){i.calbakStep(o,l,r),r++,s()},Up.start(t)}s()}const Lr=function(i,e){if(i==null)return"";(e==null||e==="auto")&&(i<1e3?e="m":e="km");let t="";switch(e){default:case"m":t=`${i.toFixed(2)}\u7C73`;break;case"km":t=`${(i*.001).toFixed(2)}\u516C\u91CC`;break;case"mile":t=`${(i*54e-5).toFixed(2)}\u6D77\u91CC`;break;case"zhang":t=`${(i*.3).toFixed(2)}\u4E08`;break}return t},jp=(i,e)=>`\u9AD8\u5EA6\u5DEE:${Lr(i,e)}`;function qp({totalDistance:i,unit:e,partDistance:t}){let r=Lr(i,e);if(i!==t){const n=Lr(t,e);r=`${r}
(+${n})`}return r}function Qp(i,e){if(i==null)return"";(e==null||e=="auto")&&(i<1e6?e="m":e="km");let t="";switch(e){default:case"m":t=`${i.toFixed(2)}\u5E73\u65B9\u7C73`;break;case"km":t=`${(i/1e6).toFixed(2)}\u5E73\u65B9\u516C\u91CC`;break;case"mu":t=`${(i*.0015).toFixed(2)}\u4EA9`;break;case"ha":t=`${(i*1e-4).toFixed(2)}\u516C\u9877`;break}return t}function Yp(i){return`\u89D2\u5EA6\uFF1A${i}\xB0`}class bi{constructor({map:e}){this._map=e,this._parent=e.addGraphic({type:"group",attr:{isHelper:!0}})}finish(){this._map.drawTool.finish()}destroy(){this._map=null,this._parent&&(this._parent.destroy(),this._parent=null),this.graphic&&(this.graphic.destroy(),this.graphic=null)}}class Kp extends bi{constructor(){super(...arguments);b(this,"labelGraphics",[])}start({lineStyle:e={},labelStyle:t={},unit:r,splitNum:n,format:s=qp,clampToGround:o=!1}={}){return new Promise(l=>{const c=this._map.drawTool;c.draw({type:"polyline",style:ue(N({},e),{clampToGround:o}),parent:this._parent}).then(({target:p})=>{this.graphic=p});const h=c.on("drawPoint",p=>{const d=new _i({position:p.point,style:N({text:"",color:"#ffffff",fontSize:18,outlineColor:"#000000",outlineWidth:3,pixelOffset:[0,-15],visibleDepth:!1},t)}).addTo(this._parent);let f=p.points;if(f.length===1)d.setStyle({text:"\u8D77\u70B9"});else{let m=Br(f),g=Br([f[f.length-2],f[f.length-1]]);g<.001&&d.hide(),d.setOptions({style:{text:s({unit:r,partDistance:g,totalDistance:m})},attr:{partDistance:g}})}this.labelGraphics.push(d)}),u=c.on("drawRemovePoint",()=>{this.labelGraphics.pop().destroy()});c.once("drawEnd",p=>{if(h(),u(),o){const d=1.2;let f=0;const m=this.labelGraphics,g=p.points;Vp({viewer:this._map.viewer,positions:g,splitNum:n,calbakStep:function(x,y,v){let _=Br(x);y&&(_=_*d),f+=_,v++;let P=m[v];P&&(P.setOptions({style:{text:s({unit:r,partDistance:_,totalDistance:f})},attr:{partDistance:_,totalDistance:f}}),P.setStyle({}))},calbakEnd:()=>{l({distance:f,points:this.labelGraphics.map(w=>({position:w.point,distance:w.attr.totalDistance})),group:this._parent})}})}else l({distance:this.labelGraphics.reduce((d,f)=>d+f.attr.partDistance||0,0),points:this.labelGraphics.map(d=>({position:d.point,distance:d.attr.partDistance||0})),group:this._parent})})})}destroy(){super.destroy(),this.labelGraphics&&(this.labelGraphics=null)}}class Jp extends bi{start({lineStyle:e={},labelStyle:t={},unit:r,format:n=jp}={}){return new Promise((s,o)=>{this._map.drawTool.draw({type:"polyline",minPointNum:2,maxPointNum:2,style:N({color:"#ffff00"},e),parent:this._parent}).then(({target:c,points:h})=>{this.graphic=c;const u=Math.abs(h[0].height-h[1].height);this._parent.addGraphic({type:"label",position:c.center.addHeight(5),style:N({text:n(u,r),fontSize:18,outlineColor:"#000",verticalOrigin:"BOTTOM",color:"#ffffff",outlineWidth:3,visibleDepth:!1},t)}),s({height:u,target:c,group:this._parent})}).catch(()=>{o()})})}}class Xp extends bi{start({polygonStyle:e={},labelStyle:t={},unit:r,format:n=Qp}={}){return new Promise((s,o)=>{this._map.drawTool.draw({type:"polygon",style:N({},e),parent:this._parent}).then(({target:c,points:h})=>{const u=fh(h.map(p=>p.toLatLngArray()));new _i({position:c.center,style:N({text:n(u,r),color:"#ffffff",fontSize:18,outlineColor:"#000000",outlineWidth:3,pixelOffset:[0,-15],visibleDepth:!1},t)}).addTo(this._parent),s({area:u,target:c,group:this._parent})}).catch(()=>{o()})})}}class Zp extends bi{start({lineStyle:e={},dashLineStyle:t={},labelStyle:r={},format:n=Yp}={}){return new Promise((s,o)=>{this._map.drawTool.draw({type:"polyline",minPointNum:2,maxPointNum:2,style:N({color:"#ffff00",width:5,material:{type:"PolylineArrow",color:"yellow"}},e),parent:this._parent}).then(({target:c,points:h})=>{this.graphic=c;const u=mh(...h),p=Qc(...h,-u);this._parent.addGraphic({type:"polyline",positions:[h[0],p],style:N({width:2,material:{type:"PolylineDash",color:"red"}},t)}),this._parent.addGraphic({type:"label",position:c.center.addHeight(5),style:N({text:n(u),fontSize:18,outlineColor:"#000",verticalOrigin:"BOTTOM",color:"#ffffff",outlineWidth:3,visibleDepth:!1},r)}),s({angle:u,target:c,group:this._parent})}).catch(()=>{o()})})}}class Po{constructor({map:e}){b(this,"instances",[]);b(this,"isDestroyed",!1);this._map=e}distance(e){return this.currentMeasure=new Kp({map:this._map}),this.instances.push(this.currentMeasure),this.currentMeasure.start(e)}horizontalDistance(){}height(e){return this.currentMeasure=new Jp({map:this._map}),this.instances.push(this.currentMeasure),this.currentMeasure.start(e)}area(e){return this.currentMeasure=new Xp({map:this._map}),this.instances.push(this.currentMeasure),this.currentMeasure.start(e)}angle(e){return this.currentMeasure=new Zp({map:this._map}),this.instances.push(this.currentMeasure),this.currentMeasure.start(e)}clear(){this.finish(),this.instances.forEach(e=>{e.destroy()}),this.instances=[]}finish(){this.currentMeasure&&(this.currentMeasure.finish(),this.currentMeasure=null)}destroy(){this.isDestroyed||(this.currentMeasure=null,this.instances.forEach(e=>{e.destroy()}),this.instances=null,this._map=null,this.isDestroyed=!0)}}class $p{constructor({map:e}){this._map=e}start(s={},n=l=>l){var o=s,{style:e={},keep:t=!1}=o,r=te(o,["style","keep"]);return new Promise(async l=>{const c=this._map,{target:h}=await c.drawTool.draw(N({type:"circle",style:N({clampToGround:!0},e)},r));l(c.getAllGraphics().filter(u=>u.point&&u.point.isInCircle(h)&&n(u)&&u.visible&&u!==h)),t?this._graphic=h:h.destroy()})}finish(){this._map.drawTool.finish()}destroy(){this.isDestroyed||(this.isDestroyed=!0,this._graphic&&(this._graphic.destroy(),this._graphic=null),this.finish(),this._map=null)}}class ef{constructor({map:e}){this._map=e}start(s={},n=l=>l){var o=s,{style:e={},keep:t=!1}=o,r=te(o,["style","keep"]);return new Promise(async l=>{const c=this._map,{target:h}=await c.drawTool.draw(N({type:"rectangle",style:N({clampToGround:!0},e)},r));l(c.getAllGraphics().filter(u=>u.point&&u.point.isInPolygon(h.boundingPoints)&&n(u)&&u.visible&&u!==h)),t?this._graphic=h:h.destroy()})}finish(){this._map.drawTool.finish()}destroy(){this.isDestroyed||(this.isDestroyed=!0,this._graphic&&(this._graphic.destroy(),this._graphic=null),this.finish(),this._map=null)}}class tf{constructor({map:e}){this._map=e}start(s={},n=l=>l){var o=s,{style:e={},keep:t=!1}=o,r=te(o,["style","keep"]);return new Promise(async l=>{const c=this._map,{target:h}=await c.drawTool.draw(N({type:"polygon",style:N({clampToGround:!0},e)},r));l(c.getAllGraphics().filter(u=>u.point&&u.point.isInPolygon(h)&&n(u)&&u.visible&&u!==h)),t?this._graphic=h:h.destroy()})}finish(){this._map.drawTool.finish()}destroy(){this.isDestroyed||(this.isDestroyed=!0,this._graphic&&(this._graphic.destroy(),this._graphic=null),this.finish(),this._map=null)}}class So{constructor({map:e}){b(this,"instances",[]);b(this,"currentPicker",null);b(this,"isDestroyed",!1);this._map=e}circle(e){return this.finish(),this.currentPicker=new $p({map:this._map}),this.instances.push(this.currentPicker),this.currentPicker.start(e)}rectangle(e){return this.finish(),this.currentPicker=new ef({map:this._map}),this.instances.push(this.currentPicker),this.currentPicker.start(e)}polygon(e){return this.finish(),this.currentPicker=new tf({map:this._map}),this.instances.push(this.currentPicker),this.currentPicker.start(e)}async view({match:e=()=>!0}={}){const t=this._map,r=t.viewer.camera.computeViewRectangle(),n=[a.Rectangle.southeast(r),a.Rectangle.northeast(r),a.Rectangle.northwest(r),a.Rectangle.southwest(r)];return t.getAllGraphics().filter(s=>s.point&&s.point.isInPolygon(n)&&e(s)&&s.visible)}finish(){this.currentPicker&&(this.currentPicker.finish(),this.currentPicker=null)}clear(){this.finish(),this.instances.forEach(e=>{e.destroy()}),this.instances=[]}destroy(){this.isDestroyed||(this._map=null,this.isDestroyed=!0)}}class bt extends Qe{constructor(e){super();this.id=e.id||et(),this.options=e}addTo(e){return e.addControl(this),this}}var To={exports:{}},Be={exports:{}};(function(i,e){(function(t,r){i.exports=r()})(me,function(){var t=t||function(r,n){var s;if(typeof window!="undefined"&&window.crypto&&(s=window.crypto),typeof self!="undefined"&&self.crypto&&(s=self.crypto),typeof globalThis!="undefined"&&globalThis.crypto&&(s=globalThis.crypto),!s&&typeof window!="undefined"&&window.msCrypto&&(s=window.msCrypto),!s&&typeof me!="undefined"&&me.crypto&&(s=me.crypto),!s&&typeof eh=="function")try{s=require("crypto")}catch{}var o=function(){if(s){if(typeof s.getRandomValues=="function")try{return s.getRandomValues(new Uint32Array(1))[0]}catch{}if(typeof s.randomBytes=="function")try{return s.randomBytes(4).readInt32LE()}catch{}}throw new Error("Native crypto module could not be used to get secure random number.")},l=Object.create||function(){function y(){}return function(v){var _;return y.prototype=v,_=new y,y.prototype=null,_}}(),c={},h=c.lib={},u=h.Base=function(){return{extend:function(y){var v=l(this);return y&&v.mixIn(y),(!v.hasOwnProperty("init")||this.init===v.init)&&(v.init=function(){v.$super.init.apply(this,arguments)}),v.init.prototype=v,v.$super=this,v},create:function(){var y=this.extend();return y.init.apply(y,arguments),y},init:function(){},mixIn:function(y){for(var v in y)y.hasOwnProperty(v)&&(this[v]=y[v]);y.hasOwnProperty("toString")&&(this.toString=y.toString)},clone:function(){return this.init.prototype.extend(this)}}}(),p=h.WordArray=u.extend({init:function(y,v){y=this.words=y||[],v!=n?this.sigBytes=v:this.sigBytes=y.length*4},toString:function(y){return(y||f).stringify(this)},concat:function(y){var v=this.words,_=y.words,P=this.sigBytes,O=y.sigBytes;if(this.clamp(),P%4)for(var k=0;k<O;k++){var W=_[k>>>2]>>>24-k%4*8&255;v[P+k>>>2]|=W<<24-(P+k)%4*8}else for(var U=0;U<O;U+=4)v[P+U>>>2]=_[U>>>2];return this.sigBytes+=O,this},clamp:function(){var y=this.words,v=this.sigBytes;y[v>>>2]&=4294967295<<32-v%4*8,y.length=r.ceil(v/4)},clone:function(){var y=u.clone.call(this);return y.words=this.words.slice(0),y},random:function(y){for(var v=[],_=0;_<y;_+=4)v.push(o());return new p.init(v,y)}}),d=c.enc={},f=d.Hex={stringify:function(y){for(var v=y.words,_=y.sigBytes,P=[],O=0;O<_;O++){var k=v[O>>>2]>>>24-O%4*8&255;P.push((k>>>4).toString(16)),P.push((k&15).toString(16))}return P.join("")},parse:function(y){for(var v=y.length,_=[],P=0;P<v;P+=2)_[P>>>3]|=parseInt(y.substr(P,2),16)<<24-P%8*4;return new p.init(_,v/2)}},m=d.Latin1={stringify:function(y){for(var v=y.words,_=y.sigBytes,P=[],O=0;O<_;O++){var k=v[O>>>2]>>>24-O%4*8&255;P.push(String.fromCharCode(k))}return P.join("")},parse:function(y){for(var v=y.length,_=[],P=0;P<v;P++)_[P>>>2]|=(y.charCodeAt(P)&255)<<24-P%4*8;return new p.init(_,v)}},g=d.Utf8={stringify:function(y){try{return decodeURIComponent(escape(m.stringify(y)))}catch{throw new Error("Malformed UTF-8 data")}},parse:function(y){return m.parse(unescape(encodeURIComponent(y)))}},w=h.BufferedBlockAlgorithm=u.extend({reset:function(){this._data=new p.init,this._nDataBytes=0},_append:function(y){typeof y=="string"&&(y=g.parse(y)),this._data.concat(y),this._nDataBytes+=y.sigBytes},_process:function(y){var v,_=this._data,P=_.words,O=_.sigBytes,k=this.blockSize,W=k*4,U=O/W;y?U=r.ceil(U):U=r.max((U|0)-this._minBufferSize,0);var C=U*k,S=r.min(C*4,O);if(C){for(var z=0;z<C;z+=k)this._doProcessBlock(P,z);v=P.splice(0,C),_.sigBytes-=S}return new p.init(v,S)},clone:function(){var y=u.clone.call(this);return y._data=this._data.clone(),y},_minBufferSize:0});h.Hasher=w.extend({cfg:u.extend(),init:function(y){this.cfg=this.cfg.extend(y),this.reset()},reset:function(){w.reset.call(this),this._doReset()},update:function(y){return this._append(y),this._process(),this},finalize:function(y){y&&this._append(y);var v=this._doFinalize();return v},blockSize:512/32,_createHelper:function(y){return function(v,_){return new y.init(_).finalize(v)}},_createHmacHelper:function(y){return function(v,_){return new x.HMAC.init(y,_).finalize(v)}}});var x=c.algo={};return c}(Math);return t})})(Be),function(i,e){(function(t,r){i.exports=r(Be.exports)})(me,function(t){return t.enc.Utf8})}(To);var xi=To.exports,Mo={exports:{}},Eo={exports:{}};(function(i,e){(function(t,r){i.exports=r(Be.exports)})(me,function(t){return function(){var r=t,n=r.lib,s=n.WordArray,o=r.enc;o.Base64={stringify:function(c){var h=c.words,u=c.sigBytes,p=this._map;c.clamp();for(var d=[],f=0;f<u;f+=3)for(var m=h[f>>>2]>>>24-f%4*8&255,g=h[f+1>>>2]>>>24-(f+1)%4*8&255,w=h[f+2>>>2]>>>24-(f+2)%4*8&255,x=m<<16|g<<8|w,y=0;y<4&&f+y*.75<u;y++)d.push(p.charAt(x>>>6*(3-y)&63));var v=p.charAt(64);if(v)for(;d.length%4;)d.push(v);return d.join("")},parse:function(c){var h=c.length,u=this._map,p=this._reverseMap;if(!p){p=this._reverseMap=[];for(var d=0;d<u.length;d++)p[u.charCodeAt(d)]=d}var f=u.charAt(64);if(f){var m=c.indexOf(f);m!==-1&&(h=m)}return l(c,h,p)},_map:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="};function l(c,h,u){for(var p=[],d=0,f=0;f<h;f++)if(f%4){var m=u[c.charCodeAt(f-1)]<<f%4*2,g=u[c.charCodeAt(f)]>>>6-f%4*2,w=m|g;p[d>>>2]|=w<<24-d%4*8,d++}return s.create(p,d)}}(),t.enc.Base64})})(Eo);var Do={exports:{}};(function(i,e){(function(t,r){i.exports=r(Be.exports)})(me,function(t){return function(r){var n=t,s=n.lib,o=s.WordArray,l=s.Hasher,c=n.algo,h=[];(function(){for(var g=0;g<64;g++)h[g]=r.abs(r.sin(g+1))*4294967296|0})();var u=c.MD5=l.extend({_doReset:function(){this._hash=new o.init([1732584193,4023233417,2562383102,271733878])},_doProcessBlock:function(g,w){for(var x=0;x<16;x++){var y=w+x,v=g[y];g[y]=(v<<8|v>>>24)&16711935|(v<<24|v>>>8)&4278255360}var _=this._hash.words,P=g[w+0],O=g[w+1],k=g[w+2],W=g[w+3],U=g[w+4],C=g[w+5],S=g[w+6],z=g[w+7],A=g[w+8],T=g[w+9],E=g[w+10],F=g[w+11],G=g[w+12],q=g[w+13],V=g[w+14],ee=g[w+15],M=_[0],D=_[1],I=_[2],B=_[3];M=p(M,D,I,B,P,7,h[0]),B=p(B,M,D,I,O,12,h[1]),I=p(I,B,M,D,k,17,h[2]),D=p(D,I,B,M,W,22,h[3]),M=p(M,D,I,B,U,7,h[4]),B=p(B,M,D,I,C,12,h[5]),I=p(I,B,M,D,S,17,h[6]),D=p(D,I,B,M,z,22,h[7]),M=p(M,D,I,B,A,7,h[8]),B=p(B,M,D,I,T,12,h[9]),I=p(I,B,M,D,E,17,h[10]),D=p(D,I,B,M,F,22,h[11]),M=p(M,D,I,B,G,7,h[12]),B=p(B,M,D,I,q,12,h[13]),I=p(I,B,M,D,V,17,h[14]),D=p(D,I,B,M,ee,22,h[15]),M=d(M,D,I,B,O,5,h[16]),B=d(B,M,D,I,S,9,h[17]),I=d(I,B,M,D,F,14,h[18]),D=d(D,I,B,M,P,20,h[19]),M=d(M,D,I,B,C,5,h[20]),B=d(B,M,D,I,E,9,h[21]),I=d(I,B,M,D,ee,14,h[22]),D=d(D,I,B,M,U,20,h[23]),M=d(M,D,I,B,T,5,h[24]),B=d(B,M,D,I,V,9,h[25]),I=d(I,B,M,D,W,14,h[26]),D=d(D,I,B,M,A,20,h[27]),M=d(M,D,I,B,q,5,h[28]),B=d(B,M,D,I,k,9,h[29]),I=d(I,B,M,D,z,14,h[30]),D=d(D,I,B,M,G,20,h[31]),M=f(M,D,I,B,C,4,h[32]),B=f(B,M,D,I,A,11,h[33]),I=f(I,B,M,D,F,16,h[34]),D=f(D,I,B,M,V,23,h[35]),M=f(M,D,I,B,O,4,h[36]),B=f(B,M,D,I,U,11,h[37]),I=f(I,B,M,D,z,16,h[38]),D=f(D,I,B,M,E,23,h[39]),M=f(M,D,I,B,q,4,h[40]),B=f(B,M,D,I,P,11,h[41]),I=f(I,B,M,D,W,16,h[42]),D=f(D,I,B,M,S,23,h[43]),M=f(M,D,I,B,T,4,h[44]),B=f(B,M,D,I,G,11,h[45]),I=f(I,B,M,D,ee,16,h[46]),D=f(D,I,B,M,k,23,h[47]),M=m(M,D,I,B,P,6,h[48]),B=m(B,M,D,I,z,10,h[49]),I=m(I,B,M,D,V,15,h[50]),D=m(D,I,B,M,C,21,h[51]),M=m(M,D,I,B,G,6,h[52]),B=m(B,M,D,I,W,10,h[53]),I=m(I,B,M,D,E,15,h[54]),D=m(D,I,B,M,O,21,h[55]),M=m(M,D,I,B,A,6,h[56]),B=m(B,M,D,I,ee,10,h[57]),I=m(I,B,M,D,S,15,h[58]),D=m(D,I,B,M,q,21,h[59]),M=m(M,D,I,B,U,6,h[60]),B=m(B,M,D,I,F,10,h[61]),I=m(I,B,M,D,k,15,h[62]),D=m(D,I,B,M,T,21,h[63]),_[0]=_[0]+M|0,_[1]=_[1]+D|0,_[2]=_[2]+I|0,_[3]=_[3]+B|0},_doFinalize:function(){var g=this._data,w=g.words,x=this._nDataBytes*8,y=g.sigBytes*8;w[y>>>5]|=128<<24-y%32;var v=r.floor(x/4294967296),_=x;w[(y+64>>>9<<4)+15]=(v<<8|v>>>24)&16711935|(v<<24|v>>>8)&4278255360,w[(y+64>>>9<<4)+14]=(_<<8|_>>>24)&16711935|(_<<24|_>>>8)&4278255360,g.sigBytes=(w.length+1)*4,this._process();for(var P=this._hash,O=P.words,k=0;k<4;k++){var W=O[k];O[k]=(W<<8|W>>>24)&16711935|(W<<24|W>>>8)&4278255360}return P},clone:function(){var g=l.clone.call(this);return g._hash=this._hash.clone(),g}});function p(g,w,x,y,v,_,P){var O=g+(w&x|~w&y)+v+P;return(O<<_|O>>>32-_)+w}function d(g,w,x,y,v,_,P){var O=g+(w&y|x&~y)+v+P;return(O<<_|O>>>32-_)+w}function f(g,w,x,y,v,_,P){var O=g+(w^x^y)+v+P;return(O<<_|O>>>32-_)+w}function m(g,w,x,y,v,_,P){var O=g+(x^(w|~y))+v+P;return(O<<_|O>>>32-_)+w}n.MD5=l._createHelper(u),n.HmacMD5=l._createHmacHelper(u)}(Math),t.MD5})})(Do);var zr={exports:{}},ko={exports:{}};(function(i,e){(function(t,r){i.exports=r(Be.exports)})(me,function(t){return function(){var r=t,n=r.lib,s=n.WordArray,o=n.Hasher,l=r.algo,c=[],h=l.SHA1=o.extend({_doReset:function(){this._hash=new s.init([1732584193,4023233417,2562383102,271733878,3285377520])},_doProcessBlock:function(u,p){for(var d=this._hash.words,f=d[0],m=d[1],g=d[2],w=d[3],x=d[4],y=0;y<80;y++){if(y<16)c[y]=u[p+y]|0;else{var v=c[y-3]^c[y-8]^c[y-14]^c[y-16];c[y]=v<<1|v>>>31}var _=(f<<5|f>>>27)+x+c[y];y<20?_+=(m&g|~m&w)+1518500249:y<40?_+=(m^g^w)+1859775393:y<60?_+=(m&g|m&w|g&w)-1894007588:_+=(m^g^w)-899497514,x=w,w=g,g=m<<30|m>>>2,m=f,f=_}d[0]=d[0]+f|0,d[1]=d[1]+m|0,d[2]=d[2]+g|0,d[3]=d[3]+w|0,d[4]=d[4]+x|0},_doFinalize:function(){var u=this._data,p=u.words,d=this._nDataBytes*8,f=u.sigBytes*8;return p[f>>>5]|=128<<24-f%32,p[(f+64>>>9<<4)+14]=Math.floor(d/4294967296),p[(f+64>>>9<<4)+15]=d,u.sigBytes=p.length*4,this._process(),this._hash},clone:function(){var u=o.clone.call(this);return u._hash=this._hash.clone(),u}});r.SHA1=o._createHelper(h),r.HmacSHA1=o._createHmacHelper(h)}(),t.SHA1})})(ko);var Io={exports:{}};(function(i,e){(function(t,r){i.exports=r(Be.exports)})(me,function(t){(function(){var r=t,n=r.lib,s=n.Base,o=r.enc,l=o.Utf8,c=r.algo;c.HMAC=s.extend({init:function(h,u){h=this._hasher=new h.init,typeof u=="string"&&(u=l.parse(u));var p=h.blockSize,d=p*4;u.sigBytes>d&&(u=h.finalize(u)),u.clamp();for(var f=this._oKey=u.clone(),m=this._iKey=u.clone(),g=f.words,w=m.words,x=0;x<p;x++)g[x]^=1549556828,w[x]^=909522486;f.sigBytes=m.sigBytes=d,this.reset()},reset:function(){var h=this._hasher;h.reset(),h.update(this._iKey)},update:function(h){return this._hasher.update(h),this},finalize:function(h){var u=this._hasher,p=u.finalize(h);u.reset();var d=u.finalize(this._oKey.clone().concat(p));return d}})})()})})(Io),function(i,e){(function(t,r,n){i.exports=r(Be.exports,ko.exports,Io.exports)})(me,function(t){return function(){var r=t,n=r.lib,s=n.Base,o=n.WordArray,l=r.algo,c=l.MD5,h=l.EvpKDF=s.extend({cfg:s.extend({keySize:128/32,hasher:c,iterations:1}),init:function(u){this.cfg=this.cfg.extend(u)},compute:function(u,p){for(var d,f=this.cfg,m=f.hasher.create(),g=o.create(),w=g.words,x=f.keySize,y=f.iterations;w.length<x;){d&&m.update(d),d=m.update(u).finalize(p),m.reset();for(var v=1;v<y;v++)d=m.finalize(d),m.reset();g.concat(d)}return g.sigBytes=x*4,g}});r.EvpKDF=function(u,p,d){return h.create(d).compute(u,p)}}(),t.EvpKDF})}(zr);var Ai={exports:{}};(function(i,e){(function(t,r,n){i.exports=r(Be.exports,zr.exports)})(me,function(t){t.lib.Cipher||function(r){var n=t,s=n.lib,o=s.Base,l=s.WordArray,c=s.BufferedBlockAlgorithm,h=n.enc;h.Utf8;var u=h.Base64,p=n.algo,d=p.EvpKDF,f=s.Cipher=c.extend({cfg:o.extend(),createEncryptor:function(C,S){return this.create(this._ENC_XFORM_MODE,C,S)},createDecryptor:function(C,S){return this.create(this._DEC_XFORM_MODE,C,S)},init:function(C,S,z){this.cfg=this.cfg.extend(z),this._xformMode=C,this._key=S,this.reset()},reset:function(){c.reset.call(this),this._doReset()},process:function(C){return this._append(C),this._process()},finalize:function(C){C&&this._append(C);var S=this._doFinalize();return S},keySize:128/32,ivSize:128/32,_ENC_XFORM_MODE:1,_DEC_XFORM_MODE:2,_createHelper:function(){function C(S){return typeof S=="string"?U:O}return function(S){return{encrypt:function(z,A,T){return C(A).encrypt(S,z,A,T)},decrypt:function(z,A,T){return C(A).decrypt(S,z,A,T)}}}}()});s.StreamCipher=f.extend({_doFinalize:function(){var C=this._process(!0);return C},blockSize:1});var m=n.mode={},g=s.BlockCipherMode=o.extend({createEncryptor:function(C,S){return this.Encryptor.create(C,S)},createDecryptor:function(C,S){return this.Decryptor.create(C,S)},init:function(C,S){this._cipher=C,this._iv=S}}),w=m.CBC=function(){var C=g.extend();C.Encryptor=C.extend({processBlock:function(z,A){var T=this._cipher,E=T.blockSize;S.call(this,z,A,E),T.encryptBlock(z,A),this._prevBlock=z.slice(A,A+E)}}),C.Decryptor=C.extend({processBlock:function(z,A){var T=this._cipher,E=T.blockSize,F=z.slice(A,A+E);T.decryptBlock(z,A),S.call(this,z,A,E),this._prevBlock=F}});function S(z,A,T){var E,F=this._iv;F?(E=F,this._iv=r):E=this._prevBlock;for(var G=0;G<T;G++)z[A+G]^=E[G]}return C}(),x=n.pad={},y=x.Pkcs7={pad:function(C,S){for(var z=S*4,A=z-C.sigBytes%z,T=A<<24|A<<16|A<<8|A,E=[],F=0;F<A;F+=4)E.push(T);var G=l.create(E,A);C.concat(G)},unpad:function(C){var S=C.words[C.sigBytes-1>>>2]&255;C.sigBytes-=S}};s.BlockCipher=f.extend({cfg:f.cfg.extend({mode:w,padding:y}),reset:function(){var C;f.reset.call(this);var S=this.cfg,z=S.iv,A=S.mode;this._xformMode==this._ENC_XFORM_MODE?C=A.createEncryptor:(C=A.createDecryptor,this._minBufferSize=1),this._mode&&this._mode.__creator==C?this._mode.init(this,z&&z.words):(this._mode=C.call(A,this,z&&z.words),this._mode.__creator=C)},_doProcessBlock:function(C,S){this._mode.processBlock(C,S)},_doFinalize:function(){var C,S=this.cfg.padding;return this._xformMode==this._ENC_XFORM_MODE?(S.pad(this._data,this.blockSize),C=this._process(!0)):(C=this._process(!0),S.unpad(C)),C},blockSize:128/32});var v=s.CipherParams=o.extend({init:function(C){this.mixIn(C)},toString:function(C){return(C||this.formatter).stringify(this)}}),_=n.format={},P=_.OpenSSL={stringify:function(C){var S,z=C.ciphertext,A=C.salt;return A?S=l.create([1398893684,1701076831]).concat(A).concat(z):S=z,S.toString(u)},parse:function(C){var S,z=u.parse(C),A=z.words;return A[0]==1398893684&&A[1]==1701076831&&(S=l.create(A.slice(2,4)),A.splice(0,4),z.sigBytes-=16),v.create({ciphertext:z,salt:S})}},O=s.SerializableCipher=o.extend({cfg:o.extend({format:P}),encrypt:function(C,S,z,A){A=this.cfg.extend(A);var T=C.createEncryptor(z,A),E=T.finalize(S),F=T.cfg;return v.create({ciphertext:E,key:z,iv:F.iv,algorithm:C,mode:F.mode,padding:F.padding,blockSize:C.blockSize,formatter:A.format})},decrypt:function(C,S,z,A){A=this.cfg.extend(A),S=this._parse(S,A.format);var T=C.createDecryptor(z,A).finalize(S.ciphertext);return T},_parse:function(C,S){return typeof C=="string"?S.parse(C,this):C}}),k=n.kdf={},W=k.OpenSSL={execute:function(C,S,z,A){A||(A=l.random(64/8));var T=d.create({keySize:S+z}).compute(C,A),E=l.create(T.words.slice(S),z*4);return T.sigBytes=S*4,v.create({key:T,iv:E,salt:A})}},U=s.PasswordBasedCipher=O.extend({cfg:O.cfg.extend({kdf:W}),encrypt:function(C,S,z,A){A=this.cfg.extend(A);var T=A.kdf.execute(z,C.keySize,C.ivSize);A.iv=T.iv;var E=O.encrypt.call(this,C,S,T.key,A);return E.mixIn(T),E},decrypt:function(C,S,z,A){A=this.cfg.extend(A),S=this._parse(S,A.format);var T=A.kdf.execute(z,C.keySize,C.ivSize,S.salt);A.iv=T.iv;var E=O.decrypt.call(this,C,S,T.key,A);return E}})}()})})(Ai),function(i,e){(function(t,r,n){i.exports=r(Be.exports,Eo.exports,Do.exports,zr.exports,Ai.exports)})(me,function(t){return function(){var r=t,n=r.lib,s=n.BlockCipher,o=r.algo,l=[],c=[],h=[],u=[],p=[],d=[],f=[],m=[],g=[],w=[];(function(){for(var v=[],_=0;_<256;_++)_<128?v[_]=_<<1:v[_]=_<<1^283;for(var P=0,O=0,_=0;_<256;_++){var k=O^O<<1^O<<2^O<<3^O<<4;k=k>>>8^k&255^99,l[P]=k,c[k]=P;var W=v[P],U=v[W],C=v[U],S=v[k]*257^k*16843008;h[P]=S<<24|S>>>8,u[P]=S<<16|S>>>16,p[P]=S<<8|S>>>24,d[P]=S;var S=C*16843009^U*65537^W*257^P*16843008;f[k]=S<<24|S>>>8,m[k]=S<<16|S>>>16,g[k]=S<<8|S>>>24,w[k]=S,P?(P=W^v[v[v[C^W]]],O^=v[v[O]]):P=O=1}})();var x=[0,1,2,4,8,16,32,64,128,27,54],y=o.AES=s.extend({_doReset:function(){var v;if(!(this._nRounds&&this._keyPriorReset===this._key)){for(var _=this._keyPriorReset=this._key,P=_.words,O=_.sigBytes/4,k=this._nRounds=O+6,W=(k+1)*4,U=this._keySchedule=[],C=0;C<W;C++)C<O?U[C]=P[C]:(v=U[C-1],C%O?O>6&&C%O==4&&(v=l[v>>>24]<<24|l[v>>>16&255]<<16|l[v>>>8&255]<<8|l[v&255]):(v=v<<8|v>>>24,v=l[v>>>24]<<24|l[v>>>16&255]<<16|l[v>>>8&255]<<8|l[v&255],v^=x[C/O|0]<<24),U[C]=U[C-O]^v);for(var S=this._invKeySchedule=[],z=0;z<W;z++){var C=W-z;if(z%4)var v=U[C];else var v=U[C-4];z<4||C<=4?S[z]=v:S[z]=f[l[v>>>24]]^m[l[v>>>16&255]]^g[l[v>>>8&255]]^w[l[v&255]]}}},encryptBlock:function(v,_){this._doCryptBlock(v,_,this._keySchedule,h,u,p,d,l)},decryptBlock:function(v,_){var P=v[_+1];v[_+1]=v[_+3],v[_+3]=P,this._doCryptBlock(v,_,this._invKeySchedule,f,m,g,w,c);var P=v[_+1];v[_+1]=v[_+3],v[_+3]=P},_doCryptBlock:function(v,_,P,O,k,W,U,C){for(var S=this._nRounds,z=v[_]^P[0],A=v[_+1]^P[1],T=v[_+2]^P[2],E=v[_+3]^P[3],F=4,G=1;G<S;G++){var q=O[z>>>24]^k[A>>>16&255]^W[T>>>8&255]^U[E&255]^P[F++],V=O[A>>>24]^k[T>>>16&255]^W[E>>>8&255]^U[z&255]^P[F++],ee=O[T>>>24]^k[E>>>16&255]^W[z>>>8&255]^U[A&255]^P[F++],M=O[E>>>24]^k[z>>>16&255]^W[A>>>8&255]^U[T&255]^P[F++];z=q,A=V,T=ee,E=M}var q=(C[z>>>24]<<24|C[A>>>16&255]<<16|C[T>>>8&255]<<8|C[E&255])^P[F++],V=(C[A>>>24]<<24|C[T>>>16&255]<<16|C[E>>>8&255]<<8|C[z&255])^P[F++],ee=(C[T>>>24]<<24|C[E>>>16&255]<<16|C[z>>>8&255]<<8|C[A&255])^P[F++],M=(C[E>>>24]<<24|C[z>>>16&255]<<16|C[A>>>8&255]<<8|C[T&255])^P[F++];v[_]=q,v[_+1]=V,v[_+2]=ee,v[_+3]=M},keySize:256/32});r.AES=s._createHelper(y)}(),t.AES})}(Mo);var Oo=Mo.exports,Ro={exports:{}};(function(i,e){(function(t,r,n){i.exports=r(Be.exports,Ai.exports)})(me,function(t){return t.mode.ECB=function(){var r=t.lib.BlockCipherMode.extend();return r.Encryptor=r.extend({processBlock:function(n,s){this._cipher.encryptBlock(n,s)}}),r.Decryptor=r.extend({processBlock:function(n,s){this._cipher.decryptBlock(n,s)}}),r}(),t.mode.ECB})})(Ro);var Bo=Ro.exports,Lo={exports:{}};(function(i,e){(function(t,r,n){i.exports=r(Be.exports,Ai.exports)})(me,function(t){return t.pad.Pkcs7})})(Lo);var zo=Lo.exports,rf={encrypt(i,e){let t=xi.parse(e),r=xi.parse(i);return Oo.encrypt(r,t,{mode:Bo,padding:zo}).toString()},decrypt(i,e){let t=xi.parse(e),r=Oo.decrypt(i,t,{mode:Bo,padding:zo});return xi.stringify(r).toString()}},nf="data:image/png;base64,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",mg="",Ut,$,Go,Ho,Wt,Fo,No,Uo,Pi={},Wo=[],sf=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i;function Ne(i,e){for(var t in e)i[t]=e[t];return i}function Vo(i){var e=i.parentNode;e&&e.removeChild(i)}function Si(i,e,t){var r,n,s,o={};for(s in e)s=="key"?r=e[s]:s=="ref"?n=e[s]:o[s]=e[s];if(arguments.length>2&&(o.children=arguments.length>3?Ut.call(arguments,2):t),typeof i=="function"&&i.defaultProps!=null)for(s in i.defaultProps)o[s]===void 0&&(o[s]=i.defaultProps[s]);return Vt(i,o,r,n,null)}function Vt(i,e,t,r,n){var s={type:i,props:e,key:t,ref:r,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,__h:null,constructor:void 0,__v:n==null?++Go:n};return n==null&&$.vnode!=null&&$.vnode(s),s}function of(){return{current:null}}function jt(i){return i.children}function qt(i,e){this.props=i,this.context=e}function xt(i,e){if(e==null)return i.__?xt(i.__,i.__.__k.indexOf(i)+1):null;for(var t;e<i.__k.length;e++)if((t=i.__k[e])!=null&&t.__e!=null)return t.__e;return typeof i.type=="function"?xt(i):null}function jo(i){var e,t;if((i=i.__)!=null&&i.__c!=null){for(i.__e=i.__c.base=null,e=0;e<i.__k.length;e++)if((t=i.__k[e])!=null&&t.__e!=null){i.__e=i.__c.base=t.__e;break}return jo(i)}}function Gr(i){(!i.__d&&(i.__d=!0)&&Wt.push(i)&&!Ti.__r++||No!==$.debounceRendering)&&((No=$.debounceRendering)||Fo)(Ti)}function Ti(){for(var i;Ti.__r=Wt.length;)i=Wt.sort(function(e,t){return e.__v.__b-t.__v.__b}),Wt=[],i.some(function(e){var t,r,n,s,o,l;e.__d&&(o=(s=(t=e).__v).__e,(l=t.__P)&&(r=[],(n=Ne({},s)).__v=s.__v+1,Hr(l,s,n,t.__n,l.ownerSVGElement!==void 0,s.__h!=null?[o]:null,r,o==null?xt(s):o,s.__h),$o(r,s),s.__e!=o&&jo(s)))})}function qo(i,e,t,r,n,s,o,l,c,h){var u,p,d,f,m,g,w,x=r&&r.__k||Wo,y=x.length;for(t.__k=[],u=0;u<e.length;u++)if((f=t.__k[u]=(f=e[u])==null||typeof f=="boolean"?null:typeof f=="string"||typeof f=="number"||typeof f=="bigint"?Vt(null,f,null,null,f):Array.isArray(f)?Vt(jt,{children:f},null,null,null):f.__b>0?Vt(f.type,f.props,f.key,null,f.__v):f)!=null){if(f.__=t,f.__b=t.__b+1,(d=x[u])===null||d&&f.key==d.key&&f.type===d.type)x[u]=void 0;else for(p=0;p<y;p++){if((d=x[p])&&f.key==d.key&&f.type===d.type){x[p]=void 0;break}d=null}Hr(i,f,d=d||Pi,n,s,o,l,c,h),m=f.__e,(p=f.ref)&&d.ref!=p&&(w||(w=[]),d.ref&&w.push(d.ref,null,f),w.push(p,f.__c||m,f)),m!=null?(g==null&&(g=m),typeof f.type=="function"&&f.__k===d.__k?f.__d=c=Qo(f,c,i):c=Ko(i,f,d,x,m,c),typeof t.type=="function"&&(t.__d=c)):c&&d.__e==c&&c.parentNode!=i&&(c=xt(d))}for(t.__e=g,u=y;u--;)x[u]!=null&&(typeof t.type=="function"&&x[u].__e!=null&&x[u].__e==t.__d&&(t.__d=xt(r,u+1)),ta(x[u],x[u]));if(w)for(u=0;u<w.length;u++)ea(w[u],w[++u],w[++u])}function Qo(i,e,t){for(var r,n=i.__k,s=0;n&&s<n.length;s++)(r=n[s])&&(r.__=i,e=typeof r.type=="function"?Qo(r,e,t):Ko(t,r,r,n,r.__e,e));return e}function Yo(i,e){return e=e||[],i==null||typeof i=="boolean"||(Array.isArray(i)?i.some(function(t){Yo(t,e)}):e.push(i)),e}function Ko(i,e,t,r,n,s){var o,l,c;if(e.__d!==void 0)o=e.__d,e.__d=void 0;else if(t==null||n!=s||n.parentNode==null)e:if(s==null||s.parentNode!==i)i.appendChild(n),o=null;else{for(l=s,c=0;(l=l.nextSibling)&&c<r.length;c+=2)if(l==n)break e;i.insertBefore(n,s),o=s}return o!==void 0?o:n.nextSibling}function af(i,e,t,r,n){var s;for(s in t)s==="children"||s==="key"||s in e||Mi(i,s,null,t[s],r);for(s in e)n&&typeof e[s]!="function"||s==="children"||s==="key"||s==="value"||s==="checked"||t[s]===e[s]||Mi(i,s,e[s],t[s],r)}function Jo(i,e,t){e[0]==="-"?i.setProperty(e,t):i[e]=t==null?"":typeof t!="number"||sf.test(e)?t:t+"px"}function Mi(i,e,t,r,n){var s;e:if(e==="style")if(typeof t=="string")i.style.cssText=t;else{if(typeof r=="string"&&(i.style.cssText=r=""),r)for(e in r)t&&e in t||Jo(i.style,e,"");if(t)for(e in t)r&&t[e]===r[e]||Jo(i.style,e,t[e])}else if(e[0]==="o"&&e[1]==="n")s=e!==(e=e.replace(/Capture$/,"")),e=e.toLowerCase()in i?e.toLowerCase().slice(2):e.slice(2),i.l||(i.l={}),i.l[e+s]=t,t?r||i.addEventListener(e,s?Zo:Xo,s):i.removeEventListener(e,s?Zo:Xo,s);else if(e!=="dangerouslySetInnerHTML"){if(n)e=e.replace(/xlink[H:h]/,"h").replace(/sName$/,"s");else if(e!=="href"&&e!=="list"&&e!=="form"&&e!=="tabIndex"&&e!=="download"&&e in i)try{i[e]=t==null?"":t;break e}catch{}typeof t=="function"||(t!=null&&(t!==!1||e[0]==="a"&&e[1]==="r")?i.setAttribute(e,t):i.removeAttribute(e))}}function Xo(i){this.l[i.type+!1]($.event?$.event(i):i)}function Zo(i){this.l[i.type+!0]($.event?$.event(i):i)}function Hr(i,e,t,r,n,s,o,l,c){var h,u,p,d,f,m,g,w,x,y,v,_=e.type;if(e.constructor!==void 0)return null;t.__h!=null&&(c=t.__h,l=e.__e=t.__e,e.__h=null,s=[l]),(h=$.__b)&&h(e);try{e:if(typeof _=="function"){if(w=e.props,x=(h=_.contextType)&&r[h.__c],y=h?x?x.props.value:h.__:r,t.__c?g=(u=e.__c=t.__c).__=u.__E:("prototype"in _&&_.prototype.render?e.__c=u=new _(w,y):(e.__c=u=new qt(w,y),u.constructor=_,u.render=cf),x&&x.sub(u),u.props=w,u.state||(u.state={}),u.context=y,u.__n=r,p=u.__d=!0,u.__h=[]),u.__s==null&&(u.__s=u.state),_.getDerivedStateFromProps!=null&&(u.__s==u.state&&(u.__s=Ne({},u.__s)),Ne(u.__s,_.getDerivedStateFromProps(w,u.__s))),d=u.props,f=u.state,p)_.getDerivedStateFromProps==null&&u.componentWillMount!=null&&u.componentWillMount(),u.componentDidMount!=null&&u.__h.push(u.componentDidMount);else{if(_.getDerivedStateFromProps==null&&w!==d&&u.componentWillReceiveProps!=null&&u.componentWillReceiveProps(w,y),!u.__e&&u.shouldComponentUpdate!=null&&u.shouldComponentUpdate(w,u.__s,y)===!1||e.__v===t.__v){u.props=w,u.state=u.__s,e.__v!==t.__v&&(u.__d=!1),u.__v=e,e.__e=t.__e,e.__k=t.__k,e.__k.forEach(function(P){P&&(P.__=e)}),u.__h.length&&o.push(u);break e}u.componentWillUpdate!=null&&u.componentWillUpdate(w,u.__s,y),u.componentDidUpdate!=null&&u.__h.push(function(){u.componentDidUpdate(d,f,m)})}u.context=y,u.props=w,u.state=u.__s,(h=$.__r)&&h(e),u.__d=!1,u.__v=e,u.__P=i,h=u.render(u.props,u.state,u.context),u.state=u.__s,u.getChildContext!=null&&(r=Ne(Ne({},r),u.getChildContext())),p||u.getSnapshotBeforeUpdate==null||(m=u.getSnapshotBeforeUpdate(d,f)),v=h!=null&&h.type===jt&&h.key==null?h.props.children:h,qo(i,Array.isArray(v)?v:[v],e,t,r,n,s,o,l,c),u.base=e.__e,e.__h=null,u.__h.length&&o.push(u),g&&(u.__E=u.__=null),u.__e=!1}else s==null&&e.__v===t.__v?(e.__k=t.__k,e.__e=t.__e):e.__e=lf(t.__e,e,t,r,n,s,o,c);(h=$.diffed)&&h(e)}catch(P){e.__v=null,(c||s!=null)&&(e.__e=l,e.__h=!!c,s[s.indexOf(l)]=null),$.__e(P,e,t)}}function $o(i,e){$.__c&&$.__c(e,i),i.some(function(t){try{i=t.__h,t.__h=[],i.some(function(r){r.call(t)})}catch(r){$.__e(r,t.__v)}})}function lf(i,e,t,r,n,s,o,l){var c,h,u,p=t.props,d=e.props,f=e.type,m=0;if(f==="svg"&&(n=!0),s!=null){for(;m<s.length;m++)if((c=s[m])&&"setAttribute"in c==!!f&&(f?c.localName===f:c.nodeType===3)){i=c,s[m]=null;break}}if(i==null){if(f===null)return document.createTextNode(d);i=n?document.createElementNS("http://www.w3.org/2000/svg",f):document.createElement(f,d.is&&d),s=null,l=!1}if(f===null)p===d||l&&i.data===d||(i.data=d);else{if(s=s&&Ut.call(i.childNodes),h=(p=t.props||Pi).dangerouslySetInnerHTML,u=d.dangerouslySetInnerHTML,!l){if(s!=null)for(p={},m=0;m<i.attributes.length;m++)p[i.attributes[m].name]=i.attributes[m].value;(u||h)&&(u&&(h&&u.__html==h.__html||u.__html===i.innerHTML)||(i.innerHTML=u&&u.__html||""))}if(af(i,d,p,n,l),u)e.__k=[];else if(m=e.props.children,qo(i,Array.isArray(m)?m:[m],e,t,r,n&&f!=="foreignObject",s,o,s?s[0]:t.__k&&xt(t,0),l),s!=null)for(m=s.length;m--;)s[m]!=null&&Vo(s[m]);l||("value"in d&&(m=d.value)!==void 0&&(m!==p.value||m!==i.value||f==="progress"&&!m)&&Mi(i,"value",m,p.value,!1),"checked"in d&&(m=d.checked)!==void 0&&m!==i.checked&&Mi(i,"checked",m,p.checked,!1))}return i}function ea(i,e,t){try{typeof i=="function"?i(e):i.current=e}catch(r){$.__e(r,t)}}function ta(i,e,t){var r,n;if($.unmount&&$.unmount(i),(r=i.ref)&&(r.current&&r.current!==i.__e||ea(r,null,e)),(r=i.__c)!=null){if(r.componentWillUnmount)try{r.componentWillUnmount()}catch(s){$.__e(s,e)}r.base=r.__P=null}if(r=i.__k)for(n=0;n<r.length;n++)r[n]&&ta(r[n],e,typeof i.type!="function");t||i.__e==null||Vo(i.__e),i.__e=i.__d=void 0}function cf(i,e,t){return this.constructor(i,t)}function Qt(i,e,t){var r,n,s;$.__&&$.__(i,e),n=(r=typeof t=="function")?null:t&&t.__k||e.__k,s=[],Hr(e,i=(!r&&t||e).__k=Si(jt,null,[i]),n||Pi,Pi,e.ownerSVGElement!==void 0,!r&&t?[t]:n?null:e.firstChild?Ut.call(e.childNodes):null,s,!r&&t?t:n?n.__e:e.firstChild,r),$o(s,i)}function ia(i,e){Qt(i,e,ia)}function hf(i,e,t){var r,n,s,o=Ne({},i.props);for(s in e)s=="key"?r=e[s]:s=="ref"?n=e[s]:o[s]=e[s];return arguments.length>2&&(o.children=arguments.length>3?Ut.call(arguments,2):t),Vt(i.type,o,r||i.key,n||i.ref,null)}function uf(i,e){var t={__c:e="__cC"+Uo++,__:i,Consumer:function(r,n){return r.children(n)},Provider:function(r){var n,s;return this.getChildContext||(n=[],(s={})[e]=this,this.getChildContext=function(){return s},this.shouldComponentUpdate=function(o){this.props.value!==o.value&&n.some(Gr)},this.sub=function(o){n.push(o);var l=o.componentWillUnmount;o.componentWillUnmount=function(){n.splice(n.indexOf(o),1),l&&l.call(o)}}),r.children}};return t.Provider.__=t.Consumer.contextType=t}Ut=Wo.slice,$={__e:function(i,e){for(var t,r,n;e=e.__;)if((t=e.__c)&&!t.__)try{if((r=t.constructor)&&r.getDerivedStateFromError!=null&&(t.setState(r.getDerivedStateFromError(i)),n=t.__d),t.componentDidCatch!=null&&(t.componentDidCatch(i),n=t.__d),n)return t.__E=t}catch(s){i=s}throw i}},Go=0,Ho=function(i){return i!=null&&i.constructor===void 0},qt.prototype.setState=function(i,e){var t;t=this.__s!=null&&this.__s!==this.state?this.__s:this.__s=Ne({},this.state),typeof i=="function"&&(i=i(Ne({},t),this.props)),i&&Ne(t,i),i!=null&&this.__v&&(e&&this.__h.push(e),Gr(this))},qt.prototype.forceUpdate=function(i){this.__v&&(this.__e=!0,i&&this.__h.push(i),Gr(this))},qt.prototype.render=jt,Wt=[],Fo=typeof Promise=="function"?Promise.prototype.then.bind(Promise.resolve()):setTimeout,Ti.__r=0,Uo=0;var df=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",render:Qt,hydrate:ia,createElement:Si,h:Si,Fragment:jt,createRef:of,get isValidElement(){return Ho},Component:qt,cloneElement:hf,createContext:uf,toChildArray:Yo,get options(){return $}}),ra,Le,na,Fr=0,Nr=[],sa=$.__b,oa=$.__r,aa=$.diffed,la=$.__c,ca=$.unmount;function pf(i,e){$.__h&&$.__h(Le,i,Fr||e),Fr=0;var t=Le.__H||(Le.__H={__:[],__h:[]});return i>=t.__.length&&t.__.push({}),t.__[i]}function ff(i){return Fr=1,mf(ua,i)}function mf(i,e,t){var r=pf(ra++,2);return r.t=i,r.__c||(r.__=[t?t(e):ua(void 0,e),function(n){var s=r.t(r.__[0],n);r.__[0]!==s&&(r.__=[s,r.__[1]],r.__c.setState({}))}],r.__c=Le),r.__}function gf(){var i;for(Nr.sort(function(e,t){return e.__v.__b-t.__v.__b});i=Nr.pop();)if(i.__P)try{i.__H.__h.forEach(Ei),i.__H.__h.forEach(Ur),i.__H.__h=[]}catch(e){i.__H.__h=[],$.__e(e,i.__v)}}$.__b=function(i){Le=null,sa&&sa(i)},$.__r=function(i){oa&&oa(i),ra=0;var e=(Le=i.__c).__H;e&&(e.__h.forEach(Ei),e.__h.forEach(Ur),e.__h=[])},$.diffed=function(i){aa&&aa(i);var e=i.__c;e&&e.__H&&e.__H.__h.length&&(Nr.push(e)!==1&&na===$.requestAnimationFrame||((na=$.requestAnimationFrame)||function(t){var r,n=function(){clearTimeout(s),ha&&cancelAnimationFrame(r),setTimeout(t)},s=setTimeout(n,100);ha&&(r=requestAnimationFrame(n))})(gf)),Le=null},$.__c=function(i,e){e.some(function(t){try{t.__h.forEach(Ei),t.__h=t.__h.filter(function(r){return!r.__||Ur(r)})}catch(r){e.some(function(n){n.__h&&(n.__h=[])}),e=[],$.__e(r,t.__v)}}),la&&la(i,e)},$.unmount=function(i){ca&&ca(i);var e,t=i.__c;t&&t.__H&&(t.__H.__.forEach(function(r){try{Ei(r)}catch(n){e=n}}),e&&$.__e(e,t.__v))};var ha=typeof requestAnimationFrame=="function";function Ei(i){var e=Le,t=i.__c;typeof t=="function"&&(i.__c=void 0,t()),Le=e}function Ur(i){var e=Le;i.__c=i.__(),Le=e}function ua(i,e){return typeof e=="function"?e(i):e}var vf=$c(df),da,pa,fa,Wr=vf,yf=0;function ma(i,e,t,r,n){var s,o,l={};for(o in e)o=="ref"?s=e[o]:l[o]=e[o];var c={type:i,props:l,key:t,ref:s,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,__h:null,constructor:void 0,__v:--yf,__source:r,__self:n};if(typeof i=="function"&&(s=i.defaultProps))for(o in s)l[o]===void 0&&(l[o]=s[o]);return Wr.options.vnode&&Wr.options.vnode(c),c}fa=Wr.Fragment,pa=ma,da=ma;const at=pa,Vr=da,_f=fa,ga=5;function Cf({floors:i,focusFloorId:e,setFocusFloorId:t,floorHeight:r,setFloorHeight:n,resetFloorHeight:s}){const[o,l]=ff(0);if(!i.length)return at(_f,{});const c=i.slice(o,o+ga),h=o<=0,u=o+ga>=i.length;return Vr("div",{className:"le-floor-control",children:[Vr("div",{className:"le-floor-btn-box",children:[at("div",{className:"le-floor-close",onClick:s}),at("div",{onClick:()=>{H(e)&&t(null)},className:Di({"le-floor-switcher":!0,"le-floor-switcher-multiple":!e})}),Vr("div",{children:[(!h||!u)&&at("div",{className:Di({"le-floor-btn le-floor-btn__up":!0,disabled:h}),onClick:()=>{h||l(o-1)}}),c.map(({label:p,value:d})=>at("div",{className:Di({"le-floor-btn":!0,select:d===e}),onClick:()=>t(d),children:p},d)),(!h||!u)&&at("div",{className:Di({"le-floor-btn le-floor-btn__down":!0,disabled:u}),onClick:()=>{u||l(o+1)}})]})]}),at("input",{type:"range",max:50,min:0,step:1,className:"le-floor-range",value:r,onInput:p=>{n(p.target.value)}})]})}function Di(i){return Object.entries(i).map(([e,t])=>{if(t)return e}).filter(Boolean).join(" ")}class va extends bt{constructor(e,n={}){var s=n,{tileset:t}=s,r=te(s,["tileset"]);xe(e)&&(e=JSON.parse(rf.decrypt(e,"Z2jPradpfqnnIsFt")));super(ie({showBillboard:!0,showControl:!0,floorHeight:25,labelStyle:{},billboardStyle:{}},r));b(this,"floors",[]);b(this,"buildings",[]);b(this,"tileset",null);b(this,"_floorHeight",25);b(this,"_focusBuildingId",null);b(this,"_focusFloorId",null);this.tileset=t,this.data=e}setOptions({showBillboard:e,showControl:t}){H(t)&&(this.options.showControl=t,this.renderDom()),H(e)&&(this.options.showBillboard=e,this.group&&this.group.graphics.forEach(r=>{r.type==="billboard"&&(e?r.show():r.hide())}))}flyTo(){this.tileset&&this.tileset.flyTo()}destroy(){this.group&&(this.group.destroy(),this.group=null),this.tileset=null,this._map&&(Qt(null,this._map.container),this._map=null),super.destroy()}_addedHook(){this.renderDom();const e=this._map;this.group=new rt().addTo(e);const{tileUrl:t,floors:r,position:n,buildings:s,rotate:o}=this.data;this.tileset||(this.tileset=new yi({position:n,rotate:o,style:{url:t}}).addTo(this.group)),r&&(r.find(c=>c.id<0)&&(e.viewer.scene.globe.depthTestAgainstTerrain=!1),this.floors=r.map(({position:c,tileUrl:h,id:u,rotate:p})=>{const d=this._getFloorNameById(u);return new yi({id:d,style:{url:h},attr:{position:c,floorName:d,rotate:p,id:u}}).addTo(this.group)}),this._updateFloorHeight(),this.setTilesetShowStyle()),s&&this.options.showBillboard&&(this.buildings=s.map(({position:l,clipRegion:c,id:h,name:u})=>{const p=new Sr({position:l,style:N({image:nf,width:56,height:61,scale:.6,distanceDisplayCondition:[0,2e3],scaleByDistance:[0,1.2,2e3,.75],label:N({text:u,fontSize:16,color:"#fff",outlineColor:"#000",outlineWidth:2,pixelOffset:[0,-50],fontWeight:"bold",distanceDisplayCondition:[0,2e3],scaleByDistance:[0,1.2,2e3,.75]},this.options.labelStyle)},this.options.billboardStyle),attr:{buildingId:h}}).addTo(this.group);return p.on("click",()=>{this.focusBuildingId=h}),p}))}get floorHeight(){return this.options.floorHeight}set floorHeight(e){this.options.floorHeight=e,this.fire("update:floorHeight",e),this._updateFloorHeight(),this.renderDom()}_updateFloorHeight(){this.floors.forEach(e=>{const{position:t,rotate:r,id:n}=e.attr;e.moveTo(new L(t).addHeight(this.floorHeight*(n>0?n-1:n)),r)})}get focusBuildingId(){return this._focusBuildingId}set focusBuildingId(e){this.focusFloorId&&(this.focusFloorId=null),this._focusBuildingId=e,this.setTilesetShowStyle(),this.buildings.forEach(t=>{t.attr.buildingId===e?t.hide():t.show()}),this.renderDom(),this.fire("update:focusBuilding",e),this.focusBuilding?this.tileset.clip(this.focusBuilding.clipRegion.coordinates[0]):this.tileset.clip([])}get focusBuilding(){return ne(this.focusBuildingId)?null:this.data.buildings.find(e=>e.id===this.focusBuildingId)}get focusFloorId(){return this._focusFloorId}set focusFloorId(e){this._focusFloorId=e,this.setTilesetShowStyle(),this.fire("update:focusFloor",e),this.renderDom()}setTilesetShowStyle(){let e="";if(this.focusFloorId)if(Ee(this.focusFloorId)){const t=this.focusFloorId.map(r=>this._getFloorNameById(r)).join("|");e=`(regExp('^${this.focusBuildingId}(${t})').test(\${name}))`}else{const t=this._getFloorNameById(this.focusFloorId);e=`\${name} === '${this.focusBuildingId}${t}'`}else e=`(regExp('^${this.focusBuildingId}[F|B]').test(\${name}))`;this.setTilesetShowExpression(e)}setTilesetShowExpression(e){this.floors.forEach(t=>{t.setShowStyle(e)})}renderDom(){var t,r;if(!this.options.showControl){Qt(null,this._map.container);return}const e=(r=(t=this.focusBuilding)==null?void 0:t.floorIds.map(n=>({value:n,label:this._getFloorNameById(n)})))!=null?r:[];Qt(Si(Cf,{focusFloorId:this.focusFloorId,floors:e,floorHeight:this.floorHeight,setFloorHeight:n=>{this.floorHeight=n},setFocusFloorId:n=>{this.focusFloorId=n},resetFloorHeight:()=>{this.focusBuildingId=null}}),this._map.container)}_getFloorNameById(e){return e>0?`F${e}`:`B${e}`}}var gg="";const wf=function(i){var e=document.createElement("div");e.innerHTML=i;for(var t=document.createDocumentFragment();e.firstChild;)t.appendChild(e.firstChild);return t};var bf=Cesium.knockout,ya=function(i,e,t){e=Cesium.getElement(e);var r=wf(i),n=[],s;for(s=0;s<r.childNodes.length;++s)n.push(r.childNodes[s]);for(e.appendChild(r),s=0;s<n.length;++s){var o=n[s];(o.nodeType===1||o.nodeType===8)&&bf.applyBindings(t,o)}return n},xf=Cesium.knockout,Yt=function(i){if(!Cesium.defined(i)||!Cesium.defined(i.terria))throw new Cesium.DeveloperError("options.terria is required.");this.terria=i.terria,this._removeSubscription=void 0,this._lastLegendUpdate=void 0,this.eventHelper=new Cesium.EventHelper,this.distanceLabel=void 0,this.barWidth=void 0,this.enableDistanceLegend=Cesium.defined(i.enableDistanceLegend)?i.enableDistanceLegend:!0,xf.track(this,["distanceLabel","barWidth"]),this.eventHelper.add(this.terria.afterWidgetChanged,function(){Cesium.defined(this._removeSubscription)&&(this._removeSubscription(),this._removeSubscription=void 0)},this);var e=this;function t(){if(Cesium.defined(e.terria)){var r=e.terria.scene;e._removeSubscription=r.postRender.addEventListener(function(){Af(this,r)},e)}}t(),this.eventHelper.add(this.terria.afterWidgetChanged,function(){t()},this)};Yt.prototype.destroy=function(){this.eventHelper.removeAll()},Yt.prototype.show=function(i){var e;this.enableDistanceLegend?e=`<div class="distance-legend" data-bind="visible: distanceLabel && barWidth"><div class="distance-legend-label" data-bind="text: distanceLabel"></div><div class="distance-legend-scale-bar" data-bind="style: { width: barWidth + 'px', left: (5 + (125 - barWidth) / 2) + 'px' }"></div></div>`:e=`<div class="distance-legend" style="display: none;" data-bind="visible: distanceLabel && barWidth"><div class="distance-legend-label" data-bind="text: distanceLabel"></div><div class="distance-legend-scale-bar" data-bind="style: { width: barWidth + 'px', left: (5 + (125 - barWidth) / 2) + 'px' }"></div></div>`,ya(e,i,this)},Yt.create=function(i){var e=new Yt(i);return e.show(i.container),e};var _a=new Cesium.EllipsoidGeodesic,jr=[1,2,3,5,10,20,30,50,100,200,300,500,1e3,2e3,3e3,5e3,1e4,2e4,3e4,5e4,1e5,2e5,3e5,5e5,1e6,2e6,3e6,5e6,1e7,2e7,3e7,5e7];function Af(i,e){if(!i.enableDistanceLegend){i.barWidth=void 0,i.distanceLabel=void 0;return}var t=Cesium.getTimestamp();if(!(t<i._lastLegendUpdate+250)){i._lastLegendUpdate=t;var r=e.canvas.clientWidth,n=e.canvas.clientHeight,s=e.camera.getPickRay(new Cesium.Cartesian2(r/2|0,n-1)),o=e.camera.getPickRay(new Cesium.Cartesian2(1+r/2|0,n-1)),l=e.globe,c=l.pick(s,e),h=l.pick(o,e);if(!Cesium.defined(c)||!Cesium.defined(h)){i.barWidth=void 0,i.distanceLabel=void 0;return}var u=l.ellipsoid.cartesianToCartographic(c),p=l.ellipsoid.cartesianToCartographic(h);_a.setEndPoints(u,p);for(var d=_a.surfaceDistance,f=100,m,g=jr.length-1;!Cesium.defined(m)&&g>=0;--g)jr[g]/d<f&&(m=jr[g]);if(Cesium.defined(m)){var w;m>=1e3?w=(m/1e3).toString()+" km":w=m.toString()+" m",i.barWidth=m/d|0,i.distanceLabel=w}else i.barWidth=void 0,i.distanceLabel=void 0}}var Pf="M 7.5,0 C 3.375,0 0,3.375 0,7.5 0,11.625 3.375,15 7.5,15 c 3.46875,0 6.375,-2.4375 7.21875,-5.625 l -1.96875,0 C 12,11.53125 9.9375,13.125 7.5,13.125 4.40625,13.125 1.875,10.59375 1.875,7.5 1.875,4.40625 4.40625,1.875 7.5,1.875 c 1.59375,0 2.90625,0.65625 3.9375,1.6875 l -3,3 6.5625,0 L 15,0 12.75,2.25 C 11.4375,0.84375 9.5625,0 7.5,0 z",Sf=Cesium.knockout,ki=function(i){if(!Cesium.defined(i))throw new Cesium.DeveloperError("terria is required");this._terria=i,this.name="Unnamed Control",this.text=void 0,this.svgIcon=void 0,this.svgHeight=void 0,this.svgWidth=void 0,this.cssClass=void 0,this.isActive=!1,Sf.track(this,["name","svgIcon","svgHeight","svgWidth","cssClass","isActive"])};Object.defineProperties(ki.prototype,{terria:{get:function(){return this._terria}},hasText:{get:function(){return Cesium.defined(this.text)&&typeof this.text=="string"}}}),ki.prototype.activate=function(){throw new Cesium.DeveloperError("activate must be implemented in the derived class.")};var Kt=function(i){ki.apply(this,arguments)};Kt.prototype=Object.create(ki.prototype);var Jt=function(i){Kt.apply(this,arguments),this.name=i.options.resetTooltip?i.options.resetTooltip:"\u91CD\u7F6E\u89C6\u56FE",this.navigationLocked=!1,this.svgIcon=i.options.resetSvg?"":Pf,this.resetSvg=i.options.resetSvg,this.svgHeight=15,this.svgWidth=15,this.cssClass="navigation-control-icon-reset"};Jt.prototype=Object.create(Kt.prototype),Jt.prototype.setNavigationLocked=function(i){this.navigationLocked=i},Jt.prototype.resetView=function(){if(!this.navigationLocked){var i=this.terria.scene,e=i.screenSpaceCameraController;if(!!e.enableInputs){this.isActive=!0;var t=i.camera;if(Cesium.defined(this.terria.trackedEntity)){var r=this.terria.trackedEntity;this.terria.trackedEntity=void 0,this.terria.trackedEntity=r}else if(this.terria.options.defaultResetView){if(this.terria.options.defaultResetView&&this.terria.options.defaultResetView instanceof Cesium.Cartographic)t.flyTo({destination:i.globe.ellipsoid.cartographicToCartesian(this.terria.options.defaultResetView)});else if(this.terria.options.defaultResetView&&this.terria.options.defaultResetView instanceof Cesium.Rectangle)try{Cesium.Rectangle.validate(this.terria.options.defaultResetView),t.flyTo({destination:this.terria.options.defaultResetView,orientation:{heading:Cesium.Math.toRadians(5.729578)}})}catch{console.log("Cesium-navigation/ResetViewNavigationControl: options.defaultResetView Cesium rectangle is invalid!")}}else typeof t.flyHome=="function"?t.flyHome(1):t.flyTo({destination:Cesium.Camera.DEFAULT_VIEW_RECTANGLE,duration:1});this.isActive=!1}}},Jt.prototype.activate=function(){this.resetView()};var Xt={},Tf=new Cesium.Cartographic,qr=new Cesium.Ray;Xt.getCameraFocus=function(i,e,t){var r=i.scene,n=r.camera;if(r.mode!==Cesium.SceneMode.MORPHING&&(Cesium.defined(t)||(t=new Cesium.Cartesian3),Cesium.defined(i.trackedEntity)?t=i.trackedEntity.position.getValue(i.clock.currentTime,t):(qr.origin=n.positionWC,qr.direction=n.directionWC,t=r.globe.pick(qr,r,t)),!!Cesium.defined(t)))return r.mode===Cesium.SceneMode.SCENE2D||r.mode===Cesium.SceneMode.COLUMBUS_VIEW?(t=n.worldToCameraCoordinatesPoint(t,t),e&&(t=r.globe.ellipsoid.cartographicToCartesian(r.mapProjection.unproject(t,Tf),t))):e||(t=n.worldToCameraCoordinatesPoint(t,t)),t};var At=function(i,e){Kt.apply(this,arguments),this.name=e?i.options.zoomInTooltip?i.options.zoomInTooltip:"\u653E\u5927":i.options.zoomOutTooltip?i.options.zoomOutTooltip:"\u7F29\u5C0F",e?i.options.zoomInSvg?this.zoomInSvg=i.options.zoomInSvg:this.text="+":i.options.zoomOutSvg?this.zoomOutSvg=i.options.zoomOutSvg:this.text="-",this.cssClass="navigation-control-icon-zoom-"+(e?"in":"out"),this.relativeAmount=2,e&&(this.relativeAmount=1/this.relativeAmount)};At.prototype.relativeAmount=1,At.prototype=Object.create(Kt.prototype),At.prototype.activate=function(){this.zoom(this.relativeAmount)};var Mf=new Cesium.Cartesian3;At.prototype.zoom=function(i){if(this.isActive=!0,Cesium.defined(this.terria)){var e=this.terria.scene,t=e.screenSpaceCameraController;if(!t.enableInputs||!t.enableZoom)return;var r=e.camera,n;switch(e.mode){case Cesium.SceneMode.MORPHING:break;case Cesium.SceneMode.SCENE2D:r.zoomIn(r.positionCartographic.height*(1-this.relativeAmount));break;default:var s;if(Cesium.defined(this.terria.trackedEntity)?s=new Cesium.Cartesian3:s=Xt.getCameraFocus(this.terria,!1),Cesium.defined(s))n={direction:r.direction,up:r.up};else{var o=new Cesium.Ray(r.worldToCameraCoordinatesPoint(e.globe.ellipsoid.cartographicToCartesian(r.positionCartographic)),r.directionWC);s=Cesium.IntersectionTests.grazingAltitudeLocation(o,e.globe.ellipsoid),n={heading:r.heading,pitch:r.pitch,roll:r.roll}}if(r.position.z>=40694482871936856e-2)return;var l=Cesium.Cartesian3.subtract(r.position,s,Mf),c=Cesium.Cartesian3.multiplyByScalar(l,i,l),h=Cesium.Cartesian3.add(s,c,s);Cesium.defined(this.terria.trackedEntity)||e.mode===Cesium.SceneMode.COLUMBUS_VIEW?r.position=h:r.flyTo({destination:h,orientation:n,duration:.5,convert:!1})}}this.isActive=!1};var Ef="m 66.5625,0 0,15.15625 3.71875,0 0,-10.40625 5.5,10.40625 4.375,0 0,-15.15625 -3.71875,0 0,10.40625 L 70.9375,0 66.5625,0 z M 72.5,20.21875 c -28.867432,0 -52.28125,23.407738 -52.28125,52.28125 0,28.87351 23.413818,52.3125 52.28125,52.3125 28.86743,0 52.28125,-23.43899 52.28125,-52.3125 0,-28.873512 -23.41382,-52.28125 -52.28125,-52.28125 z m 0,1.75 c 13.842515,0 26.368948,5.558092 35.5,14.5625 l -11.03125,11 0.625,0.625 11.03125,-11 c 8.9199,9.108762 14.4375,21.579143 14.4375,35.34375 0,13.764606 -5.5176,26.22729 -14.4375,35.34375 l -11.03125,-11 -0.625,0.625 11.03125,11 c -9.130866,9.01087 -21.658601,14.59375 -35.5,14.59375 -13.801622,0 -26.321058,-5.53481 -35.4375,-14.5 l 11.125,-11.09375 c 6.277989,6.12179 14.857796,9.90625 24.3125,9.90625 19.241896,0 34.875,-15.629154 34.875,-34.875 0,-19.245847 -15.633104,-34.84375 -34.875,-34.84375 -9.454704,0 -18.034511,3.760884 -24.3125,9.875 L 37.0625,36.4375 C 46.179178,27.478444 58.696991,21.96875 72.5,21.96875 z m -0.875,0.84375 0,13.9375 1.75,0 0,-13.9375 -1.75,0 z M 36.46875,37.0625 47.5625,48.15625 C 41.429794,54.436565 37.65625,63.027539 37.65625,72.5 c 0,9.472461 3.773544,18.055746 9.90625,24.34375 L 36.46875,107.9375 c -8.96721,-9.1247 -14.5,-21.624886 -14.5,-35.4375 0,-13.812615 5.53279,-26.320526 14.5,-35.4375 z M 72.5,39.40625 c 18.297686,0 33.125,14.791695 33.125,33.09375 0,18.302054 -14.827314,33.125 -33.125,33.125 -18.297687,0 -33.09375,-14.822946 -33.09375,-33.125 0,-18.302056 14.796063,-33.09375 33.09375,-33.09375 z M 22.84375,71.625 l 0,1.75 13.96875,0 0,-1.75 -13.96875,0 z m 85.5625,0 0,1.75 14,0 0,-1.75 -14,0 z M 71.75,108.25 l 0,13.9375 1.71875,0 0,-13.9375 -1.71875,0 z",Df="m 72.71875,54.375 c -0.476702,0 -0.908208,0.245402 -1.21875,0.5625 -0.310542,0.317098 -0.551189,0.701933 -0.78125,1.1875 -0.172018,0.363062 -0.319101,0.791709 -0.46875,1.25 -6.91615,1.075544 -12.313231,6.656514 -13,13.625 -0.327516,0.117495 -0.661877,0.244642 -0.9375,0.375 -0.485434,0.22959 -0.901634,0.471239 -1.21875,0.78125 -0.317116,0.310011 -0.5625,0.742111 -0.5625,1.21875 l 0.03125,0 c 0,0.476639 0.245384,0.877489 0.5625,1.1875 0.317116,0.310011 0.702066,0.58291 1.1875,0.8125 0.35554,0.168155 0.771616,0.32165 1.21875,0.46875 1.370803,6.10004 6.420817,10.834127 12.71875,11.8125 0.146999,0.447079 0.30025,0.863113 0.46875,1.21875 0.230061,0.485567 0.470708,0.870402 0.78125,1.1875 0.310542,0.317098 0.742048,0.5625 1.21875,0.5625 0.476702,0 0.876958,-0.245402 1.1875,-0.5625 0.310542,-0.317098 0.582439,-0.701933 0.8125,-1.1875 0.172018,-0.363062 0.319101,-0.791709 0.46875,-1.25 6.249045,-1.017063 11.256351,-5.7184 12.625,-11.78125 0.447134,-0.1471 0.86321,-0.300595 1.21875,-0.46875 0.485434,-0.22959 0.901633,-0.502489 1.21875,-0.8125 0.317117,-0.310011 0.5625,-0.710861 0.5625,-1.1875 l -0.03125,0 c 0,-0.476639 -0.245383,-0.908739 -0.5625,-1.21875 C 89.901633,71.846239 89.516684,71.60459 89.03125,71.375 88.755626,71.244642 88.456123,71.117495 88.125,71 87.439949,64.078341 82.072807,58.503735 75.21875,57.375 c -0.15044,-0.461669 -0.326927,-0.884711 -0.5,-1.25 -0.230061,-0.485567 -0.501958,-0.870402 -0.8125,-1.1875 -0.310542,-0.317098 -0.710798,-0.5625 -1.1875,-0.5625 z m -0.0625,1.40625 c 0.03595,-0.01283 0.05968,0 0.0625,0 0.0056,0 0.04321,-0.02233 0.1875,0.125 0.144288,0.147334 0.34336,0.447188 0.53125,0.84375 0.06385,0.134761 0.123901,0.309578 0.1875,0.46875 -0.320353,-0.01957 -0.643524,-0.0625 -0.96875,-0.0625 -0.289073,0 -0.558569,0.04702 -0.84375,0.0625 C 71.8761,57.059578 71.936151,56.884761 72,56.75 c 0.18789,-0.396562 0.355712,-0.696416 0.5,-0.84375 0.07214,-0.07367 0.120304,-0.112167 0.15625,-0.125 z m 0,2.40625 c 0.448007,0 0.906196,0.05436 1.34375,0.09375 0.177011,0.592256 0.347655,1.271044 0.5,2.03125 0.475097,2.370753 0.807525,5.463852 0.9375,8.9375 -0.906869,-0.02852 -1.834463,-0.0625 -2.78125,-0.0625 -0.92298,0 -1.802327,0.03537 -2.6875,0.0625 0.138529,-3.473648 0.493653,-6.566747 0.96875,-8.9375 0.154684,-0.771878 0.320019,-1.463985 0.5,-2.0625 0.405568,-0.03377 0.804291,-0.0625 1.21875,-0.0625 z m -2.71875,0.28125 c -0.129732,0.498888 -0.259782,0.987558 -0.375,1.5625 -0.498513,2.487595 -0.838088,5.693299 -0.96875,9.25 -3.21363,0.15162 -6.119596,0.480068 -8.40625,0.9375 -0.682394,0.136509 -1.275579,0.279657 -1.84375,0.4375 0.799068,-6.135482 5.504716,-11.036454 11.59375,-12.1875 z M 75.5,58.5 c 6.043169,1.18408 10.705093,6.052712 11.5,12.15625 -0.569435,-0.155806 -1.200273,-0.302525 -1.875,-0.4375 -2.262525,-0.452605 -5.108535,-0.783809 -8.28125,-0.9375 -0.130662,-3.556701 -0.470237,-6.762405 -0.96875,-9.25 C 75.761959,59.467174 75.626981,58.990925 75.5,58.5 z m -2.84375,12.09375 c 0.959338,0 1.895843,0.03282 2.8125,0.0625 C 75.48165,71.267751 75.5,71.871028 75.5,72.5 c 0,1.228616 -0.01449,2.438313 -0.0625,3.59375 -0.897358,0.0284 -1.811972,0.0625 -2.75,0.0625 -0.927373,0 -1.831062,-0.03473 -2.71875,-0.0625 -0.05109,-1.155437 -0.0625,-2.365134 -0.0625,-3.59375 0,-0.628972 0.01741,-1.232249 0.03125,-1.84375 0.895269,-0.02827 1.783025,-0.0625 2.71875,-0.0625 z M 68.5625,70.6875 c -0.01243,0.60601 -0.03125,1.189946 -0.03125,1.8125 0,1.22431 0.01541,2.407837 0.0625,3.5625 -3.125243,-0.150329 -5.92077,-0.471558 -8.09375,-0.90625 -0.784983,-0.157031 -1.511491,-0.316471 -2.125,-0.5 -0.107878,-0.704096 -0.1875,-1.422089 -0.1875,-2.15625 0,-0.115714 0.02849,-0.228688 0.03125,-0.34375 0.643106,-0.20284 1.389577,-0.390377 2.25,-0.5625 2.166953,-0.433487 4.97905,-0.75541 8.09375,-0.90625 z m 8.3125,0.03125 c 3.075121,0.15271 5.824455,0.446046 7.96875,0.875 0.857478,0.171534 1.630962,0.360416 2.28125,0.5625 0.0027,0.114659 0,0.228443 0,0.34375 0,0.735827 -0.07914,1.450633 -0.1875,2.15625 -0.598568,0.180148 -1.29077,0.34562 -2.0625,0.5 -2.158064,0.431708 -4.932088,0.754666 -8.03125,0.90625 0.04709,-1.154663 0.0625,-2.33819 0.0625,-3.5625 0,-0.611824 -0.01924,-1.185379 -0.03125,-1.78125 z M 57.15625,72.5625 c 0.0023,0.572772 0.06082,1.131112 0.125,1.6875 -0.125327,-0.05123 -0.266577,-0.10497 -0.375,-0.15625 -0.396499,-0.187528 -0.665288,-0.387337 -0.8125,-0.53125 -0.147212,-0.143913 -0.15625,-0.182756 -0.15625,-0.1875 0,-0.0047 -0.02221,-0.07484 0.125,-0.21875 0.147212,-0.143913 0.447251,-0.312472 0.84375,-0.5 0.07123,-0.03369 0.171867,-0.06006 0.25,-0.09375 z m 31.03125,0 c 0.08201,0.03503 0.175941,0.05872 0.25,0.09375 0.396499,0.187528 0.665288,0.356087 0.8125,0.5 0.14725,0.14391 0.15625,0.21405 0.15625,0.21875 0,0.0047 -0.009,0.04359 -0.15625,0.1875 -0.147212,0.143913 -0.416001,0.343722 -0.8125,0.53125 -0.09755,0.04613 -0.233314,0.07889 -0.34375,0.125 0.06214,-0.546289 0.09144,-1.094215 0.09375,-1.65625 z m -29.5,3.625 c 0.479308,0.123125 0.983064,0.234089 1.53125,0.34375 2.301781,0.460458 5.229421,0.787224 8.46875,0.9375 0.167006,2.84339 0.46081,5.433176 0.875,7.5 0.115218,0.574942 0.245268,1.063612 0.375,1.5625 -5.463677,-1.028179 -9.833074,-5.091831 -11.25,-10.34375 z m 27.96875,0 C 85.247546,81.408945 80.919274,85.442932 75.5,86.5 c 0.126981,-0.490925 0.261959,-0.967174 0.375,-1.53125 0.41419,-2.066824 0.707994,-4.65661 0.875,-7.5 3.204493,-0.15162 6.088346,-0.480068 8.375,-0.9375 0.548186,-0.109661 1.051942,-0.220625 1.53125,-0.34375 z M 70.0625,77.53125 c 0.865391,0.02589 1.723666,0.03125 2.625,0.03125 0.912062,0 1.782843,-0.0048 2.65625,-0.03125 -0.165173,2.736408 -0.453252,5.207651 -0.84375,7.15625 -0.152345,0.760206 -0.322989,1.438994 -0.5,2.03125 -0.437447,0.03919 -0.895856,0.0625 -1.34375,0.0625 -0.414943,0 -0.812719,-0.02881 -1.21875,-0.0625 -0.177011,-0.592256 -0.347655,-1.271044 -0.5,-2.03125 -0.390498,-1.948599 -0.700644,-4.419842 -0.875,-7.15625 z m 1.75,10.28125 c 0.284911,0.01545 0.554954,0.03125 0.84375,0.03125 0.325029,0 0.648588,-0.01171 0.96875,-0.03125 -0.05999,0.148763 -0.127309,0.31046 -0.1875,0.4375 -0.18789,0.396562 -0.386962,0.696416 -0.53125,0.84375 -0.144288,0.147334 -0.181857,0.125 -0.1875,0.125 -0.0056,0 -0.07446,0.02233 -0.21875,-0.125 C 72.355712,88.946416 72.18789,88.646562 72,88.25 71.939809,88.12296 71.872486,87.961263 71.8125,87.8125 z",kf="M 72.46875,22.03125 C 59.505873,22.050338 46.521615,27.004287 36.6875,36.875 L 47.84375,47.96875 C 61.521556,34.240041 83.442603,34.227389 97.125,47.90625 l 11.125,-11.125 C 98.401629,26.935424 85.431627,22.012162 72.46875,22.03125 z",If=Cesium.knockout,Ae=function(i){this.terria=i.terria,this.eventHelper=new Cesium.EventHelper,this.enableZoomControls=Cesium.defined(i.enableZoomControls)?i.enableZoomControls:!0,this.enableCompass=Cesium.defined(i.enableCompass)?i.enableCompass:!0,this.navigationLocked=!1,this.controls=i.controls,Cesium.defined(this.controls)||(this.controls=[new At(this.terria,!0),new Jt(this.terria),new At(this.terria,!1)]),this.svgCompassOuterRing=Ef,this.svgCompassGyro=Df,this.svgCompassRotationMarker=kf,this.showCompass=Cesium.defined(this.terria)&&this.enableCompass,this.heading=this.showCompass?this.terria.scene.camera.heading:0,this.isOrbiting=!1,this.orbitCursorAngle=0,this.orbitCursorOpacity=0,this.orbitLastTimestamp=0,this.orbitFrame=void 0,this.orbitIsLook=!1,this.orbitMouseMoveFunction=void 0,this.orbitMouseUpFunction=void 0,this.isRotating=!1,this.rotateInitialCursorAngle=void 0,this.rotateFrame=void 0,this.rotateIsLook=!1,this.rotateMouseMoveFunction=void 0,this.rotateMouseUpFunction=void 0,this._unsubcribeFromPostRender=void 0,If.track(this,["controls","showCompass","heading","isOrbiting","orbitCursorAngle","isRotating"]);var e=this;Ae.prototype.setNavigationLocked=function(r){this.navigationLocked=r,this.controls&&this.controls.length>1&&this.controls[1].setNavigationLocked(this.navigationLocked)};function t(){Cesium.defined(e.terria)?(e._unsubcribeFromPostRender&&(e._unsubcribeFromPostRender(),e._unsubcribeFromPostRender=void 0),e.showCompass=e.enableCompass,e._unsubcribeFromPostRender=e.terria.scene.postRender.addEventListener(function(){e.heading=e.terria.scene.camera.heading})):(e._unsubcribeFromPostRender&&(e._unsubcribeFromPostRender(),e._unsubcribeFromPostRender=void 0),e.showCompass=!1)}this.eventHelper.add(this.terria.afterWidgetChanged,t,this),t()};Ae.prototype.destroy=function(){this.eventHelper.removeAll()},Ae.prototype.show=function(i){const e="</div>",t=">",r=' style="display: none;"',n='<div class="compass"',s='title="" data-bind="visible: showCompass, event: { mousedown: handleMouseDown,touchstart:handleMouseDown, dblclick: handleDoubleClick }">',o='<div class="compass-outer-ring-background"></div>',l=` <div class="compass-rotation-marker" data-bind="visible: isOrbiting, style: { transform: 'rotate(-' + orbitCursorAngle + 'rad)', '-webkit-transform': 'rotate(-' + orbitCursorAngle + 'rad)', opacity: orbitCursorOpacity }`,c=l+', cesiumSvgPath: { path: svgCompassRotationMarker, width: 145, height: 145 }"'+t,h=l+'"'+t+this.terria.options.compassRotationMarkerSvg,u=(this.terria.options.compassRotationMarkerSvg?h:c)+e,p=` <div class="compass-outer-ring" title="" data-bind="style: { transform: 'rotate(-' + heading + 'rad)', '-webkit-transform': 'rotate(-' + heading + 'rad)' }`,d=p+', cesiumSvgPath: { path: svgCompassOuterRing, width: 145, height: 145 }"'+t,f=p+'"'+t+this.terria.options.compassOuterRingSvg,m=(this.terria.options.compassOuterRingSvg?f:d)+e,g=' <div class="compass-gyro-background"></div>',w=` <div class="compass-gyro" data-bind="css: { 'compass-gyro-active': isOrbiting }`,x=w+',cesiumSvgPath: { path: svgCompassGyro, width: 145, height: 145 } "'+t,y=w+'"'+t+this.terria.options.compassGyroSvg,v=(this.terria.options.compassGyroSvg?y:x)+e,_=s+o+u+m+g+v+e,P=n+_,O=n+r+_,k='<div class="navigation-controls"',W=this.terria.options.resetSvg,U=this.terria.options.zoomInSvg,C=this.terria.options.zoomOutSvg,S=t+`<!-- ko foreach: controls --><div data-bind="click: activate, attr: { title: $data.name }, css: $root.isLastControl($data) ? 'navigation-control-last' : 'navigation-control' "> <!-- ko if: $data.hasText --> <div data-bind="text: $data.text, css: $data.isActive ? 'navigation-control-icon-active ' + $data.cssClass : $data.cssClass"></div> <!-- /ko --> <!-- ko ifnot: $data.hasText --> <!-- ko if: $data.svgIcon --> <div data-bind="cesiumSvgPath: { path: $data.svgIcon, width: $data.svgWidth, height: $data.svgHeight }, css: $data.isActive ? 'navigation-control-icon-active ' + $data.cssClass : $data.cssClass"></div> <!-- /ko --> <!-- ko ifnot: $data.svgIcon --> <!-- ko if: $data.resetSvg --> <div class="navigation-control-icon-svg">`+W+'</div> <!-- /ko --> <!-- ko ifnot: $data.resetSvg --> <!-- ko if: $data.zoomInSvg --> <div class="navigation-control-icon-svg">'+U+'</div> <!-- /ko --> <!-- ko ifnot: $data.zoomInSvg --> <!-- ko if: $data.zoomOutSvg --> <div class="navigation-control-icon-svg">'+C+"</div> <!-- /ko --> <!-- /ko --> <!-- /ko --> <!-- /ko --> <!-- /ko --> </div> <!-- /ko -->"+e,z=k+S,A=k+r+t+S,T=(this.enableCompass?P:O)+(this.enableZoomControls?z:A);ya(T,i,this)},Ae.prototype.add=function(i){this.controls.push(i)},Ae.prototype.remove=function(i){this.controls.remove(i)},Ae.prototype.isLastControl=function(i){return i===this.controls[this.controls.length-1]};var Qr=new Cesium.Cartesian2;const Yr=i=>{let e;i.touches?e=i.touches[0]:e=i;const{clientX:t,clientY:r}=e;return{clientX:t,clientY:r}};Ae.prototype.handleMouseDown=function(i,e){const{clientX:t,clientY:r}=Yr(e);var n=this.terria.scene;if(n.mode===Cesium.SceneMode.MORPHING||i.navigationLocked)return!0;var s=e.currentTarget,o=e.currentTarget.getBoundingClientRect(),l=o.width/2,c=new Cesium.Cartesian2((o.right-o.left)/2,(o.bottom-o.top)/2),h=new Cesium.Cartesian2(t-o.left,r-o.top),u=Cesium.Cartesian2.subtract(h,c,Qr),p=Cesium.Cartesian2.magnitude(u),d=p/l,f=145,m=50;if(d<m/f)Bf(this,s,u);else if(d<1)Lf(this,s,u);else return!0};var Kr=new Cesium.Matrix4,Ii=new Cesium.Matrix4,Jr=new Cesium.Cartesian3;Ae.prototype.handleDoubleClick=function(i,e){var t=i.terria.scene,r=t.camera,n=t.screenSpaceCameraController;if(t.mode===Cesium.SceneMode.MORPHING||!n.enableInputs||i.navigationLocked)return!0;if(!(t.mode===Cesium.SceneMode.COLUMBUS_VIEW&&!n.enableTranslate)&&!((t.mode===Cesium.SceneMode.SCENE3D||t.mode===Cesium.SceneMode.COLUMBUS_VIEW)&&(!n.enableLook||t.mode===Cesium.SceneMode.SCENE3D&&!n.enableRotate))){var s=Xt.getCameraFocus(i.terria,!0,Jr);if(!Cesium.defined(s)){this.controls[1].resetView();return}var o=t.globe.ellipsoid.cartographicToCartesian(r.positionCartographic,new Cesium.Cartesian3),l=t.globe.ellipsoid.geodeticSurfaceNormal(s),c=new Cesium.BoundingSphere(s,0);r.flyToBoundingSphere(c,{offset:new Cesium.HeadingPitchRange(0,Cesium.Math.PI_OVER_TWO-Cesium.Cartesian3.angleBetween(l,r.directionWC),Cesium.Cartesian3.distance(o,s)),duration:1.5})}},Ae.create=function(i){var e=new Ae(i);return e.show(i.container),e};const Of=i=>{document.addEventListener("mousemove",i.orbitMouseMoveFunction,!1),document.addEventListener("touchmove",i.orbitMouseMoveFunction,!1),document.addEventListener("mouseup",i.orbitMouseUpFunction,!1),document.addEventListener("touchend",i.orbitMouseUpFunction,!1)},Rf=i=>{document.addEventListener("mousemove",i.rotateMouseMoveFunction,!1),document.addEventListener("touchmove",i.rotateMouseMoveFunction,!1),document.addEventListener("mouseup",i.rotateMouseUpFunction,!1),document.addEventListener("touchend",i.rotateMouseUpFunction,!1)},Ca=i=>{document.removeEventListener("mousemove",i.orbitMouseMoveFunction,!1),document.removeEventListener("touchmove",i.orbitMouseMoveFunction,!1),document.removeEventListener("mouseup",i.orbitMouseUpFunction,!1),document.removeEventListener("touchend",i.orbitMouseUpFunction,!1)},wa=i=>{document.removeEventListener("mousemove",i.rotateMouseMoveFunction,!1),document.removeEventListener("touchmove",i.rotateMouseMoveFunction,!1),document.removeEventListener("mouseup",i.rotateMouseUpFunction,!1),document.removeEventListener("touchend",i.rotateMouseUpFunction,!1)};function Bf(i,e,t){var r=i.terria.scene,n=r.screenSpaceCameraController;if(r.mode===Cesium.SceneMode.MORPHING||!n.enableInputs)return;if(i.navigationLocked)return!0;switch(r.mode){case Cesium.SceneMode.COLUMBUS_VIEW:if(n.enableLook)break;if(!n.enableTranslate||!n.enableTilt)return;break;case Cesium.SceneMode.SCENE3D:if(n.enableLook)break;if(!n.enableTilt||!n.enableRotate)return;break;case Cesium.SceneMode.SCENE2D:if(!n.enableTranslate)return;break}Ca(i),Cesium.defined(i.orbitTickFunction)&&i.terria.clock.onTick.removeEventListener(i.orbitTickFunction),i.orbitMouseMoveFunction=void 0,i.orbitMouseUpFunction=void 0,i.orbitTickFunction=void 0,i.isOrbiting=!0,i.orbitLastTimestamp=Cesium.getTimestamp();var s=r.camera;if(Cesium.defined(i.terria.trackedEntity))i.orbitFrame=void 0,i.orbitIsLook=!1;else{var o=Xt.getCameraFocus(i.terria,!0,Jr);Cesium.defined(o)?(i.orbitFrame=Cesium.Transforms.eastNorthUpToFixedFrame(o,r.globe.ellipsoid,Ii),i.orbitIsLook=!1):(i.orbitFrame=Cesium.Transforms.eastNorthUpToFixedFrame(s.positionWC,r.globe.ellipsoid,Ii),i.orbitIsLook=!0)}i.orbitTickFunction=function(c){var h=Cesium.getTimestamp(),u=h-i.orbitLastTimestamp,p=(i.orbitCursorOpacity-.5)*2.5/1e3,d=u*p,f=i.orbitCursorAngle+Cesium.Math.PI_OVER_TWO,m=Math.cos(f)*d,g=Math.sin(f)*d,w;if(i.navigationLocked)return!0;Cesium.defined(i.orbitFrame)&&(w=Cesium.Matrix4.clone(s.transform,Kr),s.lookAtTransform(i.orbitFrame)),r.mode===Cesium.SceneMode.SCENE2D?s.move(new Cesium.Cartesian3(m,g,0),Math.max(r.canvas.clientWidth,r.canvas.clientHeight)/100*s.positionCartographic.height*d):i.orbitIsLook?(s.look(Cesium.Cartesian3.UNIT_Z,-m),s.look(s.right,-g)):(s.rotateLeft(m),s.rotateUp(g)),Cesium.defined(i.orbitFrame)&&s.lookAtTransform(w),i.orbitLastTimestamp=h};function l(c,h){var u=Math.atan2(-c.y,c.x);i.orbitCursorAngle=Cesium.Math.zeroToTwoPi(u-Cesium.Math.PI_OVER_TWO);var p=Cesium.Cartesian2.magnitude(c),d=h/2,f=Math.min(p/d,1),m=.5*f*f+.5;i.orbitCursorOpacity=m}i.orbitMouseMoveFunction=function(c){const{clientX:h,clientY:u}=Yr(c);var p=e.getBoundingClientRect(),d=new Cesium.Cartesian2((p.right-p.left)/2,(p.bottom-p.top)/2),f=new Cesium.Cartesian2(h-p.left,u-p.top),m=Cesium.Cartesian2.subtract(f,d,Qr);l(m,p.width)},i.orbitMouseUpFunction=function(c){i.isOrbiting=!1,Ca(i),Cesium.defined(i.orbitTickFunction)&&i.terria.clock.onTick.removeEventListener(i.orbitTickFunction),i.orbitMouseMoveFunction=void 0,i.orbitMouseUpFunction=void 0,i.orbitTickFunction=void 0},Of(i),i.terria.clock.onTick.addEventListener(i.orbitTickFunction),l(t,e.getBoundingClientRect().width)}function Lf(i,e,t){var r=i.terria.scene,n=r.camera,s=r.screenSpaceCameraController;if(!(r.mode===Cesium.SceneMode.MORPHING||r.mode===Cesium.SceneMode.SCENE2D||!s.enableInputs)){if(i.navigationLocked)return!0;if(!(!s.enableLook&&(r.mode===Cesium.SceneMode.COLUMBUS_VIEW||r.mode===Cesium.SceneMode.SCENE3D&&!s.enableRotate))){if(wa(i),i.rotateMouseMoveFunction=void 0,i.rotateMouseUpFunction=void 0,i.isRotating=!0,i.rotateInitialCursorAngle=Math.atan2(-t.y,t.x),Cesium.defined(i.terria.trackedEntity))i.rotateFrame=void 0,i.rotateIsLook=!1;else{var o=Xt.getCameraFocus(i.terria,!0,Jr);!Cesium.defined(o)||r.mode===Cesium.SceneMode.COLUMBUS_VIEW&&!s.enableLook&&!s.enableTranslate?(i.rotateFrame=Cesium.Transforms.eastNorthUpToFixedFrame(n.positionWC,r.globe.ellipsoid,Ii),i.rotateIsLook=!0):(i.rotateFrame=Cesium.Transforms.eastNorthUpToFixedFrame(o,r.globe.ellipsoid,Ii),i.rotateIsLook=!1)}var l;Cesium.defined(i.rotateFrame)&&(l=Cesium.Matrix4.clone(n.transform,Kr),n.lookAtTransform(i.rotateFrame)),i.rotateInitialCameraAngle=-n.heading,Cesium.defined(i.rotateFrame)&&n.lookAtTransform(l),i.rotateMouseMoveFunction=function(c){const{clientX:h,clientY:u}=Yr(c);var p=e.getBoundingClientRect(),d=new Cesium.Cartesian2((p.right-p.left)/2,(p.bottom-p.top)/2),f=new Cesium.Cartesian2(h-p.left,u-p.top),m=Cesium.Cartesian2.subtract(f,d,Qr),g=Math.atan2(-m.y,m.x),w=g-i.rotateInitialCursorAngle,x=Cesium.Math.zeroToTwoPi(i.rotateInitialCameraAngle-w),y=i.terria.scene.camera,v;Cesium.defined(i.rotateFrame)&&(v=Cesium.Matrix4.clone(y.transform,Kr),y.lookAtTransform(i.rotateFrame));var _=-y.heading;y.rotateRight(x-_),Cesium.defined(i.rotateFrame)&&y.lookAtTransform(v)},i.rotateMouseUpFunction=function(c){i.isRotating=!1,wa(i),i.rotateMouseMoveFunction=void 0,i.rotateMouseUpFunction=void 0},Rf(i)}}}var ba=Cesium.Event,Pe=function(i){zf.apply(this,arguments),this._onDestroyListeners=[]};Pe.prototype.distanceLegendViewModel=void 0,Pe.prototype.navigationViewModel=void 0,Pe.prototype.navigationDiv=void 0,Pe.prototype.distanceLegendDiv=void 0,Pe.prototype.terria=void 0,Pe.prototype.container=void 0,Pe.prototype._onDestroyListeners=void 0,Pe.prototype._navigationLocked=!1,Pe.prototype.setNavigationLocked=function(i){this._navigationLocked=i,this.navigationViewModel.setNavigationLocked(this._navigationLocked)},Pe.prototype.getNavigationLocked=function(){return this._navigationLocked},Pe.prototype.destroy=function(){Cesium.defined(this.navigationViewModel)&&this.navigationViewModel.destroy(),Cesium.defined(this.distanceLegendViewModel)&&this.distanceLegendViewModel.destroy(),Cesium.defined(this.navigationDiv)&&this.navigationDiv.parentNode.removeChild(this.navigationDiv),delete this.navigationDiv,Cesium.defined(this.distanceLegendDiv)&&this.distanceLegendDiv.parentNode.removeChild(this.distanceLegendDiv),delete this.distanceLegendDiv,Cesium.defined(this.container)&&this.container.parentNode.removeChild(this.container),delete this.container;for(var i=0;i<this._onDestroyListeners.length;i++)this._onDestroyListeners[i]()},Pe.prototype.addOnDestroyListener=function(i){typeof i=="function"&&this._onDestroyListeners.push(i)};function zf(i,e){if(!Cesium.defined(i))throw new Cesium.DeveloperError("CesiumWidget or Viewer is required.");var t=Cesium.defined(i.cesiumWidget)?i.cesiumWidget:i,r=document.createElement("div");r.className="cesium-widget-cesiumNavigationContainer",t.container.appendChild(r),this.terria=i,this.terria.options=Cesium.defined(e)?e:{},this.terria.afterWidgetChanged=new ba,this.terria.beforeWidgetChanged=new ba,this.container=r,(!Cesium.defined(this.terria.options.enableDistanceLegend)||this.terria.options.enableDistanceLegend)&&(this.distanceLegendDiv=document.createElement("div"),r.appendChild(this.distanceLegendDiv),this.distanceLegendDiv.setAttribute("id","distanceLegendDiv"),this.distanceLegendViewModel=Yt.create({container:this.distanceLegendDiv,terria:this.terria,mapElement:r,enableDistanceLegend:!0})),(!Cesium.defined(this.terria.options.enableZoomControls)||this.terria.options.enableZoomControls)&&(!Cesium.defined(this.terria.options.enableCompass)||this.terria.options.enableCompass)?(this.navigationDiv=document.createElement("div"),this.navigationDiv.setAttribute("id","navigationDiv"),r.appendChild(this.navigationDiv),this.navigationViewModel=Ae.create({container:this.navigationDiv,terria:this.terria,enableZoomControls:!0,enableCompass:!0})):Cesium.defined(this.terria.options.enableZoomControls)&&!this.terria.options.enableZoomControls&&(!Cesium.defined(this.terria.options.enableCompass)||this.terria.options.enableCompass)?(this.navigationDiv=document.createElement("div"),this.navigationDiv.setAttribute("id","navigationDiv"),r.appendChild(this.navigationDiv),this.navigationViewModel=Ae.create({container:this.navigationDiv,terria:this.terria,enableZoomControls:!1,enableCompass:!0})):(!Cesium.defined(this.terria.options.enableZoomControls)||this.terria.options.enableZoomControls)&&Cesium.defined(this.terria.options.enableCompass)&&!this.terria.options.enableCompass?(this.navigationDiv=document.createElement("div"),this.navigationDiv.setAttribute("id","navigationDiv"),r.appendChild(this.navigationDiv),this.navigationViewModel=Ae.create({container:this.navigationDiv,terria:this.terria,enableZoomControls:!0,enableCompass:!1})):Cesium.defined(this.terria.options.enableZoomControls)&&!this.terria.options.enableZoomControls&&Cesium.defined(this.terria.options.enableCompass)&&!this.terria.options.enableCompass}var vg="";class xa extends bt{_addedHook(){this._init()}_init(){if(!this._map)return;const e=this._map,o=this.options,{compass:t=!0,distance:r=!0,zoom:n=!0}=o,s=te(o,["compass","distance","zoom"]);this.node=new Pe(e.viewer,N({enableCompass:t,enableZoomControls:n,enableDistanceLegend:r},s)),pe(t)&&ce(this.node.container.querySelector(".compass"),t),pe(n)&&ce(this.node.container.querySelector(".navigation-controls"),n),pe(r)&&ce(this.node.container.querySelector(".distance-legend"),r)}setOptions(e){var t;this.node&&((t=this.node)==null||t.destroy(),this.node=null),this.options=fe(this.options,e),this._init()}destroy(){var e;(e=this.node)==null||e.destroy(),this.node=null,super.destroy()}}var yg="";class Aa extends bt{_addedHook(){this._init()}_init(){this._dom=up("div",{className:"location-bar-box",container:this._map.container});const e=()=>{const{center:t,distance:r,rotate:n,tilt:s}=this._map.getCurrentView()||{};if(!t||t.isZero())return;const{lng:o,lat:l,alt:c}=t.toLatLng();if(this.options.templateCallback){this._dom.innerHTML=this.options.templateCallback({center:t,distance:r,rotate:n,tilt:s});return}this._dom.innerHTML=`
<span>\u7ECF\u5EA6: ${+o.toFixed(6)}\xB0</span>
<span>\u7EAC\u5EA6: ${+l.toFixed(6)}\xB0</span>
<span>\u6D77\u62D4: ${+c.toFixed(0)}\u7C73</span>
<span>\u65B9\u5411: ${+n.toFixed(0)}\xB0</span>
<span>\u503E\u659C\u89D2: ${+s.toFixed(0)}\xB0</span>
<span>\u89C6\u8DDD: ${+r.toFixed(0)}\u7C73</span>
`};this._eventEffect=this._map.on([Y.CameraChanged,Y.CameraMoveEnd].join(" "),e),e()}setOptions(e){this._dom&&(this._dom.remove(),this._dom=null),this._eventEffect&&(this._eventEffect(),this._eventEffect=null),this.options=fe(this.options,e),this._init()}destroy(){this._dom&&(this._dom.remove(),this._dom=null),this._eventEffect&&(this._eventEffect(),this._eventEffect=null),super.destroy()}}var _g="";class Pa extends bt{constructor(e){super(ie({mapOptions:{scene:{screenSpaceCameraController:{enableRotate:!1,enableTranslate:!1,enableZoom:!1,enableTilt:!1,enableLook:!1}}},rectangleStyle:{color:"rgb(243, 131, 33)"},scale:1.2},e))}_addedHook(){const e=this._map;this._div=document.createElement("div"),this._div.setAttribute("class","cesium-view-control-overview"),e.container.append(this._div),this.overviewMap=new za(this._div,N({baseMaps:e.options.baseMaps,imageryProvider:e.options.imageryProvider},this.options.mapOptions)),this.overviewMap.changeMode("2d"),this.overviewMap.viewer.entities.add({rectangle:{coordinates:new a.CallbackProperty(()=>{const r=e.viewer.camera.computeViewRectangle();if(!r)return;const n=a.BoundingSphere.fromRectangle3D(r);return n.radius*=this.options.scale,this.overviewMap.camera.viewBoundingSphere(n),r},!1),outline:!0,outlineColor:a.Color.fromCssColorString(this.options.rectangleStyle.color),extrudedHeight:1,height:1,material:a.Color.fromCssColorString(this.options.rectangleStyle.color).withAlpha(.1)}})}destroy(){this._div&&(this._map.container.removeChild(this._div),this._div=null),this.overviewMap&&(this.overviewMap.destroy(),this.overviewMap=null),super.destroy()}}const Sa={[Dt.Floor]:va,[Dt.Navigation]:xa,[Dt.LocationBar]:Aa,[Dt.Overview]:Pa};var Gf=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",ControlMap:Sa,FloorControl:va,NavigationControl:xa,LocationBarControl:Aa,OverviewControl:Pa}),Hf={_extendInit(){this.controls=[]},setControlOptions(i){Object.entries(i).forEach(([e,t])=>{if(t===!1||t.show===!1){this.removeControl(e);return}this.getControl(e)?this.updateControl(N({id:e},t)):this.addControl(N({id:e,type:e},t))})},updateControl(t){var r=t,{id:i}=r,e=te(r,["id"]);const n=this.getControl(i);!n||n.setOptions(e)},addControl(i){let e;if(i instanceof bt)e=i;else{const t=i,{type:r}=t,n=te(t,["type"]),s=Sa[r];if(!s)return;e=new s(ue(N({},n),{map:this}))}return e._onAddToMap(this),this.controls.push(e),e},getControl(i){return i instanceof bt?i:this.controls.find(e=>e.id===i)},removeControl(i){const e=this.getControl(i),t=this.controls.findIndex(r=>r===e);t!==-1&&(this.controls.splice(t,1),e.state!==de.DESTROYED&&e.destroy())}};class De{constructor(e){this.id=e.id||et(),this.state=de.INITIALIZED,this.setOptions(N({show:!0},e))}setOptions(e){pe(e)&&Object.entries(e).forEach(([t,r])=>{t==="show"?this.enable=r:this[t]=r})}destroy(){this.enable=!1,this._delegate&&(this._delegate=null),this.state=de.DESTROYED,this._map.removeEffect(this),this._map=null,this._viewer=null}show(){this.enable=!0}hide(){this.enable=!1}addTo(e){return e?(this._map=e,this._viewer=e.viewer,this.state=de.ADDED,this.enable&&this.show(),this):this}}const Ff=new URL("data:image/jpeg;base64,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",self.location).href,Nf={speed:.1,heading:0};class Uf extends De{constructor(e={}){super(fe(Nf,e));this._delegate=void 0,this.type=oe.Cloud}set enable(e){this._enable=e,this._delegate&&(this._delegate.show=e),!!this._map&&!this._map.viewer.scene.mode!==a.SceneMode.SCENE3D&&(this._enable?this._cancel||(this._cancel=this._map.viewer.scene.postUpdate.addEventListener(this._onRotate,this)):this._cancel&&(this._cancel(),this._cancel=null))}get enable(){return this._enable}set speed(e){this._speed=e}get speed(){return this._speed}set heading(e){this._heading=e}get heading(){return this._heading}_onRotate(e,t){this._speed!==0&&(this._heading+=this._speed,(this._heading>=360||this._heading<=-360)&&(this._heading=0),this._delegate.modelMatrix=a.Transforms.headingPitchRollToFixedFrame(new a.Cartesian3,new a.HeadingPitchRoll(a.Math.toRadians(this._heading),0,0)))}_createPrimitive(){this._delegate=new a.Primitive({appearance:new a.EllipsoidSurfaceAppearance({material:new a.Material({fabric:{type:"Image",uniforms:{color:new a.Color(1,1,1,1),image:Ff},components:{alpha:"texture2D(image, fract(repeat * materialInput.st)).r * color.a",diffuse:"vec3(1.0)"},translucent:!0,aboveGround:!0}})})}),this._delegate.geometryInstances=new a.GeometryInstance({geometry:new a.EllipsoidGeometry({vertexFormat:a.VertexFormat.POSITION_AND_ST,radii:this._map.viewer.scene.globe.ellipsoid.radii}),id:this.id}),this._delegate.show=this._enable,this._map.viewer.scene.primitives.add(this._delegate)}addTo(e){if(!e)return this;this._map=e,this._createPrimitive(),this.state=de.ADDED,this.enable&&this.show()}}var Wf=`
uniform sampler2D colorTexture;
uniform sampler2D depthTexture;
uniform vec4 fogByDistance;
uniform vec4 fogColor;
varying vec2 v_textureCoordinates;
float getDistance(sampler2D depthTexture, vec2 texCoords){
float depth = czm_unpackDepth(texture2D(depthTexture, texCoords));
if (depth == 0.0) {
return czm_infinity;
}
vec4 eyeCoordinate = czm_windowToEyeCoordinates(gl_FragCoord.xy, depth);
return -eyeCoordinate.z / eyeCoordinate.w;
}
float interpolateByDistance(vec4 nearFarScalar, float distance){
float startDistance = nearFarScalar.x;
float startValue = nearFarScalar.y;
float endDistance = nearFarScalar.z;
float endValue = nearFarScalar.w;
float t = clamp((distance - startDistance) / (endDistance - startDistance), 0.0, 1.0);
return mix(startValue, endValue, t);
}
vec4 alphaBlend(vec4 sourceColor, vec4 destinationColor){
return sourceColor * vec4(sourceColor.aaa, 1.0) + destinationColor * (1.0 - sourceColor.a);
}
void main(void){
float distance = getDistance(depthTexture, v_textureCoordinates);
vec4 sceneColor = texture2D(colorTexture, v_textureCoordinates);
float blendAmount = interpolateByDistance(fogByDistance, distance);
vec4 finalFogColor = vec4(fogColor.rgb, fogColor.a * blendAmount);
gl_FragColor = alphaBlend(finalFogColor, sceneColor);
}
`;const Vf=[Z("color"),J("fogByDistance",a.NearFarScalar)],jf={fogByDistance:{near:100,nearValue:0,far:9e3,farValue:1},color:"#000"};class qf extends De{constructor(e={}){super(fe(jf,e));this.type=oe.Fog}setOptions(e){const t=re(Vf,e);super.setOptions(t)}set enable(e){this._enable=e,e&&this._map&&!this._delegate&&this._createPostProcessStage(),this._delegate&&(this._delegate.enabled=e)}get enable(){return this._enable}set fogByDistance(e){var t,r,n,s;this._fogByDistance=e,this._delegate&&(this._delegate.uniforms.fogByDistance=new a.Cartesian4(((t=this._fogByDistance)==null?void 0:t.near)||10,((r=this._fogByDistance)==null?void 0:r.nearValue)||0,((n=this._fogByDistance)==null?void 0:n.far)||2e3,((s=this._fogByDistance)==null?void 0:s.farValue)||1))}get fogByDistance(){return this._fogByDistance}set color(e){this._color=e,this._delegate&&(this._delegate.uniforms.fogColor=e)}get color(){return this._color}_createPostProcessStage(){var e,t,r,n;this._delegate=new a.PostProcessStage({name:this.id,fragmentShader:Wf,uniforms:{fogByDistance:new a.Cartesian4(((e=this._fogByDistance)==null?void 0:e.near)||10,((t=this._fogByDistance)==null?void 0:t.nearValue)||0,((r=this._fogByDistance)==null?void 0:r.far)||200,((n=this._fogByDistance)==null?void 0:n.farValue)||1),fogColor:this._color}}),this._map.viewer.scene.postProcessStages.add(this._delegate)}destroy(){this._delegate&&this._map.viewer.scene.postProcessStages.remove(this._delegate),super.destroy()}}var Qf=`
uniform sampler2D colorTexture;
varying vec2 v_textureCoordinates;
uniform float speed;
float hash(float x){
return fract(sin(x*23.3)*13.13);
}
void main(){
float time = czm_frameNumber * speed / 1000.0;
vec2 resolution = czm_viewport.zw;
vec2 uv=(gl_FragCoord.xy*2.-resolution.xy)/min(resolution.x,resolution.y);
vec3 c=vec3(.1,.2,.3);
float a=-.3;
float si=sin(a),co=cos(a);
uv*=mat2(co,-si,si,co);
uv*=length(uv+vec2(0,4.9))*.3+1.;
float v=1.-sin(hash(floor(uv.x*100.))*2.);
float b=clamp(abs(sin(20.*time*v+uv.y*(5./(2.+v))))-.95,0.,1.)*10.;
c*=v*b;
gl_FragColor = mix(texture2D(colorTexture, v_textureCoordinates), vec4(c,1), 0.5);
}
`;const Yf={speed:10};class Kf extends De{constructor(e={}){super(fe(Yf,e));this.type=oe.Rain}set enable(e){this._enable=e,e&&this._map&&!this._delegate&&this._createPostProcessStage(),this._delegate&&(this._delegate.enabled=e)}get enable(){return this._enable}set speed(e){this._speed=e,this._delegate&&(this._delegate.uniforms.speed=e)}get speed(){return this._speed}_createPostProcessStage(){this._delegate=new a.PostProcessStage({name:this.id,fragmentShader:Qf,uniforms:{speed:this._speed}}),this._map.viewer.scene.postProcessStages.add(this._delegate)}destroy(){this._delegate&&this._map.viewer.scene.postProcessStages.remove(this._delegate),super.destroy()}}var Jf=`
uniform sampler2D colorTexture;
varying vec2 v_textureCoordinates;
uniform float speed;
float snow(vec2 uv,float scale){
float time = czm_frameNumber * speed / 1000.0 ;
float w=smoothstep(1.,0.,-uv.y*(scale/10.));
if(w<.1)return 0.;
uv+=time/scale;
uv.y+=time*2./scale;
uv.x+=sin(uv.y+time*.5)/scale;
uv*=scale;
vec2 s=floor(uv),f=fract(uv),p;
float k=3.,d;
p=.5+.35*sin(11.*fract(sin((s+p+scale)*mat2(7,3,6,5))*5.))-f;
d=length(p);
k=min(d,k);
k=smoothstep(0.,k,sin(f.x+f.y)*0.01);
return k*w;
}
void main(){
vec2 resolution = czm_viewport.zw;
vec2 uv=(gl_FragCoord.xy*2.-resolution.xy)/min(resolution.x,resolution.y);
vec3 finalColor=vec3(0);
float c = 0.0;
c+=snow(uv,10.);
c+=snow(uv,8.);
c+=snow(uv,6.);
c+=snow(uv,5.);
finalColor=(vec3(c));
gl_FragColor = mix(texture2D(colorTexture, v_textureCoordinates), vec4(finalColor,1), 0.3);
}
`;const Xf={speed:10};class Zf extends De{constructor(e={}){super(fe(Xf,e));this.type=oe.Snow}set enable(e){this._enable=e,e&&this._map&&!this._delegate&&this._createPostProcessStage(),this._delegate&&(this._delegate.enabled=e)}get enable(){return this._enable}set speed(e){this._speed=e,this._delegate&&(this._delegate.uniforms.speed=e)}get speed(){return this._speed}_createPostProcessStage(){this._delegate=new a.PostProcessStage({name:this.id,fragmentShader:Jf,uniforms:{speed:this._speed}}),this._map.viewer.scene.postProcessStages.add(this._delegate)}destroy(){this._delegate&&this._map.viewer.scene.postProcessStages.remove(this._delegate),super.destroy()}}var $f=`
uniform sampler2D colorTexture;
uniform float brightness;
uniform float alpha;
varying vec2 v_textureCoordinates;
void main(void)
{
vec4 rgba = texture2D(colorTexture, v_textureCoordinates);
vec3 target = vec3(0.0);
float a = rgba.a;
if( alpha != 0.0 ) {
a = alpha;
}
gl_FragColor = vec4(mix(target, rgba.rgb, brightness), a);
}
`;const em={intensity:1.5,alpha:0,selected:[]};class tm extends De{constructor(e={}){super(fe(em,e));this.type=oe.Brightness}set enable(e){this._enable=e,e&&this._map&&!this._delegate&&this._createPostProcessStage(),this._delegate&&(this._delegate.enabled=e)}get enable(){return this._enable}set intensity(e){this._intensity=e,this._delegate&&(this._delegate.uniforms.brightness=e)}get intensity(){return this._intensity}set alpha(e){this._alpha=e,this._delegate&&(this._delegate.uniforms.alpha=e)}get alpha(){return this._alpha}set selected(e){this._selected=e,this._delegate&&(this._delegate.selected=e)}get selected(){return this._selected}_createPostProcessStage(){this._delegate=new a.PostProcessStage({name:"czm_brightness2",fragmentShader:$f,uniforms:{brightness:.5}}),this._delegate&&(this._delegate.uniforms.brightness=this._intensity,this._delegate.uniforms.alpha=this._alpha,this._map.viewer.scene.postProcessStages.add(this._delegate))}}const im={contrast:128,brightness:-.3,glowOnly:!1,delta:1,sigma:3.8,stepSize:5,selected:[]};class rm extends De{constructor(e){super(fe(im,e));this.type=oe.Bloom}set enable(e){this._enable=e,e&&this._viewer&&!this._delegate&&this._createPostProcessStage(),this._delegate&&(this._delegate.enabled=e)}get enable(){return this._enable}set contrast(e){this._contrast=e,this._delegate&&(this._delegate.uniforms.contrast=e)}get contrast(){return this._contrast}set brightness(e){this._brightness=e,this._delegate&&(this._delegate.uniforms.brightness=e)}get brightness(){return this._brightness}set glowOnly(e){this._glowOnly=e,this._delegate&&(this._delegate.uniforms.glowOnly=e)}get glowOnly(){return this._glowOnly}set delta(e){this._delta=e,this._delegate&&(this._delegate.uniforms.delta=e)}get delta(){return this._delta}set sigma(e){this._sigma=e,this._delegate&&(this._delegate.uniforms.sigma=e)}get sigma(){return this._sigma}set stepSize(e){this._stepSize=e,this._delegate&&(this._delegate.uniforms.stepSize=e)}get stepSize(){return this._stepSize}set selected(e){this._selected=e,this._delegate&&(this._delegate.selected=e)}get selected(){return this._selected}_createPostProcessStage(){this._delegate=this._viewer.scene.postProcessStages.bloom,this._delegate.uniforms.contrast=this._contrast,this._delegate.uniforms.brightness=this._brightness,this._delegate.uniforms.glowOnly=this._glowOnly,this._delegate.uniforms.delta=this._delta,this._delegate.uniforms.sigma=this._sigma,this._delegate.uniforms.stepSize=this._stepSize}}const nm={focalDistance:87,delta:1,sigma:3.8,stepSize:2.5,selected:[]};class sm extends De{constructor(e){super(fe(nm,e));this.type=oe.DepthOfField}set enable(e){this._enable=e,e&&this._viewer&&a.PostProcessStageLibrary.isDepthOfFieldSupported(this._viewer.scene)&&!this._delegate&&this._createPostProcessStage(),this._delegate&&(this._delegate.enabled=e)}get enable(){return this._enable}set focalDistance(e){this._focalDistance=e,this._delegate&&(this._delegate.uniforms.focalDistance=e)}get focalDistance(){return this._focalDistance}set delta(e){this._delta=e,this._delegate&&(this._delegate.uniforms.delta=e)}get delta(){return this._delta}set sigma(e){this._sigma=e,this._delegate&&(this._delegate.uniforms.sigma=e)}get sigma(){return this._sigma}set stepSize(e){this._stepSize=e,this._delegate&&(this._delegate.uniforms.stepSize=e)}get stepSize(){return this._stepSize}set selected(e){this._selected=e,this._delegate&&(this._delegate.selected=e)}get selected(){return this._selected}_createPostProcessStage(){this._delegate=a.PostProcessStageLibrary.createDepthOfFieldStage(),this._delegate&&(this._delegate.uniforms.focalDistance=this._focalDistance,this._delegate.uniforms.delta=this._delta,this._delegate.uniforms.sigma=this._sigma,this._delegate.uniforms.stepSize=this._stepSize,this._viewer.scene.postProcessStages.add(this._delegate))}}const om={color:"#00ff00",length:.5,selected:[]},am=[Z("color")];class lm extends De{constructor(e){super(fe(om,e));this.type=oe.Silhouette}setOptions(e){const t=re(am,e);super.setOptions(t)}set enable(e){this._enable=e,!!this._map&&(e&&this._viewer&&a.PostProcessStageLibrary.isSilhouetteSupported(this._viewer.scene)&&!this._delegate&&this._createPostProcessStage(),this._delegate&&(this._delegate.enabled=e))}get enable(){return this._enable}set color(e){if(this._color=Ze(e),this._delegate){const t=this._delegate.uniforms.color;t.alpha=this._color.alpha,t.blue=this._color.blue,t.green=this._color.green,t.red=this._color.red}}get color(){return this._color}set length(e){this._length=e,this._delegate&&(this._delegate.uniforms.length=e)}get length(){return this._length}set selected(e){this._selected=e,this._delegate&&(this._delegate.selected=e)}get selected(){return this._selected}_createPostProcessStage(){this._delegate=a.PostProcessStageLibrary.createSilhouetteStage(),console.log("_createPostProcessStage",this._delegate),this._delegate&&(this._delegate.uniforms.color=this._color,this._delegate.uniforms.length=this._length,this._viewer.scene.postProcessStages.add(this._delegate))}}class cm extends De{constructor(e){super(e);this.type=oe.Night}set enable(e){this._enable=e,e&&this._viewer&&!this._delegate&&this._createPostProcessStage(),this._delegate&&(this._delegate.enabled=e)}get enable(){return this._enable}set selected(e){this._selected=e,this._delegate&&(this._delegate.selected=e)}get selected(){return this._selected}_createPostProcessStage(){this._delegate=a.PostProcessStageLibrary.createNightVisionStage(),this._delegate&&this._viewer.scene.postProcessStages.add(this._delegate)}}const hm={gradations:100,selected:[]};class um extends De{constructor(e){super(fe(hm,e));this.type=oe.BlackAndWhite}set enable(e){this._enable=e,e&&this._viewer&&!this._delegate&&this._createPostProcessStage(),this._delegate&&(this._delegate.enabled=e)}get enable(){return this._enable}set gradations(e){this._gradations=e,this._delegate&&(this._delegate.uniforms.gradations=e)}get gradations(){return this._gradations}set selected(e){this._selected=e,this._delegate&&(this._delegate.selected=e)}get selected(){return this._selected}_createPostProcessStage(){this._delegate=a.PostProcessStageLibrary.createBlackAndWhiteStage(),this._delegate&&(this._delegate.uniforms.gradations=this._gradations,this._viewer.scene.postProcessStages.add(this._delegate))}}var dm=`
uniform sampler2D colorTexture;
uniform float brightness;
uniform float saturation;
uniform float contrast;
varying vec2 v_textureCoordinates;
void main(void)
{
vec4 rgba = texture2D(colorTexture, v_textureCoordinates);
vec3 finalColor = rgba.rgb;
float a = rgba.a;
//\u8C03\u6574\u4EAE\u5EA6
finalColor = finalColor * brightness;
//\u8C03\u6574\u9971\u548C\u5EA6
float luminance = 0.2125 * rgba.r + 0.7154 * rgba.g + 0.0721 * rgba.b;
vec3 saturationTarget = vec3(luminance,luminance,luminance);
finalColor = mix(saturationTarget, finalColor, saturation);
//\u8C03\u6574\u5BF9\u6BD4\u5EA6
vec3 contrastTarget = vec3(0.5,0.5,0.5);
finalColor = mix(contrastTarget, finalColor, contrast);
gl_FragColor = vec4(finalColor, a);
}
`;const pm={brightness:1,saturation:1,contrast:1,selected:[]};class fm extends De{constructor(e={}){super(fe(pm,e));this.type=oe.Brightness}set enable(e){this._enable=e,e&&this._map&&!this._delegate&&this._createPostProcessStage(),this._delegate&&(this._delegate.enabled=e)}get enable(){return this._enable}set brightness(e){this._brightness=e,this._delegate&&(this._delegate.uniforms.brightness=e)}get brightness(){return this._brightness}set saturation(e){this._saturation=e,this._delegate&&(this._delegate.uniforms.saturation=e)}get saturation(){return this._saturation}set contrast(e){this._contrast=e,this._delegate&&(this._delegate.uniforms.contrast=e)}get contrast(){return this._contrast}set selected(e){this._selected=e,this._delegate&&(this._delegate.selected=e)}get selected(){return this._selected}_createPostProcessStage(){this._delegate=new a.PostProcessStage({name:"visualImpact",fragmentShader:dm,uniforms:{brightness:1,saturation:1,contrast:1}}),this._delegate&&(this._delegate.uniforms.brightness=this._brightness,this._delegate.uniforms.saturation=this._saturation,this._delegate.uniforms.contrast=this._contrast,this._delegate.selected=this._selected,this._map.viewer.scene.postProcessStages.add(this._delegate))}}const mm={[oe.Cloud]:Uf,[oe.Fog]:qf,[oe.Rain]:Kf,[oe.Snow]:Zf,[oe.Bloom]:rm,[oe.DepthOfField]:sm,[oe.Brightness]:tm,[oe.Silhouette]:lm,[oe.Night]:cm,[oe.BlackAndWhite]:um,[oe.VisualImpact]:fm};var gm={_extendInit(){this.effects=[]},addEffect(t={}){var r=t,{type:i}=r,e=te(r,["type"]);const n=mm[i];if(!n){console.warn(`\u4E0D\u5B58\u5728type\u4E3A${i}\u7684effect`);return}const s=new n(N({},e));return s.addTo(this),this.effects.push(s),s},updateEffect(r={}){var n=r,{id:i,show:e}=n,t=te(n,["id","show"]);if(!i)return;const s=this.getEffect(i);!s||(H(t)&&s.setOptions(t),H(e)&&(s.enable=e))},effectOptions:{},setEffectOptions(i){this.effectOptions=ie(this.effectOptions,i),Object.keys(i).forEach(e=>{const t=this.effectOptions[e],r=e;t.show?this.getEffect(r)?this.updateEffect(N({id:r},t)):this.addEffect(N({id:r,type:r},t)):this.removeEffect(r)})},getEffect(i){if(!!i)return i instanceof De?i:this.effects.find(e=>e.id===i)},removeEffect(i){const e=this.getEffect(i);if(!e)return;const t=this.effects.findIndex(r=>r===e);t!==-1&&(this.effects.splice(t,1),e.state!==de.DESTROYED&&e.destroy())},removeAllEffect(){this.effects.forEach(i=>i.destroy())}};const{BoxGeometry:Ta,Cartesian3:vm,defined:Ue,DeveloperError:Ma,GeometryPipeline:ym,Matrix3:Ea,Matrix4:Xr,Transforms:_m,VertexFormat:Cm,BufferUsage:wm,CubeMap:bm,loadCubeMap:xm,RenderState:Am,VertexArray:Pm,BlendingState:Sm,SceneMode:Da,ShaderProgram:Tm,ShaderSource:Mm}=a,Em=`
uniform samplerCube u_cubeMap;
varying vec3 v_texCoord;
void main()
{
vec4 color = textureCube(u_cubeMap, normalize(v_texCoord));
gl_FragColor = vec4(czm_gammaCorrect(color).rgb, czm_morphTime);
}
`,Dm=`
attribute vec3 position;
varying vec3 v_texCoord;
uniform mat3 u_rotateMatrix;
void main()
{
vec3 p = czm_viewRotation * u_rotateMatrix * (czm_temeToPseudoFixed * (czm_entireFrustum.y * position));
gl_Position = czm_projection * vec4(p, 1.0);
v_texCoord = position.xyz;
}
`;class km extends a.SkyBox{constructor(e={}){super(e);this.offsetAngle=(e==null?void 0:e.offsetAngle)||0}update(e,t){const r=this;if(!this.show||e.mode!==Da.SCENE3D&&e.mode!==Da.MORPHING||!e.passes.render)return;const n=e.context;if(this._sources!==this.sources){this._sources=this.sources;const o=this.sources;if(!Ue(o.positiveX)||!Ue(o.negativeX)||!Ue(o.positiveY)||!Ue(o.negativeY)||!Ue(o.positiveZ)||!Ue(o.negativeZ))throw new Ma("this.sources is required and must have positiveX, negativeX, positiveY, negativeY, positiveZ, and negativeZ properties.");if(typeof o.positiveX!=typeof o.negativeX||typeof o.positiveX!=typeof o.positiveY||typeof o.positiveX!=typeof o.negativeY||typeof o.positiveX!=typeof o.positiveZ||typeof o.positiveX!=typeof o.negativeZ)throw new Ma("this.sources properties must all be the same type.");typeof o.positiveX=="string"?xm(n,this._sources).then(l=>{r._cubeMap=r._cubeMap&&r._cubeMap.destroy(),r._cubeMap=l}):(this._cubeMap=this._cubeMap&&this._cubeMap.destroy(),this._cubeMap=new bm({context:n,source:o}))}const s=this._command;if(s.modelMatrix=_m.eastNorthUpToFixedFrame(e.camera.positionWC),this.offsetAngle!==0&&Xr.multiply(s.modelMatrix,Xr.fromRotationTranslation(Ea.fromRotationZ(this.offsetAngle/180*Math.PI)),s.modelMatrix),!Ue(s.vertexArray)){s.uniformMap={u_cubeMap(){return r._cubeMap},u_rotateMatrix(){return Xr.getMatrix3(s.modelMatrix,new Ea)}};const o=Ta.createGeometry(Ta.fromDimensions({dimensions:new vm(2,2,2),vertexFormat:Cm.POSITION_ONLY})),l=this._attributeLocations=ym.createAttributeLocations(o);s.vertexArray=Pm.fromGeometry({context:n,geometry:o,attributeLocations:l,bufferUsage:wm._DRAW}),s.renderState=Am.fromCache({blending:Sm.ALPHA_BLEND})}if(!Ue(s.shaderProgram)||this._useHdr!==t){const o=new Mm({defines:[t?"HDR":""],sources:[Em]});s.shaderProgram=Tm.fromCache({context:n,vertexShaderSource:Dm,fragmentShaderSource:o,attributeLocations:this._attributeLocations}),this._useHdr=t}if(!!Ue(this._cubeMap))return s}}const We=a.buildModuleUrl,Im=a.defaultValue,Om=a.defined,Rm=a.destroyObject,Bm=a.DeveloperError,ka=a.FeatureDetection,Ia=a.knockout,Lm=a.NavigationHelpButtonViewModel;function lt(i){if(!Om(i))throw new Bm("options.container is required.");const e=document.querySelector(".cesium-viewer-toolbar"),t=new Lm,r=Im(i.instructionsInitiallyVisible,!1);t.showInstructions=r,t._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 n=document.createElement("span");n.className="cesium-navigationHelpButton-wrapper",e.appendChild(n);const s=document.createElement("button");s.type="button",s.className="cesium-button cesium-toolbar-button cesium-navigation-help-button",s.setAttribute("data-bind","attr: { title: tooltip },click: command,cesiumSvgPath: { path: _svgPath, width: 32, height: 32 }"),n.appendChild(s);const o=document.createElement("div");o.className="cesium-navigation-help",o.setAttribute("data-bind",'css: { "cesium-navigation-help-visible" : showInstructions}'),n.appendChild(o);const l=document.createElement("button");l.type="button",l.className="cesium-navigation-button cesium-navigation-button-left",l.setAttribute("data-bind",'click: showClick, css: {"cesium-navigation-button-selected": !_touch, "cesium-navigation-button-unselected": _touch}');const c=document.createElement("img");c.src=We("Widgets/Images/NavigationHelp/Mouse.svg"),c.className="cesium-navigation-button-icon",c.style.width="25px",c.style.height="25px",l.appendChild(c),l.appendChild(document.createTextNode("\u9F20\u6807\u64CD\u4F5C"));const h=document.createElement("button");h.type="button",h.className="cesium-navigation-button cesium-navigation-button-right",h.setAttribute("data-bind",'click: showTouch, css: {"cesium-navigation-button-selected": _touch, "cesium-navigation-button-unselected": !_touch}');const u=document.createElement("img");u.src=We("Widgets/Images/NavigationHelp/Touch.svg"),u.className="cesium-navigation-button-icon",u.style.width="25px",u.style.height="25px",h.appendChild(u),h.appendChild(document.createTextNode("\u89E6\u6478\u624B\u52BF")),o.appendChild(l),o.appendChild(h);const p=document.createElement("div");p.className="cesium-click-navigation-help cesium-navigation-help-instructions",p.setAttribute("data-bind",'css: { "cesium-click-navigation-help-visible" : !_touch}'),p.innerHTML=` <table> <tr> <td><img src="${We("Widgets/Images/NavigationHelp/MouseLeft.svg")}" width="48" height="48" /></td> <td> <div class="cesium-navigation-help-pan">\u5E73\u79FB\u89C6\u56FE</div> <div class="cesium-navigation-help-details">\u9F20\u6807\u5DE6\u952E+\u62D6\u62FD</div> </td> </tr> <tr> <td><img src="${We("Widgets/Images/NavigationHelp/MouseRight.svg")}" width="48" height="48" /></td> <td> <div class="cesium-navigation-help-zoom">\u7F29\u653E\u89C6\u56FE</div> <div class="cesium-navigation-help-details">\u53F3\u952E+\u62D6\u62FD\uFF0C\u6216\u8005</div> <div class="cesium-navigation-help-details">\u4E2D\u952E\u6EDA\u52A8</div> </td> </tr> <tr> <td><img src="${We("Widgets/Images/NavigationHelp/MouseMiddle.svg")}" width="48" height="48" /></td> <td> <div class="cesium-navigation-help-rotate">\u65CB\u8F6C\u89C6\u56FE</div> <div class="cesium-navigation-help-details">\u4E2D\u952E\u6309\u4E0B\u62D6\u62FD\uFF0C\u6216\u8005</div> <div class="cesium-navigation-help-details">\u6309Ctrl\u952E \u540C\u65F6 \u5DE6/\u53F3\u952E\u62D6\u62FD</div> </td> </tr> </table>`,o.appendChild(p);const d=document.createElement("div");d.className="cesium-touch-navigation-help cesium-navigation-help-instructions",d.setAttribute("data-bind",'css: { "cesium-touch-navigation-help-visible" : _touch}'),d.innerHTML=` <table> <tr> <td><img src="${We("Widgets/Images/NavigationHelp/TouchDrag.svg")}" width="70" height="48" /></td> <td> <div class="cesium-navigation-help-pan">\u5E73\u79FB\u89C6\u56FE</div> <div class="cesium-navigation-help-details">\u5355\u6307\u62D6\u52A8</div> </td> </tr> <tr> <td><img src="${We("Widgets/Images/NavigationHelp/TouchZoom.svg")}" width="70" height="48" /></td> <td> <div class="cesium-navigation-help-zoom">\u7F29\u653E\u89C6\u56FE</div> <div class="cesium-navigation-help-details">\u53CC\u6307\u5411\u5185\u6216\u5411\u5916\u6ED1\u52A8</div> </td> </tr> <tr> <td><img src="${We("Widgets/Images/NavigationHelp/TouchTilt.svg")}" width="70" height="48" /></td> <td> <div class="cesium-navigation-help-rotate">\u503E\u659C\u89C6\u56FE</div> <div class="cesium-navigation-help-details">\u53CC\u6307\u6309\u76F8\u540C\u65B9\u5411\u62D6\u52A8</div> </td> </tr> <tr> <td><img src="${We("Widgets/Images/NavigationHelp/TouchRotate.svg")}" width="70" height="48" /></td> <td> <div class="cesium-navigation-help-tilt">\u65CB\u8F6C\u89C6\u56FE</div> <div class="cesium-navigation-help-details">\u53CC\u6307\u6309\u76F8\u53CD\u65B9\u5411\u62D6\u52A8</div> </td> </tr> </table>`,o.appendChild(d),Ia.applyBindings(t,n),this._container=e,this._viewModel=t,this._wrapper=n,this._closeInstructions=function(f){n.contains(f.target)||(t.showInstructions=!1)},ka.supportsPointerEvents()?document.addEventListener("pointerdown",this._closeInstructions,!0):(document.addEventListener("mousedown",this._closeInstructions,!0),document.addEventListener("touchstart",this._closeInstructions,!0))}Object.defineProperties(lt.prototype,{container:{get(){return this._container}},viewModel:{get(){return this._viewModel}}}),lt.prototype.isDestroyed=function(){return!1},lt.prototype.toggle=function(){this._viewModel.command()},lt.prototype.show=function(){this._viewModel.showInstructions=!0},lt.prototype.hide=function(){this._viewModel.showInstructions=!1},lt.prototype.destroy=function(){return ka.supportsPointerEvents()?document.removeEventListener("pointerdown",this._closeInstructions,!0):(document.removeEventListener("mousedown",this._closeInstructions,!0),document.removeEventListener("touchstart",this._closeInstructions,!0)),Ia.cleanNode(this._wrapper),this._container.removeChild(this._wrapper),Rm(this)};class Oa{geocode(e){const t="//restapi.amap.com/v3/place/text";return new a.Resource({url:t,queryParameters:{keywords:e,key:dt.gaode}}).fetchJson().then(n=>n.pois.map(s=>{const o=s.location.split(",");return{displayName:s.name,destination:Ms(a.Cartesian3.fromDegrees(o[0],o[1],0),1e4)}}))}}class Ra{geocode(e){const t="//api.map.baidu.com/place/v2/search";return new a.Resource({url:t,queryParameters:{query:e,ak:dt.badiu,output:"json",region:"\u5168\u7403"}}).fetchJsonp().then(n=>n.results.map(s=>{const o=s.location;return{displayName:s.name,destination:Ms(a.Cartesian3.fromDegrees(o.lng,o.lat,0),1e4)}}))}}var zm=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",GaodeGeocoder:Oa,BaiduGeocoder:Ra});class Gm{constructor(e,{enCollision:t=!1,moveRate:r=200,rotateAxis:n,rotateRate:s=.01,collision:o,afterMove:l=()=>{}}={}){this._map=e,this._viewer=e.viewer,this._enable=!1,this._moveRate=r,this._rotateRate=s,this.enCollision=t,this._rotateAxis=n,this._afterMove=l,this.collision=o||e.collision.bind(e),this._flags={moveForward:!1,moveBackward:!1,moveUp:!1,moveDown:!1,moveLeft:!1,moveRight:!1,turnLeft:!1,turnRight:!1}}set enable(e){this._enable!==e&&this._viewer.scene.mode===a.SceneMode.SCENE3D&&(this._enable=e,this._enable?this._bindEvent():this._unbindEvent())}get enable(){return this._enable}set moveRate(e){this._moveRate=e}get moveRate(){return this._moveRate}set rotateRate(e){this._rotateRate=e}get rotateRate(){return this._rotateRate}_bindEvent(){let e=this._viewer.scene.canvas;e.setAttribute("tabindex","0"),e.addEventListener("click",this._onClick.bind(this),!1),this._viewer.clock.onTick.addEventListener(this._onTick,this),document.addEventListener("keydown",this._onKeydown.bind(this),!1),document.addEventListener("keyup",this._onKeyup.bind(this),!1)}_unbindEvent(){Object.keys(this._flags).forEach(t=>{this._flags[t]=!1});let e=this._viewer.scene.canvas;e.removeAttribute("tabindex"),e.removeEventListener("click",this._onClick,!1),this._viewer.clock.onTick.removeEventListener(this._onTick,this),document.removeEventListener("keydown",this._onKeydown,!1),document.removeEventListener("keyup",this._onKeyup,!1)}_getFlagForKeyCode(e){let t;switch(e.keyCode){case"W".charCodeAt(0):case 38:e.shiftKey?t="moveUp":t="moveForward";break;case"S".charCodeAt(0):case 40:e.shiftKey?t="moveDown":t="moveBackward";break;case"A".charCodeAt(0):case 37:t="moveLeft";break;case"D".charCodeAt(0):case 39:t="moveRight";break;case"Q".charCodeAt(0):t="turnLeft";break;case"E".charCodeAt(0):t="turnRight";break}return t}_onClick(){this._viewer.scene.canvas.focus()}_onKeydown(e){let t=this._getFlagForKeyCode(e);t&&(this._flags[t]=!0)}_onKeyup(e){Object.keys(this._flags).forEach(t=>{this._flags[t]=!1}),this._map.fire("keyboardRoaming")}_onTick(){let e=this._viewer.scene.camera,t;t=this._viewer.scene.globe.ellipsoid.cartesianToCartographic(e.positionWC).height/this._moveRate;let n=this._rotateAxis||a.Cartesian3.clone(e.positionWC,new a.Cartesian3);if(this._flags.moveForward){const s=this._viewer.camera.direction.clone();a.Matrix4.equals(a.Matrix4.IDENTITY,this._viewer.camera._transform)||(s.z=0),this.move(s,t)}if(this._flags.moveBackward){const s=this._viewer.camera.direction.clone();a.Matrix4.equals(a.Matrix4.IDENTITY,this._viewer.camera._transform)||(s.z=0),this.move(s,-t)}this._flags.moveUp&&this.move(this._viewer.camera.up,t),this._flags.moveDown&&this.move(this._viewer.camera.up,-t),this._flags.moveLeft&&this.move(this._viewer.camera.right,-t),this._flags.moveRight&&this.move(this._viewer.camera.right,t),this._flags.turnLeft&&e.rotate(n,-this._rotateRate),this._flags.turnRight&&e.rotate(n,this._rotateRate)}move(e,t){const n=this._map.camera;if(this.enCollision){const s=a.Cartesian3.multiplyByScalar(e,-t,new a.Cartesian3);if(this.collision(n.positionWC,a.Cartesian3.add(n.positionWC.clone(),s,s)))return}this._viewer.camera.move(e,t),this._afterMove()}destroy(){this.enable=!1,this._map=null,this._viewer=null,this.collision=null}}class Zr{constructor(e){b(this,"isRotating",!1);this._map=e,this._viewer=e.viewer,this._options={}}_bindEvent(){}_unbindEvent(){}start(){if(this.isRotating=!0,this._viewer.clock.shouldAnimate=!0,this._unbindEvent(),this._options.duration){let e=setTimeout(()=>{this._unbindEvent(),this._options.callback&&this._options.callback.call(this._options.context||this),clearTimeout(e),e=null},Number(this._options.duration)*1e3)}return this._bindEvent(),this}stop(){if(!!this.isRotating)return this._options.callback&&this._options.callback.call(this._options.context||this),this._unbindEvent(),this.isRotating=!1,this}destroy(){this._map=null,this._viewer=null,this.isRotating&&this.stop(),this.timer&&(clearTimeout(this.timer),this.timer=null)}}class Hm extends Zr{constructor(e,t={}){super(e);const r=e.viewer;this._position=new L(t.position||e.getCenterPoint()),this._options=t,this._heading=r.camera.heading,this._speed=t.speed||.2,this.type="around_point"}set position(e){this._position=new L(e)}set speed(e){this._speed=e}_bindEvent(){this._viewer.clock.onTick.addEventListener(this._onAround,this)}_unbindEvent(){this._viewer.camera.lookAtTransform(a.Matrix4.IDENTITY),this._viewer.clock.onTick.removeEventListener(this._onAround,this)}start(){this._defaultRange=a.Cartesian3.distance(this._viewer.camera.position,this._map.getCenterPoint()),this._defaultPitch=a.Math.toDegrees(this._viewer.camera.pitch),super.start()}_onAround(e,t){this._heading+=a.Math.toRadians(this._speed),(this._heading>=Math.PI*2||this._heading<=-Math.PI*2)&&(this._heading=0),this._viewer.camera.lookAt(this._position,new a.HeadingPitchRange(this._heading,a.Math.toRadians(this._options.pitch||this._defaultPitch||0),this._options.range||this._defaultRange||1e3))}}class Fm extends Zr{constructor(e,t={}){super(e);var n;const r=e.viewer;this._options=t,this._heading=r.camera.heading,this._speed=(n=t.speed)!=null?n:.2,this.type="around_view"}set speed(e){this._speed=e}_bindEvent(){this._viewer.clock.onTick.addEventListener(this._onAround,this)}_unbindEvent(){this._viewer.camera.lookAtTransform(a.Matrix4.IDENTITY),this._viewer.clock.onTick.removeEventListener(this._onAround,this)}_onAround(e,t){this._heading+=a.Math.toRadians(this._speed),(this._heading>=Math.PI*2||this._heading<=-Math.PI*2)&&(this._heading=0),this._viewer.scene.camera.setView({orientation:{heading:this._heading,pitch:this._viewer.camera.pitch,roll:this._viewer.camera.roll}})}}class Nm extends Zr{constructor(e,t={}){super(e);this._options=t,this.type="globe_rotate"}_icrf(e,t){if(e.mode!==a.SceneMode.SCENE3D)return!0;let r=a.Transforms.computeIcrfToFixedMatrix(t);if(r){let n=this._viewer.camera,s=a.Cartesian3.clone(n.position),o=a.Matrix4.fromRotationTranslation(r);n.lookAtTransform(o,s)}}_bindEvent(){this._viewer.clock.multiplier=this._options.speed||12*1e3,this._viewer.camera.lookAtTransform(a.Matrix4.IDENTITY),this._viewer.scene.postUpdate.addEventListener(this._icrf,this)}_unbindEvent(){this._viewer.clock.multiplier=1,this._viewer.camera.lookAtTransform(a.Matrix4.IDENTITY),this._viewer.scene.postUpdate.removeEventListener(this._icrf,this)}}function He(i){if(typeof i!="string")throw new TypeError("Path must be a string. Received "+JSON.stringify(i))}function Ba(i,e){for(var t="",r=0,n=-1,s=0,o,l=0;l<=i.length;++l){if(l<i.length)o=i.charCodeAt(l);else{if(o===47)break;o=47}if(o===47){if(!(n===l-1||s===1))if(n!==l-1&&s===2){if(t.length<2||r!==2||t.charCodeAt(t.length-1)!==46||t.charCodeAt(t.length-2)!==46){if(t.length>2){var c=t.lastIndexOf("/");if(c!==t.length-1){c===-1?(t="",r=0):(t=t.slice(0,c),r=t.length-1-t.lastIndexOf("/")),n=l,s=0;continue}}else if(t.length===2||t.length===1){t="",r=0,n=l,s=0;continue}}e&&(t.length>0?t+="/..":t="..",r=2)}else t.length>0?t+="/"+i.slice(n+1,l):t=i.slice(n+1,l),r=l-n-1;n=l,s=0}else o===46&&s!==-1?++s:s=-1}return t}function Um(i,e){var t=e.dir||e.root,r=e.base||(e.name||"")+(e.ext||"");return t?t===e.root?t+r:t+i+r:r}var Pt={resolve:function(){for(var e="",t=!1,r,n=arguments.length-1;n>=-1&&!t;n--){var s;n>=0?s=arguments[n]:(r===void 0&&(r=process.cwd()),s=r),He(s),s.length!==0&&(e=s+"/"+e,t=s.charCodeAt(0)===47)}return e=Ba(e,!t),t?e.length>0?"/"+e:"/":e.length>0?e:"."},normalize:function(e){if(He(e),e.length===0)return".";var t=e.charCodeAt(0)===47,r=e.charCodeAt(e.length-1)===47;return e=Ba(e,!t),e.length===0&&!t&&(e="."),e.length>0&&r&&(e+="/"),t?"/"+e:e},isAbsolute:function(e){return He(e),e.length>0&&e.charCodeAt(0)===47},join:function(){if(arguments.length===0)return".";for(var e,t=0;t<arguments.length;++t){var r=arguments[t];He(r),r.length>0&&(e===void 0?e=r:e+="/"+r)}return e===void 0?".":Pt.normalize(e)},relative:function(e,t){if(He(e),He(t),e===t||(e=Pt.resolve(e),t=Pt.resolve(t),e===t))return"";for(var r=1;r<e.length&&e.charCodeAt(r)===47;++r);for(var n=e.length,s=n-r,o=1;o<t.length&&t.charCodeAt(o)===47;++o);for(var l=t.length,c=l-o,h=s<c?s:c,u=-1,p=0;p<=h;++p){if(p===h){if(c>h){if(t.charCodeAt(o+p)===47)return t.slice(o+p+1);if(p===0)return t.slice(o+p)}else s>h&&(e.charCodeAt(r+p)===47?u=p:p===0&&(u=0));break}var d=e.charCodeAt(r+p),f=t.charCodeAt(o+p);if(d!==f)break;d===47&&(u=p)}var m="";for(p=r+u+1;p<=n;++p)(p===n||e.charCodeAt(p)===47)&&(m.length===0?m+="..":m+="/..");return m.length>0?m+t.slice(o+u):(o+=u,t.charCodeAt(o)===47&&++o,t.slice(o))},_makeLong:function(e){return e},dirname:function(e){if(He(e),e.length===0)return".";for(var t=e.charCodeAt(0),r=t===47,n=-1,s=!0,o=e.length-1;o>=1;--o)if(t=e.charCodeAt(o),t===47){if(!s){n=o;break}}else s=!1;return n===-1?r?"/":".":r&&n===1?"//":e.slice(0,n)},basename:function(e,t){if(t!==void 0&&typeof t!="string")throw new TypeError('"ext" argument must be a string');He(e);var r=0,n=-1,s=!0,o;if(t!==void 0&&t.length>0&&t.length<=e.length){if(t.length===e.length&&t===e)return"";var l=t.length-1,c=-1;for(o=e.length-1;o>=0;--o){var h=e.charCodeAt(o);if(h===47){if(!s){r=o+1;break}}else c===-1&&(s=!1,c=o+1),l>=0&&(h===t.charCodeAt(l)?--l==-1&&(n=o):(l=-1,n=c))}return r===n?n=c:n===-1&&(n=e.length),e.slice(r,n)}else{for(o=e.length-1;o>=0;--o)if(e.charCodeAt(o)===47){if(!s){r=o+1;break}}else n===-1&&(s=!1,n=o+1);return n===-1?"":e.slice(r,n)}},extname:function(e){He(e);for(var t=-1,r=0,n=-1,s=!0,o=0,l=e.length-1;l>=0;--l){var c=e.charCodeAt(l);if(c===47){if(!s){r=l+1;break}continue}n===-1&&(s=!1,n=l+1),c===46?t===-1?t=l:o!==1&&(o=1):t!==-1&&(o=-1)}return t===-1||n===-1||o===0||o===1&&t===n-1&&t===r+1?"":e.slice(t,n)},format:function(e){if(e===null||typeof e!="object")throw new TypeError('The "pathObject" argument must be of type Object. Received type '+typeof e);return Um("/",e)},parse:function(e){He(e);var t={root:"",dir:"",base:"",ext:"",name:""};if(e.length===0)return t;var r=e.charCodeAt(0),n=r===47,s;n?(t.root="/",s=1):s=0;for(var o=-1,l=0,c=-1,h=!0,u=e.length-1,p=0;u>=s;--u){if(r=e.charCodeAt(u),r===47){if(!h){l=u+1;break}continue}c===-1&&(h=!1,c=u+1),r===46?o===-1?o=u:p!==1&&(p=1):o!==-1&&(p=-1)}return o===-1||c===-1||p===0||p===1&&o===c-1&&o===l+1?c!==-1&&(l===0&&n?t.base=t.name=e.slice(1,c):t.base=t.name=e.slice(l,c)):(l===0&&n?(t.name=e.slice(1,o),t.base=e.slice(1,c)):(t.name=e.slice(l,o),t.base=e.slice(l,c)),t.ext=e.slice(o,c)),l>0?t.dir=e.slice(0,l-1):n&&(t.dir="/"),t},sep:"/",delimiter:":",win32:null,posix:null};Pt.posix=Pt;var Wm=Pt;const $r="wutu://";class Vm{constructor(e={}){this.resource=e}addResource(e){if(!e)return;if(e instanceof HTMLCanvasElement){const r=`${$r}${et()}`;return this.resource[r]=e.toDataURL(),this.resource[r]}if(!xe(e))return;if(e.startsWith($r)||e.startsWith("http"))return e;let t=this.findResourceKey(e);return t||(t=`${$r}${et()}`,e.startsWith("data")||e.startsWith("blob")?this.resource[t]=e:this.resource[t]=location.origin+Wm.resolve(location.pathname,"../",e)),t}getResource(e){return this.resource[e]||e}findResourceKey(e){for(const t in e)if(e[t]===e)return t}async getData(){const e={};for(const t in this.resource)e[t]=await this.formatUrl(this.resource[t]);return e}formatUrl(e){return e.startsWith("blob")?Ld(e):e}}class jm extends a.Viewer{constructor(e,t){var n;const r=t.scene.terrainProvider;t.scene.terrainProvider=null;super(e,ue(N({},t),{imageryProvider:t.imageryProvider instanceof Object?t.imageryProvider:!1,navigationHelpButton:!1,geocoder:pe(t.geocoder)?t.geocoder:[]}));t.scene.terrainProvider=r,(n=document.querySelector(".cesium-geocoder-input"))==null||n.setAttribute("placeholder","\u8BF7\u8F93\u5165\u5173\u952E\u8BCD"),this.cesiumWidget.screenSpaceEventHandler.removeInputAction(a.ScreenSpaceEventType.LEFT_DOUBLE_CLICK)}}class qm{constructor({map:e,enCollision:t=!1,moveType:r=a.CameraEventType.LEFT_DRAG,rotateType:n=a.CameraEventType.MIDDLE_DRAG}){this._map=e,this._enableInputs=e.viewer.scene.screenSpaceCameraController.enableInputs,e.viewer.scene.screenSpaceCameraController.enableInputs=!1,this._aggregator=new a.CameraEventAggregator(e.viewer.scene.canvas),this._effects=[this._bindMove(),this._bindZoom(),this._bindRotate()],this.enCollision=t,this.moveType=r,this.rotateType=n}_bindMove(){const e=this._map,t=this._aggregator,r=e.viewer.camera;return e.on("mousedown",()=>{const n=e.on("postRender",()=>{const s=this.moveType,o=t.isMoving(s)&&t.getMovement(s),l=t.getStartMousePosition(s);if(!o){t.reset();return}const c=o.endPosition.x-o.startPosition.x,h=o.endPosition.y-o.startPosition.y,u=e.getPointFromScreenPX(l);let p=e.getPxMeter(u);if(p=p>.05?.05:p,c){const d=a.Cartesian3.multiplyByScalar(r.right,-p*c,new a.Cartesian3);(!this.enCollision||!e.collision(r.positionWC,a.Cartesian3.add(r.positionWC.clone(),d,d)))&&r.moveLeft(p*c)}if(h){const d=a.Cartesian3.multiplyByScalar(r.up,p*h,new a.Cartesian3);(!this.enCollision||!e.collision(r.positionWC,a.Cartesian3.add(r.positionWC.clone(),d,d)))&&r.moveUp(p*h)}t.reset()});e.once("mouseup",()=>{t.reset(),n()})})}_bindZoom(){const e=this._map,t=e.viewer.camera;return e.on("wheel",r=>{if(!r)return;const n=r>0?1:-1,s=a.Cartesian3.multiplyByScalar(t.direction,n,new a.Cartesian3);(!this.enCollision||!e.collision(t.positionWC,a.Cartesian3.add(t.positionWC.clone(),s,s)))&&t.zoomIn(n)})}_bindRotate(){const e=this._map,t=e.viewer,r=this._aggregator,n=e.viewer.camera;return e.on("middledown",()=>{const s=a.Transforms.eastNorthUpToFixedFrame(t.camera.positionWC);t.camera.lookAtTransform(s);const o=e.on("postRender",()=>{const l=this.rotateType,c=r.isMoving(l)&&r.getMovement(l),h=r.getStartMousePosition(l);if(!c){r.reset();return}const u=c.endPosition.x-c.startPosition.x,p=c.endPosition.y-c.startPosition.y,d=e.getPointFromScreenPX(h);if(!d)return;let f=e.getPxMeter(d);f=f>.15?.15:f,n.rotateLeft(Math.PI/60*f*u),n.rotateDown(Math.PI/60*f*p),r.reset()});e.once("middleup",()=>{r.reset(),t.camera.lookAtTransform(a.Matrix4.IDENTITY),o()})})}destroy(){this._map&&(this._map.viewer.scene.screenSpaceCameraController.enableInputs=this._enableInputs,this._map=null),this._effects&&(this._effects.forEach(e=>e()),this._effects=null),this._aggregator&&(this._aggregator.destroy(),this._aggregator=null)}}class Qm{constructor(n){var s=n,{map:e,target:t}=s,r=te(s,["map","target"]);t&&t.isGraphic&&(t=t.center),t||(t=e.getCenterPoint()),this._map=e,this.target=t,this._inverseTransform=e.camera.inverseTransform.clone(),this.update(r),this._aggregator=new a.CameraEventAggregator(e.viewer.scene.canvas),this._bindEvent()}_bindEvent(){const e=this._map,t=this._aggregator;e.on("middledown",()=>{const r=a.CameraEventType.MIDDLE_DRAG,n=e.getCenterPoint();if(!n)return;this.target=n;const s=e.on("postRender",()=>{const o=t.isMoving(r)&&t.getMovement(r);if(!o){t.reset();return}if(!e.getPxMeter(this.target)){t.reset();return}const c=e.getPointFromScreenPX(o.startPosition).toMercator(),h=e.getPointFromScreenPX(o.endPosition).toMercator(),u=h.x-c.x,p=h.y-c.y,d=this.target.toMercator();d.x-=u,d.y-=p,this.target=L.fromMercator(d),this.update(),t.reset()});e.once("middleup",()=>{t.reset(),s()})})}update({heading:e=this._map.camera.heading,pitch:t=this._map.camera.pitch,range:r}={}){const n=this._map,s=this._map.viewer,o=this.target;ne(r)&&(r=n.intersection(n.getScreenCenterPX(),o).distance(n.viewer.camera.positionWC)),s.camera.lookAt(o,new a.HeadingPitchRange(e,t,r))}destroy(){this._aggregator&&(this._aggregator.destroy(),this._aggregator=null),this._map&&(this._inverseTransform&&(this._map.viewer.camera.lookAtTransform(this._inverseTransform),this._inverseTransform=null),this._map=null)}}class Ym{constructor({map:e}){this._map=e,this.setEventType("three")}setEventType(e){const t=this._map.viewer,r=a.CameraEventType,n=a.KeyboardEventModifier,o={default:{rotateEventTypes:r.LEFT_DRAG,tiltEventTypes:[r.MIDDLE_DRAG,r.PINCH,{eventType:r.LEFT_DRAG,modifier:n.CTRL},{eventType:r.RIGHT_DRAG,modifier:n.CTRL}],translateEventTypes:r.LEFT_DRAG,zoomEventTypes:[r.RIGHT_DRAG,r.WHEEL,r.PINCH]},three:{rotateEventTypes:[r.RIGHT_DRAG,r.PINCH],tiltEventTypes:r.LEFT_DRAG,translateEventTypes:[r.RIGHT_DRAG,r.PINCH],zoomEventTypes:[r.MIDDLE_DRAG,r.WHEEL,r.PINCH]}}[e];Object.entries(o).forEach(([l,c])=>{t.scene.screenSpaceCameraController[l]=c})}destroy(){this._map&&(this.setEventType("default"),this._map=null)}}class Km{constructor(){this._cache={}}loadImage(e){return a.Resource.createIfNeeded(e).fetchImage()}async fromText(e,t,r){if(e instanceof HTMLImageElement)return this.fromTextSync(e,t,r);const n=JSON.stringify({url:e,textStyle:t,imageStyle:{width:r.width,height:r.height}});if(this._cache[n])return this._cache[n];const s=await this.loadImage(e);return this._cache[n]=La(s,t,r)}fromTextSync(e,t,r){const n=JSON.stringify({url:e.src,textStyle:t,imageStyle:{width:r.width,height:r.height}});return this._cache[n]?this._cache[n]:this._cache[n]=La(e,t,r)}destroy(){this._cache=null}}function La(i,e,t){var s,o;let r=document.createElement("canvas");if(r.width=(s=t.width)!=null?s:i.width,r.height=(o=t.height)!=null?o:i.height,r.getContext("2d").drawImage(i,0,0,r.width,r.height),e){const l=a.writeTextToCanvas(e.text,N({padding:2},e));Jm(r,l,e)}return r.toDataURL()}function Jm(i,e,t={}){const{pixelOffset:{x:r=0,y:n=0}={}}=t;i.getContext("2d").drawImage(e,i.width/2-e.width/2+r,i.height/2-e.height/2+n,e.width,e.height)}class Xm{constructor({map:e,style:t}){b(this,"style",{});this._map=e,this._init(),t&&this.setStyle(t)}set text(e){e?this.show():this.hide(),this.setStyle({html:`<div style="background: rgba(0,0,0,.8);border-radius: 3px;padding:2px 6px;font-size:10px;color: #fff;">${e}</div>`})}setStyle(e){this.style=ie(this.style,e);const{html:t,zIndex:r}=this.style,n=this._dom;zs(t)?(n.innerHTML="",n.appendChild(t)):n.innerHTML=t,ce(n,{position:"absolute",left:0,top:0,zIndex:r,"pointer-events":"none"})}show(){if(!this.visible&&this._dom){this.visible=!0,ce(this._dom,{display:"block",visibility:"hidden"});const e=this._map.viewer.scene.canvas;this._mouseMoveCancels||(this._mouseMoveCancels=[zt(e,"pointermove",({offsetX:t,offsetY:r})=>{const n=`translate(15px,-50%) translate(${t}px,${r}px)`;ce(this._dom,{transform:n,visibility:"visible"})}),zt(e,"mouseleave",()=>{this.visible&&ce(this._dom,{visibility:"hidden"})}),zt(e,"mouseenter",()=>{this.visible&&ce(this._dom,{visibility:"visible"})})])}}hide(){!this.visible||this._dom&&(this.visible=!1,ce(this._dom,{display:"none"}),this._mouseMoveCancels&&(this._mouseMoveCancels.forEach(e=>e()),this._mouseMoveCancels=null))}_init(){this._dom=Gs("div"),this._map.viewer.container.appendChild(this._dom)}destroy(){this._dom&&(this._map.viewer.container.removeChild(this._dom),this._dom=null),this._mouseMoveCancels&&(this._mouseMoveCancels.forEach(e=>e()),this._mouseMoveCancels=null)}}class Zm extends Zi{_initEvent({optimizeEvents:e=!1}){this._handler=new a.ScreenSpaceEventHandler(this.viewer.scene.canvas),Object.keys(Ot).forEach(t=>{e&&t===Y.Mousemove||(this.events[t]=this._createObserver(t))}),e&&(this.events[Y.Mousemove]=this._createMouseMoveObserver(Y.Mousemove))}_createMouseMoveObserver(e){return hu({map:this,handler:this._handler,eventName:e})}_createObserver(e){return cu({map:this,handler:this._handler,eventName:e})}}const $m=new a.Cartesian4(1,1/255,1/65025,1/16581375);class eg{constructor(e){this._viewer=e}destroy(){this._viewer=null}_startFrame(e,t){const r=e.map(x=>new L(x)),n=L.fromPositions(r),s=new a.Picking(this._viewer.scene),o=s._pickOffscreenView,l=a.BoundingRectangle.fromRectangle(a.Rectangle.fromCartesianArray(r));l.x=0,l.y=0,l.width=Math.floor(l.width),l.height=Math.floor(l.height);const c=new a.BoundingRectangle(0,0,Math.max(Math.floor(l.width/t),1),Math.max(Math.floor(l.height/t),1)),h=new L(n,{addHeight:9e3}),u=a.Cartesian3.normalize(a.Cartesian3.subtract(n,h,new a.Cartesian3),new a.Cartesian3),p=new a.Ray(h,u),d=a.Cartesian3.normalize(a.Matrix4.multiplyByPoint(a.Transforms.northEastDownToFixedFrame(n),a.Cartesian3.UNIT_Y,new a.Cartesian3),new a.Cartesian3);this._updateOffscreenCamera(p,d,o.camera,l.width,l.height),o.viewport=c,o.passState.viewport=c;const f=this._viewer.scene.context,m=this._viewer.scene.frameState;this._viewer.scene.view=o;const g=o.pickFramebuffer.begin(c,o.viewport);this._viewer.scene.jobScheduler.disableThisFrame(),this._viewer.scene.updateFrameState(),m.invertClassification=!1,m.passes.pick=!0,m.passes.offscreen=!0,m.tilesetPassState=new a.Cesium3DTilePassState({pass:a.Cesium3DTilePass.PICK}),f.uniformState.update(m);const w=this._viewer.scene;return this._viewer.scene.updateEnvironment(),w.environmentState.clearGlobeDepth=!1,this._viewer.scene.updateAndExecuteCommands(g,new a.Color(0,0,0,0)),this._viewer.scene.resolveFramebuffers(g),{context:f,_pickOffscreenView:o,picking:s,ray:p,cameraUp:d,boundingRectangle:l,pickBoundingRectangle:c}}_endFrame({context:e}){this._viewer.scene.view=this._viewer.scene.defaultView,e.endFrame()}_pickColorsInPolygon(e,t){const{context:r,_pickOffscreenView:n,pickBoundingRectangle:{width:s,height:o}}=this._startFrame(e,t),l=r.readPixels({x:0,y:0,width:s,height:o,framebuffer:n.pickFramebuffer._fb._framebuffer._framebuffer?n.pickFramebuffer._fb._framebuffer:n.pickFramebuffer._fb}),c=tg(l);return this._endFrame({context:r}),{colors:c,context:r}}pickPointsInPolygon(e,t=.1){const{context:r,_pickOffscreenView:n,picking:s,ray:o,boundingRectangle:{width:l,height:c},pickBoundingRectangle:{width:h,height:u}}=this._startFrame(e,t),p=[];if(r.depthTexture){const d=n.frustumCommandsList.length,f=new a.Cartesian3;for(let m=0;m<d;++m){const g=s.getPickDepth(this._viewer.scene,m),w=ig(r,0,0,h,u,g);for(let x=0;x<w.length;x++){const y=w[x];if(y>0&&y<1){const v=n.frustumCommandsList[m],_=v.near*(x!==0?this._viewer.scene.opaqueFrustumNearOffset:1),{far:P}=v,O=_+y*(P-_),k=Math.floor(x/h),W=x%h,U=(k-u/2)*c/u,C=(W-h/2)*l/h,S=new a.Cartesian3;a.Cartesian3.multiplyByScalar(n.camera.up,U,f),a.Cartesian3.add(f,n.camera.position,S),a.Cartesian3.multiplyByScalar(n.camera.right,C,f),a.Cartesian3.add(f,S,S);const z=a.Ray.clone(o);z.origin=S;const A=a.Ray.getPoint(z,O);!p[x]&&(p[x]=A)}}}}return this._endFrame({context:r}),p.map(d=>{if(!d)return;const f=new L(d);if(f.isInPolygon(e))return f}).filter(Boolean)}pickHighestPointInPolygon(...e){return this.pickPointsInPolygon(...e).sort((n,s)=>s.height-n.height)[0]}pickFeaturesInPolygon(e,t){const{colors:r,context:n}=this._pickColorsInPolygon(e,t);return r.map(s=>n.getObjectByPickColor(s)).filter(Boolean)}_updateOffscreenCamera(e,t,r,n,s){const o=a.Cartesian3.cross(e.direction,t,new a.Cartesian3);r.position=e.origin,r.direction=e.direction,r.up=t,r.right=o,r.frustum.width=n,r.frustum.aspectRatio=n/s,r.frustum.computeCullingVolume(r.positionWC,r.directionWC,r.upWC)}}function tg(i){const e=i.length/4,t=[];for(let r=0;r<e;r++){const n=r*4,s=i[n]/255,o=i[n+1]/255,l=i[n+2]/255,c=i[n+3]/255,h=new a.Color(s,o,l,c);!t.find(p=>a.Color.equals(p,h))&&t.push(h)}return t}function ig(i,e,t,r,n,s){const o=i.readPixels({x:e,y:t,width:r,height:n,framebuffer:s._framebuffer._framebuffer._bind?s._framebuffer._framebuffer:s._framebuffer}),l=a.Cartesian4.unpackArray(o),c=[];for(let h=0;h<l.length;++h){const u=l[h];a.Cartesian4.divideByScalar(u,255,u),c.push(a.Cartesian4.dot(u,$m))}return c}class za extends Zm{constructor(e,s={}){var o=s,{scenes:t=[],resource:r={}}=o,n=te(o,["scenes","resource"]);super();b(this,"graphics",[]);b(this,"styleConver",Ce);b(this,"_cancelFpCb",()=>{});b(this,"_drawTool",null);b(this,"_measureTool",null);b(this,"_pickTool",null);b(this,"_tooltip",null);b(this,"_picking");if(!e){console.error("dom\u4E0D\u80FD\u4E3A\u7A7A");return}this.imageBuilder=new Km,this.options=ie(np,n),xr(this,op),xr(this,gm),xr(this,Hf),this.resource=new Vm(r),this.options.baseMaps&&this.initBaseMaps(this.options),this.init(e,this.options)}get frameNumber(){try{return this.viewer.scene.context._us.frameState.frameNumber}catch{return 0}}get level(){return this.getLevelByHeight(new L(this.viewer.camera.positionWC).height)}getLevelByHeight(e){const t=40487.57,r=7096758e-11,n=91610.74,s=-40467.74;return Math.max(0,Math.min(+(s+(t-s)/(1+Math.pow(e/n,r))).toFixed(0),24))}get rectangle(){return this.viewer.camera.computeViewRectangle()}get bbox(){const e=this.rectangle,[t,r]=new L(a.Rectangle.northeast(e)).toLatLngArray(),[n,s]=new L(a.Rectangle.southwest(e)).toLatLngArray();return[n,s,t,r]}get rectangles(){const{west:e,south:t,east:r,north:n}=this.rectangle;return[new a.Rectangle(e,t,r,t+(n-t)/3),new a.Rectangle(e,t+(n-t)/3,r,t+(n-t)/3*2),new a.Rectangle(e,t+(n-t)/3*2,r,n)]}async getResource(){return await this.resource.getData()}get globe(){return this.viewer.scene.globe}get camera(){return this.viewer.camera}get scene(){return this.viewer.scene}setOptions({scene:e,cameraControllerType:t,center:r,clock:n,navigationHelpButton:s,navigationInstructionsInitiallyVisible:o,keyboardRoaming:l,tokenConfig:c,effect:h,control:u,geocoder:p,imagerLayers:d,defaultTemplateValues:f={},resolutionScale:m}={}){var w;H(l)&&this.setKeyboardRoaming(l),H(t)&&this.setCameraController(t);let g;e&&(g=e.terrainProvider,delete e.terrainProvider,this._recursionSet({scene:e},this.viewer)),n&&this._recursionSet({clock:n},this.viewer),r&&this.flyToViewPoint(r),H(s)&&(s?this.navigationHelpButton||(this.navigationHelpButton=new lt({instructionsInitiallyVisible:o})):((w=this.navigationHelpButton)==null||w.destroy(),this.navigationHelpButton=null)),pe(c)&&Ts(dt,c),pe(h)&&this.setEffectOptions(h),pe(u)&&this.setControlOptions(u),H(p)&&this.setGeocoder(p),H(g)&&this.setTerrainProvider(g),Ee(d)&&this.setImagerLayers(d),f&&(a.Resource.defaultTemplateValues=f),H(m)&&(this.viewer.resolutionScale=m)}setKeyboardRoaming(e,t){this._keyboardRoaming&&(this._keyboardRoaming.destroy(),this._keyboardRoaming=null),e&&(this._keyboardRoaming=new Gm(this,t)),this._keyboardRoaming&&(this._keyboardRoaming.enable=e)}setFirstPerson(e,{height:t=1.8,tiles:r=[],objectsToExclude:n=[]}={}){const s=(o,l)=>{const c=new a.Ray(l,a.Cartesian3.subtract(new L(l,{setHeight:-100}),l,new a.Cartesian3)),h=this.viewer.scene.pickFromRay(c,n.map(p=>p.entity||p.primitive||p));if(!h)return!0;const u=a.Cartesian3.distance(l,h.position);if(h&&h.object&&h.object instanceof a.Cesium3DTileFeature&&r.includes(h.object.getProperty("id"))){let p;if(Math.abs(u-t)>.01){this.viewer.camera.move(a.Cartesian3.UNIT_Z,t-u);const d=a.Cartesian3.subtract(o,l,new a.Cartesian3);p=a.Transforms.eastNorthUpToFixedFrame(a.Cartesian3.add(this.viewer.camera.positionWC,d,new a.Cartesian3))}else p=a.Transforms.eastNorthUpToFixedFrame(l);return this.viewer.camera.lookAtTransform(p),!1}return!0};if(this.setKeyboardRoaming(e,{moveRate:150,rotateAxis:a.Cartesian3.UNIT_Z,enCollision:!0,collision:s,afterMove:()=>{const o=a.Transforms.eastNorthUpToFixedFrame(this.viewer.camera.positionWC);this.viewer.camera.lookAtTransform(o)}}),e){const o=this.viewer.scene.screenSpaceCameraController._minimumRotateRate,l=this.viewer.scene.screenSpaceCameraController.enableZoom,c=this.viewer.camera.frustum.fov;this.viewer.scene.screenSpaceCameraController._minimumRotateRate=1.77,this.viewer.scene.screenSpaceCameraController.enableZoom=!1,s(this.camera.positionWC,this.camera.positionWC);let h=this.on("wheel",u=>{if(u>0){const p=this.viewer.camera.frustum.fov-.1;this.viewer.camera.frustum.fov=p<0?p+.1:p}else this.viewer.camera.frustum.fov+.1>c?this.viewer.camera.frustum.fov=c:this.viewer.camera.frustum.fov+=.1});this._cancelFpCb=()=>{h&&(h(),h=null),this.viewer.camera.frustum.fov=c,this.viewer.scene.screenSpaceCameraController._minimumRotateRate=o,this.viewer.scene.screenSpaceCameraController.enableZoom=l,this.viewer.camera.lookAtTransform(a.Matrix4.IDENTITY)}}else this._cancelFpCb(),this._cancelFpCb=()=>{}}get drawTool(){return(!this._drawTool||this._drawTool.isDestroyed)&&(this._drawTool=new xo({map:this})),this._drawTool}get measureTool(){return(!this._measureTool||this._measureTool.isDestroyed)&&(this._measureTool=new Po({map:this})),this._measureTool}get pickTool(){return(!this._pickTool||this._pickTool.isDestroyed)&&(this._pickTool=new So({map:this})),this._pickTool}get tooltip(){return this._tooltip?this._tooltip:(this._tooltip=new Xm({style:{html:""},map:this}),this._tooltip)}destroy(){this.imageBuilder&&this.imageBuilder.destroy(),[...this.graphics].forEach(e=>{e==null||e.destroy()}),this.viewer.destroy(),super.destroy(),this.viewer=null}setGeocoder(e){if(pe(e))return;e===!1?this.container.querySelector(".cesium-viewer-geocoderContainer").setAttribute("style","display:none"):this.container.querySelector(".cesium-viewer-geocoderContainer").setAttribute("style","display:inline-bloack");const r={gaode:Oa,baidu:Ra}[e];r&&(this.viewer.geocoder.viewModel._geocoderServices=[new r])}init(e,n){var s=n,{graphics:t}=s,r=te(s,["graphics"]);pe(r.tokenConfig)&&Ts(dt,r.tokenConfig),this.viewer=new jm(e,r),this._initEvent({viewer:this.viewer,optimizeEvents:r.optimizeEvents}),this.setOptions(N({},r)),t&&this.addGraphic(t),this.viewer.camera._flyHomeBack=this.viewer.camera.flyHome,this.viewer.camera.flyHome=this.flyHome.bind(this)}_recursionSet(e,t){for(const r in e)pe(e[r])&&e[r].constructor===Object?t&&this._recursionSet(e[r],t[r]):xe(r)&&r.toLowerCase().endsWith("color")?t[r]=e[r]instanceof a.Color?e[r]:a.Color.fromCssColorString(e[r]):t[r]=e[r]}flyToViewPoint(e,t={}){var u,p;if(xe(e)&&(e=(p=(u=this.options.viewPoints)==null?void 0:u.find(f=>f.label===e))==null?void 0:p.value,!e))return;const d=e,{x:r,y:n,z:s,heading:o,roll:l,pitch:c}=d,h=te(d,["x","y","z","heading","roll","pitch"]);return new Promise(f=>{this.viewer.camera.flyTo(ue(N(N({destination:a.Cartesian3.fromDegrees(r,n,s),orientation:{heading:a.Math.toRadians(a.defaultValue(o,0)),pitch:a.Math.toRadians(a.defaultValue(c,0)),roll:a.Math.toRadians(a.defaultValue(l,0))}},h),t),{complete(){requestAnimationFrame(f)}}))})}getViewPoint(){const e=this.viewer,t=Gc(e.camera.position),{heading:r,roll:n,pitch:s}=e.camera;return{heading:a.Math.toDegrees(r),roll:a.Math.toDegrees(n),pitch:a.Math.toDegrees(s),x:t.x,y:t.y,z:t.z}}getCurrentView(){const e=this.getCenterPoint();if(!e)return;const t=this.viewer.camera;return{center:e,distance:a.Cartesian3.distance(e,t.position),rotate:360-a.Math.toDegrees(t.heading),tilt:a.Math.toDegrees(-t.pitch)}}getGraphic(e){return Ar("graphics",this,t=>t.id===e)}getAllGraphics(){return br("graphics",this)}addGraphics(e){return e.map(t=>this.addGraphic(t))}addGraphic(e){if(e instanceof Array)return e.map(r=>this.addGraphic(r));if(!(e instanceof Qe)){const t=e,{type:r,on:n}=t,s=te(t,["type","on"]),o=wi[r];if(!o){console.warn(`\u4E0D\u5B58\u5728type\u4E3A${r}\u7684graphic`);return}e=new o(s),n&&Object.entries(n).forEach(([l,c])=>{e.on(l,c)})}return e.entity&&this.viewer.entities.add(e.entity),e.primitive&&this.viewer.scene.primitives.add(e.primitive),e.dataSource&&this.viewer.dataSources.add(e.dataSource),this.graphics.push(e),e._parent=this,e._onAddToMap(this),e}removeGraphic(e){if(e instanceof Array){e.forEach(r=>{this.removeGraphic(r)});return}e instanceof Qe||(e=this.getGraphic(e));const t=this.graphics.findIndex(r=>r===e);t!==-1&&(e.entity&&this.viewer.entities.remove(e.entity),e.primitive&&this.viewer.scene.primitives.remove(e.primitive),e.dataSource&&this.viewer.dataSources.remove(e.dataSource),e.primitiveCollection&&this.viewer.scene.primitives.remove(e.primitiveCollection),this.graphics.splice(t,1),de.DESTROYED!==e.state&&e.destroy())}flyHome(){this.options.center?this.flyToViewPoint(this.options.center):this.viewer.camera._flyHomeBack()}flyToPoint(e,t={}){this.viewer.camera.flyTo({destination:e,orientation:t})}flyToGraphic(e,t={}){e instanceof Qe||(e=this.getGraphic(e));let r;e.boundingSphere&&(r=e.boundingSphere),!r&&e.center&&(r=new a.BoundingSphere(e.center,0)),!!r&&this.flyToBoundingSphere(r,t)}flyToPoints(e,t){this.flyToBoundingSphere(a.BoundingSphere.fromPoints(e.map(r=>new L(r))),t)}flyToBoundingSphere(e,t={}){if(Ee(e)){const r=e.length;e=a.BoundingSphere.fromPoints([new L(e.slice(0,r/2)),new L(e.slice(r/2,r))])}this.viewer.camera.flyToBoundingSphere(e,N({offset:{heading:a.Math.toRadians(a.defaultValue(t.heading,0)),pitch:a.Math.toRadians(a.defaultValue(t.pitch,-90)),range:t.radius||0}},t))}setCameraType({type:e="gs",transformX:t=10,transformZ:r=0,keepHeadUp:n=!1,graphic:s}={}){const o=s.entity||s;switch(this._setCameraType_desFunc&&(this._setCameraType_desFunc(),this._setCameraType_desFunc=null),e){default:console.error("type \u53EA\u80FD\u4E3A gs dy sd none reset");break;case"none":case"reset":this.viewer.trackedEntity=null;break;case"gs":this.viewer.trackedEntity!==o&&(this.viewer.trackedEntity=o);break;case"dy":this.viewer.trackedEntity!==o&&(this.viewer.trackedEntity=o),this._setCameraType_desFunc=this.on("preRender",()=>{this.viewer.scene.camera.lookAtTransform(this._getEntityMatrix(o,n),new a.Cartesian3(-t,0,r))});break;case"sd":this.viewer.trackedEntity!=o&&(this.viewer.trackedEntity=o),this._setCameraType_desFunc=this.on("preRender",()=>{this.viewer.scene.camera.lookAtTransform(this._getEntityMatrix(o),new a.Cartesian3(-1,0,r))});break}}_getEntityMatrix(e,t){const r=this.viewer.clock.currentTime,n=a.Property.getValueOrUndefined(e.position,r,new a.Cartesian3);if(!a.defined(n))return;let s;const o=a.Property.getValueOrUndefined(e.orientation,r,new a.Quaternion);if(!a.defined(o))s=this._fixedFrameTransform(n,void 0,new a.Matrix4);else if(s=a.Matrix4.fromRotationTranslation(a.Matrix3.fromQuaternion(o,new a.Matrix3),n,new a.Matrix4),t){const l=a.Transforms.fixedFrameToHeadingPitchRoll(s);return l.pitch=0,a.Transforms.headingPitchRollToFixedFrame(n,l)}return s}_fixedFrameTransform(...e){return a.Transforms.eastNorthUpToFixedFrame(...e)}getScreenCenterPX(){const t=this.viewer.scene.canvas;return new a.Cartesian2(t.clientWidth/2,t.clientHeight/2)}getCenterPoint(){return this.getPointFromScreenPX(this.getScreenCenterPX())}getPointFromScreenPX(e){const t=this.viewer.scene,r=t.camera.getPickRay(e);let n=t.globe.pick(r,t);return n||(n=this.viewer.camera.pickEllipsoid(e)),n&&new L(n)}setCursor(e){this.container.style.cursor=e}get container(){return this.viewer._container.querySelector(".cesium-viewer")}zoomIn(){return this.zoom(.5)}zoom(e){const t=this.viewer.camera,r=this.getCenterPoint(),n=a.Cartesian3.subtract(t.position,r,new a.Cartesian3),s=a.Cartesian3.multiplyByScalar(n,e,n),o=a.Cartesian3.add(r,s,r);return new Promise(l=>{t.flyTo({destination:o,duration:1,orientation:{heading:t.heading,pitch:t.pitch,roll:t.roll},complete(){requestAnimationFrame(l)}})})}zoomOut(){return this.zoom(2)}rotateStart(r={}){var n=r,{type:e="point"}=n,t=te(n,["type"]);this._rotateInstance&&(this._rotateInstance.stop(),this._rotateInstance.destroy(),this._rotateInstance=null);const s={point:Hm,around:Fm,globe:Nm};s[e]&&(this._rotateInstance=new s[e](this,t),this._rotateInstance.start())}get isRotating(){return!!this._rotateInstance}rotateStop(){this._rotateInstance&&(this._rotateInstance.stop(),this._rotateInstance.destroy(),this._rotateInstance=null)}setSkyBox(e,{ground:t=!1,suffix:r}={}){var n;if(H(e)&&!(e instanceof a.SkyBox)){const s=t?"sky-box-ground":"sky-box",o=a.buildModuleUrl(`../img/${s}`),l=t?km:a.SkyBox,c={"sky-box-ground":{lantian:"jpg"},"sky-box":{5:"jpg"}};r=(n=r!=null?r:c[s][e])!=null?n:"png",e=new l({sources:{positiveX:`${o}/${e}/px.${r}`,negativeX:`${o}/${e}/nx.${r}`,positiveY:`${o}/${e}/py.${r}`,negativeY:`${o}/${e}/ny.${r}`,positiveZ:`${o}/${e}/pz.${r}`,negativeZ:`${o}/${e}/nz.${r}`}})}this.viewer.scene.skyBox=e}get isFullscreen(){return a.Fullscreen.fullscreen}fullScreen(){a.Fullscreen.requestFullscreen(document.body)}fullScreenEarth(){a.Fullscreen.requestFullscreen(this.viewer.scene.canvas)}exitFullscreen(){a.Fullscreen.exitFullscreen()}forbidGAllGraphicEvent(e=[]){this.getAllGraphics().filter(r=>!e.includes(r)).forEach(r=>{r.forbidEvent=!0})}unForbidGAllGraphicEvent(e=[]){this.getAllGraphics().filter(r=>!e.includes(r)).forEach(r=>{r.forbidEvent=!1})}changeMode(e){const r={"2d":a.SceneMode.SCENE2D,"3d":a.SceneMode.SCENE3D}[e];ne(r)||(this.viewer.scene.mode=r)}enableCameraControl(){this.viewer.scene.screenSpaceCameraController.enableInputs=!0}disableCameraControl(){this.viewer.scene.screenSpaceCameraController.enableInputs=!1}setTerrainProvider(e){var t,r;if(e||(e=new a.EllipsoidTerrainProvider({ellipsoid:a.Ellipsoid.WGS84})),(r=(t=e.constructor)==null?void 0:t.name)==null?void 0:r.endsWith("TerrainProvider")){this.viewer.scene.terrainProvider=e;return}xe(e)&&(e.includes("layer.json")&&(e=e.replace(/layer.json/,"")),e={url:e}),this.viewer.scene.terrainProvider=new a.CesiumTerrainProvider(e)}getBoundingSphere(e){let t=[];return Ee(e)?t=e.map(r=>r.entity||r):t=[e.entity||e],t.length?a.BoundingSphere.fromBoundingSpheres(t.map(r=>{const n=new a.BoundingSphere;return this.viewer._dataSourceDisplay.getBoundingSphere(r,!1,n),n})):null}getPxMeter(e){const t=this.viewer,r=t.scene,n=new a.BoundingSphere(new L(e),.5);return t.camera.getPixelSize(n,r.context.drawingBufferWidth,r.context.drawingBufferHeight)}setCameraController(e,t={}){this._cameraControlClass&&(this._cameraControlClass.destroy(),this._cameraControlClass=null);const n={three:Ym,indoor:qm,track:Qm}[e];!n||(this._cameraControlClass=new n(N({map:this},t)))}intersection(e,t){if(!e||!t)return;t instanceof a.Plane||(t=a.Plane.fromPointNormal(t,a.Cartesian3.normalize(t,new a.Cartesian3))),e instanceof a.Cartesian2&&(e=this.viewer.camera.getPickRay(e)),e instanceof a.Cartesian3&&(e=new a.Ray(this.viewer.camera.positionWC,e));const r=a.IntersectionTests.rayPlane(e,t);return r&&new L(r)}collision(e,t,{distance:r=.1}={}){const n=new a.Ray(e,a.Cartesian3.subtract(t,e,new a.Cartesian3)),s=this.viewer.scene.pickFromRay(n,this.getAllGraphics().filter(o=>o.type==="point").map(o=>o.entity));if(s&&s.position){const o=a.Cartesian3.distance(e,s.position),l=a.Cartesian3.distance(e,t);if(o-l<r)return!0}return!1}openEditor(){const e=window.open(this.options.editorUrl);window.addEventListener("message",async t=>{try{if(t.data.eventName==="ready"){const r={graphics:[{attr:{name:"\u573A\u666F",isTop:!0},type:"group",graphics:await Promise.all(this.graphics.map(n=>n.toJSON()))}],resource:await this.getResource(),center:ue(N({},this.getViewPoint()),{duration:0})};console.log("data",r),e.postMessage({eventName:"sceneData",data:r},"*")}}catch(r){console.log(r)}},!1)}get isRealVisible(){return!0}screenShot(){return this.viewer.scene.render(),this.viewer.scene.canvas.toDataURL()}clip(e){this.globeClip&&(this.globeClip.destroy(),this.globeClip=null),!!(e&&e.length)&&(this.globeClip=new vi({target:this.globe,transform:a.Matrix4.IDENTITY}).clip(e.reverse().map(t=>new L(t))))}setSunLightByTime(e,{intensity:t=2,color:r=a.Color.WHITE}={}){e=e instanceof a.JulianDate?e:a.JulianDate.fromDate(Or(e).toDate());const n=a.Transforms.computeTemeToPseudoFixedMatrix(e,new a.Matrix3),s=a.Simon1994PlanetaryPositions.computeSunPositionInEarthInertialFrame(e instanceof a.JulianDate?e:a.JulianDate.fromDate(Or(e).toDate()),new a.Cartesian3);a.Matrix3.multiplyByVector(n,s,s),this.viewer.scene.light=new a.DirectionalLight({color:r instanceof a.Color?r:a.Color.fromCssColorString(r),direction:a.Cartesian3.negate(s,s),intensity:t})}get picking(){return this._picking||(this._picking=new eg(this.viewer)),this._picking}}var rg=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",DrawTool:xo,MeasureTool:Po,PickTool:So,PositionEdit:vr});const ng=function(i){const e=`a${Math.random().toString(36).slice(-6)}`;return window.__VAPSEarthCb||(window.__VAPSEarthCb={}),window.__VAPSEarthCb[e]=i,`__VAPSEarthCb.${e}()`};var sg=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",getElementOnclickStr:ng});const og=i=>a.BoundingSphere.fromPoints(i).center,ag=(i,e)=>a.Cartesian3.distance(new L(i),new L(e)),lg=i=>{const e=document.createElement("img");return e.src=i,new Promise(t=>{e.onload=()=>{t(e)}})},cg=(i,e)=>{const t=i.map(n=>new L(n).toLatLngArray()),r=ah(Yi(t),e);return Zc(r)},hg=(i,{turningMetre:e=1,num:t=100,format:r=n=>n}={})=>{if(i.length<3)return i;i=i.map(s=>new L(s));const n=[r(i[0])];for(let s=1;s<i.length-1;s++){const o=i[s],l=i[s-1],c=i[s+1];if(a.Cartesian3.equals(o,l)||a.Cartesian3.equals(o,c)||a.Cartesian3.equals(l,c))continue;const h=a.Cartesian3.distance(o,l);let u=a.Cartesian3.lerp(l,o,1-Math.min(.5,e/h),new a.Cartesian3);a.Cartesian3.distance(o,u)>h&&(u=l);const p=a.Cartesian3.distance(o,c);let d=a.Cartesian3.lerp(c,o,1-Math.min(.5,e/p),new a.Cartesian3);a.Cartesian3.distance(o,d)>p&&(d=c);let f=a.Cartesian3.midpoint(u,d,new a.Cartesian3);f=a.Cartesian3.lerp(o,f,.35,f);const m=new a.CatmullRomSpline({times:[0,.5,1],points:[u,f,d],firstTangent:a.Cartesian3.ZERO,lastTangent:a.Cartesian3.ZERO});for(let g=0;g<t;g++)n.push(r(new L(m.evaluate(1/(t-1)*g)),!(g===0||g===t-1),g))}return n.push(r(i[i.length-1])),n};var ug=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",pointIsInPolygon:zn,diffBy:fi,getPolygonCenter:og,distance:ag,getLoadedImage:lg,smoothLine:cg,smoothLineAngle:hg}),Cg="";const Ga="0.0.3";let Ha=N({name:"VAPSEarth",version:Ga,graphic:Ip,control:Gf,tool:rg,helper:sg,util:ug,Point:L,Map:za,tokenConfig:dt,geocoder:zm,PlaneClip:vi},gh);return console.log(`VAPS Earth version ${Ga}`),window.VE=Ha,Ha});