mars3d-wind 3.4.15 → 3.4.16
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.4.
|
|
5
|
-
* 编译日期:2022-12-05
|
|
4
|
+
* 版本信息:v3.4.16
|
|
5
|
+
* 编译日期:2022-12-05 21:53:52
|
|
6
6
|
* 版权所有:Copyright by 火星科技 http://mars3d.cn
|
|
7
7
|
* 使用单位:免费公开版 ,2022-06-01
|
|
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';var _0x1ba661=_0x4e2e;(function(_0x57b4cf,_0x2a3e75){var _0x2a8f36=_0x4e2e,_0x5edf1b=_0x57b4cf();while(!![]){try{var _0x1e0bdb=-parseInt(_0x2a8f36(0x1cc))/0x1+-parseInt(_0x2a8f36(0x1a2))/0x2*(-parseInt(_0x2a8f36(0xa8))/0x3)+-parseInt(_0x2a8f36(0x184))/0x4*(-parseInt(_0x2a8f36(0x13a))/0x5)+parseInt(_0x2a8f36(0x19f))/0x6+parseInt(_0x2a8f36(0x16f))/0x7*(parseInt(_0x2a8f36(0x125))/0x8)+parseInt(_0x2a8f36(0x11e))/0x9*(-parseInt(_0x2a8f36(0x84))/0xa)+-parseInt(_0x2a8f36(0x102))/0xb;if(_0x1e0bdb===_0x2a3e75)break;else _0x5edf1b['push'](_0x5edf1b['shift']());}catch(_0x44b2ad){_0x5edf1b['push'](_0x5edf1b['shift']());}}}(_0x355a,0x7c4ac));function _interopNamespace(_0x26f83d){var _0x295225=_0x4e2e;if(_0x26f83d&&_0x26f83d[_0x295225(0x140)])return _0x26f83d;var _0x2225b1=Object['create'](null);return _0x26f83d&&Object[_0x295225(0x1c7)](_0x26f83d)[_0x295225(0x1c2)](function(_0x970621){var _0x54a2d3=_0x295225;if(_0x970621!==_0x54a2d3(0x8d)){var _0x14779c=Object[_0x54a2d3(0x175)](_0x26f83d,_0x970621);Object[_0x54a2d3(0x1ca)](_0x2225b1,_0x970621,_0x14779c['get']?_0x14779c:{'enumerable':!![],'get':function(){return _0x26f83d[_0x970621];}});}}),_0x2225b1[_0x295225(0x8d)]=_0x26f83d,_0x2225b1;}var mars3d__namespace=_interopNamespace(mars3d),Cesium$7=mars3d__namespace[_0x1ba661(0xa1)];function getU(_0x26e221,_0x13c83a){var _0xe05950=_0x1ba661,_0x2dc43c=_0x26e221*Math['cos'](Cesium$7[_0xe05950(0x141)]['toRadians'](_0x13c83a));return _0x2dc43c;}function getV(_0x4c5f8b,_0xefa3e0){var _0x51fd71=_0x1ba661,_0x4ebb7a=_0x4c5f8b*Math[_0x51fd71(0x1cf)](Cesium$7[_0x51fd71(0x141)]['toRadians'](_0xefa3e0));return _0x4ebb7a;}function getSpeed(_0x1a5711,_0x41bad3){var _0x45378e=_0x1ba661,_0xe27007=Math['sqrt'](Math[_0x45378e(0x1f5)](_0x1a5711,0x2)+Math['pow'](_0x41bad3,0x2));return _0xe27007;}function getDirection(_0x1d6f0d,_0x33b990){var _0x3278b8=_0x1ba661,_0x478377=Cesium$7['Math'][_0x3278b8(0x139)](Math[_0x3278b8(0xed)](_0x33b990,_0x1d6f0d));return _0x478377+=_0x478377<0x0?0x168:0x0,_0x478377;}function _0x355a(){var _0xaa6d37=['THREE_PI_OVER_TWO','removeChild','OPAQUE','_updateIng2','clampToLatitudeRange','rgb(206,255,255)','Geometry','nextParticlesPosition','vmin','_maxAge','postProcessingPosition','attribute\x20vec2\x20st;\x0a//\x20it\x20is\x20not\x20normal\x20itself,\x20but\x20used\x20to\x20control\x20normal\x0aattribute\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\x0avarying\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\x20\x0a\x20\x20\x20\x20float\x20a\x20=\x206378137.0;\x20//\x20Semi-major\x20axis\x20\x0a\x20\x20\x20\x20float\x20b\x20=\x206356752.3142;\x20//\x20Semi-minor\x20axis\x20\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=\x20texture2D(currentParticlesPosition,\x20particleIndex).rgb;\x0a\x20\x20\x20\x20vec4\x20nextPosition\x20=\x20texture2D(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=\x20texture2D(postProcessingSpeed,\x20particleIndex).a;\x0a}','vmax','getParticles','layer','defineProperties','fadeOpacity','length','Framebuffer','setAttribute','clientHeight','uniform\x20sampler2D\x20colorTable;\x0a\x0avarying\x20float\x20speedNormalization;\x0a\x0avoid\x20main()\x20{\x0a\x20\x20\x20\x20gl_FragColor\x20=\x20texture2D(colorTable,\x20vec2(speedNormalization,\x200.0));\x0a}','requestAnimationFrame','key','writable','2212308IXbhFL','destroy','windData','5630GiZKxj','createCommand','createElement','PrimitiveType','canvas','attributeLocations','Cannot\x20call\x20a\x20class\x20as\x20a\x20function','array','drawingBufferHeight','Compute','nextTrailsDepth','init','getRandomLatLng','options','mouseDown','canvasContext','fixedHeight','GeometryAttributes','updatePosition','viewerParameters','west','setData','dropRate','getOptions','particleHeight','windTextures','globalAlpha','pixelSize','TWO_PI','getOwnPropertyDescriptors','floor','fromDegrees','forEach','_calc_speedRate','LINEAR','createRawRenderState','nextTrails','keys','grid','add','defineProperty','drawingBufferWidth','188661VznWVZ','mouse_move','Derived\x20constructors\x20may\x20only\x20return\x20object\x20or\x20undefined','sin','xmax','lon','lng','bind','screen','getWind','particles','push','_createCanvas','maxAge','_onMouseDownEvent','outputTexture','ymax','depthTexture','canvasResize','globeBoundingSphere','ShaderSource','constructor','particlesTextureSize','BaseLayer','isArray','DEPTH_COMPONENT','wind','pointerEvents','primitives','all','prototype','fromCache','setPrototypeOf','visible','worker','arrayBufferView','_showHook','RenderState','DepthFunction','_data','none','pow','0px','width','Cartesian3','defined','attribute\x20vec3\x20position;\x0d\x0aattribute\x20vec2\x20st;\x0d\x0a\x0d\x0avarying\x20vec2\x20textureCoordinate;\x0d\x0a\x0d\x0avoid\x20main()\x20{\x0d\x0a\x20\x20\x20\x20textureCoordinate\x20=\x20st;\x0d\x0a\x20\x20\x20\x20gl_Position\x20=\x20vec4(position,\x201.0);\x0d\x0a}','currentTrails','#ffffff','zIndex','10bnWSNp','dropRateBump','lighter','DISABLE_LOG_DEPTH_FRAGMENT_WRITE','rows','segmentsColor','Draw','camera','createRenderingPrimitives','default','VertexArray','WindUtil','CanvasWindLayer','reverse','visibility','uniform\x20sampler2D\x20segmentsColorTexture;\x0d\x0auniform\x20sampler2D\x20segmentsDepthTexture;\x0d\x0a\x0d\x0auniform\x20sampler2D\x20currentTrailsColor;\x0d\x0auniform\x20sampler2D\x20trailsDepthTexture;\x0d\x0a\x0d\x0auniform\x20float\x20fadeOpacity;\x0d\x0a\x0d\x0avarying\x20vec2\x20textureCoordinate;\x0d\x0a\x0d\x0avoid\x20main()\x20{\x0d\x0a\x20\x20\x20\x20vec4\x20pointsColor\x20=\x20texture2D(segmentsColorTexture,\x20textureCoordinate);\x0d\x0a\x20\x20\x20\x20vec4\x20trailsColor\x20=\x20texture2D(currentTrailsColor,\x20textureCoordinate);\x0d\x0a\x0d\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\x0d\x0a\x0d\x0a\x20\x20\x20\x20float\x20pointsDepth\x20=\x20texture2D(segmentsDepthTexture,\x20textureCoordinate).r;\x0d\x0a\x20\x20\x20\x20float\x20trailsDepth\x20=\x20texture2D(trailsDepthTexture,\x20textureCoordinate).r;\x0d\x0a\x20\x20\x20\x20float\x20globeDepth\x20=\x20czm_unpackDepth(texture2D(czm_globeDepthTexture,\x20textureCoordinate));\x0d\x0a\x0d\x0a\x20\x20\x20\x20gl_FragColor\x20=\x20vec4(0.0);\x0d\x0a\x20\x20\x20\x20if\x20(pointsDepth\x20<\x20globeDepth)\x20{\x0d\x0a\x20\x20\x20\x20\x20\x20\x20\x20gl_FragColor\x20=\x20gl_FragColor\x20+\x20pointsColor;\x0d\x0a\x20\x20\x20\x20}\x0d\x0a\x20\x20\x20\x20if\x20(trailsDepth\x20<\x20globeDepth)\x20{\x0d\x0a\x20\x20\x20\x20\x20\x20\x20\x20gl_FragColor\x20=\x20gl_FragColor\x20+\x20trailsColor;\x0d\x0a\x20\x20\x20\x20}\x0d\x0a\x20\x20\x20\x20gl_FragDepthEXT\x20=\x20min(pointsDepth,\x20trailsDepth);\x0d\x0a}','trails','fromCssColorString','ShaderProgram','autoClear','RGB','lev','_tomap','updateSpeed','GeometryAttribute','createRenderingTextures','removeEventListener','lonRange','tlng','Cesium','randomBetween','name','data','createTexture','from','max','951oyNYqE','tlat','PI_OVER_TWO','enumerable','iterator','getColorTexture','blending','animateFrame','fragmentShaderSource','context','vdata','mouseMove','Invalid\x20attempt\x20to\x20spread\x20non-iterable\x20instance.\x0aIn\x20order\x20to\x20be\x20iterable,\x20non-array\x20objects\x20must\x20have\x20a\x20[Symbol.iterator]()\x20method.','clearCommand','particleSystem','hidden','value','Map','particlesComputing','createParticlesTextures','ComponentDatatype','currentParticlesSpeed','getUVByPoint','remove','getUVByXY','getContext','height','LayerUtil','colorTable','wgs84ToWindowCoordinates','uniformMap','windField','canvasWidth','vertexShaderSource','top','isPointVisible','show','_bilinearInterpolation','lineTo','udata','currentParticlesPosition','TRIANGLES','segmentsDepth','create','umax','resize','_randomParticle','globe','applyViewerParameters','frameRate','function','BoundingSphere','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\x0avarying\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=\x20texture2D(nextParticlesPosition,\x20v_textureCoordinates).rgb;\x0a\x20\x20\x20\x20vec4\x20nextSpeed\x20=\x20texture2D(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\x20gl_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\x20gl_FragColor\x20=\x20vec4(nextParticle,\x200.0);\x0a\x20\x20\x20\x20}\x0a}','Super\x20expression\x20must\x20either\x20be\x20null\x20or\x20a\x20function','Object','particlesRendering','off','destination-in','positionWC','textures','UNSIGNED_INT','depthTest','destroyParticlesTextures','fromGeometry','position','@@iterator','Rectangle','umin','container','atan2','Pass','commandToExecute','STATIC_DRAW','scene','_onMap_preRenderEvent','particlesWind','BufferUsage','onmessage','uniform\x20sampler2D\x20currentParticlesPosition;\x20//\x20(lon,\x20lat,\x20lev)\x0auniform\x20sampler2D\x20currentParticlesSpeed;\x20//\x20(u,\x20v,\x20w,\x20normalization)\x0a\x0avarying\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\x20gl_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=\x20texture2D(currentParticlesPosition,\x20v_textureCoordinates).rgb;\x0a\x20\x20\x20\x20vec3\x20speed\x20=\x20texture2D(currentParticlesSpeed,\x20v_textureCoordinates).rgb;\x0a\x0a\x20\x20\x20\x20updatePosition(lonLatLev,\x20speed);\x0a}','preExecute','round','lineWidth','PixelDatatype','getFullscreenQuad','PI_OVER_THREE','canvasHeight','mouseHidden','particlesTextures','commandList','setOptions','6348155ASDtbR','framebuffer','mouse_down','_onMapWhellEvent','_calcUV','slice','_canrefresh','lat','mod','canrefresh','framebuffers','ClearCommand','once','abs','TextureMagnificationFilter','_updateIng','Sampler','vertexArray','mode','createRenderingFramebuffers','createWindTextures','createFramebuffer','register','filter','EventType','IDENTITY','style','commandType','8252991atfbRE','construct','_onMouseMoveEvent','clientWidth','sqrt','100%','postProcessingSpeed','18328pFvnQs','EllipsoidalOccluder','strokeStyle','particlesNumber','Cartesian2','cols','levmin','Appearance','xmin','geometry','refreshTimer','dimensions','_drawLines','DrawCommand','call','preRender','now','__proto__','removeAll','wheel','toDegrees','5UyncUu','string','_setOptionsHook','ymin','SceneMode','initWorker','__esModule','Math','postMessage','age','latRange','NEAREST','updateViewerParameters','primitiveType','red','clear','bindEvent','SCENE3D','getPrototypeOf','Color','nextParticlesSpeed','_speedRate','south','TextureMinificationFilter','_pointerEvents','rawRenderState','_onMouseUpEvent','addPrimitives','_addedHook','createSegmentsGeometry','color','shaderProgram','this\x20hasn\x27t\x20been\x20initialised\x20-\x20super()\x20hasn\x27t\x20been\x20called','min','colors','isInExtent','update','north','toGridXY','frameTime','maxParticles','unbindEvent','clearFramebuffers','randomizeParticles','moveTo','_mountedHook','segments','DISABLE_GL_POSITION_LOG_DEPTH','random','uniform\x20sampler2D\x20trailsColorTexture;\x0d\x0auniform\x20sampler2D\x20trailsDepthTexture;\x0d\x0a\x0d\x0avarying\x20vec2\x20textureCoordinate;\x0d\x0a\x0d\x0avoid\x20main()\x20{\x0d\x0a\x20\x20\x20\x20vec4\x20trailsColor\x20=\x20texture2D(trailsColorTexture,\x20textureCoordinate);\x0d\x0a\x20\x20\x20\x20float\x20trailsDepth\x20=\x20texture2D(trailsDepthTexture,\x20textureCoordinate).r;\x0d\x0a\x20\x20\x20\x20float\x20globeDepth\x20=\x20czm_unpackDepth(texture2D(czm_globeDepthTexture,\x20textureCoordinate));\x0d\x0a\x0d\x0a\x20\x20\x20\x20if\x20(trailsDepth\x20<\x20globeDepth)\x20{\x0d\x0a\x20\x20\x20\x20\x20\x20\x20\x20gl_FragColor\x20=\x20trailsColor;\x0d\x0a\x20\x20\x20\x20}\x20else\x20{\x0d\x0a\x20\x20\x20\x20\x20\x20\x20\x20gl_FragColor\x20=\x20vec4(0.0);\x0d\x0a\x20\x20\x20\x20}\x0d\x0a}','setDate','redraw','addEventListener','1603XFnzlY','FLOAT','speedFactor','undefined','globalCompositeOperation','viewRectangleToLonLatRange','getOwnPropertyDescriptor','RGBA','PixelFormat','pointer-events','_map','reverseY','speedRate','green','viewport','CanvasWindField','refreshParticles','mouseUp','apply','destroyObject','canvasWindy','1624612xyNyhq','createComputingPrimitives'];_0x355a=function(){return _0xaa6d37;};return _0x355a();}var WindUtil={'__proto__':null,'getU':getU,'getV':getV,'getSpeed':getSpeed,'getDirection':getDirection};function ownKeys(_0x2295a7,_0x6edffb){var _0x59b766=_0x1ba661,_0x558afe=Object[_0x59b766(0x1c7)](_0x2295a7);if(Object['getOwnPropertySymbols']){var _0x5558cc=Object['getOwnPropertySymbols'](_0x2295a7);_0x6edffb&&(_0x5558cc=_0x5558cc[_0x59b766(0x119)](function(_0x40e226){return Object['getOwnPropertyDescriptor'](_0x2295a7,_0x40e226)['enumerable'];})),_0x558afe['push'][_0x59b766(0x181)](_0x558afe,_0x5558cc);}return _0x558afe;}function _objectSpread2(_0x1df024){var _0x3e41f4=_0x1ba661;for(var _0x4eefb3=0x1;_0x4eefb3<arguments[_0x3e41f4(0x197)];_0x4eefb3++){var _0x1bcec3=null!=arguments[_0x4eefb3]?arguments[_0x4eefb3]:{};_0x4eefb3%0x2?ownKeys(Object(_0x1bcec3),!0x0)[_0x3e41f4(0x1c2)](function(_0x38a480){_defineProperty(_0x1df024,_0x38a480,_0x1bcec3[_0x38a480]);}):Object[_0x3e41f4(0x1bf)]?Object[_0x3e41f4(0x195)](_0x1df024,Object[_0x3e41f4(0x1bf)](_0x1bcec3)):ownKeys(Object(_0x1bcec3))['forEach'](function(_0x381c77){var _0xf6ab6f=_0x3e41f4;Object[_0xf6ab6f(0x1ca)](_0x1df024,_0x381c77,Object[_0xf6ab6f(0x175)](_0x1bcec3,_0x381c77));});}return _0x1df024;}function _classCallCheck(_0x1d7fe6,_0x28bee8){var _0x237dcf=_0x1ba661;if(!(_0x1d7fe6 instanceof _0x28bee8))throw new TypeError(_0x237dcf(0x1a8));}function _defineProperties(_0x24798d,_0x521cd8){var _0x4e1bec=_0x1ba661;for(var _0x5e7c42=0x0;_0x5e7c42<_0x521cd8[_0x4e1bec(0x197)];_0x5e7c42++){var _0x11e366=_0x521cd8[_0x5e7c42];_0x11e366[_0x4e1bec(0xab)]=_0x11e366[_0x4e1bec(0xab)]||![],_0x11e366['configurable']=!![];if(_0x4e1bec(0xb8)in _0x11e366)_0x11e366[_0x4e1bec(0x19e)]=!![];Object['defineProperty'](_0x24798d,_0x11e366[_0x4e1bec(0x19d)],_0x11e366);}}function _createClass(_0xa00c24,_0x2edbe2,_0xe02484){var _0x23adc2=_0x1ba661;if(_0x2edbe2)_defineProperties(_0xa00c24[_0x23adc2(0x1ea)],_0x2edbe2);if(_0xe02484)_defineProperties(_0xa00c24,_0xe02484);return Object['defineProperty'](_0xa00c24,'prototype',{'writable':![]}),_0xa00c24;}function _defineProperty(_0x449991,_0x3a8cf0,_0x45c494){var _0x5c5899=_0x1ba661;return _0x3a8cf0 in _0x449991?Object[_0x5c5899(0x1ca)](_0x449991,_0x3a8cf0,{'value':_0x45c494,'enumerable':!![],'configurable':!![],'writable':!![]}):_0x449991[_0x3a8cf0]=_0x45c494,_0x449991;}function _inherits(_0x51e7e3,_0x13cc7a){var _0x5b4384=_0x1ba661;if(typeof _0x13cc7a!==_0x5b4384(0xda)&&_0x13cc7a!==null)throw new TypeError(_0x5b4384(0xdd));_0x51e7e3[_0x5b4384(0x1ea)]=Object[_0x5b4384(0xd3)](_0x13cc7a&&_0x13cc7a[_0x5b4384(0x1ea)],{'constructor':{'value':_0x51e7e3,'writable':!![],'configurable':!![]}}),Object['defineProperty'](_0x51e7e3,'prototype',{'writable':![]});if(_0x13cc7a)_setPrototypeOf(_0x51e7e3,_0x13cc7a);}function _getPrototypeOf(_0x2937e5){var _0x5e8ebb=_0x1ba661;return _getPrototypeOf=Object[_0x5e8ebb(0x1ec)]?Object[_0x5e8ebb(0x14c)]['bind']():function _0x235d63(_0x1159a7){var _0x19f2e2=_0x5e8ebb;return _0x1159a7['__proto__']||Object[_0x19f2e2(0x14c)](_0x1159a7);},_getPrototypeOf(_0x2937e5);}function _setPrototypeOf(_0x28699f,_0x42c6be){var _0x5640f1=_0x1ba661;return _setPrototypeOf=Object[_0x5640f1(0x1ec)]?Object[_0x5640f1(0x1ec)]['bind']():function _0x2d2379(_0x1e3ce9,_0x5cfb52){var _0x5daabe=_0x5640f1;return _0x1e3ce9[_0x5daabe(0x136)]=_0x5cfb52,_0x1e3ce9;},_setPrototypeOf(_0x28699f,_0x42c6be);}function _isNativeReflectConstruct(){var _0x3ab5a4=_0x1ba661;if(typeof Reflect===_0x3ab5a4(0x172)||!Reflect[_0x3ab5a4(0x11f)])return![];if(Reflect[_0x3ab5a4(0x11f)]['sham'])return![];if(typeof Proxy===_0x3ab5a4(0xda))return!![];try{return Boolean[_0x3ab5a4(0x1ea)]['valueOf'][_0x3ab5a4(0x133)](Reflect[_0x3ab5a4(0x11f)](Boolean,[],function(){})),!![];}catch(_0x251a9e){return![];}}function _assertThisInitialized(_0x2fa8b2){var _0x44748d=_0x1ba661;if(_0x2fa8b2===void 0x0)throw new ReferenceError(_0x44748d(0x15a));return _0x2fa8b2;}function _possibleConstructorReturn(_0x1bb114,_0x3d9fb6){var _0x26e368=_0x1ba661;if(_0x3d9fb6&&(typeof _0x3d9fb6==='object'||typeof _0x3d9fb6==='function'))return _0x3d9fb6;else{if(_0x3d9fb6!==void 0x0)throw new TypeError(_0x26e368(0x1ce));}return _assertThisInitialized(_0x1bb114);}function _createSuper(_0xf17b3f){var _0x5485e2=_isNativeReflectConstruct();return function _0x236008(){var _0x1ea78d=_0x4e2e,_0x4470a7=_getPrototypeOf(_0xf17b3f),_0x2fedaa;if(_0x5485e2){var _0x307223=_getPrototypeOf(this)[_0x1ea78d(0x1e1)];_0x2fedaa=Reflect[_0x1ea78d(0x11f)](_0x4470a7,arguments,_0x307223);}else _0x2fedaa=_0x4470a7[_0x1ea78d(0x181)](this,arguments);return _possibleConstructorReturn(this,_0x2fedaa);};}function _toConsumableArray(_0x4d69f0){return _arrayWithoutHoles(_0x4d69f0)||_iterableToArray(_0x4d69f0)||_unsupportedIterableToArray(_0x4d69f0)||_nonIterableSpread();}function _arrayWithoutHoles(_0x286496){var _0x62e57b=_0x1ba661;if(Array[_0x62e57b(0x1e4)](_0x286496))return _arrayLikeToArray(_0x286496);}function _iterableToArray(_0x583f1f){var _0x5d3f13=_0x1ba661;if(typeof Symbol!==_0x5d3f13(0x172)&&_0x583f1f[Symbol[_0x5d3f13(0xac)]]!=null||_0x583f1f[_0x5d3f13(0xe9)]!=null)return Array[_0x5d3f13(0xa6)](_0x583f1f);}function _unsupportedIterableToArray(_0x7effd6,_0x229381){var _0x5787f9=_0x1ba661;if(!_0x7effd6)return;if(typeof _0x7effd6===_0x5787f9(0x13b))return _arrayLikeToArray(_0x7effd6,_0x229381);var _0xdf7206=Object[_0x5787f9(0x1ea)]['toString'][_0x5787f9(0x133)](_0x7effd6)[_0x5787f9(0x107)](0x8,-0x1);if(_0xdf7206===_0x5787f9(0xde)&&_0x7effd6[_0x5787f9(0x1e1)])_0xdf7206=_0x7effd6[_0x5787f9(0x1e1)][_0x5787f9(0xa3)];if(_0xdf7206===_0x5787f9(0xb9)||_0xdf7206==='Set')return Array[_0x5787f9(0xa6)](_0x7effd6);if(_0xdf7206==='Arguments'||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/['test'](_0xdf7206))return _arrayLikeToArray(_0x7effd6,_0x229381);}function _arrayLikeToArray(_0x1f9234,_0x546500){var _0x2a7ed9=_0x1ba661;if(_0x546500==null||_0x546500>_0x1f9234[_0x2a7ed9(0x197)])_0x546500=_0x1f9234['length'];for(var _0x19c55c=0x0,_0x103cea=new Array(_0x546500);_0x19c55c<_0x546500;_0x19c55c++)_0x103cea[_0x19c55c]=_0x1f9234[_0x19c55c];return _0x103cea;}function _0x4e2e(_0x363bb2,_0x449eef){var _0x355ad6=_0x355a();return _0x4e2e=function(_0x4e2e21,_0x5615cf){_0x4e2e21=_0x4e2e21-0x7e;var _0x30a7f4=_0x355ad6[_0x4e2e21];return _0x30a7f4;},_0x4e2e(_0x363bb2,_0x449eef);}function _nonIterableSpread(){var _0x2f5e51=_0x1ba661;throw new TypeError(_0x2f5e51(0xb4));}var Cesium$6=mars3d__namespace[_0x1ba661(0xa1)],CustomPrimitive=(function(){function _0x15d004(_0x35ecf4){var _0x5639b=_0x4e2e,_0xe854d8;_classCallCheck(this,_0x15d004),this['commandType']=_0x35ecf4[_0x5639b(0x11d)],this[_0x5639b(0x12e)]=_0x35ecf4[_0x5639b(0x12e)],this['attributeLocations']=_0x35ecf4[_0x5639b(0x1a7)],this[_0x5639b(0x147)]=_0x35ecf4[_0x5639b(0x147)],this['uniformMap']=_0x35ecf4['uniformMap'],this[_0x5639b(0xc9)]=_0x35ecf4['vertexShaderSource'],this[_0x5639b(0xb0)]=_0x35ecf4[_0x5639b(0xb0)],this[_0x5639b(0x153)]=_0x35ecf4['rawRenderState'],this['framebuffer']=_0x35ecf4[_0x5639b(0x103)],this['outputTexture']=_0x35ecf4['outputTexture'],this[_0x5639b(0x97)]=(_0xe854d8=_0x35ecf4['autoClear'])!==null&&_0xe854d8!==void 0x0?_0xe854d8:![],this[_0x5639b(0xf7)]=_0x35ecf4[_0x5639b(0xf7)],this[_0x5639b(0xcc)]=!![],this[_0x5639b(0xef)]=undefined,this[_0x5639b(0xb5)]=undefined,this[_0x5639b(0x97)]&&(this[_0x5639b(0xb5)]=new Cesium$6['ClearCommand']({'color':new Cesium$6['Color'](0x0,0x0,0x0,0x0),'depth':0x1,'framebuffer':this[_0x5639b(0x103)],'pass':Cesium$6['Pass']['OPAQUE']}));}return _createClass(_0x15d004,[{'key':'createCommand','value':function _0xc02cd6(_0x5f2e2f){var _0x4793b0=_0x4e2e;switch(this[_0x4793b0(0x11d)]){case'Draw':{var _0xe44ac2=Cesium$6[_0x4793b0(0x8e)][_0x4793b0(0xe7)]({'context':_0x5f2e2f,'geometry':this[_0x4793b0(0x12e)],'attributeLocations':this[_0x4793b0(0x1a7)],'bufferUsage':Cesium$6[_0x4793b0(0xf4)][_0x4793b0(0xf0)]}),_0x3aab21=Cesium$6[_0x4793b0(0x96)]['fromCache']({'context':_0x5f2e2f,'attributeLocations':this[_0x4793b0(0x1a7)],'vertexShaderSource':this[_0x4793b0(0xc9)],'fragmentShaderSource':this[_0x4793b0(0xb0)]}),_0x54c828=Cesium$6[_0x4793b0(0x1f1)][_0x4793b0(0x1eb)](this['rawRenderState']);return new Cesium$6[(_0x4793b0(0x132))]({'primitiveType':this[_0x4793b0(0x147)],'shaderProgram':_0x3aab21,'vertexArray':_0xe44ac2,'modelMatrix':Cesium$6['Matrix4'][_0x4793b0(0x11b)],'renderState':_0x54c828,'uniformMap':this[_0x4793b0(0xc6)],'castShadows':![],'receiveShadows':![],'framebuffer':this[_0x4793b0(0x103)],'pass':Cesium$6[_0x4793b0(0xee)]['OPAQUE'],'pickOnly':!![],'owner':this});}case _0x4793b0(0x1ab):{return new Cesium$6['ComputeCommand']({'owner':this,'fragmentShaderSource':this[_0x4793b0(0xb0)],'uniformMap':this[_0x4793b0(0xc6)],'outputTexture':this[_0x4793b0(0x1db)],'persists':!![]});}}}},{'key':'setGeometry','value':function _0x3a63c8(_0x14f814,_0x5bbb57){var _0x150476=_0x4e2e;this['geometry']=_0x5bbb57;var _0x53ed8a=Cesium$6['VertexArray'][_0x150476(0xe7)]({'context':_0x14f814,'geometry':this[_0x150476(0x12e)],'attributeLocations':this[_0x150476(0x1a7)],'bufferUsage':Cesium$6[_0x150476(0xf4)][_0x150476(0xf0)]});this[_0x150476(0xef)][_0x150476(0x113)]=_0x53ed8a;}},{'key':'update','value':function _0x4f01c5(_0x2977c5){var _0x1c1790=_0x4e2e;if(!this[_0x1c1790(0xcc)])return;if(_0x2977c5[_0x1c1790(0x114)]!==Cesium$6['SceneMode'][_0x1c1790(0x14b)])return;!Cesium$6[_0x1c1790(0x7f)](this['commandToExecute'])&&(this['commandToExecute']=this[_0x1c1790(0x1a3)](_0x2977c5[_0x1c1790(0xb1)])),Cesium$6['defined'](this[_0x1c1790(0xf7)])&&this[_0x1c1790(0xf7)](),Cesium$6['defined'](this[_0x1c1790(0xb5)])&&_0x2977c5[_0x1c1790(0x100)]['push'](this[_0x1c1790(0xb5)]),_0x2977c5['commandList']['push'](this[_0x1c1790(0xef)]);}},{'key':'isDestroyed','value':function _0x5ab5ca(){return![];}},{'key':'destroy','value':function _0x1eaef1(){var _0x4e8ffb=_0x4e2e;if(this[_0x4e8ffb(0xb5)]){var _0x22a900,_0xb8b5c1;(_0x22a900=this[_0x4e8ffb(0xb5)])!==null&&_0x22a900!==void 0x0&&_0x22a900['vertexArray']&&this['clearCommand'][_0x4e8ffb(0x113)][_0x4e8ffb(0x1a0)](),(_0xb8b5c1=this[_0x4e8ffb(0xb5)])!==null&&_0xb8b5c1!==void 0x0&&_0xb8b5c1[_0x4e8ffb(0x159)]&&this[_0x4e8ffb(0xb5)][_0x4e8ffb(0x159)][_0x4e8ffb(0x1a0)](),delete this['clearCommand'];}return this[_0x4e8ffb(0xef)]&&(this[_0x4e8ffb(0xef)][_0x4e8ffb(0x113)]&&this[_0x4e8ffb(0xef)][_0x4e8ffb(0x113)]['destroy'](),this['commandToExecute']['shaderProgram']&&this['commandToExecute'][_0x4e8ffb(0x159)][_0x4e8ffb(0x1a0)](),delete this['commandToExecute']),Cesium$6[_0x4e8ffb(0x182)](this);}}]),_0x15d004;}()),Cesium$5=mars3d__namespace[_0x1ba661(0xa1)],Util=(function(){var _0x3687d8=function _0x1e2724(){var _0x319655=_0x4e2e,_0x392aee=new Cesium$5['Geometry']({'attributes':new Cesium$5[(_0x319655(0x1b3))]({'position':new Cesium$5[(_0x319655(0x9c))]({'componentDatatype':Cesium$5[_0x319655(0xbc)][_0x319655(0x170)],'componentsPerAttribute':0x3,'values':new Float32Array([-0x1,-0x1,0x0,0x1,-0x1,0x0,0x1,0x1,0x0,-0x1,0x1,0x0])}),'st':new Cesium$5[(_0x319655(0x9c))]({'componentDatatype':Cesium$5[_0x319655(0xbc)][_0x319655(0x170)],'componentsPerAttribute':0x2,'values':new Float32Array([0x0,0x0,0x1,0x0,0x1,0x1,0x0,0x1])})}),'indices':new Uint32Array([0x3,0x2,0x0,0x0,0x2,0x1])});return _0x392aee;},_0x3b2cfc=function _0x59b46b(_0x3a05ac,_0x1cfc43){var _0x57cba3=_0x4e2e;if(Cesium$5[_0x57cba3(0x7f)](_0x1cfc43)){var _0x4db4a0={};_0x4db4a0[_0x57cba3(0x1ef)]=_0x1cfc43,_0x3a05ac['source']=_0x4db4a0;}var _0x2dd782=new Cesium$5['Texture'](_0x3a05ac);return _0x2dd782;},_0x28e081=function _0x615dfe(_0x5e5723,_0xbe474e,_0x5d7535){var _0x1784f3=_0x4e2e,_0x1b29a4=new Cesium$5[(_0x1784f3(0x198))]({'context':_0x5e5723,'colorTextures':[_0xbe474e],'depthTexture':_0x5d7535});return _0x1b29a4;},_0x23cd8c=function _0x444516(_0x1b2a20){var _0x17f62c=_0x4e2e,_0x1e578a=!![],_0x45bf72=![],_0x143d62={'viewport':_0x1b2a20[_0x17f62c(0x17d)],'depthTest':_0x1b2a20[_0x17f62c(0xe5)],'depthMask':_0x1b2a20['depthMask'],'blending':_0x1b2a20[_0x17f62c(0xae)]},_0x4277f8=Cesium$5[_0x17f62c(0x12c)]['getDefaultRenderState'](_0x1e578a,_0x45bf72,_0x143d62);return _0x4277f8;},_0x6d24c1=function _0x2c6a3d(_0x47fec9){var _0x43f1f7=_0x4e2e,_0x4bd4a7={},_0x1d3064=Cesium$5[_0x43f1f7(0x141)]['mod'](_0x47fec9[_0x43f1f7(0x1b6)],Cesium$5[_0x43f1f7(0x141)][_0x43f1f7(0x1be)]),_0x2557e6=Cesium$5[_0x43f1f7(0x141)][_0x43f1f7(0x10a)](_0x47fec9['east'],Cesium$5[_0x43f1f7(0x141)][_0x43f1f7(0x1be)]),_0x396313=_0x47fec9[_0x43f1f7(0x1f7)],_0x1306a0,_0x16374e;_0x396313>Cesium$5[_0x43f1f7(0x141)][_0x43f1f7(0x186)]?(_0x1306a0=0x0,_0x16374e=Cesium$5['Math'][_0x43f1f7(0x1be)]):_0x2557e6-_0x1d3064<_0x396313?(_0x1306a0=_0x1d3064,_0x16374e=_0x1d3064+_0x396313):(_0x1306a0=_0x1d3064,_0x16374e=_0x2557e6);_0x4bd4a7['lon']={'min':Cesium$5[_0x43f1f7(0x141)][_0x43f1f7(0x139)](_0x1306a0),'max':Cesium$5[_0x43f1f7(0x141)][_0x43f1f7(0x139)](_0x16374e)};var _0x28c505=_0x47fec9[_0x43f1f7(0x150)],_0x749d1c=_0x47fec9[_0x43f1f7(0x15f)],_0x408749=_0x47fec9[_0x43f1f7(0xc2)],_0x4be211=_0x408749>Cesium$5[_0x43f1f7(0x141)]['PI']/0xc?_0x408749/0x2:0x0,_0x4a0289=Cesium$5[_0x43f1f7(0x141)][_0x43f1f7(0x18a)](_0x28c505-_0x4be211),_0x48f076=Cesium$5[_0x43f1f7(0x141)]['clampToLatitudeRange'](_0x749d1c+_0x4be211);return _0x4a0289<-Cesium$5[_0x43f1f7(0x141)]['PI_OVER_THREE']&&(_0x4a0289=-Cesium$5[_0x43f1f7(0x141)]['PI_OVER_TWO']),_0x48f076>Cesium$5[_0x43f1f7(0x141)][_0x43f1f7(0xfc)]&&(_0x48f076=Cesium$5[_0x43f1f7(0x141)][_0x43f1f7(0xaa)]),_0x4bd4a7[_0x43f1f7(0x109)]={'min':Cesium$5[_0x43f1f7(0x141)][_0x43f1f7(0x139)](_0x4a0289),'max':Cesium$5['Math'][_0x43f1f7(0x139)](_0x48f076)},_0x4bd4a7;};return{'getFullscreenQuad':_0x3687d8,'createTexture':_0x3b2cfc,'createFramebuffer':_0x28e081,'createRawRenderState':_0x23cd8c,'viewRectangleToLonLatRange':_0x6d24c1};}()),segmentDraw_vert=_0x1ba661(0x191),segmentDraw_frag=_0x1ba661(0x19b),fullscreen_vert=_0x1ba661(0x80),trailDraw_frag=_0x1ba661(0x93),screenDraw_frag=_0x1ba661(0x16b),Cesium$4=mars3d__namespace['Cesium'],ParticlesRendering=(function(){var _0x15e108=_0x1ba661;function _0x5f0aa1(_0x385656,_0x68b343,_0x6adbed,_0x4e80a9,_0x518755){var _0x147023=_0x4e2e;_classCallCheck(this,_0x5f0aa1),this[_0x147023(0x9d)](_0x385656,_0x68b343,_0x6adbed['colors']),this['createRenderingFramebuffers'](_0x385656),this['createRenderingPrimitives'](_0x385656,_0x6adbed,_0x4e80a9,_0x518755);}return _createClass(_0x5f0aa1,[{'key':_0x15e108(0x9d),'value':function _0x378179(_0x4478d9,_0x15e0eb,_0x229451){var _0x4c9384=_0x15e108,_0x4fdc03={'context':_0x4478d9,'width':_0x4478d9['drawingBufferWidth'],'height':_0x4478d9[_0x4c9384(0x1aa)],'pixelFormat':Cesium$4[_0x4c9384(0x177)][_0x4c9384(0x176)],'pixelDatatype':Cesium$4[_0x4c9384(0xfa)]['UNSIGNED_BYTE']},_0x582a86={'context':_0x4478d9,'width':_0x4478d9[_0x4c9384(0x1cb)],'height':_0x4478d9['drawingBufferHeight'],'pixelFormat':Cesium$4[_0x4c9384(0x177)][_0x4c9384(0x1e5)],'pixelDatatype':Cesium$4[_0x4c9384(0xfa)][_0x4c9384(0xe4)]},_0x32fc0a=_0x229451[_0x4c9384(0x197)],_0x3e0cfa=new Float32Array(_0x32fc0a*0x3);for(var _0x11cff4=0x0;_0x11cff4<_0x32fc0a;_0x11cff4++){var _0x1927ef=Cesium$4[_0x4c9384(0x14d)][_0x4c9384(0x95)](_0x229451[_0x11cff4]);_0x3e0cfa[0x3*_0x11cff4]=_0x1927ef[_0x4c9384(0x148)],_0x3e0cfa[0x3*_0x11cff4+0x1]=_0x1927ef[_0x4c9384(0x17c)],_0x3e0cfa[0x3*_0x11cff4+0x2]=_0x1927ef['blue'];}var _0x15e569={'context':_0x4478d9,'width':_0x32fc0a,'height':0x1,'pixelFormat':Cesium$4[_0x4c9384(0x177)][_0x4c9384(0x98)],'pixelDatatype':Cesium$4['PixelDatatype'][_0x4c9384(0x170)],'sampler':new Cesium$4[(_0x4c9384(0x112))]({'minificationFilter':Cesium$4[_0x4c9384(0x151)][_0x4c9384(0x1c4)],'magnificationFilter':Cesium$4['TextureMagnificationFilter'][_0x4c9384(0x1c4)]})};this['textures']={'segmentsColor':Util[_0x4c9384(0xa5)](_0x4fdc03),'segmentsDepth':Util[_0x4c9384(0xa5)](_0x582a86),'currentTrailsColor':Util[_0x4c9384(0xa5)](_0x4fdc03),'currentTrailsDepth':Util[_0x4c9384(0xa5)](_0x582a86),'nextTrailsColor':Util[_0x4c9384(0xa5)](_0x4fdc03),'nextTrailsDepth':Util[_0x4c9384(0xa5)](_0x582a86),'colorTable':Util['createTexture'](_0x15e569,_0x3e0cfa)};}},{'key':_0x15e108(0x115),'value':function _0x1c7f1f(_0x4c8e2c){var _0x410702=_0x15e108;this[_0x410702(0x10c)]={'segments':Util['createFramebuffer'](_0x4c8e2c,this[_0x410702(0xe3)][_0x410702(0x89)],this[_0x410702(0xe3)][_0x410702(0xd2)]),'currentTrails':Util[_0x410702(0x117)](_0x4c8e2c,this[_0x410702(0xe3)]['currentTrailsColor'],this[_0x410702(0xe3)]['currentTrailsDepth']),'nextTrails':Util[_0x410702(0x117)](_0x4c8e2c,this[_0x410702(0xe3)]['nextTrailsColor'],this[_0x410702(0xe3)][_0x410702(0x1ac)])};}},{'key':_0x15e108(0x157),'value':function _0x3a4823(_0x14bc6c){var _0x367e60=_0x15e108,_0x89f0da=0x4,_0xc42aa5=[];for(var _0x1359f0=0x0;_0x1359f0<_0x14bc6c[_0x367e60(0x1e2)];_0x1359f0++){for(var _0x186462=0x0;_0x186462<_0x14bc6c[_0x367e60(0x1e2)];_0x186462++){for(var _0x2e0f48=0x0;_0x2e0f48<_0x89f0da;_0x2e0f48++){_0xc42aa5[_0x367e60(0x1d7)](_0x1359f0/_0x14bc6c[_0x367e60(0x1e2)]),_0xc42aa5['push'](_0x186462/_0x14bc6c['particlesTextureSize']);}}}_0xc42aa5=new Float32Array(_0xc42aa5);var _0x1f8fb0=[],_0x11cd8d=[-0x1,0x1],_0x272002=[-0x1,0x1];for(var _0x151541=0x0;_0x151541<_0x14bc6c[_0x367e60(0x162)];_0x151541++){for(var _0x51e0fd=0x0;_0x51e0fd<_0x89f0da/0x2;_0x51e0fd++){for(var _0x584825=0x0;_0x584825<_0x89f0da/0x2;_0x584825++){_0x1f8fb0[_0x367e60(0x1d7)](_0x11cd8d[_0x51e0fd]),_0x1f8fb0[_0x367e60(0x1d7)](_0x272002[_0x584825]),_0x1f8fb0[_0x367e60(0x1d7)](0x0);}}}_0x1f8fb0=new Float32Array(_0x1f8fb0);var _0x524fca=0x6*_0x14bc6c[_0x367e60(0x162)],_0x58edc2=new Uint32Array(_0x524fca);for(var _0x1fa9a7=0x0,_0x30ab6e=0x0,_0x33058f=0x0;_0x1fa9a7<_0x14bc6c[_0x367e60(0x162)];_0x1fa9a7++){_0x58edc2[_0x30ab6e++]=_0x33058f+0x0,_0x58edc2[_0x30ab6e++]=_0x33058f+0x1,_0x58edc2[_0x30ab6e++]=_0x33058f+0x2,_0x58edc2[_0x30ab6e++]=_0x33058f+0x2,_0x58edc2[_0x30ab6e++]=_0x33058f+0x1,_0x58edc2[_0x30ab6e++]=_0x33058f+0x3,_0x33058f+=0x4;}var _0x4bce64=new Cesium$4[(_0x367e60(0x18c))]({'attributes':new Cesium$4[(_0x367e60(0x1b3))]({'st':new Cesium$4[(_0x367e60(0x9c))]({'componentDatatype':Cesium$4[_0x367e60(0xbc)][_0x367e60(0x170)],'componentsPerAttribute':0x2,'values':_0xc42aa5}),'normal':new Cesium$4[(_0x367e60(0x9c))]({'componentDatatype':Cesium$4[_0x367e60(0xbc)][_0x367e60(0x170)],'componentsPerAttribute':0x3,'values':_0x1f8fb0})}),'indices':_0x58edc2});return _0x4bce64;}},{'key':_0x15e108(0x8c),'value':function _0xad4596(_0x2cef43,_0x1da860,_0x374f6d,_0x4ceb15){var _0x38f6d3=_0x15e108,_0x1d0776=this;this[_0x38f6d3(0x1e8)]={'segments':new CustomPrimitive({'commandType':_0x38f6d3(0x8a),'attributeLocations':{'st':0x0,'normal':0x1},'geometry':this[_0x38f6d3(0x157)](_0x1da860),'primitiveType':Cesium$4[_0x38f6d3(0x1a5)][_0x38f6d3(0xd1)],'uniformMap':{'currentParticlesPosition':function _0x3d6b7d(){var _0x3aba07=_0x38f6d3;return _0x4ceb15[_0x3aba07(0xff)]['currentParticlesPosition'];},'postProcessingPosition':function _0x437772(){var _0x8747d8=_0x38f6d3;return _0x4ceb15[_0x8747d8(0xff)]['postProcessingPosition'];},'postProcessingSpeed':function _0x1aff95(){var _0x46cb4a=_0x38f6d3;return _0x4ceb15[_0x46cb4a(0xff)][_0x46cb4a(0x124)];},'colorTable':function _0x23a25e(){var _0x4940f1=_0x38f6d3;return _0x1d0776[_0x4940f1(0xe3)][_0x4940f1(0xc4)];},'aspect':function _0x20aae3(){var _0x58480a=_0x38f6d3;return _0x2cef43[_0x58480a(0x1cb)]/_0x2cef43[_0x58480a(0x1aa)];},'pixelSize':function _0x2c6508(){return _0x374f6d['pixelSize'];},'lineWidth':function _0x896a5e(){return _0x1da860['lineWidth'];},'particleHeight':function _0x51135a(){var _0x3ec3cd=_0x38f6d3;return _0x1da860[_0x3ec3cd(0x1ba)];}},'vertexShaderSource':new Cesium$4[(_0x38f6d3(0x1e0))]({'sources':[segmentDraw_vert]}),'fragmentShaderSource':new Cesium$4[(_0x38f6d3(0x1e0))]({'sources':[segmentDraw_frag]}),'rawRenderState':Util[_0x38f6d3(0x1c5)]({'viewport':undefined,'depthTest':{'enabled':!![]},'depthMask':!![]}),'framebuffer':this[_0x38f6d3(0x10c)][_0x38f6d3(0x168)],'autoClear':!![]}),'trails':new CustomPrimitive({'commandType':_0x38f6d3(0x8a),'attributeLocations':{'position':0x0,'st':0x1},'geometry':Util[_0x38f6d3(0xfb)](),'primitiveType':Cesium$4[_0x38f6d3(0x1a5)][_0x38f6d3(0xd1)],'uniformMap':{'segmentsColorTexture':function _0x65aa6f(){var _0x4c9755=_0x38f6d3;return _0x1d0776[_0x4c9755(0xe3)]['segmentsColor'];},'segmentsDepthTexture':function _0x55f75d(){var _0x360e04=_0x38f6d3;return _0x1d0776[_0x360e04(0xe3)][_0x360e04(0xd2)];},'currentTrailsColor':function _0x51fa4d(){var _0x1663f6=_0x38f6d3;return _0x1d0776[_0x1663f6(0x10c)][_0x1663f6(0x81)][_0x1663f6(0xad)](0x0);},'trailsDepthTexture':function _0x19c2d0(){var _0x224811=_0x38f6d3;return _0x1d0776[_0x224811(0x10c)][_0x224811(0x81)][_0x224811(0x1dd)];},'fadeOpacity':function _0x107fa2(){var _0x493e79=_0x38f6d3;return _0x1da860[_0x493e79(0x196)];}},'vertexShaderSource':new Cesium$4[(_0x38f6d3(0x1e0))]({'defines':[_0x38f6d3(0x169)],'sources':[fullscreen_vert]}),'fragmentShaderSource':new Cesium$4[(_0x38f6d3(0x1e0))]({'defines':[_0x38f6d3(0x87)],'sources':[trailDraw_frag]}),'rawRenderState':Util[_0x38f6d3(0x1c5)]({'viewport':undefined,'depthTest':{'enabled':!![],'func':Cesium$4[_0x38f6d3(0x1f2)]['ALWAYS']},'depthMask':!![]}),'framebuffer':this[_0x38f6d3(0x10c)][_0x38f6d3(0x1c6)],'autoClear':!![],'preExecute':function _0x1f1b69(){var _0x30a6fd=_0x38f6d3,_0x59cfff=_0x1d0776[_0x30a6fd(0x10c)][_0x30a6fd(0x81)];_0x1d0776[_0x30a6fd(0x10c)]['currentTrails']=_0x1d0776[_0x30a6fd(0x10c)][_0x30a6fd(0x1c6)],_0x1d0776[_0x30a6fd(0x10c)][_0x30a6fd(0x1c6)]=_0x59cfff,_0x1d0776['primitives'][_0x30a6fd(0x94)]['commandToExecute'][_0x30a6fd(0x103)]=_0x1d0776[_0x30a6fd(0x10c)][_0x30a6fd(0x1c6)],_0x1d0776[_0x30a6fd(0x1e8)]['trails'][_0x30a6fd(0xb5)][_0x30a6fd(0x103)]=_0x1d0776[_0x30a6fd(0x10c)]['nextTrails'];}}),'screen':new CustomPrimitive({'commandType':_0x38f6d3(0x8a),'attributeLocations':{'position':0x0,'st':0x1},'geometry':Util[_0x38f6d3(0xfb)](),'primitiveType':Cesium$4[_0x38f6d3(0x1a5)][_0x38f6d3(0xd1)],'uniformMap':{'trailsColorTexture':function _0x192169(){var _0x23d3d1=_0x38f6d3;return _0x1d0776[_0x23d3d1(0x10c)][_0x23d3d1(0x1c6)][_0x23d3d1(0xad)](0x0);},'trailsDepthTexture':function _0x1c33c1(){var _0x31dcca=_0x38f6d3;return _0x1d0776['framebuffers'][_0x31dcca(0x1c6)][_0x31dcca(0x1dd)];}},'vertexShaderSource':new Cesium$4[(_0x38f6d3(0x1e0))]({'defines':[_0x38f6d3(0x169)],'sources':[fullscreen_vert]}),'fragmentShaderSource':new Cesium$4[(_0x38f6d3(0x1e0))]({'defines':[_0x38f6d3(0x87)],'sources':[screenDraw_frag]}),'rawRenderState':Util['createRawRenderState']({'viewport':undefined,'depthTest':{'enabled':![]},'depthMask':!![],'blending':{'enabled':!![]}}),'framebuffer':undefined})};}}]),_0x5f0aa1;}()),getWind_frag='//\x20the\x20size\x20of\x20UV\x20textures:\x20width\x20=\x20lon,\x20height\x20=\x20lat*lev\x0auniform\x20sampler2D\x20U;\x20//\x20eastward\x20wind\x20\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\x0avarying\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=\x20texture2D(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=\x20texture2D(currentParticlesPosition,\x20v_textureCoordinates).rgb;\x0a\x20\x20\x20\x20vec3\x20windVector\x20=\x20bicubic(lonLatLev);\x0a\x20\x20\x20\x20gl_FragColor\x20=\x20vec4(windVector,\x200.0);\x0a}',updateSpeed_frag='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\x0avarying\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=\x20texture2D(currentParticlesSpeed,\x20v_textureCoordinates).rgb;\x0a\x20\x20\x20\x20vec3\x20windVector\x20=\x20texture2D(particlesWind,\x20v_textureCoordinates).rgb;\x0a\x0a\x20\x20\x20\x20vec4\x20nextSpeed\x20=\x20vec4(speedFactor\x20*\x20pixelSize\x20*\x20windVector,\x20calculateWindNorm(windVector));\x0a\x20\x20\x20\x20gl_FragColor\x20=\x20nextSpeed;\x0a}',updatePosition_frag=_0x1ba661(0xf6),postProcessingPosition_frag=_0x1ba661(0xdc),postProcessingSpeed_frag='uniform\x20sampler2D\x20postProcessingPosition;\x0auniform\x20sampler2D\x20nextParticlesSpeed;\x0a\x0avarying\x20vec2\x20v_textureCoordinates;\x0a\x0avoid\x20main()\x20{\x0a\x20\x20\x20\x20vec4\x20randomParticle\x20=\x20texture2D(postProcessingPosition,\x20v_textureCoordinates);\x0a\x20\x20\x20\x20vec4\x20particleSpeed\x20=\x20texture2D(nextParticlesSpeed,\x20v_textureCoordinates);\x0a\x0a\x20\x20\x20\x20if\x20(randomParticle.a\x20>\x200.0)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20gl_FragColor\x20=\x20vec4(0.0);\x0a\x20\x20\x20\x20}\x20else\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20gl_FragColor\x20=\x20particleSpeed;\x0a\x20\x20\x20\x20}\x0a}',Cesium$3=mars3d__namespace[_0x1ba661(0xa1)],ParticlesComputing=(function(){var _0x1ac58f=_0x1ba661;function _0x79ba5c(_0x2cca14,_0xaf0057,_0x261817,_0x579984){var _0x9e2f8d=_0x4e2e;_classCallCheck(this,_0x79ba5c),this[_0x9e2f8d(0xa4)]=_0xaf0057,this[_0x9e2f8d(0x116)](_0x2cca14,_0xaf0057),this[_0x9e2f8d(0xbb)](_0x2cca14,_0x261817,_0x579984),this[_0x9e2f8d(0x185)](_0xaf0057,_0x261817,_0x579984);}return _createClass(_0x79ba5c,[{'key':_0x1ac58f(0x116),'value':function _0x24c85f(_0x21baa8,_0x38c5b8){var _0x242556=_0x1ac58f,_0x2a56fb={'context':_0x21baa8,'width':_0x38c5b8['dimensions']['lon'],'height':_0x38c5b8['dimensions'][_0x242556(0x109)]*(_0x38c5b8[_0x242556(0x130)][_0x242556(0x99)]||0x1),'pixelFormat':Cesium$3[_0x242556(0x177)]['LUMINANCE'],'pixelDatatype':Cesium$3[_0x242556(0xfa)]['FLOAT'],'flipY':![],'sampler':new Cesium$3[(_0x242556(0x112))]({'minificationFilter':Cesium$3['TextureMinificationFilter']['NEAREST'],'magnificationFilter':Cesium$3[_0x242556(0x110)][_0x242556(0x145)]})};this[_0x242556(0x1bb)]={'U':Util[_0x242556(0xa5)](_0x2a56fb,_0x38c5b8['U']['array']),'V':Util[_0x242556(0xa5)](_0x2a56fb,_0x38c5b8['V'][_0x242556(0x1a9)])};}},{'key':_0x1ac58f(0xbb),'value':function _0x5743be(_0x8b4cd3,_0x32fac5,_0xc125b0){var _0x1f09bb=_0x1ac58f,_0x408fbb={'context':_0x8b4cd3,'width':_0x32fac5['particlesTextureSize'],'height':_0x32fac5[_0x1f09bb(0x1e2)],'pixelFormat':Cesium$3[_0x1f09bb(0x177)][_0x1f09bb(0x176)],'pixelDatatype':Cesium$3[_0x1f09bb(0xfa)][_0x1f09bb(0x170)],'flipY':![],'sampler':new Cesium$3[(_0x1f09bb(0x112))]({'minificationFilter':Cesium$3[_0x1f09bb(0x151)]['NEAREST'],'magnificationFilter':Cesium$3['TextureMagnificationFilter']['NEAREST']})},_0x165ffe=this[_0x1f09bb(0x165)](_0x32fac5[_0x1f09bb(0x162)],_0xc125b0),_0xae9866=new Float32Array(0x4*_0x32fac5[_0x1f09bb(0x162)])['fill'](0x0);this[_0x1f09bb(0xff)]={'particlesWind':Util[_0x1f09bb(0xa5)](_0x408fbb),'currentParticlesPosition':Util[_0x1f09bb(0xa5)](_0x408fbb,_0x165ffe),'nextParticlesPosition':Util['createTexture'](_0x408fbb,_0x165ffe),'currentParticlesSpeed':Util['createTexture'](_0x408fbb,_0xae9866),'nextParticlesSpeed':Util[_0x1f09bb(0xa5)](_0x408fbb,_0xae9866),'postProcessingPosition':Util[_0x1f09bb(0xa5)](_0x408fbb,_0x165ffe),'postProcessingSpeed':Util[_0x1f09bb(0xa5)](_0x408fbb,_0xae9866)};}},{'key':_0x1ac58f(0x165),'value':function _0x3afe46(_0x262377,_0x118cd7){var _0x47a6d8=_0x1ac58f,_0x4914b3=new Float32Array(0x4*_0x262377);for(var _0x262d74=0x0;_0x262d74<_0x262377;_0x262d74++){_0x4914b3[0x4*_0x262d74]=Cesium$3[_0x47a6d8(0x141)][_0x47a6d8(0xa2)](_0x118cd7[_0x47a6d8(0x9f)]['x'],_0x118cd7[_0x47a6d8(0x9f)]['y']),_0x4914b3[0x4*_0x262d74+0x1]=Cesium$3[_0x47a6d8(0x141)][_0x47a6d8(0xa2)](_0x118cd7[_0x47a6d8(0x144)]['x'],_0x118cd7[_0x47a6d8(0x144)]['y']),_0x4914b3[0x4*_0x262d74+0x2]=Cesium$3[_0x47a6d8(0x141)][_0x47a6d8(0xa2)](this['data'][_0x47a6d8(0x99)]['min'],this[_0x47a6d8(0xa4)][_0x47a6d8(0x99)][_0x47a6d8(0xa7)]),_0x4914b3[0x4*_0x262d74+0x3]=0x0;}return _0x4914b3;}},{'key':_0x1ac58f(0xe6),'value':function _0x4a00af(){var _0x10da40=_0x1ac58f,_0x3d06aa=this;Object[_0x10da40(0x1c7)](this[_0x10da40(0xff)])[_0x10da40(0x1c2)](function(_0x2a4993){var _0xdb581b=_0x10da40;_0x3d06aa[_0xdb581b(0xff)][_0x2a4993][_0xdb581b(0x1a0)]();});}},{'key':_0x1ac58f(0x185),'value':function _0x472926(_0x502962,_0x3dde4f,_0x1deac1){var _0x34f2d5=_0x1ac58f,_0x562e28=new Cesium$3[(_0x34f2d5(0x7e))](_0x502962['dimensions'][_0x34f2d5(0x1d1)],_0x502962[_0x34f2d5(0x130)]['lat'],_0x502962[_0x34f2d5(0x130)][_0x34f2d5(0x99)]),_0x1162f9=new Cesium$3[(_0x34f2d5(0x7e))](_0x502962[_0x34f2d5(0x1d1)][_0x34f2d5(0x15b)],_0x502962[_0x34f2d5(0x109)][_0x34f2d5(0x15b)],_0x502962[_0x34f2d5(0x99)][_0x34f2d5(0x15b)]),_0x41d7b4=new Cesium$3[(_0x34f2d5(0x7e))](_0x502962[_0x34f2d5(0x1d1)]['max'],_0x502962[_0x34f2d5(0x109)][_0x34f2d5(0xa7)],_0x502962[_0x34f2d5(0x99)]['max']),_0x30a44c=new Cesium$3[(_0x34f2d5(0x7e))]((_0x41d7b4['x']-_0x1162f9['x'])/(_0x562e28['x']-0x1),(_0x41d7b4['y']-_0x1162f9['y'])/(_0x562e28['y']-0x1),_0x562e28['z']>0x1?(_0x41d7b4['z']-_0x1162f9['z'])/(_0x562e28['z']-0x1):0x1),_0x14e922=new Cesium$3[(_0x34f2d5(0x129))](_0x502962['U'][_0x34f2d5(0x15b)],_0x502962['U']['max']),_0x2248ff=new Cesium$3[(_0x34f2d5(0x129))](_0x502962['V']['min'],_0x502962['V']['max']),_0x323fb3=this;this[_0x34f2d5(0x1e8)]={'getWind':new CustomPrimitive({'commandType':_0x34f2d5(0x1ab),'uniformMap':{'U':function _0x24dd4e(){var _0x38cd40=_0x34f2d5;return _0x323fb3[_0x38cd40(0x1bb)]['U'];},'V':function _0x5c0b1d(){var _0x252506=_0x34f2d5;return _0x323fb3[_0x252506(0x1bb)]['V'];},'currentParticlesPosition':function _0x4c894f(){var _0x174bba=_0x34f2d5;return _0x323fb3['particlesTextures'][_0x174bba(0xd0)];},'dimension':function _0x1eda02(){return _0x562e28;},'minimum':function _0x334542(){return _0x1162f9;},'maximum':function _0x240b8f(){return _0x41d7b4;},'interval':function _0x2a96b4(){return _0x30a44c;}},'fragmentShaderSource':new Cesium$3[(_0x34f2d5(0x1e0))]({'sources':[getWind_frag]}),'outputTexture':this[_0x34f2d5(0xff)]['particlesWind'],'preExecute':function _0x52116e(){var _0x3ef332=_0x34f2d5;_0x323fb3['primitives']['getWind'][_0x3ef332(0xef)][_0x3ef332(0x1db)]=_0x323fb3[_0x3ef332(0xff)]['particlesWind'];}}),'updateSpeed':new CustomPrimitive({'commandType':_0x34f2d5(0x1ab),'uniformMap':{'currentParticlesSpeed':function _0x2f0f7f(){var _0x567b04=_0x34f2d5;return _0x323fb3[_0x567b04(0xff)][_0x567b04(0xbd)];},'particlesWind':function _0xe8bd2f(){var _0x18caba=_0x34f2d5;return _0x323fb3[_0x18caba(0xff)][_0x18caba(0xf3)];},'uSpeedRange':function _0x3195b8(){return _0x14e922;},'vSpeedRange':function _0x14538b(){return _0x2248ff;},'pixelSize':function _0x5e22ef(){var _0x5e4334=_0x34f2d5;return _0x1deac1[_0x5e4334(0x1bd)];},'speedFactor':function _0x167b22(){var _0x2a1b93=_0x34f2d5;return _0x3dde4f[_0x2a1b93(0x171)];}},'fragmentShaderSource':new Cesium$3[(_0x34f2d5(0x1e0))]({'sources':[updateSpeed_frag]}),'outputTexture':this[_0x34f2d5(0xff)]['nextParticlesSpeed'],'preExecute':function _0x381166(){var _0x865d4e=_0x34f2d5,_0x4398=_0x323fb3[_0x865d4e(0xff)][_0x865d4e(0xbd)];_0x323fb3[_0x865d4e(0xff)][_0x865d4e(0xbd)]=_0x323fb3[_0x865d4e(0xff)][_0x865d4e(0x124)],_0x323fb3[_0x865d4e(0xff)]['postProcessingSpeed']=_0x4398,_0x323fb3['primitives'][_0x865d4e(0x9b)][_0x865d4e(0xef)][_0x865d4e(0x1db)]=_0x323fb3[_0x865d4e(0xff)][_0x865d4e(0x14e)];}}),'updatePosition':new CustomPrimitive({'commandType':_0x34f2d5(0x1ab),'uniformMap':{'currentParticlesPosition':function _0xb412cd(){var _0x1d3653=_0x34f2d5;return _0x323fb3[_0x1d3653(0xff)][_0x1d3653(0xd0)];},'currentParticlesSpeed':function _0x17ea1b(){var _0x3608c6=_0x34f2d5;return _0x323fb3[_0x3608c6(0xff)][_0x3608c6(0xbd)];}},'fragmentShaderSource':new Cesium$3[(_0x34f2d5(0x1e0))]({'sources':[updatePosition_frag]}),'outputTexture':this[_0x34f2d5(0xff)][_0x34f2d5(0x18d)],'preExecute':function _0x2f430d(){var _0x5f079d=_0x34f2d5,_0x3c91cb=_0x323fb3['particlesTextures']['currentParticlesPosition'];_0x323fb3[_0x5f079d(0xff)][_0x5f079d(0xd0)]=_0x323fb3[_0x5f079d(0xff)]['postProcessingPosition'],_0x323fb3[_0x5f079d(0xff)][_0x5f079d(0x190)]=_0x3c91cb,_0x323fb3[_0x5f079d(0x1e8)][_0x5f079d(0x1b4)]['commandToExecute'][_0x5f079d(0x1db)]=_0x323fb3[_0x5f079d(0xff)][_0x5f079d(0x18d)];}}),'postProcessingPosition':new CustomPrimitive({'commandType':_0x34f2d5(0x1ab),'uniformMap':{'nextParticlesPosition':function _0x15c673(){var _0x5776c4=_0x34f2d5;return _0x323fb3['particlesTextures'][_0x5776c4(0x18d)];},'nextParticlesSpeed':function _0x2c9a7b(){var _0x6f9d25=_0x34f2d5;return _0x323fb3['particlesTextures'][_0x6f9d25(0x14e)];},'lonRange':function _0x2c283b(){var _0x14b96f=_0x34f2d5;return _0x1deac1[_0x14b96f(0x9f)];},'latRange':function _0x91cb0c(){return _0x1deac1['latRange'];},'randomCoefficient':function _0x95d53e(){var _0x225fc3=Math['random']();return _0x225fc3;},'dropRate':function _0x3d1a76(){return _0x3dde4f['dropRate'];},'dropRateBump':function _0x41f45d(){var _0x12c06f=_0x34f2d5;return _0x3dde4f[_0x12c06f(0x85)];}},'fragmentShaderSource':new Cesium$3[(_0x34f2d5(0x1e0))]({'sources':[postProcessingPosition_frag]}),'outputTexture':this[_0x34f2d5(0xff)][_0x34f2d5(0x190)],'preExecute':function _0x9d1bdc(){var _0x568d46=_0x34f2d5;_0x323fb3['primitives'][_0x568d46(0x190)][_0x568d46(0xef)][_0x568d46(0x1db)]=_0x323fb3[_0x568d46(0xff)][_0x568d46(0x190)];}}),'postProcessingSpeed':new CustomPrimitive({'commandType':'Compute','uniformMap':{'postProcessingPosition':function _0x1518cb(){var _0xe8ef7b=_0x34f2d5;return _0x323fb3['particlesTextures'][_0xe8ef7b(0x190)];},'nextParticlesSpeed':function _0xeb541d(){var _0x3f0134=_0x34f2d5;return _0x323fb3[_0x3f0134(0xff)][_0x3f0134(0x14e)];}},'fragmentShaderSource':new Cesium$3[(_0x34f2d5(0x1e0))]({'sources':[postProcessingSpeed_frag]}),'outputTexture':this['particlesTextures']['postProcessingSpeed'],'preExecute':function _0x49fa6b(){var _0x145b2b=_0x34f2d5;_0x323fb3['primitives'][_0x145b2b(0x124)][_0x145b2b(0xef)][_0x145b2b(0x1db)]=_0x323fb3['particlesTextures'][_0x145b2b(0x124)];}})};}}]),_0x79ba5c;}()),Cesium$2=mars3d__namespace['Cesium'],ParticleSystem=(function(){var _0x3d2be7=_0x1ba661;function _0x50db76(_0x36ca3e,_0x3074d9,_0x3a7986,_0x82d10a){var _0x4ada53=_0x4e2e;_classCallCheck(this,_0x50db76),this[_0x4ada53(0xb1)]=_0x36ca3e,_0x3074d9=_objectSpread2({},_0x3074d9);if(_0x3074d9['udata']&&_0x3074d9[_0x4ada53(0xb2)]){var _0x53485b,_0xa4777f,_0x16ff25,_0x20fc63,_0x544bdc,_0x4087f8;_0x3074d9[_0x4ada53(0x130)]={},_0x3074d9[_0x4ada53(0x130)][_0x4ada53(0x1d1)]=_0x3074d9[_0x4ada53(0x12a)],_0x3074d9[_0x4ada53(0x130)]['lat']=_0x3074d9['rows'],_0x3074d9['dimensions']['lev']=_0x3074d9[_0x4ada53(0x99)]||0x1,_0x3074d9['lon']={},_0x3074d9[_0x4ada53(0x1d1)][_0x4ada53(0x15b)]=_0x3074d9[_0x4ada53(0x12d)],_0x3074d9[_0x4ada53(0x1d1)][_0x4ada53(0xa7)]=_0x3074d9[_0x4ada53(0x1d0)],_0x3074d9[_0x4ada53(0x109)]={},_0x3074d9[_0x4ada53(0x109)]['min']=_0x3074d9['ymin'],_0x3074d9['lat'][_0x4ada53(0xa7)]=_0x3074d9[_0x4ada53(0x1dc)],_0x3074d9[_0x4ada53(0x99)]={},_0x3074d9[_0x4ada53(0x99)][_0x4ada53(0x15b)]=(_0x53485b=_0x3074d9[_0x4ada53(0x12b)])!==null&&_0x53485b!==void 0x0?_0x53485b:0x1,_0x3074d9['lev'][_0x4ada53(0xa7)]=(_0xa4777f=_0x3074d9['levmax'])!==null&&_0xa4777f!==void 0x0?_0xa4777f:0x1,_0x3074d9['U']={},_0x3074d9['U'][_0x4ada53(0x1a9)]=new Float32Array(_0x3074d9[_0x4ada53(0xcf)]),_0x3074d9['U'][_0x4ada53(0x15b)]=(_0x16ff25=_0x3074d9[_0x4ada53(0xeb)])!==null&&_0x16ff25!==void 0x0?_0x16ff25:Math[_0x4ada53(0x15b)]['apply'](Math,_toConsumableArray(_0x3074d9[_0x4ada53(0xcf)])),_0x3074d9['U']['max']=(_0x20fc63=_0x3074d9[_0x4ada53(0xd4)])!==null&&_0x20fc63!==void 0x0?_0x20fc63:Math[_0x4ada53(0xa7)][_0x4ada53(0x181)](Math,_toConsumableArray(_0x3074d9[_0x4ada53(0xcf)])),_0x3074d9['V']={},_0x3074d9['V'][_0x4ada53(0x1a9)]=new Float32Array(_0x3074d9[_0x4ada53(0xb2)]),_0x3074d9['V'][_0x4ada53(0x15b)]=(_0x544bdc=_0x3074d9[_0x4ada53(0x18e)])!==null&&_0x544bdc!==void 0x0?_0x544bdc:Math[_0x4ada53(0x15b)][_0x4ada53(0x181)](Math,_toConsumableArray(_0x3074d9[_0x4ada53(0xb2)])),_0x3074d9['V'][_0x4ada53(0xa7)]=(_0x4087f8=_0x3074d9[_0x4ada53(0x192)])!==null&&_0x4087f8!==void 0x0?_0x4087f8:Math['max'][_0x4ada53(0x181)](Math,_toConsumableArray(_0x3074d9[_0x4ada53(0xb2)]));}this['data']=_0x3074d9,this['options']=_0x3a7986,this[_0x4ada53(0x1b5)]=_0x82d10a,this[_0x4ada53(0xba)]=new ParticlesComputing(this['context'],this['data'],this[_0x4ada53(0x1af)],this[_0x4ada53(0x1b5)]),this[_0x4ada53(0xdf)]=new ParticlesRendering(this['context'],this[_0x4ada53(0xa4)],this[_0x4ada53(0x1af)],this[_0x4ada53(0x1b5)],this[_0x4ada53(0xba)]);}return _createClass(_0x50db76,[{'key':'canvasResize','value':function _0x2e9267(_0x22a18b){var _0x4e4a68=_0x4e2e,_0x5e1bfb=this;this[_0x4e4a68(0xba)]['destroyParticlesTextures'](),Object[_0x4e4a68(0x1c7)](this['particlesComputing'][_0x4e4a68(0x1bb)])[_0x4e4a68(0x1c2)](function(_0x5f134a){var _0x36fee1=_0x4e4a68;_0x5e1bfb['particlesComputing'][_0x36fee1(0x1bb)][_0x5f134a][_0x36fee1(0x1a0)]();}),this[_0x4e4a68(0xdf)][_0x4e4a68(0xe3)][_0x4e4a68(0xc4)]['destroy'](),Object[_0x4e4a68(0x1c7)](this['particlesRendering'][_0x4e4a68(0x10c)])[_0x4e4a68(0x1c2)](function(_0x5443f1){var _0x3995c0=_0x4e4a68;_0x5e1bfb[_0x3995c0(0xdf)]['framebuffers'][_0x5443f1][_0x3995c0(0x1a0)]();}),this[_0x4e4a68(0xb1)]=_0x22a18b,this[_0x4e4a68(0xba)]=new ParticlesComputing(this[_0x4e4a68(0xb1)],this[_0x4e4a68(0xa4)],this[_0x4e4a68(0x1af)],this[_0x4e4a68(0x1b5)]),this[_0x4e4a68(0xdf)]=new ParticlesRendering(this[_0x4e4a68(0xb1)],this[_0x4e4a68(0xa4)],this[_0x4e4a68(0x1af)],this['viewerParameters'],this['particlesComputing']);}},{'key':_0x3d2be7(0x164),'value':function _0x360dbb(){var _0x39e073=_0x3d2be7,_0x4afe14=this,_0x2d34fa=new Cesium$2[(_0x39e073(0x10d))]({'color':new Cesium$2[(_0x39e073(0x14d))](0x0,0x0,0x0,0x0),'depth':0x1,'framebuffer':undefined,'pass':Cesium$2[_0x39e073(0xee)][_0x39e073(0x188)]});Object[_0x39e073(0x1c7)](this['particlesRendering']['framebuffers'])[_0x39e073(0x1c2)](function(_0x3308a9){var _0x45ded1=_0x39e073;_0x2d34fa[_0x45ded1(0x103)]=_0x4afe14[_0x45ded1(0xdf)][_0x45ded1(0x10c)][_0x3308a9],_0x2d34fa['execute'](_0x4afe14[_0x45ded1(0xb1)]);});}},{'key':_0x3d2be7(0x17f),'value':function _0x130822(_0x40a93b){var _0x1f6f79=_0x3d2be7;this[_0x1f6f79(0x164)](),this[_0x1f6f79(0xba)][_0x1f6f79(0xe6)](),this[_0x1f6f79(0xba)]['createParticlesTextures'](this['context'],this[_0x1f6f79(0x1af)],this[_0x1f6f79(0x1b5)]);if(_0x40a93b){var _0x102ca7=this[_0x1f6f79(0xdf)]['createSegmentsGeometry'](this['options']);this[_0x1f6f79(0xdf)][_0x1f6f79(0x1e8)][_0x1f6f79(0x168)][_0x1f6f79(0x12e)]=_0x102ca7;var _0x28b2d7=Cesium$2['VertexArray'][_0x1f6f79(0xe7)]({'context':this[_0x1f6f79(0xb1)],'geometry':_0x102ca7,'attributeLocations':this[_0x1f6f79(0xdf)][_0x1f6f79(0x1e8)][_0x1f6f79(0x168)][_0x1f6f79(0x1a7)],'bufferUsage':Cesium$2[_0x1f6f79(0xf4)][_0x1f6f79(0xf0)]});this[_0x1f6f79(0xdf)][_0x1f6f79(0x1e8)]['segments'][_0x1f6f79(0xef)][_0x1f6f79(0x113)]=_0x28b2d7;}}},{'key':'setOptions','value':function _0x487cb4(_0x19aeb3){var _0x5b5a1c=_0x3d2be7,_0x39fa37=this,_0x5f3034=![];this[_0x5b5a1c(0x1af)]['maxParticles']!==_0x19aeb3[_0x5b5a1c(0x162)]&&(_0x5f3034=!![]),Object[_0x5b5a1c(0x1c7)](_0x19aeb3)[_0x5b5a1c(0x1c2)](function(_0x5bb343){var _0x196085=_0x5b5a1c;_0x39fa37[_0x196085(0x1af)][_0x5bb343]=_0x19aeb3[_0x5bb343];}),this[_0x5b5a1c(0x17f)](_0x5f3034);}},{'key':'applyViewerParameters','value':function _0x477104(_0x58499f){var _0x393193=_0x3d2be7,_0x5c0a4f=this;Object[_0x393193(0x1c7)](_0x58499f)['forEach'](function(_0x517eba){var _0x4ffd15=_0x393193;_0x5c0a4f[_0x4ffd15(0x1b5)][_0x517eba]=_0x58499f[_0x517eba];}),this[_0x393193(0x17f)](![]);}},{'key':_0x3d2be7(0x1a0),'value':function _0x3e81db(){var _0x3e0374=_0x3d2be7,_0x50a0ac=this;clearTimeout(this[_0x3e0374(0x10b)]),this[_0x3e0374(0xba)][_0x3e0374(0xe6)](),Object[_0x3e0374(0x1c7)](this['particlesComputing'][_0x3e0374(0x1bb)])['forEach'](function(_0x43ffd0){var _0x3c5fae=_0x3e0374;_0x50a0ac['particlesComputing']['windTextures'][_0x43ffd0][_0x3c5fae(0x1a0)]();}),this[_0x3e0374(0xdf)][_0x3e0374(0xe3)][_0x3e0374(0xc4)][_0x3e0374(0x1a0)](),Object[_0x3e0374(0x1c7)](this[_0x3e0374(0xdf)][_0x3e0374(0x10c)])[_0x3e0374(0x1c2)](function(_0x236315){var _0x7f4684=_0x3e0374;_0x50a0ac[_0x7f4684(0xdf)]['framebuffers'][_0x236315][_0x7f4684(0x1a0)]();});for(var _0x3f8a1f in this){delete this[_0x3f8a1f];}}}]),_0x50db76;}()),Cesium$1=mars3d__namespace[_0x1ba661(0xa1)],BaseLayer$1=mars3d__namespace['layer']['BaseLayer'],DEF_OPTIONS={'particlesNumber':0x1000,'fixedHeight':0x0,'fadeOpacity':0.996,'dropRate':0.003,'dropRateBump':0.01,'speedFactor':0.5,'lineWidth':0x2,'colors':[_0x1ba661(0x18b)]},WindLayer=function(_0x45276c){var _0x37b1f2=_0x1ba661;_inherits(_0x1739b4,_0x45276c);var _0x1bb4cd=_createSuper(_0x1739b4);function _0x1739b4(){var _0x487a80=_0x4e2e,_0x159ce3,_0x3a0903=arguments[_0x487a80(0x197)]>0x0&&arguments[0x0]!==undefined?arguments[0x0]:{};return _classCallCheck(this,_0x1739b4),_0x3a0903=_objectSpread2(_objectSpread2({},DEF_OPTIONS),_0x3a0903),_0x159ce3=_0x1bb4cd[_0x487a80(0x133)](this,_0x3a0903),_0x159ce3[_0x487a80(0x13c)](_0x3a0903),_0x159ce3;}return _createClass(_0x1739b4,[{'key':_0x37b1f2(0x194),'get':function _0x1ef4e0(){var _0x273994=_0x37b1f2;return this[_0x273994(0x1e8)];}},{'key':'data','get':function _0x3dba55(){var _0x4bb811=_0x37b1f2;return this[_0x4bb811(0x1f3)];},'set':function _0x128cbe(_0x5d59fb){var _0x1566f4=_0x37b1f2;this[_0x1566f4(0x1b7)](_0x5d59fb);}},{'key':_0x37b1f2(0x15c),'get':function _0x32a2d0(){var _0x5d0ad5=_0x37b1f2;return this[_0x5d0ad5(0x1af)][_0x5d0ad5(0x15c)];},'set':function _0x3afb5d(_0x2d0626){var _0x5e07b5=_0x37b1f2;this['options'][_0x5e07b5(0x15c)]=_0x2d0626,this[_0x5e07b5(0xb6)]&&this[_0x5e07b5(0xb6)]['setOptions']({'colors':_0x2d0626}),this['resize']();}},{'key':_0x37b1f2(0x167),'value':function _0x173dc9(){}},{'key':_0x37b1f2(0x156),'value':function _0x32076f(){var _0x33cdae=_0x37b1f2;this[_0x33cdae(0xf1)]=this[_0x33cdae(0x179)][_0x33cdae(0xf1)],this[_0x33cdae(0x8b)]=this[_0x33cdae(0x179)]['camera'],this[_0x33cdae(0x1e8)]=new Cesium$1['PrimitiveCollection'](),this['_map'][_0x33cdae(0xf1)][_0x33cdae(0x1e8)][_0x33cdae(0x1c9)](this[_0x33cdae(0x1e8)]),this[_0x33cdae(0x1b5)]={'lonRange':new Cesium$1[(_0x33cdae(0x129))](),'latRange':new Cesium$1[(_0x33cdae(0x129))](),'pixelSize':0x0},this[_0x33cdae(0x1df)]=new Cesium$1[(_0x33cdae(0xdb))](Cesium$1[_0x33cdae(0x7e)]['ZERO'],0.99*0x615299),this[_0x33cdae(0x146)](),window['addEventListener'](_0x33cdae(0xd5),this[_0x33cdae(0xd5)][_0x33cdae(0x1d3)](this),![]),this[_0x33cdae(0x104)]=![],this[_0x33cdae(0x1cd)]=![],this['_map']['on'](mars3d__namespace['EventType'][_0x33cdae(0x138)],this[_0x33cdae(0x105)],this),this[_0x33cdae(0x179)]['on'](mars3d__namespace[_0x33cdae(0x11a)][_0x33cdae(0x1b0)],this[_0x33cdae(0x1da)],this),this[_0x33cdae(0x179)]['on'](mars3d__namespace[_0x33cdae(0x11a)][_0x33cdae(0x180)],this['_onMouseUpEvent'],this),this[_0x33cdae(0x179)]['on'](mars3d__namespace[_0x33cdae(0x11a)][_0x33cdae(0xb3)],this['_onMouseMoveEvent'],this),this['_data']&&this['setData'](this['_data']);}},{'key':'_removedHook','value':function _0x1a7e1b(){var _0x50fefd=_0x37b1f2;window[_0x50fefd(0x9e)](_0x50fefd(0xd5),this[_0x50fefd(0xd5)]),this[_0x50fefd(0x179)][_0x50fefd(0xe0)](mars3d__namespace[_0x50fefd(0x11a)][_0x50fefd(0x134)],this['_onMap_preRenderEvent'],this),this[_0x50fefd(0x179)]['off'](mars3d__namespace['EventType']['wheel'],this[_0x50fefd(0x105)],this),this['_map'][_0x50fefd(0xe0)](mars3d__namespace[_0x50fefd(0x11a)][_0x50fefd(0x1b0)],this[_0x50fefd(0x1da)],this),this[_0x50fefd(0x179)][_0x50fefd(0xe0)](mars3d__namespace[_0x50fefd(0x11a)][_0x50fefd(0x180)],this[_0x50fefd(0x154)],this),this[_0x50fefd(0x179)][_0x50fefd(0xe0)](mars3d__namespace[_0x50fefd(0x11a)][_0x50fefd(0xb3)],this[_0x50fefd(0x120)],this),this[_0x50fefd(0x1e8)][_0x50fefd(0x137)](),this['_map']['scene'][_0x50fefd(0x1e8)][_0x50fefd(0xbf)](this['primitives']);}},{'key':_0x37b1f2(0xd5),'value':function _0x27e146(){var _0x491c52=_0x37b1f2;if(!this[_0x491c52(0xcc)]||!this[_0x491c52(0xb6)])return;this[_0x491c52(0x1e8)]['show']=![],this[_0x491c52(0x1e8)][_0x491c52(0x137)](),this[_0x491c52(0x179)][_0x491c52(0x10e)](mars3d__namespace[_0x491c52(0x11a)][_0x491c52(0x134)],this[_0x491c52(0xf2)],this);}},{'key':_0x37b1f2(0xf2),'value':function _0x5ad859(_0x942e1a){var _0x3c1617=_0x37b1f2;this[_0x3c1617(0xb6)][_0x3c1617(0x1de)](this['scene'][_0x3c1617(0xb1)]),this[_0x3c1617(0x155)](),this[_0x3c1617(0x1e8)][_0x3c1617(0xcc)]=!![];}},{'key':_0x37b1f2(0x105),'value':function _0x45bde2(_0xa484ba){var _0x1a0229=_0x37b1f2,_0x317832=this;clearTimeout(this[_0x1a0229(0x12f)]);if(!this[_0x1a0229(0xcc)]||!this[_0x1a0229(0xb6)])return;this[_0x1a0229(0x1e8)]['show']=![],this[_0x1a0229(0x12f)]=setTimeout(function(){var _0x1b34dc=_0x1a0229;if(!_0x317832[_0x1b34dc(0xcc)])return;_0x317832[_0x1b34dc(0x16d)]();},0xc8);}},{'key':'_onMouseDownEvent','value':function _0x2d9e80(_0x122902){var _0x5db05b=_0x37b1f2;this[_0x5db05b(0x104)]=!![];}},{'key':_0x37b1f2(0x120),'value':function _0x21bb2f(_0x1d0070){var _0x42546d=_0x37b1f2;if(!this['show']||!this['particleSystem'])return;this[_0x42546d(0x104)]&&(this[_0x42546d(0x1e8)][_0x42546d(0xcc)]=![],this[_0x42546d(0x1cd)]=!![]);}},{'key':_0x37b1f2(0x154),'value':function _0x52e3fd(_0x478f34){var _0x10f5e0=_0x37b1f2;if(!this['show']||!this['particleSystem'])return;this['mouse_down']&&this['mouse_move']&&this[_0x10f5e0(0x16d)](),this[_0x10f5e0(0x1e8)][_0x10f5e0(0xcc)]=!![],this[_0x10f5e0(0x104)]=![],this[_0x10f5e0(0x1cd)]=![];}},{'key':'redraw','value':function _0x55adfe(){var _0x3afdfb=_0x37b1f2;if(!this[_0x3afdfb(0x179)]||!this[_0x3afdfb(0xcc)])return;this['updateViewerParameters'](),this[_0x3afdfb(0xb6)][_0x3afdfb(0xd8)](this[_0x3afdfb(0x1b5)]),this[_0x3afdfb(0x1e8)][_0x3afdfb(0xcc)]=!![];}},{'key':_0x37b1f2(0x1b7),'value':function _0x2d8a0f(_0x1caa0f){var _0x39f7e9=_0x37b1f2;this[_0x39f7e9(0x1f3)]=_0x1caa0f,this['particleSystem']&&this[_0x39f7e9(0xb6)][_0x39f7e9(0x1a0)](),this[_0x39f7e9(0xb6)]=new ParticleSystem(this[_0x39f7e9(0xf1)][_0x39f7e9(0xb1)],_0x1caa0f,this[_0x39f7e9(0x1b9)](),this[_0x39f7e9(0x1b5)]),this[_0x39f7e9(0x155)]();}},{'key':_0x37b1f2(0x13c),'value':function _0x343a3e(_0x2d4303,_0x4d2cfd){var _0x141cb7=_0x37b1f2;if(_0x2d4303)for(var _0x2ea35c in _0x2d4303){this[_0x2ea35c]=_0x2d4303[_0x2ea35c];}this['particleSystem']&&this[_0x141cb7(0xb6)][_0x141cb7(0x101)](this[_0x141cb7(0x1b9)]());}},{'key':_0x37b1f2(0x1b9),'value':function _0x298531(){var _0x2b71d9=_0x37b1f2,_0x1fcc35=Math['ceil'](Math[_0x2b71d9(0x122)](this['particlesNumber']));return this['particlesNumber']=_0x1fcc35*_0x1fcc35,{'particlesTextureSize':_0x1fcc35,'maxParticles':this[_0x2b71d9(0x128)],'particleHeight':this[_0x2b71d9(0x1b2)],'fadeOpacity':this[_0x2b71d9(0x196)],'dropRate':this[_0x2b71d9(0x1b8)],'dropRateBump':this['dropRateBump'],'speedFactor':this[_0x2b71d9(0x171)],'lineWidth':this['lineWidth'],'colors':this[_0x2b71d9(0x15c)]};}},{'key':_0x37b1f2(0x155),'value':function _0x2b1cc6(){var _0x52a973=_0x37b1f2;this['primitives'][_0x52a973(0x1c9)](this['particleSystem'][_0x52a973(0xba)][_0x52a973(0x1e8)][_0x52a973(0x1d5)]),this[_0x52a973(0x1e8)][_0x52a973(0x1c9)](this[_0x52a973(0xb6)][_0x52a973(0xba)]['primitives'][_0x52a973(0x9b)]),this[_0x52a973(0x1e8)][_0x52a973(0x1c9)](this[_0x52a973(0xb6)][_0x52a973(0xba)][_0x52a973(0x1e8)][_0x52a973(0x1b4)]),this[_0x52a973(0x1e8)]['add'](this[_0x52a973(0xb6)][_0x52a973(0xba)]['primitives'][_0x52a973(0x190)]),this[_0x52a973(0x1e8)][_0x52a973(0x1c9)](this[_0x52a973(0xb6)]['particlesComputing'][_0x52a973(0x1e8)][_0x52a973(0x124)]),this[_0x52a973(0x1e8)][_0x52a973(0x1c9)](this[_0x52a973(0xb6)]['particlesRendering'][_0x52a973(0x1e8)]['segments']),this[_0x52a973(0x1e8)][_0x52a973(0x1c9)](this['particleSystem']['particlesRendering'][_0x52a973(0x1e8)]['trails']),this[_0x52a973(0x1e8)][_0x52a973(0x1c9)](this['particleSystem'][_0x52a973(0xdf)][_0x52a973(0x1e8)][_0x52a973(0x1d4)]);}},{'key':_0x37b1f2(0x146),'value':function _0x27ec0b(){var _0x478d6e=_0x37b1f2,_0x4e0a31=this[_0x478d6e(0x8b)]['computeViewRectangle'](this[_0x478d6e(0xf1)][_0x478d6e(0xd7)]['ellipsoid']);if(!_0x4e0a31){var _0x845c79=this[_0x478d6e(0x179)]['getExtent']();_0x4e0a31=Cesium$1[_0x478d6e(0xea)]['fromDegrees'](_0x845c79[_0x478d6e(0x12d)],_0x845c79['ymin'],_0x845c79[_0x478d6e(0x1d0)],_0x845c79[_0x478d6e(0x1dc)]);}var _0x2eb707=Util[_0x478d6e(0x174)](_0x4e0a31);this[_0x478d6e(0x1b5)][_0x478d6e(0x9f)]['x']=_0x2eb707[_0x478d6e(0x1d1)][_0x478d6e(0x15b)],this['viewerParameters'][_0x478d6e(0x9f)]['y']=_0x2eb707['lon']['max'],this['viewerParameters'][_0x478d6e(0x144)]['x']=_0x2eb707[_0x478d6e(0x109)][_0x478d6e(0x15b)],this[_0x478d6e(0x1b5)]['latRange']['y']=_0x2eb707['lat'][_0x478d6e(0xa7)];var _0x5382ef=this['camera']['getPixelSize'](this[_0x478d6e(0x1df)],this[_0x478d6e(0xf1)]['drawingBufferWidth'],this['scene'][_0x478d6e(0x1aa)]);_0x5382ef>0x0&&(this[_0x478d6e(0x1b5)]['pixelSize']=_0x5382ef);}}]),_0x1739b4;}(BaseLayer$1);mars3d__namespace[_0x1ba661(0xc3)]['register'](_0x1ba661(0x1e6),WindLayer),mars3d__namespace[_0x1ba661(0x194)]['WindLayer']=WindLayer;var CanvasParticle=(function(){function _0xdbff7(){var _0x396434=_0x4e2e;_classCallCheck(this,_0xdbff7),this[_0x396434(0x1d2)]=null,this[_0x396434(0x109)]=null,this[_0x396434(0xa0)]=null,this[_0x396434(0xa9)]=null,this['age']=null;}return _createClass(_0xdbff7,[{'key':'destroy','value':function _0x696f02(){for(var _0xfe7ba5 in this){delete this[_0xfe7ba5];}}}]),_0xdbff7;}()),CanvasWindField=(function(){var _0x306a3d=_0x1ba661;function _0x30e59f(_0x949929){var _0x2ace98=_0x4e2e;_classCallCheck(this,_0x30e59f),this[_0x2ace98(0x101)](_0x949929);}return _createClass(_0x30e59f,[{'key':_0x306a3d(0x17b),'get':function _0x4de3c6(){var _0x296925=_0x306a3d;return this[_0x296925(0x14f)];},'set':function _0x4ac203(_0x149413){var _0x4d83b0=_0x306a3d;this[_0x4d83b0(0x14f)]=(0x64-(_0x149413>0x63?0x63:_0x149413))*0x64,this[_0x4d83b0(0x1c3)]=[(this[_0x4d83b0(0x1d0)]-this[_0x4d83b0(0x12d)])/this[_0x4d83b0(0x14f)],(this[_0x4d83b0(0x1dc)]-this[_0x4d83b0(0x13d)])/this['_speedRate']];}},{'key':_0x306a3d(0x1d9),'get':function _0x6b2789(){var _0x32c626=_0x306a3d;return this[_0x32c626(0x18f)];},'set':function _0x448fbc(_0x9cd935){var _0x40aa27=_0x306a3d;this[_0x40aa27(0x18f)]=_0x9cd935;}},{'key':_0x306a3d(0x101),'value':function _0x2c5272(_0x4f7d0a){var _0x96a1e=_0x306a3d;this['options']=_0x4f7d0a,this[_0x96a1e(0x1d9)]=_0x4f7d0a[_0x96a1e(0x1d9)]||0x78,this[_0x96a1e(0x17b)]=_0x4f7d0a[_0x96a1e(0x17b)]||0x32,this[_0x96a1e(0x1d6)]=[];var _0x4a12b8=_0x4f7d0a[_0x96a1e(0x128)]||0x1000;for(var _0x383700=0x0;_0x383700<_0x4a12b8;_0x383700++){var _0x563683=this[_0x96a1e(0xd6)](new CanvasParticle());this[_0x96a1e(0x1d6)][_0x96a1e(0x1d7)](_0x563683);}}},{'key':_0x306a3d(0x16c),'value':function _0x5a6c68(_0x3719fc){var _0x541ba1=_0x306a3d;this[_0x541ba1(0x88)]=_0x3719fc[_0x541ba1(0x88)],this[_0x541ba1(0x12a)]=_0x3719fc[_0x541ba1(0x12a)],this[_0x541ba1(0x12d)]=_0x3719fc[_0x541ba1(0x12d)],this[_0x541ba1(0x1d0)]=_0x3719fc[_0x541ba1(0x1d0)],this[_0x541ba1(0x13d)]=_0x3719fc[_0x541ba1(0x13d)],this[_0x541ba1(0x1dc)]=_0x3719fc[_0x541ba1(0x1dc)],this['grid']=[];var _0x2acb76=_0x3719fc[_0x541ba1(0xcf)],_0x301608=_0x3719fc['vdata'],_0x50545b=![];_0x2acb76[_0x541ba1(0x197)]===this['rows']&&_0x2acb76[0x0][_0x541ba1(0x197)]===this[_0x541ba1(0x12a)]&&(_0x50545b=!![]);var _0x1fea49=0x0,_0x116916=null,_0x2d4a61=null;for(var _0x159f65=0x0;_0x159f65<this[_0x541ba1(0x88)];_0x159f65++){_0x116916=[];for(var _0x29040d=0x0;_0x29040d<this[_0x541ba1(0x12a)];_0x29040d++,_0x1fea49++){_0x50545b?_0x2d4a61=this[_0x541ba1(0x106)](_0x2acb76[_0x159f65][_0x29040d],_0x301608[_0x159f65][_0x29040d]):_0x2d4a61=this[_0x541ba1(0x106)](_0x2acb76[_0x1fea49],_0x301608[_0x1fea49]),_0x116916[_0x541ba1(0x1d7)](_0x2d4a61);}this['grid'][_0x541ba1(0x1d7)](_0x116916);}this[_0x541ba1(0x1af)][_0x541ba1(0x17a)]&&this[_0x541ba1(0x1c8)][_0x541ba1(0x91)]();}},{'key':_0x306a3d(0x149),'value':function _0xcf9845(){var _0x3fc5d4=_0x306a3d;delete this['rows'],delete this['cols'],delete this[_0x3fc5d4(0x12d)],delete this[_0x3fc5d4(0x1d0)],delete this[_0x3fc5d4(0x13d)],delete this[_0x3fc5d4(0x1dc)],delete this[_0x3fc5d4(0x1c8)],delete this[_0x3fc5d4(0x1d6)];}},{'key':_0x306a3d(0x160),'value':function _0x3e1e98(_0x34d682,_0x3c8313){var _0x50a510=_0x306a3d,_0x1cc901=(_0x34d682-this[_0x50a510(0x12d)])/(this[_0x50a510(0x1d0)]-this[_0x50a510(0x12d)])*(this[_0x50a510(0x12a)]-0x1),_0x265a3b=(this[_0x50a510(0x1dc)]-_0x3c8313)/(this[_0x50a510(0x1dc)]-this[_0x50a510(0x13d)])*(this['rows']-0x1);return[_0x1cc901,_0x265a3b];}},{'key':_0x306a3d(0xc0),'value':function _0x556815(_0x3f56d9,_0x4b63e2){var _0x185c45=_0x306a3d;if(_0x3f56d9<0x0||_0x3f56d9>=this['cols']||_0x4b63e2>=this[_0x185c45(0x88)])return[0x0,0x0,0x0];var _0x4af73c=Math[_0x185c45(0x1c0)](_0x3f56d9),_0x269b01=Math['floor'](_0x4b63e2);if(_0x4af73c===_0x3f56d9&&_0x269b01===_0x4b63e2)return this[_0x185c45(0x1c8)][_0x4b63e2][_0x3f56d9];var _0x41491e=_0x4af73c+0x1,_0x5b7668=_0x269b01+0x1,_0xd4497d=this[_0x185c45(0xc0)](_0x4af73c,_0x269b01),_0x312020=this['getUVByXY'](_0x41491e,_0x269b01),_0x5bab5a=this[_0x185c45(0xc0)](_0x4af73c,_0x5b7668),_0x26d178=this[_0x185c45(0xc0)](_0x41491e,_0x5b7668),_0x5b2f1b=null;try{_0x5b2f1b=this[_0x185c45(0xcd)](_0x3f56d9-_0x4af73c,_0x4b63e2-_0x269b01,_0xd4497d,_0x312020,_0x5bab5a,_0x26d178);}catch(_0x24aefd){console['log'](_0x3f56d9,_0x4b63e2);}return _0x5b2f1b;}},{'key':_0x306a3d(0xcd),'value':function _0x4e25fc(_0x3a0953,_0x287370,_0x1a32aa,_0x5296b1,_0xd52ce6,_0x1dee22){var _0x3bff2e=_0x306a3d,_0x126582=0x1-_0x3a0953,_0x51802a=0x1-_0x287370,_0x2e3691=_0x126582*_0x51802a,_0x4792dd=_0x3a0953*_0x51802a,_0x427fb7=_0x126582*_0x287370,_0x4413fd=_0x3a0953*_0x287370,_0x514f7d=_0x1a32aa[0x0]*_0x2e3691+_0x5296b1[0x0]*_0x4792dd+_0xd52ce6[0x0]*_0x427fb7+_0x1dee22[0x0]*_0x4413fd,_0xc511c7=_0x1a32aa[0x1]*_0x2e3691+_0x5296b1[0x1]*_0x4792dd+_0xd52ce6[0x1]*_0x427fb7+_0x1dee22[0x1]*_0x4413fd;return this[_0x3bff2e(0x106)](_0x514f7d,_0xc511c7);}},{'key':_0x306a3d(0x106),'value':function _0x531a8c(_0x10d78d,_0xfb2003){var _0x98cab5=_0x306a3d;return[+_0x10d78d,+_0xfb2003,Math[_0x98cab5(0x122)](_0x10d78d*_0x10d78d+_0xfb2003*_0xfb2003)];}},{'key':'getUVByPoint','value':function _0x4640f2(_0x1ed8d4,_0x48f743){var _0x447cf4=_0x306a3d;if(!this[_0x447cf4(0x15d)](_0x1ed8d4,_0x48f743))return null;var _0x324c49=this[_0x447cf4(0x160)](_0x1ed8d4,_0x48f743),_0x1004af=this[_0x447cf4(0xc0)](_0x324c49[0x0],_0x324c49[0x1]);return _0x1004af;}},{'key':'isInExtent','value':function _0x46cadd(_0x4c01d9,_0x475f11){var _0x3dd77c=_0x306a3d;return _0x4c01d9>=this[_0x3dd77c(0x12d)]&&_0x4c01d9<=this[_0x3dd77c(0x1d0)]&&_0x475f11>=this[_0x3dd77c(0x13d)]&&_0x475f11<=this[_0x3dd77c(0x1dc)]?!![]:![];}},{'key':_0x306a3d(0x1ae),'value':function _0x4e3ace(){var _0x2c0cc0=_0x306a3d,_0x3fea34=fRandomByfloat(this['xmin'],this[_0x2c0cc0(0x1d0)]),_0x3bbb94=fRandomByfloat(this[_0x2c0cc0(0x13d)],this[_0x2c0cc0(0x1dc)]);return{'lat':_0x3bbb94,'lng':_0x3fea34};}},{'key':_0x306a3d(0x193),'value':function _0x1e8906(){var _0xd9df0d=_0x306a3d,_0x487c56,_0x5bc694,_0xa2bf3a;for(var _0x59b216=0x0,_0x2f7c91=this[_0xd9df0d(0x1d6)][_0xd9df0d(0x197)];_0x59b216<_0x2f7c91;_0x59b216++){var _0x4b5d7e=this['particles'][_0x59b216];_0x4b5d7e[_0xd9df0d(0x143)]<=0x0&&(_0x4b5d7e=this[_0xd9df0d(0xd6)](_0x4b5d7e));if(_0x4b5d7e[_0xd9df0d(0x143)]>0x0){var _0xf2c57a=_0x4b5d7e[_0xd9df0d(0xa0)],_0x21c57f=_0x4b5d7e[_0xd9df0d(0xa9)];_0xa2bf3a=this['getUVByPoint'](_0xf2c57a,_0x21c57f),_0xa2bf3a?(_0x487c56=_0xf2c57a+this[_0xd9df0d(0x1c3)][0x0]*_0xa2bf3a[0x0],_0x5bc694=_0x21c57f+this[_0xd9df0d(0x1c3)][0x1]*_0xa2bf3a[0x1],_0x4b5d7e[_0xd9df0d(0x1d2)]=_0xf2c57a,_0x4b5d7e[_0xd9df0d(0x109)]=_0x21c57f,_0x4b5d7e[_0xd9df0d(0xa0)]=_0x487c56,_0x4b5d7e['tlat']=_0x5bc694,_0x4b5d7e['age']--):_0x4b5d7e[_0xd9df0d(0x143)]=0x0;}}return this[_0xd9df0d(0x1d6)];}},{'key':_0x306a3d(0xd6),'value':function _0x5a0938(_0x33f704){var _0x1d7298=_0x306a3d,_0x254351,_0x1da786;for(var _0xe7f57d=0x0;_0xe7f57d<0x1e;_0xe7f57d++){_0x254351=this['getRandomLatLng'](),_0x1da786=this[_0x1d7298(0xbe)](_0x254351[_0x1d7298(0x1d2)],_0x254351[_0x1d7298(0x109)]);if(_0x1da786&&_0x1da786[0x2]>0x0)break;}if(!_0x1da786)return _0x33f704;var _0xfbc1b=_0x254351[_0x1d7298(0x1d2)]+this['_calc_speedRate'][0x0]*_0x1da786[0x0],_0x2d2f94=_0x254351[_0x1d7298(0x109)]+this[_0x1d7298(0x1c3)][0x1]*_0x1da786[0x1];return _0x33f704[_0x1d7298(0x1d2)]=_0x254351[_0x1d7298(0x1d2)],_0x33f704[_0x1d7298(0x109)]=_0x254351[_0x1d7298(0x109)],_0x33f704[_0x1d7298(0xa0)]=_0xfbc1b,_0x33f704[_0x1d7298(0xa9)]=_0x2d2f94,_0x33f704[_0x1d7298(0x143)]=Math[_0x1d7298(0xf8)](Math['random']()*this[_0x1d7298(0x1d9)]),_0x33f704;}},{'key':_0x306a3d(0x1a0),'value':function _0x20b401(){for(var _0x17c722 in this){delete this[_0x17c722];}}}]),_0x30e59f;}());function fRandomByfloat(_0x214aed,_0x2197de){var _0x3ea66c=_0x1ba661;return _0x214aed+Math[_0x3ea66c(0x16a)]()*(_0x2197de-_0x214aed);}var Cesium=mars3d__namespace['Cesium'],BaseLayer=mars3d__namespace[_0x1ba661(0x194)][_0x1ba661(0x1e3)],CanvasWindLayer=function(_0x9dd4e7){var _0x3b1cb4=_0x1ba661;_inherits(_0x23206d,_0x9dd4e7);var _0x9b99b9=_createSuper(_0x23206d);function _0x23206d(){var _0x124017=_0x4e2e,_0x50e524,_0x1359bf=arguments[_0x124017(0x197)]>0x0&&arguments[0x0]!==undefined?arguments[0x0]:{};return _classCallCheck(this,_0x23206d),_0x50e524=_0x9b99b9[_0x124017(0x133)](this,_0x1359bf),_0x50e524[_0x124017(0x13c)](_0x1359bf),_0x50e524[_0x124017(0x1a6)]=null,_0x50e524;}return _createClass(_0x23206d,[{'key':_0x3b1cb4(0x13c),'value':function _0x5de16c(_0x5f25a1,_0x5b3816){var _0x1d51f2=_0x3b1cb4,_0x4a3c23,_0x33babf,_0x204055;this[_0x1d51f2(0x161)]=0x3e8/(_0x5f25a1[_0x1d51f2(0xd9)]||0xa),this['_pointerEvents']=(_0x4a3c23=this[_0x1d51f2(0x1af)][_0x1d51f2(0x1e7)])!==null&&_0x4a3c23!==void 0x0?_0x4a3c23:![],this[_0x1d51f2(0x158)]=_0x5f25a1[_0x1d51f2(0x158)]||_0x1d51f2(0x82),this[_0x1d51f2(0xf9)]=_0x5f25a1[_0x1d51f2(0xf9)]||0x1,this[_0x1d51f2(0x1b2)]=(_0x33babf=_0x5f25a1['fixedHeight'])!==null&&_0x33babf!==void 0x0?_0x33babf:0x0,this[_0x1d51f2(0x17a)]=(_0x204055=_0x5f25a1[_0x1d51f2(0x17a)])!==null&&_0x204055!==void 0x0?_0x204055:![],this[_0x1d51f2(0xc7)]&&this[_0x1d51f2(0xc7)][_0x1d51f2(0x101)](_0x5f25a1);}},{'key':'layer','get':function _0x13dab3(){var _0x17e846=_0x3b1cb4;return this[_0x17e846(0x1a6)];}},{'key':_0x3b1cb4(0xc8),'get':function _0x4523c8(){var _0x120857=_0x3b1cb4;return this[_0x120857(0x179)][_0x120857(0xf1)]['canvas'][_0x120857(0x121)];}},{'key':_0x3b1cb4(0xfd),'get':function _0x43bf6e(){var _0x1d4c45=_0x3b1cb4;return this[_0x1d4c45(0x179)]['scene']['canvas'][_0x1d4c45(0x19a)];}},{'key':_0x3b1cb4(0x1e7),'get':function _0x3cd64c(){return this['_pointerEvents'];},'set':function _0x24dfc1(_0x17f259){var _0x3c1447=_0x3b1cb4;this[_0x3c1447(0x152)]=_0x17f259;if(!this[_0x3c1447(0x1a6)])return;_0x17f259?this[_0x3c1447(0x1a6)][_0x3c1447(0x11c)][_0x3c1447(0x178)]=_0x3c1447(0x1e9):this[_0x3c1447(0x1a6)][_0x3c1447(0x11c)][_0x3c1447(0x178)]=_0x3c1447(0x1f4);}},{'key':_0x3b1cb4(0x128),'get':function _0x575419(){var _0x3e5eac=_0x3b1cb4;return this[_0x3e5eac(0x1af)][_0x3e5eac(0x128)];},'set':function _0x24f732(_0x2aa001){var _0x1f2ee8=_0x3b1cb4,_0x224440=this;this[_0x1f2ee8(0x1af)][_0x1f2ee8(0x128)]=_0x2aa001,clearTimeout(this['_canrefresh']),this[_0x1f2ee8(0x108)]=setTimeout(function(){var _0x539d2d=_0x1f2ee8;_0x224440[_0x539d2d(0x16d)]();},0x1f4);}},{'key':_0x3b1cb4(0x17b),'get':function _0x2d9f7c(){var _0x284a98=_0x3b1cb4;return this[_0x284a98(0x1af)][_0x284a98(0x17b)];},'set':function _0x2d07ee(_0x408320){var _0x1f8e25=_0x3b1cb4;this['options'][_0x1f8e25(0x17b)]=_0x408320,this['windField']&&(this[_0x1f8e25(0xc7)]['speedRate']=_0x408320);}},{'key':_0x3b1cb4(0x1d9),'get':function _0x3069b5(){var _0x41eadf=_0x3b1cb4;return this[_0x41eadf(0x1af)][_0x41eadf(0x1d9)];},'set':function _0x1c4753(_0x30b1bb){var _0x160cb6=_0x3b1cb4;this[_0x160cb6(0x1af)][_0x160cb6(0x1d9)]=_0x30b1bb,this[_0x160cb6(0xc7)]&&(this[_0x160cb6(0xc7)][_0x160cb6(0x1d9)]=_0x30b1bb);}},{'key':_0x3b1cb4(0xa4),'get':function _0x457342(){return this['windData'];},'set':function _0x2edeb0(_0xe7df09){var _0x33687f=_0x3b1cb4;this[_0x33687f(0x1b7)](_0xe7df09);}},{'key':_0x3b1cb4(0x1f0),'value':function _0x659a94(_0x28d91c){var _0x55ef6f=_0x3b1cb4;_0x28d91c?this[_0x55ef6f(0x156)]():(this[_0x55ef6f(0x1a1)]&&(this['options']['data']=this['windData']),this['_removedHook']());}},{'key':_0x3b1cb4(0x167),'value':function _0x1ee0aa(){var _0x3edad8=_0x3b1cb4;this[_0x3edad8(0x1af)][_0x3edad8(0x1ee)]?this[_0x3edad8(0x13f)]():this[_0x3edad8(0xc7)]=new CanvasWindField(this['options']);}},{'key':_0x3b1cb4(0x156),'value':function _0xa32745(){var _0x1b3f7a=_0x3b1cb4;this[_0x1b3f7a(0x1a6)]=this[_0x1b3f7a(0x1d8)](),this[_0x1b3f7a(0x1b1)]=this['canvas'][_0x1b3f7a(0xc1)]('2d',{'willReadFrequently':!![]}),this[_0x1b3f7a(0x14a)](),this[_0x1b3f7a(0x1af)][_0x1b3f7a(0xa4)]&&this[_0x1b3f7a(0x1b7)](this[_0x1b3f7a(0x1af)][_0x1b3f7a(0xa4)]);}},{'key':'_removedHook','value':function _0x2149c8(){var _0x2840be=_0x3b1cb4;this[_0x2840be(0x149)](),this[_0x2840be(0x163)](),this[_0x2840be(0x1a6)]&&(this['_map'][_0x2840be(0xec)][_0x2840be(0x187)](this[_0x2840be(0x1a6)]),delete this[_0x2840be(0x1a6)]);}},{'key':'_createCanvas','value':function _0x11bf0b(){var _0x14eb52=_0x3b1cb4,_0x4ab02a=document[_0x14eb52(0x1a4)](_0x14eb52(0x1a6));_0x4ab02a[_0x14eb52(0x11c)][_0x14eb52(0xe8)]='absolute',_0x4ab02a[_0x14eb52(0x11c)][_0x14eb52(0xca)]='0px',_0x4ab02a[_0x14eb52(0x11c)]['left']=_0x14eb52(0x1f6),_0x4ab02a[_0x14eb52(0x11c)][_0x14eb52(0x1f7)]=_0x14eb52(0x123),_0x4ab02a[_0x14eb52(0x11c)][_0x14eb52(0xc2)]=_0x14eb52(0x123),_0x4ab02a['style']['pointerEvents']=this['_pointerEvents']?'auto':_0x14eb52(0x1f4),_0x4ab02a[_0x14eb52(0x11c)][_0x14eb52(0x83)]=0xa,_0x4ab02a[_0x14eb52(0x199)]('id',_0x14eb52(0x183)),_0x4ab02a[_0x14eb52(0x199)]('class',_0x14eb52(0x183)),this[_0x14eb52(0x179)][_0x14eb52(0xec)]['appendChild'](_0x4ab02a);var _0x586047=this[_0x14eb52(0x179)][_0x14eb52(0xf1)];return _0x4ab02a['width']=_0x586047[_0x14eb52(0x1a6)][_0x14eb52(0x121)],_0x4ab02a[_0x14eb52(0xc2)]=_0x586047[_0x14eb52(0x1a6)][_0x14eb52(0x19a)],_0x4ab02a;}},{'key':_0x3b1cb4(0xd5),'value':function _0x350ed9(){var _0x461fc7=_0x3b1cb4;this[_0x461fc7(0x1a6)]&&(this[_0x461fc7(0x1a6)][_0x461fc7(0x1f7)]=this[_0x461fc7(0xc8)],this[_0x461fc7(0x1a6)]['height']=this[_0x461fc7(0xfd)]);}},{'key':_0x3b1cb4(0x14a),'value':function _0x4d60f0(){var _0x3223ac=_0x3b1cb4,_0x5386c6=this,_0x3857c3=Date[_0x3223ac(0x135)]();(function _0x3854ed(){var _0x5b1eef=_0x3223ac;_0x5386c6[_0x5b1eef(0xaf)]=window[_0x5b1eef(0x19c)](_0x3854ed);if(_0x5386c6[_0x5b1eef(0xcc)]&&_0x5386c6[_0x5b1eef(0xc7)]){var _0x59d075=Date[_0x5b1eef(0x135)](),_0x342adc=_0x59d075-_0x3857c3;_0x342adc>_0x5386c6[_0x5b1eef(0x161)]&&(_0x3857c3=_0x59d075-_0x342adc%_0x5386c6[_0x5b1eef(0x161)],_0x5386c6[_0x5b1eef(0x15e)]());}}(),window[_0x3223ac(0x16e)]('resize',this[_0x3223ac(0xd5)]['bind'](this),![]),this[_0x3223ac(0x104)]=![],this[_0x3223ac(0x1cd)]=![],this[_0x3223ac(0x1af)]['mouseHidden']&&(this[_0x3223ac(0x179)]['on'](mars3d__namespace['EventType'][_0x3223ac(0x138)],this[_0x3223ac(0x105)],this),this[_0x3223ac(0x179)]['on'](mars3d__namespace[_0x3223ac(0x11a)][_0x3223ac(0x1b0)],this['_onMouseDownEvent'],this),this[_0x3223ac(0x179)]['on'](mars3d__namespace[_0x3223ac(0x11a)][_0x3223ac(0x180)],this[_0x3223ac(0x154)],this)));}},{'key':_0x3b1cb4(0x163),'value':function _0x15fc50(){var _0xef85e6=_0x3b1cb4;window['cancelAnimationFrame'](this[_0xef85e6(0xaf)]),delete this['animateFrame'],window[_0xef85e6(0x9e)]('resize',this[_0xef85e6(0xd5)]),this[_0xef85e6(0x1af)][_0xef85e6(0xfe)]&&(this[_0xef85e6(0x179)]['off'](mars3d__namespace['EventType'][_0xef85e6(0x138)],this[_0xef85e6(0x105)],this),this['_map'][_0xef85e6(0xe0)](mars3d__namespace[_0xef85e6(0x11a)][_0xef85e6(0x1b0)],this[_0xef85e6(0x1da)],this),this[_0xef85e6(0x179)][_0xef85e6(0xe0)](mars3d__namespace['EventType'][_0xef85e6(0x180)],this['_onMouseUpEvent'],this),this[_0xef85e6(0x179)][_0xef85e6(0xe0)](mars3d__namespace[_0xef85e6(0x11a)]['mouseMove'],this['_onMouseMoveEvent'],this));}},{'key':_0x3b1cb4(0x105),'value':function _0xaa9a14(_0x2f4cb1){var _0x56b611=_0x3b1cb4,_0xaf8794=this;clearTimeout(this[_0x56b611(0x12f)]);if(!this[_0x56b611(0xcc)]||!this[_0x56b611(0x1a6)])return;this[_0x56b611(0x1a6)][_0x56b611(0x11c)]['visibility']=_0x56b611(0xb7),this[_0x56b611(0x12f)]=setTimeout(function(){var _0x3055d0=_0x56b611;if(!_0xaf8794[_0x3055d0(0xcc)])return;_0xaf8794[_0x3055d0(0x16d)](),_0xaf8794[_0x3055d0(0x1a6)][_0x3055d0(0x11c)]['visibility']=_0x3055d0(0x1ed);},0xc8);}},{'key':'_onMouseDownEvent','value':function _0x9d15ab(_0xb96023){var _0x49b4e9=_0x3b1cb4;this[_0x49b4e9(0x104)]=!![],this[_0x49b4e9(0x179)][_0x49b4e9(0xe0)](mars3d__namespace[_0x49b4e9(0x11a)][_0x49b4e9(0xb3)],this['_onMouseMoveEvent'],this),this[_0x49b4e9(0x179)]['on'](mars3d__namespace[_0x49b4e9(0x11a)][_0x49b4e9(0xb3)],this['_onMouseMoveEvent'],this);}},{'key':_0x3b1cb4(0x120),'value':function _0x113f07(_0xae33d6){var _0x268ab0=_0x3b1cb4;if(!this['show']||!this[_0x268ab0(0x1a6)])return;this['mouse_down']&&(this[_0x268ab0(0x1a6)]['style']['visibility']=_0x268ab0(0xb7),this[_0x268ab0(0x1cd)]=!![]);}},{'key':_0x3b1cb4(0x154),'value':function _0xc703b2(_0x20f13c){var _0x1e31ea=_0x3b1cb4;if(!this[_0x1e31ea(0xcc)]||!this[_0x1e31ea(0x1a6)])return;this[_0x1e31ea(0x179)][_0x1e31ea(0xe0)](mars3d__namespace[_0x1e31ea(0x11a)][_0x1e31ea(0xb3)],this[_0x1e31ea(0x120)],this),this[_0x1e31ea(0x104)]&&this[_0x1e31ea(0x1cd)]&&this[_0x1e31ea(0x16d)](),this['canvas'][_0x1e31ea(0x11c)][_0x1e31ea(0x92)]='visible',this[_0x1e31ea(0x104)]=![],this[_0x1e31ea(0x1cd)]=![];}},{'key':_0x3b1cb4(0x1b7),'value':function _0x37bd8f(_0x3e016d){var _0x3d2e28=_0x3b1cb4;this['clear'](),this[_0x3d2e28(0x1a1)]=_0x3e016d,this[_0x3d2e28(0xc7)][_0x3d2e28(0x16c)](_0x3e016d),this['redraw']();}},{'key':_0x3b1cb4(0x16d),'value':function _0x42be50(){var _0x20c6d6=_0x3b1cb4;if(!this['show'])return;this[_0x20c6d6(0xc7)][_0x20c6d6(0x101)](this['options']),this[_0x20c6d6(0x15e)]();}},{'key':_0x3b1cb4(0x15e),'value':function _0x5c8134(){var _0x14b13a=_0x3b1cb4;if(this['_updateIng'])return;this[_0x14b13a(0x111)]=!![];if(this[_0x14b13a(0x1ee)])this[_0x14b13a(0xc7)][_0x14b13a(0x15e)]();else{var _0x3184c8=this['windField'][_0x14b13a(0x193)]();this[_0x14b13a(0x131)](_0x3184c8);}this[_0x14b13a(0x111)]=![];}},{'key':_0x3b1cb4(0x131),'value':function _0x302251(_0x44a3f0){var _0x2aebdb=_0x3b1cb4;this['canvasContext'][_0x2aebdb(0x173)]=_0x2aebdb(0xe1),this[_0x2aebdb(0x1b1)]['fillRect'](0x0,0x0,this['canvasWidth'],this[_0x2aebdb(0xfd)]),this['canvasContext']['globalCompositeOperation']=_0x2aebdb(0x86),this[_0x2aebdb(0x1b1)][_0x2aebdb(0x1bc)]=0.9,this[_0x2aebdb(0x1b1)]['beginPath'](),this[_0x2aebdb(0x1b1)]['lineWidth']=this[_0x2aebdb(0xf9)],this[_0x2aebdb(0x1b1)][_0x2aebdb(0x127)]=this[_0x2aebdb(0x158)];var _0x384eb2=this['_map'][_0x2aebdb(0xf1)][_0x2aebdb(0x114)]!==Cesium[_0x2aebdb(0x13e)][_0x2aebdb(0x14b)];for(var _0x465482=0x0,_0x578026=_0x44a3f0[_0x2aebdb(0x197)];_0x465482<_0x578026;_0x465482++){var _0x24b6e2=_0x44a3f0[_0x465482],_0x514aec=this['_tomap'](_0x24b6e2[_0x2aebdb(0x1d2)],_0x24b6e2[_0x2aebdb(0x109)],_0x24b6e2),_0x21f4a5=this[_0x2aebdb(0x9a)](_0x24b6e2['tlng'],_0x24b6e2['tlat'],_0x24b6e2);if(!_0x514aec||!_0x21f4a5)continue;if(_0x384eb2&&Math[_0x2aebdb(0x10f)](_0x514aec[0x0]-_0x21f4a5[0x0])>=this['canvasWidth'])continue;this[_0x2aebdb(0x1b1)][_0x2aebdb(0x166)](_0x514aec[0x0],_0x514aec[0x1]),this[_0x2aebdb(0x1b1)][_0x2aebdb(0xce)](_0x21f4a5[0x0],_0x21f4a5[0x1]);}this['canvasContext']['stroke']();}},{'key':_0x3b1cb4(0x9a),'value':function _0x349e0c(_0x28d4f0,_0x1aa372,_0x4681d5){var _0x30ea58=_0x3b1cb4,_0xf7ee24=Cesium['Cartesian3'][_0x30ea58(0x1c1)](_0x28d4f0,_0x1aa372,this['fixedHeight']),_0x4cafd3=this[_0x30ea58(0x179)]['scene'];if(_0x4cafd3[_0x30ea58(0x114)]===Cesium['SceneMode']['SCENE3D']){var _0x122db2=new Cesium[(_0x30ea58(0x126))](_0x4cafd3[_0x30ea58(0xd7)]['ellipsoid'],_0x4cafd3[_0x30ea58(0x8b)][_0x30ea58(0xe2)]),_0x574d42=_0x122db2[_0x30ea58(0xcb)](_0xf7ee24);if(!_0x574d42)return _0x4681d5[_0x30ea58(0x143)]=0x0,null;}var _0x52f26a=Cesium['SceneTransforms'][_0x30ea58(0xc5)](this[_0x30ea58(0x179)][_0x30ea58(0xf1)],_0xf7ee24);return _0x52f26a?[_0x52f26a['x'],_0x52f26a['y']]:null;}},{'key':'clear','value':function _0x2795d(){var _0x3b767d=_0x3b1cb4;this['windField'][_0x3b767d(0x149)](),delete this[_0x3b767d(0x1a1)];}},{'key':_0x3b1cb4(0x13f),'value':function _0x2a5cc4(){var _0x1f10bf=_0x3b1cb4,_0x3d7efc=this;this[_0x1f10bf(0x1ee)]=new Worker(this[_0x1f10bf(0x1af)][_0x1f10bf(0x1ee)]),this[_0x1f10bf(0x1ee)][_0x1f10bf(0xf5)]=function(_0x20fe9e){var _0x5b92aa=_0x1f10bf;_0x3d7efc[_0x5b92aa(0x131)](_0x20fe9e[_0x5b92aa(0xa4)][_0x5b92aa(0x1d6)]),_0x3d7efc['_updateIng2']=![];},this['windField']={'init':function _0x5ccc18(_0x2a4d04){var _0x16ce59=_0x1f10bf;_0x3d7efc[_0x16ce59(0x1ee)][_0x16ce59(0x142)]({'type':_0x16ce59(0x1ad),'options':_0x2a4d04});},'setOptions':function _0x1d7929(_0x428225){var _0x8e817e=_0x1f10bf;_0x3d7efc[_0x8e817e(0x1ee)][_0x8e817e(0x142)]({'type':_0x8e817e(0x101),'options':_0x428225});},'setDate':function _0x283d08(_0xf8e2ec){var _0x216e9a=_0x1f10bf;_0x3d7efc[_0x216e9a(0x1ee)]['postMessage']({'type':'setDate','data':_0xf8e2ec});},'update':function _0xc462a9(){var _0x40d1c1=_0x1f10bf;if(_0x3d7efc[_0x40d1c1(0x189)])return;_0x3d7efc[_0x40d1c1(0x189)]=!![],_0x3d7efc[_0x40d1c1(0x1ee)][_0x40d1c1(0x142)]({'type':_0x40d1c1(0x15e)});},'clear':function _0x44b9e5(){var _0x94a6e9=_0x1f10bf;_0x3d7efc['worker']['postMessage']({'type':_0x94a6e9(0x149)});}},this[_0x1f10bf(0xc7)][_0x1f10bf(0x1ad)](this[_0x1f10bf(0x1af)]);}}]),_0x23206d;}(BaseLayer);mars3d__namespace[_0x1ba661(0xc3)][_0x1ba661(0x118)]('canvasWind',CanvasWindLayer),mars3d__namespace[_0x1ba661(0x194)]['CanvasWindLayer']=CanvasWindLayer,mars3d__namespace['CanvasWindField']=CanvasWindField,mars3d__namespace[_0x1ba661(0x8f)]=WindUtil,exports[_0x1ba661(0x17e)]=CanvasWindField,exports[_0x1ba661(0x90)]=CanvasWindLayer,exports['WindLayer']=WindLayer,exports['WindUtil']=WindUtil,Object['defineProperty'](exports,_0x1ba661(0x140),{'value':!![]});
|
|
14
|
+
'use strict';var _0x346215=_0x334a;(function(_0x1aa034,_0x3a75a4){var _0x8a5b74=_0x334a,_0x5f250a=_0x1aa034();while(!![]){try{var _0x4694f5=parseInt(_0x8a5b74(0x360))/0x1+-parseInt(_0x8a5b74(0x20b))/0x2*(parseInt(_0x8a5b74(0x288))/0x3)+parseInt(_0x8a5b74(0x34c))/0x4+-parseInt(_0x8a5b74(0x240))/0x5+parseInt(_0x8a5b74(0x312))/0x6+-parseInt(_0x8a5b74(0x1e1))/0x7+parseInt(_0x8a5b74(0x2d4))/0x8;if(_0x4694f5===_0x3a75a4)break;else _0x5f250a['push'](_0x5f250a['shift']());}catch(_0x1a0ed6){_0x5f250a['push'](_0x5f250a['shift']());}}}(_0x35ad,0x5c788));function _interopNamespace(_0x326b28){var _0x333a54=_0x334a;if(_0x326b28&&_0x326b28['__esModule'])return _0x326b28;var _0x54d6eb=Object['create'](null);return _0x326b28&&Object[_0x333a54(0x213)](_0x326b28)[_0x333a54(0x230)](function(_0x503117){var _0x1d4570=_0x333a54;if(_0x503117!==_0x1d4570(0x26b)){var _0x343919=Object['getOwnPropertyDescriptor'](_0x326b28,_0x503117);Object[_0x1d4570(0x32c)](_0x54d6eb,_0x503117,_0x343919[_0x1d4570(0x1f9)]?_0x343919:{'enumerable':!![],'get':function(){return _0x326b28[_0x503117];}});}}),_0x54d6eb['default']=_0x326b28,_0x54d6eb;}var mars3d__namespace=_interopNamespace(mars3d),Cesium$7=mars3d__namespace['Cesium'];function getU(_0x20e2eb,_0x14b64f){var _0x54f514=_0x334a,_0x9d1315=_0x20e2eb*Math[_0x54f514(0x275)](Cesium$7[_0x54f514(0x35a)][_0x54f514(0x239)](_0x14b64f));return _0x9d1315;}function getV(_0x202780,_0x2738c0){var _0x140522=_0x334a,_0x2e14e5=_0x202780*Math['sin'](Cesium$7[_0x140522(0x35a)][_0x140522(0x239)](_0x2738c0));return _0x2e14e5;}function getSpeed(_0x1e7835,_0x52e140){var _0x1eb3de=_0x334a,_0x29f1d8=Math[_0x1eb3de(0x2e7)](Math[_0x1eb3de(0x221)](_0x1e7835,0x2)+Math[_0x1eb3de(0x221)](_0x52e140,0x2));return _0x29f1d8;}function getDirection(_0x2517ba,_0x1cc927){var _0x191d1f=_0x334a,_0x2d55da=Cesium$7[_0x191d1f(0x35a)]['toDegrees'](Math[_0x191d1f(0x33c)](_0x1cc927,_0x2517ba));return _0x2d55da+=_0x2d55da<0x0?0x168:0x0,_0x2d55da;}var WindUtil={'__proto__':null,'getU':getU,'getV':getV,'getSpeed':getSpeed,'getDirection':getDirection};function ownKeys(_0x3c2338,_0x24beb2){var _0xd8ca6f=_0x334a,_0x528df5=Object[_0xd8ca6f(0x213)](_0x3c2338);if(Object['getOwnPropertySymbols']){var _0x5237a1=Object[_0xd8ca6f(0x29b)](_0x3c2338);_0x24beb2&&(_0x5237a1=_0x5237a1['filter'](function(_0x445936){var _0x16898c=_0xd8ca6f;return Object[_0x16898c(0x289)](_0x3c2338,_0x445936)[_0x16898c(0x2f6)];})),_0x528df5[_0xd8ca6f(0x2ff)]['apply'](_0x528df5,_0x5237a1);}return _0x528df5;}function _objectSpread2(_0x337cf7){var _0x2e4273=_0x334a;for(var _0x1eb778=0x1;_0x1eb778<arguments[_0x2e4273(0x2c2)];_0x1eb778++){var _0x214f39=null!=arguments[_0x1eb778]?arguments[_0x1eb778]:{};_0x1eb778%0x2?ownKeys(Object(_0x214f39),!0x0)['forEach'](function(_0x3ae1c0){_defineProperty(_0x337cf7,_0x3ae1c0,_0x214f39[_0x3ae1c0]);}):Object[_0x2e4273(0x2f2)]?Object[_0x2e4273(0x2bb)](_0x337cf7,Object[_0x2e4273(0x2f2)](_0x214f39)):ownKeys(Object(_0x214f39))['forEach'](function(_0x2d25d8){var _0x4512c2=_0x2e4273;Object[_0x4512c2(0x32c)](_0x337cf7,_0x2d25d8,Object[_0x4512c2(0x289)](_0x214f39,_0x2d25d8));});}return _0x337cf7;}function _classCallCheck(_0x4d799e,_0x290b7a){var _0x3d87c1=_0x334a;if(!(_0x4d799e instanceof _0x290b7a))throw new TypeError(_0x3d87c1(0x2c5));}function _defineProperties(_0x3711d3,_0x4d4e87){var _0x33351a=_0x334a;for(var _0x16a47d=0x0;_0x16a47d<_0x4d4e87[_0x33351a(0x2c2)];_0x16a47d++){var _0xa345b4=_0x4d4e87[_0x16a47d];_0xa345b4[_0x33351a(0x2f6)]=_0xa345b4[_0x33351a(0x2f6)]||![],_0xa345b4[_0x33351a(0x241)]=!![];if(_0x33351a(0x359)in _0xa345b4)_0xa345b4[_0x33351a(0x26a)]=!![];Object['defineProperty'](_0x3711d3,_0xa345b4[_0x33351a(0x20d)],_0xa345b4);}}function _createClass(_0x17208a,_0xd89cc8,_0x10ce65){var _0x462da0=_0x334a;if(_0xd89cc8)_defineProperties(_0x17208a[_0x462da0(0x261)],_0xd89cc8);if(_0x10ce65)_defineProperties(_0x17208a,_0x10ce65);return Object['defineProperty'](_0x17208a,'prototype',{'writable':![]}),_0x17208a;}function _defineProperty(_0x189389,_0x41c10e,_0x2f6dfc){var _0x298ce5=_0x334a;return _0x41c10e in _0x189389?Object[_0x298ce5(0x32c)](_0x189389,_0x41c10e,{'value':_0x2f6dfc,'enumerable':!![],'configurable':!![],'writable':!![]}):_0x189389[_0x41c10e]=_0x2f6dfc,_0x189389;}function _0x35ad(){var _0x2fdf45=['uniform\x20sampler2D\x20segmentsColorTexture;\x0d\x0auniform\x20sampler2D\x20segmentsDepthTexture;\x0d\x0a\x0d\x0auniform\x20sampler2D\x20currentTrailsColor;\x0d\x0auniform\x20sampler2D\x20trailsDepthTexture;\x0d\x0a\x0d\x0auniform\x20float\x20fadeOpacity;\x0d\x0a\x0d\x0avarying\x20vec2\x20textureCoordinate;\x0d\x0a\x0d\x0avoid\x20main()\x20{\x0d\x0a\x20\x20\x20\x20vec4\x20pointsColor\x20=\x20texture2D(segmentsColorTexture,\x20textureCoordinate);\x0d\x0a\x20\x20\x20\x20vec4\x20trailsColor\x20=\x20texture2D(currentTrailsColor,\x20textureCoordinate);\x0d\x0a\x0d\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\x0d\x0a\x0d\x0a\x20\x20\x20\x20float\x20pointsDepth\x20=\x20texture2D(segmentsDepthTexture,\x20textureCoordinate).r;\x0d\x0a\x20\x20\x20\x20float\x20trailsDepth\x20=\x20texture2D(trailsDepthTexture,\x20textureCoordinate).r;\x0d\x0a\x20\x20\x20\x20float\x20globeDepth\x20=\x20czm_unpackDepth(texture2D(czm_globeDepthTexture,\x20textureCoordinate));\x0d\x0a\x0d\x0a\x20\x20\x20\x20gl_FragColor\x20=\x20vec4(0.0);\x0d\x0a\x20\x20\x20\x20if\x20(pointsDepth\x20<\x20globeDepth)\x20{\x0d\x0a\x20\x20\x20\x20\x20\x20\x20\x20gl_FragColor\x20=\x20gl_FragColor\x20+\x20pointsColor;\x0d\x0a\x20\x20\x20\x20}\x0d\x0a\x20\x20\x20\x20if\x20(trailsDepth\x20<\x20globeDepth)\x20{\x0d\x0a\x20\x20\x20\x20\x20\x20\x20\x20gl_FragColor\x20=\x20gl_FragColor\x20+\x20trailsColor;\x0d\x0a\x20\x20\x20\x20}\x0d\x0a\x20\x20\x20\x20gl_FragDepthEXT\x20=\x20min(pointsDepth,\x20trailsDepth);\x0d\x0a}','min','Derived\x20constructors\x20may\x20only\x20return\x20object\x20or\x20undefined','postProcessingSpeed','currentTrailsDepth','primitives','toDegrees','488685SLfmBE','getOwnPropertyDescriptor','clampToLatitudeRange','_onMouseMoveEvent','lat','Color','camera','globalAlpha','xmax','createElement','green','setAttribute','particlesComputing','WindUtil','destroyObject','register','udata','speedRate','ZERO','getOwnPropertySymbols','dimensions','clientWidth','createFramebuffer','computeViewRectangle','init','vmax','PrimitiveCollection','_removedHook','removeAll','ymax','wgs84ToWindowCoordinates','Matrix4','slice','clearFramebuffers','clear','levmin','show','_map','getPrototypeOf','RGBA','Pass','nextParticlesPosition','getFullscreenQuad','currentParticlesPosition','_updateIng','scene','FLOAT','PixelDatatype','onmessage','createRenderingFramebuffers','absolute','defineProperties','ClearCommand','createParticlesTextures','createRenderingTextures','positionWC','ComponentDatatype','ellipsoid','length','clearCommand','applyViewerParameters','Cannot\x20call\x20a\x20class\x20as\x20a\x20function','getUVByXY','mouseHidden','destroyParticlesTextures','segmentsColor','data','fromDegrees','_bilinearInterpolation','0px','getPixelSize','mouseUp','@@iterator','color','outputTexture','postMessage','8382216HsMsER','UNSIGNED_INT','bindEvent','undefined','setDate','RenderState','umax','xmin','toGridXY','cancelAnimationFrame','_data','visible','fixedHeight','_updateIng2','nextTrails','SCENE3D','_canrefresh','grid','addEventListener','sqrt','textures','mode','BoundingSphere','setGeometry','setOptions','getWind','_randomParticle','container','execute','refreshTimer','getOwnPropertyDescriptors','array','DISABLE_GL_POSITION_LOG_DEPTH','commandType','enumerable','nextParticlesSpeed','dropRate','floor','particleSystem','style','_onMap_preRenderEvent','position','getRandomLatLng','push','uniformMap','Set','function','preExecute','refreshParticles','log','beginPath','preRender','autoClear','createTexture','addPrimitives','Framebuffer','removeEventListener','DEPTH_COMPONENT','vertexArray','lng','_setOptionsHook','umin','4193016cOnHIH','geometry','Compute','EventType','createWindTextures','_createCanvas','framebuffers','stroke','ShaderSource','setPrototypeOf','mouseDown','__proto__','requestAnimationFrame','options','canvas','age','_calcUV','mod','_onMouseUpEvent','#ffffff','nextTrailsColor','canvasWind','defined','GeometryAttributes','call','random','defineProperty','frameTime','BufferUsage','screen','now','left','drawingBufferHeight','iterator','isInExtent','EllipsoidalOccluder','construct','constructor','tlng','layer','valueOf','getExtent','atan2','removeChild','redraw','segments','Object','commandList','SceneMode','shaderProgram','uniform\x20sampler2D\x20trailsColorTexture;\x0d\x0auniform\x20sampler2D\x20trailsDepthTexture;\x0d\x0a\x0d\x0avarying\x20vec2\x20textureCoordinate;\x0d\x0a\x0d\x0avoid\x20main()\x20{\x0d\x0a\x20\x20\x20\x20vec4\x20trailsColor\x20=\x20texture2D(trailsColorTexture,\x20textureCoordinate);\x0d\x0a\x20\x20\x20\x20float\x20trailsDepth\x20=\x20texture2D(trailsDepthTexture,\x20textureCoordinate).r;\x0d\x0a\x20\x20\x20\x20float\x20globeDepth\x20=\x20czm_unpackDepth(texture2D(czm_globeDepthTexture,\x20textureCoordinate));\x0d\x0a\x0d\x0a\x20\x20\x20\x20if\x20(trailsDepth\x20<\x20globeDepth)\x20{\x0d\x0a\x20\x20\x20\x20\x20\x20\x20\x20gl_FragColor\x20=\x20trailsColor;\x0d\x0a\x20\x20\x20\x20}\x20else\x20{\x0d\x0a\x20\x20\x20\x20\x20\x20\x20\x20gl_FragColor\x20=\x20vec4(0.0);\x0d\x0a\x20\x20\x20\x20}\x0d\x0a}','Cartesian2','moveTo','ComputeCommand','canvasContext','pointer-events','updatePosition','PI_OVER_TWO','38344XCwIcO','max','vdata','south','WindLayer','mouse_down','lev','LayerUtil','particles','LINEAR','destroy','randomizeParticles','viewport','value','Math','wheel','segmentsDepth','trails','fadeOpacity','reverseY','224072WBvcpG','drawingBufferWidth','canrefresh','string','initWorker','Texture','TWO_PI','maxParticles','Geometry','3564939LxFyIb','off','randomBetween','canvasWidth','Invalid\x20attempt\x20to\x20spread\x20non-iterable\x20instance.\x0aIn\x20order\x20to\x20be\x20iterable,\x20non-array\x20objects\x20must\x20have\x20a\x20[Symbol.iterator]()\x20method.','Super\x20expression\x20must\x20either\x20be\x20null\x20or\x20a\x20function','_onMouseDownEvent','currentParticlesSpeed','TextureMinificationFilter','attributeLocations','ymin','rows','_onMapWhellEvent','rgb(206,255,255)','NEAREST','fragmentShaderSource','uniform\x20sampler2D\x20postProcessingPosition;\x0auniform\x20sampler2D\x20nextParticlesSpeed;\x0a\x0avarying\x20vec2\x20v_textureCoordinates;\x0a\x0avoid\x20main()\x20{\x0a\x20\x20\x20\x20vec4\x20randomParticle\x20=\x20texture2D(postProcessingPosition,\x20v_textureCoordinates);\x0a\x20\x20\x20\x20vec4\x20particleSpeed\x20=\x20texture2D(nextParticlesSpeed,\x20v_textureCoordinates);\x0a\x0a\x20\x20\x20\x20if\x20(randomParticle.a\x20>\x200.0)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20gl_FragColor\x20=\x20vec4(0.0);\x0a\x20\x20\x20\x20}\x20else\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20gl_FragColor\x20=\x20particleSpeed;\x0a\x20\x20\x20\x20}\x0a}','Draw','rawRenderState','red','auto','PI_OVER_THREE','this\x20hasn\x27t\x20been\x20initialised\x20-\x20super()\x20hasn\x27t\x20been\x20called','cols','get','100%','destination-in','particlesNumber','framebuffer','worker','east','getDefaultRenderState','fromCache','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\x0avarying\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=\x20texture2D(nextParticlesPosition,\x20v_textureCoordinates).rgb;\x0a\x20\x20\x20\x20vec4\x20nextSpeed\x20=\x20texture2D(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\x20gl_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\x20gl_FragColor\x20=\x20vec4(nextParticle,\x200.0);\x0a\x20\x20\x20\x20}\x0a}','particlesRendering','_maxAge','globalCompositeOperation','postProcessingPosition','blue','context','particlesWind','viewerParameters','6ibLHHI','bind','key','clientHeight','_addedHook','CanvasWindLayer','getColorTexture','DrawCommand','keys','_showHook','Sampler','lon','height','DISABLE_LOG_DEPTH_FRAGMENT_WRITE','canvasResize','particlesTextures','createComputingPrimitives','visibility','update','OPAQUE','fromGeometry','attribute\x20vec3\x20position;\x0d\x0aattribute\x20vec2\x20st;\x0d\x0a\x0d\x0avarying\x20vec2\x20textureCoordinate;\x0d\x0a\x0d\x0avoid\x20main()\x20{\x0d\x0a\x20\x20\x20\x20textureCoordinate\x20=\x20st;\x0d\x0a\x20\x20\x20\x20gl_Position\x20=\x20vec4(position,\x201.0);\x0d\x0a}','pow','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\x0avarying\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=\x20texture2D(currentParticlesSpeed,\x20v_textureCoordinates).rgb;\x0a\x20\x20\x20\x20vec3\x20windVector\x20=\x20texture2D(particlesWind,\x20v_textureCoordinates).rgb;\x0a\x0a\x20\x20\x20\x20vec4\x20nextSpeed\x20=\x20vec4(speedFactor\x20*\x20pixelSize\x20*\x20windVector,\x20calculateWindNorm(windVector));\x0a\x20\x20\x20\x20gl_FragColor\x20=\x20nextSpeed;\x0a}','windField','source','unbindEvent','strokeStyle','width','once','animateFrame','commandToExecute','appendChild','getOptions','BaseLayer','createRawRenderState','depthTexture','forEach','_pointerEvents','dropRateBump','depthTest','arrayBufferView','UNSIGNED_BYTE','maxAge','updateSpeed','TextureMagnificationFilter','toRadians','viewRectangleToLonLatRange','nextTrailsDepth','reverse','Appearance','Cesium','primitiveType','3017745VqnrIx','configurable','updateViewerParameters','RGB','SceneTransforms','currentTrails','CanvasWindField','TRIANGLES','IDENTITY','colorTable','latRange','Map','isPointVisible','_speedRate','//\x20the\x20size\x20of\x20UV\x20textures:\x20width\x20=\x20lon,\x20height\x20=\x20lat*lev\x0auniform\x20sampler2D\x20U;\x20//\x20eastward\x20wind\x20\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\x0avarying\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=\x20texture2D(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=\x20texture2D(currentParticlesPosition,\x20v_textureCoordinates).rgb;\x0a\x20\x20\x20\x20vec3\x20windVector\x20=\x20bicubic(lonLatLev);\x0a\x20\x20\x20\x20gl_FragColor\x20=\x20vec4(windVector,\x200.0);\x0a}','vertexShaderSource','vmin','colors','createSegmentsGeometry','lonRange','none','ceil','createCommand','lineWidth','THREE_PI_OVER_TWO','abs','setData','globeBoundingSphere','particlesTextureSize','mouseMove','mouse_move','tlat','VertexArray','prototype','canvasHeight','toString','_drawLines','resize','pointerEvents','fill','Cartesian3','from','writable','default','windData','_mountedHook','remove','globe','getUVByPoint','STATIC_DRAW','getParticles','add','pixelSize','cos','createRenderingPrimitives','PixelFormat','particleHeight','apply','_calc_speedRate','windTextures','name','west','_tomap','speedFactor','GeometryAttribute'];_0x35ad=function(){return _0x2fdf45;};return _0x35ad();}function _inherits(_0x16e033,_0x5aa87b){var _0x131116=_0x334a;if(typeof _0x5aa87b!=='function'&&_0x5aa87b!==null)throw new TypeError(_0x131116(0x1e6));_0x16e033['prototype']=Object['create'](_0x5aa87b&&_0x5aa87b[_0x131116(0x261)],{'constructor':{'value':_0x16e033,'writable':!![],'configurable':!![]}}),Object[_0x131116(0x32c)](_0x16e033,'prototype',{'writable':![]});if(_0x5aa87b)_setPrototypeOf(_0x16e033,_0x5aa87b);}function _getPrototypeOf(_0x1b10b4){var _0x420ccf=_0x334a;return _getPrototypeOf=Object['setPrototypeOf']?Object['getPrototypeOf'][_0x420ccf(0x20c)]():function _0x48703a(_0x155e8b){var _0x6b199c=_0x420ccf;return _0x155e8b['__proto__']||Object[_0x6b199c(0x2ae)](_0x155e8b);},_getPrototypeOf(_0x1b10b4);}function _setPrototypeOf(_0x28ca7d,_0x1e1360){var _0x2c0def=_0x334a;return _setPrototypeOf=Object[_0x2c0def(0x31b)]?Object[_0x2c0def(0x31b)][_0x2c0def(0x20c)]():function _0xb2b484(_0x4b0605,_0x3e4cb7){var _0x31fdca=_0x2c0def;return _0x4b0605[_0x31fdca(0x31d)]=_0x3e4cb7,_0x4b0605;},_setPrototypeOf(_0x28ca7d,_0x1e1360);}function _isNativeReflectConstruct(){var _0x3c2d45=_0x334a;if(typeof Reflect==='undefined'||!Reflect[_0x3c2d45(0x336)])return![];if(Reflect[_0x3c2d45(0x336)]['sham'])return![];if(typeof Proxy===_0x3c2d45(0x302))return!![];try{return Boolean[_0x3c2d45(0x261)][_0x3c2d45(0x33a)]['call'](Reflect[_0x3c2d45(0x336)](Boolean,[],function(){})),!![];}catch(_0x4e232f){return![];}}function _assertThisInitialized(_0xf1d358){var _0x15c9d1=_0x334a;if(_0xf1d358===void 0x0)throw new ReferenceError(_0x15c9d1(0x1f7));return _0xf1d358;}function _possibleConstructorReturn(_0x4fac50,_0xd578d1){var _0xd88c6f=_0x334a;if(_0xd578d1&&(typeof _0xd578d1==='object'||typeof _0xd578d1===_0xd88c6f(0x302)))return _0xd578d1;else{if(_0xd578d1!==void 0x0)throw new TypeError(_0xd88c6f(0x283));}return _assertThisInitialized(_0x4fac50);}function _createSuper(_0x388068){var _0x326f12=_isNativeReflectConstruct();return function _0x5da305(){var _0x4d7798=_0x334a,_0x2d827d=_getPrototypeOf(_0x388068),_0x3c6b49;if(_0x326f12){var _0x22ba06=_getPrototypeOf(this)[_0x4d7798(0x337)];_0x3c6b49=Reflect[_0x4d7798(0x336)](_0x2d827d,arguments,_0x22ba06);}else _0x3c6b49=_0x2d827d[_0x4d7798(0x279)](this,arguments);return _possibleConstructorReturn(this,_0x3c6b49);};}function _toConsumableArray(_0x54757e){return _arrayWithoutHoles(_0x54757e)||_iterableToArray(_0x54757e)||_unsupportedIterableToArray(_0x54757e)||_nonIterableSpread();}function _arrayWithoutHoles(_0x1e7d7f){if(Array['isArray'](_0x1e7d7f))return _arrayLikeToArray(_0x1e7d7f);}function _iterableToArray(_0x400995){var _0x36a7a8=_0x334a;if(typeof Symbol!==_0x36a7a8(0x2d7)&&_0x400995[Symbol[_0x36a7a8(0x333)]]!=null||_0x400995[_0x36a7a8(0x2d0)]!=null)return Array[_0x36a7a8(0x269)](_0x400995);}function _unsupportedIterableToArray(_0x16233d,_0x264e30){var _0x2eee11=_0x334a;if(!_0x16233d)return;if(typeof _0x16233d===_0x2eee11(0x1db))return _arrayLikeToArray(_0x16233d,_0x264e30);var _0x4d6149=Object[_0x2eee11(0x261)][_0x2eee11(0x263)]['call'](_0x16233d)[_0x2eee11(0x2a8)](0x8,-0x1);if(_0x4d6149===_0x2eee11(0x340)&&_0x16233d[_0x2eee11(0x337)])_0x4d6149=_0x16233d['constructor'][_0x2eee11(0x27c)];if(_0x4d6149===_0x2eee11(0x24b)||_0x4d6149===_0x2eee11(0x301))return Array['from'](_0x16233d);if(_0x4d6149==='Arguments'||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/['test'](_0x4d6149))return _arrayLikeToArray(_0x16233d,_0x264e30);}function _arrayLikeToArray(_0x19fbdb,_0x139e9f){var _0x3ac3b1=_0x334a;if(_0x139e9f==null||_0x139e9f>_0x19fbdb['length'])_0x139e9f=_0x19fbdb[_0x3ac3b1(0x2c2)];for(var _0x52e665=0x0,_0x5101e1=new Array(_0x139e9f);_0x52e665<_0x139e9f;_0x52e665++)_0x5101e1[_0x52e665]=_0x19fbdb[_0x52e665];return _0x5101e1;}function _nonIterableSpread(){var _0x4d1470=_0x334a;throw new TypeError(_0x4d1470(0x1e5));}function _0x334a(_0x1a24e7,_0x441975){var _0x35ad96=_0x35ad();return _0x334a=function(_0x334ad4,_0x40ce86){_0x334ad4=_0x334ad4-0x1d9;var _0x542137=_0x35ad96[_0x334ad4];return _0x542137;},_0x334a(_0x1a24e7,_0x441975);}var Cesium$6=mars3d__namespace[_0x346215(0x23e)],CustomPrimitive=(function(){var _0x400ac0=_0x346215;function _0x3d885c(_0x33317b){var _0x3a831d=_0x334a,_0x3c25fa;_classCallCheck(this,_0x3d885c),this[_0x3a831d(0x2f5)]=_0x33317b[_0x3a831d(0x2f5)],this[_0x3a831d(0x313)]=_0x33317b['geometry'],this['attributeLocations']=_0x33317b[_0x3a831d(0x1ea)],this[_0x3a831d(0x23f)]=_0x33317b[_0x3a831d(0x23f)],this[_0x3a831d(0x300)]=_0x33317b['uniformMap'],this[_0x3a831d(0x24f)]=_0x33317b[_0x3a831d(0x24f)],this[_0x3a831d(0x1f0)]=_0x33317b[_0x3a831d(0x1f0)],this[_0x3a831d(0x1f3)]=_0x33317b[_0x3a831d(0x1f3)],this[_0x3a831d(0x1fd)]=_0x33317b[_0x3a831d(0x1fd)],this[_0x3a831d(0x2d2)]=_0x33317b[_0x3a831d(0x2d2)],this[_0x3a831d(0x308)]=(_0x3c25fa=_0x33317b[_0x3a831d(0x308)])!==null&&_0x3c25fa!==void 0x0?_0x3c25fa:![],this[_0x3a831d(0x303)]=_0x33317b[_0x3a831d(0x303)],this[_0x3a831d(0x2ac)]=!![],this[_0x3a831d(0x22a)]=undefined,this['clearCommand']=undefined,this[_0x3a831d(0x308)]&&(this['clearCommand']=new Cesium$6[(_0x3a831d(0x2bc))]({'color':new Cesium$6['Color'](0x0,0x0,0x0,0x0),'depth':0x1,'framebuffer':this[_0x3a831d(0x1fd)],'pass':Cesium$6[_0x3a831d(0x2b0)][_0x3a831d(0x21e)]}));}return _createClass(_0x3d885c,[{'key':'createCommand','value':function _0x5dc726(_0x30a846){var _0x5b2ff0=_0x334a;switch(this[_0x5b2ff0(0x2f5)]){case _0x5b2ff0(0x1f2):{var _0xc372a0=Cesium$6['VertexArray'][_0x5b2ff0(0x21f)]({'context':_0x30a846,'geometry':this['geometry'],'attributeLocations':this[_0x5b2ff0(0x1ea)],'bufferUsage':Cesium$6[_0x5b2ff0(0x32e)][_0x5b2ff0(0x271)]}),_0x2b16de=Cesium$6['ShaderProgram'][_0x5b2ff0(0x201)]({'context':_0x30a846,'attributeLocations':this['attributeLocations'],'vertexShaderSource':this[_0x5b2ff0(0x24f)],'fragmentShaderSource':this['fragmentShaderSource']}),_0x2c7d2f=Cesium$6[_0x5b2ff0(0x2d9)][_0x5b2ff0(0x201)](this[_0x5b2ff0(0x1f3)]);return new Cesium$6[(_0x5b2ff0(0x212))]({'primitiveType':this['primitiveType'],'shaderProgram':_0x2b16de,'vertexArray':_0xc372a0,'modelMatrix':Cesium$6[_0x5b2ff0(0x2a7)][_0x5b2ff0(0x248)],'renderState':_0x2c7d2f,'uniformMap':this[_0x5b2ff0(0x300)],'castShadows':![],'receiveShadows':![],'framebuffer':this['framebuffer'],'pass':Cesium$6['Pass'][_0x5b2ff0(0x21e)],'pickOnly':!![],'owner':this});}case _0x5b2ff0(0x314):{return new Cesium$6[(_0x5b2ff0(0x347))]({'owner':this,'fragmentShaderSource':this[_0x5b2ff0(0x1f0)],'uniformMap':this[_0x5b2ff0(0x300)],'outputTexture':this[_0x5b2ff0(0x2d2)],'persists':!![]});}}}},{'key':_0x400ac0(0x2eb),'value':function _0x2d2d10(_0x429c1a,_0x3fa0c5){var _0x543e5a=_0x400ac0;this['geometry']=_0x3fa0c5;var _0x3e902a=Cesium$6[_0x543e5a(0x260)][_0x543e5a(0x21f)]({'context':_0x429c1a,'geometry':this[_0x543e5a(0x313)],'attributeLocations':this[_0x543e5a(0x1ea)],'bufferUsage':Cesium$6[_0x543e5a(0x32e)][_0x543e5a(0x271)]});this[_0x543e5a(0x22a)]['vertexArray']=_0x3e902a;}},{'key':_0x400ac0(0x21d),'value':function _0x34c67d(_0x468651){var _0x214427=_0x400ac0;if(!this[_0x214427(0x2ac)])return;if(_0x468651[_0x214427(0x2e9)]!==Cesium$6[_0x214427(0x342)][_0x214427(0x2e3)])return;!Cesium$6['defined'](this[_0x214427(0x22a)])&&(this['commandToExecute']=this[_0x214427(0x256)](_0x468651[_0x214427(0x208)])),Cesium$6['defined'](this[_0x214427(0x303)])&&this[_0x214427(0x303)](),Cesium$6[_0x214427(0x328)](this[_0x214427(0x2c3)])&&_0x468651['commandList'][_0x214427(0x2ff)](this[_0x214427(0x2c3)]),_0x468651[_0x214427(0x341)][_0x214427(0x2ff)](this[_0x214427(0x22a)]);}},{'key':'isDestroyed','value':function _0x23f4af(){return![];}},{'key':_0x400ac0(0x356),'value':function _0x5270a7(){var _0x1ed8b3=_0x400ac0;if(this[_0x1ed8b3(0x2c3)]){var _0x3a2add,_0x2da8c9;(_0x3a2add=this['clearCommand'])!==null&&_0x3a2add!==void 0x0&&_0x3a2add[_0x1ed8b3(0x30e)]&&this[_0x1ed8b3(0x2c3)]['vertexArray'][_0x1ed8b3(0x356)](),(_0x2da8c9=this[_0x1ed8b3(0x2c3)])!==null&&_0x2da8c9!==void 0x0&&_0x2da8c9['shaderProgram']&&this[_0x1ed8b3(0x2c3)]['shaderProgram'][_0x1ed8b3(0x356)](),delete this[_0x1ed8b3(0x2c3)];}return this[_0x1ed8b3(0x22a)]&&(this[_0x1ed8b3(0x22a)][_0x1ed8b3(0x30e)]&&this['commandToExecute'][_0x1ed8b3(0x30e)][_0x1ed8b3(0x356)](),this[_0x1ed8b3(0x22a)]['shaderProgram']&&this['commandToExecute'][_0x1ed8b3(0x343)][_0x1ed8b3(0x356)](),delete this['commandToExecute']),Cesium$6[_0x1ed8b3(0x296)](this);}}]),_0x3d885c;}()),Cesium$5=mars3d__namespace[_0x346215(0x23e)],Util=(function(){var _0x3ae2d6=function _0x5e53b1(){var _0x1090eb=_0x334a,_0x500cab=new Cesium$5[(_0x1090eb(0x1e0))]({'attributes':new Cesium$5[(_0x1090eb(0x329))]({'position':new Cesium$5[(_0x1090eb(0x280))]({'componentDatatype':Cesium$5[_0x1090eb(0x2c0)][_0x1090eb(0x2b6)],'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[_0x1090eb(0x2c0)][_0x1090eb(0x2b6)],'componentsPerAttribute':0x2,'values':new Float32Array([0x0,0x0,0x1,0x0,0x1,0x1,0x0,0x1])})}),'indices':new Uint32Array([0x3,0x2,0x0,0x0,0x2,0x1])});return _0x500cab;},_0x7716d9=function _0x1bb736(_0x5cff33,_0x34d126){var _0x16c7b5=_0x334a;if(Cesium$5[_0x16c7b5(0x328)](_0x34d126)){var _0x5d78f7={};_0x5d78f7[_0x16c7b5(0x234)]=_0x34d126,_0x5cff33[_0x16c7b5(0x224)]=_0x5d78f7;}var _0x5c9031=new Cesium$5[(_0x16c7b5(0x1dd))](_0x5cff33);return _0x5c9031;},_0x2f06dc=function _0x4d59a7(_0x5922f9,_0x61e489,_0x18acc4){var _0x4bb554=_0x334a,_0x2a86c7=new Cesium$5[(_0x4bb554(0x30b))]({'context':_0x5922f9,'colorTextures':[_0x61e489],'depthTexture':_0x18acc4});return _0x2a86c7;},_0x5f3656=function _0x361c0f(_0x12ba28){var _0x414f23=_0x334a,_0x3f7b20=!![],_0x44f051=![],_0x556936={'viewport':_0x12ba28[_0x414f23(0x358)],'depthTest':_0x12ba28[_0x414f23(0x233)],'depthMask':_0x12ba28['depthMask'],'blending':_0x12ba28['blending']},_0x53c193=Cesium$5[_0x414f23(0x23d)][_0x414f23(0x200)](_0x3f7b20,_0x44f051,_0x556936);return _0x53c193;},_0x4dd2a0=function _0x319aab(_0x4389fd){var _0x54bddc=_0x334a,_0x4e3fc3={},_0x362283=Cesium$5[_0x54bddc(0x35a)][_0x54bddc(0x323)](_0x4389fd[_0x54bddc(0x27d)],Cesium$5[_0x54bddc(0x35a)][_0x54bddc(0x1de)]),_0x104697=Cesium$5[_0x54bddc(0x35a)][_0x54bddc(0x323)](_0x4389fd[_0x54bddc(0x1ff)],Cesium$5[_0x54bddc(0x35a)]['TWO_PI']),_0x3e2b8b=_0x4389fd[_0x54bddc(0x227)],_0x181fc1,_0x224ec9;_0x3e2b8b>Cesium$5[_0x54bddc(0x35a)][_0x54bddc(0x258)]?(_0x181fc1=0x0,_0x224ec9=Cesium$5[_0x54bddc(0x35a)][_0x54bddc(0x1de)]):_0x104697-_0x362283<_0x3e2b8b?(_0x181fc1=_0x362283,_0x224ec9=_0x362283+_0x3e2b8b):(_0x181fc1=_0x362283,_0x224ec9=_0x104697);_0x4e3fc3['lon']={'min':Cesium$5['Math'][_0x54bddc(0x287)](_0x181fc1),'max':Cesium$5['Math'][_0x54bddc(0x287)](_0x224ec9)};var _0x465f82=_0x4389fd[_0x54bddc(0x34f)],_0x220e78=_0x4389fd['north'],_0x341ed0=_0x4389fd[_0x54bddc(0x217)],_0x2a6cfc=_0x341ed0>Cesium$5[_0x54bddc(0x35a)]['PI']/0xc?_0x341ed0/0x2:0x0,_0x313fe5=Cesium$5['Math']['clampToLatitudeRange'](_0x465f82-_0x2a6cfc),_0x148dc5=Cesium$5[_0x54bddc(0x35a)][_0x54bddc(0x28a)](_0x220e78+_0x2a6cfc);return _0x313fe5<-Cesium$5[_0x54bddc(0x35a)][_0x54bddc(0x1f6)]&&(_0x313fe5=-Cesium$5[_0x54bddc(0x35a)][_0x54bddc(0x34b)]),_0x148dc5>Cesium$5[_0x54bddc(0x35a)][_0x54bddc(0x1f6)]&&(_0x148dc5=Cesium$5['Math']['PI_OVER_TWO']),_0x4e3fc3['lat']={'min':Cesium$5[_0x54bddc(0x35a)][_0x54bddc(0x287)](_0x313fe5),'max':Cesium$5['Math']['toDegrees'](_0x148dc5)},_0x4e3fc3;};return{'getFullscreenQuad':_0x3ae2d6,'createTexture':_0x7716d9,'createFramebuffer':_0x2f06dc,'createRawRenderState':_0x5f3656,'viewRectangleToLonLatRange':_0x4dd2a0};}()),segmentDraw_vert='attribute\x20vec2\x20st;\x0a//\x20it\x20is\x20not\x20normal\x20itself,\x20but\x20used\x20to\x20control\x20normal\x0aattribute\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\x0avarying\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\x20\x0a\x20\x20\x20\x20float\x20a\x20=\x206378137.0;\x20//\x20Semi-major\x20axis\x20\x0a\x20\x20\x20\x20float\x20b\x20=\x206356752.3142;\x20//\x20Semi-minor\x20axis\x20\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=\x20texture2D(currentParticlesPosition,\x20particleIndex).rgb;\x0a\x20\x20\x20\x20vec4\x20nextPosition\x20=\x20texture2D(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=\x20texture2D(postProcessingSpeed,\x20particleIndex).a;\x0a}',segmentDraw_frag='uniform\x20sampler2D\x20colorTable;\x0a\x0avarying\x20float\x20speedNormalization;\x0a\x0avoid\x20main()\x20{\x0a\x20\x20\x20\x20gl_FragColor\x20=\x20texture2D(colorTable,\x20vec2(speedNormalization,\x200.0));\x0a}',fullscreen_vert=_0x346215(0x220),trailDraw_frag=_0x346215(0x281),screenDraw_frag=_0x346215(0x344),Cesium$4=mars3d__namespace[_0x346215(0x23e)],ParticlesRendering=(function(){var _0x1e12b2=_0x346215;function _0x5e9bc1(_0x39ed5d,_0x3d768c,_0x50c4ae,_0x523e55,_0x167f09){var _0x5762d3=_0x334a;_classCallCheck(this,_0x5e9bc1),this[_0x5762d3(0x2be)](_0x39ed5d,_0x3d768c,_0x50c4ae[_0x5762d3(0x251)]),this[_0x5762d3(0x2b9)](_0x39ed5d),this[_0x5762d3(0x276)](_0x39ed5d,_0x50c4ae,_0x523e55,_0x167f09);}return _createClass(_0x5e9bc1,[{'key':'createRenderingTextures','value':function _0xf9c8f1(_0x268915,_0x5b5724,_0x554f2d){var _0x276b03=_0x334a,_0x59514e={'context':_0x268915,'width':_0x268915[_0x276b03(0x1d9)],'height':_0x268915[_0x276b03(0x332)],'pixelFormat':Cesium$4[_0x276b03(0x277)][_0x276b03(0x2af)],'pixelDatatype':Cesium$4[_0x276b03(0x2b7)][_0x276b03(0x235)]},_0x4c90a3={'context':_0x268915,'width':_0x268915['drawingBufferWidth'],'height':_0x268915[_0x276b03(0x332)],'pixelFormat':Cesium$4['PixelFormat'][_0x276b03(0x30d)],'pixelDatatype':Cesium$4[_0x276b03(0x2b7)][_0x276b03(0x2d5)]},_0x452709=_0x554f2d['length'],_0x37bb38=new Float32Array(_0x452709*0x3);for(var _0x11ca56=0x0;_0x11ca56<_0x452709;_0x11ca56++){var _0x5dde32=Cesium$4[_0x276b03(0x28d)]['fromCssColorString'](_0x554f2d[_0x11ca56]);_0x37bb38[0x3*_0x11ca56]=_0x5dde32[_0x276b03(0x1f4)],_0x37bb38[0x3*_0x11ca56+0x1]=_0x5dde32[_0x276b03(0x292)],_0x37bb38[0x3*_0x11ca56+0x2]=_0x5dde32[_0x276b03(0x207)];}var _0x158bd8={'context':_0x268915,'width':_0x452709,'height':0x1,'pixelFormat':Cesium$4[_0x276b03(0x277)][_0x276b03(0x243)],'pixelDatatype':Cesium$4[_0x276b03(0x2b7)][_0x276b03(0x2b6)],'sampler':new Cesium$4[(_0x276b03(0x215))]({'minificationFilter':Cesium$4[_0x276b03(0x1e9)][_0x276b03(0x355)],'magnificationFilter':Cesium$4[_0x276b03(0x238)][_0x276b03(0x355)]})};this[_0x276b03(0x2e8)]={'segmentsColor':Util['createTexture'](_0x59514e),'segmentsDepth':Util[_0x276b03(0x309)](_0x4c90a3),'currentTrailsColor':Util[_0x276b03(0x309)](_0x59514e),'currentTrailsDepth':Util['createTexture'](_0x4c90a3),'nextTrailsColor':Util[_0x276b03(0x309)](_0x59514e),'nextTrailsDepth':Util[_0x276b03(0x309)](_0x4c90a3),'colorTable':Util['createTexture'](_0x158bd8,_0x37bb38)};}},{'key':'createRenderingFramebuffers','value':function _0x5412e4(_0x55225e){var _0xdf0e8f=_0x334a;this['framebuffers']={'segments':Util[_0xdf0e8f(0x29e)](_0x55225e,this['textures'][_0xdf0e8f(0x2c9)],this[_0xdf0e8f(0x2e8)]['segmentsDepth']),'currentTrails':Util['createFramebuffer'](_0x55225e,this['textures']['currentTrailsColor'],this[_0xdf0e8f(0x2e8)][_0xdf0e8f(0x285)]),'nextTrails':Util[_0xdf0e8f(0x29e)](_0x55225e,this['textures'][_0xdf0e8f(0x326)],this[_0xdf0e8f(0x2e8)][_0xdf0e8f(0x23b)])};}},{'key':_0x1e12b2(0x252),'value':function _0x572dd3(_0x334438){var _0x30bc35=_0x1e12b2,_0x1513ae=0x4,_0x1b46fb=[];for(var _0x487bc0=0x0;_0x487bc0<_0x334438[_0x30bc35(0x25c)];_0x487bc0++){for(var _0x4eeed4=0x0;_0x4eeed4<_0x334438['particlesTextureSize'];_0x4eeed4++){for(var _0x222609=0x0;_0x222609<_0x1513ae;_0x222609++){_0x1b46fb[_0x30bc35(0x2ff)](_0x487bc0/_0x334438[_0x30bc35(0x25c)]),_0x1b46fb[_0x30bc35(0x2ff)](_0x4eeed4/_0x334438[_0x30bc35(0x25c)]);}}}_0x1b46fb=new Float32Array(_0x1b46fb);var _0x5e81a4=[],_0x10d870=[-0x1,0x1],_0x4729f5=[-0x1,0x1];for(var _0x2497ea=0x0;_0x2497ea<_0x334438[_0x30bc35(0x1df)];_0x2497ea++){for(var _0x769d2d=0x0;_0x769d2d<_0x1513ae/0x2;_0x769d2d++){for(var _0x422c21=0x0;_0x422c21<_0x1513ae/0x2;_0x422c21++){_0x5e81a4[_0x30bc35(0x2ff)](_0x10d870[_0x769d2d]),_0x5e81a4['push'](_0x4729f5[_0x422c21]),_0x5e81a4[_0x30bc35(0x2ff)](0x0);}}}_0x5e81a4=new Float32Array(_0x5e81a4);var _0x591c49=0x6*_0x334438[_0x30bc35(0x1df)],_0x5bafd5=new Uint32Array(_0x591c49);for(var _0x1bdb28=0x0,_0xeb92a8=0x0,_0xb58086=0x0;_0x1bdb28<_0x334438[_0x30bc35(0x1df)];_0x1bdb28++){_0x5bafd5[_0xeb92a8++]=_0xb58086+0x0,_0x5bafd5[_0xeb92a8++]=_0xb58086+0x1,_0x5bafd5[_0xeb92a8++]=_0xb58086+0x2,_0x5bafd5[_0xeb92a8++]=_0xb58086+0x2,_0x5bafd5[_0xeb92a8++]=_0xb58086+0x1,_0x5bafd5[_0xeb92a8++]=_0xb58086+0x3,_0xb58086+=0x4;}var _0x34f2e1=new Cesium$4[(_0x30bc35(0x1e0))]({'attributes':new Cesium$4[(_0x30bc35(0x329))]({'st':new Cesium$4[(_0x30bc35(0x280))]({'componentDatatype':Cesium$4[_0x30bc35(0x2c0)][_0x30bc35(0x2b6)],'componentsPerAttribute':0x2,'values':_0x1b46fb}),'normal':new Cesium$4[(_0x30bc35(0x280))]({'componentDatatype':Cesium$4[_0x30bc35(0x2c0)]['FLOAT'],'componentsPerAttribute':0x3,'values':_0x5e81a4})}),'indices':_0x5bafd5});return _0x34f2e1;}},{'key':_0x1e12b2(0x276),'value':function _0x13c221(_0x16f11c,_0x5dec10,_0x25a848,_0x18176c){var _0x121a30=_0x1e12b2,_0x5142c3=this;this[_0x121a30(0x286)]={'segments':new CustomPrimitive({'commandType':_0x121a30(0x1f2),'attributeLocations':{'st':0x0,'normal':0x1},'geometry':this['createSegmentsGeometry'](_0x5dec10),'primitiveType':Cesium$4['PrimitiveType']['TRIANGLES'],'uniformMap':{'currentParticlesPosition':function _0x1a088d(){var _0x2834ce=_0x121a30;return _0x18176c[_0x2834ce(0x21a)][_0x2834ce(0x2b3)];},'postProcessingPosition':function _0x59d294(){var _0x35cac3=_0x121a30;return _0x18176c[_0x35cac3(0x21a)][_0x35cac3(0x206)];},'postProcessingSpeed':function _0x29c646(){var _0x3b73c0=_0x121a30;return _0x18176c[_0x3b73c0(0x21a)][_0x3b73c0(0x284)];},'colorTable':function _0x7e5f4e(){var _0x199cde=_0x121a30;return _0x5142c3[_0x199cde(0x2e8)][_0x199cde(0x249)];},'aspect':function _0x19e234(){var _0x47e566=_0x121a30;return _0x16f11c['drawingBufferWidth']/_0x16f11c[_0x47e566(0x332)];},'pixelSize':function _0x5b6d3a(){var _0x58a22e=_0x121a30;return _0x25a848[_0x58a22e(0x274)];},'lineWidth':function _0x55e3f4(){var _0x13ef42=_0x121a30;return _0x5dec10[_0x13ef42(0x257)];},'particleHeight':function _0x541a2f(){var _0x305257=_0x121a30;return _0x5dec10[_0x305257(0x278)];}},'vertexShaderSource':new Cesium$4['ShaderSource']({'sources':[segmentDraw_vert]}),'fragmentShaderSource':new Cesium$4[(_0x121a30(0x31a))]({'sources':[segmentDraw_frag]}),'rawRenderState':Util[_0x121a30(0x22e)]({'viewport':undefined,'depthTest':{'enabled':!![]},'depthMask':!![]}),'framebuffer':this[_0x121a30(0x318)][_0x121a30(0x33f)],'autoClear':!![]}),'trails':new CustomPrimitive({'commandType':_0x121a30(0x1f2),'attributeLocations':{'position':0x0,'st':0x1},'geometry':Util[_0x121a30(0x2b2)](),'primitiveType':Cesium$4['PrimitiveType'][_0x121a30(0x247)],'uniformMap':{'segmentsColorTexture':function _0x173848(){var _0x19a48b=_0x121a30;return _0x5142c3[_0x19a48b(0x2e8)][_0x19a48b(0x2c9)];},'segmentsDepthTexture':function _0x54577a(){var _0x3cec60=_0x121a30;return _0x5142c3[_0x3cec60(0x2e8)][_0x3cec60(0x35c)];},'currentTrailsColor':function _0x1af7de(){var _0x2affb7=_0x121a30;return _0x5142c3['framebuffers']['currentTrails'][_0x2affb7(0x211)](0x0);},'trailsDepthTexture':function _0x3c1c83(){var _0x20a07a=_0x121a30;return _0x5142c3[_0x20a07a(0x318)][_0x20a07a(0x245)][_0x20a07a(0x22f)];},'fadeOpacity':function _0x3d1753(){var _0x48328a=_0x121a30;return _0x5dec10[_0x48328a(0x35e)];}},'vertexShaderSource':new Cesium$4[(_0x121a30(0x31a))]({'defines':[_0x121a30(0x2f4)],'sources':[fullscreen_vert]}),'fragmentShaderSource':new Cesium$4[(_0x121a30(0x31a))]({'defines':['DISABLE_LOG_DEPTH_FRAGMENT_WRITE'],'sources':[trailDraw_frag]}),'rawRenderState':Util[_0x121a30(0x22e)]({'viewport':undefined,'depthTest':{'enabled':!![],'func':Cesium$4['DepthFunction']['ALWAYS']},'depthMask':!![]}),'framebuffer':this['framebuffers'][_0x121a30(0x2e2)],'autoClear':!![],'preExecute':function _0x1b6949(){var _0x41e4b4=_0x121a30,_0x5e6566=_0x5142c3[_0x41e4b4(0x318)][_0x41e4b4(0x245)];_0x5142c3[_0x41e4b4(0x318)][_0x41e4b4(0x245)]=_0x5142c3['framebuffers'][_0x41e4b4(0x2e2)],_0x5142c3[_0x41e4b4(0x318)][_0x41e4b4(0x2e2)]=_0x5e6566,_0x5142c3[_0x41e4b4(0x286)][_0x41e4b4(0x35d)]['commandToExecute'][_0x41e4b4(0x1fd)]=_0x5142c3[_0x41e4b4(0x318)][_0x41e4b4(0x2e2)],_0x5142c3[_0x41e4b4(0x286)][_0x41e4b4(0x35d)][_0x41e4b4(0x2c3)][_0x41e4b4(0x1fd)]=_0x5142c3[_0x41e4b4(0x318)][_0x41e4b4(0x2e2)];}}),'screen':new CustomPrimitive({'commandType':'Draw','attributeLocations':{'position':0x0,'st':0x1},'geometry':Util[_0x121a30(0x2b2)](),'primitiveType':Cesium$4['PrimitiveType']['TRIANGLES'],'uniformMap':{'trailsColorTexture':function _0x1f3e55(){var _0x2ff68a=_0x121a30;return _0x5142c3[_0x2ff68a(0x318)][_0x2ff68a(0x2e2)][_0x2ff68a(0x211)](0x0);},'trailsDepthTexture':function _0x1b96b7(){var _0x56fa92=_0x121a30;return _0x5142c3[_0x56fa92(0x318)][_0x56fa92(0x2e2)][_0x56fa92(0x22f)];}},'vertexShaderSource':new Cesium$4['ShaderSource']({'defines':[_0x121a30(0x2f4)],'sources':[fullscreen_vert]}),'fragmentShaderSource':new Cesium$4[(_0x121a30(0x31a))]({'defines':[_0x121a30(0x218)],'sources':[screenDraw_frag]}),'rawRenderState':Util[_0x121a30(0x22e)]({'viewport':undefined,'depthTest':{'enabled':![]},'depthMask':!![],'blending':{'enabled':!![]}}),'framebuffer':undefined})};}}]),_0x5e9bc1;}()),getWind_frag=_0x346215(0x24e),updateSpeed_frag=_0x346215(0x222),updatePosition_frag='uniform\x20sampler2D\x20currentParticlesPosition;\x20//\x20(lon,\x20lat,\x20lev)\x0auniform\x20sampler2D\x20currentParticlesSpeed;\x20//\x20(u,\x20v,\x20w,\x20normalization)\x0a\x0avarying\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\x20gl_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=\x20texture2D(currentParticlesPosition,\x20v_textureCoordinates).rgb;\x0a\x20\x20\x20\x20vec3\x20speed\x20=\x20texture2D(currentParticlesSpeed,\x20v_textureCoordinates).rgb;\x0a\x0a\x20\x20\x20\x20updatePosition(lonLatLev,\x20speed);\x0a}',postProcessingPosition_frag=_0x346215(0x202),postProcessingSpeed_frag=_0x346215(0x1f1),Cesium$3=mars3d__namespace[_0x346215(0x23e)],ParticlesComputing=(function(){var _0x3d6bbf=_0x346215;function _0x23ad14(_0x44d4a8,_0x1563c0,_0x573abd,_0x39ee71){var _0x59363f=_0x334a;_classCallCheck(this,_0x23ad14),this['data']=_0x1563c0,this[_0x59363f(0x316)](_0x44d4a8,_0x1563c0),this[_0x59363f(0x2bd)](_0x44d4a8,_0x573abd,_0x39ee71),this[_0x59363f(0x21b)](_0x1563c0,_0x573abd,_0x39ee71);}return _createClass(_0x23ad14,[{'key':'createWindTextures','value':function _0x317ee4(_0x574a8d,_0x106284){var _0x1013dd=_0x334a,_0x2651be={'context':_0x574a8d,'width':_0x106284[_0x1013dd(0x29c)]['lon'],'height':_0x106284[_0x1013dd(0x29c)]['lat']*(_0x106284[_0x1013dd(0x29c)]['lev']||0x1),'pixelFormat':Cesium$3['PixelFormat']['LUMINANCE'],'pixelDatatype':Cesium$3['PixelDatatype'][_0x1013dd(0x2b6)],'flipY':![],'sampler':new Cesium$3[(_0x1013dd(0x215))]({'minificationFilter':Cesium$3[_0x1013dd(0x1e9)]['NEAREST'],'magnificationFilter':Cesium$3[_0x1013dd(0x238)]['NEAREST']})};this[_0x1013dd(0x27b)]={'U':Util[_0x1013dd(0x309)](_0x2651be,_0x106284['U'][_0x1013dd(0x2f3)]),'V':Util[_0x1013dd(0x309)](_0x2651be,_0x106284['V'][_0x1013dd(0x2f3)])};}},{'key':_0x3d6bbf(0x2bd),'value':function _0x4bb5e1(_0x5c0442,_0x3eb55a,_0x1c3ff5){var _0x12b5b6=_0x3d6bbf,_0x33ea55={'context':_0x5c0442,'width':_0x3eb55a[_0x12b5b6(0x25c)],'height':_0x3eb55a[_0x12b5b6(0x25c)],'pixelFormat':Cesium$3['PixelFormat'][_0x12b5b6(0x2af)],'pixelDatatype':Cesium$3[_0x12b5b6(0x2b7)][_0x12b5b6(0x2b6)],'flipY':![],'sampler':new Cesium$3[(_0x12b5b6(0x215))]({'minificationFilter':Cesium$3[_0x12b5b6(0x1e9)][_0x12b5b6(0x1ef)],'magnificationFilter':Cesium$3[_0x12b5b6(0x238)]['NEAREST']})},_0x497ae9=this[_0x12b5b6(0x357)](_0x3eb55a[_0x12b5b6(0x1df)],_0x1c3ff5),_0xe4317e=new Float32Array(0x4*_0x3eb55a[_0x12b5b6(0x1df)])[_0x12b5b6(0x267)](0x0);this[_0x12b5b6(0x21a)]={'particlesWind':Util[_0x12b5b6(0x309)](_0x33ea55),'currentParticlesPosition':Util[_0x12b5b6(0x309)](_0x33ea55,_0x497ae9),'nextParticlesPosition':Util[_0x12b5b6(0x309)](_0x33ea55,_0x497ae9),'currentParticlesSpeed':Util[_0x12b5b6(0x309)](_0x33ea55,_0xe4317e),'nextParticlesSpeed':Util[_0x12b5b6(0x309)](_0x33ea55,_0xe4317e),'postProcessingPosition':Util['createTexture'](_0x33ea55,_0x497ae9),'postProcessingSpeed':Util[_0x12b5b6(0x309)](_0x33ea55,_0xe4317e)};}},{'key':_0x3d6bbf(0x357),'value':function _0x1b6a90(_0x29113b,_0x4a1520){var _0x44343c=_0x3d6bbf,_0xf5a828=new Float32Array(0x4*_0x29113b);for(var _0x18f247=0x0;_0x18f247<_0x29113b;_0x18f247++){_0xf5a828[0x4*_0x18f247]=Cesium$3[_0x44343c(0x35a)][_0x44343c(0x1e3)](_0x4a1520[_0x44343c(0x253)]['x'],_0x4a1520['lonRange']['y']),_0xf5a828[0x4*_0x18f247+0x1]=Cesium$3[_0x44343c(0x35a)][_0x44343c(0x1e3)](_0x4a1520[_0x44343c(0x24a)]['x'],_0x4a1520['latRange']['y']),_0xf5a828[0x4*_0x18f247+0x2]=Cesium$3[_0x44343c(0x35a)][_0x44343c(0x1e3)](this['data']['lev']['min'],this[_0x44343c(0x2ca)][_0x44343c(0x352)]['max']),_0xf5a828[0x4*_0x18f247+0x3]=0x0;}return _0xf5a828;}},{'key':'destroyParticlesTextures','value':function _0x4db6dc(){var _0x65f0bc=_0x3d6bbf,_0x1a3588=this;Object[_0x65f0bc(0x213)](this[_0x65f0bc(0x21a)])[_0x65f0bc(0x230)](function(_0x41c1ae){var _0x1288d9=_0x65f0bc;_0x1a3588[_0x1288d9(0x21a)][_0x41c1ae][_0x1288d9(0x356)]();});}},{'key':_0x3d6bbf(0x21b),'value':function _0x1fdc9a(_0x286239,_0x1603c6,_0xcc6aad){var _0x4963a9=_0x3d6bbf,_0x4955f2=new Cesium$3[(_0x4963a9(0x268))](_0x286239['dimensions'][_0x4963a9(0x216)],_0x286239[_0x4963a9(0x29c)][_0x4963a9(0x28c)],_0x286239[_0x4963a9(0x29c)]['lev']),_0x548ba8=new Cesium$3[(_0x4963a9(0x268))](_0x286239[_0x4963a9(0x216)][_0x4963a9(0x282)],_0x286239['lat'][_0x4963a9(0x282)],_0x286239[_0x4963a9(0x352)][_0x4963a9(0x282)]),_0x49a0d4=new Cesium$3[(_0x4963a9(0x268))](_0x286239[_0x4963a9(0x216)][_0x4963a9(0x34d)],_0x286239[_0x4963a9(0x28c)][_0x4963a9(0x34d)],_0x286239[_0x4963a9(0x352)]['max']),_0x301c2f=new Cesium$3[(_0x4963a9(0x268))]((_0x49a0d4['x']-_0x548ba8['x'])/(_0x4955f2['x']-0x1),(_0x49a0d4['y']-_0x548ba8['y'])/(_0x4955f2['y']-0x1),_0x4955f2['z']>0x1?(_0x49a0d4['z']-_0x548ba8['z'])/(_0x4955f2['z']-0x1):0x1),_0x28deb9=new Cesium$3[(_0x4963a9(0x345))](_0x286239['U'][_0x4963a9(0x282)],_0x286239['U'][_0x4963a9(0x34d)]),_0x3dbcf2=new Cesium$3['Cartesian2'](_0x286239['V'][_0x4963a9(0x282)],_0x286239['V'][_0x4963a9(0x34d)]),_0x456b7b=this;this[_0x4963a9(0x286)]={'getWind':new CustomPrimitive({'commandType':_0x4963a9(0x314),'uniformMap':{'U':function _0x225e4d(){var _0x2433f6=_0x4963a9;return _0x456b7b[_0x2433f6(0x27b)]['U'];},'V':function _0x54c561(){return _0x456b7b['windTextures']['V'];},'currentParticlesPosition':function _0x18943d(){var _0x309ab1=_0x4963a9;return _0x456b7b[_0x309ab1(0x21a)][_0x309ab1(0x2b3)];},'dimension':function _0xb6f532(){return _0x4955f2;},'minimum':function _0x1ba6a6(){return _0x548ba8;},'maximum':function _0x5829d5(){return _0x49a0d4;},'interval':function _0x4ae9aa(){return _0x301c2f;}},'fragmentShaderSource':new Cesium$3[(_0x4963a9(0x31a))]({'sources':[getWind_frag]}),'outputTexture':this[_0x4963a9(0x21a)][_0x4963a9(0x209)],'preExecute':function _0x42f13d(){var _0x505dd9=_0x4963a9;_0x456b7b[_0x505dd9(0x286)][_0x505dd9(0x2ed)]['commandToExecute'][_0x505dd9(0x2d2)]=_0x456b7b[_0x505dd9(0x21a)]['particlesWind'];}}),'updateSpeed':new CustomPrimitive({'commandType':_0x4963a9(0x314),'uniformMap':{'currentParticlesSpeed':function _0x57dae3(){var _0x4d3eec=_0x4963a9;return _0x456b7b['particlesTextures'][_0x4d3eec(0x1e8)];},'particlesWind':function _0x2c8c57(){var _0x1e5dda=_0x4963a9;return _0x456b7b['particlesTextures'][_0x1e5dda(0x209)];},'uSpeedRange':function _0x251531(){return _0x28deb9;},'vSpeedRange':function _0x3c679c(){return _0x3dbcf2;},'pixelSize':function _0x5bf91f(){var _0x3e76b5=_0x4963a9;return _0xcc6aad[_0x3e76b5(0x274)];},'speedFactor':function _0x152c52(){var _0x582e55=_0x4963a9;return _0x1603c6[_0x582e55(0x27f)];}},'fragmentShaderSource':new Cesium$3[(_0x4963a9(0x31a))]({'sources':[updateSpeed_frag]}),'outputTexture':this[_0x4963a9(0x21a)]['nextParticlesSpeed'],'preExecute':function _0x297755(){var _0x99c39c=_0x4963a9,_0x1ff80b=_0x456b7b[_0x99c39c(0x21a)][_0x99c39c(0x1e8)];_0x456b7b[_0x99c39c(0x21a)][_0x99c39c(0x1e8)]=_0x456b7b[_0x99c39c(0x21a)]['postProcessingSpeed'],_0x456b7b[_0x99c39c(0x21a)][_0x99c39c(0x284)]=_0x1ff80b,_0x456b7b[_0x99c39c(0x286)][_0x99c39c(0x237)][_0x99c39c(0x22a)][_0x99c39c(0x2d2)]=_0x456b7b['particlesTextures'][_0x99c39c(0x2f7)];}}),'updatePosition':new CustomPrimitive({'commandType':'Compute','uniformMap':{'currentParticlesPosition':function _0x42e32d(){var _0x17b61b=_0x4963a9;return _0x456b7b[_0x17b61b(0x21a)][_0x17b61b(0x2b3)];},'currentParticlesSpeed':function _0x330ab6(){var _0x41cc59=_0x4963a9;return _0x456b7b[_0x41cc59(0x21a)]['currentParticlesSpeed'];}},'fragmentShaderSource':new Cesium$3['ShaderSource']({'sources':[updatePosition_frag]}),'outputTexture':this[_0x4963a9(0x21a)]['nextParticlesPosition'],'preExecute':function _0x44bc7c(){var _0x8fd14=_0x4963a9,_0x17d459=_0x456b7b[_0x8fd14(0x21a)][_0x8fd14(0x2b3)];_0x456b7b['particlesTextures'][_0x8fd14(0x2b3)]=_0x456b7b[_0x8fd14(0x21a)][_0x8fd14(0x206)],_0x456b7b[_0x8fd14(0x21a)][_0x8fd14(0x206)]=_0x17d459,_0x456b7b['primitives'][_0x8fd14(0x34a)][_0x8fd14(0x22a)][_0x8fd14(0x2d2)]=_0x456b7b[_0x8fd14(0x21a)][_0x8fd14(0x2b1)];}}),'postProcessingPosition':new CustomPrimitive({'commandType':_0x4963a9(0x314),'uniformMap':{'nextParticlesPosition':function _0x205a48(){var _0x4d044a=_0x4963a9;return _0x456b7b[_0x4d044a(0x21a)][_0x4d044a(0x2b1)];},'nextParticlesSpeed':function _0x3c48c1(){var _0x332cfd=_0x4963a9;return _0x456b7b[_0x332cfd(0x21a)][_0x332cfd(0x2f7)];},'lonRange':function _0xc60b53(){var _0x1617e8=_0x4963a9;return _0xcc6aad[_0x1617e8(0x253)];},'latRange':function _0x5d6165(){var _0x3c8e62=_0x4963a9;return _0xcc6aad[_0x3c8e62(0x24a)];},'randomCoefficient':function _0xa12f49(){var _0x420834=_0x4963a9,_0x2b144d=Math[_0x420834(0x32b)]();return _0x2b144d;},'dropRate':function _0x3d3729(){var _0x2a8c56=_0x4963a9;return _0x1603c6[_0x2a8c56(0x2f8)];},'dropRateBump':function _0x5f1450(){var _0x30a7c7=_0x4963a9;return _0x1603c6[_0x30a7c7(0x232)];}},'fragmentShaderSource':new Cesium$3['ShaderSource']({'sources':[postProcessingPosition_frag]}),'outputTexture':this[_0x4963a9(0x21a)][_0x4963a9(0x206)],'preExecute':function _0x445087(){var _0x41392c=_0x4963a9;_0x456b7b[_0x41392c(0x286)][_0x41392c(0x206)]['commandToExecute'][_0x41392c(0x2d2)]=_0x456b7b[_0x41392c(0x21a)][_0x41392c(0x206)];}}),'postProcessingSpeed':new CustomPrimitive({'commandType':_0x4963a9(0x314),'uniformMap':{'postProcessingPosition':function _0x473dfa(){var _0x331ff1=_0x4963a9;return _0x456b7b[_0x331ff1(0x21a)][_0x331ff1(0x206)];},'nextParticlesSpeed':function _0x32e47d(){var _0xd355c7=_0x4963a9;return _0x456b7b[_0xd355c7(0x21a)][_0xd355c7(0x2f7)];}},'fragmentShaderSource':new Cesium$3[(_0x4963a9(0x31a))]({'sources':[postProcessingSpeed_frag]}),'outputTexture':this[_0x4963a9(0x21a)][_0x4963a9(0x284)],'preExecute':function _0x486764(){var _0x3ce554=_0x4963a9;_0x456b7b[_0x3ce554(0x286)]['postProcessingSpeed'][_0x3ce554(0x22a)][_0x3ce554(0x2d2)]=_0x456b7b['particlesTextures']['postProcessingSpeed'];}})};}}]),_0x23ad14;}()),Cesium$2=mars3d__namespace['Cesium'],ParticleSystem=(function(){var _0x2b713a=_0x346215;function _0x357006(_0x4547d3,_0x570957,_0x1a31bb,_0x33a8da){var _0x34f5f6=_0x334a;_classCallCheck(this,_0x357006),this[_0x34f5f6(0x208)]=_0x4547d3,_0x570957=_objectSpread2({},_0x570957);if(_0x570957['udata']&&_0x570957[_0x34f5f6(0x34e)]){var _0x32d2b0,_0x2cc0d1,_0xfb371d,_0xe750c8,_0x3e9498,_0xb5d30c;_0x570957[_0x34f5f6(0x29c)]={},_0x570957[_0x34f5f6(0x29c)][_0x34f5f6(0x216)]=_0x570957['cols'],_0x570957[_0x34f5f6(0x29c)][_0x34f5f6(0x28c)]=_0x570957['rows'],_0x570957['dimensions']['lev']=_0x570957[_0x34f5f6(0x352)]||0x1,_0x570957[_0x34f5f6(0x216)]={},_0x570957[_0x34f5f6(0x216)][_0x34f5f6(0x282)]=_0x570957['xmin'],_0x570957[_0x34f5f6(0x216)]['max']=_0x570957['xmax'],_0x570957[_0x34f5f6(0x28c)]={},_0x570957[_0x34f5f6(0x28c)][_0x34f5f6(0x282)]=_0x570957[_0x34f5f6(0x1eb)],_0x570957[_0x34f5f6(0x28c)][_0x34f5f6(0x34d)]=_0x570957[_0x34f5f6(0x2a5)],_0x570957[_0x34f5f6(0x352)]={},_0x570957['lev'][_0x34f5f6(0x282)]=(_0x32d2b0=_0x570957[_0x34f5f6(0x2ab)])!==null&&_0x32d2b0!==void 0x0?_0x32d2b0:0x1,_0x570957[_0x34f5f6(0x352)][_0x34f5f6(0x34d)]=(_0x2cc0d1=_0x570957['levmax'])!==null&&_0x2cc0d1!==void 0x0?_0x2cc0d1:0x1,_0x570957['U']={},_0x570957['U'][_0x34f5f6(0x2f3)]=new Float32Array(_0x570957[_0x34f5f6(0x298)]),_0x570957['U'][_0x34f5f6(0x282)]=(_0xfb371d=_0x570957[_0x34f5f6(0x311)])!==null&&_0xfb371d!==void 0x0?_0xfb371d:Math['min']['apply'](Math,_toConsumableArray(_0x570957[_0x34f5f6(0x298)])),_0x570957['U'][_0x34f5f6(0x34d)]=(_0xe750c8=_0x570957[_0x34f5f6(0x2da)])!==null&&_0xe750c8!==void 0x0?_0xe750c8:Math[_0x34f5f6(0x34d)][_0x34f5f6(0x279)](Math,_toConsumableArray(_0x570957[_0x34f5f6(0x298)])),_0x570957['V']={},_0x570957['V']['array']=new Float32Array(_0x570957[_0x34f5f6(0x34e)]),_0x570957['V'][_0x34f5f6(0x282)]=(_0x3e9498=_0x570957[_0x34f5f6(0x250)])!==null&&_0x3e9498!==void 0x0?_0x3e9498:Math[_0x34f5f6(0x282)][_0x34f5f6(0x279)](Math,_toConsumableArray(_0x570957['vdata'])),_0x570957['V'][_0x34f5f6(0x34d)]=(_0xb5d30c=_0x570957[_0x34f5f6(0x2a1)])!==null&&_0xb5d30c!==void 0x0?_0xb5d30c:Math[_0x34f5f6(0x34d)][_0x34f5f6(0x279)](Math,_toConsumableArray(_0x570957['vdata']));}this['data']=_0x570957,this[_0x34f5f6(0x31f)]=_0x1a31bb,this['viewerParameters']=_0x33a8da,this[_0x34f5f6(0x294)]=new ParticlesComputing(this[_0x34f5f6(0x208)],this['data'],this[_0x34f5f6(0x31f)],this[_0x34f5f6(0x20a)]),this['particlesRendering']=new ParticlesRendering(this[_0x34f5f6(0x208)],this[_0x34f5f6(0x2ca)],this[_0x34f5f6(0x31f)],this[_0x34f5f6(0x20a)],this[_0x34f5f6(0x294)]);}return _createClass(_0x357006,[{'key':_0x2b713a(0x219),'value':function _0x3791d1(_0x1fdfc5){var _0x3d1c1d=_0x2b713a,_0x503d2e=this;this['particlesComputing'][_0x3d1c1d(0x2c8)](),Object[_0x3d1c1d(0x213)](this['particlesComputing']['windTextures'])[_0x3d1c1d(0x230)](function(_0x310d25){var _0x412772=_0x3d1c1d;_0x503d2e[_0x412772(0x294)]['windTextures'][_0x310d25][_0x412772(0x356)]();}),this[_0x3d1c1d(0x203)]['textures'][_0x3d1c1d(0x249)][_0x3d1c1d(0x356)](),Object[_0x3d1c1d(0x213)](this[_0x3d1c1d(0x203)][_0x3d1c1d(0x318)])[_0x3d1c1d(0x230)](function(_0x16abf0){var _0x19d2f3=_0x3d1c1d;_0x503d2e[_0x19d2f3(0x203)][_0x19d2f3(0x318)][_0x16abf0]['destroy']();}),this[_0x3d1c1d(0x208)]=_0x1fdfc5,this[_0x3d1c1d(0x294)]=new ParticlesComputing(this[_0x3d1c1d(0x208)],this['data'],this[_0x3d1c1d(0x31f)],this[_0x3d1c1d(0x20a)]),this[_0x3d1c1d(0x203)]=new ParticlesRendering(this[_0x3d1c1d(0x208)],this[_0x3d1c1d(0x2ca)],this['options'],this[_0x3d1c1d(0x20a)],this[_0x3d1c1d(0x294)]);}},{'key':_0x2b713a(0x2a9),'value':function _0x22b78f(){var _0x93e623=_0x2b713a,_0x5f002e=this,_0x4d2e0c=new Cesium$2['ClearCommand']({'color':new Cesium$2[(_0x93e623(0x28d))](0x0,0x0,0x0,0x0),'depth':0x1,'framebuffer':undefined,'pass':Cesium$2[_0x93e623(0x2b0)]['OPAQUE']});Object['keys'](this[_0x93e623(0x203)][_0x93e623(0x318)])[_0x93e623(0x230)](function(_0x3a6657){var _0x79bef1=_0x93e623;_0x4d2e0c[_0x79bef1(0x1fd)]=_0x5f002e[_0x79bef1(0x203)]['framebuffers'][_0x3a6657],_0x4d2e0c[_0x79bef1(0x2f0)](_0x5f002e['context']);});}},{'key':'refreshParticles','value':function _0x13ffee(_0x1b4896){var _0x41cd1c=_0x2b713a;this[_0x41cd1c(0x2a9)](),this['particlesComputing'][_0x41cd1c(0x2c8)](),this[_0x41cd1c(0x294)][_0x41cd1c(0x2bd)](this[_0x41cd1c(0x208)],this[_0x41cd1c(0x31f)],this[_0x41cd1c(0x20a)]);if(_0x1b4896){var _0x26e3af=this[_0x41cd1c(0x203)][_0x41cd1c(0x252)](this[_0x41cd1c(0x31f)]);this['particlesRendering']['primitives'][_0x41cd1c(0x33f)][_0x41cd1c(0x313)]=_0x26e3af;var _0x3a53fa=Cesium$2['VertexArray']['fromGeometry']({'context':this[_0x41cd1c(0x208)],'geometry':_0x26e3af,'attributeLocations':this[_0x41cd1c(0x203)][_0x41cd1c(0x286)][_0x41cd1c(0x33f)]['attributeLocations'],'bufferUsage':Cesium$2['BufferUsage'][_0x41cd1c(0x271)]});this[_0x41cd1c(0x203)][_0x41cd1c(0x286)][_0x41cd1c(0x33f)][_0x41cd1c(0x22a)]['vertexArray']=_0x3a53fa;}}},{'key':_0x2b713a(0x2ec),'value':function _0x1e57fe(_0x484e34){var _0x7e15f3=_0x2b713a,_0x46f510=this,_0x44b0db=![];this[_0x7e15f3(0x31f)]['maxParticles']!==_0x484e34[_0x7e15f3(0x1df)]&&(_0x44b0db=!![]),Object[_0x7e15f3(0x213)](_0x484e34)[_0x7e15f3(0x230)](function(_0x40dac6){var _0x2eea0d=_0x7e15f3;_0x46f510[_0x2eea0d(0x31f)][_0x40dac6]=_0x484e34[_0x40dac6];}),this[_0x7e15f3(0x304)](_0x44b0db);}},{'key':_0x2b713a(0x2c4),'value':function _0x5c069f(_0x18a3dd){var _0x4e23c8=_0x2b713a,_0x139a2d=this;Object[_0x4e23c8(0x213)](_0x18a3dd)[_0x4e23c8(0x230)](function(_0x17934f){var _0x4329d8=_0x4e23c8;_0x139a2d[_0x4329d8(0x20a)][_0x17934f]=_0x18a3dd[_0x17934f];}),this[_0x4e23c8(0x304)](![]);}},{'key':_0x2b713a(0x356),'value':function _0x44a3e5(){var _0xf3c095=_0x2b713a,_0x77bb18=this;clearTimeout(this[_0xf3c095(0x1da)]),this[_0xf3c095(0x294)]['destroyParticlesTextures'](),Object[_0xf3c095(0x213)](this[_0xf3c095(0x294)][_0xf3c095(0x27b)])[_0xf3c095(0x230)](function(_0x46bc8c){var _0x3e209f=_0xf3c095;_0x77bb18['particlesComputing'][_0x3e209f(0x27b)][_0x46bc8c][_0x3e209f(0x356)]();}),this[_0xf3c095(0x203)]['textures'][_0xf3c095(0x249)]['destroy'](),Object[_0xf3c095(0x213)](this[_0xf3c095(0x203)][_0xf3c095(0x318)])[_0xf3c095(0x230)](function(_0xc0e900){var _0x1cad7e=_0xf3c095;_0x77bb18[_0x1cad7e(0x203)][_0x1cad7e(0x318)][_0xc0e900][_0x1cad7e(0x356)]();});for(var _0xd3523a in this){delete this[_0xd3523a];}}}]),_0x357006;}()),Cesium$1=mars3d__namespace[_0x346215(0x23e)],BaseLayer$1=mars3d__namespace['layer'][_0x346215(0x22d)],DEF_OPTIONS={'particlesNumber':0x1000,'fixedHeight':0x0,'fadeOpacity':0.996,'dropRate':0.003,'dropRateBump':0.01,'speedFactor':0.5,'lineWidth':0x2,'colors':[_0x346215(0x1ee)]},WindLayer=function(_0x30a45a){var _0x12ac7c=_0x346215;_inherits(_0x3d6c6a,_0x30a45a);var _0x4ffe49=_createSuper(_0x3d6c6a);function _0x3d6c6a(){var _0x4f26f4=_0x334a,_0x1365ba,_0x357d38=arguments[_0x4f26f4(0x2c2)]>0x0&&arguments[0x0]!==undefined?arguments[0x0]:{};return _classCallCheck(this,_0x3d6c6a),_0x357d38=_objectSpread2(_objectSpread2({},DEF_OPTIONS),_0x357d38),_0x1365ba=_0x4ffe49[_0x4f26f4(0x32a)](this,_0x357d38),_0x1365ba[_0x4f26f4(0x310)](_0x357d38),_0x1365ba;}return _createClass(_0x3d6c6a,[{'key':_0x12ac7c(0x339),'get':function _0x35d167(){var _0x3ff935=_0x12ac7c;return this[_0x3ff935(0x286)];}},{'key':_0x12ac7c(0x2ca),'get':function _0x1adcf1(){var _0x42d736=_0x12ac7c;return this[_0x42d736(0x2de)];},'set':function _0x562781(_0x26ddbd){this['setData'](_0x26ddbd);}},{'key':_0x12ac7c(0x251),'get':function _0x163c19(){var _0x3c70c5=_0x12ac7c;return this[_0x3c70c5(0x31f)]['colors'];},'set':function _0x4b994d(_0x14e29f){var _0x5a6599=_0x12ac7c;this[_0x5a6599(0x31f)][_0x5a6599(0x251)]=_0x14e29f,this[_0x5a6599(0x2fa)]&&this[_0x5a6599(0x2fa)][_0x5a6599(0x2ec)]({'colors':_0x14e29f}),this['resize']();}},{'key':_0x12ac7c(0x26d),'value':function _0x57a39e(){}},{'key':_0x12ac7c(0x20f),'value':function _0x2b9a2e(){var _0x1d5108=_0x12ac7c;this[_0x1d5108(0x2b5)]=this['_map'][_0x1d5108(0x2b5)],this[_0x1d5108(0x28e)]=this[_0x1d5108(0x2ad)][_0x1d5108(0x28e)],this['primitives']=new Cesium$1[(_0x1d5108(0x2a2))](),this[_0x1d5108(0x2ad)][_0x1d5108(0x2b5)][_0x1d5108(0x286)]['add'](this['primitives']),this[_0x1d5108(0x20a)]={'lonRange':new Cesium$1[(_0x1d5108(0x345))](),'latRange':new Cesium$1[(_0x1d5108(0x345))](),'pixelSize':0x0},this[_0x1d5108(0x25b)]=new Cesium$1[(_0x1d5108(0x2ea))](Cesium$1[_0x1d5108(0x268)][_0x1d5108(0x29a)],0.99*0x615299),this[_0x1d5108(0x242)](),window[_0x1d5108(0x2e6)](_0x1d5108(0x265),this[_0x1d5108(0x265)][_0x1d5108(0x20c)](this),![]),this[_0x1d5108(0x351)]=![],this[_0x1d5108(0x25e)]=![],this[_0x1d5108(0x2ad)]['on'](mars3d__namespace['EventType'][_0x1d5108(0x35b)],this[_0x1d5108(0x1ed)],this),this[_0x1d5108(0x2ad)]['on'](mars3d__namespace[_0x1d5108(0x315)][_0x1d5108(0x31c)],this[_0x1d5108(0x1e7)],this),this['_map']['on'](mars3d__namespace['EventType'][_0x1d5108(0x2cf)],this[_0x1d5108(0x324)],this),this['_map']['on'](mars3d__namespace[_0x1d5108(0x315)]['mouseMove'],this['_onMouseMoveEvent'],this),this[_0x1d5108(0x2de)]&&this[_0x1d5108(0x25a)](this[_0x1d5108(0x2de)]);}},{'key':'_removedHook','value':function _0x1f7a87(){var _0x21aece=_0x12ac7c;window['removeEventListener']('resize',this[_0x21aece(0x265)]),this[_0x21aece(0x2ad)]['off'](mars3d__namespace['EventType'][_0x21aece(0x307)],this[_0x21aece(0x2fc)],this),this[_0x21aece(0x2ad)]['off'](mars3d__namespace['EventType'][_0x21aece(0x35b)],this['_onMapWhellEvent'],this),this[_0x21aece(0x2ad)]['off'](mars3d__namespace[_0x21aece(0x315)][_0x21aece(0x31c)],this[_0x21aece(0x1e7)],this),this[_0x21aece(0x2ad)]['off'](mars3d__namespace[_0x21aece(0x315)][_0x21aece(0x2cf)],this['_onMouseUpEvent'],this),this[_0x21aece(0x2ad)][_0x21aece(0x1e2)](mars3d__namespace['EventType'][_0x21aece(0x25d)],this[_0x21aece(0x28b)],this),this['primitives']['removeAll'](),this['_map'][_0x21aece(0x2b5)][_0x21aece(0x286)][_0x21aece(0x26e)](this[_0x21aece(0x286)]);}},{'key':'resize','value':function _0x2c9ad2(){var _0x2f7cf4=_0x12ac7c;if(!this[_0x2f7cf4(0x2ac)]||!this['particleSystem'])return;this[_0x2f7cf4(0x286)][_0x2f7cf4(0x2ac)]=![],this[_0x2f7cf4(0x286)][_0x2f7cf4(0x2a4)](),this[_0x2f7cf4(0x2ad)][_0x2f7cf4(0x228)](mars3d__namespace[_0x2f7cf4(0x315)]['preRender'],this['_onMap_preRenderEvent'],this);}},{'key':_0x12ac7c(0x2fc),'value':function _0x34b489(_0x3c05c5){var _0x3a8a8d=_0x12ac7c;this[_0x3a8a8d(0x2fa)][_0x3a8a8d(0x219)](this[_0x3a8a8d(0x2b5)][_0x3a8a8d(0x208)]),this[_0x3a8a8d(0x30a)](),this[_0x3a8a8d(0x286)]['show']=!![];}},{'key':_0x12ac7c(0x1ed),'value':function _0x390d04(_0xac5913){var _0xd33b50=_0x12ac7c,_0x4e1910=this;clearTimeout(this[_0xd33b50(0x2f1)]);if(!this['show']||!this[_0xd33b50(0x2fa)])return;this[_0xd33b50(0x286)]['show']=![],this['refreshTimer']=setTimeout(function(){var _0x54d017=_0xd33b50;if(!_0x4e1910[_0x54d017(0x2ac)])return;_0x4e1910['redraw']();},0xc8);}},{'key':_0x12ac7c(0x1e7),'value':function _0x2f7912(_0x20dab7){var _0x493d6d=_0x12ac7c;this[_0x493d6d(0x351)]=!![];}},{'key':_0x12ac7c(0x28b),'value':function _0x30908c(_0xb31b03){var _0x5ce7ed=_0x12ac7c;if(!this[_0x5ce7ed(0x2ac)]||!this[_0x5ce7ed(0x2fa)])return;this['mouse_down']&&(this[_0x5ce7ed(0x286)][_0x5ce7ed(0x2ac)]=![],this[_0x5ce7ed(0x25e)]=!![]);}},{'key':'_onMouseUpEvent','value':function _0x4976e0(_0x261332){var _0x4326ad=_0x12ac7c;if(!this[_0x4326ad(0x2ac)]||!this['particleSystem'])return;this[_0x4326ad(0x351)]&&this[_0x4326ad(0x25e)]&&this[_0x4326ad(0x33e)](),this[_0x4326ad(0x286)][_0x4326ad(0x2ac)]=!![],this[_0x4326ad(0x351)]=![],this['mouse_move']=![];}},{'key':_0x12ac7c(0x33e),'value':function _0x2d0150(){var _0x10b619=_0x12ac7c;if(!this[_0x10b619(0x2ad)]||!this[_0x10b619(0x2ac)])return;this[_0x10b619(0x242)](),this['particleSystem'][_0x10b619(0x2c4)](this[_0x10b619(0x20a)]),this[_0x10b619(0x286)][_0x10b619(0x2ac)]=!![];}},{'key':'setData','value':function _0x3bd0c7(_0x242318){var _0x4c27e4=_0x12ac7c;this[_0x4c27e4(0x2de)]=_0x242318,this['particleSystem']&&this[_0x4c27e4(0x2fa)][_0x4c27e4(0x356)](),this[_0x4c27e4(0x2fa)]=new ParticleSystem(this[_0x4c27e4(0x2b5)][_0x4c27e4(0x208)],_0x242318,this[_0x4c27e4(0x22c)](),this['viewerParameters']),this[_0x4c27e4(0x30a)]();}},{'key':_0x12ac7c(0x310),'value':function _0x2cc841(_0x58873b,_0x3b7ec6){var _0x3829c0=_0x12ac7c;if(_0x58873b)for(var _0x4a1bd0 in _0x58873b){this[_0x4a1bd0]=_0x58873b[_0x4a1bd0];}this[_0x3829c0(0x2fa)]&&this[_0x3829c0(0x2fa)][_0x3829c0(0x2ec)](this[_0x3829c0(0x22c)]());}},{'key':_0x12ac7c(0x22c),'value':function _0x4a88ee(){var _0x3172c3=_0x12ac7c,_0x4d20b9=Math[_0x3172c3(0x255)](Math['sqrt'](this['particlesNumber']));return this[_0x3172c3(0x1fc)]=_0x4d20b9*_0x4d20b9,{'particlesTextureSize':_0x4d20b9,'maxParticles':this[_0x3172c3(0x1fc)],'particleHeight':this[_0x3172c3(0x2e0)],'fadeOpacity':this['fadeOpacity'],'dropRate':this[_0x3172c3(0x2f8)],'dropRateBump':this['dropRateBump'],'speedFactor':this[_0x3172c3(0x27f)],'lineWidth':this[_0x3172c3(0x257)],'colors':this['colors']};}},{'key':'addPrimitives','value':function _0x5c5350(){var _0x43ddb0=_0x12ac7c;this[_0x43ddb0(0x286)][_0x43ddb0(0x273)](this[_0x43ddb0(0x2fa)][_0x43ddb0(0x294)][_0x43ddb0(0x286)][_0x43ddb0(0x2ed)]),this['primitives'][_0x43ddb0(0x273)](this['particleSystem']['particlesComputing'][_0x43ddb0(0x286)][_0x43ddb0(0x237)]),this[_0x43ddb0(0x286)][_0x43ddb0(0x273)](this[_0x43ddb0(0x2fa)][_0x43ddb0(0x294)]['primitives']['updatePosition']),this[_0x43ddb0(0x286)][_0x43ddb0(0x273)](this['particleSystem'][_0x43ddb0(0x294)][_0x43ddb0(0x286)][_0x43ddb0(0x206)]),this[_0x43ddb0(0x286)][_0x43ddb0(0x273)](this[_0x43ddb0(0x2fa)][_0x43ddb0(0x294)][_0x43ddb0(0x286)]['postProcessingSpeed']),this[_0x43ddb0(0x286)][_0x43ddb0(0x273)](this[_0x43ddb0(0x2fa)][_0x43ddb0(0x203)][_0x43ddb0(0x286)][_0x43ddb0(0x33f)]),this[_0x43ddb0(0x286)]['add'](this[_0x43ddb0(0x2fa)]['particlesRendering'][_0x43ddb0(0x286)][_0x43ddb0(0x35d)]),this[_0x43ddb0(0x286)][_0x43ddb0(0x273)](this[_0x43ddb0(0x2fa)][_0x43ddb0(0x203)][_0x43ddb0(0x286)][_0x43ddb0(0x32f)]);}},{'key':'updateViewerParameters','value':function _0x5996cd(){var _0x527328=_0x12ac7c,_0x41b246=this[_0x527328(0x28e)][_0x527328(0x29f)](this[_0x527328(0x2b5)][_0x527328(0x26f)]['ellipsoid']);if(!_0x41b246){var _0xb69a0c=this[_0x527328(0x2ad)][_0x527328(0x33b)]();_0x41b246=Cesium$1['Rectangle'][_0x527328(0x2cb)](_0xb69a0c[_0x527328(0x2db)],_0xb69a0c['ymin'],_0xb69a0c[_0x527328(0x290)],_0xb69a0c[_0x527328(0x2a5)]);}var _0x12026b=Util[_0x527328(0x23a)](_0x41b246);this[_0x527328(0x20a)][_0x527328(0x253)]['x']=_0x12026b[_0x527328(0x216)][_0x527328(0x282)],this[_0x527328(0x20a)]['lonRange']['y']=_0x12026b[_0x527328(0x216)][_0x527328(0x34d)],this[_0x527328(0x20a)]['latRange']['x']=_0x12026b[_0x527328(0x28c)][_0x527328(0x282)],this['viewerParameters'][_0x527328(0x24a)]['y']=_0x12026b['lat'][_0x527328(0x34d)];var _0x43ea6b=this[_0x527328(0x28e)][_0x527328(0x2ce)](this[_0x527328(0x25b)],this[_0x527328(0x2b5)][_0x527328(0x1d9)],this['scene']['drawingBufferHeight']);_0x43ea6b>0x0&&(this[_0x527328(0x20a)]['pixelSize']=_0x43ea6b);}}]),_0x3d6c6a;}(BaseLayer$1);mars3d__namespace[_0x346215(0x353)][_0x346215(0x297)]('wind',WindLayer),mars3d__namespace[_0x346215(0x339)][_0x346215(0x350)]=WindLayer;var CanvasParticle=(function(){function _0x5e28bd(){var _0x346122=_0x334a;_classCallCheck(this,_0x5e28bd),this[_0x346122(0x30f)]=null,this[_0x346122(0x28c)]=null,this[_0x346122(0x338)]=null,this[_0x346122(0x25f)]=null,this[_0x346122(0x321)]=null;}return _createClass(_0x5e28bd,[{'key':'destroy','value':function _0x45f9f7(){for(var _0x4e8b30 in this){delete this[_0x4e8b30];}}}]),_0x5e28bd;}()),CanvasWindField=(function(){var _0x27b3e6=_0x346215;function _0x1fba04(_0x3dbea5){var _0x59bc46=_0x334a;_classCallCheck(this,_0x1fba04),this[_0x59bc46(0x2ec)](_0x3dbea5);}return _createClass(_0x1fba04,[{'key':_0x27b3e6(0x299),'get':function _0x36ce11(){var _0x5b598c=_0x27b3e6;return this[_0x5b598c(0x24d)];},'set':function _0x2b7585(_0x1cc9cd){var _0x149352=_0x27b3e6;this['_speedRate']=(0x64-(_0x1cc9cd>0x63?0x63:_0x1cc9cd))*0x64,this[_0x149352(0x27a)]=[(this[_0x149352(0x290)]-this[_0x149352(0x2db)])/this[_0x149352(0x24d)],(this['ymax']-this[_0x149352(0x1eb)])/this[_0x149352(0x24d)]];}},{'key':_0x27b3e6(0x236),'get':function _0x1d777b(){return this['_maxAge'];},'set':function _0x183b32(_0x59a100){var _0x56b9db=_0x27b3e6;this[_0x56b9db(0x204)]=_0x59a100;}},{'key':_0x27b3e6(0x2ec),'value':function _0x18f632(_0x5d4359){var _0x44ebe2=_0x27b3e6;this[_0x44ebe2(0x31f)]=_0x5d4359,this['maxAge']=_0x5d4359['maxAge']||0x78,this[_0x44ebe2(0x299)]=_0x5d4359[_0x44ebe2(0x299)]||0x32,this['particles']=[];var _0x4b53be=_0x5d4359['particlesNumber']||0x1000;for(var _0x47cb78=0x0;_0x47cb78<_0x4b53be;_0x47cb78++){var _0x1a1f2e=this[_0x44ebe2(0x2ee)](new CanvasParticle());this['particles'][_0x44ebe2(0x2ff)](_0x1a1f2e);}}},{'key':_0x27b3e6(0x2d8),'value':function _0x3cc2bd(_0x106811){var _0x2fc9ca=_0x27b3e6;this[_0x2fc9ca(0x1ec)]=_0x106811[_0x2fc9ca(0x1ec)],this['cols']=_0x106811['cols'],this[_0x2fc9ca(0x2db)]=_0x106811['xmin'],this[_0x2fc9ca(0x290)]=_0x106811[_0x2fc9ca(0x290)],this[_0x2fc9ca(0x1eb)]=_0x106811['ymin'],this[_0x2fc9ca(0x2a5)]=_0x106811[_0x2fc9ca(0x2a5)],this['grid']=[];var _0x2bb0e1=_0x106811['udata'],_0x130624=_0x106811[_0x2fc9ca(0x34e)],_0x5f00c7=![];_0x2bb0e1['length']===this[_0x2fc9ca(0x1ec)]&&_0x2bb0e1[0x0][_0x2fc9ca(0x2c2)]===this[_0x2fc9ca(0x1f8)]&&(_0x5f00c7=!![]);var _0x2c4488=0x0,_0x241198=null,_0x1425c3=null;for(var _0x518397=0x0;_0x518397<this[_0x2fc9ca(0x1ec)];_0x518397++){_0x241198=[];for(var _0x12e512=0x0;_0x12e512<this['cols'];_0x12e512++,_0x2c4488++){_0x5f00c7?_0x1425c3=this[_0x2fc9ca(0x322)](_0x2bb0e1[_0x518397][_0x12e512],_0x130624[_0x518397][_0x12e512]):_0x1425c3=this['_calcUV'](_0x2bb0e1[_0x2c4488],_0x130624[_0x2c4488]),_0x241198[_0x2fc9ca(0x2ff)](_0x1425c3);}this[_0x2fc9ca(0x2e5)][_0x2fc9ca(0x2ff)](_0x241198);}this[_0x2fc9ca(0x31f)][_0x2fc9ca(0x35f)]&&this[_0x2fc9ca(0x2e5)][_0x2fc9ca(0x23c)]();}},{'key':_0x27b3e6(0x2aa),'value':function _0x56ead2(){var _0x245000=_0x27b3e6;delete this[_0x245000(0x1ec)],delete this[_0x245000(0x1f8)],delete this[_0x245000(0x2db)],delete this[_0x245000(0x290)],delete this[_0x245000(0x1eb)],delete this['ymax'],delete this[_0x245000(0x2e5)],delete this['particles'];}},{'key':_0x27b3e6(0x2dc),'value':function _0x4aef3a(_0x596b61,_0x3eec77){var _0x38ab18=_0x27b3e6,_0x302904=(_0x596b61-this[_0x38ab18(0x2db)])/(this[_0x38ab18(0x290)]-this[_0x38ab18(0x2db)])*(this[_0x38ab18(0x1f8)]-0x1),_0x5b41d5=(this[_0x38ab18(0x2a5)]-_0x3eec77)/(this['ymax']-this[_0x38ab18(0x1eb)])*(this['rows']-0x1);return[_0x302904,_0x5b41d5];}},{'key':'getUVByXY','value':function _0x19a818(_0x5c6154,_0x4ed423){var _0x3c1361=_0x27b3e6;if(_0x5c6154<0x0||_0x5c6154>=this['cols']||_0x4ed423>=this['rows'])return[0x0,0x0,0x0];var _0x456689=Math[_0x3c1361(0x2f9)](_0x5c6154),_0x2f227e=Math[_0x3c1361(0x2f9)](_0x4ed423);if(_0x456689===_0x5c6154&&_0x2f227e===_0x4ed423)return this[_0x3c1361(0x2e5)][_0x4ed423][_0x5c6154];var _0x1217b7=_0x456689+0x1,_0xc276ea=_0x2f227e+0x1,_0x2d4f0b=this['getUVByXY'](_0x456689,_0x2f227e),_0x328016=this[_0x3c1361(0x2c6)](_0x1217b7,_0x2f227e),_0x547607=this['getUVByXY'](_0x456689,_0xc276ea),_0x85bf8a=this[_0x3c1361(0x2c6)](_0x1217b7,_0xc276ea),_0x1901d5=null;try{_0x1901d5=this[_0x3c1361(0x2cc)](_0x5c6154-_0x456689,_0x4ed423-_0x2f227e,_0x2d4f0b,_0x328016,_0x547607,_0x85bf8a);}catch(_0x12b586){console[_0x3c1361(0x305)](_0x5c6154,_0x4ed423);}return _0x1901d5;}},{'key':_0x27b3e6(0x2cc),'value':function _0x4621a5(_0x534833,_0x53810f,_0x2e8cf0,_0x15ffea,_0x20d3ae,_0x2ee6e9){var _0x144030=_0x27b3e6,_0x6f2b9c=0x1-_0x534833,_0x296ac6=0x1-_0x53810f,_0x316817=_0x6f2b9c*_0x296ac6,_0xc600a3=_0x534833*_0x296ac6,_0x399a64=_0x6f2b9c*_0x53810f,_0xfdc2e7=_0x534833*_0x53810f,_0x3b1e43=_0x2e8cf0[0x0]*_0x316817+_0x15ffea[0x0]*_0xc600a3+_0x20d3ae[0x0]*_0x399a64+_0x2ee6e9[0x0]*_0xfdc2e7,_0x4815f3=_0x2e8cf0[0x1]*_0x316817+_0x15ffea[0x1]*_0xc600a3+_0x20d3ae[0x1]*_0x399a64+_0x2ee6e9[0x1]*_0xfdc2e7;return this[_0x144030(0x322)](_0x3b1e43,_0x4815f3);}},{'key':'_calcUV','value':function _0x4511e0(_0x8576a8,_0xadd0de){var _0x715d81=_0x27b3e6;return[+_0x8576a8,+_0xadd0de,Math[_0x715d81(0x2e7)](_0x8576a8*_0x8576a8+_0xadd0de*_0xadd0de)];}},{'key':'getUVByPoint','value':function _0x21aaec(_0x2fd0ff,_0x2f3cf8){var _0x3fedf8=_0x27b3e6;if(!this[_0x3fedf8(0x334)](_0x2fd0ff,_0x2f3cf8))return null;var _0x415397=this['toGridXY'](_0x2fd0ff,_0x2f3cf8),_0x20c299=this[_0x3fedf8(0x2c6)](_0x415397[0x0],_0x415397[0x1]);return _0x20c299;}},{'key':_0x27b3e6(0x334),'value':function _0x34d804(_0x14a670,_0x2ab26d){var _0x58092b=_0x27b3e6;return _0x14a670>=this[_0x58092b(0x2db)]&&_0x14a670<=this[_0x58092b(0x290)]&&_0x2ab26d>=this[_0x58092b(0x1eb)]&&_0x2ab26d<=this[_0x58092b(0x2a5)]?!![]:![];}},{'key':_0x27b3e6(0x2fe),'value':function _0x41eb9b(){var _0x126fae=_0x27b3e6,_0x5223cc=fRandomByfloat(this[_0x126fae(0x2db)],this['xmax']),_0x3fbcc0=fRandomByfloat(this['ymin'],this[_0x126fae(0x2a5)]);return{'lat':_0x3fbcc0,'lng':_0x5223cc};}},{'key':_0x27b3e6(0x272),'value':function _0x417b4a(){var _0x20d8c7=_0x27b3e6,_0x5cd6fe,_0x1a1381,_0x3c87c0;for(var _0x6f05a=0x0,_0x28004b=this[_0x20d8c7(0x354)]['length'];_0x6f05a<_0x28004b;_0x6f05a++){var _0x5c405e=this['particles'][_0x6f05a];_0x5c405e[_0x20d8c7(0x321)]<=0x0&&(_0x5c405e=this[_0x20d8c7(0x2ee)](_0x5c405e));if(_0x5c405e[_0x20d8c7(0x321)]>0x0){var _0x6d7ca9=_0x5c405e[_0x20d8c7(0x338)],_0x1608bb=_0x5c405e[_0x20d8c7(0x25f)];_0x3c87c0=this[_0x20d8c7(0x270)](_0x6d7ca9,_0x1608bb),_0x3c87c0?(_0x5cd6fe=_0x6d7ca9+this[_0x20d8c7(0x27a)][0x0]*_0x3c87c0[0x0],_0x1a1381=_0x1608bb+this[_0x20d8c7(0x27a)][0x1]*_0x3c87c0[0x1],_0x5c405e[_0x20d8c7(0x30f)]=_0x6d7ca9,_0x5c405e[_0x20d8c7(0x28c)]=_0x1608bb,_0x5c405e[_0x20d8c7(0x338)]=_0x5cd6fe,_0x5c405e[_0x20d8c7(0x25f)]=_0x1a1381,_0x5c405e[_0x20d8c7(0x321)]--):_0x5c405e[_0x20d8c7(0x321)]=0x0;}}return this[_0x20d8c7(0x354)];}},{'key':_0x27b3e6(0x2ee),'value':function _0x1ea7a5(_0x418aac){var _0x1d9aa7=_0x27b3e6,_0x1754a3,_0x13084c;for(var _0x2052f4=0x0;_0x2052f4<0x1e;_0x2052f4++){_0x1754a3=this[_0x1d9aa7(0x2fe)](),_0x13084c=this[_0x1d9aa7(0x270)](_0x1754a3['lng'],_0x1754a3[_0x1d9aa7(0x28c)]);if(_0x13084c&&_0x13084c[0x2]>0x0)break;}if(!_0x13084c)return _0x418aac;var _0x4d3783=_0x1754a3[_0x1d9aa7(0x30f)]+this[_0x1d9aa7(0x27a)][0x0]*_0x13084c[0x0],_0xb563b4=_0x1754a3[_0x1d9aa7(0x28c)]+this[_0x1d9aa7(0x27a)][0x1]*_0x13084c[0x1];return _0x418aac[_0x1d9aa7(0x30f)]=_0x1754a3[_0x1d9aa7(0x30f)],_0x418aac[_0x1d9aa7(0x28c)]=_0x1754a3[_0x1d9aa7(0x28c)],_0x418aac['tlng']=_0x4d3783,_0x418aac[_0x1d9aa7(0x25f)]=_0xb563b4,_0x418aac[_0x1d9aa7(0x321)]=Math['round'](Math['random']()*this['maxAge']),_0x418aac;}},{'key':_0x27b3e6(0x356),'value':function _0x85b323(){for(var _0x3f4e55 in this){delete this[_0x3f4e55];}}}]),_0x1fba04;}());function fRandomByfloat(_0x5e7bcf,_0x28ef57){var _0x2878f3=_0x346215;return _0x5e7bcf+Math[_0x2878f3(0x32b)]()*(_0x28ef57-_0x5e7bcf);}var Cesium=mars3d__namespace[_0x346215(0x23e)],BaseLayer=mars3d__namespace[_0x346215(0x339)][_0x346215(0x22d)],CanvasWindLayer=function(_0x46b224){var _0x31b766=_0x346215;_inherits(_0x330e24,_0x46b224);var _0x51a66d=_createSuper(_0x330e24);function _0x330e24(){var _0x36c2e9=_0x334a,_0x200580,_0x235e14=arguments['length']>0x0&&arguments[0x0]!==undefined?arguments[0x0]:{};return _classCallCheck(this,_0x330e24),_0x200580=_0x51a66d[_0x36c2e9(0x32a)](this,_0x235e14),_0x200580['_setOptionsHook'](_0x235e14),_0x200580[_0x36c2e9(0x320)]=null,_0x200580;}return _createClass(_0x330e24,[{'key':_0x31b766(0x310),'value':function _0x30c473(_0x3d6e79,_0x5b78e1){var _0x20b4ed=_0x31b766,_0x3672c5,_0x505aa4,_0x27622f;this[_0x20b4ed(0x32d)]=0x3e8/(_0x3d6e79['frameRate']||0xa),this['_pointerEvents']=(_0x3672c5=this[_0x20b4ed(0x31f)][_0x20b4ed(0x266)])!==null&&_0x3672c5!==void 0x0?_0x3672c5:![],this[_0x20b4ed(0x2d1)]=_0x3d6e79[_0x20b4ed(0x2d1)]||_0x20b4ed(0x325),this[_0x20b4ed(0x257)]=_0x3d6e79[_0x20b4ed(0x257)]||0x1,this[_0x20b4ed(0x2e0)]=(_0x505aa4=_0x3d6e79[_0x20b4ed(0x2e0)])!==null&&_0x505aa4!==void 0x0?_0x505aa4:0x0,this[_0x20b4ed(0x35f)]=(_0x27622f=_0x3d6e79['reverseY'])!==null&&_0x27622f!==void 0x0?_0x27622f:![],this['windField']&&this[_0x20b4ed(0x223)][_0x20b4ed(0x2ec)](_0x3d6e79);}},{'key':'layer','get':function _0x1f755c(){var _0x2b21a4=_0x31b766;return this[_0x2b21a4(0x320)];}},{'key':_0x31b766(0x1e4),'get':function _0x5cc930(){var _0xe01d9e=_0x31b766;return this[_0xe01d9e(0x2ad)]['scene'][_0xe01d9e(0x320)][_0xe01d9e(0x29d)];}},{'key':'canvasHeight','get':function _0x2fec1b(){var _0x7951b6=_0x31b766;return this['_map']['scene'][_0x7951b6(0x320)]['clientHeight'];}},{'key':_0x31b766(0x266),'get':function _0x570229(){var _0x1b0f6c=_0x31b766;return this[_0x1b0f6c(0x231)];},'set':function _0x1e59ae(_0x52f41f){var _0x3007a7=_0x31b766;this['_pointerEvents']=_0x52f41f;if(!this[_0x3007a7(0x320)])return;_0x52f41f?this[_0x3007a7(0x320)][_0x3007a7(0x2fb)][_0x3007a7(0x349)]='all':this['canvas'][_0x3007a7(0x2fb)][_0x3007a7(0x349)]=_0x3007a7(0x254);}},{'key':_0x31b766(0x1fc),'get':function _0x34d0d2(){var _0x2d0e48=_0x31b766;return this['options'][_0x2d0e48(0x1fc)];},'set':function _0x543674(_0x60c5b){var _0x38ee34=_0x31b766,_0x3900a8=this;this[_0x38ee34(0x31f)][_0x38ee34(0x1fc)]=_0x60c5b,clearTimeout(this[_0x38ee34(0x2e4)]),this['_canrefresh']=setTimeout(function(){var _0x450c99=_0x38ee34;_0x3900a8[_0x450c99(0x33e)]();},0x1f4);}},{'key':'speedRate','get':function _0x28f398(){var _0x48aa93=_0x31b766;return this[_0x48aa93(0x31f)]['speedRate'];},'set':function _0x119dce(_0x15dae3){var _0x12c963=_0x31b766;this[_0x12c963(0x31f)][_0x12c963(0x299)]=_0x15dae3,this[_0x12c963(0x223)]&&(this['windField'][_0x12c963(0x299)]=_0x15dae3);}},{'key':_0x31b766(0x236),'get':function _0x3202f2(){var _0x353294=_0x31b766;return this['options'][_0x353294(0x236)];},'set':function _0x47caae(_0x25049b){var _0x28e5a6=_0x31b766;this[_0x28e5a6(0x31f)]['maxAge']=_0x25049b,this[_0x28e5a6(0x223)]&&(this[_0x28e5a6(0x223)][_0x28e5a6(0x236)]=_0x25049b);}},{'key':'data','get':function _0x564b96(){var _0x4a953a=_0x31b766;return this[_0x4a953a(0x26c)];},'set':function _0x1ef112(_0x3f41ec){var _0x34eba0=_0x31b766;this[_0x34eba0(0x25a)](_0x3f41ec);}},{'key':_0x31b766(0x214),'value':function _0x402868(_0x28789b){var _0x2e946f=_0x31b766;_0x28789b?this[_0x2e946f(0x20f)]():(this[_0x2e946f(0x26c)]&&(this[_0x2e946f(0x31f)][_0x2e946f(0x2ca)]=this[_0x2e946f(0x26c)]),this[_0x2e946f(0x2a3)]());}},{'key':_0x31b766(0x26d),'value':function _0x11d3d8(){var _0x281a91=_0x31b766;this['options']['worker']?this[_0x281a91(0x1dc)]():this[_0x281a91(0x223)]=new CanvasWindField(this[_0x281a91(0x31f)]);}},{'key':_0x31b766(0x20f),'value':function _0x20183f(){var _0x57773a=_0x31b766;this['canvas']=this[_0x57773a(0x317)](),this[_0x57773a(0x348)]=this['canvas']['getContext']('2d',{'willReadFrequently':!![]}),this[_0x57773a(0x2d6)](),this['options'][_0x57773a(0x2ca)]&&this['setData'](this['options']['data']);}},{'key':_0x31b766(0x2a3),'value':function _0x53ea9b(){var _0x40a80f=_0x31b766;this[_0x40a80f(0x2aa)](),this[_0x40a80f(0x225)](),this['canvas']&&(this[_0x40a80f(0x2ad)][_0x40a80f(0x2ef)][_0x40a80f(0x33d)](this[_0x40a80f(0x320)]),delete this['canvas']);}},{'key':_0x31b766(0x317),'value':function _0x8a53b9(){var _0x32227a=_0x31b766,_0xdbd038=document[_0x32227a(0x291)](_0x32227a(0x320));_0xdbd038[_0x32227a(0x2fb)][_0x32227a(0x2fd)]=_0x32227a(0x2ba),_0xdbd038[_0x32227a(0x2fb)]['top']='0px',_0xdbd038[_0x32227a(0x2fb)][_0x32227a(0x331)]=_0x32227a(0x2cd),_0xdbd038['style'][_0x32227a(0x227)]=_0x32227a(0x1fa),_0xdbd038[_0x32227a(0x2fb)][_0x32227a(0x217)]=_0x32227a(0x1fa),_0xdbd038[_0x32227a(0x2fb)]['pointerEvents']=this['_pointerEvents']?_0x32227a(0x1f5):'none',_0xdbd038['style']['zIndex']=0xa,_0xdbd038[_0x32227a(0x293)]('id','canvasWindy'),_0xdbd038[_0x32227a(0x293)]('class','canvasWindy'),this[_0x32227a(0x2ad)][_0x32227a(0x2ef)][_0x32227a(0x22b)](_0xdbd038);var _0x25ed7b=this[_0x32227a(0x2ad)][_0x32227a(0x2b5)];return _0xdbd038['width']=_0x25ed7b[_0x32227a(0x320)][_0x32227a(0x29d)],_0xdbd038['height']=_0x25ed7b[_0x32227a(0x320)][_0x32227a(0x20e)],_0xdbd038;}},{'key':_0x31b766(0x265),'value':function _0x229c23(){var _0x56a8d9=_0x31b766;this[_0x56a8d9(0x320)]&&(this[_0x56a8d9(0x320)][_0x56a8d9(0x227)]=this[_0x56a8d9(0x1e4)],this[_0x56a8d9(0x320)][_0x56a8d9(0x217)]=this[_0x56a8d9(0x262)]);}},{'key':_0x31b766(0x2d6),'value':function _0x479402(){var _0x3c3c48=_0x31b766,_0x4ca774=this,_0x11b67c=Date[_0x3c3c48(0x330)]();(function _0x1faf11(){var _0x1497f2=_0x3c3c48;_0x4ca774[_0x1497f2(0x229)]=window[_0x1497f2(0x31e)](_0x1faf11);if(_0x4ca774[_0x1497f2(0x2ac)]&&_0x4ca774[_0x1497f2(0x223)]){var _0x2bcb8f=Date[_0x1497f2(0x330)](),_0x50b819=_0x2bcb8f-_0x11b67c;_0x50b819>_0x4ca774['frameTime']&&(_0x11b67c=_0x2bcb8f-_0x50b819%_0x4ca774['frameTime'],_0x4ca774[_0x1497f2(0x21d)]());}}(),window[_0x3c3c48(0x2e6)](_0x3c3c48(0x265),this[_0x3c3c48(0x265)][_0x3c3c48(0x20c)](this),![]),this[_0x3c3c48(0x351)]=![],this[_0x3c3c48(0x25e)]=![],this[_0x3c3c48(0x31f)][_0x3c3c48(0x2c7)]&&(this[_0x3c3c48(0x2ad)]['on'](mars3d__namespace[_0x3c3c48(0x315)][_0x3c3c48(0x35b)],this[_0x3c3c48(0x1ed)],this),this[_0x3c3c48(0x2ad)]['on'](mars3d__namespace['EventType'][_0x3c3c48(0x31c)],this[_0x3c3c48(0x1e7)],this),this[_0x3c3c48(0x2ad)]['on'](mars3d__namespace[_0x3c3c48(0x315)]['mouseUp'],this[_0x3c3c48(0x324)],this)));}},{'key':'unbindEvent','value':function _0x20ac09(){var _0x4345e9=_0x31b766;window[_0x4345e9(0x2dd)](this[_0x4345e9(0x229)]),delete this[_0x4345e9(0x229)],window[_0x4345e9(0x30c)](_0x4345e9(0x265),this[_0x4345e9(0x265)]),this[_0x4345e9(0x31f)][_0x4345e9(0x2c7)]&&(this[_0x4345e9(0x2ad)]['off'](mars3d__namespace[_0x4345e9(0x315)]['wheel'],this[_0x4345e9(0x1ed)],this),this[_0x4345e9(0x2ad)][_0x4345e9(0x1e2)](mars3d__namespace[_0x4345e9(0x315)][_0x4345e9(0x31c)],this[_0x4345e9(0x1e7)],this),this['_map'][_0x4345e9(0x1e2)](mars3d__namespace[_0x4345e9(0x315)][_0x4345e9(0x2cf)],this[_0x4345e9(0x324)],this),this[_0x4345e9(0x2ad)][_0x4345e9(0x1e2)](mars3d__namespace[_0x4345e9(0x315)][_0x4345e9(0x25d)],this[_0x4345e9(0x28b)],this));}},{'key':_0x31b766(0x1ed),'value':function _0x23e766(_0x43e10e){var _0x90871c=_0x31b766,_0x492063=this;clearTimeout(this['refreshTimer']);if(!this[_0x90871c(0x2ac)]||!this[_0x90871c(0x320)])return;this[_0x90871c(0x320)][_0x90871c(0x2fb)][_0x90871c(0x21c)]='hidden',this[_0x90871c(0x2f1)]=setTimeout(function(){var _0x3e097e=_0x90871c;if(!_0x492063[_0x3e097e(0x2ac)])return;_0x492063[_0x3e097e(0x33e)](),_0x492063[_0x3e097e(0x320)][_0x3e097e(0x2fb)]['visibility']=_0x3e097e(0x2df);},0xc8);}},{'key':_0x31b766(0x1e7),'value':function _0x4f5f75(_0x413257){var _0x16bd9d=_0x31b766;this['mouse_down']=!![],this[_0x16bd9d(0x2ad)][_0x16bd9d(0x1e2)](mars3d__namespace[_0x16bd9d(0x315)][_0x16bd9d(0x25d)],this[_0x16bd9d(0x28b)],this),this[_0x16bd9d(0x2ad)]['on'](mars3d__namespace[_0x16bd9d(0x315)][_0x16bd9d(0x25d)],this[_0x16bd9d(0x28b)],this);}},{'key':_0x31b766(0x28b),'value':function _0x373c3e(_0x2e1c1e){var _0x8a383d=_0x31b766;if(!this[_0x8a383d(0x2ac)]||!this['canvas'])return;this[_0x8a383d(0x351)]&&(this[_0x8a383d(0x320)][_0x8a383d(0x2fb)]['visibility']='hidden',this[_0x8a383d(0x25e)]=!![]);}},{'key':'_onMouseUpEvent','value':function _0x137af6(_0x45896e){var _0x19994d=_0x31b766;if(!this[_0x19994d(0x2ac)]||!this[_0x19994d(0x320)])return;this['_map'][_0x19994d(0x1e2)](mars3d__namespace[_0x19994d(0x315)][_0x19994d(0x25d)],this[_0x19994d(0x28b)],this),this['mouse_down']&&this[_0x19994d(0x25e)]&&this['redraw'](),this[_0x19994d(0x320)][_0x19994d(0x2fb)]['visibility']=_0x19994d(0x2df),this[_0x19994d(0x351)]=![],this['mouse_move']=![];}},{'key':'setData','value':function _0x428b4c(_0x1bb88d){var _0x5c24ee=_0x31b766;this['clear'](),this[_0x5c24ee(0x26c)]=_0x1bb88d,this[_0x5c24ee(0x223)][_0x5c24ee(0x2d8)](_0x1bb88d),this[_0x5c24ee(0x33e)]();}},{'key':_0x31b766(0x33e),'value':function _0x222b78(){var _0x3a351c=_0x31b766;if(!this[_0x3a351c(0x2ac)])return;this[_0x3a351c(0x223)][_0x3a351c(0x2ec)](this[_0x3a351c(0x31f)]),this[_0x3a351c(0x21d)]();}},{'key':'update','value':function _0x50cae3(){var _0x5aa7ad=_0x31b766;if(this[_0x5aa7ad(0x2b4)])return;this['_updateIng']=!![];if(this[_0x5aa7ad(0x1fe)])this['windField'][_0x5aa7ad(0x21d)]();else{var _0x550614=this[_0x5aa7ad(0x223)][_0x5aa7ad(0x272)]();this[_0x5aa7ad(0x264)](_0x550614);}this[_0x5aa7ad(0x2b4)]=![];}},{'key':_0x31b766(0x264),'value':function _0x4fcfd9(_0x1bac7d){var _0x273435=_0x31b766;this['canvasContext'][_0x273435(0x205)]=_0x273435(0x1fb),this[_0x273435(0x348)]['fillRect'](0x0,0x0,this[_0x273435(0x1e4)],this[_0x273435(0x262)]),this[_0x273435(0x348)]['globalCompositeOperation']='lighter',this['canvasContext'][_0x273435(0x28f)]=0.9,this[_0x273435(0x348)][_0x273435(0x306)](),this[_0x273435(0x348)][_0x273435(0x257)]=this[_0x273435(0x257)],this['canvasContext'][_0x273435(0x226)]=this['color'];var _0x51314a=this['_map']['scene']['mode']!==Cesium[_0x273435(0x342)]['SCENE3D'];for(var _0x59a3a7=0x0,_0x37640c=_0x1bac7d[_0x273435(0x2c2)];_0x59a3a7<_0x37640c;_0x59a3a7++){var _0x3a2951=_0x1bac7d[_0x59a3a7],_0x5b27f6=this[_0x273435(0x27e)](_0x3a2951['lng'],_0x3a2951[_0x273435(0x28c)],_0x3a2951),_0x5a5ec2=this[_0x273435(0x27e)](_0x3a2951[_0x273435(0x338)],_0x3a2951['tlat'],_0x3a2951);if(!_0x5b27f6||!_0x5a5ec2)continue;if(_0x51314a&&Math[_0x273435(0x259)](_0x5b27f6[0x0]-_0x5a5ec2[0x0])>=this[_0x273435(0x1e4)])continue;this['canvasContext'][_0x273435(0x346)](_0x5b27f6[0x0],_0x5b27f6[0x1]),this[_0x273435(0x348)]['lineTo'](_0x5a5ec2[0x0],_0x5a5ec2[0x1]);}this['canvasContext'][_0x273435(0x319)]();}},{'key':_0x31b766(0x27e),'value':function _0x4e4a69(_0x5cc5a9,_0x466494,_0x2056d9){var _0x48723a=_0x31b766,_0x1e733f=Cesium[_0x48723a(0x268)][_0x48723a(0x2cb)](_0x5cc5a9,_0x466494,this[_0x48723a(0x2e0)]),_0x2ef30b=this[_0x48723a(0x2ad)][_0x48723a(0x2b5)];if(_0x2ef30b[_0x48723a(0x2e9)]===Cesium['SceneMode']['SCENE3D']){var _0x3456b2=new Cesium[(_0x48723a(0x335))](_0x2ef30b[_0x48723a(0x26f)][_0x48723a(0x2c1)],_0x2ef30b[_0x48723a(0x28e)][_0x48723a(0x2bf)]),_0x4a646e=_0x3456b2[_0x48723a(0x24c)](_0x1e733f);if(!_0x4a646e)return _0x2056d9[_0x48723a(0x321)]=0x0,null;}var _0x309516=Cesium[_0x48723a(0x244)][_0x48723a(0x2a6)](this['_map'][_0x48723a(0x2b5)],_0x1e733f);return _0x309516?[_0x309516['x'],_0x309516['y']]:null;}},{'key':_0x31b766(0x2aa),'value':function _0x1207c8(){var _0x30c005=_0x31b766;this[_0x30c005(0x223)][_0x30c005(0x2aa)](),delete this[_0x30c005(0x26c)];}},{'key':_0x31b766(0x1dc),'value':function _0x3a3e93(){var _0x1efe68=_0x31b766,_0x56a5ab=this;this[_0x1efe68(0x1fe)]=new Worker(this['options'][_0x1efe68(0x1fe)]),this[_0x1efe68(0x1fe)][_0x1efe68(0x2b8)]=function(_0x31b5c5){var _0x29e703=_0x1efe68;_0x56a5ab[_0x29e703(0x264)](_0x31b5c5[_0x29e703(0x2ca)]['particles']),_0x56a5ab[_0x29e703(0x2e1)]=![];},this[_0x1efe68(0x223)]={'init':function _0xeeb3ef(_0x1cc009){var _0x1b7bf4=_0x1efe68;_0x56a5ab['worker']['postMessage']({'type':_0x1b7bf4(0x2a0),'options':_0x1cc009});},'setOptions':function _0x492d0b(_0x5f42b5){var _0x438da0=_0x1efe68;_0x56a5ab[_0x438da0(0x1fe)]['postMessage']({'type':_0x438da0(0x2ec),'options':_0x5f42b5});},'setDate':function _0x495420(_0x2aed18){var _0x156f62=_0x1efe68;_0x56a5ab[_0x156f62(0x1fe)][_0x156f62(0x2d3)]({'type':_0x156f62(0x2d8),'data':_0x2aed18});},'update':function _0x13577a(){var _0x1ca001=_0x1efe68;if(_0x56a5ab[_0x1ca001(0x2e1)])return;_0x56a5ab['_updateIng2']=!![],_0x56a5ab[_0x1ca001(0x1fe)]['postMessage']({'type':_0x1ca001(0x21d)});},'clear':function _0x61cd93(){var _0x53cd0f=_0x1efe68;_0x56a5ab['worker'][_0x53cd0f(0x2d3)]({'type':'clear'});}},this[_0x1efe68(0x223)][_0x1efe68(0x2a0)](this[_0x1efe68(0x31f)]);}}]),_0x330e24;}(BaseLayer);mars3d__namespace[_0x346215(0x353)][_0x346215(0x297)](_0x346215(0x327),CanvasWindLayer),mars3d__namespace[_0x346215(0x339)][_0x346215(0x210)]=CanvasWindLayer,mars3d__namespace[_0x346215(0x246)]=CanvasWindField,mars3d__namespace['WindUtil']=WindUtil,exports[_0x346215(0x246)]=CanvasWindField,exports[_0x346215(0x210)]=CanvasWindLayer,exports[_0x346215(0x350)]=WindLayer,exports[_0x346215(0x295)]=WindUtil,Object['defineProperty'](exports,'__esModule',{'value':!![]});
|
|
15
15
|
}));
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "mars3d-wind",
|
|
3
|
-
"version": "3.4.
|
|
3
|
+
"version": "3.4.16",
|
|
4
4
|
"description": "Mars3D平台插件,支持气象 风向图 功能插件",
|
|
5
5
|
"main": "dist/mars3d-wind.js",
|
|
6
6
|
"files": [
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
],
|
|
9
9
|
"dependencies": {},
|
|
10
10
|
"devDependencies": {
|
|
11
|
-
"mars3d": "~3.4.
|
|
11
|
+
"mars3d": "~3.4.16"
|
|
12
12
|
},
|
|
13
13
|
"scripts": {
|
|
14
14
|
"lint": "eslint ./src/**/*.{js,ts} --fix"
|