@vesium/plot 1.0.1-beta.50 → 1.0.1-beta.52
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/index.cjs +3017 -1431
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +603 -0
- package/dist/index.d.cts.map +1 -0
- package/dist/index.d.mts +603 -0
- package/dist/index.d.mts.map +1 -0
- package/dist/index.iife.js +3065 -1475
- package/dist/index.iife.js.map +1 -1
- package/dist/index.iife.min.js +2 -2
- package/dist/index.iife.min.js.map +1 -1
- package/dist/index.min.cjs +2 -2
- package/dist/index.min.cjs.map +1 -1
- package/dist/index.min.mjs +2 -2
- package/dist/index.min.mjs.map +1 -1
- package/dist/index.mjs +2973 -1444
- package/dist/index.mjs.map +1 -1
- package/package.json +17 -16
- package/dist/index.d.ts +0 -551
package/dist/index.min.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var z=Object.defineProperty,$=(t,e,i)=>e in t?z(t,e,{enumerable:!0,configurable:!0,writable:!0,value:i}):t[e]=i,E=(t,e,i)=>$(t,typeof e!="symbol"?e+"":e,i);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("cesium"),f=require("vesium"),L=require("@vueuse/core"),w=require("vue"),Y=class O{constructor(e){E(this,"type"),E(this,"complete"),E(this,"allowManualComplete"),E(this,"definingCursor"),E(this,"skeletons"),E(this,"initEntites"),E(this,"initPrimitives"),E(this,"initGroundPrimitives"),E(this,"render");var i;this.type=e.type,this.complete=e.complete,this.allowManualComplete=e.allowManualComplete,this.definingCursor=e.definingCursor??"crosshair",this.skeletons=((i=e.skeletons)==null?void 0:i.map(r=>r()))??[],this.initEntites=e.initEntites,this.initPrimitives=e.initPrimitives,this.initGroundPrimitives=e.initGroundPrimitives,this.render=e.render}static getCacheTypes(){return[...this._record.keys()]}static getCache(e){return O._record.get(e)}static setCache(e){f.assertError(!e.type,"`scheme.type` is required"),O._record.set(e.type,e)}static resolve(e){if(typeof e=="string"){const i=O.getCache(e);return L.assert(!!i,`scheme ${e} not found`),i}else return e instanceof O?e:new O(e)}};E(Y,"_record",new Map);let I=Y;var J=(t=>(t[t.NEAR=0]="NEAR",t[t.CYCLE=1]="CYCLE",t[t.STRICT=2]="STRICT",t))(J||{});const Q=(t,e,i,r)=>{var s,o,c;return r===0?{time:t,positions:(s=e.positions)==null?void 0:s.map(a=>a.clone()),derivative:e.derivative}:r===1?{time:t,positions:(o=i.positions)==null?void 0:o.map(a=>a.clone()),derivative:e.derivative}:{time:t,positions:(c=i.positions)==null?void 0:c.map((a,h)=>{var v;const C=(v=e.positions)==null?void 0:v[h];return C?n.Cartesian3.lerp(C,a,r,new n.Cartesian3):a}),derivative:e.derivative}},q=class B{constructor(e){E(this,"strategy"),E(this,"interpolationAlgorithm"),E(this,"_times",[]),E(this,"_sampleds",[]),E(this,"_derivatives",[]),E(this,"_definitionChanged",new n.Event);var i;this.interpolationAlgorithm=e?.interpolationAlgorithm,this.strategy=e?.strategy??0,(i=e?.packables)==null||i.forEach(r=>this.setSample(r)),this._times.length||this.setSample({time:new n.JulianDate(0,0),positions:[],derivative:void 0})}get isConstant(){return this._times.length===0}get definitionChanged(){return this._definitionChanged}getTimes(){return this._times.map(e=>e.clone())}getIndexScope(e){if(!this._times.length)return;const i=this._times[0],r=this._times[this._times.length-1];if(n.JulianDate.lessThan(e,i)||n.JulianDate.greaterThan(e,r))switch(this.strategy){case 2:return;case 0:{e=n.JulianDate.lessThan(e,this._times[0])?this._times[0].clone():this._times[this._times.length-1].clone();break}case 1:{const v=n.JulianDate.toDate(this._times[0]).getTime(),m=n.JulianDate.toDate(this._times[this._times.length-1]).getTime()-v,d=(n.JulianDate.toDate(e).getTime()-v)%m,p=new Date(v+d);e=n.JulianDate.fromDate(p);break}}const s=this._times.findIndex(v=>n.JulianDate.lessThanOrEquals(e,v)),o=Math.min(s,this._times.length-1),c=n.JulianDate.toDate(this._times[s]).getTime(),a=n.JulianDate.toDate(this._times[o]).getTime(),h=n.JulianDate.toDate(e).getTime();return{prevIndex:s,nextIndex:o,proportion:(h-c)/(a-c)||0}}getValue(e,i){var r;if(i??(i={time:e}),Object.assign(i,{time:e?.clone(),positions:void 0,derivative:void 0}),!e)return i.time=this._times[0].clone(),i.positions=(r=this._sampleds[0])==null?void 0:r.map(m=>m.clone(m)),i.derivative=this._derivatives[0],i;const s=this.getIndexScope(e);if(!s)return i;i.time=e;const{prevIndex:o,nextIndex:c,proportion:a}=s,h={time:this._times[o],positions:this._sampleds[o],derivative:this._derivatives[o]},v={time:this._times[c],positions:this._sampleds[c],derivative:this._derivatives[c]},C=(this.interpolationAlgorithm||B.defaultInterpolationAlgorithm)(e,h,v,a);return Object.assign(i,C),i}setSample(e){var i,r;const s=((i=e.time)==null?void 0:i.clone())??this._times[0].clone(),o=((r=e.positions)==null?void 0:r.map(h=>h.clone()))??[],c=e.derivative,a=this._times.findIndex(h=>n.JulianDate.equals(s,h));a!==-1?(this._times[a]=s,this._sampleds[a]=o,this._derivatives[a]=e.derivative):this._times.length===0?(this._times[0]=s,this._sampleds[0]=o,this._derivatives[0]=e.derivative):n.JulianDate.lessThan(s,this._times[0])?(this._times.splice(0,0,s),this._sampleds.splice(0,0,o),this._derivatives.splice(0,0,c)):n.JulianDate.greaterThan(s,this._times[this._times.length-1])&&(this._times.push(s),this._sampleds.push(o),this._derivatives.push(c)),this.definitionChanged.raiseEvent(this)}setSamples(e){e.forEach(i=>this.setSample(i))}removeSample(e){const i=this._times.findIndex(r=>r.equals(e));return i!==-1&&(this._sampleds.splice(i,1),this._derivatives.splice(i,1),this._times.splice(i,1).length)?(this._definitionChanged.raiseEvent(this),!0):!1}removeSamples(e){for(let i=0;i<this._times.length;i++){const r=this._times[i];n.TimeInterval.contains(e,r)&&this.removeSample(r)}}equals(e){return e===this}};E(q,"defaultInterpolationAlgorithm",Q);let G=q;class A{constructor(e){E(this,"_id"),E(this,"_scheme"),E(this,"_definitionChanged"),E(this,"_defining"),E(this,"_disabled"),E(this,"_sampled"),E(this,"_entities"),E(this,"_primitives"),E(this,"_groundPrimitives"),E(this,"_skeletons");var i,r,s,o,c,a;const{id:h,disabled:v=!1,sampled:C}=e;this._id=h||n.createGuid(),this._scheme=I.resolve(e.scheme),this._definitionChanged=new n.Event,this._defining=!0,this._disabled=v,this._sampled=C instanceof G?C:new G(C),this._sampled.definitionChanged.addEventListener(m=>this._definitionChanged.raiseEvent(this,"sampled",m,m),this),this._entities=[...((r=(i=this._scheme).initEntites)==null?void 0:r.call(i))??[]],this._primitives=[...((o=(s=this._scheme).initPrimitives)==null?void 0:o.call(s))??[]],this._groundPrimitives=[...((a=(c=this._scheme).initGroundPrimitives)==null?void 0:a.call(c))??[]],this._skeletons=[]}get id(){return this._id}get scheme(){return this._scheme}get definitionChanged(){return this._definitionChanged}get defining(){return this._defining}static setDefining(e,i){e._defining!==i&&(e._definitionChanged.raiseEvent(e,"defining",i,e._defining),e._defining=i)}get disabled(){return this._disabled}set disabled(e){this.disabled=e}get sampled(){return this._sampled}get entities(){return this._entities}set entities(e){this._definitionChanged.raiseEvent(this,"entities",e,this._entities),this._entities=e}get primitives(){return this._primitives}set primitives(e){this._definitionChanged.raiseEvent(this,"primitives",e,this._primitives),this._primitives=e}get groundPrimitives(){return this._groundPrimitives}set groundPrimitives(e){this._definitionChanged.raiseEvent(this,"groundPrimitives",e,this._groundPrimitives),this._groundPrimitives=e}get skeletons(){return this._skeletons}set skeletons(e){this._definitionChanged.raiseEvent(this,"skeletons",e,this._skeletons),this._skeletons=e}}var P=(t=>(t[t.IDLE=0]="IDLE",t[t.HOVER=1]="HOVER",t[t.ACTIVE=2]="ACTIVE",t))(P||{});class R extends n.Entity{constructor(e){super(e)}}function X(t,e,i){const r=f.useViewer(),s=f.usePrimitive(new n.PrimitiveCollection),o=f.usePrimitive(new n.PrimitiveCollection,{collection:"ground"}),c=f.useDataSource(new n.CustomDataSource),a=f.useEntityScope({collection:()=>c.value.entities}),h=f.usePrimitiveScope({collection:()=>s.value}),v=f.usePrimitiveScope({collection:()=>o.value}),C=w.shallowRef();f.useScreenSpaceEventHandler(n.ScreenSpaceEventType.MOUSE_MOVE,l=>{C.value=f.canvasCoordToCartesian(l?.endPosition,r.value.scene)}),L.watchArray(t,(l,d,p,u=[])=>{u.forEach(_=>{a.removeWhere(g=>_.entities.includes(g)),h.removeWhere(g=>_.primitives.includes(g)),v.removeWhere(g=>_.groundPrimitives.includes(g))}),p.forEach(_=>{_.entities.forEach(g=>a.add(g)),_.primitives.forEach(g=>h.add(g)),_.groundPrimitives.forEach(g=>v.add(g))})},{immediate:!0,flush:"post"}),f.useCesiumEventListener(()=>t.value.map(l=>l.definitionChanged),(l,d,p,u)=>{if(d==="entities"){const{added:_,removed:g}=f.arrayDiff(p,u);_.forEach(y=>a.add(y)),g.forEach(y=>a.remove(y))}else if(d==="primitives"){const{added:_,removed:g}=f.arrayDiff(p,u);_.forEach(y=>h.add(y)),g.forEach(y=>h.remove(y))}else if(d==="groundPrimitives"){const{added:_,removed:g}=f.arrayDiff(p,u);_.forEach(y=>v.add(y)),g.forEach(y=>v.remove(y))}});const m=async l=>{var d,p;const u=await((p=(d=l.scheme).render)==null?void 0:p.call(d,{packable:l.sampled.getValue(i()),mouse:l.defining?C.value:void 0,defining:l.defining,previous:{entities:l.entities,primitives:l.primitives,groundPrimitives:l.groundPrimitives}}));l.entities=u?.entities??[],l.primitives=u?.primitives??[],l.groundPrimitives=u?.groundPrimitives??[]};return w.watch(e,(l,d)=>{d&&m(d)}),f.useCesiumEventListener(()=>t.value.map(l=>l.definitionChanged),(l,d)=>{["disabled","defining","scheme","sampled","time"].includes(d)&&m(l)}),w.watch(C,()=>{t.value.forEach(l=>l.defining&&m(l))}),{primitives:w.computed(()=>Array.from(h.scope)),groundPrimitives:w.computed(()=>Array.from(h.scope)),entities:w.computed(()=>Array.from(a.scope))}}function Z(t,e){const i=f.useViewer(),r=w.ref(!1),s=w.computed(()=>{var a;return(a=t.value)==null?void 0:a.sampled.getValue(e())});f.useScreenSpaceEventHandler(n.ScreenSpaceEventType.LEFT_CLICK,async a=>{var h,v;if(await L.promiseTimeout(1),!t.value||!s.value||r.value)return;const{scheme:C,defining:m,sampled:l}=t.value;if(!m)return;const d=f.canvasCoordToCartesian(a.position,i.value.scene);if(!d)return;(h=s.value).positions??(h.positions=[]),s.value.positions.push(d),l.setSample(s.value),((v=C.complete)==null?void 0:v.call(C,s.value))&&A.setDefining(t.value,!1)}),f.useScreenSpaceEventHandler(n.ScreenSpaceEventType.LEFT_DOUBLE_CLICK,async a=>{var h;if(!t.value||!s.value)return;r.value=!0,await L.promiseTimeout(2),r.value=!1;const{scheme:v,defining:C}=t.value;if(!C||!f.canvasCoordToCartesian(a.position,i.value.scene))return;((h=v.allowManualComplete)==null?void 0:h.call(v,s.value))&&A.setDefining(t.value,!1)}),f.useScreenSpaceEventHandler(n.ScreenSpaceEventType.RIGHT_CLICK,async()=>{var a;if(!t.value||!s.value)return;const{defining:h,sampled:v}=t.value;h&&((a=s.value).positions??(a.positions=[]),s.value.positions.length!==0&&(s.value.positions.splice(s.value.positions.length-1,1),v.setSample(s.value)))});const o=w.ref(),c=()=>{var a,h;if(!((a=t.value)!=null&&a.defining))o.value&&(o.value=void 0,i.value.container.parentElement.style.removeProperty("cursor"));else{const v=t.value.scheme.definingCursor;o.value=f.isFunction(v)?v(s.value):v,o.value&&((h=i.value)==null||h.container.parentElement.style.setProperty("cursor",o.value))}};f.useCesiumEventListener(()=>{var a;return(a=t.value)==null?void 0:a.definitionChanged},(a,h)=>{(h==="defining"||h==="sampled")&&c()}),w.watch(t,()=>c())}function ee(t,e,i){const r=f.useViewer(),s=f.useDataSource(new n.CustomDataSource),o=f.useEntityScope({collection:()=>s.value.entities}),c=w.shallowRef(),a=w.shallowRef(),h=m=>{var l,d;return m?((l=a.value)==null?void 0:l.id)===m.id?P.ACTIVE:((d=c.value)==null?void 0:d.id)===m.id?P.HOVER:P.IDLE:P.IDLE},v=(m,l)=>{const d=m.skeletons,p=[];if(l||m.disabled)m.skeletons=[];else{const u=m.sampled.getValue(i()),_=m.defining,g=e.value===m;m.scheme.skeletons.forEach(b=>{var S;if(f.isFunction(b.disabled)?b.disabled({active:g,defining:_}):b.disabled)return;const V=((S=b.format)==null?void 0:S.call(b,u))??u?.positions??[];V.forEach((K,N)=>{var F;let T=d.find(D=>D.index===N&&D.skeleton===b);const j=(F=b.render)==null?void 0:F.call(b,{defining:_,active:g,index:N,packable:u,positions:V,position:K,action:h(T)}),H=new R(j??{});T?H.propertyNames.forEach(D=>{D!=="id"&&(T[D]=H[D])}):T=H,T.plot=m,T.skeleton=b,T.index=N,p.push(T)})})}m.skeletons=p},{addGraphicEvent:C}=f.useGraphicEvent();return w.watchEffect(m=>{const l=C("global","DRAG",({event:d,pick:p,dragging:u,lockCamera:_})=>{var g;if(p.id instanceof R&&o.scope.has(p.id)){const y=p.id,b=y.plot;if(b.defining)return;a.value=y;const S=y.skeleton,W=y.index,V=b.sampled.getValue(i());(g=S.onDrag)==null||g.call(S,{viewer:r.value,sampled:b.sampled,packable:V,active:e.value===b,index:W,event:d,dragging:u,lockCamera:_})}else a.value=void 0},{cursor:({pick:d})=>{var p;if(!((p=e.value)!=null&&p.defining)&&o.scope.has(d.id)){const u=d.id.skeleton;return f.isFunction(u?.cursor)?u.cursor(d):w.toValue(u?.cursor)}},dragCursor:({pick:d})=>{var p;if(!((p=e.value)!=null&&p.defining)&&o.scope.has(d.id)){const u=d.id.skeleton;return f.isFunction(u?.dragCursor)?u.dragCursor(d):w.toValue(u?.dragCursor)}}});m(l)}),L.onKeyStroke(m=>{var l;if(a.value){const d=a.value,p=d.plot,u=d.skeleton,_=d.index,g=p.sampled.getValue(i());(l=u.onKeyPressed)==null||l.call(u,{viewer:r.value,sampled:p.sampled,packable:g,index:_,keyEvent:m})}}),w.watchEffect(m=>{const l=C("global","HOVER",({hovering:d,pick:p})=>{if(d&&p.id instanceof R&&o.scope.has(p.id)){const u=p.id;c.value=u}else c.value=void 0});m(l)}),w.watchEffect(m=>{const l=C("global","LEFT_CLICK",({event:d,pick:p})=>{var u;if(p.id instanceof R&&o.scope.has(p.id)){const _=p.id;a.value=_;const g=_.plot,y=_.skeleton,b=_.index,S=g.sampled.getValue(i());(u=y.onLeftClick)==null||u.call(y,{viewer:r.value,sampled:g.sampled,packable:S,active:e.value===g,defining:g.defining,index:b,event:d})}else a.value=void 0});m(l)}),L.watchArray(t,(m,l,d,p=[])=>{d.forEach(u=>v(u)),p.forEach(u=>v(u,!0))}),f.useCesiumEventListener(()=>t.value.map(m=>m.definitionChanged),(m,l,d,p)=>{if(["disabled","defining","scheme","sampled","time"].includes(l))w.nextTick(()=>v(m));else if(l==="skeletons"){const{added:u,removed:_}=f.arrayDiff(d,p);u.forEach(g=>o.add(g)),_.forEach(g=>o.remove(g))}}),w.watch(e,(m,l)=>{m&&v(m),l&&v(l)}),{dataSource:s}}function ie(t){const e=t?.time||w.shallowRef(),i=f.useViewer(),r=()=>{var l;return((l=e.value)==null?void 0:l.clone())||new n.JulianDate(0,0)},s=w.shallowReactive(new Set),o=w.computed(()=>Array.from(s)),c=w.shallowRef(),a=w.shallowRef();f.useCesiumEventListener([()=>{var l;return(l=c.value)==null?void 0:l.sampled.definitionChanged}],()=>{var l;a.value=(l=c.value)==null?void 0:l.sampled.getValue(r())}),Z(c,r),X(o,c,r),ee(o,c,r),f.useScreenSpaceEventHandler(n.ScreenSpaceEventType.LEFT_CLICK,l=>{var d,p,u;if((d=c.value)!=null&&d.defining)return;const _=(p=i.value)==null?void 0:p.scene.pick(l.position.clone());if(!(((u=_?.id)==null?void 0:u.plot)instanceof A)){if(!_){c.value=void 0;return}c.value=o.value.find(g=>f.pickHitGraphic(_,[...g.entities,...g.primitives,...g.groundPrimitives]))}});let h,v;return w.watch(c,(l,d)=>{var p,u;if(d&&d.defining){const _=d.sampled.getValue(r());((u=(p=d.scheme).allowManualComplete)==null?void 0:u.call(p,_))?(A.setDefining(d,!1),h?.(d)):s.delete(d)}}),{plots:o,time:e,operate:async l=>new Promise((d,p)=>{h=d,v=p;const u=l instanceof A?l:new A(l);return s.has(u)||s.add(u),c.value=u,d(u)}),remove:l=>(l===c.value&&(c.value=void 0),s.has(l)?(s.delete(l),!0):!1),cancel:v}}function x(){return{disabled:({active:t})=>!t,cursor:"pointer",dragCursor:"crosshair",onDrag({viewer:t,sampled:e,packable:i,event:r,index:s,lockCamera:o}){o();const c=f.canvasCoordToCartesian(r.endPosition,t.scene);if(c){const a=[...i.positions??[]];a[s]=c,e.setSample({time:i.time,derivative:i.derivative,positions:a})}},onKeyPressed({viewer:t,keyEvent:e,sampled:i,packable:r,index:s}){var o;const c=(o=f.toCartographic(t.camera.position))==null?void 0:o.height;if(!c||!["ArrowUp","ArrowRight","ArrowDown","ArrowLeft"].includes(e.key))return;e.preventDefault();let a=0;switch(e.key){case"ArrowRight":a=Math.PI/2;break;case"ArrowDown":a=Math.PI;break;case"ArrowLeft":a=-Math.PI/2;break;case"ArrowUp":a=0;break}const h=(t.camera.heading+a)%(2*Math.PI),v=[...r.positions??[]],C=f.toCartographic(v[s]),l=c/1e5*Math.PI/180/1e3;C.latitude+=l*Math.cos(h),C.longitude+=l*Math.sin(h),v[s]=f.toCartesian3(C),i.setSample({time:r.time,derivative:r.derivative,positions:v})},render:({position:t,action:e})=>{const i={[P.IDLE]:n.Color.BLUE.withAlpha(.4),[P.HOVER]:n.Color.BLUE.withAlpha(.6),[P.ACTIVE]:n.Color.AQUA.withAlpha(1)};return{position:t,point:{pixelSize:8,color:i[e],disableDepthTestDistance:Number.POSITIVE_INFINITY,outlineWidth:1,outlineColor:n.Color.WHITE.withAlpha(.4)}}}}}function M(){let t=-1;return{disabled:({active:e,defining:i})=>!e||i,cursor:"pointer",dragCursor:"crosshair",format(e){const i=e.positions??[];return i.length<2?[]:i.map((r,s)=>{const o=s===i.length-1?i[0]:i[s+1];return n.Cartesian3.midpoint(r,o,new n.Cartesian3)})},onDrag({viewer:e,sampled:i,packable:r,event:s,index:o,lockCamera:c,dragging:a}){c();const h=f.canvasCoordToCartesian(s.endPosition,e.scene);if(!h)return;const v=[...r.positions??[]];t===-1?(t=o,v.splice(o+1,0,h)):v[t+1]=h,a||(t=-1),i.setSample({time:r.time,derivative:r.derivative,positions:v})},render:({position:e,action:i,active:r})=>{if(!r)return;const s={[P.IDLE]:n.Color.GREEN.withAlpha(.4),[P.HOVER]:n.Color.GREEN.withAlpha(.6),[P.ACTIVE]:n.Color.GREEN.withAlpha(1)};return{position:e,point:{pixelSize:6,color:s[i],disableDepthTestDistance:Number.POSITIVE_INFINITY,outlineWidth:1,outlineColor:n.Color.WHITE.withAlpha(.4)}}}}}function U(){let t=-1;return{disabled:({active:e,defining:i})=>!e||i,cursor:"pointer",dragCursor:"crosshair",format(e){const i=e.positions??[];if(i.length<2)return[];const r=[];for(let s=0;s<i.length-1;s++)r.push(n.Cartesian3.midpoint(i[s],i[s+1],new n.Cartesian3));return r},onDrag({viewer:e,sampled:i,packable:r,event:s,index:o,lockCamera:c,dragging:a}){c();const h=f.canvasCoordToCartesian(s.endPosition,e.scene);if(!h)return;const v=[...r.positions??[]];t===-1?(t=o,v.splice(o+1,0,h)):v[t+1]=h,a||(t=-1),i.setSample({time:r.time,derivative:r.derivative,positions:v})},render:({position:e,action:i})=>{const r={[P.IDLE]:n.Color.GREEN.withAlpha(.4),[P.HOVER]:n.Color.GREEN.withAlpha(.6),[P.ACTIVE]:n.Color.GREEN.withAlpha(1)};return{position:e,point:{pixelSize:6,color:r[i],disableDepthTestDistance:Number.POSITIVE_INFINITY,outlineWidth:1,outlineColor:n.Color.WHITE.withAlpha(.4)}}}}}const te=`data:image/svg+xml;utf8,${encodeURIComponent('<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 24 24"><path stroke="#ffffff" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="m18 9l3 3l-3 3m-3-3h6M6 9l-3 3l3 3m-3-3h6m0 6l3 3l3-3m-3-3v6m3-15l-3-3l-3 3m3-3v6"/></svg>')}`;function k(){return{disabled:({active:t,defining:e})=>!t||e,cursor:"pointer",dragCursor:"crosshair",format(t){const e=t.positions??[];if(e.length===0)return[];if(e.length===1)return[e[0]];{const i=n.Rectangle.center(n.Rectangle.fromCartesianArray(e));return[f.toCartesian3(i)]}},onDrag({viewer:t,sampled:e,packable:i,event:r,lockCamera:s,dragging:o}){o&&s();const c=f.canvasCoordToCartesian(r.startPosition,t.scene),a=f.canvasCoordToCartesian(r.endPosition,t.scene);if(!c||!a)return;const h=n.Cartesian3.subtract(a,c,new n.Cartesian3),v=[...i.positions??[]];e.setSample({time:i.time,derivative:i.derivative,positions:v.map(C=>n.Cartesian3.add(C,h,new n.Cartesian3))})},render:({position:t,action:e})=>{const i={[P.IDLE]:n.Color.WHITE,[P.HOVER]:n.Color.WHITE,[P.ACTIVE]:n.Color.AQUA.withAlpha(1)};return{position:t,billboard:{image:te,width:20,height:20,color:i[e],pixelOffset:new n.Cartesian3(0,-20),horizontalOrigin:n.HorizontalOrigin.CENTER,verticalOrigin:n.VerticalOrigin.BOTTOM,disableDepthTestDistance:Number.POSITIVE_INFINITY}}}}}function ne(t){if(t.length<3)throw new Error("positions must >= 3");if(t.length===3)return[[t[0].clone(),t[1].clone(),t[2].clone()]];const e=n.CoplanarPolygonGeometry.createGeometry(n.CoplanarPolygonGeometry.fromPositions({positions:t,vertexFormat:n.VertexFormat.POSITION_ONLY}));if(!e)throw new Error("positions\u65E0\u6CD5\u7EC4\u6210\u6709\u6548\u7684geometry,\u68C0\u67E5\u70B9\u4F4D\u662F\u5426\u9519\u8BEF");const i=e.attributes.position.values,r=e.indices,s=[];for(let o=0;o<r.length;o+=3){const c=n.Cartesian3.unpack(i,r[o]*3,new n.Cartesian3),a=n.Cartesian3.unpack(i,r[o+1]*3,new n.Cartesian3),h=n.Cartesian3.unpack(i,r[o+2]*3,new n.Cartesian3);s.push([c,a,h])}return s}function se(t,e,i){const r=n.Cartesian3.subtract(t,e,new n.Cartesian3),s=n.Cartesian3.subtract(i,e,new n.Cartesian3),o=n.Cartesian3.cross(r,s,r);return n.Cartesian3.magnitude(o)*.5}function oe(t){const i=n.ClassificationType.BOTH,r=Math.floor(10);return{scene:t?.scene,clampToGround:!1,classificationType:i,terrainProvider:t?.terrainProvider,density:r}}async function re(t,e){if(t.length<2)throw new Error("positions.length must >= 2");const{density:i}=oe(e);if(i<=0)throw new Error("options.density must > 0");return ne(t).reduce((s,o)=>s+=se(...o),0)}const ae=new I({type:"measureArea",allowManualComplete:t=>t.positions.length>=3,skeletons:[x,M],initEntites:()=>[new n.Entity({label:{font:"14pt"},polyline:{material:n.Color.YELLOW.withAlpha(.5)},polygon:{material:n.Color.YELLOW.withAlpha(.5)}})],render(t){var e;const{mouse:i,packable:r}=t,s=((e=t.previous.entities)==null?void 0:e[0])??new n.Entity({label:{font:"14pt"},polyline:{material:n.Color.YELLOW.withAlpha(.5)},polygon:{material:n.Color.YELLOW.withAlpha(.5)}}),o=[...r.positions??[]];return i&&o.push(i),o.length===2?(s.position=void 0,s.label.text=void 0,s.polygon.hierarchy=void 0,s.polyline.positions=new n.CallbackProperty(()=>o,!1)):o.length>=3?(o.push(o[0]),s.position=new n.ConstantPositionProperty(f.toCartesian3(n.Rectangle.center(n.Rectangle.fromCartesianArray(o)))),s.label.text=new n.ConstantProperty(""),re(o).then(c=>{let a="";c/1e3/1e3>10?a=`${(c/1e3/1e3).toFixed(2)}km\xB2`:a=`${(+c).toFixed(2)}m\xB2`,s.label.text=new n.ConstantProperty(a)}),s.polyline.positions=void 0,s.polygon.hierarchy=new n.CallbackProperty(()=>o.length>=3?new n.PolygonHierarchy([...o]):void 0,!1)):(s.position=void 0,s.polygon.hierarchy=void 0,s.polyline.positions=void 0),{entities:[s]}}}),le=new I({type:"billboard",complete:t=>t.positions.length>=1,skeletons:[k],initEntites:()=>[new n.Entity({billboard:{image:"/favicon.svg",width:32,height:32}})],render(t){var e,i;const{mouse:r,packable:s}=t,o=((e=t.previous.entities)==null?void 0:e[0])??new n.Entity({billboard:{}}),c=((i=s.positions)==null?void 0:i[0])??r;return o.position=new n.CallbackPositionProperty(()=>c,!0),{entities:[o]}}}),ce=new I({type:"label",complete:t=>t.positions.length>=1,skeletons:[k],initEntites:()=>[new n.Entity({label:{text:"Label"}})],render(t){var e,i;const{mouse:r,packable:s}=t,o=((e=t.previous.entities)==null?void 0:e[0])??new n.Entity({label:{}}),c=((i=s.positions)==null?void 0:i[0])??r;return o.position=new n.CallbackPositionProperty(()=>c,!0),{entities:[o]}}}),de=new I({type:"polygon",allowManualComplete:t=>t.positions.length>=3,skeletons:[x,M,k],initEntites:()=>[new n.Entity({polyline:{material:n.Color.YELLOW.withAlpha(.5)},polygon:{material:n.Color.YELLOW.withAlpha(.5)}})],render(t){var e;const{mouse:i,packable:r}=t,s=((e=t.previous.entities)==null?void 0:e[0])??new n.Entity({polyline:{material:n.Color.YELLOW.withAlpha(.5)},polygon:{material:n.Color.YELLOW.withAlpha(.5)}}),o=[...r.positions??[]];return i&&o.push(i),o.length===2?(s.polygon.hierarchy=void 0,s.polyline.positions=new n.CallbackProperty(()=>o,!1)):o.length>=3?(s.polyline.positions=void 0,s.polygon.hierarchy=new n.CallbackProperty(()=>(o.push(o[0]),o.length>=3?new n.PolygonHierarchy([...o]):void 0),!1)):(s.polygon.hierarchy=void 0,s.polyline.positions=void 0),{entities:[s]}}}),ue=new I({type:"polyline",allowManualComplete:t=>t.positions.length>=2,skeletons:[x,U,k],initEntites:()=>[new n.Entity({polyline:{width:1}})],render(t){var e;const{mouse:i,packable:r}=t,s=((e=t.previous.entities)==null?void 0:e[0])??new n.Entity({polyline:{}});return s.polyline.positions=new n.CallbackProperty(()=>{const o=[...r.positions??[]].concat(i?[i]:[]);return o.length>=2?o:[]},!1),{entities:[s]}}}),he=new I({type:"rectangle",complete:t=>t.positions.length>=2,skeletons:[x,M,k],initEntites:()=>[new n.Entity({rectangle:{material:n.Color.YELLOW.withAlpha(.5)}})],render(t){var e;const{mouse:i,packable:r}=t,s=((e=t.previous.entities)==null?void 0:e[0])??new n.Entity({rectangle:{material:n.Color.YELLOW.withAlpha(.5)}}),o=[...r.positions??[]];return i&&o.push(i),o.length>=2?s.rectangle.coordinates=new n.CallbackProperty(()=>n.Rectangle.fromCartesianArray(o),!1):s.rectangle.coordinates=void 0,{entities:[s]}}});exports.PlotAction=P,exports.PlotFeature=A,exports.PlotScheme=I,exports.PlotSkeletonEntity=R,exports.SampledPlotProperty=G,exports.SampledPlotStrategy=J,exports.control=x,exports.interval=M,exports.intervalNonclosed=U,exports.moved=k,exports.schemeBillboard=le,exports.schemeLabel=ce,exports.schemeMeasureArea=ae,exports.schemePolygon=de,exports.schemePolyline=ue,exports.schemeRectangle=he,exports.usePlot=ie;
|
|
2
|
-
//# sourceMappingURL=index.min.cjs.map
|
|
1
|
+
var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;l<u;l++)d=c[l],!a.call(e,d)&&d!==o&&t(e,d,{get:(e=>i[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},s=(n,r,a)=>(a=n==null?{}:e(i(n)),o(r||!n||!n.__esModule?t(a,`default`,{value:n,enumerable:!0}):a,n));const c=s(require(`cesium`)),l=s(require(`vesium`)),u=s(require(`@vueuse/core`)),d=s(require(`vue`)),f=s(require(`@turf/turf`));var p=class e{constructor(e){this.type=e.type,this.complete=e.complete,this.allowManualComplete=e.allowManualComplete,this.definingCursor=e.definingCursor??`crosshair`,this.skeletons=e.skeletons?.map(e=>e())??[],this.initRender=e.initRender,this.render=e.render}type;complete;allowManualComplete;definingCursor;skeletons;initRender;render;static _record=new Map;static getCacheTypes(){return[...this._record.keys()]}static getCache(t){return e._record.get(t)}static setCache(t){(0,l.assertError)(!t.type,"`scheme.type` is required"),e._record.set(t.type,t)}static resolve(t){if(typeof t==`string`){let n=e.getCache(t);return(0,u.assert)(!!n,`scheme ${t} not found`),n}else if(t instanceof e)return t;else return new e(t)}};let m=function(e){return e[e.NEAR=0]=`NEAR`,e[e.CYCLE=1]=`CYCLE`,e[e.STRICT=2]=`STRICT`,e}({});const h=(e,t,n,r)=>r===0?{time:e,positions:t.positions?.map(e=>e.clone()),derivative:t.derivative}:r===1?{time:e,positions:n.positions?.map(e=>e.clone()),derivative:t.derivative}:{time:e,positions:n.positions?.map((e,n)=>{let i=t.positions?.[n];return i?c.Cartesian3.lerp(i,e,r,new c.Cartesian3):e}),derivative:t.derivative};var g=class e{constructor(e){this.interpolationAlgorithm=e?.interpolationAlgorithm,this.strategy=e?.strategy??m.NEAR,e?.packables?.forEach(e=>this.setSample(e)),this._times.length||this.setSample({time:new c.JulianDate(0,0),positions:[],derivative:void 0})}static defaultInterpolationAlgorithm=h;strategy;interpolationAlgorithm;_times=[];_sampleds=[];_derivatives=[];get isConstant(){return this._times.length===0}_definitionChanged=new c.Event;get definitionChanged(){return this._definitionChanged}getTimes(){return this._times.map(e=>e.clone())}getIndexScope(e){if(!this._times.length)return;let t=this._times[0],n=this._times[this._times.length-1];if(c.JulianDate.lessThan(e,t)||c.JulianDate.greaterThan(e,n))switch(this.strategy){case m.STRICT:return;case m.NEAR:e=c.JulianDate.lessThan(e,this._times[0])?this._times[0].clone():this._times[this._times.length-1].clone();break;case m.CYCLE:{let t=c.JulianDate.toDate(this._times[0]).getTime(),n=c.JulianDate.toDate(this._times[this._times.length-1]).getTime(),r=n-t,i=c.JulianDate.toDate(e).getTime(),a=(i-t)%r,o=new Date(t+a);e=c.JulianDate.fromDate(o);break}}let r=this._times.findIndex(t=>c.JulianDate.lessThanOrEquals(e,t)),i=Math.min(r,this._times.length-1),a=c.JulianDate.toDate(this._times[r]).getTime(),o=c.JulianDate.toDate(this._times[i]).getTime(),s=c.JulianDate.toDate(e).getTime();return{prevIndex:r,nextIndex:i,proportion:(s-a)/(o-a)||0}}getValue(t,n){if(n??={time:t,positions:[]},Object.assign(n,{time:t?.clone(),positions:[],derivative:void 0}),!t)return n.time=this._times[0].clone(),n.positions=this._sampleds[0]?.map(e=>e.clone(e)),n.derivative=this._derivatives[0],n;let r=this.getIndexScope(t);if(!r)return n;n.time=t;let{prevIndex:i,nextIndex:a,proportion:o}=r,s={time:this._times[i],positions:this._sampleds[i],derivative:this._derivatives[i]},c={time:this._times[a],positions:this._sampleds[a],derivative:this._derivatives[a]},l=(this.interpolationAlgorithm||e.defaultInterpolationAlgorithm)(t,s,c,o);return Object.assign(n,l),n}setSample(e){let t=e.time?.clone()??this._times[0].clone(),n=e.positions?.map(e=>e.clone())??[],r=e.derivative,i=this._times.findIndex(e=>c.JulianDate.equals(t,e));i===-1?this._times.length===0?(this._times[0]=t,this._sampleds[0]=n,this._derivatives[0]=e.derivative):c.JulianDate.lessThan(t,this._times[0])?(this._times.splice(0,0,t),this._sampleds.splice(0,0,n),this._derivatives.splice(0,0,r)):c.JulianDate.greaterThan(t,this._times[this._times.length-1])&&(this._times.push(t),this._sampleds.push(n),this._derivatives.push(r)):(this._times[i]=t,this._sampleds[i]=n,this._derivatives[i]=e.derivative),this.definitionChanged.raiseEvent(this)}setSamples(e){e.forEach(e=>this.setSample(e))}removeSample(e){let t=this._times.findIndex(t=>t.equals(e));if(t!==-1){this._sampleds.splice(t,1),this._derivatives.splice(t,1);let e=this._times.splice(t,1);if(e.length)return this._definitionChanged.raiseEvent(this),!0}return!1}removeSamples(e){for(let t=0;t<this._times.length;t++){let n=this._times[t];c.TimeInterval.contains(e,n)&&this.removeSample(n)}}equals(e){return e===this}},_=class{constructor(e){let{id:t,disabled:n=!1,sampled:r}=e;this._id=t||(0,c.createGuid)(),this._scheme=p.resolve(e.scheme),this._definitionChanged=new c.Event,this._defining=!0,this._disabled=n,this._sampled=r instanceof g?r:new g(r),this._sampled.definitionChanged.addEventListener(e=>this._definitionChanged.raiseEvent(this,`sampled`,e,e),this);let i=this._scheme.initRender?.()??{};this._entities=[...i.entities??[]],this._primitives=[...i.primitives??[]],this._groundPrimitives=[...i.groundPrimitives??[]],this._skeletons=[]}_id;get id(){return this._id}_scheme;get scheme(){return this._scheme}_definitionChanged;get definitionChanged(){return this._definitionChanged}_defining;get defining(){return this._defining}static setDefining(e,t){e._defining!==t&&(e._definitionChanged.raiseEvent(e,`defining`,t,e._defining),e._defining=t)}_disabled;get disabled(){return this._disabled}set disabled(e){this.disabled=e}_sampled;get sampled(){return this._sampled}_entities;get entities(){return this._entities}set entities(e){this._definitionChanged.raiseEvent(this,`entities`,e,this._entities),this._entities=e}_primitives;get primitives(){return this._primitives}set primitives(e){this._definitionChanged.raiseEvent(this,`primitives`,e,this._primitives),this._primitives=e}_groundPrimitives;get groundPrimitives(){return this._groundPrimitives}set groundPrimitives(e){this._definitionChanged.raiseEvent(this,`groundPrimitives`,e,this._groundPrimitives),this._groundPrimitives=e}_skeletons;get skeletons(){return this._skeletons}set skeletons(e){this._definitionChanged.raiseEvent(this,`skeletons`,e,this._skeletons),this._skeletons=e}};let v=function(e){return e[e.IDLE=0]=`IDLE`,e[e.HOVER=1]=`HOVER`,e[e.ACTIVE=2]=`ACTIVE`,e}({});var y=class extends c.Entity{constructor(e){super(e)}};function b(e,t,n){let r=(0,l.useViewer)(),i=(0,l.usePrimitive)(new c.PrimitiveCollection),a=(0,l.usePrimitive)(new c.PrimitiveCollection,{collection:`ground`}),o=(0,l.useDataSource)(new c.CustomDataSource),s=(0,l.useEntityScope)({collection:()=>o.value.entities}),f=(0,l.usePrimitiveScope)({collection:()=>i.value}),p=(0,l.usePrimitiveScope)({collection:()=>a.value}),m=(0,d.shallowRef)();(0,l.useScreenSpaceEventHandler)(c.ScreenSpaceEventType.MOUSE_MOVE,e=>{m.value=(0,l.canvasCoordToCartesian)(e?.endPosition,r.value.scene)}),(0,u.watchArray)(e,(e,t,n,r=[])=>{r.forEach(e=>{s.removeWhere(t=>e.entities.includes(t)),f.removeWhere(t=>e.primitives.includes(t)),p.removeWhere(t=>e.groundPrimitives.includes(t))}),n.forEach(e=>{e.entities.forEach(e=>s.add(e)),e.primitives.forEach(e=>f.add(e)),e.groundPrimitives.forEach(e=>p.add(e))})},{immediate:!0,flush:`post`}),(0,l.useCesiumEventListener)(()=>e.value.map(e=>e.definitionChanged),(e,t,n,r)=>{if(t===`entities`){let{added:e,removed:t}=(0,l.arrayDiff)(n,r);e.forEach(e=>s.add(e)),t.forEach(e=>s.remove(e))}else if(t===`primitives`){let{added:e,removed:t}=(0,l.arrayDiff)(n,r);e.forEach(e=>f.add(e)),t.forEach(e=>f.remove(e))}else if(t===`groundPrimitives`){let{added:e,removed:t}=(0,l.arrayDiff)(n,r);e.forEach(e=>p.add(e)),t.forEach(e=>p.remove(e))}});let h=async e=>{let t=await e.scheme.render?.({packable:e.sampled.getValue(n()),mouse:e.defining?m.value:void 0,defining:e.defining,previous:{entities:e.entities,primitives:e.primitives,groundPrimitives:e.groundPrimitives}});e.entities=t?.entities??[],e.primitives=t?.primitives??[],e.groundPrimitives=t?.groundPrimitives??[]};return(0,d.watch)(t,(e,t)=>{t&&h(t)}),(0,l.useCesiumEventListener)(()=>e.value.map(e=>e.definitionChanged),(e,t)=>{[`disabled`,`defining`,`scheme`,`sampled`,`time`].includes(t)&&h(e)}),(0,d.watch)(m,()=>{e.value.forEach(e=>e.defining&&h(e))}),{primitives:(0,d.computed)(()=>Array.from(f.scope)),groundPrimitives:(0,d.computed)(()=>Array.from(f.scope)),entities:(0,d.computed)(()=>Array.from(s.scope))}}function x(e,t){let n=(0,l.useViewer)(),r=(0,d.ref)(!1),i=(0,d.computed)(()=>e.value?.sampled.getValue(t()));(0,l.useScreenSpaceEventHandler)(c.ScreenSpaceEventType.LEFT_CLICK,async t=>{if(await(0,u.promiseTimeout)(1),!e.value||!i.value||r.value)return;let{scheme:a,defining:o,sampled:s}=e.value;if(!o)return;let c=(0,l.canvasCoordToCartesian)(t.position,n.value.scene);if(!c)return;i.value.positions??=[],i.value.positions.push(c),s.setSample(i.value);let d=a.complete?.(i.value);d&&_.setDefining(e.value,!1)}),(0,l.useScreenSpaceEventHandler)(c.ScreenSpaceEventType.LEFT_DOUBLE_CLICK,async t=>{if(!e.value||!i.value)return;r.value=!0,await(0,u.promiseTimeout)(2),r.value=!1;let{scheme:a,defining:o}=e.value;if(!o)return;let s=(0,l.canvasCoordToCartesian)(t.position,n.value.scene);if(!s)return;let c=a.allowManualComplete?.(i.value);c&&_.setDefining(e.value,!1)}),(0,l.useScreenSpaceEventHandler)(c.ScreenSpaceEventType.RIGHT_CLICK,async()=>{if(!e.value||!i.value)return;let{defining:t,sampled:n}=e.value;t&&(i.value.positions??=[],i.value.positions.length!==0&&(i.value.positions.splice(i.value.positions.length-1,1),n.setSample(i.value)))});let a=(0,d.ref)(),o=()=>{if(!e.value?.defining)a.value&&(a.value=void 0,n.value.container.parentElement.style.removeProperty(`cursor`));else{let t=e.value.scheme.definingCursor;a.value=(0,l.isFunction)(t)?t(i.value):t,a.value&&n.value?.container.parentElement.style.setProperty(`cursor`,a.value)}};(0,l.useCesiumEventListener)(()=>e.value?.definitionChanged,(e,t)=>{(t===`defining`||t===`sampled`)&&o()}),(0,d.watch)(e,()=>o())}function S(e,t,n){let r=(0,l.useViewer)(),i=(0,l.useDataSource)(new c.CustomDataSource),a=(0,l.useEntityScope)({collection:()=>i.value.entities}),o=(0,d.shallowRef)(),s=(0,d.shallowRef)(),f=e=>e?s.value?.id===e.id?v.ACTIVE:o.value?.id===e.id?v.HOVER:v.IDLE:v.IDLE,p=(e,r)=>{let i=e.skeletons,a=[];if(r||e.disabled)e.skeletons=[];else{let r=e.sampled.getValue(n()),o=e.defining,s=t.value===e,c=e.scheme.skeletons;c.forEach(t=>{let n=(0,l.isFunction)(t.disabled)?t.disabled({active:s,defining:o}):t.disabled;if(n)return;let c=t.format?.(r)??r?.positions??[];c.forEach((n,l)=>{let u=i.find(e=>e.index===l&&e.skeleton===t),d=t.render?.({defining:o,active:s,index:l,packable:r,positions:c,position:n,action:f(u)}),p=new y(d??{});u?p.propertyNames.forEach(e=>{e!==`id`&&(u[e]=p[e])}):u=p,u.plot=e,u.skeleton=t,u.index=l,a.push(u)})})}e.skeletons=a},{addGraphicEvent:m}=(0,l.useGraphicEvent)();return(0,d.watchEffect)(e=>{let i=m(`global`,`DRAG`,({event:e,pick:i,dragging:o,lockCamera:c})=>{if(i.id instanceof y&&a.scope.has(i.id)){let a=i.id,l=a.plot;if(l.defining)return;s.value=a;let u=a.skeleton,d=a.index,f=l.sampled.getValue(n());u.onDrag?.({viewer:r.value,sampled:l.sampled,packable:f,active:t.value===l,index:d,event:e,dragging:o,lockCamera:c})}else s.value=void 0},{cursor:({pick:e})=>{if(!t.value?.defining&&a.scope.has(e.id)){let t=e.id.skeleton;return(0,l.isFunction)(t?.cursor)?t.cursor(e):(0,d.toValue)(t?.cursor)}},dragCursor:({pick:e})=>{if(!t.value?.defining&&a.scope.has(e.id)){let t=e.id.skeleton;return(0,l.isFunction)(t?.dragCursor)?t.dragCursor(e):(0,d.toValue)(t?.dragCursor)}}});e(i)}),(0,u.onKeyStroke)(e=>{if(s.value){let t=s.value,i=t.plot,a=t.skeleton,o=t.index,c=i.sampled.getValue(n());a.onKeyPressed?.({viewer:r.value,sampled:i.sampled,packable:c,index:o,keyEvent:e})}}),(0,d.watchEffect)(e=>{let t=m(`global`,`HOVER`,({hovering:e,pick:t})=>{if(e&&t.id instanceof y&&a.scope.has(t.id)){let e=t.id;o.value=e}else o.value=void 0});e(t)}),(0,d.watchEffect)(e=>{let i=m(`global`,`LEFT_CLICK`,({event:e,pick:i})=>{if(i.id instanceof y&&a.scope.has(i.id)){let a=i.id;s.value=a;let o=a.plot,c=a.skeleton,l=a.index,u=o.sampled.getValue(n());c.onLeftClick?.({viewer:r.value,sampled:o.sampled,packable:u,active:t.value===o,defining:o.defining,index:l,event:e})}else s.value=void 0});e(i)}),(0,u.watchArray)(e,(e,t,n,r=[])=>{n.forEach(e=>p(e)),r.forEach(e=>p(e,!0))}),(0,l.useCesiumEventListener)(()=>e.value.map(e=>e.definitionChanged),(e,t,n,r)=>{if([`disabled`,`defining`,`scheme`,`sampled`,`time`].includes(t))(0,d.nextTick)(()=>p(e));else if(t===`skeletons`){let{added:e,removed:t}=(0,l.arrayDiff)(n,r);e.forEach(e=>a.add(e)),t.forEach(e=>a.remove(e))}}),(0,d.watch)(t,(e,t)=>{e&&p(e),t&&p(t)}),{dataSource:i}}function ee(e){let t=e?.time||(0,d.shallowRef)(),n=(0,l.useViewer)(),r=()=>t.value?.clone()||new c.JulianDate(0,0),i=(0,d.shallowReactive)(new Set),a=(0,d.computed)(()=>Array.from(i)),o=(0,d.shallowRef)(),s=(0,d.shallowRef)();(0,l.useCesiumEventListener)([()=>o.value?.sampled.definitionChanged],()=>{s.value=o.value?.sampled.getValue(r())}),x(o,r),b(a,o,r),S(a,o,r),(0,l.useScreenSpaceEventHandler)(c.ScreenSpaceEventType.LEFT_CLICK,e=>{if(o.value?.defining)return;let t=n.value?.scene.pick(e.position.clone());if(!(t?.id?.plot instanceof _)){if(!t){o.value=void 0;return}o.value=a.value.find(e=>(0,l.pickHitGraphic)(t,[...e.entities,...e.primitives,...e.groundPrimitives]))}});let u,f;(0,d.watch)(o,(e,t)=>{if(t&&t.defining){let e=t.sampled.getValue(r()),n=t.scheme.allowManualComplete?.(e);n?(_.setDefining(t,!1),u?.(t)):i.delete(t)}});let p=async e=>new Promise((t,n)=>{u=t,f=n;let r=e instanceof _?e:new _(e);return i.has(r)||i.add(r),o.value=r,t(r)}),m=e=>(e===o.value&&(o.value=void 0),i.has(e)?(i.delete(e),!0):!1);return{plots:a,time:t,operate:p,remove:m,cancel:f}}function C(){return{disabled:({active:e})=>!e,cursor:`pointer`,dragCursor:`crosshair`,onDrag({viewer:e,sampled:t,packable:n,event:r,index:i,lockCamera:a}){a();let o=(0,l.canvasCoordToCartesian)(r.endPosition,e.scene);if(o){let e=[...n.positions??[]];e[i]=o,t.setSample({time:n.time,derivative:n.derivative,positions:e})}},onKeyPressed({viewer:e,keyEvent:t,sampled:n,packable:r,index:i}){let a=(0,l.toCartographic)(e.camera.position)?.height;if(!a||![`ArrowUp`,`ArrowRight`,`ArrowDown`,`ArrowLeft`].includes(t.key))return;t.preventDefault();let o=0;switch(t.key){case`ArrowRight`:o=Math.PI/2;break;case`ArrowDown`:o=Math.PI;break;case`ArrowLeft`:o=-Math.PI/2;break;case`ArrowUp`:o=0;break}let s=(e.camera.heading+o)%(2*Math.PI),c=[...r.positions??[]],u=(0,l.toCartographic)(c[i]),d=a/1e5,f=d*Math.PI/180/1e3;u.latitude+=f*Math.cos(s),u.longitude+=f*Math.sin(s),c[i]=(0,l.toCartesian3)(u),n.setSample({time:r.time,derivative:r.derivative,positions:c})},render:({position:e,action:t})=>{let n={[v.IDLE]:c.Color.BLUE.withAlpha(.4),[v.HOVER]:c.Color.BLUE.withAlpha(.6),[v.ACTIVE]:c.Color.AQUA.withAlpha(1)};return{position:e,point:{pixelSize:8,color:n[t],disableDepthTestDistance:1/0,outlineWidth:1,outlineColor:c.Color.WHITE.withAlpha(.4)}}}}}function w(){let e=-1;return{disabled:({active:e,defining:t})=>!e||t,cursor:`pointer`,dragCursor:`crosshair`,format(e){let t=e.positions??[];return t.length<2?[]:t.map((e,n)=>{let r=n===t.length-1?t[0]:t[n+1];return c.Cartesian3.midpoint(e,r,new c.Cartesian3)})},onDrag({viewer:t,sampled:n,packable:r,event:i,index:a,lockCamera:o,dragging:s}){o();let c=(0,l.canvasCoordToCartesian)(i.endPosition,t.scene);if(!c)return;let u=[...r.positions??[]];e===-1?(e=a,u.splice(a+1,0,c)):u[e+1]=c,s||(e=-1),n.setSample({time:r.time,derivative:r.derivative,positions:u})},render:({position:e,action:t,active:n})=>{if(!n)return;let r={[v.IDLE]:c.Color.GREEN.withAlpha(.4),[v.HOVER]:c.Color.GREEN.withAlpha(.6),[v.ACTIVE]:c.Color.GREEN.withAlpha(1)};return{position:e,point:{pixelSize:6,color:r[t],disableDepthTestDistance:1/0,outlineWidth:1,outlineColor:c.Color.WHITE.withAlpha(.4)}}}}}function T(){let e=-1;return{disabled:({active:e,defining:t})=>!e||t,cursor:`pointer`,dragCursor:`crosshair`,format(e){let t=e.positions??[];if(t.length<2)return[];let n=[];for(let e=0;e<t.length-1;e++)n.push(c.Cartesian3.midpoint(t[e],t[e+1],new c.Cartesian3));return n},onDrag({viewer:t,sampled:n,packable:r,event:i,index:a,lockCamera:o,dragging:s}){o();let c=(0,l.canvasCoordToCartesian)(i.endPosition,t.scene);if(!c)return;let u=[...r.positions??[]];e===-1?(e=a,u.splice(a+1,0,c)):u[e+1]=c,s||(e=-1),n.setSample({time:r.time,derivative:r.derivative,positions:u})},render:({position:e,action:t})=>{let n={[v.IDLE]:c.Color.GREEN.withAlpha(.4),[v.HOVER]:c.Color.GREEN.withAlpha(.6),[v.ACTIVE]:c.Color.GREEN.withAlpha(1)};return{position:e,point:{pixelSize:6,color:n[t],disableDepthTestDistance:1/0,outlineWidth:1,outlineColor:c.Color.WHITE.withAlpha(.4)}}}}}const E=`data:image/svg+xml;utf8,${encodeURIComponent(`<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 24 24"><path stroke="#ffffff" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="m18 9l3 3l-3 3m-3-3h6M6 9l-3 3l3 3m-3-3h6m0 6l3 3l3-3m-3-3v6m3-15l-3-3l-3 3m3-3v6"/></svg>`)}`;function D(){return{disabled:({active:e,defining:t})=>!e||t,cursor:`pointer`,dragCursor:`crosshair`,format(e){let t=e.positions??[];if(t.length===0)return[];if(t.length===1)return[t[0]];{let e=c.Rectangle.center(c.Rectangle.fromCartesianArray(t));return[(0,l.toCartesian3)(e)]}},onDrag({viewer:e,sampled:t,packable:n,event:r,lockCamera:i,dragging:a}){a&&i();let o=(0,l.canvasCoordToCartesian)(r.startPosition,e.scene),s=(0,l.canvasCoordToCartesian)(r.endPosition,e.scene);if(!o||!s)return;let u=c.Cartesian3.subtract(s,o,new c.Cartesian3),d=[...n.positions??[]];t.setSample({time:n.time,derivative:n.derivative,positions:d.map(e=>c.Cartesian3.add(e,u,new c.Cartesian3))})},render:({position:e,action:t})=>{let n={[v.IDLE]:c.Color.WHITE,[v.HOVER]:c.Color.WHITE,[v.ACTIVE]:c.Color.AQUA.withAlpha(1)};return{position:e,billboard:{image:E,width:20,height:20,color:n[t],pixelOffset:new c.Cartesian3(0,-20),horizontalOrigin:c.HorizontalOrigin.CENTER,verticalOrigin:c.VerticalOrigin.BOTTOM,disableDepthTestDistance:1/0}}}}}function te(e){if(e.length<3)throw Error(`positions must >= 3`);if(e.length===3)return[[e[0].clone(),e[1].clone(),e[2].clone()]];let t=c.CoplanarPolygonGeometry.createGeometry(c.CoplanarPolygonGeometry.fromPositions({positions:e,vertexFormat:c.VertexFormat.POSITION_ONLY}));if(!t)throw Error(`positions无法组成有效的geometry,检查点位是否错误`);let n=t.attributes.position.values,r=t.indices,i=[];for(let e=0;e<r.length;e+=3){let t=c.Cartesian3.unpack(n,r[e]*3,new c.Cartesian3),a=c.Cartesian3.unpack(n,r[e+1]*3,new c.Cartesian3),o=c.Cartesian3.unpack(n,r[e+2]*3,new c.Cartesian3);i.push([t,a,o])}return i}async function O(e){let{positions:t,scene:n,classificationType:r=c.ClassificationType.BOTH,terrainProvider:i=n.terrainProvider}=e,a=[c.ClassificationType.BOTH,c.ClassificationType.CESIUM_3D_TILE].includes(r),o=[c.ClassificationType.BOTH,c.ClassificationType.TERRAIN].includes(r),s=new Promise(e=>{a?n.clampToHeightMostDetailed(t.map(e=>e.clone())).then(e).catch(t=>{console.warn(t),e([])}):e([])}),l=new Promise(e=>{o&&i?(0,c.sampleTerrainMostDetailed)(i,t.map(e=>c.Cartographic.fromCartesian(e))).then(t=>e(t)).catch(t=>{console.warn(t),e([])}):e([])}),[u,d]=await Promise.all([s,l]),f=[];return t.forEach((e,t)=>{let n=u[t]||d[t]?c.Ellipsoid.WGS84.cartographicToCartesian(d[t]):e.clone();f.push(n)}),f}function ne(e){let t=e?.clampToGround??!1,n=e?.classificationType??c.ClassificationType.BOTH,r=Math.floor(e?.density??10);return{scene:e?.scene,clampToGround:t,classificationType:n,terrainProvider:e?.terrainProvider,density:r}}async function re(e,t){if(e.length<3)throw Error(`positions must >= 3`);let{density:n,scene:r,clampToGround:i,classificationType:a,terrainProvider:o}=ne(t);if(n<=0)throw Error(`options.density must > 0`);let s=c.Rectangle.fromCartesianArray(e),l=s.north-s.south,u=s.east-s.west,d=Math.max(u,l),f=d/n,p=c.PolygonGeometry.fromPositions({positions:e,vertexFormat:c.PerInstanceColorAppearance.FLAT_VERTEX_FORMAT,granularity:f}),m=c.PolygonGeometry.createGeometry(p),h=m.attributes.position.values;if(!m||!h)throw Error(`positions无法组成有效的geometry,检查点位是否错误`);let g=m.indices,_=[];for(let e=0;e<g.length;e+=3){let t=c.Cartesian3.unpack(h,g[e]*3,new c.Cartesian3),n=c.Cartesian3.unpack(h,g[e+1]*3,new c.Cartesian3),r=c.Cartesian3.unpack(h,g[e+2]*3,new c.Cartesian3);_.push(t,n,r)}if(i){if(!r)throw Error("scene is required on `clampToGround == true`.");let e=await O({scene:r,terrainProvider:o,positions:_,classificationType:a});_=e}let v=[];for(;_?.length;){let[e,t,n]=_.splice(0,3);v.push([e,t,n])}return v}function k(e,t,n){let r=c.Cartesian3.subtract(e,t,new c.Cartesian3),i=c.Cartesian3.subtract(n,t,new c.Cartesian3),a=c.Cartesian3.cross(r,i,r);return c.Cartesian3.magnitude(a)*.5}function ie(e){let t=e?.clampToGround??!1,n=e?.classificationType??c.ClassificationType.BOTH,r=Math.floor(e?.density??10);return{scene:e?.scene,clampToGround:t,classificationType:n,terrainProvider:e?.terrainProvider,density:r}}async function ae(e,t){if(e.length<2)throw Error(`positions.length must >= 2`);let{density:n,scene:r,clampToGround:i,classificationType:a,terrainProvider:o}=ie(t);if(n<=0)throw Error(`options.density must > 0`);if(!i){let t=te(e);return t.reduce((e,t)=>e+=k(...t),0)}let s=await re(e,{density:n,scene:r,clampToGround:i,classificationType:a,terrainProvider:o});return s.reduce((e,t)=>e+=k(...t),0)}async function oe(e){let{start:t,end:n,count:r,scene:i,clampToGround:a,classificationType:o,terrainProvider:s}=e,l=[];for(let e=0;e<r;e++){let e=c.Cartesian3.lerp(t,n,1/r,new c.Cartesian3);l.push(e)}if(l.push(n.clone()),!a)return l;if(!i)throw Error("scene is required on `clampToGround == true`.");let u=await O({scene:i,terrainProvider:s,positions:l,classificationType:o});return u}function se(e){let t=e?.clampToGround??!1,n=e?.classificationType??c.ClassificationType.BOTH,r=Math.floor(e?.density??50);return{scene:e?.scene,clampToGround:t,classificationType:n,terrainProvider:e?.terrainProvider,density:r}}async function A(e,t){if(e.length<2)throw Error(`positions.length must >= 2`);let n=se(t),r=[],i=0;if(e.forEach((t,n)=>{if(n!==e.length-1){let a=e[n+1],o=c.Cartesian3.distance(t,a);r.push(o),i+=o}}),!n.clampToGround)return{stages:r,count:i};let a=n.density;if(a<=0)throw Error(`options.density must > 0`);let o=r.map(e=>Math.floor(e/i*a)),s=a-o.reduce((e,t)=>e+=t,0);s&&(o[o.length-1]+=s);let l=o.map((t,r)=>oe({scene:n.scene,start:e[r],end:e[r+1],count:t,clampToGround:!0,classificationType:n.classificationType,terrainProvider:n.terrainProvider})),u=await Promise.all(l),d=u.map(async e=>{let{count:t}=await A(e);return t}),f=await Promise.all(d);return{stages:f,count:f.reduce((e,t)=>e+=t,0)}}const j=new p({type:`MeasureArea`,allowManualComplete:e=>e.positions.length>=3,skeletons:[C,w],initRender(){return{entities:[new c.Entity({label:{font:`14pt`},polyline:{material:c.Color.YELLOW.withAlpha(.5)},polygon:{material:c.Color.YELLOW.withAlpha(.5)}})]}},render(e){let t=e.previous.entities[0],{mouse:n,packable:r}=e,i=[...r.positions??[]];return n&&i.push(n),i.length===2?(t.position=void 0,t.label.text=void 0,t.polygon.hierarchy=void 0,t.polyline.positions=new c.CallbackProperty(()=>i,!1)):i.length>=3?(i.push(i[0]),t.position=new c.ConstantPositionProperty((0,l.toCartesian3)(c.Rectangle.center(c.Rectangle.fromCartesianArray(i)))),t.label.text=new c.ConstantProperty(``),ae(i).then(e=>{let n=``;n=e/1e3/1e3>10?`${(e/1e3/1e3).toFixed(2)}km²`:`${(+e).toFixed(2)}m²`,t.label.text=new c.ConstantProperty(n)}),t.polyline.positions=void 0,t.polygon.hierarchy=new c.CallbackProperty(()=>i.length>=3?new c.PolygonHierarchy([...i]):void 0,!1)):(t.position=void 0,t.polygon.hierarchy=void 0,t.polyline.positions=void 0),{entities:[t]}}}),M=new p({type:`MeasureDistance`,allowManualComplete:e=>e.positions.length>=2,skeletons:[C],initRender(){return{entities:[new c.Entity({polyline:{width:2,material:c.Color.YELLOW.withAlpha(.5)}})]}},render(e){let t=e.previous.entities[0],{mouse:n,packable:r,previous:i}=e,a=i.entities,o=[...r.positions??[]];if(n&&o.push(n),o.length<2)return{entities:a};let s=a[0];return s.polyline??=new c.PolylineGraphics,s.polyline.positions=new c.CallbackProperty(()=>o,!1),o.forEach((e,t)=>{a[t+1]||(a[t+1]=new c.Entity({position:e,label:new c.LabelGraphics({backgroundColor:c.Color.fromCssColorString(`#fff`),font:`12pt sans-serif`})}))}),a.splice(o.length,a.length-o.length-1),A(o).then(({count:e,stages:t})=>{t.forEach((e,t)=>{a[t+1].position=new c.CallbackPositionProperty(()=>c.Cartesian3.midpoint(o[t],o[t+1],new c.Cartesian3),!1),a[t+1].label.text=new c.CallbackProperty(()=>`${e.toFixed(2)} m`,!1)}),t.length>1?(a[a.length-1].position=new c.CallbackPositionProperty(()=>o[o.length-1],!1),a[a.length-1].label.text=new c.CallbackProperty(()=>`${e.toFixed(2)} m`,!1)):(a[a.length-1].position=void 0,a[a.length-1].label.text=void 0)}),{entities:a}}}),N=new p({type:`Billboard`,complete:e=>e.positions.length>=1,skeletons:[D],initRender:()=>({entities:[new c.Entity({billboard:{image:`/favicon.svg`,width:32,height:32}})]}),render(e){let{mouse:t,packable:n}=e,r=e.previous.entities?.[0]??new c.Entity({billboard:{}}),i=n.positions?.[0]??t;return r.position=new c.CallbackPositionProperty(()=>i,!0),{entities:[r]}}}),P=new p({type:`BillboardPinBuilder`,complete:e=>e.positions.length>=1,skeletons:[D],initRender(){return{entities:[new c.Entity({billboard:{}})]}},render(e){let t=e.previous.entities[0],n=e.packable.positions[0]??e.mouse;return t.position=new c.CallbackPositionProperty(()=>n,!0),{entities:[t]}}}),ce=new p({type:`Cylinder`,complete:e=>e.positions.length>=2,skeletons:[D,C],initRender(){return{entities:[new c.Entity({cylinder:{}})]}},render(e){let t=e.previous.entities[0],n=[...e.packable.positions];if(n.length===0)return e.previous;if(n.length===1){let t=e.mouse;t&&n.push(t)}if(n.length<2)return e.previous;t.position=new c.ConstantPositionProperty(n[0]);let r=c.Cartesian3.distance(n[0],n[1]);return t.cylinder.bottomRadius=new c.CallbackProperty(()=>r,!1),(e.defining||!(0,l.toPropertyValue)(t.cylinder.length))&&(t.cylinder.length=(0,l.toProperty)(r*2)),{entities:[t]}}}),le=new p({type:`Ellipse`,complete:e=>e.positions.length>=2,skeletons:[D,C],initRender(){return{entities:[new c.Entity({ellipse:{}})]}},render(e){let t=e.previous.entities[0],n=[...e.packable.positions];if(n.length===0)return e.previous;if(n.length===1){let t=e.mouse;t&&n.push(t)}if(n.length<2)return e.previous;t.position=new c.ConstantPositionProperty(n[0]);let r=c.Cartesian3.distance(n[0],n[1]);return t.ellipse.semiMinorAxis=new c.CallbackProperty(()=>r||1,!1),t.ellipse.semiMajorAxis=t.ellipse.semiMinorAxis,{entities:[t]}}}),ue=new p({type:`Label`,complete:e=>e.positions.length>=1,skeletons:[D],initRender(){return{entities:[new c.Entity({label:{text:`Label`}})]}},render(e){let t=e.previous.entities[0],n=e.packable.positions[0]??e.mouse;return t.position=new c.CallbackPositionProperty(()=>n,!0),{entities:[t]}}}),de=new p({type:`Point`,complete:e=>e.positions.length>=1,skeletons:[D],initRender(){return{entities:[new c.Entity({point:{pixelSize:10,color:c.Color.RED}})]}},render(e){let t=e.previous.entities[0],n=e.packable.positions[0]??e.mouse;return t.position=new c.CallbackPositionProperty(()=>n,!0),{entities:[t]}}}),fe=new p({type:`Polygon`,allowManualComplete:e=>e.positions.length>=2,skeletons:[D,C,w],initRender:()=>({entities:[new c.Entity({polyline:{},polygon:{}})]}),render(e){let{mouse:t,packable:n}=e,r=e.previous.entities[0],i=[...n.positions??[]];return t&&i.push(t),i.length===2?(r.polygon.hierarchy=void 0,r.polyline.positions=new c.CallbackProperty(()=>i,!1)):i.length>=3?(r.polyline.positions=void 0,r.polygon.hierarchy=new c.CallbackProperty(()=>(i.push(i[0]),i.length>=3?new c.PolygonHierarchy([...i]):void 0),!1)):(r.polygon.hierarchy=void 0,r.polyline.positions=void 0),{entities:[r]}}}),F=100,I=Math.PI/2,L=1e-4,pe=Math.PI*2;function R(e,t){return Math.hypot(e[0]-t[0],e[1]-t[1])}function z(e){let t=0;return e&&Array.isArray(e)&&e.length>0&&e.forEach((n,r)=>{r<e.length-1&&(t+=R(n,e[r+1]))}),t}const B=e=>z(e)**.99;function V(e,t){return[(e[0]+t[0])/2,(e[1]+t[1])/2]}function me(e,t,n){let r=[(e[0]+t[0])/2,(e[1]+t[1])/2],i=[r[0]-e[1]+t[1],r[1]+e[0]-t[0]],a=[(e[0]+n[0])/2,(e[1]+n[1])/2],o=[a[0]-e[1]+n[1],a[1]+e[0]-n[0]];return he(r,i,a,o)}function he(e,t,n,r){if(e[1]===t[1]){let t=(r[0]-n[0])/(r[1]-n[1]),i=t*(e[1]-n[1])+n[0],a=e[1];return[i,a]}if(n[1]===r[1]){let r=(t[0]-e[0])/(t[1]-e[1]),i=r*(n[1]-e[1])+e[0],a=n[1];return[i,a]}let i=(t[0]-e[0])/(t[1]-e[1]),a=(r[0]-n[0])/(r[1]-n[1]),o=(i*e[1]-e[0]-a*n[1]+n[0])/(i-a),s=i*o-i*e[1]+e[0];return[s,o]}function H(e,t){let n=0,r=Math.asin(Math.abs(t[1]-e[1])/R(e,t));return t[1]>=e[1]&&t[0]>=e[0]?n=r+Math.PI:t[1]>=e[1]&&t[0]<e[0]?n=Math.PI*2-r:t[1]<e[1]&&t[0]<e[0]?n=r:t[1]<e[1]&&t[0]>=e[0]&&(n=Math.PI-r),n}function U(e,t,n){let r=H(t,e)-H(t,n);return r<0?r+Math.PI*2:r}function W(e,t,n){return(n[1]-e[1])*(t[0]-e[0])>(t[1]-e[1])*(n[0]-e[0])}function ge(e,t,n,r,i){e=Math.max(Math.min(e,1),0);let[a,o]=[1-e,e*e],s=o*e,c=a*a,l=c*a,u=l*t[0]+3*c*e*n[0]+3*a*o*r[0]+s*i[0],d=l*t[1]+3*c*e*n[1]+3*a*o*r[1]+s*i[1];return[u,d]}function G(e,t,n,r,i){let a=H(e,t),o=i?a+n:a-n,s=r*Math.cos(o),c=r*Math.sin(o);return[t[0]+s,t[1]+c]}function _e(e,t,n,r){let[i,a,o,s]=[0,0,[],r-n];s=s<0?s+Math.PI*2:s;for(let r=0;r<=100;r++){let c=n+s*r/100;i=e[0]+t*Math.cos(c),a=e[1]+t*Math.sin(c),o.push([i,a])}return o}function ve(e,t,n,r){let i=ye(t,n,r),[a,o,s,c,l]=[[0,0],[0,0],0,0,0],u=Math.hypot(i[0],i[1]),d=i[0]/u,f=i[1]/u,p=R(t,n),m=R(n,r);return u>L?W(t,n,r)?(s=e*p,c=n[0]-s*f,l=n[1]+s*d,a=[c,l],s=e*m,c=n[0]+s*f,l=n[1]-s*d,o=[c,l]):(s=e*p,c=n[0]+s*f,l=n[1]-s*d,a=[c,l],s=e*m,c=n[0]-s*f,l=n[1]+s*d,o=[c,l]):(c=n[0]+e*(t[0]-n[0]),l=n[1]+e*(t[1]-n[1]),a=[c,l],c=n[0]+e*(r[0]-n[0]),l=n[1]+e*(r[1]-n[1]),o=[c,l]),[a,o]}function ye(e,t,n){let r=e[0]-t[0],i=e[1]-t[1],a=Math.hypot(r,i);r/=a,i/=a;let o=n[0]-t[0],s=n[1]-t[1],c=Math.hypot(o,s);o/=c,s/=c;let l=r+o,u=i+s;return[l,u]}function K(e){if(e.length<=2)return e;let t=[],n=e.length-1;for(let r=0;r<=1;r+=.01){let[i,a]=[0,0];for(let t=0;t<=n;t++){let o=be(n,t),s=r**t,c=(1-r)**(n-t);i+=o*s*c*e[t][0],a+=o*s*c*e[t][1]}t.push([i,a])}return t.push(e[n]),t}function q(e){let t=1;switch(!0){case e<=1:t=1;break;case e===2:t=2;break;case e===3:t=6;break;case e===24:t=24;break;case e===5:t=120;break;default:for(let n=1;n<=e;n++)t*=n;break}return t}function be(e,t){return q(e)/(q(t)*q(e-t))}function J(e){if(e.length<=2)return e;let[t,n]=[2,[]],r=e.length-t-1;n.push(e[0]);for(let i=0;i<=r;i++)for(let r=0;r<=1;r+=.05){let[a,o]=[0,0];for(let n=0;n<=t;n++){let t=xe(n,r);a+=t*e[i+n][0],o+=t*e[i+n][1]}n.push([a,o])}return n.push(e.at(-1)),n}function xe(e,t){let n=0;return e===0?n=(t-1)**2/2:e===1?n=(-2*t**2+2*t+1)/2:e===2&&(n=t**2/2),n}function Se(e){let t=e.length;if(t<=2)throw Error(`coords.length must >= 3`);{let[t,n,r,i,a]=[e[0],e[1],e[2],0,0],o=me(t,n,r),s=R(t,o),c=H(t,o),l=H(n,o);return W(t,n,r)?(i=l,a=c):(i=c,a=l),_e(o,s,i,a)}}function Ce(e,t={}){let n=e.length;if(n<3)throw Error(`coords.length must >= 3`);{let[n,r]=[e[0],e[1]];W(e[0],e[1],e[2])&&(n=e[1],r=e[0]);let i=V(n,r),a=[i].concat(e.slice(2)),o=Y(a,{tailLeft:n,tailRight:r,...t});if(o&&o.length>4){let[e,t]=[o[0],o[4]],i=R(n,r)/B(a),s=X(a,e,t,i),c=s.length,l=[n].concat(s.slice(0,c/2));l.push(e);let u=[r].concat(s.slice(c/2,c));return u.push(t),l=J(l),u=J(u),l.concat(o,u.reverse())}else return[]}}function Y(e,t){let{tailLeft:n,tailRight:r,headHeightFactor:i=.18,headWidthFactor:a=.3,neckHeightFactor:o=.85,neckWidthFactor:s=.15,headTailFactor:c=.8}=t,l=B(e),u=l*i,d=e.at(-1);l=R(d,e.at(-2));let f=0;n&&r&&(f=R(n,r)),u>f*c&&(u=f*c);let p=u*a,m=u*s;u=Math.min(u,l);let h=u*o,g=G(e.at(-2),d,0,u,!0),_=G(e.at(-2),d,0,h,!0),v=G(d,g,I,p,!1),y=G(d,g,I,p,!0),b=G(d,_,I,m,!1),x=G(d,_,I,m,!0);return[b,v,d,y,x]}function X(e,t,n,r){let i=z(e),a=B(e),o=a*r,s=R(t,n),c=(o-s)/2,l=0,u=[],d=[];for(let t=1;t<e.length-1;t++){let n=U(e[t-1],e[t],e[t+1])/2;l+=R(e[t-1],e[t]);let r=(o/2-l/i*c)/Math.sin(n),a=G(e[t-1],e[t],Math.PI-n,r,!0),s=G(e[t-1],e[t],n,r,!1);u.push(a),d.push(s)}return u.concat(d)}function we(e,t={}){let{headHeightFactor:n=.18,headWidthFactor:r=.3,neckHeightFactor:i=.85,neckWidthFactor:a=.15,tailWidthFactor:o=.1,swallowTailFactor:s=1}=t,c=e.length;if(c<3)throw Error(`coords.length must >= 3`);let[l,u]=[e[0],e[1]];W(e[0],e[1],e[2])&&(l=e[1],u=e[0]);let d=V(l,u),f=[d].concat(e.slice(2)),p=Y(f,{tailLeft:l,tailRight:u,headHeightFactor:n,headWidthFactor:r,neckWidthFactor:a,neckHeightFactor:i});if(p&&p.length>4){let[e,t]=[p[0],p[4]],n=R(l,u),r=B(f),i=r*o*s,a=G(f[1],f[0],0,i,!0),c=n/r,d=X(f,e,t,c),m=d.length,h=[l].concat(d.slice(0,m/2));h.push(e);let g=[u].concat(d.slice(m/2,m));return g.push(t),h=J(h),g=J(g),h.concat(p,g.reverse(),[a,h[0]])}else return[]}function Z(e){let t={headHeightFactor:.25,headWidthFactor:.3,neckHeightFactor:.85,neckWidthFactor:.15};if(e.length<3)throw Error(`coords.length must >= 3`);let[n,r,i]=e,a,o;e.length===3?(a=De(n,r,i),o=V(n,r)):e.length===4?(a=e[3],o=V(n,r)):(a=e[3],o=e[4]);let s,c;W(n,r,i)?(s=Q(n,o,a,!1,t),c=Q(o,r,i,!0,t)):(s=Q(r,o,i,!1,t),c=Q(o,n,a,!0,t));let l=s.length,u=(l-5)/2,d=s.slice(0,u),f=s.slice(u,u+5),p=s.slice(u+5,l),m=c.slice(0,u),h=c.slice(u,u+5),g=c.slice(u+5,l);m=K(m);let _=K(g.concat(d.slice(1)));return p=K(p),m.concat(h,_,f,p)}function Q(e,t,n,r,i){let a=V(e,t),o=R(a,n),s=G(n,a,0,o*.3,!0),c=G(n,a,0,o*.5,!0);s=G(a,s,I,o/5,r),c=G(a,c,I,o/4,r);let l=[a,s,c,n],u=Te(l,i);if(u&&Array.isArray(u)&&u.length>0){let[n,r]=[u[0],u[4]],i=R(e,t)/B(l)/2,a=Ee(l,n,r,i),o=a.length,s=a.slice(0,o/2),c=a.slice(o/2,o);return s.push(n),c.push(r),s=s.reverse(),s.push(t),c=c.reverse(),c.push(e),s.reverse().concat(u,c)}else throw Error(`插值出错`)}function Te(e,t){let{headHeightFactor:n,headWidthFactor:r,neckWidthFactor:i,neckHeightFactor:a}=t,o=B(e),s=o*n,c=e.at(-1),l=s*r,u=s*i,d=s*a,f=G(e.at(-2),c,0,s,!0),p=G(e.at(-2),c,0,d,!0),m=G(c,f,I,l,!1),h=G(c,f,I,l,!0),g=G(c,p,I,u,!1),_=G(c,p,I,u,!0);return[g,m,c,h,_]}function Ee(e,t,n,r){let i=z(e),a=B(e),o=a*r,s=R(t,n),c=(o-s)/2,l=0,u=[],d=[];for(let t=1;t<e.length-1;t++){let n=U(e[t-1],e[t],e[t+1])/2;l+=R(e[t-1],e[t]);let r=(o/2-l/i*c)/Math.sin(n),a=G(e[t-1],e[t],Math.PI-n,r,!0),s=G(e[t-1],e[t],n,r,!1);u.push(a),d.push(s)}return u.concat(d)}function De(e,t,n){let r=V(e,t),i=R(r,n),a=U(e,r,n);if(a<I){let t=i*Math.sin(a),n=i*Math.cos(a),o=G(e,r,I,t,!1);return G(r,o,I,n,!0)}else if(a>=I&&a<Math.PI){let t=i*Math.sin(Math.PI-a),n=i*Math.cos(Math.PI-a),o=G(e,r,I,t,!1);return G(r,o,I,n,!1)}else if(a>=Math.PI&&a<Math.PI*1.5){let t=i*Math.sin(a-Math.PI),n=i*Math.cos(a-Math.PI),o=G(e,r,I,t,!0);return G(r,o,I,n,!0)}else{let t=i*Math.sin(Math.PI*2-a),n=i*Math.cos(Math.PI*2-a),o=G(e,r,I,t,!0);return G(r,o,I,n,!1)}}function $(e,t={}){let{tailWidthFactor:n=.1,neckWidthFactor:r=.2,headWidthFactor:i=.25,headAngle:a=Math.PI/8.5,neckAngle:o=Math.PI/13}=t,s=e.length;if(s<2)throw Error(`coords.length must >= 2`);let[c,l]=[e[0],e[1]],u=B(e),d=u*n,f=u*r,p=u*i,m=G(l,c,I,d,!0),h=G(l,c,I,d,!1),g=G(c,l,a,p,!1),_=G(c,l,a,p,!0),v=G(c,l,o,f,!1),y=G(c,l,o,f,!0),b=[m,v,g,l,_,y,h];return b}function Oe(e){let t=.05,n=.1,r=.15,i=Math.PI/4,a=Math.PI*.17741;return $(e,{tailWidthFactor:t,neckWidthFactor:n,headWidthFactor:r,headAngle:i,neckAngle:a})}function ke(e,t={}){let{headHeightFactor:n=.18,headWidthFactor:r=.3,neckHeightFactor:i=.85,neckWidthFactor:a=.15,tailWidthFactor:o=.1}=t,s=e.length;if(s<2)throw Error(`coords.length must >= 2`);{let t=B(e),s=t*o,c=G(e[1],e[0],I,s,!1),l=G(e[1],e[0],I,s,!0),u=Y(e,{tailLeft:c,tailRight:l,headHeightFactor:n,headWidthFactor:r,neckWidthFactor:a,neckHeightFactor:i});if(u&&u.length>4){let t=u[0],n=u[4],r=X(e,t,n,o),i=r.length,a=[c].concat(r.slice(0,i/2));a.push(t);let s=[l].concat(r.slice(i/2,i));return s.push(n),a=J(a),s=J(s),a.concat(u,s.reverse())}else return[]}}function Ae(e,t={}){let{headHeightFactor:n=.18,headWidthFactor:r=.3,neckHeightFactor:i=.85,neckWidthFactor:a=.15,tailWidthFactor:o=.1,swallowTailFactor:s=1}=t,c=e.length;if(c<2)throw Error(`coords.length must >= 2`);let l=B(e),u=l*o,d=G(e[1],e[0],I,u,!1),f=G(e[1],e[0],I,u,!0),p=u*s,m=G(e[1],e[0],0,p,!0),h=[d,m,f],g=Y(e,{tailLeft:h[0],tailRight:h[2],headHeightFactor:n,headWidthFactor:r,neckWidthFactor:a,neckHeightFactor:i});if(g&&g.length>4){let t=g[0],n=g[4],r=X(e,t,n,o),i=r.length,a=[h[0]].concat(r.slice(0,i/2));a.push(t);let s=[h[2]].concat(r.slice(i/2,i));return s.push(n),a=J(a),s=J(s),a.concat(g,s.reverse(),[h[1],a[0]])}return[]}function je(e){if(e.length<3)throw Error(`coords.length must >= 3`);let t=.4,n=V(e[0],e[2]);e.push(n,e[0],e[1]);let r=[],i=[];for(let n=0;n<e.length-2;n++){let i=e[n],a=e[n+1],o=e[n+2],s=ve(t,i,a,o);r=r.concat(s)}let a=r.length;r=[r[a-1]].concat(r.slice(0,a-1));for(let t=0;t<e.length-2;t++){let n=e[t],a=e[t+1];i.push(n);for(let e=0;e<=F;e++){let o=ge(e/F,n,r[t*2],r[t*2+1],a);i.push(o)}i.push(a)}return i}function Me(e){let t=e.length;if(t<2)throw Error(`coords.length must >= 2`);return Ne(e)}function Ne(e){let t=[];if(e.length>1){let n=e[0],r=e.at(-1),i=n,a=[(r[0]-n[0])/4+n[0],(r[1]-n[1])/8+n[1]],o=[(n[0]+r[0])/2,n[1]],s=[(r[0]-n[0])*3/4+n[0],-(r[1]-n[1])/8+n[1]],c=[r[0],n[1]],l=[r[0],(n[1]+r[1])/2],u=[(r[0]-n[0])*3/4+n[0],(r[1]-n[1])*3/8+n[1]],d=[(n[0]+r[0])/2,(n[1]+r[1])/2],f=[(r[0]-n[0])/4+n[0],(r[1]-n[1])*5/8+n[1]],p=[n[0],(n[1]+r[1])/2],m=[n[0],r[1]],h=K([i,a,o,s,c]),g=K([l,u,d,f,p]);t=h.concat(g),t.push(m)}return t}function Pe(e){if(e.length<2)throw Error(`coords.length must >= 2`);let[t,n]=e,r=[n[0],t[1]],i=[n[0],(t[1]+n[1])/2],a=[t[0],(t[1]+n[1])/2],o=[t[0],n[1]];return[t,r,i,a,o]}function Fe(e){let t=e.length;if(t<2)throw Error(`coords.length must >= 2`);let[n,r]=e,i=[r[0],(n[1]+r[1])/2],a=[n[0],(n[1]+r[1])/2],o=[n[0],r[1]];return[n,i,a,o]}const Ie=new p({type:`PolygonArc`,complete:e=>e.positions.length>=3,skeletons:[D,C],initRender(){return{entities:[new c.Entity({polygon:{}})]}},render(e){let t=e.previous.entities[0],n=e.packable.positions;n.length<3&&e.mouse&&n.push(e.mouse.clone());let r=n.map(e=>(0,l.toCoord)(e));if(r.length<3)return t.polygon.hierarchy=void 0,e.previous;let i=Se(r).map(e=>(0,l.toCartesian3)(e)),a=new c.PolygonHierarchy(i);return t.polygon.hierarchy=new c.CallbackProperty(()=>a,!1),{entities:[t]}}}),Le=new p({type:`PolygonArrowAttackDirection`,allowManualComplete:e=>e.positions.length>=3,skeletons:[D,C,T],initRender(){return{entities:[new c.Entity({polygon:{}})]}},render(e){let t=e.previous.entities[0],n=e.packable.positions;e.mouse&&n.push(e.mouse.clone());let r=n.map(e=>(0,l.toCoord)(e));if(r.length<3)return t.polygon.hierarchy=void 0,e.previous;let i=Ce(r).map(e=>(0,l.toCartesian3)(e)),a=new c.PolygonHierarchy(i);return t.polygon.hierarchy=new c.CallbackProperty(()=>a,!1),{entities:[t]}}}),Re=new p({type:`PolygonArrowAttackDirectionTailed`,allowManualComplete:e=>e.positions.length>=3,skeletons:[D,C,T],initRender(){return{entities:[new c.Entity({polygon:{}})]}},render(e){let t=e.previous.entities[0],n=e.packable.positions;e.mouse&&n.push(e.mouse.clone());let r=n.map(e=>(0,l.toCoord)(e));if(r.length<3)return t.polygon.hierarchy=void 0,e.previous;let i=we(r).map(e=>(0,l.toCartesian3)(e)),a=new c.PolygonHierarchy(i);return t.polygon.hierarchy=new c.CallbackProperty(()=>a,!1),{entities:[t]}}}),ze=new p({type:`PolygonArrowClamped`,complete:e=>e.positions.length>=5,skeletons:[D,C],initRender(){return{entities:[new c.Entity({polygon:{}})]}},render(e){let t=e.previous.entities[0],n=e.packable.positions;if(n.length<5){let t=e.mouse;t&&n.push(t.clone())}let r=n.map(e=>(0,l.toCoord)(e));if(r.length>=3){let e=Z(r),n=new c.PolygonHierarchy(e.map(e=>(0,l.toCartesian3)(e)));t.polygon.hierarchy=new c.CallbackProperty(()=>n,!1)}else t.polygon.hierarchy=void 0;return{entities:[t]}}}),Be=new p({type:`PolygonArrowStraight`,complete:e=>e.positions.length>=2,skeletons:[D,C],initRender(){return{entities:[new c.Entity({polygon:{}})]}},render(e){let t=e.previous.entities[0],n=e.packable.positions;if(n.length<2){let t=e.mouse;t&&n.push(t.clone())}let r=n.map(e=>(0,l.toCoord)(e));if(r.length>=2){let e=Oe(r),n=new c.PolygonHierarchy(e.map(e=>(0,l.toCartesian3)(e)));t.polygon.hierarchy=new c.CallbackProperty(()=>n,!1)}else t.polygon.hierarchy=void 0;return{entities:[t]}}}),Ve=new p({type:`PolygonArrowStraightSharp`,complete:e=>e.positions.length>=2,skeletons:[D,C],initRender(){return{entities:[new c.Entity({polygon:{}})]}},render(e){let t=e.previous.entities[0],n=e.packable.positions;if(n.length<2){let t=e.mouse;t&&n.push(t.clone())}let r=n.map(e=>(0,l.toCoord)(e));if(r.length>=2){let e=$(r),n=new c.PolygonHierarchy(e.map(e=>(0,l.toCartesian3)(e)));t.polygon.hierarchy=new c.CallbackProperty(()=>n,!1)}else t.polygon.hierarchy=void 0;return{entities:[t]}}}),He=new p({type:`PolygonArrowUnitCombatOperation`,allowManualComplete:e=>e.positions.length>=2,skeletons:[D,C,T],initRender(){return{entities:[new c.Entity({polygon:{}})]}},render(e){let t=e.previous.entities[0],n=e.packable.positions;e.mouse&&n.push(e.mouse.clone());let r=n.map(e=>(0,l.toCoord)(e));if(r.length<2)return t.polygon.hierarchy=void 0,e.previous;let i=ke(r).map(e=>(0,l.toCartesian3)(e)),a=new c.PolygonHierarchy(i);return t.polygon.hierarchy=new c.CallbackProperty(()=>a,!1),{entities:[t]}}}),Ue=new p({type:`PolygonArrowUnitCombatOperationTailed`,allowManualComplete:e=>e.positions.length>=2,skeletons:[D,C,w],initRender(){return{entities:[new c.Entity({polygon:{}})]}},render(e){let t=e.previous.entities[0],n=e.packable.positions;e.mouse&&n.push(e.mouse.clone());let r=n.map(e=>(0,l.toCoord)(e));if(r.length<2)return t.polygon.hierarchy=void 0,e.previous;let i=Ae(r).map(e=>(0,l.toCartesian3)(e)),a=new c.PolygonHierarchy(i);return t.polygon.hierarchy=new c.CallbackProperty(()=>a,!1),{entities:[t]}}}),We=new p({type:`PolygonAssemblingPlace`,complete:e=>e.positions.length>=3,skeletons:[D,C,w],initRender(){return{entities:[new c.Entity({polygon:{}})]}},render(e){let t=e.previous.entities[0],n=e.packable.positions;e.mouse&&n.push(e.mouse.clone());let r=n.map(e=>(0,l.toCoord)(e));if(r.length<2)return t.polygon.hierarchy=void 0,e.previous;let i=je(r).map(e=>(0,l.toCartesian3)(e)),a=new c.PolygonHierarchy(i);return t.polygon.hierarchy=new c.CallbackProperty(()=>a,!1),{entities:[t]}}}),Ge=new p({type:`PolygonFlagCurve`,complete:e=>e.positions.length>=2,skeletons:[D,C],initRender(){return{entities:[new c.Entity({polygon:{}})]}},render(e){let t=e.previous.entities[0],n=e.packable.positions;e.mouse&&n.push(e.mouse.clone());let r=n.map(e=>(0,l.toCoord)(e));if(r.length<2)return t.polygon.hierarchy=void 0,e.previous;let i=Me(r).map(e=>(0,l.toCartesian3)(e)),a=new c.PolygonHierarchy(i);return t.polygon.hierarchy=new c.CallbackProperty(()=>a,!1),{entities:[t]}}}),Ke=new p({type:`PolygonFlagRect`,complete:e=>e.positions.length>=2,skeletons:[D,C],initRender(){return{entities:[new c.Entity({polygon:{}})]}},render(e){let t=e.previous.entities[0],n=e.packable.positions;e.mouse&&n.push(e.mouse.clone());let r=n.map(e=>(0,l.toCoord)(e));if(r.length<2)return t.polygon.hierarchy=void 0,e.previous;let i=Pe(r).map(e=>(0,l.toCartesian3)(e)),a=new c.PolygonHierarchy(i);return t.polygon.hierarchy=new c.CallbackProperty(()=>a,!1),{entities:[t]}}}),qe=new p({type:`PolygonFlagTriangle`,complete:e=>e.positions.length>=2,skeletons:[D,C],initRender(){return{entities:[new c.Entity({polygon:{}})]}},render(e){let t=e.previous.entities[0],n=e.packable.positions;e.mouse&&n.push(e.mouse.clone());let r=n.map(e=>(0,l.toCoord)(e));if(r.length<2)return t.polygon.hierarchy=void 0,e.previous;let i=Fe(r).map(e=>(0,l.toCartesian3)(e)),a=new c.PolygonHierarchy(i);return t.polygon.hierarchy=new c.CallbackProperty(()=>a,!1),{entities:[t]}}}),Je=new p({type:`PolygonSmooth`,allowManualComplete:e=>e.positions.length>=3,skeletons:[D,C,T],initRender(){return{entities:[new c.Entity({polygon:{}})]}},render(e){let t=e.previous.entities[0],n=e.packable.positions,r=e.mouse;if(r&&n.push(r.clone()),n.length<=2)return t.polygon.hierarchy=void 0,e.previous;let i=n.map(e=>(0,l.toCoord)(e));i.push(i[0]);let{features:a}=f.polygonSmooth(f.polygon([i]),{iterations:3}),o=a[0].geometry.coordinates[0].map(e=>(0,l.toCartesian3)(e)).filter(e=>!!e),s=new c.PolygonHierarchy(o);return t.polygon.hierarchy=new c.CallbackProperty(()=>s,!1),{entities:[t]}}}),Ye=new p({type:`Polyline`,allowManualComplete:e=>e.positions.length>1,skeletons:[D,C,T],initRender(){return{entities:[new c.Entity({polyline:{material:c.Color.RED,width:2}})]}},render(e){let t=e.previous.entities[0],n=[...e.packable.positions],r=e.mouse;r&&n.push(r.clone());let i=n.length>=2?n:[];return t.polyline.positions=new c.CallbackProperty(()=>i,!1),{entities:[t]}}}),Xe=new p({type:`PolylineCurve`,allowManualComplete:e=>e.positions.length>1,skeletons:[D,C,T],initRender(){return{entities:[new c.Entity({polyline:{material:c.Color.RED,width:2}})]}},render(e){let t=e.previous.entities[0],n=[...e.packable.positions],r=e.mouse;if(r&&n.push(r.clone()),n.length<2)return t.polyline.positions=void 0,e.previous;let i=n.map(e=>(0,l.toCoord)(e)),{geometry:{coordinates:a}}=f.bezierSpline(f.lineString(i));return t.polyline.positions=new c.CallbackProperty(()=>a.map(l.toCartesian3),!1),{entities:[t]}}}),Ze=new p({type:`Rectangle`,complete:e=>e.positions.length>=2,skeletons:[D,C],initRender(){return{entities:[new c.Entity({rectangle:{}})]}},render(e){let t=e.previous.entities[0],n=[...e.packable.positions],r=e.mouse;if(r&&n.push(r.clone()),n.length<2)return t.rectangle.coordinates=void 0,e.previous;let i=c.Rectangle.fromCartesianArray(n??[]);return t.rectangle.coordinates=new c.CallbackProperty(()=>i,!1),{entities:[t]}}});exports.PlotAction=v,exports.PlotFeature=_,exports.PlotScheme=p,exports.PlotSchemeBillboard=N,exports.PlotSchemeBillboardPinBuilder=P,exports.PlotSchemeCylinder=ce,exports.PlotSchemeEllipse=le,exports.PlotSchemeLabel=ue,exports.PlotSchemePoint=de,exports.PlotSchemePolygon=fe,exports.PlotSchemePolygonArc=Ie,exports.PlotSchemePolygonArrowAttackDirection=Le,exports.PlotSchemePolygonArrowAttackDirectionTailed=Re,exports.PlotSchemePolygonArrowClamped=ze,exports.PlotSchemePolygonArrowStraight=Be,exports.PlotSchemePolygonArrowStraightSharp=Ve,exports.PlotSchemePolygonArrowUnitCombatOperation=He,exports.PlotSchemePolygonArrowUnitCombatOperationTailed=Ue,exports.PlotSchemePolygonAssemblingPlace=We,exports.PlotSchemePolygonFlagCurve=Ge,exports.PlotSchemePolygonFlagRect=Ke,exports.PlotSchemePolygonFlagTriangle=qe,exports.PlotSchemePolygonSmooth=Je,exports.PlotSchemePolyline=Ye,exports.PlotSchemePolylineCurve=Xe,exports.PlotSchemeRectangle=Ze,exports.PlotSkeletonEntity=y,exports.SampledPlotProperty=g,exports.SampledPlotStrategy=m,exports.control=C,exports.interval=w,exports.intervalNonclosed=T,exports.moved=D,exports.schemeMeasureArea=j,exports.schemeMeasureDistance=M,exports.usePlot=ee;
|
|
2
|
+
//# sourceMappingURL=index.min.cjs.map
|