mars3d-wind 3.7.24 → 3.7.25
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/mars3d-wind.js +3 -3
- package/package.json +2 -2
package/dist/mars3d-wind.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Mars3D平台插件,支持气象 风向图 功能插件 mars3d-wind
|
|
3
3
|
*
|
|
4
|
-
* 版本信息:v3.7.
|
|
5
|
-
* 编译日期:2024-08-
|
|
4
|
+
* 版本信息:v3.7.25
|
|
5
|
+
* 编译日期:2024-08-16 09:42:33
|
|
6
6
|
* 版权所有:Copyright by 火星科技 http://mars3d.cn
|
|
7
7
|
* 使用单位:免费公开版 ,2024-01-15
|
|
8
8
|
*/
|
|
@@ -11,5 +11,5 @@
|
|
|
11
11
|
typeof define === 'function' && define.amd ? define(['exports', 'mars3d'], factory) :
|
|
12
12
|
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global["mars3d-wind"] = {}, global.mars3d));
|
|
13
13
|
})(this, (function (exports, mars3d) {
|
|
14
|
-
'use strict';function _0x471590(_0x26f621,_0x3b6278){return _0x13e6(_0x26f621-0x173,_0x3b6278);}(function(_0x3786ae,_0x36a289){function _0x1411dd(_0x7dcb00,_0x4f378f){return _0x13e6(_0x7dcb00-0x344,_0x4f378f);}const _0x50f2cc=_0x3786ae();function _0x3db9f1(_0x576073,_0x20d428){return _0x13e6(_0x576073- -0x275,_0x20d428);}while(!![]){try{const _0x5b7452=parseInt(_0x1411dd(0x52f,0x53e))/0x1+parseInt(_0x3db9f1(-0x67,0x1a))/0x2+-parseInt(_0x3db9f1(-0x16e,-0x1b7))/0x3*(-parseInt(_0x1411dd(0x554,0x5cc))/0x4)+parseInt(_0x3db9f1(-0x152,-0x164))/0x5+-parseInt(_0x1411dd(0x4a2,0x4b7))/0x6+-parseInt(_0x1411dd(0x4b5,0x4f5))/0x7*(-parseInt(_0x1411dd(0x46f,0x4c4))/0x8)+parseInt(_0x3db9f1(-0x153,-0x1d6))/0x9;if(_0x5b7452===_0x36a289)break;else _0x50f2cc['push'](_0x50f2cc['shift']());}catch(_0x55dad9){_0x50f2cc['push'](_0x50f2cc['shift']());}}}(_0x44b2,0xb7d66));function _interopNamespace(_0x579501){if(_0x579501&&_0x579501['__esModule'])return _0x579501;function _0x56f5c8(_0x325c76,_0xc6c1a5){return _0x13e6(_0xc6c1a5- -0x348,_0x325c76);}var _0x305e94=Object['create'](null);return _0x579501&&Object['keys'](_0x579501)[_0x56f5c8(-0x10b,-0x130)](function(_0xbd99de){function _0x129329(_0x3f4068,_0x10e0b9){return _0x56f5c8(_0x3f4068,_0x10e0b9-0x2d9);}function _0x3327ea(_0x2ee117,_0x4f0020){return _0x56f5c8(_0x2ee117,_0x4f0020-0x115);}if(_0xbd99de!=='default'){var _0x59330d=Object[_0x129329(0x131,0xdd)](_0x579501,_0xbd99de);Object['defineProperty'](_0x305e94,_0xbd99de,_0x59330d[_0x3327ea(-0xd1,-0xbf)]?_0x59330d:{'enumerable':!![],'get':function(){return _0x579501[_0xbd99de];}});}}),_0x305e94['default']=_0x579501,_0x305e94;}var mars3d__namespace=_interopNamespace(mars3d);const Cesium$7=mars3d__namespace[_0x3f784e(0x3a1,0x402)];function getU(_0x9d31b7,_0x2f1eac){function _0x3be5de(_0x2d1986,_0xa99d3){return _0x3f784e(_0xa99d3,_0x2d1986- -0x329);}const _0x1e9183=_0x9d31b7*Math[_0x3be5de(0x13e,0xe6)](Cesium$7['Math']['toRadians'](_0x2f1eac));return _0x1e9183;}function getV(_0x41da5b,_0x5d09d5){function _0x56eebe(_0x32a11f,_0x4a70e7){return _0x3f784e(_0x32a11f,_0x4a70e7- -0x481);}const _0x2c233=_0x41da5b*Math[_0x56eebe(-0xc8,-0x55)](Cesium$7[_0x503667(0x2a0,0x2f9)]['toRadians'](_0x5d09d5));function _0x503667(_0x1c82e9,_0x570248){return _0x3f784e(_0x570248,_0x1c82e9- -0x18f);}return _0x2c233;}function getSpeed(_0x13746d,_0x254486){const _0x2e9173=Math['sqrt'](Math['pow'](_0x13746d,0x2)+Math['pow'](_0x254486,0x2));return _0x2e9173;}function getDirection(_0x532254,_0x400378){let _0x856ca2=Cesium$7[_0x3545b2(-0x14b,-0x10f)]['toDegrees'](Math['atan2'](_0x400378,_0x532254));_0x856ca2+=_0x856ca2<0x0?0x168:0x0;function _0x3545b2(_0x18a0bb,_0x483384){return _0x3f784e(_0x483384,_0x18a0bb- -0x57a);}return _0x856ca2;}const _0x4a45ed={};function _0x44b2(){const _0x2bf1cd=['56nLXhlw','none','array','get','TRIANGLES','PointTrans','createCommand','RGBA','bindEvent','canvasWind','_map','rows','PixelFormat','container','DrawCommand','Cartesian3','commandToExecute','textures','particleSystem','Texture','randomBetween','PrimitiveType','now','canvasResize','postProcessingPosition','Matrix4','updatePosition','GeometryAttributes','_updateIng2','_updateIng','uniform\x20sampler2D\x20colorTable;\x0a\x0ain\x20float\x20speedNormalization;\x0a\x0avoid\x20main()\x20{\x0a\x20\x20\x20\x20out_FragColor\x20=\x20texture(colorTable,\x20vec2(speedNormalization,\x200.0));\x0a}\x0a','isDestroy','_randomParticle','_colorRamp','currentParticlesSpeed','clearCommand','lev','toWindowCoordinates','sources','dropRate','getDefaultRenderState','createSegmentsGeometry','framebuffers','ZERO','SCENE3D','globeBoundingSphere','particlesTextures','CanvasWindField','fill','DomUtil','wheel','viewerParameters','BoundingSphere','clearFramebuffers','_canrefresh','computeViewRectangle','age','vertexShaderSource','mod','Cesium','fadeOpacity','RGB','grid','THREE_PI_OVER_TWO','onmessage','depthTexture','absolute','createWindTextures','Sampler','Cartesian2','updateSpeed','PixelDatatype','init','add','nextParticlesSpeed','currentParticlesPosition','postProcessingSpeed','NEAREST','mouseUp','applyViewerParameters','defined','mouseDown','frameTime','trails','Appearance','reverseY','commandList','uniformMap','particlesTextureSize','destroy','length','EllipsoidalOccluder','position','worker','height','_onMouseMoveEvent','updateViewerParameters','uniform\x20sampler2D\x20nextParticlesPosition;\x0auniform\x20sampler2D\x20nextParticlesSpeed;\x20//\x20(u,\x20v,\x20w,\x20normalization)\x0a\x0a//\x20range\x20(min,\x20max)\x0auniform\x20vec2\x20lonRange;\x0auniform\x20vec2\x20latRange;\x0a\x0auniform\x20float\x20randomCoefficient;\x20//\x20use\x20to\x20improve\x20the\x20pseudo-random\x20generator\x0auniform\x20float\x20dropRate;\x20//\x20drop\x20rate\x20is\x20a\x20chance\x20a\x20particle\x20will\x20restart\x20at\x20random\x20position\x20to\x20avoid\x20degeneration\x0auniform\x20float\x20dropRateBump;\x0a\x0ain\x20vec2\x20v_textureCoordinates;\x0a\x0a//\x20pseudo-random\x20generator\x0aconst\x20vec3\x20randomConstants\x20=\x20vec3(12.9898,\x2078.233,\x204375.85453);\x0aconst\x20vec2\x20normalRange\x20=\x20vec2(0.0,\x201.0);\x0afloat\x20rand(vec2\x20seed,\x20vec2\x20range)\x20{\x0a\x20\x20\x20\x20vec2\x20randomSeed\x20=\x20randomCoefficient\x20*\x20seed;\x0a\x20\x20\x20\x20float\x20temp\x20=\x20dot(randomConstants.xy,\x20randomSeed);\x0a\x20\x20\x20\x20temp\x20=\x20fract(sin(temp)\x20*\x20(randomConstants.z\x20+\x20temp));\x0a\x20\x20\x20\x20return\x20temp\x20*\x20(range.y\x20-\x20range.x)\x20+\x20range.x;\x0a}\x0a\x0avec3\x20generateRandomParticle(vec2\x20seed,\x20float\x20lev)\x20{\x0a\x20\x20\x20\x20//\x20ensure\x20the\x20longitude\x20is\x20in\x20[0,\x20360]\x0a\x20\x20\x20\x20float\x20randomLon\x20=\x20mod(rand(seed,\x20lonRange),\x20360.0);\x0a\x20\x20\x20\x20float\x20randomLat\x20=\x20rand(-seed,\x20latRange);\x0a\x0a\x20\x20\x20\x20return\x20vec3(randomLon,\x20randomLat,\x20lev);\x0a}\x0a\x0abool\x20particleOutbound(vec3\x20particle)\x20{\x0a\x20\x20\x20\x20return\x20particle.y\x20<\x20-90.0\x20||\x20particle.y\x20>\x2090.0;\x0a}\x0a\x0avoid\x20main()\x20{\x0a\x20\x20\x20\x20vec3\x20nextParticle\x20=\x20texture(nextParticlesPosition,\x20v_textureCoordinates).rgb;\x0a\x20\x20\x20\x20vec4\x20nextSpeed\x20=\x20texture(nextParticlesSpeed,\x20v_textureCoordinates);\x0a\x20\x20\x20\x20float\x20particleDropRate\x20=\x20dropRate\x20+\x20dropRateBump\x20*\x20nextSpeed.a;\x0a\x0a\x20\x20\x20\x20vec2\x20seed1\x20=\x20nextParticle.xy\x20+\x20v_textureCoordinates;\x0a\x20\x20\x20\x20vec2\x20seed2\x20=\x20nextSpeed.xy\x20+\x20v_textureCoordinates;\x0a\x20\x20\x20\x20vec3\x20randomParticle\x20=\x20generateRandomParticle(seed1,\x20nextParticle.z);\x0a\x20\x20\x20\x20float\x20randomNumber\x20=\x20rand(seed2,\x20normalRange);\x0a\x0a\x20\x20\x20\x20if\x20(randomNumber\x20<\x20particleDropRate\x20||\x20particleOutbound(nextParticle))\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20out_FragColor\x20=\x20vec4(randomParticle,\x201.0);\x20//\x201.0\x20means\x20this\x20is\x20a\x20random\x20particle\x0a\x20\x20\x20\x20}\x20else\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20out_FragColor\x20=\x20vec4(nextParticle,\x200.0);\x0a\x20\x20\x20\x20}\x0a}\x0a','createRawRenderState','_tomap','dimensions','sin','destroyParticlesTextures','clear','Math','tlng','Rectangle','particles','canvasContext','windTextures','west','lineWidth','initWorker','_onMouseUpEvent','preExecute','ShaderSource','removeEventListener','toGridXY','fromGeometry','min','colorTextures','setData','519113IldGQU','maxAge','particlesRendering','_mountedHook','drawingBufferHeight','getColor','globalAlpha','globe','options','primitives','nextTrailsDepth','push','ymin','pixelFormat','fragmentShaderSource','speedRate','dropRateBump','mouse_move','keys','currentTrails','speedFactor','zIndex','lng','show','pointer-events','xmax','EventType','geometry','TextureMagnificationFilter','Draw','setOptions','normal','udata','pixelSize','Pass','136200BZZsGu','fixedHeight','168884zIRRuc','cos','createParticlesTextures','fromCache','createTexture','viewport','Compute','particleHeight','forEach','drawingBufferWidth','nextTrailsColor','_onMapWhellEvent','OPAQUE','particlesComputing','max','uniform\x20sampler2D\x20currentParticlesSpeed;\x20//\x20(u,\x20v,\x20w,\x20normalization)\x0auniform\x20sampler2D\x20particlesWind;\x0a\x0a//\x20used\x20to\x20calculate\x20the\x20wind\x20norm\x0auniform\x20vec2\x20uSpeedRange;\x20//\x20(min,\x20max);\x0auniform\x20vec2\x20vSpeedRange;\x0auniform\x20float\x20pixelSize;\x0auniform\x20float\x20speedFactor;\x0a\x0ain\x20vec2\x20v_textureCoordinates;\x0a\x0afloat\x20calculateWindNorm(vec3\x20speed)\x20{\x0a\x20\x20\x20\x20vec3\x20percent\x20=\x20vec3(0.0);\x0a\x20\x20\x20\x20percent.x\x20=\x20(speed.x\x20-\x20uSpeedRange.x)\x20/\x20(uSpeedRange.y\x20-\x20uSpeedRange.x);\x0a\x20\x20\x20\x20percent.y\x20=\x20(speed.y\x20-\x20vSpeedRange.x)\x20/\x20(vSpeedRange.y\x20-\x20vSpeedRange.x);\x0a\x20\x20\x20\x20float\x20normalization\x20=\x20length(percent);\x0a\x0a\x20\x20\x20\x20return\x20normalization;\x0a}\x0a\x0avoid\x20main()\x20{\x0a\x20\x20\x20\x20//\x20texture\x20coordinate\x20must\x20be\x20normalized\x0a\x20\x20\x20\x20//\x20vec3\x20currentSpeed\x20=\x20texture(currentParticlesSpeed,\x20v_textureCoordinates).rgb;\x0a\x20\x20\x20\x20vec3\x20windVector\x20=\x20texture(particlesWind,\x20v_textureCoordinates).rgb;\x0a\x0a\x20\x20\x20\x20vec4\x20nextSpeed\x20=\x20vec4(speedFactor\x20*\x20pixelSize\x20*\x20windVector,\x20calculateWindNorm(windVector));\x0a\x20\x20\x20\x20out_FragColor\x20=\x20nextSpeed;\x0a}\x0a','colorTable','mouseMove','lat','floor','primitiveType','uniform\x20sampler2D\x20currentParticlesPosition;\x20//\x20(lon,\x20lat,\x20lev)\x0auniform\x20sampler2D\x20currentParticlesSpeed;\x20//\x20(u,\x20v,\x20w,\x20normalization)\x0a\x0ain\x20vec2\x20v_textureCoordinates;\x0a\x0avec2\x20lengthOfLonLat(vec3\x20lonLatLev)\x20{\x0a\x20\x20\x20\x20//\x20unit\x20conversion:\x20meters\x20->\x20longitude\x20latitude\x20degrees\x0a\x20\x20\x20\x20//\x20see\x20https://en.wikipedia.org/wiki/Geographic_coordinate_system#Length_of_a_degree\x20for\x20detail\x0a\x0a\x20\x20\x20\x20//\x20Calculate\x20the\x20length\x20of\x20a\x20degree\x20of\x20latitude\x20and\x20longitude\x20in\x20meters\x0a\x20\x20\x20\x20float\x20latitude\x20=\x20radians(lonLatLev.y);\x0a\x0a\x20\x20\x20\x20float\x20term1\x20=\x20111132.92;\x0a\x20\x20\x20\x20float\x20term2\x20=\x20559.82\x20*\x20cos(2.0\x20*\x20latitude);\x0a\x20\x20\x20\x20float\x20term3\x20=\x201.175\x20*\x20cos(4.0\x20*\x20latitude);\x0a\x20\x20\x20\x20float\x20term4\x20=\x200.0023\x20*\x20cos(6.0\x20*\x20latitude);\x0a\x20\x20\x20\x20float\x20latLength\x20=\x20term1\x20-\x20term2\x20+\x20term3\x20-\x20term4;\x0a\x0a\x20\x20\x20\x20float\x20term5\x20=\x20111412.84\x20*\x20cos(latitude);\x0a\x20\x20\x20\x20float\x20term6\x20=\x2093.5\x20*\x20cos(3.0\x20*\x20latitude);\x0a\x20\x20\x20\x20float\x20term7\x20=\x200.118\x20*\x20cos(5.0\x20*\x20latitude);\x0a\x20\x20\x20\x20float\x20longLength\x20=\x20term5\x20-\x20term6\x20+\x20term7;\x0a\x0a\x20\x20\x20\x20return\x20vec2(longLength,\x20latLength);\x0a}\x0a\x0avoid\x20updatePosition(vec3\x20lonLatLev,\x20vec3\x20speed)\x20{\x0a\x20\x20\x20\x20vec2\x20lonLatLength\x20=\x20lengthOfLonLat(lonLatLev);\x0a\x20\x20\x20\x20float\x20u\x20=\x20speed.x\x20/\x20lonLatLength.x;\x0a\x20\x20\x20\x20float\x20v\x20=\x20speed.y\x20/\x20lonLatLength.y;\x0a\x20\x20\x20\x20float\x20w\x20=\x200.0;\x0a\x20\x20\x20\x20vec3\x20windVectorInLonLatLev\x20=\x20vec3(u,\x20v,\x20w);\x0a\x0a\x20\x20\x20\x20vec3\x20nextParticle\x20=\x20lonLatLev\x20+\x20windVectorInLonLatLev;\x0a\x0a\x20\x20\x20\x20out_FragColor\x20=\x20vec4(nextParticle,\x200.0);\x0a}\x0a\x0avoid\x20main()\x20{\x0a\x20\x20\x20\x20//\x20texture\x20coordinate\x20must\x20be\x20normalized\x0a\x20\x20\x20\x20vec3\x20lonLatLev\x20=\x20texture(currentParticlesPosition,\x20v_textureCoordinates).rgb;\x0a\x20\x20\x20\x20vec3\x20speed\x20=\x20texture(currentParticlesSpeed,\x20v_textureCoordinates).rgb;\x0a\x0a\x20\x20\x20\x20updatePosition(lonLatLev,\x20speed);\x0a}\x0a','latRange','preRender','createRenderingPrimitives','context','15VYBsaf','cols','unbindEvent','autoClear','PrimitiveCollection','once','canvasHeight','redraw','reverse','maxParticles','source','windField','windData','width','getParticles','speed','_maxAge','blue','all','WindUtil','getUVByXY','refreshParticles','scene','dimension','isInExtent','segmentsDepth','lon','4078683NJqazQ','402555JbTGIR','colors','Geometry','_pointerEvents','resize','nextParticlesPosition','particlesNumber','CanvasWindLayer','65384SfuYIi','DepthFunction','off','getFullscreenQuad','xmin','_speedRate','_setOptionsHook','ymax','_calc_speedRate','layer','globalCompositeOperation','getPixelSize','mode','_calcUV','destination-in','update','VertexArray','hidden','createFramebuffer','requestAnimationFrame','_animateFrame','tlat','0px','BaseLayer','moveTo','GeometryAttribute','refreshTimer','createRenderingTextures','vertexArray','_onMouseDownEvent','lonRange','canvasWidth','setDate','getOwnPropertyDescriptor','ComponentDatatype','visibility','outputTexture','ColorRamp','BufferUsage','mouse_down','depthMask','data','screen','vmax','segments','bind','TextureMinificationFilter','willReadFrequently','clampToLatitudeRange','PI_OVER_TWO','STATIC_DRAW','3866412PZgmnL','color','SceneMode','framebuffer','getOptions','ClearCommand','attributeLocations','addPrimitives','getExtent','canvas','clientHeight','type','commandType','uniform\x20sampler2D\x20trailsColorTexture;\x0auniform\x20sampler2D\x20trailsDepthTexture;\x0a\x0ain\x20vec2\x20textureCoordinate;\x0a\x0avoid\x20main()\x20{\x0a\x20\x20\x20\x20vec4\x20trailsColor\x20=\x20texture(trailsColorTexture,\x20textureCoordinate);\x0a\x20\x20\x20\x20float\x20trailsDepth\x20=\x20texture(trailsDepthTexture,\x20textureCoordinate).r;\x0a\x20\x20\x20\x20float\x20globeDepth\x20=\x20czm_unpackDepth(texture(czm_globeDepthTexture,\x20textureCoordinate));\x0a\x0a\x20\x20\x20\x20if\x20(trailsDepth\x20<\x20globeDepth)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20out_FragColor\x20=\x20trailsColor;\x0a\x20\x20\x20\x20}\x20else\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20out_FragColor\x20=\x20vec4(0.0);\x0a\x20\x20\x20\x20}\x0a}\x0a','#ffffff','rawRenderState','style','Color','nextTrails'];_0x44b2=function(){return _0x2bf1cd;};return _0x44b2();}_0x4a45ed['__proto__']=null,_0x4a45ed['getU']=getU,_0x4a45ed['getV']=getV,_0x4a45ed['getSpeed']=getSpeed,_0x4a45ed['getDirection']=getDirection;var WindUtil=_0x4a45ed;const Cesium$6=mars3d__namespace['Cesium'];function _0x13e6(_0x1d6e0e,_0x349b5b){const _0x44b2c9=_0x44b2();return _0x13e6=function(_0x13e6f9,_0x56ce41){_0x13e6f9=_0x13e6f9-0x105;let _0x46a7a4=_0x44b2c9[_0x13e6f9];return _0x46a7a4;},_0x13e6(_0x1d6e0e,_0x349b5b);}class CustomPrimitive{constructor(_0x4da526){this['commandType']=_0x4da526['commandType'],this[_0x569e0e(0xeb,0x12d)]=_0x4da526['geometry'],this['attributeLocations']=_0x4da526['attributeLocations'],this[_0x569e0e(0x109,0x9a)]=_0x4da526[_0x67ea2(0x2d2,0x261)],this['uniformMap']=_0x4da526['uniformMap'];function _0x67ea2(_0x42a606,_0x576bfb){return _0x3f784e(_0x42a606,_0x576bfb- -0x219);}this[_0x569e0e(0x8f,0x8)]=_0x4da526['vertexShaderSource'],this['fragmentShaderSource']=_0x4da526[_0x67ea2(0x2c4,0x236)],this['rawRenderState']=_0x4da526['rawRenderState'],this[_0x67ea2(0x127,0x19e)]=_0x4da526['framebuffer'],this[_0x67ea2(0x197,0x18c)]=_0x4da526[_0x67ea2(0x14d,0x18c)],this[_0x569e0e(-0x11,-0x66)]=_0x4da526['autoClear']??![],this[_0x67ea2(0x1b1,0x220)]=_0x4da526[_0x569e0e(0xc8,0x143)],this['show']=!![],this[_0x569e0e(0x66,0x41)]=undefined;function _0x569e0e(_0x20ebdb,_0x14c93f){return _0x3f784e(_0x14c93f,_0x20ebdb- -0x371);}this['clearCommand']=undefined,this[_0x569e0e(-0x11,-0x6b)]&&(this['clearCommand']=new Cesium$6['ClearCommand']({'color':new Cesium$6[(_0x569e0e(0x54,0x57))](0x0,0x0,0x0,0x0),'depth':0x1,'framebuffer':this['framebuffer'],'pass':Cesium$6[_0x569e0e(0xf2,0x10c)]['OPAQUE']}));}[_0x471590(0x2ea,0x352)](_0x167cde){function _0x3d4798(_0x5d1504,_0x46aec5){return _0x3f784e(_0x5d1504,_0x46aec5- -0x5fa);}function _0x5652c4(_0x5d7a5a,_0xa4796d){return _0x471590(_0x5d7a5a- -0x4ff,_0xa4796d);}switch(this[_0x5652c4(-0x222,-0x29e)]){case _0x3d4798(-0x201,-0x19c):{const _0x293613=Cesium$6[_0x3d4798(-0x2a3,-0x269)][_0x5652c4(-0x1a5,-0x1c0)]({'context':_0x167cde,'geometry':this['geometry'],'attributeLocations':this[_0x3d4798(-0x21f,-0x240)],'bufferUsage':Cesium$6[_0x5652c4(-0x23b,-0x278)]['STATIC_DRAW']}),_0x220009={};_0x220009['context']=_0x167cde,_0x220009[_0x3d4798(-0x263,-0x240)]=this['attributeLocations'],_0x220009[_0x3d4798(-0x18e,-0x1fa)]=this['vertexShaderSource'],_0x220009['fragmentShaderSource']=this[_0x3d4798(-0x17f,-0x1ab)];const _0x51c71c=Cesium$6['ShaderProgram'][_0x5652c4(-0x179,-0x1d7)](_0x220009),_0x52b508=Cesium$6['RenderState']['fromCache'](this[_0x5652c4(-0x21f,-0x21c)]);return new Cesium$6[(_0x5652c4(-0x20d,-0x237))]({'primitiveType':this[_0x5652c4(-0x168,-0x1c0)],'shaderProgram':_0x51c71c,'vertexArray':_0x293613,'modelMatrix':Cesium$6[_0x5652c4(-0x202,-0x21b)]['IDENTITY'],'renderState':_0x52b508,'uniformMap':this['uniformMap'],'castShadows':![],'receiveShadows':![],'framebuffer':this['framebuffer'],'pass':Cesium$6[_0x3d4798(-0x1dd,-0x197)]['OPAQUE'],'pickOnly':!![],'owner':this});}case _0x3d4798(-0x203,-0x18e):{const _0x57f16b={};return _0x57f16b['owner']=this,_0x57f16b['fragmentShaderSource']=this['fragmentShaderSource'],_0x57f16b['uniformMap']=this[_0x3d4798(-0x268,-0x1dc)],_0x57f16b[_0x3d4798(-0x202,-0x255)]=this[_0x3d4798(-0x225,-0x255)],_0x57f16b['persists']=!![],new Cesium$6['ComputeCommand'](_0x57f16b);}}}['setGeometry'](_0x32159e,_0x5be2e1){this[_0x5d3485(-0xb5,-0x47)]=_0x5be2e1;const _0x3a8122=Cesium$6['VertexArray']['fromGeometry']({'context':_0x32159e,'geometry':this['geometry'],'attributeLocations':this['attributeLocations'],'bufferUsage':Cesium$6['BufferUsage']['STATIC_DRAW']});function _0x5d3485(_0x1bd6a0,_0x3aba66){return _0x471590(_0x3aba66- -0x3c0,_0x1bd6a0);}function _0x51a140(_0x3915cc,_0x105292){return _0x471590(_0x3915cc- -0x1f6,_0x105292);}this[_0x5d3485(-0x109,-0xcc)][_0x51a140(0xc4,0x38)]=_0x3a8122;}['update'](_0x25fe88){if(!this['show'])return;if(_0x25fe88['mode']!==Cesium$6[_0x404809(0x40d,0x48c)]['SCENE3D'])return;!Cesium$6['defined'](this['commandToExecute'])&&(this[_0x36dde1(0x246,0x276)]=this[_0x36dde1(0x2ad,0x26c)](_0x25fe88['context']));Cesium$6['defined'](this['preExecute'])&&this['preExecute']();function _0x404809(_0x1309a0,_0x5b13ff){return _0x471590(_0x5b13ff-0x1b9,_0x1309a0);}Cesium$6[_0x404809(0x530,0x4ed)](this[_0x404809(0x4a5,0x4c0)])&&_0x25fe88['commandList']['push'](this[_0x36dde1(0x2f9,0x289)]);function _0x36dde1(_0x5211cd,_0x449fc5){return _0x471590(_0x449fc5- -0x7e,_0x5211cd);}_0x25fe88[_0x36dde1(0x2b0,0x2bc)]['push'](this['commandToExecute']);}['isDestroyed'](){return![];}[_0x471590(0x33d,0x2fe)](){if(this['clearCommand']){var _0x1794cc,_0xbbe369;(_0x1794cc=this[_0x277829(0x216,0x29d)])!==null&&_0x1794cc!==void 0x0&&_0x1794cc[_0x277829(0x1c9,0x201)]&&this[_0x1a0fc9(-0x1d3,-0x15f)]['vertexArray'][_0x1a0fc9(-0x188,-0x129)](),(_0xbbe369=this[_0x277829(0x216,0x1c3)])!==null&&_0xbbe369!==void 0x0&&_0xbbe369['shaderProgram']&&this[_0x1a0fc9(-0x129,-0x15f)]['shaderProgram']['destroy'](),delete this['clearCommand'];}function _0x1a0fc9(_0x344e8e,_0x29b6f7){return _0x471590(_0x29b6f7- -0x466,_0x344e8e);}function _0x277829(_0x5e2b2e,_0x58e31b){return _0x471590(_0x5e2b2e- -0xf1,_0x58e31b);}return this[_0x277829(0x203,0x273)]&&(this[_0x1a0fc9(-0x1ce,-0x172)][_0x277829(0x1c9,0x15d)]&&this[_0x1a0fc9(-0x19a,-0x172)]['vertexArray']['destroy'](),this['commandToExecute']['shaderProgram']&&this[_0x1a0fc9(-0x18a,-0x172)]['shaderProgram'][_0x1a0fc9(-0x128,-0x129)](),delete this['commandToExecute']),Cesium$6['destroyObject'](this);}}const Cesium$5=mars3d__namespace[_0x3f784e(0x3f5,0x402)],Util=(function(){const _0x5b94f5=function(){function _0x14170e(_0x14434f,_0x38cb99){return _0x13e6(_0x14434f- -0x2e2,_0x38cb99);}function _0x73e6dd(_0x5b7e2f,_0x269242){return _0x13e6(_0x269242- -0x36,_0x5b7e2f);}const _0x27103a=new Cesium$5[(_0x73e6dd(0x91,0xef))]({'attributes':new Cesium$5['GeometryAttributes']({'position':new Cesium$5['GeometryAttribute']({'componentDatatype':Cesium$5[_0x73e6dd(0x132,0x117)]['FLOAT'],'componentsPerAttribute':0x3,'values':new Float32Array([-0x1,-0x1,0x0,0x1,-0x1,0x0,0x1,0x1,0x0,-0x1,0x1,0x0])}),'st':new Cesium$5['GeometryAttribute']({'componentDatatype':Cesium$5['ComponentDatatype']['FLOAT'],'componentsPerAttribute':0x2,'values':new Float32Array([0x0,0x0,0x1,0x0,0x1,0x1,0x0,0x1])})}),'indices':new Uint32Array([0x3,0x2,0x0,0x0,0x2,0x1])});return _0x27103a;},_0x4f0a20=function(_0x1f2c7b,_0x410645){if(Cesium$5[_0x59a884(0x5a,-0x24)](_0x410645)){const _0x30db31={};_0x30db31['arrayBufferView']=_0x410645,_0x1f2c7b[_0x9b0259(-0x172,-0x141)]=_0x30db31;}const _0x1b5cbd=new Cesium$5[(_0x59a884(-0x93,-0x61))](_0x1f2c7b);function _0x59a884(_0x39d550,_0x2931de){return _0x13e6(_0x2931de- -0x1e5,_0x39d550);}function _0x9b0259(_0x3b7632,_0x2b3441){return _0x13e6(_0x2b3441- -0x252,_0x3b7632);}return _0x1b5cbd;},_0x49fca6=function(_0x12d2f9,_0x5117d9,_0x3ff8bb){const _0x1250de={};_0x1250de['context']=_0x12d2f9;function _0x10f5e1(_0x5644e3,_0x195f71){return _0x13e6(_0x195f71- -0x222,_0x5644e3);}_0x1250de[_0x2b5e75(0x132,0x1b7)]=[_0x5117d9],_0x1250de[_0x2b5e75(0x16a,0x180)]=_0x3ff8bb;const _0x46fcb3=new Cesium$5['Framebuffer'](_0x1250de);function _0x2b5e75(_0x8bed77,_0x33261b){return _0x13e6(_0x33261b- -0x32,_0x8bed77);}return _0x46fcb3;},_0x5503b7=function(_0x28334a){const _0x451dc5=!![];function _0x386b9b(_0x1aac8f,_0x185d3f){return _0x13e6(_0x1aac8f- -0x23d,_0x185d3f);}const _0x10a4a8=![],_0x15cc1c={};_0x15cc1c['viewport']=_0x28334a[_0x386b9b(-0x28,-0x82)],_0x15cc1c['depthTest']=_0x28334a['depthTest'],_0x15cc1c['depthMask']=_0x28334a[_0x1ccac3(-0xd8,-0x14c)],_0x15cc1c['blending']=_0x28334a['blending'];const _0x1774e5=_0x15cc1c;function _0x1ccac3(_0x11ab3c,_0x4497e1){return _0x13e6(_0x4497e1- -0x29f,_0x11ab3c);}const _0x97f03f=Cesium$5[_0x1ccac3(-0x97,-0xda)][_0x1ccac3(-0x11d,-0x106)](_0x451dc5,_0x10a4a8,_0x1774e5);return _0x97f03f;},_0x4a93cc=function(_0x269f29){const _0x158d5c={},_0x5e958c=Cesium$5[_0x1b7fb7(0xe8,0x90)]['mod'](_0x269f29[_0x1b7fb7(0x80,0x96)],Cesium$5[_0x11277d(0x119,0xd2)]['TWO_PI']),_0x2c3f73=Cesium$5[_0x11277d(0x84,0xd2)][_0x11277d(0xa4,0xa4)](_0x269f29['east'],Cesium$5[_0x1b7fb7(0x2e,0x90)]['TWO_PI']),_0x5f27b4=_0x269f29[_0x1b7fb7(0x3,-0x35)];let _0x2acb88,_0x4c3b79;_0x5f27b4>Cesium$5['Math'][_0x1b7fb7(0x26,0x67)]?(_0x2acb88=0x0,_0x4c3b79=Cesium$5['Math']['TWO_PI']):_0x2c3f73-_0x5e958c<_0x5f27b4?(_0x2acb88=_0x5e958c,_0x4c3b79=_0x5e958c+_0x5f27b4):(_0x2acb88=_0x5e958c,_0x4c3b79=_0x2c3f73);_0x158d5c['lon']={'min':Cesium$5['Math']['toDegrees'](_0x2acb88),'max':Cesium$5[_0x1b7fb7(0x9a,0x90)]['toDegrees'](_0x4c3b79)};const _0x20289c=_0x269f29['south'];function _0x1b7fb7(_0x127447,_0x2c44e6){return _0x13e6(_0x2c44e6- -0x149,_0x127447);}const _0x216c86=_0x269f29['north'];function _0x11277d(_0x423d7e,_0x50510c){return _0x13e6(_0x50510c- -0x107,_0x423d7e);}const _0xfc00c7=_0x269f29['height'],_0x365841=_0xfc00c7>Cesium$5['Math']['PI']/0xc?_0xfc00c7/0x2:0x0;let _0x39e77b=Cesium$5[_0x1b7fb7(0x5,0x90)][_0x1b7fb7(-0xf,0x12)](_0x20289c-_0x365841),_0x3f9b91=Cesium$5[_0x11277d(0xf6,0xd2)]['clampToLatitudeRange'](_0x216c86+_0x365841);return _0x39e77b<-Cesium$5['Math']['PI_OVER_THREE']&&(_0x39e77b=-Cesium$5[_0x11277d(0x153,0xd2)][_0x1b7fb7(-0x1c,0x13)]),_0x3f9b91>Cesium$5[_0x1b7fb7(0x3e,0x90)]['PI_OVER_THREE']&&(_0x3f9b91=Cesium$5['Math']['PI_OVER_TWO']),_0x158d5c[_0x1b7fb7(0xec,0xd9)]={'min':Cesium$5[_0x1b7fb7(0xff,0x90)]['toDegrees'](_0x39e77b),'max':Cesium$5['Math']['toDegrees'](_0x3f9b91)},_0x158d5c;},_0x20704d={};_0x20704d['getFullscreenQuad']=_0x5b94f5;function _0x7d04ea(_0xa197f3,_0x25a55c){return _0x471590(_0xa197f3- -0x1df,_0x25a55c);}_0x20704d['createTexture']=_0x4f0a20,_0x20704d[_0x7d04ea(0xd1,0x65)]=_0x49fca6,_0x20704d[_0x7d04ea(0x167,0x13c)]=_0x5503b7;function _0x538a8c(_0x248170,_0x2aa6e6){return _0x471590(_0x248170- -0xfd,_0x2aa6e6);}return _0x20704d['viewRectangleToLonLatRange']=_0x4a93cc,_0x20704d;}());var segmentDraw_vert='in\x20vec2\x20st;\x0a//\x20it\x20is\x20not\x20normal\x20itself,\x20but\x20used\x20to\x20control\x20normal\x0ain\x20vec3\x20normal;\x20//\x20(point\x20to\x20use,\x20offset\x20sign,\x20not\x20used\x20component)\x0a\x0auniform\x20sampler2D\x20currentParticlesPosition;\x0auniform\x20sampler2D\x20postProcessingPosition;\x0auniform\x20sampler2D\x20postProcessingSpeed;\x0a\x0auniform\x20float\x20particleHeight;\x0a\x0auniform\x20float\x20aspect;\x0auniform\x20float\x20pixelSize;\x0auniform\x20float\x20lineWidth;\x0a\x0aout\x20float\x20speedNormalization;\x0a\x0avec3\x20convertCoordinate(vec3\x20lonLatLev)\x20{\x0a\x20\x20\x20\x20//\x20WGS84\x20(lon,\x20lat,\x20lev)\x20->\x20ECEF\x20(x,\x20y,\x20z)\x0a\x20\x20\x20\x20//\x20see\x20https://en.wikipedia.org/wiki/Geographic_coordinate_conversion#From_geodetic_to_ECEF_coordinates\x20for\x20detail\x0a\x0a\x20\x20\x20\x20//\x20WGS\x2084\x20geometric\x20constants\x0a\x20\x20\x20\x20float\x20a\x20=\x206378137.0;\x20//\x20Semi-major\x20axis\x0a\x20\x20\x20\x20float\x20b\x20=\x206356752.3142;\x20//\x20Semi-minor\x20axis\x0a\x20\x20\x20\x20float\x20e2\x20=\x206.69437999014e-3;\x20//\x20First\x20eccentricity\x20squared\x0a\x0a\x20\x20\x20\x20float\x20latitude\x20=\x20radians(lonLatLev.y);\x0a\x20\x20\x20\x20float\x20longitude\x20=\x20radians(lonLatLev.x);\x0a\x0a\x20\x20\x20\x20float\x20cosLat\x20=\x20cos(latitude);\x0a\x20\x20\x20\x20float\x20sinLat\x20=\x20sin(latitude);\x0a\x20\x20\x20\x20float\x20cosLon\x20=\x20cos(longitude);\x0a\x20\x20\x20\x20float\x20sinLon\x20=\x20sin(longitude);\x0a\x0a\x20\x20\x20\x20float\x20N_Phi\x20=\x20a\x20/\x20sqrt(1.0\x20-\x20e2\x20*\x20sinLat\x20*\x20sinLat);\x0a\x20\x20\x20\x20float\x20h\x20=\x20particleHeight;\x20//\x20it\x20should\x20be\x20high\x20enough\x20otherwise\x20the\x20particle\x20may\x20not\x20pass\x20the\x20terrain\x20depth\x20test\x0a\x0a\x20\x20\x20\x20vec3\x20cartesian\x20=\x20vec3(0.0);\x0a\x20\x20\x20\x20cartesian.x\x20=\x20(N_Phi\x20+\x20h)\x20*\x20cosLat\x20*\x20cosLon;\x0a\x20\x20\x20\x20cartesian.y\x20=\x20(N_Phi\x20+\x20h)\x20*\x20cosLat\x20*\x20sinLon;\x0a\x20\x20\x20\x20cartesian.z\x20=\x20((b\x20*\x20b)\x20/\x20(a\x20*\x20a)\x20*\x20N_Phi\x20+\x20h)\x20*\x20sinLat;\x0a\x20\x20\x20\x20return\x20cartesian;\x0a}\x0a\x0avec4\x20calcProjectedCoordinate(vec3\x20lonLatLev)\x20{\x0a\x20\x20\x20\x20//\x20the\x20range\x20of\x20longitude\x20in\x20Cesium\x20is\x20[-180,\x20180]\x20but\x20the\x20range\x20of\x20longitude\x20in\x20the\x20NetCDF\x20file\x20is\x20[0,\x20360]\x0a\x20\x20\x20\x20//\x20[0,\x20180]\x20is\x20corresponding\x20to\x20[0,\x20180]\x20and\x20[180,\x20360]\x20is\x20corresponding\x20to\x20[-180,\x200]\x0a\x20\x20\x20\x20lonLatLev.x\x20=\x20mod(lonLatLev.x\x20+\x20180.0,\x20360.0)\x20-\x20180.0;\x0a\x20\x20\x20\x20vec3\x20particlePosition\x20=\x20convertCoordinate(lonLatLev);\x0a\x20\x20\x20\x20vec4\x20projectedCoordinate\x20=\x20czm_modelViewProjection\x20*\x20vec4(particlePosition,\x201.0);\x0a\x20\x20\x20\x20return\x20projectedCoordinate;\x0a}\x0a\x0avec4\x20calcOffset(vec4\x20currentProjectedCoordinate,\x20vec4\x20nextProjectedCoordinate,\x20float\x20offsetSign)\x20{\x0a\x20\x20\x20\x20vec2\x20aspectVec2\x20=\x20vec2(aspect,\x201.0);\x0a\x20\x20\x20\x20vec2\x20currentXY\x20=\x20(currentProjectedCoordinate.xy\x20/\x20currentProjectedCoordinate.w)\x20*\x20aspectVec2;\x0a\x20\x20\x20\x20vec2\x20nextXY\x20=\x20(nextProjectedCoordinate.xy\x20/\x20nextProjectedCoordinate.w)\x20*\x20aspectVec2;\x0a\x0a\x20\x20\x20\x20float\x20offsetLength\x20=\x20lineWidth\x20/\x202.0;\x0a\x20\x20\x20\x20vec2\x20direction\x20=\x20normalize(nextXY\x20-\x20currentXY);\x0a\x20\x20\x20\x20vec2\x20normalVector\x20=\x20vec2(-direction.y,\x20direction.x);\x0a\x20\x20\x20\x20normalVector.x\x20=\x20normalVector.x\x20/\x20aspect;\x0a\x20\x20\x20\x20normalVector\x20=\x20offsetLength\x20*\x20normalVector;\x0a\x0a\x20\x20\x20\x20vec4\x20offset\x20=\x20vec4(offsetSign\x20*\x20normalVector,\x200.0,\x200.0);\x0a\x20\x20\x20\x20return\x20offset;\x0a}\x0a\x0avoid\x20main()\x20{\x0a\x20\x20\x20\x20vec2\x20particleIndex\x20=\x20st;\x0a\x0a\x20\x20\x20\x20vec3\x20currentPosition\x20=\x20texture(currentParticlesPosition,\x20particleIndex).rgb;\x0a\x20\x20\x20\x20vec4\x20nextPosition\x20=\x20texture(postProcessingPosition,\x20particleIndex);\x0a\x0a\x20\x20\x20\x20vec4\x20currentProjectedCoordinate\x20=\x20vec4(0.0);\x0a\x20\x20\x20\x20vec4\x20nextProjectedCoordinate\x20=\x20vec4(0.0);\x0a\x20\x20\x20\x20if\x20(nextPosition.w\x20>\x200.0)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20currentProjectedCoordinate\x20=\x20calcProjectedCoordinate(currentPosition);\x0a\x20\x20\x20\x20\x20\x20\x20\x20nextProjectedCoordinate\x20=\x20calcProjectedCoordinate(currentPosition);\x0a\x20\x20\x20\x20}\x20else\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20currentProjectedCoordinate\x20=\x20calcProjectedCoordinate(currentPosition);\x0a\x20\x20\x20\x20\x20\x20\x20\x20nextProjectedCoordinate\x20=\x20calcProjectedCoordinate(nextPosition.xyz);\x0a\x20\x20\x20\x20}\x0a\x0a\x20\x20\x20\x20float\x20pointToUse\x20=\x20normal.x;\x20//\x20-1\x20is\x20currentProjectedCoordinate\x20and\x20+1\x20is\x20nextProjectedCoordinate\x0a\x20\x20\x20\x20float\x20offsetSign\x20=\x20normal.y;\x0a\x0a\x20\x20\x20\x20vec4\x20offset\x20=\x20pixelSize\x20*\x20calcOffset(currentProjectedCoordinate,\x20nextProjectedCoordinate,\x20offsetSign);\x0a\x20\x20\x20\x20if\x20(pointToUse\x20<\x200.0)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20gl_Position\x20=\x20currentProjectedCoordinate\x20+\x20offset;\x0a\x20\x20\x20\x20}\x20else\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20gl_Position\x20=\x20nextProjectedCoordinate\x20+\x20offset;\x0a\x20\x20\x20\x20}\x0a\x0a\x20\x20\x20\x20speedNormalization\x20=\x20texture(postProcessingSpeed,\x20particleIndex).a;\x0a}\x0a',segmentDraw_frag=_0x471590(0x302,0x28f),fullscreen_vert='in\x20vec3\x20position;\x0ain\x20vec2\x20st;\x0a\x0aout\x20vec2\x20textureCoordinate;\x0a\x0avoid\x20main()\x20{\x0a\x20\x20\x20\x20textureCoordinate\x20=\x20st;\x0a\x20\x20\x20\x20gl_Position\x20=\x20vec4(position,\x201.0);\x0a}\x0a',trailDraw_frag='uniform\x20sampler2D\x20segmentsColorTexture;\x0auniform\x20sampler2D\x20segmentsDepthTexture;\x0a\x0auniform\x20sampler2D\x20currentTrailsColor;\x0auniform\x20sampler2D\x20trailsDepthTexture;\x0a\x0auniform\x20float\x20fadeOpacity;\x0a\x0ain\x20vec2\x20textureCoordinate;\x0a\x0avoid\x20main()\x20{\x0a\x20\x20\x20\x20vec4\x20pointsColor\x20=\x20texture(segmentsColorTexture,\x20textureCoordinate);\x0a\x20\x20\x20\x20vec4\x20trailsColor\x20=\x20texture(currentTrailsColor,\x20textureCoordinate);\x0a\x0a\x20\x20\x20\x20trailsColor\x20=\x20floor(fadeOpacity\x20*\x20255.0\x20*\x20trailsColor)\x20/\x20255.0;\x20//\x20make\x20sure\x20the\x20trailsColor\x20will\x20be\x20strictly\x20decreased\x0a\x0a\x20\x20\x20\x20float\x20pointsDepth\x20=\x20texture(segmentsDepthTexture,\x20textureCoordinate).r;\x0a\x20\x20\x20\x20float\x20trailsDepth\x20=\x20texture(trailsDepthTexture,\x20textureCoordinate).r;\x0a\x20\x20\x20\x20float\x20globeDepth\x20=\x20czm_unpackDepth(texture(czm_globeDepthTexture,\x20textureCoordinate));\x0a\x0a\x20\x20\x20\x20out_FragColor\x20=\x20vec4(0.0);\x0a\x20\x20\x20\x20if\x20(pointsDepth\x20<\x20globeDepth)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20out_FragColor\x20=\x20out_FragColor\x20+\x20pointsColor;\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20if\x20(trailsDepth\x20<\x20globeDepth)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20out_FragColor\x20=\x20out_FragColor\x20+\x20trailsColor;\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20gl_FragDepth\x20=\x20min(pointsDepth,\x20trailsDepth);\x0a}\x0a',screenDraw_frag=_0x471590(0x2de,0x328);const Cesium$4=mars3d__namespace['Cesium'];class ParticlesRendering{constructor(_0x1eab64,_0xdd9c4b,_0x432998,_0xf30e47,_0x10b672){this[_0x5a2819(0x348,0x375)](_0x1eab64,_0xdd9c4b,_0x432998[_0x5a2819(0x311,0x353)]),this['createRenderingFramebuffers'](_0x1eab64);function _0x50d0a9(_0x57d1a3,_0x598a9f){return _0x3f784e(_0x57d1a3,_0x598a9f- -0x10a);}function _0x5a2819(_0x2b40b9,_0x2480f4){return _0x471590(_0x2480f4-0xbc,_0x2b40b9);}this[_0x50d0a9(0x253,0x251)](_0x1eab64,_0x432998,_0xf30e47,_0x10b672);}[_0x3f784e(0x31b,0x39c)](_0x2c387b,_0x3af5ce,_0x218dde){const _0x42df45={};_0x42df45[_0x3fc59f(0x4e1,0x483)]=_0x2c387b,_0x42df45['width']=_0x2c387b[_0x3fc59f(0x616,0x596)],_0x42df45['height']=_0x2c387b[_0x3fc59f(0x53b,0x56c)],_0x42df45['pixelFormat']=Cesium$4['PixelFormat'][_0x1504f5(0x41f,0x414)],_0x42df45['pixelDatatype']=Cesium$4['PixelDatatype']['UNSIGNED_BYTE'];const _0xbbbc68=_0x42df45,_0x1c3161={};_0x1c3161[_0x1504f5(0x33f,0x3a2)]=_0x2c387b,_0x1c3161[_0x3fc59f(0x51a,0x491)]=_0x2c387b['drawingBufferWidth'],_0x1c3161[_0x3fc59f(0x590,0x54c)]=_0x2c387b[_0x3fc59f(0x5fd,0x56c)],_0x1c3161[_0x3fc59f(0x5a1,0x575)]=Cesium$4['PixelFormat']['DEPTH_COMPONENT'],_0x1c3161['pixelDatatype']=Cesium$4[_0x1504f5(0x3ef,0x454)]['UNSIGNED_INT'];const _0x5aff41=_0x1c3161,_0x32124b=_0x218dde[_0x3fc59f(0x5a8,0x548)],_0x3ae030=new Float32Array(_0x32124b*0x3);function _0x3fc59f(_0x165b5a,_0x5c9c5e){return _0x3f784e(_0x165b5a,_0x5c9c5e-0x127);}for(let _0x4295e9=0x0;_0x4295e9<_0x32124b;_0x4295e9++){const _0x598071=Cesium$4['Color']['fromCssColorString'](_0x218dde[_0x4295e9]);_0x3ae030[0x3*_0x4295e9]=_0x598071['red'],_0x3ae030[0x3*_0x4295e9+0x1]=_0x598071['green'],_0x3ae030[0x3*_0x4295e9+0x2]=_0x598071[_0x3fc59f(0x4d6,0x495)];}function _0x1504f5(_0x303fb8,_0x502b02){return _0x471590(_0x502b02-0x129,_0x303fb8);}const _0x152de5={'context':_0x2c387b,'width':_0x32124b,'height':0x1,'pixelFormat':Cesium$4[_0x3fc59f(0x511,0x4fa)][_0x1504f5(0x4c9,0x44a)],'pixelDatatype':Cesium$4['PixelDatatype']['FLOAT'],'sampler':new Cesium$4['Sampler']({'minificationFilter':Cesium$4['TextureMinificationFilter']['LINEAR'],'magnificationFilter':Cesium$4['TextureMagnificationFilter']['LINEAR']})};this[_0x1504f5(0x3c1,0x41e)]={'segmentsColor':Util[_0x3fc59f(0x571,0x591)](_0xbbbc68),'segmentsDepth':Util['createTexture'](_0x5aff41),'currentTrailsColor':Util[_0x1504f5(0x47f,0x4b0)](_0xbbbc68),'currentTrailsDepth':Util['createTexture'](_0x5aff41),'nextTrailsColor':Util['createTexture'](_0xbbbc68),'nextTrailsDepth':Util['createTexture'](_0x5aff41),'colorTable':Util[_0x1504f5(0x435,0x4b0)](_0x152de5,_0x3ae030)};}['createRenderingFramebuffers'](_0x222098){function _0x7248b0(_0x3f313d,_0x5c9161){return _0x471590(_0x3f313d- -0xe6,_0x5c9161);}function _0xaa4846(_0xc8d4f6,_0x488e7b){return _0x471590(_0xc8d4f6-0xf8,_0x488e7b);}this[_0xaa4846(0x406,0x407)]={'segments':Util[_0x7248b0(0x1ca,0x21d)](_0x222098,this['textures']['segmentsColor'],this[_0x7248b0(0x20f,0x266)]['segmentsDepth']),'currentTrails':Util[_0x7248b0(0x1ca,0x20f)](_0x222098,this['textures']['currentTrailsColor'],this['textures']['currentTrailsDepth']),'nextTrails':Util['createFramebuffer'](_0x222098,this['textures'][_0xaa4846(0x485,0x4d0)],this['textures'][_0x7248b0(0x282,0x282)])};}['createSegmentsGeometry'](_0x45273b){const _0x232e25=0x4;function _0x238b75(_0x76ccd9,_0x5e1277){return _0x471590(_0x76ccd9- -0x130,_0x5e1277);}let _0x5a87db=[];for(let _0x1d86b3=0x0;_0x1d86b3<_0x45273b[_0x8d509a(-0x104,-0x148)];_0x1d86b3++){for(let _0x2ee8bf=0x0;_0x2ee8bf<_0x45273b['particlesTextureSize'];_0x2ee8bf++){for(let _0x1f4d79=0x0;_0x1f4d79<_0x232e25;_0x1f4d79++){_0x5a87db['push'](_0x1d86b3/_0x45273b['particlesTextureSize']),_0x5a87db['push'](_0x2ee8bf/_0x45273b[_0x8d509a(-0x15f,-0x148)]);}}}_0x5a87db=new Float32Array(_0x5a87db);let _0x50927=[];const _0xbff510=[-0x1,0x1];function _0x8d509a(_0x2a43fb,_0x3c2d52){return _0x471590(_0x3c2d52- -0x484,_0x2a43fb);}const _0x22d540=[-0x1,0x1];for(let _0x47667d=0x0;_0x47667d<_0x45273b['maxParticles'];_0x47667d++){for(let _0xf22672=0x0;_0xf22672<_0x232e25/0x2;_0xf22672++){for(let _0x2c2b7e=0x0;_0x2c2b7e<_0x232e25/0x2;_0x2c2b7e++){_0x50927[_0x238b75(0x239,0x1fa)](_0xbff510[_0xf22672]),_0x50927[_0x8d509a(-0xd8,-0x11b)](_0x22d540[_0x2c2b7e]),_0x50927['push'](0x0);}}}_0x50927=new Float32Array(_0x50927);const _0x190738=0x6*_0x45273b['maxParticles'],_0x18d7a1=new Uint32Array(_0x190738);for(let _0x1b4278=0x0,_0x4c7909=0x0,_0x46fcab=0x0;_0x1b4278<_0x45273b['maxParticles'];_0x1b4278++){_0x18d7a1[_0x4c7909++]=_0x46fcab+0x0,_0x18d7a1[_0x4c7909++]=_0x46fcab+0x1,_0x18d7a1[_0x4c7909++]=_0x46fcab+0x2,_0x18d7a1[_0x4c7909++]=_0x46fcab+0x2,_0x18d7a1[_0x4c7909++]=_0x46fcab+0x1,_0x18d7a1[_0x4c7909++]=_0x46fcab+0x3,_0x46fcab+=0x4;}const _0x411b52=new Cesium$4[(_0x238b75(0x168,0x1e0))]({'attributes':new Cesium$4[(_0x8d509a(-0x192,-0x185))]({'st':new Cesium$4['GeometryAttribute']({'componentDatatype':Cesium$4[_0x8d509a(-0x208,-0x1c4)]['FLOAT'],'componentsPerAttribute':0x2,'values':_0x5a87db}),'normal':new Cesium$4[(_0x8d509a(-0x226,-0x1cd))]({'componentDatatype':Cesium$4[_0x8d509a(-0x1cd,-0x1c4)]['FLOAT'],'componentsPerAttribute':0x3,'values':_0x50927})}),'indices':_0x18d7a1});return _0x411b52;}['createRenderingPrimitives'](_0x1a0e3c,_0x3c7959,_0x540602,_0xf0ea7e){const _0x5ae209=this,_0x4ea6d5={};_0x4ea6d5['st']=0x0,_0x4ea6d5[_0x2d9cdc(0x82,0xa2)]=0x1;const _0x4dc0cc={};_0x4dc0cc['sources']=[segmentDraw_vert];const _0xe58d15={};_0xe58d15['sources']=[segmentDraw_frag];function _0x2d9cdc(_0x2697f7,_0x1dad26){return _0x3f784e(_0x2697f7,_0x1dad26- -0x3be);}const _0x17bc2c={};_0x17bc2c['enabled']=!![];const _0x3909c9={};_0x3909c9['viewport']=undefined,_0x3909c9['depthTest']=_0x17bc2c,_0x3909c9['depthMask']=!![];const _0x44b141={};_0x44b141['position']=0x0,_0x44b141['st']=0x1;const _0x48e9f4={};_0x48e9f4['defines']=['DISABLE_GL_POSITION_LOG_DEPTH'],_0x48e9f4['sources']=[fullscreen_vert];function _0x41af01(_0x373833,_0x3d3670){return _0x471590(_0x373833-0x12c,_0x3d3670);}const _0x2476d1={};_0x2476d1['defines']=['DISABLE_LOG_DEPTH_FRAGMENT_WRITE'],_0x2476d1[_0x41af01(0x436,0x4c6)]=[trailDraw_frag];const _0x5ccb69={};_0x5ccb69[_0x41af01(0x46c,0x3ea)]=0x0,_0x5ccb69['st']=0x1;const _0x1b74b8={};_0x1b74b8['defines']=['DISABLE_GL_POSITION_LOG_DEPTH'],_0x1b74b8['sources']=[fullscreen_vert];const _0x329416={};_0x329416['defines']=['DISABLE_LOG_DEPTH_FRAGMENT_WRITE'],_0x329416['sources']=[screenDraw_frag];const _0x58871c={};_0x58871c['enabled']=![];const _0x251d02={};_0x251d02['enabled']=!![],this['primitives']={'segments':new CustomPrimitive({'commandType':_0x2d9cdc(0x117,0xa0),'attributeLocations':_0x4ea6d5,'geometry':this[_0x41af01(0x439,0x3bb)](_0x3c7959),'primitiveType':Cesium$4[_0x2d9cdc(-0x28,0x1e)][_0x2d9cdc(0x89,0xd)],'uniformMap':{'currentParticlesPosition':function(){function _0x3af1e1(_0x526962,_0x32d336){return _0x41af01(_0x526962- -0x3db,_0x32d336);}return _0xf0ea7e['particlesTextures'][_0x3af1e1(0x80,0x99)];},'postProcessingPosition':function(){return _0xf0ea7e['particlesTextures']['postProcessingPosition'];},'postProcessingSpeed':function(){return _0xf0ea7e['particlesTextures']['postProcessingSpeed'];},'colorTable':function(){return _0x5ae209['textures']['colorTable'];},'aspect':function(){function _0x51c925(_0x2a11fd,_0x461765){return _0x41af01(_0x461765- -0x3e9,_0x2a11fd);}return _0x1a0e3c[_0x51c925(0x95,0xcf)]/_0x1a0e3c['drawingBufferHeight'];},'pixelSize':function(){function _0x4bc898(_0x49b663,_0x1df032){return _0x2d9cdc(_0x1df032,_0x49b663-0x6e);}return _0x540602[_0x4bc898(0x112,0xc8)];},'lineWidth':function(){return _0x3c7959['lineWidth'];},'particleHeight':function(){function _0x109117(_0x2baf2f,_0xa03ff8){return _0x41af01(_0x2baf2f- -0x197,_0xa03ff8);}return _0x3c7959[_0x109117(0x31f,0x30b)];}},'vertexShaderSource':new Cesium$4[(_0x41af01(0x483,0x484))](_0x4dc0cc),'fragmentShaderSource':new Cesium$4['ShaderSource'](_0xe58d15),'rawRenderState':Util[_0x2d9cdc(0x64,0x6b)](_0x3909c9),'framebuffer':this['framebuffers']['segments'],'autoClear':!![]}),'trails':new CustomPrimitive({'commandType':'Draw','attributeLocations':_0x44b141,'geometry':Util[_0x41af01(0x3cd,0x3f4)](),'primitiveType':Cesium$4[_0x2d9cdc(-0x5a,0x1e)]['TRIANGLES'],'uniformMap':{'segmentsColorTexture':function(){function _0x292283(_0x5f46df,_0x242ce7){return _0x2d9cdc(_0x242ce7,_0x5f46df-0x17);}return _0x5ae209[_0x292283(0x31,0x24)]['segmentsColor'];},'segmentsDepthTexture':function(){function _0x348e9d(_0x5acec2,_0x44e4a4){return _0x2d9cdc(_0x5acec2,_0x44e4a4-0x4bb);}return _0x5ae209['textures'][_0x348e9d(0x49e,0x473)];},'currentTrailsColor':function(){return _0x5ae209['framebuffers']['currentTrails']['getColorTexture'](0x0);},'trailsDepthTexture':function(){function _0x1747ee(_0x24b980,_0x3d0a26){return _0x2d9cdc(_0x24b980,_0x3d0a26- -0xd5);}function _0x3202b1(_0x46ea0,_0xce24e){return _0x2d9cdc(_0xce24e,_0x46ea0- -0x1bf);}return _0x5ae209[_0x1747ee(-0x87,-0xa2)][_0x1747ee(-0x96,-0x3f)]['depthTexture'];},'fadeOpacity':function(){return _0x3c7959['fadeOpacity'];}},'vertexShaderSource':new Cesium$4['ShaderSource'](_0x48e9f4),'fragmentShaderSource':new Cesium$4['ShaderSource'](_0x2476d1),'rawRenderState':Util[_0x2d9cdc(0xe1,0x6b)]({'viewport':undefined,'depthTest':{'enabled':!![],'func':Cesium$4[_0x41af01(0x3cb,0x417)]['ALWAYS']},'depthMask':!![]}),'framebuffer':this['framebuffers'][_0x41af01(0x40f,0x3f5)],'autoClear':!![],'preExecute':function(){function _0x2b097e(_0x168c02,_0x1a257f){return _0x41af01(_0x168c02- -0x127,_0x1a257f);}const _0x4a435c=_0x5ae209['framebuffers'][_0xcf1748(0x18c,0x134)];_0x5ae209['framebuffers'][_0x2b097e(0x376,0x3f3)]=_0x5ae209['framebuffers'][_0x2b097e(0x2e8,0x359)],_0x5ae209['framebuffers']['nextTrails']=_0x4a435c,_0x5ae209[_0xcf1748(0xb4,0x12a)][_0x2b097e(0x33c,0x2e8)]['commandToExecute']['framebuffer']=_0x5ae209[_0x2b097e(0x313,0x2ba)]['nextTrails'];function _0xcf1748(_0x367a79,_0x19bb04){return _0x2d9cdc(_0x367a79,_0x19bb04-0x9e);}_0x5ae209['primitives']['trails']['clearCommand']['framebuffer']=_0x5ae209['framebuffers'][_0x2b097e(0x2e8,0x293)];}}),'screen':new CustomPrimitive({'commandType':_0x41af01(0x4a7,0x44c),'attributeLocations':_0x5ccb69,'geometry':Util['getFullscreenQuad'](),'primitiveType':Cesium$4[_0x41af01(0x425,0x44b)][_0x41af01(0x414,0x40a)],'uniformMap':{'trailsColorTexture':function(){return _0x5ae209['framebuffers']['nextTrails']['getColorTexture'](0x0);},'trailsDepthTexture':function(){function _0x54a2d7(_0x22b4ed,_0x1df944){return _0x2d9cdc(_0x1df944,_0x22b4ed-0x51c);}function _0x8a2f9f(_0x57069a,_0x3aebe9){return _0x2d9cdc(_0x3aebe9,_0x57069a- -0xf0);}return _0x5ae209['framebuffers'][_0x8a2f9f(-0xe8,-0x83)][_0x54a2d7(0x566,0x5c7)];}},'vertexShaderSource':new Cesium$4['ShaderSource'](_0x1b74b8),'fragmentShaderSource':new Cesium$4['ShaderSource'](_0x329416),'rawRenderState':Util['createRawRenderState']({'viewport':undefined,'depthTest':_0x58871c,'depthMask':!![],'blending':_0x251d02}),'framebuffer':undefined})};}}var getWind_frag='//\x20the\x20size\x20of\x20UV\x20textures:\x20width\x20=\x20lon,\x20height\x20=\x20lat*lev\x0auniform\x20sampler2D\x20U;\x20//\x20eastward\x20wind\x0auniform\x20sampler2D\x20V;\x20//\x20northward\x20wind\x0a\x0auniform\x20sampler2D\x20currentParticlesPosition;\x20//\x20(lon,\x20lat,\x20lev)\x0a\x0auniform\x20vec3\x20dimension;\x20//\x20(lon,\x20lat,\x20lev)\x0auniform\x20vec3\x20minimum;\x20//\x20minimum\x20of\x20each\x20dimension\x0auniform\x20vec3\x20maximum;\x20//\x20maximum\x20of\x20each\x20dimension\x0auniform\x20vec3\x20interval;\x20//\x20interval\x20of\x20each\x20dimension\x0a\x0ain\x20vec2\x20v_textureCoordinates;\x0a\x0avec2\x20mapPositionToNormalizedIndex2D(vec3\x20lonLatLev)\x20{\x0a\x20\x20\x20\x20//\x20ensure\x20the\x20range\x20of\x20longitude\x20and\x20latitude\x0a\x20\x20\x20\x20lonLatLev.x\x20=\x20mod(lonLatLev.x,\x20360.0);\x0a\x20\x20\x20\x20lonLatLev.y\x20=\x20clamp(lonLatLev.y,\x20-90.0,\x2090.0);\x0a\x0a\x20\x20\x20\x20vec3\x20index3D\x20=\x20vec3(0.0);\x0a\x20\x20\x20\x20index3D.x\x20=\x20(lonLatLev.x\x20-\x20minimum.x)\x20/\x20interval.x;\x0a\x20\x20\x20\x20index3D.y\x20=\x20(lonLatLev.y\x20-\x20minimum.y)\x20/\x20interval.y;\x0a\x20\x20\x20\x20index3D.z\x20=\x20(lonLatLev.z\x20-\x20minimum.z)\x20/\x20interval.z;\x0a\x0a\x20\x20\x20\x20//\x20the\x20st\x20texture\x20coordinate\x20corresponding\x20to\x20(col,\x20row)\x20index\x0a\x20\x20\x20\x20//\x20example\x0a\x20\x20\x20\x20//\x20data\x20array\x20is\x20[0,\x201,\x202,\x203,\x204,\x205],\x20width\x20=\x203,\x20height\x20=\x202\x0a\x20\x20\x20\x20//\x20the\x20content\x20of\x20texture\x20will\x20be\x0a\x20\x20\x20\x20//\x20t\x201.0\x0a\x20\x20\x20\x20//\x20\x20\x20\x20|\x20\x203\x204\x205\x0a\x20\x20\x20\x20//\x20\x20\x20\x20|\x0a\x20\x20\x20\x20//\x20\x20\x20\x20|\x20\x200\x201\x202\x0a\x20\x20\x20\x20//\x20\x20\x200.0------1.0\x20s\x0a\x0a\x20\x20\x20\x20vec2\x20index2D\x20=\x20vec2(index3D.x,\x20index3D.z\x20*\x20dimension.y\x20+\x20index3D.y);\x0a\x20\x20\x20\x20vec2\x20normalizedIndex2D\x20=\x20vec2(index2D.x\x20/\x20dimension.x,\x20index2D.y\x20/\x20(dimension.y\x20*\x20dimension.z));\x0a\x20\x20\x20\x20return\x20normalizedIndex2D;\x0a}\x0a\x0afloat\x20getWind(sampler2D\x20windTexture,\x20vec3\x20lonLatLev)\x20{\x0a\x20\x20\x20\x20vec2\x20normalizedIndex2D\x20=\x20mapPositionToNormalizedIndex2D(lonLatLev);\x0a\x20\x20\x20\x20float\x20result\x20=\x20texture(windTexture,\x20normalizedIndex2D).r;\x0a\x20\x20\x20\x20return\x20result;\x0a}\x0a\x0aconst\x20mat4\x20kernelMatrix\x20=\x20mat4(\x0a\x20\x20\x20\x200.0,\x20-1.0,\x202.0,\x20-1.0,\x20//\x20first\x20column\x0a\x20\x20\x20\x202.0,\x200.0,\x20-5.0,\x203.0,\x20//\x20second\x20column\x0a\x20\x20\x20\x200.0,\x201.0,\x204.0,\x20-3.0,\x20//\x20third\x20column\x0a\x20\x20\x20\x200.0,\x200.0,\x20-1.0,\x201.0\x20//\x20fourth\x20column\x0a);\x0afloat\x20oneDimensionInterpolation(float\x20t,\x20float\x20p0,\x20float\x20p1,\x20float\x20p2,\x20float\x20p3)\x20{\x0a\x20\x20\x20\x20vec4\x20tVec4\x20=\x20vec4(1.0,\x20t,\x20t\x20*\x20t,\x20t\x20*\x20t\x20*\x20t);\x0a\x20\x20\x20\x20tVec4\x20=\x20tVec4\x20/\x202.0;\x0a\x20\x20\x20\x20vec4\x20pVec4\x20=\x20vec4(p0,\x20p1,\x20p2,\x20p3);\x0a\x20\x20\x20\x20return\x20dot((tVec4\x20*\x20kernelMatrix),\x20pVec4);\x0a}\x0a\x0afloat\x20calculateB(sampler2D\x20windTexture,\x20float\x20t,\x20float\x20lon,\x20float\x20lat,\x20float\x20lev)\x20{\x0a\x20\x20\x20\x20float\x20lon0\x20=\x20floor(lon)\x20-\x201.0\x20*\x20interval.x;\x0a\x20\x20\x20\x20float\x20lon1\x20=\x20floor(lon);\x0a\x20\x20\x20\x20float\x20lon2\x20=\x20floor(lon)\x20+\x201.0\x20*\x20interval.x;\x0a\x20\x20\x20\x20float\x20lon3\x20=\x20floor(lon)\x20+\x202.0\x20*\x20interval.x;\x0a\x0a\x20\x20\x20\x20float\x20p0\x20=\x20getWind(windTexture,\x20vec3(lon0,\x20lat,\x20lev));\x0a\x20\x20\x20\x20float\x20p1\x20=\x20getWind(windTexture,\x20vec3(lon1,\x20lat,\x20lev));\x0a\x20\x20\x20\x20float\x20p2\x20=\x20getWind(windTexture,\x20vec3(lon2,\x20lat,\x20lev));\x0a\x20\x20\x20\x20float\x20p3\x20=\x20getWind(windTexture,\x20vec3(lon3,\x20lat,\x20lev));\x0a\x0a\x20\x20\x20\x20return\x20oneDimensionInterpolation(t,\x20p0,\x20p1,\x20p2,\x20p3);\x0a}\x0a\x0afloat\x20interpolateOneTexture(sampler2D\x20windTexture,\x20vec3\x20lonLatLev)\x20{\x0a\x20\x20\x20\x20float\x20lon\x20=\x20lonLatLev.x;\x0a\x20\x20\x20\x20float\x20lat\x20=\x20lonLatLev.y;\x0a\x20\x20\x20\x20float\x20lev\x20=\x20lonLatLev.z;\x0a\x0a\x20\x20\x20\x20float\x20lat0\x20=\x20floor(lat)\x20-\x201.0\x20*\x20interval.y;\x0a\x20\x20\x20\x20float\x20lat1\x20=\x20floor(lat);\x0a\x20\x20\x20\x20float\x20lat2\x20=\x20floor(lat)\x20+\x201.0\x20*\x20interval.y;\x0a\x20\x20\x20\x20float\x20lat3\x20=\x20floor(lat)\x20+\x202.0\x20*\x20interval.y;\x0a\x0a\x20\x20\x20\x20vec2\x20coefficient\x20=\x20lonLatLev.xy\x20-\x20floor(lonLatLev.xy);\x0a\x20\x20\x20\x20float\x20b0\x20=\x20calculateB(windTexture,\x20coefficient.x,\x20lon,\x20lat0,\x20lev);\x0a\x20\x20\x20\x20float\x20b1\x20=\x20calculateB(windTexture,\x20coefficient.x,\x20lon,\x20lat1,\x20lev);\x0a\x20\x20\x20\x20float\x20b2\x20=\x20calculateB(windTexture,\x20coefficient.x,\x20lon,\x20lat2,\x20lev);\x0a\x20\x20\x20\x20float\x20b3\x20=\x20calculateB(windTexture,\x20coefficient.x,\x20lon,\x20lat3,\x20lev);\x0a\x0a\x20\x20\x20\x20return\x20oneDimensionInterpolation(coefficient.y,\x20b0,\x20b1,\x20b2,\x20b3);\x0a}\x0a\x0avec3\x20bicubic(vec3\x20lonLatLev)\x20{\x0a\x20\x20\x20\x20//\x20https://en.wikipedia.org/wiki/Bicubic_interpolation#Bicubic_convolution_algorithm\x0a\x20\x20\x20\x20float\x20u\x20=\x20interpolateOneTexture(U,\x20lonLatLev);\x0a\x20\x20\x20\x20float\x20v\x20=\x20interpolateOneTexture(V,\x20lonLatLev);\x0a\x20\x20\x20\x20float\x20w\x20=\x200.0;\x0a\x20\x20\x20\x20return\x20vec3(u,\x20v,\x20w);\x0a}\x0a\x0avoid\x20main()\x20{\x0a\x20\x20\x20\x20//\x20texture\x20coordinate\x20must\x20be\x20normalized\x0a\x20\x20\x20\x20vec3\x20lonLatLev\x20=\x20texture(currentParticlesPosition,\x20v_textureCoordinates).rgb;\x0a\x20\x20\x20\x20vec3\x20windVector\x20=\x20bicubic(lonLatLev);\x0a\x20\x20\x20\x20out_FragColor\x20=\x20vec4(windVector,\x200.0);\x0a}\x0a',updateSpeed_frag=_0x471590(0x392,0x361),updatePosition_frag=_0x471590(0x398,0x3c2),postProcessingPosition_frag=_0x471590(0x345,0x327),postProcessingSpeed_frag='uniform\x20sampler2D\x20postProcessingPosition;\x0auniform\x20sampler2D\x20nextParticlesSpeed;\x0a\x0ain\x20vec2\x20v_textureCoordinates;\x0a\x0avoid\x20main()\x20{\x0a\x20\x20\x20\x20vec4\x20randomParticle\x20=\x20texture(postProcessingPosition,\x20v_textureCoordinates);\x0a\x20\x20\x20\x20vec4\x20particleSpeed\x20=\x20texture(nextParticlesSpeed,\x20v_textureCoordinates);\x0a\x0a\x20\x20\x20\x20if\x20(randomParticle.a\x20>\x200.0)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20out_FragColor\x20=\x20vec4(0.0);\x0a\x20\x20\x20\x20}\x20else\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20out_FragColor\x20=\x20particleSpeed;\x0a\x20\x20\x20\x20}\x0a}\x0a';const Cesium$3=mars3d__namespace['Cesium'];class ParticlesComputing{constructor(_0x2d8f37,_0x37d7d2,_0xaa5658,_0x37838b){this[_0x51f77f(0x1ff,0x289)]=_0x37d7d2,this['createWindTextures'](_0x2d8f37,_0x37d7d2),this['createParticlesTextures'](_0x2d8f37,_0xaa5658,_0x37838b);function _0x51f77f(_0x5e164d,_0x3cceea){return _0x3f784e(_0x5e164d,_0x3cceea- -0x121);}this['createComputingPrimitives'](_0x37d7d2,_0xaa5658,_0x37838b);}[_0x471590(0x327,0x32f)](_0x597fc0,_0x3b5e55){function _0x325a2c(_0x254b10,_0x2016a5){return _0x471590(_0x2016a5- -0x545,_0x254b10);}const _0x33cc07={'context':_0x597fc0,'width':_0x3b5e55[_0x45e6fb(-0x17,-0x9e)][_0x325a2c(-0x307,-0x2b1)],'height':_0x3b5e55[_0x45e6fb(-0x67,-0x9e)]['lat']*(_0x3b5e55[_0x45e6fb(-0x2a,-0x9e)]['lev']||0x1),'pixelFormat':Cesium$3['PixelFormat']['LUMINANCE'],'pixelDatatype':Cesium$3[_0x45e6fb(-0x7a,-0xbb)]['FLOAT'],'flipY':![],'sampler':new Cesium$3[(_0x45e6fb(-0xdc,-0xbe))]({'minificationFilter':Cesium$3[_0x325a2c(-0x276,-0x279)]['NEAREST'],'magnificationFilter':Cesium$3[_0x325a2c(-0x19d,-0x1cb)][_0x325a2c(-0x223,-0x214)]})};function _0x45e6fb(_0xad851b,_0x18b347){return _0x471590(_0x18b347- -0x3e6,_0xad851b);}this['windTextures']={'U':Util['createTexture'](_0x33cc07,_0x3b5e55['U'][_0x45e6fb(-0xab,-0x100)]),'V':Util['createTexture'](_0x33cc07,_0x3b5e55['V']['array'])};}['createParticlesTextures'](_0x3764cf,_0x8f2c7,_0x4bf9bd){function _0x1afcf4(_0x294a74,_0x19576b){return _0x471590(_0x294a74-0x76,_0x19576b);}function _0x5cc993(_0x1e1c9e,_0x327fa0){return _0x471590(_0x327fa0- -0x508,_0x1e1c9e);}const _0x141890={'context':_0x3764cf,'width':_0x8f2c7[_0x1afcf4(0x3b2,0x359)],'height':_0x8f2c7['particlesTextureSize'],'pixelFormat':Cesium$3[_0x5cc993(-0x1b7,-0x218)][_0x5cc993(-0x215,-0x21d)],'pixelDatatype':Cesium$3[_0x1afcf4(0x3a1,0x3ae)]['FLOAT'],'flipY':![],'sampler':new Cesium$3[(_0x1afcf4(0x39e,0x41b))]({'minificationFilter':Cesium$3[_0x1afcf4(0x342,0x329)]['NEAREST'],'magnificationFilter':Cesium$3[_0x1afcf4(0x3f0,0x424)]['NEAREST']})},_0x11e3c1=this['randomizeParticles'](_0x8f2c7['maxParticles'],_0x4bf9bd),_0x285c16=new Float32Array(0x4*_0x8f2c7['maxParticles'])[_0x5cc993(-0x191,-0x1f4)](0x0);this[_0x1afcf4(0x388,0x308)]={'particlesWind':Util[_0x5cc993(-0x1cf,-0x181)](_0x141890),'currentParticlesPosition':Util[_0x1afcf4(0x3fd,0x46c)](_0x141890,_0x11e3c1),'nextParticlesPosition':Util[_0x5cc993(-0x11a,-0x181)](_0x141890,_0x11e3c1),'currentParticlesSpeed':Util['createTexture'](_0x141890,_0x285c16),'nextParticlesSpeed':Util['createTexture'](_0x141890,_0x285c16),'postProcessingPosition':Util['createTexture'](_0x141890,_0x11e3c1),'postProcessingSpeed':Util[_0x5cc993(-0x10f,-0x181)](_0x141890,_0x285c16)};}['randomizeParticles'](_0x58305e,_0x2169ab){const _0x14438a=new Float32Array(0x4*_0x58305e);function _0x1d649b(_0x5f1865,_0x3121ad){return _0x3f784e(_0x3121ad,_0x5f1865-0xd1);}for(let _0x32c062=0x0;_0x32c062<_0x58305e;_0x32c062++){_0x14438a[0x4*_0x32c062]=Cesium$3[_0x1d649b(0x500,0x4b4)]['randomBetween'](_0x2169ab[_0x1d649b(0x470,0x465)]['x'],_0x2169ab['lonRange']['y']),_0x14438a[0x4*_0x32c062+0x1]=Cesium$3[_0x15e4ec(0xff,0xed)]['randomBetween'](_0x2169ab[_0x15e4ec(0x14b,0x13a)]['x'],_0x2169ab[_0x15e4ec(0x181,0x13a)]['y']),_0x14438a[0x4*_0x32c062+0x2]=Cesium$3[_0x15e4ec(0xe6,0xed)][_0x15e4ec(0x29,0x99)](this[_0x1d649b(0x47b,0x48c)][_0x1d649b(0x4bc,0x4c1)]['min'],this['data']['lev']['max']),_0x14438a[0x4*_0x32c062+0x3]=0x0;}function _0x15e4ec(_0x14beda,_0xc4707b){return _0x471590(_0xc4707b- -0x25f,_0x14beda);}return _0x14438a;}['destroyParticlesTextures'](){function _0x48fcaa(_0x3889a7,_0x2dde37){return _0x3f784e(_0x2dde37,_0x3889a7- -0x609);}Object[_0x48fcaa(-0x1b6,-0x16e)](this['particlesTextures'])['forEach'](_0x3bbce9=>{function _0x106255(_0xa0054f,_0x540959){return _0x48fcaa(_0x540959-0x13a,_0xa0054f);}this['particlesTextures'][_0x3bbce9][_0x106255(-0x7b,-0xaf)]();});}['createComputingPrimitives'](_0x2602ff,_0x3698dc,_0x62b6cf){const _0x34ee05=new Cesium$3['Cartesian3'](_0x2602ff[_0x55690c(0x13e,0xb4)]['lon'],_0x2602ff['dimensions']['lat'],_0x2602ff[_0x2342a2(0xcc,0x156)]['lev']),_0x4e52ee=new Cesium$3[(_0x55690c(0x44,0x5f))](_0x2602ff[_0x55690c(-0x7c,0x0)]['min'],_0x2602ff[_0x55690c(0x133,0x101)][_0x55690c(0xb2,0xc7)],_0x2602ff['lev']['min']),_0x433c88=new Cesium$3[(_0x2342a2(0x77,0x6))](_0x2602ff['lon']['max'],_0x2602ff['lat']['max'],_0x2602ff[_0x2342a2(0x8c,0x12)]['max']),_0x429a9a=new Cesium$3['Cartesian3']((_0x433c88['x']-_0x4e52ee['x'])/(_0x34ee05['x']-0x1),(_0x433c88['y']-_0x4e52ee['y'])/(_0x34ee05['y']-0x1),_0x34ee05['z']>0x1?(_0x433c88['z']-_0x4e52ee['z'])/(_0x34ee05['z']-0x1):0x1),_0x1c79bd=new Cesium$3['Cartesian2'](_0x2602ff['U']['min'],_0x2602ff['U']['max']),_0x2f92ae=new Cesium$3['Cartesian2'](_0x2602ff['V']['min'],_0x2602ff['V'][_0x55690c(0x15f,0xfd)]),_0x11e229=this;function _0x55690c(_0x3cc96a,_0x40394c){return _0x471590(_0x40394c- -0x294,_0x3cc96a);}const _0x3d88ac={};_0x3d88ac['U']=function(){function _0x92ffdf(_0x995088,_0x304024){return _0x55690c(_0x304024,_0x995088- -0x2b9);}return _0x11e229[_0x92ffdf(-0x1fc,-0x1e9)]['U'];},_0x3d88ac['V']=function(){function _0x7ca85f(_0x3f72a1,_0x3312ca){return _0x55690c(_0x3312ca,_0x3f72a1- -0x203);}return _0x11e229[_0x7ca85f(-0x146,-0xd5)]['V'];},_0x3d88ac['currentParticlesPosition']=function(){return _0x11e229['particlesTextures']['currentParticlesPosition'];},_0x3d88ac[_0x55690c(-0x12,-0x3)]=function(){return _0x34ee05;},_0x3d88ac['minimum']=function(){return _0x4e52ee;},_0x3d88ac['maximum']=function(){return _0x433c88;},_0x3d88ac['interval']=function(){return _0x429a9a;};const _0x18f02f={};_0x18f02f['sources']=[getWind_frag];const _0x315e90={};_0x315e90['sources']=[updateSpeed_frag];const _0x71b6f3={};_0x71b6f3[_0x2342a2(0x8e,0x2c)]=[updatePosition_frag];const _0xfeccc8={};_0xfeccc8[_0x55690c(0x8,0x76)]=[postProcessingPosition_frag];const _0x2d408d={};_0x2d408d['sources']=[postProcessingSpeed_frag];function _0x2342a2(_0x58e80d,_0x2dc985){return _0x3f784e(_0x2dc985,_0x58e80d- -0x35f);}this[_0x55690c(0x5e,0xd3)]={'getWind':new CustomPrimitive({'commandType':_0x55690c(0x180,0xf5),'uniformMap':_0x3d88ac,'fragmentShaderSource':new Cesium$3[(_0x55690c(0x10f,0xc3))](_0x18f02f),'outputTexture':this['particlesTextures']['particlesWind'],'preExecute':function(){function _0x4884c3(_0x3bafd7,_0x52b098){return _0x2342a2(_0x3bafd7-0x4a0,_0x52b098);}function _0x30469b(_0x3f1ce2,_0x4826a4){return _0x2342a2(_0x4826a4- -0x121,_0x3f1ce2);}_0x11e229['primitives']['getWind'][_0x4884c3(0x518,0x548)]['outputTexture']=_0x11e229[_0x30469b(-0xb6,-0x8b)]['particlesWind'];}}),'updateSpeed':new CustomPrimitive({'commandType':'Compute','uniformMap':{'currentParticlesSpeed':function(){function _0x24f345(_0x2d93d4,_0x498cfe){return _0x55690c(_0x498cfe,_0x2d93d4-0x418);}return _0x11e229[_0x24f345(0x496,0x51a)]['currentParticlesSpeed'];},'particlesWind':function(){return _0x11e229['particlesTextures']['particlesWind'];},'uSpeedRange':function(){return _0x1c79bd;},'vSpeedRange':function(){return _0x2f92ae;},'pixelSize':function(){return _0x62b6cf['pixelSize'];},'speedFactor':function(){function _0x3c72a1(_0x26116a,_0x45d98a){return _0x55690c(_0x45d98a,_0x26116a-0x228);}return _0x3698dc[_0x3c72a1(0x306,0x36d)];}},'fragmentShaderSource':new Cesium$3['ShaderSource'](_0x315e90),'outputTexture':this['particlesTextures'][_0x55690c(0x22,0x9a)],'preExecute':function(){function _0x2d2eb6(_0x56e6bf,_0x12315e){return _0x2342a2(_0x56e6bf- -0x3d,_0x12315e);}function _0x30840f(_0x3bd683,_0x5d5f10){return _0x55690c(_0x3bd683,_0x5d5f10-0x430);}const _0x7e2a79=_0x11e229[_0x2d2eb6(0x59,0x38)][_0x2d2eb6(0x4d,0xa2)];_0x11e229['particlesTextures']['currentParticlesSpeed']=_0x11e229['particlesTextures']['postProcessingSpeed'],_0x11e229[_0x30840f(0x47d,0x4ae)]['postProcessingSpeed']=_0x7e2a79,_0x11e229[_0x2d2eb6(0xae,0x87)][_0x2d2eb6(0x71,0xa)][_0x2d2eb6(0x3b,0x82)][_0x2d2eb6(0x9,-0x46)]=_0x11e229['particlesTextures']['nextParticlesSpeed'];}}),'updatePosition':new CustomPrimitive({'commandType':'Compute','uniformMap':{'currentParticlesPosition':function(){function _0x4cce9c(_0x4f3a61,_0x11b50e){return _0x55690c(_0x4f3a61,_0x11b50e-0x1e8);}return _0x11e229[_0x4cce9c(0x296,0x266)]['currentParticlesPosition'];},'currentParticlesSpeed':function(){function _0x8a7711(_0x337bb3,_0x6aae18){return _0x55690c(_0x6aae18,_0x337bb3-0x26a);}return _0x11e229['particlesTextures'][_0x8a7711(0x2dc,0x290)];}},'fragmentShaderSource':new Cesium$3['ShaderSource'](_0x71b6f3),'outputTexture':this['particlesTextures'][_0x55690c(-0x28,0x7)],'preExecute':function(){const _0x300fe4=_0x11e229['particlesTextures'][_0x36da3b(0x1a3,0x1a1)];_0x11e229['particlesTextures'][_0x15dc46(0x40e,0x409)]=_0x11e229[_0x15dc46(0x3f1,0x3d3)]['postProcessingPosition'];function _0x36da3b(_0x25a910,_0x53e539){return _0x2342a2(_0x53e539-0xee,_0x25a910);}function _0x15dc46(_0x9d7921,_0x15078b){return _0x55690c(_0x15078b,_0x9d7921-0x373);}_0x11e229['particlesTextures'][_0x36da3b(0x1d6,0x16e)]=_0x300fe4,_0x11e229[_0x15dc46(0x446,0x432)]['updatePosition'][_0x36da3b(0x1e2,0x166)][_0x36da3b(0x187,0x134)]=_0x11e229['particlesTextures'][_0x15dc46(0x37a,0x3e4)];}}),'postProcessingPosition':new CustomPrimitive({'commandType':'Compute','uniformMap':{'nextParticlesPosition':function(){function _0x634901(_0x1905b9,_0xb8daa2){return _0x2342a2(_0xb8daa2-0x392,_0x1905b9);}return _0x11e229[_0x634901(0x3c7,0x428)]['nextParticlesPosition'];},'nextParticlesSpeed':function(){return _0x11e229['particlesTextures']['nextParticlesSpeed'];},'lonRange':function(){return _0x62b6cf['lonRange'];},'latRange':function(){return _0x62b6cf['latRange'];},'randomCoefficient':function(){const _0x4c8825=Math['random']();return _0x4c8825;},'dropRate':function(){return _0x3698dc['dropRate'];},'dropRateBump':function(){return _0x3698dc['dropRateBump'];}},'fragmentShaderSource':new Cesium$3['ShaderSource'](_0xfeccc8),'outputTexture':this['particlesTextures'][_0x2342a2(0x80,0x4a)],'preExecute':function(){function _0x4accbc(_0x2a423a,_0xa9f1d2){return _0x55690c(_0xa9f1d2,_0x2a423a- -0x155);}function _0xb1b2b3(_0x4a224c,_0x384f3f){return _0x55690c(_0x384f3f,_0x4a224c- -0x23);}_0x11e229['primitives'][_0x4accbc(-0xed,-0x10f)]['commandToExecute'][_0x4accbc(-0x127,-0x17f)]=_0x11e229['particlesTextures']['postProcessingPosition'];}}),'postProcessingSpeed':new CustomPrimitive({'commandType':'Compute','uniformMap':{'postProcessingPosition':function(){function _0x54aab7(_0x5c2c9e,_0x387537){return _0x2342a2(_0x5c2c9e- -0xc0,_0x387537);}return _0x11e229['particlesTextures'][_0x54aab7(-0x40,-0xcf)];},'nextParticlesSpeed':function(){function _0x135bed(_0x5e47df,_0x22a039){return _0x55690c(_0x5e47df,_0x22a039-0xf1);}return _0x11e229[_0x135bed(0x139,0x16f)]['nextParticlesSpeed'];}},'fragmentShaderSource':new Cesium$3[(_0x2342a2(0xdb,0x95))](_0x2d408d),'outputTexture':this['particlesTextures']['postProcessingSpeed'],'preExecute':function(){function _0x59f5b0(_0x3e6a2e,_0x2d2923){return _0x55690c(_0x3e6a2e,_0x2d2923-0x8f);}function _0x24a526(_0x579bcf,_0x414a75){return _0x55690c(_0x579bcf,_0x414a75-0x4cd);}_0x11e229['primitives'][_0x59f5b0(0x18b,0x12b)]['commandToExecute'][_0x24a526(0x55a,0x4fb)]=_0x11e229[_0x59f5b0(0xea,0x10d)][_0x59f5b0(0x187,0x12b)];}})};}}const Cesium$2=mars3d__namespace['Cesium'];class ParticleSystem{constructor(_0x1334c7,_0x53348b,_0x5e93e0,_0x353eba){this['context']=_0x1334c7,_0x53348b={..._0x53348b};_0x53348b[_0x4fa9da(0x48f,0x4e4)]&&_0x53348b['vdata']&&(_0x53348b['dimensions']={},_0x53348b['dimensions']['lon']=_0x53348b[_0x4fa9da(0x371,0x3e1)],_0x53348b[_0x4fa9da(0x48d,0x4ae)]['lat']=_0x53348b['rows'],_0x53348b['dimensions']['lev']=_0x53348b[_0x58e201(0x30d,0x32a)]||0x1,_0x53348b['lon']={},_0x53348b['lon']['min']=_0x53348b[_0x58e201(0x2a7,0x2b8)],_0x53348b[_0x58e201(0x299,0x282)]['max']=_0x53348b['xmax'],_0x53348b[_0x58e201(0x39a,0x40d)]={},_0x53348b['lat']['min']=_0x53348b['ymin'],_0x53348b['lat'][_0x58e201(0x396,0x385)]=_0x53348b[_0x58e201(0x2aa,0x2bd)],_0x53348b['lev']={},_0x53348b['lev']['min']=_0x53348b['levmin']??0x1,_0x53348b['lev'][_0x58e201(0x396,0x384)]=_0x53348b['levmax']??0x1,_0x53348b['U']={},_0x53348b['U']['array']=new Float32Array(_0x53348b['udata']),_0x53348b['U'][_0x4fa9da(0x46d,0x4c1)]=_0x53348b['umin']??Math['min'](..._0x53348b[_0x58e201(0x383,0x405)]),_0x53348b['U'][_0x58e201(0x396,0x41c)]=_0x53348b['umax']??Math[_0x4fa9da(0x585,0x4f7)](..._0x53348b['udata']),_0x53348b['V']={},_0x53348b['V']['array']=new Float32Array(_0x53348b['vdata']),_0x53348b['V'][_0x4fa9da(0x432,0x4c1)]=_0x53348b['vmin']??Math[_0x58e201(0x360,0x3cc)](..._0x53348b['vdata']),_0x53348b['V']['max']=_0x53348b[_0x4fa9da(0x3ef,0x42f)]??Math[_0x4fa9da(0x4bf,0x4f7)](..._0x53348b['vdata']));this['data']=_0x53348b;function _0x4fa9da(_0x2027e7,_0x37da86){return _0x471590(_0x37da86-0x166,_0x2027e7);}this['options']=_0x5e93e0,this['viewerParameters']=_0x353eba,this['particlesComputing']=new ParticlesComputing(this['context'],this['data'],this['options'],this['viewerParameters']);function _0x58e201(_0x31463c,_0x2b703f){return _0x471590(_0x31463c-0x5,_0x2b703f);}this['particlesRendering']=new ParticlesRendering(this[_0x4fa9da(0x3c1,0x3df)],this['data'],this[_0x4fa9da(0x51c,0x4cc)],this['viewerParameters'],this[_0x58e201(0x395,0x36d)]);}[_0x3f784e(0x37b,0x3de)](_0xfd43f8){function _0x349f5e(_0x5199ce,_0x411a9e){return _0x3f784e(_0x5199ce,_0x411a9e- -0x20c);}this['particlesComputing'][_0x4a4a1e(0x1b3,0x220)](),Object['keys'](this[_0x349f5e(0x20c,0x267)]['windTextures'])[_0x4a4a1e(0x1f4,0x163)](_0x6366d5=>{function _0x2c1119(_0x55d198,_0x5bd72b){return _0x349f5e(_0x5bd72b,_0x55d198- -0x300);}this[_0x2c1119(-0x99,-0x11f)]['windTextures'][_0x6366d5]['destroy']();});function _0x4a4a1e(_0x5e40a4,_0x25984a){return _0x471590(_0x5e40a4- -0x197,_0x25984a);}this[_0x349f5e(0x247,0x237)]['textures'][_0x349f5e(0x294,0x26a)][_0x349f5e(0x235,0x214)](),Object['keys'](this['particlesRendering']['framebuffers'])['forEach'](_0x3eb64b=>{function _0x59703a(_0x175b03,_0x1dabcf){return _0x349f5e(_0x1dabcf,_0x175b03- -0x27d);}this['particlesRendering'][_0x59703a(-0x98,-0x44)][_0x3eb64b]['destroy']();}),this[_0x349f5e(0xe1,0x150)]=_0xfd43f8,this['particlesComputing']=new ParticlesComputing(this[_0x349f5e(0x16d,0x150)],this[_0x4a4a1e(0x130,0x11c)],this['options'],this['viewerParameters']),this['particlesRendering']=new ParticlesRendering(this[_0x4a4a1e(0xe2,0x11c)],this[_0x349f5e(0x1c7,0x19e)],this['options'],this['viewerParameters'],this['particlesComputing']);}[_0x471590(0x319,0x346)](){function _0x30de17(_0x1bb247,_0x2b2370){return _0x471590(_0x1bb247- -0x2b7,_0x2b2370);}function _0x44fe09(_0x128ea0,_0xcecf13){return _0x3f784e(_0xcecf13,_0x128ea0- -0x471);}const _0x561879=new Cesium$2[(_0x44fe09(-0xb8,-0x42))]({'color':new Cesium$2[(_0x30de17(0x2b,0x64))](0x0,0x0,0x0,0x0),'depth':0x1,'framebuffer':undefined,'pass':Cesium$2['Pass'][_0x30de17(0xd8,0x4b)]});Object[_0x44fe09(-0x1e,0x1a)](this[_0x44fe09(-0x2e,0x2)]['framebuffers'])[_0x30de17(0xd4,0x109)](_0x332b8c=>{_0x561879[_0x466dca(-0x13a,-0x158)]=this['particlesRendering'][_0x279f80(-0x13f,-0x12a)][_0x332b8c];function _0x466dca(_0x37b4e4,_0x3f765a){return _0x44fe09(_0x37b4e4- -0x80,_0x3f765a);}function _0x279f80(_0x36881c,_0x4b8fd3){return _0x30de17(_0x36881c- -0x196,_0x4b8fd3);}_0x561879['execute'](this[_0x466dca(-0x195,-0x1ac)]);});}[_0x3f784e(0x3dd,0x372)](_0x1bfb09){this['clearFramebuffers']();function _0x4add6(_0x136218,_0x544c14){return _0x3f784e(_0x136218,_0x544c14- -0x139);}this['particlesComputing'][_0x4add6(0x284,0x2f4)](),this[_0x4add6(0x334,0x33a)][_0x3ec6e9(0x4b,0x7f)](this[_0x4add6(0x226,0x223)],this['options'],this['viewerParameters']);function _0x3ec6e9(_0x514787,_0x5ac7e3){return _0x471590(_0x514787- -0x33a,_0x5ac7e3);}if(_0x1bfb09){var _0x2d5c18;const _0x3eaf17=this[_0x3ec6e9(0x26,0x26)]['createSegmentsGeometry'](this[_0x3ec6e9(0x2c,-0x63)]);this['particlesRendering'][_0x4add6(0x28c,0x311)]['segments'][_0x4add6(0x316,0x323)]=_0x3eaf17;const _0x2b7440=Cesium$2['VertexArray']['fromGeometry']({'context':this['context'],'geometry':_0x3eaf17,'attributeLocations':this['particlesRendering']['primitives'][_0x3ec6e9(-0x70,-0xa7)]['attributeLocations'],'bufferUsage':Cesium$2[_0x3ec6e9(-0x76,-0xae)][_0x3ec6e9(-0x6a,-0xeb)]});(_0x2d5c18=this['particlesRendering'][_0x3ec6e9(0x2d,0x5b)])!==null&&_0x2d5c18!==void 0x0&&(_0x2d5c18=_0x2d5c18['segments'])!==null&&_0x2d5c18!==void 0x0&&_0x2d5c18['commandToExecute']&&(this['particlesRendering']['primitives'][_0x4add6(0x251,0x274)][_0x3ec6e9(-0x46,-0x85)][_0x4add6(0x2d8,0x264)]=_0x2b7440);}}[_0x471590(0x37c,0x30a)](_0x2dd503){function _0x2c95d6(_0x4e08ae,_0x19e768){return _0x471590(_0x19e768- -0x4c6,_0x4e08ae);}let _0x44e10=![];this['options'][_0x2c95d6(-0x1e8,-0x243)]!==_0x2dd503['maxParticles']&&(_0x44e10=!![]);function _0x469567(_0x13d9bb,_0x553761){return _0x471590(_0x553761-0x206,_0x13d9bb);}Object['keys'](_0x2dd503)['forEach'](_0x452f51=>{this['options'][_0x452f51]=_0x2dd503[_0x452f51];}),this[_0x469567(0x488,0x495)](_0x44e10);}['applyViewerParameters'](_0x4dc034){function _0x206608(_0x3e7a85,_0x28b71f){return _0x3f784e(_0x28b71f,_0x3e7a85- -0x265);}Object[_0x442211(0x557,0x5a5)](_0x4dc034)['forEach'](_0x47fa99=>{this['viewerParameters'][_0x47fa99]=_0x4dc034[_0x47fa99];});function _0x442211(_0x2c4abf,_0x346b2c){return _0x3f784e(_0x2c4abf,_0x346b2c-0x152);}this[_0x206608(0x10d,0xae)](![]);}[_0x3f784e(0x46f,0x420)](){function _0x2a9794(_0x582eeb,_0x2b3ab1){return _0x471590(_0x2b3ab1- -0x332,_0x582eeb);}clearTimeout(this['canrefresh']),this[_0xb280dd(0x81,0x6f)][_0xb280dd(0x33,0x29)](),Object['keys'](this['particlesComputing'][_0xb280dd(0x85,0x30)])['forEach'](_0x286126=>{function _0x4ffde5(_0x524451,_0x496287){return _0x2a9794(_0x496287,_0x524451-0x3a2);}function _0x51b18b(_0x4051cd,_0x1b9b60){return _0xb280dd(_0x1b9b60,_0x4051cd-0x2e6);}this['particlesComputing'][_0x51b18b(0x316,0x32d)][_0x286126][_0x4ffde5(0x3ad,0x430)]();});function _0xb280dd(_0x4e6662,_0x4ab196){return _0x471590(_0x4ab196- -0x321,_0x4e6662);}this['particlesRendering'][_0xb280dd(0x1a,-0x2c)]['colorTable']['destroy'](),Object[_0x2a9794(0x55,0x3e)](this['particlesRendering']['framebuffers'])['forEach'](_0x22cc6d=>{function _0x4b5679(_0x110200,_0xed099f){return _0xb280dd(_0xed099f,_0x110200- -0x128);}function _0x1a93c9(_0x5a721e,_0x434efc){return _0x2a9794(_0x5a721e,_0x434efc- -0x95);}this['particlesRendering'][_0x1a93c9(-0x84,-0xb9)][_0x22cc6d][_0x4b5679(-0x10c,-0x15f)]();});for(const _0x306558 in this){delete this[_0x306558];}}}const Cesium$1=mars3d__namespace[_0x471590(0x31f,0x37f)],BaseLayer$1=mars3d__namespace[_0x3f784e(0x414,0x38a)][_0x471590(0x2b5,0x336)],_0x32f203={};_0x32f203[_0x3f784e(0x39e,0x37f)]=0x1000,_0x32f203[_0x3f784e(0x4c3,0x465)]=0x0,_0x32f203['fadeOpacity']=0.996,_0x32f203['dropRate']=0.003,_0x32f203['dropRateBump']=0.01,_0x32f203['speedFactor']=0.5,_0x32f203[_0x3f784e(0x4c0,0x436)]=0x2,_0x32f203[_0x3f784e(0x3dc,0x37a)]=['rgb(206,255,255)'];function _0x3f784e(_0x2f8f8a,_0x1cf17b){return _0x13e6(_0x1cf17b-0x256,_0x2f8f8a);}const DEF_OPTIONS=_0x32f203;class WindLayer extends BaseLayer$1{constructor(_0x5b60f2={}){_0x5b60f2={...DEF_OPTIONS,..._0x5b60f2};function _0x3ecbe2(_0x460d15,_0x107bd2){return _0x471590(_0x107bd2- -0xf0,_0x460d15);}super(_0x5b60f2),this[_0x3ecbe2(0x1c2,0x1b4)](_0x5b60f2);}get['layer'](){function _0x16fe9c(_0x1efd81,_0x38269b){return _0x3f784e(_0x38269b,_0x1efd81-0xf3);}return this[_0x16fe9c(0x53d,0x4d4)];}get[_0x3f784e(0x3fe,0x3aa)](){return this['_data'];}set[_0x471590(0x2c7,0x300)](_0xef25f2){this['setData'](_0xef25f2);}get[_0x3f784e(0x378,0x37a)](){function _0x2de673(_0xa1306d,_0x126a59){return _0x3f784e(_0x126a59,_0xa1306d- -0x596);}function _0x2956fd(_0x2deaff,_0x25d233){return _0x471590(_0x25d233- -0x459,_0x2deaff);}return this[_0x2de673(-0x14d,-0xf2)][_0x2956fd(-0x158,-0x1c2)];}set[_0x471590(0x297,0x317)](_0xca08f8){this[_0x6f06d0(0x4ee,0x575)]['colors']=_0xca08f8;function _0x5a19a9(_0x2999cb,_0x417104){return _0x3f784e(_0x2999cb,_0x417104- -0x35e);}function _0x6f06d0(_0x5d4a4e,_0x4a4a3d){return _0x3f784e(_0x5d4a4e,_0x4a4a3d-0x12c);}if(this['particleSystem']){const _0x6e2f4c={};_0x6e2f4c['colors']=_0xca08f8,this[_0x6f06d0(0x4fc,0x505)]['setOptions'](_0x6e2f4c);}this['resize']();}['_mountedHook'](){}['_addedHook'](){this['scene']=this[_0x541509(-0x37,-0x5c)]['scene'],this['camera']=this['_map']['camera'],this[_0x53d9e6(0x502,0x502)]=new Cesium$1[(_0x53d9e6(0x3e6,0x419))](),this[_0x53d9e6(0x410,0x489)]['scene']['primitives']['add'](this['primitives']),this[_0x53d9e6(0x465,0x4b2)]={'lonRange':new Cesium$1['Cartesian2'](),'latRange':new Cesium$1[(_0x541509(0x36,-0x21))](),'pixelSize':0x0},this['globeBoundingSphere']=new Cesium$1[(_0x541509(-0xc2,-0x32))](Cesium$1['Cartesian3'][_0x541509(0x3f,-0x3b)],0.99*0x615299),this[_0x53d9e6(0x4d7,0x4df)](),window['addEventListener']('resize',this['resize']['bind'](this),![]),this[_0x541509(-0x81,-0x85)]=![];function _0x541509(_0x3d115b,_0x27b947){return _0x471590(_0x27b947- -0x34a,_0x3d115b);}this['mouse_move']=![],this['_map']['on'](mars3d__namespace[_0x541509(0x8b,0x2e)][_0x541509(-0xa6,-0x34)],this[_0x53d9e6(0x52f,0x529)],this),this['_map']['on'](mars3d__namespace[_0x541509(0x7a,0x2e)]['mouseDown'],this['_onMouseDownEvent'],this),this[_0x541509(-0xc,-0x5c)]['on'](mars3d__namespace[_0x53d9e6(0x53f,0x513)][_0x541509(-0x8,-0x18)],this[_0x53d9e6(0x4a5,0x4f0)],this);function _0x53d9e6(_0xe2cf5,_0x1aeaf9){return _0x3f784e(_0xe2cf5,_0x1aeaf9-0xb8);}this[_0x53d9e6(0x4ab,0x489)]['on'](mars3d__namespace['EventType'][_0x53d9e6(0x4bc,0x52f)],this['_onMouseMoveEvent'],this),this['_data']&&this['setData'](this['_data']);}['_removedHook'](){function _0x4e5151(_0xa317e0,_0x152bac){return _0x3f784e(_0x152bac,_0xa317e0- -0x618);}window[_0x162546(0x25,0x75)]('resize',this['resize']),this['_map']['off'](mars3d__namespace[_0x4e5151(-0x1bd,-0x23e)][_0x4e5151(-0x19b,-0x112)],this['_onMap_preRenderEvent'],this),this['_map'][_0x4e5151(-0x295,-0x2eb)](mars3d__namespace[_0x4e5151(-0x1bd,-0x14a)]['wheel'],this[_0x4e5151(-0x1a7,-0x22c)],this),this['_map']['off'](mars3d__namespace[_0x4e5151(-0x1bd,-0x23e)]['mouseDown'],this[_0x4e5151(-0x27a,-0x2de)],this),this['_map'][_0x4e5151(-0x295,-0x2aa)](mars3d__namespace[_0x162546(0x35,0x95)]['mouseUp'],this[_0x4e5151(-0x1e0,-0x188)],this),this['_map']['off'](mars3d__namespace['EventType']['mouseMove'],this[_0x4e5151(-0x1f2,-0x18d)],this),this['primitives']['removeAll']();function _0x162546(_0x58e5b2,_0x482768){return _0x471590(_0x482768- -0x2e3,_0x58e5b2);}this['_map']['scene'][_0x162546(0xae,0x84)]['remove'](this[_0x162546(0xd8,0x84)]);}['resize'](){if(!this['show']||!this[_0x136b09(0x300,0x2ad)])return;function _0x4aa8b0(_0x256acb,_0x454b97){return _0x3f784e(_0x454b97,_0x256acb- -0x5e2);}this['primitives'][_0x4aa8b0(-0x18a,-0x1aa)]=![],this[_0x136b09(0x371,0x3f3)]['removeAll']();function _0x136b09(_0x5ee5fd,_0x364b0a){return _0x3f784e(_0x364b0a,_0x5ee5fd- -0xd9);}this['_map'][_0x4aa8b0(-0x280,-0x2bb)](mars3d__namespace['EventType']['preRender'],this['_onMap_preRenderEvent'],this);}['_onMap_preRenderEvent'](_0x5c0acb){this['particleSystem']['canvasResize'](this[_0xd1e170(0x358,0x388)]['context']);function _0xd1e170(_0x5007b6,_0x5d98c7){return _0x3f784e(_0x5007b6,_0x5d98c7-0x15);}this['addPrimitives'](),this['primitives']['show']=!![];}[_0x471590(0x38e,0x377)](_0x49c5a0){clearTimeout(this[_0x3f67a7(0x87,0xa4)]);if(!this['show']||!this[_0x3077fa(0x25,-0x45)])return;function _0x3077fa(_0x18d44c,_0x198188){return _0x3f784e(_0x18d44c,_0x198188- -0x41e);}function _0x3f67a7(_0x2969c4,_0xdce1b8){return _0x3f784e(_0x2969c4,_0xdce1b8- -0x2f7);}this['primitives'][_0x3f67a7(0x162,0x161)]=![],this['refreshTimer']=setTimeout(()=>{if(!this['show'])return;this['redraw']();},0xc8);}[_0x3f784e(0x36e,0x39e)](_0x51ab5f){function _0x505e08(_0x154569,_0x41b28e){return _0x471590(_0x41b28e- -0x129,_0x154569);}this[_0x505e08(0x222,0x19c)]=!![];}[_0x3f784e(0x461,0x426)](_0x379b64){if(!this['show']||!this[_0x33ed44(0x29c,0x218)])return;function _0x53dab2(_0x26647c,_0x5410f1){return _0x3f784e(_0x5410f1,_0x26647c- -0x3a4);}function _0x33ed44(_0x1208b9,_0x3a8783){return _0x3f784e(_0x1208b9,_0x3a8783- -0x1c1);}this['mouse_down']&&(this[_0x33ed44(0x2ae,0x289)][_0x53dab2(0xb4,0xad)]=![],this['mouse_move']=!![]);}[_0x471590(0x355,0x3d7)](_0x1c01ad){if(!this['show']||!this[_0x4936c0(-0x25,0x58)])return;this['mouse_down']&&this['mouse_move']&&this['redraw']();function _0x64d8c9(_0x770cf1,_0x525e5c){return _0x3f784e(_0x770cf1,_0x525e5c- -0x57b);}function _0x4936c0(_0x281229,_0x1ed84f){return _0x3f784e(_0x281229,_0x1ed84f- -0x381);}this[_0x4936c0(0x77,0xc9)]['show']=!![],this['mouse_down']=![],this['mouse_move']=![];}['redraw'](){function _0x33f211(_0x1fde8f,_0x5dc9e4){return _0x3f784e(_0x1fde8f,_0x5dc9e4- -0x36e);}if(!this['_map']||!this[_0x33f211(0xd8,0xea)])return;this['updateViewerParameters'](),this[_0x5ec940(0x58f,0x528)][_0x5ec940(0x556,0x565)](this['viewerParameters']);function _0x5ec940(_0x409e3f,_0x39a602){return _0x3f784e(_0x409e3f,_0x39a602-0x14f);}this['primitives']['show']=!![];}['setData'](_0x306b50){this['_data']=_0x306b50;function _0x5d77cd(_0x5c945f,_0x31242f){return _0x3f784e(_0x31242f,_0x5c945f- -0x1b8);}function _0x30a222(_0x2d7581,_0x4b9fb5){return _0x471590(_0x2d7581- -0x241,_0x4b9fb5);}this['particleSystem']&&this['particleSystem']['destroy'](),this['particleSystem']=new ParticleSystem(this['scene']['context'],_0x306b50,this[_0x5d77cd(0x200,0x26b)](),this['viewerParameters']),this[_0x30a222(0x97,0x72)]();}[_0x471590(0x2a4,0x21d)](_0x4c569b,_0x142e59){function _0x116964(_0x4412e7,_0x221cab){return _0x3f784e(_0x4412e7,_0x221cab- -0x3fe);}if(_0x4c569b)for(const _0x21bf48 in _0x4c569b){this[_0x21bf48]=_0x4c569b[_0x21bf48];}function _0x31b041(_0x5a2628,_0x365f6a){return _0x471590(_0x5a2628- -0x21a,_0x365f6a);}this[_0x116964(0x7,-0x25)]&&this['particleSystem']['setOptions'](this[_0x116964(-0x22,-0x46)]());}[_0x471590(0x2d5,0x2c2)](){const _0x2e079b=Math['ceil'](Math['sqrt'](this['particlesNumber']));this[_0x5e9441(-0x115,-0x15c)]=_0x2e079b*_0x2e079b;const _0x345efb={};_0x345efb['particlesTextureSize']=_0x2e079b,_0x345efb['maxParticles']=this['particlesNumber'];function _0x3be299(_0x56b414,_0xcc9681){return _0x3f784e(_0x56b414,_0xcc9681- -0x2b3);}function _0x5e9441(_0x828c1a,_0x32b32c){return _0x471590(_0x828c1a- -0x3b1,_0x32b32c);}return _0x345efb[_0x3be299(0x164,0x1ba)]=this[_0x3be299(0x233,0x1b2)],_0x345efb[_0x3be299(0x16f,0x150)]=this[_0x5e9441(-0x91,-0x92)],_0x345efb[_0x5e9441(-0xa6,-0x42)]=this['dropRate'],_0x345efb[_0x5e9441(-0x43,0x46)]=this[_0x3be299(0x173,0x19e)],_0x345efb[_0x5e9441(-0x3f,0x39)]=this[_0x5e9441(-0x3f,-0x6f)],_0x345efb[_0x3be299(0x1c0,0x183)]=this[_0x5e9441(-0x5e,-0xf0)],_0x345efb['colors']=this[_0x5e9441(-0x11a,-0x11e)],_0x345efb;}['addPrimitives'](){this['primitives']['add'](this['particleSystem']['particlesComputing']['primitives']['getWind']),this['primitives']['add'](this[_0x15fb34(0x9e,0xd6)][_0x15fb34(0x1be,0x170)]['primitives'][_0x15fb34(0x10a,0x10a)]);function _0x3d801e(_0x547fa2,_0x350857){return _0x471590(_0x547fa2-0x6,_0x350857);}this['primitives']['add'](this[_0x3d801e(0x2fc,0x2b8)][_0x15fb34(0xe5,0x170)]['primitives'][_0x15fb34(0x14a,0xde)]);function _0x15fb34(_0x1743bb,_0x2dfb9a){return _0x471590(_0x2dfb9a- -0x220,_0x1743bb);}this['primitives']['add'](this['particleSystem']['particlesComputing']['primitives'][_0x15fb34(0x51,0xdc)]),this['primitives']['add'](this['particleSystem'][_0x3d801e(0x396,0x3aa)]['primitives']['postProcessingSpeed']),this['primitives']['add'](this['particleSystem'][_0x15fb34(0xf2,0x140)]['primitives'][_0x3d801e(0x2d0,0x266)]),this['primitives']['add'](this[_0x15fb34(0x151,0xd6)]['particlesRendering']['primitives']['trails']),this['primitives'][_0x15fb34(0xfa,0x10d)](this['particleSystem']['particlesRendering'][_0x3d801e(0x36d,0x378)][_0x3d801e(0x2ce,0x2f0)]);}['updateViewerParameters'](){let _0x3ca426=this['camera'][_0x31f8f6(0x37f,0x3c7)](this['scene']['globe']['ellipsoid']);if(!_0x3ca426){const _0x18add6=this['_map'][_0x31f8f6(0x389,0x385)]();_0x3ca426=Cesium$1[_0x4a9e0c(-0x11f,-0x143)]['fromDegrees'](_0x18add6[_0x31f8f6(0x2d7,0x34e)],_0x18add6['ymin'],_0x18add6['xmax'],_0x18add6['ymax']);}const _0x1d904d=Util['viewRectangleToLonLatRange'](_0x3ca426);function _0x4a9e0c(_0x215198,_0x2f993b){return _0x3f784e(_0x2f993b,_0x215198- -0x550);}this['viewerParameters']['lonRange']['x']=_0x1d904d['lon'][_0x4a9e0c(-0x112,-0xf1)],this['viewerParameters']['lonRange']['y']=_0x1d904d[_0x4a9e0c(-0x1d9,-0x210)][_0x4a9e0c(-0xdc,-0x4b)];function _0x31f8f6(_0xc5639f,_0x5f520b){return _0x3f784e(_0xc5639f,_0x5f520b- -0x37);}this['viewerParameters'][_0x4a9e0c(-0xd4,-0x106)]['x']=_0x1d904d[_0x31f8f6(0x4c9,0x441)][_0x31f8f6(0x417,0x407)],this['viewerParameters']['latRange']['y']=_0x1d904d['lat'][_0x4a9e0c(-0xdc,-0x124)];const _0x1623e9=this['camera'][_0x4a9e0c(-0x1c4,-0x1ea)](this[_0x4a9e0c(-0x15c,-0x109)],this['scene'][_0x31f8f6(0x3de,0x438)],this['scene']['drawingBufferHeight']);_0x1623e9>0x0&&(this[_0x31f8f6(0x44d,0x3c3)][_0x4a9e0c(-0xee,-0x67)]=_0x1623e9);}}mars3d__namespace['LayerUtil']['register']('wind',WindLayer),mars3d__namespace[_0x3f784e(0x3a2,0x38a)]['WindLayer']=WindLayer;class CanvasParticle{constructor(){function _0x40d4dd(_0x5d612b,_0x8d87a4){return _0x3f784e(_0x8d87a4,_0x5d612b- -0x547);}this['lng']=null,this['lat']=null,this['tlng']=null;function _0x3bd0ca(_0x2b85f1,_0x3ee7fd){return _0x3f784e(_0x2b85f1,_0x3ee7fd- -0x4fc);}this[_0x3bd0ca(-0x101,-0x166)]=null,this[_0x3bd0ca(-0xdd,-0xfd)]=null,this['speed']=null;}['destroy'](){for(const _0x424c6b in this){delete this[_0x424c6b];}}}class CanvasWindField{constructor(_0x2bc9db){this['setOptions'](_0x2bc9db);}get['speedRate'](){function _0x5e158c(_0x59e1ff,_0xfc20e8){return _0x471590(_0xfc20e8- -0x1c6,_0x59e1ff);}return this[_0x5e158c(0xfe,0xdd)];}set['speedRate'](_0x36546f){this[_0x59dcc0(0x2b5,0x2e7)]=(0x64-(_0x36546f>0x63?0x63:_0x36546f))*0x64;function _0x4f7193(_0x4a027a,_0x40c20f){return _0x3f784e(_0x4a027a,_0x40c20f- -0x333);}function _0x59dcc0(_0x3d3035,_0x2723fb){return _0x471590(_0x3d3035-0x12,_0x2723fb);}this[_0x4f7193(-0x1a,0x56)]=[(this[_0x59dcc0(0x389,0x31b)]-this['xmin'])/this[_0x59dcc0(0x2b5,0x2db)],(this[_0x59dcc0(0x2b7,0x261)]-this['ymin'])/this[_0x4f7193(0x19,0x53)]];}get['maxAge'](){function _0x3bb636(_0x290500,_0x4f1dcc){return _0x3f784e(_0x4f1dcc,_0x290500- -0x4db);}return this[_0x3bb636(-0x16e,-0x198)];}set['maxAge'](_0x362c48){this['_maxAge']=_0x362c48;}[_0x471590(0x37c,0x352)](_0x5a1106){this[_0x5ca943(0x41f,0x49e)]=_0x5a1106;function _0x5ca943(_0x431507,_0x16bb72){return _0x3f784e(_0x16bb72,_0x431507- -0x2a);}this[_0xdd1288(0x524,0x4a7)]=_0x5a1106[_0xdd1288(0x521,0x4a7)]||0x78,this[_0x5ca943(0x426,0x4a5)]=_0x5a1106['speedRate']||0x32,this[_0xdd1288(0x448,0x497)]=[];function _0xdd1288(_0x207983,_0x477306){return _0x471590(_0x477306-0x148,_0x207983);}const _0x33ce13=_0x5a1106['particlesNumber']||0x1000;for(let _0x5e8ca2=0x0;_0x5e8ca2<_0x33ce13;_0x5e8ca2++){const _0x480e3f=this['_randomParticle'](new CanvasParticle());this[_0xdd1288(0x438,0x497)]['push'](_0x480e3f);}}['setDate'](_0x1dcf21){this[_0x380258(0xef,0xe6)]=_0x1dcf21[_0x380258(0xef,0xed)],this['cols']=_0x1dcf21['cols'],this[_0x1c0ed9(0x161,0xdf)]=_0x1dcf21[_0x1c0ed9(0x161,0xf1)],this['xmax']=_0x1dcf21['xmax'],this['ymin']=_0x1dcf21['ymin'];function _0x380258(_0x4ee06b,_0x23c36b){return _0x471590(_0x4ee06b- -0x200,_0x23c36b);}this[_0x380258(0xa5,0x110)]=_0x1dcf21[_0x380258(0xa5,0x125)],this['grid']=[];const _0x3d1a58=_0x1dcf21['udata'],_0xee4655=_0x1dcf21['vdata'];let _0x28c310=![];_0x3d1a58['length']===this[_0x1c0ed9(0x1ae,0x1e0)]&&_0x3d1a58[0x0]['length']===this['cols']&&(_0x28c310=!![]);let _0x5e1d42=0x0,_0x3dc837=null;function _0x1c0ed9(_0x1d2b14,_0x47bfc7){return _0x471590(_0x1d2b14- -0x141,_0x47bfc7);}let _0x2d4363=null;for(let _0x354519=0x0;_0x354519<this['rows'];_0x354519++){_0x3dc837=[];for(let _0x11cfc9=0x0;_0x11cfc9<this['cols'];_0x11cfc9++,_0x5e1d42++){_0x28c310?_0x2d4363=this[_0x380258(0xab,0x71)](_0x3d1a58[_0x354519][_0x11cfc9],_0xee4655[_0x354519][_0x11cfc9]):_0x2d4363=this['_calcUV'](_0x3d1a58[_0x5e1d42],_0xee4655[_0x5e1d42]),_0x3dc837[_0x1c0ed9(0x228,0x1c8)](_0x2d4363);}this['grid'][_0x1c0ed9(0x228,0x1ad)](_0x3dc837);}this['options'][_0x1c0ed9(0x1f8,0x1ad)]&&this['grid'][_0x380258(0x82,0x24)]();}['clear'](){delete this['rows'],delete this[_0xea64c8(-0xbb,-0x74)],delete this[_0xea64c8(-0x4c,-0x4d)],delete this[_0x5b266c(0x3f3,0x3ee)];function _0x5b266c(_0x2c0aeb,_0x455e76){return _0x3f784e(_0x455e76,_0x2c0aeb- -0x67);}delete this['ymin'],delete this[_0xea64c8(0x1c,-0x4a)];function _0xea64c8(_0xebae8b,_0x5e72bb){return _0x3f784e(_0xebae8b,_0x5e72bb- -0x3d2);}delete this['grid'],delete this['particles'];}['toGridXY'](_0x42f813,_0xc59c3f){const _0x404cca=(_0x42f813-this[_0x45b195(0x1c9,0x252)])/(this['xmax']-this[_0xd3f905(0x478,0x500)])*(this['cols']-0x1);function _0xd3f905(_0x207023,_0x314ab7){return _0x3f784e(_0x207023,_0x314ab7-0x17b);}function _0x45b195(_0x543619,_0x4d476d){return _0x3f784e(_0x543619,_0x4d476d- -0x133);}const _0x9494b8=(this['ymax']-_0xc59c3f)/(this['ymax']-this['ymin'])*(this['rows']-0x1);return[_0x404cca,_0x9494b8];}['getUVByXY'](_0x537093,_0x212a0b){if(_0x537093<0x0||_0x537093>=this[_0x5cdd53(0x1ed,0x17d)]||_0x212a0b>=this['rows'])return[0x0,0x0,0x0];const _0x540d3f=Math[_0x4fb16c(0x593,0x5b5)](_0x537093),_0x435f4b=Math[_0x4fb16c(0x52d,0x5b5)](_0x212a0b);if(_0x540d3f===_0x537093&&_0x435f4b===_0x212a0b)return this[_0x5cdd53(0x261,0x224)][_0x212a0b][_0x537093];const _0x253c90=_0x540d3f+0x1;function _0x5cdd53(_0x1304f4,_0xefdc51){return _0x3f784e(_0x1304f4,_0xefdc51- -0x1e1);}const _0x419560=_0x435f4b+0x1;function _0x4fb16c(_0xc958e4,_0x159265){return _0x471590(_0x159265-0x21f,_0xc958e4);}const _0x4a7e6a=this['getUVByXY'](_0x540d3f,_0x435f4b),_0x42084d=this[_0x4fb16c(0x46e,0x4ad)](_0x253c90,_0x435f4b),_0x41a26c=this['getUVByXY'](_0x540d3f,_0x419560),_0x43a5ae=this['getUVByXY'](_0x253c90,_0x419560);let _0x29ce64=null;try{_0x29ce64=this['_bilinearInterpolation'](_0x537093-_0x540d3f,_0x212a0b-_0x435f4b,_0x4a7e6a,_0x42084d,_0x41a26c,_0x43a5ae);}catch(_0x4327ea){console['log'](_0x537093,_0x212a0b);}return _0x29ce64;}['_bilinearInterpolation'](_0x5109e0,_0x555e0b,_0x4057ed,_0x416b33,_0x2043c1,_0x3b0b34){const _0x184451=0x1-_0x5109e0,_0x36d93a=0x1-_0x555e0b,_0x5ca9a1=_0x184451*_0x36d93a,_0x3ad1c3=_0x5109e0*_0x36d93a,_0x5c3436=_0x184451*_0x555e0b,_0x199cfa=_0x5109e0*_0x555e0b,_0x6e40bd=_0x4057ed[0x0]*_0x5ca9a1+_0x416b33[0x0]*_0x3ad1c3+_0x2043c1[0x0]*_0x5c3436+_0x3b0b34[0x0]*_0x199cfa,_0x4988f0=_0x4057ed[0x1]*_0x5ca9a1+_0x416b33[0x1]*_0x3ad1c3+_0x2043c1[0x1]*_0x5c3436+_0x3b0b34[0x1]*_0x199cfa;return this['_calcUV'](_0x6e40bd,_0x4988f0);}['_calcUV'](_0x3b12e5,_0x70eb54){return[+_0x3b12e5,+_0x70eb54,Math['sqrt'](_0x3b12e5*_0x3b12e5+_0x70eb54*_0x70eb54)];}['getUVByPoint'](_0x1baa08,_0x553667){if(!this[_0x446ec5(-0x25c,-0x243)](_0x1baa08,_0x553667))return null;function _0x446ec5(_0x2200f8,_0x5ed227){return _0x471590(_0x5ed227- -0x4d5,_0x2200f8);}function _0x1c92a3(_0x21816c,_0x4d5587){return _0x471590(_0x4d5587-0x19a,_0x21816c);}const _0x415955=this[_0x1c92a3(0x55c,0x4f3)](_0x1baa08,_0x553667),_0x58bf04=this['getUVByXY'](_0x415955[0x0],_0x415955[0x1]);return _0x58bf04;}[_0x471590(0x292,0x218)](_0x2a20a4,_0x107c37){function _0x48003d(_0x292c1b,_0x1cbba3){return _0x471590(_0x292c1b- -0x4a0,_0x1cbba3);}return _0x2a20a4>=this[_0x48003d(-0x1fe,-0x182)]&&_0x2a20a4<=this['xmax']&&_0x107c37>=this['ymin']&&_0x107c37<=this['ymax']?!![]:![];}['getRandomLatLng'](){const _0x5c42cb=fRandomByfloat(this['xmin'],this['xmax']),_0x22690d=fRandomByfloat(this[_0x3093b5(0x35f,0x301)],this['ymax']),_0x48bdc8={};_0x48bdc8['lat']=_0x22690d,_0x48bdc8['lng']=_0x5c42cb;function _0x3093b5(_0x317468,_0xae9458){return _0x3f784e(_0x317468,_0xae9458- -0x14c);}return _0x48bdc8;}[_0x471590(0x288,0x249)](){let _0x5b53d4,_0x27eccf,_0x11398a;function _0x2a6ac7(_0x14a614,_0x5ad048){return _0x3f784e(_0x5ad048,_0x14a614- -0x1ac);}for(let _0x341e73=0x0,_0x237448=this['particles']['length'];_0x341e73<_0x237448;_0x341e73++){let _0x5435ac=this['particles'][_0x341e73];_0x5435ac[_0x2a6ac7(0x253,0x1f3)]<=0x0&&(_0x5435ac=this['_randomParticle'](_0x5435ac));if(_0x5435ac[_0x2a6ac7(0x253,0x28c)]>0x0){const _0x5dcf72=_0x5435ac[_0x6dd20b(-0x10,0x72)],_0x5e6738=_0x5435ac[_0x2a6ac7(0x1ea,0x18f)];_0x11398a=this['getUVByPoint'](_0x5dcf72,_0x5e6738),_0x11398a?(_0x5b53d4=_0x5dcf72+this['_calc_speedRate'][0x0]*_0x11398a[0x0],_0x27eccf=_0x5e6738+this['_calc_speedRate'][0x1]*_0x11398a[0x1],_0x5435ac['lng']=_0x5dcf72,_0x5435ac[_0x6dd20b(0x38,0x9a)]=_0x5e6738,_0x5435ac[_0x6dd20b(-0x10,-0x96)]=_0x5b53d4,_0x5435ac['tlat']=_0x27eccf,_0x5435ac[_0x2a6ac7(0x1c0,0x1cd)]=_0x11398a[0x2],_0x5435ac['age']--):_0x5435ac['age']=0x0;}}function _0x6dd20b(_0x252481,_0x4ff3ea){return _0x3f784e(_0x4ff3ea,_0x252481- -0x440);}return this['particles'];}[_0x3f784e(0x3e0,0x3e7)](_0x27996c){let _0x401955,_0x133c48;for(let _0xde3ca9=0x0;_0xde3ca9<0x1e;_0xde3ca9++){_0x401955=this['getRandomLatLng'](),_0x133c48=this['getUVByPoint'](_0x401955[_0x16437d(0x625,0x5ba)],_0x401955['lat']);if(_0x133c48&&_0x133c48[0x2]>0x0)break;}if(!_0x133c48)return _0x27996c;const _0x2f2169=_0x401955['lng']+this['_calc_speedRate'][0x0]*_0x133c48[0x0],_0x4e23e9=_0x401955['lat']+this[_0x16437d(0x47d,0x4ec)][0x1]*_0x133c48[0x1];_0x27996c[_0x154409(-0x1ae,-0x141)]=_0x401955[_0x154409(-0x1ae,-0x223)],_0x27996c['lat']=_0x401955[_0x154409(-0x18d,-0x1d8)],_0x27996c[_0x16437d(0x610,0x593)]=_0x2f2169,_0x27996c[_0x154409(-0x26f,-0x238)]=_0x4e23e9;function _0x154409(_0x21c446,_0x12c4df){return _0x3f784e(_0x12c4df,_0x21c446- -0x605);}_0x27996c['age']=Math['round'](Math['random']()*this['maxAge']),_0x27996c['speed']=_0x133c48[0x2];function _0x16437d(_0x51761c,_0x13ba57){return _0x471590(_0x13ba57-0x246,_0x51761c);}return _0x27996c;}['destroy'](){for(const _0x1aa03b in this){delete this[_0x1aa03b];}}}function fRandomByfloat(_0x25b7a7,_0x464072){return _0x25b7a7+Math['random']()*(_0x464072-_0x25b7a7);}const Cesium=mars3d__namespace['Cesium'],BaseLayer=mars3d__namespace[_0x3f784e(0x38f,0x38a)]['BaseLayer'];class CanvasWindLayer extends BaseLayer{constructor(_0x3985a6={}){function _0x2dd554(_0x4bb4fe,_0x318d96){return _0x471590(_0x4bb4fe- -0x1cc,_0x318d96);}super(_0x3985a6);function _0x5ef775(_0x4b4a69,_0xb35f0){return _0x471590(_0x4b4a69- -0x231,_0xb35f0);}this[_0x2dd554(0xd8,0xc2)](_0x3985a6),this['canvas']=null,_0x3985a6[_0x2dd554(0xcb,0xf2)]&&_0x3985a6['steps']&&(this['_colorRamp']=new mars3d__namespace[(_0x2dd554(0xf7,0x12e))](_0x3985a6));}['_setOptionsHook'](_0x3db9fc,_0x3e71be){function _0x5826d2(_0x1fa06,_0x445886){return _0x471590(_0x1fa06- -0x125,_0x445886);}this[_0x5826d2(0x211,0x25b)]=0x3e8/(_0x3db9fc['frameRate']||0xa),this['_pointerEvents']=this[_0x1e2e2a(0x21f,0x21d)]['pointerEvents']??![],this['color']=_0x3db9fc['color']||_0x5826d2(0x1ba,0x248),this['lineWidth']=_0x3db9fc[_0x5826d2(0x22e,0x232)]||0x1;function _0x1e2e2a(_0x1017f8,_0x45cda4){return _0x3f784e(_0x45cda4,_0x1017f8- -0x22a);}this['fixedHeight']=_0x3db9fc['fixedHeight']??0x0,this[_0x5826d2(0x214,0x18f)]=_0x3db9fc['reverseY']??![],this[_0x5826d2(0x160,0x1dc)]&&this['windField']['setOptions'](_0x3db9fc);}get['layer'](){function _0x1fecb1(_0x1b41ad,_0x3914bf){return _0x3f784e(_0x1b41ad,_0x3914bf- -0x3d3);}return this[_0x1fecb1(0xd,-0x16)];}get[_0x3f784e(0x32b,0x3a0)](){function _0x1bcb1e(_0x4b20e6,_0x42687e){return _0x3f784e(_0x42687e,_0x4b20e6- -0x3cd);}function _0x331eba(_0x30fd38,_0x32aa64){return _0x471590(_0x32aa64- -0x548,_0x30fd38);}return this[_0x331eba(-0x1e2,-0x25a)][_0x331eba(-0x347,-0x2b8)][_0x1bcb1e(-0x10,-0x15)]['clientWidth'];}get['canvasHeight'](){function _0x43686e(_0x4c036d,_0x3b9770){return _0x471590(_0x4c036d- -0x524,_0x3b9770);}return this['_map']['scene'][_0x43686e(-0x24a,-0x271)]['clientHeight'];}get['pointerEvents'](){return this['_pointerEvents'];}set['pointerEvents'](_0x2c6203){this[_0x58c5d1(-0x183,-0x100)]=_0x2c6203;function _0x58c5d1(_0x527206,_0x20066c){return _0x3f784e(_0x527206,_0x20066c- -0x47c);}function _0x29658f(_0x22d450,_0x1ae332){return _0x3f784e(_0x1ae332,_0x22d450- -0x290);}if(!this[_0x29658f(0x12d,0x195)])return;_0x2c6203?this[_0x29658f(0x12d,0x115)]['style']['pointer-events']=_0x58c5d1(-0x12d,-0x10d):this['canvas']['style'][_0x29658f(0x1c9,0x1e3)]=_0x58c5d1(-0x8b,-0xb4);}get[_0x3f784e(0x3e4,0x37f)](){function _0x4cf3c4(_0x87ec1c,_0x1e6b22){return _0x3f784e(_0x1e6b22,_0x87ec1c- -0x421);}return this[_0x4cf3c4(0x28,0xe)]['particlesNumber'];}set['particlesNumber'](_0x5c81e4){function _0x179180(_0xee0586,_0x32ca79){return _0x3f784e(_0xee0586,_0x32ca79- -0x50);}this['options']['particlesNumber']=_0x5c81e4,clearTimeout(this['_canrefresh']),this[_0x179180(0x39e,0x3ad)]=setTimeout(()=>{function _0x3748e8(_0x2f92b8,_0x1a6c14){return _0x179180(_0x2f92b8,_0x1a6c14-0x78);}this[_0x3748e8(0x3c8,0x38c)]();},0x1f4);}get['speedRate'](){function _0x350a59(_0x1230e5,_0x547cbc){return _0x3f784e(_0x1230e5,_0x547cbc- -0x2b1);}return this[_0x350a59(0x1a0,0x198)]['speedRate'];}set['speedRate'](_0x2249f6){function _0x2970d3(_0x44b3b0,_0x2610f0){return _0x3f784e(_0x44b3b0,_0x2610f0- -0x5a9);}this[_0x2970d3(-0x175,-0x160)]['speedRate']=_0x2249f6,this['windField']&&(this['windField']['speedRate']=_0x2249f6);}get[_0x3f784e(0x41c,0x442)](){function _0x18dd37(_0x17f591,_0xcaefb9){return _0x3f784e(_0xcaefb9,_0x17f591- -0x13f);}return this[_0x18dd37(0x30a,0x33b)]['maxAge'];}set[_0x471590(0x35f,0x3ae)](_0x1e965c){this['options']['maxAge']=_0x1e965c;function _0x30dbc2(_0x56df8a,_0x3b7caf){return _0x3f784e(_0x56df8a,_0x3b7caf- -0xff);}this['windField']&&(this[_0x30dbc2(0x23f,0x269)]['maxAge']=_0x1e965c);}get[_0x3f784e(0x33f,0x3aa)](){return this['windData'];}set['data'](_0xe5875){this['setData'](_0xe5875);}['_showHook'](_0x267308){function _0x595a2c(_0x2aee5c,_0x25aab5){return _0x471590(_0x25aab5- -0x431,_0x2aee5c);}function _0x49c460(_0x25bef5,_0x214e94){return _0x471590(_0x25bef5- -0x152,_0x214e94);}_0x267308?this['_addedHook']():(this[_0x49c460(0x134,0xc1)]&&(this['options']['data']=this[_0x49c460(0x134,0xc2)]),this['_removedHook']());}[_0x471590(0x361,0x2e1)](){function _0x3a1897(_0x19fabf,_0x891f26){return _0x3f784e(_0x891f26,_0x19fabf- -0x220);}function _0x2dc6f3(_0x30844f,_0x763f72){return _0x471590(_0x30844f- -0x22e,_0x763f72);}this[_0x2dc6f3(0x138,0xa8)]['worker']?this[_0x2dc6f3(0x126,0x1a3)]():this['windField']=new CanvasWindField(this[_0x3a1897(0x229,0x28a)]);}['_addedHook'](){this['canvas']=this['_createCanvas']();function _0x42b9cb(_0x3f39ad,_0x56764e){return _0x471590(_0x3f39ad- -0x2c7,_0x56764e);}function _0x3169c7(_0x327097,_0x1b68bf){return _0x3f784e(_0x1b68bf,_0x327097-0x1b);}const _0x3eb9df={};_0x3eb9df[_0x42b9cb(0x6,-0x38)]=!![],this[_0x42b9cb(0x89,-0x4)]=this['canvas']['getContext']('2d',_0x3eb9df),this[_0x42b9cb(0x25,0x8d)](),this[_0x3169c7(0x464,0x3d4)]['data']&&this[_0x42b9cb(0x96,0x10c)](this['options']['data']);}['_removedHook'](){this[_0x3866e7(0xba,0xa7)]();function _0x3866e7(_0x167699,_0x71431b){return _0x3f784e(_0x71431b,_0x167699- -0x374);}function _0x412130(_0x4ba9b5,_0x3842d9){return _0x3f784e(_0x4ba9b5,_0x3842d9- -0xff);}this[_0x3866e7(-0x15,0x1f)](),this[_0x412130(0x2c7,0x2be)]&&(this['_map'][_0x412130(0x34e,0x2d5)]['removeChild'](this['canvas']),delete this[_0x412130(0x275,0x2be)]);}['_createCanvas'](){const _0x479965=mars3d__namespace[_0x53e9fb(0x2ac,0x2c2)]['create']('canvas','mars3d-canvasWind',this['_map'][_0x53e9fb(0x288,0x2c5)]);_0x479965['style'][_0x5b82d1(-0x96,-0x19)]=_0x53e9fb(0x2bd,0x244),_0x479965['style']['top']='0px',_0x479965[_0x53e9fb(0x278,0x2c4)]['left']=_0x53e9fb(0x24b,0x28a),_0x479965[_0x5b82d1(-0xf5,-0x177)][_0x53e9fb(0x21e,0x268)]=this['_map']['scene'][_0x53e9fb(0x271,0x225)]['clientWidth']+'px',_0x479965['style']['height']=this[_0x5b82d1(-0xe8,-0xdd)]['scene']['canvas'][_0x53e9fb(0x272,0x1ea)]+'px',_0x479965['style']['pointerEvents']=this['_pointerEvents']?'auto':'none',_0x479965[_0x53e9fb(0x278,0x1fd)]['zIndex']=this['options'][_0x53e9fb(0x30a,0x371)]??0x9;function _0x53e9fb(_0x3411a2,_0x47a828){return _0x3f784e(_0x47a828,_0x3411a2- -0x14c);}_0x479965['width']=this['_map']['scene'][_0x5b82d1(-0xfc,-0xcf)]['clientWidth'];function _0x5b82d1(_0x125874,_0x39edd3){return _0x3f784e(_0x39edd3,_0x125874- -0x4b9);}return _0x479965['height']=this['_map'][_0x53e9fb(0x227,0x1c1)][_0x5b82d1(-0xfc,-0x15c)][_0x5b82d1(-0xfb,-0xf3)],_0x479965;}[_0x471590(0x29a,0x2af)](){function _0x227209(_0x70050b,_0x524359){return _0x471590(_0x70050b- -0x4b,_0x524359);}function _0x28ad46(_0x3a79e4,_0xeb5018){return _0x3f784e(_0xeb5018,_0x3a79e4- -0x51);}this[_0x227209(0x28f,0x208)]&&(this['canvas'][_0x28ad46(0x373,0x3ca)][_0x227209(0x23c,0x1fe)]=this[_0x28ad46(0x380,0x364)][_0x227209(0x245,0x2b7)]['canvas']['clientWidth']+'px',this['canvas'][_0x28ad46(0x373,0x385)][_0x28ad46(0x3d4,0x3b3)]=this['_map']['scene'][_0x227209(0x28f,0x30f)][_0x28ad46(0x36d,0x2f9)]+'px',this[_0x28ad46(0x36c,0x3b8)]['width']=this[_0x28ad46(0x380,0x32b)]['scene'][_0x227209(0x28f,0x2b4)]['clientWidth'],this[_0x227209(0x28f,0x2bb)]['height']=this['_map'][_0x227209(0x245,0x2a6)]['canvas']['clientHeight']);}['bindEvent'](){const _0xd935=this;function _0x4bb4b7(_0x373f41,_0x10767e){return _0x3f784e(_0x373f41,_0x10767e- -0x519);}let _0x2180db=Date['now']();(function _0x4260ff(){if(_0xd935[_0xe819d7(0x488,0x4b2)])return;_0xd935[_0x175a4a(0x50f,0x582)]=window[_0x175a4a(0x50e,0x587)](_0x4260ff);function _0xe819d7(_0x1fa14c,_0x50bb59){return _0x13e6(_0x50bb59-0x322,_0x1fa14c);}function _0x175a4a(_0x1e4cc9,_0x2e5c91){return _0x13e6(_0x1e4cc9-0x3d0,_0x2e5c91);}if(_0xd935['show']&&_0xd935[_0xe819d7(0x3ac,0x434)]){const _0x3ddc69=Date[_0x175a4a(0x557,0x575)](),_0x27740c=_0x3ddc69-_0x2180db;_0x27740c>_0xd935['frameTime']&&(_0x2180db=_0x3ddc69-_0x27740c%_0xd935['frameTime'],_0xd935[_0xe819d7(0x477,0x45c)]());}}(),window['addEventListener']('resize',this[_0x3afcf7(-0x27e,-0x28e)][_0x4bb4b7(-0x1b6,-0x16b)](this),![]),this['mouse_down']=![],this[_0x3afcf7(-0x1a9,-0x166)]=![]);function _0x3afcf7(_0x2b9d72,_0xcb5a09){return _0x471590(_0x2b9d72- -0x518,_0xcb5a09);}this['options']['mouseHidden']&&(this[_0x3afcf7(-0x22a,-0x2ab)]['on'](mars3d__namespace['EventType']['wheel'],this[_0x3afcf7(-0x18a,-0x1ce)],this),this[_0x3afcf7(-0x22a,-0x1f1)]['on'](mars3d__namespace[_0x4bb4b7(-0x5a,-0xbe)][_0x4bb4b7(-0x181,-0x101)],this[_0x4bb4b7(-0x1a1,-0x17b)],this),this['_map']['on'](mars3d__namespace['EventType'][_0x4bb4b7(-0xec,-0x104)],this['_onMouseUpEvent'],this));}['unbindEvent'](){function _0xacfc66(_0x53dfa3,_0x27b928){return _0x3f784e(_0x27b928,_0x53dfa3- -0x5bc);}window['cancelAnimationFrame'](this['_animateFrame']),delete this[_0xfccaca(0x4a7,0x463)],window[_0xacfc66(-0x181,-0x211)](_0xfccaca(0x48f,0x4a2),this['resize']);function _0xfccaca(_0x402ce9,_0x499def){return _0x471590(_0x402ce9-0x1f5,_0x499def);}this['options']['mouseHidden']&&(this['_map']['off'](mars3d__namespace['EventType']['wheel'],this['_onMapWhellEvent'],this),this['_map']['off'](mars3d__namespace[_0xacfc66(-0x161,-0xf0)]['mouseDown'],this['_onMouseDownEvent'],this),this['_map']['off'](mars3d__namespace['EventType']['mouseUp'],this['_onMouseUpEvent'],this),this['_map'][_0xacfc66(-0x239,-0x2b0)](mars3d__namespace[_0xacfc66(-0x161,-0x1d6)][_0xfccaca(0x589,0x590)],this['_onMouseMoveEvent'],this));}['_onMapWhellEvent'](_0x5d50ac){clearTimeout(this[_0x5e95ee(0x75,0x34)]);function _0x5e95ee(_0x10f2a5,_0x3fc453){return _0x471590(_0x10f2a5- -0x243,_0x3fc453);}if(!this[_0x5e95ee(0x132,0xf6)]||!this['canvas'])return;function _0x49d00e(_0x99b21f,_0xa3ae76){return _0x3f784e(_0xa3ae76,_0x99b21f- -0x2f1);}this[_0x5e95ee(0x97,0x76)][_0x5e95ee(0x9e,0xce)][_0x5e95ee(0x7e,-0x8)]='hidden',this['refreshTimer']=setTimeout(()=>{function _0x1e2fb7(_0x17bdbc,_0x3291af){return _0x49d00e(_0x17bdbc-0x26d,_0x3291af);}if(!this['show'])return;this['redraw']();function _0x3da6f0(_0x2089ab,_0x1d2378){return _0x49d00e(_0x1d2378- -0x332,_0x2089ab);}this[_0x3da6f0(-0x285,-0x266)][_0x1e2fb7(0x340,0x333)]['visibility']='visible';},0xc8);}[_0x471590(0x2bb,0x312)](_0x72147f){this['mouse_down']=!![];function _0x21bbad(_0x51cac6,_0x2c43d2){return _0x471590(_0x51cac6-0xe8,_0x2c43d2);}this['_map']['off'](mars3d__namespace[_0x21bbad(0x460,0x47c)]['mouseMove'],this['_onMouseMoveEvent'],this);function _0x5a64dc(_0x2542af,_0x5e0a9a){return _0x471590(_0x2542af- -0x19,_0x5e0a9a);}this['_map']['on'](mars3d__namespace['EventType'][_0x5a64dc(0x37b,0x3a3)],this['_onMouseMoveEvent'],this);}['_onMouseMoveEvent'](_0xdbdb8d){if(!this[_0x23adac(-0x16,-0x25)]||!this['canvas'])return;function _0x189c18(_0x358fee,_0x568afc){return _0x3f784e(_0x568afc,_0x358fee- -0x5a7);}function _0x23adac(_0x3615cc,_0x3d919f){return _0x471590(_0x3615cc- -0x38b,_0x3d919f);}this['mouse_down']&&(this[_0x189c18(-0x1ea,-0x23f)][_0x189c18(-0x1e3,-0x1c3)]['visibility']=_0x23adac(-0xdc,-0xd9),this['mouse_move']=!![]);}[_0x3f784e(0x469,0x438)](_0x37f249){function _0x2841ba(_0x24bc75,_0x1656b2){return _0x471590(_0x1656b2- -0x138,_0x24bc75);}if(!this['show']||!this[_0x44f493(0x1b1,0x22e)])return;this['_map']['off'](mars3d__namespace['EventType']['mouseMove'],this[_0x2841ba(0x182,0x20b)],this);this[_0x2841ba(0x211,0x18d)]&&this['mouse_move']&&this['redraw']();this['canvas']['style'][_0x44f493(0x198,0x175)]='visible',this['mouse_down']=![];function _0x44f493(_0x4dc869,_0x2c4f6e){return _0x471590(_0x4dc869- -0x129,_0x2c4f6e);}this['mouse_move']=![];}[_0x471590(0x35d,0x33d)](_0x2f8518){this['clear'](),this['windData']=_0x2f8518;function _0x3fb70b(_0x247f5e,_0x1720bf){return _0x471590(_0x247f5e-0x1de,_0x1720bf);}this['windField']['setDate'](_0x2f8518),this[_0x3fb70b(0x45f,0x4f1)]();}[_0x471590(0x281,0x255)](){function _0x298aa7(_0xbf7695,_0x459851){return _0x471590(_0x459851-0x19,_0xbf7695);}function _0x470260(_0x1af0ad,_0x57fdff){return _0x3f784e(_0x57fdff,_0x1af0ad-0x185);}if(!this['show'])return;this['windField'][_0x298aa7(0x31b,0x395)](this[_0x470260(0x5ce,0x601)]),this[_0x470260(0x515,0x493)]();}[_0x3f784e(0x35d,0x390)](){if(this['_updateIng'])return;this['_updateIng']=!![];if(this['worker'])this[_0xb0e609(-0xdb,-0xd8)]['update']();else{const _0x4a0641=this[_0xb0e609(-0x13a,-0xd8)][_0x20601c(-0x102,-0xeb)]();this['_drawLines'](_0x4a0641);}function _0xb0e609(_0x1ca14a,_0x37a3c1){return _0x471590(_0x37a3c1- -0x35d,_0x1ca14a);}function _0x20601c(_0x1482c4,_0x1c23ba){return _0x3f784e(_0x1c23ba,_0x1482c4- -0x46d);}this[_0x20601c(-0x89,-0x28)]=![];}['_drawLines'](_0x7fd9e){this['canvasContext']['globalCompositeOperation']=_0xf9ad6b(0x32a,0x3bc),this[_0x58c11a(0x531,0x4f2)]['fillRect'](0x0,0x0,this[_0xf9ad6b(0x33b,0x2fd)],this[_0x58c11a(0x461,0x45b)]);function _0xf9ad6b(_0x41d5f1,_0x37a8ab){return _0x3f784e(_0x37a8ab,_0x41d5f1- -0x65);}this[_0xf9ad6b(0x3ce,0x34c)][_0x58c11a(0x489,0x47c)]='lighter';function _0x58c11a(_0x34ee7c,_0x5522ba){return _0x3f784e(_0x5522ba,_0x34ee7c-0xfe);}this['canvasContext'][_0x58c11a(0x545,0x549)]=0.9;const _0x5db21d=this['_map']['scene'][_0xf9ad6b(0x328,0x2f5)]!==Cesium['SceneMode']['SCENE3D'],_0x375d30=this['canvasWidth']*0.25;if(this['_colorRamp'])for(let _0x54e420=0x0,_0x46af77=_0x7fd9e['length'];_0x54e420<_0x46af77;_0x54e420++){const _0x1409cf=_0x7fd9e[_0x54e420],_0x29229d=this[_0xf9ad6b(0x3c5,0x428)](_0x1409cf['lng'],_0x1409cf[_0x58c11a(0x576,0x5f1)],_0x1409cf),_0x2c3c5c=this[_0x58c11a(0x528,0x55e)](_0x1409cf['tlng'],_0x1409cf['tlat'],_0x1409cf);if(!_0x29229d||!_0x2c3c5c)continue;if(_0x5db21d&&Math['abs'](_0x29229d[0x0]-_0x2c3c5c[0x0])>=_0x375d30)continue;this[_0x58c11a(0x531,0x4da)]['beginPath'](),this[_0xf9ad6b(0x3ce,0x377)]['lineWidth']=this['lineWidth'],this['canvasContext']['strokeStyle']=this[_0x58c11a(0x4e6,0x495)][_0x58c11a(0x544,0x4fd)](_0x1409cf[_0x58c11a(0x46a,0x4ba)]),this[_0x58c11a(0x531,0x540)]['moveTo'](_0x29229d[0x0],_0x29229d[0x1]),this['canvasContext']['lineTo'](_0x2c3c5c[0x0],_0x2c3c5c[0x1]),this['canvasContext']['stroke']();}else{this['canvasContext']['beginPath'](),this[_0x58c11a(0x531,0x5b0)]['lineWidth']=this['lineWidth'],this[_0x58c11a(0x531,0x526)]['strokeStyle']=this[_0xf9ad6b(0x350,0x2d9)];for(let _0x1b6d79=0x0,_0x57cdd3=_0x7fd9e['length'];_0x1b6d79<_0x57cdd3;_0x1b6d79++){const _0x227a99=_0x7fd9e[_0x1b6d79],_0x4d2621=this['_tomap'](_0x227a99[_0xf9ad6b(0x3f2,0x404)],_0x227a99[_0x58c11a(0x576,0x536)],_0x227a99),_0x4bc1f8=this[_0x58c11a(0x528,0x5aa)](_0x227a99[_0xf9ad6b(0x3cb,0x3c2)],_0x227a99['tlat'],_0x227a99);if(!_0x4d2621||!_0x4bc1f8)continue;if(_0x5db21d&&Math['abs'](_0x4d2621[0x0]-_0x4bc1f8[0x0])>=_0x375d30)continue;this['canvasContext'][_0x58c11a(0x497,0x496)](_0x4d2621[0x0],_0x4d2621[0x1]),this['canvasContext']['lineTo'](_0x4bc1f8[0x0],_0x4bc1f8[0x1]);}this['canvasContext']['stroke']();}}['_tomap'](_0x3d655f,_0x3db0f0,_0x404a23){const _0x45bbf3=Cesium['Cartesian3']['fromDegrees'](_0x3d655f,_0x3db0f0,this[_0x2e3723(0x56c,0x54b)]);function _0x2e3723(_0x19457b,_0x42d7de){return _0x471590(_0x19457b-0x1ea,_0x42d7de);}const _0x23dada=this['_map']['scene'];if(_0x23dada['mode']===Cesium['SceneMode'][_0x593b56(0x49e,0x4c0)]){const _0x50bb43=new Cesium[(_0x593b56(0x4cd,0x495))](_0x23dada[_0x2e3723(0x54f,0x5cd)]['ellipsoid'],_0x23dada['camera']['positionWC']),_0x57a978=_0x50bb43['isPointVisible'](_0x45bbf3);if(!_0x57a978)return _0x404a23[_0x2e3723(0x506,0x4c1)]=0x0,null;}function _0x593b56(_0x22e6fe,_0x105198){return _0x471590(_0x22e6fe-0x18e,_0x105198);}const _0x3255b9=mars3d__namespace[_0x593b56(0x477,0x488)][_0x2e3723(0x4f3,0x55d)](this[_0x2e3723(0x4d8,0x4dd)][_0x593b56(0x41e,0x491)],_0x45bbf3);return _0x3255b9?[_0x3255b9['x'],_0x3255b9['y']]:null;}[_0x3f784e(0x3a9,0x42e)](){function _0x2a7e9a(_0x2687e5,_0x5e6dfc){return _0x3f784e(_0x2687e5,_0x5e6dfc- -0x5bb);}this[_0x2a7e9a(-0x261,-0x253)]['clear'](),delete this['windData'];}['initWorker'](){this['worker']=new Worker(this[_0x5749ab(0x4ae,0x46e)][_0x5749ab(0x489,0x518)]);function _0x5749ab(_0x236360,_0x1c619e){return _0x3f784e(_0x1c619e,_0x236360-0x65);}this[_0x5749ab(0x489,0x3fc)][_0x2bfbb1(-0x13d,-0xe8)]=_0x44f867=>{this['_drawLines'](_0x44f867['data']['particles']);function _0x422ff(_0x54fc36,_0x3ea32a){return _0x2bfbb1(_0x3ea32a-0x177,_0x54fc36);}this[_0x422ff(0x3f,0x16)]=![];};function _0x2bfbb1(_0x480c12,_0x45d5bc){return _0x3f784e(_0x45d5bc,_0x480c12- -0x544);}this[_0x5749ab(0x3cd,0x369)]={'init':_0x28bc9c=>{const _0x3ec962={};_0x3ec962['type']=_0x3d2365(0x128,0xff),_0x3ec962['options']=_0x28bc9c;function _0x3d2365(_0x1af674,_0x6c7cba){return _0x5749ab(_0x1af674- -0x34c,_0x6c7cba);}this['worker']['postMessage'](_0x3ec962);},'setOptions':_0x423bc7=>{const _0x535156={};_0x535156[_0x261691(0x253,0x27f)]='setOptions';function _0x261691(_0x117ffa,_0x77e338){return _0x2bfbb1(_0x77e338-0x404,_0x117ffa);}_0x535156['options']=_0x423bc7;function _0x4fa841(_0x540114,_0x574471){return _0x2bfbb1(_0x540114-0x5df,_0x574471);}this[_0x4fa841(0x4bf,0x4af)]['postMessage'](_0x535156);},'setDate':_0xf286f9=>{const _0x2e369e={};_0x2e369e['type']=_0x402836(-0x115,-0x18a);function _0x402836(_0x392287,_0x2969e4){return _0x2bfbb1(_0x2969e4-0x19,_0x392287);}_0x2e369e[_0x402836(-0x1a7,-0x181)]=_0xf286f9;function _0x42169a(_0x3e4ccf,_0x21be18){return _0x2bfbb1(_0x3e4ccf-0x1ae,_0x21be18);}this['worker']['postMessage'](_0x2e369e);},'update':()=>{if(this[_0x3999f9(0xe1,0x5e)])return;function _0x3a5c9f(_0x4bc4fd,_0x4fff3b){return _0x5749ab(_0x4bc4fd- -0x14c,_0x4fff3b);}this[_0x3a5c9f(0x2fc,0x297)]=!![];function _0x3999f9(_0x417386,_0xafe585){return _0x2bfbb1(_0x417386-0x242,_0xafe585);}const _0x3fa9b3={};_0x3fa9b3['type']='update',this[_0x3a5c9f(0x33d,0x3ba)]['postMessage'](_0x3fa9b3);},'clear':()=>{const _0x3d8daf={};function _0x195458(_0x192b85,_0x847650){return _0x2bfbb1(_0x847650-0x3a8,_0x192b85);}_0x3d8daf['type']=_0x274277(0x24e,0x243);function _0x274277(_0x13897d,_0x3092b7){return _0x5749ab(_0x3092b7- -0x250,_0x13897d);}this[_0x195458(0x25f,0x288)]['postMessage'](_0x3d8daf);}},this[_0x2bfbb1(-0x1dc,-0x24d)]['init'](this['options']);}}mars3d__namespace['LayerUtil']['register'](_0x3f784e(0x381,0x3d0),CanvasWindLayer),mars3d__namespace[_0x471590(0x2a7,0x2fa)][_0x3f784e(0x3c8,0x380)]=CanvasWindLayer,mars3d__namespace[_0x471590(0x313,0x331)]=CanvasWindField,mars3d__namespace[_0x3f784e(0x306,0x370)]=WindUtil,exports['CanvasWindField']=CanvasWindField,exports['CanvasWindLayer']=CanvasWindLayer,exports['WindLayer']=WindLayer,exports[_0x3f784e(0x337,0x370)]=WindUtil;const _0x55ecb2={};_0x55ecb2['value']=!![],Object['defineProperty'](exports,'__esModule',_0x55ecb2);
|
|
14
|
+
'use strict';(function(_0x4c5e9b,_0x1d4b8d){function _0x46394c(_0x2a1a20,_0x340e72){return _0x3462(_0x2a1a20-0x378,_0x340e72);}const _0x5577dc=_0x4c5e9b();function _0x4af459(_0x478b4d,_0x42451d){return _0x3462(_0x478b4d- -0x269,_0x42451d);}while(!![]){try{const _0x47bd81=-parseInt(_0x4af459(-0xc4,-0x138))/0x1*(parseInt(_0x4af459(-0xec,-0x108))/0x2)+parseInt(_0x46394c(0x409,0x3f4))/0x3*(-parseInt(_0x46394c(0x4d9,0x54b))/0x4)+-parseInt(_0x4af459(-0x1dc,-0x235))/0x5*(parseInt(_0x46394c(0x447,0x46f))/0x6)+-parseInt(_0x4af459(-0x123,-0xbf))/0x7*(parseInt(_0x4af459(-0x1e4,-0x206))/0x8)+-parseInt(_0x46394c(0x473,0x4a0))/0x9*(-parseInt(_0x4af459(-0x161,-0x13b))/0xa)+-parseInt(_0x4af459(-0x1bc,-0x22a))/0xb*(-parseInt(_0x46394c(0x406,0x384))/0xc)+parseInt(_0x46394c(0x430,0x49e))/0xd;if(_0x47bd81===_0x1d4b8d)break;else _0x5577dc['push'](_0x5577dc['shift']());}catch(_0x4f72ca){_0x5577dc['push'](_0x5577dc['shift']());}}}(_0x556b,0x7f34e));function _interopNamespace(_0xaf1186){if(_0xaf1186&&_0xaf1186['__esModule'])return _0xaf1186;var _0x66f770=Object['create'](null);function _0x18925e(_0x5493cc,_0x257c4e){return _0x3462(_0x257c4e- -0x2b2,_0x5493cc);}_0xaf1186&&Object['keys'](_0xaf1186)[_0x17cb35(0xf4,0xac)](function(_0x218a4d){function _0x130e03(_0x3cab9f,_0x3c4646){return _0x17cb35(_0x3cab9f-0x28c,_0x3c4646);}if(_0x218a4d!=='default'){var _0x2212f7=Object['getOwnPropertyDescriptor'](_0xaf1186,_0x218a4d);Object['defineProperty'](_0x66f770,_0x218a4d,_0x2212f7[_0x130e03(0x326,0x345)]?_0x2212f7:{'enumerable':!![],'get':function(){return _0xaf1186[_0x218a4d];}});}});function _0x17cb35(_0x46397b,_0x242080){return _0x3462(_0x46397b- -0xa1,_0x242080);}return _0x66f770[_0x17cb35(-0x3,-0x28)]=_0xaf1186,_0x66f770;}var mars3d__namespace=_interopNamespace(mars3d);const Cesium$7=mars3d__namespace['Cesium'];function getU(_0x15082d,_0x43c5ec){const _0x11892a=_0x15082d*Math['cos'](Cesium$7['Math']['toRadians'](_0x43c5ec));return _0x11892a;}function getV(_0x5a973a,_0xbaf6cd){function _0x9dc5c0(_0x594cb5,_0x38123c){return _0x3462(_0x594cb5- -0x22e,_0x38123c);}const _0xdfb7a8=_0x5a973a*Math[_0x9dc5c0(-0x16f,-0x19d)](Cesium$7['Math']['toRadians'](_0xbaf6cd));return _0xdfb7a8;}function getSpeed(_0x30f88b,_0x4e2947){const _0xe7b581=Math['sqrt'](Math['pow'](_0x30f88b,0x2)+Math['pow'](_0x4e2947,0x2));return _0xe7b581;}function getDirection(_0x4576dc,_0xcb3540){let _0x180cc6=Cesium$7[_0x2a050a(-0x17e,-0x134)]['toDegrees'](Math['atan2'](_0xcb3540,_0x4576dc));_0x180cc6+=_0x180cc6<0x0?0x168:0x0;function _0x2a050a(_0x15000d,_0x39cf77){return _0x3462(_0x15000d- -0x239,_0x39cf77);}return _0x180cc6;}const _0x5e33b3={};_0x5e33b3['__proto__']=null,_0x5e33b3[_0x556281(-0x21b,-0x239)]=getU,_0x5e33b3[_0x5caa0a(0x10,-0x74)]=getV,_0x5e33b3['getSpeed']=getSpeed,_0x5e33b3[_0x556281(-0x399,-0x317)]=getDirection;function _0x3462(_0x24c853,_0x337f89){const _0x556b35=_0x556b();return _0x3462=function(_0x34625f,_0x36b6f1){_0x34625f=_0x34625f-0x83;let _0x5e9830=_0x556b35[_0x34625f];return _0x5e9830;},_0x3462(_0x24c853,_0x337f89);}var WindUtil=_0x5e33b3;const Cesium$6=mars3d__namespace[_0x5caa0a(0xf5,0xfb)];class CustomPrimitive{constructor(_0x5ce202){this['commandType']=_0x5ce202[_0x1f2a28(0xe5,0x105)],this[_0x1f2a28(0xf9,0xcd)]=_0x5ce202['geometry'];function _0x1f2a28(_0x88c035,_0x3ff81f){return _0x5caa0a(_0x88c035-0x2b,_0x3ff81f);}this[_0x1f2a28(0x86,0x4b)]=_0x5ce202['attributeLocations'],this['primitiveType']=_0x5ce202['primitiveType'],this['uniformMap']=_0x5ce202[_0x9c4462(-0x2d4,-0x254)],this['vertexShaderSource']=_0x5ce202['vertexShaderSource'];function _0x9c4462(_0x1e7b19,_0x546389){return _0x556281(_0x546389,_0x1e7b19- -0x26);}this['fragmentShaderSource']=_0x5ce202['fragmentShaderSource'],this[_0x1f2a28(0x11b,0x14b)]=_0x5ce202[_0x9c4462(-0x23b,-0x29e)],this['framebuffer']=_0x5ce202['framebuffer'],this['outputTexture']=_0x5ce202['outputTexture'],this['autoClear']=_0x5ce202[_0x1f2a28(0xbd,0x3f)]??![],this['preExecute']=_0x5ce202[_0x9c4462(-0x28c,-0x295)],this['show']=!![],this['commandToExecute']=undefined,this[_0x9c4462(-0x287,-0x234)]=undefined,this['autoClear']&&(this['clearCommand']=new Cesium$6[(_0x1f2a28(0x72,0x68))]({'color':new Cesium$6['Color'](0x0,0x0,0x0,0x0),'depth':0x1,'framebuffer':this[_0x9c4462(-0x353,-0x30d)],'pass':Cesium$6[_0x9c4462(-0x2e6,-0x303)]['OPAQUE']}));}['createCommand'](_0x54effa){function _0x22034a(_0x31e9ec,_0x4ff1a3){return _0x5caa0a(_0x4ff1a3-0x2a9,_0x31e9ec);}function _0x2b249e(_0x16a245,_0x3609ea){return _0x5caa0a(_0x16a245-0x1e9,_0x3609ea);}switch(this['commandType']){case'Draw':{const _0x216ffa=Cesium$6[_0x2b249e(0x2d3,0x2d6)][_0x22034a(0x311,0x350)]({'context':_0x54effa,'geometry':this['geometry'],'attributeLocations':this['attributeLocations'],'bufferUsage':Cesium$6['BufferUsage']['STATIC_DRAW']}),_0x155673={};_0x155673['context']=_0x54effa,_0x155673[_0x2b249e(0x244,0x211)]=this[_0x22034a(0x394,0x304)],_0x155673[_0x2b249e(0x243,0x262)]=this['vertexShaderSource'],_0x155673[_0x2b249e(0x1ee,0x165)]=this[_0x2b249e(0x1ee,0x17b)];const _0x117a57=Cesium$6[_0x2b249e(0x1f7,0x1ad)][_0x22034a(0x3f7,0x376)](_0x155673),_0x38a9bd=Cesium$6[_0x2b249e(0x1bd,0x22c)]['fromCache'](this[_0x22034a(0x3f1,0x399)]);return new Cesium$6[(_0x22034a(0x25c,0x2a8))]({'primitiveType':this['primitiveType'],'shaderProgram':_0x117a57,'vertexArray':_0x216ffa,'modelMatrix':Cesium$6['Matrix4']['IDENTITY'],'renderState':_0x38a9bd,'uniformMap':this['uniformMap'],'castShadows':![],'receiveShadows':![],'framebuffer':this['framebuffer'],'pass':Cesium$6['Pass'][_0x2b249e(0x24c,0x24c)],'pickOnly':!![],'owner':this});}case _0x22034a(0x379,0x2eb):{const _0x1ccff4={};return _0x1ccff4['owner']=this,_0x1ccff4['fragmentShaderSource']=this[_0x22034a(0x322,0x2ae)],_0x1ccff4['uniformMap']=this[_0x2b249e(0x240,0x1e7)],_0x1ccff4[_0x2b249e(0x2d2,0x34b)]=this[_0x2b249e(0x2d2,0x25b)],_0x1ccff4['persists']=!![],new Cesium$6['ComputeCommand'](_0x1ccff4);}}}['setGeometry'](_0x41ce68,_0x30dd82){function _0x667ca7(_0x4877b7,_0x5aacd0){return _0x556281(_0x5aacd0,_0x4877b7-0x5ef);}this[_0x2414d2(0x268,0x2e1)]=_0x30dd82;function _0x2414d2(_0x532da0,_0x5966f0){return _0x5caa0a(_0x532da0-0x19a,_0x5966f0);}const _0x109e92=Cesium$6[_0x667ca7(0x3d4,0x3f0)]['fromGeometry']({'context':_0x41ce68,'geometry':this[_0x2414d2(0x268,0x2e6)],'attributeLocations':this['attributeLocations'],'bufferUsage':Cesium$6['BufferUsage']['STATIC_DRAW']});this[_0x667ca7(0x388,0x3f5)][_0x2414d2(0x1ce,0x1a4)]=_0x109e92;}[_0x556281(-0x304,-0x299)](_0x584ae0){function _0x3811fa(_0x472fdb,_0x4c5de7){return _0x5caa0a(_0x4c5de7- -0x170,_0x472fdb);}if(!this['show'])return;function _0x281bf0(_0x36b19c,_0x40b56c){return _0x556281(_0x40b56c,_0x36b19c-0x68);}if(_0x584ae0['mode']!==Cesium$6['SceneMode'][_0x281bf0(-0x22a,-0x1aa)])return;!Cesium$6['defined'](this['commandToExecute'])&&(this['commandToExecute']=this[_0x3811fa(-0x24,-0x91)](_0x584ae0['context'])),Cesium$6[_0x281bf0(-0x275,-0x20e)](this['preExecute'])&&this[_0x3811fa(-0x137,-0xd1)](),Cesium$6['defined'](this['clearCommand'])&&_0x584ae0[_0x3811fa(-0xdc,-0x158)]['push'](this[_0x3811fa(-0xca,-0xcc)]),_0x584ae0['commandList'][_0x281bf0(-0x1af,-0x212)](this[_0x281bf0(-0x1ff,-0x267)]);}['isDestroyed'](){return![];}[_0x5caa0a(0x21,-0x32)](){function _0x18e0d9(_0x48211a,_0x42559c){return _0x556281(_0x42559c,_0x48211a-0x193);}function _0x2308ac(_0x1dfc95,_0x2490ab){return _0x556281(_0x1dfc95,_0x2490ab- -0x5);}if(this['clearCommand']){var _0x38b3d3,_0x2adbd1;(_0x38b3d3=this['clearCommand'])!==null&&_0x38b3d3!==void 0x0&&_0x38b3d3['vertexArray']&&this['clearCommand'][_0x2308ac(-0x329,-0x2d6)]['destroy'](),(_0x2adbd1=this[_0x18e0d9(-0xce,-0x139)])!==null&&_0x2adbd1!==void 0x0&&_0x2adbd1['shaderProgram']&&this['clearCommand'][_0x18e0d9(-0xbc,-0x127)]['destroy'](),delete this['clearCommand'];}return this['commandToExecute']&&(this['commandToExecute']['vertexArray']&&this['commandToExecute']['vertexArray']['destroy'](),this['commandToExecute'][_0x2308ac(-0x1ce,-0x254)]&&this['commandToExecute']['shaderProgram']['destroy'](),delete this['commandToExecute']),Cesium$6[_0x2308ac(-0x297,-0x2ec)](this);}}const Cesium$5=mars3d__namespace['Cesium'],Util=(function(){const _0x387ecf=function(){const _0x23865b=new Cesium$5['Geometry']({'attributes':new Cesium$5['GeometryAttributes']({'position':new Cesium$5['GeometryAttribute']({'componentDatatype':Cesium$5['ComponentDatatype']['FLOAT'],'componentsPerAttribute':0x3,'values':new Float32Array([-0x1,-0x1,0x0,0x1,-0x1,0x0,0x1,0x1,0x0,-0x1,0x1,0x0])}),'st':new Cesium$5['GeometryAttribute']({'componentDatatype':Cesium$5['ComponentDatatype']['FLOAT'],'componentsPerAttribute':0x2,'values':new Float32Array([0x0,0x0,0x1,0x0,0x1,0x1,0x0,0x1])})}),'indices':new Uint32Array([0x3,0x2,0x0,0x0,0x2,0x1])});return _0x23865b;},_0x1d5cbb=function(_0x2176b3,_0x208bb5){if(Cesium$5['defined'](_0x208bb5)){const _0x5909b2={};_0x5909b2['arrayBufferView']=_0x208bb5,_0x2176b3['source']=_0x5909b2;}const _0x584626=new Cesium$5['Texture'](_0x2176b3);return _0x584626;},_0xdddbd9=function(_0x818613,_0x22355f,_0x5d2da7){const _0x313c18={};_0x313c18['context']=_0x818613,_0x313c18['colorTextures']=[_0x22355f],_0x313c18['depthTexture']=_0x5d2da7;const _0xd9a9d4=new Cesium$5['Framebuffer'](_0x313c18);return _0xd9a9d4;},_0x21d2b9=function(_0x1d5e7a){const _0xcf019e=!![],_0x467de7=![],_0x4d9d6f={};_0x4d9d6f['viewport']=_0x1d5e7a['viewport'],_0x4d9d6f['depthTest']=_0x1d5e7a[_0x53690f(-0x118,-0xa3)],_0x4d9d6f['depthMask']=_0x1d5e7a[_0x1c65ae(-0x78,-0x49)],_0x4d9d6f[_0x53690f(-0xfb,-0x106)]=_0x1d5e7a[_0x1c65ae(-0xcd,-0x143)];function _0x53690f(_0x3c25ef,_0x47c4c1){return _0x3462(_0x3c25ef- -0x22b,_0x47c4c1);}const _0x5b05f3=_0x4d9d6f,_0x139c19=Cesium$5['Appearance']['getDefaultRenderState'](_0xcf019e,_0x467de7,_0x5b05f3);function _0x1c65ae(_0x5e119d,_0x4a9b93){return _0x3462(_0x5e119d- -0x1fd,_0x4a9b93);}return _0x139c19;},_0x1d3c63=function(_0x51485f){const _0x4c499b={},_0x298ced=Cesium$5['Math']['mod'](_0x51485f[_0x5a53fa(0x2ff,0x2ae)],Cesium$5['Math'][_0x1c3e94(0x1b9,0x15e)]),_0x4edcdb=Cesium$5['Math']['mod'](_0x51485f[_0x5a53fa(0x2c8,0x260)],Cesium$5[_0x1c3e94(0x15b,0x153)]['TWO_PI']),_0x5737d9=_0x51485f['width'];let _0x5b2b95,_0x353e0f;_0x5737d9>Cesium$5['Math']['THREE_PI_OVER_TWO']?(_0x5b2b95=0x0,_0x353e0f=Cesium$5['Math']['TWO_PI']):_0x4edcdb-_0x298ced<_0x5737d9?(_0x5b2b95=_0x298ced,_0x353e0f=_0x298ced+_0x5737d9):(_0x5b2b95=_0x298ced,_0x353e0f=_0x4edcdb);_0x4c499b[_0x1c3e94(0x221,0x27d)]={'min':Cesium$5['Math'][_0x1c3e94(0x1f2,0x1c2)](_0x5b2b95),'max':Cesium$5[_0x5a53fa(0x2df,0x29a)]['toDegrees'](_0x353e0f)};const _0x59a1cd=_0x51485f['south'],_0x14ec6f=_0x51485f[_0x1c3e94(0x1eb,0x215)];function _0x5a53fa(_0xbd5293,_0x1025ed){return _0x3462(_0xbd5293-0x224,_0x1025ed);}const _0x24eb7d=_0x51485f[_0x1c3e94(0x223,0x19d)],_0x8bfb3f=_0x24eb7d>Cesium$5['Math']['PI']/0xc?_0x24eb7d/0x2:0x0;let _0x522d9e=Cesium$5[_0x1c3e94(0x15b,0x161)]['clampToLatitudeRange'](_0x59a1cd-_0x8bfb3f),_0x1a4b3b=Cesium$5[_0x5a53fa(0x2df,0x2da)][_0x1c3e94(0x147,0xf0)](_0x14ec6f+_0x8bfb3f);_0x522d9e<-Cesium$5['Math']['PI_OVER_THREE']&&(_0x522d9e=-Cesium$5['Math']['PI_OVER_TWO']);function _0x1c3e94(_0x1aadd7,_0x3d8853){return _0x3462(_0x1aadd7-0xa0,_0x3d8853);}return _0x1a4b3b>Cesium$5['Math'][_0x5a53fa(0x30f,0x2bd)]&&(_0x1a4b3b=Cesium$5['Math']['PI_OVER_TWO']),_0x4c499b[_0x1c3e94(0x16e,0x132)]={'min':Cesium$5[_0x1c3e94(0x15b,0x12b)]['toDegrees'](_0x522d9e),'max':Cesium$5['Math'][_0x1c3e94(0x1f2,0x1af)](_0x1a4b3b)},_0x4c499b;};function _0x24ed87(_0x51d5c0,_0x40bfbb){return _0x5caa0a(_0x51d5c0-0xf1,_0x40bfbb);}const _0x43408f={};_0x43408f['getFullscreenQuad']=_0x387ecf,_0x43408f['createTexture']=_0x1d5cbb,_0x43408f[_0x24ed87(0x1dc,0x193)]=_0xdddbd9,_0x43408f['createRawRenderState']=_0x21d2b9,_0x43408f[_0x24ed87(0x19b,0x16c)]=_0x1d3c63;function _0x578bd5(_0x5f1839,_0x210204){return _0x5caa0a(_0x5f1839- -0x16b,_0x210204);}return _0x43408f;}());var segmentDraw_vert=_0x5caa0a(0x14,0x34),segmentDraw_frag='uniform\x20sampler2D\x20colorTable;\x0a\x0ain\x20float\x20speedNormalization;\x0a\x0avoid\x20main()\x20{\x0a\x20\x20\x20\x20out_FragColor\x20=\x20texture(colorTable,\x20vec2(speedNormalization,\x200.0));\x0a}\x0a',fullscreen_vert=_0x556281(-0x291,-0x246),trailDraw_frag='uniform\x20sampler2D\x20segmentsColorTexture;\x0auniform\x20sampler2D\x20segmentsDepthTexture;\x0a\x0auniform\x20sampler2D\x20currentTrailsColor;\x0auniform\x20sampler2D\x20trailsDepthTexture;\x0a\x0auniform\x20float\x20fadeOpacity;\x0a\x0ain\x20vec2\x20textureCoordinate;\x0a\x0avoid\x20main()\x20{\x0a\x20\x20\x20\x20vec4\x20pointsColor\x20=\x20texture(segmentsColorTexture,\x20textureCoordinate);\x0a\x20\x20\x20\x20vec4\x20trailsColor\x20=\x20texture(currentTrailsColor,\x20textureCoordinate);\x0a\x0a\x20\x20\x20\x20trailsColor\x20=\x20floor(fadeOpacity\x20*\x20255.0\x20*\x20trailsColor)\x20/\x20255.0;\x20//\x20make\x20sure\x20the\x20trailsColor\x20will\x20be\x20strictly\x20decreased\x0a\x0a\x20\x20\x20\x20float\x20pointsDepth\x20=\x20texture(segmentsDepthTexture,\x20textureCoordinate).r;\x0a\x20\x20\x20\x20float\x20trailsDepth\x20=\x20texture(trailsDepthTexture,\x20textureCoordinate).r;\x0a\x20\x20\x20\x20float\x20globeDepth\x20=\x20czm_unpackDepth(texture(czm_globeDepthTexture,\x20textureCoordinate));\x0a\x0a\x20\x20\x20\x20out_FragColor\x20=\x20vec4(0.0);\x0a\x20\x20\x20\x20if\x20(pointsDepth\x20<\x20globeDepth)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20out_FragColor\x20=\x20out_FragColor\x20+\x20pointsColor;\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20if\x20(trailsDepth\x20<\x20globeDepth)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20out_FragColor\x20=\x20out_FragColor\x20+\x20trailsColor;\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20gl_FragDepth\x20=\x20min(pointsDepth,\x20trailsDepth);\x0a}\x0a',screenDraw_frag='uniform\x20sampler2D\x20trailsColorTexture;\x0auniform\x20sampler2D\x20trailsDepthTexture;\x0a\x0ain\x20vec2\x20textureCoordinate;\x0a\x0avoid\x20main()\x20{\x0a\x20\x20\x20\x20vec4\x20trailsColor\x20=\x20texture(trailsColorTexture,\x20textureCoordinate);\x0a\x20\x20\x20\x20float\x20trailsDepth\x20=\x20texture(trailsDepthTexture,\x20textureCoordinate).r;\x0a\x20\x20\x20\x20float\x20globeDepth\x20=\x20czm_unpackDepth(texture(czm_globeDepthTexture,\x20textureCoordinate));\x0a\x0a\x20\x20\x20\x20if\x20(trailsDepth\x20<\x20globeDepth)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20out_FragColor\x20=\x20trailsColor;\x0a\x20\x20\x20\x20}\x20else\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20out_FragColor\x20=\x20vec4(0.0);\x0a\x20\x20\x20\x20}\x0a}\x0a';const Cesium$4=mars3d__namespace[_0x5caa0a(0xf5,0x180)];class ParticlesRendering{constructor(_0x406cbd,_0x1ba6c8,_0x1bd96e,_0x3f749b,_0x509163){this['createRenderingTextures'](_0x406cbd,_0x1ba6c8,_0x1bd96e['colors']);function _0x1ec51d(_0x39fc3e,_0x20806b){return _0x5caa0a(_0x39fc3e-0x396,_0x20806b);}this[_0x1ec51d(0x404,0x45b)](_0x406cbd),this['createRenderingPrimitives'](_0x406cbd,_0x1bd96e,_0x3f749b,_0x509163);}['createRenderingTextures'](_0x68ccd8,_0x513855,_0x5d24d7){const _0x1bcac7={};_0x1bcac7[_0x314ba2(-0x1af,-0x233)]=_0x68ccd8,_0x1bcac7[_0x314ba2(-0x291,-0x205)]=_0x68ccd8['drawingBufferWidth'],_0x1bcac7[_0x314ba2(-0x177,-0x181)]=_0x68ccd8['drawingBufferHeight'],_0x1bcac7['pixelFormat']=Cesium$4['PixelFormat'][_0x314ba2(-0x1eb,-0x18a)];function _0x314ba2(_0x1b83f5,_0x167036){return _0x556281(_0x1b83f5,_0x167036-0xb3);}_0x1bcac7['pixelDatatype']=Cesium$4[_0x314ba2(-0x18f,-0x214)]['UNSIGNED_BYTE'];const _0x30b838=_0x1bcac7,_0x55a08a={};_0x55a08a['context']=_0x68ccd8,_0x55a08a[_0x314ba2(-0x1f7,-0x205)]=_0x68ccd8['drawingBufferWidth'],_0x55a08a[_0x314ba2(-0x18f,-0x181)]=_0x68ccd8['drawingBufferHeight'],_0x55a08a[_0x2bf357(0x34d,0x34e)]=Cesium$4['PixelFormat']['DEPTH_COMPONENT'],_0x55a08a['pixelDatatype']=Cesium$4[_0x2bf357(0x2ba,0x340)]['UNSIGNED_INT'];const _0x3086c0=_0x55a08a,_0x1d447f=_0x5d24d7[_0x314ba2(-0x1cd,-0x22e)],_0x33d353=new Float32Array(_0x1d447f*0x3);for(let _0x473495=0x0;_0x473495<_0x1d447f;_0x473495++){const _0x5bcc53=Cesium$4['Color'][_0x2bf357(0x430,0x3c2)](_0x5d24d7[_0x473495]);_0x33d353[0x3*_0x473495]=_0x5bcc53['red'],_0x33d353[0x3*_0x473495+0x1]=_0x5bcc53['green'],_0x33d353[0x3*_0x473495+0x2]=_0x5bcc53['blue'];}const _0x3c885f={'context':_0x68ccd8,'width':_0x1d447f,'height':0x1,'pixelFormat':Cesium$4[_0x314ba2(-0x280,-0x20f)]['RGB'],'pixelDatatype':Cesium$4['PixelDatatype']['FLOAT'],'sampler':new Cesium$4['Sampler']({'minificationFilter':Cesium$4[_0x2bf357(0x33f,0x381)]['LINEAR'],'magnificationFilter':Cesium$4['TextureMagnificationFilter']['LINEAR']})};function _0x2bf357(_0x4ddc88,_0x201d1e){return _0x556281(_0x4ddc88,_0x201d1e-0x607);}this['textures']={'segmentsColor':Util['createTexture'](_0x30b838),'segmentsDepth':Util[_0x314ba2(-0x2ca,-0x272)](_0x3086c0),'currentTrailsColor':Util[_0x314ba2(-0x1e2,-0x272)](_0x30b838),'currentTrailsDepth':Util[_0x314ba2(-0x293,-0x272)](_0x3086c0),'nextTrailsColor':Util[_0x2bf357(0x2da,0x2e2)](_0x30b838),'nextTrailsDepth':Util[_0x2bf357(0x295,0x2e2)](_0x3086c0),'colorTable':Util['createTexture'](_0x3c885f,_0x33d353)};}[_0x556281(-0x2e0,-0x297)](_0x36371d){function _0x422792(_0x913441,_0x11d9b2){return _0x556281(_0x913441,_0x11d9b2-0x31a);}function _0x39b2e4(_0x14c317,_0xf5d49d){return _0x556281(_0x14c317,_0xf5d49d-0x2e4);}this[_0x422792(0x4a,0x3a)]={'segments':Util['createFramebuffer'](_0x36371d,this['textures']['segmentsColor'],this['textures'][_0x422792(0xbe,0x3b)]),'currentTrails':Util['createFramebuffer'](_0x36371d,this['textures'][_0x422792(0x130,0x9f)],this[_0x422792(0x93,0x28)][_0x422792(0x112,0xe5)]),'nextTrails':Util[_0x39b2e4(0x98,0xca)](_0x36371d,this['textures'][_0x422792(0xaa,0x1d)],this[_0x422792(0xb1,0x28)][_0x422792(0xd5,0xc9)])};}['createSegmentsGeometry'](_0x163679){const _0x2e76e9=0x4;let _0x37bdb2=[];for(let _0x36f54d=0x0;_0x36f54d<_0x163679['particlesTextureSize'];_0x36f54d++){for(let _0xd21d59=0x0;_0xd21d59<_0x163679['particlesTextureSize'];_0xd21d59++){for(let _0x49720a=0x0;_0x49720a<_0x2e76e9;_0x49720a++){_0x37bdb2[_0x44cede(-0x1d3,-0x230)](_0x36f54d/_0x163679[_0x26b50a(0x4db,0x480)]),_0x37bdb2[_0x26b50a(0x55c,0x5a0)](_0xd21d59/_0x163679[_0x44cede(-0x254,-0x20b)]);}}}_0x37bdb2=new Float32Array(_0x37bdb2);let _0x479f5f=[];function _0x26b50a(_0x57460d,_0x2e73d2){return _0x556281(_0x2e73d2,_0x57460d-0x773);}const _0x34d386=[-0x1,0x1],_0x3de6fe=[-0x1,0x1];for(let _0x56504a=0x0;_0x56504a<_0x163679['maxParticles'];_0x56504a++){for(let _0x268650=0x0;_0x268650<_0x2e76e9/0x2;_0x268650++){for(let _0x135370=0x0;_0x135370<_0x2e76e9/0x2;_0x135370++){_0x479f5f['push'](_0x34d386[_0x268650]),_0x479f5f[_0x44cede(-0x1d3,-0x1cf)](_0x3de6fe[_0x135370]),_0x479f5f['push'](0x0);}}}_0x479f5f=new Float32Array(_0x479f5f);const _0x4b2f29=0x6*_0x163679[_0x26b50a(0x49a,0x431)],_0x199ef2=new Uint32Array(_0x4b2f29);for(let _0x2746bd=0x0,_0x13a41a=0x0,_0x12bbb9=0x0;_0x2746bd<_0x163679[_0x44cede(-0x295,-0x214)];_0x2746bd++){_0x199ef2[_0x13a41a++]=_0x12bbb9+0x0,_0x199ef2[_0x13a41a++]=_0x12bbb9+0x1,_0x199ef2[_0x13a41a++]=_0x12bbb9+0x2,_0x199ef2[_0x13a41a++]=_0x12bbb9+0x2,_0x199ef2[_0x13a41a++]=_0x12bbb9+0x1,_0x199ef2[_0x13a41a++]=_0x12bbb9+0x3,_0x12bbb9+=0x4;}const _0x21f645=new Cesium$4['Geometry']({'attributes':new Cesium$4['GeometryAttributes']({'st':new Cesium$4[(_0x26b50a(0x545,0x59b))]({'componentDatatype':Cesium$4['ComponentDatatype'][_0x44cede(-0x235,-0x23c)],'componentsPerAttribute':0x2,'values':_0x37bdb2}),'normal':new Cesium$4[(_0x26b50a(0x545,0x533))]({'componentDatatype':Cesium$4['ComponentDatatype'][_0x26b50a(0x4fa,0x511)],'componentsPerAttribute':0x3,'values':_0x479f5f})}),'indices':_0x199ef2});function _0x44cede(_0x3c4809,_0x3b63bc){return _0x5caa0a(_0x3c4809- -0x2c1,_0x3b63bc);}return _0x21f645;}['createRenderingPrimitives'](_0x2fd6fa,_0x21796a,_0x1a824b,_0x8f92c8){const _0x383b9c=this,_0x2c8fe3={};_0x2c8fe3['st']=0x0,_0x2c8fe3['normal']=0x1;const _0x6d975a={};_0x6d975a[_0x49f14f(0x125,0x172)]=[segmentDraw_vert];const _0x533f23={};_0x533f23[_0x49f14f(0x1fe,0x172)]=[segmentDraw_frag];const _0x55a071={};_0x55a071['enabled']=!![];const _0x2d8f6c={};_0x2d8f6c['viewport']=undefined,_0x2d8f6c[_0x49f14f(0x1c2,0x1b9)]=_0x55a071,_0x2d8f6c['depthMask']=!![];const _0x361ddb={};_0x361ddb['position']=0x0,_0x361ddb['st']=0x1;const _0x35dbbb={};_0x35dbbb['defines']=[_0x49f14f(0x208,0x186)],_0x35dbbb[_0x451ac1(0x37e,0x339)]=[fullscreen_vert];const _0x139b04={};_0x139b04[_0x49f14f(0xa4,0x12d)]=['DISABLE_LOG_DEPTH_FRAGMENT_WRITE'],_0x139b04[_0x49f14f(0x1bf,0x172)]=[trailDraw_frag];const _0xc06c08={};_0xc06c08[_0x49f14f(0x26a,0x230)]=0x0;function _0x451ac1(_0x5e3499,_0x264cf4){return _0x5caa0a(_0x5e3499-0x364,_0x264cf4);}_0xc06c08['st']=0x1;const _0x28b50e={};_0x28b50e[_0x451ac1(0x339,0x398)]=[_0x49f14f(0x1ad,0x186)],_0x28b50e[_0x49f14f(0x158,0x172)]=[fullscreen_vert];const _0x580e2b={};_0x580e2b[_0x49f14f(0xc4,0x12d)]=[_0x49f14f(0x1a7,0x1fa)];function _0x49f14f(_0x54560b,_0x277063){return _0x556281(_0x54560b,_0x277063-0x45d);}_0x580e2b[_0x49f14f(0x1da,0x172)]=[screenDraw_frag];const _0x4aa85f={};_0x4aa85f['enabled']=![];const _0x499659={};_0x499659[_0x49f14f(0x1b9,0x1eb)]=!![],this[_0x451ac1(0x3a8,0x421)]={'segments':new CustomPrimitive({'commandType':'Draw','attributeLocations':_0x2c8fe3,'geometry':this['createSegmentsGeometry'](_0x21796a),'primitiveType':Cesium$4[_0x451ac1(0x3f4,0x43f)]['TRIANGLES'],'uniformMap':{'currentParticlesPosition':function(){return _0x8f92c8['particlesTextures']['currentParticlesPosition'];},'postProcessingPosition':function(){return _0x8f92c8['particlesTextures']['postProcessingPosition'];},'postProcessingSpeed':function(){function _0x493627(_0x42c821,_0x1959af){return _0x49f14f(_0x1959af,_0x42c821- -0x96);}return _0x8f92c8[_0x493627(0xd9,0x4d)]['postProcessingSpeed'];},'colorTable':function(){function _0x1f1298(_0x30d0f9,_0x54a40d){return _0x451ac1(_0x30d0f9-0xfb,_0x54a40d);}return _0x383b9c[_0x1f1298(0x472,0x43c)]['colorTable'];},'aspect':function(){function _0xefe1b(_0x761d82,_0x9d95d8){return _0x49f14f(_0x761d82,_0x9d95d8-0x103);}return _0x2fd6fa['drawingBufferWidth']/_0x2fd6fa[_0xefe1b(0x203,0x27d)];},'pixelSize':function(){function _0xe763d(_0x55c763,_0x1f8862){return _0x49f14f(_0x55c763,_0x1f8862-0x140);}return _0x1a824b[_0xe763d(0x325,0x384)];},'lineWidth':function(){function _0x208018(_0x283c34,_0x457164){return _0x49f14f(_0x457164,_0x283c34- -0x80);}return _0x21796a[_0x208018(0x155,0x18f)];},'particleHeight':function(){function _0x4e8fc8(_0x3c3c16,_0xa30f67){return _0x451ac1(_0x3c3c16- -0x429,_0xa30f67);}return _0x21796a[_0x4e8fc8(-0xeb,-0x12b)];}},'vertexShaderSource':new Cesium$4[(_0x49f14f(0x29a,0x24e))](_0x6d975a),'fragmentShaderSource':new Cesium$4[(_0x49f14f(0x1ef,0x24e))](_0x533f23),'rawRenderState':Util[_0x49f14f(0x134,0x1b6)](_0x2d8f6c),'framebuffer':this[_0x49f14f(0x132,0x17d)]['segments'],'autoClear':!![]}),'trails':new CustomPrimitive({'commandType':'Draw','attributeLocations':_0x361ddb,'geometry':Util['getFullscreenQuad'](),'primitiveType':Cesium$4['PrimitiveType']['TRIANGLES'],'uniformMap':{'segmentsColorTexture':function(){function _0x1ac230(_0x53991a,_0x2f66e3){return _0x451ac1(_0x53991a- -0xa4,_0x2f66e3);}return _0x383b9c['textures'][_0x1ac230(0x32a,0x38c)];},'segmentsDepthTexture':function(){return _0x383b9c['textures']['segmentsDepth'];},'currentTrailsColor':function(){function _0x1234bd(_0x4a4884,_0x5469cb){return _0x451ac1(_0x5469cb-0x7e,_0x4a4884);}return _0x383b9c[_0x1234bd(0x406,0x407)]['currentTrails']['getColorTexture'](0x0);},'trailsDepthTexture':function(){function _0x5093fd(_0x2ead70,_0xc8616e){return _0x451ac1(_0x2ead70- -0x67c,_0xc8616e);}return _0x383b9c['framebuffers'][_0x5093fd(-0x25c,-0x2e2)]['depthTexture'];},'fadeOpacity':function(){function _0x9c0389(_0x5096d9,_0x368ad8){return _0x451ac1(_0x368ad8- -0x33,_0x5096d9);}return _0x21796a[_0x9c0389(0x2f2,0x31a)];}},'vertexShaderSource':new Cesium$4[(_0x451ac1(0x45a,0x423))](_0x35dbbb),'fragmentShaderSource':new Cesium$4[(_0x49f14f(0x26f,0x24e))](_0x139b04),'rawRenderState':Util['createRawRenderState']({'viewport':undefined,'depthTest':{'enabled':!![],'func':Cesium$4[_0x49f14f(0x130,0x164)][_0x49f14f(0x225,0x1f4)]},'depthMask':!![]}),'framebuffer':this['framebuffers']['nextTrails'],'autoClear':!![],'preExecute':function(){const _0x127cc6=_0x383b9c['framebuffers']['currentTrails'];_0x383b9c[_0x287071(-0x5,0x49)]['currentTrails']=_0x383b9c[_0x314353(-0x2f,0x53)][_0x314353(0x54,0x43)],_0x383b9c['framebuffers']['nextTrails']=_0x127cc6;function _0x287071(_0x12d469,_0x274bfb){return _0x49f14f(_0x274bfb,_0x12d469- -0x182);}_0x383b9c['primitives']['trails']['commandToExecute']['framebuffer']=_0x383b9c[_0x287071(-0x5,-0x45)][_0x314353(0x8a,0x43)];function _0x314353(_0xd12b49,_0x35ff47){return _0x451ac1(_0x35ff47- -0x336,_0xd12b49);}_0x383b9c['primitives']['trails']['clearCommand']['framebuffer']=_0x383b9c['framebuffers']['nextTrails'];}}),'screen':new CustomPrimitive({'commandType':_0x451ac1(0x41f,0x45b),'attributeLocations':_0xc06c08,'geometry':Util['getFullscreenQuad'](),'primitiveType':Cesium$4[_0x49f14f(0x25f,0x1e8)]['TRIANGLES'],'uniformMap':{'trailsColorTexture':function(){return _0x383b9c['framebuffers']['nextTrails']['getColorTexture'](0x0);},'trailsDepthTexture':function(){function _0x392444(_0x1f0275,_0x308154){return _0x451ac1(_0x1f0275- -0x42f,_0x308154);}function _0x49d00f(_0x5d8509,_0x27860c){return _0x451ac1(_0x5d8509- -0x5e8,_0x27860c);}return _0x383b9c[_0x392444(-0xa6,-0xb2)][_0x49d00f(-0x26f,-0x255)]['depthTexture'];}},'vertexShaderSource':new Cesium$4['ShaderSource'](_0x28b50e),'fragmentShaderSource':new Cesium$4[(_0x451ac1(0x45a,0x3da))](_0x580e2b),'rawRenderState':Util[_0x49f14f(0x131,0x1b6)]({'viewport':undefined,'depthTest':_0x4aa85f,'depthMask':!![],'blending':_0x499659}),'framebuffer':undefined})};}}var getWind_frag=_0x556281(-0x284,-0x244),updateSpeed_frag=_0x5caa0a(-0xd,-0x7f),updatePosition_frag='uniform\x20sampler2D\x20currentParticlesPosition;\x20//\x20(lon,\x20lat,\x20lev)\x0auniform\x20sampler2D\x20currentParticlesSpeed;\x20//\x20(u,\x20v,\x20w,\x20normalization)\x0a\x0ain\x20vec2\x20v_textureCoordinates;\x0a\x0avec2\x20lengthOfLonLat(vec3\x20lonLatLev)\x20{\x0a\x20\x20\x20\x20//\x20unit\x20conversion:\x20meters\x20->\x20longitude\x20latitude\x20degrees\x0a\x20\x20\x20\x20//\x20see\x20https://en.wikipedia.org/wiki/Geographic_coordinate_system#Length_of_a_degree\x20for\x20detail\x0a\x0a\x20\x20\x20\x20//\x20Calculate\x20the\x20length\x20of\x20a\x20degree\x20of\x20latitude\x20and\x20longitude\x20in\x20meters\x0a\x20\x20\x20\x20float\x20latitude\x20=\x20radians(lonLatLev.y);\x0a\x0a\x20\x20\x20\x20float\x20term1\x20=\x20111132.92;\x0a\x20\x20\x20\x20float\x20term2\x20=\x20559.82\x20*\x20cos(2.0\x20*\x20latitude);\x0a\x20\x20\x20\x20float\x20term3\x20=\x201.175\x20*\x20cos(4.0\x20*\x20latitude);\x0a\x20\x20\x20\x20float\x20term4\x20=\x200.0023\x20*\x20cos(6.0\x20*\x20latitude);\x0a\x20\x20\x20\x20float\x20latLength\x20=\x20term1\x20-\x20term2\x20+\x20term3\x20-\x20term4;\x0a\x0a\x20\x20\x20\x20float\x20term5\x20=\x20111412.84\x20*\x20cos(latitude);\x0a\x20\x20\x20\x20float\x20term6\x20=\x2093.5\x20*\x20cos(3.0\x20*\x20latitude);\x0a\x20\x20\x20\x20float\x20term7\x20=\x200.118\x20*\x20cos(5.0\x20*\x20latitude);\x0a\x20\x20\x20\x20float\x20longLength\x20=\x20term5\x20-\x20term6\x20+\x20term7;\x0a\x0a\x20\x20\x20\x20return\x20vec2(longLength,\x20latLength);\x0a}\x0a\x0avoid\x20updatePosition(vec3\x20lonLatLev,\x20vec3\x20speed)\x20{\x0a\x20\x20\x20\x20vec2\x20lonLatLength\x20=\x20lengthOfLonLat(lonLatLev);\x0a\x20\x20\x20\x20float\x20u\x20=\x20speed.x\x20/\x20lonLatLength.x;\x0a\x20\x20\x20\x20float\x20v\x20=\x20speed.y\x20/\x20lonLatLength.y;\x0a\x20\x20\x20\x20float\x20w\x20=\x200.0;\x0a\x20\x20\x20\x20vec3\x20windVectorInLonLatLev\x20=\x20vec3(u,\x20v,\x20w);\x0a\x0a\x20\x20\x20\x20vec3\x20nextParticle\x20=\x20lonLatLev\x20+\x20windVectorInLonLatLev;\x0a\x0a\x20\x20\x20\x20out_FragColor\x20=\x20vec4(nextParticle,\x200.0);\x0a}\x0a\x0avoid\x20main()\x20{\x0a\x20\x20\x20\x20//\x20texture\x20coordinate\x20must\x20be\x20normalized\x0a\x20\x20\x20\x20vec3\x20lonLatLev\x20=\x20texture(currentParticlesPosition,\x20v_textureCoordinates).rgb;\x0a\x20\x20\x20\x20vec3\x20speed\x20=\x20texture(currentParticlesSpeed,\x20v_textureCoordinates).rgb;\x0a\x0a\x20\x20\x20\x20updatePosition(lonLatLev,\x20speed);\x0a}\x0a',postProcessingPosition_frag=_0x556281(-0x281,-0x24e),postProcessingSpeed_frag='uniform\x20sampler2D\x20postProcessingPosition;\x0auniform\x20sampler2D\x20nextParticlesSpeed;\x0a\x0ain\x20vec2\x20v_textureCoordinates;\x0a\x0avoid\x20main()\x20{\x0a\x20\x20\x20\x20vec4\x20randomParticle\x20=\x20texture(postProcessingPosition,\x20v_textureCoordinates);\x0a\x20\x20\x20\x20vec4\x20particleSpeed\x20=\x20texture(nextParticlesSpeed,\x20v_textureCoordinates);\x0a\x0a\x20\x20\x20\x20if\x20(randomParticle.a\x20>\x200.0)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20out_FragColor\x20=\x20vec4(0.0);\x0a\x20\x20\x20\x20}\x20else\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20out_FragColor\x20=\x20particleSpeed;\x0a\x20\x20\x20\x20}\x0a}\x0a';const Cesium$3=mars3d__namespace[_0x5caa0a(0xf5,0x9a)];class ParticlesComputing{constructor(_0x34b1d0,_0x37ee9f,_0xbc82a2,_0x1c9727){function _0x1fb489(_0x4f7cd8,_0x3430c5){return _0x556281(_0x3430c5,_0x4f7cd8-0x743);}this['data']=_0x37ee9f,this[_0xd12db6(-0x249,-0x2a4)](_0x34b1d0,_0x37ee9f);function _0xd12db6(_0x5f0234,_0x2be043){return _0x5caa0a(_0x2be043- -0x325,_0x5f0234);}this[_0xd12db6(-0x299,-0x2df)](_0x34b1d0,_0xbc82a2,_0x1c9727),this['createComputingPrimitives'](_0x37ee9f,_0xbc82a2,_0x1c9727);}['createWindTextures'](_0x5dbe41,_0xabb3a4){function _0x126de(_0x3620ec,_0x383f6f){return _0x5caa0a(_0x383f6f-0x15d,_0x3620ec);}function _0x117e79(_0xbac31b,_0x1a2513){return _0x556281(_0x1a2513,_0xbac31b-0x1d5);}const _0x2809e8={'context':_0x5dbe41,'width':_0xabb3a4['dimensions'][_0x126de(0x2b3,0x22c)],'height':_0xabb3a4['dimensions']['lat']*(_0xabb3a4['dimensions'][_0x117e79(-0xc0,-0xc5)]||0x1),'pixelFormat':Cesium$3['PixelFormat'][_0x117e79(-0xc1,-0x117)],'pixelDatatype':Cesium$3['PixelDatatype'][_0x126de(0x1fa,0x1e9)],'flipY':![],'sampler':new Cesium$3[(_0x126de(0x16f,0x197))]({'minificationFilter':Cesium$3[_0x126de(0x1ba,0x1dc)]['NEAREST'],'magnificationFilter':Cesium$3[_0x126de(0x22b,0x1d7)]['NEAREST']})};this['windTextures']={'U':Util['createTexture'](_0x2809e8,_0xabb3a4['U']['array']),'V':Util[_0x117e79(-0x150,-0x13b)](_0x2809e8,_0xabb3a4['V']['array'])};}[_0x556281(-0x291,-0x2bf)](_0x2c4aad,_0x2c06e1,_0x4bc63d){const _0x344de5={'context':_0x2c4aad,'width':_0x2c06e1['particlesTextureSize'],'height':_0x2c06e1[_0x52d8e3(0x75,-0x10)],'pixelFormat':Cesium$3[_0x5cdc58(0x444,0x45f)][_0x52d8e3(0xd0,0xc3)],'pixelDatatype':Cesium$3['PixelDatatype'][_0x52d8e3(0x94,0x5c)],'flipY':![],'sampler':new Cesium$3[(_0x52d8e3(0x42,-0x35))]({'minificationFilter':Cesium$3['TextureMinificationFilter'][_0x52d8e3(0xed,0x14d)],'magnificationFilter':Cesium$3['TextureMagnificationFilter']['NEAREST']})},_0x1c9614=this['randomizeParticles'](_0x2c06e1[_0x52d8e3(0x34,0x1c)],_0x4bc63d);function _0x52d8e3(_0x1fe39c,_0x94f4c2){return _0x556281(_0x94f4c2,_0x1fe39c-0x30d);}function _0x5cdc58(_0x14601d,_0x3485f5){return _0x556281(_0x3485f5,_0x14601d-0x706);}const _0x34187b=new Float32Array(0x4*_0x2c06e1['maxParticles'])['fill'](0x0);this[_0x5cdc58(0x418,0x3d9)]={'particlesWind':Util['createTexture'](_0x344de5),'currentParticlesPosition':Util[_0x52d8e3(-0x18,-0xa)](_0x344de5,_0x1c9614),'nextParticlesPosition':Util['createTexture'](_0x344de5,_0x1c9614),'currentParticlesSpeed':Util['createTexture'](_0x344de5,_0x34187b),'nextParticlesSpeed':Util['createTexture'](_0x344de5,_0x34187b),'postProcessingPosition':Util[_0x5cdc58(0x3e1,0x3c4)](_0x344de5,_0x1c9614),'postProcessingSpeed':Util['createTexture'](_0x344de5,_0x34187b)};}[_0x5caa0a(-0x8,0x3f)](_0x1d5c92,_0x4c9ee2){const _0x576df9=new Float32Array(0x4*_0x1d5c92);function _0x31df81(_0x155b36,_0x2bcb00){return _0x556281(_0x155b36,_0x2bcb00-0x63c);}function _0x2ae57a(_0x2ff292,_0x58512d){return _0x556281(_0x2ff292,_0x58512d-0x389);}for(let _0x213e79=0x0;_0x213e79<_0x1d5c92;_0x213e79++){_0x576df9[0x4*_0x213e79]=Cesium$3[_0x31df81(0x2ea,0x340)]['randomBetween'](_0x4c9ee2['lonRange']['x'],_0x4c9ee2[_0x31df81(0x30e,0x399)]['y']),_0x576df9[0x4*_0x213e79+0x1]=Cesium$3['Math'][_0x31df81(0x2ae,0x31d)](_0x4c9ee2['latRange']['x'],_0x4c9ee2['latRange']['y']),_0x576df9[0x4*_0x213e79+0x2]=Cesium$3['Math']['randomBetween'](this['data'][_0x2ae57a(0x161,0xf4)]['min'],this[_0x31df81(0x36f,0x352)]['lev']['max']),_0x576df9[0x4*_0x213e79+0x3]=0x0;}return _0x576df9;}['destroyParticlesTextures'](){Object['keys'](this['particlesTextures'])['forEach'](_0xf165a0=>{this['particlesTextures'][_0xf165a0]['destroy']();});}[_0x556281(-0x1ec,-0x26e)](_0x87d4e2,_0x4f8989,_0x18f021){const _0x4f4b48=new Cesium$3['Cartesian3'](_0x87d4e2[_0x2232ba(-0x110,-0xe7)]['lon'],_0x87d4e2['dimensions']['lat'],_0x87d4e2['dimensions'][_0x4405f8(0x1cb,0x18c)]),_0x3e8f2e=new Cesium$3['Cartesian3'](_0x87d4e2['lon'][_0x4405f8(0x16c,0x16d)],_0x87d4e2[_0x2232ba(-0x8e,-0xc4)][_0x4405f8(0x16c,0xda)],_0x87d4e2['lev']['min']),_0x39edb8=new Cesium$3[(_0x2232ba(-0x1f,-0xae))](_0x87d4e2['lon']['max'],_0x87d4e2['lat'][_0x4405f8(0x242,0x1d7)],_0x87d4e2['lev']['max']);function _0x4405f8(_0x4ad672,_0x278216){return _0x556281(_0x278216,_0x4ad672-0x460);}const _0x58be34=new Cesium$3['Cartesian3']((_0x39edb8['x']-_0x3e8f2e['x'])/(_0x4f4b48['x']-0x1),(_0x39edb8['y']-_0x3e8f2e['y'])/(_0x4f4b48['y']-0x1),_0x4f4b48['z']>0x1?(_0x39edb8['z']-_0x3e8f2e['z'])/(_0x4f4b48['z']-0x1):0x1),_0x396f18=new Cesium$3['Cartesian2'](_0x87d4e2['U']['min'],_0x87d4e2['U']['max']),_0x57b3e5=new Cesium$3['Cartesian2'](_0x87d4e2['V'][_0x2232ba(-0x13f,-0xcf)],_0x87d4e2['V'][_0x4405f8(0x242,0x2a5)]),_0x342332=this,_0x542582={};_0x542582['U']=function(){function _0xe97e53(_0x368423,_0xe5e86a){return _0x2232ba(_0x368423,_0xe5e86a-0x3c4);}return _0x342332[_0xe97e53(0x31f,0x3a1)]['U'];};function _0x2232ba(_0x97e2,_0x3e3c84){return _0x556281(_0x97e2,_0x3e3c84-0x225);}_0x542582['V']=function(){return _0x342332['windTextures']['V'];},_0x542582['currentParticlesPosition']=function(){function _0x542e92(_0x589e7c,_0x512fb4){return _0x2232ba(_0x512fb4,_0x589e7c-0xb);}return _0x342332['particlesTextures'][_0x542e92(-0xf2,-0x147)];},_0x542582['dimension']=function(){return _0x4f4b48;},_0x542582['minimum']=function(){return _0x3e8f2e;},_0x542582['maximum']=function(){return _0x39edb8;},_0x542582['interval']=function(){return _0x58be34;};const _0x701a46={};_0x701a46['sources']=[getWind_frag];const _0x12f264={};_0x12f264['sources']=[updateSpeed_frag];const _0x4a89dd={};_0x4a89dd[_0x4405f8(0x175,0xf5)]=[updatePosition_frag];const _0x51c209={};_0x51c209['sources']=[postProcessingPosition_frag];const _0x2a363d={};_0x2a363d['sources']=[postProcessingSpeed_frag],this['primitives']={'getWind':new CustomPrimitive({'commandType':'Compute','uniformMap':_0x542582,'fragmentShaderSource':new Cesium$3[(_0x2232ba(0x26,0x16))](_0x701a46),'outputTexture':this[_0x2232ba(-0x36,-0xc9)]['particlesWind'],'preExecute':function(){function _0x52a706(_0x6ff6c,_0x552bd3){return _0x2232ba(_0x552bd3,_0x6ff6c- -0x77);}function _0x5a3de1(_0x4b1b56,_0x54b3fa){return _0x4405f8(_0x54b3fa-0x108,_0x4b1b56);}_0x342332[_0x5a3de1(0x267,0x2a7)]['getWind']['commandToExecute'][_0x5a3de1(0x35b,0x34c)]=_0x342332['particlesTextures']['particlesWind'];}}),'updateSpeed':new CustomPrimitive({'commandType':'Compute','uniformMap':{'currentParticlesSpeed':function(){return _0x342332['particlesTextures']['currentParticlesSpeed'];},'particlesWind':function(){function _0x4482f5(_0x275cfd,_0x2dfc8f){return _0x4405f8(_0x2dfc8f-0x59,_0x275cfd);}function _0x518a63(_0x228f05,_0x3edce){return _0x4405f8(_0x3edce- -0x3e4,_0x228f05);}return _0x342332[_0x4482f5(0x1c6,0x1cb)][_0x518a63(-0x1d2,-0x217)];},'uSpeedRange':function(){return _0x396f18;},'vSpeedRange':function(){return _0x57b3e5;},'pixelSize':function(){function _0x29ed41(_0x1b0a5f,_0x268868){return _0x2232ba(_0x1b0a5f,_0x268868-0x3a6);}return _0x18f021[_0x29ed41(0x444,0x3b2)];},'speedFactor':function(){function _0x43075d(_0x1a42cb,_0x4068ae){return _0x4405f8(_0x4068ae-0x1ce,_0x1a42cb);}return _0x4f8989[_0x43075d(0x3e1,0x411)];}},'fragmentShaderSource':new Cesium$3['ShaderSource'](_0x12f264),'outputTexture':this['particlesTextures'][_0x2232ba(-0x79,-0xe9)],'preExecute':function(){function _0x452788(_0x15a212,_0x155e5c){return _0x2232ba(_0x15a212,_0x155e5c-0x2d3);}const _0x5a0a1a=_0x342332['particlesTextures']['currentParticlesSpeed'];_0x342332[_0x4f82a3(0x36f,0x3f5)][_0x4f82a3(0x3cf,0x430)]=_0x342332['particlesTextures']['postProcessingSpeed'];function _0x4f82a3(_0x564c67,_0x5d5774){return _0x2232ba(_0x564c67,_0x5d5774-0x4be);}_0x342332['particlesTextures'][_0x4f82a3(0x427,0x48a)]=_0x5a0a1a,_0x342332['primitives']['updateSpeed'][_0x452788(0x243,0x291)][_0x4f82a3(0x555,0x4c7)]=_0x342332['particlesTextures']['nextParticlesSpeed'];}}),'updatePosition':new CustomPrimitive({'commandType':_0x4405f8(0x19d,0x1ef),'uniformMap':{'currentParticlesPosition':function(){function _0x990ae1(_0x4b5e0d,_0x4cde90){return _0x4405f8(_0x4cde90-0x312,_0x4b5e0d);}return _0x342332['particlesTextures'][_0x990ae1(0x412,0x450)];},'currentParticlesSpeed':function(){function _0x10082b(_0x4e6efc,_0x25d1a7){return _0x2232ba(_0x4e6efc,_0x25d1a7- -0x7a);}return _0x342332[_0x10082b(-0x1c2,-0x143)]['currentParticlesSpeed'];}},'fragmentShaderSource':new Cesium$3['ShaderSource'](_0x4a89dd),'outputTexture':this[_0x4405f8(0x172,0x1c7)]['nextParticlesPosition'],'preExecute':function(){function _0x1a32ec(_0xf80fbc,_0x126b7b){return _0x2232ba(_0x126b7b,_0xf80fbc-0x2b7);}function _0x45b848(_0x2b6fe6,_0x9728ca){return _0x2232ba(_0x2b6fe6,_0x9728ca-0x9c);}const _0x2374fa=_0x342332[_0x45b848(0x5,-0x2d)][_0x1a32ec(0x1ba,0x232)];_0x342332['particlesTextures'][_0x45b848(-0x92,-0x61)]=_0x342332['particlesTextures']['postProcessingPosition'],_0x342332[_0x45b848(-0x95,-0x2d)][_0x1a32ec(0x228,0x26e)]=_0x2374fa,_0x342332[_0x1a32ec(0x21b,0x213)]['updatePosition'][_0x1a32ec(0x275,0x280)]['outputTexture']=_0x342332['particlesTextures'][_0x45b848(-0x6,-0x15)];}}),'postProcessingPosition':new CustomPrimitive({'commandType':_0x2232ba(-0x2b,-0x9e),'uniformMap':{'nextParticlesPosition':function(){return _0x342332['particlesTextures']['nextParticlesPosition'];},'nextParticlesSpeed':function(){return _0x342332['particlesTextures']['nextParticlesSpeed'];},'lonRange':function(){function _0xf5f744(_0x2924c2,_0x3ec90c){return _0x4405f8(_0x3ec90c- -0x31c,_0x2924c2);}return _0x18f021[_0xf5f744(-0x11b,-0x15f)];},'latRange':function(){function _0x53b864(_0x910a34,_0x27212b){return _0x2232ba(_0x27212b,_0x910a34- -0x89);}return _0x18f021[_0x53b864(-0xe1,-0xf7)];},'randomCoefficient':function(){const _0x61e8fb=Math['random']();return _0x61e8fb;},'dropRate':function(){return _0x4f8989['dropRate'];},'dropRateBump':function(){return _0x4f8989['dropRateBump'];}},'fragmentShaderSource':new Cesium$3[(_0x2232ba(0xd,0x16))](_0x51c209),'outputTexture':this['particlesTextures']['postProcessingPosition'],'preExecute':function(){function _0x29c4e5(_0x2529a9,_0x5dff74){return _0x4405f8(_0x2529a9-0x1a9,_0x5dff74);}function _0x43b280(_0x40c221,_0x3ad0b0){return _0x2232ba(_0x40c221,_0x3ad0b0- -0x1e3);}_0x342332[_0x43b280(-0x218,-0x27f)]['postProcessingPosition'][_0x29c4e5(0x3a2,0x360)]['outputTexture']=_0x342332['particlesTextures']['postProcessingPosition'];}}),'postProcessingSpeed':new CustomPrimitive({'commandType':_0x4405f8(0x19d,0x1e8),'uniformMap':{'postProcessingPosition':function(){function _0xe07ca3(_0x562a4d,_0x3fe631){return _0x2232ba(_0x562a4d,_0x3fe631- -0x94);}return _0x342332[_0xe07ca3(-0x1e9,-0x15d)]['postProcessingPosition'];},'nextParticlesSpeed':function(){return _0x342332['particlesTextures']['nextParticlesSpeed'];}},'fragmentShaderSource':new Cesium$3['ShaderSource'](_0x2a363d),'outputTexture':this['particlesTextures'][_0x2232ba(-0x48,-0x34)],'preExecute':function(){function _0x5112ef(_0x4a593c,_0x545446){return _0x4405f8(_0x4a593c- -0x350,_0x545446);}function _0x29e44a(_0x16a586,_0x57be9d){return _0x2232ba(_0x57be9d,_0x16a586- -0xf2);}_0x342332['primitives'][_0x5112ef(-0x149,-0x180)]['commandToExecute']['outputTexture']=_0x342332['particlesTextures'][_0x29e44a(-0x126,-0xd4)];}})};}}const Cesium$2=mars3d__namespace['Cesium'];class ParticleSystem{constructor(_0x28ce57,_0x537e62,_0x2dd1e0,_0x153ee8){this[_0x38177a(0x171,0x1fb)]=_0x28ce57,_0x537e62={..._0x537e62};_0x537e62['udata']&&_0x537e62['vdata']&&(_0x537e62['dimensions']={},_0x537e62['dimensions']['lon']=_0x537e62[_0x1e99fe(-0x36,-0x8a)],_0x537e62['dimensions'][_0x1e99fe(-0xb4,-0xa6)]=_0x537e62['rows'],_0x537e62[_0x38177a(0x14b,0x171)]['lev']=_0x537e62['lev']||0x1,_0x537e62['lon']={},_0x537e62['lon']['min']=_0x537e62['xmin'],_0x537e62[_0x38177a(0x221,0x232)][_0x38177a(0x239,0x279)]=_0x537e62['xmax'],_0x537e62['lat']={},_0x537e62[_0x38177a(0x16e,0x17f)]['min']=_0x537e62['ymin'],_0x537e62['lat']['max']=_0x537e62['ymax'],_0x537e62['lev']={},_0x537e62['lev']['min']=_0x537e62['levmin']??0x1,_0x537e62[_0x38177a(0x1c2,0x138)]['max']=_0x537e62[_0x38177a(0x1c8,0x1dd)]??0x1,_0x537e62['U']={},_0x537e62['U']['array']=new Float32Array(_0x537e62['udata']),_0x537e62['U']['min']=_0x537e62['umin']??Math[_0x38177a(0x163,0xf3)](..._0x537e62['udata']),_0x537e62['U'][_0x1e99fe(-0x21,0x25)]=_0x537e62['umax']??Math['max'](..._0x537e62['udata']),_0x537e62['V']={},_0x537e62['V'][_0x38177a(0x182,0x119)]=new Float32Array(_0x537e62['vdata']),_0x537e62['V'][_0x1e99fe(-0x76,-0xb1)]=_0x537e62['vmin']??Math['min'](..._0x537e62['vdata']),_0x537e62['V'][_0x38177a(0x239,0x29e)]=_0x537e62['vmax']??Math['max'](..._0x537e62[_0x1e99fe(-0x93,-0xda)]));function _0x1e99fe(_0x45f860,_0xa63ba1){return _0x556281(_0x45f860,_0xa63ba1-0x243);}function _0x38177a(_0x4c8112,_0x481061){return _0x556281(_0x481061,_0x4c8112-0x457);}this['data']=_0x537e62,this['options']=_0x2dd1e0,this['viewerParameters']=_0x153ee8,this['particlesComputing']=new ParticlesComputing(this[_0x1e99fe(-0x11d,-0xa3)],this[_0x1e99fe(-0x9d,-0xa7)],this[_0x1e99fe(-0x7f,-0xac)],this['viewerParameters']),this['particlesRendering']=new ParticlesRendering(this[_0x38177a(0x171,0x1d8)],this['data'],this['options'],this['viewerParameters'],this['particlesComputing']);}[_0x5caa0a(-0x2f,-0xa9)](_0x677dad){this[_0x37935d(-0x1d7,-0x1ae)][_0x37935d(-0x2d9,-0x2e0)](),Object[_0x4576aa(0x24e,0x1d7)](this[_0x37935d(-0x1d7,-0x1d6)][_0x4576aa(0x1ab,0x1c2)])['forEach'](_0x35375a=>{function _0x20fdb5(_0x15460e,_0x3d2fe0){return _0x37935d(_0x15460e-0x3ac,_0x3d2fe0);}function _0x48eb7f(_0x236adb,_0x2c48e5){return _0x37935d(_0x2c48e5-0x4f8,_0x236adb);}this[_0x48eb7f(0x2dc,0x321)]['windTextures'][_0x35375a][_0x48eb7f(0x234,0x255)]();}),this[_0x37935d(-0x202,-0x22c)][_0x37935d(-0x2b1,-0x303)][_0x4576aa(0x1d9,0x188)][_0x37935d(-0x2a3,-0x308)](),Object['keys'](this['particlesRendering'][_0x37935d(-0x29f,-0x2de)])['forEach'](_0x39fa85=>{function _0x14a641(_0x20f5f9,_0x1828fa){return _0x4576aa(_0x1828fa,_0x20f5f9-0x216);}this['particlesRendering'][_0x14a641(0x340,0x396)][_0x39fa85]['destroy']();});function _0x37935d(_0x2ba115,_0x3b7aab){return _0x556281(_0x3b7aab,_0x2ba115-0x41);}function _0x4576aa(_0x1734df,_0x522be8){return _0x556281(_0x1734df,_0x522be8-0x40a);}this['context']=_0x677dad,this['particlesComputing']=new ParticlesComputing(this['context'],this[_0x37935d(-0x2a9,-0x226)],this['options'],this[_0x4576aa(0x1d6,0x18b)]),this[_0x37935d(-0x202,-0x187)]=new ParticlesRendering(this[_0x4576aa(0xc7,0x124)],this['data'],this['options'],this['viewerParameters'],this['particlesComputing']);}['clearFramebuffers'](){const _0x179fa4=new Cesium$2['ClearCommand']({'color':new Cesium$2[(_0x26bd61(0x487,0x411))](0x0,0x0,0x0,0x0),'depth':0x1,'framebuffer':undefined,'pass':Cesium$2['Pass']['OPAQUE']});function _0x391e9c(_0x2f4c2d,_0x251e54){return _0x556281(_0x251e54,_0x2f4c2d-0x39);}function _0x26bd61(_0x2867ba,_0x21e5b5){return _0x556281(_0x21e5b5,_0x2867ba-0x790);}Object['keys'](this['particlesRendering']['framebuffers'])[_0x26bd61(0x56e,0x584)](_0x4f65dc=>{_0x179fa4['framebuffer']=this['particlesRendering'][_0x4bb46d(-0x15e,-0x1aa)][_0x4f65dc];function _0x4bb46d(_0x35231f,_0x358435){return _0x391e9c(_0x358435-0xfd,_0x35231f);}function _0x273633(_0x475c49,_0x171b76){return _0x391e9c(_0x475c49-0x390,_0x171b76);}_0x179fa4[_0x4bb46d(-0x14e,-0x1ac)](this['context']);});}['refreshParticles'](_0x37bb34){this['clearFramebuffers']();function _0x36f8e1(_0x24b5ac,_0x45dbe8){return _0x556281(_0x24b5ac,_0x45dbe8-0x66f);}this[_0x339a70(0x3e,0x8)]['destroyParticlesTextures'](),this['particlesComputing'][_0x36f8e1(0x428,0x3b0)](this['context'],this['options'],this['viewerParameters']);function _0x339a70(_0x43198b,_0x187113){return _0x556281(_0x43198b,_0x187113-0x220);}if(_0x37bb34){var _0x2308f4;const _0x15b383=this['particlesRendering'][_0x339a70(-0x27,-0x85)](this['options']);this['particlesRendering'][_0x36f8e1(0x3d4,0x3ae)][_0x36f8e1(0x360,0x3aa)]['geometry']=_0x15b383;const _0x1f543d=Cesium$2['VertexArray'][_0x36f8e1(0x421,0x411)]({'context':this['context'],'geometry':_0x15b383,'attributeLocations':this[_0x36f8e1(0x3b8,0x42c)]['primitives']['segments'][_0x36f8e1(0x42e,0x3c5)],'bufferUsage':Cesium$2[_0x339a70(-0x170,-0xe5)]['STATIC_DRAW']});(_0x2308f4=this['particlesRendering']['primitives'])!==null&&_0x2308f4!==void 0x0&&(_0x2308f4=_0x2308f4[_0x36f8e1(0x354,0x3aa)])!==null&&_0x2308f4!==void 0x0&&_0x2308f4['commandToExecute']&&(this[_0x339a70(0x6c,-0x23)]['primitives']['segments']['commandToExecute']['vertexArray']=_0x1f543d);}}['setOptions'](_0x285b00){let _0x30769f=![];this['options']['maxParticles']!==_0x285b00['maxParticles']&&(_0x30769f=!![]);Object['keys'](_0x285b00)['forEach'](_0x3f0ccb=>{this['options'][_0x3f0ccb]=_0x285b00[_0x3f0ccb];});function _0x177294(_0x2207a1,_0x902ebd){return _0x5caa0a(_0x2207a1-0x77,_0x902ebd);}this[_0x177294(0x74,0x106)](_0x30769f);}[_0x5caa0a(0x85,-0x2)](_0x2fba1e){Object['keys'](_0x2fba1e)['forEach'](_0x23902f=>{function _0x50fc01(_0x2bee0b,_0x1da31b){return _0x3462(_0x1da31b- -0x3da,_0x2bee0b);}this[_0x50fc01(-0x24e,-0x2a2)][_0x23902f]=_0x2fba1e[_0x23902f];});function _0x54e169(_0x1fafae,_0x34bcb6){return _0x556281(_0x1fafae,_0x34bcb6-0x15e);}this[_0x54e169(-0x1a9,-0x1aa)](![]);}['destroy'](){clearTimeout(this['canrefresh']),this['particlesComputing']['destroyParticlesTextures'](),Object['keys'](this['particlesComputing']['windTextures'])['forEach'](_0x4fb79d=>{function _0x1552e2(_0x5d8b63,_0x24e59f){return _0x3462(_0x24e59f-0x98,_0x5d8b63);}this[_0x1552e2(0x223,0x237)]['windTextures'][_0x4fb79d]['destroy']();});function _0x344737(_0x3d3cad,_0x3489c7){return _0x5caa0a(_0x3489c7-0x382,_0x3d3cad);}this['particlesRendering']['textures']['colorTable']['destroy']();function _0x4bfb6a(_0xaf6b05,_0x4cee48){return _0x556281(_0xaf6b05,_0x4cee48-0x33b);}Object['keys'](this['particlesRendering'][_0x344737(0x3bd,0x3a7)])[_0x4bfb6a(0x18f,0x119)](_0x4f07b6=>{function _0x4abc42(_0x1361d2,_0xf73ba5){return _0x344737(_0x1361d2,_0xf73ba5-0xad);}this[_0x4abc42(0x4e5,0x4f1)]['framebuffers'][_0x4f07b6]['destroy']();});for(const _0x5bc985 in this){delete this[_0x5bc985];}}}const Cesium$1=mars3d__namespace['Cesium'],BaseLayer$1=mars3d__namespace[_0x556281(-0x20a,-0x262)]['BaseLayer'],_0x349d49={};_0x349d49['particlesNumber']=0x1000,_0x349d49['fixedHeight']=0x0,_0x349d49['fadeOpacity']=0.996,_0x349d49[_0x556281(-0x28c,-0x241)]=0.003,_0x349d49['dropRateBump']=0.01,_0x349d49[_0x556281(-0x280,-0x21d)]=0.5,_0x349d49['lineWidth']=0x2,_0x349d49['colors']=[_0x5caa0a(0xe0,0x11d)];const DEF_OPTIONS=_0x349d49;class WindLayer extends BaseLayer$1{constructor(_0x507678={}){_0x507678={...DEF_OPTIONS,..._0x507678},super(_0x507678),this['_setOptionsHook'](_0x507678);}get['layer'](){return this['primitives'];}get[_0x5caa0a(0x1b,0x21)](){return this['_data'];}set['data'](_0x322691){function _0x56863b(_0x1310c8,_0x2c89fc){return _0x5caa0a(_0x2c89fc- -0x2a7,_0x1310c8);}this[_0x56863b(-0x2ff,-0x295)](_0x322691);}get['colors'](){function _0x157b3d(_0x556070,_0x165a9e){return _0x556281(_0x556070,_0x165a9e-0x6fe);}function _0x5b42de(_0x3bb7cf,_0x32cf58){return _0x556281(_0x32cf58,_0x3bb7cf-0x77c);}return this[_0x157b3d(0x45e,0x40f)][_0x157b3d(0x488,0x458)];}set['colors'](_0x1658c5){this['options'][_0xafbe09(0xf7,0x70)]=_0x1658c5;function _0x144bd3(_0x245b27,_0x840b9d){return _0x556281(_0x245b27,_0x840b9d-0x248);}function _0xafbe09(_0xde4071,_0x367b91){return _0x5caa0a(_0xde4071-0x98,_0x367b91);}if(this['particleSystem']){const _0x41beba={};_0x41beba[_0xafbe09(0xf7,0x110)]=_0x1658c5,this[_0xafbe09(0xec,0xe3)][_0xafbe09(0x10f,0x101)](_0x41beba);}this['resize']();}['_mountedHook'](){}['_addedHook'](){this['scene']=this['_map'][_0x285753(0x12c,0x173)],this[_0x285753(0x173,0x14b)]=this['_map']['camera'],this[_0x400ecd(0xb9,0x9b)]=new Cesium$1['PrimitiveCollection'](),this['_map']['scene']['primitives']['add'](this[_0x285753(0xe0,0x168)]);function _0x285753(_0x5073a7,_0x545375){return _0x556281(_0x5073a7,_0x545375-0x429);}this[_0x400ecd(0x147,0xdd)]={'lonRange':new Cesium$1[(_0x400ecd(0x136,0xdb))](),'latRange':new Cesium$1['Cartesian2'](),'pixelSize':0x0},this['globeBoundingSphere']=new Cesium$1['BoundingSphere'](Cesium$1['Cartesian3']['ZERO'],0.99*0x615299),this[_0x285753(0x10e,0x14e)](),window['addEventListener']('resize',this[_0x400ecd(0x16c,0xfd)][_0x400ecd(0xf1,0xd9)](this),![]),this['mouse_down']=![],this['mouse_move']=![];function _0x400ecd(_0x283fb9,_0x59ec5a){return _0x5caa0a(_0x59ec5a-0x57,_0x283fb9);}this['_map']['on'](mars3d__namespace[_0x400ecd(0xc3,0x8e)][_0x400ecd(0x2a,0x5b)],this[_0x400ecd(0x12b,0x146)],this),this['_map']['on'](mars3d__namespace['EventType'][_0x285753(0x1b8,0x1ab)],this['_onMouseDownEvent'],this),this[_0x400ecd(0x48,0x5a)]['on'](mars3d__namespace['EventType'][_0x285753(0xfc,0x159)],this[_0x400ecd(0x12d,0xbf)],this),this[_0x400ecd(0x1d,0x5a)]['on'](mars3d__namespace[_0x285753(0x198,0x15b)]['mouseMove'],this['_onMouseMoveEvent'],this),this['_data']&&this[_0x285753(0x181,0x136)](this['_data']);}['_removedHook'](){window[_0x189f9c(-0x1cb,-0x1ca)](_0x189f9c(-0x20b,-0x1c1),this['resize']),this['_map']['off'](mars3d__namespace[_0x6bdecb(0x124,0xe8)][_0x189f9c(-0x1bd,-0x1bc)],this['_onMap_preRenderEvent'],this),this[_0x189f9c(-0x207,-0x264)]['off'](mars3d__namespace[_0x6bdecb(0x86,0xe8)]['wheel'],this['_onMapWhellEvent'],this),this['_map']['off'](mars3d__namespace[_0x6bdecb(0x10f,0xe8)][_0x189f9c(-0x197,-0x1e0)],this['_onMouseDownEvent'],this);function _0x189f9c(_0x210416,_0x126c45){return _0x5caa0a(_0x126c45- -0x267,_0x210416);}function _0x6bdecb(_0x1ebccd,_0x2f4f62){return _0x5caa0a(_0x2f4f62-0xb1,_0x1ebccd);}this[_0x6bdecb(0x25,0xb4)]['off'](mars3d__namespace['EventType']['mouseUp'],this['_onMouseUpEvent'],this),this['_map']['off'](mars3d__namespace['EventType'][_0x189f9c(-0xfc,-0x18a)],this[_0x6bdecb(0x187,0x163)],this),this['primitives'][_0x6bdecb(0x91,0xe7)](),this['_map']['scene']['primitives'][_0x6bdecb(0x108,0xd1)](this['primitives']);}['resize'](){if(!this['show']||!this['particleSystem'])return;function _0x120f21(_0x3ec99c,_0x4b6356){return _0x5caa0a(_0x3ec99c-0x23e,_0x4b6356);}this['primitives']['show']=![];function _0x3c81cb(_0x7cbc20,_0xf866a1){return _0x5caa0a(_0x7cbc20-0x242,_0xf866a1);}this['primitives']['removeAll'](),this['_map']['once'](mars3d__namespace['EventType'][_0x3c81cb(0x2ed,0x2f2)],this[_0x120f21(0x314,0x2c9)],this);}[_0x556281(-0x258,-0x22f)](_0x40ff39){this['particleSystem']['canvasResize'](this['scene'][_0x489811(0x18,-0x6c)]);function _0x489811(_0x2a9c73,_0x10c4c8){return _0x556281(_0x2a9c73,_0x10c4c8-0x27a);}this['addPrimitives']();function _0x3ee64d(_0x40a3bb,_0x369450){return _0x5caa0a(_0x369450- -0x2f8,_0x40a3bb);}this['primitives'][_0x3ee64d(-0x2cf,-0x287)]=!![];}['_onMapWhellEvent'](_0x26ecfc){function _0x30bb8d(_0x418b49,_0x3704a6){return _0x5caa0a(_0x3704a6- -0x6c,_0x418b49);}function _0x355528(_0x113195,_0x22a945){return _0x5caa0a(_0x22a945- -0x205,_0x113195);}clearTimeout(this['refreshTimer']);if(!this[_0x30bb8d(0x66,0x5)]||!this[_0x355528(-0x145,-0x1b1)])return;this['primitives'][_0x30bb8d(0x62,0x5)]=![],this[_0x355528(-0xd4,-0x152)]=setTimeout(()=>{if(!this['show'])return;function _0x692fa2(_0x38c2e9,_0x3527f6){return _0x355528(_0x38c2e9,_0x3527f6-0x531);}this[_0x692fa2(0x46d,0x3ea)]();},0xc8);}[_0x5caa0a(0x31,0xa6)](_0x2f3d0b){this['mouse_down']=!![];}[_0x5caa0a(0xb2,0x85)](_0x4c1ec8){if(!this['show']||!this['particleSystem'])return;function _0x2fb0a1(_0x125962,_0x262930){return _0x5caa0a(_0x125962-0x2,_0x262930);}function _0x23078b(_0x5691d1,_0x170ddf){return _0x5caa0a(_0x5691d1-0x400,_0x170ddf);}this['mouse_down']&&(this[_0x23078b(0x444,0x43c)]['show']=![],this[_0x2fb0a1(0x90,0x10d)]=!![]);}[_0x5caa0a(0x68,0x8)](_0x2df485){function _0x40b7e3(_0x379d98,_0x197dc4){return _0x556281(_0x379d98,_0x197dc4-0x50d);}if(!this['show']||!this[_0x40b7e3(0x1e2,0x25c)])return;this['mouse_down']&&this['mouse_move']&&this['redraw'](),this['primitives']['show']=!![],this['mouse_down']=![],this['mouse_move']=![];}[_0x556281(-0x1fc,-0x247)](){if(!this[_0x3673e0(0x376,0x3a1)]||!this[_0x3673e0(0x3e4,0x3d1)])return;function _0x3673e0(_0x5808ba,_0x2c2403){return _0x5caa0a(_0x5808ba-0x373,_0x2c2403);}this['updateViewerParameters'](),this[_0x3673e0(0x3c7,0x41a)]['applyViewerParameters'](this[_0x72ba89(-0xb3,-0xc6)]);function _0x72ba89(_0x1f2d3f,_0x1a687b){return _0x556281(_0x1a687b,_0x1f2d3f-0x1cc);}this[_0x3673e0(0x3b7,0x3fd)][_0x72ba89(-0xc8,-0x3a)]=!![];}[_0x5caa0a(0x12,0x51)](_0x4c743f){function _0x20e361(_0x4dc74d,_0x191baa){return _0x556281(_0x4dc74d,_0x191baa-0x368);}this['_data']=_0x4c743f;this[_0x2ee276(-0x211,-0x276)]&&this['particleSystem'][_0x2ee276(-0x2b7,-0x2a9)]();function _0x2ee276(_0x47a875,_0x2ee076){return _0x556281(_0x47a875,_0x2ee076-0x3b);}this['particleSystem']=new ParticleSystem(this['scene'][_0x2ee276(-0x251,-0x2ab)],_0x4c743f,this['getOptions'](),this[_0x20e361(0xf4,0xe9)]),this['addPrimitives']();}['_setOptionsHook'](_0x3fb32f,_0x57c9bb){if(_0x3fb32f)for(const _0x1d7ea5 in _0x3fb32f){this[_0x1d7ea5]=_0x3fb32f[_0x1d7ea5];}function _0x6f1a4d(_0x2daf18,_0x26736d){return _0x556281(_0x26736d,_0x2daf18-0x255);}this[_0x6f1a4d(-0x5c,-0xb2)]&&this['particleSystem']['setOptions'](this['getOptions']());}['getOptions'](){const _0x2b802c=Math[_0x243312(-0x1a3,-0x228)](Math['sqrt'](this[_0x243312(-0x207,-0x28a)]));this['particlesNumber']=_0x2b802c*_0x2b802c;const _0x3dc7e0={};_0x3dc7e0['particlesTextureSize']=_0x2b802c,_0x3dc7e0['maxParticles']=this['particlesNumber'];function _0x243312(_0x4a8dc7,_0x4186c1){return _0x556281(_0x4186c1,_0x4a8dc7-0xd3);}_0x3dc7e0['particleHeight']=this[_0x7c3be8(0x34b,0x38d)],_0x3dc7e0['fadeOpacity']=this[_0x7c3be8(0x262,0x290)],_0x3dc7e0['dropRate']=this['dropRate'];function _0x7c3be8(_0x27f524,_0x3d62c3){return _0x5caa0a(_0x3d62c3-0x2a7,_0x27f524);}return _0x3dc7e0['dropRateBump']=this[_0x243312(-0x16b,-0x19e)],_0x3dc7e0['speedFactor']=this['speedFactor'],_0x3dc7e0[_0x243312(-0x1b5,-0x177)]=this[_0x243312(-0x1b5,-0x12e)],_0x3dc7e0['colors']=this['colors'],_0x3dc7e0;}[_0x5caa0a(0xe4,0x10c)](){this['primitives']['add'](this[_0x5fb0e3(-0x9b,-0x51)]['particlesComputing']['primitives'][_0x29f053(0x2e,0x35)]),this[_0x29f053(-0x63,-0x30)][_0x29f053(0x1c,-0xb)](this[_0x29f053(-0xb0,-0x20)]['particlesComputing']['primitives']['updateSpeed']),this['primitives'][_0x5fb0e3(0x39,-0x3c)](this['particleSystem'][_0x29f053(0x5b,0x79)]['primitives']['updatePosition']);function _0x5fb0e3(_0x253a49,_0x2f5ffa){return _0x5caa0a(_0x2f5ffa- -0xa5,_0x253a49);}this['primitives']['add'](this[_0x5fb0e3(-0x7b,-0x51)]['particlesComputing']['primitives']['postProcessingPosition']),this['primitives']['add'](this[_0x29f053(-0x4d,-0x20)]['particlesComputing']['primitives']['postProcessingSpeed']),this['primitives']['add'](this['particleSystem'][_0x5fb0e3(0x2f,0x1d)][_0x29f053(0x1a,-0x30)][_0x29f053(-0x35,-0x34)]);function _0x29f053(_0x1092a7,_0x544858){return _0x5caa0a(_0x544858- -0x74,_0x1092a7);}this[_0x29f053(0x11,-0x30)][_0x5fb0e3(0x16,-0x3c)](this['particleSystem'][_0x5fb0e3(0x37,0x1d)][_0x5fb0e3(-0x2f,-0x61)][_0x29f053(-0x102,-0x8f)]),this['primitives']['add'](this[_0x29f053(-0x85,-0x20)]['particlesRendering']['primitives'][_0x5fb0e3(0x0,-0xb)]);}['updateViewerParameters'](){let _0x200b25=this['camera'][_0x3cad5b(0x3d3,0x38c)](this['scene'][_0x3cad5b(0x349,0x2db)]['ellipsoid']);if(!_0x200b25){const _0x495bd2=this[_0x40faa1(0x38c,0x337)]['getExtent']();_0x200b25=Cesium$1['Rectangle']['fromDegrees'](_0x495bd2[_0x40faa1(0x426,0x398)],_0x495bd2[_0x40faa1(0x36c,0x39f)],_0x495bd2['xmax'],_0x495bd2[_0x3cad5b(0x3d4,0x42c)]);}const _0x3071a7=Util['viewRectangleToLonLatRange'](_0x200b25);function _0x3cad5b(_0x321c78,_0x22510c){return _0x5caa0a(_0x321c78-0x358,_0x22510c);}this['viewerParameters'][_0x3cad5b(0x3ba,0x435)]['x']=_0x3071a7['lon'][_0x40faa1(0x30f,0x345)],this['viewerParameters'][_0x40faa1(0x349,0x396)]['y']=_0x3071a7[_0x3cad5b(0x427,0x450)]['max'],this['viewerParameters'][_0x3cad5b(0x3e0,0x352)]['x']=_0x3071a7['lat']['min'],this[_0x40faa1(0x333,0x3ba)]['latRange']['y']=_0x3071a7[_0x40faa1(0x393,0x350)]['max'];const _0x5a5c5c=this['camera'][_0x40faa1(0x381,0x373)](this[_0x3cad5b(0x40d,0x45a)],this['scene'][_0x3cad5b(0x3a8,0x319)],this[_0x40faa1(0x39d,0x383)]['drawingBufferHeight']);function _0x40faa1(_0x3cdbb4,_0x428b44){return _0x556281(_0x3cdbb4,_0x428b44-0x639);}_0x5a5c5c>0x0&&(this['viewerParameters'][_0x40faa1(0x3f5,0x420)]=_0x5a5c5c);}}mars3d__namespace[_0x556281(-0x356,-0x324)]['register'](_0x5caa0a(0x78,0xab),WindLayer),mars3d__namespace['layer']['WindLayer']=WindLayer;class CanvasParticle{constructor(){this['lng']=null,this['lat']=null,this['tlng']=null,this[_0x54aa38(0x3df,0x3f9)]=null;function _0x206898(_0x4ce26f,_0x2221c4){return _0x5caa0a(_0x4ce26f- -0x1ba,_0x2221c4);}this['age']=null;function _0x54aa38(_0x308c41,_0xec6761){return _0x556281(_0x308c41,_0xec6761-0x689);}this[_0x54aa38(0x365,0x37a)]=null;}[_0x5caa0a(0x21,-0x3d)](){for(const _0x3fd88c in this){delete this[_0x3fd88c];}}}class CanvasWindField{constructor(_0x3c507d){this['setOptions'](_0x3c507d);}get['speedRate'](){return this['_speedRate'];}set[_0x5caa0a(0xa5,0x99)](_0x1bdfd0){function _0x1d568e(_0x3f26ef,_0x77cc6c){return _0x556281(_0x3f26ef,_0x77cc6c-0x4de);}this['_speedRate']=(0x64-(_0x1bdfd0>0x63?0x63:_0x1bdfd0))*0x64;function _0x5e0aea(_0x189412,_0x3892aa){return _0x5caa0a(_0x3892aa-0xf1,_0x189412);}this[_0x5e0aea(0x92,0xdb)]=[(this['xmax']-this['xmin'])/this[_0x5e0aea(0x258,0x1c5)],(this['ymax']-this[_0x5e0aea(0x1a9,0x15c)])/this[_0x5e0aea(0x1ea,0x1c5)]];}get['maxAge'](){return this['_maxAge'];}set['maxAge'](_0x1bc992){this['_maxAge']=_0x1bc992;}['setOptions'](_0x5b5958){function _0x3a8357(_0xbb148b,_0x2d4209){return _0x5caa0a(_0x2d4209-0x3a6,_0xbb148b);}this['options']=_0x5b5958,this['maxAge']=_0x5b5958['maxAge']||0x78,this[_0x3ab2bf(0xa1,0xb8)]=_0x5b5958[_0x3a8357(0x3d4,0x44b)]||0x32,this[_0x3a8357(0x372,0x3ee)]=[];const _0x5f2a1c=_0x5b5958[_0x3ab2bf(-0x24,0x3e)]||0x1000;function _0x3ab2bf(_0x4c0000,_0x554634){return _0x556281(_0x4c0000,_0x554634-0x318);}for(let _0x58f9d8=0x0;_0x58f9d8<_0x5f2a1c;_0x58f9d8++){const _0x28d9a9=this['_randomParticle'](new CanvasParticle());this['particles']['push'](_0x28d9a9);}}['setDate'](_0x25940c){this['rows']=_0x25940c[_0x7b41d4(-0x286,-0x1fd)],this['cols']=_0x25940c[_0x7b41d4(-0x313,-0x2a0)],this['xmin']=_0x25940c['xmin'],this['xmax']=_0x25940c[_0x7b41d4(-0x374,-0x301)],this['ymin']=_0x25940c[_0x7b41d4(-0x2ae,-0x26d)],this['ymax']=_0x25940c[_0x7b41d4(-0x2e0,-0x25c)],this[_0x7b41d4(-0x25c,-0x22a)]=[];const _0x1ff485=_0x25940c[_0x7b41d4(-0x1b9,-0x1f6)],_0x1f8bfd=_0x25940c[_0x3c6906(-0x21f,-0x26e)];let _0x316b70=![];_0x1ff485['length']===this['rows']&&_0x1ff485[0x0]['length']===this['cols']&&(_0x316b70=!![]);let _0x53d8d2=0x0,_0x24e1ff=null,_0x420f40=null;function _0x3c6906(_0x78fbc5,_0x3ac50d){return _0x5caa0a(_0x3ac50d- -0x256,_0x78fbc5);}for(let _0x5d89d7=0x0;_0x5d89d7<this['rows'];_0x5d89d7++){_0x24e1ff=[];for(let _0x334c2b=0x0;_0x334c2b<this['cols'];_0x334c2b++,_0x53d8d2++){_0x316b70?_0x420f40=this[_0x3c6906(-0x171,-0x1dd)](_0x1ff485[_0x5d89d7][_0x334c2b],_0x1f8bfd[_0x5d89d7][_0x334c2b]):_0x420f40=this['_calcUV'](_0x1ff485[_0x53d8d2],_0x1f8bfd[_0x53d8d2]),_0x24e1ff['push'](_0x420f40);}this['grid']['push'](_0x24e1ff);}function _0x7b41d4(_0x31a78f,_0x48a341){return _0x5caa0a(_0x48a341- -0x2d8,_0x31a78f);}this['options']['reverseY']&&this['grid']['reverse']();}[_0x5caa0a(0xc5,0x138)](){delete this['rows'],delete this[_0x438275(-0x292,-0x29c)],delete this[_0x105114(-0xe,0x7d)],delete this['xmax'];function _0x105114(_0x2b34bd,_0x4d009d){return _0x5caa0a(_0x2b34bd- -0x72,_0x4d009d);}function _0x438275(_0x39a149,_0x4c510b){return _0x556281(_0x4c510b,_0x39a149-0x3b);}delete this['ymin'],delete this[_0x438275(-0x24e,-0x290)],delete this[_0x438275(-0x21c,-0x1ff)],delete this['particles'];}['toGridXY'](_0x75b29a,_0x4783a6){function _0x3c3ea3(_0x2692f3,_0x1f70b5){return _0x5caa0a(_0x2692f3-0x173,_0x1f70b5);}function _0x2ce6c7(_0x482714,_0xed6cf8){return _0x556281(_0xed6cf8,_0x482714-0x53a);}const _0x23ebd1=(_0x75b29a-this['xmin'])/(this['xmax']-this['xmin'])*(this[_0x2ce6c7(0x26d,0x2be)]-0x1),_0x20a502=(this[_0x2ce6c7(0x2b1,0x327)]-_0x4783a6)/(this['ymax']-this['ymin'])*(this[_0x3c3ea3(0x24e,0x222)]-0x1);return[_0x23ebd1,_0x20a502];}['getUVByXY'](_0x235cde,_0x189515){if(_0x235cde<0x0||_0x235cde>=this['cols']||_0x189515>=this['rows'])return[0x0,0x0,0x0];const _0xaf41b4=Math['floor'](_0x235cde),_0x4872db=Math[_0xaab0a1(0x32a,0x2c8)](_0x189515);if(_0xaf41b4===_0x235cde&&_0x4872db===_0x189515)return this[_0xaab0a1(0x2f9,0x323)][_0x189515][_0x235cde];const _0x146223=_0xaf41b4+0x1;function _0x5f29a9(_0x4aa07f,_0x57ff20){return _0x5caa0a(_0x57ff20-0xec,_0x4aa07f);}const _0x455141=_0x4872db+0x1,_0x40566f=this['getUVByXY'](_0xaf41b4,_0x4872db),_0x521be3=this['getUVByXY'](_0x146223,_0x4872db);function _0xaab0a1(_0x4e4f21,_0x1257ac){return _0x556281(_0x4e4f21,_0x1257ac-0x57a);}const _0x4a90d7=this['getUVByXY'](_0xaf41b4,_0x455141),_0x2cf2f6=this[_0xaab0a1(0x264,0x2cd)](_0x146223,_0x455141);let _0x4816c4=null;try{_0x4816c4=this['_bilinearInterpolation'](_0x235cde-_0xaf41b4,_0x189515-_0x4872db,_0x40566f,_0x521be3,_0x4a90d7,_0x2cf2f6);}catch(_0x245df6){console['log'](_0x235cde,_0x189515);}return _0x4816c4;}['_bilinearInterpolation'](_0x323b69,_0x54a9d7,_0xe7f076,_0x55136e,_0x12a302,_0x4632bd){const _0x463db3=0x1-_0x323b69,_0x1cff2a=0x1-_0x54a9d7,_0x5bfa38=_0x463db3*_0x1cff2a,_0xe15e7f=_0x323b69*_0x1cff2a,_0x1cc3cf=_0x463db3*_0x54a9d7,_0x8949c0=_0x323b69*_0x54a9d7,_0x32a7ed=_0xe7f076[0x0]*_0x5bfa38+_0x55136e[0x0]*_0xe15e7f+_0x12a302[0x0]*_0x1cc3cf+_0x4632bd[0x0]*_0x8949c0,_0x4451c2=_0xe7f076[0x1]*_0x5bfa38+_0x55136e[0x1]*_0xe15e7f+_0x12a302[0x1]*_0x1cc3cf+_0x4632bd[0x1]*_0x8949c0;return this['_calcUV'](_0x32a7ed,_0x4451c2);}['_calcUV'](_0x3b1ce8,_0x1fcf76){return[+_0x3b1ce8,+_0x1fcf76,Math['sqrt'](_0x3b1ce8*_0x3b1ce8+_0x1fcf76*_0x1fcf76)];}[_0x556281(-0x2a9,-0x2ac)](_0xa37a80,_0x1b5a48){if(!this['isInExtent'](_0xa37a80,_0x1b5a48))return null;const _0x1ea82f=this[_0x59a3b2(0x35d,0x3e0)](_0xa37a80,_0x1b5a48);function _0x59a3b2(_0x8da04d,_0x16f8b9){return _0x556281(_0x16f8b9,_0x8da04d-0x672);}const _0x332a00=this['getUVByXY'](_0x1ea82f[0x0],_0x1ea82f[0x1]);return _0x332a00;}['isInExtent'](_0x3cac58,_0xf879ac){function _0x341cba(_0x2277fb,_0x353f57){return _0x556281(_0x2277fb,_0x353f57-0x263);}return _0x3cac58>=this['xmin']&&_0x3cac58<=this['xmax']&&_0xf879ac>=this['ymin']&&_0xf879ac<=this[_0x341cba(0x6a,-0x26)]?!![]:![];}[_0x556281(-0x29b,-0x311)](){const _0x158ee9=fRandomByfloat(this[_0x30a639(-0x185,-0x1e7)],this[_0x3bdf62(0x207,0x1b1)]),_0x2de29c=fRandomByfloat(this[_0x30a639(-0x17e,-0x1cd)],this[_0x30a639(-0x16d,-0x110)]),_0x1ed4cc={};function _0x3bdf62(_0x1362cc,_0x5506f0){return _0x556281(_0x1362cc,_0x5506f0-0x4df);}_0x1ed4cc['lat']=_0x2de29c,_0x1ed4cc[_0x30a639(-0x158,-0xe3)]=_0x158ee9;function _0x30a639(_0x59501a,_0x462afe){return _0x5caa0a(_0x59501a- -0x1e9,_0x462afe);}return _0x1ed4cc;}['getParticles'](){function _0x53983f(_0x61a702,_0x3fa213){return _0x5caa0a(_0x61a702-0x32e,_0x3fa213);}function _0x1cba4b(_0x201d8b,_0x9ac59){return _0x556281(_0x9ac59,_0x201d8b-0x11b);}let _0x15f4f9,_0x488709,_0x577dca;for(let _0x5f2d79=0x0,_0x2d9529=this[_0x53983f(0x376,0x3d2)]['length'];_0x5f2d79<_0x2d9529;_0x5f2d79++){let _0x237adb=this[_0x1cba4b(-0x1a2,-0x1f9)][_0x5f2d79];_0x237adb['age']<=0x0&&(_0x237adb=this[_0x1cba4b(-0x185,-0x162)](_0x237adb));if(_0x237adb['age']>0x0){const _0x3d315a=_0x237adb[_0x1cba4b(-0x1d1,-0x1fa)],_0x281275=_0x237adb['tlat'];_0x577dca=this['getUVByPoint'](_0x3d315a,_0x281275),_0x577dca?(_0x15f4f9=_0x3d315a+this[_0x1cba4b(-0x200,-0x1e2)][0x0]*_0x577dca[0x0],_0x488709=_0x281275+this[_0x53983f(0x318,0x28b)][0x1]*_0x577dca[0x1],_0x237adb['lng']=_0x3d315a,_0x237adb[_0x53983f(0x34a,0x2ce)]=_0x281275,_0x237adb['tlng']=_0x15f4f9,_0x237adb[_0x53983f(0x3a3,0x342)]=_0x488709,_0x237adb['speed']=_0x577dca[0x2],_0x237adb['age']--):_0x237adb[_0x1cba4b(-0x155,-0xc7)]=0x0;}}return this['particles'];}[_0x5caa0a(0x65,0x8)](_0x3b8a48){function _0x12f247(_0x3338f2,_0x38e749){return _0x556281(_0x38e749,_0x3338f2-0x367);}let _0xf2ea3c,_0x3a8cbd;for(let _0x5b38e7=0x0;_0x5b38e7<0x1e;_0x5b38e7++){_0xf2ea3c=this['getRandomLatLng'](),_0x3a8cbd=this[_0x12f247(0xbb,0xa8)](_0xf2ea3c['lng'],_0xf2ea3c[_0x2d9e57(0x3b,0x58)]);if(_0x3a8cbd&&_0x3a8cbd[0x2]>0x0)break;}if(!_0x3a8cbd)return _0x3b8a48;const _0x45cc72=_0xf2ea3c['lng']+this['_calc_speedRate'][0x0]*_0x3a8cbd[0x0],_0x4c9ca0=_0xf2ea3c['lat']+this['_calc_speedRate'][0x1]*_0x3a8cbd[0x1];_0x3b8a48[_0x2d9e57(0xb0,0x7a)]=_0xf2ea3c['lng'],_0x3b8a48['lat']=_0xf2ea3c['lat'],_0x3b8a48[_0x12f247(0x7b,0xed)]=_0x45cc72,_0x3b8a48[_0x2d9e57(0x94,0x124)]=_0x4c9ca0,_0x3b8a48['age']=Math[_0x12f247(0x12c,0xf4)](Math[_0x12f247(0x125,0xb5)]()*this[_0x2d9e57(0x1d,0x65)]),_0x3b8a48['speed']=_0x3a8cbd[0x2];function _0x2d9e57(_0xd67c81,_0x1f6de4){return _0x556281(_0x1f6de4,_0xd67c81-0x324);}return _0x3b8a48;}['destroy'](){for(const _0x5afa5e in this){delete this[_0x5afa5e];}}}function fRandomByfloat(_0x3cadee,_0x5cc2e1){function _0x1c136e(_0x4f0d3e,_0x10bd62){return _0x5caa0a(_0x4f0d3e- -0x82,_0x10bd62);}return _0x3cadee+Math[_0x1c136e(0x41,0x55)]()*(_0x5cc2e1-_0x3cadee);}function _0x556b(){const _0x158da4=['Cartesian3','frameTime','vertexArray','mouseUp','removeAll','EventType','cols','PI_OVER_THREE','Sampler','PointTrans','pointerEvents','pointer-events','PixelDatatype','getPixelSize','segments','_animateFrame','Compute','PixelFormat','primitives','Pass','createParticlesTextures','ClearCommand','particles','9OYhMeP','__esModule','bindEvent','pixelFormat','width','_mountedHook','scene','drawingBufferWidth','postProcessingPosition','currentParticlesSpeed','floor','particleSystem','requestAnimationFrame','756800uzWqVK','uniformMap','getUVByXY','getUVByPoint','vertexShaderSource','attributeLocations','style','canvasWidth','createRawRenderState','colors','createSegmentsGeometry','depthTest','lonRange','OPAQUE','xmin','_randomParticle','init','TWO_PI','_onMouseUpEvent','add','segmentsColor','ymin','update','particlesTextureSize','createRenderingFramebuffers','LUMINANCE','lev','show','particlesWind','SCENE3D','lineTo','tlat','levmax','setOptions','wind','_calcUV','TextureMagnificationFilter','computeViewRectangle','ymax','lineWidth','blending','TextureMinificationFilter','_createCanvas','createWindTextures','bind','colorTable','Cartesian2','applyViewerParameters','viewerParameters','mouseDown','latRange','get','currentTrailsColor','mouse_down','FLOAT','windData','mouse_move','ceil','PrimitiveType','lng','autoClear','enabled','28GejLYy','age','_addedHook','createComputingPrimitives','off','north','screen','getColor','ALWAYS','removeEventListener','commandToExecute','preExecute','toDegrees','stroke','DISABLE_LOG_DEPTH_FRAGMENT_WRITE','layer','clearCommand','speedRate','resize','fromGeometry','_tomap','getWind','viewRectangleToLonLatRange','preRender','postProcessingSpeed','left','grid','2524UAWbTt','WindUtil','_canrefresh','_onMouseMoveEvent','refreshTimer','nextTrailsDepth','globeBoundingSphere','shaderProgram','uniform\x20sampler2D\x20nextParticlesPosition;\x0auniform\x20sampler2D\x20nextParticlesSpeed;\x20//\x20(u,\x20v,\x20w,\x20normalization)\x0a\x0a//\x20range\x20(min,\x20max)\x0auniform\x20vec2\x20lonRange;\x0auniform\x20vec2\x20latRange;\x0a\x0auniform\x20float\x20randomCoefficient;\x20//\x20use\x20to\x20improve\x20the\x20pseudo-random\x20generator\x0auniform\x20float\x20dropRate;\x20//\x20drop\x20rate\x20is\x20a\x20chance\x20a\x20particle\x20will\x20restart\x20at\x20random\x20position\x20to\x20avoid\x20degeneration\x0auniform\x20float\x20dropRateBump;\x0a\x0ain\x20vec2\x20v_textureCoordinates;\x0a\x0a//\x20pseudo-random\x20generator\x0aconst\x20vec3\x20randomConstants\x20=\x20vec3(12.9898,\x2078.233,\x204375.85453);\x0aconst\x20vec2\x20normalRange\x20=\x20vec2(0.0,\x201.0);\x0afloat\x20rand(vec2\x20seed,\x20vec2\x20range)\x20{\x0a\x20\x20\x20\x20vec2\x20randomSeed\x20=\x20randomCoefficient\x20*\x20seed;\x0a\x20\x20\x20\x20float\x20temp\x20=\x20dot(randomConstants.xy,\x20randomSeed);\x0a\x20\x20\x20\x20temp\x20=\x20fract(sin(temp)\x20*\x20(randomConstants.z\x20+\x20temp));\x0a\x20\x20\x20\x20return\x20temp\x20*\x20(range.y\x20-\x20range.x)\x20+\x20range.x;\x0a}\x0a\x0avec3\x20generateRandomParticle(vec2\x20seed,\x20float\x20lev)\x20{\x0a\x20\x20\x20\x20//\x20ensure\x20the\x20longitude\x20is\x20in\x20[0,\x20360]\x0a\x20\x20\x20\x20float\x20randomLon\x20=\x20mod(rand(seed,\x20lonRange),\x20360.0);\x0a\x20\x20\x20\x20float\x20randomLat\x20=\x20rand(-seed,\x20latRange);\x0a\x0a\x20\x20\x20\x20return\x20vec3(randomLon,\x20randomLat,\x20lev);\x0a}\x0a\x0abool\x20particleOutbound(vec3\x20particle)\x20{\x0a\x20\x20\x20\x20return\x20particle.y\x20<\x20-90.0\x20||\x20particle.y\x20>\x2090.0;\x0a}\x0a\x0avoid\x20main()\x20{\x0a\x20\x20\x20\x20vec3\x20nextParticle\x20=\x20texture(nextParticlesPosition,\x20v_textureCoordinates).rgb;\x0a\x20\x20\x20\x20vec4\x20nextSpeed\x20=\x20texture(nextParticlesSpeed,\x20v_textureCoordinates);\x0a\x20\x20\x20\x20float\x20particleDropRate\x20=\x20dropRate\x20+\x20dropRateBump\x20*\x20nextSpeed.a;\x0a\x0a\x20\x20\x20\x20vec2\x20seed1\x20=\x20nextParticle.xy\x20+\x20v_textureCoordinates;\x0a\x20\x20\x20\x20vec2\x20seed2\x20=\x20nextSpeed.xy\x20+\x20v_textureCoordinates;\x0a\x20\x20\x20\x20vec3\x20randomParticle\x20=\x20generateRandomParticle(seed1,\x20nextParticle.z);\x0a\x20\x20\x20\x20float\x20randomNumber\x20=\x20rand(seed2,\x20normalRange);\x0a\x0a\x20\x20\x20\x20if\x20(randomNumber\x20<\x20particleDropRate\x20||\x20particleOutbound(nextParticle))\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20out_FragColor\x20=\x20vec4(randomParticle,\x201.0);\x20//\x201.0\x20means\x20this\x20is\x20a\x20random\x20particle\x0a\x20\x20\x20\x20}\x20else\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20out_FragColor\x20=\x20vec4(nextParticle,\x200.0);\x0a\x20\x20\x20\x20}\x0a}\x0a','type','_updateIng2','commandType','Draw','currentTrails','windTextures','redraw','in\x20vec3\x20position;\x0ain\x20vec2\x20st;\x0a\x0aout\x20vec2\x20textureCoordinate;\x0a\x0avoid\x20main()\x20{\x0a\x20\x20\x20\x20textureCoordinate\x20=\x20st;\x0a\x20\x20\x20\x20gl_Position\x20=\x20vec4(position,\x201.0);\x0a}\x0a','fromCssColorString','//\x20the\x20size\x20of\x20UV\x20textures:\x20width\x20=\x20lon,\x20height\x20=\x20lat*lev\x0auniform\x20sampler2D\x20U;\x20//\x20eastward\x20wind\x0auniform\x20sampler2D\x20V;\x20//\x20northward\x20wind\x0a\x0auniform\x20sampler2D\x20currentParticlesPosition;\x20//\x20(lon,\x20lat,\x20lev)\x0a\x0auniform\x20vec3\x20dimension;\x20//\x20(lon,\x20lat,\x20lev)\x0auniform\x20vec3\x20minimum;\x20//\x20minimum\x20of\x20each\x20dimension\x0auniform\x20vec3\x20maximum;\x20//\x20maximum\x20of\x20each\x20dimension\x0auniform\x20vec3\x20interval;\x20//\x20interval\x20of\x20each\x20dimension\x0a\x0ain\x20vec2\x20v_textureCoordinates;\x0a\x0avec2\x20mapPositionToNormalizedIndex2D(vec3\x20lonLatLev)\x20{\x0a\x20\x20\x20\x20//\x20ensure\x20the\x20range\x20of\x20longitude\x20and\x20latitude\x0a\x20\x20\x20\x20lonLatLev.x\x20=\x20mod(lonLatLev.x,\x20360.0);\x0a\x20\x20\x20\x20lonLatLev.y\x20=\x20clamp(lonLatLev.y,\x20-90.0,\x2090.0);\x0a\x0a\x20\x20\x20\x20vec3\x20index3D\x20=\x20vec3(0.0);\x0a\x20\x20\x20\x20index3D.x\x20=\x20(lonLatLev.x\x20-\x20minimum.x)\x20/\x20interval.x;\x0a\x20\x20\x20\x20index3D.y\x20=\x20(lonLatLev.y\x20-\x20minimum.y)\x20/\x20interval.y;\x0a\x20\x20\x20\x20index3D.z\x20=\x20(lonLatLev.z\x20-\x20minimum.z)\x20/\x20interval.z;\x0a\x0a\x20\x20\x20\x20//\x20the\x20st\x20texture\x20coordinate\x20corresponding\x20to\x20(col,\x20row)\x20index\x0a\x20\x20\x20\x20//\x20example\x0a\x20\x20\x20\x20//\x20data\x20array\x20is\x20[0,\x201,\x202,\x203,\x204,\x205],\x20width\x20=\x203,\x20height\x20=\x202\x0a\x20\x20\x20\x20//\x20the\x20content\x20of\x20texture\x20will\x20be\x0a\x20\x20\x20\x20//\x20t\x201.0\x0a\x20\x20\x20\x20//\x20\x20\x20\x20|\x20\x203\x204\x205\x0a\x20\x20\x20\x20//\x20\x20\x20\x20|\x0a\x20\x20\x20\x20//\x20\x20\x20\x20|\x20\x200\x201\x202\x0a\x20\x20\x20\x20//\x20\x20\x200.0------1.0\x20s\x0a\x0a\x20\x20\x20\x20vec2\x20index2D\x20=\x20vec2(index3D.x,\x20index3D.z\x20*\x20dimension.y\x20+\x20index3D.y);\x0a\x20\x20\x20\x20vec2\x20normalizedIndex2D\x20=\x20vec2(index2D.x\x20/\x20dimension.x,\x20index2D.y\x20/\x20(dimension.y\x20*\x20dimension.z));\x0a\x20\x20\x20\x20return\x20normalizedIndex2D;\x0a}\x0a\x0afloat\x20getWind(sampler2D\x20windTexture,\x20vec3\x20lonLatLev)\x20{\x0a\x20\x20\x20\x20vec2\x20normalizedIndex2D\x20=\x20mapPositionToNormalizedIndex2D(lonLatLev);\x0a\x20\x20\x20\x20float\x20result\x20=\x20texture(windTexture,\x20normalizedIndex2D).r;\x0a\x20\x20\x20\x20return\x20result;\x0a}\x0a\x0aconst\x20mat4\x20kernelMatrix\x20=\x20mat4(\x0a\x20\x20\x20\x200.0,\x20-1.0,\x202.0,\x20-1.0,\x20//\x20first\x20column\x0a\x20\x20\x20\x202.0,\x200.0,\x20-5.0,\x203.0,\x20//\x20second\x20column\x0a\x20\x20\x20\x200.0,\x201.0,\x204.0,\x20-3.0,\x20//\x20third\x20column\x0a\x20\x20\x20\x200.0,\x200.0,\x20-1.0,\x201.0\x20//\x20fourth\x20column\x0a);\x0afloat\x20oneDimensionInterpolation(float\x20t,\x20float\x20p0,\x20float\x20p1,\x20float\x20p2,\x20float\x20p3)\x20{\x0a\x20\x20\x20\x20vec4\x20tVec4\x20=\x20vec4(1.0,\x20t,\x20t\x20*\x20t,\x20t\x20*\x20t\x20*\x20t);\x0a\x20\x20\x20\x20tVec4\x20=\x20tVec4\x20/\x202.0;\x0a\x20\x20\x20\x20vec4\x20pVec4\x20=\x20vec4(p0,\x20p1,\x20p2,\x20p3);\x0a\x20\x20\x20\x20return\x20dot((tVec4\x20*\x20kernelMatrix),\x20pVec4);\x0a}\x0a\x0afloat\x20calculateB(sampler2D\x20windTexture,\x20float\x20t,\x20float\x20lon,\x20float\x20lat,\x20float\x20lev)\x20{\x0a\x20\x20\x20\x20float\x20lon0\x20=\x20floor(lon)\x20-\x201.0\x20*\x20interval.x;\x0a\x20\x20\x20\x20float\x20lon1\x20=\x20floor(lon);\x0a\x20\x20\x20\x20float\x20lon2\x20=\x20floor(lon)\x20+\x201.0\x20*\x20interval.x;\x0a\x20\x20\x20\x20float\x20lon3\x20=\x20floor(lon)\x20+\x202.0\x20*\x20interval.x;\x0a\x0a\x20\x20\x20\x20float\x20p0\x20=\x20getWind(windTexture,\x20vec3(lon0,\x20lat,\x20lev));\x0a\x20\x20\x20\x20float\x20p1\x20=\x20getWind(windTexture,\x20vec3(lon1,\x20lat,\x20lev));\x0a\x20\x20\x20\x20float\x20p2\x20=\x20getWind(windTexture,\x20vec3(lon2,\x20lat,\x20lev));\x0a\x20\x20\x20\x20float\x20p3\x20=\x20getWind(windTexture,\x20vec3(lon3,\x20lat,\x20lev));\x0a\x0a\x20\x20\x20\x20return\x20oneDimensionInterpolation(t,\x20p0,\x20p1,\x20p2,\x20p3);\x0a}\x0a\x0afloat\x20interpolateOneTexture(sampler2D\x20windTexture,\x20vec3\x20lonLatLev)\x20{\x0a\x20\x20\x20\x20float\x20lon\x20=\x20lonLatLev.x;\x0a\x20\x20\x20\x20float\x20lat\x20=\x20lonLatLev.y;\x0a\x20\x20\x20\x20float\x20lev\x20=\x20lonLatLev.z;\x0a\x0a\x20\x20\x20\x20float\x20lat0\x20=\x20floor(lat)\x20-\x201.0\x20*\x20interval.y;\x0a\x20\x20\x20\x20float\x20lat1\x20=\x20floor(lat);\x0a\x20\x20\x20\x20float\x20lat2\x20=\x20floor(lat)\x20+\x201.0\x20*\x20interval.y;\x0a\x20\x20\x20\x20float\x20lat3\x20=\x20floor(lat)\x20+\x202.0\x20*\x20interval.y;\x0a\x0a\x20\x20\x20\x20vec2\x20coefficient\x20=\x20lonLatLev.xy\x20-\x20floor(lonLatLev.xy);\x0a\x20\x20\x20\x20float\x20b0\x20=\x20calculateB(windTexture,\x20coefficient.x,\x20lon,\x20lat0,\x20lev);\x0a\x20\x20\x20\x20float\x20b1\x20=\x20calculateB(windTexture,\x20coefficient.x,\x20lon,\x20lat1,\x20lev);\x0a\x20\x20\x20\x20float\x20b2\x20=\x20calculateB(windTexture,\x20coefficient.x,\x20lon,\x20lat2,\x20lev);\x0a\x20\x20\x20\x20float\x20b3\x20=\x20calculateB(windTexture,\x20coefficient.x,\x20lon,\x20lat3,\x20lev);\x0a\x0a\x20\x20\x20\x20return\x20oneDimensionInterpolation(coefficient.y,\x20b0,\x20b1,\x20b2,\x20b3);\x0a}\x0a\x0avec3\x20bicubic(vec3\x20lonLatLev)\x20{\x0a\x20\x20\x20\x20//\x20https://en.wikipedia.org/wiki/Bicubic_interpolation#Bicubic_convolution_algorithm\x0a\x20\x20\x20\x20float\x20u\x20=\x20interpolateOneTexture(U,\x20lonLatLev);\x0a\x20\x20\x20\x20float\x20v\x20=\x20interpolateOneTexture(V,\x20lonLatLev);\x0a\x20\x20\x20\x20float\x20w\x20=\x200.0;\x0a\x20\x20\x20\x20return\x20vec3(u,\x20v,\x20w);\x0a}\x0a\x0avoid\x20main()\x20{\x0a\x20\x20\x20\x20//\x20texture\x20coordinate\x20must\x20be\x20normalized\x0a\x20\x20\x20\x20vec3\x20lonLatLev\x20=\x20texture(currentParticlesPosition,\x20v_textureCoordinates).rgb;\x0a\x20\x20\x20\x20vec3\x20windVector\x20=\x20bicubic(lonLatLev);\x0a\x20\x20\x20\x20out_FragColor\x20=\x20vec4(windVector,\x200.0);\x0a}\x0a','particlesRendering','random','dropRate','clear','clientWidth','dropRateBump','RGBA','_pointerEvents','round','2XzeriV','getU','fromCache','geometry','lon','currentTrailsDepth','height','keys','depthMask','_speedRate','toWindowCoordinates','_onMap_preRenderEvent','GeometryAttribute','position','windField','register','rows','visibility','mouseMove','_showHook','createCommand','rgb(206,255,255)','isPointVisible','udata','forEach','addPrimitives','NEAREST','fixedHeight','max','speedFactor','outputTexture','VertexArray','createFramebuffer','pixelSize','particlesComputing','push','_onMapWhellEvent','rawRenderState','ColorRamp','canvas','536810OdrDNm','zIndex','Cesium','ShaderSource','canvasResize','abs','1623136xwnmLR','RenderState','defines','postMessage','xmax','framebuffer','beginPath','particleHeight','3295IgGAKZ','739236rHRVik','DomUtil','frameRate','4188mNzgJz','createTexture','LayerUtil','now','currentParticlesPosition','CanvasWindField','trails','randomBetween','onmessage','vdata','fadeOpacity','_calc_speedRate','destroyParticlesTextures','default','unbindEvent','getDirection','moveTo','toGridXY','globe','east','uniform\x20sampler2D\x20currentParticlesSpeed;\x20//\x20(u,\x20v,\x20w,\x20normalization)\x0auniform\x20sampler2D\x20particlesWind;\x0a\x0a//\x20used\x20to\x20calculate\x20the\x20wind\x20norm\x0auniform\x20vec2\x20uSpeedRange;\x20//\x20(min,\x20max);\x0auniform\x20vec2\x20vSpeedRange;\x0auniform\x20float\x20pixelSize;\x0auniform\x20float\x20speedFactor;\x0a\x0ain\x20vec2\x20v_textureCoordinates;\x0a\x0afloat\x20calculateWindNorm(vec3\x20speed)\x20{\x0a\x20\x20\x20\x20vec3\x20percent\x20=\x20vec3(0.0);\x0a\x20\x20\x20\x20percent.x\x20=\x20(speed.x\x20-\x20uSpeedRange.x)\x20/\x20(uSpeedRange.y\x20-\x20uSpeedRange.x);\x0a\x20\x20\x20\x20percent.y\x20=\x20(speed.y\x20-\x20vSpeedRange.x)\x20/\x20(vSpeedRange.y\x20-\x20vSpeedRange.x);\x0a\x20\x20\x20\x20float\x20normalization\x20=\x20length(percent);\x0a\x0a\x20\x20\x20\x20return\x20normalization;\x0a}\x0a\x0avoid\x20main()\x20{\x0a\x20\x20\x20\x20//\x20texture\x20coordinate\x20must\x20be\x20normalized\x0a\x20\x20\x20\x20//\x20vec3\x20currentSpeed\x20=\x20texture(currentParticlesSpeed,\x20v_textureCoordinates).rgb;\x0a\x20\x20\x20\x20vec3\x20windVector\x20=\x20texture(particlesWind,\x20v_textureCoordinates).rgb;\x0a\x0a\x20\x20\x20\x20vec4\x20nextSpeed\x20=\x20vec4(speedFactor\x20*\x20pixelSize\x20*\x20windVector,\x20calculateWindNorm(windVector));\x0a\x20\x20\x20\x20out_FragColor\x20=\x20nextSpeed;\x0a}\x0a','getRandomLatLng','clampToLatitudeRange','speed','nextParticlesSpeed','randomizeParticles','dimensions','_updateIng','77kcCcdx','Color','refreshParticles','maxAge','DrawCommand','BufferUsage','worker','color','_map','wheel','fragmentShaderSource','29189784zwVpUK','_colorRamp','nextTrailsColor','Math','strokeStyle','canvasContext','DepthFunction','sin','ShaderProgram','reverseY','getV','min','setData','textures','in\x20vec2\x20st;\x0a//\x20it\x20is\x20not\x20normal\x20itself,\x20but\x20used\x20to\x20control\x20normal\x0ain\x20vec3\x20normal;\x20//\x20(point\x20to\x20use,\x20offset\x20sign,\x20not\x20used\x20component)\x0a\x0auniform\x20sampler2D\x20currentParticlesPosition;\x0auniform\x20sampler2D\x20postProcessingPosition;\x0auniform\x20sampler2D\x20postProcessingSpeed;\x0a\x0auniform\x20float\x20particleHeight;\x0a\x0auniform\x20float\x20aspect;\x0auniform\x20float\x20pixelSize;\x0auniform\x20float\x20lineWidth;\x0a\x0aout\x20float\x20speedNormalization;\x0a\x0avec3\x20convertCoordinate(vec3\x20lonLatLev)\x20{\x0a\x20\x20\x20\x20//\x20WGS84\x20(lon,\x20lat,\x20lev)\x20->\x20ECEF\x20(x,\x20y,\x20z)\x0a\x20\x20\x20\x20//\x20see\x20https://en.wikipedia.org/wiki/Geographic_coordinate_conversion#From_geodetic_to_ECEF_coordinates\x20for\x20detail\x0a\x0a\x20\x20\x20\x20//\x20WGS\x2084\x20geometric\x20constants\x0a\x20\x20\x20\x20float\x20a\x20=\x206378137.0;\x20//\x20Semi-major\x20axis\x0a\x20\x20\x20\x20float\x20b\x20=\x206356752.3142;\x20//\x20Semi-minor\x20axis\x0a\x20\x20\x20\x20float\x20e2\x20=\x206.69437999014e-3;\x20//\x20First\x20eccentricity\x20squared\x0a\x0a\x20\x20\x20\x20float\x20latitude\x20=\x20radians(lonLatLev.y);\x0a\x20\x20\x20\x20float\x20longitude\x20=\x20radians(lonLatLev.x);\x0a\x0a\x20\x20\x20\x20float\x20cosLat\x20=\x20cos(latitude);\x0a\x20\x20\x20\x20float\x20sinLat\x20=\x20sin(latitude);\x0a\x20\x20\x20\x20float\x20cosLon\x20=\x20cos(longitude);\x0a\x20\x20\x20\x20float\x20sinLon\x20=\x20sin(longitude);\x0a\x0a\x20\x20\x20\x20float\x20N_Phi\x20=\x20a\x20/\x20sqrt(1.0\x20-\x20e2\x20*\x20sinLat\x20*\x20sinLat);\x0a\x20\x20\x20\x20float\x20h\x20=\x20particleHeight;\x20//\x20it\x20should\x20be\x20high\x20enough\x20otherwise\x20the\x20particle\x20may\x20not\x20pass\x20the\x20terrain\x20depth\x20test\x0a\x0a\x20\x20\x20\x20vec3\x20cartesian\x20=\x20vec3(0.0);\x0a\x20\x20\x20\x20cartesian.x\x20=\x20(N_Phi\x20+\x20h)\x20*\x20cosLat\x20*\x20cosLon;\x0a\x20\x20\x20\x20cartesian.y\x20=\x20(N_Phi\x20+\x20h)\x20*\x20cosLat\x20*\x20sinLon;\x0a\x20\x20\x20\x20cartesian.z\x20=\x20((b\x20*\x20b)\x20/\x20(a\x20*\x20a)\x20*\x20N_Phi\x20+\x20h)\x20*\x20sinLat;\x0a\x20\x20\x20\x20return\x20cartesian;\x0a}\x0a\x0avec4\x20calcProjectedCoordinate(vec3\x20lonLatLev)\x20{\x0a\x20\x20\x20\x20//\x20the\x20range\x20of\x20longitude\x20in\x20Cesium\x20is\x20[-180,\x20180]\x20but\x20the\x20range\x20of\x20longitude\x20in\x20the\x20NetCDF\x20file\x20is\x20[0,\x20360]\x0a\x20\x20\x20\x20//\x20[0,\x20180]\x20is\x20corresponding\x20to\x20[0,\x20180]\x20and\x20[180,\x20360]\x20is\x20corresponding\x20to\x20[-180,\x200]\x0a\x20\x20\x20\x20lonLatLev.x\x20=\x20mod(lonLatLev.x\x20+\x20180.0,\x20360.0)\x20-\x20180.0;\x0a\x20\x20\x20\x20vec3\x20particlePosition\x20=\x20convertCoordinate(lonLatLev);\x0a\x20\x20\x20\x20vec4\x20projectedCoordinate\x20=\x20czm_modelViewProjection\x20*\x20vec4(particlePosition,\x201.0);\x0a\x20\x20\x20\x20return\x20projectedCoordinate;\x0a}\x0a\x0avec4\x20calcOffset(vec4\x20currentProjectedCoordinate,\x20vec4\x20nextProjectedCoordinate,\x20float\x20offsetSign)\x20{\x0a\x20\x20\x20\x20vec2\x20aspectVec2\x20=\x20vec2(aspect,\x201.0);\x0a\x20\x20\x20\x20vec2\x20currentXY\x20=\x20(currentProjectedCoordinate.xy\x20/\x20currentProjectedCoordinate.w)\x20*\x20aspectVec2;\x0a\x20\x20\x20\x20vec2\x20nextXY\x20=\x20(nextProjectedCoordinate.xy\x20/\x20nextProjectedCoordinate.w)\x20*\x20aspectVec2;\x0a\x0a\x20\x20\x20\x20float\x20offsetLength\x20=\x20lineWidth\x20/\x202.0;\x0a\x20\x20\x20\x20vec2\x20direction\x20=\x20normalize(nextXY\x20-\x20currentXY);\x0a\x20\x20\x20\x20vec2\x20normalVector\x20=\x20vec2(-direction.y,\x20direction.x);\x0a\x20\x20\x20\x20normalVector.x\x20=\x20normalVector.x\x20/\x20aspect;\x0a\x20\x20\x20\x20normalVector\x20=\x20offsetLength\x20*\x20normalVector;\x0a\x0a\x20\x20\x20\x20vec4\x20offset\x20=\x20vec4(offsetSign\x20*\x20normalVector,\x200.0,\x200.0);\x0a\x20\x20\x20\x20return\x20offset;\x0a}\x0a\x0avoid\x20main()\x20{\x0a\x20\x20\x20\x20vec2\x20particleIndex\x20=\x20st;\x0a\x0a\x20\x20\x20\x20vec3\x20currentPosition\x20=\x20texture(currentParticlesPosition,\x20particleIndex).rgb;\x0a\x20\x20\x20\x20vec4\x20nextPosition\x20=\x20texture(postProcessingPosition,\x20particleIndex);\x0a\x0a\x20\x20\x20\x20vec4\x20currentProjectedCoordinate\x20=\x20vec4(0.0);\x0a\x20\x20\x20\x20vec4\x20nextProjectedCoordinate\x20=\x20vec4(0.0);\x0a\x20\x20\x20\x20if\x20(nextPosition.w\x20>\x200.0)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20currentProjectedCoordinate\x20=\x20calcProjectedCoordinate(currentPosition);\x0a\x20\x20\x20\x20\x20\x20\x20\x20nextProjectedCoordinate\x20=\x20calcProjectedCoordinate(currentPosition);\x0a\x20\x20\x20\x20}\x20else\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20currentProjectedCoordinate\x20=\x20calcProjectedCoordinate(currentPosition);\x0a\x20\x20\x20\x20\x20\x20\x20\x20nextProjectedCoordinate\x20=\x20calcProjectedCoordinate(nextPosition.xyz);\x0a\x20\x20\x20\x20}\x0a\x0a\x20\x20\x20\x20float\x20pointToUse\x20=\x20normal.x;\x20//\x20-1\x20is\x20currentProjectedCoordinate\x20and\x20+1\x20is\x20nextProjectedCoordinate\x0a\x20\x20\x20\x20float\x20offsetSign\x20=\x20normal.y;\x0a\x0a\x20\x20\x20\x20vec4\x20offset\x20=\x20pixelSize\x20*\x20calcOffset(currentProjectedCoordinate,\x20nextProjectedCoordinate,\x20offsetSign);\x0a\x20\x20\x20\x20if\x20(pointToUse\x20<\x200.0)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20gl_Position\x20=\x20currentProjectedCoordinate\x20+\x20offset;\x0a\x20\x20\x20\x20}\x20else\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20gl_Position\x20=\x20nextProjectedCoordinate\x20+\x20offset;\x0a\x20\x20\x20\x20}\x0a\x0a\x20\x20\x20\x20speedNormalization\x20=\x20texture(postProcessingSpeed,\x20particleIndex).a;\x0a}\x0a','nextTrails','options','particlesTextures','commandList','tlng','sources','data','lat','18vknZCm','destroyObject','context','remove','destroy','drawingBufferHeight','execute','length','framebuffers','segmentsDepth','camera','defined','west','updateViewerParameters','particlesNumber','maxParticles','cancelAnimationFrame','DISABLE_GL_POSITION_LOG_DEPTH','nextParticlesPosition','array','_onMouseDownEvent'];_0x556b=function(){return _0x158da4;};return _0x556b();}const Cesium=mars3d__namespace[_0x5caa0a(0xf5,0x93)],BaseLayer=mars3d__namespace['layer']['BaseLayer'];function _0x556281(_0x1a8c27,_0x4e36f2){return _0x3462(_0x4e36f2- -0x3b7,_0x1a8c27);}class CanvasWindLayer extends BaseLayer{constructor(_0x23cd13={}){super(_0x23cd13);function _0x58f23f(_0x239afc,_0x3562ed){return _0x5caa0a(_0x3562ed-0x175,_0x239afc);}this['_setOptionsHook'](_0x23cd13);function _0x40c0c9(_0x1662dd,_0x5dbb57){return _0x5caa0a(_0x5dbb57-0x192,_0x1662dd);}this[_0x40c0c9(0x26b,0x284)]=null,_0x23cd13['colors']&&_0x23cd13['steps']&&(this['_colorRamp']=new mars3d__namespace[(_0x58f23f(0x2c8,0x266))](_0x23cd13));}['_setOptionsHook'](_0x4fce6d,_0x29278e){this[_0x28c09a(0x248,0x2c3)]=0x3e8/(_0x4fce6d[_0x57a035(-0x292,-0x29c)]||0xa);function _0x28c09a(_0x5903f8,_0x32a36d){return _0x5caa0a(_0x5903f8-0x215,_0x32a36d);}this[_0x28c09a(0x2de,0x2ba)]=this[_0x57a035(-0x25a,-0x1d7)]['pointerEvents']??![];function _0x57a035(_0x4c173d,_0x5cefe5){return _0x556281(_0x5cefe5,_0x4c173d-0x95);}this['color']=_0x4fce6d['color']||'#ffffff',this[_0x28c09a(0x292,0x2c9)]=_0x4fce6d[_0x28c09a(0x292,0x25c)]||0x1,this[_0x57a035(-0x18a,-0x1c7)]=_0x4fce6d[_0x28c09a(0x2fb,0x383)]??0x0,this[_0x57a035(-0x261,-0x2e9)]=_0x4fce6d[_0x28c09a(0x224,0x28e)]??![],this['windField']&&this[_0x57a035(-0x197,-0x220)]['setOptions'](_0x4fce6d);}get['layer'](){return this['canvas'];}get['canvasWidth'](){function _0x3499d4(_0x307530,_0x422cad){return _0x556281(_0x422cad,_0x307530-0x40c);}function _0x2c0af6(_0xc0ed45,_0x36b2b9){return _0x5caa0a(_0x36b2b9-0x37c,_0xc0ed45);}return this['_map'][_0x2c0af6(0x35f,0x3cb)][_0x3499d4(0x1f9,0x1b1)]['clientWidth'];}get['canvasHeight'](){return this['_map']['scene']['canvas']['clientHeight'];}get['pointerEvents'](){function _0x3d821b(_0xc9dbd8,_0x12eb8c){return _0x556281(_0x12eb8c,_0xc9dbd8-0x2b1);}return this[_0x3d821b(0x75,0xa1)];}set[_0x5caa0a(0x3c,0x44)](_0x1cae4b){this[_0x71b403(0x4f0,0x56c)]=_0x1cae4b;function _0x3e4f76(_0x56216b,_0x53f31b){return _0x556281(_0x53f31b,_0x56216b-0x5f4);}function _0x71b403(_0x26cc03,_0x46d97c){return _0x556281(_0x46d97c,_0x26cc03-0x72c);}if(!this[_0x3e4f76(0x3e1,0x428)])return;_0x1cae4b?this[_0x3e4f76(0x3e1,0x3b6)]['style']['pointer-events']='all':this[_0x3e4f76(0x3e1,0x472)][_0x71b403(0x483,0x45b)][_0x71b403(0x464,0x3ec)]='none';}get['particlesNumber'](){return this['options']['particlesNumber'];}set[_0x5caa0a(0x2b,0x37)](_0x3147e6){function _0x455b6b(_0x5c20d2,_0x31116b){return _0x5caa0a(_0x31116b-0x3b0,_0x5c20d2);}this[_0x248f77(0x18d,0x1da)][_0x248f77(0x1a2,0x116)]=_0x3147e6;function _0x248f77(_0xa4e117,_0x257529){return _0x5caa0a(_0xa4e117-0x177,_0x257529);}clearTimeout(this[_0x455b6b(0x4e4,0x461)]),this['_canrefresh']=setTimeout(()=>{this['redraw']();},0x1f4);}get['speedRate'](){function _0x285a17(_0x510d6d,_0x5ae7f5){return _0x5caa0a(_0x5ae7f5-0x442,_0x510d6d);}return this['options'][_0x285a17(0x493,0x4e7)];}set[_0x556281(-0x1f9,-0x260)](_0x5918b2){function _0x37d17c(_0x84a19,_0x2f5853){return _0x556281(_0x84a19,_0x2f5853-0x6f7);}this['options'][_0x37d17c(0x512,0x497)]=_0x5918b2,this['windField']&&(this['windField']['speedRate']=_0x5918b2);}get['maxAge'](){function _0x591ea5(_0x26310d,_0x2079c3){return _0x556281(_0x2079c3,_0x26310d-0x74a);}return this['options'][_0x591ea5(0x443,0x474)];}set[_0x5caa0a(-0x2,-0x13)](_0x582e05){this['options']['maxAge']=_0x582e05,this['windField']&&(this['windField']['maxAge']=_0x582e05);}get['data'](){return this['windData'];}set['data'](_0x2090f4){function _0x2fea62(_0x181d1a,_0x39d69b){return _0x556281(_0x181d1a,_0x39d69b-0x2ed);}this[_0x2fea62(-0x83,-0x6)](_0x2090f4);}[_0x556281(-0x212,-0x227)](_0xfedffa){function _0x2adae9(_0x244821,_0xbfd10f){return _0x5caa0a(_0x244821- -0x2bb,_0xbfd10f);}function _0x8ce7e3(_0x24040c,_0x48f030){return _0x5caa0a(_0x24040c- -0x242,_0x48f030);}_0xfedffa?this[_0x8ce7e3(-0x1ac,-0x21f)]():(this[_0x8ce7e3(-0x1b5,-0x1f8)]&&(this[_0x2adae9(-0x2a5,-0x2d2)]['data']=this['windData']),this['_removedHook']());}[_0x556281(-0x2c1,-0x2b7)](){function _0x219440(_0x3b7ee1,_0x3f06b9){return _0x5caa0a(_0x3f06b9- -0x1f5,_0x3b7ee1);}function _0x64a935(_0x397f97,_0x1081fa){return _0x556281(_0x397f97,_0x1081fa-0x17f);}this[_0x64a935(-0x16a,-0x170)][_0x64a935(-0x114,-0x185)]?this['initWorker']():this[_0x219440(-0x19c,-0x11c)]=new CanvasWindField(this[_0x219440(-0x1fd,-0x1df)]);}['_addedHook'](){function _0x375a80(_0x3ab313,_0x4a6cc7){return _0x556281(_0x4a6cc7,_0x3ab313-0x799);}this['canvas']=this[_0x375a80(0x514,0x4be)]();function _0x27ed4d(_0x4e078c,_0x20f5e3){return _0x556281(_0x20f5e3,_0x4e078c-0x1fa);}const _0x27bcfa={};_0x27bcfa['willReadFrequently']=!![],this[_0x27ed4d(-0x100,-0x180)]=this['canvas']['getContext']('2d',_0x27bcfa),this[_0x375a80(0x4df,0x517)](),this['options']['data']&&this['setData'](this[_0x375a80(0x4aa,0x52a)]['data']);}['_removedHook'](){this[_0x6adc59(0x4ee,0x51d)]();function _0x6adc59(_0x2b4f56,_0xc1922d){return _0x556281(_0xc1922d,_0x2b4f56-0x72e);}this[_0x16b6c6(-0x297,-0x290)]();function _0x16b6c6(_0x299f37,_0x25482b){return _0x5caa0a(_0x299f37- -0x284,_0x25482b);}this['canvas']&&(this['_map']['container']['removeChild'](this['canvas']),delete this['canvas']);}[_0x556281(-0x247,-0x285)](){const _0x4bbb87=mars3d__namespace[_0x533fbd(0x234,0x245)]['create']('canvas','mars3d-canvasWind',this[_0x8e6e12(-0xde,-0x9d)]['container']);_0x4bbb87[_0x8e6e12(-0x27,-0x44)]['position']='absolute',_0x4bbb87['style']['top']='0px';function _0x533fbd(_0x46e0f6,_0x3734e1){return _0x5caa0a(_0x46e0f6-0x257,_0x3734e1);}_0x4bbb87['style'][_0x533fbd(0x304,0x304)]='0px',_0x4bbb87[_0x533fbd(0x2b3,0x2c8)][_0x8e6e12(0x3f,-0x53)]=this[_0x8e6e12(-0x98,-0x9d)]['scene'][_0x8e6e12(0x7,0x52)]['clientWidth']+'px',_0x4bbb87[_0x8e6e12(-0xd,-0x44)]['height']=this[_0x8e6e12(-0x28,-0x9d)]['scene'][_0x8e6e12(-0x2b,0x52)]['clientHeight']+'px',_0x4bbb87['style']['pointerEvents']=this[_0x8e6e12(0x68,0x29)]?'auto':'none';function _0x8e6e12(_0x5b0636,_0xee7a47){return _0x556281(_0x5b0636,_0xee7a47-0x265);}return _0x4bbb87['style']['zIndex']=this['options'][_0x8e6e12(0xaa,0x54)]??0x9,_0x4bbb87['width']=this[_0x533fbd(0x25a,0x2c3)]['scene'][_0x533fbd(0x349,0x389)][_0x8e6e12(0x20,0x26)],_0x4bbb87['height']=this['_map'][_0x8e6e12(-0x63,-0x51)][_0x533fbd(0x349,0x35d)]['clientHeight'],_0x4bbb87;}[_0x5caa0a(0xa6,0x93)](){function _0x50e997(_0x48d3ac,_0x36faf1){return _0x556281(_0x48d3ac,_0x36faf1-0x200);}function _0x27e990(_0x1cb91d,_0x5ec433){return _0x556281(_0x5ec433,_0x1cb91d-0x583);}this['canvas']&&(this[_0x27e990(0x370,0x3b8)][_0x50e997(-0x120,-0xa9)]['width']=this[_0x27e990(0x281,0x292)]['scene']['canvas']['clientWidth']+'px',this['canvas']['style']['height']=this['_map']['scene']['canvas']['clientHeight']+'px',this['canvas']['width']=this['_map']['scene']['canvas'][_0x27e990(0x344,0x35d)],this[_0x27e990(0x370,0x309)][_0x50e997(-0x46,-0x34)]=this[_0x27e990(0x281,0x266)][_0x27e990(0x2cd,0x34b)]['canvas']['clientHeight']);}['bindEvent'](){const _0x37d84c=this;function _0x291726(_0x4870f3,_0x59139e){return _0x556281(_0x59139e,_0x4870f3-0x39d);}let _0xadc7eb=Date[_0x291726(0x7a,0x9d)]();(function _0x41ab0b(){function _0x18b8e4(_0x5321bd,_0x83a238){return _0x291726(_0x5321bd- -0x278,_0x83a238);}if(_0x37d84c['isDestroy'])return;_0x37d84c['_animateFrame']=window[_0x4284d6(-0x12f,-0x18a)](_0x41ab0b);function _0x4284d6(_0xba0dca,_0x39280c){return _0x291726(_0x39280c- -0x277,_0xba0dca);}if(_0x37d84c['show']&&_0x37d84c[_0x18b8e4(-0x107,-0x8a)]){const _0x3656d3=Date['now'](),_0x1f1178=_0x3656d3-_0xadc7eb;_0x1f1178>_0x37d84c[_0x18b8e4(-0x1ad,-0x21a)]&&(_0xadc7eb=_0x3656d3-_0x1f1178%_0x37d84c[_0x18b8e4(-0x1ad,-0x11b)],_0x37d84c['update']());}}(),window['addEventListener']('resize',this['resize'][_0x291726(0x11a,0xaf)](this),![]));function _0x4b0093(_0x5bf147,_0x2c6a50){return _0x5caa0a(_0x5bf147-0x454,_0x2c6a50);}this['mouse_down']=![],this[_0x4b0093(0x4e2,0x516)]=![],this['options']['mouseHidden']&&(this['_map']['on'](mars3d__namespace['EventType']['wheel'],this['_onMapWhellEvent'],this),this['_map']['on'](mars3d__namespace[_0x4b0093(0x48b,0x43d)][_0x4b0093(0x4db,0x503)],this['_onMouseDownEvent'],this),this['_map']['on'](mars3d__namespace['EventType'][_0x291726(0xcd,0x5d)],this['_onMouseUpEvent'],this));}['unbindEvent'](){window[_0x4f64ac(-0xe2,-0xc8)](this['_animateFrame']),delete this[_0x4f64ac(-0x3a,-0xb4)];function _0x4f64ac(_0x3cdc83,_0x570bbb){return _0x556281(_0x3cdc83,_0x570bbb-0x210);}function _0x987d99(_0x5708be,_0x2b968d){return _0x5caa0a(_0x5708be-0x23b,_0x2b968d);}window[_0x4f64ac(-0xbc,-0x58)](_0x987d99(0x2e1,0x26b),this['resize']),this[_0x987d99(0x251,0x2a5)]['mouseHidden']&&(this['_map']['off'](mars3d__namespace['EventType'][_0x987d99(0x23f,0x2a8)],this['_onMapWhellEvent'],this),this['_map']['off'](mars3d__namespace[_0x4f64ac(-0x135,-0xbe)][_0x4f64ac(-0x87,-0x6e)],this['_onMouseDownEvent'],this),this[_0x4f64ac(-0x62,-0xf2)]['off'](mars3d__namespace['EventType']['mouseUp'],this['_onMouseUpEvent'],this),this[_0x4f64ac(-0xad,-0xf2)]['off'](mars3d__namespace[_0x987d99(0x272,0x268)]['mouseMove'],this['_onMouseMoveEvent'],this));}['_onMapWhellEvent'](_0x1aec3d){function _0x279a9e(_0x1a408c,_0x4fd6eb){return _0x556281(_0x4fd6eb,_0x1a408c-0x6fd);}clearTimeout(this['refreshTimer']);if(!this[_0x279a9e(0x469,0x417)]||!this['canvas'])return;this['canvas']['style']['visibility']='hidden',this['refreshTimer']=setTimeout(()=>{if(!this['show'])return;function _0x183e10(_0x12195c,_0x2c5ac3){return _0x279a9e(_0x2c5ac3- -0x64b,_0x12195c);}this['redraw'](),this['canvas'][_0x183e10(-0x1f0,-0x1f7)]['visibility']='visible';},0xc8);}['_onMouseDownEvent'](_0x52a186){this['mouse_down']=!![];function _0x3ef808(_0x4addc9,_0x4f1b06){return _0x556281(_0x4addc9,_0x4f1b06-0x491);}this['_map'][_0x22d105(-0x23,-0xac)](mars3d__namespace['EventType']['mouseMove'],this['_onMouseMoveEvent'],this);function _0x22d105(_0x5b301c,_0x505989){return _0x556281(_0x5b301c,_0x505989-0x1c1);}this[_0x3ef808(0x183,0x18f)]['on'](mars3d__namespace[_0x3ef808(0x22e,0x1c3)][_0x3ef808(0x2d6,0x269)],this['_onMouseMoveEvent'],this);}[_0x556281(-0x290,-0x253)](_0x3abc03){function _0x32efb4(_0x2c4510,_0x169d8b){return _0x5caa0a(_0x169d8b-0x7f,_0x2c4510);}if(!this['show']||!this[_0x32efb4(0x158,0x171)])return;function _0x10a962(_0x815208,_0x222472){return _0x556281(_0x222472,_0x815208-0xd2);}this['mouse_down']&&(this['canvas']['style'][_0x32efb4(0x189,0x15b)]='hidden',this['mouse_move']=!![]);}['_onMouseUpEvent'](_0x179c5a){if(!this[_0x3bb7df(-0x6e,0x21)]||!this['canvas'])return;this[_0x21cb4f(0x82,-0xf)]['off'](mars3d__namespace['EventType']['mouseMove'],this['_onMouseMoveEvent'],this);this[_0x3bb7df(-0x54,-0xe7)]&&this['mouse_move']&&this['redraw']();function _0x21cb4f(_0x2c0086,_0x5b56b7){return _0x5caa0a(_0x2c0086-0x7f,_0x5b56b7);}this[_0x21cb4f(0x171,0x179)]['style']['visibility']='visible';function _0x3bb7df(_0x51a54f,_0x297ef6){return _0x556281(_0x297ef6,_0x51a54f-0x226);}this['mouse_down']=![],this[_0x3bb7df(-0x51,-0xb3)]=![];}['setData'](_0x572e02){this[_0x395ca0(0x2,-0x64)](),this[_0x395ca0(-0x36,0x1e)]=_0x572e02;function _0x395ca0(_0x42621f,_0x48773b){return _0x556281(_0x48773b,_0x42621f-0x242);}function _0x2b0b75(_0x155b82,_0xa65857){return _0x5caa0a(_0x155b82- -0x6,_0xa65857);}this['windField']['setDate'](_0x572e02),this['redraw']();}[_0x5caa0a(0xbe,0x91)](){if(!this[_0x515c50(0xc,-0x83)])return;this['windField'][_0x515c50(-0x33,-0x7d)](this['options']);function _0x515c50(_0x3f621d,_0x42d1e9){return _0x556281(_0x3f621d,_0x42d1e9-0x211);}function _0x230048(_0x231410,_0x4ebb0e){return _0x556281(_0x4ebb0e,_0x231410-0x423);}this[_0x515c50(-0xfa,-0x88)]();}[_0x556281(-0x2f7,-0x299)](){function _0x44feaf(_0x40f4c6,_0x227963){return _0x556281(_0x227963,_0x40f4c6-0x95);}if(this['_updateIng'])return;this['_updateIng']=!![];if(this['worker'])this['windField']['update']();else{const _0x2d867e=this[_0x44feaf(-0x197,-0x110)]['getParticles']();this['_drawLines'](_0x2d867e);}function _0x30da24(_0x171cd1,_0x38d40f){return _0x556281(_0x171cd1,_0x38d40f-0x5fd);}this[_0x30da24(0x354,0x2f2)]=![];}['_drawLines'](_0x3e3568){this['canvasContext']['globalCompositeOperation']='destination-in',this[_0x31143b(-0x31e,-0x294)]['fillRect'](0x0,0x0,this[_0x31143b(-0x26e,-0x242)],this['canvasHeight']),this[_0x31143b(-0x308,-0x294)]['globalCompositeOperation']='lighter',this['canvasContext']['globalAlpha']=0.9;const _0x3b832b=this[_0x52d875(0x37a,0x3f2)]['scene']['mode']!==Cesium['SceneMode']['SCENE3D'];function _0x31143b(_0x5eb163,_0x9bef57){return _0x5caa0a(_0x9bef57- -0x29f,_0x5eb163);}function _0x52d875(_0x500489,_0x1150b3){return _0x5caa0a(_0x1150b3-0x3ef,_0x500489);}const _0x4bfcb6=this['canvasWidth']*0.25;if(this[_0x52d875(0x433,0x3f6)])for(let _0x737c58=0x0,_0x2930c1=_0x3e3568['length'];_0x737c58<_0x2930c1;_0x737c58++){const _0x56392f=_0x3e3568[_0x737c58],_0x35116a=this['_tomap'](_0x56392f[_0x52d875(0x4a9,0x480)],_0x56392f['lat'],_0x56392f),_0x4a5da7=this[_0x31143b(-0x1c0,-0x1f7)](_0x56392f['tlng'],_0x56392f['tlat'],_0x56392f);if(!_0x35116a||!_0x4a5da7)continue;if(_0x3b832b&&Math[_0x52d875(0x3e6,0x3c1)](_0x35116a[0x0]-_0x4a5da7[0x0])>=_0x4bfcb6)continue;this['canvasContext'][_0x31143b(-0x29b,-0x2c6)](),this[_0x52d875(0x3b8,0x3fa)]['lineWidth']=this['lineWidth'],this['canvasContext']['strokeStyle']=this['_colorRamp'][_0x31143b(-0x1f2,-0x204)](_0x56392f[_0x31143b(-0x331,-0x2a9)]),this['canvasContext']['moveTo'](_0x35116a[0x0],_0x35116a[0x1]),this['canvasContext'][_0x52d875(0x436,0x463)](_0x4a5da7[0x0],_0x4a5da7[0x1]),this[_0x31143b(-0x26b,-0x294)]['stroke']();}else{this['canvasContext'][_0x31143b(-0x2f9,-0x2c6)](),this[_0x52d875(0x3ac,0x3fa)]['lineWidth']=this['lineWidth'],this[_0x31143b(-0x260,-0x294)][_0x52d875(0x481,0x3f9)]=this[_0x52d875(0x3b3,0x3f1)];for(let _0x4822bd=0x0,_0x167f64=_0x3e3568[_0x52d875(0x387,0x413)];_0x4822bd<_0x167f64;_0x4822bd++){const _0x4bf37b=_0x3e3568[_0x4822bd],_0x91f57=this[_0x52d875(0x417,0x497)](_0x4bf37b['lng'],_0x4bf37b[_0x31143b(-0x2dd,-0x283)],_0x4bf37b),_0x1274f1=this['_tomap'](_0x4bf37b['tlng'],_0x4bf37b[_0x31143b(-0x269,-0x22a)],_0x4bf37b);if(!_0x91f57||!_0x1274f1)continue;if(_0x3b832b&&Math[_0x31143b(-0x290,-0x2cd)](_0x91f57[0x0]-_0x1274f1[0x0])>=_0x4bfcb6)continue;this[_0x31143b(-0x2fe,-0x294)][_0x52d875(0x350,0x3de)](_0x91f57[0x0],_0x91f57[0x1]),this['canvasContext'][_0x52d875(0x3e3,0x463)](_0x1274f1[0x0],_0x1274f1[0x1]);}this['canvasContext'][_0x31143b(-0x24b,-0x1fe)]();}}['_tomap'](_0x61a9b,_0x4df717,_0x38ec30){function _0x49e601(_0x36c214,_0x269d4e){return _0x556281(_0x36c214,_0x269d4e-0x2e1);}const _0x2ab3ca=Cesium[_0x2a82cc(0x34c,0x2d5)]['fromDegrees'](_0x61a9b,_0x4df717,this['fixedHeight']),_0x30212c=this['_map']['scene'];function _0x2a82cc(_0x493abe,_0x125eb8){return _0x556281(_0x125eb8,_0x493abe-0x61f);}if(_0x30212c['mode']===Cesium['SceneMode'][_0x2a82cc(0x38d,0x41d)]){const _0x19110c=new Cesium['EllipsoidalOccluder'](_0x30212c['globe']['ellipsoid'],_0x30212c[_0x2a82cc(0x341,0x2b3)]['positionWC']),_0x56b4f5=_0x19110c[_0x49e601(0x33,0xbd)](_0x2ab3ca);if(!_0x56b4f5)return _0x38ec30['age']=0x0,null;}const _0x2b8574=mars3d__namespace[_0x2a82cc(0x355,0x3a2)][_0x2a82cc(0x3ef,0x368)](this[_0x49e601(0x1b,-0x21)][_0x49e601(0xad,0x2b)],_0x2ab3ca);return _0x2b8574?[_0x2b8574['x'],_0x2b8574['y']]:null;}[_0x556281(-0x231,-0x240)](){this['windField']['clear'](),delete this['windData'];}['initWorker'](){this[_0x2c4b5c(0x167,0x18e)]=new Worker(this['options'][_0x2c4b5c(0x15f,0x18e)]),this[_0x1c671f(0x28f,0x309)][_0x2c4b5c(0x155,0x174)]=_0x1fbb35=>{function _0x211959(_0x4e2268,_0x1d3698){return _0x2c4b5c(_0x1d3698,_0x4e2268- -0x35b);}this['_drawLines'](_0x1fbb35[_0x211959(-0x1b3,-0x1cc)]['particles']),this['_updateIng2']=![];},this[_0x1c671f(0x367,0x37a)]={'init':_0x3557d5=>{const _0x490cc5={};_0x490cc5['type']='init';function _0x26d576(_0x43a1f8,_0x5828ba){return _0x2c4b5c(_0x43a1f8,_0x5828ba- -0x463);}_0x490cc5[_0x26d576(-0x288,-0x2c0)]=_0x3557d5;function _0x42c818(_0x1ebaa0,_0x48ba19){return _0x1c671f(_0x1ebaa0- -0x4f9,_0x48ba19);}this['worker'][_0x26d576(-0x391,-0x300)](_0x490cc5);},'setOptions':_0x6086ba=>{function _0x4875b9(_0x25fc2d,_0x5ea4b6){return _0x2c4b5c(_0x5ea4b6,_0x25fc2d- -0x372);}const _0x49a361={};function _0xf83c51(_0x24a767,_0xab691e){return _0x2c4b5c(_0xab691e,_0x24a767-0x2b);}_0x49a361['type']='setOptions',_0x49a361['options']=_0x6086ba,this[_0x4875b9(-0x1e4,-0x209)][_0xf83c51(0x18e,0x1d9)](_0x49a361);},'setDate':_0x390a87=>{const _0x12a816={};function _0x552dda(_0x2417b7,_0x3cb2b4){return _0x2c4b5c(_0x2417b7,_0x3cb2b4- -0x2c5);}function _0x445901(_0x3cfbd7,_0x49c2b6){return _0x2c4b5c(_0x3cfbd7,_0x49c2b6- -0xa6);}_0x12a816[_0x445901(0x13c,0x19f)]='setDate',_0x12a816['data']=_0x390a87,this['worker'][_0x552dda(-0x1a5,-0x162)](_0x12a816);},'update':()=>{if(this[_0x29f918(0x55,0x51)])return;function _0x227c1f(_0x5f28af,_0x2d680a){return _0x1c671f(_0x5f28af- -0x87,_0x2d680a);}function _0x29f918(_0x34fd86,_0xba6074){return _0x2c4b5c(_0xba6074,_0x34fd86- -0x1f1);}this[_0x227c1f(0x2c0,0x34e)]=!![];const _0x56c0be={};_0x56c0be['type']='update',this[_0x227c1f(0x208,0x296)][_0x29f918(-0x8e,-0x13)](_0x56c0be);},'clear':()=>{function _0x4c311b(_0x26e9e8,_0x1b04d2){return _0x2c4b5c(_0x1b04d2,_0x26e9e8- -0x27e);}const _0x33c397={};function _0x5a0c42(_0x331323,_0x3fb503){return _0x2c4b5c(_0x3fb503,_0x331323-0x23e);}_0x33c397[_0x4c311b(-0x39,0x4)]='clear',this['worker'][_0x5a0c42(0x3a1,0x39e)](_0x33c397);}};function _0x2c4b5c(_0x120817,_0x806147){return _0x556281(_0x120817,_0x806147-0x492);}function _0x1c671f(_0x1ff910,_0x29f7a8){return _0x5caa0a(_0x1ff910-0x28e,_0x29f7a8);}this[_0x1c671f(0x367,0x393)][_0x2c4b5c(0x26f,0x1f3)](this[_0x1c671f(0x2a4,0x333)]);}}mars3d__namespace['LayerUtil'][_0x5caa0a(0xda,0xf0)]('canvasWind',CanvasWindLayer),mars3d__namespace[_0x556281(-0x281,-0x262)]['CanvasWindLayer']=CanvasWindLayer,mars3d__namespace['CanvasWindField']=CanvasWindField,mars3d__namespace[_0x5caa0a(0xb0,0xfe)]=WindUtil;function _0x5caa0a(_0x5ba60c,_0x54998c){return _0x3462(_0x5ba60c- -0xb2,_0x54998c);}exports[_0x556281(-0x3a4,-0x321)]=CanvasWindField,exports['CanvasWindLayer']=CanvasWindLayer,exports['WindLayer']=WindLayer,exports[_0x5caa0a(0xb0,0x25)]=WindUtil;const _0x29b2da={};_0x29b2da['value']=!![],Object['defineProperty'](exports,_0x556281(-0x285,-0x2bb),_0x29b2da);
|
|
15
15
|
}));
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "mars3d-wind",
|
|
3
|
-
"version": "3.7.
|
|
3
|
+
"version": "3.7.25",
|
|
4
4
|
"description": "Mars3D平台插件,支持气象 风向图 功能插件",
|
|
5
5
|
"main": "dist/mars3d-wind.js",
|
|
6
6
|
"files": [
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
],
|
|
9
9
|
"peerDependencies": {},
|
|
10
10
|
"devDependencies": {
|
|
11
|
-
"mars3d": "~3.7.
|
|
11
|
+
"mars3d": "~3.7.25"
|
|
12
12
|
},
|
|
13
13
|
"scripts": {
|
|
14
14
|
"lint": "eslint ./src/**/*.{js,ts} --fix"
|