@poor-knight/cesium-utils 0.3.5 → 0.3.6
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/cesium-utils.cjs +1 -1
- package/dist/cesium-utils.d.ts +3 -0
- package/dist/cesium-utils.js +93 -79
- package/dist/cesium-utils.umd.cjs +1 -1
- package/package.json +1 -1
package/dist/cesium-utils.cjs
CHANGED
|
@@ -74,4 +74,4 @@
|
|
|
74
74
|
<path id="svg_4" data-name="svg 4" class="cls-1" d="${p}"/>
|
|
75
75
|
</g>
|
|
76
76
|
<image id="img_1" width="${i}" height="${146/124*i}" transform="translate(${-i/2+u.x} ${u.y})" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHwAAACSCAMAAACwjl5+AAAAq1BMVEUAAAD////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////Nr6iZAAAAOXRSTlMABRshFgkSZg5qJmFdWlEqOXBFPYVJQYB1VXtNLpc1mzKguZCKtJONxc69yaukwa/SqN/k1trs6fBhRQqRAAAVcElEQVR42rSX3ZKaQBCFgxoIICh/ggjiIMPPMAOy6yZ5/yfLaTBVSa5istu1Vepe+M3p7jkHPz1Vmqav99umYLxsh7bvO6oeb8ZR1XUS7TaftU8fVdqX9cWpGBt5WeJvKbwbOJvyujEPlv5RcLBXZyesc1lyMSk5qWmS0zQxNQrGVF2Fpv9hdOg+2HFzZZwPQjFWFAxV4FUNJd5VcWr4u4+hgx0YcVgVchRtOSmW50wpVoA+lS0vWB6mifkxdE2H7jSOazaVfYtJo91yHKVSUmLq/Yihp2Zi09a9N1rb7Hxi07oN/dAOgnMwB4F9E3jtW1Y1oWea2yhbve/Oa583WWR4SRLnGHAPVkd3bblpA70XvcjDKjVs24ku70rX9NU5OgIeV9ect0L03a3rbve3l5e3+6273Vp0opVVmnrG1jkFl9UX7R3HfY5c2zCTOLxKNHzobzdCv3779voK/ls3tOi+ihPPcI5uFGRrXdPeZ8t16+y7zpbgVcHFWLb9fUZ/RX0D/e2txew5zxPTcNzIP+xBR+vfgb2x9oeTe3Rs04sLXuKmDWg5sb+jFnqH9ZejrL3t1o0Oh+CcrWG1/4v//GW1OwfR6XRybC+5SrBLPnTd/YXYC/3l7XYfJB+VVA3aHgX7/fli/TddA3ud7Q++758cI6kUVwo3rOu7t9/ht46rETe/iA3Az5cs261X+hfQ/4Otb9a7bB/sA9+1zbCYGIOx4FID/voV9AWOje8GxSaY3jW1XYzcsnbWf9E1DfNeW1l2yc6B75hxDjNVk6Q4Rdtp3x4zv3dt23Oy+bquUvsUZNYa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"/>
|
|
77
|
-
</svg>`;return{url:URL.createObjectURL(new Blob([b],{type:"image/svg+xml"})),viewBox:h,scale:v}},s=>`${s.color},${s.isMoving},${s.designBeam??0},${s.designLength??0},${s.aisFromBow??0},${s.aisFromCenter??0}`),shipTypeColorMap=new Map([[-1,"#00FF00"],[70,"#95B3D7"],[37,"#00FF00"],[50,"#366092"],[51,"#366092"],[52,"#366092"],[53,"#366092"],[54,"#366092"],[55,"#366092"],[56,"#366092"],[57,"#366092"],[58,"#366092"],[59,"#366092"],[80,"red"],[81,"red"],[82,"red"],[83,"red"],[84,"red"],[85,"red"],[86,"red"],[87,"red"],[88,"red"],[89,"red"]]);function createAlphaSampled(s){const i=new Cesium__namespace.SampledProperty(Cesium__namespace.Color),r=(s==null?void 0:s.startTime)??Cesium__namespace.JulianDate.now(),u=Cesium__namespace.JulianDate.addMinutes(r,1,new Cesium__namespace.JulianDate),m=Cesium__namespace.JulianDate.addMinutes(r,5,new Cesium__namespace.JulianDate),o=Cesium__namespace.JulianDate.fromIso8601("2100-01-01T00:00:00Z"),l=(s==null?void 0:s.color)??Cesium__namespace.Color.WHITE;return i.addSample(r,l.withAlpha(1)),i.addSample(u,l.withAlpha(1)),i.addSample(m,l.withAlpha(.2)),i.addSample(o,l.withAlpha(.1)),i}function getHideAfterFiveMinutesProperty(s){const i=s??Cesium__namespace.JulianDate.now(),r=Cesium__namespace.JulianDate.addMinutes(i,5,new Cesium__namespace.JulianDate);return new Cesium__namespace.CallbackProperty(u=>u?Cesium__namespace.JulianDate.lessThan(u,r):!0,!1)}class ShipLayer{constructor(i,r){z(this,"db");z(this,"isMounted",!1);z(this,"_viewer",null);z(this,"entityMap",new Map);z(this,"IS_MOVING_THRESHOLD",1);z(this,"shadowEntityMap",new WeakMap);this.key=i,this.zIndex=r,this.db=new Cesium__namespace.CustomDataSource(i)}show(i){this.isMounted||(i.dataSources.add(this.db),this._viewer=i,this.isMounted=!0),this.db.show=!0}hide(){this.isMounted&&(this.db.show=!1)}render(i){i.features.forEach(r=>{this.renderFeature(r)})}renderFeature(i){var c,d;const r=String(i.id),u=new Cesium__namespace.SampledPositionProperty;u.backwardExtrapolationType=Cesium__namespace.ExtrapolationType.HOLD,u.forwardExtrapolationType=Cesium__namespace.ExtrapolationType.HOLD;const m=Cesium__namespace.Cartesian3.fromDegrees(i.geometry.coordinates[0],i.geometry.coordinates[1]);u.addSample(((c=this._viewer)==null?void 0:c.clock.currentTime)??Cesium__namespace.JulianDate.now(),m);const o=((d=i.properties)==null?void 0:d.courseOverGroundTrue)??0,l=new Cesium__namespace.Entity({id:r,position:u,orientation:new Cesium__namespace.ConstantProperty(Cesium__namespace.Transforms.headingPitchRollQuaternion(m,new Cesium__namespace.HeadingPitchRoll(o,0,0))),properties:i.properties??{}});this.entityMap.set(r,l),this.db.entities.add(l),this.renderEntity(l)}update(i){var u,m,o,l,c,d,a,p;const r=this.db.entities.getById(String(i.id));if(r){const y=this.shadowEntityMap.get(r),g=((u=i.properties)==null?void 0:u.shipTypeId)??-1,h=shipTypeColorMap.get(g)??shipTypeColorMap.get(-1),[v,b]=i.geometry.coordinates,w=((m=this._viewer)==null?void 0:m.clock.currentTime)??Cesium__namespace.JulianDate.now(),T=(o=r.position)==null?void 0:o.getValue(w),_=Cesium__namespace.JulianDate.addSeconds(w,3,new Cesium__namespace.JulianDate),x=Cesium__namespace.Cartesian3.fromDegrees(v,b),O=new Cesium__namespace.SampledPositionProperty;if(O.backwardExtrapolationType=Cesium__namespace.ExtrapolationType.HOLD,O.forwardExtrapolationType=Cesium__namespace.ExtrapolationType.HOLD,O instanceof Cesium__namespace.SampledPositionProperty&&(O.addSample(Cesium__namespace.JulianDate.addSeconds(w,1,new Cesium__namespace.JulianDate),T??x),O.addSample(_,x)),r.position=O,y&&(y.position=O),r.properties)for(const[R,E]of Object.entries(i.properties??{})){if(R=="speedOverGround"){const C=r.properties.getValue().speedOverGround??0,N=Number(C)>this.IS_MOVING_THRESHOLD,A=Number(E)>this.IS_MOVING_THRESHOLD;if(N!==A&&(r.billboard&&(r.billboard.image=new Cesium__namespace.ConstantProperty(createShipIconUrl(h,A))),y!=null&&y.plane)){const D=((l=i.properties)==null?void 0:l.designBeam)??8,P=((c=i.properties)==null?void 0:c.designLength)??20,M=createShipIconV2({color:h,isMoving:A,...i.properties,designBeam:D,designLength:P}),q=(d=y.plane)==null?void 0:d.material;q&&(q.image=new Cesium__namespace.ConstantProperty(M.url),y.plane.dimensions=new Cesium__namespace.ConstantProperty(new Cesium__namespace.Cartesian2(D*M.scale.x,P*M.scale.y))),y.plane.dimensions=new Cesium__namespace.CallbackProperty(()=>new Cesium__namespace.Cartesian2(D*M.scale.x,P*M.scale.y),!0)}}if(R=="courseOverGroundTrue"){const C=((a=i.properties)==null?void 0:a.courseOverGroundTrue)??0;r.billboard.rotation=new Cesium__namespace.ConstantProperty(typeof E=="number"?-1*E:0);const N=new Cesium__namespace.ConstantProperty(Cesium__namespace.Transforms.headingPitchRollQuaternion(x,new Cesium__namespace.HeadingPitchRoll(C,0,0)));y&&(y.orientation=N)}if(R=="updateTime"){const C=Cesium__namespace.JulianDate.fromDate(new Date(E));r.billboard.color=createAlphaSampled({startTime:C});const N=(p=y==null?void 0:y.plane)==null?void 0:p.material;N&&(N.color=createAlphaSampled({startTime:C}));const A=getHideAfterFiveMinutesProperty(C);r.label.show=A,r.point.show=A}r.properties[R]=E,y!=null&&y.properties&&(y.properties[R]=E)}}else this.renderFeature(i)}renderEntity(i){var a,p,y,g,h,v,b;const r=(a=i.properties)==null?void 0:a.getValue(),u=(r==null?void 0:r.shipTypeId)??-1,m=shipTypeColorMap.get(u)??shipTypeColorMap.get(-1),o=Number((r==null?void 0:r.speedOverGround)??0),l=r!=null&&r.updateTime?new Date(r.updateTime):new Date,c=Cesium__namespace.JulianDate.fromDate(l),d=createShipIconUrl(m,o>this.IS_MOVING_THRESHOLD);i.point=new Cesium__namespace.PointGraphics({pixelSize:4,color:Cesium__namespace.Color.fromCssColorString("#8AF22C"),disableDepthTestDistance:3e6,distanceDisplayCondition:new Cesium__namespace.DistanceDisplayCondition(15e3),show:getHideAfterFiveMinutesProperty(c)}),i.billboard=new Cesium__namespace.BillboardGraphics({image:d,width:14,height:70,disableDepthTestDistance:3e6,distanceDisplayCondition:new Cesium__namespace.DistanceDisplayCondition(4e3,15e3),pixelOffset:new Cesium__namespace.Cartesian2(0,0),alignedAxis:Cesium__namespace.Cartesian3.UNIT_Z,color:createAlphaSampled({startTime:c}),rotation:new Cesium__namespace.ConstantProperty((y=(p=i.properties)==null?void 0:p.getValue())!=null&&y.courseOverGroundTrue?-1*i.properties.getValue().courseOverGroundTrue:0)}),i.label=new Cesium__namespace.LabelGraphics({font:'12px normal "微软雅黑"',backgroundColor:Cesium__namespace.Color.fromCssColorString("#E9F4FC"),fillColor:Cesium__namespace.Color.BLACK,outlineColor:Cesium__namespace.Color.BLACK,outlineWidth:2,showBackground:!0,style:Cesium__namespace.LabelStyle.FILL,pixelOffset:new Cesium__namespace.Cartesian2(0,-20),scale:1,scaleByDistance:new Cesium__namespace.NearFarScalar(3e3,1,1e4,.55),text:((h=(g=i.properties)==null?void 0:g.getValue())==null?void 0:h.name)??((v=i.properties)!=null&&v.getValue().mmsi?"mmsi:"+((b=i.properties)==null?void 0:b.getValue().mmsi):"未知"),horizontalOrigin:Cesium__namespace.HorizontalOrigin.CENTER,distanceDisplayCondition:new Cesium__namespace.DistanceDisplayCondition(0,15e3),disableDepthTestDistance:5e3,show:getHideAfterFiveMinutesProperty(c)}),this.createShipPlane(i)}createShipPlane(i){var g;const r=new Cesium__namespace.Entity({id:i.id+"_shadow",position:i.position,orientation:i.orientation,properties:i.properties});this.shadowEntityMap.set(i,r),this.db.entities.add(r);const u=(g=i.properties)==null?void 0:g.getValue(),m=u!=null&&u.updateTime?new Date(u.updateTime):new Date,o=Cesium__namespace.JulianDate.fromDate(m),l=Number((u==null?void 0:u.speedOverGround)??0),c=(u==null?void 0:u.designLength)??20,d=(u==null?void 0:u.designBeam)??8,a=(u==null?void 0:u.shipTypeId)??-1,p=shipTypeColorMap.get(a)??shipTypeColorMap.get(-1),y=createShipIconV2({color:p,isMoving:l>this.IS_MOVING_THRESHOLD,...u,designBeam:(u==null?void 0:u.designBeam)??8,designLength:(u==null?void 0:u.designLength)??20});r.plane=new Cesium__namespace.PlaneGraphics({plane:new Cesium__namespace.Plane(Cesium__namespace.Cartesian3.UNIT_Z,0),dimensions:new Cesium__namespace.Cartesian2(d*y.scale.x,c*y.scale.y),show:new Cesium__namespace.CallbackProperty(()=>{var w;if(!this._viewer)return!0;const h=this._viewer.clock.currentTime,v=(w=i.position)==null?void 0:w.getValue(h);return v?Cesium__namespace.Cartesian3.distance(this._viewer.camera.positionWC,v)<=4e3:!1},!1),material:new Cesium__namespace.ImageMaterialProperty({image:y.url,transparent:!0,repeat:new Cesium__namespace.Cartesian2(1,1),color:createAlphaSampled({startTime:o})})})}}Cesium.Color.fromCssColorString("#FC4C02");Cesium.Color.WHITE;new Cesium.Color;new Array(4);var e$2=[],t$2=[];function n$2(s,i){if(s&&typeof document<"u"){var r,u=i.prepend===!0?"prepend":"append",m=i.singleTag===!0,o=typeof i.container=="string"?document.querySelector(i.container):document.getElementsByTagName("head")[0];if(m){var l=e$2.indexOf(o);l===-1&&(l=e$2.push(o)-1,t$2[l]={}),r=t$2[l]&&t$2[l][u]?t$2[l][u]:t$2[l][u]=c()}else r=c();s.charCodeAt(0)===65279&&(s=s.substring(1)),r.styleSheet?r.styleSheet.cssText+=s:r.appendChild(document.createTextNode(s))}function c(){var d=document.createElement("style");if(d.setAttribute("type","text/css"),i.attributes)for(var a=Object.keys(i.attributes),p=0;p<a.length;p++)d.setAttribute(a[p],i.attributes[a[p]]);var y=u==="prepend"?"afterbegin":"beforeend";return o.insertAdjacentElement(y,d),d}}var css$2='.cesium-tool-tip{background:rgba(0,0,0,.6);border-radius:4px;color:#fff;left:0;line-height:30px;min-height:30px;min-width:100px;padding:0 10px;pointer-events:none;position:absolute;top:0;visibility:hidden;z-index:-1}.cesium-tool-tip:before{border-bottom:10px solid transparent;border-right:10px solid rgba(0,0,0,.6);border-top:10px solid transparent;content:"";display:block;left:-10px;pointer-events:none;position:absolute;top:calc(50% - 10px)}';n$2(css$2,{});Cesium.Color.YELLOW,Cesium.Color.YELLOW,Cesium.Color.DARKTURQUOISE.withAlpha(.5),Cesium.Color.BLUE,Cesium.Color.WHITE,Cesium.Color.YELLOW.withAlpha(.5),Cesium.Color.YELLOW.withAlpha(.5);Cesium.Color.WHITE,new Cesium.Color(.165,.165,.165,.8),new Cesium.Cartesian2(4,4),Cesium.LabelStyle.FILL_AND_OUTLINE,new Cesium.Cartesian2(4,0),new Cesium.NearFarScalar(1,.85,8e6,.75),Cesium.HeightReference.CLAMP_TO_GROUND;class Popup{constructor(i,r){z(this,"_position");z(this,"_screenPosition",new Cesium.Cartesian2);z(this,"_element");z(this,"_viewer");z(this,"_options");z(this,"_destroyed",!1);z(this,"_offset");z(this,"setPosition",()=>{if(this._position&&this._viewer&&this._position){if(this._viewer.scene.mode===Cesium.SceneMode.SCENE3D){const u=this._viewer.scene.camera.position,m=new Cesium.BoundingSphere(new Cesium.Cartesian3(0,0,0),635e4);if(!new Cesium.Occluder(m,u).isPointVisible(this._position)){this.switchElementShow(!1);return}}const i=Cesium.SceneTransforms.worldToWindowCoordinates(this._viewer.scene,this._position),{_element:r}=this;if(r&&i){if(this._screenPosition&&this._screenPosition.x===i.x&&this._screenPosition.y===i.y)return;this.switchElementShow(!0);const u=i.x-r.clientWidth/2+this._offset[0],m=i.y-r.clientHeight+this._offset[1];r.style.left=`${u}px`,r.style.top=`${m}px`,this._screenPosition=i}}});this._viewer=i,this._options=r;const{position:u,element:m,offset:o}=r;if(!m)throw Error("no element!");this._position=u?Cesium.Cartesian3.fromDegrees(u[0],u[1],u[2]):null,this._element=m,this._offset=[(o==null?void 0:o[0])??0,(o==null?void 0:o[1])??0],this.addMapListener()}set position(i){if(!i){this.switchElementShow(!1),this._position=null,this._options.position=null;return}this._position=Cesium.Cartesian3.fromDegrees(i[0],i[1],i[2]),this._options.position=i,this.setPosition()}get position(){return this._options.position}get destroyed(){return this._destroyed}switchElementShow(i){this._element&&(this._element.style.display=i?"block":"none")}addMapListener(){var i;(i=this._viewer)==null||i.scene.postRender.addEventListener(this.setPosition)}destroy(){this._viewer.isDestroyed()||this._viewer.scene.postRender.removeEventListener(this.setPosition),this.setPosition=void 0,this._destroyed=!0}}var e$1=[],t$1=[];function n$1(s,i){if(s&&typeof document<"u"){var r,u=i.prepend===!0?"prepend":"append",m=i.singleTag===!0,o=typeof i.container=="string"?document.querySelector(i.container):document.getElementsByTagName("head")[0];if(m){var l=e$1.indexOf(o);l===-1&&(l=e$1.push(o)-1,t$1[l]={}),r=t$1[l]&&t$1[l][u]?t$1[l][u]:t$1[l][u]=c()}else r=c();s.charCodeAt(0)===65279&&(s=s.substring(1)),r.styleSheet?r.styleSheet.cssText+=s:r.appendChild(document.createTextNode(s))}function c(){var d=document.createElement("style");if(d.setAttribute("type","text/css"),i.attributes)for(var a=Object.keys(i.attributes),p=0;p<a.length;p++)d.setAttribute(a[p],i.attributes[a[p]]);var y=u==="prepend"?"afterbegin":"beforeend";return o.insertAdjacentElement(y,d),d}}var css$1=".cesium-compass{cursor:pointer;height:60px;pointer-events:auto;position:absolute;right:15px;top:100px;user-select:none;width:60px}.cesium-compass .out-ring{fill:rgba(23,49,71,.702);background-repeat:no-repeat;background-size:contain;border-radius:50%;height:60px;left:0;position:absolute;top:0;transition:all .3s ease;width:60px}.cesium-compass .out-ring svg{height:60px;width:60px}.cesium-compass:hover .rotation_marker svg{height:70.2px;width:70.2px}.cesium-compass .gyro{align-items:center;background:#fff;border-radius:50%;box-sizing:border-box;display:flex;height:30px;justify-content:center;margin:0 auto;padding:4px;position:relative;text-align:center;top:50%;transform:translateY(-50%);transition:all .3s ease;width:30px}.cesium-compass .gyro svg{height:20px;width:20px}.rotation_marker{background-repeat:no-repeat;background-size:contain;border-radius:50%;position:relative}.rotation_marker svg{height:60px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transition:all .3s ease;width:60px}.cesium-compass .gyro-active,.cesium-compass .gyro:hover{fill:#68adfe}";n$1(css$1,{});var e=[],t=[];function n(s,i){if(s&&typeof document<"u"){var r,u=i.prepend===!0?"prepend":"append",m=i.singleTag===!0,o=typeof i.container=="string"?document.querySelector(i.container):document.getElementsByTagName("head")[0];if(m){var l=e.indexOf(o);l===-1&&(l=e.push(o)-1,t[l]={}),r=t[l]&&t[l][u]?t[l][u]:t[l][u]=c()}else r=c();s.charCodeAt(0)===65279&&(s=s.substring(1)),r.styleSheet?r.styleSheet.cssText+=s:r.appendChild(document.createTextNode(s))}function c(){var d=document.createElement("style");if(d.setAttribute("type","text/css"),i.attributes)for(var a=Object.keys(i.attributes),p=0;p<a.length;p++)d.setAttribute(a[p],i.attributes[a[p]]);var y=u==="prepend"?"afterbegin":"beforeend";return o.insertAdjacentElement(y,d),d}}var css=".cesium-zoom-controller{border-radius:100px;box-sizing:border-box;display:flex;flex-direction:column;line-height:1.2rem;pointer-events:auto;position:absolute;right:30px;text-align:center;top:187px;user-select:none}.cesium-zoom-controller .refresh,.cesium-zoom-controller .zoom-in,.cesium-zoom-controller .zoom-out{border-radius:14%;margin-bottom:5px}.cesium-zoom-controller .cesium-button{background:#2a2e39;border:none;margin-right:0;transition:all .3s cubic-bezier(.645,.045,.355,1);transition-delay:0s;transition-duration:.2s;transition-property:all;transition-timing-function:cubic-bezier(.645,.045,.355,1)}.cesium-zoom-controller .cesium-button:hover{background:#48b;box-shadow:none}.cesium-zoom-controller .cesium-button:active{fill:#edffff;background:#adf;color:#edffff}.cesium-zoom-controller .cesium-toolbar-button{align-items:center;display:flex;height:30px;justify-content:center;width:30px}";n(css,{});var heatmap$1={exports:{}},heatmap=heatmap$1.exports,hasRequiredHeatmap;function requireHeatmap(){return hasRequiredHeatmap||(hasRequiredHeatmap=1,function(s){(function(i,r,u){s.exports?s.exports=u():r[i]=u()})("h337",heatmap,function(){var i={defaultRadius:40,defaultRenderer:"canvas2d",defaultGradient:{.25:"rgb(0,0,255)",.55:"rgb(0,255,0)",.85:"yellow",1:"rgb(255,0,0)"},defaultMaxOpacity:1,defaultMinOpacity:0,defaultBlur:.85,defaultXField:"x",defaultYField:"y",defaultValueField:"value",plugins:{}},r=function(){var a=function(g){this._coordinator={},this._data=[],this._radi=[],this._min=10,this._max=1,this._xField=g.xField||g.defaultXField,this._yField=g.yField||g.defaultYField,this._valueField=g.valueField||g.defaultValueField,g.radius&&(this._cfgRadius=g.radius)},p=i.defaultRadius;return a.prototype={_organiseData:function(y,g){var h=y[this._xField],v=y[this._yField],b=this._radi,w=this._data,T=this._max,_=this._min,x=y[this._valueField]||1,O=y.radius||this._cfgRadius||p;w[h]||(w[h]=[],b[h]=[]),w[h][v]?w[h][v]+=x:(w[h][v]=x,b[h][v]=O);var R=w[h][v];return R>T?(g?this.setDataMax(R):this._max=R,!1):R<_?(g?this.setDataMin(R):this._min=R,!1):{x:h,y:v,value:x,radius:O,min:_,max:T}},_unOrganizeData:function(){var y=[],g=this._data,h=this._radi;for(var v in g)for(var b in g[v])y.push({x:v,y:b,radius:h[v][b],value:g[v][b]});return{min:this._min,max:this._max,data:y}},_onExtremaChange:function(){this._coordinator.emit("extremachange",{min:this._min,max:this._max})},addData:function(){if(arguments[0].length>0)for(var y=arguments[0],g=y.length;g--;)this.addData.call(this,y[g]);else{var h=this._organiseData(arguments[0],!0);h&&(this._data.length===0&&(this._min=this._max=h.value),this._coordinator.emit("renderpartial",{min:this._min,max:this._max,data:[h]}))}return this},setData:function(y){var g=y.data,h=g.length;this._data=[],this._radi=[];for(var v=0;v<h;v++)this._organiseData(g[v],!1);return this._max=y.max,this._min=y.min||0,this._onExtremaChange(),this._coordinator.emit("renderall",this._getInternalData()),this},removeData:function(){},setDataMax:function(y){return this._max=y,this._onExtremaChange(),this._coordinator.emit("renderall",this._getInternalData()),this},setDataMin:function(y){return this._min=y,this._onExtremaChange(),this._coordinator.emit("renderall",this._getInternalData()),this},setCoordinator:function(y){this._coordinator=y},_getInternalData:function(){return{max:this._max,min:this._min,data:this._data,radi:this._radi}},getData:function(){return this._unOrganizeData()}},a}(),u=function(){var a=function(h){var v=h.gradient||h.defaultGradient,b=document.createElement("canvas"),w=b.getContext("2d",{willReadFrequently:!0});b.width=256,b.height=1;var T=w.createLinearGradient(0,0,256,1);for(var _ in v)T.addColorStop(_,v[_]);return w.fillStyle=T,w.fillRect(0,0,256,1),w.getImageData(0,0,256,1).data},p=function(h,v){var b=document.createElement("canvas"),w=b.getContext("2d",{willReadFrequently:!0}),T=h,_=h;if(b.width=b.height=h*2,v==1)w.beginPath(),w.arc(T,_,h,0,2*Math.PI,!1),w.fillStyle="rgba(0,0,0,1)",w.fill();else{var x=w.createRadialGradient(T,_,h*v,T,_,h);x.addColorStop(0,"rgba(0,0,0,1)"),x.addColorStop(1,"rgba(0,0,0,0)"),w.fillStyle=x,w.fillRect(0,0,2*h,2*h)}return b},y=function(_){for(var v=[],b=_.min,w=_.max,T=_.radi,_=_.data,x=Object.keys(_),O=x.length;O--;)for(var R=x[O],E=Object.keys(_[R]),C=E.length;C--;){var N=E[C],A=_[R][N],D=T[R][N];v.push({x:R,y:N,value:A,radius:D})}return{min:b,max:w,data:v}};function g(h){var v=h.container,b=this.shadowCanvas=document.createElement("canvas"),w=this.canvas=h.canvas||document.createElement("canvas");this._renderBoundaries=[1e4,1e4,0,0];var T=getComputedStyle(h.container)||{};w.className="heatmap-canvas",this._width=w.width=b.width=h.width||+T.width.replace(/px/,""),this._height=w.height=b.height=h.height||+T.height.replace(/px/,""),this.shadowCtx=b.getContext("2d",{willReadFrequently:!0}),this.ctx=w.getContext("2d",{willReadFrequently:!0}),w.style.cssText=b.style.cssText="position:absolute;left:0;top:0;",v.style.position="relative",v.appendChild(w),this._palette=a(h),this._templates={},this._setStyles(h)}return g.prototype={renderPartial:function(h){h.data.length>0&&(this._drawAlpha(h),this._colorize())},renderAll:function(h){this._clear(),h.data.length>0&&(this._drawAlpha(y(h)),this._colorize())},_updateGradient:function(h){this._palette=a(h)},updateConfig:function(h){h.gradient&&this._updateGradient(h),this._setStyles(h)},setDimensions:function(h,v){this._width=h,this._height=v,this.canvas.width=this.shadowCanvas.width=h,this.canvas.height=this.shadowCanvas.height=v},_clear:function(){this.shadowCtx.clearRect(0,0,this._width,this._height),this.ctx.clearRect(0,0,this._width,this._height)},_setStyles:function(h){this._blur=h.blur==0?0:h.blur||h.defaultBlur,h.backgroundColor&&(this.canvas.style.backgroundColor=h.backgroundColor),this._width=this.canvas.width=this.shadowCanvas.width=h.width||this._width,this._height=this.canvas.height=this.shadowCanvas.height=h.height||this._height,this._opacity=(h.opacity||0)*255,this._maxOpacity=(h.maxOpacity||h.defaultMaxOpacity)*255,this._minOpacity=(h.minOpacity||h.defaultMinOpacity)*255,this._useGradientOpacity=!!h.useGradientOpacity},_drawAlpha:function(w){for(var v=this._min=w.min,b=this._max=w.max,w=w.data||[],T=w.length,_=1-this._blur;T--;){var x=w[T],O=x.x,R=x.y,E=x.radius,C=Math.min(x.value,b),N=O-E,A=R-E,D=this.shadowCtx,P;this._templates[E]?P=this._templates[E]:this._templates[E]=P=p(E,_);var M=(C-v)/(b-v);D.globalAlpha=M<.01?.01:M,D.drawImage(P,N,A),N<this._renderBoundaries[0]&&(this._renderBoundaries[0]=N),A<this._renderBoundaries[1]&&(this._renderBoundaries[1]=A),N+2*E>this._renderBoundaries[2]&&(this._renderBoundaries[2]=N+2*E),A+2*E>this._renderBoundaries[3]&&(this._renderBoundaries[3]=A+2*E)}},_colorize:function(){var h=this._renderBoundaries[0],v=this._renderBoundaries[1],b=this._renderBoundaries[2]-h,w=this._renderBoundaries[3]-v,T=this._width,_=this._height,x=this._opacity,O=this._maxOpacity,R=this._minOpacity,E=this._useGradientOpacity;h<0&&(h=0),v<0&&(v=0),h+b>T&&(b=T-h),v+w>_&&(w=_-v);for(var C=this.shadowCtx.getImageData(h,v,b,w),N=C.data,A=N.length,D=this._palette,P=3;P<A;P+=4){var M=N[P],q=M*4;if(q){var F;x>0?F=x:M<O?M<R?F=R:F=M:F=O,N[P-3]=D[q],N[P-2]=D[q+1],N[P-1]=D[q+2],N[P]=E?D[q+3]:F}}this.ctx.putImageData(C,h,v),this._renderBoundaries=[1e3,1e3,0,0]},getValueAt:function(h){var v,b=this.shadowCtx,w=b.getImageData(h.x,h.y,1,1),T=w.data[3],_=this._max,x=this._min;return v=Math.abs(_-x)*(T/255)>>0,v},getDataURL:function(){return this.canvas.toDataURL()}},g}(),m=function(){var a=!1;return i.defaultRenderer==="canvas2d"&&(a=u),a}(),o={merge:function(){for(var d={},a=arguments.length,p=0;p<a;p++){var y=arguments[p];for(var g in y)d[g]=y[g]}return d}},l=function(){var a=function(){function h(){this.cStore={}}return h.prototype={on:function(v,b,w){var T=this.cStore;T[v]||(T[v]=[]),T[v].push(function(_){return b.call(w,_)})},emit:function(v,b){var w=this.cStore;if(w[v])for(var T=w[v].length,_=0;_<T;_++){var x=w[v][_];x(b)}}},h}(),p=function(g){var h=g._renderer,v=g._coordinator,b=g._store;v.on("renderpartial",h.renderPartial,h),v.on("renderall",h.renderAll,h),v.on("extremachange",function(w){g._config.onExtremaChange&&g._config.onExtremaChange({min:w.min,max:w.max,gradient:g._config.gradient||g._config.defaultGradient})}),b.setCoordinator(v)};function y(){var g=this._config=o.merge(i,arguments[0]||{});if(this._coordinator=new a,g.plugin){var h=g.plugin;if(i.plugins[h]){var v=i.plugins[h];this._renderer=new v.renderer(g),this._store=new v.store(g)}else throw new Error("Plugin '"+h+"' not found. Maybe it was not registered.")}else this._renderer=new m(g),this._store=new r(g);p(this)}return y.prototype={addData:function(){return this._store.addData.apply(this._store,arguments),this},removeData:function(){return this._store.removeData&&this._store.removeData.apply(this._store,arguments),this},setData:function(){return this._store.setData.apply(this._store,arguments),this},setDataMax:function(){return this._store.setDataMax.apply(this._store,arguments),this},setDataMin:function(){return this._store.setDataMin.apply(this._store,arguments),this},configure:function(g){return this._config=o.merge(this._config,g),this._renderer.updateConfig(this._config),this._coordinator.emit("renderall",this._store._getInternalData()),this},repaint:function(){return this._coordinator.emit("renderall",this._store._getInternalData()),this},getData:function(){return this._store.getData()},getDataURL:function(){return this._renderer.getDataURL()},getValueAt:function(g){return this._store.getValueAt?this._store.getValueAt(g):this._renderer.getValueAt?this._renderer.getValueAt(g):null}},y}(),c={create:function(d){return new l(d)},register:function(d,a){i.plugins[d]=a}};return c})}(heatmap$1)),heatmap$1.exports}requireHeatmap();const G=class G extends EventEmitter{constructor(){super();z(this,"popupMap",new Map)}static getInstance(){return G.instance||(G.instance=new G),G.instance}popup(r){var c;const u=r.element;u.style.position="absolute";const m=r.viewer.container,o=()=>{l&&(l.destroy(),m.removeChild(u),this.popupMap.delete(r.id),this.emit("onUnmount",r.id))};m.appendChild(u),this.emit("onMount",r.id),(c=this.popupMap.get(r.id))==null||c.destroy();const l=new Popup(r.viewer,{position:r.position,offset:r.offset??[0,0],element:u});this.popupMap.set(r.id,{popup:l,destroy:o})}close(r){const u=this.popupMap.get(r);u&&(u.destroy(),this.popupMap.delete(r),this.emit("onUnmount",r))}closeAll(){this.popupMap.forEach(r=>r.destroy()),this.popupMap.clear()}};z(G,"instance",null);let PopupCtrl=G;function saveCameraParams(s){const i=s.camera;return{position:i.position,direction:i.direction,up:i.up,right:i.right,transform:i.transform}}function flyToCameraParams(s,i,r=1){s.camera.flyTo({destination:i.position,orientation:{direction:i.direction,up:i.up,right:i.right},duration:r})}const memoizeMap=new WeakMap;function ListenLeftClick(s){if(memoizeMap.has(s))return memoizeMap.get(s);const i=new EventEmitter;return new Cesium__namespace.ScreenSpaceEventHandler(s.scene.canvas).setInputAction(u=>{i.emit("click",u)},Cesium__namespace.ScreenSpaceEventType.LEFT_CLICK),memoizeMap.set(s,i),i}exports.ListenLeftClick=ListenLeftClick;exports.PopupCtrl=PopupCtrl;exports.ShipLayer=ShipLayer;exports.WmsLayer=WmsLayer;exports.WmsLayerController=WmsLayerController;exports.createTdtProvider=createTdtProvider;exports.createTdtTerrain=createTdtTerrain;exports.flyToCameraParams=flyToCameraParams;exports.saveCameraParams=saveCameraParams;
|
|
77
|
+
</svg>`;return{url:URL.createObjectURL(new Blob([b],{type:"image/svg+xml"})),viewBox:h,scale:v}},s=>`${s.color},${s.isMoving},${s.designBeam??0},${s.designLength??0},${s.aisFromBow??0},${s.aisFromCenter??0}`),shipTypeColorMap=new Map([[-1,"#00FF00"],[70,"#95B3D7"],[37,"#00FF00"],[50,"#366092"],[51,"#366092"],[52,"#366092"],[53,"#366092"],[54,"#366092"],[55,"#366092"],[56,"#366092"],[57,"#366092"],[58,"#366092"],[59,"#366092"],[80,"red"],[81,"red"],[82,"red"],[83,"red"],[84,"red"],[85,"red"],[86,"red"],[87,"red"],[88,"red"],[89,"red"]]);function createAlphaSampled(s){const i=new Cesium__namespace.SampledProperty(Cesium__namespace.Color),r=(s==null?void 0:s.startTime)??Cesium__namespace.JulianDate.now(),u=Cesium__namespace.JulianDate.addMinutes(r,1,new Cesium__namespace.JulianDate),m=Cesium__namespace.JulianDate.addMinutes(r,5,new Cesium__namespace.JulianDate),o=Cesium__namespace.JulianDate.fromIso8601("2100-01-01T00:00:00Z"),l=(s==null?void 0:s.color)??Cesium__namespace.Color.WHITE;return i.addSample(r,l.withAlpha(1)),i.addSample(u,l.withAlpha(1)),i.addSample(m,l.withAlpha(.2)),i.addSample(o,l.withAlpha(.1)),i}function getHideAfterFiveMinutesProperty(s){const i=s??Cesium__namespace.JulianDate.now(),r=Cesium__namespace.JulianDate.addMinutes(i,5,new Cesium__namespace.JulianDate);return new Cesium__namespace.CallbackProperty(u=>u?Cesium__namespace.JulianDate.lessThan(u,r):!0,!1)}class ShipLayer{constructor(i,r){z(this,"db");z(this,"isMounted",!1);z(this,"_viewer",null);z(this,"entityMap",new Map);z(this,"IS_MOVING_THRESHOLD",1);z(this,"shadowEntityMap",new WeakMap);this.key=i,this.zIndex=r,this.db=new Cesium__namespace.CustomDataSource(i)}show(i){this.isMounted||(i.dataSources.add(this.db),this._viewer=i,this.isMounted=!0),this.db.show=!0}hide(){this.isMounted&&(this.db.show=!1)}render(i){i.features.forEach(r=>{this.renderFeature(r)})}renderFeature(i){var c,d;const r=String(i.id),u=new Cesium__namespace.SampledPositionProperty;u.backwardExtrapolationType=Cesium__namespace.ExtrapolationType.HOLD,u.forwardExtrapolationType=Cesium__namespace.ExtrapolationType.HOLD;const m=Cesium__namespace.Cartesian3.fromDegrees(i.geometry.coordinates[0],i.geometry.coordinates[1]);u.addSample(((c=this._viewer)==null?void 0:c.clock.currentTime)??Cesium__namespace.JulianDate.now(),m);const o=((d=i.properties)==null?void 0:d.courseOverGroundTrue)??0,l=new Cesium__namespace.Entity({id:r,position:u,orientation:new Cesium__namespace.ConstantProperty(Cesium__namespace.Transforms.headingPitchRollQuaternion(m,new Cesium__namespace.HeadingPitchRoll(o,0,0))),properties:i.properties??{}});this.entityMap.set(r,l),this.db.entities.add(l),this.renderEntity(l)}update(i){var u,m,o,l,c,d,a,p;const r=this.db.entities.getById(String(i.id));if(r){const y=this.shadowEntityMap.get(r),g=((u=i.properties)==null?void 0:u.shipTypeId)??-1,h=shipTypeColorMap.get(g)??shipTypeColorMap.get(-1),[v,b]=i.geometry.coordinates,w=((m=this._viewer)==null?void 0:m.clock.currentTime)??Cesium__namespace.JulianDate.now(),T=(o=r.position)==null?void 0:o.getValue(w),_=Cesium__namespace.JulianDate.addSeconds(w,3,new Cesium__namespace.JulianDate),x=Cesium__namespace.Cartesian3.fromDegrees(v,b),O=new Cesium__namespace.SampledPositionProperty;if(O.backwardExtrapolationType=Cesium__namespace.ExtrapolationType.HOLD,O.forwardExtrapolationType=Cesium__namespace.ExtrapolationType.HOLD,O instanceof Cesium__namespace.SampledPositionProperty&&(O.addSample(Cesium__namespace.JulianDate.addSeconds(w,1,new Cesium__namespace.JulianDate),T??x),O.addSample(_,x)),r.position=O,y&&(y.position=O),r.properties)for(const[R,E]of Object.entries(i.properties??{})){if(R=="speedOverGround"){const C=r.properties.getValue().speedOverGround??0,N=Number(C)>this.IS_MOVING_THRESHOLD,A=Number(E)>this.IS_MOVING_THRESHOLD;if(N!==A&&(r.billboard&&(r.billboard.image=new Cesium__namespace.ConstantProperty(createShipIconUrl(h,A))),y!=null&&y.plane)){const D=((l=i.properties)==null?void 0:l.designBeam)??8,P=((c=i.properties)==null?void 0:c.designLength)??20,M=createShipIconV2({color:h,isMoving:A,...i.properties,designBeam:D,designLength:P}),q=(d=y.plane)==null?void 0:d.material;q&&(q.image=new Cesium__namespace.ConstantProperty(M.url),y.plane.dimensions=new Cesium__namespace.ConstantProperty(new Cesium__namespace.Cartesian2(D*M.scale.x,P*M.scale.y))),y.plane.dimensions=new Cesium__namespace.CallbackProperty(()=>new Cesium__namespace.Cartesian2(D*M.scale.x,P*M.scale.y),!0)}}if(R=="courseOverGroundTrue"){const C=((a=i.properties)==null?void 0:a.courseOverGroundTrue)??0;r.billboard.rotation=new Cesium__namespace.ConstantProperty(typeof E=="number"?-1*E:0);const N=new Cesium__namespace.ConstantProperty(Cesium__namespace.Transforms.headingPitchRollQuaternion(x,new Cesium__namespace.HeadingPitchRoll(C,0,0)));y&&(y.orientation=N)}if(R=="updateTime"){const C=Cesium__namespace.JulianDate.fromDate(new Date(E));r.billboard.color=createAlphaSampled({startTime:C});const N=(p=y==null?void 0:y.plane)==null?void 0:p.material;N&&(N.color=createAlphaSampled({startTime:C}));const A=getHideAfterFiveMinutesProperty(C);r.label.show=A,r.point.show=A}r.properties[R]=E,y!=null&&y.properties&&(y.properties[R]=E)}}else this.renderFeature(i)}renderEntity(i){var a,p,y,g,h,v,b;const r=(a=i.properties)==null?void 0:a.getValue(),u=(r==null?void 0:r.shipTypeId)??-1,m=shipTypeColorMap.get(u)??shipTypeColorMap.get(-1),o=Number((r==null?void 0:r.speedOverGround)??0),l=r!=null&&r.updateTime?new Date(r.updateTime):new Date,c=Cesium__namespace.JulianDate.fromDate(l),d=createShipIconUrl(m,o>this.IS_MOVING_THRESHOLD);i.point=new Cesium__namespace.PointGraphics({pixelSize:4,color:Cesium__namespace.Color.fromCssColorString("#8AF22C"),disableDepthTestDistance:3e6,distanceDisplayCondition:new Cesium__namespace.DistanceDisplayCondition(15e3),show:getHideAfterFiveMinutesProperty(c)}),i.billboard=new Cesium__namespace.BillboardGraphics({image:d,width:14,height:70,disableDepthTestDistance:3e6,distanceDisplayCondition:new Cesium__namespace.DistanceDisplayCondition(4e3,15e3),pixelOffset:new Cesium__namespace.Cartesian2(0,0),alignedAxis:Cesium__namespace.Cartesian3.UNIT_Z,color:createAlphaSampled({startTime:c}),rotation:new Cesium__namespace.ConstantProperty((y=(p=i.properties)==null?void 0:p.getValue())!=null&&y.courseOverGroundTrue?-1*i.properties.getValue().courseOverGroundTrue:0)}),i.label=new Cesium__namespace.LabelGraphics({font:'12px normal "微软雅黑"',backgroundColor:Cesium__namespace.Color.fromCssColorString("#E9F4FC"),fillColor:Cesium__namespace.Color.BLACK,outlineColor:Cesium__namespace.Color.BLACK,outlineWidth:2,showBackground:!0,style:Cesium__namespace.LabelStyle.FILL,pixelOffset:new Cesium__namespace.Cartesian2(0,-20),scale:1,scaleByDistance:new Cesium__namespace.NearFarScalar(3e3,1,1e4,.55),text:((h=(g=i.properties)==null?void 0:g.getValue())==null?void 0:h.name)??((v=i.properties)!=null&&v.getValue().mmsi?"mmsi:"+((b=i.properties)==null?void 0:b.getValue().mmsi):"未知"),horizontalOrigin:Cesium__namespace.HorizontalOrigin.CENTER,distanceDisplayCondition:new Cesium__namespace.DistanceDisplayCondition(0,15e3),disableDepthTestDistance:5e3,show:getHideAfterFiveMinutesProperty(c)}),this.createShipPlane(i)}createShipPlane(i){var g;const r=new Cesium__namespace.Entity({id:i.id+"_shadow",position:i.position,orientation:i.orientation,properties:i.properties});this.shadowEntityMap.set(i,r),this.db.entities.add(r);const u=(g=i.properties)==null?void 0:g.getValue(),m=u!=null&&u.updateTime?new Date(u.updateTime):new Date,o=Cesium__namespace.JulianDate.fromDate(m),l=Number((u==null?void 0:u.speedOverGround)??0),c=(u==null?void 0:u.designLength)??20,d=(u==null?void 0:u.designBeam)??8,a=(u==null?void 0:u.shipTypeId)??-1,p=shipTypeColorMap.get(a)??shipTypeColorMap.get(-1),y=createShipIconV2({color:p,isMoving:l>this.IS_MOVING_THRESHOLD,...u,designBeam:(u==null?void 0:u.designBeam)??8,designLength:(u==null?void 0:u.designLength)??20});r.plane=new Cesium__namespace.PlaneGraphics({plane:new Cesium__namespace.Plane(Cesium__namespace.Cartesian3.UNIT_Z,0),dimensions:new Cesium__namespace.Cartesian2(d*y.scale.x,c*y.scale.y),show:new Cesium__namespace.CallbackProperty(()=>{var w;if(!this._viewer)return!0;const h=this._viewer.clock.currentTime,v=(w=i.position)==null?void 0:w.getValue(h);return v?Cesium__namespace.Cartesian3.distance(this._viewer.camera.positionWC,v)<=4e3:!1},!1),material:new Cesium__namespace.ImageMaterialProperty({image:y.url,transparent:!0,repeat:new Cesium__namespace.Cartesian2(1,1),color:createAlphaSampled({startTime:o})})})}hideEntityByCondition(i){this.db.entities.values.forEach(r=>{const u=i(r);r.show=u;const m=this.shadowEntityMap.get(r);m&&(m.show=u)})}showAllEntity(){this.db.entities.values.forEach(i=>{i.show=!0})}}Cesium.Color.fromCssColorString("#FC4C02");Cesium.Color.WHITE;new Cesium.Color;new Array(4);var e$2=[],t$2=[];function n$2(s,i){if(s&&typeof document<"u"){var r,u=i.prepend===!0?"prepend":"append",m=i.singleTag===!0,o=typeof i.container=="string"?document.querySelector(i.container):document.getElementsByTagName("head")[0];if(m){var l=e$2.indexOf(o);l===-1&&(l=e$2.push(o)-1,t$2[l]={}),r=t$2[l]&&t$2[l][u]?t$2[l][u]:t$2[l][u]=c()}else r=c();s.charCodeAt(0)===65279&&(s=s.substring(1)),r.styleSheet?r.styleSheet.cssText+=s:r.appendChild(document.createTextNode(s))}function c(){var d=document.createElement("style");if(d.setAttribute("type","text/css"),i.attributes)for(var a=Object.keys(i.attributes),p=0;p<a.length;p++)d.setAttribute(a[p],i.attributes[a[p]]);var y=u==="prepend"?"afterbegin":"beforeend";return o.insertAdjacentElement(y,d),d}}var css$2='.cesium-tool-tip{background:rgba(0,0,0,.6);border-radius:4px;color:#fff;left:0;line-height:30px;min-height:30px;min-width:100px;padding:0 10px;pointer-events:none;position:absolute;top:0;visibility:hidden;z-index:-1}.cesium-tool-tip:before{border-bottom:10px solid transparent;border-right:10px solid rgba(0,0,0,.6);border-top:10px solid transparent;content:"";display:block;left:-10px;pointer-events:none;position:absolute;top:calc(50% - 10px)}';n$2(css$2,{});Cesium.Color.YELLOW,Cesium.Color.YELLOW,Cesium.Color.DARKTURQUOISE.withAlpha(.5),Cesium.Color.BLUE,Cesium.Color.WHITE,Cesium.Color.YELLOW.withAlpha(.5),Cesium.Color.YELLOW.withAlpha(.5);Cesium.Color.WHITE,new Cesium.Color(.165,.165,.165,.8),new Cesium.Cartesian2(4,4),Cesium.LabelStyle.FILL_AND_OUTLINE,new Cesium.Cartesian2(4,0),new Cesium.NearFarScalar(1,.85,8e6,.75),Cesium.HeightReference.CLAMP_TO_GROUND;class Popup{constructor(i,r){z(this,"_position");z(this,"_screenPosition",new Cesium.Cartesian2);z(this,"_element");z(this,"_viewer");z(this,"_options");z(this,"_destroyed",!1);z(this,"_offset");z(this,"setPosition",()=>{if(this._position&&this._viewer&&this._position){if(this._viewer.scene.mode===Cesium.SceneMode.SCENE3D){const u=this._viewer.scene.camera.position,m=new Cesium.BoundingSphere(new Cesium.Cartesian3(0,0,0),635e4);if(!new Cesium.Occluder(m,u).isPointVisible(this._position)){this.switchElementShow(!1);return}}const i=Cesium.SceneTransforms.worldToWindowCoordinates(this._viewer.scene,this._position),{_element:r}=this;if(r&&i){if(this._screenPosition&&this._screenPosition.x===i.x&&this._screenPosition.y===i.y)return;this.switchElementShow(!0);const u=i.x-r.clientWidth/2+this._offset[0],m=i.y-r.clientHeight+this._offset[1];r.style.left=`${u}px`,r.style.top=`${m}px`,this._screenPosition=i}}});this._viewer=i,this._options=r;const{position:u,element:m,offset:o}=r;if(!m)throw Error("no element!");this._position=u?Cesium.Cartesian3.fromDegrees(u[0],u[1],u[2]):null,this._element=m,this._offset=[(o==null?void 0:o[0])??0,(o==null?void 0:o[1])??0],this.addMapListener()}set position(i){if(!i){this.switchElementShow(!1),this._position=null,this._options.position=null;return}this._position=Cesium.Cartesian3.fromDegrees(i[0],i[1],i[2]),this._options.position=i,this.setPosition()}get position(){return this._options.position}get destroyed(){return this._destroyed}switchElementShow(i){this._element&&(this._element.style.display=i?"block":"none")}addMapListener(){var i;(i=this._viewer)==null||i.scene.postRender.addEventListener(this.setPosition)}destroy(){this._viewer.isDestroyed()||this._viewer.scene.postRender.removeEventListener(this.setPosition),this.setPosition=void 0,this._destroyed=!0}}var e$1=[],t$1=[];function n$1(s,i){if(s&&typeof document<"u"){var r,u=i.prepend===!0?"prepend":"append",m=i.singleTag===!0,o=typeof i.container=="string"?document.querySelector(i.container):document.getElementsByTagName("head")[0];if(m){var l=e$1.indexOf(o);l===-1&&(l=e$1.push(o)-1,t$1[l]={}),r=t$1[l]&&t$1[l][u]?t$1[l][u]:t$1[l][u]=c()}else r=c();s.charCodeAt(0)===65279&&(s=s.substring(1)),r.styleSheet?r.styleSheet.cssText+=s:r.appendChild(document.createTextNode(s))}function c(){var d=document.createElement("style");if(d.setAttribute("type","text/css"),i.attributes)for(var a=Object.keys(i.attributes),p=0;p<a.length;p++)d.setAttribute(a[p],i.attributes[a[p]]);var y=u==="prepend"?"afterbegin":"beforeend";return o.insertAdjacentElement(y,d),d}}var css$1=".cesium-compass{cursor:pointer;height:60px;pointer-events:auto;position:absolute;right:15px;top:100px;user-select:none;width:60px}.cesium-compass .out-ring{fill:rgba(23,49,71,.702);background-repeat:no-repeat;background-size:contain;border-radius:50%;height:60px;left:0;position:absolute;top:0;transition:all .3s ease;width:60px}.cesium-compass .out-ring svg{height:60px;width:60px}.cesium-compass:hover .rotation_marker svg{height:70.2px;width:70.2px}.cesium-compass .gyro{align-items:center;background:#fff;border-radius:50%;box-sizing:border-box;display:flex;height:30px;justify-content:center;margin:0 auto;padding:4px;position:relative;text-align:center;top:50%;transform:translateY(-50%);transition:all .3s ease;width:30px}.cesium-compass .gyro svg{height:20px;width:20px}.rotation_marker{background-repeat:no-repeat;background-size:contain;border-radius:50%;position:relative}.rotation_marker svg{height:60px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transition:all .3s ease;width:60px}.cesium-compass .gyro-active,.cesium-compass .gyro:hover{fill:#68adfe}";n$1(css$1,{});var e=[],t=[];function n(s,i){if(s&&typeof document<"u"){var r,u=i.prepend===!0?"prepend":"append",m=i.singleTag===!0,o=typeof i.container=="string"?document.querySelector(i.container):document.getElementsByTagName("head")[0];if(m){var l=e.indexOf(o);l===-1&&(l=e.push(o)-1,t[l]={}),r=t[l]&&t[l][u]?t[l][u]:t[l][u]=c()}else r=c();s.charCodeAt(0)===65279&&(s=s.substring(1)),r.styleSheet?r.styleSheet.cssText+=s:r.appendChild(document.createTextNode(s))}function c(){var d=document.createElement("style");if(d.setAttribute("type","text/css"),i.attributes)for(var a=Object.keys(i.attributes),p=0;p<a.length;p++)d.setAttribute(a[p],i.attributes[a[p]]);var y=u==="prepend"?"afterbegin":"beforeend";return o.insertAdjacentElement(y,d),d}}var css=".cesium-zoom-controller{border-radius:100px;box-sizing:border-box;display:flex;flex-direction:column;line-height:1.2rem;pointer-events:auto;position:absolute;right:30px;text-align:center;top:187px;user-select:none}.cesium-zoom-controller .refresh,.cesium-zoom-controller .zoom-in,.cesium-zoom-controller .zoom-out{border-radius:14%;margin-bottom:5px}.cesium-zoom-controller .cesium-button{background:#2a2e39;border:none;margin-right:0;transition:all .3s cubic-bezier(.645,.045,.355,1);transition-delay:0s;transition-duration:.2s;transition-property:all;transition-timing-function:cubic-bezier(.645,.045,.355,1)}.cesium-zoom-controller .cesium-button:hover{background:#48b;box-shadow:none}.cesium-zoom-controller .cesium-button:active{fill:#edffff;background:#adf;color:#edffff}.cesium-zoom-controller .cesium-toolbar-button{align-items:center;display:flex;height:30px;justify-content:center;width:30px}";n(css,{});var heatmap$1={exports:{}},heatmap=heatmap$1.exports,hasRequiredHeatmap;function requireHeatmap(){return hasRequiredHeatmap||(hasRequiredHeatmap=1,function(s){(function(i,r,u){s.exports?s.exports=u():r[i]=u()})("h337",heatmap,function(){var i={defaultRadius:40,defaultRenderer:"canvas2d",defaultGradient:{.25:"rgb(0,0,255)",.55:"rgb(0,255,0)",.85:"yellow",1:"rgb(255,0,0)"},defaultMaxOpacity:1,defaultMinOpacity:0,defaultBlur:.85,defaultXField:"x",defaultYField:"y",defaultValueField:"value",plugins:{}},r=function(){var a=function(g){this._coordinator={},this._data=[],this._radi=[],this._min=10,this._max=1,this._xField=g.xField||g.defaultXField,this._yField=g.yField||g.defaultYField,this._valueField=g.valueField||g.defaultValueField,g.radius&&(this._cfgRadius=g.radius)},p=i.defaultRadius;return a.prototype={_organiseData:function(y,g){var h=y[this._xField],v=y[this._yField],b=this._radi,w=this._data,T=this._max,_=this._min,x=y[this._valueField]||1,O=y.radius||this._cfgRadius||p;w[h]||(w[h]=[],b[h]=[]),w[h][v]?w[h][v]+=x:(w[h][v]=x,b[h][v]=O);var R=w[h][v];return R>T?(g?this.setDataMax(R):this._max=R,!1):R<_?(g?this.setDataMin(R):this._min=R,!1):{x:h,y:v,value:x,radius:O,min:_,max:T}},_unOrganizeData:function(){var y=[],g=this._data,h=this._radi;for(var v in g)for(var b in g[v])y.push({x:v,y:b,radius:h[v][b],value:g[v][b]});return{min:this._min,max:this._max,data:y}},_onExtremaChange:function(){this._coordinator.emit("extremachange",{min:this._min,max:this._max})},addData:function(){if(arguments[0].length>0)for(var y=arguments[0],g=y.length;g--;)this.addData.call(this,y[g]);else{var h=this._organiseData(arguments[0],!0);h&&(this._data.length===0&&(this._min=this._max=h.value),this._coordinator.emit("renderpartial",{min:this._min,max:this._max,data:[h]}))}return this},setData:function(y){var g=y.data,h=g.length;this._data=[],this._radi=[];for(var v=0;v<h;v++)this._organiseData(g[v],!1);return this._max=y.max,this._min=y.min||0,this._onExtremaChange(),this._coordinator.emit("renderall",this._getInternalData()),this},removeData:function(){},setDataMax:function(y){return this._max=y,this._onExtremaChange(),this._coordinator.emit("renderall",this._getInternalData()),this},setDataMin:function(y){return this._min=y,this._onExtremaChange(),this._coordinator.emit("renderall",this._getInternalData()),this},setCoordinator:function(y){this._coordinator=y},_getInternalData:function(){return{max:this._max,min:this._min,data:this._data,radi:this._radi}},getData:function(){return this._unOrganizeData()}},a}(),u=function(){var a=function(h){var v=h.gradient||h.defaultGradient,b=document.createElement("canvas"),w=b.getContext("2d",{willReadFrequently:!0});b.width=256,b.height=1;var T=w.createLinearGradient(0,0,256,1);for(var _ in v)T.addColorStop(_,v[_]);return w.fillStyle=T,w.fillRect(0,0,256,1),w.getImageData(0,0,256,1).data},p=function(h,v){var b=document.createElement("canvas"),w=b.getContext("2d",{willReadFrequently:!0}),T=h,_=h;if(b.width=b.height=h*2,v==1)w.beginPath(),w.arc(T,_,h,0,2*Math.PI,!1),w.fillStyle="rgba(0,0,0,1)",w.fill();else{var x=w.createRadialGradient(T,_,h*v,T,_,h);x.addColorStop(0,"rgba(0,0,0,1)"),x.addColorStop(1,"rgba(0,0,0,0)"),w.fillStyle=x,w.fillRect(0,0,2*h,2*h)}return b},y=function(_){for(var v=[],b=_.min,w=_.max,T=_.radi,_=_.data,x=Object.keys(_),O=x.length;O--;)for(var R=x[O],E=Object.keys(_[R]),C=E.length;C--;){var N=E[C],A=_[R][N],D=T[R][N];v.push({x:R,y:N,value:A,radius:D})}return{min:b,max:w,data:v}};function g(h){var v=h.container,b=this.shadowCanvas=document.createElement("canvas"),w=this.canvas=h.canvas||document.createElement("canvas");this._renderBoundaries=[1e4,1e4,0,0];var T=getComputedStyle(h.container)||{};w.className="heatmap-canvas",this._width=w.width=b.width=h.width||+T.width.replace(/px/,""),this._height=w.height=b.height=h.height||+T.height.replace(/px/,""),this.shadowCtx=b.getContext("2d",{willReadFrequently:!0}),this.ctx=w.getContext("2d",{willReadFrequently:!0}),w.style.cssText=b.style.cssText="position:absolute;left:0;top:0;",v.style.position="relative",v.appendChild(w),this._palette=a(h),this._templates={},this._setStyles(h)}return g.prototype={renderPartial:function(h){h.data.length>0&&(this._drawAlpha(h),this._colorize())},renderAll:function(h){this._clear(),h.data.length>0&&(this._drawAlpha(y(h)),this._colorize())},_updateGradient:function(h){this._palette=a(h)},updateConfig:function(h){h.gradient&&this._updateGradient(h),this._setStyles(h)},setDimensions:function(h,v){this._width=h,this._height=v,this.canvas.width=this.shadowCanvas.width=h,this.canvas.height=this.shadowCanvas.height=v},_clear:function(){this.shadowCtx.clearRect(0,0,this._width,this._height),this.ctx.clearRect(0,0,this._width,this._height)},_setStyles:function(h){this._blur=h.blur==0?0:h.blur||h.defaultBlur,h.backgroundColor&&(this.canvas.style.backgroundColor=h.backgroundColor),this._width=this.canvas.width=this.shadowCanvas.width=h.width||this._width,this._height=this.canvas.height=this.shadowCanvas.height=h.height||this._height,this._opacity=(h.opacity||0)*255,this._maxOpacity=(h.maxOpacity||h.defaultMaxOpacity)*255,this._minOpacity=(h.minOpacity||h.defaultMinOpacity)*255,this._useGradientOpacity=!!h.useGradientOpacity},_drawAlpha:function(w){for(var v=this._min=w.min,b=this._max=w.max,w=w.data||[],T=w.length,_=1-this._blur;T--;){var x=w[T],O=x.x,R=x.y,E=x.radius,C=Math.min(x.value,b),N=O-E,A=R-E,D=this.shadowCtx,P;this._templates[E]?P=this._templates[E]:this._templates[E]=P=p(E,_);var M=(C-v)/(b-v);D.globalAlpha=M<.01?.01:M,D.drawImage(P,N,A),N<this._renderBoundaries[0]&&(this._renderBoundaries[0]=N),A<this._renderBoundaries[1]&&(this._renderBoundaries[1]=A),N+2*E>this._renderBoundaries[2]&&(this._renderBoundaries[2]=N+2*E),A+2*E>this._renderBoundaries[3]&&(this._renderBoundaries[3]=A+2*E)}},_colorize:function(){var h=this._renderBoundaries[0],v=this._renderBoundaries[1],b=this._renderBoundaries[2]-h,w=this._renderBoundaries[3]-v,T=this._width,_=this._height,x=this._opacity,O=this._maxOpacity,R=this._minOpacity,E=this._useGradientOpacity;h<0&&(h=0),v<0&&(v=0),h+b>T&&(b=T-h),v+w>_&&(w=_-v);for(var C=this.shadowCtx.getImageData(h,v,b,w),N=C.data,A=N.length,D=this._palette,P=3;P<A;P+=4){var M=N[P],q=M*4;if(q){var F;x>0?F=x:M<O?M<R?F=R:F=M:F=O,N[P-3]=D[q],N[P-2]=D[q+1],N[P-1]=D[q+2],N[P]=E?D[q+3]:F}}this.ctx.putImageData(C,h,v),this._renderBoundaries=[1e3,1e3,0,0]},getValueAt:function(h){var v,b=this.shadowCtx,w=b.getImageData(h.x,h.y,1,1),T=w.data[3],_=this._max,x=this._min;return v=Math.abs(_-x)*(T/255)>>0,v},getDataURL:function(){return this.canvas.toDataURL()}},g}(),m=function(){var a=!1;return i.defaultRenderer==="canvas2d"&&(a=u),a}(),o={merge:function(){for(var d={},a=arguments.length,p=0;p<a;p++){var y=arguments[p];for(var g in y)d[g]=y[g]}return d}},l=function(){var a=function(){function h(){this.cStore={}}return h.prototype={on:function(v,b,w){var T=this.cStore;T[v]||(T[v]=[]),T[v].push(function(_){return b.call(w,_)})},emit:function(v,b){var w=this.cStore;if(w[v])for(var T=w[v].length,_=0;_<T;_++){var x=w[v][_];x(b)}}},h}(),p=function(g){var h=g._renderer,v=g._coordinator,b=g._store;v.on("renderpartial",h.renderPartial,h),v.on("renderall",h.renderAll,h),v.on("extremachange",function(w){g._config.onExtremaChange&&g._config.onExtremaChange({min:w.min,max:w.max,gradient:g._config.gradient||g._config.defaultGradient})}),b.setCoordinator(v)};function y(){var g=this._config=o.merge(i,arguments[0]||{});if(this._coordinator=new a,g.plugin){var h=g.plugin;if(i.plugins[h]){var v=i.plugins[h];this._renderer=new v.renderer(g),this._store=new v.store(g)}else throw new Error("Plugin '"+h+"' not found. Maybe it was not registered.")}else this._renderer=new m(g),this._store=new r(g);p(this)}return y.prototype={addData:function(){return this._store.addData.apply(this._store,arguments),this},removeData:function(){return this._store.removeData&&this._store.removeData.apply(this._store,arguments),this},setData:function(){return this._store.setData.apply(this._store,arguments),this},setDataMax:function(){return this._store.setDataMax.apply(this._store,arguments),this},setDataMin:function(){return this._store.setDataMin.apply(this._store,arguments),this},configure:function(g){return this._config=o.merge(this._config,g),this._renderer.updateConfig(this._config),this._coordinator.emit("renderall",this._store._getInternalData()),this},repaint:function(){return this._coordinator.emit("renderall",this._store._getInternalData()),this},getData:function(){return this._store.getData()},getDataURL:function(){return this._renderer.getDataURL()},getValueAt:function(g){return this._store.getValueAt?this._store.getValueAt(g):this._renderer.getValueAt?this._renderer.getValueAt(g):null}},y}(),c={create:function(d){return new l(d)},register:function(d,a){i.plugins[d]=a}};return c})}(heatmap$1)),heatmap$1.exports}requireHeatmap();const G=class G extends EventEmitter{constructor(){super();z(this,"popupMap",new Map)}static getInstance(){return G.instance||(G.instance=new G),G.instance}popup(r){var c;const u=r.element;u.style.position="absolute";const m=r.viewer.container,o=()=>{l&&(l.destroy(),m.removeChild(u),this.popupMap.delete(r.id),this.emit("onUnmount",r.id))};m.appendChild(u),this.emit("onMount",r.id),(c=this.popupMap.get(r.id))==null||c.destroy();const l=new Popup(r.viewer,{position:r.position,offset:r.offset??[0,0],element:u});this.popupMap.set(r.id,{popup:l,destroy:o})}close(r){const u=this.popupMap.get(r);u&&(u.destroy(),this.popupMap.delete(r),this.emit("onUnmount",r))}closeAll(){this.popupMap.forEach(r=>r.destroy()),this.popupMap.clear()}};z(G,"instance",null);let PopupCtrl=G;function saveCameraParams(s){const i=s.camera;return{position:i.position,direction:i.direction,up:i.up,right:i.right,transform:i.transform}}function flyToCameraParams(s,i,r=1){s.camera.flyTo({destination:i.position,orientation:{direction:i.direction,up:i.up,right:i.right},duration:r})}const memoizeMap=new WeakMap;function ListenLeftClick(s){if(memoizeMap.has(s))return memoizeMap.get(s);const i=new EventEmitter;return new Cesium__namespace.ScreenSpaceEventHandler(s.scene.canvas).setInputAction(u=>{i.emit("click",u)},Cesium__namespace.ScreenSpaceEventType.LEFT_CLICK),memoizeMap.set(s,i),i}exports.ListenLeftClick=ListenLeftClick;exports.PopupCtrl=PopupCtrl;exports.ShipLayer=ShipLayer;exports.WmsLayer=WmsLayer;exports.WmsLayerController=WmsLayerController;exports.createTdtProvider=createTdtProvider;exports.createTdtTerrain=createTdtTerrain;exports.flyToCameraParams=flyToCameraParams;exports.saveCameraParams=saveCameraParams;
|
package/dist/cesium-utils.d.ts
CHANGED
|
@@ -105,6 +105,9 @@ export declare class ShipLayer implements Layer {
|
|
|
105
105
|
private renderEntity;
|
|
106
106
|
private shadowEntityMap;
|
|
107
107
|
private createShipPlane;
|
|
108
|
+
/**显隐entity,回调返回显示隐藏的状态 */
|
|
109
|
+
hideEntityByCondition(validateFn: (entity: Cesium.Entity) => boolean): void;
|
|
110
|
+
showAllEntity(): void;
|
|
108
111
|
}
|
|
109
112
|
|
|
110
113
|
export declare class WmsLayer implements Layer {
|
package/dist/cesium-utils.js
CHANGED
|
@@ -4116,9 +4116,9 @@ function parse(s, i, r) {
|
|
|
4116
4116
|
return A;
|
|
4117
4117
|
} : util.camelCase;
|
|
4118
4118
|
function w(A, k, N) {
|
|
4119
|
-
var
|
|
4119
|
+
var L = parse.filename;
|
|
4120
4120
|
return N || (parse.filename = null), Error(
|
|
4121
|
-
"illegal " + (k || "token") + " '" + A + "' (" + (
|
|
4121
|
+
"illegal " + (k || "token") + " '" + A + "' (" + (L ? L + ", " : "") + "line " + m.line + ")"
|
|
4122
4122
|
);
|
|
4123
4123
|
}
|
|
4124
4124
|
function x() {
|
|
@@ -4154,24 +4154,24 @@ function parse(s, i, r) {
|
|
|
4154
4154
|
}
|
|
4155
4155
|
}
|
|
4156
4156
|
function R(A, k) {
|
|
4157
|
-
var N,
|
|
4157
|
+
var N, L;
|
|
4158
4158
|
do
|
|
4159
|
-
k && ((N = c()) === '"' || N === "'") ? A.push(x()) : A.push([
|
|
4159
|
+
k && ((N = c()) === '"' || N === "'") ? A.push(x()) : A.push([L = S(o()), d("to", !0) ? S(o()) : L]);
|
|
4160
4160
|
while (d(",", !0));
|
|
4161
|
-
var
|
|
4161
|
+
var B = {
|
|
4162
4162
|
options: void 0
|
|
4163
4163
|
};
|
|
4164
|
-
|
|
4164
|
+
B.setOption = function(M, j) {
|
|
4165
4165
|
this.options === void 0 && (this.options = {}), this.options[M] = j;
|
|
4166
4166
|
}, $(
|
|
4167
|
-
|
|
4167
|
+
B,
|
|
4168
4168
|
function(j) {
|
|
4169
4169
|
if (j === "option")
|
|
4170
|
-
Z(
|
|
4170
|
+
Z(B, j), d(";");
|
|
4171
4171
|
else throw w(j);
|
|
4172
4172
|
},
|
|
4173
4173
|
function() {
|
|
4174
|
-
X(
|
|
4174
|
+
X(B);
|
|
4175
4175
|
}
|
|
4176
4176
|
);
|
|
4177
4177
|
}
|
|
@@ -4250,31 +4250,31 @@ function parse(s, i, r) {
|
|
|
4250
4250
|
return !1;
|
|
4251
4251
|
}
|
|
4252
4252
|
function $(A, k, N) {
|
|
4253
|
-
var
|
|
4253
|
+
var L = m.line;
|
|
4254
4254
|
if (A && (typeof A.comment != "string" && (A.comment = a()), A.filename = parse.filename), d("{", !0)) {
|
|
4255
|
-
for (var
|
|
4255
|
+
for (var B; (B = o()) !== "}"; ) k(B);
|
|
4256
4256
|
d(";", !0);
|
|
4257
4257
|
} else
|
|
4258
|
-
N && N(), d(";"), A && (typeof A.comment != "string" || u) && (A.comment = a(
|
|
4258
|
+
N && N(), d(";"), A && (typeof A.comment != "string" || u) && (A.comment = a(L) || A.comment);
|
|
4259
4259
|
}
|
|
4260
4260
|
function q(A, k) {
|
|
4261
4261
|
if (!nameRe.test(k = o())) throw w(k, "type name");
|
|
4262
4262
|
var N = new Type(k);
|
|
4263
|
-
$(N, function(
|
|
4264
|
-
if (!I(N,
|
|
4265
|
-
switch (
|
|
4263
|
+
$(N, function(B) {
|
|
4264
|
+
if (!I(N, B))
|
|
4265
|
+
switch (B) {
|
|
4266
4266
|
case "map":
|
|
4267
4267
|
te(N);
|
|
4268
4268
|
break;
|
|
4269
4269
|
case "required":
|
|
4270
4270
|
case "repeated":
|
|
4271
|
-
F(N,
|
|
4271
|
+
F(N, B);
|
|
4272
4272
|
break;
|
|
4273
4273
|
case "optional":
|
|
4274
4274
|
b ? F(N, "proto3_optional") : F(N, "optional");
|
|
4275
4275
|
break;
|
|
4276
4276
|
case "oneof":
|
|
4277
|
-
re(N,
|
|
4277
|
+
re(N, B);
|
|
4278
4278
|
break;
|
|
4279
4279
|
case "extensions":
|
|
4280
4280
|
R(N.extensions || (N.extensions = []));
|
|
@@ -4283,25 +4283,25 @@ function parse(s, i, r) {
|
|
|
4283
4283
|
R(N.reserved || (N.reserved = []), !0);
|
|
4284
4284
|
break;
|
|
4285
4285
|
default:
|
|
4286
|
-
if (!b || !typeRefRe.test(
|
|
4287
|
-
l(
|
|
4286
|
+
if (!b || !typeRefRe.test(B)) throw w(B);
|
|
4287
|
+
l(B), F(N, "optional");
|
|
4288
4288
|
break;
|
|
4289
4289
|
}
|
|
4290
4290
|
}), A.add(N);
|
|
4291
4291
|
}
|
|
4292
4292
|
function F(A, k, N) {
|
|
4293
|
-
var
|
|
4294
|
-
if (
|
|
4293
|
+
var L = o();
|
|
4294
|
+
if (L === "group") {
|
|
4295
4295
|
U(A, k);
|
|
4296
4296
|
return;
|
|
4297
4297
|
}
|
|
4298
|
-
for (;
|
|
4299
|
-
|
|
4300
|
-
if (!typeRefRe.test(
|
|
4301
|
-
var
|
|
4302
|
-
if (!nameRe.test(
|
|
4303
|
-
|
|
4304
|
-
var M = new Field(
|
|
4298
|
+
for (; L.endsWith(".") || c().startsWith("."); )
|
|
4299
|
+
L += o();
|
|
4300
|
+
if (!typeRefRe.test(L)) throw w(L, "type");
|
|
4301
|
+
var B = o();
|
|
4302
|
+
if (!nameRe.test(B)) throw w(B, "name");
|
|
4303
|
+
B = T(B), d("=");
|
|
4304
|
+
var M = new Field(B, S(o()), L, k, N);
|
|
4305
4305
|
if ($(
|
|
4306
4306
|
M,
|
|
4307
4307
|
function(W) {
|
|
@@ -4313,11 +4313,11 @@ function parse(s, i, r) {
|
|
|
4313
4313
|
X(M);
|
|
4314
4314
|
}
|
|
4315
4315
|
), k === "proto3_optional") {
|
|
4316
|
-
var j = new OneOf("_" +
|
|
4316
|
+
var j = new OneOf("_" + B);
|
|
4317
4317
|
M.setOption("proto3_optional", !0), j.add(M), A.add(j);
|
|
4318
4318
|
} else
|
|
4319
4319
|
A.add(M);
|
|
4320
|
-
!b && M.repeated && (types.packed[
|
|
4320
|
+
!b && M.repeated && (types.packed[L] !== void 0 || types.basic[L] === void 0) && M.setOption(
|
|
4321
4321
|
"packed",
|
|
4322
4322
|
!1,
|
|
4323
4323
|
/* ifNotSet */
|
|
@@ -4327,11 +4327,11 @@ function parse(s, i, r) {
|
|
|
4327
4327
|
function U(A, k) {
|
|
4328
4328
|
var N = o();
|
|
4329
4329
|
if (!nameRe.test(N)) throw w(N, "name");
|
|
4330
|
-
var
|
|
4331
|
-
N ===
|
|
4332
|
-
var
|
|
4330
|
+
var L = util.lcFirst(N);
|
|
4331
|
+
N === L && (N = util.ucFirst(N)), d("=");
|
|
4332
|
+
var B = S(o()), M = new Type(N);
|
|
4333
4333
|
M.group = !0;
|
|
4334
|
-
var j = new Field(
|
|
4334
|
+
var j = new Field(L, B, N, k);
|
|
4335
4335
|
j.filename = parse.filename, $(M, function(W) {
|
|
4336
4336
|
switch (W) {
|
|
4337
4337
|
case "option":
|
|
@@ -4364,72 +4364,72 @@ function parse(s, i, r) {
|
|
|
4364
4364
|
var N = o();
|
|
4365
4365
|
if (!typeRefRe.test(N)) throw w(N, "type");
|
|
4366
4366
|
d(">");
|
|
4367
|
-
var
|
|
4368
|
-
if (!nameRe.test(
|
|
4367
|
+
var L = o();
|
|
4368
|
+
if (!nameRe.test(L)) throw w(L, "name");
|
|
4369
4369
|
d("=");
|
|
4370
|
-
var
|
|
4370
|
+
var B = new MapField(T(L), S(o()), k, N);
|
|
4371
4371
|
$(
|
|
4372
|
-
|
|
4372
|
+
B,
|
|
4373
4373
|
function(j) {
|
|
4374
4374
|
if (j === "option")
|
|
4375
|
-
Z(
|
|
4375
|
+
Z(B, j), d(";");
|
|
4376
4376
|
else throw w(j);
|
|
4377
4377
|
},
|
|
4378
4378
|
function() {
|
|
4379
|
-
X(
|
|
4379
|
+
X(B);
|
|
4380
4380
|
}
|
|
4381
|
-
), A.add(
|
|
4381
|
+
), A.add(B);
|
|
4382
4382
|
}
|
|
4383
4383
|
function re(A, k) {
|
|
4384
4384
|
if (!nameRe.test(k = o())) throw w(k, "name");
|
|
4385
4385
|
var N = new OneOf(T(k));
|
|
4386
|
-
$(N, function(
|
|
4387
|
-
|
|
4386
|
+
$(N, function(B) {
|
|
4387
|
+
B === "option" ? (Z(N, B), d(";")) : (l(B), F(N, "optional"));
|
|
4388
4388
|
}), A.add(N);
|
|
4389
4389
|
}
|
|
4390
4390
|
function Q(A, k) {
|
|
4391
4391
|
if (!nameRe.test(k = o())) throw w(k, "name");
|
|
4392
4392
|
var N = new Enum(k);
|
|
4393
|
-
$(N, function(
|
|
4394
|
-
switch (
|
|
4393
|
+
$(N, function(B) {
|
|
4394
|
+
switch (B) {
|
|
4395
4395
|
case "option":
|
|
4396
|
-
Z(N,
|
|
4396
|
+
Z(N, B), d(";");
|
|
4397
4397
|
break;
|
|
4398
4398
|
case "reserved":
|
|
4399
4399
|
R(N.reserved || (N.reserved = []), !0);
|
|
4400
4400
|
break;
|
|
4401
4401
|
default:
|
|
4402
|
-
ie(N,
|
|
4402
|
+
ie(N, B);
|
|
4403
4403
|
}
|
|
4404
4404
|
}), A.add(N);
|
|
4405
4405
|
}
|
|
4406
4406
|
function ie(A, k) {
|
|
4407
4407
|
if (!nameRe.test(k)) throw w(k, "name");
|
|
4408
4408
|
d("=");
|
|
4409
|
-
var N = S(o(), !0),
|
|
4409
|
+
var N = S(o(), !0), L = {
|
|
4410
4410
|
options: void 0
|
|
4411
4411
|
};
|
|
4412
|
-
|
|
4413
|
-
this.options === void 0 && (this.options = {}), this.options[
|
|
4412
|
+
L.setOption = function(B, M) {
|
|
4413
|
+
this.options === void 0 && (this.options = {}), this.options[B] = M;
|
|
4414
4414
|
}, $(
|
|
4415
|
-
|
|
4415
|
+
L,
|
|
4416
4416
|
function(M) {
|
|
4417
4417
|
if (M === "option")
|
|
4418
|
-
Z(
|
|
4418
|
+
Z(L, M), d(";");
|
|
4419
4419
|
else throw w(M);
|
|
4420
4420
|
},
|
|
4421
4421
|
function() {
|
|
4422
|
-
X(
|
|
4422
|
+
X(L);
|
|
4423
4423
|
}
|
|
4424
|
-
), A.add(k, N,
|
|
4424
|
+
), A.add(k, N, L.comment, L.options);
|
|
4425
4425
|
}
|
|
4426
4426
|
function Z(A, k) {
|
|
4427
4427
|
var N = d("(", !0);
|
|
4428
4428
|
if (!typeRefRe.test(k = o())) throw w(k, "name");
|
|
4429
|
-
var
|
|
4430
|
-
N && (d(")"),
|
|
4431
|
-
var j = ee(A,
|
|
4432
|
-
ne(A,
|
|
4429
|
+
var L = k, B = L, M;
|
|
4430
|
+
N && (d(")"), L = "(" + L + ")", B = L, k = c(), fqTypeRefRe.test(k) && (M = k.slice(1), L += k, o())), d("=");
|
|
4431
|
+
var j = ee(A, L);
|
|
4432
|
+
ne(A, B, j, M);
|
|
4433
4433
|
}
|
|
4434
4434
|
function ee(A, k) {
|
|
4435
4435
|
if (d("{", !0)) {
|
|
@@ -4438,21 +4438,21 @@ function parse(s, i, r) {
|
|
|
4438
4438
|
throw w(H, "name");
|
|
4439
4439
|
if (H === null)
|
|
4440
4440
|
throw w(H, "end of input");
|
|
4441
|
-
var
|
|
4442
|
-
if (d(":", !0), c() === "{")
|
|
4441
|
+
var L, B = H;
|
|
4442
|
+
if (d(":", !0), c() === "{") L = ee(A, k + "." + H);
|
|
4443
4443
|
else if (c() === "[") {
|
|
4444
|
-
|
|
4444
|
+
L = [];
|
|
4445
4445
|
var M;
|
|
4446
4446
|
if (d("[", !0)) {
|
|
4447
4447
|
do
|
|
4448
|
-
M = O(),
|
|
4448
|
+
M = O(), L.push(M);
|
|
4449
4449
|
while (d(",", !0));
|
|
4450
4450
|
d("]"), typeof M < "u" && K(A, k + "." + H, M);
|
|
4451
4451
|
}
|
|
4452
4452
|
} else
|
|
4453
|
-
|
|
4454
|
-
var j = N[
|
|
4455
|
-
j && (
|
|
4453
|
+
L = O(), K(A, k + "." + H, L);
|
|
4454
|
+
var j = N[B];
|
|
4455
|
+
j && (L = [].concat(j).concat(L)), N[B] = L, d(",", !0), d(";", !0);
|
|
4456
4456
|
}
|
|
4457
4457
|
return N;
|
|
4458
4458
|
}
|
|
@@ -4462,8 +4462,8 @@ function parse(s, i, r) {
|
|
|
4462
4462
|
function K(A, k, N) {
|
|
4463
4463
|
A.setOption && A.setOption(k, N);
|
|
4464
4464
|
}
|
|
4465
|
-
function ne(A, k, N,
|
|
4466
|
-
A.setParsedOption && A.setParsedOption(k, N,
|
|
4465
|
+
function ne(A, k, N, L) {
|
|
4466
|
+
A.setParsedOption && A.setParsedOption(k, N, L);
|
|
4467
4467
|
}
|
|
4468
4468
|
function X(A) {
|
|
4469
4469
|
if (d("[", !0)) {
|
|
@@ -4477,19 +4477,19 @@ function parse(s, i, r) {
|
|
|
4477
4477
|
function se(A, k) {
|
|
4478
4478
|
if (!nameRe.test(k = o())) throw w(k, "service name");
|
|
4479
4479
|
var N = new Service(k);
|
|
4480
|
-
$(N, function(
|
|
4481
|
-
if (!I(N,
|
|
4482
|
-
if (
|
|
4483
|
-
else throw w(
|
|
4480
|
+
$(N, function(B) {
|
|
4481
|
+
if (!I(N, B))
|
|
4482
|
+
if (B === "rpc") ae(N, B);
|
|
4483
|
+
else throw w(B);
|
|
4484
4484
|
}), A.add(N);
|
|
4485
4485
|
}
|
|
4486
4486
|
function ae(A, k) {
|
|
4487
|
-
var N = a(),
|
|
4487
|
+
var N = a(), L = k;
|
|
4488
4488
|
if (!nameRe.test(k = o())) throw w(k, "name");
|
|
4489
|
-
var
|
|
4489
|
+
var B = k, M, j, V, W;
|
|
4490
4490
|
if (d("("), d("stream", !0) && (j = !0), !typeRefRe.test(k = o()) || (M = k, d(")"), d("returns"), d("("), d("stream", !0) && (W = !0), !typeRefRe.test(k = o()))) throw w(k);
|
|
4491
4491
|
V = k, d(")");
|
|
4492
|
-
var J = new Method(
|
|
4492
|
+
var J = new Method(B, L, M, V, j, W);
|
|
4493
4493
|
J.comment = N, $(J, function(Y) {
|
|
4494
4494
|
if (Y === "option")
|
|
4495
4495
|
Z(J, Y), d(";");
|
|
@@ -4499,18 +4499,18 @@ function parse(s, i, r) {
|
|
|
4499
4499
|
function oe(A, k) {
|
|
4500
4500
|
if (!typeRefRe.test(k = o())) throw w(k, "reference");
|
|
4501
4501
|
var N = k;
|
|
4502
|
-
$(null, function(
|
|
4503
|
-
switch (
|
|
4502
|
+
$(null, function(B) {
|
|
4503
|
+
switch (B) {
|
|
4504
4504
|
case "required":
|
|
4505
4505
|
case "repeated":
|
|
4506
|
-
F(A,
|
|
4506
|
+
F(A, B, N);
|
|
4507
4507
|
break;
|
|
4508
4508
|
case "optional":
|
|
4509
4509
|
b ? F(A, "proto3_optional", N) : F(A, "optional", N);
|
|
4510
4510
|
break;
|
|
4511
4511
|
default:
|
|
4512
|
-
if (!b || !typeRefRe.test(
|
|
4513
|
-
l(
|
|
4512
|
+
if (!b || !typeRefRe.test(B)) throw w(B);
|
|
4513
|
+
l(B), F(A, "optional", N);
|
|
4514
4514
|
break;
|
|
4515
4515
|
}
|
|
4516
4516
|
});
|
|
@@ -5864,6 +5864,20 @@ class ShipLayer {
|
|
|
5864
5864
|
})
|
|
5865
5865
|
});
|
|
5866
5866
|
}
|
|
5867
|
+
/**显隐entity,回调返回显示隐藏的状态 */
|
|
5868
|
+
hideEntityByCondition(i) {
|
|
5869
|
+
this.db.entities.values.forEach((r) => {
|
|
5870
|
+
const u = i(r);
|
|
5871
|
+
r.show = u;
|
|
5872
|
+
const m = this.shadowEntityMap.get(r);
|
|
5873
|
+
m && (m.show = u);
|
|
5874
|
+
});
|
|
5875
|
+
}
|
|
5876
|
+
showAllEntity() {
|
|
5877
|
+
this.db.entities.values.forEach((i) => {
|
|
5878
|
+
i.show = !0;
|
|
5879
|
+
});
|
|
5880
|
+
}
|
|
5867
5881
|
}
|
|
5868
5882
|
Color.fromCssColorString("#FC4C02");
|
|
5869
5883
|
Color.WHITE;
|
|
@@ -74,4 +74,4 @@
|
|
|
74
74
|
<path id="svg_4" data-name="svg 4" class="cls-1" d="${p}"/>
|
|
75
75
|
</g>
|
|
76
76
|
<image id="img_1" width="${i}" height="${146/124*i}" transform="translate(${-i/2+u.x} ${u.y})" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHwAAACSCAMAAACwjl5+AAAAq1BMVEUAAAD////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////Nr6iZAAAAOXRSTlMABRshFgkSZg5qJmFdWlEqOXBFPYVJQYB1VXtNLpc1mzKguZCKtJONxc69yaukwa/SqN/k1trs6fBhRQqRAAAVcElEQVR42rSX3ZKaQBCFgxoIICh/ggjiIMPPMAOy6yZ5/yfLaTBVSa5istu1Vepe+M3p7jkHPz1Vmqav99umYLxsh7bvO6oeb8ZR1XUS7TaftU8fVdqX9cWpGBt5WeJvKbwbOJvyujEPlv5RcLBXZyesc1lyMSk5qWmS0zQxNQrGVF2Fpv9hdOg+2HFzZZwPQjFWFAxV4FUNJd5VcWr4u4+hgx0YcVgVchRtOSmW50wpVoA+lS0vWB6mifkxdE2H7jSOazaVfYtJo91yHKVSUmLq/Yihp2Zi09a9N1rb7Hxi07oN/dAOgnMwB4F9E3jtW1Y1oWea2yhbve/Oa583WWR4SRLnGHAPVkd3bblpA70XvcjDKjVs24ku70rX9NU5OgIeV9ect0L03a3rbve3l5e3+6273Vp0opVVmnrG1jkFl9UX7R3HfY5c2zCTOLxKNHzobzdCv3779voK/ls3tOi+ihPPcI5uFGRrXdPeZ8t16+y7zpbgVcHFWLb9fUZ/RX0D/e2txew5zxPTcNzIP+xBR+vfgb2x9oeTe3Rs04sLXuKmDWg5sb+jFnqH9ZejrL3t1o0Oh+CcrWG1/4v//GW1OwfR6XRybC+5SrBLPnTd/YXYC/3l7XYfJB+VVA3aHgX7/fli/TddA3ud7Q++758cI6kUVwo3rOu7t9/ht46rETe/iA3Az5cs261X+hfQ/4Otb9a7bB/sA9+1zbCYGIOx4FID/voV9AWOje8GxSaY3jW1XYzcsnbWf9E1DfNeW1l2yc6B75hxDjNVk6Q4Rdtp3x4zv3dt23Oy+bquUvsUZNYa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"/>
|
|
77
|
-
</svg>`;return{url:URL.createObjectURL(new Blob([b],{type:"image/svg+xml"})),viewBox:h,scale:v}},s=>`${s.color},${s.isMoving},${s.designBeam??0},${s.designLength??0},${s.aisFromBow??0},${s.aisFromCenter??0}`),shipTypeColorMap=new Map([[-1,"#00FF00"],[70,"#95B3D7"],[37,"#00FF00"],[50,"#366092"],[51,"#366092"],[52,"#366092"],[53,"#366092"],[54,"#366092"],[55,"#366092"],[56,"#366092"],[57,"#366092"],[58,"#366092"],[59,"#366092"],[80,"red"],[81,"red"],[82,"red"],[83,"red"],[84,"red"],[85,"red"],[86,"red"],[87,"red"],[88,"red"],[89,"red"]]);function createAlphaSampled(s){const i=new Cesium__namespace.SampledProperty(Cesium__namespace.Color),r=(s==null?void 0:s.startTime)??Cesium__namespace.JulianDate.now(),u=Cesium__namespace.JulianDate.addMinutes(r,1,new Cesium__namespace.JulianDate),m=Cesium__namespace.JulianDate.addMinutes(r,5,new Cesium__namespace.JulianDate),o=Cesium__namespace.JulianDate.fromIso8601("2100-01-01T00:00:00Z"),l=(s==null?void 0:s.color)??Cesium__namespace.Color.WHITE;return i.addSample(r,l.withAlpha(1)),i.addSample(u,l.withAlpha(1)),i.addSample(m,l.withAlpha(.2)),i.addSample(o,l.withAlpha(.1)),i}function getHideAfterFiveMinutesProperty(s){const i=s??Cesium__namespace.JulianDate.now(),r=Cesium__namespace.JulianDate.addMinutes(i,5,new Cesium__namespace.JulianDate);return new Cesium__namespace.CallbackProperty(u=>u?Cesium__namespace.JulianDate.lessThan(u,r):!0,!1)}class ShipLayer{constructor(i,r){z(this,"db");z(this,"isMounted",!1);z(this,"_viewer",null);z(this,"entityMap",new Map);z(this,"IS_MOVING_THRESHOLD",1);z(this,"shadowEntityMap",new WeakMap);this.key=i,this.zIndex=r,this.db=new Cesium__namespace.CustomDataSource(i)}show(i){this.isMounted||(i.dataSources.add(this.db),this._viewer=i,this.isMounted=!0),this.db.show=!0}hide(){this.isMounted&&(this.db.show=!1)}render(i){i.features.forEach(r=>{this.renderFeature(r)})}renderFeature(i){var c,d;const r=String(i.id),u=new Cesium__namespace.SampledPositionProperty;u.backwardExtrapolationType=Cesium__namespace.ExtrapolationType.HOLD,u.forwardExtrapolationType=Cesium__namespace.ExtrapolationType.HOLD;const m=Cesium__namespace.Cartesian3.fromDegrees(i.geometry.coordinates[0],i.geometry.coordinates[1]);u.addSample(((c=this._viewer)==null?void 0:c.clock.currentTime)??Cesium__namespace.JulianDate.now(),m);const o=((d=i.properties)==null?void 0:d.courseOverGroundTrue)??0,l=new Cesium__namespace.Entity({id:r,position:u,orientation:new Cesium__namespace.ConstantProperty(Cesium__namespace.Transforms.headingPitchRollQuaternion(m,new Cesium__namespace.HeadingPitchRoll(o,0,0))),properties:i.properties??{}});this.entityMap.set(r,l),this.db.entities.add(l),this.renderEntity(l)}update(i){var u,m,o,l,c,d,a,p;const r=this.db.entities.getById(String(i.id));if(r){const y=this.shadowEntityMap.get(r),g=((u=i.properties)==null?void 0:u.shipTypeId)??-1,h=shipTypeColorMap.get(g)??shipTypeColorMap.get(-1),[v,b]=i.geometry.coordinates,w=((m=this._viewer)==null?void 0:m.clock.currentTime)??Cesium__namespace.JulianDate.now(),T=(o=r.position)==null?void 0:o.getValue(w),_=Cesium__namespace.JulianDate.addSeconds(w,3,new Cesium__namespace.JulianDate),O=Cesium__namespace.Cartesian3.fromDegrees(v,b),x=new Cesium__namespace.SampledPositionProperty;if(x.backwardExtrapolationType=Cesium__namespace.ExtrapolationType.HOLD,x.forwardExtrapolationType=Cesium__namespace.ExtrapolationType.HOLD,x instanceof Cesium__namespace.SampledPositionProperty&&(x.addSample(Cesium__namespace.JulianDate.addSeconds(w,1,new Cesium__namespace.JulianDate),T??O),x.addSample(_,O)),r.position=x,y&&(y.position=x),r.properties)for(const[R,E]of Object.entries(i.properties??{})){if(R=="speedOverGround"){const C=r.properties.getValue().speedOverGround??0,N=Number(C)>this.IS_MOVING_THRESHOLD,A=Number(E)>this.IS_MOVING_THRESHOLD;if(N!==A&&(r.billboard&&(r.billboard.image=new Cesium__namespace.ConstantProperty(createShipIconUrl(h,A))),y!=null&&y.plane)){const D=((l=i.properties)==null?void 0:l.designBeam)??8,P=((c=i.properties)==null?void 0:c.designLength)??20,M=createShipIconV2({color:h,isMoving:A,...i.properties,designBeam:D,designLength:P}),q=(d=y.plane)==null?void 0:d.material;q&&(q.image=new Cesium__namespace.ConstantProperty(M.url),y.plane.dimensions=new Cesium__namespace.ConstantProperty(new Cesium__namespace.Cartesian2(D*M.scale.x,P*M.scale.y))),y.plane.dimensions=new Cesium__namespace.CallbackProperty(()=>new Cesium__namespace.Cartesian2(D*M.scale.x,P*M.scale.y),!0)}}if(R=="courseOverGroundTrue"){const C=((a=i.properties)==null?void 0:a.courseOverGroundTrue)??0;r.billboard.rotation=new Cesium__namespace.ConstantProperty(typeof E=="number"?-1*E:0);const N=new Cesium__namespace.ConstantProperty(Cesium__namespace.Transforms.headingPitchRollQuaternion(O,new Cesium__namespace.HeadingPitchRoll(C,0,0)));y&&(y.orientation=N)}if(R=="updateTime"){const C=Cesium__namespace.JulianDate.fromDate(new Date(E));r.billboard.color=createAlphaSampled({startTime:C});const N=(p=y==null?void 0:y.plane)==null?void 0:p.material;N&&(N.color=createAlphaSampled({startTime:C}));const A=getHideAfterFiveMinutesProperty(C);r.label.show=A,r.point.show=A}r.properties[R]=E,y!=null&&y.properties&&(y.properties[R]=E)}}else this.renderFeature(i)}renderEntity(i){var a,p,y,g,h,v,b;const r=(a=i.properties)==null?void 0:a.getValue(),u=(r==null?void 0:r.shipTypeId)??-1,m=shipTypeColorMap.get(u)??shipTypeColorMap.get(-1),o=Number((r==null?void 0:r.speedOverGround)??0),l=r!=null&&r.updateTime?new Date(r.updateTime):new Date,c=Cesium__namespace.JulianDate.fromDate(l),d=createShipIconUrl(m,o>this.IS_MOVING_THRESHOLD);i.point=new Cesium__namespace.PointGraphics({pixelSize:4,color:Cesium__namespace.Color.fromCssColorString("#8AF22C"),disableDepthTestDistance:3e6,distanceDisplayCondition:new Cesium__namespace.DistanceDisplayCondition(15e3),show:getHideAfterFiveMinutesProperty(c)}),i.billboard=new Cesium__namespace.BillboardGraphics({image:d,width:14,height:70,disableDepthTestDistance:3e6,distanceDisplayCondition:new Cesium__namespace.DistanceDisplayCondition(4e3,15e3),pixelOffset:new Cesium__namespace.Cartesian2(0,0),alignedAxis:Cesium__namespace.Cartesian3.UNIT_Z,color:createAlphaSampled({startTime:c}),rotation:new Cesium__namespace.ConstantProperty((y=(p=i.properties)==null?void 0:p.getValue())!=null&&y.courseOverGroundTrue?-1*i.properties.getValue().courseOverGroundTrue:0)}),i.label=new Cesium__namespace.LabelGraphics({font:'12px normal "微软雅黑"',backgroundColor:Cesium__namespace.Color.fromCssColorString("#E9F4FC"),fillColor:Cesium__namespace.Color.BLACK,outlineColor:Cesium__namespace.Color.BLACK,outlineWidth:2,showBackground:!0,style:Cesium__namespace.LabelStyle.FILL,pixelOffset:new Cesium__namespace.Cartesian2(0,-20),scale:1,scaleByDistance:new Cesium__namespace.NearFarScalar(3e3,1,1e4,.55),text:((h=(g=i.properties)==null?void 0:g.getValue())==null?void 0:h.name)??((v=i.properties)!=null&&v.getValue().mmsi?"mmsi:"+((b=i.properties)==null?void 0:b.getValue().mmsi):"未知"),horizontalOrigin:Cesium__namespace.HorizontalOrigin.CENTER,distanceDisplayCondition:new Cesium__namespace.DistanceDisplayCondition(0,15e3),disableDepthTestDistance:5e3,show:getHideAfterFiveMinutesProperty(c)}),this.createShipPlane(i)}createShipPlane(i){var g;const r=new Cesium__namespace.Entity({id:i.id+"_shadow",position:i.position,orientation:i.orientation,properties:i.properties});this.shadowEntityMap.set(i,r),this.db.entities.add(r);const u=(g=i.properties)==null?void 0:g.getValue(),m=u!=null&&u.updateTime?new Date(u.updateTime):new Date,o=Cesium__namespace.JulianDate.fromDate(m),l=Number((u==null?void 0:u.speedOverGround)??0),c=(u==null?void 0:u.designLength)??20,d=(u==null?void 0:u.designBeam)??8,a=(u==null?void 0:u.shipTypeId)??-1,p=shipTypeColorMap.get(a)??shipTypeColorMap.get(-1),y=createShipIconV2({color:p,isMoving:l>this.IS_MOVING_THRESHOLD,...u,designBeam:(u==null?void 0:u.designBeam)??8,designLength:(u==null?void 0:u.designLength)??20});r.plane=new Cesium__namespace.PlaneGraphics({plane:new Cesium__namespace.Plane(Cesium__namespace.Cartesian3.UNIT_Z,0),dimensions:new Cesium__namespace.Cartesian2(d*y.scale.x,c*y.scale.y),show:new Cesium__namespace.CallbackProperty(()=>{var w;if(!this._viewer)return!0;const h=this._viewer.clock.currentTime,v=(w=i.position)==null?void 0:w.getValue(h);return v?Cesium__namespace.Cartesian3.distance(this._viewer.camera.positionWC,v)<=4e3:!1},!1),material:new Cesium__namespace.ImageMaterialProperty({image:y.url,transparent:!0,repeat:new Cesium__namespace.Cartesian2(1,1),color:createAlphaSampled({startTime:o})})})}}Cesium.Color.fromCssColorString("#FC4C02"),Cesium.Color.WHITE,new Cesium.Color,new Array(4);var e$2=[],t$2=[];function n$2(s,i){if(s&&typeof document<"u"){var r,u=i.prepend===!0?"prepend":"append",m=i.singleTag===!0,o=typeof i.container=="string"?document.querySelector(i.container):document.getElementsByTagName("head")[0];if(m){var l=e$2.indexOf(o);l===-1&&(l=e$2.push(o)-1,t$2[l]={}),r=t$2[l]&&t$2[l][u]?t$2[l][u]:t$2[l][u]=c()}else r=c();s.charCodeAt(0)===65279&&(s=s.substring(1)),r.styleSheet?r.styleSheet.cssText+=s:r.appendChild(document.createTextNode(s))}function c(){var d=document.createElement("style");if(d.setAttribute("type","text/css"),i.attributes)for(var a=Object.keys(i.attributes),p=0;p<a.length;p++)d.setAttribute(a[p],i.attributes[a[p]]);var y=u==="prepend"?"afterbegin":"beforeend";return o.insertAdjacentElement(y,d),d}}var css$2='.cesium-tool-tip{background:rgba(0,0,0,.6);border-radius:4px;color:#fff;left:0;line-height:30px;min-height:30px;min-width:100px;padding:0 10px;pointer-events:none;position:absolute;top:0;visibility:hidden;z-index:-1}.cesium-tool-tip:before{border-bottom:10px solid transparent;border-right:10px solid rgba(0,0,0,.6);border-top:10px solid transparent;content:"";display:block;left:-10px;pointer-events:none;position:absolute;top:calc(50% - 10px)}';n$2(css$2,{}),Cesium.Color.YELLOW,Cesium.Color.YELLOW,Cesium.Color.DARKTURQUOISE.withAlpha(.5),Cesium.Color.BLUE,Cesium.Color.WHITE,Cesium.Color.YELLOW.withAlpha(.5),Cesium.Color.YELLOW.withAlpha(.5),Cesium.Color.WHITE,new Cesium.Color(.165,.165,.165,.8),new Cesium.Cartesian2(4,4),Cesium.LabelStyle.FILL_AND_OUTLINE,new Cesium.Cartesian2(4,0),new Cesium.NearFarScalar(1,.85,8e6,.75),Cesium.HeightReference.CLAMP_TO_GROUND;class Popup{constructor(i,r){z(this,"_position");z(this,"_screenPosition",new Cesium.Cartesian2);z(this,"_element");z(this,"_viewer");z(this,"_options");z(this,"_destroyed",!1);z(this,"_offset");z(this,"setPosition",()=>{if(this._position&&this._viewer&&this._position){if(this._viewer.scene.mode===Cesium.SceneMode.SCENE3D){const u=this._viewer.scene.camera.position,m=new Cesium.BoundingSphere(new Cesium.Cartesian3(0,0,0),635e4);if(!new Cesium.Occluder(m,u).isPointVisible(this._position)){this.switchElementShow(!1);return}}const i=Cesium.SceneTransforms.worldToWindowCoordinates(this._viewer.scene,this._position),{_element:r}=this;if(r&&i){if(this._screenPosition&&this._screenPosition.x===i.x&&this._screenPosition.y===i.y)return;this.switchElementShow(!0);const u=i.x-r.clientWidth/2+this._offset[0],m=i.y-r.clientHeight+this._offset[1];r.style.left=`${u}px`,r.style.top=`${m}px`,this._screenPosition=i}}});this._viewer=i,this._options=r;const{position:u,element:m,offset:o}=r;if(!m)throw Error("no element!");this._position=u?Cesium.Cartesian3.fromDegrees(u[0],u[1],u[2]):null,this._element=m,this._offset=[(o==null?void 0:o[0])??0,(o==null?void 0:o[1])??0],this.addMapListener()}set position(i){if(!i){this.switchElementShow(!1),this._position=null,this._options.position=null;return}this._position=Cesium.Cartesian3.fromDegrees(i[0],i[1],i[2]),this._options.position=i,this.setPosition()}get position(){return this._options.position}get destroyed(){return this._destroyed}switchElementShow(i){this._element&&(this._element.style.display=i?"block":"none")}addMapListener(){var i;(i=this._viewer)==null||i.scene.postRender.addEventListener(this.setPosition)}destroy(){this._viewer.isDestroyed()||this._viewer.scene.postRender.removeEventListener(this.setPosition),this.setPosition=void 0,this._destroyed=!0}}var e$1=[],t$1=[];function n$1(s,i){if(s&&typeof document<"u"){var r,u=i.prepend===!0?"prepend":"append",m=i.singleTag===!0,o=typeof i.container=="string"?document.querySelector(i.container):document.getElementsByTagName("head")[0];if(m){var l=e$1.indexOf(o);l===-1&&(l=e$1.push(o)-1,t$1[l]={}),r=t$1[l]&&t$1[l][u]?t$1[l][u]:t$1[l][u]=c()}else r=c();s.charCodeAt(0)===65279&&(s=s.substring(1)),r.styleSheet?r.styleSheet.cssText+=s:r.appendChild(document.createTextNode(s))}function c(){var d=document.createElement("style");if(d.setAttribute("type","text/css"),i.attributes)for(var a=Object.keys(i.attributes),p=0;p<a.length;p++)d.setAttribute(a[p],i.attributes[a[p]]);var y=u==="prepend"?"afterbegin":"beforeend";return o.insertAdjacentElement(y,d),d}}var css$1=".cesium-compass{cursor:pointer;height:60px;pointer-events:auto;position:absolute;right:15px;top:100px;user-select:none;width:60px}.cesium-compass .out-ring{fill:rgba(23,49,71,.702);background-repeat:no-repeat;background-size:contain;border-radius:50%;height:60px;left:0;position:absolute;top:0;transition:all .3s ease;width:60px}.cesium-compass .out-ring svg{height:60px;width:60px}.cesium-compass:hover .rotation_marker svg{height:70.2px;width:70.2px}.cesium-compass .gyro{align-items:center;background:#fff;border-radius:50%;box-sizing:border-box;display:flex;height:30px;justify-content:center;margin:0 auto;padding:4px;position:relative;text-align:center;top:50%;transform:translateY(-50%);transition:all .3s ease;width:30px}.cesium-compass .gyro svg{height:20px;width:20px}.rotation_marker{background-repeat:no-repeat;background-size:contain;border-radius:50%;position:relative}.rotation_marker svg{height:60px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transition:all .3s ease;width:60px}.cesium-compass .gyro-active,.cesium-compass .gyro:hover{fill:#68adfe}";n$1(css$1,{});var e=[],t=[];function n(s,i){if(s&&typeof document<"u"){var r,u=i.prepend===!0?"prepend":"append",m=i.singleTag===!0,o=typeof i.container=="string"?document.querySelector(i.container):document.getElementsByTagName("head")[0];if(m){var l=e.indexOf(o);l===-1&&(l=e.push(o)-1,t[l]={}),r=t[l]&&t[l][u]?t[l][u]:t[l][u]=c()}else r=c();s.charCodeAt(0)===65279&&(s=s.substring(1)),r.styleSheet?r.styleSheet.cssText+=s:r.appendChild(document.createTextNode(s))}function c(){var d=document.createElement("style");if(d.setAttribute("type","text/css"),i.attributes)for(var a=Object.keys(i.attributes),p=0;p<a.length;p++)d.setAttribute(a[p],i.attributes[a[p]]);var y=u==="prepend"?"afterbegin":"beforeend";return o.insertAdjacentElement(y,d),d}}var css=".cesium-zoom-controller{border-radius:100px;box-sizing:border-box;display:flex;flex-direction:column;line-height:1.2rem;pointer-events:auto;position:absolute;right:30px;text-align:center;top:187px;user-select:none}.cesium-zoom-controller .refresh,.cesium-zoom-controller .zoom-in,.cesium-zoom-controller .zoom-out{border-radius:14%;margin-bottom:5px}.cesium-zoom-controller .cesium-button{background:#2a2e39;border:none;margin-right:0;transition:all .3s cubic-bezier(.645,.045,.355,1);transition-delay:0s;transition-duration:.2s;transition-property:all;transition-timing-function:cubic-bezier(.645,.045,.355,1)}.cesium-zoom-controller .cesium-button:hover{background:#48b;box-shadow:none}.cesium-zoom-controller .cesium-button:active{fill:#edffff;background:#adf;color:#edffff}.cesium-zoom-controller .cesium-toolbar-button{align-items:center;display:flex;height:30px;justify-content:center;width:30px}";n(css,{});var heatmap$1={exports:{}},heatmap=heatmap$1.exports,hasRequiredHeatmap;function requireHeatmap(){return hasRequiredHeatmap||(hasRequiredHeatmap=1,function(s){(function(i,r,u){s.exports?s.exports=u():r[i]=u()})("h337",heatmap,function(){var i={defaultRadius:40,defaultRenderer:"canvas2d",defaultGradient:{.25:"rgb(0,0,255)",.55:"rgb(0,255,0)",.85:"yellow",1:"rgb(255,0,0)"},defaultMaxOpacity:1,defaultMinOpacity:0,defaultBlur:.85,defaultXField:"x",defaultYField:"y",defaultValueField:"value",plugins:{}},r=function(){var a=function(g){this._coordinator={},this._data=[],this._radi=[],this._min=10,this._max=1,this._xField=g.xField||g.defaultXField,this._yField=g.yField||g.defaultYField,this._valueField=g.valueField||g.defaultValueField,g.radius&&(this._cfgRadius=g.radius)},p=i.defaultRadius;return a.prototype={_organiseData:function(y,g){var h=y[this._xField],v=y[this._yField],b=this._radi,w=this._data,T=this._max,_=this._min,O=y[this._valueField]||1,x=y.radius||this._cfgRadius||p;w[h]||(w[h]=[],b[h]=[]),w[h][v]?w[h][v]+=O:(w[h][v]=O,b[h][v]=x);var R=w[h][v];return R>T?(g?this.setDataMax(R):this._max=R,!1):R<_?(g?this.setDataMin(R):this._min=R,!1):{x:h,y:v,value:O,radius:x,min:_,max:T}},_unOrganizeData:function(){var y=[],g=this._data,h=this._radi;for(var v in g)for(var b in g[v])y.push({x:v,y:b,radius:h[v][b],value:g[v][b]});return{min:this._min,max:this._max,data:y}},_onExtremaChange:function(){this._coordinator.emit("extremachange",{min:this._min,max:this._max})},addData:function(){if(arguments[0].length>0)for(var y=arguments[0],g=y.length;g--;)this.addData.call(this,y[g]);else{var h=this._organiseData(arguments[0],!0);h&&(this._data.length===0&&(this._min=this._max=h.value),this._coordinator.emit("renderpartial",{min:this._min,max:this._max,data:[h]}))}return this},setData:function(y){var g=y.data,h=g.length;this._data=[],this._radi=[];for(var v=0;v<h;v++)this._organiseData(g[v],!1);return this._max=y.max,this._min=y.min||0,this._onExtremaChange(),this._coordinator.emit("renderall",this._getInternalData()),this},removeData:function(){},setDataMax:function(y){return this._max=y,this._onExtremaChange(),this._coordinator.emit("renderall",this._getInternalData()),this},setDataMin:function(y){return this._min=y,this._onExtremaChange(),this._coordinator.emit("renderall",this._getInternalData()),this},setCoordinator:function(y){this._coordinator=y},_getInternalData:function(){return{max:this._max,min:this._min,data:this._data,radi:this._radi}},getData:function(){return this._unOrganizeData()}},a}(),u=function(){var a=function(h){var v=h.gradient||h.defaultGradient,b=document.createElement("canvas"),w=b.getContext("2d",{willReadFrequently:!0});b.width=256,b.height=1;var T=w.createLinearGradient(0,0,256,1);for(var _ in v)T.addColorStop(_,v[_]);return w.fillStyle=T,w.fillRect(0,0,256,1),w.getImageData(0,0,256,1).data},p=function(h,v){var b=document.createElement("canvas"),w=b.getContext("2d",{willReadFrequently:!0}),T=h,_=h;if(b.width=b.height=h*2,v==1)w.beginPath(),w.arc(T,_,h,0,2*Math.PI,!1),w.fillStyle="rgba(0,0,0,1)",w.fill();else{var O=w.createRadialGradient(T,_,h*v,T,_,h);O.addColorStop(0,"rgba(0,0,0,1)"),O.addColorStop(1,"rgba(0,0,0,0)"),w.fillStyle=O,w.fillRect(0,0,2*h,2*h)}return b},y=function(_){for(var v=[],b=_.min,w=_.max,T=_.radi,_=_.data,O=Object.keys(_),x=O.length;x--;)for(var R=O[x],E=Object.keys(_[R]),C=E.length;C--;){var N=E[C],A=_[R][N],D=T[R][N];v.push({x:R,y:N,value:A,radius:D})}return{min:b,max:w,data:v}};function g(h){var v=h.container,b=this.shadowCanvas=document.createElement("canvas"),w=this.canvas=h.canvas||document.createElement("canvas");this._renderBoundaries=[1e4,1e4,0,0];var T=getComputedStyle(h.container)||{};w.className="heatmap-canvas",this._width=w.width=b.width=h.width||+T.width.replace(/px/,""),this._height=w.height=b.height=h.height||+T.height.replace(/px/,""),this.shadowCtx=b.getContext("2d",{willReadFrequently:!0}),this.ctx=w.getContext("2d",{willReadFrequently:!0}),w.style.cssText=b.style.cssText="position:absolute;left:0;top:0;",v.style.position="relative",v.appendChild(w),this._palette=a(h),this._templates={},this._setStyles(h)}return g.prototype={renderPartial:function(h){h.data.length>0&&(this._drawAlpha(h),this._colorize())},renderAll:function(h){this._clear(),h.data.length>0&&(this._drawAlpha(y(h)),this._colorize())},_updateGradient:function(h){this._palette=a(h)},updateConfig:function(h){h.gradient&&this._updateGradient(h),this._setStyles(h)},setDimensions:function(h,v){this._width=h,this._height=v,this.canvas.width=this.shadowCanvas.width=h,this.canvas.height=this.shadowCanvas.height=v},_clear:function(){this.shadowCtx.clearRect(0,0,this._width,this._height),this.ctx.clearRect(0,0,this._width,this._height)},_setStyles:function(h){this._blur=h.blur==0?0:h.blur||h.defaultBlur,h.backgroundColor&&(this.canvas.style.backgroundColor=h.backgroundColor),this._width=this.canvas.width=this.shadowCanvas.width=h.width||this._width,this._height=this.canvas.height=this.shadowCanvas.height=h.height||this._height,this._opacity=(h.opacity||0)*255,this._maxOpacity=(h.maxOpacity||h.defaultMaxOpacity)*255,this._minOpacity=(h.minOpacity||h.defaultMinOpacity)*255,this._useGradientOpacity=!!h.useGradientOpacity},_drawAlpha:function(w){for(var v=this._min=w.min,b=this._max=w.max,w=w.data||[],T=w.length,_=1-this._blur;T--;){var O=w[T],x=O.x,R=O.y,E=O.radius,C=Math.min(O.value,b),N=x-E,A=R-E,D=this.shadowCtx,P;this._templates[E]?P=this._templates[E]:this._templates[E]=P=p(E,_);var M=(C-v)/(b-v);D.globalAlpha=M<.01?.01:M,D.drawImage(P,N,A),N<this._renderBoundaries[0]&&(this._renderBoundaries[0]=N),A<this._renderBoundaries[1]&&(this._renderBoundaries[1]=A),N+2*E>this._renderBoundaries[2]&&(this._renderBoundaries[2]=N+2*E),A+2*E>this._renderBoundaries[3]&&(this._renderBoundaries[3]=A+2*E)}},_colorize:function(){var h=this._renderBoundaries[0],v=this._renderBoundaries[1],b=this._renderBoundaries[2]-h,w=this._renderBoundaries[3]-v,T=this._width,_=this._height,O=this._opacity,x=this._maxOpacity,R=this._minOpacity,E=this._useGradientOpacity;h<0&&(h=0),v<0&&(v=0),h+b>T&&(b=T-h),v+w>_&&(w=_-v);for(var C=this.shadowCtx.getImageData(h,v,b,w),N=C.data,A=N.length,D=this._palette,P=3;P<A;P+=4){var M=N[P],q=M*4;if(q){var F;O>0?F=O:M<x?M<R?F=R:F=M:F=x,N[P-3]=D[q],N[P-2]=D[q+1],N[P-1]=D[q+2],N[P]=E?D[q+3]:F}}this.ctx.putImageData(C,h,v),this._renderBoundaries=[1e3,1e3,0,0]},getValueAt:function(h){var v,b=this.shadowCtx,w=b.getImageData(h.x,h.y,1,1),T=w.data[3],_=this._max,O=this._min;return v=Math.abs(_-O)*(T/255)>>0,v},getDataURL:function(){return this.canvas.toDataURL()}},g}(),m=function(){var a=!1;return i.defaultRenderer==="canvas2d"&&(a=u),a}(),o={merge:function(){for(var d={},a=arguments.length,p=0;p<a;p++){var y=arguments[p];for(var g in y)d[g]=y[g]}return d}},l=function(){var a=function(){function h(){this.cStore={}}return h.prototype={on:function(v,b,w){var T=this.cStore;T[v]||(T[v]=[]),T[v].push(function(_){return b.call(w,_)})},emit:function(v,b){var w=this.cStore;if(w[v])for(var T=w[v].length,_=0;_<T;_++){var O=w[v][_];O(b)}}},h}(),p=function(g){var h=g._renderer,v=g._coordinator,b=g._store;v.on("renderpartial",h.renderPartial,h),v.on("renderall",h.renderAll,h),v.on("extremachange",function(w){g._config.onExtremaChange&&g._config.onExtremaChange({min:w.min,max:w.max,gradient:g._config.gradient||g._config.defaultGradient})}),b.setCoordinator(v)};function y(){var g=this._config=o.merge(i,arguments[0]||{});if(this._coordinator=new a,g.plugin){var h=g.plugin;if(i.plugins[h]){var v=i.plugins[h];this._renderer=new v.renderer(g),this._store=new v.store(g)}else throw new Error("Plugin '"+h+"' not found. Maybe it was not registered.")}else this._renderer=new m(g),this._store=new r(g);p(this)}return y.prototype={addData:function(){return this._store.addData.apply(this._store,arguments),this},removeData:function(){return this._store.removeData&&this._store.removeData.apply(this._store,arguments),this},setData:function(){return this._store.setData.apply(this._store,arguments),this},setDataMax:function(){return this._store.setDataMax.apply(this._store,arguments),this},setDataMin:function(){return this._store.setDataMin.apply(this._store,arguments),this},configure:function(g){return this._config=o.merge(this._config,g),this._renderer.updateConfig(this._config),this._coordinator.emit("renderall",this._store._getInternalData()),this},repaint:function(){return this._coordinator.emit("renderall",this._store._getInternalData()),this},getData:function(){return this._store.getData()},getDataURL:function(){return this._renderer.getDataURL()},getValueAt:function(g){return this._store.getValueAt?this._store.getValueAt(g):this._renderer.getValueAt?this._renderer.getValueAt(g):null}},y}(),c={create:function(d){return new l(d)},register:function(d,a){i.plugins[d]=a}};return c})}(heatmap$1)),heatmap$1.exports}requireHeatmap();const H=class H extends EventEmitter{constructor(){super();z(this,"popupMap",new Map)}static getInstance(){return H.instance||(H.instance=new H),H.instance}popup(r){var c;const u=r.element;u.style.position="absolute";const m=r.viewer.container,o=()=>{l&&(l.destroy(),m.removeChild(u),this.popupMap.delete(r.id),this.emit("onUnmount",r.id))};m.appendChild(u),this.emit("onMount",r.id),(c=this.popupMap.get(r.id))==null||c.destroy();const l=new Popup(r.viewer,{position:r.position,offset:r.offset??[0,0],element:u});this.popupMap.set(r.id,{popup:l,destroy:o})}close(r){const u=this.popupMap.get(r);u&&(u.destroy(),this.popupMap.delete(r),this.emit("onUnmount",r))}closeAll(){this.popupMap.forEach(r=>r.destroy()),this.popupMap.clear()}};z(H,"instance",null);let PopupCtrl=H;function saveCameraParams(s){const i=s.camera;return{position:i.position,direction:i.direction,up:i.up,right:i.right,transform:i.transform}}function flyToCameraParams(s,i,r=1){s.camera.flyTo({destination:i.position,orientation:{direction:i.direction,up:i.up,right:i.right},duration:r})}const memoizeMap=new WeakMap;function ListenLeftClick(s){if(memoizeMap.has(s))return memoizeMap.get(s);const i=new EventEmitter;return new Cesium__namespace.ScreenSpaceEventHandler(s.scene.canvas).setInputAction(u=>{i.emit("click",u)},Cesium__namespace.ScreenSpaceEventType.LEFT_CLICK),memoizeMap.set(s,i),i}exports.ListenLeftClick=ListenLeftClick,exports.PopupCtrl=PopupCtrl,exports.ShipLayer=ShipLayer,exports.WmsLayer=WmsLayer,exports.WmsLayerController=WmsLayerController,exports.createTdtProvider=createTdtProvider,exports.createTdtTerrain=createTdtTerrain,exports.flyToCameraParams=flyToCameraParams,exports.saveCameraParams=saveCameraParams,Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"})});
|
|
77
|
+
</svg>`;return{url:URL.createObjectURL(new Blob([b],{type:"image/svg+xml"})),viewBox:h,scale:v}},s=>`${s.color},${s.isMoving},${s.designBeam??0},${s.designLength??0},${s.aisFromBow??0},${s.aisFromCenter??0}`),shipTypeColorMap=new Map([[-1,"#00FF00"],[70,"#95B3D7"],[37,"#00FF00"],[50,"#366092"],[51,"#366092"],[52,"#366092"],[53,"#366092"],[54,"#366092"],[55,"#366092"],[56,"#366092"],[57,"#366092"],[58,"#366092"],[59,"#366092"],[80,"red"],[81,"red"],[82,"red"],[83,"red"],[84,"red"],[85,"red"],[86,"red"],[87,"red"],[88,"red"],[89,"red"]]);function createAlphaSampled(s){const i=new Cesium__namespace.SampledProperty(Cesium__namespace.Color),r=(s==null?void 0:s.startTime)??Cesium__namespace.JulianDate.now(),u=Cesium__namespace.JulianDate.addMinutes(r,1,new Cesium__namespace.JulianDate),m=Cesium__namespace.JulianDate.addMinutes(r,5,new Cesium__namespace.JulianDate),o=Cesium__namespace.JulianDate.fromIso8601("2100-01-01T00:00:00Z"),l=(s==null?void 0:s.color)??Cesium__namespace.Color.WHITE;return i.addSample(r,l.withAlpha(1)),i.addSample(u,l.withAlpha(1)),i.addSample(m,l.withAlpha(.2)),i.addSample(o,l.withAlpha(.1)),i}function getHideAfterFiveMinutesProperty(s){const i=s??Cesium__namespace.JulianDate.now(),r=Cesium__namespace.JulianDate.addMinutes(i,5,new Cesium__namespace.JulianDate);return new Cesium__namespace.CallbackProperty(u=>u?Cesium__namespace.JulianDate.lessThan(u,r):!0,!1)}class ShipLayer{constructor(i,r){z(this,"db");z(this,"isMounted",!1);z(this,"_viewer",null);z(this,"entityMap",new Map);z(this,"IS_MOVING_THRESHOLD",1);z(this,"shadowEntityMap",new WeakMap);this.key=i,this.zIndex=r,this.db=new Cesium__namespace.CustomDataSource(i)}show(i){this.isMounted||(i.dataSources.add(this.db),this._viewer=i,this.isMounted=!0),this.db.show=!0}hide(){this.isMounted&&(this.db.show=!1)}render(i){i.features.forEach(r=>{this.renderFeature(r)})}renderFeature(i){var c,d;const r=String(i.id),u=new Cesium__namespace.SampledPositionProperty;u.backwardExtrapolationType=Cesium__namespace.ExtrapolationType.HOLD,u.forwardExtrapolationType=Cesium__namespace.ExtrapolationType.HOLD;const m=Cesium__namespace.Cartesian3.fromDegrees(i.geometry.coordinates[0],i.geometry.coordinates[1]);u.addSample(((c=this._viewer)==null?void 0:c.clock.currentTime)??Cesium__namespace.JulianDate.now(),m);const o=((d=i.properties)==null?void 0:d.courseOverGroundTrue)??0,l=new Cesium__namespace.Entity({id:r,position:u,orientation:new Cesium__namespace.ConstantProperty(Cesium__namespace.Transforms.headingPitchRollQuaternion(m,new Cesium__namespace.HeadingPitchRoll(o,0,0))),properties:i.properties??{}});this.entityMap.set(r,l),this.db.entities.add(l),this.renderEntity(l)}update(i){var u,m,o,l,c,d,a,p;const r=this.db.entities.getById(String(i.id));if(r){const y=this.shadowEntityMap.get(r),g=((u=i.properties)==null?void 0:u.shipTypeId)??-1,h=shipTypeColorMap.get(g)??shipTypeColorMap.get(-1),[v,b]=i.geometry.coordinates,w=((m=this._viewer)==null?void 0:m.clock.currentTime)??Cesium__namespace.JulianDate.now(),T=(o=r.position)==null?void 0:o.getValue(w),_=Cesium__namespace.JulianDate.addSeconds(w,3,new Cesium__namespace.JulianDate),O=Cesium__namespace.Cartesian3.fromDegrees(v,b),x=new Cesium__namespace.SampledPositionProperty;if(x.backwardExtrapolationType=Cesium__namespace.ExtrapolationType.HOLD,x.forwardExtrapolationType=Cesium__namespace.ExtrapolationType.HOLD,x instanceof Cesium__namespace.SampledPositionProperty&&(x.addSample(Cesium__namespace.JulianDate.addSeconds(w,1,new Cesium__namespace.JulianDate),T??O),x.addSample(_,O)),r.position=x,y&&(y.position=x),r.properties)for(const[R,E]of Object.entries(i.properties??{})){if(R=="speedOverGround"){const C=r.properties.getValue().speedOverGround??0,N=Number(C)>this.IS_MOVING_THRESHOLD,A=Number(E)>this.IS_MOVING_THRESHOLD;if(N!==A&&(r.billboard&&(r.billboard.image=new Cesium__namespace.ConstantProperty(createShipIconUrl(h,A))),y!=null&&y.plane)){const D=((l=i.properties)==null?void 0:l.designBeam)??8,P=((c=i.properties)==null?void 0:c.designLength)??20,M=createShipIconV2({color:h,isMoving:A,...i.properties,designBeam:D,designLength:P}),q=(d=y.plane)==null?void 0:d.material;q&&(q.image=new Cesium__namespace.ConstantProperty(M.url),y.plane.dimensions=new Cesium__namespace.ConstantProperty(new Cesium__namespace.Cartesian2(D*M.scale.x,P*M.scale.y))),y.plane.dimensions=new Cesium__namespace.CallbackProperty(()=>new Cesium__namespace.Cartesian2(D*M.scale.x,P*M.scale.y),!0)}}if(R=="courseOverGroundTrue"){const C=((a=i.properties)==null?void 0:a.courseOverGroundTrue)??0;r.billboard.rotation=new Cesium__namespace.ConstantProperty(typeof E=="number"?-1*E:0);const N=new Cesium__namespace.ConstantProperty(Cesium__namespace.Transforms.headingPitchRollQuaternion(O,new Cesium__namespace.HeadingPitchRoll(C,0,0)));y&&(y.orientation=N)}if(R=="updateTime"){const C=Cesium__namespace.JulianDate.fromDate(new Date(E));r.billboard.color=createAlphaSampled({startTime:C});const N=(p=y==null?void 0:y.plane)==null?void 0:p.material;N&&(N.color=createAlphaSampled({startTime:C}));const A=getHideAfterFiveMinutesProperty(C);r.label.show=A,r.point.show=A}r.properties[R]=E,y!=null&&y.properties&&(y.properties[R]=E)}}else this.renderFeature(i)}renderEntity(i){var a,p,y,g,h,v,b;const r=(a=i.properties)==null?void 0:a.getValue(),u=(r==null?void 0:r.shipTypeId)??-1,m=shipTypeColorMap.get(u)??shipTypeColorMap.get(-1),o=Number((r==null?void 0:r.speedOverGround)??0),l=r!=null&&r.updateTime?new Date(r.updateTime):new Date,c=Cesium__namespace.JulianDate.fromDate(l),d=createShipIconUrl(m,o>this.IS_MOVING_THRESHOLD);i.point=new Cesium__namespace.PointGraphics({pixelSize:4,color:Cesium__namespace.Color.fromCssColorString("#8AF22C"),disableDepthTestDistance:3e6,distanceDisplayCondition:new Cesium__namespace.DistanceDisplayCondition(15e3),show:getHideAfterFiveMinutesProperty(c)}),i.billboard=new Cesium__namespace.BillboardGraphics({image:d,width:14,height:70,disableDepthTestDistance:3e6,distanceDisplayCondition:new Cesium__namespace.DistanceDisplayCondition(4e3,15e3),pixelOffset:new Cesium__namespace.Cartesian2(0,0),alignedAxis:Cesium__namespace.Cartesian3.UNIT_Z,color:createAlphaSampled({startTime:c}),rotation:new Cesium__namespace.ConstantProperty((y=(p=i.properties)==null?void 0:p.getValue())!=null&&y.courseOverGroundTrue?-1*i.properties.getValue().courseOverGroundTrue:0)}),i.label=new Cesium__namespace.LabelGraphics({font:'12px normal "微软雅黑"',backgroundColor:Cesium__namespace.Color.fromCssColorString("#E9F4FC"),fillColor:Cesium__namespace.Color.BLACK,outlineColor:Cesium__namespace.Color.BLACK,outlineWidth:2,showBackground:!0,style:Cesium__namespace.LabelStyle.FILL,pixelOffset:new Cesium__namespace.Cartesian2(0,-20),scale:1,scaleByDistance:new Cesium__namespace.NearFarScalar(3e3,1,1e4,.55),text:((h=(g=i.properties)==null?void 0:g.getValue())==null?void 0:h.name)??((v=i.properties)!=null&&v.getValue().mmsi?"mmsi:"+((b=i.properties)==null?void 0:b.getValue().mmsi):"未知"),horizontalOrigin:Cesium__namespace.HorizontalOrigin.CENTER,distanceDisplayCondition:new Cesium__namespace.DistanceDisplayCondition(0,15e3),disableDepthTestDistance:5e3,show:getHideAfterFiveMinutesProperty(c)}),this.createShipPlane(i)}createShipPlane(i){var g;const r=new Cesium__namespace.Entity({id:i.id+"_shadow",position:i.position,orientation:i.orientation,properties:i.properties});this.shadowEntityMap.set(i,r),this.db.entities.add(r);const u=(g=i.properties)==null?void 0:g.getValue(),m=u!=null&&u.updateTime?new Date(u.updateTime):new Date,o=Cesium__namespace.JulianDate.fromDate(m),l=Number((u==null?void 0:u.speedOverGround)??0),c=(u==null?void 0:u.designLength)??20,d=(u==null?void 0:u.designBeam)??8,a=(u==null?void 0:u.shipTypeId)??-1,p=shipTypeColorMap.get(a)??shipTypeColorMap.get(-1),y=createShipIconV2({color:p,isMoving:l>this.IS_MOVING_THRESHOLD,...u,designBeam:(u==null?void 0:u.designBeam)??8,designLength:(u==null?void 0:u.designLength)??20});r.plane=new Cesium__namespace.PlaneGraphics({plane:new Cesium__namespace.Plane(Cesium__namespace.Cartesian3.UNIT_Z,0),dimensions:new Cesium__namespace.Cartesian2(d*y.scale.x,c*y.scale.y),show:new Cesium__namespace.CallbackProperty(()=>{var w;if(!this._viewer)return!0;const h=this._viewer.clock.currentTime,v=(w=i.position)==null?void 0:w.getValue(h);return v?Cesium__namespace.Cartesian3.distance(this._viewer.camera.positionWC,v)<=4e3:!1},!1),material:new Cesium__namespace.ImageMaterialProperty({image:y.url,transparent:!0,repeat:new Cesium__namespace.Cartesian2(1,1),color:createAlphaSampled({startTime:o})})})}hideEntityByCondition(i){this.db.entities.values.forEach(r=>{const u=i(r);r.show=u;const m=this.shadowEntityMap.get(r);m&&(m.show=u)})}showAllEntity(){this.db.entities.values.forEach(i=>{i.show=!0})}}Cesium.Color.fromCssColorString("#FC4C02"),Cesium.Color.WHITE,new Cesium.Color,new Array(4);var e$2=[],t$2=[];function n$2(s,i){if(s&&typeof document<"u"){var r,u=i.prepend===!0?"prepend":"append",m=i.singleTag===!0,o=typeof i.container=="string"?document.querySelector(i.container):document.getElementsByTagName("head")[0];if(m){var l=e$2.indexOf(o);l===-1&&(l=e$2.push(o)-1,t$2[l]={}),r=t$2[l]&&t$2[l][u]?t$2[l][u]:t$2[l][u]=c()}else r=c();s.charCodeAt(0)===65279&&(s=s.substring(1)),r.styleSheet?r.styleSheet.cssText+=s:r.appendChild(document.createTextNode(s))}function c(){var d=document.createElement("style");if(d.setAttribute("type","text/css"),i.attributes)for(var a=Object.keys(i.attributes),p=0;p<a.length;p++)d.setAttribute(a[p],i.attributes[a[p]]);var y=u==="prepend"?"afterbegin":"beforeend";return o.insertAdjacentElement(y,d),d}}var css$2='.cesium-tool-tip{background:rgba(0,0,0,.6);border-radius:4px;color:#fff;left:0;line-height:30px;min-height:30px;min-width:100px;padding:0 10px;pointer-events:none;position:absolute;top:0;visibility:hidden;z-index:-1}.cesium-tool-tip:before{border-bottom:10px solid transparent;border-right:10px solid rgba(0,0,0,.6);border-top:10px solid transparent;content:"";display:block;left:-10px;pointer-events:none;position:absolute;top:calc(50% - 10px)}';n$2(css$2,{}),Cesium.Color.YELLOW,Cesium.Color.YELLOW,Cesium.Color.DARKTURQUOISE.withAlpha(.5),Cesium.Color.BLUE,Cesium.Color.WHITE,Cesium.Color.YELLOW.withAlpha(.5),Cesium.Color.YELLOW.withAlpha(.5),Cesium.Color.WHITE,new Cesium.Color(.165,.165,.165,.8),new Cesium.Cartesian2(4,4),Cesium.LabelStyle.FILL_AND_OUTLINE,new Cesium.Cartesian2(4,0),new Cesium.NearFarScalar(1,.85,8e6,.75),Cesium.HeightReference.CLAMP_TO_GROUND;class Popup{constructor(i,r){z(this,"_position");z(this,"_screenPosition",new Cesium.Cartesian2);z(this,"_element");z(this,"_viewer");z(this,"_options");z(this,"_destroyed",!1);z(this,"_offset");z(this,"setPosition",()=>{if(this._position&&this._viewer&&this._position){if(this._viewer.scene.mode===Cesium.SceneMode.SCENE3D){const u=this._viewer.scene.camera.position,m=new Cesium.BoundingSphere(new Cesium.Cartesian3(0,0,0),635e4);if(!new Cesium.Occluder(m,u).isPointVisible(this._position)){this.switchElementShow(!1);return}}const i=Cesium.SceneTransforms.worldToWindowCoordinates(this._viewer.scene,this._position),{_element:r}=this;if(r&&i){if(this._screenPosition&&this._screenPosition.x===i.x&&this._screenPosition.y===i.y)return;this.switchElementShow(!0);const u=i.x-r.clientWidth/2+this._offset[0],m=i.y-r.clientHeight+this._offset[1];r.style.left=`${u}px`,r.style.top=`${m}px`,this._screenPosition=i}}});this._viewer=i,this._options=r;const{position:u,element:m,offset:o}=r;if(!m)throw Error("no element!");this._position=u?Cesium.Cartesian3.fromDegrees(u[0],u[1],u[2]):null,this._element=m,this._offset=[(o==null?void 0:o[0])??0,(o==null?void 0:o[1])??0],this.addMapListener()}set position(i){if(!i){this.switchElementShow(!1),this._position=null,this._options.position=null;return}this._position=Cesium.Cartesian3.fromDegrees(i[0],i[1],i[2]),this._options.position=i,this.setPosition()}get position(){return this._options.position}get destroyed(){return this._destroyed}switchElementShow(i){this._element&&(this._element.style.display=i?"block":"none")}addMapListener(){var i;(i=this._viewer)==null||i.scene.postRender.addEventListener(this.setPosition)}destroy(){this._viewer.isDestroyed()||this._viewer.scene.postRender.removeEventListener(this.setPosition),this.setPosition=void 0,this._destroyed=!0}}var e$1=[],t$1=[];function n$1(s,i){if(s&&typeof document<"u"){var r,u=i.prepend===!0?"prepend":"append",m=i.singleTag===!0,o=typeof i.container=="string"?document.querySelector(i.container):document.getElementsByTagName("head")[0];if(m){var l=e$1.indexOf(o);l===-1&&(l=e$1.push(o)-1,t$1[l]={}),r=t$1[l]&&t$1[l][u]?t$1[l][u]:t$1[l][u]=c()}else r=c();s.charCodeAt(0)===65279&&(s=s.substring(1)),r.styleSheet?r.styleSheet.cssText+=s:r.appendChild(document.createTextNode(s))}function c(){var d=document.createElement("style");if(d.setAttribute("type","text/css"),i.attributes)for(var a=Object.keys(i.attributes),p=0;p<a.length;p++)d.setAttribute(a[p],i.attributes[a[p]]);var y=u==="prepend"?"afterbegin":"beforeend";return o.insertAdjacentElement(y,d),d}}var css$1=".cesium-compass{cursor:pointer;height:60px;pointer-events:auto;position:absolute;right:15px;top:100px;user-select:none;width:60px}.cesium-compass .out-ring{fill:rgba(23,49,71,.702);background-repeat:no-repeat;background-size:contain;border-radius:50%;height:60px;left:0;position:absolute;top:0;transition:all .3s ease;width:60px}.cesium-compass .out-ring svg{height:60px;width:60px}.cesium-compass:hover .rotation_marker svg{height:70.2px;width:70.2px}.cesium-compass .gyro{align-items:center;background:#fff;border-radius:50%;box-sizing:border-box;display:flex;height:30px;justify-content:center;margin:0 auto;padding:4px;position:relative;text-align:center;top:50%;transform:translateY(-50%);transition:all .3s ease;width:30px}.cesium-compass .gyro svg{height:20px;width:20px}.rotation_marker{background-repeat:no-repeat;background-size:contain;border-radius:50%;position:relative}.rotation_marker svg{height:60px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transition:all .3s ease;width:60px}.cesium-compass .gyro-active,.cesium-compass .gyro:hover{fill:#68adfe}";n$1(css$1,{});var e=[],t=[];function n(s,i){if(s&&typeof document<"u"){var r,u=i.prepend===!0?"prepend":"append",m=i.singleTag===!0,o=typeof i.container=="string"?document.querySelector(i.container):document.getElementsByTagName("head")[0];if(m){var l=e.indexOf(o);l===-1&&(l=e.push(o)-1,t[l]={}),r=t[l]&&t[l][u]?t[l][u]:t[l][u]=c()}else r=c();s.charCodeAt(0)===65279&&(s=s.substring(1)),r.styleSheet?r.styleSheet.cssText+=s:r.appendChild(document.createTextNode(s))}function c(){var d=document.createElement("style");if(d.setAttribute("type","text/css"),i.attributes)for(var a=Object.keys(i.attributes),p=0;p<a.length;p++)d.setAttribute(a[p],i.attributes[a[p]]);var y=u==="prepend"?"afterbegin":"beforeend";return o.insertAdjacentElement(y,d),d}}var css=".cesium-zoom-controller{border-radius:100px;box-sizing:border-box;display:flex;flex-direction:column;line-height:1.2rem;pointer-events:auto;position:absolute;right:30px;text-align:center;top:187px;user-select:none}.cesium-zoom-controller .refresh,.cesium-zoom-controller .zoom-in,.cesium-zoom-controller .zoom-out{border-radius:14%;margin-bottom:5px}.cesium-zoom-controller .cesium-button{background:#2a2e39;border:none;margin-right:0;transition:all .3s cubic-bezier(.645,.045,.355,1);transition-delay:0s;transition-duration:.2s;transition-property:all;transition-timing-function:cubic-bezier(.645,.045,.355,1)}.cesium-zoom-controller .cesium-button:hover{background:#48b;box-shadow:none}.cesium-zoom-controller .cesium-button:active{fill:#edffff;background:#adf;color:#edffff}.cesium-zoom-controller .cesium-toolbar-button{align-items:center;display:flex;height:30px;justify-content:center;width:30px}";n(css,{});var heatmap$1={exports:{}},heatmap=heatmap$1.exports,hasRequiredHeatmap;function requireHeatmap(){return hasRequiredHeatmap||(hasRequiredHeatmap=1,function(s){(function(i,r,u){s.exports?s.exports=u():r[i]=u()})("h337",heatmap,function(){var i={defaultRadius:40,defaultRenderer:"canvas2d",defaultGradient:{.25:"rgb(0,0,255)",.55:"rgb(0,255,0)",.85:"yellow",1:"rgb(255,0,0)"},defaultMaxOpacity:1,defaultMinOpacity:0,defaultBlur:.85,defaultXField:"x",defaultYField:"y",defaultValueField:"value",plugins:{}},r=function(){var a=function(g){this._coordinator={},this._data=[],this._radi=[],this._min=10,this._max=1,this._xField=g.xField||g.defaultXField,this._yField=g.yField||g.defaultYField,this._valueField=g.valueField||g.defaultValueField,g.radius&&(this._cfgRadius=g.radius)},p=i.defaultRadius;return a.prototype={_organiseData:function(y,g){var h=y[this._xField],v=y[this._yField],b=this._radi,w=this._data,T=this._max,_=this._min,O=y[this._valueField]||1,x=y.radius||this._cfgRadius||p;w[h]||(w[h]=[],b[h]=[]),w[h][v]?w[h][v]+=O:(w[h][v]=O,b[h][v]=x);var R=w[h][v];return R>T?(g?this.setDataMax(R):this._max=R,!1):R<_?(g?this.setDataMin(R):this._min=R,!1):{x:h,y:v,value:O,radius:x,min:_,max:T}},_unOrganizeData:function(){var y=[],g=this._data,h=this._radi;for(var v in g)for(var b in g[v])y.push({x:v,y:b,radius:h[v][b],value:g[v][b]});return{min:this._min,max:this._max,data:y}},_onExtremaChange:function(){this._coordinator.emit("extremachange",{min:this._min,max:this._max})},addData:function(){if(arguments[0].length>0)for(var y=arguments[0],g=y.length;g--;)this.addData.call(this,y[g]);else{var h=this._organiseData(arguments[0],!0);h&&(this._data.length===0&&(this._min=this._max=h.value),this._coordinator.emit("renderpartial",{min:this._min,max:this._max,data:[h]}))}return this},setData:function(y){var g=y.data,h=g.length;this._data=[],this._radi=[];for(var v=0;v<h;v++)this._organiseData(g[v],!1);return this._max=y.max,this._min=y.min||0,this._onExtremaChange(),this._coordinator.emit("renderall",this._getInternalData()),this},removeData:function(){},setDataMax:function(y){return this._max=y,this._onExtremaChange(),this._coordinator.emit("renderall",this._getInternalData()),this},setDataMin:function(y){return this._min=y,this._onExtremaChange(),this._coordinator.emit("renderall",this._getInternalData()),this},setCoordinator:function(y){this._coordinator=y},_getInternalData:function(){return{max:this._max,min:this._min,data:this._data,radi:this._radi}},getData:function(){return this._unOrganizeData()}},a}(),u=function(){var a=function(h){var v=h.gradient||h.defaultGradient,b=document.createElement("canvas"),w=b.getContext("2d",{willReadFrequently:!0});b.width=256,b.height=1;var T=w.createLinearGradient(0,0,256,1);for(var _ in v)T.addColorStop(_,v[_]);return w.fillStyle=T,w.fillRect(0,0,256,1),w.getImageData(0,0,256,1).data},p=function(h,v){var b=document.createElement("canvas"),w=b.getContext("2d",{willReadFrequently:!0}),T=h,_=h;if(b.width=b.height=h*2,v==1)w.beginPath(),w.arc(T,_,h,0,2*Math.PI,!1),w.fillStyle="rgba(0,0,0,1)",w.fill();else{var O=w.createRadialGradient(T,_,h*v,T,_,h);O.addColorStop(0,"rgba(0,0,0,1)"),O.addColorStop(1,"rgba(0,0,0,0)"),w.fillStyle=O,w.fillRect(0,0,2*h,2*h)}return b},y=function(_){for(var v=[],b=_.min,w=_.max,T=_.radi,_=_.data,O=Object.keys(_),x=O.length;x--;)for(var R=O[x],E=Object.keys(_[R]),C=E.length;C--;){var N=E[C],A=_[R][N],D=T[R][N];v.push({x:R,y:N,value:A,radius:D})}return{min:b,max:w,data:v}};function g(h){var v=h.container,b=this.shadowCanvas=document.createElement("canvas"),w=this.canvas=h.canvas||document.createElement("canvas");this._renderBoundaries=[1e4,1e4,0,0];var T=getComputedStyle(h.container)||{};w.className="heatmap-canvas",this._width=w.width=b.width=h.width||+T.width.replace(/px/,""),this._height=w.height=b.height=h.height||+T.height.replace(/px/,""),this.shadowCtx=b.getContext("2d",{willReadFrequently:!0}),this.ctx=w.getContext("2d",{willReadFrequently:!0}),w.style.cssText=b.style.cssText="position:absolute;left:0;top:0;",v.style.position="relative",v.appendChild(w),this._palette=a(h),this._templates={},this._setStyles(h)}return g.prototype={renderPartial:function(h){h.data.length>0&&(this._drawAlpha(h),this._colorize())},renderAll:function(h){this._clear(),h.data.length>0&&(this._drawAlpha(y(h)),this._colorize())},_updateGradient:function(h){this._palette=a(h)},updateConfig:function(h){h.gradient&&this._updateGradient(h),this._setStyles(h)},setDimensions:function(h,v){this._width=h,this._height=v,this.canvas.width=this.shadowCanvas.width=h,this.canvas.height=this.shadowCanvas.height=v},_clear:function(){this.shadowCtx.clearRect(0,0,this._width,this._height),this.ctx.clearRect(0,0,this._width,this._height)},_setStyles:function(h){this._blur=h.blur==0?0:h.blur||h.defaultBlur,h.backgroundColor&&(this.canvas.style.backgroundColor=h.backgroundColor),this._width=this.canvas.width=this.shadowCanvas.width=h.width||this._width,this._height=this.canvas.height=this.shadowCanvas.height=h.height||this._height,this._opacity=(h.opacity||0)*255,this._maxOpacity=(h.maxOpacity||h.defaultMaxOpacity)*255,this._minOpacity=(h.minOpacity||h.defaultMinOpacity)*255,this._useGradientOpacity=!!h.useGradientOpacity},_drawAlpha:function(w){for(var v=this._min=w.min,b=this._max=w.max,w=w.data||[],T=w.length,_=1-this._blur;T--;){var O=w[T],x=O.x,R=O.y,E=O.radius,C=Math.min(O.value,b),N=x-E,A=R-E,D=this.shadowCtx,P;this._templates[E]?P=this._templates[E]:this._templates[E]=P=p(E,_);var M=(C-v)/(b-v);D.globalAlpha=M<.01?.01:M,D.drawImage(P,N,A),N<this._renderBoundaries[0]&&(this._renderBoundaries[0]=N),A<this._renderBoundaries[1]&&(this._renderBoundaries[1]=A),N+2*E>this._renderBoundaries[2]&&(this._renderBoundaries[2]=N+2*E),A+2*E>this._renderBoundaries[3]&&(this._renderBoundaries[3]=A+2*E)}},_colorize:function(){var h=this._renderBoundaries[0],v=this._renderBoundaries[1],b=this._renderBoundaries[2]-h,w=this._renderBoundaries[3]-v,T=this._width,_=this._height,O=this._opacity,x=this._maxOpacity,R=this._minOpacity,E=this._useGradientOpacity;h<0&&(h=0),v<0&&(v=0),h+b>T&&(b=T-h),v+w>_&&(w=_-v);for(var C=this.shadowCtx.getImageData(h,v,b,w),N=C.data,A=N.length,D=this._palette,P=3;P<A;P+=4){var M=N[P],q=M*4;if(q){var F;O>0?F=O:M<x?M<R?F=R:F=M:F=x,N[P-3]=D[q],N[P-2]=D[q+1],N[P-1]=D[q+2],N[P]=E?D[q+3]:F}}this.ctx.putImageData(C,h,v),this._renderBoundaries=[1e3,1e3,0,0]},getValueAt:function(h){var v,b=this.shadowCtx,w=b.getImageData(h.x,h.y,1,1),T=w.data[3],_=this._max,O=this._min;return v=Math.abs(_-O)*(T/255)>>0,v},getDataURL:function(){return this.canvas.toDataURL()}},g}(),m=function(){var a=!1;return i.defaultRenderer==="canvas2d"&&(a=u),a}(),o={merge:function(){for(var d={},a=arguments.length,p=0;p<a;p++){var y=arguments[p];for(var g in y)d[g]=y[g]}return d}},l=function(){var a=function(){function h(){this.cStore={}}return h.prototype={on:function(v,b,w){var T=this.cStore;T[v]||(T[v]=[]),T[v].push(function(_){return b.call(w,_)})},emit:function(v,b){var w=this.cStore;if(w[v])for(var T=w[v].length,_=0;_<T;_++){var O=w[v][_];O(b)}}},h}(),p=function(g){var h=g._renderer,v=g._coordinator,b=g._store;v.on("renderpartial",h.renderPartial,h),v.on("renderall",h.renderAll,h),v.on("extremachange",function(w){g._config.onExtremaChange&&g._config.onExtremaChange({min:w.min,max:w.max,gradient:g._config.gradient||g._config.defaultGradient})}),b.setCoordinator(v)};function y(){var g=this._config=o.merge(i,arguments[0]||{});if(this._coordinator=new a,g.plugin){var h=g.plugin;if(i.plugins[h]){var v=i.plugins[h];this._renderer=new v.renderer(g),this._store=new v.store(g)}else throw new Error("Plugin '"+h+"' not found. Maybe it was not registered.")}else this._renderer=new m(g),this._store=new r(g);p(this)}return y.prototype={addData:function(){return this._store.addData.apply(this._store,arguments),this},removeData:function(){return this._store.removeData&&this._store.removeData.apply(this._store,arguments),this},setData:function(){return this._store.setData.apply(this._store,arguments),this},setDataMax:function(){return this._store.setDataMax.apply(this._store,arguments),this},setDataMin:function(){return this._store.setDataMin.apply(this._store,arguments),this},configure:function(g){return this._config=o.merge(this._config,g),this._renderer.updateConfig(this._config),this._coordinator.emit("renderall",this._store._getInternalData()),this},repaint:function(){return this._coordinator.emit("renderall",this._store._getInternalData()),this},getData:function(){return this._store.getData()},getDataURL:function(){return this._renderer.getDataURL()},getValueAt:function(g){return this._store.getValueAt?this._store.getValueAt(g):this._renderer.getValueAt?this._renderer.getValueAt(g):null}},y}(),c={create:function(d){return new l(d)},register:function(d,a){i.plugins[d]=a}};return c})}(heatmap$1)),heatmap$1.exports}requireHeatmap();const H=class H extends EventEmitter{constructor(){super();z(this,"popupMap",new Map)}static getInstance(){return H.instance||(H.instance=new H),H.instance}popup(r){var c;const u=r.element;u.style.position="absolute";const m=r.viewer.container,o=()=>{l&&(l.destroy(),m.removeChild(u),this.popupMap.delete(r.id),this.emit("onUnmount",r.id))};m.appendChild(u),this.emit("onMount",r.id),(c=this.popupMap.get(r.id))==null||c.destroy();const l=new Popup(r.viewer,{position:r.position,offset:r.offset??[0,0],element:u});this.popupMap.set(r.id,{popup:l,destroy:o})}close(r){const u=this.popupMap.get(r);u&&(u.destroy(),this.popupMap.delete(r),this.emit("onUnmount",r))}closeAll(){this.popupMap.forEach(r=>r.destroy()),this.popupMap.clear()}};z(H,"instance",null);let PopupCtrl=H;function saveCameraParams(s){const i=s.camera;return{position:i.position,direction:i.direction,up:i.up,right:i.right,transform:i.transform}}function flyToCameraParams(s,i,r=1){s.camera.flyTo({destination:i.position,orientation:{direction:i.direction,up:i.up,right:i.right},duration:r})}const memoizeMap=new WeakMap;function ListenLeftClick(s){if(memoizeMap.has(s))return memoizeMap.get(s);const i=new EventEmitter;return new Cesium__namespace.ScreenSpaceEventHandler(s.scene.canvas).setInputAction(u=>{i.emit("click",u)},Cesium__namespace.ScreenSpaceEventType.LEFT_CLICK),memoizeMap.set(s,i),i}exports.ListenLeftClick=ListenLeftClick,exports.PopupCtrl=PopupCtrl,exports.ShipLayer=ShipLayer,exports.WmsLayer=WmsLayer,exports.WmsLayerController=WmsLayerController,exports.createTdtProvider=createTdtProvider,exports.createTdtTerrain=createTdtTerrain,exports.flyToCameraParams=flyToCameraParams,exports.saveCameraParams=saveCameraParams,Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"})});
|