earthsdk3 3.11.0-beta.13 → 3.11.0-beta.15
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 +9 -5
- package/dist/earthsdk3.umd.cjs +3 -3
- package/dist/types/ESViewer/ESViewer.d.ts +12 -0
- package/package.json +2 -2
- package/dist/types/utils/geoPolylineToBezierSpline/bezierSpline/lib/spline.d.ts +0 -62
- package/dist/types/xbsj-base/xr-utils/gif/gifuct-js/index.d.ts +0 -101
package/dist/earthsdk3.iife.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
var EarthSDK3=(function(w){"use strict";var SA=Object.defineProperty;var bA=(w,Qs,Dl)=>Qs in w?SA(w,Qs,{enumerable:!0,configurable:!0,writable:!0,value:Dl}):w[Qs]=Dl;var f=(w,Qs,Dl)=>bA(w,typeof Qs!="symbol"?Qs+"":Qs,Dl);function Qs(){var n;const i=((n=window==null?void 0:window.navigator)==null?void 0:n.userAgent)??"unknown";let t="Unknown";/Windows/.test(i)?t="Windows":/Macintosh/.test(i)?t="MacOS":/Linux/.test(i)?t="Linux":/Android/.test(i)?t="Android":/iOS|iPhone|iPad|iPod/.test(i)&&(t="iOS");let e="Unknown";return/x64|x86_64|Win64|WOW64/.test(i)?e="x64":/x86|i686|Win32/.test(i)?e="x86":/arm64|aarch64/.test(i)?e="arm64":/arm/.test(i)&&(e="arm"),{os:t.toLocaleLowerCase(),arch:e.toLocaleLowerCase()}}const Dl=Date.now();function p0(i){var a;const{os:t,arch:e}=Qs(),n={version:i.version,commitdate:i.date,commitId:i.commitId,runningTime:(Date.now()-Dl)/1e3/60|0,date:new Date().toLocaleString(),href:((a=window==null?void 0:window.location)==null?void 0:a.href)??"unknown",os:t,arch:e},s={method:"GET",headers:new Headers,redirect:"follow"},o=window.encodeURIComponent(JSON.stringify(n));fetch(`https://account.bjxbsj.cn/api/product/record?product=EarthSDKJS&content=${o}`,s).then(l=>l.text()).then(l=>console.log(l)).catch(l=>console.log("error",l))}w.copyright=void 0;try{const i="earthsdk3",t="3.11.0-beta.
|
|
1
|
+
var EarthSDK3=(function(w){"use strict";var SA=Object.defineProperty;var bA=(w,Qs,Dl)=>Qs in w?SA(w,Qs,{enumerable:!0,configurable:!0,writable:!0,value:Dl}):w[Qs]=Dl;var f=(w,Qs,Dl)=>bA(w,typeof Qs!="symbol"?Qs+"":Qs,Dl);function Qs(){var n;const i=((n=window==null?void 0:window.navigator)==null?void 0:n.userAgent)??"unknown";let t="Unknown";/Windows/.test(i)?t="Windows":/Macintosh/.test(i)?t="MacOS":/Linux/.test(i)?t="Linux":/Android/.test(i)?t="Android":/iOS|iPhone|iPad|iPod/.test(i)&&(t="iOS");let e="Unknown";return/x64|x86_64|Win64|WOW64/.test(i)?e="x64":/x86|i686|Win32/.test(i)?e="x86":/arm64|aarch64/.test(i)?e="arm64":/arm/.test(i)&&(e="arm"),{os:t.toLocaleLowerCase(),arch:e.toLocaleLowerCase()}}const Dl=Date.now();function p0(i){var a;const{os:t,arch:e}=Qs(),n={version:i.version,commitdate:i.date,commitId:i.commitId,runningTime:(Date.now()-Dl)/1e3/60|0,date:new Date().toLocaleString(),href:((a=window==null?void 0:window.location)==null?void 0:a.href)??"unknown",os:t,arch:e},s={method:"GET",headers:new Headers,redirect:"follow"},o=window.encodeURIComponent(JSON.stringify(n));fetch(`https://account.bjxbsj.cn/api/product/record?product=EarthSDKJS&content=${o}`,s).then(l=>l.text()).then(l=>console.log(l)).catch(l=>console.log("error",l))}w.copyright=void 0;try{const i="earthsdk3",t="3.11.0-beta.15",e="2026-09-09T07:02:29.000Z",n="北京西部世界科技有限公司",r="地球可视化实验室 (EarthSDK&CesiumLab) https://www.bjxbsj.cn",s="8a3b286a986e6a1ca38bed48ed25a7f77a546cc0",a=((Date.now()-1788937349e3)/36e5).toFixed(1),l=`%c🌏 ${i}%c ${t}.${s.slice(0,8)}.${e} (距今${a}个小时)
|
|
2
2
|
%c${r?r+`
|
|
3
3
|
`:""}当前网站正在使用${i},此软件版权归${n}所有
|
|
4
|
-
`;w.copyright=Object.freeze({get owner(){return"北京西部世界科技有限公司"},get ownerlink(){return OWNERLINK_},get gituri(){return GITURI_&&GITURI_.replace("${commitId}","
|
|
4
|
+
`;w.copyright=Object.freeze({get owner(){return"北京西部世界科技有限公司"},get ownerlink(){return OWNERLINK_},get gituri(){return GITURI_&&GITURI_.replace("${commitId}","8a3b286a986e6a1ca38bed48ed25a7f77a546cc0")},get info(){return l},get date(){return"2026-09-09T07:02:29.000Z"},get author(){return"suplyang"},get version(){return"3.11.0-beta.15"},get name(){return"earthsdk3"},get commitId(){return"8a3b286a986e6a1ca38bed48ed25a7f77a546cc0"},print(){console.info(this.info,`
|
|
5
5
|
font-size: 18px;
|
|
6
6
|
font-weight: 1000;
|
|
7
7
|
line-height: 1;
|
|
@@ -509,4 +509,4 @@ ${FE}
|
|
|
509
509
|
`,inputSchema:{roll:Je.number().describe("翻滚角(°),0度时画面保持水平,必须参数,取值范围 -180~180").min(-180).max(180)}},func:async({roll:t})=>{var e,n;try{const r=(e=i.activeViewer)==null?void 0:e.getCurrentCameraInfo();if(!r)return Pe("cameraRoll",null,"未查询到当前相机信息");const s=[r.rotation[0],r.rotation[1],t];return(n=i.activeViewer)==null||n.flyIn(r.position,s),ss("cameraRoll",{newRotation:s})}catch(r){return Pe("cameraRoll",r)}}},{name:"cameraDistance",params:{description:"控制相机与当前目标或视点之间的距离变化,实现相机画面的拉近或拉远。通过 mode 参数指定缩放方向(near 表示拉近,far 表示拉远)",inputSchema:{mode:Je.enum(["near","far"]).describe("缩放模式,near表示相机画面拉近,far表示相机画面拉远")}},func:async({mode:t})=>{var e,n,r,s,o;try{console.log("cameraDistance",t);const a=(e=i.activeViewer)==null?void 0:e.getCurrentCameraInfo();if(!a)return Pe("cameraDistance",null,"未查询到当前相机信息");const l=(r=(n=i.activeViewer)==null?void 0:n.container)==null?void 0:r.getBoundingClientRect();if(!l)return Pe("cameraDistance",null,"未查询到当前相机容器信息");const u=[l.width/2,l.height/2],h=await((s=i.activeViewer)==null?void 0:s.pickPosition(u));if(!h)return Pe("cameraDistance",null,"未查询到视点位置");const c=t==="near"?.2:-.2,d=[a.position[0]+(h[0]-a.position[0])*c,a.position[1]+(h[1]-a.position[1])*c,a.position[2]+(h[2]-a.position[2])*c];return(o=i.activeViewer)==null||o.flyIn(d,a.rotation),ss("cameraDistance",{mode:t,newPosition:d})}catch(a){return Pe("cameraDistance",a)}}}],wS=i=>[{name:"deleteSceneObject",params:{description:"提供对象id来删除单个或多个场景对象,把对象从场景中移除",inputSchema:{ids:Je.array(Je.string().describe("场景对象 id")).describe("需要删除的场景对象 id 列表").default([])}},func:async({ids:t})=>{var e;try{if(t.length===0)return Pe("deleteSceneObject",null,"未指定对象id");const n=[];for(const r of t){const s=i.sceneTree.getTreeItemFromSceneObjId(r);if(!s){n.push(`删除失败,未查询到ID为 ${r} 的对象`);continue}i.sceneTree.destroySceneObjectTreeItem(s),n.push(`成功删除对象 ${(e=s==null?void 0:s.sceneObject)==null?void 0:e.id}`)}return ss("deleteSceneObject",n)}catch(n){return Pe("deleteSceneObject",n)}}},{name:"createSceneObjectFromJson",params:{description:"根据对象JSON来创建场景对象,必须符合格式 { type: string,id: string, ...} ",inputSchema:{json:Je.object({id:Je.string().describe("对象id"),type:Je.string().describe("对象类型,例如:ESImageLayer")}).passthrough().describe("场景对象JSON,必须保证 id 和 type 存在,严格使用用户提供的JSON,不允许添加额外属性")}},func:async({json:t})=>{var e;try{if(![...pt.context.typeNames].includes(t.type))return Pe("createSceneObjectFromJson",null,`未查询到类型为 ${t.type} 的对象类型`);const r=i.sceneTree.createSceneObjectTreeItemFromJson(t);return r?ss("createSceneObjectFromJson",(e=r==null?void 0:r.sceneObject)==null?void 0:e.completeJson):Pe("createSceneObjectFromJson",null,`创建 ${t.type} 对象失败`)}catch(n){return Pe("createSceneObjectFromJson",n)}}},{name:"setSceneObjectProperty",params:{description:"设置对象的属性值,更改指定对象的某个属性值,参数从场景JSON中查询",inputSchema:{id:Je.string().describe("对象id"),property:Je.string().describe("对象属性名,例如:show"),value:Je.any().describe("对象属性值,例如: true")}},func:async({id:t,property:e,value:n})=>{try{const r=i.getSceneObjectById(t);return r?Reflect.has(r,e)?(r[e]=n,ss("setSceneObjectProperty",`对象 ${r.name} 的 ${e} 属性为 ${JSON.stringify(n)}`)):Pe("setSceneObjectProperty",null,`对象 ${r.name} 没有属性 ${e}`):Pe("setSceneObjectProperty",null,`未查询到ID为 ${t} 的对象`)}catch(r){return Pe("setSceneObjectProperty",r)}}}],ES=i=>[..._S(i),...wS(i)],YR=$R;function SS(i){return YR(i)}class JR extends B{constructor(e){super();f(this,"_tools",new Map);e&&ES(e).forEach(r=>{this.registerTool(r)})}toolTransformParams(e){const{description:n,inputSchema:r,outputSchema:s}=e.params,o=u0(r||{}),a=u0(s||{}),l=SS(o),u=SS(a);return{name:e.name,description:n,inputSchema:l,outputSchema:u}}async listTools(){return Promise.resolve(Array.from(this._tools.values()).map(this.toolTransformParams))}registerTool(e){this._tools.set(e.name,e)}async callTool(e){const{name:n,arguments:r}=e,s=this._tools.get(n);if(!s||!s.func)throw new Error(`ESTool "${n}" does not exist.`);return await s.func(r)}getTools(){return Array.from(this._tools.values())}}function bS(i){return typeof i=="string"?document.getElementById(i):i}function d0(i){if(!i)throw new Error("container is not defined");i.innerHTML="";const t=document.createElement("div");return t.style.cssText="width: 100%; height: 100%; margin: 0px; padding: 0px; border: none; overflow: hidden; position: relative; z-index: 0; background: rgba(0,0,0,0);",i.appendChild(t),t}class CS extends B{constructor(e,n){super();f(this,"_listeningSceneObjects",new Map);this._sceneObjectsMananger=e,this._createSceneObjectListeningFunc=n;const r=this._listeningSceneObjects,s=(o,a)=>{if(o)for(let l of o){const u=r.get(l);u&&(u.destroy(),r.delete(l))}if(a)for(let l of a){if(r.get(l)){console.warn(`listeningSceneObjects已存在某对象:${l.name}`,l);debugger}const h=this.createSceneObjectListeningFunc(l);h&&r.set(l,h)}};s(void 0,this._sceneObjectsMananger.sceneObjects),this.dispose(this._sceneObjectsMananger.sceneObjectsToChange.disposableOn(s)),this.dispose(()=>{for(let o of this._listeningSceneObjects.values())o.destroy();this._listeningSceneObjects.clear()})}get listeningSceneObjects(){return this._listeningSceneObjects}get createSceneObjectListeningFunc(){return this._createSceneObjectListeningFunc}}class ZR extends B{constructor(t){super(),this._esObjectsManager=t;{const e=this._esObjectsManager;class n extends B{constructor(s){super(),this._esPath=s,this.dv(new qe(e.activeViewerChanged,()=>{const o=e.activeViewer;if(!o)return;class a extends B{constructor(u){if(super(),this._esPath=u,!o)throw new Error("!viewer");const h=()=>{const c=e.activeViewer;c&&(this._esPath.path.currentTime=c.simulationTime)};h(),this.d(o.simulationTimeChanged.don(h))}}return new a(this._esPath)}))}}this.dv(new CS(e.sceneObjectsManager,r=>{if(r instanceof Au)return new n(r)}))}{const e=this._esObjectsManager;class n extends B{constructor(s){super();const o=()=>{const a=e.activeViewer;a&&(a.simulationTime=s.currentTime??0)};o(),this.d(s.currentTimeChanged.don(o))}}this.dv(new CS(e.sceneObjectsManager,r=>{if(r instanceof Ru)return new n(r)}))}}}class KR extends B{constructor(t){super(),t.forEach(e=>{this.d(e.path.currentPositionChanged.don(n=>{n&&e.sceneObjects.forEach(r=>{Reflect.has(r,"position")&&(r.position=[...n])})})),this.d(e.path.currentRotationChanged.don(n=>{n&&e.sceneObjects.forEach(r=>{Reflect.has(r,"rotation")&&(r.rotation=[...n])})}))})}}class QR extends B{constructor(e){super();f(this,"_player");f(this,"_channels",this.dv(ot([])));this._objectManager=e,this._player=this._objectManager.player,this.dv(new qe(this.channelsChanged,()=>{if(this.channels.length===0)return;const n=[];for(let r=0;r<this.channels.length;r++){const s=this.channels[r],o=pt.getSceneObjById(s.pathId);if(!o||!(o instanceof Au))continue;const l=s.sceneObjectIds.map(u=>pt.getSceneObjById(u)).filter(u=>u!==void 0);l.length!==0&&n.push({path:o,sceneObjects:l})}if(n.length!==0)return new KR(n)}))}get player(){return this._player}get channels(){return this._channels.value}get channelsChanged(){return this._channels.changed}set channels(e){this._channels.value=e}}function PS(i,t,e,n){if(e)n.currentActiveEditing=[i,t];else if(n.currentActiveEditing){const[r,s]=n.currentActiveEditing;r===i&&s===t&&(e||(n.currentActiveEditing=void 0))}}const tA=["editing","positionEditing","locationEditing","pointEditing","rotationEditing"];class eA extends B{constructor(t,e){super(),this._sceneObject=t;const n=this._sceneObject;for(let r of tA){const s=r+"Changed",o=n[s];if(o){{const a=n[r];PS(n,r,a,e)}this.dispose(o.disposableOn((a=>PS(n,r,a,e))))}}}get sceneObject(){return this._sceneObject}}class iA extends B{constructor(){super();f(this,"_currentActiveEditing",this.disposeVar(oe(void 0)));f(this,"_currentActiveEditingLastChangedTime",0);this.dispose(this._currentActiveEditing.changed.disposableOn((e,n)=>{if(this._currentActiveEditingLastChangedTime=Date.now(),n){const[r,s]=n;r[s]===!0&&(r[s]=!1)}if(e){const[r,s]=e;r[s]=!0}})),pt.context.sceneObjCreatedEvent.don(e=>{e.dv(new eA(e,this))})}get currentActiveEditing(){return this._currentActiveEditing.value}set currentActiveEditing(e){this._currentActiveEditing.value=e}get currentActiveEditingChanged(){return this._currentActiveEditing.changed}get currentActiveEditingLastChangedTime(){return this._currentActiveEditingLastChangedTime}}class nA extends B{constructor(){super();f(this,"_sceneObjects",new Set);f(this,"_sceneObjectsToChange",this.dv(new O));this.d(()=>{const e=Pg(this._sceneObjects);e!==0&&console.warn(`场景对象管理器销毁时仍然管理着${e}个场景对象!`)})}get sceneObjects(){return this._sceneObjects}get sceneObjectsToChange(){return this._sceneObjectsToChange}addSceneObject(e){return this._sceneObjects.has(e)?(console.warn(`创建失败:对象${e.typeName+":"+e.id}已经存在于场景对象管理器中!}`),!1):(this._sceneObjectsToChange.emit([],[e]),this._sceneObjects.add(e),!0)}deleteSceneObject(e){return this._sceneObjects.has(e)?(this._sceneObjectsToChange.emit([e],[]),this._sceneObjects.delete(e),!0):(console.warn(`删除失败:对象${e.typeName+":"+e.id}不存在于场景对象管理器中!}`),!1)}createSceneObject(e,n){const r=pt.context.createSceneObject(e,n);return r&&this.addSceneObject(r),r}createSceneObjectFromUrl(e,n){const r=pt.context.createSceneObjectFromUrl(e,n);return r&&this.addSceneObject(r),r}createSceneObjectFromClass(e,n){const r=pt.context.createSceneObjectFromClass(e,n);return r&&this.addSceneObject(r),r}createSceneObjectFromJson(e){const n=pt.context.createSceneObjectFromJson(e);return n&&this.addSceneObject(n),n}}class rA extends B{constructor(e){super();f(this,"_enabled",this.dv(z(!1)));f(this,"_cursorPosition",z(void 0));f(this,"quickPickPosition",!0);let n=new B;const r=()=>{n&&(n.destroy(),n=void 0)};this.d(r);const s=()=>{if(r(),!e||!this._enabled.value)return;n=new B;const o=n.dv(z(void 0)),a=n.dv(Ve(o.changed));n.d(e.pointerMoveEvent.don(u=>{u.pointerEvent&&(o.value=ji(u.pointerEvent))}));const l=n.dv(Ln(async u=>{if(o.value)if(this.quickPickPosition){const h=await u.promise(Vl(e.quickPickPosition(o.value)));this._cursorPosition.value=h}else{const h=await u.promise(Vl(e.pickPosition(o.value)));this._cursorPosition.value=h}}));n.d(a.don(()=>{l.restart()}))};s(),this.d(this._enabled.changed.don(s))}get enabled(){return this._enabled.value}set enabled(e){this._enabled.value=e}get enabledChanged(){return this._enabled.changed}get cursorPosition(){return this._cursorPosition.value}get cursorPositionChanged(){return this._cursorPosition.changed}}class sA extends B{constructor(e){super();f(this,"cursorPositionInfo");this.viewer=e,this.cursorPositionInfo=this.dv(new rA(this.viewer))}}class oA extends B{constructor(e){super();f(this,"viewer");const n=this.viewer=e;this.ad(new qe(n.rollerShutterChanged,()=>{const r=n.container;if(!r||!n.rollerShutter)return;const s=new B;this.viewer.splitPosition=.5;let o=this.getRollerShutterDIV();return r.appendChild(o),s.d(()=>{this.viewer.splitPosition=0,r.removeChild(o)}),s}))}getRollerShutterDIV(){let e=document.createElement("div");e.style.position="absolute",e.style.left="50%",e.style.top="0",e.style.backgroundColor="#d3d3d3",e.style.width="5px",e.style.height="100%",e.style.zIndex="9999";const n=r=>{if(!e.parentElement)return;r.preventDefault?r.preventDefault():r.returnValue=!1;const o=r.x/e.parentElement.offsetWidth;e.style.left=`${100*o}%`,this.viewer.splitPosition=o};return e.addEventListener("mouseenter",r=>{e.style.cursor="ew-resize"}),e.addEventListener("mouseleave",r=>{e.style.cursor="default"}),e.addEventListener("mousedown",r=>{e.style.cursor="ew-resize",document.addEventListener("mousemove",n)}),document.addEventListener("mouseup",r=>{e.style.cursor="default",document.removeEventListener("mousemove",n)}),e}}class aA extends B{constructor(e){super();f(this,"rollerShutterAnalysis");this.rollerShutterAnalysis=this.ad(new oA(e))}}function xS(i,t){return i.length===t.length&&i.every((e,n)=>e===t[n])}class lA extends B{constructor(t){super(),this._viewer=t,this.d(F([this._viewer,"currentTime"],[this._viewer,"simulationTime"]))}}class uA extends B{constructor(t,e){super(),this._viewer=t,this._activeViewer=e;const n=os.createCommonProps(),r=[];Object.keys(n).forEach(l=>{const u=this._activeViewer[l+"Changed"];r.push(u)});const s=this.dv(Ve(...r)),o=()=>{this._viewer.status!=="Created"||this._activeViewer.status!=="Created"||Object.keys(n).forEach(l=>{this._viewer[l]=this._activeViewer[l]})};this.d(s.don(o));const a=this.dv(Ih());a.restart(void 0,async()=>{if(this._viewer.status!=="Created"||this._activeViewer.status!=="Created")return;const l=this._activeViewer.getCurrentCameraInfo(),u=this._viewer.getCurrentCameraInfo();if(!l)return;const{position:h,rotation:c}=l;u&&xS(h,u.position)&&xS(c,u.rotation)||this._viewer.flyIn(h,c,0)}),this.d(()=>a.cancel())}}const hA=`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" preserveAspectRatio="xMidYMid" width="40" height="40" style="shape-rendering: auto; display: block; background: rgba(255, 255, 255, 0);" xmlns:xlink="http://www.w3.org/1999/xlink"><g><circle stroke-linecap="round" fill="none" stroke-dasharray="50.26548245743669 50.26548245743669" stroke="#ffffff" stroke-width="8" r="32" cy="50" cx="50">
|
|
510
510
|
<animateTransform values="0 50 50;360 50 50" keyTimes="0;1" dur="1s" repeatCount="indefinite" type="rotate" attributeName="transform"></animateTransform>
|
|
511
511
|
</circle><g></g></g></svg>
|
|
512
|
-
`,cA='<svg t="1747028305766" class="icon" viewBox="0 0 1032 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="3881" width="40" height="40"><path d="M0.1536 547.700736c-0.205824-0.187392-0.205824-0.49152 0.008192-0.68608l80.672768-73.590784a0.63488 0.63488 0 0 1 0.7936-0.029696l263.043072 203.0336c0.667648 0.515072 1.738752 0.498688 2.393088-0.038912l609.191936-500.133888a0.605184 0.605184 0 0 1 0.768 0.022528l74.84928 67.229696a0.454656 0.454656 0 0 1-0.002048 0.685056l-685.234176 618.19904a1.14688 1.14688 0 0 1-1.518592-0.012288L0.1536 547.700736z" fill="#ffffff" p-id="3882"></path></svg>',dA='<svg t="1747028398107" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="1146" width="40" height="40"><path d="M415.744006 1.033277A0.992256 0.992256 0 0 1 416.747526 0.000061h189.5045c0.569344 0 1.017856 0.45056 1.001472 1.033216l-21.227518 754.803667a1.062912 1.062912 0 0 1-1.05984 1.032192h-146.933752c-0.569344 0-1.04448-0.45056-1.059839-1.032192L415.744006 1.033277zM511.510528 1024c-52.595709 0-95.231994-39.866366-95.231994-89.043963 0-49.176573 42.636285-89.042939 95.231994-89.042938 52.594685 0 95.231994 39.866366 95.231994 89.042938 0 49.177597-42.637309 89.043963-95.231994 89.043963z" fill="#ffffff" p-id="1147"></path></svg>',Ol=class Ol extends B{constructor(t){super();const e=()=>{const n=this.dv(new Gf);this.d(F([n,"show"],[t,"useDefaultStatusDiv"]));{const r=()=>{n.show=(t.useDefaultStatusDiv??!0)&&t.status!=="Created"};r(),this.d(t.useDefaultStatusDivChanged.don(r)),this.d(t.statusChanged.don(r)),n.cssText="width:100%;height:100%;position:absolute;left:0px;top:0px;"}t.add(n),this.d(()=>t.delete(n)),n.instanceClass=class extends B{constructor(o,a,l){super();f(this,"_div",document.createElement("div"));if(this._subContainer=o,!l)return;this._subContainer.appendChild(this._div),this.d(()=>this._subContainer.removeChild(this._div));{const p=()=>{a.show?this._div.style.opacity="1":this._div.style.opacity="0"};p(),this.d(a.showChanged.don(p))}let u,h,c,d,g;this._div.style.pointerEvents="none",this._div.style.position="absolute",this._div.style.width="100%",this._div.style.height="100%",this._div.style.backgroundColor="rgba(0, 0, 0, 0.4)",this._div.style.zIndex="100",this._div.style.transition="opacity 2s",u=document.createElement("div"),this._div.appendChild(u),u.style.width="auto",u.style.position="absolute",u.style.left="50%",u.style.top="50%",u.style.transform="translate(-50%,-50%)",u.style.background="rgba(120, 120, 0, 0.7)",u.style.color="white",u.style.fontSize="10px",u.style.background="none",u.style.display="flex",u.style.justifyContent="center",u.style.alignItems="center",h=document.createElement("div"),u.appendChild(h),h.style.pointerEvents="none",h.style.display="block",h.style.width="40px",h.innerHTML=Ol.defaultsSvg.loadingSvg,h.style.filter="drop-shadow(0px 0px 1px black)",c=document.createElement("div"),u.appendChild(c),c.style.pointerEvents="none",c.style.marginLeft="10px",c.style.display="flex",c.style.flexFlow="column",c.style.maxWidth="300px",d=document.createElement("div"),c.appendChild(d),d.style.fontSize="14px",d.style.fontWeight="800",d.style.marginBottom="5px",d.style.textShadow="0 0 2px black",g=document.createElement("div"),c.appendChild(g),g.style.fontWeight="400",g.style.textShadow="0 0 2px black";{const p=()=>{let b="Raw";l.status==="Raw"?b="初始状态":l.status==="Creating"?b="正在创建":l.status==="Created"?b="创建完成":l.status==="Error"?b="创建失败":l.status==="Reconnecting"&&(b="重新连接"),d.innerText=`${b}(${l.status})`,g.innerText=`${l.statusLog}`,(l.status==="Creating"||l.status==="Reconnecting")&&(h.innerHTML=Ol.defaultsSvg.loadingSvg),l.status==="Created"&&(h.innerHTML=Ol.defaultsSvg.successSvg),l.status==="Error"&&(h.innerHTML=Ol.defaultsSvg.warnSvg)};p();const E=this.dv(Ve(l.statusLogChanged,l.statusChanged));this.d(E.don(p))}}update(){const o=255*Math.random()|0,a=255*Math.random()|0,l=255*Math.random()|0;this._div.style.background=`rgba(${o}, ${a}, ${l}, 0.8)`}}};this.d(t.containerChanged.don(()=>{e()}))}};f(Ol,"defaultsSvg",{loadingSvg:hA,successSvg:cA,warnSvg:dA});let f0=Ol;class fA extends B{constructor(t,e,n){super(),this._subContainer=t,this._overlayContainer=e,this._viewer=n;const r=this._subContainer,s=this._overlayContainer,o=this._viewer,a=()=>{const h=o.zIndex??"";r.style.zIndex=h,s.style.zIndex=h};a(),this.d(o.zIndexChanged.don(a));const l=()=>{r.style.display=o.show??!0?"block":"none"};l(),this.d(o.showChanged.don(l));const u=()=>{r.style.opacity=`${o.opacity??1}`};u(),this.d(o.opacityChanged.don(u))}}function ag(i){let t=An(i,"_relativeContainer");return t||(t=document.createElement("div"),t.style.position="relative",t.style.width="100%",t.style.height="100%",t.style.padding="0",t.style.margin="0",i.appendChild(t),ps(i,"_relativeContainer",t)),t}class gA extends B{constructor(e,n){super();f(this,"_subContainer",document.createElement("div"));f(this,"_overlayContainer",document.createElement("div"));f(this,"_containerStyleController");this._container=e,this._viewer=n,this._containerStyleController=this.dv(new fA(this._subContainer,this._overlayContainer,this._viewer));const{subContainer:r,overlayContainer:s}=this;r.tabIndex=-1,r.style.outline="none",r.style.width="100%",r.style.height="100%",r.onpointerdown=()=>r.focus(),s.style.position="relative",s.setAttribute("earthsdk3","earthsdk3-overlayContainer"),r.setAttribute("earthsdk3","earthsdk3-subContainer"),ag(this._container).appendChild(r),this.d(()=>ag(this._container).removeChild(r)),ag(this._container).appendChild(s),this.d(()=>ag(this._container).removeChild(s))}get subContainer(){return this._subContainer}get overlayContainer(){return this._overlayContainer}get containerStyleController(){return this._containerStyleController}get container(){return this._container}}class pA extends B{constructor(){super(...arguments);f(this,"registerObjsMap",new Map)}register(e,n){return this.registerObjsMap.has(e)&&console.warn(`register warn:${e}已经被注册,再次注册会覆盖。`),this.registerObjsMap.set(e,n),e}getViewerConstructor(e){const n=this.registerObjsMap.get(e);if(!n){console.warn(`未找到${e}类!`);return}return n}createViewer(e){const n=e.type;console.log(e);const r=this.getViewerConstructor(n);if(!r)throw new Error(`没有找到类型为${n}的Viewer构造器!`);return new r(e)}}class IS extends B{constructor(t,e,n=!1,r=!1){if(super(),this._viewer=t,!e)throw new Error("ViewerCustomInteraction: container is null");const s=this.dv(xe.create(e,"pointerdown")),o=this.dv(xe.create(e,"pointermove")),a=this.dv(xe.create(e,"pointerup")),l=this.dv(xe.create(e,"pointerout")),u=this.dv(xe.create(e,"pointerover")),h=this.dv(new Vg),c=this.dv(new k0),d=()=>{const m=this._viewer.hoverTime*1e3;c.delayTime=m};this.d(this._viewer.hoverTimeChanged.don(()=>{d()})),this.d(s.don(m=>h.pointerDown(m))),this.d(o.don(m=>h.pointerMove(m))),this.d(a.don(m=>h.pointerUp(m))),this.d(l.don(m=>h.pointerOut(m))),this.d(s.don(m=>c.pointerDown(m))),this.d(o.don(m=>c.pointerMove(m))),this.d(a.don(m=>c.pointerUp(m))),this.d(l.don(m=>c.pointerOut(m)));const{x:g,y:p}=e.getBoundingClientRect(),E=r?g:0,b=r?p:0;this.d(c.hoverEvent.don(m=>{const[y,S]=kl(m,n);this._viewer.hoverEvent.emit({screenPosition:[y+E,S+b],pointerEvent:m})})),this.d(h.clickEvent.don(m=>{const[y,S]=kl(m,n);this._viewer.clickEvent.emit({screenPosition:[y+E,S+b],pointerEvent:m})})),this.d(h.dbclickEvent.don(m=>{const[y,S]=kl(m,n);m.button===0&&this._viewer.dblclickEvent.emit({screenPosition:[y+E,S+b],pointerEvent:m})})),this.d(s.don(m=>{const[y,S]=kl(m,n);m.button===0&&this._viewer.pointerDownEvent.emit({screenPosition:[y+E,S+b],pointerEvent:m})})),this.d(a.don(m=>{const[y,S]=kl(m,n);m.button===0&&this._viewer.pointerUpEvent.emit({screenPosition:[y+E,S+b],pointerEvent:m})})),this.d(o.don(m=>{const[y,S]=ji(m,n);this._viewer.pointerMoveEvent.emit({screenPosition:[y+E,S+b],pointerEvent:m})})),this.d(u.don(m=>{const[y,S]=ji(m,n);this._viewer.pointerOverEvent.emit({screenPosition:[y+E,S+b],pointerEvent:m})})),this.d(l.don(m=>{const[y,S]=ji(m,n);this._viewer.pointerOutEvent.emit({screenPosition:[y+E,S+b],pointerEvent:m})}));const P=this.dv(xe.create(e,"keydown"));this.d(P.don(m=>this._viewer.keyDownEvent.emit(m)));const v=this.dv(xe.create(e,"keyup"));this.d(v.don(m=>this._viewer.keyUpEvent.emit(m)));const _=this.dv(xe.create(e,"wheel"));this.d(_.don(m=>this._viewer.wheelEvent.emit(m)))}}const Oo=class Oo extends B{constructor(e){super();f(this,"_forceRecreateEvent",this.dv(new O));f(this,"_container",this.dv(z(void 0)));f(this,"_containerSize",this.dv(z(void 0)));f(this,"_editingEvent",this.disposeVar(new O));f(this,"_esViewerExtensions",this.dv(new sA(this)));f(this,"_status",this.dv(z("Raw")));f(this,"_statusLog",this.dv(z("")));f(this,"_statusContainer",this.dv(new f0(this)));f(this,"_useCustomInteraction",this.dv(z(!0)));f(this,"_resetInteractionEvent",this.dv(Ve(this.containerChanged,this._useCustomInteraction.changed,this._forceRecreateEvent)));f(this,"_interactionResetting",this.dv(new qe(this._resetInteractionEvent,()=>{if(!(!this.container||!this._useCustomInteraction.value))return new IS(this,this.container)})));f(this,"_viewerChanged",this.dv(new O));f(this,"_cameraChanged",this.dv(new O));f(this,"_containerResetEvent",this.dv(Ve(this.containerChanged,this._forceRecreateEvent)));f(this,"_containerResetting",this.dv(new qe(this._containerResetEvent,()=>{if(this.container)return new gA(this.container,this)})));f(this,"_sceneObjectsMap",new Map);f(this,"_id");f(this,"_typeName");f(this,"_updateFuncReact",this.dv(z(void 0)));f(this,"_toDestroyFuncReact",this.dv(z(void 0)));f(this,"_statusInfo",Oo.defaults.statusInfo);f(this,"_navigationMode",this.dv(z("Map")));f(this,"_navigationEvent",this.disposeVar(new O));f(this,"_syncViewer",this.dv(z(void 0)));f(this,"_syncEventDon",this.dv(new qe(this.syncViewerChanged,()=>{const e=this.syncViewer;if(e)return new uA(this,e)})));f(this,"_timeSyncdon",this.dv(new qe(this.timeSyncChanged,()=>{if(this.timeSync)return new lA(this)})));f(this,"_hoverEvent",this.dv(new O));f(this,"_pointerOverEvent",this.dv(new O));f(this,"_pointerMoveEvent",this.dv(new O));f(this,"_pointerDownEvent",this.dv(new O));f(this,"_pointerUpEvent",this.dv(new O));f(this,"_pointerOutEvent",this.dv(new O));f(this,"_clickEvent",this.dv(new O));f(this,"_dblclickEvent",this.dv(new O));f(this,"_keyDownEvent",this.dv(new O));f(this,"_keyUpEvent",this.dv(new O));f(this,"_wheelEvent",this.dv(new O));f(this,"_actived",this.dv(z(!1)));this._id=e.id??Ll();const n=bS(e.container);if(n)this._container.value=d0(n),this._typeName=e.type,this._initName();else throw new Error("container is not defined");{const r=()=>{n&&(this.show??!0?n.style.display="block":n.style.display="none")};r(),this.d(this.showChanged.don(r))}{const r=this._sceneObjectsMap,s=()=>{for(let[a,l]of r.entries())if(!l&&a){const u=sl.context.createEngineObject(a,this);u&&r.set(a,u)}},o=()=>{for(let[a,l]of r.entries())l&&!l.isDestroyed()&&l.destroy(),r.set(a,void 0)};this.d(o),this.d(this.viewerChanged.don(a=>{o(),a&&s()}))}{const r=()=>{if(this.execOnceFuncStr)try{Function(`"use strict";return (${this.execOnceFuncStr})`)()(this)}catch(s){console.warn(`execOnceFuncStr不能转成函数!或者函数执行时错误!id: ${this.id} ${this.typeName} error: ${s}`)}};r(),this.d(this.execOnceFuncStrChanged.don(r))}{const r=()=>{if(this.updateFuncStr)try{this.updateFunc=Function(`"use strict";return (${this.updateFuncStr})`)()}catch(o){console.warn(`updateFuncStr不能转成函数!或者函数执行时错误!id: ${this.id} ${this.typeName} error: ${o}`)}};r(),this.d(this.updateFuncStrChanged.don(r));let s;this.d(()=>s&&s.destroy()),this.d(this.updateFuncChanged.don(()=>{s&&s.cancel(),this.updateFunc&&(s=s||Ih(),s.restart(void 0,o=>{this.updateFunc&&this.updateFunc(this,o)}))}))}{const r=()=>{try{this.toDestroyFunc=this.toDestroyFuncStr&&Function(`"use strict";return (${this.toDestroyFuncStr})`)()||void 0}catch(s){console.warn(`toDestroyFuncStr不能转成函数!或者函数执行时错误!id: ${this.id} ${this.typeName} error: ${s}`),this.toDestroyFunc=void 0}};r(),this.d(this.toDestroyFuncStrChanged.don(r)),this.d(this.toDestroyEvent.don(()=>{this.toDestroyFunc&&this.toDestroyFunc(this)}))}this.ad(new aA(this))}forceRecreate(){this._forceRecreateEvent.emit()}get container(){return this._container.value}set container(e){this._container.value=e}set containerOrId(e){if(typeof e=="string"){const n=document.getElementById(e);n&&n instanceof HTMLDivElement?this._container.value=d0(n):console.warn("containerOrId warn: !(container instanceof HTMLDivElement)")}else e instanceof HTMLDivElement?this._container.value=d0(e):console.warn("containerOrId warn: setting container failed!")}get containerChanged(){return this._container.changed}get containerSize(){return this._containerSize.value}set containerSize(e){this._containerSize.value=e}get containerSizeChanged(){return this._containerSize.changed}get editingEvent(){return this._editingEvent}get esViewerExtensions(){return this._esViewerExtensions}get status(){return this._status.value}get statusChanged(){return this._status.changed}setStatus(e){this._status.value=e}get statusLog(){return this._statusLog.value}get statusLogChanged(){return this._statusLog.changed}setStatusLog(e){this._statusLog.value=e}get useCustomInteraction(){return this._useCustomInteraction.value}set useCustomInteraction(e){this._useCustomInteraction.value=e}get viewerChanged(){return this._viewerChanged}get cameraChanged(){return this._cameraChanged}get containerResetEvent(){return this._containerResetEvent}get subContainer(){var e;return(e=this._containerResetting.obj)==null?void 0:e.subContainer}get subContainerChanged(){return this._containerResetting.objChanged}get overlayContainer(){var e;return(e=this._containerResetting.obj)==null?void 0:e.overlayContainer}get overlayContainerChanged(){return this._containerResetting.objChanged}get sceneObjectsMap(){return this._sceneObjectsMap}get sceneObjects(){return this._sceneObjectsMap.keys()}getEngineObject(e){return this.sceneObjectsMap.get(e)}add(...e){for(let n of e)if(!this.has(n)){pt.context.addSceneObject(n);const r=sl.context.createEngineObject(n,this);r&&this._sceneObjectsMap.set(n,r),n.viewerAttached.emit(this)}}delete(...e){for(let n of e)if(this.has(n)){const r=this._sceneObjectsMap.get(n);r&&r.destroy(),pt.context.deleteSceneObject(n),this._sceneObjectsMap.delete(n),n.viewerDetached.emit(this)}}disposableAdd(...e){return this.add(...e),()=>this.delete(...e)}disAdd(...e){return this.disposableAdd(...e)}has(e){return this._sceneObjectsMap.has(e)}clearAllSceneObjects(){for(let e of this.sceneObjects)this.delete(e)}get id(){return this._id}set id(e){console.warn("ESViewer id is readonly")}get typeName(){return this._typeName}_initName(){this.name=`${this.typeName}_${(""+this.id).slice(-4)}`}get defaultProps(){return Oo.createDefaultProps()}get completeJson(){return this._getJson(!1)}_getJson(e=!0){const n={id:this.id,type:this.typeName};for(let r of Object.keys(this.defaultProps))if(e){let s,o=this.defaultProps[r];o instanceof ui?s=o.equals(this[r]):s=o===this[r],s||(n[r]=this[r])}else n[r]=this[r];return n}_setJson(e,n,r){if(!(e instanceof Object)||e.type&&e.type!==this.typeName){console.error(`value.type && value.type${e.type} !== this.typeName${this.typeName}`);return}e.id&&e.id!==this.id&&console.warn(`value.id === undefined || value.id${e.id} !== this.id(${this.id})`);const s=n||[];s.push("id","type");const o=Object.keys(this.defaultProps).filter(a=>!s.includes(a));for(let a of o)if(a in e)this[a]=e[a]===null?void 0:e[a];else if(!(r??!1)){let l=this.defaultProps[a];l instanceof ui&&(l=l.value),this[a]=l}}get json(){return this._getJson()}set json(e){this._setJson(e,["devTags"])}get updateFunc(){return this._updateFuncReact.value}set updateFunc(e){this._updateFuncReact.value=e}get updateFuncChanged(){return this._updateFuncReact.changed}get toDestroyFunc(){return this._toDestroyFuncReact.value}set toDestroyFunc(e){this._toDestroyFuncReact.value=e}get toDestroyFuncChanged(){return this._toDestroyFuncReact.changed}get navigationMode(){return this._navigationMode.value}get navigationModeChanged(){return this._navigationMode.changed}getNavigationMode(){return this._navigationMode.value}get navigationEvent(){return this._navigationEvent}getEngineType(){return this._typeName}get syncViewer(){return this._syncViewer.value}set syncViewer(e){this._syncViewer.value=e}get syncViewerChanged(){return this._syncViewer.changed}syncOtherViewer(e){e&&e.syncViewer&&(e.syncViewer=void 0),e===this?this._syncViewer.value=void 0:this._syncViewer.value=e}setCurrentTime(e){try{this.currentTime=typeof e=="string"?Date.parse(e):e}catch(n){console.warn(`时间格式不正确! value: ${e} error: ${n}`)}}async getVersion(){return window.g_XE3CopyRights??{}}get hoverEvent(){return this._hoverEvent}get pointerOverEvent(){return this._pointerOverEvent}get pointerMoveEvent(){return this._pointerMoveEvent}get pointerDownEvent(){return this._pointerDownEvent}get pointerUpEvent(){return this._pointerUpEvent}get pointerOutEvent(){return this._pointerOutEvent}get clickEvent(){return this._clickEvent}get dblclickEvent(){return this._dblclickEvent}get keyDownEvent(){return this._keyDownEvent}get keyUpEvent(){return this._keyUpEvent}get wheelEvent(){return this._wheelEvent}get actived(){return this._actived.value}set actived(e){this._actived.value=e}get activedChanged(){return this._actived.changed}getESProperties(){return{defaultMenu:"general",basic:[],general:[],dataSource:[],location:[],coordinate:[],style:[],more:[]}}async getCurrentRectangle(){var e;try{const n=(e=this.container)==null?void 0:e.getBoundingClientRect();if(!n)return;const{width:r,height:s}=n,o=await this.quickPickPosition([0,0]),a=await this.quickPickPosition([r,s]);return!o||!a?void 0:[o[0],a[1],a[0],o[1]]}catch(n){console.error(n);return}}};f(Oo,"context",new pA),f(Oo,"register",Oo.context.register.bind(Oo.context)),f(Oo,"defaults",{show:!0,debug:!1,statusInfo:{fps:0,position:[0,0,0],rotation:[0,0,0],length:0},terrainShader:{slope:{show:!1},aspect:{show:!1},elevationRamp:{show:!1,minHeight:-414,maxHeight:8777,color:[]},elevationContour:{show:!1,color:[1,0,0,1],spacing:150,width:2}},globeShow:!0,splitPosition:0,cameraMovableRegion:[0,0,0,0,0,0],depthTestAgainstTerrain:!0,terrainOpacity:1});let os=Oo;(i=>{i.createBaseProps=()=>({name:"未命名场景对象",extras:bt(void 0),devTags:oe(void 0),debug:void 0,show:void 0,opacity:void 0,zIndex:void 0,useDefaultStatusDiv:!0,execOnceFuncStr:void 0,updateFuncStr:void 0,toDestroyFuncStr:void 0}),i.createCommonProps=()=>({globeShow:!0,ionAccessToken:"",lonLatFormat:"DECIMAL_DEGREE",fov:60,textAvoidance:!1,flyToBoundingSize:1024,hoverTime:2,currentTime:Date.now(),simulationTime:Date.now(),timeSync:!1,rain:0,snow:0,cloud:0,fog:0,depthOfField:0,atmosphere:!0,editingPointSize:void 0,editingPointColor:oe(void 0),editingAuxiliaryPointColor:oe(void 0),editingLineWidth:void 0,editingLineColor:oe(void 0),editingAxisSize:void 0,editingAuxiliaryPointSize:void 0,editingHeightOffset:0,editingLineShow:!0,editingEventListening:!0,terrainShader:i.defaults.terrainShader,splitPosition:z(void 0),rollerShutter:!1,cameraMovableRegion:oe(void 0),depthTestAgainstTerrain:!0,terrainOpacity:1,sceneGlobeBaseColor:ot([1,1,1,1]),sceneBackgroundColor:ot([0,0,0,0])}),i.createDefaultProps=()=>({...(0,i.createBaseProps)(),...(0,i.createCommonProps)()})})(os||(os={})),Ro(os.prototype,os.createDefaultProps);function MS(i,t){const e=i._lastCameraInfo;if(e){const n=t.viewerChanged.don(r=>{if(!r||!e)return;const{position:s,rotation:o}=e;t.flyIn(s,o,0),i._lastCameraInfo=void 0,n()})}}const mA=i=>{const t=os.createCommonProps(),e={};try{Object.keys(t).forEach(n=>{e[n]=i[n]})}catch(n){console.warn(n)}return e},TS=(i,t)=>{const e=os.createCommonProps();try{Object.keys(e).forEach(n=>{i[n]=t[n]})}catch(n){console.warn(n)}};class vA extends B{constructor(e){super();f(this,"_viewersChanged",this.disposeVar(new O));f(this,"_viewers",new Set);f(this,"_viewersToChange",this.dv(new O));this._sceneObjectsManager=e,(async()=>{for(let n of this.viewers){const r=this._sceneObjectsManager.sceneObjects;for(const s of r)await this.addSceneObject(s,n)}this.d(()=>{const n=this._sceneObjectsManager.sceneObjects;for(const r of this.viewers)r.delete(...n),this.destroyViewer(r);this._viewers.clear()}),this.d(this._sceneObjectsManager.sceneObjectsToChange.don(async(n,r)=>{for(let s of this.viewers){n.forEach(o=>{this.deleteSceneObject(o,s)});for(let o of r)await this.addSceneObject(o,s)}if(r.length>0)for(let s of r)s.d(s.devTagsChanged.don(async()=>{for(let o of this.viewers){if(o.has(s)&&!Lh(o.devTags,s.devTags)){o.delete(s);continue}await this.addSceneObject(s,o)}})),s.ad(s.reloadEvent.don(async()=>{for(let o of this.viewers)o.has(s)&&(o.delete(s),await this.addSceneObject(s,o))}))})),this.d(this.viewersChanged.don(async(n,r)=>{const s=this._sceneObjectsManager.sceneObjects;n.forEach(o=>{for(let a of s)this.deleteSceneObject(a,o)});for(let o of r)for(let a of s)await this.addSceneObject(a,o);r.length>0&&r.forEach(o=>{o.d(o.devTagsChanged.don(async()=>{o.clearAllSceneObjects();const a=this._sceneObjectsManager.sceneObjects;for(let l of a)console.log("viewersChanged",o.devTags,l.devTags,Lh(o.devTags,l.devTags)),await this.addSceneObject(l,o)}))})}))})()}get viewersChanged(){return this._viewersChanged}get viewers(){return[...this._viewers]}getViewers(){return[...this._viewers]}get viewersToChange(){return this._viewersToChange}createViewer(e){const n=os.context.createViewer(e);return this._viewers.add(n),this._viewersChanged.emit([],[n]),n}destroyViewer(e){return e.isDestroyed()?!0:this._viewers.has(e)?(this._viewers.delete(e),this._viewersChanged.emit([e],[]),e.destroy(),e.isDestroyed()):!1}async addSceneObject(e,n){Lh(n.devTags,e.devTags)&&(n.has(e)?console.warn(`${n.typeName}中已存${e.typeName},检查逻辑是否有问题!`):n.add(e))}deleteSceneObject(e,n){Lh(n.devTags,e.devTags)&&(n.has(e)?n.delete(e):console.warn(`${n.typeName}中不存在${e.typeName},检查逻辑是否有问题!`))}}class lg extends B{constructor(...e){super();f(this,"_drgm",this.dv(new My));f(this,"_sobjm",this.dv(new nA));f(this,"_vrm",this.dv(new vA(this._sobjm)));f(this,"_sceneObjectEditingManager",this.disposeVar(new iA));f(this,"_activeViewer",this.dv(z(void 0)));f(this,"_syncOtherViewersToActived",this.dv(z(!1)));f(this,"_cmrvm",this.createSceneObjectFromClass(Lf));f(this,"_cmrvmdon",this.d(()=>this._cmrvm&&this.destroySceneObject(this._cmrvm)));f(this,"_asset",{type:"ESObjectsManager",version:"0.1.0",createdTime:"",modifiedTime:"",name:"未命名项目"});f(this,"_sceneTree",this.dv(new Rc("default",this.dragstartDataMananger,24,this)));f(this,"_sceneTreeMap",new Map);f(this,"_viewerCreatedEvent",this.dv(new O));f(this,"_lastCameraInfo");f(this,"_lastActiveViewerJson");f(this,"_syncEventDonFunc",this.d(Ze([this.activeViewerChanged,this.syncOtherViewersToActivedChanged],()=>{const e=this.syncOtherViewersToActived;this.viewers.forEach(n=>{e?n.syncOtherViewer(this.activeViewer):n.syncOtherViewer(void 0)})})));f(this,"_player",this.createSceneObjectFromClass(Ru));f(this,"_playerdon",this.d(()=>this._player&&this.destroySceneObject(this._player)));f(this,"_esPlyarAndPathTime",this.dv(new ZR(this)));f(this,"_pathAnimationManager",this.dv(new QR(this)))}getBrowserEnv(){return globalThis.ue&&globalThis.ue.es&&globalThis.ue.esinput?"ESWebView":"Browser"}static get envs(){return pt.context.environmentVariables}getSceneObjectById(e){return pt.getSceneObjectById(e)}getSceneObject(e){return pt.getSceneObject(e)}get $refs(){return pt.$refs}get dragstartDataMananger(){return this._drgm}get sceneObjectsManager(){return this._sobjm}get viewers(){return this._vrm.viewers}getViewers(){return this._vrm.getViewers()}get sceneObjectEditingManager(){return this._sceneObjectEditingManager}get activeViewer(){return this._activeViewer.value}set activeViewer(e){this._activeViewer.value=e,this.viewers.forEach(n=>n.actived=n===e)}get activeViewerChanged(){return this._activeViewer.changed}get syncOtherViewersToActived(){return this._syncOtherViewersToActived.value}set syncOtherViewersToActived(e){this._syncOtherViewersToActived.value=e}get syncOtherViewersToActivedChanged(){return this._syncOtherViewersToActived.changed}get cameraViewsManager(){return this._cmrvm}get completeJson(){var c;const e=this._asset.createdTime||new Date().toISOString(),n=new Date().toISOString(),r=this._asset.name||"未命名项目",o={type:"ESObjectsManager",version:this._asset.version||"0.1.0",createdTime:e,modifiedTime:n,name:r},a=this.sceneTree.completeJson,l=this._cmrvm.views,u=[...this.viewers].map(d=>d.completeJson),h=(c=this.activeViewer)==null?void 0:c.getCurrentCameraInfo();return{asset:o,viewers:u,sceneTree:a,viewCollection:l,lastView:h}}get json(){var c;const e=this._asset.createdTime||new Date().toISOString(),n=new Date().toISOString(),r=this._asset.name||"未命名项目",o={type:"ESObjectsManager",version:this._asset.version||"0.1.0",createdTime:e,modifiedTime:n,name:r},a=this.sceneTree.json,l=this._cmrvm.views,u=[...this.viewers].map(d=>d.json),h=(c=this.activeViewer)==null?void 0:c.getCurrentCameraInfo();return{asset:o,viewers:u,sceneTree:a,viewCollection:l,lastView:h}}set json(e){try{if(!e.asset)return;if(!e.asset.type||e.asset.type!=="ESObjectsManager"){console.warn("json装配失败! asset.type 不存在或者不是'ESObjectsManager'");return}if(this._asset.createdTime=e.asset&&e.asset.createdTime||new Date().toISOString(),this._asset.modifiedTime=e.asset&&e.asset.modifiedTime||"",this._asset.name=e.asset&&e.asset.name||"未命名项目",this._asset.version=e.asset&&e.asset.version||"0.1.0",e.sceneTree&&(this.sceneTree.json=e.sceneTree),e.viewCollection&&(this._cmrvm.views=e.viewCollection),!e.viewers||!Array.isArray(e.viewers)){console.warn("viewers is not an array or does not exist !");return}if(this.viewers.length===0||e.viewers.length===0){console.warn("viewers is empty !");return}this.viewers.forEach(n=>{const r=e.viewers.find(s=>s.id===n.id);r&&(n.json=r)})}catch(n){console.error(`ESObjectsManager解析json数据时发生错误! error: ${n}`)}}get sceneTree(){return this._sceneTree}get jsonLoadingEvent(){return this._sceneTree.jsonLoadingEvent}getSceneTrees(){return[...this._sceneTreeMap.values()]}getSceneTree(e="default"){if(e==="default")return this._sceneTree;if(!this._sceneTreeMap.has(e)){console.warn(`id为${e}的SceneTree不存在!`);return}return this._sceneTreeMap.get(e)}createSceneTree(e,n=24){if(this._sceneTreeMap.has(e)||e==="default")console.warn(`id为${e}的SceneTree已存在!`);else{const r=this.dv(new Rc(e,this.dragstartDataMananger,n,this));this._sceneTreeMap.set(e,r)}return this.getSceneTree(e)}get viewerCreatedEvent(){return this._viewerCreatedEvent}createViewer(e){const n=this._vrm.createViewer(e);this.activeViewer||(this.activeViewer=n);const r=this.d(n.viewerChanged.don(s=>{s&&(this._viewerCreatedEvent.emit(n),r())}));return n}destroyViewer(e){return this._activeViewer.value===e&&(this._activeViewer.value=void 0),this._vrm.destroyViewer(e)}switchViewer(e,n=!0,r=!0,s=!0){var u,h;this.activeViewer&&this.activeViewer.getNavigationMode()!=="Map"&&this.activeViewer.changeToMap(),!this._lastCameraInfo&&n&&(this._lastCameraInfo=(u=this.activeViewer)==null?void 0:u.getCurrentCameraInfo(),((h=this.activeViewer)==null?void 0:h.typeName)=="ESOlViewer"&&this._lastCameraInfo&&(this._lastCameraInfo.rotation[1]=-90)),!this._lastActiveViewerJson&&r&&(this._lastActiveViewerJson=this.activeViewer?mA(this.activeViewer):void 0),s&&this.activeViewer&&this.destroyViewer(this.activeViewer);const o=e.id,a=o?[...this.getViewers()].find(c=>c.id===o):[...this.getViewers()].find(c=>c.typeName===e.type&&!c.container);if(a)if(o&&a.typeName!==e.type)console.warn(`id为${o}的viewer的typeName和option.type${e.type}不相同!,虽然id一致但是typeName不同,所以会销毁并创建新的viewer`),this.destroyViewer(a);else return console.log("ESViewer exists, will be used"),n&&MS(this,a),r&&this._lastActiveViewerJson&&(TS(a,this._lastActiveViewerJson),this._lastActiveViewerJson=void 0),a.container===bS(e.container)?(a.containerOrId=e.container,a.forceRecreate()):a.containerOrId=e.container,this.activeViewer=a,a;console.log("No ESViewer exists, will be created");const l=this.createViewer(e);return console.log(e),console.log(this),n&&MS(this,l),r&&this._lastActiveViewerJson&&(TS(l,this._lastActiveViewerJson),this._lastActiveViewerJson=void 0),this.activeViewer=l,l}switchToCesiumViewer(...e){if(typeof e[0]=="object"&&!(e[0]instanceof HTMLDivElement)){const{container:n,viewSync:r,attributeSync:s,destroy:o,id:a}=e[0];return this.switchViewer({type:"ESCesiumViewer",container:n,id:a},r??!0,s??!0,o??!0)}else if(typeof e[0]=="string"||e[0]instanceof HTMLDivElement){const n={container:e[0],viewSync:e[1]??!0,attributeSync:e[2]??!0,destroy:e[3]??!0,id:e[4]},{container:r,viewSync:s,attributeSync:o,destroy:a,id:l}=n;return this.switchViewer({type:"ESCesiumViewer",container:r,id:l},s,o,a)}}switchToUEViewer(...e){let n,r={viewSync:!0,attributeSync:!0,destroy:!0};if(typeof e[0]=="object"&&!(e[0]instanceof HTMLDivElement)&&e[0].hasOwnProperty("uri")){const{container:l,uri:u,app:h,token:c,viewSync:d,attributeSync:g,destroy:p,id:E,silentTime:b}=e[0];n={type:"ESUeViewer",container:l,id:E,options:{uri:u,app:h,token:c,silentTime:b}},r={viewSync:d??!0,attributeSync:g??!0,destroy:p??!0}}else if(typeof e[0]=="object"&&!(e[0]instanceof HTMLDivElement)&&e[0].hasOwnProperty("ws")){const{container:l,ws:u,esmsg:h,viewSync:c,attributeSync:d,id:g,destroy:p,silentTime:E}=e[0];n={type:"ESUeViewer",container:l,id:g,options:{ws:u,esmsg:h,silentTime:E}},r={viewSync:c??!0,attributeSync:d??!0,destroy:p??!0}}else if(typeof e[0]=="object"&&!(e[0]instanceof HTMLDivElement)&&e[0].hasOwnProperty("project")){const{container:l,project:u,baseUrl:h,viewSync:c,attributeSync:d,id:g,destroy:p}=e[0];n={type:"ESUeViewer",container:l,id:g,options:{project:u,baseUrl:h}},r={viewSync:c??!0,attributeSync:d??!0,destroy:p??!0}}else(typeof e[0]=="string"||e[0]instanceof HTMLDivElement)&&(typeof e[1]=="string"&&e[1].startsWith("ws")?(n={type:"ESUeViewer",container:e[0],id:e[6],options:{ws:e[1],esmsg:e[2]??void 0,silentTime:e[7]??void 0}},r={viewSync:e[3]??!0,attributeSync:e[4]??!0,destroy:e[5]??!0}):typeof e[1]=="string"&&e[1].startsWith("http")?(n={type:"ESUeViewer",container:e[0],id:e[7],options:{uri:e[1],app:e[2],token:e[3]??void 0,silentTime:e[8]??void 0}},r={viewSync:e[4]??!0,attributeSync:e[5]??!0,destroy:e[6]??!0}):(n={type:"ESUeViewer",container:e[0],id:e[6],options:{project:e[1],baseUrl:e[2]??void 0}},r={viewSync:e[3]??!0,attributeSync:e[4]??!0,destroy:e[5]??!0}));if(!n)throw new Error("参数错误");const{viewSync:s,attributeSync:o,destroy:a}=r;return this.switchViewer(n,s,o,a)}createCesiumViewer(...e){let n;if(typeof e[0]=="object"&&!(e[0]instanceof HTMLDivElement)?n={...e[0],type:"ESCesiumViewer"}:(typeof e[0]=="string"||e[0]instanceof HTMLDivElement)&&(n={container:e[0],options:e[1]??void 0,id:e[2]??void 0,type:"ESCesiumViewer"}),!n)throw new Error("参数错误");return this.createViewer(n)}createOpenLayersViewer(...e){let n;if(typeof e[0]=="object"&&!(e[0]instanceof HTMLDivElement)?n={...e[0],type:"ESOlViewer"}:(typeof e[0]=="string"||e[0]instanceof HTMLDivElement)&&(n={container:e[0],options:e[1]??void 0,id:e[2]??void 0,type:"ESOlViewer"}),!n)throw new Error("参数错误");return this.createViewer(n)}createUeViewer(...e){let n;if(typeof e[0]=="object"&&!(e[0]instanceof HTMLDivElement)?n={...e[0],type:"ESUeViewer"}:(typeof e[0]=="string"||e[0]instanceof HTMLDivElement)&&(typeof e[1]=="string"&&e[1].startsWith("ws")?n={type:"ESUeViewer",container:e[0],id:e[3]??void 0,options:{ws:e[1],esmsg:e[2]??void 0,silentTime:e[4]??void 0}}:typeof e[1]=="string"&&e[1].startsWith("http")?n={type:"ESUeViewer",container:e[0],id:e[4]??void 0,options:{uri:e[1],app:e[2],token:e[3]??void 0,silentTime:e[5]??void 0}}:n={type:"ESUeViewer",container:e[0],id:e[3]??void 0,options:{project:e[1],baseUrl:e[2]??void 0}}),!n)throw new Error("参数错误");return this.createViewer(n)}createSceneObject(e,n){return this._sobjm.createSceneObject(e,n)}createSceneObjectFromUrl(e,n){return this._sobjm.createSceneObjectFromUrl(e,n)}createSceneObjectFromClass(e,n){return this._sobjm.createSceneObjectFromClass(e,n)}createSceneObjectFromJson(e){return this._sobjm.createSceneObjectFromJson(e)}destroySceneObject(e){const n=this._sobjm.deleteSceneObject(e);return e.destroy(),n}destroyAllSceneObjects(){const e=[...this._sobjm.sceneObjects];for(let n of e)n!=this._player&&n!=this._cmrvm&&this.destroySceneObject(n)}get player(){return this._player}get esPlyarAndPathTime(){return this._esPlyarAndPathTime}get pathAnimationManager(){return this._pathAnimationManager}}return f(lg,"getSceneObjById",pt.context.getSceneObjectById.bind(pt.context)),f(lg,"getEnv",pt.context.getEnv.bind(pt.context)),f(lg,"setEnv",pt.context.setEnv.bind(pt.context)),w.BooleanProperty=X,w.BorderedPosFloatDiv=K0,w.BoxPicker=Rg,w.CancelError=Fr,w.CancelsManager=Fg,w.CanvasImagePoi=qb,w.CanvasPoi=zg,w.CanvasPointPoi=Wb,w.CanvasPrimitive=G0,w.CanvasPrimitivesContext=Hb,w.ColorProperty=Dt,w.ColorStops=o4,w.ComplexImage=Bc,w.CursorFloatDiv=Zb,w.CursorInfo=Kb,w.DashPatternProperty=Py,w.DateProperty=ys,w.DatesProperty=Kg,w.Debouncing=wb,w.DebouncingDeprecated=Ng,w.DebouncingWithStartValues=Eb,w.Destroyable=B,w.DivBoxPicker=vb,w.DivPoi=Y0,w.DivPointerClick=zb,w.DivideProperty=wt,w.DomElementEvent=xe,w.DoublyLinkedList=E0,w.DragStartDataManager=My,w.ES3DTileset=Jn,w.ESAlarm=Om,w.ESApertureEffect=Dm,w.ESAreaMeasurement=Rm,w.ESAttackArrow=e0,w.ESBlastParticleSystem=Am,w.ESBoxClipping=Lm,w.ESCameraView=Rf,w.ESCameraViewCollection=Lf,w.ESCameraVisibleRange=Fm,w.ESCar=Ff,w.ESCityBasePoint=Fv,w.ESClassification=kf,w.ESClippingPlane=km,w.ESCustomDiv=Gf,w.ESCylinder=rl,w.ESCzml=Gv,w.ESDataMesh=Gm,w.ESDatasmithRuntimeModel=vv,w.ESDirectionMeasurement=av,w.ESDistanceMeasurement=jm,w.ESDynamicWater=yv,w.ESEntityCluster=Rv,w.ESExcavate=Ac,w.ESFeatureLayer=Jv,w.ESFireParticleSystem=jf,w.ESFireWall=qm,w.ESForestTileset=Vm,w.ESFountainParticleSystem=Hf,w.ESGaussianSplatting=Bv,w.ESGeoBezierSpline=Av,w.ESGeoDiv=zm,w.ESGeoDivTextPoi=Lv,w.ESGeoExtrudedPolygon=nl,w.ESGeoJson=kc,w.ESGeoLineString=Fi,w.ESGeoPoints=zc,w.ESGeoPolygon=Jt,w.ESGeoPolygonWithFire=Um,w.ESGeoRectangle=Wm,w.ESGeoVector=Ot,w.ESGeoWater=_v,w.ESGltfModel=Fs,w.ESGltfModelEditing=Qv,w.ESHeatMap=Jf,w.ESHeightLimitAnalysis=Dv,w.ESHeightMeasurement=uv,w.ESHole=xv,w.ESHuman=Zn,w.ESHumanFountain=Pv,w.ESHumanPoi=Cv,w.ESHumans=t0,w.ESImageLabel=Vf,w.ESImageryLayer=Lc,w.ESJArrowModeArray=ep,w.ESJClassificationTypeArray=tp,w.ESJEditingMode=nt,w.ESJLonLatFormat=Iy,w.ESJPickedResult=EC,w.ESLabel=Yn,w.ESLandSlide=Uv,w.ESLevelRuntimeModel=wv,w.ESLocalCircle=hv,w.ESLocalPolygon=Gc,w.ESLocalPolygonZ=cv,w.ESLocalRectangle=dv,w.ESLocalSkyBox=Xm,w.ESLocalVector=Nu,w.ESLocalVector2D=wo,w.ESLocationMeasurement=$m,w.ESMCPClient=JR,w.ESMVTLayer=Zv,w.ESMediaLayer=Kv,w.ESMsTileset=Tv,w.ESNavigator=jv,w.ESObjectWithLocation=ct,w.ESObjectsManager=lg,w.ESParticleSystemPrimitive=zf,w.ESPath=Au,w.ESPathImpl=aa,w.ESPipeFence=qf,w.ESPipeline=Ev,w.ESPipeserTileset=fv,w.ESPit=Du,w.ESPlayer=Ru,w.ESPoi2D=Fc,w.ESPoi3D=Ym,w.ESPoiTileset=Nv,w.ESPolygonFence=Wf,w.ESPolygonFlattenedPlane=Jm,w.ESPolygonWithHole=pv,w.ESPolygonsFlattenedPlane=Zm,w.ESRectangle=gv,w.ESRtsFeatureEditing=Mv,w.ESRtsTileset=Iv,w.ESScale=Ov,w.ESSceneObject=pt,w.ESSceneObjectWithId=ky,w.ESSeparateFoliage=Km,w.ESSignalInterference=i0,w.ESSkylineAnalysis=Wv,w.ESSquadCombatArrow=Bm,w.ESStaticMesh=qv,w.ESSubmergingAnalysis=Qm,w.ESSunshineAnalysis=tv,w.ESSurfaceAreaMeasurement=mv,w.ESTerrainLayer=ev,w.ESTerrainLayerEditing=Vc,w.ESTerrainLayerEditingBrushEarseFalloff=jE,w.ESTerrainLayerEditingFlattenMode=kE,w.ESTerrainLayerEditingFlattenPick=GE,w.ESTestObject=Nm,w.ESTextLabel=Ou,w.ESUEWidget=iv,w.ESUnrealActor=nv,w.ESVideoFusion=rv,w.ESViewShed=sv,w.ESViewer=os,w.ESViewerStatusBar=Vv,w.ESViewerStatusBarScale=zv,w.ESVisibilityAnalysis=Sv,w.ESVisualObject=Xt,w.ESVolumeMeasurement=bv,w.ESWidget=ov,w.EngineObject=sl,w.EnumProperty=ft,w.EvalStringProperty=io,w.Event=O,w.EventFromArrayUpdating=ob,w.EventListenerHandler=mg,w.Fetching=db,w.FloatDiv=qg,w.FlvJsLoading=Kf,w.FlvProcessing=JE,w.GetSetProperty=Qg,w.Gif=Ey,w.GifPlayer=wy,w.GifProcessing=Sy,w.HasOwner=nb,w.HlsJsLoading=Zf,w.HlsProcessing=YE,w.IFrameBorderedPosFloatDiv=Yb,w.ImageProcessing=uy,w.IntervalDeprecated=Dg,w.JsonArrayProperty=Ne,w.JsonProperty=Et,w.ListenerPipe=pg,w.LocalFileServer=ay,w.LocalRootDir=oy,w.LongStringProperty=bd,w.MethodProperty=vt,w.NextAnimateFrameEvent=fd,w.NextAnimateFrameWeakEvent=S0,w.NextMicroTaskEvent=Sg,w.NextMicroTaskWeakEvent=$S,w.Number2Property=Ke,w.Number3Property=ci,w.Number4Property=rr,w.NumberProperty=D,w.NumberSliderProperty=Qe,w.ObjPool=ad,w.ObjResetting=eC,w.ObjResettingWithEvent=qe,w.ObservableArray=Ph,w.ObservableSet=Sd,w.PickColorMananger=X0,w.PickedInfo=wC,w.Player=kr,w.PlayerProperty=Cd,w.PointerClick=Vg,w.PointerClickDeprecated=D0,w.PointerHover=k0,w.PointerHoverDeprecated=Bb,w.PosFloatDiv=Xg,w.PositionProperty=_s,w.Processing=hi,w.Property=Fo,w.ReactVarProperty=nn,w.ReactiveVariable=ui,w.RotationProperty=Ah,w.SceneObjectFromId=rp,w.SceneTree=Rc,w.SceneTreeContextMenu=eE,w.SceneTreeItem=gn,w.SceneTreeItemDragDrop=tE,w.SmartListenerHandler=_h,w.SmartListenerPipe=GS,w.SmoothMoveController=iD,w.StringProperty=mt,w.Throttling=jb,w.ThrottlingWithStartValues=Vb,w.TimingDeprecated=N0,w.ToolTipDiv=Jb,w.Transition=Th,w.TransitionDeprecated=pb,w.Tree=Oa,w.TreeItem=Rh,w.TreeItemDragDrop=Ty,w.UiTree=iy,w.UiTreeObject=ey,w.VideoProcessing=dy,w.ViewPlayerProperty=xy,w.ViewerCustomInteraction=IS,w.Watcher=Fh,w.WatcherTools=Gy,w.WithUndefinedProperty=Zg,w.XrPlayer=wd,w.Xyzw2Ns=md,w._getFeatureProperty=TE,w._getLayerConfig=xE,w._getport=ME,w._saveLayerConfig=IE,w.addTreesCallFunc=cE,w.animateFrame=cd,w.apis=Yf,w.ary2Ns=cb,w.asyncFuncToCancelablePromise=Pb,w.bind=lt,w.bindCustomEditing=Dy,w.bindu=HS,w.booleanPointInPolygon=DO,w.buildFeatureTilesetUrl=PE,w.buildInfoUrl=ID,w.buildTilesetUrl=CE,w.calcArrowPoints=Tm,w.canMoveToTreeItem=Dh,w.canMoveToTreeItems=Q0,w.cancelFuncToCancelablePromise=Cb,w.cancelPromise=Ag,w.cancelableFetch=Gg,w.cancelableFetchDeprecated=T0,w.cancelableFetchWithProgress=Ib,w.cartesianDistance=Y1,w.clamp=vd,w.clamp0_360=Bl,w.clampN180_180=Oy,w.complexImageTypes=cy,w.createAnimateFrame=Ih,w.createAnimateFrameWithStartValues=zl,w.createBottomTriangleElement=Z0,w.createCancelablePromise=Vl,w.createCloseDiv=J0,w.createEventsCallFunc=Ze,w.createFetching=Mb,w.createFetchingWithStartValues=Tb,w.createGuid=Ll,w.createInterval=Ab,w.createIntervalWithStartValues=Lb,w.createNextAnimateFrame=Nb,w.createNextAnimateFrameEvent=Ve,w.createNextAnimateFrameEventCallFunc=JS,w.createNextAnimateFrameWeakEvent=ZS,w.createNextAnimateFrameWithStartValues=Ob,w.createNextMicroTask=Db,w.createNextMicroTaskEvent=XS,w.createNextMicroTaskWeakEvent=YS,w.createNextMicroTaskWithStartValues=Rb,w.createNumbers=pd,w.createProcessingFromAsyncFunc=Ln,w.createProcessingFromAsyncFuncWithStartValues=xb,w.createProcessingFromPromiseCreateFunc=_d,w.createProcessingFromPromiseCreateFuncWithStartValues=kg,w.createSleeping=Fb,w.createSleepingWithStartValues=kb,w.createStartFuncFromAsyncFunc=xh,w.createTimeout=A0,w.createTimeoutWithStartValues=L0,w.cutDownTreesCallFunc=gE,w.czmPixelFormats=hy,w.data=CD,w.dataMd=PD,w.debounce=hd,w.defaultGetLocalFilePath=iC,w.defaultInitSceneObjectOnCreatingFunc=bC,w.defaultLight122FromEnvironmentMapManager=Mm,w.defaultLoadFuncDocStr=_E,w.defaultLoadFuncStr=lv,w.defaultLocalFileServer=ly,w.defaultStartUpdateFunc=gd,w.defaultUpdateSceneObjectOnPickingFunc=SC,w.defineReactiveProp=Og,w.destroyObject=v0,w.diffGeoJson=FC,w.downloadLink=eb,w.drawBubble=Ta,w.drawPoint=Ub,w.drawRoundRectPath=j0,w.drawText=V0,w.drawTextBlock=Bg,w.engineObjectCreatedUpdate=Z1,w.equalsN3=Nf,w.every=Cg,w.extendClassProps=Ro,w.fetchArrayBuffer=sb,w.fetchImage=x0,w.forEach=ms,w.forEachWithBreak=bg,w.geoAlong=RO,w.geoArea=Sm,w.geoBuffer=W1,w.geoCenterOfMass=AO,w.geoDestination=bm,w.geoDifference=H1,w.geoDistance=Mf,w.geoHeading=Dc,w.geoIntersect=U1,w.geoLineIntersect=LO,w.geoNearestPointOnLine=kO,w.geoPointToLineDistance=GO,w.geoPolygonFromCircle=X1,w.geoPolygonOverlap=Cm,w.geoPolylineToBezierSpline=Tu,w.geoRhumbDestination=jO,w.geoRhumbDistance=B1,w.geoRhumbHeading=VO,w.geoUnion=q1,w.getCameraTools=_S,w.getColorHexStr=Oh,w.getCompleteReactParams=ud,w.getDefaultValue=IC,w.getDistancesFromPositions=_o,w.getDomEventCurrentTargetPos=ji,w.getDrawRect=Ma,w.getESMCPTools=ES,w.getElementBounds=LC,w.getErrorResult=Pe,w.getEventFromPromise=_b,w.getEventPosInCurrentTarget=kl,w.getExtProp=An,w.getFileArrayBuffer=sy,w.getFileJson=ry,w.getFileText=$g,w.getFloatDivPool=Hg,w.getGeoBoundingSphereFromPositions=$1,w.getIterator=Eh,w.getMidpoint=FO,w.getMinMaxCorner=Tf,w.getMinMaxPosition=rb,w.getPromiseCancel=Gl,w.getPromiseFromEvent=yb,w.getPromiseFromProcessing=jg,w.getReactFuncs=yh,w.getRtsServicePrefix=il,w.getSceneObjectTools=wS,w.getSceneObjectTreeItem=CC,w.getSubEntriesFromDir=ny,w.getSuccessResult=ss,w.getTypeFromImageUri=ZE,w.getValueFromProps=b0,w.getXyzFromPostion=Pm,w.growthSimulationCallFunc=pE,w.hasSameTags=Ny,w.hasSameViewerTags=Lh,w.imageToCanvas=z0,w.inOrderRunning=MC,w.interval=wg,w.isFeatureEqual=Ly,w.isGeometryEqual=Fy,w.isJSON=ip,w.isPromiseCancelable=jl,w.isRelativeRtsInfoUrl=wE,w.isXML=xC,w.lbhToWebMerc=W2,w.lbhToXyz=jr,w.length=Pg,w.lerpAngle=xd,w.lerpRotation=np,w.loadGifFrames=yy,w.loadJs=Mg,w.map=J1,w.max=to,w.min=Ao,w.moveToTreeItem=Ed,w.moveToTreeItems=ty,w.nextAnimateFrame=Fl,w.nextMicroTask=wh,w.objsIterator=xa,w.oneTimeWarning=Rl,w.optionsStr=yD,w.pairToPromise=Lg,w.parsePlatformFromUrl=SE,w.parseRtsHost=EE,w.parseRtsOrigin=$f,w.parseTileServiceName=bE,w.pluckProperty=xg,w.react=z,w.reactArray=ot,w.reactArrayCollection=zS,w.reactArrayCollectionWithUndefined=vg,w.reactArrayWithUndefined=oe,w.reactDeepArray=ld,w.reactDeepArrayWithUndefined=Do,w.reactJson=bt,w.reactJsonCollection=BS,w.reactJsonCollectionWithUndefined=US,w.reactJsonWithUndefined=fe,w.reactPlainObject=jS,w.reactPlainObjectWithUndefined=VS,w.reactPosition2Ds=xm,w.reactPosition2DsSet=qS,w.reactPositions=Pa,w.reactPositionsSet=yg,w.reduce=Ch,w.registerEventCtor=y0,w.registerEventUpdate=WO,w.removeAllTreesCallFunc=dE,w.requestAnimationFrameTimeStampTest=ib,w.resolveRtsInfoUrl=Xf,w.rpToap=PC,w.saveOnBrowser=tb,w.setCanvasUniformColor=B0,w.setExtProp=ps,w.setPromiseCancel=Lo,w.setSceneObjectTreeItem=Pd,w.setValueFromProps=QS,w.sleep=Mh,w.sleepDeprecated=fb,w.step=Ia,w.stepProcessing=Gb,w.throttle=Ig,w.timeout=Eg,w.toGeoJson=Ay,w.track=F,w.uint32ToUint8s=W0,w.uint8ToHexStr=Nh,w.uint8sToUint32=H0,w.updateTreeParamsCallFunc=fE,w.webMercToLbh=H2,w.xyz2N2=ab,w.xyz2N3=lb,w.xyzToLbh=Ip,w.xyzw2N4=ub,Object.defineProperty(w,Symbol.toStringTag,{value:"Module"}),w})({});
|
|
512
|
+
`,cA='<svg t="1747028305766" class="icon" viewBox="0 0 1032 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="3881" width="40" height="40"><path d="M0.1536 547.700736c-0.205824-0.187392-0.205824-0.49152 0.008192-0.68608l80.672768-73.590784a0.63488 0.63488 0 0 1 0.7936-0.029696l263.043072 203.0336c0.667648 0.515072 1.738752 0.498688 2.393088-0.038912l609.191936-500.133888a0.605184 0.605184 0 0 1 0.768 0.022528l74.84928 67.229696a0.454656 0.454656 0 0 1-0.002048 0.685056l-685.234176 618.19904a1.14688 1.14688 0 0 1-1.518592-0.012288L0.1536 547.700736z" fill="#ffffff" p-id="3882"></path></svg>',dA='<svg t="1747028398107" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="1146" width="40" height="40"><path d="M415.744006 1.033277A0.992256 0.992256 0 0 1 416.747526 0.000061h189.5045c0.569344 0 1.017856 0.45056 1.001472 1.033216l-21.227518 754.803667a1.062912 1.062912 0 0 1-1.05984 1.032192h-146.933752c-0.569344 0-1.04448-0.45056-1.059839-1.032192L415.744006 1.033277zM511.510528 1024c-52.595709 0-95.231994-39.866366-95.231994-89.043963 0-49.176573 42.636285-89.042939 95.231994-89.042938 52.594685 0 95.231994 39.866366 95.231994 89.042938 0 49.177597-42.637309 89.043963-95.231994 89.043963z" fill="#ffffff" p-id="1147"></path></svg>',Ol=class Ol extends B{constructor(t){super();const e=()=>{const n=this.dv(new Gf);this.d(F([n,"show"],[t,"useDefaultStatusDiv"]));{const r=()=>{n.show=(t.useDefaultStatusDiv??!0)&&t.status!=="Created"};r(),this.d(t.useDefaultStatusDivChanged.don(r)),this.d(t.statusChanged.don(r)),n.cssText="width:100%;height:100%;position:absolute;left:0px;top:0px;"}t.add(n),this.d(()=>t.delete(n)),n.instanceClass=class extends B{constructor(o,a,l){super();f(this,"_div",document.createElement("div"));if(this._subContainer=o,!l)return;this._subContainer.appendChild(this._div),this.d(()=>this._subContainer.removeChild(this._div));{const p=()=>{a.show?this._div.style.opacity="1":this._div.style.opacity="0"};p(),this.d(a.showChanged.don(p))}let u,h,c,d,g;this._div.style.pointerEvents="none",this._div.style.position="absolute",this._div.style.width="100%",this._div.style.height="100%",this._div.style.backgroundColor="rgba(0, 0, 0, 0.4)",this._div.style.zIndex="100",this._div.style.transition="opacity 2s",u=document.createElement("div"),this._div.appendChild(u),u.style.width="auto",u.style.position="absolute",u.style.left="50%",u.style.top="50%",u.style.transform="translate(-50%,-50%)",u.style.background="rgba(120, 120, 0, 0.7)",u.style.color="white",u.style.fontSize="10px",u.style.background="none",u.style.display="flex",u.style.justifyContent="center",u.style.alignItems="center",h=document.createElement("div"),u.appendChild(h),h.style.pointerEvents="none",h.style.display="block",h.style.width="40px",h.innerHTML=Ol.defaultsSvg.loadingSvg,h.style.filter="drop-shadow(0px 0px 1px black)",c=document.createElement("div"),u.appendChild(c),c.style.pointerEvents="none",c.style.marginLeft="10px",c.style.display="flex",c.style.flexFlow="column",c.style.maxWidth="300px",d=document.createElement("div"),c.appendChild(d),d.style.fontSize="14px",d.style.fontWeight="800",d.style.marginBottom="5px",d.style.textShadow="0 0 2px black",g=document.createElement("div"),c.appendChild(g),g.style.fontWeight="400",g.style.textShadow="0 0 2px black";{const p=()=>{let b="Raw";l.status==="Raw"?b="初始状态":l.status==="Creating"?b="正在创建":l.status==="Created"?b="创建完成":l.status==="Error"?b="创建失败":l.status==="Reconnecting"&&(b="重新连接"),d.innerText=`${b}(${l.status})`,g.innerText=`${l.statusLog}`,(l.status==="Creating"||l.status==="Reconnecting")&&(h.innerHTML=Ol.defaultsSvg.loadingSvg),l.status==="Created"&&(h.innerHTML=Ol.defaultsSvg.successSvg),l.status==="Error"&&(h.innerHTML=Ol.defaultsSvg.warnSvg)};p();const E=this.dv(Ve(l.statusLogChanged,l.statusChanged));this.d(E.don(p))}}update(){const o=255*Math.random()|0,a=255*Math.random()|0,l=255*Math.random()|0;this._div.style.background=`rgba(${o}, ${a}, ${l}, 0.8)`}}};this.d(t.containerChanged.don(()=>{e()}))}};f(Ol,"defaultsSvg",{loadingSvg:hA,successSvg:cA,warnSvg:dA});let f0=Ol;class fA extends B{constructor(t,e,n){super(),this._subContainer=t,this._overlayContainer=e,this._viewer=n;const r=this._subContainer,s=this._overlayContainer,o=this._viewer,a=()=>{const h=o.zIndex??"";r.style.zIndex=h,s.style.zIndex=h};a(),this.d(o.zIndexChanged.don(a));const l=()=>{r.style.display=o.show??!0?"block":"none"};l(),this.d(o.showChanged.don(l));const u=()=>{r.style.opacity=`${o.opacity??1}`};u(),this.d(o.opacityChanged.don(u))}}function ag(i){let t=An(i,"_relativeContainer");return t||(t=document.createElement("div"),t.style.position="relative",t.style.width="100%",t.style.height="100%",t.style.padding="0",t.style.margin="0",i.appendChild(t),ps(i,"_relativeContainer",t)),t}class gA extends B{constructor(e,n){super();f(this,"_subContainer",document.createElement("div"));f(this,"_overlayContainer",document.createElement("div"));f(this,"_containerStyleController");this._container=e,this._viewer=n,this._containerStyleController=this.dv(new fA(this._subContainer,this._overlayContainer,this._viewer));const{subContainer:r,overlayContainer:s}=this;r.tabIndex=-1,r.style.outline="none",r.style.width="100%",r.style.height="100%",r.onpointerdown=()=>r.focus(),s.style.position="relative",s.setAttribute("earthsdk3","earthsdk3-overlayContainer"),r.setAttribute("earthsdk3","earthsdk3-subContainer"),ag(this._container).appendChild(r),this.d(()=>ag(this._container).removeChild(r)),ag(this._container).appendChild(s),this.d(()=>ag(this._container).removeChild(s))}get subContainer(){return this._subContainer}get overlayContainer(){return this._overlayContainer}get containerStyleController(){return this._containerStyleController}get container(){return this._container}}class pA extends B{constructor(){super(...arguments);f(this,"registerObjsMap",new Map)}register(e,n){return this.registerObjsMap.has(e)&&console.warn(`register warn:${e}已经被注册,再次注册会覆盖。`),this.registerObjsMap.set(e,n),e}getViewerConstructor(e){const n=this.registerObjsMap.get(e);if(!n){console.warn(`未找到${e}类!`);return}return n}createViewer(e){const n=e.type;console.log(e);const r=this.getViewerConstructor(n);if(!r)throw new Error(`没有找到类型为${n}的Viewer构造器!`);return new r(e)}}class IS extends B{constructor(t,e,n=!1,r=!1){if(super(),this._viewer=t,!e)throw new Error("ViewerCustomInteraction: container is null");const s=this.dv(xe.create(e,"pointerdown")),o=this.dv(xe.create(e,"pointermove")),a=this.dv(xe.create(e,"pointerup")),l=this.dv(xe.create(e,"pointerout")),u=this.dv(xe.create(e,"pointerover")),h=this.dv(new Vg),c=this.dv(new k0),d=()=>{const m=this._viewer.hoverTime*1e3;c.delayTime=m};this.d(this._viewer.hoverTimeChanged.don(()=>{d()})),this.d(s.don(m=>h.pointerDown(m))),this.d(o.don(m=>h.pointerMove(m))),this.d(a.don(m=>h.pointerUp(m))),this.d(l.don(m=>h.pointerOut(m))),this.d(s.don(m=>c.pointerDown(m))),this.d(o.don(m=>c.pointerMove(m))),this.d(a.don(m=>c.pointerUp(m))),this.d(l.don(m=>c.pointerOut(m)));const{x:g,y:p}=e.getBoundingClientRect(),E=r?g:0,b=r?p:0;this.d(c.hoverEvent.don(m=>{const[y,S]=kl(m,n);this._viewer.hoverEvent.emit({screenPosition:[y+E,S+b],pointerEvent:m})})),this.d(h.clickEvent.don(m=>{const[y,S]=kl(m,n);this._viewer.clickEvent.emit({screenPosition:[y+E,S+b],pointerEvent:m})})),this.d(h.dbclickEvent.don(m=>{const[y,S]=kl(m,n);m.button===0&&this._viewer.dblclickEvent.emit({screenPosition:[y+E,S+b],pointerEvent:m})})),this.d(s.don(m=>{const[y,S]=kl(m,n);m.button===0&&this._viewer.pointerDownEvent.emit({screenPosition:[y+E,S+b],pointerEvent:m})})),this.d(a.don(m=>{const[y,S]=kl(m,n);m.button===0&&this._viewer.pointerUpEvent.emit({screenPosition:[y+E,S+b],pointerEvent:m})})),this.d(o.don(m=>{const[y,S]=ji(m,n);this._viewer.pointerMoveEvent.emit({screenPosition:[y+E,S+b],pointerEvent:m})})),this.d(u.don(m=>{const[y,S]=ji(m,n);this._viewer.pointerOverEvent.emit({screenPosition:[y+E,S+b],pointerEvent:m})})),this.d(l.don(m=>{const[y,S]=ji(m,n);this._viewer.pointerOutEvent.emit({screenPosition:[y+E,S+b],pointerEvent:m})}));const P=this.dv(xe.create(e,"keydown"));this.d(P.don(m=>this._viewer.keyDownEvent.emit(m)));const v=this.dv(xe.create(e,"keyup"));this.d(v.don(m=>this._viewer.keyUpEvent.emit(m)));const _=this.dv(xe.create(e,"wheel"));this.d(_.don(m=>this._viewer.wheelEvent.emit(m)))}}const Oo=class Oo extends B{constructor(e){super();f(this,"_forceRecreateEvent",this.dv(new O));f(this,"_container",this.dv(z(void 0)));f(this,"_containerSize",this.dv(z(void 0)));f(this,"_editingEvent",this.disposeVar(new O));f(this,"_esViewerExtensions",this.dv(new sA(this)));f(this,"_status",this.dv(z("Raw")));f(this,"_statusLog",this.dv(z("")));f(this,"_statusContainer",this.dv(new f0(this)));f(this,"_useCustomInteraction",this.dv(z(!0)));f(this,"_resetInteractionEvent",this.dv(Ve(this.containerChanged,this._useCustomInteraction.changed,this._forceRecreateEvent)));f(this,"_interactionResetting",this.dv(new qe(this._resetInteractionEvent,()=>{if(!(!this.container||!this._useCustomInteraction.value))return new IS(this,this.container)})));f(this,"_viewerChanged",this.dv(new O));f(this,"_cameraChanged",this.dv(new O));f(this,"_containerResetEvent",this.dv(Ve(this.containerChanged,this._forceRecreateEvent)));f(this,"_containerResetting",this.dv(new qe(this._containerResetEvent,()=>{if(this.container)return new gA(this.container,this)})));f(this,"_sceneObjectsMap",new Map);f(this,"_id");f(this,"_typeName");f(this,"_updateFuncReact",this.dv(z(void 0)));f(this,"_toDestroyFuncReact",this.dv(z(void 0)));f(this,"_statusInfo",Oo.defaults.statusInfo);f(this,"_navigationMode",this.dv(z("Map")));f(this,"_navigationEvent",this.disposeVar(new O));f(this,"_syncViewer",this.dv(z(void 0)));f(this,"_syncEventDon",this.dv(new qe(this.syncViewerChanged,()=>{const e=this.syncViewer;if(e)return new uA(this,e)})));f(this,"_timeSyncdon",this.dv(new qe(this.timeSyncChanged,()=>{if(this.timeSync)return new lA(this)})));f(this,"_hoverEvent",this.dv(new O));f(this,"_pointerOverEvent",this.dv(new O));f(this,"_pointerMoveEvent",this.dv(new O));f(this,"_pointerDownEvent",this.dv(new O));f(this,"_pointerUpEvent",this.dv(new O));f(this,"_pointerOutEvent",this.dv(new O));f(this,"_clickEvent",this.dv(new O));f(this,"_dblclickEvent",this.dv(new O));f(this,"_keyDownEvent",this.dv(new O));f(this,"_keyUpEvent",this.dv(new O));f(this,"_wheelEvent",this.dv(new O));f(this,"_actived",this.dv(z(!1)));this._id=e.id??Ll();const n=bS(e.container);if(n)this._container.value=d0(n),this._typeName=e.type,this._initName();else throw new Error("container is not defined");{const r=()=>{n&&(this.show??!0?n.style.display="block":n.style.display="none")};r(),this.d(this.showChanged.don(r))}{const r=this._sceneObjectsMap,s=()=>{for(let[a,l]of r.entries())if(!l&&a){const u=sl.context.createEngineObject(a,this);u&&r.set(a,u)}},o=()=>{for(let[a,l]of r.entries())l&&!l.isDestroyed()&&l.destroy(),r.set(a,void 0)};this.d(o),this.d(this.viewerChanged.don(a=>{o(),a&&s()}))}{const r=()=>{if(this.execOnceFuncStr)try{Function(`"use strict";return (${this.execOnceFuncStr})`)()(this)}catch(s){console.warn(`execOnceFuncStr不能转成函数!或者函数执行时错误!id: ${this.id} ${this.typeName} error: ${s}`)}};r(),this.d(this.execOnceFuncStrChanged.don(r))}{const r=()=>{if(this.updateFuncStr)try{this.updateFunc=Function(`"use strict";return (${this.updateFuncStr})`)()}catch(o){console.warn(`updateFuncStr不能转成函数!或者函数执行时错误!id: ${this.id} ${this.typeName} error: ${o}`)}};r(),this.d(this.updateFuncStrChanged.don(r));let s;this.d(()=>s&&s.destroy()),this.d(this.updateFuncChanged.don(()=>{s&&s.cancel(),this.updateFunc&&(s=s||Ih(),s.restart(void 0,o=>{this.updateFunc&&this.updateFunc(this,o)}))}))}{const r=()=>{try{this.toDestroyFunc=this.toDestroyFuncStr&&Function(`"use strict";return (${this.toDestroyFuncStr})`)()||void 0}catch(s){console.warn(`toDestroyFuncStr不能转成函数!或者函数执行时错误!id: ${this.id} ${this.typeName} error: ${s}`),this.toDestroyFunc=void 0}};r(),this.d(this.toDestroyFuncStrChanged.don(r)),this.d(this.toDestroyEvent.don(()=>{this.toDestroyFunc&&this.toDestroyFunc(this)}))}this.ad(new aA(this))}forceRecreate(){this._forceRecreateEvent.emit()}get container(){return this._container.value}set container(e){this._container.value=e}set containerOrId(e){if(typeof e=="string"){const n=document.getElementById(e);n&&n instanceof HTMLDivElement?this._container.value=d0(n):console.warn("containerOrId warn: !(container instanceof HTMLDivElement)")}else e instanceof HTMLDivElement?this._container.value=d0(e):console.warn("containerOrId warn: setting container failed!")}get containerChanged(){return this._container.changed}get containerSize(){return this._containerSize.value}set containerSize(e){this._containerSize.value=e}get containerSizeChanged(){return this._containerSize.changed}get editingEvent(){return this._editingEvent}get esViewerExtensions(){return this._esViewerExtensions}get status(){return this._status.value}get statusChanged(){return this._status.changed}setStatus(e){this._status.value=e}get statusLog(){return this._statusLog.value}get statusLogChanged(){return this._statusLog.changed}setStatusLog(e){this._statusLog.value=e}get useCustomInteraction(){return this._useCustomInteraction.value}set useCustomInteraction(e){this._useCustomInteraction.value=e}get viewerChanged(){return this._viewerChanged}get cameraChanged(){return this._cameraChanged}get containerResetEvent(){return this._containerResetEvent}get subContainer(){var e;return(e=this._containerResetting.obj)==null?void 0:e.subContainer}get subContainerChanged(){return this._containerResetting.objChanged}get overlayContainer(){var e;return(e=this._containerResetting.obj)==null?void 0:e.overlayContainer}get overlayContainerChanged(){return this._containerResetting.objChanged}get sceneObjectsMap(){return this._sceneObjectsMap}get sceneObjects(){return this._sceneObjectsMap.keys()}getEngineObject(e){return this.sceneObjectsMap.get(e)}add(...e){for(let n of e)if(!this.has(n)){pt.context.addSceneObject(n);const r=sl.context.createEngineObject(n,this);r&&this._sceneObjectsMap.set(n,r),n.viewerAttached.emit(this)}}delete(...e){for(let n of e)if(this.has(n)){const r=this._sceneObjectsMap.get(n);r&&r.destroy(),pt.context.deleteSceneObject(n),this._sceneObjectsMap.delete(n),n.viewerDetached.emit(this)}}disposableAdd(...e){return this.add(...e),()=>this.delete(...e)}disAdd(...e){return this.disposableAdd(...e)}has(e){return this._sceneObjectsMap.has(e)}clearAllSceneObjects(){for(let e of this.sceneObjects)this.delete(e)}get id(){return this._id}set id(e){console.warn("ESViewer id is readonly")}get typeName(){return this._typeName}_initName(){this.name=`${this.typeName}_${(""+this.id).slice(-4)}`}get defaultProps(){return Oo.createDefaultProps()}get completeJson(){return this._getJson(!1)}_getJson(e=!0){const n={id:this.id,type:this.typeName};for(let r of Object.keys(this.defaultProps))if(e){let s,o=this.defaultProps[r];o instanceof ui?s=o.equals(this[r]):s=o===this[r],s||(n[r]=this[r])}else n[r]=this[r];return n}_setJson(e,n,r){if(!(e instanceof Object)||e.type&&e.type!==this.typeName){console.error(`value.type && value.type${e.type} !== this.typeName${this.typeName}`);return}e.id&&e.id!==this.id&&console.warn(`value.id === undefined || value.id${e.id} !== this.id(${this.id})`);const s=n||[];s.push("id","type");const o=Object.keys(this.defaultProps).filter(a=>!s.includes(a));for(let a of o)if(a in e)this[a]=e[a]===null?void 0:e[a];else if(!(r??!1)){let l=this.defaultProps[a];l instanceof ui&&(l=l.value),this[a]=l}}get json(){return this._getJson()}set json(e){this._setJson(e,["devTags"])}get updateFunc(){return this._updateFuncReact.value}set updateFunc(e){this._updateFuncReact.value=e}get updateFuncChanged(){return this._updateFuncReact.changed}get toDestroyFunc(){return this._toDestroyFuncReact.value}set toDestroyFunc(e){this._toDestroyFuncReact.value=e}get toDestroyFuncChanged(){return this._toDestroyFuncReact.changed}get navigationMode(){return this._navigationMode.value}get navigationModeChanged(){return this._navigationMode.changed}getNavigationMode(){return this._navigationMode.value}get navigationEvent(){return this._navigationEvent}getEngineType(){return this._typeName}get syncViewer(){return this._syncViewer.value}set syncViewer(e){this._syncViewer.value=e}get syncViewerChanged(){return this._syncViewer.changed}syncOtherViewer(e){e&&e.syncViewer&&(e.syncViewer=void 0),e===this?this._syncViewer.value=void 0:this._syncViewer.value=e}setCurrentTime(e){try{this.currentTime=typeof e=="string"?Date.parse(e):e}catch(n){console.warn(`时间格式不正确! value: ${e} error: ${n}`)}}async getVersion(){return window.g_XE3CopyRights??{}}get hoverEvent(){return this._hoverEvent}get pointerOverEvent(){return this._pointerOverEvent}get pointerMoveEvent(){return this._pointerMoveEvent}get pointerDownEvent(){return this._pointerDownEvent}get pointerUpEvent(){return this._pointerUpEvent}get pointerOutEvent(){return this._pointerOutEvent}get clickEvent(){return this._clickEvent}get dblclickEvent(){return this._dblclickEvent}get keyDownEvent(){return this._keyDownEvent}get keyUpEvent(){return this._keyUpEvent}get wheelEvent(){return this._wheelEvent}get actived(){return this._actived.value}set actived(e){this._actived.value=e}get activedChanged(){return this._actived.changed}getESProperties(){return{defaultMenu:"general",basic:[],general:[],dataSource:[],location:[],coordinate:[],style:[],more:[]}}async getCurrentRectangle(){var e;try{const n=(e=this.container)==null?void 0:e.getBoundingClientRect();if(!n)return;const{width:r,height:s}=n,o=await this.quickPickPosition([0,0]),a=await this.quickPickPosition([r,s]);return!o||!a?void 0:[o[0],a[1],a[0],o[1]]}catch(n){console.error(n);return}}};f(Oo,"context",new pA),f(Oo,"register",Oo.context.register.bind(Oo.context)),f(Oo,"defaults",{show:!0,debug:!1,statusInfo:{fps:0,position:[0,0,0],rotation:[0,0,0],length:0},terrainShader:{slope:{show:!1},aspect:{show:!1},elevationRamp:{show:!1,minHeight:-414,maxHeight:8777,color:[]},elevationContour:{show:!1,color:[1,0,0,1],spacing:150,width:2}},globeShow:!0,splitPosition:0,cameraMovableRegion:[0,0,0,0,0,0],depthTestAgainstTerrain:!0,terrainOpacity:1});let os=Oo;(i=>{i.createBaseProps=()=>({name:"未命名场景对象",extras:bt(void 0),devTags:oe(void 0),debug:void 0,show:void 0,opacity:void 0,zIndex:void 0,useDefaultStatusDiv:!0,execOnceFuncStr:void 0,updateFuncStr:void 0,toDestroyFuncStr:void 0}),i.createCommonProps=()=>({globeShow:!0,ionAccessToken:"",lonLatFormat:"DECIMAL_DEGREE",fov:60,textAvoidance:!1,flyToBoundingSize:1024,hoverTime:2,currentTime:Date.now(),simulationTime:Date.now(),timeSync:!1,rain:0,snow:0,cloud:0,fog:0,depthOfField:0,atmosphere:!0,editingPointSize:void 0,editingPointColor:oe(void 0),editingAuxiliaryPointColor:oe(void 0),editingLineWidth:void 0,editingLineColor:oe(void 0),editingAxisSize:void 0,editingAuxiliaryPointSize:void 0,editingHeightOffset:0,editingLineShow:!0,editingPointTooltipShow:!0,editingEventListening:!0,terrainShader:i.defaults.terrainShader,splitPosition:z(void 0),rollerShutter:!1,cameraMovableRegion:oe(void 0),depthTestAgainstTerrain:!0,terrainOpacity:1,sceneGlobeBaseColor:ot([1,1,1,1]),sceneBackgroundColor:ot([0,0,0,0])}),i.createDefaultProps=()=>({...(0,i.createBaseProps)(),...(0,i.createCommonProps)()})})(os||(os={})),Ro(os.prototype,os.createDefaultProps);function MS(i,t){const e=i._lastCameraInfo;if(e){const n=t.viewerChanged.don(r=>{if(!r||!e)return;const{position:s,rotation:o}=e;t.flyIn(s,o,0),i._lastCameraInfo=void 0,n()})}}const mA=i=>{const t=os.createCommonProps(),e={};try{Object.keys(t).forEach(n=>{e[n]=i[n]})}catch(n){console.warn(n)}return e},TS=(i,t)=>{const e=os.createCommonProps();try{Object.keys(e).forEach(n=>{i[n]=t[n]})}catch(n){console.warn(n)}};class vA extends B{constructor(e){super();f(this,"_viewersChanged",this.disposeVar(new O));f(this,"_viewers",new Set);f(this,"_viewersToChange",this.dv(new O));this._sceneObjectsManager=e,(async()=>{for(let n of this.viewers){const r=this._sceneObjectsManager.sceneObjects;for(const s of r)await this.addSceneObject(s,n)}this.d(()=>{const n=this._sceneObjectsManager.sceneObjects;for(const r of this.viewers)r.delete(...n),this.destroyViewer(r);this._viewers.clear()}),this.d(this._sceneObjectsManager.sceneObjectsToChange.don(async(n,r)=>{for(let s of this.viewers){n.forEach(o=>{this.deleteSceneObject(o,s)});for(let o of r)await this.addSceneObject(o,s)}if(r.length>0)for(let s of r)s.d(s.devTagsChanged.don(async()=>{for(let o of this.viewers){if(o.has(s)&&!Lh(o.devTags,s.devTags)){o.delete(s);continue}await this.addSceneObject(s,o)}})),s.ad(s.reloadEvent.don(async()=>{for(let o of this.viewers)o.has(s)&&(o.delete(s),await this.addSceneObject(s,o))}))})),this.d(this.viewersChanged.don(async(n,r)=>{const s=this._sceneObjectsManager.sceneObjects;n.forEach(o=>{for(let a of s)this.deleteSceneObject(a,o)});for(let o of r)for(let a of s)await this.addSceneObject(a,o);r.length>0&&r.forEach(o=>{o.d(o.devTagsChanged.don(async()=>{o.clearAllSceneObjects();const a=this._sceneObjectsManager.sceneObjects;for(let l of a)console.log("viewersChanged",o.devTags,l.devTags,Lh(o.devTags,l.devTags)),await this.addSceneObject(l,o)}))})}))})()}get viewersChanged(){return this._viewersChanged}get viewers(){return[...this._viewers]}getViewers(){return[...this._viewers]}get viewersToChange(){return this._viewersToChange}createViewer(e){const n=os.context.createViewer(e);return this._viewers.add(n),this._viewersChanged.emit([],[n]),n}destroyViewer(e){return e.isDestroyed()?!0:this._viewers.has(e)?(this._viewers.delete(e),this._viewersChanged.emit([e],[]),e.destroy(),e.isDestroyed()):!1}async addSceneObject(e,n){Lh(n.devTags,e.devTags)&&(n.has(e)?console.warn(`${n.typeName}中已存${e.typeName},检查逻辑是否有问题!`):n.add(e))}deleteSceneObject(e,n){Lh(n.devTags,e.devTags)&&(n.has(e)?n.delete(e):console.warn(`${n.typeName}中不存在${e.typeName},检查逻辑是否有问题!`))}}class lg extends B{constructor(...e){super();f(this,"_drgm",this.dv(new My));f(this,"_sobjm",this.dv(new nA));f(this,"_vrm",this.dv(new vA(this._sobjm)));f(this,"_sceneObjectEditingManager",this.disposeVar(new iA));f(this,"_activeViewer",this.dv(z(void 0)));f(this,"_syncOtherViewersToActived",this.dv(z(!1)));f(this,"_cmrvm",this.createSceneObjectFromClass(Lf));f(this,"_cmrvmdon",this.d(()=>this._cmrvm&&this.destroySceneObject(this._cmrvm)));f(this,"_asset",{type:"ESObjectsManager",version:"0.1.0",createdTime:"",modifiedTime:"",name:"未命名项目"});f(this,"_sceneTree",this.dv(new Rc("default",this.dragstartDataMananger,24,this)));f(this,"_sceneTreeMap",new Map);f(this,"_viewerCreatedEvent",this.dv(new O));f(this,"_lastCameraInfo");f(this,"_lastActiveViewerJson");f(this,"_syncEventDonFunc",this.d(Ze([this.activeViewerChanged,this.syncOtherViewersToActivedChanged],()=>{const e=this.syncOtherViewersToActived;this.viewers.forEach(n=>{e?n.syncOtherViewer(this.activeViewer):n.syncOtherViewer(void 0)})})));f(this,"_player",this.createSceneObjectFromClass(Ru));f(this,"_playerdon",this.d(()=>this._player&&this.destroySceneObject(this._player)));f(this,"_esPlyarAndPathTime",this.dv(new ZR(this)));f(this,"_pathAnimationManager",this.dv(new QR(this)))}getBrowserEnv(){return globalThis.ue&&globalThis.ue.es&&globalThis.ue.esinput?"ESWebView":"Browser"}static get envs(){return pt.context.environmentVariables}getSceneObjectById(e){return pt.getSceneObjectById(e)}getSceneObject(e){return pt.getSceneObject(e)}get $refs(){return pt.$refs}get dragstartDataMananger(){return this._drgm}get sceneObjectsManager(){return this._sobjm}get viewers(){return this._vrm.viewers}getViewers(){return this._vrm.getViewers()}get sceneObjectEditingManager(){return this._sceneObjectEditingManager}get activeViewer(){return this._activeViewer.value}set activeViewer(e){this._activeViewer.value=e,this.viewers.forEach(n=>n.actived=n===e)}get activeViewerChanged(){return this._activeViewer.changed}get syncOtherViewersToActived(){return this._syncOtherViewersToActived.value}set syncOtherViewersToActived(e){this._syncOtherViewersToActived.value=e}get syncOtherViewersToActivedChanged(){return this._syncOtherViewersToActived.changed}get cameraViewsManager(){return this._cmrvm}get completeJson(){var c;const e=this._asset.createdTime||new Date().toISOString(),n=new Date().toISOString(),r=this._asset.name||"未命名项目",o={type:"ESObjectsManager",version:this._asset.version||"0.1.0",createdTime:e,modifiedTime:n,name:r},a=this.sceneTree.completeJson,l=this._cmrvm.views,u=[...this.viewers].map(d=>d.completeJson),h=(c=this.activeViewer)==null?void 0:c.getCurrentCameraInfo();return{asset:o,viewers:u,sceneTree:a,viewCollection:l,lastView:h}}get json(){var c;const e=this._asset.createdTime||new Date().toISOString(),n=new Date().toISOString(),r=this._asset.name||"未命名项目",o={type:"ESObjectsManager",version:this._asset.version||"0.1.0",createdTime:e,modifiedTime:n,name:r},a=this.sceneTree.json,l=this._cmrvm.views,u=[...this.viewers].map(d=>d.json),h=(c=this.activeViewer)==null?void 0:c.getCurrentCameraInfo();return{asset:o,viewers:u,sceneTree:a,viewCollection:l,lastView:h}}set json(e){try{if(!e.asset)return;if(!e.asset.type||e.asset.type!=="ESObjectsManager"){console.warn("json装配失败! asset.type 不存在或者不是'ESObjectsManager'");return}if(this._asset.createdTime=e.asset&&e.asset.createdTime||new Date().toISOString(),this._asset.modifiedTime=e.asset&&e.asset.modifiedTime||"",this._asset.name=e.asset&&e.asset.name||"未命名项目",this._asset.version=e.asset&&e.asset.version||"0.1.0",e.sceneTree&&(this.sceneTree.json=e.sceneTree),e.viewCollection&&(this._cmrvm.views=e.viewCollection),!e.viewers||!Array.isArray(e.viewers)){console.warn("viewers is not an array or does not exist !");return}if(this.viewers.length===0||e.viewers.length===0){console.warn("viewers is empty !");return}this.viewers.forEach(n=>{const r=e.viewers.find(s=>s.id===n.id);r&&(n.json=r)})}catch(n){console.error(`ESObjectsManager解析json数据时发生错误! error: ${n}`)}}get sceneTree(){return this._sceneTree}get jsonLoadingEvent(){return this._sceneTree.jsonLoadingEvent}getSceneTrees(){return[...this._sceneTreeMap.values()]}getSceneTree(e="default"){if(e==="default")return this._sceneTree;if(!this._sceneTreeMap.has(e)){console.warn(`id为${e}的SceneTree不存在!`);return}return this._sceneTreeMap.get(e)}createSceneTree(e,n=24){if(this._sceneTreeMap.has(e)||e==="default")console.warn(`id为${e}的SceneTree已存在!`);else{const r=this.dv(new Rc(e,this.dragstartDataMananger,n,this));this._sceneTreeMap.set(e,r)}return this.getSceneTree(e)}get viewerCreatedEvent(){return this._viewerCreatedEvent}createViewer(e){const n=this._vrm.createViewer(e);this.activeViewer||(this.activeViewer=n);const r=this.d(n.viewerChanged.don(s=>{s&&(this._viewerCreatedEvent.emit(n),r())}));return n}destroyViewer(e){return this._activeViewer.value===e&&(this._activeViewer.value=void 0),this._vrm.destroyViewer(e)}switchViewer(e,n=!0,r=!0,s=!0){var u,h;this.activeViewer&&this.activeViewer.getNavigationMode()!=="Map"&&this.activeViewer.changeToMap(),!this._lastCameraInfo&&n&&(this._lastCameraInfo=(u=this.activeViewer)==null?void 0:u.getCurrentCameraInfo(),((h=this.activeViewer)==null?void 0:h.typeName)=="ESOlViewer"&&this._lastCameraInfo&&(this._lastCameraInfo.rotation[1]=-90)),!this._lastActiveViewerJson&&r&&(this._lastActiveViewerJson=this.activeViewer?mA(this.activeViewer):void 0),s&&this.activeViewer&&this.destroyViewer(this.activeViewer);const o=e.id,a=o?[...this.getViewers()].find(c=>c.id===o):[...this.getViewers()].find(c=>c.typeName===e.type&&!c.container);if(a)if(o&&a.typeName!==e.type)console.warn(`id为${o}的viewer的typeName和option.type${e.type}不相同!,虽然id一致但是typeName不同,所以会销毁并创建新的viewer`),this.destroyViewer(a);else return console.log("ESViewer exists, will be used"),n&&MS(this,a),r&&this._lastActiveViewerJson&&(TS(a,this._lastActiveViewerJson),this._lastActiveViewerJson=void 0),a.container===bS(e.container)?(a.containerOrId=e.container,a.forceRecreate()):a.containerOrId=e.container,this.activeViewer=a,a;console.log("No ESViewer exists, will be created");const l=this.createViewer(e);return console.log(e),console.log(this),n&&MS(this,l),r&&this._lastActiveViewerJson&&(TS(l,this._lastActiveViewerJson),this._lastActiveViewerJson=void 0),this.activeViewer=l,l}switchToCesiumViewer(...e){if(typeof e[0]=="object"&&!(e[0]instanceof HTMLDivElement)){const{container:n,viewSync:r,attributeSync:s,destroy:o,id:a}=e[0];return this.switchViewer({type:"ESCesiumViewer",container:n,id:a},r??!0,s??!0,o??!0)}else if(typeof e[0]=="string"||e[0]instanceof HTMLDivElement){const n={container:e[0],viewSync:e[1]??!0,attributeSync:e[2]??!0,destroy:e[3]??!0,id:e[4]},{container:r,viewSync:s,attributeSync:o,destroy:a,id:l}=n;return this.switchViewer({type:"ESCesiumViewer",container:r,id:l},s,o,a)}}switchToUEViewer(...e){let n,r={viewSync:!0,attributeSync:!0,destroy:!0};if(typeof e[0]=="object"&&!(e[0]instanceof HTMLDivElement)&&e[0].hasOwnProperty("uri")){const{container:l,uri:u,app:h,token:c,viewSync:d,attributeSync:g,destroy:p,id:E,silentTime:b}=e[0];n={type:"ESUeViewer",container:l,id:E,options:{uri:u,app:h,token:c,silentTime:b}},r={viewSync:d??!0,attributeSync:g??!0,destroy:p??!0}}else if(typeof e[0]=="object"&&!(e[0]instanceof HTMLDivElement)&&e[0].hasOwnProperty("ws")){const{container:l,ws:u,esmsg:h,viewSync:c,attributeSync:d,id:g,destroy:p,silentTime:E}=e[0];n={type:"ESUeViewer",container:l,id:g,options:{ws:u,esmsg:h,silentTime:E}},r={viewSync:c??!0,attributeSync:d??!0,destroy:p??!0}}else if(typeof e[0]=="object"&&!(e[0]instanceof HTMLDivElement)&&e[0].hasOwnProperty("project")){const{container:l,project:u,baseUrl:h,viewSync:c,attributeSync:d,id:g,destroy:p}=e[0];n={type:"ESUeViewer",container:l,id:g,options:{project:u,baseUrl:h}},r={viewSync:c??!0,attributeSync:d??!0,destroy:p??!0}}else(typeof e[0]=="string"||e[0]instanceof HTMLDivElement)&&(typeof e[1]=="string"&&e[1].startsWith("ws")?(n={type:"ESUeViewer",container:e[0],id:e[6],options:{ws:e[1],esmsg:e[2]??void 0,silentTime:e[7]??void 0}},r={viewSync:e[3]??!0,attributeSync:e[4]??!0,destroy:e[5]??!0}):typeof e[1]=="string"&&e[1].startsWith("http")?(n={type:"ESUeViewer",container:e[0],id:e[7],options:{uri:e[1],app:e[2],token:e[3]??void 0,silentTime:e[8]??void 0}},r={viewSync:e[4]??!0,attributeSync:e[5]??!0,destroy:e[6]??!0}):(n={type:"ESUeViewer",container:e[0],id:e[6],options:{project:e[1],baseUrl:e[2]??void 0}},r={viewSync:e[3]??!0,attributeSync:e[4]??!0,destroy:e[5]??!0}));if(!n)throw new Error("参数错误");const{viewSync:s,attributeSync:o,destroy:a}=r;return this.switchViewer(n,s,o,a)}createCesiumViewer(...e){let n;if(typeof e[0]=="object"&&!(e[0]instanceof HTMLDivElement)?n={...e[0],type:"ESCesiumViewer"}:(typeof e[0]=="string"||e[0]instanceof HTMLDivElement)&&(n={container:e[0],options:e[1]??void 0,id:e[2]??void 0,type:"ESCesiumViewer"}),!n)throw new Error("参数错误");return this.createViewer(n)}createOpenLayersViewer(...e){let n;if(typeof e[0]=="object"&&!(e[0]instanceof HTMLDivElement)?n={...e[0],type:"ESOlViewer"}:(typeof e[0]=="string"||e[0]instanceof HTMLDivElement)&&(n={container:e[0],options:e[1]??void 0,id:e[2]??void 0,type:"ESOlViewer"}),!n)throw new Error("参数错误");return this.createViewer(n)}createUeViewer(...e){let n;if(typeof e[0]=="object"&&!(e[0]instanceof HTMLDivElement)?n={...e[0],type:"ESUeViewer"}:(typeof e[0]=="string"||e[0]instanceof HTMLDivElement)&&(typeof e[1]=="string"&&e[1].startsWith("ws")?n={type:"ESUeViewer",container:e[0],id:e[3]??void 0,options:{ws:e[1],esmsg:e[2]??void 0,silentTime:e[4]??void 0}}:typeof e[1]=="string"&&e[1].startsWith("http")?n={type:"ESUeViewer",container:e[0],id:e[4]??void 0,options:{uri:e[1],app:e[2],token:e[3]??void 0,silentTime:e[5]??void 0}}:n={type:"ESUeViewer",container:e[0],id:e[3]??void 0,options:{project:e[1],baseUrl:e[2]??void 0}}),!n)throw new Error("参数错误");return this.createViewer(n)}createSceneObject(e,n){return this._sobjm.createSceneObject(e,n)}createSceneObjectFromUrl(e,n){return this._sobjm.createSceneObjectFromUrl(e,n)}createSceneObjectFromClass(e,n){return this._sobjm.createSceneObjectFromClass(e,n)}createSceneObjectFromJson(e){return this._sobjm.createSceneObjectFromJson(e)}destroySceneObject(e){const n=this._sobjm.deleteSceneObject(e);return e.destroy(),n}destroyAllSceneObjects(){const e=[...this._sobjm.sceneObjects];for(let n of e)n!=this._player&&n!=this._cmrvm&&this.destroySceneObject(n)}get player(){return this._player}get esPlyarAndPathTime(){return this._esPlyarAndPathTime}get pathAnimationManager(){return this._pathAnimationManager}}return f(lg,"getSceneObjById",pt.context.getSceneObjectById.bind(pt.context)),f(lg,"getEnv",pt.context.getEnv.bind(pt.context)),f(lg,"setEnv",pt.context.setEnv.bind(pt.context)),w.BooleanProperty=X,w.BorderedPosFloatDiv=K0,w.BoxPicker=Rg,w.CancelError=Fr,w.CancelsManager=Fg,w.CanvasImagePoi=qb,w.CanvasPoi=zg,w.CanvasPointPoi=Wb,w.CanvasPrimitive=G0,w.CanvasPrimitivesContext=Hb,w.ColorProperty=Dt,w.ColorStops=o4,w.ComplexImage=Bc,w.CursorFloatDiv=Zb,w.CursorInfo=Kb,w.DashPatternProperty=Py,w.DateProperty=ys,w.DatesProperty=Kg,w.Debouncing=wb,w.DebouncingDeprecated=Ng,w.DebouncingWithStartValues=Eb,w.Destroyable=B,w.DivBoxPicker=vb,w.DivPoi=Y0,w.DivPointerClick=zb,w.DivideProperty=wt,w.DomElementEvent=xe,w.DoublyLinkedList=E0,w.DragStartDataManager=My,w.ES3DTileset=Jn,w.ESAlarm=Om,w.ESApertureEffect=Dm,w.ESAreaMeasurement=Rm,w.ESAttackArrow=e0,w.ESBlastParticleSystem=Am,w.ESBoxClipping=Lm,w.ESCameraView=Rf,w.ESCameraViewCollection=Lf,w.ESCameraVisibleRange=Fm,w.ESCar=Ff,w.ESCityBasePoint=Fv,w.ESClassification=kf,w.ESClippingPlane=km,w.ESCustomDiv=Gf,w.ESCylinder=rl,w.ESCzml=Gv,w.ESDataMesh=Gm,w.ESDatasmithRuntimeModel=vv,w.ESDirectionMeasurement=av,w.ESDistanceMeasurement=jm,w.ESDynamicWater=yv,w.ESEntityCluster=Rv,w.ESExcavate=Ac,w.ESFeatureLayer=Jv,w.ESFireParticleSystem=jf,w.ESFireWall=qm,w.ESForestTileset=Vm,w.ESFountainParticleSystem=Hf,w.ESGaussianSplatting=Bv,w.ESGeoBezierSpline=Av,w.ESGeoDiv=zm,w.ESGeoDivTextPoi=Lv,w.ESGeoExtrudedPolygon=nl,w.ESGeoJson=kc,w.ESGeoLineString=Fi,w.ESGeoPoints=zc,w.ESGeoPolygon=Jt,w.ESGeoPolygonWithFire=Um,w.ESGeoRectangle=Wm,w.ESGeoVector=Ot,w.ESGeoWater=_v,w.ESGltfModel=Fs,w.ESGltfModelEditing=Qv,w.ESHeatMap=Jf,w.ESHeightLimitAnalysis=Dv,w.ESHeightMeasurement=uv,w.ESHole=xv,w.ESHuman=Zn,w.ESHumanFountain=Pv,w.ESHumanPoi=Cv,w.ESHumans=t0,w.ESImageLabel=Vf,w.ESImageryLayer=Lc,w.ESJArrowModeArray=ep,w.ESJClassificationTypeArray=tp,w.ESJEditingMode=nt,w.ESJLonLatFormat=Iy,w.ESJPickedResult=EC,w.ESLabel=Yn,w.ESLandSlide=Uv,w.ESLevelRuntimeModel=wv,w.ESLocalCircle=hv,w.ESLocalPolygon=Gc,w.ESLocalPolygonZ=cv,w.ESLocalRectangle=dv,w.ESLocalSkyBox=Xm,w.ESLocalVector=Nu,w.ESLocalVector2D=wo,w.ESLocationMeasurement=$m,w.ESMCPClient=JR,w.ESMVTLayer=Zv,w.ESMediaLayer=Kv,w.ESMsTileset=Tv,w.ESNavigator=jv,w.ESObjectWithLocation=ct,w.ESObjectsManager=lg,w.ESParticleSystemPrimitive=zf,w.ESPath=Au,w.ESPathImpl=aa,w.ESPipeFence=qf,w.ESPipeline=Ev,w.ESPipeserTileset=fv,w.ESPit=Du,w.ESPlayer=Ru,w.ESPoi2D=Fc,w.ESPoi3D=Ym,w.ESPoiTileset=Nv,w.ESPolygonFence=Wf,w.ESPolygonFlattenedPlane=Jm,w.ESPolygonWithHole=pv,w.ESPolygonsFlattenedPlane=Zm,w.ESRectangle=gv,w.ESRtsFeatureEditing=Mv,w.ESRtsTileset=Iv,w.ESScale=Ov,w.ESSceneObject=pt,w.ESSceneObjectWithId=ky,w.ESSeparateFoliage=Km,w.ESSignalInterference=i0,w.ESSkylineAnalysis=Wv,w.ESSquadCombatArrow=Bm,w.ESStaticMesh=qv,w.ESSubmergingAnalysis=Qm,w.ESSunshineAnalysis=tv,w.ESSurfaceAreaMeasurement=mv,w.ESTerrainLayer=ev,w.ESTerrainLayerEditing=Vc,w.ESTerrainLayerEditingBrushEarseFalloff=jE,w.ESTerrainLayerEditingFlattenMode=kE,w.ESTerrainLayerEditingFlattenPick=GE,w.ESTestObject=Nm,w.ESTextLabel=Ou,w.ESUEWidget=iv,w.ESUnrealActor=nv,w.ESVideoFusion=rv,w.ESViewShed=sv,w.ESViewer=os,w.ESViewerStatusBar=Vv,w.ESViewerStatusBarScale=zv,w.ESVisibilityAnalysis=Sv,w.ESVisualObject=Xt,w.ESVolumeMeasurement=bv,w.ESWidget=ov,w.EngineObject=sl,w.EnumProperty=ft,w.EvalStringProperty=io,w.Event=O,w.EventFromArrayUpdating=ob,w.EventListenerHandler=mg,w.Fetching=db,w.FloatDiv=qg,w.FlvJsLoading=Kf,w.FlvProcessing=JE,w.GetSetProperty=Qg,w.Gif=Ey,w.GifPlayer=wy,w.GifProcessing=Sy,w.HasOwner=nb,w.HlsJsLoading=Zf,w.HlsProcessing=YE,w.IFrameBorderedPosFloatDiv=Yb,w.ImageProcessing=uy,w.IntervalDeprecated=Dg,w.JsonArrayProperty=Ne,w.JsonProperty=Et,w.ListenerPipe=pg,w.LocalFileServer=ay,w.LocalRootDir=oy,w.LongStringProperty=bd,w.MethodProperty=vt,w.NextAnimateFrameEvent=fd,w.NextAnimateFrameWeakEvent=S0,w.NextMicroTaskEvent=Sg,w.NextMicroTaskWeakEvent=$S,w.Number2Property=Ke,w.Number3Property=ci,w.Number4Property=rr,w.NumberProperty=D,w.NumberSliderProperty=Qe,w.ObjPool=ad,w.ObjResetting=eC,w.ObjResettingWithEvent=qe,w.ObservableArray=Ph,w.ObservableSet=Sd,w.PickColorMananger=X0,w.PickedInfo=wC,w.Player=kr,w.PlayerProperty=Cd,w.PointerClick=Vg,w.PointerClickDeprecated=D0,w.PointerHover=k0,w.PointerHoverDeprecated=Bb,w.PosFloatDiv=Xg,w.PositionProperty=_s,w.Processing=hi,w.Property=Fo,w.ReactVarProperty=nn,w.ReactiveVariable=ui,w.RotationProperty=Ah,w.SceneObjectFromId=rp,w.SceneTree=Rc,w.SceneTreeContextMenu=eE,w.SceneTreeItem=gn,w.SceneTreeItemDragDrop=tE,w.SmartListenerHandler=_h,w.SmartListenerPipe=GS,w.SmoothMoveController=iD,w.StringProperty=mt,w.Throttling=jb,w.ThrottlingWithStartValues=Vb,w.TimingDeprecated=N0,w.ToolTipDiv=Jb,w.Transition=Th,w.TransitionDeprecated=pb,w.Tree=Oa,w.TreeItem=Rh,w.TreeItemDragDrop=Ty,w.UiTree=iy,w.UiTreeObject=ey,w.VideoProcessing=dy,w.ViewPlayerProperty=xy,w.ViewerCustomInteraction=IS,w.Watcher=Fh,w.WatcherTools=Gy,w.WithUndefinedProperty=Zg,w.XrPlayer=wd,w.Xyzw2Ns=md,w._getFeatureProperty=TE,w._getLayerConfig=xE,w._getport=ME,w._saveLayerConfig=IE,w.addTreesCallFunc=cE,w.animateFrame=cd,w.apis=Yf,w.ary2Ns=cb,w.asyncFuncToCancelablePromise=Pb,w.bind=lt,w.bindCustomEditing=Dy,w.bindu=HS,w.booleanPointInPolygon=DO,w.buildFeatureTilesetUrl=PE,w.buildInfoUrl=ID,w.buildTilesetUrl=CE,w.calcArrowPoints=Tm,w.canMoveToTreeItem=Dh,w.canMoveToTreeItems=Q0,w.cancelFuncToCancelablePromise=Cb,w.cancelPromise=Ag,w.cancelableFetch=Gg,w.cancelableFetchDeprecated=T0,w.cancelableFetchWithProgress=Ib,w.cartesianDistance=Y1,w.clamp=vd,w.clamp0_360=Bl,w.clampN180_180=Oy,w.complexImageTypes=cy,w.createAnimateFrame=Ih,w.createAnimateFrameWithStartValues=zl,w.createBottomTriangleElement=Z0,w.createCancelablePromise=Vl,w.createCloseDiv=J0,w.createEventsCallFunc=Ze,w.createFetching=Mb,w.createFetchingWithStartValues=Tb,w.createGuid=Ll,w.createInterval=Ab,w.createIntervalWithStartValues=Lb,w.createNextAnimateFrame=Nb,w.createNextAnimateFrameEvent=Ve,w.createNextAnimateFrameEventCallFunc=JS,w.createNextAnimateFrameWeakEvent=ZS,w.createNextAnimateFrameWithStartValues=Ob,w.createNextMicroTask=Db,w.createNextMicroTaskEvent=XS,w.createNextMicroTaskWeakEvent=YS,w.createNextMicroTaskWithStartValues=Rb,w.createNumbers=pd,w.createProcessingFromAsyncFunc=Ln,w.createProcessingFromAsyncFuncWithStartValues=xb,w.createProcessingFromPromiseCreateFunc=_d,w.createProcessingFromPromiseCreateFuncWithStartValues=kg,w.createSleeping=Fb,w.createSleepingWithStartValues=kb,w.createStartFuncFromAsyncFunc=xh,w.createTimeout=A0,w.createTimeoutWithStartValues=L0,w.cutDownTreesCallFunc=gE,w.czmPixelFormats=hy,w.data=CD,w.dataMd=PD,w.debounce=hd,w.defaultGetLocalFilePath=iC,w.defaultInitSceneObjectOnCreatingFunc=bC,w.defaultLight122FromEnvironmentMapManager=Mm,w.defaultLoadFuncDocStr=_E,w.defaultLoadFuncStr=lv,w.defaultLocalFileServer=ly,w.defaultStartUpdateFunc=gd,w.defaultUpdateSceneObjectOnPickingFunc=SC,w.defineReactiveProp=Og,w.destroyObject=v0,w.diffGeoJson=FC,w.downloadLink=eb,w.drawBubble=Ta,w.drawPoint=Ub,w.drawRoundRectPath=j0,w.drawText=V0,w.drawTextBlock=Bg,w.engineObjectCreatedUpdate=Z1,w.equalsN3=Nf,w.every=Cg,w.extendClassProps=Ro,w.fetchArrayBuffer=sb,w.fetchImage=x0,w.forEach=ms,w.forEachWithBreak=bg,w.geoAlong=RO,w.geoArea=Sm,w.geoBuffer=W1,w.geoCenterOfMass=AO,w.geoDestination=bm,w.geoDifference=H1,w.geoDistance=Mf,w.geoHeading=Dc,w.geoIntersect=U1,w.geoLineIntersect=LO,w.geoNearestPointOnLine=kO,w.geoPointToLineDistance=GO,w.geoPolygonFromCircle=X1,w.geoPolygonOverlap=Cm,w.geoPolylineToBezierSpline=Tu,w.geoRhumbDestination=jO,w.geoRhumbDistance=B1,w.geoRhumbHeading=VO,w.geoUnion=q1,w.getCameraTools=_S,w.getColorHexStr=Oh,w.getCompleteReactParams=ud,w.getDefaultValue=IC,w.getDistancesFromPositions=_o,w.getDomEventCurrentTargetPos=ji,w.getDrawRect=Ma,w.getESMCPTools=ES,w.getElementBounds=LC,w.getErrorResult=Pe,w.getEventFromPromise=_b,w.getEventPosInCurrentTarget=kl,w.getExtProp=An,w.getFileArrayBuffer=sy,w.getFileJson=ry,w.getFileText=$g,w.getFloatDivPool=Hg,w.getGeoBoundingSphereFromPositions=$1,w.getIterator=Eh,w.getMidpoint=FO,w.getMinMaxCorner=Tf,w.getMinMaxPosition=rb,w.getPromiseCancel=Gl,w.getPromiseFromEvent=yb,w.getPromiseFromProcessing=jg,w.getReactFuncs=yh,w.getRtsServicePrefix=il,w.getSceneObjectTools=wS,w.getSceneObjectTreeItem=CC,w.getSubEntriesFromDir=ny,w.getSuccessResult=ss,w.getTypeFromImageUri=ZE,w.getValueFromProps=b0,w.getXyzFromPostion=Pm,w.growthSimulationCallFunc=pE,w.hasSameTags=Ny,w.hasSameViewerTags=Lh,w.imageToCanvas=z0,w.inOrderRunning=MC,w.interval=wg,w.isFeatureEqual=Ly,w.isGeometryEqual=Fy,w.isJSON=ip,w.isPromiseCancelable=jl,w.isRelativeRtsInfoUrl=wE,w.isXML=xC,w.lbhToWebMerc=W2,w.lbhToXyz=jr,w.length=Pg,w.lerpAngle=xd,w.lerpRotation=np,w.loadGifFrames=yy,w.loadJs=Mg,w.map=J1,w.max=to,w.min=Ao,w.moveToTreeItem=Ed,w.moveToTreeItems=ty,w.nextAnimateFrame=Fl,w.nextMicroTask=wh,w.objsIterator=xa,w.oneTimeWarning=Rl,w.optionsStr=yD,w.pairToPromise=Lg,w.parsePlatformFromUrl=SE,w.parseRtsHost=EE,w.parseRtsOrigin=$f,w.parseTileServiceName=bE,w.pluckProperty=xg,w.react=z,w.reactArray=ot,w.reactArrayCollection=zS,w.reactArrayCollectionWithUndefined=vg,w.reactArrayWithUndefined=oe,w.reactDeepArray=ld,w.reactDeepArrayWithUndefined=Do,w.reactJson=bt,w.reactJsonCollection=BS,w.reactJsonCollectionWithUndefined=US,w.reactJsonWithUndefined=fe,w.reactPlainObject=jS,w.reactPlainObjectWithUndefined=VS,w.reactPosition2Ds=xm,w.reactPosition2DsSet=qS,w.reactPositions=Pa,w.reactPositionsSet=yg,w.reduce=Ch,w.registerEventCtor=y0,w.registerEventUpdate=WO,w.removeAllTreesCallFunc=dE,w.requestAnimationFrameTimeStampTest=ib,w.resolveRtsInfoUrl=Xf,w.rpToap=PC,w.saveOnBrowser=tb,w.setCanvasUniformColor=B0,w.setExtProp=ps,w.setPromiseCancel=Lo,w.setSceneObjectTreeItem=Pd,w.setValueFromProps=QS,w.sleep=Mh,w.sleepDeprecated=fb,w.step=Ia,w.stepProcessing=Gb,w.throttle=Ig,w.timeout=Eg,w.toGeoJson=Ay,w.track=F,w.uint32ToUint8s=W0,w.uint8ToHexStr=Nh,w.uint8sToUint32=H0,w.updateTreeParamsCallFunc=fE,w.webMercToLbh=H2,w.xyz2N2=ab,w.xyz2N3=lb,w.xyzToLbh=Ip,w.xyzw2N4=ub,Object.defineProperty(w,Symbol.toStringTag,{value:"Module"}),w})({});
|
package/dist/earthsdk3.js
CHANGED
|
@@ -44,7 +44,7 @@ function Xd(r) {
|
|
|
44
44
|
}
|
|
45
45
|
let xu;
|
|
46
46
|
try {
|
|
47
|
-
const r = "earthsdk3", e = "3.11.0-beta.
|
|
47
|
+
const r = "earthsdk3", e = "3.11.0-beta.15", t = "2026-09-09T07:02:29.000Z", n = "北京西部世界科技有限公司", i = "地球可视化实验室 (EarthSDK&CesiumLab) https://www.bjxbsj.cn", s = "8a3b286a986e6a1ca38bed48ed25a7f77a546cc0", a = ((Date.now() - 1788937349e3) / 36e5).toFixed(1), u = `%c🌏 ${r}%c ${e}.${s.slice(0, 8)}.${t} (距今${a}个小时)
|
|
48
48
|
%c${i ? i + `
|
|
49
49
|
` : ""}当前网站正在使用${r},此软件版权归${n}所有
|
|
50
50
|
`;
|
|
@@ -58,7 +58,7 @@ try {
|
|
|
58
58
|
},
|
|
59
59
|
// @ts-ignore
|
|
60
60
|
get gituri() {
|
|
61
|
-
return GITURI_ && GITURI_.replace("${commitId}", "
|
|
61
|
+
return GITURI_ && GITURI_.replace("${commitId}", "8a3b286a986e6a1ca38bed48ed25a7f77a546cc0");
|
|
62
62
|
},
|
|
63
63
|
// @ts-ignore
|
|
64
64
|
get info() {
|
|
@@ -66,7 +66,7 @@ try {
|
|
|
66
66
|
},
|
|
67
67
|
// @ts-ignore
|
|
68
68
|
get date() {
|
|
69
|
-
return "2026-
|
|
69
|
+
return "2026-09-09T07:02:29.000Z";
|
|
70
70
|
},
|
|
71
71
|
// @ts-ignore
|
|
72
72
|
get author() {
|
|
@@ -74,7 +74,7 @@ try {
|
|
|
74
74
|
},
|
|
75
75
|
// @ts-ignore
|
|
76
76
|
get version() {
|
|
77
|
-
return "3.11.0-beta.
|
|
77
|
+
return "3.11.0-beta.15";
|
|
78
78
|
},
|
|
79
79
|
// @ts-ignore
|
|
80
80
|
get name() {
|
|
@@ -82,7 +82,7 @@ try {
|
|
|
82
82
|
},
|
|
83
83
|
// @ts-ignore
|
|
84
84
|
get commitId() {
|
|
85
|
-
return "
|
|
85
|
+
return "8a3b286a986e6a1ca38bed48ed25a7f77a546cc0";
|
|
86
86
|
},
|
|
87
87
|
/**
|
|
88
88
|
* 打印版权信息到控制台
|
|
@@ -45145,6 +45145,10 @@ let Ji = as;
|
|
|
45145
45145
|
* 是否显示编辑线,默认值为 true。
|
|
45146
45146
|
*/
|
|
45147
45147
|
editingLineShow: !0,
|
|
45148
|
+
/**
|
|
45149
|
+
* 是否显示编辑点的悬浮提示(如“控制点1”),默认值为 true。
|
|
45150
|
+
*/
|
|
45151
|
+
editingPointTooltipShow: !0,
|
|
45148
45152
|
/**
|
|
45149
45153
|
* 是否开启编辑事件监听,默认值为 true。
|
|
45150
45154
|
*/
|
package/dist/earthsdk3.umd.cjs
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
(function(m,tr){typeof exports=="object"&&typeof module<"u"?tr(exports,require("js-binary-schema-parser"),require("@turf/turf"),require("proj4"),require("topojson-client"),require("zod"),require("zod-to-json-schema")):typeof define=="function"&&define.amd?define(["exports","js-binary-schema-parser","@turf/turf","proj4","topojson-client","zod","zod-to-json-schema"],tr):(m=typeof globalThis<"u"?globalThis:m||self,tr(m.EarthSDK3={},m.jsBinarySchemaParser,m.turf,m.proj4,m.topojson,m.z$1,m.zodToJsonSchema))})(this,(function(m,tr,_a,sg,t0,pe,e0){"use strict";var jP=Object.defineProperty;var BP=(m,tr,_a)=>tr in m?jP(m,tr,{enumerable:!0,configurable:!0,writable:!0,value:_a}):m[tr]=_a;var h=(m,tr,_a)=>BP(m,typeof tr!="symbol"?tr+"":tr,_a);function og(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 At=og(_a),n0=og(t0);function r0(){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 i0=Date.now();function ag(r){var a;const{os:e,arch:t}=r0(),n={version:r.version,commitdate:r.date,commitId:r.commitId,runningTime:(Date.now()-i0)/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(l=>l.text()).then(l=>console.log(l)).catch(l=>console.log("error",l))}m.copyright=void 0;try{const r="earthsdk3",e="3.11.0-beta.
|
|
1
|
+
(function(m,tr){typeof exports=="object"&&typeof module<"u"?tr(exports,require("js-binary-schema-parser"),require("@turf/turf"),require("proj4"),require("topojson-client"),require("zod"),require("zod-to-json-schema")):typeof define=="function"&&define.amd?define(["exports","js-binary-schema-parser","@turf/turf","proj4","topojson-client","zod","zod-to-json-schema"],tr):(m=typeof globalThis<"u"?globalThis:m||self,tr(m.EarthSDK3={},m.jsBinarySchemaParser,m.turf,m.proj4,m.topojson,m.z$1,m.zodToJsonSchema))})(this,(function(m,tr,_a,sg,t0,pe,e0){"use strict";var jP=Object.defineProperty;var BP=(m,tr,_a)=>tr in m?jP(m,tr,{enumerable:!0,configurable:!0,writable:!0,value:_a}):m[tr]=_a;var h=(m,tr,_a)=>BP(m,typeof tr!="symbol"?tr+"":tr,_a);function og(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 At=og(_a),n0=og(t0);function r0(){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 i0=Date.now();function ag(r){var a;const{os:e,arch:t}=r0(),n={version:r.version,commitdate:r.date,commitId:r.commitId,runningTime:(Date.now()-i0)/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(l=>l.text()).then(l=>console.log(l)).catch(l=>console.log("error",l))}m.copyright=void 0;try{const r="earthsdk3",e="3.11.0-beta.15",t="2026-09-09T07:02:29.000Z",n="北京西部世界科技有限公司",i="地球可视化实验室 (EarthSDK&CesiumLab) https://www.bjxbsj.cn",s="8a3b286a986e6a1ca38bed48ed25a7f77a546cc0",a=((Date.now()-1788937349e3)/36e5).toFixed(1),l=`%c🌏 ${r}%c ${e}.${s.slice(0,8)}.${t} (距今${a}个小时)
|
|
2
2
|
%c${i?i+`
|
|
3
3
|
`:""}当前网站正在使用${r},此软件版权归${n}所有
|
|
4
|
-
`;m.copyright=Object.freeze({get owner(){return"北京西部世界科技有限公司"},get ownerlink(){},get gituri(){return GITURI_&&GITURI_.replace("${commitId}","
|
|
4
|
+
`;m.copyright=Object.freeze({get owner(){return"北京西部世界科技有限公司"},get ownerlink(){},get gituri(){return GITURI_&&GITURI_.replace("${commitId}","8a3b286a986e6a1ca38bed48ed25a7f77a546cc0")},get info(){return l},get date(){return"2026-09-09T07:02:29.000Z"},get author(){return"suplyang"},get version(){return"3.11.0-beta.15"},get name(){return"earthsdk3"},get commitId(){return"8a3b286a986e6a1ca38bed48ed25a7f77a546cc0"},print(){console.info(this.info,`
|
|
5
5
|
font-size: 18px;
|
|
6
6
|
font-weight: 1000;
|
|
7
7
|
line-height: 1;
|
|
@@ -502,4 +502,4 @@ ${P_}
|
|
|
502
502
|
`,inputSchema:{roll:pe.number().describe("翻滚角(°),0度时画面保持水平,必须参数,取值范围 -180~180").min(-180).max(180)}},func:async({roll:e})=>{var t,n;try{const i=(t=r.activeViewer)==null?void 0:t.getCurrentCameraInfo();if(!i)return ue("cameraRoll",null,"未查询到当前相机信息");const s=[i.rotation[0],i.rotation[1],e];return(n=r.activeViewer)==null||n.flyIn(i.position,s),mi("cameraRoll",{newRotation:s})}catch(i){return ue("cameraRoll",i)}}},{name:"cameraDistance",params:{description:"控制相机与当前目标或视点之间的距离变化,实现相机画面的拉近或拉远。通过 mode 参数指定缩放方向(near 表示拉近,far 表示拉远)",inputSchema:{mode:pe.enum(["near","far"]).describe("缩放模式,near表示相机画面拉近,far表示相机画面拉远")}},func:async({mode:e})=>{var t,n,i,s,o;try{console.log("cameraDistance",e);const a=(t=r.activeViewer)==null?void 0:t.getCurrentCameraInfo();if(!a)return ue("cameraDistance",null,"未查询到当前相机信息");const l=(i=(n=r.activeViewer)==null?void 0:n.container)==null?void 0:i.getBoundingClientRect();if(!l)return ue("cameraDistance",null,"未查询到当前相机容器信息");const u=[l.width/2,l.height/2],c=await((s=r.activeViewer)==null?void 0:s.pickPosition(u));if(!c)return ue("cameraDistance",null,"未查询到视点位置");const d=e==="near"?.2:-.2,f=[a.position[0]+(c[0]-a.position[0])*d,a.position[1]+(c[1]-a.position[1])*d,a.position[2]+(c[2]-a.position[2])*d];return(o=r.activeViewer)==null||o.flyIn(f,a.rotation),mi("cameraDistance",{mode:e,newPosition:f})}catch(a){return ue("cameraDistance",a)}}}],U_=r=>[{name:"deleteSceneObject",params:{description:"提供对象id来删除单个或多个场景对象,把对象从场景中移除",inputSchema:{ids:pe.array(pe.string().describe("场景对象 id")).describe("需要删除的场景对象 id 列表").default([])}},func:async({ids:e})=>{var t;try{if(e.length===0)return ue("deleteSceneObject",null,"未指定对象id");const n=[];for(const i of e){const s=r.sceneTree.getTreeItemFromSceneObjId(i);if(!s){n.push(`删除失败,未查询到ID为 ${i} 的对象`);continue}r.sceneTree.destroySceneObjectTreeItem(s),n.push(`成功删除对象 ${(t=s==null?void 0:s.sceneObject)==null?void 0:t.id}`)}return mi("deleteSceneObject",n)}catch(n){return ue("deleteSceneObject",n)}}},{name:"createSceneObjectFromJson",params:{description:"根据对象JSON来创建场景对象,必须符合格式 { type: string,id: string, ...} ",inputSchema:{json:pe.object({id:pe.string().describe("对象id"),type:pe.string().describe("对象类型,例如:ESImageLayer")}).passthrough().describe("场景对象JSON,必须保证 id 和 type 存在,严格使用用户提供的JSON,不允许添加额外属性")}},func:async({json:e})=>{var t;try{if(![...lt.context.typeNames].includes(e.type))return ue("createSceneObjectFromJson",null,`未查询到类型为 ${e.type} 的对象类型`);const i=r.sceneTree.createSceneObjectTreeItemFromJson(e);return i?mi("createSceneObjectFromJson",(t=i==null?void 0:i.sceneObject)==null?void 0:t.completeJson):ue("createSceneObjectFromJson",null,`创建 ${e.type} 对象失败`)}catch(n){return ue("createSceneObjectFromJson",n)}}},{name:"setSceneObjectProperty",params:{description:"设置对象的属性值,更改指定对象的某个属性值,参数从场景JSON中查询",inputSchema:{id:pe.string().describe("对象id"),property:pe.string().describe("对象属性名,例如:show"),value:pe.any().describe("对象属性值,例如: true")}},func:async({id:e,property:t,value:n})=>{try{const i=r.getSceneObjectById(e);return i?Reflect.has(i,t)?(i[t]=n,mi("setSceneObjectProperty",`对象 ${i.name} 的 ${t} 属性为 ${JSON.stringify(n)}`)):ue("setSceneObjectProperty",null,`对象 ${i.name} 没有属性 ${t}`):ue("setSceneObjectProperty",null,`未查询到ID为 ${e} 的对象`)}catch(i){return ue("setSceneObjectProperty",i)}}}],G_=r=>[...z_(r),...U_(r)],dP=e0;function W_(r){return dP(r)}class fP extends U{constructor(t){super();h(this,"_tools",new Map);t&&G_(t).forEach(i=>{this.registerTool(i)})}toolTransformParams(t){const{description:n,inputSchema:i,outputSchema:s}=t.params,o=pe.z.object(i||{}),a=pe.z.object(s||{}),l=W_(o),u=W_(a);return{name:t.name,description:n,inputSchema:l,outputSchema:u}}async listTools(){return Promise.resolve(Array.from(this._tools.values()).map(this.toolTransformParams))}registerTool(t){this._tools.set(t.name,t)}async callTool(t){const{name:n,arguments:i}=t,s=this._tools.get(n);if(!s||!s.func)throw new Error(`ESTool "${n}" does not exist.`);return await s.func(i)}getTools(){return Array.from(this._tools.values())}}function H_(r){return typeof r=="string"?document.getElementById(r):r}function ng(r){if(!r)throw new Error("container is not defined");r.innerHTML="";const e=document.createElement("div");return e.style.cssText="width: 100%; height: 100%; margin: 0px; padding: 0px; border: none; overflow: hidden; position: relative; z-index: 0; background: rgba(0,0,0,0);",r.appendChild(e),e}class q_ extends U{constructor(t,n){super();h(this,"_listeningSceneObjects",new Map);this._sceneObjectsMananger=t,this._createSceneObjectListeningFunc=n;const i=this._listeningSceneObjects,s=(o,a)=>{if(o)for(let l of o){const u=i.get(l);u&&(u.destroy(),i.delete(l))}if(a)for(let l of a){if(i.get(l)){console.warn(`listeningSceneObjects已存在某对象:${l.name}`,l);debugger}const c=this.createSceneObjectListeningFunc(l);c&&i.set(l,c)}};s(void 0,this._sceneObjectsMananger.sceneObjects),this.dispose(this._sceneObjectsMananger.sceneObjectsToChange.disposableOn(s)),this.dispose(()=>{for(let o of this._listeningSceneObjects.values())o.destroy();this._listeningSceneObjects.clear()})}get listeningSceneObjects(){return this._listeningSceneObjects}get createSceneObjectListeningFunc(){return this._createSceneObjectListeningFunc}}class pP extends U{constructor(e){super(),this._esObjectsManager=e;{const t=this._esObjectsManager;class n extends U{constructor(s){super(),this._esPath=s,this.dv(new Ie(t.activeViewerChanged,()=>{const o=t.activeViewer;if(!o)return;class a extends U{constructor(u){if(super(),this._esPath=u,!o)throw new Error("!viewer");const c=()=>{const d=t.activeViewer;d&&(this._esPath.path.currentTime=d.simulationTime)};c(),this.d(o.simulationTimeChanged.don(c))}}return new a(this._esPath)}))}}this.dv(new q_(t.sceneObjectsManager,i=>{if(i instanceof hl)return new n(i)}))}{const t=this._esObjectsManager;class n extends U{constructor(s){super();const o=()=>{const a=t.activeViewer;a&&(a.simulationTime=s.currentTime??0)};o(),this.d(s.currentTimeChanged.don(o))}}this.dv(new q_(t.sceneObjectsManager,i=>{if(i instanceof cl)return new n(i)}))}}}class gP extends U{constructor(e){super(),e.forEach(t=>{this.d(t.path.currentPositionChanged.don(n=>{n&&t.sceneObjects.forEach(i=>{Reflect.has(i,"position")&&(i.position=[...n])})})),this.d(t.path.currentRotationChanged.don(n=>{n&&t.sceneObjects.forEach(i=>{Reflect.has(i,"rotation")&&(i.rotation=[...n])})}))})}}class mP extends U{constructor(t){super();h(this,"_player");h(this,"_channels",this.dv(tt([])));this._objectManager=t,this._player=this._objectManager.player,this.dv(new Ie(this.channelsChanged,()=>{if(this.channels.length===0)return;const n=[];for(let i=0;i<this.channels.length;i++){const s=this.channels[i],o=lt.getSceneObjById(s.pathId);if(!o||!(o instanceof hl))continue;const l=s.sceneObjectIds.map(u=>lt.getSceneObjById(u)).filter(u=>u!==void 0);l.length!==0&&n.push({path:o,sceneObjects:l})}if(n.length!==0)return new gP(n)}))}get player(){return this._player}get channels(){return this._channels.value}get channelsChanged(){return this._channels.changed}set channels(t){this._channels.value=t}}function X_(r,e,t,n){if(t)n.currentActiveEditing=[r,e];else if(n.currentActiveEditing){const[i,s]=n.currentActiveEditing;i===r&&s===e&&(t||(n.currentActiveEditing=void 0))}}const vP=["editing","positionEditing","locationEditing","pointEditing","rotationEditing"];class yP extends U{constructor(e,t){super(),this._sceneObject=e;const n=this._sceneObject;for(let i of vP){const s=i+"Changed",o=n[s];if(o){{const a=n[i];X_(n,i,a,t)}this.dispose(o.disposableOn((a=>X_(n,i,a,t))))}}}get sceneObject(){return this._sceneObject}}class _P extends U{constructor(){super();h(this,"_currentActiveEditing",this.disposeVar(Xt(void 0)));h(this,"_currentActiveEditingLastChangedTime",0);this.dispose(this._currentActiveEditing.changed.disposableOn((t,n)=>{if(this._currentActiveEditingLastChangedTime=Date.now(),n){const[i,s]=n;i[s]===!0&&(i[s]=!1)}if(t){const[i,s]=t;i[s]=!0}})),lt.context.sceneObjCreatedEvent.don(t=>{t.dv(new yP(t,this))})}get currentActiveEditing(){return this._currentActiveEditing.value}set currentActiveEditing(t){this._currentActiveEditing.value=t}get currentActiveEditingChanged(){return this._currentActiveEditing.changed}get currentActiveEditingLastChangedTime(){return this._currentActiveEditingLastChangedTime}}class wP extends U{constructor(){super();h(this,"_sceneObjects",new Set);h(this,"_sceneObjectsToChange",this.dv(new N));this.d(()=>{const t=Yh(this._sceneObjects);t!==0&&console.warn(`场景对象管理器销毁时仍然管理着${t}个场景对象!`)})}get sceneObjects(){return this._sceneObjects}get sceneObjectsToChange(){return this._sceneObjectsToChange}addSceneObject(t){return this._sceneObjects.has(t)?(console.warn(`创建失败:对象${t.typeName+":"+t.id}已经存在于场景对象管理器中!}`),!1):(this._sceneObjectsToChange.emit([],[t]),this._sceneObjects.add(t),!0)}deleteSceneObject(t){return this._sceneObjects.has(t)?(this._sceneObjectsToChange.emit([t],[]),this._sceneObjects.delete(t),!0):(console.warn(`删除失败:对象${t.typeName+":"+t.id}不存在于场景对象管理器中!}`),!1)}createSceneObject(t,n){const i=lt.context.createSceneObject(t,n);return i&&this.addSceneObject(i),i}createSceneObjectFromUrl(t,n){const i=lt.context.createSceneObjectFromUrl(t,n);return i&&this.addSceneObject(i),i}createSceneObjectFromClass(t,n){const i=lt.context.createSceneObjectFromClass(t,n);return i&&this.addSceneObject(i),i}createSceneObjectFromJson(t){const n=lt.context.createSceneObjectFromJson(t);return n&&this.addSceneObject(n),n}}class EP extends U{constructor(t){super();h(this,"_enabled",this.dv(z(!1)));h(this,"_cursorPosition",z(void 0));h(this,"quickPickPosition",!0);let n=new U;const i=()=>{n&&(n.destroy(),n=void 0)};this.d(i);const s=()=>{if(i(),!t||!this._enabled.value)return;n=new U;const o=n.dv(z(void 0)),a=n.dv(Se(o.changed));n.d(t.pointerMoveEvent.don(u=>{u.pointerEvent&&(o.value=mn(u.pointerEvent))}));const l=n.dv(nr(async u=>{if(o.value)if(this.quickPickPosition){const c=await u.promise(xa(t.quickPickPosition(o.value)));this._cursorPosition.value=c}else{const c=await u.promise(xa(t.pickPosition(o.value)));this._cursorPosition.value=c}}));n.d(a.don(()=>{l.restart()}))};s(),this.d(this._enabled.changed.don(s))}get enabled(){return this._enabled.value}set enabled(t){this._enabled.value=t}get enabledChanged(){return this._enabled.changed}get cursorPosition(){return this._cursorPosition.value}get cursorPositionChanged(){return this._cursorPosition.changed}}class CP extends U{constructor(t){super();h(this,"cursorPositionInfo");this.viewer=t,this.cursorPositionInfo=this.dv(new EP(this.viewer))}}class SP extends U{constructor(t){super();h(this,"viewer");const n=this.viewer=t;this.ad(new Ie(n.rollerShutterChanged,()=>{const i=n.container;if(!i||!n.rollerShutter)return;const s=new U;this.viewer.splitPosition=.5;let o=this.getRollerShutterDIV();return i.appendChild(o),s.d(()=>{this.viewer.splitPosition=0,i.removeChild(o)}),s}))}getRollerShutterDIV(){let t=document.createElement("div");t.style.position="absolute",t.style.left="50%",t.style.top="0",t.style.backgroundColor="#d3d3d3",t.style.width="5px",t.style.height="100%",t.style.zIndex="9999";const n=i=>{if(!t.parentElement)return;i.preventDefault?i.preventDefault():i.returnValue=!1;const o=i.x/t.parentElement.offsetWidth;t.style.left=`${100*o}%`,this.viewer.splitPosition=o};return t.addEventListener("mouseenter",i=>{t.style.cursor="ew-resize"}),t.addEventListener("mouseleave",i=>{t.style.cursor="default"}),t.addEventListener("mousedown",i=>{t.style.cursor="ew-resize",document.addEventListener("mousemove",n)}),document.addEventListener("mouseup",i=>{t.style.cursor="default",document.removeEventListener("mousemove",n)}),t}}class bP extends U{constructor(t){super();h(this,"rollerShutterAnalysis");this.rollerShutterAnalysis=this.ad(new SP(t))}}function Y_(r,e){return r.length===e.length&&r.every((t,n)=>t===e[n])}class PP extends U{constructor(e){super(),this._viewer=e,this.d(A([this._viewer,"currentTime"],[this._viewer,"simulationTime"]))}}class IP extends U{constructor(e,t){super(),this._viewer=e,this._activeViewer=t;const n=vi.createCommonProps(),i=[];Object.keys(n).forEach(l=>{const u=this._activeViewer[l+"Changed"];i.push(u)});const s=this.dv(Se(...i)),o=()=>{this._viewer.status!=="Created"||this._activeViewer.status!=="Created"||Object.keys(n).forEach(l=>{this._viewer[l]=this._activeViewer[l]})};this.d(s.don(o));const a=this.dv(Zl());a.restart(void 0,async()=>{if(this._viewer.status!=="Created"||this._activeViewer.status!=="Created")return;const l=this._activeViewer.getCurrentCameraInfo(),u=this._viewer.getCurrentCameraInfo();if(!l)return;const{position:c,rotation:d}=l;u&&Y_(c,u.position)&&Y_(d,u.rotation)||this._viewer.flyIn(c,d,0)}),this.d(()=>a.cancel())}}const xP=`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" preserveAspectRatio="xMidYMid" width="40" height="40" style="shape-rendering: auto; display: block; background: rgba(255, 255, 255, 0);" xmlns:xlink="http://www.w3.org/1999/xlink"><g><circle stroke-linecap="round" fill="none" stroke-dasharray="50.26548245743669 50.26548245743669" stroke="#ffffff" stroke-width="8" r="32" cy="50" cx="50">
|
|
503
503
|
<animateTransform values="0 50 50;360 50 50" keyTimes="0;1" dur="1s" repeatCount="indefinite" type="rotate" attributeName="transform"></animateTransform>
|
|
504
504
|
</circle><g></g></g></svg>
|
|
505
|
-
`,TP='<svg t="1747028305766" class="icon" viewBox="0 0 1032 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="3881" width="40" height="40"><path d="M0.1536 547.700736c-0.205824-0.187392-0.205824-0.49152 0.008192-0.68608l80.672768-73.590784a0.63488 0.63488 0 0 1 0.7936-0.029696l263.043072 203.0336c0.667648 0.515072 1.738752 0.498688 2.393088-0.038912l609.191936-500.133888a0.605184 0.605184 0 0 1 0.768 0.022528l74.84928 67.229696a0.454656 0.454656 0 0 1-0.002048 0.685056l-685.234176 618.19904a1.14688 1.14688 0 0 1-1.518592-0.012288L0.1536 547.700736z" fill="#ffffff" p-id="3882"></path></svg>',OP='<svg t="1747028398107" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="1146" width="40" height="40"><path d="M415.744006 1.033277A0.992256 0.992256 0 0 1 416.747526 0.000061h189.5045c0.569344 0 1.017856 0.45056 1.001472 1.033216l-21.227518 754.803667a1.062912 1.062912 0 0 1-1.05984 1.032192h-146.933752c-0.569344 0-1.04448-0.45056-1.059839-1.032192L415.744006 1.033277zM511.510528 1024c-52.595709 0-95.231994-39.866366-95.231994-89.043963 0-49.176573 42.636285-89.042939 95.231994-89.042938 52.594685 0 95.231994 39.866366 95.231994 89.042938 0 49.177597-42.637309 89.043963-95.231994 89.043963z" fill="#ffffff" p-id="1147"></path></svg>',ya=class ya extends U{constructor(e){super();const t=()=>{const n=this.dv(new gh);this.d(A([n,"show"],[e,"useDefaultStatusDiv"]));{const i=()=>{n.show=(e.useDefaultStatusDiv??!0)&&e.status!=="Created"};i(),this.d(e.useDefaultStatusDivChanged.don(i)),this.d(e.statusChanged.don(i)),n.cssText="width:100%;height:100%;position:absolute;left:0px;top:0px;"}e.add(n),this.d(()=>e.delete(n)),n.instanceClass=class extends U{constructor(o,a,l){super();h(this,"_div",document.createElement("div"));if(this._subContainer=o,!l)return;this._subContainer.appendChild(this._div),this.d(()=>this._subContainer.removeChild(this._div));{const _=()=>{a.show?this._div.style.opacity="1":this._div.style.opacity="0"};_(),this.d(a.showChanged.don(_))}let u,c,d,f,p;this._div.style.pointerEvents="none",this._div.style.position="absolute",this._div.style.width="100%",this._div.style.height="100%",this._div.style.backgroundColor="rgba(0, 0, 0, 0.4)",this._div.style.zIndex="100",this._div.style.transition="opacity 2s",u=document.createElement("div"),this._div.appendChild(u),u.style.width="auto",u.style.position="absolute",u.style.left="50%",u.style.top="50%",u.style.transform="translate(-50%,-50%)",u.style.background="rgba(120, 120, 0, 0.7)",u.style.color="white",u.style.fontSize="10px",u.style.background="none",u.style.display="flex",u.style.justifyContent="center",u.style.alignItems="center",c=document.createElement("div"),u.appendChild(c),c.style.pointerEvents="none",c.style.display="block",c.style.width="40px",c.innerHTML=ya.defaultsSvg.loadingSvg,c.style.filter="drop-shadow(0px 0px 1px black)",d=document.createElement("div"),u.appendChild(d),d.style.pointerEvents="none",d.style.marginLeft="10px",d.style.display="flex",d.style.flexFlow="column",d.style.maxWidth="300px",f=document.createElement("div"),d.appendChild(f),f.style.fontSize="14px",f.style.fontWeight="800",f.style.marginBottom="5px",f.style.textShadow="0 0 2px black",p=document.createElement("div"),d.appendChild(p),p.style.fontWeight="400",p.style.textShadow="0 0 2px black";{const _=()=>{let b="Raw";l.status==="Raw"?b="初始状态":l.status==="Creating"?b="正在创建":l.status==="Created"?b="创建完成":l.status==="Error"?b="创建失败":l.status==="Reconnecting"&&(b="重新连接"),f.innerText=`${b}(${l.status})`,p.innerText=`${l.statusLog}`,(l.status==="Creating"||l.status==="Reconnecting")&&(c.innerHTML=ya.defaultsSvg.loadingSvg),l.status==="Created"&&(c.innerHTML=ya.defaultsSvg.successSvg),l.status==="Error"&&(c.innerHTML=ya.defaultsSvg.warnSvg)};_();const S=this.dv(Se(l.statusLogChanged,l.statusChanged));this.d(S.don(_))}}update(){const o=255*Math.random()|0,a=255*Math.random()|0,l=255*Math.random()|0;this._div.style.background=`rgba(${o}, ${a}, ${l}, 0.8)`}}};this.d(e.containerChanged.don(()=>{t()}))}};h(ya,"defaultsSvg",{loadingSvg:xP,successSvg:TP,warnSvg:OP});let rg=ya;class DP extends U{constructor(e,t,n){super(),this._subContainer=e,this._overlayContainer=t,this._viewer=n;const i=this._subContainer,s=this._overlayContainer,o=this._viewer,a=()=>{const c=o.zIndex??"";i.style.zIndex=c,s.style.zIndex=c};a(),this.d(o.zIndexChanged.don(a));const l=()=>{i.style.display=o.show??!0?"block":"none"};l(),this.d(o.showChanged.don(l));const u=()=>{i.style.opacity=`${o.opacity??1}`};u(),this.d(o.opacityChanged.don(u))}}function Dh(r){let e=er(r,"_relativeContainer");return e||(e=document.createElement("div"),e.style.position="relative",e.style.width="100%",e.style.height="100%",e.style.padding="0",e.style.margin="0",r.appendChild(e),Ii(r,"_relativeContainer",e)),e}class NP extends U{constructor(t,n){super();h(this,"_subContainer",document.createElement("div"));h(this,"_overlayContainer",document.createElement("div"));h(this,"_containerStyleController");this._container=t,this._viewer=n,this._containerStyleController=this.dv(new DP(this._subContainer,this._overlayContainer,this._viewer));const{subContainer:i,overlayContainer:s}=this;i.tabIndex=-1,i.style.outline="none",i.style.width="100%",i.style.height="100%",i.onpointerdown=()=>i.focus(),s.style.position="relative",s.setAttribute("earthsdk3","earthsdk3-overlayContainer"),i.setAttribute("earthsdk3","earthsdk3-subContainer"),Dh(this._container).appendChild(i),this.d(()=>Dh(this._container).removeChild(i)),Dh(this._container).appendChild(s),this.d(()=>Dh(this._container).removeChild(s))}get subContainer(){return this._subContainer}get overlayContainer(){return this._overlayContainer}get containerStyleController(){return this._containerStyleController}get container(){return this._container}}class MP extends U{constructor(){super(...arguments);h(this,"registerObjsMap",new Map)}register(t,n){return this.registerObjsMap.has(t)&&console.warn(`register warn:${t}已经被注册,再次注册会覆盖。`),this.registerObjsMap.set(t,n),t}getViewerConstructor(t){const n=this.registerObjsMap.get(t);if(!n){console.warn(`未找到${t}类!`);return}return n}createViewer(t){const n=t.type;console.log(t);const i=this.getViewerConstructor(n);if(!i)throw new Error(`没有找到类型为${n}的Viewer构造器!`);return new i(t)}}class J_ extends U{constructor(e,t,n=!1,i=!1){if(super(),this._viewer=e,!t)throw new Error("ViewerCustomInteraction: container is null");const s=this.dv(ce.create(t,"pointerdown")),o=this.dv(ce.create(t,"pointermove")),a=this.dv(ce.create(t,"pointerup")),l=this.dv(ce.create(t,"pointerout")),u=this.dv(ce.create(t,"pointerover")),c=this.dv(new ud),d=this.dv(new Og),f=()=>{const g=this._viewer.hoverTime*1e3;d.delayTime=g};this.d(this._viewer.hoverTimeChanged.don(()=>{f()})),this.d(s.don(g=>c.pointerDown(g))),this.d(o.don(g=>c.pointerMove(g))),this.d(a.don(g=>c.pointerUp(g))),this.d(l.don(g=>c.pointerOut(g))),this.d(s.don(g=>d.pointerDown(g))),this.d(o.don(g=>d.pointerMove(g))),this.d(a.don(g=>d.pointerUp(g))),this.d(l.don(g=>d.pointerOut(g)));const{x:p,y:_}=t.getBoundingClientRect(),S=i?p:0,b=i?_:0;this.d(d.hoverEvent.don(g=>{const[y,E]=ba(g,n);this._viewer.hoverEvent.emit({screenPosition:[y+S,E+b],pointerEvent:g})})),this.d(c.clickEvent.don(g=>{const[y,E]=ba(g,n);this._viewer.clickEvent.emit({screenPosition:[y+S,E+b],pointerEvent:g})})),this.d(c.dbclickEvent.don(g=>{const[y,E]=ba(g,n);g.button===0&&this._viewer.dblclickEvent.emit({screenPosition:[y+S,E+b],pointerEvent:g})})),this.d(s.don(g=>{const[y,E]=ba(g,n);g.button===0&&this._viewer.pointerDownEvent.emit({screenPosition:[y+S,E+b],pointerEvent:g})})),this.d(a.don(g=>{const[y,E]=ba(g,n);g.button===0&&this._viewer.pointerUpEvent.emit({screenPosition:[y+S,E+b],pointerEvent:g})})),this.d(o.don(g=>{const[y,E]=mn(g,n);this._viewer.pointerMoveEvent.emit({screenPosition:[y+S,E+b],pointerEvent:g})})),this.d(u.don(g=>{const[y,E]=mn(g,n);this._viewer.pointerOverEvent.emit({screenPosition:[y+S,E+b],pointerEvent:g})})),this.d(l.don(g=>{const[y,E]=mn(g,n);this._viewer.pointerOutEvent.emit({screenPosition:[y+S,E+b],pointerEvent:g})}));const I=this.dv(ce.create(t,"keydown"));this.d(I.don(g=>this._viewer.keyDownEvent.emit(g)));const v=this.dv(ce.create(t,"keyup"));this.d(v.don(g=>this._viewer.keyUpEvent.emit(g)));const w=this.dv(ce.create(t,"wheel"));this.d(w.don(g=>this._viewer.wheelEvent.emit(g)))}}const Rs=class Rs extends U{constructor(t){super();h(this,"_forceRecreateEvent",this.dv(new N));h(this,"_container",this.dv(z(void 0)));h(this,"_containerSize",this.dv(z(void 0)));h(this,"_editingEvent",this.disposeVar(new N));h(this,"_esViewerExtensions",this.dv(new CP(this)));h(this,"_status",this.dv(z("Raw")));h(this,"_statusLog",this.dv(z("")));h(this,"_statusContainer",this.dv(new rg(this)));h(this,"_useCustomInteraction",this.dv(z(!0)));h(this,"_resetInteractionEvent",this.dv(Se(this.containerChanged,this._useCustomInteraction.changed,this._forceRecreateEvent)));h(this,"_interactionResetting",this.dv(new Ie(this._resetInteractionEvent,()=>{if(!(!this.container||!this._useCustomInteraction.value))return new J_(this,this.container)})));h(this,"_viewerChanged",this.dv(new N));h(this,"_cameraChanged",this.dv(new N));h(this,"_containerResetEvent",this.dv(Se(this.containerChanged,this._forceRecreateEvent)));h(this,"_containerResetting",this.dv(new Ie(this._containerResetEvent,()=>{if(this.container)return new NP(this.container,this)})));h(this,"_sceneObjectsMap",new Map);h(this,"_id");h(this,"_typeName");h(this,"_updateFuncReact",this.dv(z(void 0)));h(this,"_toDestroyFuncReact",this.dv(z(void 0)));h(this,"_statusInfo",Rs.defaults.statusInfo);h(this,"_navigationMode",this.dv(z("Map")));h(this,"_navigationEvent",this.disposeVar(new N));h(this,"_syncViewer",this.dv(z(void 0)));h(this,"_syncEventDon",this.dv(new Ie(this.syncViewerChanged,()=>{const t=this.syncViewer;if(t)return new IP(this,t)})));h(this,"_timeSyncdon",this.dv(new Ie(this.timeSyncChanged,()=>{if(this.timeSync)return new PP(this)})));h(this,"_hoverEvent",this.dv(new N));h(this,"_pointerOverEvent",this.dv(new N));h(this,"_pointerMoveEvent",this.dv(new N));h(this,"_pointerDownEvent",this.dv(new N));h(this,"_pointerUpEvent",this.dv(new N));h(this,"_pointerOutEvent",this.dv(new N));h(this,"_clickEvent",this.dv(new N));h(this,"_dblclickEvent",this.dv(new N));h(this,"_keyDownEvent",this.dv(new N));h(this,"_keyUpEvent",this.dv(new N));h(this,"_wheelEvent",this.dv(new N));h(this,"_actived",this.dv(z(!1)));this._id=t.id??Ca();const n=H_(t.container);if(n)this._container.value=ng(n),this._typeName=t.type,this._initName();else throw new Error("container is not defined");{const i=()=>{n&&(this.show??!0?n.style.display="block":n.style.display="none")};i(),this.d(this.showChanged.don(i))}{const i=this._sceneObjectsMap,s=()=>{for(let[a,l]of i.entries())if(!l&&a){const u=$o.context.createEngineObject(a,this);u&&i.set(a,u)}},o=()=>{for(let[a,l]of i.entries())l&&!l.isDestroyed()&&l.destroy(),i.set(a,void 0)};this.d(o),this.d(this.viewerChanged.don(a=>{o(),a&&s()}))}{const i=()=>{if(this.execOnceFuncStr)try{Function(`"use strict";return (${this.execOnceFuncStr})`)()(this)}catch(s){console.warn(`execOnceFuncStr不能转成函数!或者函数执行时错误!id: ${this.id} ${this.typeName} error: ${s}`)}};i(),this.d(this.execOnceFuncStrChanged.don(i))}{const i=()=>{if(this.updateFuncStr)try{this.updateFunc=Function(`"use strict";return (${this.updateFuncStr})`)()}catch(o){console.warn(`updateFuncStr不能转成函数!或者函数执行时错误!id: ${this.id} ${this.typeName} error: ${o}`)}};i(),this.d(this.updateFuncStrChanged.don(i));let s;this.d(()=>s&&s.destroy()),this.d(this.updateFuncChanged.don(()=>{s&&s.cancel(),this.updateFunc&&(s=s||Zl(),s.restart(void 0,o=>{this.updateFunc&&this.updateFunc(this,o)}))}))}{const i=()=>{try{this.toDestroyFunc=this.toDestroyFuncStr&&Function(`"use strict";return (${this.toDestroyFuncStr})`)()||void 0}catch(s){console.warn(`toDestroyFuncStr不能转成函数!或者函数执行时错误!id: ${this.id} ${this.typeName} error: ${s}`),this.toDestroyFunc=void 0}};i(),this.d(this.toDestroyFuncStrChanged.don(i)),this.d(this.toDestroyEvent.don(()=>{this.toDestroyFunc&&this.toDestroyFunc(this)}))}this.ad(new bP(this))}forceRecreate(){this._forceRecreateEvent.emit()}get container(){return this._container.value}set container(t){this._container.value=t}set containerOrId(t){if(typeof t=="string"){const n=document.getElementById(t);n&&n instanceof HTMLDivElement?this._container.value=ng(n):console.warn("containerOrId warn: !(container instanceof HTMLDivElement)")}else t instanceof HTMLDivElement?this._container.value=ng(t):console.warn("containerOrId warn: setting container failed!")}get containerChanged(){return this._container.changed}get containerSize(){return this._containerSize.value}set containerSize(t){this._containerSize.value=t}get containerSizeChanged(){return this._containerSize.changed}get editingEvent(){return this._editingEvent}get esViewerExtensions(){return this._esViewerExtensions}get status(){return this._status.value}get statusChanged(){return this._status.changed}setStatus(t){this._status.value=t}get statusLog(){return this._statusLog.value}get statusLogChanged(){return this._statusLog.changed}setStatusLog(t){this._statusLog.value=t}get useCustomInteraction(){return this._useCustomInteraction.value}set useCustomInteraction(t){this._useCustomInteraction.value=t}get viewerChanged(){return this._viewerChanged}get cameraChanged(){return this._cameraChanged}get containerResetEvent(){return this._containerResetEvent}get subContainer(){var t;return(t=this._containerResetting.obj)==null?void 0:t.subContainer}get subContainerChanged(){return this._containerResetting.objChanged}get overlayContainer(){var t;return(t=this._containerResetting.obj)==null?void 0:t.overlayContainer}get overlayContainerChanged(){return this._containerResetting.objChanged}get sceneObjectsMap(){return this._sceneObjectsMap}get sceneObjects(){return this._sceneObjectsMap.keys()}getEngineObject(t){return this.sceneObjectsMap.get(t)}add(...t){for(let n of t)if(!this.has(n)){lt.context.addSceneObject(n);const i=$o.context.createEngineObject(n,this);i&&this._sceneObjectsMap.set(n,i),n.viewerAttached.emit(this)}}delete(...t){for(let n of t)if(this.has(n)){const i=this._sceneObjectsMap.get(n);i&&i.destroy(),lt.context.deleteSceneObject(n),this._sceneObjectsMap.delete(n),n.viewerDetached.emit(this)}}disposableAdd(...t){return this.add(...t),()=>this.delete(...t)}disAdd(...t){return this.disposableAdd(...t)}has(t){return this._sceneObjectsMap.has(t)}clearAllSceneObjects(){for(let t of this.sceneObjects)this.delete(t)}get id(){return this._id}set id(t){console.warn("ESViewer id is readonly")}get typeName(){return this._typeName}_initName(){this.name=`${this.typeName}_${(""+this.id).slice(-4)}`}get defaultProps(){return Rs.createDefaultProps()}get completeJson(){return this._getJson(!1)}_getJson(t=!0){const n={id:this.id,type:this.typeName};for(let i of Object.keys(this.defaultProps))if(t){let s,o=this.defaultProps[i];o instanceof Ge?s=o.equals(this[i]):s=o===this[i],s||(n[i]=this[i])}else n[i]=this[i];return n}_setJson(t,n,i){if(!(t instanceof Object)||t.type&&t.type!==this.typeName){console.error(`value.type && value.type${t.type} !== this.typeName${this.typeName}`);return}t.id&&t.id!==this.id&&console.warn(`value.id === undefined || value.id${t.id} !== this.id(${this.id})`);const s=n||[];s.push("id","type");const o=Object.keys(this.defaultProps).filter(a=>!s.includes(a));for(let a of o)if(a in t)this[a]=t[a]===null?void 0:t[a];else if(!(i??!1)){let l=this.defaultProps[a];l instanceof Ge&&(l=l.value),this[a]=l}}get json(){return this._getJson()}set json(t){this._setJson(t,["devTags"])}get updateFunc(){return this._updateFuncReact.value}set updateFunc(t){this._updateFuncReact.value=t}get updateFuncChanged(){return this._updateFuncReact.changed}get toDestroyFunc(){return this._toDestroyFuncReact.value}set toDestroyFunc(t){this._toDestroyFuncReact.value=t}get toDestroyFuncChanged(){return this._toDestroyFuncReact.changed}get navigationMode(){return this._navigationMode.value}get navigationModeChanged(){return this._navigationMode.changed}getNavigationMode(){return this._navigationMode.value}get navigationEvent(){return this._navigationEvent}getEngineType(){return this._typeName}get syncViewer(){return this._syncViewer.value}set syncViewer(t){this._syncViewer.value=t}get syncViewerChanged(){return this._syncViewer.changed}syncOtherViewer(t){t&&t.syncViewer&&(t.syncViewer=void 0),t===this?this._syncViewer.value=void 0:this._syncViewer.value=t}setCurrentTime(t){try{this.currentTime=typeof t=="string"?Date.parse(t):t}catch(n){console.warn(`时间格式不正确! value: ${t} error: ${n}`)}}async getVersion(){return globalThis.g_XE3CopyRights??{}}get hoverEvent(){return this._hoverEvent}get pointerOverEvent(){return this._pointerOverEvent}get pointerMoveEvent(){return this._pointerMoveEvent}get pointerDownEvent(){return this._pointerDownEvent}get pointerUpEvent(){return this._pointerUpEvent}get pointerOutEvent(){return this._pointerOutEvent}get clickEvent(){return this._clickEvent}get dblclickEvent(){return this._dblclickEvent}get keyDownEvent(){return this._keyDownEvent}get keyUpEvent(){return this._keyUpEvent}get wheelEvent(){return this._wheelEvent}get actived(){return this._actived.value}set actived(t){this._actived.value=t}get activedChanged(){return this._actived.changed}getESProperties(){return{defaultMenu:"general",basic:[],general:[],dataSource:[],location:[],coordinate:[],style:[],more:[]}}async getCurrentRectangle(){var t;try{const n=(t=this.container)==null?void 0:t.getBoundingClientRect();if(!n)return;const{width:i,height:s}=n,o=await this.quickPickPosition([0,0]),a=await this.quickPickPosition([i,s]);return!o||!a?void 0:[o[0],a[1],a[0],o[1]]}catch(n){console.error(n);return}}};h(Rs,"context",new MP),h(Rs,"register",Rs.context.register.bind(Rs.context)),h(Rs,"defaults",{show:!0,debug:!1,statusInfo:{fps:0,position:[0,0,0],rotation:[0,0,0],length:0},terrainShader:{slope:{show:!1},aspect:{show:!1},elevationRamp:{show:!1,minHeight:-414,maxHeight:8777,color:[]},elevationContour:{show:!1,color:[1,0,0,1],spacing:150,width:2}},globeShow:!0,splitPosition:0,cameraMovableRegion:[0,0,0,0,0,0],depthTestAgainstTerrain:!0,terrainOpacity:1});let vi=Rs;(r=>{r.createBaseProps=()=>({name:"未命名场景对象",extras:gt(void 0),devTags:Xt(void 0),debug:void 0,show:void 0,opacity:void 0,zIndex:void 0,useDefaultStatusDiv:!0,execOnceFuncStr:void 0,updateFuncStr:void 0,toDestroyFuncStr:void 0}),r.createCommonProps=()=>({globeShow:!0,ionAccessToken:"",lonLatFormat:"DECIMAL_DEGREE",fov:60,textAvoidance:!1,flyToBoundingSize:1024,hoverTime:2,currentTime:Date.now(),simulationTime:Date.now(),timeSync:!1,rain:0,snow:0,cloud:0,fog:0,depthOfField:0,atmosphere:!0,editingPointSize:void 0,editingPointColor:Xt(void 0),editingAuxiliaryPointColor:Xt(void 0),editingLineWidth:void 0,editingLineColor:Xt(void 0),editingAxisSize:void 0,editingAuxiliaryPointSize:void 0,editingHeightOffset:0,editingLineShow:!0,editingEventListening:!0,terrainShader:r.defaults.terrainShader,splitPosition:z(void 0),rollerShutter:!1,cameraMovableRegion:Xt(void 0),depthTestAgainstTerrain:!0,terrainOpacity:1,sceneGlobeBaseColor:tt([1,1,1,1]),sceneBackgroundColor:tt([0,0,0,0])}),r.createDefaultProps=()=>({...(0,r.createBaseProps)(),...(0,r.createCommonProps)()})})(vi||(vi={})),Fs(vi.prototype,vi.createDefaultProps);function $_(r,e){const t=r._lastCameraInfo;if(t){const n=e.viewerChanged.don(i=>{if(!i||!t)return;const{position:s,rotation:o}=t;e.flyIn(s,o,0),r._lastCameraInfo=void 0,n()})}}const RP=r=>{const e=vi.createCommonProps(),t={};try{Object.keys(e).forEach(n=>{t[n]=r[n]})}catch(n){console.warn(n)}return t},K_=(r,e)=>{const t=vi.createCommonProps();try{Object.keys(t).forEach(n=>{r[n]=e[n]})}catch(n){console.warn(n)}};class LP extends U{constructor(t){super();h(this,"_viewersChanged",this.disposeVar(new N));h(this,"_viewers",new Set);h(this,"_viewersToChange",this.dv(new N));this._sceneObjectsManager=t,(async()=>{for(let n of this.viewers){const i=this._sceneObjectsManager.sceneObjects;for(const s of i)await this.addSceneObject(s,n)}this.d(()=>{const n=this._sceneObjectsManager.sceneObjects;for(const i of this.viewers)i.delete(...n),this.destroyViewer(i);this._viewers.clear()}),this.d(this._sceneObjectsManager.sceneObjectsToChange.don(async(n,i)=>{for(let s of this.viewers){n.forEach(o=>{this.deleteSceneObject(o,s)});for(let o of i)await this.addSceneObject(o,s)}if(i.length>0)for(let s of i)s.d(s.devTagsChanged.don(async()=>{for(let o of this.viewers){if(o.has(s)&&!ou(o.devTags,s.devTags)){o.delete(s);continue}await this.addSceneObject(s,o)}})),s.ad(s.reloadEvent.don(async()=>{for(let o of this.viewers)o.has(s)&&(o.delete(s),await this.addSceneObject(s,o))}))})),this.d(this.viewersChanged.don(async(n,i)=>{const s=this._sceneObjectsManager.sceneObjects;n.forEach(o=>{for(let a of s)this.deleteSceneObject(a,o)});for(let o of i)for(let a of s)await this.addSceneObject(a,o);i.length>0&&i.forEach(o=>{o.d(o.devTagsChanged.don(async()=>{o.clearAllSceneObjects();const a=this._sceneObjectsManager.sceneObjects;for(let l of a)console.log("viewersChanged",o.devTags,l.devTags,ou(o.devTags,l.devTags)),await this.addSceneObject(l,o)}))})}))})()}get viewersChanged(){return this._viewersChanged}get viewers(){return[...this._viewers]}getViewers(){return[...this._viewers]}get viewersToChange(){return this._viewersToChange}createViewer(t){const n=vi.context.createViewer(t);return this._viewers.add(n),this._viewersChanged.emit([],[n]),n}destroyViewer(t){return t.isDestroyed()?!0:this._viewers.has(t)?(this._viewers.delete(t),this._viewersChanged.emit([t],[]),t.destroy(),t.isDestroyed()):!1}async addSceneObject(t,n){ou(n.devTags,t.devTags)&&(n.has(t)?console.warn(`${n.typeName}中已存${t.typeName},检查逻辑是否有问题!`):n.add(t))}deleteSceneObject(t,n){ou(n.devTags,t.devTags)&&(n.has(t)?n.delete(t):console.warn(`${n.typeName}中不存在${t.typeName},检查逻辑是否有问题!`))}}class Nh extends U{constructor(...t){super();h(this,"_drgm",this.dv(new _m));h(this,"_sobjm",this.dv(new wP));h(this,"_vrm",this.dv(new LP(this._sobjm)));h(this,"_sceneObjectEditingManager",this.disposeVar(new _P));h(this,"_activeViewer",this.dv(z(void 0)));h(this,"_syncOtherViewersToActived",this.dv(z(!1)));h(this,"_cmrvm",this.createSceneObjectFromClass(dh));h(this,"_cmrvmdon",this.d(()=>this._cmrvm&&this.destroySceneObject(this._cmrvm)));h(this,"_asset",{type:"ESObjectsManager",version:"0.1.0",createdTime:"",modifiedTime:"",name:"未命名项目"});h(this,"_sceneTree",this.dv(new Bu("default",this.dragstartDataMananger,24,this)));h(this,"_sceneTreeMap",new Map);h(this,"_viewerCreatedEvent",this.dv(new N));h(this,"_lastCameraInfo");h(this,"_lastActiveViewerJson");h(this,"_syncEventDonFunc",this.d(Ne([this.activeViewerChanged,this.syncOtherViewersToActivedChanged],()=>{const t=this.syncOtherViewersToActived;this.viewers.forEach(n=>{t?n.syncOtherViewer(this.activeViewer):n.syncOtherViewer(void 0)})})));h(this,"_player",this.createSceneObjectFromClass(cl));h(this,"_playerdon",this.d(()=>this._player&&this.destroySceneObject(this._player)));h(this,"_esPlyarAndPathTime",this.dv(new pP(this)));h(this,"_pathAnimationManager",this.dv(new mP(this)))}getBrowserEnv(){return globalThis.ue&&globalThis.ue.es&&globalThis.ue.esinput?"ESWebView":"Browser"}static get envs(){return lt.context.environmentVariables}getSceneObjectById(t){return lt.getSceneObjectById(t)}getSceneObject(t){return lt.getSceneObject(t)}get $refs(){return lt.$refs}get dragstartDataMananger(){return this._drgm}get sceneObjectsManager(){return this._sobjm}get viewers(){return this._vrm.viewers}getViewers(){return this._vrm.getViewers()}get sceneObjectEditingManager(){return this._sceneObjectEditingManager}get activeViewer(){return this._activeViewer.value}set activeViewer(t){this._activeViewer.value=t,this.viewers.forEach(n=>n.actived=n===t)}get activeViewerChanged(){return this._activeViewer.changed}get syncOtherViewersToActived(){return this._syncOtherViewersToActived.value}set syncOtherViewersToActived(t){this._syncOtherViewersToActived.value=t}get syncOtherViewersToActivedChanged(){return this._syncOtherViewersToActived.changed}get cameraViewsManager(){return this._cmrvm}get completeJson(){var d;const t=this._asset.createdTime||new Date().toISOString(),n=new Date().toISOString(),i=this._asset.name||"未命名项目",o={type:"ESObjectsManager",version:this._asset.version||"0.1.0",createdTime:t,modifiedTime:n,name:i},a=this.sceneTree.completeJson,l=this._cmrvm.views,u=[...this.viewers].map(f=>f.completeJson),c=(d=this.activeViewer)==null?void 0:d.getCurrentCameraInfo();return{asset:o,viewers:u,sceneTree:a,viewCollection:l,lastView:c}}get json(){var d;const t=this._asset.createdTime||new Date().toISOString(),n=new Date().toISOString(),i=this._asset.name||"未命名项目",o={type:"ESObjectsManager",version:this._asset.version||"0.1.0",createdTime:t,modifiedTime:n,name:i},a=this.sceneTree.json,l=this._cmrvm.views,u=[...this.viewers].map(f=>f.json),c=(d=this.activeViewer)==null?void 0:d.getCurrentCameraInfo();return{asset:o,viewers:u,sceneTree:a,viewCollection:l,lastView:c}}set json(t){try{if(!t.asset)return;if(!t.asset.type||t.asset.type!=="ESObjectsManager"){console.warn("json装配失败! asset.type 不存在或者不是'ESObjectsManager'");return}if(this._asset.createdTime=t.asset&&t.asset.createdTime||new Date().toISOString(),this._asset.modifiedTime=t.asset&&t.asset.modifiedTime||"",this._asset.name=t.asset&&t.asset.name||"未命名项目",this._asset.version=t.asset&&t.asset.version||"0.1.0",t.sceneTree&&(this.sceneTree.json=t.sceneTree),t.viewCollection&&(this._cmrvm.views=t.viewCollection),!t.viewers||!Array.isArray(t.viewers)){console.warn("viewers is not an array or does not exist !");return}if(this.viewers.length===0||t.viewers.length===0){console.warn("viewers is empty !");return}this.viewers.forEach(n=>{const i=t.viewers.find(s=>s.id===n.id);i&&(n.json=i)})}catch(n){console.error(`ESObjectsManager解析json数据时发生错误! error: ${n}`)}}get sceneTree(){return this._sceneTree}get jsonLoadingEvent(){return this._sceneTree.jsonLoadingEvent}getSceneTrees(){return[...this._sceneTreeMap.values()]}getSceneTree(t="default"){if(t==="default")return this._sceneTree;if(!this._sceneTreeMap.has(t)){console.warn(`id为${t}的SceneTree不存在!`);return}return this._sceneTreeMap.get(t)}createSceneTree(t,n=24){if(this._sceneTreeMap.has(t)||t==="default")console.warn(`id为${t}的SceneTree已存在!`);else{const i=this.dv(new Bu(t,this.dragstartDataMananger,n,this));this._sceneTreeMap.set(t,i)}return this.getSceneTree(t)}get viewerCreatedEvent(){return this._viewerCreatedEvent}createViewer(t){const n=this._vrm.createViewer(t);this.activeViewer||(this.activeViewer=n);const i=this.d(n.viewerChanged.don(s=>{s&&(this._viewerCreatedEvent.emit(n),i())}));return n}destroyViewer(t){return this._activeViewer.value===t&&(this._activeViewer.value=void 0),this._vrm.destroyViewer(t)}switchViewer(t,n=!0,i=!0,s=!0){var u,c;this.activeViewer&&this.activeViewer.getNavigationMode()!=="Map"&&this.activeViewer.changeToMap(),!this._lastCameraInfo&&n&&(this._lastCameraInfo=(u=this.activeViewer)==null?void 0:u.getCurrentCameraInfo(),((c=this.activeViewer)==null?void 0:c.typeName)=="ESOlViewer"&&this._lastCameraInfo&&(this._lastCameraInfo.rotation[1]=-90)),!this._lastActiveViewerJson&&i&&(this._lastActiveViewerJson=this.activeViewer?RP(this.activeViewer):void 0),s&&this.activeViewer&&this.destroyViewer(this.activeViewer);const o=t.id,a=o?[...this.getViewers()].find(d=>d.id===o):[...this.getViewers()].find(d=>d.typeName===t.type&&!d.container);if(a)if(o&&a.typeName!==t.type)console.warn(`id为${o}的viewer的typeName和option.type${t.type}不相同!,虽然id一致但是typeName不同,所以会销毁并创建新的viewer`),this.destroyViewer(a);else return console.log("ESViewer exists, will be used"),n&&$_(this,a),i&&this._lastActiveViewerJson&&(K_(a,this._lastActiveViewerJson),this._lastActiveViewerJson=void 0),a.container===H_(t.container)?(a.containerOrId=t.container,a.forceRecreate()):a.containerOrId=t.container,this.activeViewer=a,a;console.log("No ESViewer exists, will be created");const l=this.createViewer(t);return console.log(t),console.log(this),n&&$_(this,l),i&&this._lastActiveViewerJson&&(K_(l,this._lastActiveViewerJson),this._lastActiveViewerJson=void 0),this.activeViewer=l,l}switchToCesiumViewer(...t){if(typeof t[0]=="object"&&!(t[0]instanceof HTMLDivElement)){const{container:n,viewSync:i,attributeSync:s,destroy:o,id:a}=t[0];return this.switchViewer({type:"ESCesiumViewer",container:n,id:a},i??!0,s??!0,o??!0)}else if(typeof t[0]=="string"||t[0]instanceof HTMLDivElement){const n={container:t[0],viewSync:t[1]??!0,attributeSync:t[2]??!0,destroy:t[3]??!0,id:t[4]},{container:i,viewSync:s,attributeSync:o,destroy:a,id:l}=n;return this.switchViewer({type:"ESCesiumViewer",container:i,id:l},s,o,a)}}switchToUEViewer(...t){let n,i={viewSync:!0,attributeSync:!0,destroy:!0};if(typeof t[0]=="object"&&!(t[0]instanceof HTMLDivElement)&&t[0].hasOwnProperty("uri")){const{container:l,uri:u,app:c,token:d,viewSync:f,attributeSync:p,destroy:_,id:S,silentTime:b}=t[0];n={type:"ESUeViewer",container:l,id:S,options:{uri:u,app:c,token:d,silentTime:b}},i={viewSync:f??!0,attributeSync:p??!0,destroy:_??!0}}else if(typeof t[0]=="object"&&!(t[0]instanceof HTMLDivElement)&&t[0].hasOwnProperty("ws")){const{container:l,ws:u,esmsg:c,viewSync:d,attributeSync:f,id:p,destroy:_,silentTime:S}=t[0];n={type:"ESUeViewer",container:l,id:p,options:{ws:u,esmsg:c,silentTime:S}},i={viewSync:d??!0,attributeSync:f??!0,destroy:_??!0}}else if(typeof t[0]=="object"&&!(t[0]instanceof HTMLDivElement)&&t[0].hasOwnProperty("project")){const{container:l,project:u,baseUrl:c,viewSync:d,attributeSync:f,id:p,destroy:_}=t[0];n={type:"ESUeViewer",container:l,id:p,options:{project:u,baseUrl:c}},i={viewSync:d??!0,attributeSync:f??!0,destroy:_??!0}}else(typeof t[0]=="string"||t[0]instanceof HTMLDivElement)&&(typeof t[1]=="string"&&t[1].startsWith("ws")?(n={type:"ESUeViewer",container:t[0],id:t[6],options:{ws:t[1],esmsg:t[2]??void 0,silentTime:t[7]??void 0}},i={viewSync:t[3]??!0,attributeSync:t[4]??!0,destroy:t[5]??!0}):typeof t[1]=="string"&&t[1].startsWith("http")?(n={type:"ESUeViewer",container:t[0],id:t[7],options:{uri:t[1],app:t[2],token:t[3]??void 0,silentTime:t[8]??void 0}},i={viewSync:t[4]??!0,attributeSync:t[5]??!0,destroy:t[6]??!0}):(n={type:"ESUeViewer",container:t[0],id:t[6],options:{project:t[1],baseUrl:t[2]??void 0}},i={viewSync:t[3]??!0,attributeSync:t[4]??!0,destroy:t[5]??!0}));if(!n)throw new Error("参数错误");const{viewSync:s,attributeSync:o,destroy:a}=i;return this.switchViewer(n,s,o,a)}createCesiumViewer(...t){let n;if(typeof t[0]=="object"&&!(t[0]instanceof HTMLDivElement)?n={...t[0],type:"ESCesiumViewer"}:(typeof t[0]=="string"||t[0]instanceof HTMLDivElement)&&(n={container:t[0],options:t[1]??void 0,id:t[2]??void 0,type:"ESCesiumViewer"}),!n)throw new Error("参数错误");return this.createViewer(n)}createOpenLayersViewer(...t){let n;if(typeof t[0]=="object"&&!(t[0]instanceof HTMLDivElement)?n={...t[0],type:"ESOlViewer"}:(typeof t[0]=="string"||t[0]instanceof HTMLDivElement)&&(n={container:t[0],options:t[1]??void 0,id:t[2]??void 0,type:"ESOlViewer"}),!n)throw new Error("参数错误");return this.createViewer(n)}createUeViewer(...t){let n;if(typeof t[0]=="object"&&!(t[0]instanceof HTMLDivElement)?n={...t[0],type:"ESUeViewer"}:(typeof t[0]=="string"||t[0]instanceof HTMLDivElement)&&(typeof t[1]=="string"&&t[1].startsWith("ws")?n={type:"ESUeViewer",container:t[0],id:t[3]??void 0,options:{ws:t[1],esmsg:t[2]??void 0,silentTime:t[4]??void 0}}:typeof t[1]=="string"&&t[1].startsWith("http")?n={type:"ESUeViewer",container:t[0],id:t[4]??void 0,options:{uri:t[1],app:t[2],token:t[3]??void 0,silentTime:t[5]??void 0}}:n={type:"ESUeViewer",container:t[0],id:t[3]??void 0,options:{project:t[1],baseUrl:t[2]??void 0}}),!n)throw new Error("参数错误");return this.createViewer(n)}createSceneObject(t,n){return this._sobjm.createSceneObject(t,n)}createSceneObjectFromUrl(t,n){return this._sobjm.createSceneObjectFromUrl(t,n)}createSceneObjectFromClass(t,n){return this._sobjm.createSceneObjectFromClass(t,n)}createSceneObjectFromJson(t){return this._sobjm.createSceneObjectFromJson(t)}destroySceneObject(t){const n=this._sobjm.deleteSceneObject(t);return t.destroy(),n}destroyAllSceneObjects(){const t=[...this._sobjm.sceneObjects];for(let n of t)n!=this._player&&n!=this._cmrvm&&this.destroySceneObject(n)}get player(){return this._player}get esPlyarAndPathTime(){return this._esPlyarAndPathTime}get pathAnimationManager(){return this._pathAnimationManager}}h(Nh,"getSceneObjById",lt.context.getSceneObjectById.bind(lt.context)),h(Nh,"getEnv",lt.context.getEnv.bind(lt.context)),h(Nh,"setEnv",lt.context.setEnv.bind(lt.context)),m.BooleanProperty=H,m.BorderedPosFloatDiv=Wg,m.BoxPicker=nd,m.CancelError=Jr,m.CancelsManager=sd,m.CanvasImagePoi=vw,m.CanvasPoi=cd,m.CanvasPointPoi=yw,m.CanvasPrimitive=Dg,m.CanvasPrimitivesContext=_w,m.ColorProperty=St,m.ColorStops=uP,m.ComplexImage=Ju,m.CursorFloatDiv=bw,m.CursorInfo=Pw,m.DashPatternProperty=mm,m.DateProperty=Oi,m.DatesProperty=Ed,m.Debouncing=X0,m.DebouncingDeprecated=Qh,m.DebouncingWithStartValues=Y0,m.Destroyable=U,m.DivBoxPicker=W0,m.DivPoi=zg,m.DivPointerClick=pw,m.DivideProperty=dt,m.DomElementEvent=ce,m.DoublyLinkedList=fg,m.DragStartDataManager=_m,m.ES3DTileset=mr,m.ESAlarm=Df,m.ESApertureEffect=Nf,m.ESAreaMeasurement=Mf,m.ESAttackArrow=tg,m.ESBlastParticleSystem=Rf,m.ESBoxClipping=Lf,m.ESCameraView=ch,m.ESCameraViewCollection=dh,m.ESCameraVisibleRange=Ff,m.ESCar=fh,m.ESCityBasePoint=Fp,m.ESClassification=ph,m.ESClippingPlane=Af,m.ESCustomDiv=gh,m.ESCylinder=Jo,m.ESCzml=kp,m.ESDataMesh=kf,m.ESDatasmithRuntimeModel=mp,m.ESDirectionMeasurement=op,m.ESDistanceMeasurement=Vf,m.ESDynamicWater=vp,m.ESEntityCluster=Mp,m.ESExcavate=zu,m.ESFeatureLayer=Jp,m.ESFireParticleSystem=mh,m.ESFireWall=Gf,m.ESForestTileset=jf,m.ESFountainParticleSystem=Sh,m.ESGaussianSplatting=zp,m.ESGeoBezierSpline=Rp,m.ESGeoDiv=Bf,m.ESGeoDivTextPoi=Lp,m.ESGeoExtrudedPolygon=Yo,m.ESGeoJson=Wu,m.ESGeoLineString=fn,m.ESGeoPoints=Yu,m.ESGeoPolygon=Bt,m.ESGeoPolygonWithFire=Uf,m.ESGeoRectangle=Wf,m.ESGeoVector=Ct,m.ESGeoWater=yp,m.ESGltfModel=qi,m.ESGltfModelEditing=Zp,m.ESHeatMap=xh,m.ESHeightLimitAnalysis=Np,m.ESHeightMeasurement=lp,m.ESHole=Pp,m.ESHuman=vr,m.ESHumanFountain=bp,m.ESHumanPoi=Sp,m.ESHumans=Qp,m.ESImageLabel=vh,m.ESImageryLayer=Uu,m.ESJArrowModeArray=bd,m.ESJClassificationTypeArray=Sd,m.ESJEditingMode=Z,m.ESJLonLatFormat=ym,m.ESJPickedResult=Yw,m.ESLabel=gr,m.ESLandSlide=Up,m.ESLevelRuntimeModel=_p,m.ESLocalCircle=up,m.ESLocalPolygon=Hu,m.ESLocalPolygonZ=cp,m.ESLocalRectangle=hp,m.ESLocalSkyBox=qf,m.ESLocalVector=al,m.ESLocalVector2D=Ps,m.ESLocationMeasurement=Xf,m.ESMCPClient=fP,m.ESMVTLayer=$p,m.ESMediaLayer=Kp,m.ESMsTileset=Tp,m.ESNavigator=Vp,m.ESObjectWithLocation=it,m.ESObjectsManager=Nh,m.ESParticleSystemPrimitive=yh,m.ESPath=hl,m.ESPathImpl=io,m.ESPipeFence=Eh,m.ESPipeline=wp,m.ESPipeserTileset=dp,m.ESPit=ul,m.ESPlayer=cl,m.ESPoi2D=Gu,m.ESPoi3D=Yf,m.ESPoiTileset=Op,m.ESPolygonFence=Ch,m.ESPolygonFlattenedPlane=Jf,m.ESPolygonWithHole=pp,m.ESPolygonsFlattenedPlane=$f,m.ESRectangle=fp,m.ESRtsFeatureEditing=xp,m.ESRtsTileset=Ip,m.ESScale=Dp,m.ESSceneObject=lt,m.ESSceneObjectWithId=xm,m.ESSeparateFoliage=Kf,m.ESSignalInterference=eg,m.ESSkylineAnalysis=Wp,m.ESSquadCombatArrow=zf,m.ESStaticMesh=Gp,m.ESSubmergingAnalysis=Zf,m.ESSunshineAnalysis=Qf,m.ESSurfaceAreaMeasurement=gp,m.ESTerrainLayer=tp,m.ESTerrainLayerEditing=Xu,m.ESTerrainLayerEditingBrushEarseFalloff=T_,m.ESTerrainLayerEditingFlattenMode=I_,m.ESTerrainLayerEditingFlattenPick=x_,m.ESTestObject=Of,m.ESTextLabel=ll,m.ESUEWidget=ep,m.ESUnrealActor=np,m.ESVideoFusion=rp,m.ESViewShed=ip,m.ESViewer=vi,m.ESViewerStatusBar=jp,m.ESViewerStatusBarScale=Bp,m.ESVisibilityAnalysis=Ep,m.ESVisualObject=kt,m.ESVolumeMeasurement=Cp,m.ESWidget=sp,m.EngineObject=$o,m.EnumProperty=st,m.EvalStringProperty=ls,m.Event=N,m.EventFromArrayUpdating=R0,m.EventListenerHandler=jh,m.Fetching=j0,m.FloatDiv=fd,m.FlvJsLoading=Oh,m.FlvProcessing=j_,m.GetSetProperty=Cd,m.Gif=dm,m.GifPlayer=hm,m.GifProcessing=fm,m.HasOwner=D0,m.HlsJsLoading=Th,m.HlsProcessing=V_,m.IFrameBorderedPosFloatDiv=Cw,m.ImageProcessing=em,m.IntervalDeprecated=ed,m.JsonArrayProperty=ge,m.JsonProperty=ft,m.ListenerPipe=Vh,m.LocalFileServer=Qg,m.LocalRootDir=Zg,m.LongStringProperty=mc,m.MethodProperty=ct,m.NextAnimateFrameEvent=oc,m.NextAnimateFrameWeakEvent=pg,m.NextMicroTaskEvent=Hh,m.NextMicroTaskWeakEvent=E0,m.Number2Property=Me,m.Number3Property=He,m.Number4Property=Sr,m.NumberProperty=M,m.NumberSliderProperty=Re,m.ObjPool=tc,m.ObjResetting=Tw,m.ObjResettingWithEvent=Ie,m.ObservableArray=$l,m.ObservableSet=gc,m.PickColorMananger=jg,m.PickedInfo=Xw,m.Player=$r,m.PlayerProperty=vc,m.PointerClick=ud,m.PointerClickDeprecated=bg,m.PointerHover=Og,m.PointerHoverDeprecated=gw,m.PosFloatDiv=md,m.PositionProperty=Di,m.Processing=We,m.Property=Vs,m.ReactVarProperty=Dn,m.ReactiveVariable=Ge,m.RotationProperty=su,m.SceneObjectFromId=xd,m.SceneTree=Bu,m.SceneTreeContextMenu=Wy,m.SceneTreeItem=zn,m.SceneTreeItemDragDrop=Gy,m.SmartListenerHandler=Wl,m.SmartListenerPipe=h0,m.SmoothMoveController=sb,m.StringProperty=ut,m.Throttling=dw,m.ThrottlingWithStartValues=fw,m.TimingDeprecated=Cg,m.ToolTipDiv=Sw,m.Transition=tu,m.TransitionDeprecated=U0,m.Tree=Po,m.TreeItem=iu,m.TreeItemDragDrop=wm,m.UiTree=Yg,m.UiTreeObject=Xg,m.VideoProcessing=im,m.ViewPlayerProperty=vm,m.ViewerCustomInteraction=J_,m.Watcher=au,m.WatcherTools=Tm,m.WithUndefinedProperty=wd,m.XrPlayer=fc,m.Xyzw2Ns=uc,m._getFeatureProperty=y_,m._getLayerConfig=g_,m._getport=v_,m._saveLayerConfig=m_,m.addTreesCallFunc=t_,m.animateFrame=ic,m.apis=Ih,m.ary2Ns=V0,m.asyncFuncToCancelablePromise=Z0,m.bind=et,m.bindCustomEditing=Sm,m.bindu=_0,m.booleanPointInPolygon=fE,m.buildFeatureTilesetUrl=p_,m.buildInfoUrl=Db,m.buildTilesetUrl=f_,m.calcArrowPoints=Tf,m.canMoveToTreeItem=ru,m.canMoveToTreeItems=Hg,m.cancelFuncToCancelablePromise=K0,m.cancelPromise=rd,m.cancelableFetch=ad,m.cancelableFetchDeprecated=Eg,m.cancelableFetchWithProgress=tw,m.cartesianDistance=Vy,m.clamp=cc,m.clamp0_360=Oa,m.clampN180_180=Cm,m.complexImageTypes=rm,m.createAnimateFrame=Zl,m.createAnimateFrameWithStartValues=Ta,m.createBottomTriangleElement=Gg,m.createCancelablePromise=xa,m.createCloseDiv=Ug,m.createEventsCallFunc=Ne,m.createFetching=ew,m.createFetchingWithStartValues=nw,m.createGuid=Ca,m.createInterval=aw,m.createIntervalWithStartValues=lw,m.createNextAnimateFrame=rw,m.createNextAnimateFrameEvent=Se,m.createNextAnimateFrameEventCallFunc=S0,m.createNextAnimateFrameWeakEvent=b0,m.createNextAnimateFrameWithStartValues=iw,m.createNextMicroTask=sw,m.createNextMicroTaskEvent=w0,m.createNextMicroTaskWeakEvent=C0,m.createNextMicroTaskWithStartValues=ow,m.createNumbers=lc,m.createProcessingFromAsyncFunc=nr,m.createProcessingFromAsyncFuncWithStartValues=Q0,m.createProcessingFromPromiseCreateFunc=dc,m.createProcessingFromPromiseCreateFuncWithStartValues=od,m.createSleeping=uw,m.createSleepingWithStartValues=cw,m.createStartFuncFromAsyncFunc=Kl,m.createTimeout=Ig,m.createTimeoutWithStartValues=xg,m.cutDownTreesCallFunc=r_,m.czmPixelFormats=nm,m.data=xb,m.dataMd=Tb,m.debounce=rc,m.defaultGetLocalFilePath=Ow,m.defaultInitSceneObjectOnCreatingFunc=$w,m.defaultLight122FromEnvironmentMapManager=xf,m.defaultLoadFuncDocStr=l_,m.defaultLoadFuncStr=ap,m.defaultLocalFileServer=tm,m.defaultStartUpdateFunc=ac,m.defaultUpdateSceneObjectOnPickingFunc=Jw,m.defineReactiveProp=td,m.destroyObject=ug,m.diffGeoJson=iE,m.downloadLink=T0,m.drawBubble=So,m.drawPoint=mw,m.drawRoundRectPath=Ng,m.drawText=Mg,m.drawTextBlock=hd,m.engineObjectCreatedUpdate=By,m.equalsN3=ah,m.every=Xh,m.extendClassProps=Fs,m.fetchArrayBuffer=M0,m.fetchImage=yg,m.forEach=xi,m.forEachWithBreak=qh,m.geoAlong=vE,m.geoArea=Fd,m.geoBuffer=Ly,m.geoCenterOfMass=FE,m.geoDestination=Vd,m.geoDifference=Fy,m.geoDistance=Ic,m.geoHeading=hu,m.geoIntersect=My,m.geoLineIntersect=qE,m.geoNearestPointOnLine=$E,m.geoPointToLineDistance=tC,m.geoPolygonFromCircle=Ay,m.geoPolygonOverlap=Sf,m.geoPolylineToBezierSpline=ol,m.geoRhumbDestination=rC,m.geoRhumbDistance=iv,m.geoRhumbHeading=sC,m.geoUnion=Ry,m.getCameraTools=z_,m.getColorHexStr=nu,m.getCompleteReactParams=nc,m.getDefaultValue=tE,m.getDistancesFromPositions=bs,m.getDomEventCurrentTargetPos=mn,m.getDrawRect=Co,m.getESMCPTools=G_,m.getElementBounds=rE,m.getErrorResult=ue,m.getEventFromPromise=q0,m.getEventPosInCurrentTarget=ba,m.getExtProp=er,m.getFileArrayBuffer=Kg,m.getFileJson=$g,m.getFileText=vd,m.getFloatDivPool=gd,m.getGeoBoundingSphereFromPositions=ky,m.getIterator=ql,m.getMidpoint=YE,m.getMinMaxCorner=oh,m.getMinMaxPosition=N0,m.getPromiseCancel=Pa,m.getPromiseFromEvent=H0,m.getPromiseFromProcessing=ld,m.getReactFuncs=Gl,m.getRtsServicePrefix=Xo,m.getSceneObjectTools=U_,m.getSceneObjectTreeItem=Kw,m.getSubEntriesFromDir=Jg,m.getSuccessResult=mi,m.getTypeFromImageUri=B_,m.getValueFromProps=gg,m.getXyzFromPostion=bf,m.growthSimulationCallFunc=i_,m.hasSameTags=Em,m.hasSameViewerTags=ou,m.imageToCanvas=Rg,m.inOrderRunning=eE,m.interval=Gh,m.isFeatureEqual=Pm,m.isGeometryEqual=Im,m.isJSON=Pd,m.isPromiseCancelable=Ia,m.isRelativeRtsInfoUrl=u_,m.isXML=Qw,m.lbhToWebMerc=hE,m.lbhToXyz=Kr,m.length=Yh,m.lerpAngle=_c,m.lerpRotation=Id,m.loadGifFrames=um,m.loadJs=Kh,m.map=jy,m.max=os,m.min=As,m.moveToTreeItem=pc,m.moveToTreeItems=qg,m.nextAnimateFrame=Sa,m.nextMicroTask=Hl,m.objsIterator=wo,m.oneTimeWarning=wa,m.optionsStr=Eb,m.pairToPromise=id,m.parsePlatformFromUrl=h_,m.parseRtsHost=c_,m.parseRtsOrigin=Ph,m.parseTileServiceName=d_,m.pluckProperty=Jh,m.react=z,m.reactArray=tt,m.reactArrayCollection=p0,m.reactArrayCollectionWithUndefined=Bh,m.reactArrayWithUndefined=Xt,m.reactDeepArray=ec,m.reactDeepArrayWithUndefined=Ls,m.reactJson=gt,m.reactJsonCollection=g0,m.reactJsonCollectionWithUndefined=m0,m.reactJsonWithUndefined=Kt,m.reactPlainObject=d0,m.reactPlainObjectWithUndefined=f0,m.reactPosition2Ds=Pf,m.reactPosition2DsSet=v0,m.reactPositions=_o,m.reactPositionsSet=zh,m.reduce=Jl,m.registerEventCtor=cg,m.registerEventUpdate=YS,m.removeAllTreesCallFunc=e_,m.requestAnimationFrameTimeStampTest=O0,m.resolveRtsInfoUrl=bh,m.rpToap=Zw,m.saveOnBrowser=x0,m.setCanvasUniformColor=Lg,m.setExtProp=Ii,m.setPromiseCancel=ks,m.setSceneObjectTreeItem=yc,m.setValueFromProps=I0,m.sleep=Ql,m.sleepDeprecated=B0,m.step=Eo,m.stepProcessing=hw,m.throttle=$h,m.timeout=Wh,m.toGeoJson=bm,m.track=A,m.uint32ToUint8s=kg,m.uint8ToHexStr=eu,m.uint8sToUint32=Vg,m.updateTreeParamsCallFunc=n_,m.webMercToLbh=dE,m.xyz2N2=L0,m.xyz2N3=F0,m.xyzToLbh=Td,m.xyzw2N4=A0,Object.defineProperty(m,Symbol.toStringTag,{value:"Module"})}));
|
|
505
|
+
`,TP='<svg t="1747028305766" class="icon" viewBox="0 0 1032 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="3881" width="40" height="40"><path d="M0.1536 547.700736c-0.205824-0.187392-0.205824-0.49152 0.008192-0.68608l80.672768-73.590784a0.63488 0.63488 0 0 1 0.7936-0.029696l263.043072 203.0336c0.667648 0.515072 1.738752 0.498688 2.393088-0.038912l609.191936-500.133888a0.605184 0.605184 0 0 1 0.768 0.022528l74.84928 67.229696a0.454656 0.454656 0 0 1-0.002048 0.685056l-685.234176 618.19904a1.14688 1.14688 0 0 1-1.518592-0.012288L0.1536 547.700736z" fill="#ffffff" p-id="3882"></path></svg>',OP='<svg t="1747028398107" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="1146" width="40" height="40"><path d="M415.744006 1.033277A0.992256 0.992256 0 0 1 416.747526 0.000061h189.5045c0.569344 0 1.017856 0.45056 1.001472 1.033216l-21.227518 754.803667a1.062912 1.062912 0 0 1-1.05984 1.032192h-146.933752c-0.569344 0-1.04448-0.45056-1.059839-1.032192L415.744006 1.033277zM511.510528 1024c-52.595709 0-95.231994-39.866366-95.231994-89.043963 0-49.176573 42.636285-89.042939 95.231994-89.042938 52.594685 0 95.231994 39.866366 95.231994 89.042938 0 49.177597-42.637309 89.043963-95.231994 89.043963z" fill="#ffffff" p-id="1147"></path></svg>',ya=class ya extends U{constructor(e){super();const t=()=>{const n=this.dv(new gh);this.d(A([n,"show"],[e,"useDefaultStatusDiv"]));{const i=()=>{n.show=(e.useDefaultStatusDiv??!0)&&e.status!=="Created"};i(),this.d(e.useDefaultStatusDivChanged.don(i)),this.d(e.statusChanged.don(i)),n.cssText="width:100%;height:100%;position:absolute;left:0px;top:0px;"}e.add(n),this.d(()=>e.delete(n)),n.instanceClass=class extends U{constructor(o,a,l){super();h(this,"_div",document.createElement("div"));if(this._subContainer=o,!l)return;this._subContainer.appendChild(this._div),this.d(()=>this._subContainer.removeChild(this._div));{const _=()=>{a.show?this._div.style.opacity="1":this._div.style.opacity="0"};_(),this.d(a.showChanged.don(_))}let u,c,d,f,p;this._div.style.pointerEvents="none",this._div.style.position="absolute",this._div.style.width="100%",this._div.style.height="100%",this._div.style.backgroundColor="rgba(0, 0, 0, 0.4)",this._div.style.zIndex="100",this._div.style.transition="opacity 2s",u=document.createElement("div"),this._div.appendChild(u),u.style.width="auto",u.style.position="absolute",u.style.left="50%",u.style.top="50%",u.style.transform="translate(-50%,-50%)",u.style.background="rgba(120, 120, 0, 0.7)",u.style.color="white",u.style.fontSize="10px",u.style.background="none",u.style.display="flex",u.style.justifyContent="center",u.style.alignItems="center",c=document.createElement("div"),u.appendChild(c),c.style.pointerEvents="none",c.style.display="block",c.style.width="40px",c.innerHTML=ya.defaultsSvg.loadingSvg,c.style.filter="drop-shadow(0px 0px 1px black)",d=document.createElement("div"),u.appendChild(d),d.style.pointerEvents="none",d.style.marginLeft="10px",d.style.display="flex",d.style.flexFlow="column",d.style.maxWidth="300px",f=document.createElement("div"),d.appendChild(f),f.style.fontSize="14px",f.style.fontWeight="800",f.style.marginBottom="5px",f.style.textShadow="0 0 2px black",p=document.createElement("div"),d.appendChild(p),p.style.fontWeight="400",p.style.textShadow="0 0 2px black";{const _=()=>{let b="Raw";l.status==="Raw"?b="初始状态":l.status==="Creating"?b="正在创建":l.status==="Created"?b="创建完成":l.status==="Error"?b="创建失败":l.status==="Reconnecting"&&(b="重新连接"),f.innerText=`${b}(${l.status})`,p.innerText=`${l.statusLog}`,(l.status==="Creating"||l.status==="Reconnecting")&&(c.innerHTML=ya.defaultsSvg.loadingSvg),l.status==="Created"&&(c.innerHTML=ya.defaultsSvg.successSvg),l.status==="Error"&&(c.innerHTML=ya.defaultsSvg.warnSvg)};_();const S=this.dv(Se(l.statusLogChanged,l.statusChanged));this.d(S.don(_))}}update(){const o=255*Math.random()|0,a=255*Math.random()|0,l=255*Math.random()|0;this._div.style.background=`rgba(${o}, ${a}, ${l}, 0.8)`}}};this.d(e.containerChanged.don(()=>{t()}))}};h(ya,"defaultsSvg",{loadingSvg:xP,successSvg:TP,warnSvg:OP});let rg=ya;class DP extends U{constructor(e,t,n){super(),this._subContainer=e,this._overlayContainer=t,this._viewer=n;const i=this._subContainer,s=this._overlayContainer,o=this._viewer,a=()=>{const c=o.zIndex??"";i.style.zIndex=c,s.style.zIndex=c};a(),this.d(o.zIndexChanged.don(a));const l=()=>{i.style.display=o.show??!0?"block":"none"};l(),this.d(o.showChanged.don(l));const u=()=>{i.style.opacity=`${o.opacity??1}`};u(),this.d(o.opacityChanged.don(u))}}function Dh(r){let e=er(r,"_relativeContainer");return e||(e=document.createElement("div"),e.style.position="relative",e.style.width="100%",e.style.height="100%",e.style.padding="0",e.style.margin="0",r.appendChild(e),Ii(r,"_relativeContainer",e)),e}class NP extends U{constructor(t,n){super();h(this,"_subContainer",document.createElement("div"));h(this,"_overlayContainer",document.createElement("div"));h(this,"_containerStyleController");this._container=t,this._viewer=n,this._containerStyleController=this.dv(new DP(this._subContainer,this._overlayContainer,this._viewer));const{subContainer:i,overlayContainer:s}=this;i.tabIndex=-1,i.style.outline="none",i.style.width="100%",i.style.height="100%",i.onpointerdown=()=>i.focus(),s.style.position="relative",s.setAttribute("earthsdk3","earthsdk3-overlayContainer"),i.setAttribute("earthsdk3","earthsdk3-subContainer"),Dh(this._container).appendChild(i),this.d(()=>Dh(this._container).removeChild(i)),Dh(this._container).appendChild(s),this.d(()=>Dh(this._container).removeChild(s))}get subContainer(){return this._subContainer}get overlayContainer(){return this._overlayContainer}get containerStyleController(){return this._containerStyleController}get container(){return this._container}}class MP extends U{constructor(){super(...arguments);h(this,"registerObjsMap",new Map)}register(t,n){return this.registerObjsMap.has(t)&&console.warn(`register warn:${t}已经被注册,再次注册会覆盖。`),this.registerObjsMap.set(t,n),t}getViewerConstructor(t){const n=this.registerObjsMap.get(t);if(!n){console.warn(`未找到${t}类!`);return}return n}createViewer(t){const n=t.type;console.log(t);const i=this.getViewerConstructor(n);if(!i)throw new Error(`没有找到类型为${n}的Viewer构造器!`);return new i(t)}}class J_ extends U{constructor(e,t,n=!1,i=!1){if(super(),this._viewer=e,!t)throw new Error("ViewerCustomInteraction: container is null");const s=this.dv(ce.create(t,"pointerdown")),o=this.dv(ce.create(t,"pointermove")),a=this.dv(ce.create(t,"pointerup")),l=this.dv(ce.create(t,"pointerout")),u=this.dv(ce.create(t,"pointerover")),c=this.dv(new ud),d=this.dv(new Og),f=()=>{const g=this._viewer.hoverTime*1e3;d.delayTime=g};this.d(this._viewer.hoverTimeChanged.don(()=>{f()})),this.d(s.don(g=>c.pointerDown(g))),this.d(o.don(g=>c.pointerMove(g))),this.d(a.don(g=>c.pointerUp(g))),this.d(l.don(g=>c.pointerOut(g))),this.d(s.don(g=>d.pointerDown(g))),this.d(o.don(g=>d.pointerMove(g))),this.d(a.don(g=>d.pointerUp(g))),this.d(l.don(g=>d.pointerOut(g)));const{x:p,y:_}=t.getBoundingClientRect(),S=i?p:0,b=i?_:0;this.d(d.hoverEvent.don(g=>{const[y,E]=ba(g,n);this._viewer.hoverEvent.emit({screenPosition:[y+S,E+b],pointerEvent:g})})),this.d(c.clickEvent.don(g=>{const[y,E]=ba(g,n);this._viewer.clickEvent.emit({screenPosition:[y+S,E+b],pointerEvent:g})})),this.d(c.dbclickEvent.don(g=>{const[y,E]=ba(g,n);g.button===0&&this._viewer.dblclickEvent.emit({screenPosition:[y+S,E+b],pointerEvent:g})})),this.d(s.don(g=>{const[y,E]=ba(g,n);g.button===0&&this._viewer.pointerDownEvent.emit({screenPosition:[y+S,E+b],pointerEvent:g})})),this.d(a.don(g=>{const[y,E]=ba(g,n);g.button===0&&this._viewer.pointerUpEvent.emit({screenPosition:[y+S,E+b],pointerEvent:g})})),this.d(o.don(g=>{const[y,E]=mn(g,n);this._viewer.pointerMoveEvent.emit({screenPosition:[y+S,E+b],pointerEvent:g})})),this.d(u.don(g=>{const[y,E]=mn(g,n);this._viewer.pointerOverEvent.emit({screenPosition:[y+S,E+b],pointerEvent:g})})),this.d(l.don(g=>{const[y,E]=mn(g,n);this._viewer.pointerOutEvent.emit({screenPosition:[y+S,E+b],pointerEvent:g})}));const I=this.dv(ce.create(t,"keydown"));this.d(I.don(g=>this._viewer.keyDownEvent.emit(g)));const v=this.dv(ce.create(t,"keyup"));this.d(v.don(g=>this._viewer.keyUpEvent.emit(g)));const w=this.dv(ce.create(t,"wheel"));this.d(w.don(g=>this._viewer.wheelEvent.emit(g)))}}const Rs=class Rs extends U{constructor(t){super();h(this,"_forceRecreateEvent",this.dv(new N));h(this,"_container",this.dv(z(void 0)));h(this,"_containerSize",this.dv(z(void 0)));h(this,"_editingEvent",this.disposeVar(new N));h(this,"_esViewerExtensions",this.dv(new CP(this)));h(this,"_status",this.dv(z("Raw")));h(this,"_statusLog",this.dv(z("")));h(this,"_statusContainer",this.dv(new rg(this)));h(this,"_useCustomInteraction",this.dv(z(!0)));h(this,"_resetInteractionEvent",this.dv(Se(this.containerChanged,this._useCustomInteraction.changed,this._forceRecreateEvent)));h(this,"_interactionResetting",this.dv(new Ie(this._resetInteractionEvent,()=>{if(!(!this.container||!this._useCustomInteraction.value))return new J_(this,this.container)})));h(this,"_viewerChanged",this.dv(new N));h(this,"_cameraChanged",this.dv(new N));h(this,"_containerResetEvent",this.dv(Se(this.containerChanged,this._forceRecreateEvent)));h(this,"_containerResetting",this.dv(new Ie(this._containerResetEvent,()=>{if(this.container)return new NP(this.container,this)})));h(this,"_sceneObjectsMap",new Map);h(this,"_id");h(this,"_typeName");h(this,"_updateFuncReact",this.dv(z(void 0)));h(this,"_toDestroyFuncReact",this.dv(z(void 0)));h(this,"_statusInfo",Rs.defaults.statusInfo);h(this,"_navigationMode",this.dv(z("Map")));h(this,"_navigationEvent",this.disposeVar(new N));h(this,"_syncViewer",this.dv(z(void 0)));h(this,"_syncEventDon",this.dv(new Ie(this.syncViewerChanged,()=>{const t=this.syncViewer;if(t)return new IP(this,t)})));h(this,"_timeSyncdon",this.dv(new Ie(this.timeSyncChanged,()=>{if(this.timeSync)return new PP(this)})));h(this,"_hoverEvent",this.dv(new N));h(this,"_pointerOverEvent",this.dv(new N));h(this,"_pointerMoveEvent",this.dv(new N));h(this,"_pointerDownEvent",this.dv(new N));h(this,"_pointerUpEvent",this.dv(new N));h(this,"_pointerOutEvent",this.dv(new N));h(this,"_clickEvent",this.dv(new N));h(this,"_dblclickEvent",this.dv(new N));h(this,"_keyDownEvent",this.dv(new N));h(this,"_keyUpEvent",this.dv(new N));h(this,"_wheelEvent",this.dv(new N));h(this,"_actived",this.dv(z(!1)));this._id=t.id??Ca();const n=H_(t.container);if(n)this._container.value=ng(n),this._typeName=t.type,this._initName();else throw new Error("container is not defined");{const i=()=>{n&&(this.show??!0?n.style.display="block":n.style.display="none")};i(),this.d(this.showChanged.don(i))}{const i=this._sceneObjectsMap,s=()=>{for(let[a,l]of i.entries())if(!l&&a){const u=$o.context.createEngineObject(a,this);u&&i.set(a,u)}},o=()=>{for(let[a,l]of i.entries())l&&!l.isDestroyed()&&l.destroy(),i.set(a,void 0)};this.d(o),this.d(this.viewerChanged.don(a=>{o(),a&&s()}))}{const i=()=>{if(this.execOnceFuncStr)try{Function(`"use strict";return (${this.execOnceFuncStr})`)()(this)}catch(s){console.warn(`execOnceFuncStr不能转成函数!或者函数执行时错误!id: ${this.id} ${this.typeName} error: ${s}`)}};i(),this.d(this.execOnceFuncStrChanged.don(i))}{const i=()=>{if(this.updateFuncStr)try{this.updateFunc=Function(`"use strict";return (${this.updateFuncStr})`)()}catch(o){console.warn(`updateFuncStr不能转成函数!或者函数执行时错误!id: ${this.id} ${this.typeName} error: ${o}`)}};i(),this.d(this.updateFuncStrChanged.don(i));let s;this.d(()=>s&&s.destroy()),this.d(this.updateFuncChanged.don(()=>{s&&s.cancel(),this.updateFunc&&(s=s||Zl(),s.restart(void 0,o=>{this.updateFunc&&this.updateFunc(this,o)}))}))}{const i=()=>{try{this.toDestroyFunc=this.toDestroyFuncStr&&Function(`"use strict";return (${this.toDestroyFuncStr})`)()||void 0}catch(s){console.warn(`toDestroyFuncStr不能转成函数!或者函数执行时错误!id: ${this.id} ${this.typeName} error: ${s}`),this.toDestroyFunc=void 0}};i(),this.d(this.toDestroyFuncStrChanged.don(i)),this.d(this.toDestroyEvent.don(()=>{this.toDestroyFunc&&this.toDestroyFunc(this)}))}this.ad(new bP(this))}forceRecreate(){this._forceRecreateEvent.emit()}get container(){return this._container.value}set container(t){this._container.value=t}set containerOrId(t){if(typeof t=="string"){const n=document.getElementById(t);n&&n instanceof HTMLDivElement?this._container.value=ng(n):console.warn("containerOrId warn: !(container instanceof HTMLDivElement)")}else t instanceof HTMLDivElement?this._container.value=ng(t):console.warn("containerOrId warn: setting container failed!")}get containerChanged(){return this._container.changed}get containerSize(){return this._containerSize.value}set containerSize(t){this._containerSize.value=t}get containerSizeChanged(){return this._containerSize.changed}get editingEvent(){return this._editingEvent}get esViewerExtensions(){return this._esViewerExtensions}get status(){return this._status.value}get statusChanged(){return this._status.changed}setStatus(t){this._status.value=t}get statusLog(){return this._statusLog.value}get statusLogChanged(){return this._statusLog.changed}setStatusLog(t){this._statusLog.value=t}get useCustomInteraction(){return this._useCustomInteraction.value}set useCustomInteraction(t){this._useCustomInteraction.value=t}get viewerChanged(){return this._viewerChanged}get cameraChanged(){return this._cameraChanged}get containerResetEvent(){return this._containerResetEvent}get subContainer(){var t;return(t=this._containerResetting.obj)==null?void 0:t.subContainer}get subContainerChanged(){return this._containerResetting.objChanged}get overlayContainer(){var t;return(t=this._containerResetting.obj)==null?void 0:t.overlayContainer}get overlayContainerChanged(){return this._containerResetting.objChanged}get sceneObjectsMap(){return this._sceneObjectsMap}get sceneObjects(){return this._sceneObjectsMap.keys()}getEngineObject(t){return this.sceneObjectsMap.get(t)}add(...t){for(let n of t)if(!this.has(n)){lt.context.addSceneObject(n);const i=$o.context.createEngineObject(n,this);i&&this._sceneObjectsMap.set(n,i),n.viewerAttached.emit(this)}}delete(...t){for(let n of t)if(this.has(n)){const i=this._sceneObjectsMap.get(n);i&&i.destroy(),lt.context.deleteSceneObject(n),this._sceneObjectsMap.delete(n),n.viewerDetached.emit(this)}}disposableAdd(...t){return this.add(...t),()=>this.delete(...t)}disAdd(...t){return this.disposableAdd(...t)}has(t){return this._sceneObjectsMap.has(t)}clearAllSceneObjects(){for(let t of this.sceneObjects)this.delete(t)}get id(){return this._id}set id(t){console.warn("ESViewer id is readonly")}get typeName(){return this._typeName}_initName(){this.name=`${this.typeName}_${(""+this.id).slice(-4)}`}get defaultProps(){return Rs.createDefaultProps()}get completeJson(){return this._getJson(!1)}_getJson(t=!0){const n={id:this.id,type:this.typeName};for(let i of Object.keys(this.defaultProps))if(t){let s,o=this.defaultProps[i];o instanceof Ge?s=o.equals(this[i]):s=o===this[i],s||(n[i]=this[i])}else n[i]=this[i];return n}_setJson(t,n,i){if(!(t instanceof Object)||t.type&&t.type!==this.typeName){console.error(`value.type && value.type${t.type} !== this.typeName${this.typeName}`);return}t.id&&t.id!==this.id&&console.warn(`value.id === undefined || value.id${t.id} !== this.id(${this.id})`);const s=n||[];s.push("id","type");const o=Object.keys(this.defaultProps).filter(a=>!s.includes(a));for(let a of o)if(a in t)this[a]=t[a]===null?void 0:t[a];else if(!(i??!1)){let l=this.defaultProps[a];l instanceof Ge&&(l=l.value),this[a]=l}}get json(){return this._getJson()}set json(t){this._setJson(t,["devTags"])}get updateFunc(){return this._updateFuncReact.value}set updateFunc(t){this._updateFuncReact.value=t}get updateFuncChanged(){return this._updateFuncReact.changed}get toDestroyFunc(){return this._toDestroyFuncReact.value}set toDestroyFunc(t){this._toDestroyFuncReact.value=t}get toDestroyFuncChanged(){return this._toDestroyFuncReact.changed}get navigationMode(){return this._navigationMode.value}get navigationModeChanged(){return this._navigationMode.changed}getNavigationMode(){return this._navigationMode.value}get navigationEvent(){return this._navigationEvent}getEngineType(){return this._typeName}get syncViewer(){return this._syncViewer.value}set syncViewer(t){this._syncViewer.value=t}get syncViewerChanged(){return this._syncViewer.changed}syncOtherViewer(t){t&&t.syncViewer&&(t.syncViewer=void 0),t===this?this._syncViewer.value=void 0:this._syncViewer.value=t}setCurrentTime(t){try{this.currentTime=typeof t=="string"?Date.parse(t):t}catch(n){console.warn(`时间格式不正确! value: ${t} error: ${n}`)}}async getVersion(){return globalThis.g_XE3CopyRights??{}}get hoverEvent(){return this._hoverEvent}get pointerOverEvent(){return this._pointerOverEvent}get pointerMoveEvent(){return this._pointerMoveEvent}get pointerDownEvent(){return this._pointerDownEvent}get pointerUpEvent(){return this._pointerUpEvent}get pointerOutEvent(){return this._pointerOutEvent}get clickEvent(){return this._clickEvent}get dblclickEvent(){return this._dblclickEvent}get keyDownEvent(){return this._keyDownEvent}get keyUpEvent(){return this._keyUpEvent}get wheelEvent(){return this._wheelEvent}get actived(){return this._actived.value}set actived(t){this._actived.value=t}get activedChanged(){return this._actived.changed}getESProperties(){return{defaultMenu:"general",basic:[],general:[],dataSource:[],location:[],coordinate:[],style:[],more:[]}}async getCurrentRectangle(){var t;try{const n=(t=this.container)==null?void 0:t.getBoundingClientRect();if(!n)return;const{width:i,height:s}=n,o=await this.quickPickPosition([0,0]),a=await this.quickPickPosition([i,s]);return!o||!a?void 0:[o[0],a[1],a[0],o[1]]}catch(n){console.error(n);return}}};h(Rs,"context",new MP),h(Rs,"register",Rs.context.register.bind(Rs.context)),h(Rs,"defaults",{show:!0,debug:!1,statusInfo:{fps:0,position:[0,0,0],rotation:[0,0,0],length:0},terrainShader:{slope:{show:!1},aspect:{show:!1},elevationRamp:{show:!1,minHeight:-414,maxHeight:8777,color:[]},elevationContour:{show:!1,color:[1,0,0,1],spacing:150,width:2}},globeShow:!0,splitPosition:0,cameraMovableRegion:[0,0,0,0,0,0],depthTestAgainstTerrain:!0,terrainOpacity:1});let vi=Rs;(r=>{r.createBaseProps=()=>({name:"未命名场景对象",extras:gt(void 0),devTags:Xt(void 0),debug:void 0,show:void 0,opacity:void 0,zIndex:void 0,useDefaultStatusDiv:!0,execOnceFuncStr:void 0,updateFuncStr:void 0,toDestroyFuncStr:void 0}),r.createCommonProps=()=>({globeShow:!0,ionAccessToken:"",lonLatFormat:"DECIMAL_DEGREE",fov:60,textAvoidance:!1,flyToBoundingSize:1024,hoverTime:2,currentTime:Date.now(),simulationTime:Date.now(),timeSync:!1,rain:0,snow:0,cloud:0,fog:0,depthOfField:0,atmosphere:!0,editingPointSize:void 0,editingPointColor:Xt(void 0),editingAuxiliaryPointColor:Xt(void 0),editingLineWidth:void 0,editingLineColor:Xt(void 0),editingAxisSize:void 0,editingAuxiliaryPointSize:void 0,editingHeightOffset:0,editingLineShow:!0,editingPointTooltipShow:!0,editingEventListening:!0,terrainShader:r.defaults.terrainShader,splitPosition:z(void 0),rollerShutter:!1,cameraMovableRegion:Xt(void 0),depthTestAgainstTerrain:!0,terrainOpacity:1,sceneGlobeBaseColor:tt([1,1,1,1]),sceneBackgroundColor:tt([0,0,0,0])}),r.createDefaultProps=()=>({...(0,r.createBaseProps)(),...(0,r.createCommonProps)()})})(vi||(vi={})),Fs(vi.prototype,vi.createDefaultProps);function $_(r,e){const t=r._lastCameraInfo;if(t){const n=e.viewerChanged.don(i=>{if(!i||!t)return;const{position:s,rotation:o}=t;e.flyIn(s,o,0),r._lastCameraInfo=void 0,n()})}}const RP=r=>{const e=vi.createCommonProps(),t={};try{Object.keys(e).forEach(n=>{t[n]=r[n]})}catch(n){console.warn(n)}return t},K_=(r,e)=>{const t=vi.createCommonProps();try{Object.keys(t).forEach(n=>{r[n]=e[n]})}catch(n){console.warn(n)}};class LP extends U{constructor(t){super();h(this,"_viewersChanged",this.disposeVar(new N));h(this,"_viewers",new Set);h(this,"_viewersToChange",this.dv(new N));this._sceneObjectsManager=t,(async()=>{for(let n of this.viewers){const i=this._sceneObjectsManager.sceneObjects;for(const s of i)await this.addSceneObject(s,n)}this.d(()=>{const n=this._sceneObjectsManager.sceneObjects;for(const i of this.viewers)i.delete(...n),this.destroyViewer(i);this._viewers.clear()}),this.d(this._sceneObjectsManager.sceneObjectsToChange.don(async(n,i)=>{for(let s of this.viewers){n.forEach(o=>{this.deleteSceneObject(o,s)});for(let o of i)await this.addSceneObject(o,s)}if(i.length>0)for(let s of i)s.d(s.devTagsChanged.don(async()=>{for(let o of this.viewers){if(o.has(s)&&!ou(o.devTags,s.devTags)){o.delete(s);continue}await this.addSceneObject(s,o)}})),s.ad(s.reloadEvent.don(async()=>{for(let o of this.viewers)o.has(s)&&(o.delete(s),await this.addSceneObject(s,o))}))})),this.d(this.viewersChanged.don(async(n,i)=>{const s=this._sceneObjectsManager.sceneObjects;n.forEach(o=>{for(let a of s)this.deleteSceneObject(a,o)});for(let o of i)for(let a of s)await this.addSceneObject(a,o);i.length>0&&i.forEach(o=>{o.d(o.devTagsChanged.don(async()=>{o.clearAllSceneObjects();const a=this._sceneObjectsManager.sceneObjects;for(let l of a)console.log("viewersChanged",o.devTags,l.devTags,ou(o.devTags,l.devTags)),await this.addSceneObject(l,o)}))})}))})()}get viewersChanged(){return this._viewersChanged}get viewers(){return[...this._viewers]}getViewers(){return[...this._viewers]}get viewersToChange(){return this._viewersToChange}createViewer(t){const n=vi.context.createViewer(t);return this._viewers.add(n),this._viewersChanged.emit([],[n]),n}destroyViewer(t){return t.isDestroyed()?!0:this._viewers.has(t)?(this._viewers.delete(t),this._viewersChanged.emit([t],[]),t.destroy(),t.isDestroyed()):!1}async addSceneObject(t,n){ou(n.devTags,t.devTags)&&(n.has(t)?console.warn(`${n.typeName}中已存${t.typeName},检查逻辑是否有问题!`):n.add(t))}deleteSceneObject(t,n){ou(n.devTags,t.devTags)&&(n.has(t)?n.delete(t):console.warn(`${n.typeName}中不存在${t.typeName},检查逻辑是否有问题!`))}}class Nh extends U{constructor(...t){super();h(this,"_drgm",this.dv(new _m));h(this,"_sobjm",this.dv(new wP));h(this,"_vrm",this.dv(new LP(this._sobjm)));h(this,"_sceneObjectEditingManager",this.disposeVar(new _P));h(this,"_activeViewer",this.dv(z(void 0)));h(this,"_syncOtherViewersToActived",this.dv(z(!1)));h(this,"_cmrvm",this.createSceneObjectFromClass(dh));h(this,"_cmrvmdon",this.d(()=>this._cmrvm&&this.destroySceneObject(this._cmrvm)));h(this,"_asset",{type:"ESObjectsManager",version:"0.1.0",createdTime:"",modifiedTime:"",name:"未命名项目"});h(this,"_sceneTree",this.dv(new Bu("default",this.dragstartDataMananger,24,this)));h(this,"_sceneTreeMap",new Map);h(this,"_viewerCreatedEvent",this.dv(new N));h(this,"_lastCameraInfo");h(this,"_lastActiveViewerJson");h(this,"_syncEventDonFunc",this.d(Ne([this.activeViewerChanged,this.syncOtherViewersToActivedChanged],()=>{const t=this.syncOtherViewersToActived;this.viewers.forEach(n=>{t?n.syncOtherViewer(this.activeViewer):n.syncOtherViewer(void 0)})})));h(this,"_player",this.createSceneObjectFromClass(cl));h(this,"_playerdon",this.d(()=>this._player&&this.destroySceneObject(this._player)));h(this,"_esPlyarAndPathTime",this.dv(new pP(this)));h(this,"_pathAnimationManager",this.dv(new mP(this)))}getBrowserEnv(){return globalThis.ue&&globalThis.ue.es&&globalThis.ue.esinput?"ESWebView":"Browser"}static get envs(){return lt.context.environmentVariables}getSceneObjectById(t){return lt.getSceneObjectById(t)}getSceneObject(t){return lt.getSceneObject(t)}get $refs(){return lt.$refs}get dragstartDataMananger(){return this._drgm}get sceneObjectsManager(){return this._sobjm}get viewers(){return this._vrm.viewers}getViewers(){return this._vrm.getViewers()}get sceneObjectEditingManager(){return this._sceneObjectEditingManager}get activeViewer(){return this._activeViewer.value}set activeViewer(t){this._activeViewer.value=t,this.viewers.forEach(n=>n.actived=n===t)}get activeViewerChanged(){return this._activeViewer.changed}get syncOtherViewersToActived(){return this._syncOtherViewersToActived.value}set syncOtherViewersToActived(t){this._syncOtherViewersToActived.value=t}get syncOtherViewersToActivedChanged(){return this._syncOtherViewersToActived.changed}get cameraViewsManager(){return this._cmrvm}get completeJson(){var d;const t=this._asset.createdTime||new Date().toISOString(),n=new Date().toISOString(),i=this._asset.name||"未命名项目",o={type:"ESObjectsManager",version:this._asset.version||"0.1.0",createdTime:t,modifiedTime:n,name:i},a=this.sceneTree.completeJson,l=this._cmrvm.views,u=[...this.viewers].map(f=>f.completeJson),c=(d=this.activeViewer)==null?void 0:d.getCurrentCameraInfo();return{asset:o,viewers:u,sceneTree:a,viewCollection:l,lastView:c}}get json(){var d;const t=this._asset.createdTime||new Date().toISOString(),n=new Date().toISOString(),i=this._asset.name||"未命名项目",o={type:"ESObjectsManager",version:this._asset.version||"0.1.0",createdTime:t,modifiedTime:n,name:i},a=this.sceneTree.json,l=this._cmrvm.views,u=[...this.viewers].map(f=>f.json),c=(d=this.activeViewer)==null?void 0:d.getCurrentCameraInfo();return{asset:o,viewers:u,sceneTree:a,viewCollection:l,lastView:c}}set json(t){try{if(!t.asset)return;if(!t.asset.type||t.asset.type!=="ESObjectsManager"){console.warn("json装配失败! asset.type 不存在或者不是'ESObjectsManager'");return}if(this._asset.createdTime=t.asset&&t.asset.createdTime||new Date().toISOString(),this._asset.modifiedTime=t.asset&&t.asset.modifiedTime||"",this._asset.name=t.asset&&t.asset.name||"未命名项目",this._asset.version=t.asset&&t.asset.version||"0.1.0",t.sceneTree&&(this.sceneTree.json=t.sceneTree),t.viewCollection&&(this._cmrvm.views=t.viewCollection),!t.viewers||!Array.isArray(t.viewers)){console.warn("viewers is not an array or does not exist !");return}if(this.viewers.length===0||t.viewers.length===0){console.warn("viewers is empty !");return}this.viewers.forEach(n=>{const i=t.viewers.find(s=>s.id===n.id);i&&(n.json=i)})}catch(n){console.error(`ESObjectsManager解析json数据时发生错误! error: ${n}`)}}get sceneTree(){return this._sceneTree}get jsonLoadingEvent(){return this._sceneTree.jsonLoadingEvent}getSceneTrees(){return[...this._sceneTreeMap.values()]}getSceneTree(t="default"){if(t==="default")return this._sceneTree;if(!this._sceneTreeMap.has(t)){console.warn(`id为${t}的SceneTree不存在!`);return}return this._sceneTreeMap.get(t)}createSceneTree(t,n=24){if(this._sceneTreeMap.has(t)||t==="default")console.warn(`id为${t}的SceneTree已存在!`);else{const i=this.dv(new Bu(t,this.dragstartDataMananger,n,this));this._sceneTreeMap.set(t,i)}return this.getSceneTree(t)}get viewerCreatedEvent(){return this._viewerCreatedEvent}createViewer(t){const n=this._vrm.createViewer(t);this.activeViewer||(this.activeViewer=n);const i=this.d(n.viewerChanged.don(s=>{s&&(this._viewerCreatedEvent.emit(n),i())}));return n}destroyViewer(t){return this._activeViewer.value===t&&(this._activeViewer.value=void 0),this._vrm.destroyViewer(t)}switchViewer(t,n=!0,i=!0,s=!0){var u,c;this.activeViewer&&this.activeViewer.getNavigationMode()!=="Map"&&this.activeViewer.changeToMap(),!this._lastCameraInfo&&n&&(this._lastCameraInfo=(u=this.activeViewer)==null?void 0:u.getCurrentCameraInfo(),((c=this.activeViewer)==null?void 0:c.typeName)=="ESOlViewer"&&this._lastCameraInfo&&(this._lastCameraInfo.rotation[1]=-90)),!this._lastActiveViewerJson&&i&&(this._lastActiveViewerJson=this.activeViewer?RP(this.activeViewer):void 0),s&&this.activeViewer&&this.destroyViewer(this.activeViewer);const o=t.id,a=o?[...this.getViewers()].find(d=>d.id===o):[...this.getViewers()].find(d=>d.typeName===t.type&&!d.container);if(a)if(o&&a.typeName!==t.type)console.warn(`id为${o}的viewer的typeName和option.type${t.type}不相同!,虽然id一致但是typeName不同,所以会销毁并创建新的viewer`),this.destroyViewer(a);else return console.log("ESViewer exists, will be used"),n&&$_(this,a),i&&this._lastActiveViewerJson&&(K_(a,this._lastActiveViewerJson),this._lastActiveViewerJson=void 0),a.container===H_(t.container)?(a.containerOrId=t.container,a.forceRecreate()):a.containerOrId=t.container,this.activeViewer=a,a;console.log("No ESViewer exists, will be created");const l=this.createViewer(t);return console.log(t),console.log(this),n&&$_(this,l),i&&this._lastActiveViewerJson&&(K_(l,this._lastActiveViewerJson),this._lastActiveViewerJson=void 0),this.activeViewer=l,l}switchToCesiumViewer(...t){if(typeof t[0]=="object"&&!(t[0]instanceof HTMLDivElement)){const{container:n,viewSync:i,attributeSync:s,destroy:o,id:a}=t[0];return this.switchViewer({type:"ESCesiumViewer",container:n,id:a},i??!0,s??!0,o??!0)}else if(typeof t[0]=="string"||t[0]instanceof HTMLDivElement){const n={container:t[0],viewSync:t[1]??!0,attributeSync:t[2]??!0,destroy:t[3]??!0,id:t[4]},{container:i,viewSync:s,attributeSync:o,destroy:a,id:l}=n;return this.switchViewer({type:"ESCesiumViewer",container:i,id:l},s,o,a)}}switchToUEViewer(...t){let n,i={viewSync:!0,attributeSync:!0,destroy:!0};if(typeof t[0]=="object"&&!(t[0]instanceof HTMLDivElement)&&t[0].hasOwnProperty("uri")){const{container:l,uri:u,app:c,token:d,viewSync:f,attributeSync:p,destroy:_,id:S,silentTime:b}=t[0];n={type:"ESUeViewer",container:l,id:S,options:{uri:u,app:c,token:d,silentTime:b}},i={viewSync:f??!0,attributeSync:p??!0,destroy:_??!0}}else if(typeof t[0]=="object"&&!(t[0]instanceof HTMLDivElement)&&t[0].hasOwnProperty("ws")){const{container:l,ws:u,esmsg:c,viewSync:d,attributeSync:f,id:p,destroy:_,silentTime:S}=t[0];n={type:"ESUeViewer",container:l,id:p,options:{ws:u,esmsg:c,silentTime:S}},i={viewSync:d??!0,attributeSync:f??!0,destroy:_??!0}}else if(typeof t[0]=="object"&&!(t[0]instanceof HTMLDivElement)&&t[0].hasOwnProperty("project")){const{container:l,project:u,baseUrl:c,viewSync:d,attributeSync:f,id:p,destroy:_}=t[0];n={type:"ESUeViewer",container:l,id:p,options:{project:u,baseUrl:c}},i={viewSync:d??!0,attributeSync:f??!0,destroy:_??!0}}else(typeof t[0]=="string"||t[0]instanceof HTMLDivElement)&&(typeof t[1]=="string"&&t[1].startsWith("ws")?(n={type:"ESUeViewer",container:t[0],id:t[6],options:{ws:t[1],esmsg:t[2]??void 0,silentTime:t[7]??void 0}},i={viewSync:t[3]??!0,attributeSync:t[4]??!0,destroy:t[5]??!0}):typeof t[1]=="string"&&t[1].startsWith("http")?(n={type:"ESUeViewer",container:t[0],id:t[7],options:{uri:t[1],app:t[2],token:t[3]??void 0,silentTime:t[8]??void 0}},i={viewSync:t[4]??!0,attributeSync:t[5]??!0,destroy:t[6]??!0}):(n={type:"ESUeViewer",container:t[0],id:t[6],options:{project:t[1],baseUrl:t[2]??void 0}},i={viewSync:t[3]??!0,attributeSync:t[4]??!0,destroy:t[5]??!0}));if(!n)throw new Error("参数错误");const{viewSync:s,attributeSync:o,destroy:a}=i;return this.switchViewer(n,s,o,a)}createCesiumViewer(...t){let n;if(typeof t[0]=="object"&&!(t[0]instanceof HTMLDivElement)?n={...t[0],type:"ESCesiumViewer"}:(typeof t[0]=="string"||t[0]instanceof HTMLDivElement)&&(n={container:t[0],options:t[1]??void 0,id:t[2]??void 0,type:"ESCesiumViewer"}),!n)throw new Error("参数错误");return this.createViewer(n)}createOpenLayersViewer(...t){let n;if(typeof t[0]=="object"&&!(t[0]instanceof HTMLDivElement)?n={...t[0],type:"ESOlViewer"}:(typeof t[0]=="string"||t[0]instanceof HTMLDivElement)&&(n={container:t[0],options:t[1]??void 0,id:t[2]??void 0,type:"ESOlViewer"}),!n)throw new Error("参数错误");return this.createViewer(n)}createUeViewer(...t){let n;if(typeof t[0]=="object"&&!(t[0]instanceof HTMLDivElement)?n={...t[0],type:"ESUeViewer"}:(typeof t[0]=="string"||t[0]instanceof HTMLDivElement)&&(typeof t[1]=="string"&&t[1].startsWith("ws")?n={type:"ESUeViewer",container:t[0],id:t[3]??void 0,options:{ws:t[1],esmsg:t[2]??void 0,silentTime:t[4]??void 0}}:typeof t[1]=="string"&&t[1].startsWith("http")?n={type:"ESUeViewer",container:t[0],id:t[4]??void 0,options:{uri:t[1],app:t[2],token:t[3]??void 0,silentTime:t[5]??void 0}}:n={type:"ESUeViewer",container:t[0],id:t[3]??void 0,options:{project:t[1],baseUrl:t[2]??void 0}}),!n)throw new Error("参数错误");return this.createViewer(n)}createSceneObject(t,n){return this._sobjm.createSceneObject(t,n)}createSceneObjectFromUrl(t,n){return this._sobjm.createSceneObjectFromUrl(t,n)}createSceneObjectFromClass(t,n){return this._sobjm.createSceneObjectFromClass(t,n)}createSceneObjectFromJson(t){return this._sobjm.createSceneObjectFromJson(t)}destroySceneObject(t){const n=this._sobjm.deleteSceneObject(t);return t.destroy(),n}destroyAllSceneObjects(){const t=[...this._sobjm.sceneObjects];for(let n of t)n!=this._player&&n!=this._cmrvm&&this.destroySceneObject(n)}get player(){return this._player}get esPlyarAndPathTime(){return this._esPlyarAndPathTime}get pathAnimationManager(){return this._pathAnimationManager}}h(Nh,"getSceneObjById",lt.context.getSceneObjectById.bind(lt.context)),h(Nh,"getEnv",lt.context.getEnv.bind(lt.context)),h(Nh,"setEnv",lt.context.setEnv.bind(lt.context)),m.BooleanProperty=H,m.BorderedPosFloatDiv=Wg,m.BoxPicker=nd,m.CancelError=Jr,m.CancelsManager=sd,m.CanvasImagePoi=vw,m.CanvasPoi=cd,m.CanvasPointPoi=yw,m.CanvasPrimitive=Dg,m.CanvasPrimitivesContext=_w,m.ColorProperty=St,m.ColorStops=uP,m.ComplexImage=Ju,m.CursorFloatDiv=bw,m.CursorInfo=Pw,m.DashPatternProperty=mm,m.DateProperty=Oi,m.DatesProperty=Ed,m.Debouncing=X0,m.DebouncingDeprecated=Qh,m.DebouncingWithStartValues=Y0,m.Destroyable=U,m.DivBoxPicker=W0,m.DivPoi=zg,m.DivPointerClick=pw,m.DivideProperty=dt,m.DomElementEvent=ce,m.DoublyLinkedList=fg,m.DragStartDataManager=_m,m.ES3DTileset=mr,m.ESAlarm=Df,m.ESApertureEffect=Nf,m.ESAreaMeasurement=Mf,m.ESAttackArrow=tg,m.ESBlastParticleSystem=Rf,m.ESBoxClipping=Lf,m.ESCameraView=ch,m.ESCameraViewCollection=dh,m.ESCameraVisibleRange=Ff,m.ESCar=fh,m.ESCityBasePoint=Fp,m.ESClassification=ph,m.ESClippingPlane=Af,m.ESCustomDiv=gh,m.ESCylinder=Jo,m.ESCzml=kp,m.ESDataMesh=kf,m.ESDatasmithRuntimeModel=mp,m.ESDirectionMeasurement=op,m.ESDistanceMeasurement=Vf,m.ESDynamicWater=vp,m.ESEntityCluster=Mp,m.ESExcavate=zu,m.ESFeatureLayer=Jp,m.ESFireParticleSystem=mh,m.ESFireWall=Gf,m.ESForestTileset=jf,m.ESFountainParticleSystem=Sh,m.ESGaussianSplatting=zp,m.ESGeoBezierSpline=Rp,m.ESGeoDiv=Bf,m.ESGeoDivTextPoi=Lp,m.ESGeoExtrudedPolygon=Yo,m.ESGeoJson=Wu,m.ESGeoLineString=fn,m.ESGeoPoints=Yu,m.ESGeoPolygon=Bt,m.ESGeoPolygonWithFire=Uf,m.ESGeoRectangle=Wf,m.ESGeoVector=Ct,m.ESGeoWater=yp,m.ESGltfModel=qi,m.ESGltfModelEditing=Zp,m.ESHeatMap=xh,m.ESHeightLimitAnalysis=Np,m.ESHeightMeasurement=lp,m.ESHole=Pp,m.ESHuman=vr,m.ESHumanFountain=bp,m.ESHumanPoi=Sp,m.ESHumans=Qp,m.ESImageLabel=vh,m.ESImageryLayer=Uu,m.ESJArrowModeArray=bd,m.ESJClassificationTypeArray=Sd,m.ESJEditingMode=Z,m.ESJLonLatFormat=ym,m.ESJPickedResult=Yw,m.ESLabel=gr,m.ESLandSlide=Up,m.ESLevelRuntimeModel=_p,m.ESLocalCircle=up,m.ESLocalPolygon=Hu,m.ESLocalPolygonZ=cp,m.ESLocalRectangle=hp,m.ESLocalSkyBox=qf,m.ESLocalVector=al,m.ESLocalVector2D=Ps,m.ESLocationMeasurement=Xf,m.ESMCPClient=fP,m.ESMVTLayer=$p,m.ESMediaLayer=Kp,m.ESMsTileset=Tp,m.ESNavigator=Vp,m.ESObjectWithLocation=it,m.ESObjectsManager=Nh,m.ESParticleSystemPrimitive=yh,m.ESPath=hl,m.ESPathImpl=io,m.ESPipeFence=Eh,m.ESPipeline=wp,m.ESPipeserTileset=dp,m.ESPit=ul,m.ESPlayer=cl,m.ESPoi2D=Gu,m.ESPoi3D=Yf,m.ESPoiTileset=Op,m.ESPolygonFence=Ch,m.ESPolygonFlattenedPlane=Jf,m.ESPolygonWithHole=pp,m.ESPolygonsFlattenedPlane=$f,m.ESRectangle=fp,m.ESRtsFeatureEditing=xp,m.ESRtsTileset=Ip,m.ESScale=Dp,m.ESSceneObject=lt,m.ESSceneObjectWithId=xm,m.ESSeparateFoliage=Kf,m.ESSignalInterference=eg,m.ESSkylineAnalysis=Wp,m.ESSquadCombatArrow=zf,m.ESStaticMesh=Gp,m.ESSubmergingAnalysis=Zf,m.ESSunshineAnalysis=Qf,m.ESSurfaceAreaMeasurement=gp,m.ESTerrainLayer=tp,m.ESTerrainLayerEditing=Xu,m.ESTerrainLayerEditingBrushEarseFalloff=T_,m.ESTerrainLayerEditingFlattenMode=I_,m.ESTerrainLayerEditingFlattenPick=x_,m.ESTestObject=Of,m.ESTextLabel=ll,m.ESUEWidget=ep,m.ESUnrealActor=np,m.ESVideoFusion=rp,m.ESViewShed=ip,m.ESViewer=vi,m.ESViewerStatusBar=jp,m.ESViewerStatusBarScale=Bp,m.ESVisibilityAnalysis=Ep,m.ESVisualObject=kt,m.ESVolumeMeasurement=Cp,m.ESWidget=sp,m.EngineObject=$o,m.EnumProperty=st,m.EvalStringProperty=ls,m.Event=N,m.EventFromArrayUpdating=R0,m.EventListenerHandler=jh,m.Fetching=j0,m.FloatDiv=fd,m.FlvJsLoading=Oh,m.FlvProcessing=j_,m.GetSetProperty=Cd,m.Gif=dm,m.GifPlayer=hm,m.GifProcessing=fm,m.HasOwner=D0,m.HlsJsLoading=Th,m.HlsProcessing=V_,m.IFrameBorderedPosFloatDiv=Cw,m.ImageProcessing=em,m.IntervalDeprecated=ed,m.JsonArrayProperty=ge,m.JsonProperty=ft,m.ListenerPipe=Vh,m.LocalFileServer=Qg,m.LocalRootDir=Zg,m.LongStringProperty=mc,m.MethodProperty=ct,m.NextAnimateFrameEvent=oc,m.NextAnimateFrameWeakEvent=pg,m.NextMicroTaskEvent=Hh,m.NextMicroTaskWeakEvent=E0,m.Number2Property=Me,m.Number3Property=He,m.Number4Property=Sr,m.NumberProperty=M,m.NumberSliderProperty=Re,m.ObjPool=tc,m.ObjResetting=Tw,m.ObjResettingWithEvent=Ie,m.ObservableArray=$l,m.ObservableSet=gc,m.PickColorMananger=jg,m.PickedInfo=Xw,m.Player=$r,m.PlayerProperty=vc,m.PointerClick=ud,m.PointerClickDeprecated=bg,m.PointerHover=Og,m.PointerHoverDeprecated=gw,m.PosFloatDiv=md,m.PositionProperty=Di,m.Processing=We,m.Property=Vs,m.ReactVarProperty=Dn,m.ReactiveVariable=Ge,m.RotationProperty=su,m.SceneObjectFromId=xd,m.SceneTree=Bu,m.SceneTreeContextMenu=Wy,m.SceneTreeItem=zn,m.SceneTreeItemDragDrop=Gy,m.SmartListenerHandler=Wl,m.SmartListenerPipe=h0,m.SmoothMoveController=sb,m.StringProperty=ut,m.Throttling=dw,m.ThrottlingWithStartValues=fw,m.TimingDeprecated=Cg,m.ToolTipDiv=Sw,m.Transition=tu,m.TransitionDeprecated=U0,m.Tree=Po,m.TreeItem=iu,m.TreeItemDragDrop=wm,m.UiTree=Yg,m.UiTreeObject=Xg,m.VideoProcessing=im,m.ViewPlayerProperty=vm,m.ViewerCustomInteraction=J_,m.Watcher=au,m.WatcherTools=Tm,m.WithUndefinedProperty=wd,m.XrPlayer=fc,m.Xyzw2Ns=uc,m._getFeatureProperty=y_,m._getLayerConfig=g_,m._getport=v_,m._saveLayerConfig=m_,m.addTreesCallFunc=t_,m.animateFrame=ic,m.apis=Ih,m.ary2Ns=V0,m.asyncFuncToCancelablePromise=Z0,m.bind=et,m.bindCustomEditing=Sm,m.bindu=_0,m.booleanPointInPolygon=fE,m.buildFeatureTilesetUrl=p_,m.buildInfoUrl=Db,m.buildTilesetUrl=f_,m.calcArrowPoints=Tf,m.canMoveToTreeItem=ru,m.canMoveToTreeItems=Hg,m.cancelFuncToCancelablePromise=K0,m.cancelPromise=rd,m.cancelableFetch=ad,m.cancelableFetchDeprecated=Eg,m.cancelableFetchWithProgress=tw,m.cartesianDistance=Vy,m.clamp=cc,m.clamp0_360=Oa,m.clampN180_180=Cm,m.complexImageTypes=rm,m.createAnimateFrame=Zl,m.createAnimateFrameWithStartValues=Ta,m.createBottomTriangleElement=Gg,m.createCancelablePromise=xa,m.createCloseDiv=Ug,m.createEventsCallFunc=Ne,m.createFetching=ew,m.createFetchingWithStartValues=nw,m.createGuid=Ca,m.createInterval=aw,m.createIntervalWithStartValues=lw,m.createNextAnimateFrame=rw,m.createNextAnimateFrameEvent=Se,m.createNextAnimateFrameEventCallFunc=S0,m.createNextAnimateFrameWeakEvent=b0,m.createNextAnimateFrameWithStartValues=iw,m.createNextMicroTask=sw,m.createNextMicroTaskEvent=w0,m.createNextMicroTaskWeakEvent=C0,m.createNextMicroTaskWithStartValues=ow,m.createNumbers=lc,m.createProcessingFromAsyncFunc=nr,m.createProcessingFromAsyncFuncWithStartValues=Q0,m.createProcessingFromPromiseCreateFunc=dc,m.createProcessingFromPromiseCreateFuncWithStartValues=od,m.createSleeping=uw,m.createSleepingWithStartValues=cw,m.createStartFuncFromAsyncFunc=Kl,m.createTimeout=Ig,m.createTimeoutWithStartValues=xg,m.cutDownTreesCallFunc=r_,m.czmPixelFormats=nm,m.data=xb,m.dataMd=Tb,m.debounce=rc,m.defaultGetLocalFilePath=Ow,m.defaultInitSceneObjectOnCreatingFunc=$w,m.defaultLight122FromEnvironmentMapManager=xf,m.defaultLoadFuncDocStr=l_,m.defaultLoadFuncStr=ap,m.defaultLocalFileServer=tm,m.defaultStartUpdateFunc=ac,m.defaultUpdateSceneObjectOnPickingFunc=Jw,m.defineReactiveProp=td,m.destroyObject=ug,m.diffGeoJson=iE,m.downloadLink=T0,m.drawBubble=So,m.drawPoint=mw,m.drawRoundRectPath=Ng,m.drawText=Mg,m.drawTextBlock=hd,m.engineObjectCreatedUpdate=By,m.equalsN3=ah,m.every=Xh,m.extendClassProps=Fs,m.fetchArrayBuffer=M0,m.fetchImage=yg,m.forEach=xi,m.forEachWithBreak=qh,m.geoAlong=vE,m.geoArea=Fd,m.geoBuffer=Ly,m.geoCenterOfMass=FE,m.geoDestination=Vd,m.geoDifference=Fy,m.geoDistance=Ic,m.geoHeading=hu,m.geoIntersect=My,m.geoLineIntersect=qE,m.geoNearestPointOnLine=$E,m.geoPointToLineDistance=tC,m.geoPolygonFromCircle=Ay,m.geoPolygonOverlap=Sf,m.geoPolylineToBezierSpline=ol,m.geoRhumbDestination=rC,m.geoRhumbDistance=iv,m.geoRhumbHeading=sC,m.geoUnion=Ry,m.getCameraTools=z_,m.getColorHexStr=nu,m.getCompleteReactParams=nc,m.getDefaultValue=tE,m.getDistancesFromPositions=bs,m.getDomEventCurrentTargetPos=mn,m.getDrawRect=Co,m.getESMCPTools=G_,m.getElementBounds=rE,m.getErrorResult=ue,m.getEventFromPromise=q0,m.getEventPosInCurrentTarget=ba,m.getExtProp=er,m.getFileArrayBuffer=Kg,m.getFileJson=$g,m.getFileText=vd,m.getFloatDivPool=gd,m.getGeoBoundingSphereFromPositions=ky,m.getIterator=ql,m.getMidpoint=YE,m.getMinMaxCorner=oh,m.getMinMaxPosition=N0,m.getPromiseCancel=Pa,m.getPromiseFromEvent=H0,m.getPromiseFromProcessing=ld,m.getReactFuncs=Gl,m.getRtsServicePrefix=Xo,m.getSceneObjectTools=U_,m.getSceneObjectTreeItem=Kw,m.getSubEntriesFromDir=Jg,m.getSuccessResult=mi,m.getTypeFromImageUri=B_,m.getValueFromProps=gg,m.getXyzFromPostion=bf,m.growthSimulationCallFunc=i_,m.hasSameTags=Em,m.hasSameViewerTags=ou,m.imageToCanvas=Rg,m.inOrderRunning=eE,m.interval=Gh,m.isFeatureEqual=Pm,m.isGeometryEqual=Im,m.isJSON=Pd,m.isPromiseCancelable=Ia,m.isRelativeRtsInfoUrl=u_,m.isXML=Qw,m.lbhToWebMerc=hE,m.lbhToXyz=Kr,m.length=Yh,m.lerpAngle=_c,m.lerpRotation=Id,m.loadGifFrames=um,m.loadJs=Kh,m.map=jy,m.max=os,m.min=As,m.moveToTreeItem=pc,m.moveToTreeItems=qg,m.nextAnimateFrame=Sa,m.nextMicroTask=Hl,m.objsIterator=wo,m.oneTimeWarning=wa,m.optionsStr=Eb,m.pairToPromise=id,m.parsePlatformFromUrl=h_,m.parseRtsHost=c_,m.parseRtsOrigin=Ph,m.parseTileServiceName=d_,m.pluckProperty=Jh,m.react=z,m.reactArray=tt,m.reactArrayCollection=p0,m.reactArrayCollectionWithUndefined=Bh,m.reactArrayWithUndefined=Xt,m.reactDeepArray=ec,m.reactDeepArrayWithUndefined=Ls,m.reactJson=gt,m.reactJsonCollection=g0,m.reactJsonCollectionWithUndefined=m0,m.reactJsonWithUndefined=Kt,m.reactPlainObject=d0,m.reactPlainObjectWithUndefined=f0,m.reactPosition2Ds=Pf,m.reactPosition2DsSet=v0,m.reactPositions=_o,m.reactPositionsSet=zh,m.reduce=Jl,m.registerEventCtor=cg,m.registerEventUpdate=YS,m.removeAllTreesCallFunc=e_,m.requestAnimationFrameTimeStampTest=O0,m.resolveRtsInfoUrl=bh,m.rpToap=Zw,m.saveOnBrowser=x0,m.setCanvasUniformColor=Lg,m.setExtProp=Ii,m.setPromiseCancel=ks,m.setSceneObjectTreeItem=yc,m.setValueFromProps=I0,m.sleep=Ql,m.sleepDeprecated=B0,m.step=Eo,m.stepProcessing=hw,m.throttle=$h,m.timeout=Wh,m.toGeoJson=bm,m.track=A,m.uint32ToUint8s=kg,m.uint8ToHexStr=eu,m.uint8sToUint32=Vg,m.updateTreeParamsCallFunc=n_,m.webMercToLbh=dE,m.xyz2N2=L0,m.xyz2N3=F0,m.xyzToLbh=Td,m.xyzw2N4=A0,Object.defineProperty(m,Symbol.toStringTag,{value:"Module"})}));
|
|
@@ -399,6 +399,10 @@ export declare abstract class ESViewer extends Destroyable {
|
|
|
399
399
|
* 是否显示编辑线,默认值为 true。
|
|
400
400
|
*/
|
|
401
401
|
editingLineShow: boolean;
|
|
402
|
+
/**
|
|
403
|
+
* 是否显示编辑点的悬浮提示(如“控制点1”),默认值为 true。
|
|
404
|
+
*/
|
|
405
|
+
editingPointTooltipShow: boolean;
|
|
402
406
|
/**
|
|
403
407
|
* 是否开启编辑事件监听,默认值为 true。
|
|
404
408
|
*/
|
|
@@ -1336,6 +1340,10 @@ export declare namespace ESViewer {
|
|
|
1336
1340
|
* 是否显示编辑线,默认值为 true。
|
|
1337
1341
|
*/
|
|
1338
1342
|
editingLineShow: boolean;
|
|
1343
|
+
/**
|
|
1344
|
+
* 是否显示编辑点的悬浮提示(如“控制点1”),默认值为 true。
|
|
1345
|
+
*/
|
|
1346
|
+
editingPointTooltipShow: boolean;
|
|
1339
1347
|
/**
|
|
1340
1348
|
* 是否开启编辑事件监听,默认值为 true。
|
|
1341
1349
|
*/
|
|
@@ -1496,6 +1504,10 @@ export declare namespace ESViewer {
|
|
|
1496
1504
|
* 是否显示编辑线,默认值为 true。
|
|
1497
1505
|
*/
|
|
1498
1506
|
editingLineShow: boolean;
|
|
1507
|
+
/**
|
|
1508
|
+
* 是否显示编辑点的悬浮提示(如“控制点1”),默认值为 true。
|
|
1509
|
+
*/
|
|
1510
|
+
editingPointTooltipShow: boolean;
|
|
1499
1511
|
/**
|
|
1500
1512
|
* 是否开启编辑事件监听,默认值为 true。
|
|
1501
1513
|
*/
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "earthsdk3",
|
|
3
|
-
"version": "3.11.0-beta.
|
|
3
|
+
"version": "3.11.0-beta.15",
|
|
4
4
|
"description": "地球可视化实验室 (EarthSDK&CesiumLab) https://www.bjxbsj.cn",
|
|
5
5
|
"private": false,
|
|
6
6
|
"type": "module",
|
|
@@ -57,4 +57,4 @@
|
|
|
57
57
|
"types": "./dist/types/index.d.ts",
|
|
58
58
|
"import": "./dist/earthsdk3.js"
|
|
59
59
|
}
|
|
60
|
-
}
|
|
60
|
+
}
|
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
export interface Point {
|
|
2
|
-
x: number;
|
|
3
|
-
y: number;
|
|
4
|
-
z: number;
|
|
5
|
-
}
|
|
6
|
-
/**
|
|
7
|
-
* BezierSpline
|
|
8
|
-
* https://github.com/leszekr/bezier-spline-js
|
|
9
|
-
*
|
|
10
|
-
* @private
|
|
11
|
-
* @copyright
|
|
12
|
-
* Copyright (c) 2013 Leszek Rybicki
|
|
13
|
-
*
|
|
14
|
-
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
15
|
-
* of this software and associated documentation files (the "Software"), to deal
|
|
16
|
-
* in the Software without restriction, including without limitation the rights
|
|
17
|
-
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
18
|
-
* copies of the Software, and to permit persons to whom the Software is
|
|
19
|
-
* furnished to do so, subject to the following conditions:
|
|
20
|
-
*
|
|
21
|
-
* The above copyright notice and this permission notice shall be included in all
|
|
22
|
-
* copies or substantial portions of the Software.
|
|
23
|
-
*
|
|
24
|
-
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
25
|
-
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
26
|
-
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
27
|
-
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
28
|
-
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
29
|
-
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
30
|
-
* SOFTWARE.
|
|
31
|
-
*/
|
|
32
|
-
export default class Spline {
|
|
33
|
-
duration: number;
|
|
34
|
-
points: Point[];
|
|
35
|
-
sharpness: number;
|
|
36
|
-
centers: Point[];
|
|
37
|
-
controls: Array<[Point, Point]>;
|
|
38
|
-
stepLength: number;
|
|
39
|
-
length: number;
|
|
40
|
-
delay: number;
|
|
41
|
-
steps: number[];
|
|
42
|
-
constructor(options?: any);
|
|
43
|
-
/**
|
|
44
|
-
* Caches an array of equidistant (more or less) points on the curve.
|
|
45
|
-
*/
|
|
46
|
-
cacheSteps(mindist: number): number[];
|
|
47
|
-
/**
|
|
48
|
-
* returns angle and speed in the given point in the curve
|
|
49
|
-
*/
|
|
50
|
-
vector(t: number): {
|
|
51
|
-
angle: number;
|
|
52
|
-
speed: number;
|
|
53
|
-
};
|
|
54
|
-
/**
|
|
55
|
-
* Gets the position of the point, given time.
|
|
56
|
-
*
|
|
57
|
-
* WARNING: The speed is not constant. The time it takes between control points is constant.
|
|
58
|
-
*
|
|
59
|
-
* For constant speed, use Spline.steps[i];
|
|
60
|
-
*/
|
|
61
|
-
pos(time: number): Point;
|
|
62
|
-
}
|
|
@@ -1,101 +0,0 @@
|
|
|
1
|
-
type Application = {
|
|
2
|
-
application: {
|
|
3
|
-
blockSize: number
|
|
4
|
-
blocks: number[]
|
|
5
|
-
codes: number[]
|
|
6
|
-
id: string
|
|
7
|
-
}
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
type Frame = {
|
|
11
|
-
gce: {
|
|
12
|
-
byteSize: number
|
|
13
|
-
codes: number[]
|
|
14
|
-
delay: number
|
|
15
|
-
terminator: number
|
|
16
|
-
transparentColorIndex: number
|
|
17
|
-
extras: {
|
|
18
|
-
userInput: boolean
|
|
19
|
-
transparentColorGiven: boolean
|
|
20
|
-
future: number
|
|
21
|
-
disposal: number
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
image: {
|
|
25
|
-
code: number
|
|
26
|
-
data: {
|
|
27
|
-
minCodeSize: number
|
|
28
|
-
blocks: number[]
|
|
29
|
-
}
|
|
30
|
-
descriptor: {
|
|
31
|
-
top: number
|
|
32
|
-
left: number
|
|
33
|
-
width: number
|
|
34
|
-
height: number
|
|
35
|
-
lct: {
|
|
36
|
-
exists: boolean
|
|
37
|
-
future: number
|
|
38
|
-
interlaced: boolean
|
|
39
|
-
size: number
|
|
40
|
-
sort: boolean
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
export type ParsedGif = {
|
|
47
|
-
frames: (Application | Frame)[]
|
|
48
|
-
gct: [number, number, number][]
|
|
49
|
-
header: {
|
|
50
|
-
signature: string
|
|
51
|
-
version: string
|
|
52
|
-
}
|
|
53
|
-
lsd: {
|
|
54
|
-
backgroundColorIndex: number
|
|
55
|
-
gct: {
|
|
56
|
-
exists: boolean
|
|
57
|
-
resolution: number
|
|
58
|
-
size: number
|
|
59
|
-
sort: boolean
|
|
60
|
-
}
|
|
61
|
-
height: number
|
|
62
|
-
width: number
|
|
63
|
-
pixelAspectRatio: number
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
-
export type ParsedFrame = {
|
|
68
|
-
dims: { width: number; height: number; top: number; left: number }
|
|
69
|
-
colorTable: [number, number, number][]
|
|
70
|
-
delay: number
|
|
71
|
-
disposalType: number
|
|
72
|
-
patch: Uint8ClampedArray
|
|
73
|
-
pixels: number[]
|
|
74
|
-
transparentIndex: number
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
export type ParsedFrameWithoutPatch = Omit<ParsedFrame, 'patch'>
|
|
78
|
-
|
|
79
|
-
export function parseGIF(arrayBuffer: ArrayBuffer): ParsedGif
|
|
80
|
-
|
|
81
|
-
export function decompressFrames(
|
|
82
|
-
parsedGif: ParsedGif,
|
|
83
|
-
buildImagePatches: true
|
|
84
|
-
): ParsedFrame[]
|
|
85
|
-
|
|
86
|
-
export function decompressFrames(
|
|
87
|
-
parsedGif: ParsedGif,
|
|
88
|
-
buildImagePatches: false
|
|
89
|
-
): ParsedFrameWithoutPatch[]
|
|
90
|
-
|
|
91
|
-
export function decompressFrame(
|
|
92
|
-
frame: Frame,
|
|
93
|
-
gct: [number, number, number][],
|
|
94
|
-
buildImagePatches: true
|
|
95
|
-
): ParsedFrame
|
|
96
|
-
|
|
97
|
-
export function decompressFrame(
|
|
98
|
-
frame: Frame,
|
|
99
|
-
gct: [number, number, number][],
|
|
100
|
-
buildImagePatches: false
|
|
101
|
-
): ParsedFrameWithoutPatch
|