earthsdk3 3.6.2 → 3.6.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/earthsdk3.iife.js +3 -3
- package/dist/earthsdk3.js +417 -412
- package/dist/earthsdk3.umd.cjs +3 -3
- package/dist/types/ESObjects/general/ES3DTileset/index.d.ts +4 -0
- package/dist/types/ESObjects/general/ES3DTileset/index.d.ts.map +1 -1
- package/dist/types/ESObjects/general/ESPipeserTileset.d.ts +1 -0
- package/dist/types/ESObjects/general/ESPipeserTileset.d.ts.map +1 -1
- package/dist/types/ESObjects/general/ESRtsFeatureEditing/index.d.ts +1 -0
- package/dist/types/ESObjects/general/ESRtsFeatureEditing/index.d.ts.map +1 -1
- package/dist/types/ESObjects/general/ESRtsTileset/index.d.ts +1 -0
- package/dist/types/ESObjects/general/ESRtsTileset/index.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/earthsdk3.umd.cjs
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
(function(g,qn){typeof exports=="object"&&typeof module<"u"?qn(exports,require("js-binary-schema-parser"),require("topojson-client"),require("proj4"),require("@turf/turf"),require("zod"),require("zod-to-json-schema")):typeof define=="function"&&define.amd?define(["exports","js-binary-schema-parser","topojson-client","proj4","@turf/turf","zod","zod-to-json-schema"],qn):(g=typeof globalThis<"u"?globalThis:g||self,qn(g.EarthSDK3={},g.jsBinarySchemaParser,g.topojson,g.proj4,g.turf,g.z,g.zodToJsonSchema))})(this,function(g,qn,qo,gp,Jy,vt,$y){"use strict";var Hb=Object.defineProperty;var qb=(g,qn,qo)=>qn in g?Hb(g,qn,{enumerable:!0,configurable:!0,writable:!0,value:qo}):g[qn]=qo;var d=(g,qn,qo)=>qb(g,typeof qn!="symbol"?qn+"":qn,qo);var si;function mp(r){const e=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(r){for(const t in r)if(t!=="default"){const n=Object.getOwnPropertyDescriptor(r,t);Object.defineProperty(e,t,n.get?n:{enumerable:!0,get:()=>r[t]})}}return e.default=r,Object.freeze(e)}const Ky=mp(qo),Qe=mp(Jy);function Zy(){var n;const r=((n=globalThis==null?void 0:globalThis.navigator)==null?void 0:n.userAgent)??"unknown";let e="Unknown";/Windows/.test(r)?e="Windows":/Macintosh/.test(r)?e="MacOS":/Linux/.test(r)?e="Linux":/Android/.test(r)?e="Android":/iOS|iPhone|iPad|iPod/.test(r)&&(e="iOS");let t="Unknown";return/x64|x86_64|Win64|WOW64/.test(r)?t="x64":/x86|i686|Win32/.test(r)?t="x86":/arm64|aarch64/.test(r)?t="arm64":/arm/.test(r)&&(t="arm"),{os:e.toLocaleLowerCase(),arch:t.toLocaleLowerCase()}}const Qy=Date.now();function vp(r){var a;const{os:e,arch:t}=Zy(),n={version:r.version,commitdate:r.date,commitId:r.commitId,runningTime:(Date.now()-Qy)/1e3/60|0,date:new Date().toLocaleString(),href:((a=globalThis==null?void 0:globalThis.location)==null?void 0:a.href)??"unknown",os:e,arch:t},s={method:"GET",headers:new Headers,redirect:"follow"},o=globalThis.encodeURIComponent(JSON.stringify(n));fetch(`https://account.bjxbsj.cn/api/product/record?product=EarthSDKJS&content=${o}`,s).then(u=>u.text()).then(u=>console.log(u)).catch(u=>console.log("error",u))}g.copyright=void 0;try{const r="earthsdk3",e="3.6.
|
|
1
|
+
(function(g,qn){typeof exports=="object"&&typeof module<"u"?qn(exports,require("js-binary-schema-parser"),require("topojson-client"),require("proj4"),require("@turf/turf"),require("zod"),require("zod-to-json-schema")):typeof define=="function"&&define.amd?define(["exports","js-binary-schema-parser","topojson-client","proj4","@turf/turf","zod","zod-to-json-schema"],qn):(g=typeof globalThis<"u"?globalThis:g||self,qn(g.EarthSDK3={},g.jsBinarySchemaParser,g.topojson,g.proj4,g.turf,g.z,g.zodToJsonSchema))})(this,function(g,qn,qo,gp,Jy,vt,$y){"use strict";var Hb=Object.defineProperty;var qb=(g,qn,qo)=>qn in g?Hb(g,qn,{enumerable:!0,configurable:!0,writable:!0,value:qo}):g[qn]=qo;var d=(g,qn,qo)=>qb(g,typeof qn!="symbol"?qn+"":qn,qo);var si;function mp(r){const e=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(r){for(const t in r)if(t!=="default"){const n=Object.getOwnPropertyDescriptor(r,t);Object.defineProperty(e,t,n.get?n:{enumerable:!0,get:()=>r[t]})}}return e.default=r,Object.freeze(e)}const Ky=mp(qo),Qe=mp(Jy);function Zy(){var n;const r=((n=globalThis==null?void 0:globalThis.navigator)==null?void 0:n.userAgent)??"unknown";let e="Unknown";/Windows/.test(r)?e="Windows":/Macintosh/.test(r)?e="MacOS":/Linux/.test(r)?e="Linux":/Android/.test(r)?e="Android":/iOS|iPhone|iPad|iPod/.test(r)&&(e="iOS");let t="Unknown";return/x64|x86_64|Win64|WOW64/.test(r)?t="x64":/x86|i686|Win32/.test(r)?t="x86":/arm64|aarch64/.test(r)?t="arm64":/arm/.test(r)&&(t="arm"),{os:e.toLocaleLowerCase(),arch:t.toLocaleLowerCase()}}const Qy=Date.now();function vp(r){var a;const{os:e,arch:t}=Zy(),n={version:r.version,commitdate:r.date,commitId:r.commitId,runningTime:(Date.now()-Qy)/1e3/60|0,date:new Date().toLocaleString(),href:((a=globalThis==null?void 0:globalThis.location)==null?void 0:a.href)??"unknown",os:e,arch:t},s={method:"GET",headers:new Headers,redirect:"follow"},o=globalThis.encodeURIComponent(JSON.stringify(n));fetch(`https://account.bjxbsj.cn/api/product/record?product=EarthSDKJS&content=${o}`,s).then(u=>u.text()).then(u=>console.log(u)).catch(u=>console.log("error",u))}g.copyright=void 0;try{const r="earthsdk3",e="3.6.3",t="2025-12-22T03:45:39.000Z",n="北京西部世界科技有限公司",i="地球可视化实验室 (EarthSDK&CesiumLab) https://www.bjxbsj.cn",s="aa1f9890101d404875e17142255a5b00304f8f89",a=((Date.now()-1766375139e3)/36e5).toFixed(1),u=`%c🌏 ${r}%c ${e}.${s.slice(0,8)}.${t} (距今${a}个小时)
|
|
2
2
|
%c${i?i+`
|
|
3
3
|
`:""}当前网站正在使用${r},此软件版权归${n}所有
|
|
4
|
-
`;g.copyright=Object.freeze({get owner(){return"北京西部世界科技有限公司"},get ownerlink(){},get gituri(){return GITURI_&&GITURI_.replace("${commitId}","
|
|
4
|
+
`;g.copyright=Object.freeze({get owner(){return"北京西部世界科技有限公司"},get ownerlink(){},get gituri(){return GITURI_&&GITURI_.replace("${commitId}","aa1f9890101d404875e17142255a5b00304f8f89")},get info(){return u},get date(){return"2025-12-22T03:45:39.000Z"},get author(){return"suplyang"},get version(){return"3.6.3"},get name(){return"earthsdk3"},get commitId(){return"aa1f9890101d404875e17142255a5b00304f8f89"},print(){console.info(this.info,`
|
|
5
5
|
font-size: 18px;
|
|
6
6
|
font-weight: 1000;
|
|
7
7
|
line-height: 1;
|
|
@@ -62,7 +62,7 @@ ${u.map(c=>`${c.id} ${c.typeName}
|
|
|
62
62
|
See the Apache Version 2.0 License for specific language governing permissions
|
|
63
63
|
and limitations under the License.
|
|
64
64
|
***************************************************************************** */function MC(r,e){var t={label:0,sent:function(){if(s[0]&1)throw s[1];return s[1]},trys:[],ops:[]},n,i,s,o;return o={next:a(0),throw:a(1),return:a(2)},typeof Symbol=="function"&&(o[Symbol.iterator]=function(){return this}),o;function a(l){return function(c){return u([l,c])}}function u(l){if(n)throw new TypeError("Generator is already executing.");for(;t;)try{if(n=1,i&&(s=l[0]&2?i.return:l[0]?i.throw||((s=i.return)&&s.call(i),0):i.next)&&!(s=s.call(i,l[1])).done)return s;switch(i=0,s&&(l=[l[0]&2,s.value]),l[0]){case 0:case 1:s=l;break;case 4:return t.label++,{value:l[1],done:!1};case 5:t.label++,i=l[1],l=[0];continue;case 7:l=t.ops.pop(),t.trys.pop();continue;default:if(s=t.trys,!(s=s.length>0&&s[s.length-1])&&(l[0]===6||l[0]===2)){t=0;continue}if(l[0]===3&&(!s||l[1]>s[0]&&l[1]<s[3])){t.label=l[1];break}if(l[0]===6&&t.label<s[1]){t.label=s[1],s=l;break}if(s&&t.label<s[2]){t.label=s[2],t.ops.push(l);break}s[2]&&t.ops.pop(),t.trys.pop();continue}l=e.call(r,t)}catch(c){l=[6,c],i=0}finally{n=s=0}if(l[0]&5)throw l[1];return{value:l[0]?l[1]:void 0,done:!0}}}var ks=function(){function r(e,t){this.next=null,this.key=e,this.data=t,this.left=null,this.right=null}return r}();function RC(r,e){return r>e?1:r<e?-1:0}function Vs(r,e,t){for(var n=new ks(null,null),i=n,s=n;;){var o=t(r,e.key);if(o<0){if(e.left===null)break;if(t(r,e.left.key)<0){var a=e.left;if(e.left=a.right,a.right=e,e=a,e.left===null)break}s.left=e,s=e,e=e.left}else if(o>0){if(e.right===null)break;if(t(r,e.right.key)>0){var a=e.right;if(e.right=a.left,a.left=e,e=a,e.right===null)break}i.right=e,i=e,e=e.right}else break}return i.right=e.left,s.left=e.right,e.left=n.right,e.right=n.left,e}function Dd(r,e,t,n){var i=new ks(r,e);if(t===null)return i.left=i.right=null,i;t=Vs(r,t,n);var s=n(r,t.key);return s<0?(i.left=t.left,i.right=t,t.left=null):s>=0&&(i.right=t.right,i.left=t,t.right=null),i}function Mv(r,e,t){var n=null,i=null;if(e){e=Vs(r,e,t);var s=t(e.key,r);s===0?(n=e.left,i=e.right):s<0?(i=e.right,e.right=null,n=e):(n=e.left,e.left=null,i=e)}return{left:n,right:i}}function LC(r,e,t){return e===null?r:(r===null||(e=Vs(r.key,e,t),e.left=r),e)}function Md(r,e,t,n,i){if(r){n(""+e+(t?"└── ":"├── ")+i(r)+`
|
|
65
|
-
`);var s=e+(t?" ":"│ ");r.left&&Md(r.left,s,!1,n,i),r.right&&Md(r.right,s,!0,n,i)}}var Rd=function(){function r(e){e===void 0&&(e=RC),this._root=null,this._size=0,this._comparator=e}return r.prototype.insert=function(e,t){return this._size++,this._root=Dd(e,t,this._root,this._comparator)},r.prototype.add=function(e,t){var n=new ks(e,t);this._root===null&&(n.left=n.right=null,this._size++,this._root=n);var i=this._comparator,s=Vs(e,this._root,i),o=i(e,s.key);return o===0?this._root=s:(o<0?(n.left=s.left,n.right=s,s.left=null):o>0&&(n.right=s.right,n.left=s,s.right=null),this._size++,this._root=n),this._root},r.prototype.remove=function(e){this._root=this._remove(e,this._root,this._comparator)},r.prototype._remove=function(e,t,n){var i;if(t===null)return null;t=Vs(e,t,n);var s=n(e,t.key);return s===0?(t.left===null?i=t.right:(i=Vs(e,t.left,n),i.right=t.right),this._size--,i):t},r.prototype.pop=function(){var e=this._root;if(e){for(;e.left;)e=e.left;return this._root=Vs(e.key,this._root,this._comparator),this._root=this._remove(e.key,this._root,this._comparator),{key:e.key,data:e.data}}return null},r.prototype.findStatic=function(e){for(var t=this._root,n=this._comparator;t;){var i=n(e,t.key);if(i===0)return t;i<0?t=t.left:t=t.right}return null},r.prototype.find=function(e){return this._root&&(this._root=Vs(e,this._root,this._comparator),this._comparator(e,this._root.key)!==0)?null:this._root},r.prototype.contains=function(e){for(var t=this._root,n=this._comparator;t;){var i=n(e,t.key);if(i===0)return!0;i<0?t=t.left:t=t.right}return!1},r.prototype.forEach=function(e,t){for(var n=this._root,i=[],s=!1;!s;)n!==null?(i.push(n),n=n.left):i.length!==0?(n=i.pop(),e.call(t,n),n=n.right):s=!0;return this},r.prototype.range=function(e,t,n,i){for(var s=[],o=this._comparator,a=this._root,u;s.length!==0||a;)if(a)s.push(a),a=a.left;else{if(a=s.pop(),u=o(a.key,t),u>0)break;if(o(a.key,e)>=0&&n.call(i,a))return this;a=a.right}return this},r.prototype.keys=function(){var e=[];return this.forEach(function(t){var n=t.key;return e.push(n)}),e},r.prototype.values=function(){var e=[];return this.forEach(function(t){var n=t.data;return e.push(n)}),e},r.prototype.min=function(){return this._root?this.minNode(this._root).key:null},r.prototype.max=function(){return this._root?this.maxNode(this._root).key:null},r.prototype.minNode=function(e){if(e===void 0&&(e=this._root),e)for(;e.left;)e=e.left;return e},r.prototype.maxNode=function(e){if(e===void 0&&(e=this._root),e)for(;e.right;)e=e.right;return e},r.prototype.at=function(e){for(var t=this._root,n=!1,i=0,s=[];!n;)if(t)s.push(t),t=t.left;else if(s.length>0){if(t=s.pop(),i===e)return t;i++,t=t.right}else n=!0;return null},r.prototype.next=function(e){var t=this._root,n=null;if(e.right){for(n=e.right;n.left;)n=n.left;return n}for(var i=this._comparator;t;){var s=i(e.key,t.key);if(s===0)break;s<0?(n=t,t=t.left):t=t.right}return n},r.prototype.prev=function(e){var t=this._root,n=null;if(e.left!==null){for(n=e.left;n.right;)n=n.right;return n}for(var i=this._comparator;t;){var s=i(e.key,t.key);if(s===0)break;s<0?t=t.left:(n=t,t=t.right)}return n},r.prototype.clear=function(){return this._root=null,this._size=0,this},r.prototype.toList=function(){return AC(this._root)},r.prototype.load=function(e,t,n){t===void 0&&(t=[]),n===void 0&&(n=!1);var i=e.length,s=this._comparator;if(n&&Ad(e,t,0,i-1,s),this._root===null)this._root=Ld(e,t,0,i),this._size=i;else{var o=kC(this.toList(),FC(e,t),s);i=this._size+i,this._root=Fd({head:o},0,i)}return this},r.prototype.isEmpty=function(){return this._root===null},Object.defineProperty(r.prototype,"size",{get:function(){return this._size},enumerable:!0,configurable:!0}),Object.defineProperty(r.prototype,"root",{get:function(){return this._root},enumerable:!0,configurable:!0}),r.prototype.toString=function(e){e===void 0&&(e=function(n){return String(n.key)});var t=[];return Md(this._root,"",!0,function(n){return t.push(n)},e),t.join("")},r.prototype.update=function(e,t,n){var i=this._comparator,s=Mv(e,this._root,i),o=s.left,a=s.right;i(e,t)<0?a=Dd(t,n,a,i):o=Dd(t,n,o,i),this._root=LC(o,a,i)},r.prototype.split=function(e){return Mv(e,this._root,this._comparator)},r.prototype[Symbol.iterator]=function(){var e,t,n;return MC(this,function(i){switch(i.label){case 0:e=this._root,t=[],n=!1,i.label=1;case 1:return n?[3,6]:e===null?[3,2]:(t.push(e),e=e.left,[3,5]);case 2:return t.length===0?[3,4]:(e=t.pop(),[4,e]);case 3:return i.sent(),e=e.right,[3,5];case 4:n=!0,i.label=5;case 5:return[3,1];case 6:return[2]}})},r}();function Ld(r,e,t,n){var i=n-t;if(i>0){var s=t+Math.floor(i/2),o=r[s],a=e[s],u=new ks(o,a);return u.left=Ld(r,e,t,s),u.right=Ld(r,e,s+1,n),u}return null}function FC(r,e){for(var t=new ks(null,null),n=t,i=0;i<r.length;i++)n=n.next=new ks(r[i],e[i]);return n.next=null,t.next}function AC(r){for(var e=r,t=[],n=!1,i=new ks(null,null),s=i;!n;)e?(t.push(e),e=e.left):t.length>0?(e=s=s.next=t.pop(),e=e.right):n=!0;return s.next=null,i.next}function Fd(r,e,t){var n=t-e;if(n>0){var i=e+Math.floor(n/2),s=Fd(r,e,i),o=r.head;return o.left=s,r.head=r.head.next,o.right=Fd(r,i+1,t),o}return null}function kC(r,e,t){for(var n=new ks(null,null),i=n,s=r,o=e;s!==null&&o!==null;)t(s.key,o.key)<0?(i.next=s,s=s.next):(i.next=o,o=o.next),i=i.next;return s!==null?i.next=s:o!==null&&(i.next=o),n.next}function Ad(r,e,t,n,i){if(!(t>=n)){for(var s=r[t+n>>1],o=t-1,a=n+1;;){do o++;while(i(r[o],s)<0);do a--;while(i(r[a],s)>0);if(o>=a)break;var u=r[o];r[o]=r[a],r[a]=u,u=e[o],e[o]=e[a],e[a]=u}Ad(r,e,t,a,i),Ad(r,e,a+1,n,i)}}const as=11102230246251565e-32,vn=134217729,VC=(3+8*as)*as;function kd(r,e,t,n,i){let s,o,a,u,l=e[0],c=n[0],h=0,f=0;c>l==c>-l?(s=l,l=e[++h]):(s=c,c=n[++f]);let p=0;if(h<r&&f<t)for(c>l==c>-l?(o=l+s,a=s-(o-l),l=e[++h]):(o=c+s,a=s-(o-c),c=n[++f]),s=o,a!==0&&(i[p++]=a);h<r&&f<t;)c>l==c>-l?(o=s+l,u=o-s,a=s-(o-u)+(l-u),l=e[++h]):(o=s+c,u=o-s,a=s-(o-u)+(c-u),c=n[++f]),s=o,a!==0&&(i[p++]=a);for(;h<r;)o=s+l,u=o-s,a=s-(o-u)+(l-u),l=e[++h],s=o,a!==0&&(i[p++]=a);for(;f<t;)o=s+c,u=o-s,a=s-(o-u)+(c-u),c=n[++f],s=o,a!==0&&(i[p++]=a);return(s!==0||p===0)&&(i[p++]=s),p}function jC(r,e){let t=e[0];for(let n=1;n<r;n++)t+=e[n];return t}function cl(r){return new Float64Array(r)}const BC=(3+16*as)*as,zC=(2+12*as)*as,UC=(9+64*as)*as*as,Aa=cl(4),Rv=cl(8),Lv=cl(12),Fv=cl(16),Ln=cl(4);function GC(r,e,t,n,i,s,o){let a,u,l,c,h,f,p,v,C,S,P,y,_,m,w,E,b,I;const T=r-i,D=t-i,x=e-s,N=n-s;m=T*N,f=vn*T,p=f-(f-T),v=T-p,f=vn*N,C=f-(f-N),S=N-C,w=v*S-(m-p*C-v*C-p*S),E=x*D,f=vn*x,p=f-(f-x),v=x-p,f=vn*D,C=f-(f-D),S=D-C,b=v*S-(E-p*C-v*C-p*S),P=w-b,h=w-P,Aa[0]=w-(P+h)+(h-b),y=m+P,h=y-m,_=m-(y-h)+(P-h),P=_-E,h=_-P,Aa[1]=_-(P+h)+(h-E),I=y+P,h=I-y,Aa[2]=y-(I-h)+(P-h),Aa[3]=I;let L=jC(4,Aa),A=zC*o;if(L>=A||-L>=A||(h=r-T,a=r-(T+h)+(h-i),h=t-D,l=t-(D+h)+(h-i),h=e-x,u=e-(x+h)+(h-s),h=n-N,c=n-(N+h)+(h-s),a===0&&u===0&&l===0&&c===0)||(A=UC*o+VC*Math.abs(L),L+=T*c+N*a-(x*l+D*u),L>=A||-L>=A))return L;m=a*N,f=vn*a,p=f-(f-a),v=a-p,f=vn*N,C=f-(f-N),S=N-C,w=v*S-(m-p*C-v*C-p*S),E=u*D,f=vn*u,p=f-(f-u),v=u-p,f=vn*D,C=f-(f-D),S=D-C,b=v*S-(E-p*C-v*C-p*S),P=w-b,h=w-P,Ln[0]=w-(P+h)+(h-b),y=m+P,h=y-m,_=m-(y-h)+(P-h),P=_-E,h=_-P,Ln[1]=_-(P+h)+(h-E),I=y+P,h=I-y,Ln[2]=y-(I-h)+(P-h),Ln[3]=I;const J=kd(4,Aa,4,Ln,Rv);m=T*c,f=vn*T,p=f-(f-T),v=T-p,f=vn*c,C=f-(f-c),S=c-C,w=v*S-(m-p*C-v*C-p*S),E=x*l,f=vn*x,p=f-(f-x),v=x-p,f=vn*l,C=f-(f-l),S=l-C,b=v*S-(E-p*C-v*C-p*S),P=w-b,h=w-P,Ln[0]=w-(P+h)+(h-b),y=m+P,h=y-m,_=m-(y-h)+(P-h),P=_-E,h=_-P,Ln[1]=_-(P+h)+(h-E),I=y+P,h=I-y,Ln[2]=y-(I-h)+(P-h),Ln[3]=I;const H=kd(J,Rv,4,Ln,Lv);m=a*c,f=vn*a,p=f-(f-a),v=a-p,f=vn*c,C=f-(f-c),S=c-C,w=v*S-(m-p*C-v*C-p*S),E=u*l,f=vn*u,p=f-(f-u),v=u-p,f=vn*l,C=f-(f-l),S=l-C,b=v*S-(E-p*C-v*C-p*S),P=w-b,h=w-P,Ln[0]=w-(P+h)+(h-b),y=m+P,h=y-m,_=m-(y-h)+(P-h),P=_-E,h=_-P,Ln[1]=_-(P+h)+(h-E),I=y+P,h=I-y,Ln[2]=y-(I-h)+(P-h),Ln[3]=I;const Z=kd(H,Lv,4,Ln,Fv);return Fv[Z-1]}function WC(r,e,t,n,i,s){const o=(e-s)*(t-i),a=(r-i)*(n-s),u=o-a,l=Math.abs(o+a);return Math.abs(u)>=BC*l?u:-GC(r,e,t,n,i,s,l)}const hl=(r,e)=>r.ll.x<=e.x&&e.x<=r.ur.x&&r.ll.y<=e.y&&e.y<=r.ur.y,Vd=(r,e)=>{if(e.ur.x<r.ll.x||r.ur.x<e.ll.x||e.ur.y<r.ll.y||r.ur.y<e.ll.y)return null;const t=r.ll.x<e.ll.x?e.ll.x:r.ll.x,n=r.ur.x<e.ur.x?r.ur.x:e.ur.x,i=r.ll.y<e.ll.y?e.ll.y:r.ll.y,s=r.ur.y<e.ur.y?r.ur.y:e.ur.y;return{ll:{x:t,y:i},ur:{x:n,y:s}}};let js=Number.EPSILON;js===void 0&&(js=Math.pow(2,-52));const HC=js*js,Av=(r,e)=>{if(-js<r&&r<js&&-js<e&&e<js)return 0;const t=r-e;return t*t<HC*r*e?0:r<e?-1:1};class qC{constructor(){this.reset()}reset(){this.xRounder=new kv,this.yRounder=new kv}round(e,t){return{x:this.xRounder.round(e),y:this.yRounder.round(t)}}}class kv{constructor(){this.tree=new Rd,this.round(0)}round(e){const t=this.tree.add(e),n=this.tree.prev(t);if(n!==null&&Av(t.key,n.key)===0)return this.tree.remove(e),n.key;const i=this.tree.next(t);return i!==null&&Av(t.key,i.key)===0?(this.tree.remove(e),i.key):e}}const dl=new qC,Mc=(r,e)=>r.x*e.y-r.y*e.x,Vv=(r,e)=>r.x*e.x+r.y*e.y,jv=(r,e,t)=>{const n=WC(r.x,r.y,e.x,e.y,t.x,t.y);return n>0?-1:n<0?1:0},Rc=r=>Math.sqrt(Vv(r,r)),XC=(r,e,t)=>{const n={x:e.x-r.x,y:e.y-r.y},i={x:t.x-r.x,y:t.y-r.y};return Mc(i,n)/Rc(i)/Rc(n)},YC=(r,e,t)=>{const n={x:e.x-r.x,y:e.y-r.y},i={x:t.x-r.x,y:t.y-r.y};return Vv(i,n)/Rc(i)/Rc(n)},Bv=(r,e,t)=>e.y===0?null:{x:r.x+e.x/e.y*(t-r.y),y:t},zv=(r,e,t)=>e.x===0?null:{x:t,y:r.y+e.y/e.x*(t-r.x)},JC=(r,e,t,n)=>{if(e.x===0)return zv(t,n,r.x);if(n.x===0)return zv(r,e,t.x);if(e.y===0)return Bv(t,n,r.y);if(n.y===0)return Bv(r,e,t.y);const i=Mc(e,n);if(i==0)return null;const s={x:t.x-r.x,y:t.y-r.y},o=Mc(s,e)/i,a=Mc(s,n)/i,u=r.x+a*e.x,l=t.x+o*n.x,c=r.y+a*e.y,h=t.y+o*n.y,f=(u+l)/2,p=(c+h)/2;return{x:f,y:p}};class xr{static compare(e,t){const n=xr.comparePoints(e.point,t.point);return n!==0?n:(e.point!==t.point&&e.link(t),e.isLeft!==t.isLeft?e.isLeft?1:-1:Bs.compare(e.segment,t.segment))}static comparePoints(e,t){return e.x<t.x?-1:e.x>t.x?1:e.y<t.y?-1:e.y>t.y?1:0}constructor(e,t){e.events===void 0?e.events=[this]:e.events.push(this),this.point=e,this.isLeft=t}link(e){if(e.point===this.point)throw new Error("Tried to link already linked events");const t=e.point.events;for(let n=0,i=t.length;n<i;n++){const s=t[n];this.point.events.push(s),s.point=this.point}this.checkForConsuming()}checkForConsuming(){const e=this.point.events.length;for(let t=0;t<e;t++){const n=this.point.events[t];if(n.segment.consumedBy===void 0)for(let i=t+1;i<e;i++){const s=this.point.events[i];s.consumedBy===void 0&&n.otherSE.point.events===s.otherSE.point.events&&n.segment.consume(s.segment)}}}getAvailableLinkedEvents(){const e=[];for(let t=0,n=this.point.events.length;t<n;t++){const i=this.point.events[t];i!==this&&!i.segment.ringOut&&i.segment.isInResult()&&e.push(i)}return e}getLeftmostComparator(e){const t=new Map,n=i=>{const s=i.otherSE;t.set(i,{sine:XC(this.point,e.point,s.point),cosine:YC(this.point,e.point,s.point)})};return(i,s)=>{t.has(i)||n(i),t.has(s)||n(s);const{sine:o,cosine:a}=t.get(i),{sine:u,cosine:l}=t.get(s);return o>=0&&u>=0?a<l?1:a>l?-1:0:o<0&&u<0?a<l?-1:a>l?1:0:u<o?-1:u>o?1:0}}}let $C=0;class Bs{static compare(e,t){const n=e.leftSE.point.x,i=t.leftSE.point.x,s=e.rightSE.point.x,o=t.rightSE.point.x;if(o<n)return 1;if(s<i)return-1;const a=e.leftSE.point.y,u=t.leftSE.point.y,l=e.rightSE.point.y,c=t.rightSE.point.y;if(n<i){if(u<a&&u<l)return 1;if(u>a&&u>l)return-1;const h=e.comparePoint(t.leftSE.point);if(h<0)return 1;if(h>0)return-1;const f=t.comparePoint(e.rightSE.point);return f!==0?f:-1}if(n>i){if(a<u&&a<c)return-1;if(a>u&&a>c)return 1;const h=t.comparePoint(e.leftSE.point);if(h!==0)return h;const f=e.comparePoint(t.rightSE.point);return f<0?1:f>0?-1:1}if(a<u)return-1;if(a>u)return 1;if(s<o){const h=t.comparePoint(e.rightSE.point);if(h!==0)return h}if(s>o){const h=e.comparePoint(t.rightSE.point);if(h<0)return 1;if(h>0)return-1}if(s!==o){const h=l-a,f=s-n,p=c-u,v=o-i;if(h>f&&p<v)return 1;if(h<f&&p>v)return-1}return s>o?1:s<o||l<c?-1:l>c?1:e.id<t.id?-1:e.id>t.id?1:0}constructor(e,t,n,i){this.id=++$C,this.leftSE=e,e.segment=this,e.otherSE=t,this.rightSE=t,t.segment=this,t.otherSE=e,this.rings=n,this.windings=i}static fromRing(e,t,n){let i,s,o;const a=xr.comparePoints(e,t);if(a<0)i=e,s=t,o=1;else if(a>0)i=t,s=e,o=-1;else throw new Error(`Tried to create degenerate segment at [${e.x}, ${e.y}]`);const u=new xr(i,!0),l=new xr(s,!1);return new Bs(u,l,[n],[o])}replaceRightSE(e){this.rightSE=e,this.rightSE.segment=this,this.rightSE.otherSE=this.leftSE,this.leftSE.otherSE=this.rightSE}bbox(){const e=this.leftSE.point.y,t=this.rightSE.point.y;return{ll:{x:this.leftSE.point.x,y:e<t?e:t},ur:{x:this.rightSE.point.x,y:e>t?e:t}}}vector(){return{x:this.rightSE.point.x-this.leftSE.point.x,y:this.rightSE.point.y-this.leftSE.point.y}}isAnEndpoint(e){return e.x===this.leftSE.point.x&&e.y===this.leftSE.point.y||e.x===this.rightSE.point.x&&e.y===this.rightSE.point.y}comparePoint(e){if(this.isAnEndpoint(e))return 0;const t=this.leftSE.point,n=this.rightSE.point,i=this.vector();if(t.x===n.x)return e.x===t.x?0:e.x<t.x?1:-1;const s=(e.y-t.y)/i.y,o=t.x+s*i.x;if(e.x===o)return 0;const a=(e.x-t.x)/i.x,u=t.y+a*i.y;return e.y===u?0:e.y<u?-1:1}getIntersection(e){const t=this.bbox(),n=e.bbox(),i=Vd(t,n);if(i===null)return null;const s=this.leftSE.point,o=this.rightSE.point,a=e.leftSE.point,u=e.rightSE.point,l=hl(t,a)&&this.comparePoint(a)===0,c=hl(n,s)&&e.comparePoint(s)===0,h=hl(t,u)&&this.comparePoint(u)===0,f=hl(n,o)&&e.comparePoint(o)===0;if(c&&l)return f&&!h?o:!f&&h?u:null;if(c)return h&&s.x===u.x&&s.y===u.y?null:s;if(l)return f&&o.x===a.x&&o.y===a.y?null:a;if(f&&h)return null;if(f)return o;if(h)return u;const p=JC(s,this.vector(),a,e.vector());return p===null||!hl(i,p)?null:dl.round(p.x,p.y)}split(e){const t=[],n=e.events!==void 0,i=new xr(e,!0),s=new xr(e,!1),o=this.rightSE;this.replaceRightSE(s),t.push(s),t.push(i);const a=new Bs(i,o,this.rings.slice(),this.windings.slice());return xr.comparePoints(a.leftSE.point,a.rightSE.point)>0&&a.swapEvents(),xr.comparePoints(this.leftSE.point,this.rightSE.point)>0&&this.swapEvents(),n&&(i.checkForConsuming(),s.checkForConsuming()),t}swapEvents(){const e=this.rightSE;this.rightSE=this.leftSE,this.leftSE=e,this.leftSE.isLeft=!0,this.rightSE.isLeft=!1;for(let t=0,n=this.windings.length;t<n;t++)this.windings[t]*=-1}consume(e){let t=this,n=e;for(;t.consumedBy;)t=t.consumedBy;for(;n.consumedBy;)n=n.consumedBy;const i=Bs.compare(t,n);if(i!==0){if(i>0){const s=t;t=n,n=s}if(t.prev===n){const s=t;t=n,n=s}for(let s=0,o=n.rings.length;s<o;s++){const a=n.rings[s],u=n.windings[s],l=t.rings.indexOf(a);l===-1?(t.rings.push(a),t.windings.push(u)):t.windings[l]+=u}n.rings=null,n.windings=null,n.consumedBy=t,n.leftSE.consumedBy=t.leftSE,n.rightSE.consumedBy=t.rightSE}}prevInResult(){return this._prevInResult!==void 0?this._prevInResult:(this.prev?this.prev.isInResult()?this._prevInResult=this.prev:this._prevInResult=this.prev.prevInResult():this._prevInResult=null,this._prevInResult)}beforeState(){if(this._beforeState!==void 0)return this._beforeState;if(!this.prev)this._beforeState={rings:[],windings:[],multiPolys:[]};else{const e=this.prev.consumedBy||this.prev;this._beforeState=e.afterState()}return this._beforeState}afterState(){if(this._afterState!==void 0)return this._afterState;const e=this.beforeState();this._afterState={rings:e.rings.slice(0),windings:e.windings.slice(0),multiPolys:[]};const t=this._afterState.rings,n=this._afterState.windings,i=this._afterState.multiPolys;for(let a=0,u=this.rings.length;a<u;a++){const l=this.rings[a],c=this.windings[a],h=t.indexOf(l);h===-1?(t.push(l),n.push(c)):n[h]+=c}const s=[],o=[];for(let a=0,u=t.length;a<u;a++){if(n[a]===0)continue;const l=t[a],c=l.poly;if(o.indexOf(c)===-1)if(l.isExterior)s.push(c);else{o.indexOf(c)===-1&&o.push(c);const h=s.indexOf(l.poly);h!==-1&&s.splice(h,1)}}for(let a=0,u=s.length;a<u;a++){const l=s[a].multiPoly;i.indexOf(l)===-1&&i.push(l)}return this._afterState}isInResult(){if(this.consumedBy)return!1;if(this._isInResult!==void 0)return this._isInResult;const e=this.beforeState().multiPolys,t=this.afterState().multiPolys;switch(ni.type){case"union":{const n=e.length===0,i=t.length===0;this._isInResult=n!==i;break}case"intersection":{let n,i;e.length<t.length?(n=e.length,i=t.length):(n=t.length,i=e.length),this._isInResult=i===ni.numMultiPolys&&n<i;break}case"xor":{const n=Math.abs(e.length-t.length);this._isInResult=n%2===1;break}case"difference":{const n=i=>i.length===1&&i[0].isSubject;this._isInResult=n(e)!==n(t);break}default:throw new Error(`Unrecognized operation type found ${ni.type}`)}return this._isInResult}}class Uv{constructor(e,t,n){if(!Array.isArray(e)||e.length===0)throw new Error("Input geometry is not a valid Polygon or MultiPolygon");if(this.poly=t,this.isExterior=n,this.segments=[],typeof e[0][0]!="number"||typeof e[0][1]!="number")throw new Error("Input geometry is not a valid Polygon or MultiPolygon");const i=dl.round(e[0][0],e[0][1]);this.bbox={ll:{x:i.x,y:i.y},ur:{x:i.x,y:i.y}};let s=i;for(let o=1,a=e.length;o<a;o++){if(typeof e[o][0]!="number"||typeof e[o][1]!="number")throw new Error("Input geometry is not a valid Polygon or MultiPolygon");let u=dl.round(e[o][0],e[o][1]);u.x===s.x&&u.y===s.y||(this.segments.push(Bs.fromRing(s,u,this)),u.x<this.bbox.ll.x&&(this.bbox.ll.x=u.x),u.y<this.bbox.ll.y&&(this.bbox.ll.y=u.y),u.x>this.bbox.ur.x&&(this.bbox.ur.x=u.x),u.y>this.bbox.ur.y&&(this.bbox.ur.y=u.y),s=u)}(i.x!==s.x||i.y!==s.y)&&this.segments.push(Bs.fromRing(s,i,this))}getSweepEvents(){const e=[];for(let t=0,n=this.segments.length;t<n;t++){const i=this.segments[t];e.push(i.leftSE),e.push(i.rightSE)}return e}}class KC{constructor(e,t){if(!Array.isArray(e))throw new Error("Input geometry is not a valid Polygon or MultiPolygon");this.exteriorRing=new Uv(e[0],this,!0),this.bbox={ll:{x:this.exteriorRing.bbox.ll.x,y:this.exteriorRing.bbox.ll.y},ur:{x:this.exteriorRing.bbox.ur.x,y:this.exteriorRing.bbox.ur.y}},this.interiorRings=[];for(let n=1,i=e.length;n<i;n++){const s=new Uv(e[n],this,!1);s.bbox.ll.x<this.bbox.ll.x&&(this.bbox.ll.x=s.bbox.ll.x),s.bbox.ll.y<this.bbox.ll.y&&(this.bbox.ll.y=s.bbox.ll.y),s.bbox.ur.x>this.bbox.ur.x&&(this.bbox.ur.x=s.bbox.ur.x),s.bbox.ur.y>this.bbox.ur.y&&(this.bbox.ur.y=s.bbox.ur.y),this.interiorRings.push(s)}this.multiPoly=t}getSweepEvents(){const e=this.exteriorRing.getSweepEvents();for(let t=0,n=this.interiorRings.length;t<n;t++){const i=this.interiorRings[t].getSweepEvents();for(let s=0,o=i.length;s<o;s++)e.push(i[s])}return e}}class Gv{constructor(e,t){if(!Array.isArray(e))throw new Error("Input geometry is not a valid Polygon or MultiPolygon");try{typeof e[0][0][0]=="number"&&(e=[e])}catch{}this.polys=[],this.bbox={ll:{x:Number.POSITIVE_INFINITY,y:Number.POSITIVE_INFINITY},ur:{x:Number.NEGATIVE_INFINITY,y:Number.NEGATIVE_INFINITY}};for(let n=0,i=e.length;n<i;n++){const s=new KC(e[n],this);s.bbox.ll.x<this.bbox.ll.x&&(this.bbox.ll.x=s.bbox.ll.x),s.bbox.ll.y<this.bbox.ll.y&&(this.bbox.ll.y=s.bbox.ll.y),s.bbox.ur.x>this.bbox.ur.x&&(this.bbox.ur.x=s.bbox.ur.x),s.bbox.ur.y>this.bbox.ur.y&&(this.bbox.ur.y=s.bbox.ur.y),this.polys.push(s)}this.isSubject=t}getSweepEvents(){const e=[];for(let t=0,n=this.polys.length;t<n;t++){const i=this.polys[t].getSweepEvents();for(let s=0,o=i.length;s<o;s++)e.push(i[s])}return e}}class Lc{static factory(e){const t=[];for(let n=0,i=e.length;n<i;n++){const s=e[n];if(!s.isInResult()||s.ringOut)continue;let o=null,a=s.leftSE,u=s.rightSE;const l=[a],c=a.point,h=[];for(;o=a,a=u,l.push(a),a.point!==c;)for(;;){const f=a.getAvailableLinkedEvents();if(f.length===0){const C=l[0].point,S=l[l.length-1].point;throw new Error(`Unable to complete output ring starting at [${C.x}, ${C.y}]. Last matching segment found ends at [${S.x}, ${S.y}].`)}if(f.length===1){u=f[0].otherSE;break}let p=null;for(let C=0,S=h.length;C<S;C++)if(h[C].point===a.point){p=C;break}if(p!==null){const C=h.splice(p)[0],S=l.splice(C.index);S.unshift(S[0].otherSE),t.push(new Lc(S.reverse()));continue}h.push({index:l.length,point:a.point});const v=a.getLeftmostComparator(o);u=f.sort(v)[0].otherSE;break}t.push(new Lc(l))}return t}constructor(e){this.events=e;for(let t=0,n=e.length;t<n;t++)e[t].segment.ringOut=this;this.poly=null}getGeom(){let e=this.events[0].point;const t=[e];for(let l=1,c=this.events.length-1;l<c;l++){const h=this.events[l].point,f=this.events[l+1].point;jv(h,e,f)!==0&&(t.push(h),e=h)}if(t.length===1)return null;const n=t[0],i=t[1];jv(n,e,i)===0&&t.shift(),t.push(t[0]);const s=this.isExteriorRing()?1:-1,o=this.isExteriorRing()?0:t.length-1,a=this.isExteriorRing()?t.length:-1,u=[];for(let l=o;l!=a;l+=s)u.push([t[l].x,t[l].y]);return u}isExteriorRing(){if(this._isExteriorRing===void 0){const e=this.enclosingRing();this._isExteriorRing=e?!e.isExteriorRing():!0}return this._isExteriorRing}enclosingRing(){return this._enclosingRing===void 0&&(this._enclosingRing=this._calcEnclosingRing()),this._enclosingRing}_calcEnclosingRing(){let e=this.events[0];for(let i=1,s=this.events.length;i<s;i++){const o=this.events[i];xr.compare(e,o)>0&&(e=o)}let t=e.segment.prevInResult(),n=t?t.prevInResult():null;for(;;){if(!t)return null;if(!n)return t.ringOut;if(n.ringOut!==t.ringOut)return n.ringOut.enclosingRing()!==t.ringOut?t.ringOut:t.ringOut.enclosingRing();t=n.prevInResult(),n=t?t.prevInResult():null}}}class Wv{constructor(e){this.exteriorRing=e,e.poly=this,this.interiorRings=[]}addInterior(e){this.interiorRings.push(e),e.poly=this}getGeom(){const e=[this.exteriorRing.getGeom()];if(e[0]===null)return null;for(let t=0,n=this.interiorRings.length;t<n;t++){const i=this.interiorRings[t].getGeom();i!==null&&e.push(i)}return e}}class ZC{constructor(e){this.rings=e,this.polys=this._composePolys(e)}getGeom(){const e=[];for(let t=0,n=this.polys.length;t<n;t++){const i=this.polys[t].getGeom();i!==null&&e.push(i)}return e}_composePolys(e){const t=[];for(let n=0,i=e.length;n<i;n++){const s=e[n];if(!s.poly)if(s.isExteriorRing())t.push(new Wv(s));else{const o=s.enclosingRing();o.poly||t.push(new Wv(o)),o.poly.addInterior(s)}}return t}}class QC{constructor(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Bs.compare;this.queue=e,this.tree=new Rd(t),this.segments=[]}process(e){const t=e.segment,n=[];if(e.consumedBy)return e.isLeft?this.queue.remove(e.otherSE):this.tree.remove(t),n;const i=e.isLeft?this.tree.add(t):this.tree.find(t);if(!i)throw new Error(`Unable to find segment #${t.id} [${t.leftSE.point.x}, ${t.leftSE.point.y}] -> [${t.rightSE.point.x}, ${t.rightSE.point.y}] in SweepLine tree.`);let s=i,o=i,a,u;for(;a===void 0;)s=this.tree.prev(s),s===null?a=null:s.key.consumedBy===void 0&&(a=s.key);for(;u===void 0;)o=this.tree.next(o),o===null?u=null:o.key.consumedBy===void 0&&(u=o.key);if(e.isLeft){let l=null;if(a){const h=a.getIntersection(t);if(h!==null&&(t.isAnEndpoint(h)||(l=h),!a.isAnEndpoint(h))){const f=this._splitSafely(a,h);for(let p=0,v=f.length;p<v;p++)n.push(f[p])}}let c=null;if(u){const h=u.getIntersection(t);if(h!==null&&(t.isAnEndpoint(h)||(c=h),!u.isAnEndpoint(h))){const f=this._splitSafely(u,h);for(let p=0,v=f.length;p<v;p++)n.push(f[p])}}if(l!==null||c!==null){let h=null;l===null?h=c:c===null?h=l:h=xr.comparePoints(l,c)<=0?l:c,this.queue.remove(t.rightSE),n.push(t.rightSE);const f=t.split(h);for(let p=0,v=f.length;p<v;p++)n.push(f[p])}n.length>0?(this.tree.remove(t),n.push(e)):(this.segments.push(t),t.prev=a)}else{if(a&&u){const l=a.getIntersection(u);if(l!==null){if(!a.isAnEndpoint(l)){const c=this._splitSafely(a,l);for(let h=0,f=c.length;h<f;h++)n.push(c[h])}if(!u.isAnEndpoint(l)){const c=this._splitSafely(u,l);for(let h=0,f=c.length;h<f;h++)n.push(c[h])}}}this.tree.remove(t)}return n}_splitSafely(e,t){this.tree.remove(e);const n=e.rightSE;this.queue.remove(n);const i=e.split(t);return i.push(n),e.consumedBy===void 0&&this.tree.add(e),i}}const Hv=typeof process<"u"&&process.env.POLYGON_CLIPPING_MAX_QUEUE_SIZE||1e6,tS=typeof process<"u"&&process.env.POLYGON_CLIPPING_MAX_SWEEPLINE_SEGMENTS||1e6;class eS{run(e,t,n){ni.type=e,dl.reset();const i=[new Gv(t,!0)];for(let h=0,f=n.length;h<f;h++)i.push(new Gv(n[h],!1));if(ni.numMultiPolys=i.length,ni.type==="difference"){const h=i[0];let f=1;for(;f<i.length;)Vd(i[f].bbox,h.bbox)!==null?f++:i.splice(f,1)}if(ni.type==="intersection")for(let h=0,f=i.length;h<f;h++){const p=i[h];for(let v=h+1,C=i.length;v<C;v++)if(Vd(p.bbox,i[v].bbox)===null)return[]}const s=new Rd(xr.compare);for(let h=0,f=i.length;h<f;h++){const p=i[h].getSweepEvents();for(let v=0,C=p.length;v<C;v++)if(s.insert(p[v]),s.size>Hv)throw new Error("Infinite loop when putting segment endpoints in a priority queue (queue size too big).")}const o=new QC(s);let a=s.size,u=s.pop();for(;u;){const h=u.key;if(s.size===a){const p=h.segment;throw new Error(`Unable to pop() ${h.isLeft?"left":"right"} SweepEvent [${h.point.x}, ${h.point.y}] from segment #${p.id} [${p.leftSE.point.x}, ${p.leftSE.point.y}] -> [${p.rightSE.point.x}, ${p.rightSE.point.y}] from queue.`)}if(s.size>Hv)throw new Error("Infinite loop when passing sweep line over endpoints (queue size too big).");if(o.segments.length>tS)throw new Error("Infinite loop when passing sweep line over endpoints (too many sweep line segments).");const f=o.process(h);for(let p=0,v=f.length;p<v;p++){const C=f[p];C.consumedBy===void 0&&s.insert(C)}a=s.size,u=s.pop()}dl.reset();const l=Lc.factory(o.segments);return new ZC(l).getGeom()}}const ni=new eS;var jd={union:function(r){for(var e=arguments.length,t=new Array(e>1?e-1:0),n=1;n<e;n++)t[n-1]=arguments[n];return ni.run("union",r,t)},intersection:function(r){for(var e=arguments.length,t=new Array(e>1?e-1:0),n=1;n<e;n++)t[n-1]=arguments[n];return ni.run("intersection",r,t)},xor:function(r){for(var e=arguments.length,t=new Array(e>1?e-1:0),n=1;n<e;n++)t[n-1]=arguments[n];return ni.run("xor",r,t)},difference:function(r){for(var e=arguments.length,t=new Array(e>1?e-1:0),n=1;n<e;n++)t[n-1]=arguments[n];return ni.run("difference",r,t)}};function nS(r,e){var t=Jn(r),n=Jn(e),i=r.properties||{},s=jd.difference(t.coordinates,n.coordinates);return s.length===0?null:s.length===1?Pn(s[0],i):Yh(s,i)}function rS(r,e,t){t===void 0&&(t={});var n=Jn(r),i=Jn(e),s=jd.intersection(n.coordinates,i.coordinates);return s.length===0?null:s.length===1?Pn(s[0],t.properties):Yh(s,t.properties)}function iS(r,e,t){t===void 0&&(t={});var n=Jn(r),i=Jn(e),s=jd.union(n.coordinates,i.coordinates);return s.length===0?null:s.length===1?Pn(s[0],t.properties):Yh(s,t.properties)}function qv(r,e){(r[0][0]!==r[r.length-1][0]||r[0][1]!==r[r.length-1][1]||r[0][2]!==r[r.length-1][2])&&r.push(r[0]),(e[0][0]!==e[e.length-1][0]||e[0][1]!==e[e.length-1][1]||e[0][2]!==e[e.length-1][2])&&e.push(e[0]);const t=rS(Pn([r]),Pn([e]));if(t)return t.geometry.coordinates}function Xv(r,e){(r[0][0]!==r[r.length-1][0]||r[0][1]!==r[r.length-1][1]||r[0][2]!==r[r.length-1][2])&&r.push(r[0]),(e[0][0]!==e[e.length-1][0]||e[0][1]!==e[e.length-1][1]||e[0][2]!==e[e.length-1][2])&&e.push(e[0]);const t=iS(Pn([r]),Pn([e]));if(t)return t.geometry.coordinates}function Yv(r,e=500,t="meters"){const n=OC(Br(r),e,{units:t});if(n)return n.geometry.coordinates}function Jv(r,e){(r[0][0]!==r[r.length-1][0]||r[0][1]!==r[r.length-1][1]||r[0][2]!==r[r.length-1][2])&&r.push(r[0]),(e[0][0]!==e[e.length-1][0]||e[0][1]!==e[e.length-1][1]||e[0][2]!==e[e.length-1][2])&&e.push(e[0]);const t=nS(Pn([r]),Pn([e]));if(t)return t.geometry.coordinates}function $v(r,e,t=10,n="meters"){return DC(r,e,{steps:t,units:n}).geometry.coordinates}function Bd(r,e){(r[0][0]!==r[r.length-1][0]||r[0][1]!==r[r.length-1][1]||r[0][2]!==r[r.length-1][2])&&r.push(r[0]),(e[0][0]!==e[e.length-1][0]||e[0][1]!==e[e.length-1][1]||e[0][2]!==e[e.length-1][2])&&e.push(e[0]);const t=Pn([r]),n=Pn([e]);return CE(t,n)?"oneBig":DE(t,n)?"twoBig":!1}function Kv(r){const e=ys(Qs(r,["0"])),t=ys(Qs(r,["1"])),n=ys(Qs(r,["2"])),i=Wi(Qs(r,["0"])),s=Wi(Qs(r,["1"])),o=Wi(Qs(r,["2"]));return{minPos:[e,t,n],maxPos:[i,s,o],center:[(e+i)*.5,(t+s)*.5,(n+o)*.5]}}function Zv(r){const{minPos:e,maxPos:t,center:n}=Kv(r);if(e.some(a=>!Number.isFinite(a)||t.some(u=>!Number.isFinite(u))||n.some(u=>!Number.isFinite(u)))){console.warn("geoCenterAndRadiusFromPositions error: minPos.some(e => !Number.isFinite(e) || maxPos.some(e => !Number.isFinite(e)) || center.some(e => !Number.isFinite(e))");return}const i=Ql(e,t);let s=i*.5;const o=Math.abs(e[2]-t[2]);return o!=0&&(s=Math.sqrt(i*i+o*o)*.5),{center:n,radius:s}}function Qv(r,e){const t=Vr(r),n=Vr(e);return g.Vector.distance(t,n)}function fl(r,e){const t=[],n=r.length;let i=0;for(let s=0;s<n-1;++s){if(e===void 0||e==="GEODESIC"){const o=Ql(r[s],r[s+1]),a=Math.abs(r[s][2]-r[s+1][2]);if(a===0)i+=o;else{const u=Math.sqrt(o*o+a*a);i+=u}}else if(e==="RHUMB"){const o=ym(r[s],r[s+1]),a=Math.abs(r[s][2]-r[s+1][2]);if(a===0)i+=o;else{const u=Math.sqrt(o*o+a*a);i+=u}}else if(e==="NONE"){const o=Qv(r[s],r[s+1]);i+=o}else console.warn(`未知的arcType: ${e},导致距离无法计算!`);t.push(i)}return t}function zd(r){const e="__getXyzFromPostion";let t=Xn(r,e);return(!t||!g.Vector.equals(t[0],r))&&(t=[[...r],Vr(r)],fi(r,e,t)),t[1]}class sS{constructor(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(let t=0;t<this.length;t++)this.points[t].z=this.points[t].z||0;for(let t=0;t<this.length-1;t++){const n=this.points[t],i=this.points[t+1];this.centers.push({x:(n.x+i.x)/2,y:(n.y+i.y)/2,z:(n.z+i.z)/2})}this.controls.push([this.points[0],this.points[0]]);for(let t=0;t<this.centers.length-1;t++){const n=this.points[t+1].x-(this.centers[t].x+this.centers[t+1].x)/2,i=this.points[t+1].y-(this.centers[t].y+this.centers[t+1].y)/2,s=this.points[t+1].z-(this.centers[t].z+this.centers[t+1].z)/2;this.controls.push([{x:(1-this.sharpness)*this.points[t+1].x+this.sharpness*(this.centers[t].x+n),y:(1-this.sharpness)*this.points[t+1].y+this.sharpness*(this.centers[t].y+i),z:(1-this.sharpness)*this.points[t+1].z+this.sharpness*(this.centers[t].z+s)},{x:(1-this.sharpness)*this.points[t+1].x+this.sharpness*(this.centers[t+1].x+n),y:(1-this.sharpness)*this.points[t+1].y+this.sharpness*(this.centers[t+1].y+i),z:(1-this.sharpness)*this.points[t+1].z+this.sharpness*(this.centers[t+1].z+s)}])}return this.controls.push([this.points[this.length-1],this.points[this.length-1]]),this.steps=this.cacheSteps(this.stepLength),this}cacheSteps(e){const t=[];let n=this.pos(0);t.push(0);for(let i=0;i<this.duration;i+=10){const s=this.pos(i);Math.sqrt((s.x-n.x)*(s.x-n.x)+(s.y-n.y)*(s.y-n.y)+(s.z-n.z)*(s.z-n.z))>e&&(t.push(i),n=s)}return t}vector(e){const t=this.pos(e+10),n=this.pos(e-10);return{angle:180*Math.atan2(t.y-n.y,t.x-n.x)/3.14,speed:Math.sqrt((n.x-t.x)*(n.x-t.x)+(n.y-t.y)*(n.y-t.y)+(n.z-t.z)*(n.z-t.z))}}pos(e){let t=e-this.delay;t<0&&(t=0),t>this.duration&&(t=this.duration-1);const n=t/this.duration;if(n>=1)return this.points[this.length-1];const i=Math.floor((this.points.length-1)*n),s=(this.length-1)*n-i;return oS(s,this.points[i],this.controls[i][1],this.controls[i+1][0],this.points[i+1])}}function oS(r,e,t,n,i){const s=aS(r);return{x:i.x*s[0]+n.x*s[1]+t.x*s[2]+e.x*s[3],y:i.y*s[0]+n.y*s[1]+t.y*s[2]+e.y*s[3],z:i.z*s[0]+n.z*s[1]+t.z*s[2]+e.z*s[3]}}function aS(r){const e=r*r;return[e*r,3*e*(1-r),3*r*(1-r)*(1-r),(1-r)*(1-r)*(1-r)]}function uS(r,e){e===void 0&&(e={});var t=e.resolution||1e3,n=e.sharpness||.85;const i=[],s=r.map(l=>{const[c,h,f]=Vr(l);return{x:c,y:h,z:f}});for(var o=new sS({duration:t,points:s,sharpness:n}),a=function(l){var c=o.pos(l);const h=Xh([c.x,c.y,c.z]);i.push(h)},u=0;u<o.duration;u+=10)a(u);return a(o.duration),i}function ty(r,e,t){return uS(r,{resolution:e,sharpness:t})}class ey extends ra{constructor(e){super(e)}get propUiTree(){return this.uiTree}}class Ud extends na{constructor(e,t,n){super(e,t),this._property=n}get property(){return this._property}}class Gd extends Ud{constructor(e,t){super(e,!1,t)}}class Wd extends Ud{constructor(e,t){super(e,!0,t)}get groupChildren(){return this.children}}function ny(r,e){const t=new ey(e),n=r.getProperties("chinese"),i=[];for(let s of n)if(s instanceof ut){const o=new Wd(t,s);o.d(()=>s.destroy()),t.children.push(o),i.push(o)}else{const o=new Gd(t,s);t.children.push(o),o.d(()=>s.destroy())}for(;i.length>0;){const s=i.pop();if(!s)throw new Error("should not be here!");const o=s;if(!(o.property instanceof ut))throw new Error("!(treeItem.property instanceof GroupProperty)");for(let a of o.property.children)if(a instanceof ut){const u=new Wd(t,a);u.d(()=>a.destroy()),o.groupChildren.push(u),i.push(u)}else{const u=new Gd(t,a);o.groupChildren.push(u),u.d(()=>a.destroy())}}return t.d(()=>{t.itemChildrenChanged.reset(),t.itemChildrenToChange.reset();const s=[...t.getDescendants()];s.forEach(o=>{o.children&&(o.children.length=0),o.destroy()}),s.length=0}),t}class ka extends V{constructor(t){super();d(this,"_propTreeReact",this.dv(j(void 0)));this.d(()=>this._propTreeReact.value=void 0),this.dv(new Ee(this.sceneObjectChanged,n=>{if(!n)return;const i=new V;return i.d(n.toDestroyEvent.don(()=>{this.sceneObject=void 0})),i})),this.d(this.sceneObjectChanged.don(n=>{this._propTreeReact.value=void 0,!(!n||!(n instanceof rt))&&(this._propTreeReact.value=ny(n,t))}))}get propTree(){return this._propTreeReact.value}get propTreeChanged(){return this._propTreeReact.changed}}(r=>{r.createDefaultProps=()=>({sceneObject:void 0})})(ka||(ka={})),Gi(ka.prototype,ka.createDefaultProps);function Hd(r){return vs(r,(e,t)=>e[0]===t[0]&&e[1]===t[1],e=>[...e])}function ry(r,e){const t=new Array;for(let n of r)t.push(e(n));return t}function qd(r,e){return r===void 0&&e===void 0?!0:!r||!e?!1:r[0]===e[0]&&r[1]===e[1]&&r[2]===e[2]}function iy(r,e,t){var i;((i=e.attachedViewers.values().toArray()[0])==null?void 0:i.getEngineObject(e))?t.call(r):requestAnimationFrame(()=>iy(r,e,t))}function lS(r,e,t,n=!0){n&&t(),r.dispose(e.disposableOn(t))}function cS(r,e){const{type:t,id:n}=r;if(t){const i=rt.create(t,n);if(i)return i.json=r,i;console.warn(`cannot create sceneObject from type(${t})`)}else console.warn(`cannot create sceneObject from type(${t})`)}function sy(r){const e=r.children&&fh(r.children,n=>{if(!(n instanceof yn))throw new Error("!(treeItem instanceof SceneTreeItem)");return!n.show})||!1,t=r.sceneTree.getSceneObjectShowFunc(r.sceneObject);return!e||t}class yn extends na{constructor(t,n=!1,i,s,o=!0){super(t,n,i);d(this,"_dragDrop");d(this,"_showChangedNotAffectChildren",!1);d(this,"_showChangedNotAffectParent",!1);d(this,"_type",this.dv(j("Unknown")));d(this,"_isExport",this.dv(j(!0)));const a=()=>this.tree&&this.tree.itemsChanged.emit([this]);this.dispose(this.nameChanged.disposableOn(a)),this.name=`未命名条目(${this.id})`,this.extras=s,this._isExport.value=o;let u;const l=()=>{u&&(u(),u=void 0)};this.dispose(l),this.dispose(this.sceneObjectChanged.disposableOn(c=>{l(),c&&(u=nt([this,"name"],[c,"name"]))})),this.dispose(this.showChanged.disposableOn(c=>{if(t.setSceneObjectShowFunc(this.sceneObject,c),this.tree&&this.tree.forceRedraw(),this.children&&!this._showChangedNotAffectChildren)for(let h of this.children)h instanceof yn&&(h._showChangedNotAffectParent=!0,h.show=c,h._showChangedNotAffectParent=!1);this.parent&&this.parent instanceof yn&&!this._showChangedNotAffectParent&&(this.parent._showChangedNotAffectChildren=!0,this.parent.show=sy(this.parent),this.parent._showChangedNotAffectChildren=!1)})),this.dv(new Ee(this.sceneObjectChanged,()=>{if(!this.sceneObject)return;const c=new V;if("show"in this.sceneObject&&"showChanged"in this.sceneObject&&this.sceneObject.showChanged instanceof O){const h=()=>{this.show=t.getSceneObjectShowFunc(this.sceneObject)};h(),c.dispose(this.sceneObject.showChanged.disposableOn(h))}else if("enabled"in this.sceneObject&&"enabledChanged"in this.sceneObject&&this.sceneObject.enabledChanged instanceof O){const h=()=>{this.show=t.getSceneObjectShowFunc(this.sceneObject)};h(),c.dispose(this.sceneObject.enabledChanged.disposableOn(h))}return c})),this.childrenChangedEvent.disposableOn(()=>{const c=sy(this);this._showChangedNotAffectChildren=!0,this.show=c,this._showChangedNotAffectChildren=!1});{const c=()=>{let h="Unknown";this.sceneObject?h=this.sceneObject.typeName:this.children&&(h="Folder"),this._type.value=h};this.dispose(this.sceneObjectChanged.disposableOn(c)),this.dispose(this.childrenResetedEvent.disposableOn(c)),c()}}get dragDrop(){return this._dragDrop||(this._dragDrop=this.dv(this.sceneTree.createTreeItemDragDropFunc(this))),this._dragDrop}get type(){return this._type.value}get typeChanged(){return this._type.changed}get isExport(){return this._isExport.value}get isExportChanged(){return this._isExport.changed}set isExport(t){this._isExport.value=t}get sceneTree(){return this.tree}get jsonStr(){return JSON.stringify(this.json,void 0," ")}set jsonStr(t){try{this.json=JSON.parse(t)}catch(n){console.error(`sceneTreeItem.jsonStr error ${n}`,n)}}get completeJson(){const t=this.children&&[...this.children].filter(n=>n.isExport).map(n=>n.completeJson);return{name:this.name,show:this.show?void 0:!1,collapsed:this.uiTreeObject.collapsed?!0:void 0,sceneObj:this.sceneObject&&this.sceneObject.completeJson,children:t,extras:this.extras}}get json(){const t=this.children&&[...this.children].filter(n=>n.isExport).map(n=>n.json);return{name:this.name,show:this.show?void 0:!1,collapsed:this.uiTreeObject.collapsed?!0:void 0,sceneObj:this.sceneObject&&this.sceneObject.json,children:t,extras:this.extras}}set json(t){if(t.name!==void 0&&(this.name=t.name),this.extras=t.extras,this._showChangedNotAffectChildren=!0,this._showChangedNotAffectParent=!0,this.show=t.show??!0,this._showChangedNotAffectChildren=!1,this._showChangedNotAffectParent=!1,this.uiTreeObject.collapsed=t.collapsed??!1,this.sceneObject=void 0,t.sceneObj&&(this.sceneObject=this.sceneTree.createSceneObjectFunc(t.sceneObj,this)),!!t.children){if(this.resetChildren(!0),!this.children)throw new Error("resetChildren(true) cannot get children!");for(let n of t.children){const i=new yn(this.tree,!0);i.json=n,this.children.push(i)}}}clone(){try{const t=new yn(this.sceneTree,!!this.children,void 0,this.extras,this.isExport);return t.json=this.json,t.name=this.sceneTree.getSceneTreeItemCloneNameFunc(this),t}catch(t){console.error(`SceneTreeItem.clone error: ${t}`,t)}}insertNewTreeItem(t,n){if(t==="FolderInnerOrAfter"||t==="FolderInnerOrBefore"||t==="FolderInner"){if(n&&n.tree!==this.tree)return console.warn("newTreeItem.tree !== this.tree"),!1;if(this.children&&!(t.includes("Or")&&this.sceneObject))return n&&this.children.push(n),!0;if(t==="FolderInner")return!1;if(t==="FolderInnerOrAfter")return super.insertNewTreeItem("After",n);if(t==="FolderInnerOrBefore")return super.insertNewTreeItem("Before",n);throw new Error("should not be here!")}else return super.insertNewTreeItem(t,n)}}(r=>{r.createDefaultProps=()=>({name:"未命名条目",nameEditing:!1,sceneObject:void 0,show:!0,extras:Qt(void 0)})})(yn||(yn={})),Gi(yn.prototype,yn.createDefaultProps);function oy(r,e,t){let{offsetY:n}=e;if(!e.target||!("clientTop"in e.target))return"none";n+=2,n+=e.target.clientTop;let i="none";return r.children?n<=t*.3?i="before":n>=t*.7?!r.uiTreeObject.collapsed&&r.children.length>0?i="inner":i="after":i="inner":n<=t*.5?i="before":i="after",i}class ay extends kg{constructor(e){super(),this._treeItem=e;const{dragStartDataManager:t}=this._treeItem.sceneTree;let n="none";const i=this.disposeVar(Vp(()=>{this._treeItem.uiTreeObject.moveToPositionMode=n,console.log(`uiTreeObject.moveToPositionMode = lastDragMode(${n});`)},200));function s(o){n!==o&&(n=o,i.restart())}this.dispose(this._dragStartEvent.disposableOn(o=>{t.data={type:"UITreeA",value:this._treeItem}})),this.dispose(this._dragOverEvent.disposableOn(o=>{if(!o.dataTransfer)return;o.preventDefault();const a=t;if(a.data&&a.data.type==="UITreeA"&&a.data.value!==void 0){const u=a.data.value,l=this._treeItem,{tree:c}=l;if(c){const h=[...c.selectedItems];~h.indexOf(u)||h.push(u);const f=oy(l,o,c.itemDivHeight);if(f!=="none"&&ra.canMoveToTreeItems(h,l,f)){o.dataTransfer.dropEffect="move",s(f);return}}}o.dataTransfer.dropEffect="none",s("none")})),this.dispose(this._dropEvent.disposableOn(o=>{const a=t;if(!(a.data&&a.data.type==="UITreeA"&&a.data.value!==void 0))return;const u=a.data.value,l=this._treeItem,{tree:c}=l;if(!c)return;const h=[...c.selectedItems];~h.indexOf(u)||h.push(u);const f=oy(l,o,c.itemDivHeight);f!=="none"&&ra.canMoveToTreeItems(h,l,f)&&(ra.moveToTreeItems(h,l,f),a.data=void 0,s("none"))})),this.dispose(this._dragLeaveEvent.disposableOn(()=>{n="none",i.restart()}))}}function hS(r){if(!(r instanceof yn))throw new Error("defaultCreateTreeItemDragDrop !(treeItem instanceof SceneTreeItem)");return new ay(r)}function dS(r){let e=!1;return r&&("show"in r?e=r.show??!0:"enabled"in r&&(e=r.enabled??!0)),e}function fS(r,e){r&&("show"in r?r.show=e:"enabled"in r&&(r.enabled=e))}const pS=["EnvironmentVariables","ScriptsLoader","SceneScript","ScriptLoader"];function gS(r){const e=[],{root:t={}}=r,n=[t];for(;n.length>0;){const i=n.pop();if(!i)throw new Error("!todo");if(i.children){for(let s of i.children)if(s.children&&n.unshift(s),s.sceneObj){const{type:o=void 0}=s.sceneObj;o||(console.warn("sceneObjJson has no type! treeItem.sceneObj: "),console.warn(s.sceneObj)),o&&pS.includes(o)&&e.push(s.sceneObj)}}}return e}async function mS(r,e){const t=gS(r);let n=0;const i=t.length;for(let s of t)if(++n,e){const o=n/i;e(o,n,i)}}class uy extends V{constructor(t,n){super();d(this,"treeItemContexMenuCallback");this._sceneTree=t,this._projectManager=n}get sceneTree(){return this._sceneTree}}class vS extends V{constructor(t){super();d(this,"_jsonLoadingEvent",this.disposeVar(new O));d(this,"_setJsonProcessing",this.disposeVar(Yn(async(t,n)=>{this._jsonLoadingEvent.emit({type:"init"}),this._jsonLoadingEvent.emit({type:"loading"}),n&&await t.promise(this._sceneTree.preloadFunc(n)),this._setJson(n),this._jsonLoadingEvent.emit({type:"loaded"})})));this._sceneTree=t,this._setJsonProcessing.errorFunc=n=>{this._jsonLoadingEvent.emit({type:"error",error:n})}}get jsonLoadingEvent(){return this._jsonLoadingEvent}_setJson(t){try{this._sceneTree.setJson(t||{})}catch(n){console.error(`json数据装配时发生错误!error: ${n}`)}}get json(){return this._sceneTree.getJson()}set json(t){this._setJsonProcessing.restart(new Fr("JSON重新赋值!"),t)}get jsonStr(){return JSON.stringify(this.json,void 0," ")}set jsonStr(t){this.json=JSON.parse(t)}}function yS(r){return r.name+"_clone"}function Xd(r,e,t){if(r instanceof yn)return r.insertNewTreeItem(e,t);{const n={FolderInnerOrAfter:"InnerOrAfter",FolderInnerOrBefore:"InnerOrBefore",FolderInner:"Inner",InnerOrAfter:"InnerOrAfter",InnerOrBefore:"InnerOrBefore",Inner:"Inner",After:"After",Before:"Before"};return r.insertNewTreeItem(n[e],t)}}function _S(r){[r,...r.getDescendants()].forEach(e=>e.destroy())}const Hn=class Hn extends ra{constructor(t,n,i,s){super(i);d(this,"_jsonLoading",this.disposeVar(new vS(this)));d(this,"createSceneObjectFunc",Hn.defaultCreateSceneObjectFunc);d(this,"createTreeItemDragDropFunc",Hn.defaultCreateTreeItemDragDropFunc);d(this,"preloadFunc",Hn.defaultPreload);d(this,"getSceneObjectShowFunc",Hn.defaultGetSceneObjectShow);d(this,"setSceneObjectShowFunc",Hn.defaultSetSceneObjectShow);d(this,"getSceneTreeItemCloneNameFunc",Hn.defaultGetSceneTreeItemCloneNameFunc);d(this,"debug",!1);d(this,"_contextMenu",this.disposeVar(new uy(this,this.projectManager)));d(this,"_showPropUiOnSelecting",this.disposeVar(j(!0)));this._name=t,this._dragStartDataManager=n,this._projectManager=s,this.dispose(this.selectedItems.changedEvent.disposableOn(()=>{var a,u;globalThis.lssn=this.lastSelectedItem,globalThis.lsso=(a=this.lastSelectedItem)==null?void 0:a.sceneObject,this.debug&&console.log(((u=this.lastSelectedItem)==null?void 0:u.sceneObject)??"select null")}));const{sceneObjectsManager:o}=this._projectManager;this.dispose(this.itemsDeleted.disposableOn(a=>{for(let u of a){const l=u,{sceneObject:c}=l;c&&o.deleteSceneObject(c)&&c.destroy()&&ql(c,void 0);for(let h of l.getDescendants()){const{sceneObject:f}=h;f&&o.deleteSceneObject(f)&&f.destroy()&&ql(f,void 0)}_S(u)}})),this.dispose(this.itemsAdded.disposableOn(a=>{for(let u of a){const l=u;l.sceneObject&&o.addSceneObject(l.sceneObject)&&ql(l.sceneObject,l)}})),this.dispose(this.selectedItems.changedEvent.disposableOn(()=>{if(!this.showPropUiOnSelecting)return;this._projectManager.propUiTreeManager.sceneObject=void 0;const{lastSelectedItem:a}=this;a&&(this._projectManager.propUiTreeManager.sceneObject=a.sceneObject)}))}get json(){return this._jsonLoading.json}set json(t){this._jsonLoading.json=t}get jsonStr(){return this._jsonLoading.jsonStr}set jsonStr(t){this._jsonLoading.jsonStr=t}get jsonLoadingEvent(){return this._jsonLoading.jsonLoadingEvent}get name(){return this._name}get projectManager(){return this._projectManager}get contextMenu(){return this._contextMenu}get showPropUiOnSelecting(){return this._showPropUiOnSelecting.value}set showPropUiOnSelecting(t){this._showPropUiOnSelecting.value=t}get showPropUiOnSelectingChanged(){return this._showPropUiOnSelecting.changed}get sceneUiTree(){return this.uiTree}getTreeItemFromSceneObjId(t){const n=this.getDescendants();let i;for(let s of n)if(s.sceneObject&&s.sceneObject.id===t){i=s;break}return i}getTreeItemsFromSceneObjType(t){const n=this.getDescendants(),i=[],s=Array.isArray(t)?t:[t];for(let o of n)o.sceneObject&&s.includes(o.sceneObject.typeName)&&i.push(o);return i}getTreeItemsFromSceneObjName(t){var s;const n=this.getDescendants(),i=[];for(let o of n)(s=o.sceneObject)!=null&&s.name.includes(t)&&i.push(o);return i}get dragStartDataManager(){return this._dragStartDataManager}get completeJson(){return{root:{children:[...this.children].filter(t=>t.isExport).map(t=>t.completeJson)}}}getJson(){return{root:{children:[...this.children].filter(t=>t.isExport).map(t=>t.json)}}}setJson(t){var i;t.root=t.root||{};const n=t.root.children??[];this.root.resetChildren(!0);for(let s of n){const o=new yn(this,!0);o.json=s,(i=this.root.children)==null||i.push(o)}}testAddNewTreeItem(t,n){const i=t||this.lastSelectedItem||this.root;return i?Xd(i,n):!1}addNewTreeItem(t,n,i,s){const o=t||this.lastSelectedItem||this.root;if(o&&Xd(o,n)){const a=new yn(this,i);if(a.sceneObject=s,!Xd(o,n,a))throw new Error("currentTreeItem.insertNewTreeItem return false!");return a}}createSceneObjectTreeItem(t,n,i,s){const o=s??"FolderInnerOrAfter";if(!this.testAddNewTreeItem(i,o)){console.warn(`cannot addNewTreeItem! currentTreeItem(${i?i.id:"root"})`);return}const a=rt.create(t,n);return a?this.addNewTreeItem(i,s??"FolderInnerOrAfter",!0,a):void 0}createGroupTreeItem(t,n,i,s){const o=s??"FolderInnerOrAfter";if(!this.testAddNewTreeItem(i,o)){console.warn(`cannot addNewTreeItem! currentTreeItem(${i?i.id:"root"})`);return}const a=this.addNewTreeItem(i,s??"FolderInnerOrAfter",!0);if(!a){console.warn("addNewTreeItem error!");return}return a.name=t??"未命名组节点",a}createSceneObjectTreeItemFromClass(t,n,i,s){const o=s??"FolderInnerOrAfter";if(!this.testAddNewTreeItem(i,o))return;const a=rt.createFromClass(t,n);return a?this.addNewTreeItem(i,o,!0,a):void 0}createSceneObjectTreeItemFromJson(t,n,i){const s=i??"FolderInnerOrAfter";if(!this.testAddNewTreeItem(n,s))return;const o=rt.createFromJson(t);return console.log(o),o?this.addNewTreeItem(n,i??"FolderInnerOrAfter",!0,o):void 0}destroySceneObjectTreeItem(t){if(t===this.root){console.warn("cannot destroy root! please use function destroyAllSceneObjectTreeItems!");return}t.detachFromParent()}destroyAllSceneObjectTreeItems(){if(!this.root.children)return;const t=[...this.root.children];for(let n of t)this.destroySceneObjectTreeItem(n)}};d(Hn,"defaultCreateSceneObjectFunc",cS),d(Hn,"defaultCreateTreeItemDragDropFunc",hS),d(Hn,"defaultPreload",mS),d(Hn,"defaultGetSceneObjectShow",dS),d(Hn,"defaultSetSceneObjectShow",fS),d(Hn,"defaultGetSceneTreeItemCloneNameFunc",yS);let pl=Hn;const Yd={saturation:.35,brightness:1.4,gamma:.8,atmosphereScatteringIntensity:5,groundColor:[0,.09411764705882353,.3137254901960784,1]};class wS extends V{constructor(t){super();d(this,"_currentPosition",this.disposeVar(re(void 0)));d(this,"_currentRotation",this.disposeVar(re(void 0)));d(this,"_currentHeading",this.disposeVar(j(void 0)));d(this,"_isRotating",this.disposeVar(j(!1)));d(this,"_isGround",this.disposeVar(j(!1)));d(this,"_startPosition",[0,0,0]);d(this,"_startRotation",[0,0,0]);d(this,"_processing",this.disposeVar(Yn(async(t,n,i,s)=>{const{currentPosition:o,currentRotation:a}=this;if(!o||s<=0||!a){this._currentPosition.value=n,this._currentRotation.value=i;return}const u=this._startPosition;u.splice(0,3,...o);const l=this._startRotation;l.splice(0,3,...a);let c=Date.now();const h=Bu(u,n);this._currentHeading.value=h;const p=Ql(u,n)/s,v=[i[0]-l[0],i[1]-l[1],i[2]-l[2]],C=n[2]-u[2];await t.promise(new Promise(S=>{t.disposer.dispose(Rl(async()=>{let P=Date.now()-c;P=P<0?0:P,P=P>s?s:P;const y=P*p,_=om(u,y,h);if(this.isGround&&_){const m=await this._esviewer.getTerrainHeight([_[0],_[1]]);this._currentPosition.value=[_[0],_[1],m??0]}else _&&(_[2]+=C*(P/s)),this._currentPosition.value=_;if(this.isRotating){const[m,w,E]=v,b=P/s;this._currentRotation.value=[l[0]+m*b,l[1]+w*b,l[2]+E*b]}P===s&&(this._currentPosition.value=n,this.isRotating&&(this._currentRotation.value=i),this.isRotating=!1,this.isGround=!1,S())}))}))})));this._esviewer=t}get currentPosition(){return this._currentPosition.value}get currentPositionChanged(){return this._currentPosition.changed}get currentRotation(){return this._currentRotation.value}get currentRotationChanged(){return this._currentRotation.changed}get currentHeading(){return this._currentHeading.value}get currentHeadingChanged(){return this._currentHeading.changed}get isRotating(){return this._isRotating.value}set isRotating(t){this._isRotating.value=t}get isRotatingChanged(){return this._isRotating.changed}get isGround(){return this._isGround.value}set isGround(t){this._isGround.value=t}get isGroundChanged(){return this._isGround.changed}get processing(){return this._processing}restart(t,n,i){this._processing.restart(void 0,t,n,i)}cancel(){this._processing.cancel()}}function ly(r){let e=0;function t(n,i){i++,e=Math.max(i,e),n.forEach(s=>{Array.isArray(s)&&t(s,i)})}return t(r,0),e}const Di=class Di extends Ht{constructor(t){super(t);d(this,"editingBindMode","lineString");d(this,"_area",this.dv(j(0)));d(this,"_perimeter",this.dv(j(0)));this.d(Ui(this.pointsChanged,()=>{this._updateArea(),this._updatePerimeter()},{immediate:!0}))}updateEditing(){var n;const t=[];this.editingBindMode=="doublePoints"?t.push(et.DoublePointsAppend,et.DoublePointsModify):this.editingBindMode=="lineString"?t.push(et.LineStringAppend,et.LineStringInsert,et.Translation):this.editingBindMode=="circular"?(t.push(et.CircularAppend,et.CircularInsert,et.Translation),this.supportEditingModes().includes(et.HeightModify)&&t.push(et.HeightModify)):this.editingBindMode=="visibility"?t.push(et.VisibilityAppend,et.VisibilityModify):this.editingBindMode=="scatter"&&t.push(et.ScatterAppend,et.ScatterModify),(n=this.activeViewer)==null||n.startEditing(this,t,{callSource:"inner"})}get area(){return this._area.value}get areaChanged(){return this._area.changed}get perimeter(){return this._perimeter.value}get perimeterChanged(){return this._perimeter.changed}_updateArea(){this._area.value=this.getArea()??0}_updatePerimeter(){this._perimeter.value=this.getPerimeter()??0}getArea(){if(this.points&&this.points.length>=3)return td([...this.points])}getDistance(){if(this.points&&this.points.length>=2){const t=fl(this.points,"GEODESIC");return t[t.length-1]}else return}getPerimeter(){if(this.points&&this.points.length>=3){const t=[...this.points,this.points[0]],n=fl(t,"GEODESIC");return n[n.length-1]}else return}getIntersect(t){if(this.points&&this.points.length>=3&&t.length>=3){const n=qv(this.points,t);if(!n)return;const i=n[0][0][0];if(Array.isArray(i)){const s=[...n],o=[];return s.forEach(a=>{const u=a[0].map(l=>[...l,0]);o.push(u)}),o}else return[[...n][0].map(a=>[...a,0])]}else return}getUnion(t){if(this.points&&this.points.length>=3&&t.length>=3){const n=Xv(this.points,t);if(!n)return;const i=n[0][0][0];if(Array.isArray(i)){const s=[...n],o=[];return s.forEach(a=>{const u=a[0].map(l=>[...l,0]);o.push(u)}),o}else return[[...n][0].map(a=>[...a,0])]}else return}getDifference(t){if(this.points&&this.points.length>=3&&t.length>=3){let n=[...t];const i=t[0],s=t[t.length-1];i[0]===s[0]&&i[1]===s[1]&&i[2]===s[2]||n.push(i);const o=Jv([...this.points,this.points[0]],[...n]);if(!o)return{status:"undefined",positions:void 0};const a=[...o];if(ly(a)===3){const u=a.map(f=>f.map(p=>[...p,0]));if(u.length<=1)return{status:"notIncluded",positions:u};const l=u[0],c=u[1];return Bd([...l],[...c])==="oneBig"?{status:"included",positions:u}:{status:"notIncluded",positions:u}}else if(ly(a)===4){const l=[...a.map(h=>h.map(f=>f.map(p=>[...p,0])))],c=[];return l.forEach(h=>{c.push(h[0])}),{status:"notIncluded",positions:c}}else return{status:"undefined",positions:void 0}}else return{status:"undefined",positions:void 0}}getBuffer(t=500,n){if(this.points&&this.points.length>=2){const i=Yv(this.points,t,n);return i?[i[0].map(s=>[...s,0])]:void 0}else return}geoPolygonOverlap(t){if(this.points&&this.points.length>=3&&t.length>=3){const n=Bd(this.points,t);return n==="oneBig"?!0:n==="twoBig"?!1:void 0}else return}getESProperties(){const t={...super.getESProperties()};return{...t,defaultMenu:"style",coordinate:[...t.coordinate,new X([this,"editing"],"编辑",!1),new it([this,"points"],"位置数组",Di.defaults.points,void 0,!0)],style:[...t.style,new ut([],"点样式"),new X([this,"pointed"],"开启",!1),new M([this,"pointSize"],"点大小",1),new Pt([this,"pointSizeType"],[["screen","screen"],["world","world"]],"点类型","screen"),new Mt([this,"pointColor"],"点颜色",[1,1,1,1]),new Mt([this,"pointOutlineColor"],"轮廓颜色",Di.defaults.pointStyle.outlineColor),new M([this,"pointOutlineWidth"],"轮廓宽度",Di.defaults.pointStyle.outlineWidth),new ut([],"线样式"),new X([this,"stroked"],"开启线样式",!0),new X([this,"strokeGround"],"贴地",!1),new M([this,"strokeWidth"],"线宽",1),new Pt([this,"strokeWidthType"],[["screen","screen"],["world","world"]],"线类型","screen"),new Mt([this,"strokeColor"],"线颜色",[1,1,1,1]),new ut([],"面样式"),new X([this,"filled"],"开启",!1),new X([this,"fillGround"],"贴地",!1),new Mt([this,"fillColor"],"填充颜色",[1,1,1,1])],more:[...t.more,new ut([],"点样式集合"),new pt([this,"pointMaterial"],"点材质"),new it([this,"pointMaterialParams"],"点材质参数"),new ut([],"线样式集合"),new pt([this,"strokeMaterial"],"线材质"),new it([this,"strokeMaterialParams"],"线材质参数"),new ut([],"面样式集合"),new pt([this,"fillMaterial"],"面材质"),new it([this,"fillMaterialParams"],"面材质参数")]}}get pointSize(){return this.pointStyle.size}set pointSize(t){this.pointStyle={...this.pointStyle,size:t}}get pointSizeChanged(){return this.pointStyleChanged}get pointSizeType(){return this.pointStyle.sizeType}set pointSizeType(t){this.pointStyle={...this.pointStyle,sizeType:t}}get pointSizeTypeChanged(){return this.pointStyleChanged}get pointColor(){return this.pointStyle.color}set pointColor(t){this.pointStyle={...this.pointStyle,color:[...t]}}get pointColorChanged(){return this.pointStyleChanged}get pointOutlineColor(){return this.pointStyle.outlineColor}set pointOutlineColor(t){this.pointStyle={...this.pointStyle,outlineColor:[...t]}}get pointOutlineColorChanged(){return this.pointStyleChanged}get pointOutlineWidth(){return this.pointStyle.outlineWidth}set pointOutlineWidth(t){this.pointStyle={...this.pointStyle,outlineWidth:t}}get pointOutlineWidthChanged(){return this.pointStyleChanged}get pointMaterial(){return this.pointStyle.material}set pointMaterial(t){this.pointStyle={...this.pointStyle,material:t}}get pointMaterialChanged(){return this.pointStyleChanged}get pointMaterialParams(){return this.pointStyle.materialParams}set pointMaterialParams(t){this.pointStyle={...this.pointStyle,materialParams:t}}get pointMaterialParamsChanged(){return this.pointStyleChanged}get strokeWidth(){return this.strokeStyle.width}set strokeWidth(t){this.strokeStyle={...this.strokeStyle,width:t}}get strokeWidthChanged(){return this.strokeStyleChanged}get strokeWidthType(){return this.strokeStyle.widthType}set strokeWidthType(t){this.strokeStyle={...this.strokeStyle,widthType:t}}get strokeWidthTypeChanged(){return this.strokeStyleChanged}get strokeColor(){return this.strokeStyle.color}set strokeColor(t){this.strokeStyle={...this.strokeStyle,color:[...t]}}get strokeColorChanged(){return this.strokeStyleChanged}get strokeMaterial(){return this.strokeStyle.material}set strokeMaterial(t){this.strokeStyle={...this.strokeStyle,material:t}}get strokeMaterialChanged(){return this.strokeStyleChanged}get strokeMaterialParams(){return this.strokeStyle.materialParams}set strokeMaterialParams(t){this.strokeStyle={...this.strokeStyle,materialParams:t}}get strokeMaterialParamsChanged(){return this.strokeStyleChanged}get strokeGround(){return this.strokeStyle.ground}set strokeGround(t){this.strokeStyle={...this.strokeStyle,ground:t}}get strokeGroundChanged(){return this.strokeStyleChanged}get fillColor(){return this.fillStyle.color}set fillColor(t){this.fillStyle={...this.fillStyle,color:[...t]}}get fillColorChanged(){return this.fillStyleChanged}get fillMaterial(){return this.fillStyle.material}set fillMaterial(t){this.fillStyle={...this.fillStyle,material:t}}get fillMaterialChanged(){return this.fillStyleChanged}get fillMaterialParams(){return this.fillStyle.materialParams}set fillMaterialParams(t){this.fillStyle={...this.fillStyle,materialParams:t}}get fillMaterialParamsChanged(){return this.fillStyleChanged}get fillGround(){return this.fillStyle.ground}set fillGround(t){this.fillStyle={...this.fillStyle,ground:t}}get fillGroundChanged(){return this.fillStyleChanged}};d(Di,"createDefaultProps",()=>({...Ht.createDefaultProps(),pointed:!1,pointStyle:wt({size:10,sizeType:"screen",color:[1,1,1,1],material:"",materialParams:{},outlineColor:[1,0,0,1],outlineWidth:2}),stroked:!1,strokeStyle:wt({width:1,widthType:"screen",color:[1,1,1,1],material:"",materialParams:{},ground:!1}),filled:!1,fillStyle:wt({color:[1,1,1,1],material:"",materialParams:{},ground:!1}),points:Nl([])})),d(Di,"type",Di.register("ESGeoVector",Di,{chsName:"地理矢量",tags:["ESObjects"],description:"地理矢量"})),d(Di,"supportEditingModes",[...Ht.supportEditingModes,et.Translation]);let It=Di;const To=class To extends Ht{constructor(){super(...arguments);d(this,"_statusDis",this.dv(j(!0)));d(this,"_smoothMoveEvent",this.dv(new O));d(this,"_smoothMoveWithRotationEvent",this.dv(new O));d(this,"_smoothMoveOnGroundEvent",this.dv(new O));d(this,"_smoothMoveWithRotationOnGroundEvent",this.dv(new O));d(this,"_automaticLandingEvent",this.dv(new O));d(this,"_smoothMoveKeepPitchEvent",this.dv(new O));d(this,"_smoothMoveRelativelyEvent",this.dv(new O));d(this,"_smoothMoveRelativelyWithRotationEvent",this.dv(new O));d(this,"useCalcFlyToParamInESObjectWithLocation",!0)}updateEditing(){var n;const t=[];this.editingBindMode=="singlePoint"?(t.push(et.Place,et.Translation),["ESLocationMeasurement"].includes(this.typeName)||t.push(et.Rotation),["ESClippingPlane","ESLocationMeasurement","ESLocalRectangle","ESBoxClipping"].includes(this.typeName)||t.push(et.Scale)):this.editingBindMode=="doublePoints"&&t.push(et.DoublePointsAppend,et.DoublePointsModify),(n=this.activeViewer)==null||n.startEditing(this,t,{callSource:"inner"})}get statusDis(){return this._statusDis.value}get statusDisChanged(){return this._statusDis.changed}get smoothMoveEvent(){return this._smoothMoveEvent}smoothMove(t,n){this._smoothMoveEvent.emit(t,n)}get smoothMoveWithRotationEvent(){return this._smoothMoveWithRotationEvent}smoothMoveWithRotation(t,n,i){this._smoothMoveWithRotationEvent.emit(t,n,i)}get smoothMoveOnGroundEvent(){return this._smoothMoveOnGroundEvent}smoothMoveOnGround(t,n,i,s){this._smoothMoveOnGroundEvent.emit(t,n,i,s)}get smoothMoveWithRotationOnGroundEvent(){return this._smoothMoveWithRotationOnGroundEvent}smoothMoveWithRotationOnGround(t,n,i,s,o){this._smoothMoveWithRotationOnGroundEvent.emit(t,n,i,s,o)}get automaticLandingEvent(){return this._automaticLandingEvent}automaticLanding(){const t=this.collision;this.collision=!1,setTimeout(()=>{this._automaticLandingEvent.emit(t)},100)}get smoothMoveKeepPitchEvent(){return this._smoothMoveKeepPitchEvent}smoothMoveKeepPitch(t,n){this._smoothMoveKeepPitchEvent.emit(t,n)}get smoothMoveRelativelyEvent(){return this._smoothMoveRelativelyEvent}smoothMoveRelatively(t,n){this._smoothMoveRelativelyEvent.emit(t,n)}get smoothMoveRelativelyWithRotationEvent(){return this._smoothMoveRelativelyWithRotationEvent}smoothMoveRelativelyWithRotation(t,n,i){this._smoothMoveRelativelyWithRotationEvent.emit(t,n,i)}getESProperties(){const t={...super.getESProperties()};return{...t,defaultMenu:"basic",location:[...t.location,new X([this,"editing"],"是否编辑"),new lt([],()=>this.automaticLanding(),[],"自动落地"),new ia([this,"position"],"位置数组",[0,0,0]),new Gh([this,"rotation"],"姿态数组",[0,0,0]),new cn([this,"scale"],"缩放",[1,1,1]),new M([this,"minVisibleDistance"],"最小可见距离",0),new M([this,"maxVisibleDistance"],"最大可见距离",0)],more:[...t.more,new lt(["numbers","number"],(n,i)=>this.smoothMove(n,i),[[0,0,0],0],"平滑移动","smoothMove"),new lt(["numbers","number"],(n,i)=>this.smoothMoveKeepPitch(n,i),[[0,0,0],0],"固定方向平滑移动","smoothMoveKeepPitch"),new lt(["numbers","numbers","number"],(n,i,s)=>this.smoothMoveWithRotation(n,i,s),[[0,0,0],[0,0,0],0],"平滑偏移","smoothMoveWithRotation"),new lt(["number","number","number","string"],(n,i,s,o)=>this.smoothMoveOnGround(n,i,s,o),[0,0,0,""],"贴地平滑移动","smoothMoveOnGround"),new lt(["numbers","number","number","number","string"],(n,i,s,o,a)=>this.smoothMoveWithRotationOnGround(n,i,s,o,a),[[0,0,0],0,0,0,""],"贴地平滑偏移","smoothMoveWithRotationOnGround"),new lt(["numbers","number"],(n,i)=>this.smoothMoveRelatively(n,i),[[0,0,0],0],"smoothMoveRelatively","smoothMoveRelatively"),new lt(["numbers","numbers","number"],(n,i,s)=>this.smoothMoveRelativelyWithRotation(n,i,s),[[0,0,0],[0,0,0],0],"smoothMoveRelativelyWithRotation","smoothMoveRelativelyWithRotation"),new X([this,"enableVisibleDistance"],"是否应用距离显隐")]}}get pointSize(){return this.pointStyle.size}set pointSize(t){this.pointStyle={...this.pointStyle,size:t}}get pointSizeChanged(){return this.pointStyleChanged}get pointSizeType(){return this.pointStyle.sizeType}set pointSizeType(t){this.pointStyle={...this.pointStyle,sizeType:t}}get pointSizeTypeChanged(){return this.pointStyleChanged}get pointColor(){return this.pointStyle.color}set pointColor(t){this.pointStyle={...this.pointStyle,color:[...t]}}get pointColorChanged(){return this.pointStyleChanged}get pointMaterial(){return this.pointStyle.material}set pointMaterial(t){this.pointStyle={...this.pointStyle,material:t}}get pointMaterialChanged(){return this.pointStyleChanged}get pointMaterialParams(){return this.pointStyle.materialParams}set pointMaterialParams(t){this.pointStyle={...this.pointStyle,materialParams:t}}get pointMaterialParamsChanged(){return this.pointStyleChanged}};d(To,"createDefaultProps",()=>({...Ht.createDefaultProps(),pointed:!1,pointStyle:wt({size:1,sizeType:"screen",color:[1,1,1,1],material:"",materialParams:{},outlineColor:[1,0,0,1],outlineWidth:2}),position:dt([0,0,0]),rotation:dt([0,0,0]),scale:dt([1,1,1]),minVisibleDistance:j(0),maxVisibleDistance:j(0)})),d(To,"type",To.register("ESObjectWithLocation",To,{chsName:"对象位置",tags:["ESObjects"],description:"对象位置"})),d(To,"supportEditingModes",[...Ht.supportEditingModes,et.Place,et.Translation,et.Rotation,et.Scale,et.DoublePointsAppend,et.DoublePointsModify]);let st=To;const Wa=class Wa extends st{getESProperties(){const e={...super.getESProperties()};return{...e,style:[...e.style,new ut([],"点样式集合"),new X([this,"pointed"],"开启点样式",!1),new M([this,"pointSize"],"点大小",1),new Pt([this,"pointSizeType"],[["screen","screen"],["world","world"]],"点类型","screen"),new Mt([this,"pointColor"],"点颜色",[1,1,1,1]),new ut([],"线样式集合"),new X([this,"stroked"],"开启线样式",!1),new X([this,"strokeGround"],"是否贴地(线)",!1),new M([this,"strokeWidth"],"线宽",1),new Pt([this,"strokeWidthType"],[["screen","screen"],["world","world"]],"线类型","screen"),new Mt([this,"strokeColor"],"线颜色",[1,1,1,1]),new ut([],"面样式集合"),new X([this,"filled"],"开启填充样式",!1),new X([this,"fillGround"],"是否贴地",!1),new Mt([this,"fillColor"],"填充颜色",[1,1,1,1])],more:[...e.more,new ut([],"点样式"),new pt([this,"pointMaterial"],"点材质",""),new it([this,"pointMaterialParams"],"点材质参数",{}),new ut([],"线样式"),new pt([this,"strokeMaterial"],"线材质",""),new it([this,"strokeMaterialParams"],"线材质参数",{}),new ut([],"填充样式"),new pt([this,"fillMaterial"],"面材质",""),new it([this,"fillMaterialParams"],"面材质参数",{})]}}get strokeWidth(){return this.strokeStyle.width}set strokeWidth(e){this.strokeStyle={...this.strokeStyle,width:e}}get strokeWidthChanged(){return this.strokeStyleChanged}get strokeWidthType(){return this.strokeStyle.widthType}set strokeWidthType(e){this.strokeStyle={...this.strokeStyle,widthType:e}}get strokeWidthTypeChanged(){return this.strokeStyleChanged}get strokeColor(){return this.strokeStyle.color}set strokeColor(e){this.strokeStyle={...this.strokeStyle,color:[...e]}}get strokeColorChanged(){return this.strokeStyleChanged}get strokeMaterial(){return this.strokeStyle.material}set strokeMaterial(e){this.strokeStyle={...this.strokeStyle,material:e}}get strokeMaterialChanged(){return this.strokeStyleChanged}get strokeMaterialParams(){return this.strokeStyle.materialParams}set strokeMaterialParams(e){this.strokeStyle={...this.strokeStyle,materialParams:e}}get strokeMaterialParamsChanged(){return this.strokeStyleChanged}get strokeGround(){return this.strokeStyle.ground}set strokeGround(e){this.strokeStyle={...this.strokeStyle,ground:e}}get strokeGroundChanged(){return this.strokeStyleChanged}get fillColor(){return this.fillStyle.color}set fillColor(e){this.fillStyle={...this.fillStyle,color:[...e]}}get fillColorChanged(){return this.fillStyleChanged}get fillMaterial(){return this.fillStyle.material}set fillMaterial(e){this.fillStyle={...this.fillStyle,material:e}}get fillMaterialChanged(){return this.fillStyleChanged}get fillMaterialParams(){return this.fillStyle.materialParams}set fillMaterialParams(e){this.fillStyle={...this.fillStyle,materialParams:e}}get fillMaterialParamsChanged(){return this.fillStyleChanged}get fillGround(){return this.fillStyle.ground}set fillGround(e){this.fillStyle={...this.fillStyle,ground:e}}get fillGroundChanged(){return this.fillStyleChanged}};d(Wa,"createDefaultProps",()=>({...st.createDefaultProps(),pointed:!1,pointStyle:wt({size:1,sizeType:"screen",color:[1,1,1,1],material:"",materialParams:{},outlineColor:[1,0,0,1],outlineWidth:1}),stroked:!1,strokeStyle:wt({width:1,widthType:"screen",color:[1,1,1,1],material:"",materialParams:{},ground:!1}),filled:!1,fillStyle:wt({color:[1,1,1,1],material:"",materialParams:{},ground:!1})})),d(Wa,"type",Wa.register("ESLocalVector",Wa,{chsName:"本地矢量",tags:["ESObjects"],description:"本地矢量对象"}));let Va=Wa;const Sl=class Sl extends Va{};d(Sl,"type",Sl.register("ESLocalVector2D",Sl,{chsName:"本地矢量2D",tags:["ESObjects"],description:"本地矢量2D对象"}));let us=Sl;const ES=[["固定朝向",0],["面向屏幕旋转",1],["绕自身Z轴旋转",2]],CS=[["单面不透明",0],["双面不透明",1],["单面遮罩",2],["双面遮罩",3],["单面透明",4],["双面透明",5],["单面未遮挡透明",6],["双面未遮挡透明",7]],Ha=class Ha extends st{constructor(){super(...arguments);d(this,"_widgetEvent",this.dv(new O))}get widgetEvent(){return this._widgetEvent}getESProperties(){const t={...super.getESProperties()};return{...t,basic:[...t.basic,new X([this,"screenRender"],"屏幕渲染",!0),new X([this,"sizeByContent"],"尺寸自适应",!0),new Ae([this,"size"],"尺寸大小",[100,100]),new Ae([this,"anchor"],"偏移比例",[.5,1]),new Ae([this,"offset"],"像素偏移",[0,0]),new Pt([this,"renderMode"],CS,"渲染模式",0),new Pt([this,"rotationType"],ES,"漫游旋转类型",1),new pt([this,"actorTag"],"绑定对象"),new pt([this,"socketName"],"插槽名称"),new cn([this,"positionOffset"],"位置偏移"),new cn([this,"rotationOffset"],"相对姿态")],more:[...t.more,new M([this,"zOrder"],"排序",0)]}}};d(Ha,"createDefaultProps",()=>({...st.createDefaultProps(),screenRender:!0,size:dt([100,100]),anchor:dt([.5,1]),offset:dt([0,0]),sizeByContent:!0,renderMode:0,rotationType:1,zOrder:0,actorTag:"",socketName:"",positionOffset:dt([0,0,0]),rotationOffset:dt([0,0,0])})),d(Ha,"type",Ha.register("ESLabel",Ha,{chsName:"标签",tags:["ESObjects"],description:"标签对象"}));let ar=Ha;const qa=class qa extends rt{constructor(e){super(e)}};d(qa,"createDefaultProps",()=>({...rt.createDefaultProps(),show:!0,fillStyle:wt({color:[1,1,1,1],material:"",materialParams:{},ground:!1})})),d(qa,"type",qa.register("ESTestObject",qa,{chsName:"测试",tags:["ESObjects"],description:""}));let Jd=qa;const Mi=class Mi extends Ht{constructor(t){super(t);d(this,"_refreshTilesetEvent",this.dv(new O));d(this,"_tilesetReadyEvent",this.dv(new O));d(this,"_supportEdit",this.dv(j(!0)));d(this,"_highlightFeatureEvent",this.dv(new O));d(this,"_highlightFeatureAndFlyToEvent",this.dv(new O));d(this,"_strokeFeatureEvent",this.disposeVar(new O));d(this,"_getFeatureTableEvent",this.dv(new O));d(this,"_featureTableResultEvent",this.dv(new O));d(this,"_getMaterialNameListEvent",this.disposeVar(new O));d(this,"_setFeatureStyleEvent",this.dv(new O));d(this,"_setFeatureColorEvent",this.dv(new O));d(this,"_setFeatureVisableEvent",this.dv(new O));d(this,"_resetFeatureStyleEvent",this.dv(new O));d(this,"setMaterialInfoEvent",this.ad(new O));d(this,"_setMaterialEvent",this.disposeVar(new O));d(this,"_clippingPlanesId",this.dv(j("")));d(this,"_clippingPlaneIds",this.dv(j([])));d(this,"_flattenedPlaneId",this.dv(j("")));d(this,"_flattenedPlaneEnabled",this.dv(j(!1)));d(this,"_clippingPlaneId",this.dv(j("")));d(this,"_excavateId",this.dv(dt([])))}updateEditing(){var t;(t=this.activeViewer)==null||t.startEditing(this,[et.Translation,et.Rotation],{callSource:"inner"})}get refreshTilesetEvent(){return this._refreshTilesetEvent}refreshTileset(){this._refreshTilesetEvent.emit()}get tilesetReady(){return this._tilesetReadyEvent}get supportEdit(){return this._supportEdit.value}set supportEdit(t){this._supportEdit.value=t}get supportEditChanged(){return this._supportEdit.changed}get highlightFeatureEvent(){return this._highlightFeatureEvent}highlightFeature(t,n){this._highlightFeatureEvent.emit(t,n)}get highlightFeatureAndFlyToEvent(){return this._highlightFeatureAndFlyToEvent}highlightFeatureAndFlyTo(t,n,i,s){this._highlightFeatureAndFlyToEvent.emit(t,n,i,s)}get strokeFeatureEvent(){return this._strokeFeatureEvent}strokeFeature(t,n=[1,0,0,1]){this._strokeFeatureEvent.emit(t,n)}get getFeatureTableEvent(){return this._getFeatureTableEvent}getFeatureTable(){return Promise.race([new Promise(t=>{const n=this.d(this._featureTableResultEvent.donce(t));this._getFeatureTableEvent.emit(),setTimeout(()=>{n(),t(void 0)},2e3)})])}get getMaterialNameListEvent(){return this._getMaterialNameListEvent}getMaterialNameList(){return new Promise(t=>{const n=new V;n.d(this.getMaterialNameListEvent.don(i=>{i!=="start"&&(n.destroy(),t(i))})),this.getMaterialNameListEvent.emit("start"),setTimeout(()=>{n.isDestroyed()||(n.destroy(),t(void 0))},2e3)})}get setFeatureStyleEvent(){return this._setFeatureStyleEvent}setFeatureStyle(t){this._setFeatureStyleEvent.emit(t)}get setFeatureColorEvent(){return this._setFeatureColorEvent}setFeatureColor(t,n){this._setFeatureColorEvent.emit(t,typeof n=="string"?JSON.parse(n):n)}get setFeatureVisableEvent(){return this._setFeatureVisableEvent}setFeatureVisable(t,n){this._setFeatureVisableEvent.emit(t,typeof n=="string"?JSON.parse(n):n)}get resetFeatureStyleEvent(){return this._resetFeatureStyleEvent}resetFeatureStyle(){this._resetFeatureStyleEvent.emit()}get setMaterialEvent(){return this._setMaterialEvent}setMaterial(t){return new Promise(n=>{const i=new V;i.ad(this.setMaterialInfoEvent.donce(s=>{i.destroy(),n(s)})),this._setMaterialEvent.emit(t)})}get clippingPlanesId(){return this._clippingPlanesId.value}set clippingPlanesId(t){this._clippingPlanesId.value=t}get clippingPlanesIdChanged(){return this._clippingPlanesId.changed}get clippingPlaneIds(){return this._clippingPlaneIds.value}set clippingPlaneIds(t){this._clippingPlaneIds.value=t}get clippingPlaneIdsChanged(){return this._clippingPlaneIds.changed}get flattenedPlaneId(){return this._flattenedPlaneId.value}set flattenedPlaneId(t){this._flattenedPlaneId.value=t}get flattenedPlaneIdChanged(){return this._flattenedPlaneId.changed}get flattenedPlaneEnabled(){return this._flattenedPlaneEnabled.value}set flattenedPlaneEnabled(t){this._flattenedPlaneEnabled.value=t}get flattenedPlaneEnabledChanged(){return this._flattenedPlaneEnabled.changed}get clippingPlaneId(){return this._clippingPlaneId.value}set clippingPlaneId(t){this._clippingPlaneId.value=t}get clippingPlaneIdChanged(){return this._clippingPlaneId.changed}get excavateId(){return this._excavateId.value}set excavateId(t){this._excavateId.value=t}get excavateIdChanged(){return this._excavateId.changed}setLight122(){this.czmEnvironmentMapManager={...Yd}}getESProperties(){const t={...super.getESProperties()};return{...t,defaultMenu:"dataSource",basic:[...t.basic,new Ue([this,"maximumScreenSpaceError"],1,[0,256],"精度",16),new Pt([this,"materialMode"],[["常规","normal"],["科技感","technology"]],"材质模式","normal",!0),new Pt([this,"colorBlendMode"],[["默认","HIGHLIGHT"],["替换","REPLACE"],["混合","MIX"]],"颜色模式","HIGHLIGHT"),new it([this,"materialOverrideMap"],"材质替换",Mi.defaults.materialOverrideMap)],dataSource:[...t.dataSource,new it([this,"url"],"服务地址",Mi.defaults.url,void 0,!0)],coordinate:[...t.coordinate,new X([this,"editing"],"编辑",!1,!0),new cn([this,"offset"],"偏移",[0,0,0],!0),new Gh([this,"rotation"],"旋转",[0,0,0])],more:[...t.more,new it([this,"materialParams"],"materialParams",Mi.defaults.materialParams),new lt(["string","string"],(n,i)=>this.highlightFeature(n,i),["","rgba(255,0,0,1)"],"highlightFeature"),new lt(["string","string"],(n,i)=>this.setFeatureColor(n,i),["",""],"setFeatureColor"),new lt(["string","string"],(n,i)=>this.setFeatureVisable(n,i),["",""],"setFeatureVisable"),new lt([],()=>this.resetFeatureStyle(),[],"resetFeatureStyle"),new ut([],"ue"),new lt([],()=>this.refreshTileset(),[],"refreshTileset"),new pt([this,"actorTag"]),new X([this,"highlight"],"是否高亮"),new Mt([this,"highlightColor"]),new M([this,"highlightID"]),new ut([],"czm"),new ut([],"可视化"),new Ae([this,"czmImageBasedLightingFactor"],"反射强度"),new M([this,"czmAtmosphereScatteringIntensity"],"大气散射强度"),new it([this,"czmEnvironmentMapManager"],"动态环境贴图管理器"),new M([this,"czmMaximumMemoryUsage"],"最大内存"),new ut([],"常用"),new Pt([this,"czmClassificationType"],[["NONE","NONE"],["TERRAIN","TERRAIN"],["CESIUM_3D_TILE","CESIUM_3D_TILE"],["BOTH","BOTH"]],"czmClassificationType","NONE",!0),new it([this,"czmStyleJson"],"czmStyle"),new X([this,"czmBackFaceCulling"]),new X([this,"czmSkipLevelOfDetail"]),new M([this,"cacheBytes"],"最大缓存",512*1024*1024),new ut([],"调试信息"),new X([this,"czmDebugShowBoundingVolume"]),new X([this,"czmDebugShowContentBoundingVolume"]),new ut([],"clippingPlanes"),new X([this,"clippingPlaneEnabled"]),new X([this,"unionClippingRegions"]),new Mt([this,"clippingPlaneEdgeColor"]),new M([this,"clippingPlaneEdgeWidth"])]}}};d(Mi,"createDefaultProps",()=>({...Ht.createDefaultProps(),url:"",actorTag:"",materialMode:"normal",highlight:!1,maximumScreenSpaceError:16,highlightID:0,highlightColor:dt([1,0,0,1]),offset:re([0,0,0]),rotation:dt([0,0,0]),czmImageBasedLightingFactor:dt([1,1]),czmEnvironmentMapManager:Qt(void 0),czmLuminanceAtZenith:2,czmAtmosphereScatteringIntensity:2,czmMaximumMemoryUsage:512,czmClassificationType:"NONE",czmStyleJson:wt({}),czmBackFaceCulling:!0,czmDebugShowBoundingVolume:!1,czmDebugShowContentBoundingVolume:!1,czmSkipLevelOfDetail:!1,cacheBytes:512*1024*1024,colorBlendMode:"HIGHLIGHT",clippingPlaneEnabled:!0,unionClippingRegions:!0,clippingPlaneEdgeColor:dt([1,1,1,1]),clippingPlaneEdgeWidth:2,materialParams:{baseColor:[0,.5,1]},allowPicking:!0,materialOverrideMap:Qt({}),featureIdLabel:0,splitDirection:"NONE"})),d(Mi,"type",Mi.register("ES3DTileset",Mi,{chsName:"3DTileset",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"3DTileset"})),d(Mi,"supportEditingModes",[...Ht.supportEditingModes,et.Translation,et.Rotation]);let Tr=Mi;const Xa=class Xa extends st{constructor(t){super(t);d(this,"_isFlyInCreated",this.dv(j(!1)));d(this,"_readyEvent",this.dv(new O));this.collision=!1,this.d(this.createdEvent.don(()=>{setTimeout(()=>{if((this.editing??!1)||!this.position)this.d(Ui([this.positionChanged,this.editingChanged],()=>{this.editing||!this.position||this.isFlyInCreated&&this.flyTo()},{time:"donce"}));else{if(!this.isFlyInCreated)return;this.flyTo()}},1e3)}))}get isFlyInCreated(){return this._isFlyInCreated.value}set isFlyInCreated(t){this._isFlyInCreated.value=t}get isFlyInCreatedChanged(){return this._isFlyInCreated.changed}get readyEvent(){return this._readyEvent}getESProperties(){const t={...super.getESProperties()};return{...t,basic:[...t.basic,new Pt([this,"mode"],[["柱状警告","cylinder"],["圆形警告","circle"]],"模式","cylinder"),new M([this,"radius"],"半径",10)]}}};d(Xa,"createDefaultProps",()=>({...st.createDefaultProps(),mode:"cylinder",radius:10})),d(Xa,"type",Xa.register("ESAlarm",Xa,{chsName:"报警",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"警告类"}));let $d=Xa;const SS=[["扫描","scan"],["扩散","diffuse"]],Gs=class Gs extends st{constructor(e){super(e)}getESProperties(){const e={...super.getESProperties()};return{...e,basic:[...e.basic,new M([this,"radius"],"半径",1),new Pt([this,"mode"],SS,"模式",Gs.defaults.mode),new Mt([this,"color"],"颜色",Gs.defaults.color)]}}};d(Gs,"createDefaultProps",()=>({...st.createDefaultProps(),radius:1,mode:"scan",color:[0,.7,1,1],collision:!1})),d(Gs,"type",Gs.register("ESApertureEffect",Gs,{chsName:"光圈特效",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"光圈特效"}));let Kd=Gs;const Oo=class Oo extends It{constructor(t){super(t);d(this,"editingBindMode","circular")}getESProperties(){const t={...super.getESProperties()};return{...t,coordinate:[...t.coordinate,new M([this,"area"],"面积",0,!1,!0),new M([this,"perimeter"],"周长",0,!1,!0)]}}};d(Oo,"createDefaultProps",()=>({...It.createDefaultProps(),fillStyle:wt({color:[1,1,1,.5],material:"",materialParams:{},ground:!1}),strokeStyle:wt({width:1,widthType:"screen",color:[1,1,1,1],material:"",materialParams:{},ground:!1}),filled:!0,stroked:!1,collision:!1})),d(Oo,"type",Oo.register("ESGeoPolygon",Oo,{chsName:"地理多边形",tags:["ESObjects"],description:"地理多边形"})),d(Oo,"supportEditingModes",[...It.supportEditingModes,et.CircularAppend,et.CircularInsert]);let Xt=Oo;const ls=class ls extends Xt{get fillMaterial(){return this.fillStyle.material}set fillMaterial(e){this.fillStyle={...this.fillStyle,material:e}}get fillMaterialParams(){return this.fillStyle?this.fillStyle.materialParams:ls.defaults.fillStyle.materialParams}set fillMaterialParams(e){this.fillStyle={...this.fillStyle??ls.defaults.fillStyle,materialParams:e??ls.defaults.fillStyle.materialParams}}constructor(e){super(e)}};d(ls,"createDefaultProps",()=>({...Xt.createDefaultProps(),stroked:!0,filled:!0,units:dt(["SquareMeter_SquareKilometer","MU_Hectare","PerimeterMeter_PerimeterKilometer"]),fillStyle:wt({color:[1,1,1,1],material:"Material'/EarthSDKForUE/M_ES_Material.M_ES_Material'",materialParams:{Opacity:.4},ground:!0}),strokeStyle:wt({width:2,widthType:"screen",color:[1,1,1,1],material:"",materialParams:{},ground:!1})})),d(ls,"type",ls.register("ESAreaMeasurement",ls,{chsName:"面积测量",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE","_ES_Impl_Ol"],description:"面积测量"}));let Zd=ls;const Ya=class Ya extends st{constructor(e){super(e)}getESProperties(){const e={...super.getESProperties()};return{...e,defaultMenu:"general",more:[...e.more,new ut([],"czm"),new Fu([this,"image"],"图片"),new cn([this,"translation"],"偏移")]}}};d(Ya,"createDefaultProps",()=>({...st.createDefaultProps(),image:"${earthsdk3-assets-script-dir}/assets/img/smoke.png",translation:dt([0,0,0])})),d(Ya,"type",Ya.register("ESBlastParticleSystem",Ya,{chsName:"粒子爆炸",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"粒子爆炸"}));let Qd=Ya;const oi=class oi extends st{constructor(e){super(e)}getESProperties(){const e={...super.getESProperties()};return{...e,basic:[...e.basic,new X([this,"reverse"],"反转",oi.defaults.reverse),new cn([this,"size"],"尺寸",oi.defaults.size),new Mt([this,"edgeColor"],"边框颜色",oi.defaults.edgeColor),new M([this,"edgeWidth"],"边框宽度",oi.defaults.edgeWidth),new pt([this,"targetID"],"瓦片图层",oi.defaults.targetID)]}}};d(oi,"createDefaultProps",()=>({...st.createDefaultProps(),reverse:!1,edgeColor:dt([1,1,1,1]),edgeWidth:2,size:dt([10,10,10]),targetID:""})),d(oi,"type",oi.register("ESBoxClipping",oi,{chsName:"体剖切",tags:["ESObjects","_ES_Impl_Cesium"],description:"体剖切,体裁剪,体裁切,盒裁切"}));let tf=oi;const bl=class bl extends st{constructor(){super(...arguments);d(this,"_thumbnail",this.dv(j("")));d(this,"_duration",this.dv(j(1)));d(this,"_resetWithCurrentCameraEvent",this.dv(new O));d(this,"_captureEvent",this.dv(new O))}get thumbnail(){return this._thumbnail.value}set thumbnail(t){this._thumbnail.value=t}get thumbnailChanged(){return this._thumbnail.changed}get duration(){return this._duration.value}set duration(t){this._duration.value=t}get durationChanged(){return this._duration.changed}flyIn(t=1,n="default"){this.flyInEvent.emit(t,-1,n)}get resetWithCurrentCameraEvent(){return this._resetWithCurrentCameraEvent}resetWithCurrentCamera(){this._resetWithCurrentCameraEvent.emit()}get captureEvent(){return this._captureEvent}capture(t,n){this._captureEvent.emit(t,n)}execOnCreating(){this.resetWithCurrentCamera()}async initByCurrent(){this.resetWithCurrentCamera()}getESProperties(){const t={...super.getESProperties()};return{...t,more:[...t.more,new ut([],"ESCameraView"),new lt([],()=>this.resetWithCurrentCamera(),[],"设置为当前视角"),new lt(["number","number"],(n,i)=>this.capture(n,i),[64,64],"获取缩略图"),new pt([this,"thumbnail"],"缩略图","",!0),new M([this,"duration"],"飞行时间",1,!0)]}}};d(bl,"type",bl.register("ESCameraView",bl,{chsName:"视角",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"视角"}));let Fc=bl;class Ac extends V{constructor(t,n,i){super();d(this,"_view",this.dv(new Fc));if(this.d(t.components.disposableAdd(this._view)),this._view.name=(i==null?void 0:i.name)??`视角${t.views.length+1}`,n){const a=this._view,u=n;a.duration=u.duration??1,a.position=u.position,a.rotation=u.rotation??[0,0,0],a.thumbnail=u.thumbnail??"",a.name=u.name}else{const a=(i==null?void 0:i.size)??[64,64];this.d($o(()=>{this._view.resetWithCurrentCamera(),this._view.capture(a[0],a[1])}))}const s=this._view,o=this.dv(Ie(s.durationChanged,s.positionChanged,s.rotationChanged,s.thumbnailChanged,s.nameChanged));this.d(o.don(()=>t.emitViewsWarpper()))}get view(){return this._view}get viewInfo(){const t=this._view;return{duration:t.duration,position:t.position,rotation:t.rotation,thumbnail:t.thumbnail,name:t.name}}}const Or=class Or extends rt{constructor(t){super(t);d(this,"_currentViewIndex",this.dv(j(-1)));d(this,"_viewWrappers",this.dv(new xu));d(this,"_currentViewWrapper",this.dv(j(void 0)));d(this,"_container",this.dv(j(void 0)));this.initProcessing();{const n=()=>{if(!this._currentViewWrapper.value)return;this._viewWrappers.indexOf(this._currentViewWrapper.value)===-1&&(this._currentViewWrapper.value=void 0)};n(),this.d(this._viewWrappers.changedEvent.don(n))}{const n=()=>{const i=this._currentViewWrapper.value;this._currentViewIndex.value=i?this._getIndex(i):-1};n(),this.d(this._viewWrappers.changedEvent.don(n)),this.d(this._currentViewWrapper.changed.don(n))}this.d(()=>{this.clearAllViews()})}get json(){return{...this._innerGetJson(),views:this.views}}set json(t){this._innerSetJson(t),this.views=t.views}get currentViewIndex(){return this._currentViewIndex.value}get currentViewIndexChanged(){return this._currentViewIndex.changed}emitViewsWarpper(){this._viewWrappers.changedEvent.emit(this._viewWrappers)}get container(){return this._container.value}get containerChanged(){return this._container.changed}set container(t){this._container.value=t}get views(){return ry(this._viewWrappers,t=>t.viewInfo)}get viewsChanged(){return this._viewWrappers.changedEvent}set views(t){if(t.length===this._viewWrappers.length){const n=this._viewWrappers;if(t.every((i,s)=>{const o=n.get(s).view;return i.duration===o.duration&&qd(i.position,o.position)&&qd(i.rotation,o.rotation)&&i.thumbnail===o.thumbnail&&i.name===o.name}))return}this.clearAllViews();for(let n of t)this._viewWrappers.push(new Ac(this,n))}_getIndex(t){return this._viewWrappers.indexOf(t)}clearAllViews(){for(let t of this._viewWrappers)t.destroy();this._viewWrappers.length=0}add(t=`视角${this.views.length+1}`,n=[64,64]){this._viewWrappers.push(new Ac(this,void 0,{name:t,size:n}))}update(t,n,i=[64,64]){if(t>=this._viewWrappers.length||t<0)return console.warn("index >= this._viewWrappers.length || index < 0"),!1;const s=this._viewWrappers.get(t);return n&&(s.view.name=n),s.view.resetWithCurrentCamera(),s.view.capture(i[0],i[1]),!0}addView(){this._viewWrappers.push(new Ac(this))}insertView(t){if(this._viewWrappers.length+1<=t||t<0){console.error("this._views.length <= index || index < 0");return}this._viewWrappers.splice(t,0,new Ac(this))}setCurrentView(t){if(t>=this._viewWrappers.length||t<0)return console.warn("index >= this._viewWrappers.length || index < 0"),!1;const n=this._viewWrappers.get(t);return this._currentViewWrapper.value=n,!0}resetView(t){if(t>=this._viewWrappers.length||t<0){console.warn("index >= this._viewWrappers.length || index < 0");return}const n=this._viewWrappers.get(t);n.view.resetWithCurrentCamera(),n.view.capture()}resetViewName(t,n){if(t>=this._viewWrappers.length||t<0){console.warn("index >= this._viewWrappers.length || index < 0");return}const i=this._viewWrappers.get(t);i.view.name=n}updateView(t,n){if(t>=this._viewWrappers.length||t<0)return console.warn("index >= this._viewWrappers.length || index < 0"),!1;const i=this._viewWrappers.get(t);return i.view.position=n.position,i.view.rotation=n.rotation??[0,0,0],i.view.duration=n.duration??1,i.view.thumbnail=n.thumbnail??"",i.view.name=n.name??"",!0}flyToView(t){if(this.setCurrentView(t)){if(!this._currentViewWrapper.value)throw new Error("this._currentViewWrapper.value");const n=this._currentViewWrapper.value.view.duration;this._currentViewWrapper.value.view.flyIn(n,this.flyMode??Or.defaults.flyMode)}}flyToPrevView(){const t=this._currentViewWrapper.value;if(!t)return this.flyToView(0),!0;const n=this._getIndex(t);return this.loop??Or.defaults.loop?(this.flyToView((this._viewWrappers.length+n-1)%this._viewWrappers.length),!0):n-1<0?!1:(this.flyToView(n-1),!0)}moveToPreView(){const t=this._currentViewWrapper.value;if(!t)return;const n=this._getIndex(t);if(n===0)return;const i=this._viewWrappers.splice(n-1,1,t)[0];this._viewWrappers.set(n,i)}moveToNextView(){const t=this._currentViewWrapper.value;if(!t)return;const n=this._getIndex(t);if(n===this._viewWrappers.length-1)return;const i=this._viewWrappers.splice(n+1,1,t)[0];this._viewWrappers.set(n,i)}flyToNextView(){const t=this._currentViewWrapper.value;if(!t)return this.flyToView(0),!0;const n=this._getIndex(t);return this.loop??Or.defaults.loop?(this.flyToView((n+1)%this._viewWrappers.length),!0):n+1>this._viewWrappers.length-1?!1:(this.flyToView(n+1),!0)}stop(){this._currentViewWrapper.value=void 0,this.playing=!1}deleteView(t){if(t<0||t>=this._viewWrappers.length){console.warn("index < 0 || index >= this._viewWrappers.length");return}this._viewWrappers.get(t).destroy(),this._viewWrappers.splice(t,1)}deleteCurrentView(){const t=this._currentViewWrapper.value;if(!t){console.warn("!this._currentViewWrapper.value");return}const n=this._getIndex(t);if(n===-1){console.warn("index === -1");return}this.deleteView(n)}transitionImageUrl(t){return rt.context.getStrFromEnv(t)}_flyStep(t){var o;if(!this.flyToNextView())return this.playing=!1,Promise.resolve();const n=this.intervalTime??Or.defaults.intervalTime,s=((((o=this._currentViewWrapper.value)==null?void 0:o.viewInfo.duration)??0)+n)*1e3;return t.promise(Nu(s)).then(()=>this._flyStep(t))}initProcessing(){const t=this.dv(Yn(async i=>this._flyStep(i))),n=()=>{this.playing?t.restart():t.cancel()};n(),this.d(this.playingChanged.don(n))}getESProperties(){const t={...super.getESProperties()};return{...t,more:[...t.more,new Pt([this,"flyMode"],[["默认","default"],["直线飞行","uniform"]],"飞行模式",Or.defaults.flyMode),new lt([],()=>this.addView(),[],"添加视角"),new lt(["number"],n=>this.insertView(n),[0],"插入视角"),new lt([],()=>this.clearAllViews(),[],"清空所有视角"),new lt([],()=>this.insertView(this.currentViewIndex+1),[],"当前位置插入视角"),new lt([],()=>this.flyToPrevView(),[],"上一个视角"),new lt([],()=>this.flyToNextView(),[],"下一个视角"),new lt([],()=>this.moveToPreView(),[],"当前视角移动到上一个视角"),new lt([],()=>this.moveToNextView(),[],"当前视角移动到下一个视角"),new lt(["number"],n=>this.flyToView(n),[0],"飞入指定视角"),new lt(["number"],n=>this.setCurrentView(n),[0],"设置当前视角"),new lt([],()=>this.deleteCurrentView(),[],"删除当前视角"),new lt(["number"],n=>this.deleteView(n),[0],"删除指定视角"),new lt(["number"],n=>this.resetView(n),[0],"重置视角"),new M([this,"currentViewIndex"],"当前序号",-1,!1,!0),new Rg([this,"playing"],()=>this.stop(),[this,"loop"],"播放",Or.defaults),new X([this,"playing"],"是否播放"),new lt([],()=>this.stop(),[],"停止"),new X([this,"loop"],"是否循环"),new M([this,"intervalTime"],"间隔时间"),new it([this,"views"],"视角集合",[],void 0,!0)]}}};d(Or,"createDefaultProps",()=>({...rt.createDefaultProps(),playing:!1,loop:!0,intervalTime:5,flyMode:"default"})),d(Or,"type",Or.register("ESCameraViewCollection",Or,{chsName:"视角集合",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"视角集合"}));let kc=Or;const Ja=class Ja extends st{constructor(t){super(t);d(this,"editingBindMode","doublePoints")}getESProperties(){const t={...super.getESProperties()};return{...t,basic:[...t.basic,new M([this,"aspectRatio"],"宽高比",1.77778),new M([this,"fov"],"横向夹角",90),new M([this,"far"],"视野长度",100),new M([this,"near"],"近面距离",5)]}}};d(Ja,"createDefaultProps",()=>({...st.createDefaultProps(),fov:90,aspectRatio:1.77778,far:100,near:5,collision:!1})),d(Ja,"type",Ja.register("ESCameraVisibleRange",Ja,{chsName:"摄像头可视域",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"摄像头可视域"}));let ef=Ja;const $a=class $a extends st{constructor(e){super(e)}getESProperties(){const e={...super.getESProperties()};return{...e,basic:[...e.basic,new Pt([this,"mode"],[["警车","policeCar"]],"模式","policeCar")]}}};d($a,"createDefaultProps",()=>({...st.createDefaultProps(),mode:"policeCar",allowPicking:!0})),d($a,"type",$a.register("ESCar",$a,{chsName:"车辆",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"警车等基础车辆模型"}));let Vc=$a;const No=class No extends It{constructor(t){super(t);d(this,"editingBindMode","circular")}getESProperties(){const t={...super.getESProperties()};return{...t,basic:[...t.basic,new M([this,"height"],"高度",10)],coordinate:[...t.coordinate,new M([this,"area"],"面积",0,!1,!0),new M([this,"perimeter"],"周长",0,!1,!0)]}}};d(No,"createDefaultProps",()=>({...It.createDefaultProps(),height:10,filled:!0,fillStyle:wt({material:"",materialParams:{},ground:!0,color:[1,1,1,1]})})),d(No,"type",No.register("ESClassification",No,{chsName:"倾斜单体化",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"平尾箭头"})),d(No,"supportEditingModes",[...It.supportEditingModes,et.CircularAppend,et.CircularInsert,et.HeightModify]);let jc=No;const Ka=class Ka extends st{constructor(e){super(e)}getESProperties(){const e={...super.getESProperties()};return{...e,basic:[...e.basic,new X([this,"showArrow"],"显示箭头",!0),new Mt([this,"edgeColor"],"线框颜色",[1,1,1,1]),new M([this,"edgetWidth"],"线框宽度",2),new M([this,"width"],"裁剪宽度",200),new M([this,"height"],"裁剪高度",200),new pt([this,"targetID"],"瓦片图层","")]}}};d(Ka,"createDefaultProps",()=>({...st.createDefaultProps(),showArrow:!0,edgeColor:dt([1,1,1,1]),edgetWidth:2,width:200,height:200,targetID:""})),d(Ka,"type",Ka.register("ESClippingPlane",Ka,{chsName:"裁切",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"ESClippingPlane"}));let nf=Ka;class bS extends V{constructor(e,t,n){super();const i=document.createElement("div");i.setAttribute("xe2-div",`ESCustomDiv(${t.id})(viewer: ${n.id}) container`);{const u=()=>{const c=` ${t.cssText}
|
|
65
|
+
`);var s=e+(t?" ":"│ ");r.left&&Md(r.left,s,!1,n,i),r.right&&Md(r.right,s,!0,n,i)}}var Rd=function(){function r(e){e===void 0&&(e=RC),this._root=null,this._size=0,this._comparator=e}return r.prototype.insert=function(e,t){return this._size++,this._root=Dd(e,t,this._root,this._comparator)},r.prototype.add=function(e,t){var n=new ks(e,t);this._root===null&&(n.left=n.right=null,this._size++,this._root=n);var i=this._comparator,s=Vs(e,this._root,i),o=i(e,s.key);return o===0?this._root=s:(o<0?(n.left=s.left,n.right=s,s.left=null):o>0&&(n.right=s.right,n.left=s,s.right=null),this._size++,this._root=n),this._root},r.prototype.remove=function(e){this._root=this._remove(e,this._root,this._comparator)},r.prototype._remove=function(e,t,n){var i;if(t===null)return null;t=Vs(e,t,n);var s=n(e,t.key);return s===0?(t.left===null?i=t.right:(i=Vs(e,t.left,n),i.right=t.right),this._size--,i):t},r.prototype.pop=function(){var e=this._root;if(e){for(;e.left;)e=e.left;return this._root=Vs(e.key,this._root,this._comparator),this._root=this._remove(e.key,this._root,this._comparator),{key:e.key,data:e.data}}return null},r.prototype.findStatic=function(e){for(var t=this._root,n=this._comparator;t;){var i=n(e,t.key);if(i===0)return t;i<0?t=t.left:t=t.right}return null},r.prototype.find=function(e){return this._root&&(this._root=Vs(e,this._root,this._comparator),this._comparator(e,this._root.key)!==0)?null:this._root},r.prototype.contains=function(e){for(var t=this._root,n=this._comparator;t;){var i=n(e,t.key);if(i===0)return!0;i<0?t=t.left:t=t.right}return!1},r.prototype.forEach=function(e,t){for(var n=this._root,i=[],s=!1;!s;)n!==null?(i.push(n),n=n.left):i.length!==0?(n=i.pop(),e.call(t,n),n=n.right):s=!0;return this},r.prototype.range=function(e,t,n,i){for(var s=[],o=this._comparator,a=this._root,u;s.length!==0||a;)if(a)s.push(a),a=a.left;else{if(a=s.pop(),u=o(a.key,t),u>0)break;if(o(a.key,e)>=0&&n.call(i,a))return this;a=a.right}return this},r.prototype.keys=function(){var e=[];return this.forEach(function(t){var n=t.key;return e.push(n)}),e},r.prototype.values=function(){var e=[];return this.forEach(function(t){var n=t.data;return e.push(n)}),e},r.prototype.min=function(){return this._root?this.minNode(this._root).key:null},r.prototype.max=function(){return this._root?this.maxNode(this._root).key:null},r.prototype.minNode=function(e){if(e===void 0&&(e=this._root),e)for(;e.left;)e=e.left;return e},r.prototype.maxNode=function(e){if(e===void 0&&(e=this._root),e)for(;e.right;)e=e.right;return e},r.prototype.at=function(e){for(var t=this._root,n=!1,i=0,s=[];!n;)if(t)s.push(t),t=t.left;else if(s.length>0){if(t=s.pop(),i===e)return t;i++,t=t.right}else n=!0;return null},r.prototype.next=function(e){var t=this._root,n=null;if(e.right){for(n=e.right;n.left;)n=n.left;return n}for(var i=this._comparator;t;){var s=i(e.key,t.key);if(s===0)break;s<0?(n=t,t=t.left):t=t.right}return n},r.prototype.prev=function(e){var t=this._root,n=null;if(e.left!==null){for(n=e.left;n.right;)n=n.right;return n}for(var i=this._comparator;t;){var s=i(e.key,t.key);if(s===0)break;s<0?t=t.left:(n=t,t=t.right)}return n},r.prototype.clear=function(){return this._root=null,this._size=0,this},r.prototype.toList=function(){return AC(this._root)},r.prototype.load=function(e,t,n){t===void 0&&(t=[]),n===void 0&&(n=!1);var i=e.length,s=this._comparator;if(n&&Ad(e,t,0,i-1,s),this._root===null)this._root=Ld(e,t,0,i),this._size=i;else{var o=kC(this.toList(),FC(e,t),s);i=this._size+i,this._root=Fd({head:o},0,i)}return this},r.prototype.isEmpty=function(){return this._root===null},Object.defineProperty(r.prototype,"size",{get:function(){return this._size},enumerable:!0,configurable:!0}),Object.defineProperty(r.prototype,"root",{get:function(){return this._root},enumerable:!0,configurable:!0}),r.prototype.toString=function(e){e===void 0&&(e=function(n){return String(n.key)});var t=[];return Md(this._root,"",!0,function(n){return t.push(n)},e),t.join("")},r.prototype.update=function(e,t,n){var i=this._comparator,s=Mv(e,this._root,i),o=s.left,a=s.right;i(e,t)<0?a=Dd(t,n,a,i):o=Dd(t,n,o,i),this._root=LC(o,a,i)},r.prototype.split=function(e){return Mv(e,this._root,this._comparator)},r.prototype[Symbol.iterator]=function(){var e,t,n;return MC(this,function(i){switch(i.label){case 0:e=this._root,t=[],n=!1,i.label=1;case 1:return n?[3,6]:e===null?[3,2]:(t.push(e),e=e.left,[3,5]);case 2:return t.length===0?[3,4]:(e=t.pop(),[4,e]);case 3:return i.sent(),e=e.right,[3,5];case 4:n=!0,i.label=5;case 5:return[3,1];case 6:return[2]}})},r}();function Ld(r,e,t,n){var i=n-t;if(i>0){var s=t+Math.floor(i/2),o=r[s],a=e[s],u=new ks(o,a);return u.left=Ld(r,e,t,s),u.right=Ld(r,e,s+1,n),u}return null}function FC(r,e){for(var t=new ks(null,null),n=t,i=0;i<r.length;i++)n=n.next=new ks(r[i],e[i]);return n.next=null,t.next}function AC(r){for(var e=r,t=[],n=!1,i=new ks(null,null),s=i;!n;)e?(t.push(e),e=e.left):t.length>0?(e=s=s.next=t.pop(),e=e.right):n=!0;return s.next=null,i.next}function Fd(r,e,t){var n=t-e;if(n>0){var i=e+Math.floor(n/2),s=Fd(r,e,i),o=r.head;return o.left=s,r.head=r.head.next,o.right=Fd(r,i+1,t),o}return null}function kC(r,e,t){for(var n=new ks(null,null),i=n,s=r,o=e;s!==null&&o!==null;)t(s.key,o.key)<0?(i.next=s,s=s.next):(i.next=o,o=o.next),i=i.next;return s!==null?i.next=s:o!==null&&(i.next=o),n.next}function Ad(r,e,t,n,i){if(!(t>=n)){for(var s=r[t+n>>1],o=t-1,a=n+1;;){do o++;while(i(r[o],s)<0);do a--;while(i(r[a],s)>0);if(o>=a)break;var u=r[o];r[o]=r[a],r[a]=u,u=e[o],e[o]=e[a],e[a]=u}Ad(r,e,t,a,i),Ad(r,e,a+1,n,i)}}const as=11102230246251565e-32,vn=134217729,VC=(3+8*as)*as;function kd(r,e,t,n,i){let s,o,a,u,l=e[0],c=n[0],h=0,f=0;c>l==c>-l?(s=l,l=e[++h]):(s=c,c=n[++f]);let p=0;if(h<r&&f<t)for(c>l==c>-l?(o=l+s,a=s-(o-l),l=e[++h]):(o=c+s,a=s-(o-c),c=n[++f]),s=o,a!==0&&(i[p++]=a);h<r&&f<t;)c>l==c>-l?(o=s+l,u=o-s,a=s-(o-u)+(l-u),l=e[++h]):(o=s+c,u=o-s,a=s-(o-u)+(c-u),c=n[++f]),s=o,a!==0&&(i[p++]=a);for(;h<r;)o=s+l,u=o-s,a=s-(o-u)+(l-u),l=e[++h],s=o,a!==0&&(i[p++]=a);for(;f<t;)o=s+c,u=o-s,a=s-(o-u)+(c-u),c=n[++f],s=o,a!==0&&(i[p++]=a);return(s!==0||p===0)&&(i[p++]=s),p}function jC(r,e){let t=e[0];for(let n=1;n<r;n++)t+=e[n];return t}function cl(r){return new Float64Array(r)}const BC=(3+16*as)*as,zC=(2+12*as)*as,UC=(9+64*as)*as*as,Aa=cl(4),Rv=cl(8),Lv=cl(12),Fv=cl(16),Ln=cl(4);function GC(r,e,t,n,i,s,o){let a,u,l,c,h,f,p,v,C,S,P,y,_,m,w,E,b,I;const T=r-i,D=t-i,x=e-s,N=n-s;m=T*N,f=vn*T,p=f-(f-T),v=T-p,f=vn*N,C=f-(f-N),S=N-C,w=v*S-(m-p*C-v*C-p*S),E=x*D,f=vn*x,p=f-(f-x),v=x-p,f=vn*D,C=f-(f-D),S=D-C,b=v*S-(E-p*C-v*C-p*S),P=w-b,h=w-P,Aa[0]=w-(P+h)+(h-b),y=m+P,h=y-m,_=m-(y-h)+(P-h),P=_-E,h=_-P,Aa[1]=_-(P+h)+(h-E),I=y+P,h=I-y,Aa[2]=y-(I-h)+(P-h),Aa[3]=I;let L=jC(4,Aa),A=zC*o;if(L>=A||-L>=A||(h=r-T,a=r-(T+h)+(h-i),h=t-D,l=t-(D+h)+(h-i),h=e-x,u=e-(x+h)+(h-s),h=n-N,c=n-(N+h)+(h-s),a===0&&u===0&&l===0&&c===0)||(A=UC*o+VC*Math.abs(L),L+=T*c+N*a-(x*l+D*u),L>=A||-L>=A))return L;m=a*N,f=vn*a,p=f-(f-a),v=a-p,f=vn*N,C=f-(f-N),S=N-C,w=v*S-(m-p*C-v*C-p*S),E=u*D,f=vn*u,p=f-(f-u),v=u-p,f=vn*D,C=f-(f-D),S=D-C,b=v*S-(E-p*C-v*C-p*S),P=w-b,h=w-P,Ln[0]=w-(P+h)+(h-b),y=m+P,h=y-m,_=m-(y-h)+(P-h),P=_-E,h=_-P,Ln[1]=_-(P+h)+(h-E),I=y+P,h=I-y,Ln[2]=y-(I-h)+(P-h),Ln[3]=I;const J=kd(4,Aa,4,Ln,Rv);m=T*c,f=vn*T,p=f-(f-T),v=T-p,f=vn*c,C=f-(f-c),S=c-C,w=v*S-(m-p*C-v*C-p*S),E=x*l,f=vn*x,p=f-(f-x),v=x-p,f=vn*l,C=f-(f-l),S=l-C,b=v*S-(E-p*C-v*C-p*S),P=w-b,h=w-P,Ln[0]=w-(P+h)+(h-b),y=m+P,h=y-m,_=m-(y-h)+(P-h),P=_-E,h=_-P,Ln[1]=_-(P+h)+(h-E),I=y+P,h=I-y,Ln[2]=y-(I-h)+(P-h),Ln[3]=I;const H=kd(J,Rv,4,Ln,Lv);m=a*c,f=vn*a,p=f-(f-a),v=a-p,f=vn*c,C=f-(f-c),S=c-C,w=v*S-(m-p*C-v*C-p*S),E=u*l,f=vn*u,p=f-(f-u),v=u-p,f=vn*l,C=f-(f-l),S=l-C,b=v*S-(E-p*C-v*C-p*S),P=w-b,h=w-P,Ln[0]=w-(P+h)+(h-b),y=m+P,h=y-m,_=m-(y-h)+(P-h),P=_-E,h=_-P,Ln[1]=_-(P+h)+(h-E),I=y+P,h=I-y,Ln[2]=y-(I-h)+(P-h),Ln[3]=I;const Z=kd(H,Lv,4,Ln,Fv);return Fv[Z-1]}function WC(r,e,t,n,i,s){const o=(e-s)*(t-i),a=(r-i)*(n-s),u=o-a,l=Math.abs(o+a);return Math.abs(u)>=BC*l?u:-GC(r,e,t,n,i,s,l)}const hl=(r,e)=>r.ll.x<=e.x&&e.x<=r.ur.x&&r.ll.y<=e.y&&e.y<=r.ur.y,Vd=(r,e)=>{if(e.ur.x<r.ll.x||r.ur.x<e.ll.x||e.ur.y<r.ll.y||r.ur.y<e.ll.y)return null;const t=r.ll.x<e.ll.x?e.ll.x:r.ll.x,n=r.ur.x<e.ur.x?r.ur.x:e.ur.x,i=r.ll.y<e.ll.y?e.ll.y:r.ll.y,s=r.ur.y<e.ur.y?r.ur.y:e.ur.y;return{ll:{x:t,y:i},ur:{x:n,y:s}}};let js=Number.EPSILON;js===void 0&&(js=Math.pow(2,-52));const HC=js*js,Av=(r,e)=>{if(-js<r&&r<js&&-js<e&&e<js)return 0;const t=r-e;return t*t<HC*r*e?0:r<e?-1:1};class qC{constructor(){this.reset()}reset(){this.xRounder=new kv,this.yRounder=new kv}round(e,t){return{x:this.xRounder.round(e),y:this.yRounder.round(t)}}}class kv{constructor(){this.tree=new Rd,this.round(0)}round(e){const t=this.tree.add(e),n=this.tree.prev(t);if(n!==null&&Av(t.key,n.key)===0)return this.tree.remove(e),n.key;const i=this.tree.next(t);return i!==null&&Av(t.key,i.key)===0?(this.tree.remove(e),i.key):e}}const dl=new qC,Mc=(r,e)=>r.x*e.y-r.y*e.x,Vv=(r,e)=>r.x*e.x+r.y*e.y,jv=(r,e,t)=>{const n=WC(r.x,r.y,e.x,e.y,t.x,t.y);return n>0?-1:n<0?1:0},Rc=r=>Math.sqrt(Vv(r,r)),XC=(r,e,t)=>{const n={x:e.x-r.x,y:e.y-r.y},i={x:t.x-r.x,y:t.y-r.y};return Mc(i,n)/Rc(i)/Rc(n)},YC=(r,e,t)=>{const n={x:e.x-r.x,y:e.y-r.y},i={x:t.x-r.x,y:t.y-r.y};return Vv(i,n)/Rc(i)/Rc(n)},Bv=(r,e,t)=>e.y===0?null:{x:r.x+e.x/e.y*(t-r.y),y:t},zv=(r,e,t)=>e.x===0?null:{x:t,y:r.y+e.y/e.x*(t-r.x)},JC=(r,e,t,n)=>{if(e.x===0)return zv(t,n,r.x);if(n.x===0)return zv(r,e,t.x);if(e.y===0)return Bv(t,n,r.y);if(n.y===0)return Bv(r,e,t.y);const i=Mc(e,n);if(i==0)return null;const s={x:t.x-r.x,y:t.y-r.y},o=Mc(s,e)/i,a=Mc(s,n)/i,u=r.x+a*e.x,l=t.x+o*n.x,c=r.y+a*e.y,h=t.y+o*n.y,f=(u+l)/2,p=(c+h)/2;return{x:f,y:p}};class xr{static compare(e,t){const n=xr.comparePoints(e.point,t.point);return n!==0?n:(e.point!==t.point&&e.link(t),e.isLeft!==t.isLeft?e.isLeft?1:-1:Bs.compare(e.segment,t.segment))}static comparePoints(e,t){return e.x<t.x?-1:e.x>t.x?1:e.y<t.y?-1:e.y>t.y?1:0}constructor(e,t){e.events===void 0?e.events=[this]:e.events.push(this),this.point=e,this.isLeft=t}link(e){if(e.point===this.point)throw new Error("Tried to link already linked events");const t=e.point.events;for(let n=0,i=t.length;n<i;n++){const s=t[n];this.point.events.push(s),s.point=this.point}this.checkForConsuming()}checkForConsuming(){const e=this.point.events.length;for(let t=0;t<e;t++){const n=this.point.events[t];if(n.segment.consumedBy===void 0)for(let i=t+1;i<e;i++){const s=this.point.events[i];s.consumedBy===void 0&&n.otherSE.point.events===s.otherSE.point.events&&n.segment.consume(s.segment)}}}getAvailableLinkedEvents(){const e=[];for(let t=0,n=this.point.events.length;t<n;t++){const i=this.point.events[t];i!==this&&!i.segment.ringOut&&i.segment.isInResult()&&e.push(i)}return e}getLeftmostComparator(e){const t=new Map,n=i=>{const s=i.otherSE;t.set(i,{sine:XC(this.point,e.point,s.point),cosine:YC(this.point,e.point,s.point)})};return(i,s)=>{t.has(i)||n(i),t.has(s)||n(s);const{sine:o,cosine:a}=t.get(i),{sine:u,cosine:l}=t.get(s);return o>=0&&u>=0?a<l?1:a>l?-1:0:o<0&&u<0?a<l?-1:a>l?1:0:u<o?-1:u>o?1:0}}}let $C=0;class Bs{static compare(e,t){const n=e.leftSE.point.x,i=t.leftSE.point.x,s=e.rightSE.point.x,o=t.rightSE.point.x;if(o<n)return 1;if(s<i)return-1;const a=e.leftSE.point.y,u=t.leftSE.point.y,l=e.rightSE.point.y,c=t.rightSE.point.y;if(n<i){if(u<a&&u<l)return 1;if(u>a&&u>l)return-1;const h=e.comparePoint(t.leftSE.point);if(h<0)return 1;if(h>0)return-1;const f=t.comparePoint(e.rightSE.point);return f!==0?f:-1}if(n>i){if(a<u&&a<c)return-1;if(a>u&&a>c)return 1;const h=t.comparePoint(e.leftSE.point);if(h!==0)return h;const f=e.comparePoint(t.rightSE.point);return f<0?1:f>0?-1:1}if(a<u)return-1;if(a>u)return 1;if(s<o){const h=t.comparePoint(e.rightSE.point);if(h!==0)return h}if(s>o){const h=e.comparePoint(t.rightSE.point);if(h<0)return 1;if(h>0)return-1}if(s!==o){const h=l-a,f=s-n,p=c-u,v=o-i;if(h>f&&p<v)return 1;if(h<f&&p>v)return-1}return s>o?1:s<o||l<c?-1:l>c?1:e.id<t.id?-1:e.id>t.id?1:0}constructor(e,t,n,i){this.id=++$C,this.leftSE=e,e.segment=this,e.otherSE=t,this.rightSE=t,t.segment=this,t.otherSE=e,this.rings=n,this.windings=i}static fromRing(e,t,n){let i,s,o;const a=xr.comparePoints(e,t);if(a<0)i=e,s=t,o=1;else if(a>0)i=t,s=e,o=-1;else throw new Error(`Tried to create degenerate segment at [${e.x}, ${e.y}]`);const u=new xr(i,!0),l=new xr(s,!1);return new Bs(u,l,[n],[o])}replaceRightSE(e){this.rightSE=e,this.rightSE.segment=this,this.rightSE.otherSE=this.leftSE,this.leftSE.otherSE=this.rightSE}bbox(){const e=this.leftSE.point.y,t=this.rightSE.point.y;return{ll:{x:this.leftSE.point.x,y:e<t?e:t},ur:{x:this.rightSE.point.x,y:e>t?e:t}}}vector(){return{x:this.rightSE.point.x-this.leftSE.point.x,y:this.rightSE.point.y-this.leftSE.point.y}}isAnEndpoint(e){return e.x===this.leftSE.point.x&&e.y===this.leftSE.point.y||e.x===this.rightSE.point.x&&e.y===this.rightSE.point.y}comparePoint(e){if(this.isAnEndpoint(e))return 0;const t=this.leftSE.point,n=this.rightSE.point,i=this.vector();if(t.x===n.x)return e.x===t.x?0:e.x<t.x?1:-1;const s=(e.y-t.y)/i.y,o=t.x+s*i.x;if(e.x===o)return 0;const a=(e.x-t.x)/i.x,u=t.y+a*i.y;return e.y===u?0:e.y<u?-1:1}getIntersection(e){const t=this.bbox(),n=e.bbox(),i=Vd(t,n);if(i===null)return null;const s=this.leftSE.point,o=this.rightSE.point,a=e.leftSE.point,u=e.rightSE.point,l=hl(t,a)&&this.comparePoint(a)===0,c=hl(n,s)&&e.comparePoint(s)===0,h=hl(t,u)&&this.comparePoint(u)===0,f=hl(n,o)&&e.comparePoint(o)===0;if(c&&l)return f&&!h?o:!f&&h?u:null;if(c)return h&&s.x===u.x&&s.y===u.y?null:s;if(l)return f&&o.x===a.x&&o.y===a.y?null:a;if(f&&h)return null;if(f)return o;if(h)return u;const p=JC(s,this.vector(),a,e.vector());return p===null||!hl(i,p)?null:dl.round(p.x,p.y)}split(e){const t=[],n=e.events!==void 0,i=new xr(e,!0),s=new xr(e,!1),o=this.rightSE;this.replaceRightSE(s),t.push(s),t.push(i);const a=new Bs(i,o,this.rings.slice(),this.windings.slice());return xr.comparePoints(a.leftSE.point,a.rightSE.point)>0&&a.swapEvents(),xr.comparePoints(this.leftSE.point,this.rightSE.point)>0&&this.swapEvents(),n&&(i.checkForConsuming(),s.checkForConsuming()),t}swapEvents(){const e=this.rightSE;this.rightSE=this.leftSE,this.leftSE=e,this.leftSE.isLeft=!0,this.rightSE.isLeft=!1;for(let t=0,n=this.windings.length;t<n;t++)this.windings[t]*=-1}consume(e){let t=this,n=e;for(;t.consumedBy;)t=t.consumedBy;for(;n.consumedBy;)n=n.consumedBy;const i=Bs.compare(t,n);if(i!==0){if(i>0){const s=t;t=n,n=s}if(t.prev===n){const s=t;t=n,n=s}for(let s=0,o=n.rings.length;s<o;s++){const a=n.rings[s],u=n.windings[s],l=t.rings.indexOf(a);l===-1?(t.rings.push(a),t.windings.push(u)):t.windings[l]+=u}n.rings=null,n.windings=null,n.consumedBy=t,n.leftSE.consumedBy=t.leftSE,n.rightSE.consumedBy=t.rightSE}}prevInResult(){return this._prevInResult!==void 0?this._prevInResult:(this.prev?this.prev.isInResult()?this._prevInResult=this.prev:this._prevInResult=this.prev.prevInResult():this._prevInResult=null,this._prevInResult)}beforeState(){if(this._beforeState!==void 0)return this._beforeState;if(!this.prev)this._beforeState={rings:[],windings:[],multiPolys:[]};else{const e=this.prev.consumedBy||this.prev;this._beforeState=e.afterState()}return this._beforeState}afterState(){if(this._afterState!==void 0)return this._afterState;const e=this.beforeState();this._afterState={rings:e.rings.slice(0),windings:e.windings.slice(0),multiPolys:[]};const t=this._afterState.rings,n=this._afterState.windings,i=this._afterState.multiPolys;for(let a=0,u=this.rings.length;a<u;a++){const l=this.rings[a],c=this.windings[a],h=t.indexOf(l);h===-1?(t.push(l),n.push(c)):n[h]+=c}const s=[],o=[];for(let a=0,u=t.length;a<u;a++){if(n[a]===0)continue;const l=t[a],c=l.poly;if(o.indexOf(c)===-1)if(l.isExterior)s.push(c);else{o.indexOf(c)===-1&&o.push(c);const h=s.indexOf(l.poly);h!==-1&&s.splice(h,1)}}for(let a=0,u=s.length;a<u;a++){const l=s[a].multiPoly;i.indexOf(l)===-1&&i.push(l)}return this._afterState}isInResult(){if(this.consumedBy)return!1;if(this._isInResult!==void 0)return this._isInResult;const e=this.beforeState().multiPolys,t=this.afterState().multiPolys;switch(ni.type){case"union":{const n=e.length===0,i=t.length===0;this._isInResult=n!==i;break}case"intersection":{let n,i;e.length<t.length?(n=e.length,i=t.length):(n=t.length,i=e.length),this._isInResult=i===ni.numMultiPolys&&n<i;break}case"xor":{const n=Math.abs(e.length-t.length);this._isInResult=n%2===1;break}case"difference":{const n=i=>i.length===1&&i[0].isSubject;this._isInResult=n(e)!==n(t);break}default:throw new Error(`Unrecognized operation type found ${ni.type}`)}return this._isInResult}}class Uv{constructor(e,t,n){if(!Array.isArray(e)||e.length===0)throw new Error("Input geometry is not a valid Polygon or MultiPolygon");if(this.poly=t,this.isExterior=n,this.segments=[],typeof e[0][0]!="number"||typeof e[0][1]!="number")throw new Error("Input geometry is not a valid Polygon or MultiPolygon");const i=dl.round(e[0][0],e[0][1]);this.bbox={ll:{x:i.x,y:i.y},ur:{x:i.x,y:i.y}};let s=i;for(let o=1,a=e.length;o<a;o++){if(typeof e[o][0]!="number"||typeof e[o][1]!="number")throw new Error("Input geometry is not a valid Polygon or MultiPolygon");let u=dl.round(e[o][0],e[o][1]);u.x===s.x&&u.y===s.y||(this.segments.push(Bs.fromRing(s,u,this)),u.x<this.bbox.ll.x&&(this.bbox.ll.x=u.x),u.y<this.bbox.ll.y&&(this.bbox.ll.y=u.y),u.x>this.bbox.ur.x&&(this.bbox.ur.x=u.x),u.y>this.bbox.ur.y&&(this.bbox.ur.y=u.y),s=u)}(i.x!==s.x||i.y!==s.y)&&this.segments.push(Bs.fromRing(s,i,this))}getSweepEvents(){const e=[];for(let t=0,n=this.segments.length;t<n;t++){const i=this.segments[t];e.push(i.leftSE),e.push(i.rightSE)}return e}}class KC{constructor(e,t){if(!Array.isArray(e))throw new Error("Input geometry is not a valid Polygon or MultiPolygon");this.exteriorRing=new Uv(e[0],this,!0),this.bbox={ll:{x:this.exteriorRing.bbox.ll.x,y:this.exteriorRing.bbox.ll.y},ur:{x:this.exteriorRing.bbox.ur.x,y:this.exteriorRing.bbox.ur.y}},this.interiorRings=[];for(let n=1,i=e.length;n<i;n++){const s=new Uv(e[n],this,!1);s.bbox.ll.x<this.bbox.ll.x&&(this.bbox.ll.x=s.bbox.ll.x),s.bbox.ll.y<this.bbox.ll.y&&(this.bbox.ll.y=s.bbox.ll.y),s.bbox.ur.x>this.bbox.ur.x&&(this.bbox.ur.x=s.bbox.ur.x),s.bbox.ur.y>this.bbox.ur.y&&(this.bbox.ur.y=s.bbox.ur.y),this.interiorRings.push(s)}this.multiPoly=t}getSweepEvents(){const e=this.exteriorRing.getSweepEvents();for(let t=0,n=this.interiorRings.length;t<n;t++){const i=this.interiorRings[t].getSweepEvents();for(let s=0,o=i.length;s<o;s++)e.push(i[s])}return e}}class Gv{constructor(e,t){if(!Array.isArray(e))throw new Error("Input geometry is not a valid Polygon or MultiPolygon");try{typeof e[0][0][0]=="number"&&(e=[e])}catch{}this.polys=[],this.bbox={ll:{x:Number.POSITIVE_INFINITY,y:Number.POSITIVE_INFINITY},ur:{x:Number.NEGATIVE_INFINITY,y:Number.NEGATIVE_INFINITY}};for(let n=0,i=e.length;n<i;n++){const s=new KC(e[n],this);s.bbox.ll.x<this.bbox.ll.x&&(this.bbox.ll.x=s.bbox.ll.x),s.bbox.ll.y<this.bbox.ll.y&&(this.bbox.ll.y=s.bbox.ll.y),s.bbox.ur.x>this.bbox.ur.x&&(this.bbox.ur.x=s.bbox.ur.x),s.bbox.ur.y>this.bbox.ur.y&&(this.bbox.ur.y=s.bbox.ur.y),this.polys.push(s)}this.isSubject=t}getSweepEvents(){const e=[];for(let t=0,n=this.polys.length;t<n;t++){const i=this.polys[t].getSweepEvents();for(let s=0,o=i.length;s<o;s++)e.push(i[s])}return e}}class Lc{static factory(e){const t=[];for(let n=0,i=e.length;n<i;n++){const s=e[n];if(!s.isInResult()||s.ringOut)continue;let o=null,a=s.leftSE,u=s.rightSE;const l=[a],c=a.point,h=[];for(;o=a,a=u,l.push(a),a.point!==c;)for(;;){const f=a.getAvailableLinkedEvents();if(f.length===0){const C=l[0].point,S=l[l.length-1].point;throw new Error(`Unable to complete output ring starting at [${C.x}, ${C.y}]. Last matching segment found ends at [${S.x}, ${S.y}].`)}if(f.length===1){u=f[0].otherSE;break}let p=null;for(let C=0,S=h.length;C<S;C++)if(h[C].point===a.point){p=C;break}if(p!==null){const C=h.splice(p)[0],S=l.splice(C.index);S.unshift(S[0].otherSE),t.push(new Lc(S.reverse()));continue}h.push({index:l.length,point:a.point});const v=a.getLeftmostComparator(o);u=f.sort(v)[0].otherSE;break}t.push(new Lc(l))}return t}constructor(e){this.events=e;for(let t=0,n=e.length;t<n;t++)e[t].segment.ringOut=this;this.poly=null}getGeom(){let e=this.events[0].point;const t=[e];for(let l=1,c=this.events.length-1;l<c;l++){const h=this.events[l].point,f=this.events[l+1].point;jv(h,e,f)!==0&&(t.push(h),e=h)}if(t.length===1)return null;const n=t[0],i=t[1];jv(n,e,i)===0&&t.shift(),t.push(t[0]);const s=this.isExteriorRing()?1:-1,o=this.isExteriorRing()?0:t.length-1,a=this.isExteriorRing()?t.length:-1,u=[];for(let l=o;l!=a;l+=s)u.push([t[l].x,t[l].y]);return u}isExteriorRing(){if(this._isExteriorRing===void 0){const e=this.enclosingRing();this._isExteriorRing=e?!e.isExteriorRing():!0}return this._isExteriorRing}enclosingRing(){return this._enclosingRing===void 0&&(this._enclosingRing=this._calcEnclosingRing()),this._enclosingRing}_calcEnclosingRing(){let e=this.events[0];for(let i=1,s=this.events.length;i<s;i++){const o=this.events[i];xr.compare(e,o)>0&&(e=o)}let t=e.segment.prevInResult(),n=t?t.prevInResult():null;for(;;){if(!t)return null;if(!n)return t.ringOut;if(n.ringOut!==t.ringOut)return n.ringOut.enclosingRing()!==t.ringOut?t.ringOut:t.ringOut.enclosingRing();t=n.prevInResult(),n=t?t.prevInResult():null}}}class Wv{constructor(e){this.exteriorRing=e,e.poly=this,this.interiorRings=[]}addInterior(e){this.interiorRings.push(e),e.poly=this}getGeom(){const e=[this.exteriorRing.getGeom()];if(e[0]===null)return null;for(let t=0,n=this.interiorRings.length;t<n;t++){const i=this.interiorRings[t].getGeom();i!==null&&e.push(i)}return e}}class ZC{constructor(e){this.rings=e,this.polys=this._composePolys(e)}getGeom(){const e=[];for(let t=0,n=this.polys.length;t<n;t++){const i=this.polys[t].getGeom();i!==null&&e.push(i)}return e}_composePolys(e){const t=[];for(let n=0,i=e.length;n<i;n++){const s=e[n];if(!s.poly)if(s.isExteriorRing())t.push(new Wv(s));else{const o=s.enclosingRing();o.poly||t.push(new Wv(o)),o.poly.addInterior(s)}}return t}}class QC{constructor(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Bs.compare;this.queue=e,this.tree=new Rd(t),this.segments=[]}process(e){const t=e.segment,n=[];if(e.consumedBy)return e.isLeft?this.queue.remove(e.otherSE):this.tree.remove(t),n;const i=e.isLeft?this.tree.add(t):this.tree.find(t);if(!i)throw new Error(`Unable to find segment #${t.id} [${t.leftSE.point.x}, ${t.leftSE.point.y}] -> [${t.rightSE.point.x}, ${t.rightSE.point.y}] in SweepLine tree.`);let s=i,o=i,a,u;for(;a===void 0;)s=this.tree.prev(s),s===null?a=null:s.key.consumedBy===void 0&&(a=s.key);for(;u===void 0;)o=this.tree.next(o),o===null?u=null:o.key.consumedBy===void 0&&(u=o.key);if(e.isLeft){let l=null;if(a){const h=a.getIntersection(t);if(h!==null&&(t.isAnEndpoint(h)||(l=h),!a.isAnEndpoint(h))){const f=this._splitSafely(a,h);for(let p=0,v=f.length;p<v;p++)n.push(f[p])}}let c=null;if(u){const h=u.getIntersection(t);if(h!==null&&(t.isAnEndpoint(h)||(c=h),!u.isAnEndpoint(h))){const f=this._splitSafely(u,h);for(let p=0,v=f.length;p<v;p++)n.push(f[p])}}if(l!==null||c!==null){let h=null;l===null?h=c:c===null?h=l:h=xr.comparePoints(l,c)<=0?l:c,this.queue.remove(t.rightSE),n.push(t.rightSE);const f=t.split(h);for(let p=0,v=f.length;p<v;p++)n.push(f[p])}n.length>0?(this.tree.remove(t),n.push(e)):(this.segments.push(t),t.prev=a)}else{if(a&&u){const l=a.getIntersection(u);if(l!==null){if(!a.isAnEndpoint(l)){const c=this._splitSafely(a,l);for(let h=0,f=c.length;h<f;h++)n.push(c[h])}if(!u.isAnEndpoint(l)){const c=this._splitSafely(u,l);for(let h=0,f=c.length;h<f;h++)n.push(c[h])}}}this.tree.remove(t)}return n}_splitSafely(e,t){this.tree.remove(e);const n=e.rightSE;this.queue.remove(n);const i=e.split(t);return i.push(n),e.consumedBy===void 0&&this.tree.add(e),i}}const Hv=typeof process<"u"&&process.env.POLYGON_CLIPPING_MAX_QUEUE_SIZE||1e6,tS=typeof process<"u"&&process.env.POLYGON_CLIPPING_MAX_SWEEPLINE_SEGMENTS||1e6;class eS{run(e,t,n){ni.type=e,dl.reset();const i=[new Gv(t,!0)];for(let h=0,f=n.length;h<f;h++)i.push(new Gv(n[h],!1));if(ni.numMultiPolys=i.length,ni.type==="difference"){const h=i[0];let f=1;for(;f<i.length;)Vd(i[f].bbox,h.bbox)!==null?f++:i.splice(f,1)}if(ni.type==="intersection")for(let h=0,f=i.length;h<f;h++){const p=i[h];for(let v=h+1,C=i.length;v<C;v++)if(Vd(p.bbox,i[v].bbox)===null)return[]}const s=new Rd(xr.compare);for(let h=0,f=i.length;h<f;h++){const p=i[h].getSweepEvents();for(let v=0,C=p.length;v<C;v++)if(s.insert(p[v]),s.size>Hv)throw new Error("Infinite loop when putting segment endpoints in a priority queue (queue size too big).")}const o=new QC(s);let a=s.size,u=s.pop();for(;u;){const h=u.key;if(s.size===a){const p=h.segment;throw new Error(`Unable to pop() ${h.isLeft?"left":"right"} SweepEvent [${h.point.x}, ${h.point.y}] from segment #${p.id} [${p.leftSE.point.x}, ${p.leftSE.point.y}] -> [${p.rightSE.point.x}, ${p.rightSE.point.y}] from queue.`)}if(s.size>Hv)throw new Error("Infinite loop when passing sweep line over endpoints (queue size too big).");if(o.segments.length>tS)throw new Error("Infinite loop when passing sweep line over endpoints (too many sweep line segments).");const f=o.process(h);for(let p=0,v=f.length;p<v;p++){const C=f[p];C.consumedBy===void 0&&s.insert(C)}a=s.size,u=s.pop()}dl.reset();const l=Lc.factory(o.segments);return new ZC(l).getGeom()}}const ni=new eS;var jd={union:function(r){for(var e=arguments.length,t=new Array(e>1?e-1:0),n=1;n<e;n++)t[n-1]=arguments[n];return ni.run("union",r,t)},intersection:function(r){for(var e=arguments.length,t=new Array(e>1?e-1:0),n=1;n<e;n++)t[n-1]=arguments[n];return ni.run("intersection",r,t)},xor:function(r){for(var e=arguments.length,t=new Array(e>1?e-1:0),n=1;n<e;n++)t[n-1]=arguments[n];return ni.run("xor",r,t)},difference:function(r){for(var e=arguments.length,t=new Array(e>1?e-1:0),n=1;n<e;n++)t[n-1]=arguments[n];return ni.run("difference",r,t)}};function nS(r,e){var t=Jn(r),n=Jn(e),i=r.properties||{},s=jd.difference(t.coordinates,n.coordinates);return s.length===0?null:s.length===1?Pn(s[0],i):Yh(s,i)}function rS(r,e,t){t===void 0&&(t={});var n=Jn(r),i=Jn(e),s=jd.intersection(n.coordinates,i.coordinates);return s.length===0?null:s.length===1?Pn(s[0],t.properties):Yh(s,t.properties)}function iS(r,e,t){t===void 0&&(t={});var n=Jn(r),i=Jn(e),s=jd.union(n.coordinates,i.coordinates);return s.length===0?null:s.length===1?Pn(s[0],t.properties):Yh(s,t.properties)}function qv(r,e){(r[0][0]!==r[r.length-1][0]||r[0][1]!==r[r.length-1][1]||r[0][2]!==r[r.length-1][2])&&r.push(r[0]),(e[0][0]!==e[e.length-1][0]||e[0][1]!==e[e.length-1][1]||e[0][2]!==e[e.length-1][2])&&e.push(e[0]);const t=rS(Pn([r]),Pn([e]));if(t)return t.geometry.coordinates}function Xv(r,e){(r[0][0]!==r[r.length-1][0]||r[0][1]!==r[r.length-1][1]||r[0][2]!==r[r.length-1][2])&&r.push(r[0]),(e[0][0]!==e[e.length-1][0]||e[0][1]!==e[e.length-1][1]||e[0][2]!==e[e.length-1][2])&&e.push(e[0]);const t=iS(Pn([r]),Pn([e]));if(t)return t.geometry.coordinates}function Yv(r,e=500,t="meters"){const n=OC(Br(r),e,{units:t});if(n)return n.geometry.coordinates}function Jv(r,e){(r[0][0]!==r[r.length-1][0]||r[0][1]!==r[r.length-1][1]||r[0][2]!==r[r.length-1][2])&&r.push(r[0]),(e[0][0]!==e[e.length-1][0]||e[0][1]!==e[e.length-1][1]||e[0][2]!==e[e.length-1][2])&&e.push(e[0]);const t=nS(Pn([r]),Pn([e]));if(t)return t.geometry.coordinates}function $v(r,e,t=10,n="meters"){return DC(r,e,{steps:t,units:n}).geometry.coordinates}function Bd(r,e){(r[0][0]!==r[r.length-1][0]||r[0][1]!==r[r.length-1][1]||r[0][2]!==r[r.length-1][2])&&r.push(r[0]),(e[0][0]!==e[e.length-1][0]||e[0][1]!==e[e.length-1][1]||e[0][2]!==e[e.length-1][2])&&e.push(e[0]);const t=Pn([r]),n=Pn([e]);return CE(t,n)?"oneBig":DE(t,n)?"twoBig":!1}function Kv(r){const e=ys(Qs(r,["0"])),t=ys(Qs(r,["1"])),n=ys(Qs(r,["2"])),i=Wi(Qs(r,["0"])),s=Wi(Qs(r,["1"])),o=Wi(Qs(r,["2"]));return{minPos:[e,t,n],maxPos:[i,s,o],center:[(e+i)*.5,(t+s)*.5,(n+o)*.5]}}function Zv(r){const{minPos:e,maxPos:t,center:n}=Kv(r);if(e.some(a=>!Number.isFinite(a)||t.some(u=>!Number.isFinite(u))||n.some(u=>!Number.isFinite(u)))){console.warn("geoCenterAndRadiusFromPositions error: minPos.some(e => !Number.isFinite(e) || maxPos.some(e => !Number.isFinite(e)) || center.some(e => !Number.isFinite(e))");return}const i=Ql(e,t);let s=i*.5;const o=Math.abs(e[2]-t[2]);return o!=0&&(s=Math.sqrt(i*i+o*o)*.5),{center:n,radius:s}}function Qv(r,e){const t=Vr(r),n=Vr(e);return g.Vector.distance(t,n)}function fl(r,e){const t=[],n=r.length;let i=0;for(let s=0;s<n-1;++s){if(e===void 0||e==="GEODESIC"){const o=Ql(r[s],r[s+1]),a=Math.abs(r[s][2]-r[s+1][2]);if(a===0)i+=o;else{const u=Math.sqrt(o*o+a*a);i+=u}}else if(e==="RHUMB"){const o=ym(r[s],r[s+1]),a=Math.abs(r[s][2]-r[s+1][2]);if(a===0)i+=o;else{const u=Math.sqrt(o*o+a*a);i+=u}}else if(e==="NONE"){const o=Qv(r[s],r[s+1]);i+=o}else console.warn(`未知的arcType: ${e},导致距离无法计算!`);t.push(i)}return t}function zd(r){const e="__getXyzFromPostion";let t=Xn(r,e);return(!t||!g.Vector.equals(t[0],r))&&(t=[[...r],Vr(r)],fi(r,e,t)),t[1]}class sS{constructor(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(let t=0;t<this.length;t++)this.points[t].z=this.points[t].z||0;for(let t=0;t<this.length-1;t++){const n=this.points[t],i=this.points[t+1];this.centers.push({x:(n.x+i.x)/2,y:(n.y+i.y)/2,z:(n.z+i.z)/2})}this.controls.push([this.points[0],this.points[0]]);for(let t=0;t<this.centers.length-1;t++){const n=this.points[t+1].x-(this.centers[t].x+this.centers[t+1].x)/2,i=this.points[t+1].y-(this.centers[t].y+this.centers[t+1].y)/2,s=this.points[t+1].z-(this.centers[t].z+this.centers[t+1].z)/2;this.controls.push([{x:(1-this.sharpness)*this.points[t+1].x+this.sharpness*(this.centers[t].x+n),y:(1-this.sharpness)*this.points[t+1].y+this.sharpness*(this.centers[t].y+i),z:(1-this.sharpness)*this.points[t+1].z+this.sharpness*(this.centers[t].z+s)},{x:(1-this.sharpness)*this.points[t+1].x+this.sharpness*(this.centers[t+1].x+n),y:(1-this.sharpness)*this.points[t+1].y+this.sharpness*(this.centers[t+1].y+i),z:(1-this.sharpness)*this.points[t+1].z+this.sharpness*(this.centers[t+1].z+s)}])}return this.controls.push([this.points[this.length-1],this.points[this.length-1]]),this.steps=this.cacheSteps(this.stepLength),this}cacheSteps(e){const t=[];let n=this.pos(0);t.push(0);for(let i=0;i<this.duration;i+=10){const s=this.pos(i);Math.sqrt((s.x-n.x)*(s.x-n.x)+(s.y-n.y)*(s.y-n.y)+(s.z-n.z)*(s.z-n.z))>e&&(t.push(i),n=s)}return t}vector(e){const t=this.pos(e+10),n=this.pos(e-10);return{angle:180*Math.atan2(t.y-n.y,t.x-n.x)/3.14,speed:Math.sqrt((n.x-t.x)*(n.x-t.x)+(n.y-t.y)*(n.y-t.y)+(n.z-t.z)*(n.z-t.z))}}pos(e){let t=e-this.delay;t<0&&(t=0),t>this.duration&&(t=this.duration-1);const n=t/this.duration;if(n>=1)return this.points[this.length-1];const i=Math.floor((this.points.length-1)*n),s=(this.length-1)*n-i;return oS(s,this.points[i],this.controls[i][1],this.controls[i+1][0],this.points[i+1])}}function oS(r,e,t,n,i){const s=aS(r);return{x:i.x*s[0]+n.x*s[1]+t.x*s[2]+e.x*s[3],y:i.y*s[0]+n.y*s[1]+t.y*s[2]+e.y*s[3],z:i.z*s[0]+n.z*s[1]+t.z*s[2]+e.z*s[3]}}function aS(r){const e=r*r;return[e*r,3*e*(1-r),3*r*(1-r)*(1-r),(1-r)*(1-r)*(1-r)]}function uS(r,e){e===void 0&&(e={});var t=e.resolution||1e3,n=e.sharpness||.85;const i=[],s=r.map(l=>{const[c,h,f]=Vr(l);return{x:c,y:h,z:f}});for(var o=new sS({duration:t,points:s,sharpness:n}),a=function(l){var c=o.pos(l);const h=Xh([c.x,c.y,c.z]);i.push(h)},u=0;u<o.duration;u+=10)a(u);return a(o.duration),i}function ty(r,e,t){return uS(r,{resolution:e,sharpness:t})}class ey extends ra{constructor(e){super(e)}get propUiTree(){return this.uiTree}}class Ud extends na{constructor(e,t,n){super(e,t),this._property=n}get property(){return this._property}}class Gd extends Ud{constructor(e,t){super(e,!1,t)}}class Wd extends Ud{constructor(e,t){super(e,!0,t)}get groupChildren(){return this.children}}function ny(r,e){const t=new ey(e),n=r.getProperties("chinese"),i=[];for(let s of n)if(s instanceof ut){const o=new Wd(t,s);o.d(()=>s.destroy()),t.children.push(o),i.push(o)}else{const o=new Gd(t,s);t.children.push(o),o.d(()=>s.destroy())}for(;i.length>0;){const s=i.pop();if(!s)throw new Error("should not be here!");const o=s;if(!(o.property instanceof ut))throw new Error("!(treeItem.property instanceof GroupProperty)");for(let a of o.property.children)if(a instanceof ut){const u=new Wd(t,a);u.d(()=>a.destroy()),o.groupChildren.push(u),i.push(u)}else{const u=new Gd(t,a);o.groupChildren.push(u),u.d(()=>a.destroy())}}return t.d(()=>{t.itemChildrenChanged.reset(),t.itemChildrenToChange.reset();const s=[...t.getDescendants()];s.forEach(o=>{o.children&&(o.children.length=0),o.destroy()}),s.length=0}),t}class ka extends V{constructor(t){super();d(this,"_propTreeReact",this.dv(j(void 0)));this.d(()=>this._propTreeReact.value=void 0),this.dv(new Ee(this.sceneObjectChanged,n=>{if(!n)return;const i=new V;return i.d(n.toDestroyEvent.don(()=>{this.sceneObject=void 0})),i})),this.d(this.sceneObjectChanged.don(n=>{this._propTreeReact.value=void 0,!(!n||!(n instanceof rt))&&(this._propTreeReact.value=ny(n,t))}))}get propTree(){return this._propTreeReact.value}get propTreeChanged(){return this._propTreeReact.changed}}(r=>{r.createDefaultProps=()=>({sceneObject:void 0})})(ka||(ka={})),Gi(ka.prototype,ka.createDefaultProps);function Hd(r){return vs(r,(e,t)=>e[0]===t[0]&&e[1]===t[1],e=>[...e])}function ry(r,e){const t=new Array;for(let n of r)t.push(e(n));return t}function qd(r,e){return r===void 0&&e===void 0?!0:!r||!e?!1:r[0]===e[0]&&r[1]===e[1]&&r[2]===e[2]}function iy(r,e,t){var i;((i=e.attachedViewers.values().toArray()[0])==null?void 0:i.getEngineObject(e))?t.call(r):requestAnimationFrame(()=>iy(r,e,t))}function lS(r,e,t,n=!0){n&&t(),r.dispose(e.disposableOn(t))}function cS(r,e){const{type:t,id:n}=r;if(t){const i=rt.create(t,n);if(i)return i.json=r,i;console.warn(`cannot create sceneObject from type(${t})`)}else console.warn(`cannot create sceneObject from type(${t})`)}function sy(r){const e=r.children&&fh(r.children,n=>{if(!(n instanceof yn))throw new Error("!(treeItem instanceof SceneTreeItem)");return!n.show})||!1,t=r.sceneTree.getSceneObjectShowFunc(r.sceneObject);return!e||t}class yn extends na{constructor(t,n=!1,i,s,o=!0){super(t,n,i);d(this,"_dragDrop");d(this,"_showChangedNotAffectChildren",!1);d(this,"_showChangedNotAffectParent",!1);d(this,"_type",this.dv(j("Unknown")));d(this,"_isExport",this.dv(j(!0)));const a=()=>this.tree&&this.tree.itemsChanged.emit([this]);this.dispose(this.nameChanged.disposableOn(a)),this.name=`未命名条目(${this.id})`,this.extras=s,this._isExport.value=o;let u;const l=()=>{u&&(u(),u=void 0)};this.dispose(l),this.dispose(this.sceneObjectChanged.disposableOn(c=>{l(),c&&(u=nt([this,"name"],[c,"name"]))})),this.dispose(this.showChanged.disposableOn(c=>{if(t.setSceneObjectShowFunc(this.sceneObject,c),this.tree&&this.tree.forceRedraw(),this.children&&!this._showChangedNotAffectChildren)for(let h of this.children)h instanceof yn&&(h._showChangedNotAffectParent=!0,h.show=c,h._showChangedNotAffectParent=!1);this.parent&&this.parent instanceof yn&&!this._showChangedNotAffectParent&&(this.parent._showChangedNotAffectChildren=!0,this.parent.show=sy(this.parent),this.parent._showChangedNotAffectChildren=!1)})),this.dv(new Ee(this.sceneObjectChanged,()=>{if(!this.sceneObject)return;const c=new V;if("show"in this.sceneObject&&"showChanged"in this.sceneObject&&this.sceneObject.showChanged instanceof O){const h=()=>{this.show=t.getSceneObjectShowFunc(this.sceneObject)};h(),c.dispose(this.sceneObject.showChanged.disposableOn(h))}else if("enabled"in this.sceneObject&&"enabledChanged"in this.sceneObject&&this.sceneObject.enabledChanged instanceof O){const h=()=>{this.show=t.getSceneObjectShowFunc(this.sceneObject)};h(),c.dispose(this.sceneObject.enabledChanged.disposableOn(h))}return c})),this.childrenChangedEvent.disposableOn(()=>{const c=sy(this);this._showChangedNotAffectChildren=!0,this.show=c,this._showChangedNotAffectChildren=!1});{const c=()=>{let h="Unknown";this.sceneObject?h=this.sceneObject.typeName:this.children&&(h="Folder"),this._type.value=h};this.dispose(this.sceneObjectChanged.disposableOn(c)),this.dispose(this.childrenResetedEvent.disposableOn(c)),c()}}get dragDrop(){return this._dragDrop||(this._dragDrop=this.dv(this.sceneTree.createTreeItemDragDropFunc(this))),this._dragDrop}get type(){return this._type.value}get typeChanged(){return this._type.changed}get isExport(){return this._isExport.value}get isExportChanged(){return this._isExport.changed}set isExport(t){this._isExport.value=t}get sceneTree(){return this.tree}get jsonStr(){return JSON.stringify(this.json,void 0," ")}set jsonStr(t){try{this.json=JSON.parse(t)}catch(n){console.error(`sceneTreeItem.jsonStr error ${n}`,n)}}get completeJson(){const t=this.children&&[...this.children].filter(n=>n.isExport).map(n=>n.completeJson);return{name:this.name,show:this.show?void 0:!1,collapsed:this.uiTreeObject.collapsed?!0:void 0,sceneObj:this.sceneObject&&this.sceneObject.completeJson,children:t,extras:this.extras}}get json(){const t=this.children&&[...this.children].filter(n=>n.isExport).map(n=>n.json);return{name:this.name,show:this.show?void 0:!1,collapsed:this.uiTreeObject.collapsed?!0:void 0,sceneObj:this.sceneObject&&this.sceneObject.json,children:t,extras:this.extras}}set json(t){if(t.name!==void 0&&(this.name=t.name),this.extras=t.extras,this._showChangedNotAffectChildren=!0,this._showChangedNotAffectParent=!0,this.show=t.show??!0,this._showChangedNotAffectChildren=!1,this._showChangedNotAffectParent=!1,this.uiTreeObject.collapsed=t.collapsed??!1,this.sceneObject=void 0,t.sceneObj&&(this.sceneObject=this.sceneTree.createSceneObjectFunc(t.sceneObj,this)),!!t.children){if(this.resetChildren(!0),!this.children)throw new Error("resetChildren(true) cannot get children!");for(let n of t.children){const i=new yn(this.tree,!0);i.json=n,this.children.push(i)}}}clone(){try{const t=new yn(this.sceneTree,!!this.children,void 0,this.extras,this.isExport);return t.json=this.json,t.name=this.sceneTree.getSceneTreeItemCloneNameFunc(this),t}catch(t){console.error(`SceneTreeItem.clone error: ${t}`,t)}}insertNewTreeItem(t,n){if(t==="FolderInnerOrAfter"||t==="FolderInnerOrBefore"||t==="FolderInner"){if(n&&n.tree!==this.tree)return console.warn("newTreeItem.tree !== this.tree"),!1;if(this.children&&!(t.includes("Or")&&this.sceneObject))return n&&this.children.push(n),!0;if(t==="FolderInner")return!1;if(t==="FolderInnerOrAfter")return super.insertNewTreeItem("After",n);if(t==="FolderInnerOrBefore")return super.insertNewTreeItem("Before",n);throw new Error("should not be here!")}else return super.insertNewTreeItem(t,n)}}(r=>{r.createDefaultProps=()=>({name:"未命名条目",nameEditing:!1,sceneObject:void 0,show:!0,extras:Qt(void 0)})})(yn||(yn={})),Gi(yn.prototype,yn.createDefaultProps);function oy(r,e,t){let{offsetY:n}=e;if(!e.target||!("clientTop"in e.target))return"none";n+=2,n+=e.target.clientTop;let i="none";return r.children?n<=t*.3?i="before":n>=t*.7?!r.uiTreeObject.collapsed&&r.children.length>0?i="inner":i="after":i="inner":n<=t*.5?i="before":i="after",i}class ay extends kg{constructor(e){super(),this._treeItem=e;const{dragStartDataManager:t}=this._treeItem.sceneTree;let n="none";const i=this.disposeVar(Vp(()=>{this._treeItem.uiTreeObject.moveToPositionMode=n,console.log(`uiTreeObject.moveToPositionMode = lastDragMode(${n});`)},200));function s(o){n!==o&&(n=o,i.restart())}this.dispose(this._dragStartEvent.disposableOn(o=>{t.data={type:"UITreeA",value:this._treeItem}})),this.dispose(this._dragOverEvent.disposableOn(o=>{if(!o.dataTransfer)return;o.preventDefault();const a=t;if(a.data&&a.data.type==="UITreeA"&&a.data.value!==void 0){const u=a.data.value,l=this._treeItem,{tree:c}=l;if(c){const h=[...c.selectedItems];~h.indexOf(u)||h.push(u);const f=oy(l,o,c.itemDivHeight);if(f!=="none"&&ra.canMoveToTreeItems(h,l,f)){o.dataTransfer.dropEffect="move",s(f);return}}}o.dataTransfer.dropEffect="none",s("none")})),this.dispose(this._dropEvent.disposableOn(o=>{const a=t;if(!(a.data&&a.data.type==="UITreeA"&&a.data.value!==void 0))return;const u=a.data.value,l=this._treeItem,{tree:c}=l;if(!c)return;const h=[...c.selectedItems];~h.indexOf(u)||h.push(u);const f=oy(l,o,c.itemDivHeight);f!=="none"&&ra.canMoveToTreeItems(h,l,f)&&(ra.moveToTreeItems(h,l,f),a.data=void 0,s("none"))})),this.dispose(this._dragLeaveEvent.disposableOn(()=>{n="none",i.restart()}))}}function hS(r){if(!(r instanceof yn))throw new Error("defaultCreateTreeItemDragDrop !(treeItem instanceof SceneTreeItem)");return new ay(r)}function dS(r){let e=!1;return r&&("show"in r?e=r.show??!0:"enabled"in r&&(e=r.enabled??!0)),e}function fS(r,e){r&&("show"in r?r.show=e:"enabled"in r&&(r.enabled=e))}const pS=["EnvironmentVariables","ScriptsLoader","SceneScript","ScriptLoader"];function gS(r){const e=[],{root:t={}}=r,n=[t];for(;n.length>0;){const i=n.pop();if(!i)throw new Error("!todo");if(i.children){for(let s of i.children)if(s.children&&n.unshift(s),s.sceneObj){const{type:o=void 0}=s.sceneObj;o||(console.warn("sceneObjJson has no type! treeItem.sceneObj: "),console.warn(s.sceneObj)),o&&pS.includes(o)&&e.push(s.sceneObj)}}}return e}async function mS(r,e){const t=gS(r);let n=0;const i=t.length;for(let s of t)if(++n,e){const o=n/i;e(o,n,i)}}class uy extends V{constructor(t,n){super();d(this,"treeItemContexMenuCallback");this._sceneTree=t,this._projectManager=n}get sceneTree(){return this._sceneTree}}class vS extends V{constructor(t){super();d(this,"_jsonLoadingEvent",this.disposeVar(new O));d(this,"_setJsonProcessing",this.disposeVar(Yn(async(t,n)=>{this._jsonLoadingEvent.emit({type:"init"}),this._jsonLoadingEvent.emit({type:"loading"}),n&&await t.promise(this._sceneTree.preloadFunc(n)),this._setJson(n),this._jsonLoadingEvent.emit({type:"loaded"})})));this._sceneTree=t,this._setJsonProcessing.errorFunc=n=>{this._jsonLoadingEvent.emit({type:"error",error:n})}}get jsonLoadingEvent(){return this._jsonLoadingEvent}_setJson(t){try{this._sceneTree.setJson(t||{})}catch(n){console.error(`json数据装配时发生错误!error: ${n}`)}}get json(){return this._sceneTree.getJson()}set json(t){this._setJsonProcessing.restart(new Fr("JSON重新赋值!"),t)}get jsonStr(){return JSON.stringify(this.json,void 0," ")}set jsonStr(t){this.json=JSON.parse(t)}}function yS(r){return r.name+"_clone"}function Xd(r,e,t){if(r instanceof yn)return r.insertNewTreeItem(e,t);{const n={FolderInnerOrAfter:"InnerOrAfter",FolderInnerOrBefore:"InnerOrBefore",FolderInner:"Inner",InnerOrAfter:"InnerOrAfter",InnerOrBefore:"InnerOrBefore",Inner:"Inner",After:"After",Before:"Before"};return r.insertNewTreeItem(n[e],t)}}function _S(r){[r,...r.getDescendants()].forEach(e=>e.destroy())}const Hn=class Hn extends ra{constructor(t,n,i,s){super(i);d(this,"_jsonLoading",this.disposeVar(new vS(this)));d(this,"createSceneObjectFunc",Hn.defaultCreateSceneObjectFunc);d(this,"createTreeItemDragDropFunc",Hn.defaultCreateTreeItemDragDropFunc);d(this,"preloadFunc",Hn.defaultPreload);d(this,"getSceneObjectShowFunc",Hn.defaultGetSceneObjectShow);d(this,"setSceneObjectShowFunc",Hn.defaultSetSceneObjectShow);d(this,"getSceneTreeItemCloneNameFunc",Hn.defaultGetSceneTreeItemCloneNameFunc);d(this,"debug",!1);d(this,"_contextMenu",this.disposeVar(new uy(this,this.projectManager)));d(this,"_showPropUiOnSelecting",this.disposeVar(j(!0)));this._name=t,this._dragStartDataManager=n,this._projectManager=s,this.dispose(this.selectedItems.changedEvent.disposableOn(()=>{var a,u;globalThis.lssn=this.lastSelectedItem,globalThis.lsso=(a=this.lastSelectedItem)==null?void 0:a.sceneObject,this.debug&&console.log(((u=this.lastSelectedItem)==null?void 0:u.sceneObject)??"select null")}));const{sceneObjectsManager:o}=this._projectManager;this.dispose(this.itemsDeleted.disposableOn(a=>{for(let u of a){const l=u,{sceneObject:c}=l;c&&o.deleteSceneObject(c)&&c.destroy()&&ql(c,void 0);for(let h of l.getDescendants()){const{sceneObject:f}=h;f&&o.deleteSceneObject(f)&&f.destroy()&&ql(f,void 0)}_S(u)}})),this.dispose(this.itemsAdded.disposableOn(a=>{for(let u of a){const l=u;l.sceneObject&&o.addSceneObject(l.sceneObject)&&ql(l.sceneObject,l)}})),this.dispose(this.selectedItems.changedEvent.disposableOn(()=>{if(!this.showPropUiOnSelecting)return;this._projectManager.propUiTreeManager.sceneObject=void 0;const{lastSelectedItem:a}=this;a&&(this._projectManager.propUiTreeManager.sceneObject=a.sceneObject)}))}get json(){return this._jsonLoading.json}set json(t){this._jsonLoading.json=t}get jsonStr(){return this._jsonLoading.jsonStr}set jsonStr(t){this._jsonLoading.jsonStr=t}get jsonLoadingEvent(){return this._jsonLoading.jsonLoadingEvent}get name(){return this._name}get projectManager(){return this._projectManager}get contextMenu(){return this._contextMenu}get showPropUiOnSelecting(){return this._showPropUiOnSelecting.value}set showPropUiOnSelecting(t){this._showPropUiOnSelecting.value=t}get showPropUiOnSelectingChanged(){return this._showPropUiOnSelecting.changed}get sceneUiTree(){return this.uiTree}getTreeItemFromSceneObjId(t){const n=this.getDescendants();let i;for(let s of n)if(s.sceneObject&&s.sceneObject.id===t){i=s;break}return i}getTreeItemsFromSceneObjType(t){const n=this.getDescendants(),i=[],s=Array.isArray(t)?t:[t];for(let o of n)o.sceneObject&&s.includes(o.sceneObject.typeName)&&i.push(o);return i}getTreeItemsFromSceneObjName(t){var s;const n=this.getDescendants(),i=[];for(let o of n)(s=o.sceneObject)!=null&&s.name.includes(t)&&i.push(o);return i}get dragStartDataManager(){return this._dragStartDataManager}get completeJson(){return{root:{children:[...this.children].filter(t=>t.isExport).map(t=>t.completeJson)}}}getJson(){return{root:{children:[...this.children].filter(t=>t.isExport).map(t=>t.json)}}}setJson(t){var i;t.root=t.root||{};const n=t.root.children??[];this.root.resetChildren(!0);for(let s of n){const o=new yn(this,!0);o.json=s,(i=this.root.children)==null||i.push(o)}}testAddNewTreeItem(t,n){const i=t||this.lastSelectedItem||this.root;return i?Xd(i,n):!1}addNewTreeItem(t,n,i,s){const o=t||this.lastSelectedItem||this.root;if(o&&Xd(o,n)){const a=new yn(this,i);if(a.sceneObject=s,!Xd(o,n,a))throw new Error("currentTreeItem.insertNewTreeItem return false!");return a}}createSceneObjectTreeItem(t,n,i,s){const o=s??"FolderInnerOrAfter";if(!this.testAddNewTreeItem(i,o)){console.warn(`cannot addNewTreeItem! currentTreeItem(${i?i.id:"root"})`);return}const a=rt.create(t,n);return a?this.addNewTreeItem(i,s??"FolderInnerOrAfter",!0,a):void 0}createGroupTreeItem(t,n,i,s){const o=s??"FolderInnerOrAfter";if(!this.testAddNewTreeItem(i,o)){console.warn(`cannot addNewTreeItem! currentTreeItem(${i?i.id:"root"})`);return}const a=this.addNewTreeItem(i,s??"FolderInnerOrAfter",!0);if(!a){console.warn("addNewTreeItem error!");return}return a.name=t??"未命名组节点",a}createSceneObjectTreeItemFromClass(t,n,i,s){const o=s??"FolderInnerOrAfter";if(!this.testAddNewTreeItem(i,o))return;const a=rt.createFromClass(t,n);return a?this.addNewTreeItem(i,o,!0,a):void 0}createSceneObjectTreeItemFromJson(t,n,i){const s=i??"FolderInnerOrAfter";if(!this.testAddNewTreeItem(n,s))return;const o=rt.createFromJson(t);return console.log(o),o?this.addNewTreeItem(n,i??"FolderInnerOrAfter",!0,o):void 0}destroySceneObjectTreeItem(t){if(t===this.root){console.warn("cannot destroy root! please use function destroyAllSceneObjectTreeItems!");return}t.detachFromParent()}destroyAllSceneObjectTreeItems(){if(!this.root.children)return;const t=[...this.root.children];for(let n of t)this.destroySceneObjectTreeItem(n)}};d(Hn,"defaultCreateSceneObjectFunc",cS),d(Hn,"defaultCreateTreeItemDragDropFunc",hS),d(Hn,"defaultPreload",mS),d(Hn,"defaultGetSceneObjectShow",dS),d(Hn,"defaultSetSceneObjectShow",fS),d(Hn,"defaultGetSceneTreeItemCloneNameFunc",yS);let pl=Hn;const Yd={saturation:.35,brightness:1.4,gamma:.8,atmosphereScatteringIntensity:5,groundColor:[0,.09411764705882353,.3137254901960784,1]};class wS extends V{constructor(t){super();d(this,"_currentPosition",this.disposeVar(re(void 0)));d(this,"_currentRotation",this.disposeVar(re(void 0)));d(this,"_currentHeading",this.disposeVar(j(void 0)));d(this,"_isRotating",this.disposeVar(j(!1)));d(this,"_isGround",this.disposeVar(j(!1)));d(this,"_startPosition",[0,0,0]);d(this,"_startRotation",[0,0,0]);d(this,"_processing",this.disposeVar(Yn(async(t,n,i,s)=>{const{currentPosition:o,currentRotation:a}=this;if(!o||s<=0||!a){this._currentPosition.value=n,this._currentRotation.value=i;return}const u=this._startPosition;u.splice(0,3,...o);const l=this._startRotation;l.splice(0,3,...a);let c=Date.now();const h=Bu(u,n);this._currentHeading.value=h;const p=Ql(u,n)/s,v=[i[0]-l[0],i[1]-l[1],i[2]-l[2]],C=n[2]-u[2];await t.promise(new Promise(S=>{t.disposer.dispose(Rl(async()=>{let P=Date.now()-c;P=P<0?0:P,P=P>s?s:P;const y=P*p,_=om(u,y,h);if(this.isGround&&_){const m=await this._esviewer.getTerrainHeight([_[0],_[1]]);this._currentPosition.value=[_[0],_[1],m??0]}else _&&(_[2]+=C*(P/s)),this._currentPosition.value=_;if(this.isRotating){const[m,w,E]=v,b=P/s;this._currentRotation.value=[l[0]+m*b,l[1]+w*b,l[2]+E*b]}P===s&&(this._currentPosition.value=n,this.isRotating&&(this._currentRotation.value=i),this.isRotating=!1,this.isGround=!1,S())}))}))})));this._esviewer=t}get currentPosition(){return this._currentPosition.value}get currentPositionChanged(){return this._currentPosition.changed}get currentRotation(){return this._currentRotation.value}get currentRotationChanged(){return this._currentRotation.changed}get currentHeading(){return this._currentHeading.value}get currentHeadingChanged(){return this._currentHeading.changed}get isRotating(){return this._isRotating.value}set isRotating(t){this._isRotating.value=t}get isRotatingChanged(){return this._isRotating.changed}get isGround(){return this._isGround.value}set isGround(t){this._isGround.value=t}get isGroundChanged(){return this._isGround.changed}get processing(){return this._processing}restart(t,n,i){this._processing.restart(void 0,t,n,i)}cancel(){this._processing.cancel()}}function ly(r){let e=0;function t(n,i){i++,e=Math.max(i,e),n.forEach(s=>{Array.isArray(s)&&t(s,i)})}return t(r,0),e}const Di=class Di extends Ht{constructor(t){super(t);d(this,"editingBindMode","lineString");d(this,"_area",this.dv(j(0)));d(this,"_perimeter",this.dv(j(0)));this.d(Ui(this.pointsChanged,()=>{this._updateArea(),this._updatePerimeter()},{immediate:!0}))}updateEditing(){var n;const t=[];this.editingBindMode=="doublePoints"?t.push(et.DoublePointsAppend,et.DoublePointsModify):this.editingBindMode=="lineString"?t.push(et.LineStringAppend,et.LineStringInsert,et.Translation):this.editingBindMode=="circular"?(t.push(et.CircularAppend,et.CircularInsert,et.Translation),this.supportEditingModes().includes(et.HeightModify)&&t.push(et.HeightModify)):this.editingBindMode=="visibility"?t.push(et.VisibilityAppend,et.VisibilityModify):this.editingBindMode=="scatter"&&t.push(et.ScatterAppend,et.ScatterModify),(n=this.activeViewer)==null||n.startEditing(this,t,{callSource:"inner"})}get area(){return this._area.value}get areaChanged(){return this._area.changed}get perimeter(){return this._perimeter.value}get perimeterChanged(){return this._perimeter.changed}_updateArea(){this._area.value=this.getArea()??0}_updatePerimeter(){this._perimeter.value=this.getPerimeter()??0}getArea(){if(this.points&&this.points.length>=3)return td([...this.points])}getDistance(){if(this.points&&this.points.length>=2){const t=fl(this.points,"GEODESIC");return t[t.length-1]}else return}getPerimeter(){if(this.points&&this.points.length>=3){const t=[...this.points,this.points[0]],n=fl(t,"GEODESIC");return n[n.length-1]}else return}getIntersect(t){if(this.points&&this.points.length>=3&&t.length>=3){const n=qv(this.points,t);if(!n)return;const i=n[0][0][0];if(Array.isArray(i)){const s=[...n],o=[];return s.forEach(a=>{const u=a[0].map(l=>[...l,0]);o.push(u)}),o}else return[[...n][0].map(a=>[...a,0])]}else return}getUnion(t){if(this.points&&this.points.length>=3&&t.length>=3){const n=Xv(this.points,t);if(!n)return;const i=n[0][0][0];if(Array.isArray(i)){const s=[...n],o=[];return s.forEach(a=>{const u=a[0].map(l=>[...l,0]);o.push(u)}),o}else return[[...n][0].map(a=>[...a,0])]}else return}getDifference(t){if(this.points&&this.points.length>=3&&t.length>=3){let n=[...t];const i=t[0],s=t[t.length-1];i[0]===s[0]&&i[1]===s[1]&&i[2]===s[2]||n.push(i);const o=Jv([...this.points,this.points[0]],[...n]);if(!o)return{status:"undefined",positions:void 0};const a=[...o];if(ly(a)===3){const u=a.map(f=>f.map(p=>[...p,0]));if(u.length<=1)return{status:"notIncluded",positions:u};const l=u[0],c=u[1];return Bd([...l],[...c])==="oneBig"?{status:"included",positions:u}:{status:"notIncluded",positions:u}}else if(ly(a)===4){const l=[...a.map(h=>h.map(f=>f.map(p=>[...p,0])))],c=[];return l.forEach(h=>{c.push(h[0])}),{status:"notIncluded",positions:c}}else return{status:"undefined",positions:void 0}}else return{status:"undefined",positions:void 0}}getBuffer(t=500,n){if(this.points&&this.points.length>=2){const i=Yv(this.points,t,n);return i?[i[0].map(s=>[...s,0])]:void 0}else return}geoPolygonOverlap(t){if(this.points&&this.points.length>=3&&t.length>=3){const n=Bd(this.points,t);return n==="oneBig"?!0:n==="twoBig"?!1:void 0}else return}getESProperties(){const t={...super.getESProperties()};return{...t,defaultMenu:"style",coordinate:[...t.coordinate,new X([this,"editing"],"编辑",!1),new it([this,"points"],"位置数组",Di.defaults.points,void 0,!0)],style:[...t.style,new ut([],"点样式"),new X([this,"pointed"],"开启",!1),new M([this,"pointSize"],"点大小",1),new Pt([this,"pointSizeType"],[["screen","screen"],["world","world"]],"点类型","screen"),new Mt([this,"pointColor"],"点颜色",[1,1,1,1]),new Mt([this,"pointOutlineColor"],"轮廓颜色",Di.defaults.pointStyle.outlineColor),new M([this,"pointOutlineWidth"],"轮廓宽度",Di.defaults.pointStyle.outlineWidth),new ut([],"线样式"),new X([this,"stroked"],"开启线样式",!0),new X([this,"strokeGround"],"贴地",!1),new M([this,"strokeWidth"],"线宽",1),new Pt([this,"strokeWidthType"],[["screen","screen"],["world","world"]],"线类型","screen"),new Mt([this,"strokeColor"],"线颜色",[1,1,1,1]),new ut([],"面样式"),new X([this,"filled"],"开启",!1),new X([this,"fillGround"],"贴地",!1),new Mt([this,"fillColor"],"填充颜色",[1,1,1,1])],more:[...t.more,new ut([],"点样式集合"),new pt([this,"pointMaterial"],"点材质"),new it([this,"pointMaterialParams"],"点材质参数"),new ut([],"线样式集合"),new pt([this,"strokeMaterial"],"线材质"),new it([this,"strokeMaterialParams"],"线材质参数"),new ut([],"面样式集合"),new pt([this,"fillMaterial"],"面材质"),new it([this,"fillMaterialParams"],"面材质参数")]}}get pointSize(){return this.pointStyle.size}set pointSize(t){this.pointStyle={...this.pointStyle,size:t}}get pointSizeChanged(){return this.pointStyleChanged}get pointSizeType(){return this.pointStyle.sizeType}set pointSizeType(t){this.pointStyle={...this.pointStyle,sizeType:t}}get pointSizeTypeChanged(){return this.pointStyleChanged}get pointColor(){return this.pointStyle.color}set pointColor(t){this.pointStyle={...this.pointStyle,color:[...t]}}get pointColorChanged(){return this.pointStyleChanged}get pointOutlineColor(){return this.pointStyle.outlineColor}set pointOutlineColor(t){this.pointStyle={...this.pointStyle,outlineColor:[...t]}}get pointOutlineColorChanged(){return this.pointStyleChanged}get pointOutlineWidth(){return this.pointStyle.outlineWidth}set pointOutlineWidth(t){this.pointStyle={...this.pointStyle,outlineWidth:t}}get pointOutlineWidthChanged(){return this.pointStyleChanged}get pointMaterial(){return this.pointStyle.material}set pointMaterial(t){this.pointStyle={...this.pointStyle,material:t}}get pointMaterialChanged(){return this.pointStyleChanged}get pointMaterialParams(){return this.pointStyle.materialParams}set pointMaterialParams(t){this.pointStyle={...this.pointStyle,materialParams:t}}get pointMaterialParamsChanged(){return this.pointStyleChanged}get strokeWidth(){return this.strokeStyle.width}set strokeWidth(t){this.strokeStyle={...this.strokeStyle,width:t}}get strokeWidthChanged(){return this.strokeStyleChanged}get strokeWidthType(){return this.strokeStyle.widthType}set strokeWidthType(t){this.strokeStyle={...this.strokeStyle,widthType:t}}get strokeWidthTypeChanged(){return this.strokeStyleChanged}get strokeColor(){return this.strokeStyle.color}set strokeColor(t){this.strokeStyle={...this.strokeStyle,color:[...t]}}get strokeColorChanged(){return this.strokeStyleChanged}get strokeMaterial(){return this.strokeStyle.material}set strokeMaterial(t){this.strokeStyle={...this.strokeStyle,material:t}}get strokeMaterialChanged(){return this.strokeStyleChanged}get strokeMaterialParams(){return this.strokeStyle.materialParams}set strokeMaterialParams(t){this.strokeStyle={...this.strokeStyle,materialParams:t}}get strokeMaterialParamsChanged(){return this.strokeStyleChanged}get strokeGround(){return this.strokeStyle.ground}set strokeGround(t){this.strokeStyle={...this.strokeStyle,ground:t}}get strokeGroundChanged(){return this.strokeStyleChanged}get fillColor(){return this.fillStyle.color}set fillColor(t){this.fillStyle={...this.fillStyle,color:[...t]}}get fillColorChanged(){return this.fillStyleChanged}get fillMaterial(){return this.fillStyle.material}set fillMaterial(t){this.fillStyle={...this.fillStyle,material:t}}get fillMaterialChanged(){return this.fillStyleChanged}get fillMaterialParams(){return this.fillStyle.materialParams}set fillMaterialParams(t){this.fillStyle={...this.fillStyle,materialParams:t}}get fillMaterialParamsChanged(){return this.fillStyleChanged}get fillGround(){return this.fillStyle.ground}set fillGround(t){this.fillStyle={...this.fillStyle,ground:t}}get fillGroundChanged(){return this.fillStyleChanged}};d(Di,"createDefaultProps",()=>({...Ht.createDefaultProps(),pointed:!1,pointStyle:wt({size:10,sizeType:"screen",color:[1,1,1,1],material:"",materialParams:{},outlineColor:[1,0,0,1],outlineWidth:2}),stroked:!1,strokeStyle:wt({width:1,widthType:"screen",color:[1,1,1,1],material:"",materialParams:{},ground:!1}),filled:!1,fillStyle:wt({color:[1,1,1,1],material:"",materialParams:{},ground:!1}),points:Nl([])})),d(Di,"type",Di.register("ESGeoVector",Di,{chsName:"地理矢量",tags:["ESObjects"],description:"地理矢量"})),d(Di,"supportEditingModes",[...Ht.supportEditingModes,et.Translation]);let It=Di;const To=class To extends Ht{constructor(){super(...arguments);d(this,"_statusDis",this.dv(j(!0)));d(this,"_smoothMoveEvent",this.dv(new O));d(this,"_smoothMoveWithRotationEvent",this.dv(new O));d(this,"_smoothMoveOnGroundEvent",this.dv(new O));d(this,"_smoothMoveWithRotationOnGroundEvent",this.dv(new O));d(this,"_automaticLandingEvent",this.dv(new O));d(this,"_smoothMoveKeepPitchEvent",this.dv(new O));d(this,"_smoothMoveRelativelyEvent",this.dv(new O));d(this,"_smoothMoveRelativelyWithRotationEvent",this.dv(new O));d(this,"useCalcFlyToParamInESObjectWithLocation",!0)}updateEditing(){var n;const t=[];this.editingBindMode=="singlePoint"?(t.push(et.Place,et.Translation),["ESLocationMeasurement"].includes(this.typeName)||t.push(et.Rotation),["ESClippingPlane","ESLocationMeasurement","ESLocalRectangle","ESBoxClipping"].includes(this.typeName)||t.push(et.Scale)):this.editingBindMode=="doublePoints"&&t.push(et.DoublePointsAppend,et.DoublePointsModify),(n=this.activeViewer)==null||n.startEditing(this,t,{callSource:"inner"})}get statusDis(){return this._statusDis.value}get statusDisChanged(){return this._statusDis.changed}get smoothMoveEvent(){return this._smoothMoveEvent}smoothMove(t,n){this._smoothMoveEvent.emit(t,n)}get smoothMoveWithRotationEvent(){return this._smoothMoveWithRotationEvent}smoothMoveWithRotation(t,n,i){this._smoothMoveWithRotationEvent.emit(t,n,i)}get smoothMoveOnGroundEvent(){return this._smoothMoveOnGroundEvent}smoothMoveOnGround(t,n,i,s){this._smoothMoveOnGroundEvent.emit(t,n,i,s)}get smoothMoveWithRotationOnGroundEvent(){return this._smoothMoveWithRotationOnGroundEvent}smoothMoveWithRotationOnGround(t,n,i,s,o){this._smoothMoveWithRotationOnGroundEvent.emit(t,n,i,s,o)}get automaticLandingEvent(){return this._automaticLandingEvent}automaticLanding(){const t=this.collision;this.collision=!1,setTimeout(()=>{this._automaticLandingEvent.emit(t)},100)}get smoothMoveKeepPitchEvent(){return this._smoothMoveKeepPitchEvent}smoothMoveKeepPitch(t,n){this._smoothMoveKeepPitchEvent.emit(t,n)}get smoothMoveRelativelyEvent(){return this._smoothMoveRelativelyEvent}smoothMoveRelatively(t,n){this._smoothMoveRelativelyEvent.emit(t,n)}get smoothMoveRelativelyWithRotationEvent(){return this._smoothMoveRelativelyWithRotationEvent}smoothMoveRelativelyWithRotation(t,n,i){this._smoothMoveRelativelyWithRotationEvent.emit(t,n,i)}getESProperties(){const t={...super.getESProperties()};return{...t,defaultMenu:"basic",location:[...t.location,new X([this,"editing"],"是否编辑"),new lt([],()=>this.automaticLanding(),[],"自动落地"),new ia([this,"position"],"位置数组",[0,0,0]),new Gh([this,"rotation"],"姿态数组",[0,0,0]),new cn([this,"scale"],"缩放",[1,1,1]),new M([this,"minVisibleDistance"],"最小可见距离",0),new M([this,"maxVisibleDistance"],"最大可见距离",0)],more:[...t.more,new lt(["numbers","number"],(n,i)=>this.smoothMove(n,i),[[0,0,0],0],"平滑移动","smoothMove"),new lt(["numbers","number"],(n,i)=>this.smoothMoveKeepPitch(n,i),[[0,0,0],0],"固定方向平滑移动","smoothMoveKeepPitch"),new lt(["numbers","numbers","number"],(n,i,s)=>this.smoothMoveWithRotation(n,i,s),[[0,0,0],[0,0,0],0],"平滑偏移","smoothMoveWithRotation"),new lt(["number","number","number","string"],(n,i,s,o)=>this.smoothMoveOnGround(n,i,s,o),[0,0,0,""],"贴地平滑移动","smoothMoveOnGround"),new lt(["numbers","number","number","number","string"],(n,i,s,o,a)=>this.smoothMoveWithRotationOnGround(n,i,s,o,a),[[0,0,0],0,0,0,""],"贴地平滑偏移","smoothMoveWithRotationOnGround"),new lt(["numbers","number"],(n,i)=>this.smoothMoveRelatively(n,i),[[0,0,0],0],"smoothMoveRelatively","smoothMoveRelatively"),new lt(["numbers","numbers","number"],(n,i,s)=>this.smoothMoveRelativelyWithRotation(n,i,s),[[0,0,0],[0,0,0],0],"smoothMoveRelativelyWithRotation","smoothMoveRelativelyWithRotation"),new X([this,"enableVisibleDistance"],"是否应用距离显隐")]}}get pointSize(){return this.pointStyle.size}set pointSize(t){this.pointStyle={...this.pointStyle,size:t}}get pointSizeChanged(){return this.pointStyleChanged}get pointSizeType(){return this.pointStyle.sizeType}set pointSizeType(t){this.pointStyle={...this.pointStyle,sizeType:t}}get pointSizeTypeChanged(){return this.pointStyleChanged}get pointColor(){return this.pointStyle.color}set pointColor(t){this.pointStyle={...this.pointStyle,color:[...t]}}get pointColorChanged(){return this.pointStyleChanged}get pointMaterial(){return this.pointStyle.material}set pointMaterial(t){this.pointStyle={...this.pointStyle,material:t}}get pointMaterialChanged(){return this.pointStyleChanged}get pointMaterialParams(){return this.pointStyle.materialParams}set pointMaterialParams(t){this.pointStyle={...this.pointStyle,materialParams:t}}get pointMaterialParamsChanged(){return this.pointStyleChanged}};d(To,"createDefaultProps",()=>({...Ht.createDefaultProps(),pointed:!1,pointStyle:wt({size:1,sizeType:"screen",color:[1,1,1,1],material:"",materialParams:{},outlineColor:[1,0,0,1],outlineWidth:2}),position:dt([0,0,0]),rotation:dt([0,0,0]),scale:dt([1,1,1]),minVisibleDistance:j(0),maxVisibleDistance:j(0)})),d(To,"type",To.register("ESObjectWithLocation",To,{chsName:"对象位置",tags:["ESObjects"],description:"对象位置"})),d(To,"supportEditingModes",[...Ht.supportEditingModes,et.Place,et.Translation,et.Rotation,et.Scale,et.DoublePointsAppend,et.DoublePointsModify]);let st=To;const Wa=class Wa extends st{getESProperties(){const e={...super.getESProperties()};return{...e,style:[...e.style,new ut([],"点样式集合"),new X([this,"pointed"],"开启点样式",!1),new M([this,"pointSize"],"点大小",1),new Pt([this,"pointSizeType"],[["screen","screen"],["world","world"]],"点类型","screen"),new Mt([this,"pointColor"],"点颜色",[1,1,1,1]),new ut([],"线样式集合"),new X([this,"stroked"],"开启线样式",!1),new X([this,"strokeGround"],"是否贴地(线)",!1),new M([this,"strokeWidth"],"线宽",1),new Pt([this,"strokeWidthType"],[["screen","screen"],["world","world"]],"线类型","screen"),new Mt([this,"strokeColor"],"线颜色",[1,1,1,1]),new ut([],"面样式集合"),new X([this,"filled"],"开启填充样式",!1),new X([this,"fillGround"],"是否贴地",!1),new Mt([this,"fillColor"],"填充颜色",[1,1,1,1])],more:[...e.more,new ut([],"点样式"),new pt([this,"pointMaterial"],"点材质",""),new it([this,"pointMaterialParams"],"点材质参数",{}),new ut([],"线样式"),new pt([this,"strokeMaterial"],"线材质",""),new it([this,"strokeMaterialParams"],"线材质参数",{}),new ut([],"填充样式"),new pt([this,"fillMaterial"],"面材质",""),new it([this,"fillMaterialParams"],"面材质参数",{})]}}get strokeWidth(){return this.strokeStyle.width}set strokeWidth(e){this.strokeStyle={...this.strokeStyle,width:e}}get strokeWidthChanged(){return this.strokeStyleChanged}get strokeWidthType(){return this.strokeStyle.widthType}set strokeWidthType(e){this.strokeStyle={...this.strokeStyle,widthType:e}}get strokeWidthTypeChanged(){return this.strokeStyleChanged}get strokeColor(){return this.strokeStyle.color}set strokeColor(e){this.strokeStyle={...this.strokeStyle,color:[...e]}}get strokeColorChanged(){return this.strokeStyleChanged}get strokeMaterial(){return this.strokeStyle.material}set strokeMaterial(e){this.strokeStyle={...this.strokeStyle,material:e}}get strokeMaterialChanged(){return this.strokeStyleChanged}get strokeMaterialParams(){return this.strokeStyle.materialParams}set strokeMaterialParams(e){this.strokeStyle={...this.strokeStyle,materialParams:e}}get strokeMaterialParamsChanged(){return this.strokeStyleChanged}get strokeGround(){return this.strokeStyle.ground}set strokeGround(e){this.strokeStyle={...this.strokeStyle,ground:e}}get strokeGroundChanged(){return this.strokeStyleChanged}get fillColor(){return this.fillStyle.color}set fillColor(e){this.fillStyle={...this.fillStyle,color:[...e]}}get fillColorChanged(){return this.fillStyleChanged}get fillMaterial(){return this.fillStyle.material}set fillMaterial(e){this.fillStyle={...this.fillStyle,material:e}}get fillMaterialChanged(){return this.fillStyleChanged}get fillMaterialParams(){return this.fillStyle.materialParams}set fillMaterialParams(e){this.fillStyle={...this.fillStyle,materialParams:e}}get fillMaterialParamsChanged(){return this.fillStyleChanged}get fillGround(){return this.fillStyle.ground}set fillGround(e){this.fillStyle={...this.fillStyle,ground:e}}get fillGroundChanged(){return this.fillStyleChanged}};d(Wa,"createDefaultProps",()=>({...st.createDefaultProps(),pointed:!1,pointStyle:wt({size:1,sizeType:"screen",color:[1,1,1,1],material:"",materialParams:{},outlineColor:[1,0,0,1],outlineWidth:1}),stroked:!1,strokeStyle:wt({width:1,widthType:"screen",color:[1,1,1,1],material:"",materialParams:{},ground:!1}),filled:!1,fillStyle:wt({color:[1,1,1,1],material:"",materialParams:{},ground:!1})})),d(Wa,"type",Wa.register("ESLocalVector",Wa,{chsName:"本地矢量",tags:["ESObjects"],description:"本地矢量对象"}));let Va=Wa;const Sl=class Sl extends Va{};d(Sl,"type",Sl.register("ESLocalVector2D",Sl,{chsName:"本地矢量2D",tags:["ESObjects"],description:"本地矢量2D对象"}));let us=Sl;const ES=[["固定朝向",0],["面向屏幕旋转",1],["绕自身Z轴旋转",2]],CS=[["单面不透明",0],["双面不透明",1],["单面遮罩",2],["双面遮罩",3],["单面透明",4],["双面透明",5],["单面未遮挡透明",6],["双面未遮挡透明",7]],Ha=class Ha extends st{constructor(){super(...arguments);d(this,"_widgetEvent",this.dv(new O))}get widgetEvent(){return this._widgetEvent}getESProperties(){const t={...super.getESProperties()};return{...t,basic:[...t.basic,new X([this,"screenRender"],"屏幕渲染",!0),new X([this,"sizeByContent"],"尺寸自适应",!0),new Ae([this,"size"],"尺寸大小",[100,100]),new Ae([this,"anchor"],"偏移比例",[.5,1]),new Ae([this,"offset"],"像素偏移",[0,0]),new Pt([this,"renderMode"],CS,"渲染模式",0),new Pt([this,"rotationType"],ES,"漫游旋转类型",1),new pt([this,"actorTag"],"绑定对象"),new pt([this,"socketName"],"插槽名称"),new cn([this,"positionOffset"],"位置偏移"),new cn([this,"rotationOffset"],"相对姿态")],more:[...t.more,new M([this,"zOrder"],"排序",0)]}}};d(Ha,"createDefaultProps",()=>({...st.createDefaultProps(),screenRender:!0,size:dt([100,100]),anchor:dt([.5,1]),offset:dt([0,0]),sizeByContent:!0,renderMode:0,rotationType:1,zOrder:0,actorTag:"",socketName:"",positionOffset:dt([0,0,0]),rotationOffset:dt([0,0,0])})),d(Ha,"type",Ha.register("ESLabel",Ha,{chsName:"标签",tags:["ESObjects"],description:"标签对象"}));let ar=Ha;const qa=class qa extends rt{constructor(e){super(e)}};d(qa,"createDefaultProps",()=>({...rt.createDefaultProps(),show:!0,fillStyle:wt({color:[1,1,1,1],material:"",materialParams:{},ground:!1})})),d(qa,"type",qa.register("ESTestObject",qa,{chsName:"测试",tags:["ESObjects"],description:""}));let Jd=qa;const Mi=class Mi extends Ht{constructor(t){super(t);d(this,"_refreshTilesetEvent",this.dv(new O));d(this,"_tilesetReadyEvent",this.dv(new O));d(this,"_supportEdit",this.dv(j(!0)));d(this,"_highlightFeatureEvent",this.dv(new O));d(this,"_highlightFeatureAndFlyToEvent",this.dv(new O));d(this,"_strokeFeatureEvent",this.disposeVar(new O));d(this,"_getFeatureTableEvent",this.dv(new O));d(this,"_featureTableResultEvent",this.dv(new O));d(this,"_getMaterialNameListEvent",this.disposeVar(new O));d(this,"_setFeatureStyleEvent",this.dv(new O));d(this,"_setFeatureColorEvent",this.dv(new O));d(this,"_setFeatureVisableEvent",this.dv(new O));d(this,"_resetFeatureStyleEvent",this.dv(new O));d(this,"setMaterialInfoEvent",this.ad(new O));d(this,"_setMaterialEvent",this.disposeVar(new O));d(this,"_clippingPlanesId",this.dv(j("")));d(this,"_clippingPlaneIds",this.dv(j([])));d(this,"_flattenedPlaneId",this.dv(j("")));d(this,"_flattenedPlaneEnabled",this.dv(j(!1)));d(this,"_clippingPlaneId",this.dv(j("")));d(this,"_excavateId",this.dv(dt([])))}updateEditing(){var t;(t=this.activeViewer)==null||t.startEditing(this,[et.Translation,et.Rotation],{callSource:"inner"})}get refreshTilesetEvent(){return this._refreshTilesetEvent}refreshTileset(){this._refreshTilesetEvent.emit()}get tilesetReady(){return this._tilesetReadyEvent}get supportEdit(){return this._supportEdit.value}set supportEdit(t){this._supportEdit.value=t}get supportEditChanged(){return this._supportEdit.changed}get highlightFeatureEvent(){return this._highlightFeatureEvent}highlightFeature(t,n){this._highlightFeatureEvent.emit(t,n)}get highlightFeatureAndFlyToEvent(){return this._highlightFeatureAndFlyToEvent}highlightFeatureAndFlyTo(t,n,i,s){this._highlightFeatureAndFlyToEvent.emit(t,n,i,s)}get strokeFeatureEvent(){return this._strokeFeatureEvent}strokeFeature(t,n=[1,0,0,1]){this._strokeFeatureEvent.emit(t,n)}get getFeatureTableEvent(){return this._getFeatureTableEvent}getFeatureTable(){return Promise.race([new Promise(t=>{const n=this.d(this._featureTableResultEvent.donce(t));this._getFeatureTableEvent.emit(),setTimeout(()=>{n(),t(void 0)},2e3)})])}get getMaterialNameListEvent(){return this._getMaterialNameListEvent}getMaterialNameList(){return new Promise(t=>{const n=new V;n.d(this.getMaterialNameListEvent.don(i=>{i!=="start"&&(n.destroy(),t(i))})),this.getMaterialNameListEvent.emit("start"),setTimeout(()=>{n.isDestroyed()||(n.destroy(),t(void 0))},2e3)})}get setFeatureStyleEvent(){return this._setFeatureStyleEvent}setFeatureStyle(t){this._setFeatureStyleEvent.emit(t)}get setFeatureColorEvent(){return this._setFeatureColorEvent}setFeatureColor(t,n){this._setFeatureColorEvent.emit(t,typeof n=="string"?JSON.parse(n):n)}get setFeatureVisableEvent(){return this._setFeatureVisableEvent}setFeatureVisable(t,n){this._setFeatureVisableEvent.emit(t,typeof n=="string"?JSON.parse(n):n)}get resetFeatureStyleEvent(){return this._resetFeatureStyleEvent}resetFeatureStyle(){this._resetFeatureStyleEvent.emit()}get setMaterialEvent(){return this._setMaterialEvent}setMaterial(t){return new Promise(n=>{const i=new V;i.ad(this.setMaterialInfoEvent.donce(s=>{i.destroy(),n(s)})),this._setMaterialEvent.emit(t)})}get clippingPlanesId(){return this._clippingPlanesId.value}set clippingPlanesId(t){this._clippingPlanesId.value=t}get clippingPlanesIdChanged(){return this._clippingPlanesId.changed}get clippingPlaneIds(){return this._clippingPlaneIds.value}set clippingPlaneIds(t){this._clippingPlaneIds.value=t}get clippingPlaneIdsChanged(){return this._clippingPlaneIds.changed}get flattenedPlaneId(){return this._flattenedPlaneId.value}set flattenedPlaneId(t){this._flattenedPlaneId.value=t}get flattenedPlaneIdChanged(){return this._flattenedPlaneId.changed}get flattenedPlaneEnabled(){return this._flattenedPlaneEnabled.value}set flattenedPlaneEnabled(t){this._flattenedPlaneEnabled.value=t}get flattenedPlaneEnabledChanged(){return this._flattenedPlaneEnabled.changed}get clippingPlaneId(){return this._clippingPlaneId.value}set clippingPlaneId(t){this._clippingPlaneId.value=t}get clippingPlaneIdChanged(){return this._clippingPlaneId.changed}get excavateId(){return this._excavateId.value}set excavateId(t){this._excavateId.value=t}get excavateIdChanged(){return this._excavateId.changed}setLight122(){this.czmEnvironmentMapManager={...Yd}}getESProperties(){const t={...super.getESProperties()};return{...t,defaultMenu:"dataSource",basic:[...t.basic,new Ue([this,"maximumScreenSpaceError"],1,[0,256],"精度",16),new Pt([this,"materialMode"],[["常规","normal"],["科技感","technology"]],"材质模式","normal",!0),new Pt([this,"colorBlendMode"],[["默认","HIGHLIGHT"],["替换","REPLACE"],["混合","MIX"]],"颜色模式","HIGHLIGHT"),new it([this,"materialOverrideMap"],"材质替换",Mi.defaults.materialOverrideMap)],dataSource:[...t.dataSource,new it([this,"url"],"服务地址",Mi.defaults.url,void 0,!0)],coordinate:[...t.coordinate,new X([this,"editing"],"编辑",!1,!0),new cn([this,"offset"],"偏移",[0,0,0],!0),new Gh([this,"rotation"],"旋转",[0,0,0])],more:[...t.more,new it([this,"materialParams"],"materialParams",Mi.defaults.materialParams),new lt(["string","string"],(n,i)=>this.highlightFeature(n,i),["","rgba(255,0,0,1)"],"highlightFeature"),new lt(["string","string"],(n,i)=>this.setFeatureColor(n,i),["",""],"setFeatureColor"),new lt(["string","string"],(n,i)=>this.setFeatureVisable(n,i),["",""],"setFeatureVisable"),new lt([],()=>this.resetFeatureStyle(),[],"resetFeatureStyle"),new ut([],"ue"),new lt([],()=>this.refreshTileset(),[],"refreshTileset"),new pt([this,"actorTag"]),new X([this,"highlight"],"是否高亮"),new Mt([this,"highlightColor"]),new M([this,"highlightID"]),new ut([],"czm"),new ut([],"可视化"),new Ae([this,"czmImageBasedLightingFactor"],"反射强度"),new M([this,"czmAtmosphereScatteringIntensity"],"大气散射强度"),new it([this,"czmEnvironmentMapManager"],"动态环境贴图管理器"),new M([this,"czmMaximumMemoryUsage"],"最大内存"),new ut([],"常用"),new Pt([this,"czmClassificationType"],[["NONE","NONE"],["TERRAIN","TERRAIN"],["CESIUM_3D_TILE","CESIUM_3D_TILE"],["BOTH","BOTH"]],"czmClassificationType","NONE",!0),new it([this,"czmStyleJson"],"czmStyle"),new X([this,"czmBackFaceCulling"]),new X([this,"czmSkipLevelOfDetail"]),new X([this,"czmDebugWireframe"]),new M([this,"cacheBytes"],"最大缓存",512*1024*1024),new ut([],"调试信息"),new X([this,"czmDebugShowBoundingVolume"]),new X([this,"czmDebugShowContentBoundingVolume"]),new ut([],"clippingPlanes"),new X([this,"clippingPlaneEnabled"]),new X([this,"unionClippingRegions"]),new Mt([this,"clippingPlaneEdgeColor"]),new M([this,"clippingPlaneEdgeWidth"])]}}};d(Mi,"createDefaultProps",()=>({...Ht.createDefaultProps(),url:"",actorTag:"",materialMode:"normal",highlight:!1,maximumScreenSpaceError:16,highlightID:0,highlightColor:dt([1,0,0,1]),offset:re([0,0,0]),rotation:dt([0,0,0]),czmImageBasedLightingFactor:dt([1,1]),czmEnvironmentMapManager:Qt(void 0),czmLuminanceAtZenith:2,czmAtmosphereScatteringIntensity:2,czmMaximumMemoryUsage:512,czmClassificationType:"NONE",czmStyleJson:wt({}),czmBackFaceCulling:!0,czmDebugShowBoundingVolume:!1,czmDebugShowContentBoundingVolume:!1,czmSkipLevelOfDetail:!1,cacheBytes:512*1024*1024,colorBlendMode:"HIGHLIGHT",clippingPlaneEnabled:!0,unionClippingRegions:!0,clippingPlaneEdgeColor:dt([1,1,1,1]),clippingPlaneEdgeWidth:2,materialParams:{baseColor:[0,.5,1]},allowPicking:!0,materialOverrideMap:Qt({}),featureIdLabel:0,splitDirection:"NONE",czmDebugWireframe:!1})),d(Mi,"type",Mi.register("ES3DTileset",Mi,{chsName:"3DTileset",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"3DTileset"})),d(Mi,"supportEditingModes",[...Ht.supportEditingModes,et.Translation,et.Rotation]);let Tr=Mi;const Xa=class Xa extends st{constructor(t){super(t);d(this,"_isFlyInCreated",this.dv(j(!1)));d(this,"_readyEvent",this.dv(new O));this.collision=!1,this.d(this.createdEvent.don(()=>{setTimeout(()=>{if((this.editing??!1)||!this.position)this.d(Ui([this.positionChanged,this.editingChanged],()=>{this.editing||!this.position||this.isFlyInCreated&&this.flyTo()},{time:"donce"}));else{if(!this.isFlyInCreated)return;this.flyTo()}},1e3)}))}get isFlyInCreated(){return this._isFlyInCreated.value}set isFlyInCreated(t){this._isFlyInCreated.value=t}get isFlyInCreatedChanged(){return this._isFlyInCreated.changed}get readyEvent(){return this._readyEvent}getESProperties(){const t={...super.getESProperties()};return{...t,basic:[...t.basic,new Pt([this,"mode"],[["柱状警告","cylinder"],["圆形警告","circle"]],"模式","cylinder"),new M([this,"radius"],"半径",10)]}}};d(Xa,"createDefaultProps",()=>({...st.createDefaultProps(),mode:"cylinder",radius:10})),d(Xa,"type",Xa.register("ESAlarm",Xa,{chsName:"报警",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"警告类"}));let $d=Xa;const SS=[["扫描","scan"],["扩散","diffuse"]],Gs=class Gs extends st{constructor(e){super(e)}getESProperties(){const e={...super.getESProperties()};return{...e,basic:[...e.basic,new M([this,"radius"],"半径",1),new Pt([this,"mode"],SS,"模式",Gs.defaults.mode),new Mt([this,"color"],"颜色",Gs.defaults.color)]}}};d(Gs,"createDefaultProps",()=>({...st.createDefaultProps(),radius:1,mode:"scan",color:[0,.7,1,1],collision:!1})),d(Gs,"type",Gs.register("ESApertureEffect",Gs,{chsName:"光圈特效",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"光圈特效"}));let Kd=Gs;const Oo=class Oo extends It{constructor(t){super(t);d(this,"editingBindMode","circular")}getESProperties(){const t={...super.getESProperties()};return{...t,coordinate:[...t.coordinate,new M([this,"area"],"面积",0,!1,!0),new M([this,"perimeter"],"周长",0,!1,!0)]}}};d(Oo,"createDefaultProps",()=>({...It.createDefaultProps(),fillStyle:wt({color:[1,1,1,.5],material:"",materialParams:{},ground:!1}),strokeStyle:wt({width:1,widthType:"screen",color:[1,1,1,1],material:"",materialParams:{},ground:!1}),filled:!0,stroked:!1,collision:!1})),d(Oo,"type",Oo.register("ESGeoPolygon",Oo,{chsName:"地理多边形",tags:["ESObjects"],description:"地理多边形"})),d(Oo,"supportEditingModes",[...It.supportEditingModes,et.CircularAppend,et.CircularInsert]);let Xt=Oo;const ls=class ls extends Xt{get fillMaterial(){return this.fillStyle.material}set fillMaterial(e){this.fillStyle={...this.fillStyle,material:e}}get fillMaterialParams(){return this.fillStyle?this.fillStyle.materialParams:ls.defaults.fillStyle.materialParams}set fillMaterialParams(e){this.fillStyle={...this.fillStyle??ls.defaults.fillStyle,materialParams:e??ls.defaults.fillStyle.materialParams}}constructor(e){super(e)}};d(ls,"createDefaultProps",()=>({...Xt.createDefaultProps(),stroked:!0,filled:!0,units:dt(["SquareMeter_SquareKilometer","MU_Hectare","PerimeterMeter_PerimeterKilometer"]),fillStyle:wt({color:[1,1,1,1],material:"Material'/EarthSDKForUE/M_ES_Material.M_ES_Material'",materialParams:{Opacity:.4},ground:!0}),strokeStyle:wt({width:2,widthType:"screen",color:[1,1,1,1],material:"",materialParams:{},ground:!1})})),d(ls,"type",ls.register("ESAreaMeasurement",ls,{chsName:"面积测量",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE","_ES_Impl_Ol"],description:"面积测量"}));let Zd=ls;const Ya=class Ya extends st{constructor(e){super(e)}getESProperties(){const e={...super.getESProperties()};return{...e,defaultMenu:"general",more:[...e.more,new ut([],"czm"),new Fu([this,"image"],"图片"),new cn([this,"translation"],"偏移")]}}};d(Ya,"createDefaultProps",()=>({...st.createDefaultProps(),image:"${earthsdk3-assets-script-dir}/assets/img/smoke.png",translation:dt([0,0,0])})),d(Ya,"type",Ya.register("ESBlastParticleSystem",Ya,{chsName:"粒子爆炸",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"粒子爆炸"}));let Qd=Ya;const oi=class oi extends st{constructor(e){super(e)}getESProperties(){const e={...super.getESProperties()};return{...e,basic:[...e.basic,new X([this,"reverse"],"反转",oi.defaults.reverse),new cn([this,"size"],"尺寸",oi.defaults.size),new Mt([this,"edgeColor"],"边框颜色",oi.defaults.edgeColor),new M([this,"edgeWidth"],"边框宽度",oi.defaults.edgeWidth),new pt([this,"targetID"],"瓦片图层",oi.defaults.targetID)]}}};d(oi,"createDefaultProps",()=>({...st.createDefaultProps(),reverse:!1,edgeColor:dt([1,1,1,1]),edgeWidth:2,size:dt([10,10,10]),targetID:""})),d(oi,"type",oi.register("ESBoxClipping",oi,{chsName:"体剖切",tags:["ESObjects","_ES_Impl_Cesium"],description:"体剖切,体裁剪,体裁切,盒裁切"}));let tf=oi;const bl=class bl extends st{constructor(){super(...arguments);d(this,"_thumbnail",this.dv(j("")));d(this,"_duration",this.dv(j(1)));d(this,"_resetWithCurrentCameraEvent",this.dv(new O));d(this,"_captureEvent",this.dv(new O))}get thumbnail(){return this._thumbnail.value}set thumbnail(t){this._thumbnail.value=t}get thumbnailChanged(){return this._thumbnail.changed}get duration(){return this._duration.value}set duration(t){this._duration.value=t}get durationChanged(){return this._duration.changed}flyIn(t=1,n="default"){this.flyInEvent.emit(t,-1,n)}get resetWithCurrentCameraEvent(){return this._resetWithCurrentCameraEvent}resetWithCurrentCamera(){this._resetWithCurrentCameraEvent.emit()}get captureEvent(){return this._captureEvent}capture(t,n){this._captureEvent.emit(t,n)}execOnCreating(){this.resetWithCurrentCamera()}async initByCurrent(){this.resetWithCurrentCamera()}getESProperties(){const t={...super.getESProperties()};return{...t,more:[...t.more,new ut([],"ESCameraView"),new lt([],()=>this.resetWithCurrentCamera(),[],"设置为当前视角"),new lt(["number","number"],(n,i)=>this.capture(n,i),[64,64],"获取缩略图"),new pt([this,"thumbnail"],"缩略图","",!0),new M([this,"duration"],"飞行时间",1,!0)]}}};d(bl,"type",bl.register("ESCameraView",bl,{chsName:"视角",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"视角"}));let Fc=bl;class Ac extends V{constructor(t,n,i){super();d(this,"_view",this.dv(new Fc));if(this.d(t.components.disposableAdd(this._view)),this._view.name=(i==null?void 0:i.name)??`视角${t.views.length+1}`,n){const a=this._view,u=n;a.duration=u.duration??1,a.position=u.position,a.rotation=u.rotation??[0,0,0],a.thumbnail=u.thumbnail??"",a.name=u.name}else{const a=(i==null?void 0:i.size)??[64,64];this.d($o(()=>{this._view.resetWithCurrentCamera(),this._view.capture(a[0],a[1])}))}const s=this._view,o=this.dv(Ie(s.durationChanged,s.positionChanged,s.rotationChanged,s.thumbnailChanged,s.nameChanged));this.d(o.don(()=>t.emitViewsWarpper()))}get view(){return this._view}get viewInfo(){const t=this._view;return{duration:t.duration,position:t.position,rotation:t.rotation,thumbnail:t.thumbnail,name:t.name}}}const Or=class Or extends rt{constructor(t){super(t);d(this,"_currentViewIndex",this.dv(j(-1)));d(this,"_viewWrappers",this.dv(new xu));d(this,"_currentViewWrapper",this.dv(j(void 0)));d(this,"_container",this.dv(j(void 0)));this.initProcessing();{const n=()=>{if(!this._currentViewWrapper.value)return;this._viewWrappers.indexOf(this._currentViewWrapper.value)===-1&&(this._currentViewWrapper.value=void 0)};n(),this.d(this._viewWrappers.changedEvent.don(n))}{const n=()=>{const i=this._currentViewWrapper.value;this._currentViewIndex.value=i?this._getIndex(i):-1};n(),this.d(this._viewWrappers.changedEvent.don(n)),this.d(this._currentViewWrapper.changed.don(n))}this.d(()=>{this.clearAllViews()})}get json(){return{...this._innerGetJson(),views:this.views}}set json(t){this._innerSetJson(t),this.views=t.views}get currentViewIndex(){return this._currentViewIndex.value}get currentViewIndexChanged(){return this._currentViewIndex.changed}emitViewsWarpper(){this._viewWrappers.changedEvent.emit(this._viewWrappers)}get container(){return this._container.value}get containerChanged(){return this._container.changed}set container(t){this._container.value=t}get views(){return ry(this._viewWrappers,t=>t.viewInfo)}get viewsChanged(){return this._viewWrappers.changedEvent}set views(t){if(t.length===this._viewWrappers.length){const n=this._viewWrappers;if(t.every((i,s)=>{const o=n.get(s).view;return i.duration===o.duration&&qd(i.position,o.position)&&qd(i.rotation,o.rotation)&&i.thumbnail===o.thumbnail&&i.name===o.name}))return}this.clearAllViews();for(let n of t)this._viewWrappers.push(new Ac(this,n))}_getIndex(t){return this._viewWrappers.indexOf(t)}clearAllViews(){for(let t of this._viewWrappers)t.destroy();this._viewWrappers.length=0}add(t=`视角${this.views.length+1}`,n=[64,64]){this._viewWrappers.push(new Ac(this,void 0,{name:t,size:n}))}update(t,n,i=[64,64]){if(t>=this._viewWrappers.length||t<0)return console.warn("index >= this._viewWrappers.length || index < 0"),!1;const s=this._viewWrappers.get(t);return n&&(s.view.name=n),s.view.resetWithCurrentCamera(),s.view.capture(i[0],i[1]),!0}addView(){this._viewWrappers.push(new Ac(this))}insertView(t){if(this._viewWrappers.length+1<=t||t<0){console.error("this._views.length <= index || index < 0");return}this._viewWrappers.splice(t,0,new Ac(this))}setCurrentView(t){if(t>=this._viewWrappers.length||t<0)return console.warn("index >= this._viewWrappers.length || index < 0"),!1;const n=this._viewWrappers.get(t);return this._currentViewWrapper.value=n,!0}resetView(t){if(t>=this._viewWrappers.length||t<0){console.warn("index >= this._viewWrappers.length || index < 0");return}const n=this._viewWrappers.get(t);n.view.resetWithCurrentCamera(),n.view.capture()}resetViewName(t,n){if(t>=this._viewWrappers.length||t<0){console.warn("index >= this._viewWrappers.length || index < 0");return}const i=this._viewWrappers.get(t);i.view.name=n}updateView(t,n){if(t>=this._viewWrappers.length||t<0)return console.warn("index >= this._viewWrappers.length || index < 0"),!1;const i=this._viewWrappers.get(t);return i.view.position=n.position,i.view.rotation=n.rotation??[0,0,0],i.view.duration=n.duration??1,i.view.thumbnail=n.thumbnail??"",i.view.name=n.name??"",!0}flyToView(t){if(this.setCurrentView(t)){if(!this._currentViewWrapper.value)throw new Error("this._currentViewWrapper.value");const n=this._currentViewWrapper.value.view.duration;this._currentViewWrapper.value.view.flyIn(n,this.flyMode??Or.defaults.flyMode)}}flyToPrevView(){const t=this._currentViewWrapper.value;if(!t)return this.flyToView(0),!0;const n=this._getIndex(t);return this.loop??Or.defaults.loop?(this.flyToView((this._viewWrappers.length+n-1)%this._viewWrappers.length),!0):n-1<0?!1:(this.flyToView(n-1),!0)}moveToPreView(){const t=this._currentViewWrapper.value;if(!t)return;const n=this._getIndex(t);if(n===0)return;const i=this._viewWrappers.splice(n-1,1,t)[0];this._viewWrappers.set(n,i)}moveToNextView(){const t=this._currentViewWrapper.value;if(!t)return;const n=this._getIndex(t);if(n===this._viewWrappers.length-1)return;const i=this._viewWrappers.splice(n+1,1,t)[0];this._viewWrappers.set(n,i)}flyToNextView(){const t=this._currentViewWrapper.value;if(!t)return this.flyToView(0),!0;const n=this._getIndex(t);return this.loop??Or.defaults.loop?(this.flyToView((n+1)%this._viewWrappers.length),!0):n+1>this._viewWrappers.length-1?!1:(this.flyToView(n+1),!0)}stop(){this._currentViewWrapper.value=void 0,this.playing=!1}deleteView(t){if(t<0||t>=this._viewWrappers.length){console.warn("index < 0 || index >= this._viewWrappers.length");return}this._viewWrappers.get(t).destroy(),this._viewWrappers.splice(t,1)}deleteCurrentView(){const t=this._currentViewWrapper.value;if(!t){console.warn("!this._currentViewWrapper.value");return}const n=this._getIndex(t);if(n===-1){console.warn("index === -1");return}this.deleteView(n)}transitionImageUrl(t){return rt.context.getStrFromEnv(t)}_flyStep(t){var o;if(!this.flyToNextView())return this.playing=!1,Promise.resolve();const n=this.intervalTime??Or.defaults.intervalTime,s=((((o=this._currentViewWrapper.value)==null?void 0:o.viewInfo.duration)??0)+n)*1e3;return t.promise(Nu(s)).then(()=>this._flyStep(t))}initProcessing(){const t=this.dv(Yn(async i=>this._flyStep(i))),n=()=>{this.playing?t.restart():t.cancel()};n(),this.d(this.playingChanged.don(n))}getESProperties(){const t={...super.getESProperties()};return{...t,more:[...t.more,new Pt([this,"flyMode"],[["默认","default"],["直线飞行","uniform"]],"飞行模式",Or.defaults.flyMode),new lt([],()=>this.addView(),[],"添加视角"),new lt(["number"],n=>this.insertView(n),[0],"插入视角"),new lt([],()=>this.clearAllViews(),[],"清空所有视角"),new lt([],()=>this.insertView(this.currentViewIndex+1),[],"当前位置插入视角"),new lt([],()=>this.flyToPrevView(),[],"上一个视角"),new lt([],()=>this.flyToNextView(),[],"下一个视角"),new lt([],()=>this.moveToPreView(),[],"当前视角移动到上一个视角"),new lt([],()=>this.moveToNextView(),[],"当前视角移动到下一个视角"),new lt(["number"],n=>this.flyToView(n),[0],"飞入指定视角"),new lt(["number"],n=>this.setCurrentView(n),[0],"设置当前视角"),new lt([],()=>this.deleteCurrentView(),[],"删除当前视角"),new lt(["number"],n=>this.deleteView(n),[0],"删除指定视角"),new lt(["number"],n=>this.resetView(n),[0],"重置视角"),new M([this,"currentViewIndex"],"当前序号",-1,!1,!0),new Rg([this,"playing"],()=>this.stop(),[this,"loop"],"播放",Or.defaults),new X([this,"playing"],"是否播放"),new lt([],()=>this.stop(),[],"停止"),new X([this,"loop"],"是否循环"),new M([this,"intervalTime"],"间隔时间"),new it([this,"views"],"视角集合",[],void 0,!0)]}}};d(Or,"createDefaultProps",()=>({...rt.createDefaultProps(),playing:!1,loop:!0,intervalTime:5,flyMode:"default"})),d(Or,"type",Or.register("ESCameraViewCollection",Or,{chsName:"视角集合",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"视角集合"}));let kc=Or;const Ja=class Ja extends st{constructor(t){super(t);d(this,"editingBindMode","doublePoints")}getESProperties(){const t={...super.getESProperties()};return{...t,basic:[...t.basic,new M([this,"aspectRatio"],"宽高比",1.77778),new M([this,"fov"],"横向夹角",90),new M([this,"far"],"视野长度",100),new M([this,"near"],"近面距离",5)]}}};d(Ja,"createDefaultProps",()=>({...st.createDefaultProps(),fov:90,aspectRatio:1.77778,far:100,near:5,collision:!1})),d(Ja,"type",Ja.register("ESCameraVisibleRange",Ja,{chsName:"摄像头可视域",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"摄像头可视域"}));let ef=Ja;const $a=class $a extends st{constructor(e){super(e)}getESProperties(){const e={...super.getESProperties()};return{...e,basic:[...e.basic,new Pt([this,"mode"],[["警车","policeCar"]],"模式","policeCar")]}}};d($a,"createDefaultProps",()=>({...st.createDefaultProps(),mode:"policeCar",allowPicking:!0})),d($a,"type",$a.register("ESCar",$a,{chsName:"车辆",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"警车等基础车辆模型"}));let Vc=$a;const No=class No extends It{constructor(t){super(t);d(this,"editingBindMode","circular")}getESProperties(){const t={...super.getESProperties()};return{...t,basic:[...t.basic,new M([this,"height"],"高度",10)],coordinate:[...t.coordinate,new M([this,"area"],"面积",0,!1,!0),new M([this,"perimeter"],"周长",0,!1,!0)]}}};d(No,"createDefaultProps",()=>({...It.createDefaultProps(),height:10,filled:!0,fillStyle:wt({material:"",materialParams:{},ground:!0,color:[1,1,1,1]})})),d(No,"type",No.register("ESClassification",No,{chsName:"倾斜单体化",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"平尾箭头"})),d(No,"supportEditingModes",[...It.supportEditingModes,et.CircularAppend,et.CircularInsert,et.HeightModify]);let jc=No;const Ka=class Ka extends st{constructor(e){super(e)}getESProperties(){const e={...super.getESProperties()};return{...e,basic:[...e.basic,new X([this,"showArrow"],"显示箭头",!0),new Mt([this,"edgeColor"],"线框颜色",[1,1,1,1]),new M([this,"edgetWidth"],"线框宽度",2),new M([this,"width"],"裁剪宽度",200),new M([this,"height"],"裁剪高度",200),new pt([this,"targetID"],"瓦片图层","")]}}};d(Ka,"createDefaultProps",()=>({...st.createDefaultProps(),showArrow:!0,edgeColor:dt([1,1,1,1]),edgetWidth:2,width:200,height:200,targetID:""})),d(Ka,"type",Ka.register("ESClippingPlane",Ka,{chsName:"裁切",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"ESClippingPlane"}));let nf=Ka;class bS extends V{constructor(e,t,n){super();const i=document.createElement("div");i.setAttribute("xe2-div",`ESCustomDiv(${t.id})(viewer: ${n.id}) container`);{const u=()=>{const c=` ${t.cssText}
|
|
66
66
|
${t.cssAllInitial?"all: initial;":""}
|
|
67
67
|
${t.show?"":"display: none"}
|
|
68
68
|
`;i.style.cssText=c};u();const l=this.dv(Ie(t.cssAllInitialChanged,t.cssTextChanged,t.showChanged));this.d(l.don(u))}e.appendChild(i),this.d(()=>e.removeChild(i));const s=this.dv(Ie(t.instanceClassChanged,t.containerChanged,t.shadowDomChanged)),o=this.dv(new Ee(s,()=>{const{instanceClass:u,container:l}=t;if(!u||l)return;let c=i;if(i.firstElementChild&&i.removeChild(i.firstElementChild),t.shadowDom){const h=i.appendChild(document.createElement("div"));h.setAttribute("xe2-div",`ESCustomDiv(${t.id})(viewer: ${n.id}) container shadowDiv`),c=h.attachShadow({mode:"open"}).appendChild(document.createElement("div")),c.setAttribute("xe2-div",`ESCustomDiv(${t.id})(viewer: ${n.id}) container shadowDiv div`)}return new u(c,t,n)})),{_updateEvent:a}=t;this.d(a.don(u=>{if(o.obj)try{u(o.obj,t,n)}catch(l){console.error(`ESCustomDiv update error! ${l}`)}}))}}const cy=`class MyDiv {
|
|
@@ -162,6 +162,10 @@ export declare class ES3DTileset extends ESVisualObject {
|
|
|
162
162
|
featureIdLabel: number;
|
|
163
163
|
/** 分割方向 */
|
|
164
164
|
splitDirection: ESJSplitDirectionType;
|
|
165
|
+
/**
|
|
166
|
+
* 调试线框模式,仅Cesium引擎生效
|
|
167
|
+
*/
|
|
168
|
+
czmDebugWireframe: boolean;
|
|
165
169
|
show: boolean;
|
|
166
170
|
collision: boolean;
|
|
167
171
|
flyToParam: import("../../../index").ReactiveVariable<import("../../../index").ESJFlyToParam | undefined>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/ESObjects/general/ES3DTileset/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,SAAS,EAAgD,QAAQ,EAAkB,4BAA4B,EAAE,eAAe,EAAE,WAAW,EAAE,gBAAgB,EAAE,WAAW,EAAE,WAAW,EAAE,WAAW,EAE9I,qBAAqB,EAAE,cAAc,EAE7F,KAAK,EACR,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAiF,cAAc,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACjJ,OAAO,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,MAAM,QAAQ,CAAC;AAE3F;;;;;GAKG;AAEH;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,qBAAa,WAAY,SAAQ,cAAc;IAC3C,gBAAyB,kBAAkB;QAEvC;;WAEG;aACQ,MAAM,GAAG,WAAW;QAC/B;;WAEG;;QAEH;;WAEG;sBACuB,QAAQ,GAAG,YAAY;QACjD;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;;WAGG;;QAEH;;;WAGG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;wBAC4B,WAAW,GAAG,SAAS,GAAG,KAAK;QAC9D;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;wBAC2C,gBAAgB;QAC9D;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH,WAAW;wBACe,qBAAqB
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/ESObjects/general/ES3DTileset/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,SAAS,EAAgD,QAAQ,EAAkB,4BAA4B,EAAE,eAAe,EAAE,WAAW,EAAE,gBAAgB,EAAE,WAAW,EAAE,WAAW,EAAE,WAAW,EAE9I,qBAAqB,EAAE,cAAc,EAE7F,KAAK,EACR,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAiF,cAAc,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACjJ,OAAO,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,MAAM,QAAQ,CAAC;AAE3F;;;;;GAKG;AAEH;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,qBAAa,WAAY,SAAQ,cAAc;IAC3C,gBAAyB,kBAAkB;QAEvC;;WAEG;aACQ,MAAM,GAAG,WAAW;QAC/B;;WAEG;;QAEH;;WAEG;sBACuB,QAAQ,GAAG,YAAY;QACjD;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;;WAGG;;QAEH;;;WAGG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;wBAC4B,WAAW,GAAG,SAAS,GAAG,KAAK;QAC9D;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;wBAC2C,gBAAgB;QAC9D;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH,WAAW;wBACe,qBAAqB;QAC/C;;WAEG;;;;;;;;;;;;;MAEJ;IACH;;OAEG;IACH,gBAAyB,IAAI,EAAE,MAAM,CAAiJ;IACtL;;OAEG;IACH,OAAgB,mBAAmB,WAIjC;gBACU,EAAE,CAAC,EAAE,cAAc;IAI/B;;OAEG;IACM,aAAa;IAItB;;OAEG;IACH,OAAO,CAAC,oBAAoB,CAAwB;IAEpD;;;OAGG;IACH,IAAI,mBAAmB,cAAwC;IAE/D;;OAEG;IACH,cAAc;IAEd;;OAEG;IACH,OAAO,CAAC,kBAAkB,CAAwC;IAElE;;;OAGG;IACH,IAAI,YAAY,0BAAsC;IAEtD;;;OAGG;IACH,OAAO,CAAC,YAAY,CAAiC;IAErD;;;;OAIG;IACH,IAAI,WAAW,IAMQ,OAAO,CANuB;IAErD;;;OAGG;IACH,IAAI,WAAW,CAAC,KAAK,EAAE,OAAO,EAAsC;IAEpE;;;;OAIG;IACH,IAAI,kBAAkB,0DAAwC;IAE9D;;OAEG;IACH,OAAO,CAAC,sBAAsB,CAA+D;IAE7F;;;OAGG;IACH,IAAI,qBAAqB,6DAA0C;IAEnE;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM;IAEpD;;OAEG;IACH,OAAO,CAAC,8BAA8B,CAAuG;IAE7I;;;OAGG;IACH,IAAI,6BAA6B,iHAAkD;IAEnF;;;;;;OAMG;IACH,wBAAwB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM;IAGpG;;OAEG;IACH,OAAO,CAAC,mBAAmB,CAAmE;IAC9F;;;OAGG;IACH,IAAI,kBAAkB,6CAAuC;IAC7D;;;;OAIG;IACH,aAAa,CAAC,OAAO,EAAE,GAAG,EAAE,EAAE,KAAK,GAAE,QAAuB;IAC5D;;OAEG;IACH,OAAO,CAAC,qBAAqB,CAAwB;IAErD;;OAEG;IACI,wBAAwB;aAA6B,MAAM;cAAQ,MAAM,GAAG,MAAM;sBAAsB;IAE/G;;;OAGG;IACH,IAAI,oBAAoB,cAAyC;IAEjE;;;OAGG;IACH,eAAe;aAEY,MAAM;cAAQ,MAAM,GAAG,MAAM;;IAWxD;;OAEG;IACH,OAAO,CAAC,yBAAyB,CAAkE;IAEnG;;;OAGG;IACH,IAAI,wBAAwB,4CAA6C;IAEzE;;;OAGG;IACH,mBAAmB;IAkBnB;;OAEG;IACH,OAAO,CAAC,qBAAqB,CAA+C;IAE5E;;;OAGG;IACH,IAAI,oBAAoB,iCAAyC;IAEjE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA+BG;IACH,eAAe,CAAC,IAAI,EAAE,mBAAmB;IAEzC;;OAEG;IACH,OAAO,CAAC,qBAAqB,CAA0D;IAEvF;;;OAGG;IACH,IAAI,oBAAoB,4CAAyC;IAEjE;;;;;;;;;;;;;;;;;;;OAmBG;IACH,eAAe,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,oBAAoB,EAAE;IAI1E;;OAEG;IACH,OAAO,CAAC,uBAAuB,CAA4D;IAE3F;;;OAGG;IACH,IAAI,sBAAsB,8CAA2C;IAErE;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,iBAAiB,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,sBAAsB,EAAE;IAI9E;;OAEG;IACH,OAAO,CAAC,uBAAuB,CAAwB;IAEvD;;;OAGG;IACH,IAAI,sBAAsB,cAA2C;IAErE;;OAEG;IACH,iBAAiB;IAEjB;;OAEG;IACI,oBAAoB;;QAAgD;IAE3E;;OAEG;IACH,OAAO,CAAC,iBAAiB,CAAiF;IAE1G;;;OAGG;IACH,IAAI,gBAAgB;;QAAqC;IAEzD;;;;OAIG;IACH,WAAW,CAAC,OAAO,EAAE;QAAE,CAAC,EAAE,EAAE,MAAM,GAAG,eAAe,CAAA;KAAE,GAAG,SAAS;;;IAWlE;;OAEG;IACH,OAAO,CAAC,iBAAiB,CAAsB;IAE/C;;;OAGG;IACH,IAAI,gBAAgB,IAMQ,MAAM,CAN6B;IAE/D;;;OAGG;IACH,IAAI,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAA2C;IAE7E;;;OAGG;IACH,IAAI,uBAAuB,wDAA6C;IAExE;;OAEG;IACH,OAAO,CAAC,iBAAiB,CAAgC;IAEzD;;;OAGG;IACH,IAAI,gBAAgB,IAMQ,MAAM,EAAE,CAN2B;IAE/D;;;OAGG;IACH,IAAI,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,EAA2C;IAE/E;;;OAGG;IACH,IAAI,uBAAuB,4DAA6C;IAExE;;OAEG;IACH,OAAO,CAAC,iBAAiB,CAAsB;IAE/C;;;OAGG;IACH,IAAI,gBAAgB,IAMQ,MAAM,CAN6B;IAE/D;;;OAGG;IACH,IAAI,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAA2C;IAE7E;;;OAGG;IACH,IAAI,uBAAuB,wDAA6C;IAExE;;OAEG;IACH,OAAO,CAAC,sBAAsB,CAAyB;IAEvD;;;OAGG;IACH,IAAI,qBAAqB,IAMQ,OAAO,CANiC;IAEzE;;;OAGG;IACH,IAAI,qBAAqB,CAAC,KAAK,EAAE,OAAO,EAAgD;IAExF;;;OAGG;IACH,IAAI,4BAA4B,0DAAkD;IAElF;;OAEG;IACH,OAAO,CAAC,gBAAgB,CAAsB;IAE9C;;;OAGG;IACH,IAAI,eAAe,IAMQ,MAAM,CAN4B;IAE7D;;;OAGG;IACH,IAAI,eAAe,CAAC,KAAK,EAAE,MAAM,EAA0C;IAE3E;;;OAGG;IACH,IAAI,sBAAsB,wDAA4C;IAEtE;;OAEG;IACH,OAAO,CAAC,WAAW,CAAqC;IAExD;;;OAGG;IACH,IAAI,UAAU,IAMQ,MAAM,EAAE,CANqB;IAEnD;;;OAGG;IACH,IAAI,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,EAAqC;IAEnE;;;OAGG;IACH,IAAI,iBAAiB,4DAAuC;IAE5D;;OAEG;IACH,WAAW;IACX;;;OAGG;IACM,eAAe;;;;;;;;;;CA2D3B;AACD;;GAEG;AACH,MAAM,WAAW,WAAY,SAAQ,YAAY,CAAC,UAAU,CAAC,OAAO,WAAW,CAAC,kBAAkB,CAAC,CAAC;CAAI"}
|
|
@@ -60,6 +60,7 @@ export declare class ESPipeserTileset extends ES3DTileset {
|
|
|
60
60
|
materialOverrideMap: import("../../xbsj-base").ReactiveVariable<{} | undefined>;
|
|
61
61
|
featureIdLabel: number;
|
|
62
62
|
splitDirection: import(".").ESJSplitDirectionType;
|
|
63
|
+
czmDebugWireframe: boolean;
|
|
63
64
|
show: boolean;
|
|
64
65
|
collision: boolean;
|
|
65
66
|
flyToParam: import("../../xbsj-base").ReactiveVariable<import("../../ESJTypes").ESJFlyToParam | undefined>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ESPipeserTileset.d.ts","sourceRoot":"","sources":["../../../../src/ESObjects/general/ESPipeserTileset.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACxC;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,qBAAa,gBAAiB,SAAQ,WAAW;IAC7C,gBAAyB,kBAAkB;QAEvC;;;WAGG
|
|
1
|
+
{"version":3,"file":"ESPipeserTileset.d.ts","sourceRoot":"","sources":["../../../../src/ESObjects/general/ESPipeserTileset.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACxC;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,qBAAa,gBAAiB,SAAQ,WAAW;IAC7C,gBAAyB,kBAAkB;QAEvC;;;WAGG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAEJ;IACH;;;;;OAKG;IACH,gBAAyB,IAAI,EAAE,MAAM,CAAsJ;IAC3L,MAAM,CAAC,UAAU,EAAuE,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;IAC3G;;;;OAIG;IACH,OAAO,CAAC,qBAAqB,CAAwF;IAErH;;;OAGG;IACH,IAAI,oBAAoB;;UAAyC;IAEjE;;;;OAIG;IACH,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,CAAC;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,EAAE,CAAC;IAE5E;;;;OAIG;IACH,OAAO,CAAC,mBAAmB,CAAwF;IAEnH;;;OAGG;IACH,IAAI,kBAAkB;;UAAuC;IAE7D;;;;OAIG;IACH,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,CAAC;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,EAAE,CAAC;IAE1E;;;OAGG;gBACS,EAAE,CAAC,EAAE,MAAM;IAIvB;;;;OAIG;IACM,eAAe;;;;;;;;;;CAa3B;AACD;;GAEG;AACH,MAAM,WAAW,gBAAiB,SAAQ,YAAY,CAAC,UAAU,CAAC,OAAO,gBAAgB,CAAC,kBAAkB,CAAC,CAAC;CAAI"}
|
|
@@ -68,6 +68,7 @@ export declare class ESRtsFeatureEditing extends ES3DTileset {
|
|
|
68
68
|
materialOverrideMap: import("../../../xbsj-base").ReactiveVariable<{} | undefined>;
|
|
69
69
|
featureIdLabel: number;
|
|
70
70
|
splitDirection: import("..").ESJSplitDirectionType;
|
|
71
|
+
czmDebugWireframe: boolean;
|
|
71
72
|
show: boolean;
|
|
72
73
|
collision: boolean;
|
|
73
74
|
flyToParam: import("../../../xbsj-base").ReactiveVariable<import("../../..").ESJFlyToParam | undefined>;
|