mars3d-wind 3.4.13 → 3.4.15
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/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-
|
|
4
|
+
* 版本信息:v3.4.15
|
|
5
|
+
* 编译日期:2022-12-05 19:32:27
|
|
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 _0x351187=_0x260e;(function(_0x531f5f,_0x4809f0){var _0x5ca674=_0x260e,_0x2a4226=_0x531f5f();while(!![]){try{var _0x5cc78b=-parseInt(_0x5ca674(0x25a))/0x1+parseInt(_0x5ca674(0x1a9))/0x2*(-parseInt(_0x5ca674(0x194))/0x3)+parseInt(_0x5ca674(0x1fd))/0x4*(parseInt(_0x5ca674(0x178))/0x5)+-parseInt(_0x5ca674(0x1ec))/0x6*(-parseInt(_0x5ca674(0x204))/0x7)+-parseInt(_0x5ca674(0x1bf))/0x8*(-parseInt(_0x5ca674(0x1a4))/0x9)+parseInt(_0x5ca674(0x1bb))/0xa*(-parseInt(_0x5ca674(0x250))/0xb)+-parseInt(_0x5ca674(0x1a1))/0xc;if(_0x5cc78b===_0x4809f0)break;else _0x2a4226['push'](_0x2a4226['shift']());}catch(_0x1f8795){_0x2a4226['push'](_0x2a4226['shift']());}}}(_0x1ea1,0x1f494));function _interopNamespace(_0x437e6d){var _0x2fd691=_0x260e;if(_0x437e6d&&_0x437e6d[_0x2fd691(0x240)])return _0x437e6d;var _0xd75941=Object[_0x2fd691(0x24f)](null);return _0x437e6d&&Object[_0x2fd691(0x2a0)](_0x437e6d)[_0x2fd691(0x191)](function(_0x40cdc3){var _0x5ba06f=_0x2fd691;if(_0x40cdc3!==_0x5ba06f(0x269)){var _0x1bec92=Object[_0x5ba06f(0x2c4)](_0x437e6d,_0x40cdc3);Object[_0x5ba06f(0x23a)](_0xd75941,_0x40cdc3,_0x1bec92['get']?_0x1bec92:{'enumerable':!![],'get':function(){return _0x437e6d[_0x40cdc3];}});}}),_0xd75941[_0x2fd691(0x269)]=_0x437e6d,_0xd75941;}var mars3d__namespace=_interopNamespace(mars3d),Cesium$7=mars3d__namespace[_0x351187(0x2ca)];function getU(_0x25efec,_0x744ec5){var _0x41c649=_0x351187,_0x458379=_0x25efec*Math[_0x41c649(0x292)](Cesium$7[_0x41c649(0x164)][_0x41c649(0x1ae)](_0x744ec5));return _0x458379;}function getV(_0x1a4b44,_0x39c897){var _0x2ec751=_0x351187,_0x126ebb=_0x1a4b44*Math[_0x2ec751(0x15f)](Cesium$7[_0x2ec751(0x164)][_0x2ec751(0x1ae)](_0x39c897));return _0x126ebb;}function getSpeed(_0x4817e4,_0x49154d){var _0x6cea2a=_0x351187,_0x50b9a9=Math[_0x6cea2a(0x264)](Math[_0x6cea2a(0x26e)](_0x4817e4,0x2)+Math[_0x6cea2a(0x26e)](_0x49154d,0x2));return _0x50b9a9;}function getDirection(_0x5bfddc,_0x3084cd){var _0x320085=_0x351187,_0x397158=Cesium$7[_0x320085(0x164)][_0x320085(0x1bd)](Math['atan2'](_0x3084cd,_0x5bfddc));return _0x397158+=_0x397158<0x0?0x168:0x0,_0x397158;}var WindUtil={'__proto__':null,'getU':getU,'getV':getV,'getSpeed':getSpeed,'getDirection':getDirection};function ownKeys(_0x28edc2,_0x4a5ca1){var _0x15286d=_0x351187,_0x14032e=Object['keys'](_0x28edc2);if(Object[_0x15286d(0x29f)]){var _0x227338=Object[_0x15286d(0x29f)](_0x28edc2);_0x4a5ca1&&(_0x227338=_0x227338['filter'](function(_0x56801e){var _0xd33861=_0x15286d;return Object[_0xd33861(0x2c4)](_0x28edc2,_0x56801e)[_0xd33861(0x19c)];})),_0x14032e[_0x15286d(0x188)][_0x15286d(0x217)](_0x14032e,_0x227338);}return _0x14032e;}function _objectSpread2(_0x2a88b4){var _0x2d0101=_0x351187;for(var _0x27a827=0x1;_0x27a827<arguments[_0x2d0101(0x1fa)];_0x27a827++){var _0x1c45d6=null!=arguments[_0x27a827]?arguments[_0x27a827]:{};_0x27a827%0x2?ownKeys(Object(_0x1c45d6),!0x0)[_0x2d0101(0x191)](function(_0x568713){_defineProperty(_0x2a88b4,_0x568713,_0x1c45d6[_0x568713]);}):Object[_0x2d0101(0x25d)]?Object['defineProperties'](_0x2a88b4,Object[_0x2d0101(0x25d)](_0x1c45d6)):ownKeys(Object(_0x1c45d6))[_0x2d0101(0x191)](function(_0x11506d){var _0x3064db=_0x2d0101;Object[_0x3064db(0x23a)](_0x2a88b4,_0x11506d,Object['getOwnPropertyDescriptor'](_0x1c45d6,_0x11506d));});}return _0x2a88b4;}function _classCallCheck(_0x2d069d,_0x2ddcd0){if(!(_0x2d069d instanceof _0x2ddcd0))throw new TypeError('Cannot\x20call\x20a\x20class\x20as\x20a\x20function');}function _defineProperties(_0x10518b,_0xe08586){var _0x14d0f7=_0x351187;for(var _0x120a57=0x0;_0x120a57<_0xe08586[_0x14d0f7(0x1fa)];_0x120a57++){var _0x325b72=_0xe08586[_0x120a57];_0x325b72['enumerable']=_0x325b72[_0x14d0f7(0x19c)]||![],_0x325b72[_0x14d0f7(0x1ba)]=!![];if(_0x14d0f7(0x24e)in _0x325b72)_0x325b72[_0x14d0f7(0x168)]=!![];Object[_0x14d0f7(0x23a)](_0x10518b,_0x325b72[_0x14d0f7(0x20c)],_0x325b72);}}function _createClass(_0x4115a7,_0x56eaf3,_0x56f548){var _0x147106=_0x351187;if(_0x56eaf3)_defineProperties(_0x4115a7['prototype'],_0x56eaf3);if(_0x56f548)_defineProperties(_0x4115a7,_0x56f548);return Object['defineProperty'](_0x4115a7,_0x147106(0x1a6),{'writable':![]}),_0x4115a7;}function _defineProperty(_0x3b9b3a,_0x11cdbf,_0x2e2af7){var _0xa2af4e=_0x351187;return _0x11cdbf in _0x3b9b3a?Object[_0xa2af4e(0x23a)](_0x3b9b3a,_0x11cdbf,{'value':_0x2e2af7,'enumerable':!![],'configurable':!![],'writable':!![]}):_0x3b9b3a[_0x11cdbf]=_0x2e2af7,_0x3b9b3a;}function _inherits(_0x5c7feb,_0x538a89){var _0x4ced79=_0x351187;if(typeof _0x538a89!==_0x4ced79(0x1ee)&&_0x538a89!==null)throw new TypeError('Super\x20expression\x20must\x20either\x20be\x20null\x20or\x20a\x20function');_0x5c7feb['prototype']=Object['create'](_0x538a89&&_0x538a89[_0x4ced79(0x1a6)],{'constructor':{'value':_0x5c7feb,'writable':!![],'configurable':!![]}}),Object[_0x4ced79(0x23a)](_0x5c7feb,_0x4ced79(0x1a6),{'writable':![]});if(_0x538a89)_setPrototypeOf(_0x5c7feb,_0x538a89);}function _getPrototypeOf(_0x5edff0){var _0x1d1866=_0x351187;return _getPrototypeOf=Object[_0x1d1866(0x28f)]?Object['getPrototypeOf'][_0x1d1866(0x167)]():function _0x487069(_0x24d6f7){var _0x4f6e4f=_0x1d1866;return _0x24d6f7[_0x4f6e4f(0x210)]||Object[_0x4f6e4f(0x179)](_0x24d6f7);},_getPrototypeOf(_0x5edff0);}function _setPrototypeOf(_0x4ae23c,_0x446bff){var _0x1cec5b=_0x351187;return _setPrototypeOf=Object[_0x1cec5b(0x28f)]?Object[_0x1cec5b(0x28f)][_0x1cec5b(0x167)]():function _0x540e85(_0x5e7a53,_0x43b445){return _0x5e7a53['__proto__']=_0x43b445,_0x5e7a53;},_setPrototypeOf(_0x4ae23c,_0x446bff);}function _isNativeReflectConstruct(){var _0x508481=_0x351187;if(typeof Reflect===_0x508481(0x1e7)||!Reflect[_0x508481(0x1d2)])return![];if(Reflect[_0x508481(0x1d2)][_0x508481(0x1d6)])return![];if(typeof Proxy==='function')return!![];try{return Boolean[_0x508481(0x1a6)][_0x508481(0x255)][_0x508481(0x1e5)](Reflect[_0x508481(0x1d2)](Boolean,[],function(){})),!![];}catch(_0x45d8ed){return![];}}function _assertThisInitialized(_0x2c9e48){var _0x527997=_0x351187;if(_0x2c9e48===void 0x0)throw new ReferenceError(_0x527997(0x1f3));return _0x2c9e48;}function _possibleConstructorReturn(_0x292036,_0x12727f){var _0x43a5f3=_0x351187;if(_0x12727f&&(typeof _0x12727f===_0x43a5f3(0x2b3)||typeof _0x12727f===_0x43a5f3(0x1ee)))return _0x12727f;else{if(_0x12727f!==void 0x0)throw new TypeError('Derived\x20constructors\x20may\x20only\x20return\x20object\x20or\x20undefined');}return _assertThisInitialized(_0x292036);}function _createSuper(_0x18ed35){var _0x294f11=_isNativeReflectConstruct();return function _0x4c1dc3(){var _0x43e148=_0x260e,_0x29ef86=_getPrototypeOf(_0x18ed35),_0x35aa3e;if(_0x294f11){var _0x11a97c=_getPrototypeOf(this)[_0x43e148(0x17c)];_0x35aa3e=Reflect['construct'](_0x29ef86,arguments,_0x11a97c);}else _0x35aa3e=_0x29ef86[_0x43e148(0x217)](this,arguments);return _possibleConstructorReturn(this,_0x35aa3e);};}function _toConsumableArray(_0x5a51b1){return _arrayWithoutHoles(_0x5a51b1)||_iterableToArray(_0x5a51b1)||_unsupportedIterableToArray(_0x5a51b1)||_nonIterableSpread();}function _arrayWithoutHoles(_0x42d3c1){var _0xf04471=_0x351187;if(Array[_0xf04471(0x224)](_0x42d3c1))return _arrayLikeToArray(_0x42d3c1);}function _iterableToArray(_0x1a90e3){var _0x22ad12=_0x351187;if(typeof Symbol!==_0x22ad12(0x1e7)&&_0x1a90e3[Symbol[_0x22ad12(0x261)]]!=null||_0x1a90e3['@@iterator']!=null)return Array[_0x22ad12(0x180)](_0x1a90e3);}function _unsupportedIterableToArray(_0x387ccf,_0x8be13f){var _0x48ac04=_0x351187;if(!_0x387ccf)return;if(typeof _0x387ccf===_0x48ac04(0x16e))return _arrayLikeToArray(_0x387ccf,_0x8be13f);var _0x56d553=Object[_0x48ac04(0x1a6)][_0x48ac04(0x253)][_0x48ac04(0x1e5)](_0x387ccf)[_0x48ac04(0x1dc)](0x8,-0x1);if(_0x56d553===_0x48ac04(0x1f4)&&_0x387ccf[_0x48ac04(0x17c)])_0x56d553=_0x387ccf[_0x48ac04(0x17c)][_0x48ac04(0x1f9)];if(_0x56d553===_0x48ac04(0x201)||_0x56d553===_0x48ac04(0x171))return Array['from'](_0x387ccf);if(_0x56d553===_0x48ac04(0x25c)||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/['test'](_0x56d553))return _arrayLikeToArray(_0x387ccf,_0x8be13f);}function _0x260e(_0x46cebf,_0x21090f){var _0x1ea1a7=_0x1ea1();return _0x260e=function(_0x260e53,_0x2d9bc5){_0x260e53=_0x260e53-0x15f;var _0x5dfc36=_0x1ea1a7[_0x260e53];return _0x5dfc36;},_0x260e(_0x46cebf,_0x21090f);}function _arrayLikeToArray(_0xe4e264,_0x10cd4a){var _0x50f38d=_0x351187;if(_0x10cd4a==null||_0x10cd4a>_0xe4e264[_0x50f38d(0x1fa)])_0x10cd4a=_0xe4e264[_0x50f38d(0x1fa)];for(var _0x5e4098=0x0,_0x396070=new Array(_0x10cd4a);_0x5e4098<_0x10cd4a;_0x5e4098++)_0x396070[_0x5e4098]=_0xe4e264[_0x5e4098];return _0x396070;}function _0x1ea1(){var _0x4af1e7=['nextTrailsColor','blending','UNSIGNED_INT','TextureMinificationFilter','THREE_PI_OVER_TWO','particles','call','speedFactor','undefined','GeometryAttributes','createRawRenderState','postProcessingPosition','WMS_URL','6pqjHqx','getFullscreenQuad','function','south','dimensions','currentParticlesPosition','array','this\x20hasn\x27t\x20been\x20initialised\x20-\x20super()\x20hasn\x27t\x20been\x20called','Object','setDate','nextTrails','IDENTITY','lineWidth','name','length','windData','commandToExecute','8xeQXdP','Sampler','lonRange','north','Map','ShaderSource','reverse','153867umGpao','layer','STATIC_DRAW','_maxAge','preRender','frameTime','colors','green','key','options','addPrimitives','Geometry','__proto__','fromGeometry','init','_removedHook','particlesComputing','clampToLatitudeRange','fill','apply','OPAQUE','destination-in','worker','createRenderingFramebuffers','WindUtil','particlesNumber','particleHeight','moveTo','onmessage','TextureMagnificationFilter','_drawLines','viewport','isArray','cancelAnimationFrame','lighter','BufferUsage','clearFramebuffers','PrimitiveCollection','setOptions','attributeLocations','_bilinearInterpolation','rgb(206,255,255)','mouse_down','tlng','maxAge','PixelFormat','_createCanvas','dropRate','round','setAttribute','WindLayer','TRIANGLES','computeViewRectangle','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}','defineProperty','createSegmentsGeometry','_onMouseMoveEvent','now','createTexture','EventType','__esModule','primitives','_speedRate','ShaderProgram','rows','once','context','initWorker','DEPTH_COMPONENT','#ffffff','isInExtent','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}','updateViewerParameters','uniform\x20sampler2D\x20nextParticlesPosition;\x0auniform\x20sampler2D\x20nextParticlesSpeed;\x20//\x20(u,\x20v,\x20w,\x20normalization)\x0a\x0a//\x20range\x20(min,\x20max)\x0auniform\x20vec2\x20lonRange;\x0auniform\x20vec2\x20latRange;\x0a\x0auniform\x20float\x20randomCoefficient;\x20//\x20use\x20to\x20improve\x20the\x20pseudo-random\x20generator\x0auniform\x20float\x20dropRate;\x20//\x20drop\x20rate\x20is\x20a\x20chance\x20a\x20particle\x20will\x20restart\x20at\x20random\x20position\x20to\x20avoid\x20degeneration\x0auniform\x20float\x20dropRateBump;\x0a\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}','value','create','77lAlZjE','mouseDown','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}','toString','vertexShaderSource','valueOf','_updateIng','mouseUp','add','rawRenderState','20768dmJUJU','VertexArray','Arguments','getOwnPropertyDescriptors','_canrefresh','PI_OVER_THREE','width','iterator','Pass','particleSystem','sqrt','pointer-events','canvasContext','max','umin','default','_data','clientHeight','scene','camera','pow','PrimitiveType','positionWC','colorTable','xmax','redraw','_pointerEvents','wheel','Invalid\x20attempt\x20to\x20spread\x20non-iterable\x20instance.\x0aIn\x20order\x20to\x20be\x20iterable,\x20non-array\x20objects\x20must\x20have\x20a\x20[Symbol.iterator]()\x20method.','style','clientWidth','appendChild','lng','trails','setData','_tomap','update','getOptions','RenderState','updateSpeed','removeAll','getRandomLatLng','getWind','FLOAT','currentTrailsColor','primitiveType','fromCache','particlesTextures','Compute','udata','geometry','Draw','BoundingSphere','setPrototypeOf','removeChild','NEAREST','cos','Rectangle','xmin','LayerUtil','toGridXY','createRenderingTextures','nextParticlesPosition','ZERO','windTextures','randomBetween','SceneMode','_onMapWhellEvent','_randomParticle','getOwnPropertySymbols','keys','floor','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}','LINEAR','umax','globalCompositeOperation','createParticlesTextures','_onMouseUpEvent','reverseY','show','BaseLayer','viewerParameters','TWO_PI','100%','_mountedHook','unbindEvent','createWindTextures','fixedHeight','grid','object','off','register','log','visible','_onMouseDownEvent','wgs84ToWindowCoordinates','createCommand','segmentsColor','DISABLE_GL_POSITION_LOG_DEPTH','depthTexture','globe','currentTrailsDepth','textures','Cartesian2','particlesWind','applyViewerParameters','getOwnPropertyDescriptor','postMessage','pointerEvents','requestAnimationFrame','beginPath','destroy','Cesium','levmin','_calc_speedRate','_onMap_preRenderEvent','DISABLE_LOG_DEPTH_FRAGMENT_WRITE','maxParticles','ClearCommand','wind','canrefresh','createFramebuffer','currentParticlesSpeed','Color','cols','lineTo','arrayBufferView','absolute','removeEventListener','segmentsDepth','uniformMap','PixelDatatype','resize','0px','vmin','addEventListener','red','preExecute','sin','SCENE3D','Texture','fadeOpacity','nextParticlesSpeed','Math','destroyParticlesTextures','canvasWindy','bind','writable','pixelSize','PI_OVER_TWO','updatePosition','LUMINANCE','getPixelSize','string','defined','commandType','Set','CanvasWindField','strokeStyle','setGeometry','levmax','age','getUVByPoint','504655jXIGcJ','getPrototypeOf','left','globalAlpha','constructor','segments','ymin','globeBoundingSphere','from','speedRate','mouse_move','ymax','lat','height','_map','abs','push','framebuffer','dropRateBump','fromDegrees','mode','_calcUV','canvasWidth','tlat','fragmentShaderSource','forEach','particlesTextureSize','latRange','27576vuycrw','min','GeometryAttribute','randomizeParticles','refreshParticles','_updateIng2','canvasHeight','_showHook','enumerable','Cartesian3','blue','lev','drawingBufferWidth','1727040jmttsu','clear','bindEvent','9QznPcG','canvasResize','prototype','stroke','_addedHook','6lCXqKO','mod','Appearance','autoClear','isPointVisible','toRadians','west','clearCommand','refreshTimer','getColorTexture','lon','//\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}','commandList','particlesRendering','shaderProgram','getExtent','ComputeCommand','configurable','11320WisuYC','_setOptionsHook','toDegrees','outputTexture','835944nNvCMT','visibility','mouseHidden','color','ceil','vdata','currentTrails','hidden','canvas','postProcessingSpeed','none','getUVByXY','windField','animateFrame','drawingBufferHeight','ALWAYS','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}','source','ellipsoid','construct','random','framebuffers','mouseMove','sham','RGB','createElement','destroyObject','ComponentDatatype','all','slice','frameRate','data'];_0x1ea1=function(){return _0x4af1e7;};return _0x1ea1();}function _nonIterableSpread(){var _0x23c668=_0x351187;throw new TypeError(_0x23c668(0x276));}var Cesium$6=mars3d__namespace[_0x351187(0x2ca)],CustomPrimitive=(function(){var _0x11ab24=_0x351187;function _0x186b5d(_0x3ad4af){var _0x1d4195=_0x260e,_0x9d7a33;_classCallCheck(this,_0x186b5d),this['commandType']=_0x3ad4af[_0x1d4195(0x170)],this[_0x1d4195(0x28c)]=_0x3ad4af['geometry'],this['attributeLocations']=_0x3ad4af[_0x1d4195(0x22b)],this[_0x1d4195(0x287)]=_0x3ad4af[_0x1d4195(0x287)],this[_0x1d4195(0x2dc)]=_0x3ad4af['uniformMap'],this[_0x1d4195(0x254)]=_0x3ad4af[_0x1d4195(0x254)],this['fragmentShaderSource']=_0x3ad4af[_0x1d4195(0x190)],this[_0x1d4195(0x259)]=_0x3ad4af[_0x1d4195(0x259)],this[_0x1d4195(0x189)]=_0x3ad4af[_0x1d4195(0x189)],this[_0x1d4195(0x1be)]=_0x3ad4af[_0x1d4195(0x1be)],this['autoClear']=(_0x9d7a33=_0x3ad4af[_0x1d4195(0x1ac)])!==null&&_0x9d7a33!==void 0x0?_0x9d7a33:![],this[_0x1d4195(0x2e3)]=_0x3ad4af[_0x1d4195(0x2e3)],this[_0x1d4195(0x2a9)]=!![],this[_0x1d4195(0x1fc)]=undefined,this[_0x1d4195(0x1b0)]=undefined,this['autoClear']&&(this[_0x1d4195(0x1b0)]=new Cesium$6[(_0x1d4195(0x2d0))]({'color':new Cesium$6['Color'](0x0,0x0,0x0,0x0),'depth':0x1,'framebuffer':this['framebuffer'],'pass':Cesium$6[_0x1d4195(0x262)][_0x1d4195(0x218)]}));}return _createClass(_0x186b5d,[{'key':_0x11ab24(0x2ba),'value':function _0x4daea4(_0xef5af3){var _0x4afcbd=_0x11ab24;switch(this[_0x4afcbd(0x170)]){case _0x4afcbd(0x28d):{var _0x4e555b=Cesium$6[_0x4afcbd(0x25b)][_0x4afcbd(0x211)]({'context':_0xef5af3,'geometry':this[_0x4afcbd(0x28c)],'attributeLocations':this[_0x4afcbd(0x22b)],'bufferUsage':Cesium$6[_0x4afcbd(0x227)][_0x4afcbd(0x206)]}),_0x5cf14a=Cesium$6[_0x4afcbd(0x243)][_0x4afcbd(0x288)]({'context':_0xef5af3,'attributeLocations':this[_0x4afcbd(0x22b)],'vertexShaderSource':this[_0x4afcbd(0x254)],'fragmentShaderSource':this['fragmentShaderSource']}),_0x455ee2=Cesium$6[_0x4afcbd(0x280)][_0x4afcbd(0x288)](this[_0x4afcbd(0x259)]);return new Cesium$6['DrawCommand']({'owner':this,'vertexArray':_0x4e555b,'primitiveType':this[_0x4afcbd(0x287)],'uniformMap':this['uniformMap'],'modelMatrix':Cesium$6['Matrix4'][_0x4afcbd(0x1f7)],'shaderProgram':_0x5cf14a,'framebuffer':this[_0x4afcbd(0x189)],'renderState':_0x455ee2,'pass':Cesium$6[_0x4afcbd(0x262)][_0x4afcbd(0x218)]});}case _0x4afcbd(0x28a):{return new Cesium$6[(_0x4afcbd(0x1b9))]({'owner':this,'fragmentShaderSource':this[_0x4afcbd(0x190)],'uniformMap':this[_0x4afcbd(0x2dc)],'outputTexture':this[_0x4afcbd(0x1be)],'persists':!![]});}}}},{'key':_0x11ab24(0x174),'value':function _0x50863e(_0x36ec72,_0x5042d0){var _0xa31036=_0x11ab24;this[_0xa31036(0x28c)]=_0x5042d0;var _0x31f95d=Cesium$6[_0xa31036(0x25b)]['fromGeometry']({'context':_0x36ec72,'geometry':this['geometry'],'attributeLocations':this[_0xa31036(0x22b)],'bufferUsage':Cesium$6[_0xa31036(0x227)][_0xa31036(0x206)]});this[_0xa31036(0x1fc)]['vertexArray']=_0x31f95d;}},{'key':_0x11ab24(0x27e),'value':function _0x281c3c(_0x4f3926){var _0x533556=_0x11ab24;if(!this[_0x533556(0x2a9)])return;if(_0x4f3926[_0x533556(0x18c)]!==Cesium$6['SceneMode']['SCENE3D'])return;!Cesium$6[_0x533556(0x16f)](this['commandToExecute'])&&(this['commandToExecute']=this[_0x533556(0x2ba)](_0x4f3926[_0x533556(0x246)])),Cesium$6[_0x533556(0x16f)](this['preExecute'])&&this['preExecute'](),Cesium$6[_0x533556(0x16f)](this[_0x533556(0x1b0)])&&_0x4f3926['commandList']['push'](this['clearCommand']),_0x4f3926[_0x533556(0x1b5)]['push'](this[_0x533556(0x1fc)]);}},{'key':'isDestroyed','value':function _0x327c93(){return![];}},{'key':'destroy','value':function _0x295366(){var _0x33984d=_0x11ab24;return Cesium$6[_0x33984d(0x16f)](this['commandToExecute'])&&(this[_0x33984d(0x1fc)][_0x33984d(0x1b7)]=this[_0x33984d(0x1fc)][_0x33984d(0x1b7)]&&this[_0x33984d(0x1fc)][_0x33984d(0x1b7)][_0x33984d(0x2c9)]()),Cesium$6[_0x33984d(0x1d9)](this);}}]),_0x186b5d;}()),Cesium$5=mars3d__namespace[_0x351187(0x2ca)],Util=(function(){var _0x690cb0=function _0x5cc8c3(){var _0x3480e5=_0x260e,_0x2cdcad=new Cesium$5[(_0x3480e5(0x20f))]({'attributes':new Cesium$5['GeometryAttributes']({'position':new Cesium$5[(_0x3480e5(0x196))]({'componentDatatype':Cesium$5['ComponentDatatype'][_0x3480e5(0x285)],'componentsPerAttribute':0x3,'values':new Float32Array([-0x1,-0x1,0x0,0x1,-0x1,0x0,0x1,0x1,0x0,-0x1,0x1,0x0])}),'st':new Cesium$5[(_0x3480e5(0x196))]({'componentDatatype':Cesium$5[_0x3480e5(0x1da)][_0x3480e5(0x285)],'componentsPerAttribute':0x2,'values':new Float32Array([0x0,0x0,0x1,0x0,0x1,0x1,0x0,0x1])})}),'indices':new Uint32Array([0x3,0x2,0x0,0x0,0x2,0x1])});return _0x2cdcad;},_0x22b612=function _0x4c230a(_0x53a273,_0x592531){var _0x47298c=_0x260e;if(Cesium$5['defined'](_0x592531)){var _0x3e7c4c={};_0x3e7c4c[_0x47298c(0x2d8)]=_0x592531,_0x53a273[_0x47298c(0x1d0)]=_0x3e7c4c;}var _0x18045=new Cesium$5[(_0x47298c(0x161))](_0x53a273);return _0x18045;},_0xa599d0=function _0x25ebb6(_0x3ee3e8,_0x416422,_0x2d2dd2){var _0x3cbb25=new Cesium$5['Framebuffer']({'context':_0x3ee3e8,'colorTextures':[_0x416422],'depthTexture':_0x2d2dd2});return _0x3cbb25;},_0x9fbe70=function _0x29513d(_0x3e6f6c){var _0x395017=_0x260e,_0x3bf82a=!![],_0x4487f5=![],_0x2d90e3={'viewport':_0x3e6f6c[_0x395017(0x223)],'depthTest':_0x3e6f6c['depthTest'],'depthMask':_0x3e6f6c['depthMask'],'blending':_0x3e6f6c[_0x395017(0x1e0)]},_0x2b502f=Cesium$5[_0x395017(0x1ab)]['getDefaultRenderState'](_0x3bf82a,_0x4487f5,_0x2d90e3);return _0x2b502f;},_0x2ec3c7=function _0x39b2b7(_0x20c0ca){var _0x41c3ba=_0x260e,_0x2c60e9={},_0x48de9a=Cesium$5[_0x41c3ba(0x164)][_0x41c3ba(0x1aa)](_0x20c0ca[_0x41c3ba(0x1af)],Cesium$5[_0x41c3ba(0x164)]['TWO_PI']),_0x45c72e=Cesium$5['Math'][_0x41c3ba(0x1aa)](_0x20c0ca['east'],Cesium$5[_0x41c3ba(0x164)][_0x41c3ba(0x2ac)]),_0xd99b42=_0x20c0ca[_0x41c3ba(0x260)],_0x119af9,_0x3156eb;_0xd99b42>Cesium$5[_0x41c3ba(0x164)][_0x41c3ba(0x1e3)]?(_0x119af9=0x0,_0x3156eb=Cesium$5[_0x41c3ba(0x164)][_0x41c3ba(0x2ac)]):_0x45c72e-_0x48de9a<_0xd99b42?(_0x119af9=_0x48de9a,_0x3156eb=_0x48de9a+_0xd99b42):(_0x119af9=_0x48de9a,_0x3156eb=_0x45c72e);_0x2c60e9[_0x41c3ba(0x1b3)]={'min':Cesium$5['Math']['toDegrees'](_0x119af9),'max':Cesium$5[_0x41c3ba(0x164)][_0x41c3ba(0x1bd)](_0x3156eb)};var _0x183f49=_0x20c0ca[_0x41c3ba(0x1ef)],_0x51364f=_0x20c0ca[_0x41c3ba(0x200)],_0x306d89=_0x20c0ca[_0x41c3ba(0x185)],_0x263ef7=_0x306d89>Cesium$5['Math']['PI']/0xc?_0x306d89/0x2:0x0,_0x18d03d=Cesium$5[_0x41c3ba(0x164)][_0x41c3ba(0x215)](_0x183f49-_0x263ef7),_0x2f5d8f=Cesium$5[_0x41c3ba(0x164)][_0x41c3ba(0x215)](_0x51364f+_0x263ef7);return _0x18d03d<-Cesium$5[_0x41c3ba(0x164)][_0x41c3ba(0x25f)]&&(_0x18d03d=-Cesium$5['Math']['PI_OVER_TWO']),_0x2f5d8f>Cesium$5[_0x41c3ba(0x164)][_0x41c3ba(0x25f)]&&(_0x2f5d8f=Cesium$5[_0x41c3ba(0x164)][_0x41c3ba(0x16a)]),_0x2c60e9['lat']={'min':Cesium$5[_0x41c3ba(0x164)][_0x41c3ba(0x1bd)](_0x18d03d),'max':Cesium$5['Math'][_0x41c3ba(0x1bd)](_0x2f5d8f)},_0x2c60e9;};return{'getFullscreenQuad':_0x690cb0,'createTexture':_0x22b612,'createFramebuffer':_0xa599d0,'createRawRenderState':_0x9fbe70,'viewRectangleToLonLatRange':_0x2ec3c7};}()),segmentDraw_vert=_0x351187(0x252),segmentDraw_frag=_0x351187(0x1cf),fullscreen_vert=_0x351187(0x24b),trailDraw_frag='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}',screenDraw_frag=_0x351187(0x239),Cesium$4=mars3d__namespace[_0x351187(0x2ca)],ParticlesRendering=(function(){var _0x3c595c=_0x351187;function _0x387ccc(_0x566b12,_0x39c0f7,_0x1dad91,_0x3f8c24,_0x10a291){var _0x59dbef=_0x260e;_classCallCheck(this,_0x387ccc),this[_0x59dbef(0x297)](_0x566b12,_0x39c0f7,_0x1dad91['colors']),this[_0x59dbef(0x21b)](_0x566b12),this['createRenderingPrimitives'](_0x566b12,_0x1dad91,_0x3f8c24,_0x10a291);}return _createClass(_0x387ccc,[{'key':_0x3c595c(0x297),'value':function _0x545c80(_0x1d620e,_0x2d3df6,_0x1801e7){var _0xe30916=_0x3c595c,_0x2df3a0={'context':_0x1d620e,'width':_0x1d620e[_0xe30916(0x1a0)],'height':_0x1d620e[_0xe30916(0x1cd)],'pixelFormat':Cesium$4[_0xe30916(0x231)]['RGBA'],'pixelDatatype':Cesium$4[_0xe30916(0x2dd)]['UNSIGNED_BYTE']},_0x2d0a70={'context':_0x1d620e,'width':_0x1d620e[_0xe30916(0x1a0)],'height':_0x1d620e[_0xe30916(0x1cd)],'pixelFormat':Cesium$4[_0xe30916(0x231)][_0xe30916(0x248)],'pixelDatatype':Cesium$4[_0xe30916(0x2dd)][_0xe30916(0x1e1)]},_0x2717dc=_0x1801e7[_0xe30916(0x1fa)],_0x10708a=new Float32Array(_0x2717dc*0x3);for(var _0xf7130b=0x0;_0xf7130b<_0x2717dc;_0xf7130b++){var _0x25f2b3=Cesium$4[_0xe30916(0x2d5)]['fromCssColorString'](_0x1801e7[_0xf7130b]);_0x10708a[0x3*_0xf7130b]=_0x25f2b3[_0xe30916(0x2e2)],_0x10708a[0x3*_0xf7130b+0x1]=_0x25f2b3[_0xe30916(0x20b)],_0x10708a[0x3*_0xf7130b+0x2]=_0x25f2b3[_0xe30916(0x19e)];}var _0x4b31e6={'context':_0x1d620e,'width':_0x2717dc,'height':0x1,'pixelFormat':Cesium$4[_0xe30916(0x231)][_0xe30916(0x1d7)],'pixelDatatype':Cesium$4[_0xe30916(0x2dd)]['FLOAT'],'sampler':new Cesium$4[(_0xe30916(0x1fe))]({'minificationFilter':Cesium$4['TextureMinificationFilter'][_0xe30916(0x2a3)],'magnificationFilter':Cesium$4['TextureMagnificationFilter']['LINEAR']})};this[_0xe30916(0x2c0)]={'segmentsColor':Util[_0xe30916(0x23e)](_0x2df3a0),'segmentsDepth':Util[_0xe30916(0x23e)](_0x2d0a70),'currentTrailsColor':Util[_0xe30916(0x23e)](_0x2df3a0),'currentTrailsDepth':Util[_0xe30916(0x23e)](_0x2d0a70),'nextTrailsColor':Util[_0xe30916(0x23e)](_0x2df3a0),'nextTrailsDepth':Util[_0xe30916(0x23e)](_0x2d0a70),'colorTable':Util[_0xe30916(0x23e)](_0x4b31e6,_0x10708a)};}},{'key':_0x3c595c(0x21b),'value':function _0x13cd39(_0x54d85a){var _0x56f4e0=_0x3c595c;this[_0x56f4e0(0x1d4)]={'segments':Util['createFramebuffer'](_0x54d85a,this['textures']['segmentsColor'],this[_0x56f4e0(0x2c0)]['segmentsDepth']),'currentTrails':Util[_0x56f4e0(0x2d3)](_0x54d85a,this[_0x56f4e0(0x2c0)][_0x56f4e0(0x286)],this['textures'][_0x56f4e0(0x2bf)]),'nextTrails':Util['createFramebuffer'](_0x54d85a,this[_0x56f4e0(0x2c0)][_0x56f4e0(0x1df)],this['textures']['nextTrailsDepth'])};}},{'key':_0x3c595c(0x23b),'value':function _0x2251e8(_0x2b9cd7){var _0x4db0ff=_0x3c595c,_0x267a00=0x4,_0x5d5204=[];for(var _0x2f8e1e=0x0;_0x2f8e1e<_0x2b9cd7['particlesTextureSize'];_0x2f8e1e++){for(var _0x1904c1=0x0;_0x1904c1<_0x2b9cd7[_0x4db0ff(0x192)];_0x1904c1++){for(var _0x49bf11=0x0;_0x49bf11<_0x267a00;_0x49bf11++){_0x5d5204[_0x4db0ff(0x188)](_0x2f8e1e/_0x2b9cd7[_0x4db0ff(0x192)]),_0x5d5204['push'](_0x1904c1/_0x2b9cd7[_0x4db0ff(0x192)]);}}}_0x5d5204=new Float32Array(_0x5d5204);var _0x6080f5=[],_0xd761eb=[-0x1,0x1],_0x53273e=[-0x1,0x1];for(var _0x1bcd69=0x0;_0x1bcd69<_0x2b9cd7[_0x4db0ff(0x2cf)];_0x1bcd69++){for(var _0x2095c4=0x0;_0x2095c4<_0x267a00/0x2;_0x2095c4++){for(var _0x57b2e0=0x0;_0x57b2e0<_0x267a00/0x2;_0x57b2e0++){_0x6080f5[_0x4db0ff(0x188)](_0xd761eb[_0x2095c4]),_0x6080f5[_0x4db0ff(0x188)](_0x53273e[_0x57b2e0]),_0x6080f5[_0x4db0ff(0x188)](0x0);}}}_0x6080f5=new Float32Array(_0x6080f5);var _0x200bd5=0x6*_0x2b9cd7['maxParticles'],_0x6f14af=new Uint32Array(_0x200bd5);for(var _0x15b260=0x0,_0x475737=0x0,_0x36506f=0x0;_0x15b260<_0x2b9cd7[_0x4db0ff(0x2cf)];_0x15b260++){_0x6f14af[_0x475737++]=_0x36506f+0x0,_0x6f14af[_0x475737++]=_0x36506f+0x1,_0x6f14af[_0x475737++]=_0x36506f+0x2,_0x6f14af[_0x475737++]=_0x36506f+0x2,_0x6f14af[_0x475737++]=_0x36506f+0x1,_0x6f14af[_0x475737++]=_0x36506f+0x3,_0x36506f+=0x4;}var _0x165160=new Cesium$4[(_0x4db0ff(0x20f))]({'attributes':new Cesium$4[(_0x4db0ff(0x1e8))]({'st':new Cesium$4['GeometryAttribute']({'componentDatatype':Cesium$4['ComponentDatatype'][_0x4db0ff(0x285)],'componentsPerAttribute':0x2,'values':_0x5d5204}),'normal':new Cesium$4[(_0x4db0ff(0x196))]({'componentDatatype':Cesium$4['ComponentDatatype'][_0x4db0ff(0x285)],'componentsPerAttribute':0x3,'values':_0x6080f5})}),'indices':_0x6f14af});return _0x165160;}},{'key':'createRenderingPrimitives','value':function _0x5911d5(_0x2156d5,_0x4d24c5,_0x145fb0,_0x5db8ee){var _0x36c426=_0x3c595c,_0x244998=this;this['primitives']={'segments':new CustomPrimitive({'commandType':_0x36c426(0x28d),'attributeLocations':{'st':0x0,'normal':0x1},'geometry':this[_0x36c426(0x23b)](_0x4d24c5),'primitiveType':Cesium$4[_0x36c426(0x26f)][_0x36c426(0x237)],'uniformMap':{'currentParticlesPosition':function _0x524942(){var _0x241139=_0x36c426;return _0x5db8ee[_0x241139(0x289)][_0x241139(0x1f1)];},'postProcessingPosition':function _0x3956bb(){var _0x5d14df=_0x36c426;return _0x5db8ee[_0x5d14df(0x289)][_0x5d14df(0x1ea)];},'postProcessingSpeed':function _0x249b21(){var _0x4a6f8a=_0x36c426;return _0x5db8ee['particlesTextures'][_0x4a6f8a(0x1c8)];},'colorTable':function _0x2626e5(){return _0x244998['textures']['colorTable'];},'aspect':function _0x561629(){var _0x365902=_0x36c426;return _0x2156d5[_0x365902(0x1a0)]/_0x2156d5[_0x365902(0x1cd)];},'pixelSize':function _0x2f9632(){var _0x4f7022=_0x36c426;return _0x145fb0[_0x4f7022(0x169)];},'lineWidth':function _0xcaa36a(){var _0x10ee97=_0x36c426;return _0x4d24c5[_0x10ee97(0x1f8)];},'particleHeight':function _0xdf2dd6(){var _0x34bd68=_0x36c426;return _0x4d24c5[_0x34bd68(0x21e)];}},'vertexShaderSource':new Cesium$4[(_0x36c426(0x202))]({'sources':[segmentDraw_vert]}),'fragmentShaderSource':new Cesium$4[(_0x36c426(0x202))]({'sources':[segmentDraw_frag]}),'rawRenderState':Util['createRawRenderState']({'viewport':undefined,'depthTest':{'enabled':!![]},'depthMask':!![]}),'framebuffer':this['framebuffers'][_0x36c426(0x17d)],'autoClear':!![]}),'trails':new CustomPrimitive({'commandType':_0x36c426(0x28d),'attributeLocations':{'position':0x0,'st':0x1},'geometry':Util[_0x36c426(0x1ed)](),'primitiveType':Cesium$4[_0x36c426(0x26f)][_0x36c426(0x237)],'uniformMap':{'segmentsColorTexture':function _0x1f59d1(){var _0x3f793f=_0x36c426;return _0x244998['textures'][_0x3f793f(0x2bb)];},'segmentsDepthTexture':function _0x51e3e3(){var _0x92ff60=_0x36c426;return _0x244998[_0x92ff60(0x2c0)][_0x92ff60(0x2db)];},'currentTrailsColor':function _0x3499c3(){var _0x502976=_0x36c426;return _0x244998[_0x502976(0x1d4)][_0x502976(0x1c5)][_0x502976(0x1b2)](0x0);},'trailsDepthTexture':function _0x4a8c68(){var _0x540052=_0x36c426;return _0x244998[_0x540052(0x1d4)][_0x540052(0x1c5)][_0x540052(0x2bd)];},'fadeOpacity':function _0x53f8e5(){var _0x458a27=_0x36c426;return _0x4d24c5[_0x458a27(0x162)];}},'vertexShaderSource':new Cesium$4[(_0x36c426(0x202))]({'defines':['DISABLE_GL_POSITION_LOG_DEPTH'],'sources':[fullscreen_vert]}),'fragmentShaderSource':new Cesium$4['ShaderSource']({'defines':[_0x36c426(0x2ce)],'sources':[trailDraw_frag]}),'rawRenderState':Util['createRawRenderState']({'viewport':undefined,'depthTest':{'enabled':!![],'func':Cesium$4['DepthFunction'][_0x36c426(0x1ce)]},'depthMask':!![]}),'framebuffer':this[_0x36c426(0x1d4)][_0x36c426(0x1f6)],'autoClear':!![],'preExecute':function _0x1dd733(){var _0x55efea=_0x36c426,_0x3e012b=_0x244998[_0x55efea(0x1d4)][_0x55efea(0x1c5)];_0x244998[_0x55efea(0x1d4)][_0x55efea(0x1c5)]=_0x244998[_0x55efea(0x1d4)][_0x55efea(0x1f6)],_0x244998['framebuffers'][_0x55efea(0x1f6)]=_0x3e012b,_0x244998[_0x55efea(0x241)][_0x55efea(0x27b)][_0x55efea(0x1fc)][_0x55efea(0x189)]=_0x244998[_0x55efea(0x1d4)][_0x55efea(0x1f6)],_0x244998[_0x55efea(0x241)]['trails'][_0x55efea(0x1b0)][_0x55efea(0x189)]=_0x244998[_0x55efea(0x1d4)][_0x55efea(0x1f6)];}}),'screen':new CustomPrimitive({'commandType':'Draw','attributeLocations':{'position':0x0,'st':0x1},'geometry':Util[_0x36c426(0x1ed)](),'primitiveType':Cesium$4[_0x36c426(0x26f)]['TRIANGLES'],'uniformMap':{'trailsColorTexture':function _0x2f2047(){var _0x3c1ac6=_0x36c426;return _0x244998[_0x3c1ac6(0x1d4)][_0x3c1ac6(0x1f6)]['getColorTexture'](0x0);},'trailsDepthTexture':function _0x10239c(){var _0x34e5f6=_0x36c426;return _0x244998[_0x34e5f6(0x1d4)][_0x34e5f6(0x1f6)][_0x34e5f6(0x2bd)];}},'vertexShaderSource':new Cesium$4[(_0x36c426(0x202))]({'defines':[_0x36c426(0x2bc)],'sources':[fullscreen_vert]}),'fragmentShaderSource':new Cesium$4[(_0x36c426(0x202))]({'defines':[_0x36c426(0x2ce)],'sources':[screenDraw_frag]}),'rawRenderState':Util[_0x36c426(0x1e9)]({'viewport':undefined,'depthTest':{'enabled':![]},'depthMask':!![],'blending':{'enabled':!![]}}),'framebuffer':undefined})};}}]),_0x387ccc;}()),getWind_frag=_0x351187(0x1b4),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\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='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=_0x351187(0x24d),postProcessingSpeed_frag=_0x351187(0x2a2),Cesium$3=mars3d__namespace[_0x351187(0x2ca)],ParticlesComputing=(function(){var _0x418e4b=_0x351187;function _0x25ab28(_0x5a242c,_0x59c197,_0x48f7b7,_0x1b79a4){var _0xdb28fa=_0x260e;_classCallCheck(this,_0x25ab28),this[_0xdb28fa(0x1de)]=_0x59c197,this['createWindTextures'](_0x5a242c,_0x59c197),this[_0xdb28fa(0x2a6)](_0x5a242c,_0x48f7b7,_0x1b79a4),this['createComputingPrimitives'](_0x59c197,_0x48f7b7,_0x1b79a4);}return _createClass(_0x25ab28,[{'key':_0x418e4b(0x2b0),'value':function _0x10fa9f(_0x287de9,_0xbc7d93){var _0x5ac5a2=_0x418e4b,_0x21fdfd={'context':_0x287de9,'width':_0xbc7d93[_0x5ac5a2(0x1f0)][_0x5ac5a2(0x1b3)],'height':_0xbc7d93[_0x5ac5a2(0x1f0)]['lat']*(_0xbc7d93[_0x5ac5a2(0x1f0)][_0x5ac5a2(0x19f)]||0x1),'pixelFormat':Cesium$3[_0x5ac5a2(0x231)][_0x5ac5a2(0x16c)],'pixelDatatype':Cesium$3[_0x5ac5a2(0x2dd)][_0x5ac5a2(0x285)],'flipY':![],'sampler':new Cesium$3[(_0x5ac5a2(0x1fe))]({'minificationFilter':Cesium$3[_0x5ac5a2(0x1e2)][_0x5ac5a2(0x291)],'magnificationFilter':Cesium$3['TextureMagnificationFilter']['NEAREST']})};this['windTextures']={'U':Util[_0x5ac5a2(0x23e)](_0x21fdfd,_0xbc7d93['U'][_0x5ac5a2(0x1f2)]),'V':Util[_0x5ac5a2(0x23e)](_0x21fdfd,_0xbc7d93['V'][_0x5ac5a2(0x1f2)])};}},{'key':_0x418e4b(0x2a6),'value':function _0x2d5153(_0x2b807c,_0xf8d9a,_0x5a11af){var _0x615e58=_0x418e4b,_0x13f071={'context':_0x2b807c,'width':_0xf8d9a['particlesTextureSize'],'height':_0xf8d9a[_0x615e58(0x192)],'pixelFormat':Cesium$3[_0x615e58(0x231)]['RGBA'],'pixelDatatype':Cesium$3[_0x615e58(0x2dd)][_0x615e58(0x285)],'flipY':![],'sampler':new Cesium$3[(_0x615e58(0x1fe))]({'minificationFilter':Cesium$3['TextureMinificationFilter'][_0x615e58(0x291)],'magnificationFilter':Cesium$3[_0x615e58(0x221)]['NEAREST']})},_0x7be1e7=this[_0x615e58(0x197)](_0xf8d9a['maxParticles'],_0x5a11af),_0x1e172f=new Float32Array(0x4*_0xf8d9a['maxParticles'])[_0x615e58(0x216)](0x0);this[_0x615e58(0x289)]={'particlesWind':Util[_0x615e58(0x23e)](_0x13f071),'currentParticlesPosition':Util[_0x615e58(0x23e)](_0x13f071,_0x7be1e7),'nextParticlesPosition':Util[_0x615e58(0x23e)](_0x13f071,_0x7be1e7),'currentParticlesSpeed':Util[_0x615e58(0x23e)](_0x13f071,_0x1e172f),'nextParticlesSpeed':Util['createTexture'](_0x13f071,_0x1e172f),'postProcessingPosition':Util[_0x615e58(0x23e)](_0x13f071,_0x7be1e7),'postProcessingSpeed':Util[_0x615e58(0x23e)](_0x13f071,_0x1e172f)};}},{'key':_0x418e4b(0x197),'value':function _0x1fe69f(_0x527d4e,_0x18520d){var _0x4412a6=_0x418e4b,_0x9d2cd7=new Float32Array(0x4*_0x527d4e);for(var _0x4f2d73=0x0;_0x4f2d73<_0x527d4e;_0x4f2d73++){_0x9d2cd7[0x4*_0x4f2d73]=Cesium$3[_0x4412a6(0x164)][_0x4412a6(0x29b)](_0x18520d[_0x4412a6(0x1ff)]['x'],_0x18520d['lonRange']['y']),_0x9d2cd7[0x4*_0x4f2d73+0x1]=Cesium$3[_0x4412a6(0x164)][_0x4412a6(0x29b)](_0x18520d[_0x4412a6(0x193)]['x'],_0x18520d[_0x4412a6(0x193)]['y']),_0x9d2cd7[0x4*_0x4f2d73+0x2]=Cesium$3['Math'][_0x4412a6(0x29b)](this[_0x4412a6(0x1de)][_0x4412a6(0x19f)][_0x4412a6(0x195)],this[_0x4412a6(0x1de)][_0x4412a6(0x19f)][_0x4412a6(0x267)]),_0x9d2cd7[0x4*_0x4f2d73+0x3]=0x0;}return _0x9d2cd7;}},{'key':_0x418e4b(0x165),'value':function _0x47e8d4(){var _0x442c0e=_0x418e4b,_0x259e7a=this;Object[_0x442c0e(0x2a0)](this[_0x442c0e(0x289)])[_0x442c0e(0x191)](function(_0xd36dca){var _0x2fffe7=_0x442c0e;_0x259e7a['particlesTextures'][_0xd36dca][_0x2fffe7(0x2c9)]();});}},{'key':'createComputingPrimitives','value':function _0x159c09(_0x517abf,_0x28a5ba,_0x9ebaa5){var _0x5b2c48=_0x418e4b,_0x56dd26=new Cesium$3['Cartesian3'](_0x517abf[_0x5b2c48(0x1f0)]['lon'],_0x517abf[_0x5b2c48(0x1f0)][_0x5b2c48(0x184)],_0x517abf[_0x5b2c48(0x1f0)][_0x5b2c48(0x19f)]),_0x3f9750=new Cesium$3[(_0x5b2c48(0x19d))](_0x517abf['lon']['min'],_0x517abf[_0x5b2c48(0x184)][_0x5b2c48(0x195)],_0x517abf[_0x5b2c48(0x19f)][_0x5b2c48(0x195)]),_0x229e14=new Cesium$3[(_0x5b2c48(0x19d))](_0x517abf[_0x5b2c48(0x1b3)][_0x5b2c48(0x267)],_0x517abf[_0x5b2c48(0x184)][_0x5b2c48(0x267)],_0x517abf['lev']['max']),_0x3ea068=new Cesium$3[(_0x5b2c48(0x19d))]((_0x229e14['x']-_0x3f9750['x'])/(_0x56dd26['x']-0x1),(_0x229e14['y']-_0x3f9750['y'])/(_0x56dd26['y']-0x1),_0x56dd26['z']>0x1?(_0x229e14['z']-_0x3f9750['z'])/(_0x56dd26['z']-0x1):0x1),_0x5858d4=new Cesium$3['Cartesian2'](_0x517abf['U'][_0x5b2c48(0x195)],_0x517abf['U'][_0x5b2c48(0x267)]),_0x50f7b0=new Cesium$3[(_0x5b2c48(0x2c1))](_0x517abf['V'][_0x5b2c48(0x195)],_0x517abf['V'][_0x5b2c48(0x267)]),_0x5cc74b=this;this['primitives']={'getWind':new CustomPrimitive({'commandType':_0x5b2c48(0x28a),'uniformMap':{'U':function _0x1f7eee(){var _0x39f84a=_0x5b2c48;return _0x5cc74b[_0x39f84a(0x29a)]['U'];},'V':function _0xe8a7da(){var _0x4919a=_0x5b2c48;return _0x5cc74b[_0x4919a(0x29a)]['V'];},'currentParticlesPosition':function _0x46d7b5(){var _0x11ed0c=_0x5b2c48;return _0x5cc74b[_0x11ed0c(0x289)][_0x11ed0c(0x1f1)];},'dimension':function _0x30119a(){return _0x56dd26;},'minimum':function _0x5e0d51(){return _0x3f9750;},'maximum':function _0xd7f962(){return _0x229e14;},'interval':function _0x342bd1(){return _0x3ea068;}},'fragmentShaderSource':new Cesium$3[(_0x5b2c48(0x202))]({'sources':[getWind_frag]}),'outputTexture':this[_0x5b2c48(0x289)][_0x5b2c48(0x2c2)],'preExecute':function _0x3d8530(){var _0x167d57=_0x5b2c48;_0x5cc74b[_0x167d57(0x241)]['getWind'][_0x167d57(0x1fc)][_0x167d57(0x1be)]=_0x5cc74b[_0x167d57(0x289)]['particlesWind'];}}),'updateSpeed':new CustomPrimitive({'commandType':_0x5b2c48(0x28a),'uniformMap':{'currentParticlesSpeed':function _0x4c9603(){var _0x50571c=_0x5b2c48;return _0x5cc74b[_0x50571c(0x289)][_0x50571c(0x2d4)];},'particlesWind':function _0x42f3d2(){var _0x2cdc91=_0x5b2c48;return _0x5cc74b[_0x2cdc91(0x289)]['particlesWind'];},'uSpeedRange':function _0x569917(){return _0x5858d4;},'vSpeedRange':function _0x11e742(){return _0x50f7b0;},'pixelSize':function _0x59915f(){var _0x283df9=_0x5b2c48;return _0x9ebaa5[_0x283df9(0x169)];},'speedFactor':function _0x2bffc3(){var _0x4cba29=_0x5b2c48;return _0x28a5ba[_0x4cba29(0x1e6)];}},'fragmentShaderSource':new Cesium$3[(_0x5b2c48(0x202))]({'sources':[updateSpeed_frag]}),'outputTexture':this['particlesTextures']['nextParticlesSpeed'],'preExecute':function _0x1fbf12(){var _0x524ab3=_0x5b2c48,_0x5e3fd9=_0x5cc74b['particlesTextures'][_0x524ab3(0x2d4)];_0x5cc74b['particlesTextures'][_0x524ab3(0x2d4)]=_0x5cc74b[_0x524ab3(0x289)]['postProcessingSpeed'],_0x5cc74b[_0x524ab3(0x289)][_0x524ab3(0x1c8)]=_0x5e3fd9,_0x5cc74b[_0x524ab3(0x241)][_0x524ab3(0x281)][_0x524ab3(0x1fc)][_0x524ab3(0x1be)]=_0x5cc74b[_0x524ab3(0x289)][_0x524ab3(0x163)];}}),'updatePosition':new CustomPrimitive({'commandType':_0x5b2c48(0x28a),'uniformMap':{'currentParticlesPosition':function _0x1bbb94(){var _0x499355=_0x5b2c48;return _0x5cc74b[_0x499355(0x289)][_0x499355(0x1f1)];},'currentParticlesSpeed':function _0x3d70c3(){var _0x1944bd=_0x5b2c48;return _0x5cc74b[_0x1944bd(0x289)][_0x1944bd(0x2d4)];}},'fragmentShaderSource':new Cesium$3['ShaderSource']({'sources':[updatePosition_frag]}),'outputTexture':this[_0x5b2c48(0x289)][_0x5b2c48(0x298)],'preExecute':function _0x15e1c6(){var _0x1ea3cf=_0x5b2c48,_0x5a8e0d=_0x5cc74b['particlesTextures'][_0x1ea3cf(0x1f1)];_0x5cc74b[_0x1ea3cf(0x289)][_0x1ea3cf(0x1f1)]=_0x5cc74b[_0x1ea3cf(0x289)]['postProcessingPosition'],_0x5cc74b[_0x1ea3cf(0x289)][_0x1ea3cf(0x1ea)]=_0x5a8e0d,_0x5cc74b['primitives'][_0x1ea3cf(0x16b)][_0x1ea3cf(0x1fc)][_0x1ea3cf(0x1be)]=_0x5cc74b[_0x1ea3cf(0x289)][_0x1ea3cf(0x298)];}}),'postProcessingPosition':new CustomPrimitive({'commandType':_0x5b2c48(0x28a),'uniformMap':{'nextParticlesPosition':function _0x49063b(){var _0x2f8e12=_0x5b2c48;return _0x5cc74b[_0x2f8e12(0x289)][_0x2f8e12(0x298)];},'nextParticlesSpeed':function _0x175861(){var _0xf84f9e=_0x5b2c48;return _0x5cc74b[_0xf84f9e(0x289)][_0xf84f9e(0x163)];},'lonRange':function _0x53f2fc(){var _0x106c4f=_0x5b2c48;return _0x9ebaa5[_0x106c4f(0x1ff)];},'latRange':function _0x120f9d(){var _0xa0416c=_0x5b2c48;return _0x9ebaa5[_0xa0416c(0x193)];},'randomCoefficient':function _0x2196be(){var _0x12cd1d=_0x5b2c48,_0x1cb50c=Math[_0x12cd1d(0x1d3)]();return _0x1cb50c;},'dropRate':function _0x278d2d(){var _0x3c9796=_0x5b2c48;return _0x28a5ba[_0x3c9796(0x233)];},'dropRateBump':function _0x247141(){var _0x3c823f=_0x5b2c48;return _0x28a5ba[_0x3c823f(0x18a)];}},'fragmentShaderSource':new Cesium$3[(_0x5b2c48(0x202))]({'sources':[postProcessingPosition_frag]}),'outputTexture':this[_0x5b2c48(0x289)][_0x5b2c48(0x1ea)],'preExecute':function _0x428c08(){var _0x1e9b8a=_0x5b2c48;_0x5cc74b[_0x1e9b8a(0x241)][_0x1e9b8a(0x1ea)][_0x1e9b8a(0x1fc)]['outputTexture']=_0x5cc74b['particlesTextures'][_0x1e9b8a(0x1ea)];}}),'postProcessingSpeed':new CustomPrimitive({'commandType':_0x5b2c48(0x28a),'uniformMap':{'postProcessingPosition':function _0x376b9d(){var _0x1c2c85=_0x5b2c48;return _0x5cc74b['particlesTextures'][_0x1c2c85(0x1ea)];},'nextParticlesSpeed':function _0x290f2c(){var _0x33af2e=_0x5b2c48;return _0x5cc74b['particlesTextures'][_0x33af2e(0x163)];}},'fragmentShaderSource':new Cesium$3['ShaderSource']({'sources':[postProcessingSpeed_frag]}),'outputTexture':this[_0x5b2c48(0x289)][_0x5b2c48(0x1c8)],'preExecute':function _0x5ac7a2(){var _0x14795d=_0x5b2c48;_0x5cc74b[_0x14795d(0x241)][_0x14795d(0x1c8)][_0x14795d(0x1fc)][_0x14795d(0x1be)]=_0x5cc74b[_0x14795d(0x289)][_0x14795d(0x1c8)];}})};}}]),_0x25ab28;}()),Cesium$2=mars3d__namespace[_0x351187(0x2ca)],ParticleSystem=(function(){var _0xee8d3a=_0x351187;function _0x1fbcb2(_0x45beae,_0x3bc44c,_0x247394,_0x2f64cc){var _0x297494=_0x260e;_classCallCheck(this,_0x1fbcb2),this[_0x297494(0x246)]=_0x45beae,_0x3bc44c=_objectSpread2({},_0x3bc44c);if(_0x3bc44c[_0x297494(0x28b)]&&_0x3bc44c[_0x297494(0x1c4)]){var _0x413d9f,_0x5a4416,_0xf70d1b,_0x2000f3,_0x2a8232,_0x454187;_0x3bc44c[_0x297494(0x1f0)]={},_0x3bc44c[_0x297494(0x1f0)][_0x297494(0x1b3)]=_0x3bc44c[_0x297494(0x2d6)],_0x3bc44c[_0x297494(0x1f0)][_0x297494(0x184)]=_0x3bc44c[_0x297494(0x244)],_0x3bc44c[_0x297494(0x1f0)]['lev']=_0x3bc44c[_0x297494(0x19f)]||0x1,_0x3bc44c['lon']={},_0x3bc44c[_0x297494(0x1b3)][_0x297494(0x195)]=_0x3bc44c[_0x297494(0x294)],_0x3bc44c[_0x297494(0x1b3)][_0x297494(0x267)]=_0x3bc44c['xmax'],_0x3bc44c['lat']={},_0x3bc44c[_0x297494(0x184)]['min']=_0x3bc44c['ymin'],_0x3bc44c[_0x297494(0x184)]['max']=_0x3bc44c['ymax'],_0x3bc44c[_0x297494(0x19f)]={},_0x3bc44c[_0x297494(0x19f)][_0x297494(0x195)]=(_0x413d9f=_0x3bc44c[_0x297494(0x2cb)])!==null&&_0x413d9f!==void 0x0?_0x413d9f:0x1,_0x3bc44c['lev'][_0x297494(0x267)]=(_0x5a4416=_0x3bc44c[_0x297494(0x175)])!==null&&_0x5a4416!==void 0x0?_0x5a4416:0x1,_0x3bc44c['U']={},_0x3bc44c['U'][_0x297494(0x1f2)]=new Float32Array(_0x3bc44c[_0x297494(0x28b)]),_0x3bc44c['U'][_0x297494(0x195)]=(_0xf70d1b=_0x3bc44c[_0x297494(0x268)])!==null&&_0xf70d1b!==void 0x0?_0xf70d1b:Math[_0x297494(0x195)][_0x297494(0x217)](Math,_toConsumableArray(_0x3bc44c[_0x297494(0x28b)])),_0x3bc44c['U']['max']=(_0x2000f3=_0x3bc44c[_0x297494(0x2a4)])!==null&&_0x2000f3!==void 0x0?_0x2000f3:Math['max'][_0x297494(0x217)](Math,_toConsumableArray(_0x3bc44c[_0x297494(0x28b)])),_0x3bc44c['V']={},_0x3bc44c['V']['array']=new Float32Array(_0x3bc44c[_0x297494(0x1c4)]),_0x3bc44c['V']['min']=(_0x2a8232=_0x3bc44c[_0x297494(0x2e0)])!==null&&_0x2a8232!==void 0x0?_0x2a8232:Math[_0x297494(0x195)][_0x297494(0x217)](Math,_toConsumableArray(_0x3bc44c[_0x297494(0x1c4)])),_0x3bc44c['V'][_0x297494(0x267)]=(_0x454187=_0x3bc44c['vmax'])!==null&&_0x454187!==void 0x0?_0x454187:Math[_0x297494(0x267)]['apply'](Math,_toConsumableArray(_0x3bc44c['vdata']));}this[_0x297494(0x1de)]=_0x3bc44c,this[_0x297494(0x20d)]=_0x247394,this[_0x297494(0x2ab)]=_0x2f64cc,this['particlesComputing']=new ParticlesComputing(this[_0x297494(0x246)],this[_0x297494(0x1de)],this[_0x297494(0x20d)],this[_0x297494(0x2ab)]),this[_0x297494(0x1b6)]=new ParticlesRendering(this[_0x297494(0x246)],this['data'],this[_0x297494(0x20d)],this[_0x297494(0x2ab)],this[_0x297494(0x214)]);}return _createClass(_0x1fbcb2,[{'key':'canvasResize','value':function _0x440b7d(_0x2502ba){var _0x34c483=_0x260e,_0x27a3c3=this;this[_0x34c483(0x214)][_0x34c483(0x165)](),Object[_0x34c483(0x2a0)](this['particlesComputing'][_0x34c483(0x29a)])['forEach'](function(_0x2060bc){var _0x84b61d=_0x34c483;_0x27a3c3[_0x84b61d(0x214)][_0x84b61d(0x29a)][_0x2060bc][_0x84b61d(0x2c9)]();}),this[_0x34c483(0x1b6)][_0x34c483(0x2c0)][_0x34c483(0x271)][_0x34c483(0x2c9)](),Object['keys'](this[_0x34c483(0x1b6)][_0x34c483(0x1d4)])[_0x34c483(0x191)](function(_0x5aae0c){var _0x5df56f=_0x34c483;_0x27a3c3[_0x5df56f(0x1b6)][_0x5df56f(0x1d4)][_0x5aae0c][_0x5df56f(0x2c9)]();}),this[_0x34c483(0x246)]=_0x2502ba,this[_0x34c483(0x214)]=new ParticlesComputing(this[_0x34c483(0x246)],this[_0x34c483(0x1de)],this[_0x34c483(0x20d)],this[_0x34c483(0x2ab)]),this[_0x34c483(0x1b6)]=new ParticlesRendering(this[_0x34c483(0x246)],this[_0x34c483(0x1de)],this[_0x34c483(0x20d)],this[_0x34c483(0x2ab)],this[_0x34c483(0x214)]);}},{'key':_0xee8d3a(0x228),'value':function _0x2fe9a2(){var _0x3d782c=_0xee8d3a,_0x2d1a5e=this,_0x2602f8=new Cesium$2['ClearCommand']({'color':new Cesium$2[(_0x3d782c(0x2d5))](0x0,0x0,0x0,0x0),'depth':0x1,'framebuffer':undefined,'pass':Cesium$2[_0x3d782c(0x262)][_0x3d782c(0x218)]});Object['keys'](this[_0x3d782c(0x1b6)][_0x3d782c(0x1d4)])['forEach'](function(_0xaf86e1){var _0x24b4b2=_0x3d782c;_0x2602f8['framebuffer']=_0x2d1a5e[_0x24b4b2(0x1b6)][_0x24b4b2(0x1d4)][_0xaf86e1],_0x2602f8['execute'](_0x2d1a5e[_0x24b4b2(0x246)]);});}},{'key':'refreshParticles','value':function _0x9cf8f2(_0x2a931c){var _0xd796af=_0xee8d3a;this['clearFramebuffers'](),this[_0xd796af(0x214)][_0xd796af(0x165)](),this[_0xd796af(0x214)][_0xd796af(0x2a6)](this[_0xd796af(0x246)],this[_0xd796af(0x20d)],this[_0xd796af(0x2ab)]);if(_0x2a931c){var _0x2311f4=this[_0xd796af(0x1b6)]['createSegmentsGeometry'](this[_0xd796af(0x20d)]);this[_0xd796af(0x1b6)][_0xd796af(0x241)][_0xd796af(0x17d)]['geometry']=_0x2311f4;var _0x4274f6=Cesium$2[_0xd796af(0x25b)][_0xd796af(0x211)]({'context':this[_0xd796af(0x246)],'geometry':_0x2311f4,'attributeLocations':this['particlesRendering'][_0xd796af(0x241)]['segments'][_0xd796af(0x22b)],'bufferUsage':Cesium$2[_0xd796af(0x227)][_0xd796af(0x206)]});this[_0xd796af(0x1b6)][_0xd796af(0x241)][_0xd796af(0x17d)]['commandToExecute']['vertexArray']=_0x4274f6;}}},{'key':_0xee8d3a(0x22a),'value':function _0x50a44e(_0x4f7b26){var _0x17c090=_0xee8d3a,_0x498e08=this,_0x45917f=![];this[_0x17c090(0x20d)]['maxParticles']!==_0x4f7b26[_0x17c090(0x2cf)]&&(_0x45917f=!![]),Object['keys'](_0x4f7b26)[_0x17c090(0x191)](function(_0x2ed703){var _0x18d9bf=_0x17c090;_0x498e08[_0x18d9bf(0x20d)][_0x2ed703]=_0x4f7b26[_0x2ed703];}),this[_0x17c090(0x198)](_0x45917f);}},{'key':_0xee8d3a(0x2c3),'value':function _0x1fe63b(_0x3fc1dd){var _0x31b679=_0xee8d3a,_0x4ee469=this;Object[_0x31b679(0x2a0)](_0x3fc1dd)['forEach'](function(_0x5be3b5){var _0xe471a3=_0x31b679;_0x4ee469[_0xe471a3(0x2ab)][_0x5be3b5]=_0x3fc1dd[_0x5be3b5];}),this[_0x31b679(0x198)](![]);}},{'key':_0xee8d3a(0x2c9),'value':function _0x2c4f7b(){var _0x1203f7=_0xee8d3a,_0xc2721b=this;clearTimeout(this[_0x1203f7(0x2d2)]),this[_0x1203f7(0x214)][_0x1203f7(0x165)](),Object[_0x1203f7(0x2a0)](this[_0x1203f7(0x214)]['windTextures'])[_0x1203f7(0x191)](function(_0x287206){var _0x460598=_0x1203f7;_0xc2721b[_0x460598(0x214)][_0x460598(0x29a)][_0x287206][_0x460598(0x2c9)]();}),this[_0x1203f7(0x1b6)][_0x1203f7(0x2c0)]['colorTable'][_0x1203f7(0x2c9)](),Object[_0x1203f7(0x2a0)](this[_0x1203f7(0x1b6)]['framebuffers'])['forEach'](function(_0x2fd8b7){var _0x25fa10=_0x1203f7;_0xc2721b[_0x25fa10(0x1b6)]['framebuffers'][_0x2fd8b7][_0x25fa10(0x2c9)]();});for(var _0x21b99d in this){delete this[_0x21b99d];}}}]),_0x1fbcb2;}()),Cesium$1=mars3d__namespace[_0x351187(0x2ca)],BaseLayer$1=mars3d__namespace[_0x351187(0x205)]['BaseLayer'],DEF_OPTIONS={'particlesNumber':0x1000,'fixedHeight':0x0,'fadeOpacity':0.996,'dropRate':0.003,'dropRateBump':0.01,'speedFactor':0.5,'lineWidth':0x2,'colors':[_0x351187(0x22d)]},WindLayer=function(_0x1bb25f){var _0x4db845=_0x351187;_inherits(_0x137795,_0x1bb25f);var _0x255de7=_createSuper(_0x137795);function _0x137795(){var _0x2ec393=_0x260e,_0x59a3d1,_0x3a7ac9=arguments[_0x2ec393(0x1fa)]>0x0&&arguments[0x0]!==undefined?arguments[0x0]:{};return _classCallCheck(this,_0x137795),_0x3a7ac9=_objectSpread2(_objectSpread2({},DEF_OPTIONS),_0x3a7ac9),_0x59a3d1=_0x255de7[_0x2ec393(0x1e5)](this,_0x3a7ac9),_0x59a3d1[_0x2ec393(0x1bc)](_0x3a7ac9),_0x59a3d1;}return _createClass(_0x137795,[{'key':_0x4db845(0x205),'get':function _0x453a69(){var _0x56af89=_0x4db845;return this[_0x56af89(0x241)];}},{'key':'data','get':function _0xf6a8c3(){var _0x3501d5=_0x4db845;return this[_0x3501d5(0x26a)];},'set':function _0x47ba40(_0x57921b){var _0x18be78=_0x4db845;this[_0x18be78(0x27c)](_0x57921b);}},{'key':_0x4db845(0x20a),'get':function _0x1ff019(){var _0x242c70=_0x4db845;return this[_0x242c70(0x20d)][_0x242c70(0x20a)];},'set':function _0x576b50(_0xe44a2b){var _0x51fc35=_0x4db845;this[_0x51fc35(0x20d)]['colors']=_0xe44a2b,this['particleSystem']&&this[_0x51fc35(0x263)][_0x51fc35(0x22a)]({'colors':_0xe44a2b}),this['resize']();}},{'key':'_mountedHook','value':function _0xa662ed(){}},{'key':_0x4db845(0x1a8),'value':function _0x5f2702(){var _0x426e93=_0x4db845;this[_0x426e93(0x26c)]=this[_0x426e93(0x186)]['scene'],this[_0x426e93(0x26d)]=this[_0x426e93(0x186)]['camera'],this[_0x426e93(0x241)]=new Cesium$1[(_0x426e93(0x229))](),this['_map']['scene'][_0x426e93(0x241)]['add'](this[_0x426e93(0x241)]),this[_0x426e93(0x2ab)]={'lonRange':new Cesium$1[(_0x426e93(0x2c1))](),'latRange':new Cesium$1[(_0x426e93(0x2c1))](),'pixelSize':0x0},this[_0x426e93(0x17f)]=new Cesium$1[(_0x426e93(0x28e))](Cesium$1[_0x426e93(0x19d)][_0x426e93(0x299)],0.99*0x615299),this[_0x426e93(0x24c)](),window[_0x426e93(0x2e1)]('resize',this[_0x426e93(0x2de)][_0x426e93(0x167)](this),![]),this['mouse_down']=![],this[_0x426e93(0x182)]=![],this['_map']['on'](mars3d__namespace[_0x426e93(0x23f)]['wheel'],this[_0x426e93(0x29d)],this),this[_0x426e93(0x186)]['on'](mars3d__namespace[_0x426e93(0x23f)][_0x426e93(0x251)],this[_0x426e93(0x2b8)],this),this[_0x426e93(0x186)]['on'](mars3d__namespace[_0x426e93(0x23f)]['mouseUp'],this[_0x426e93(0x2a7)],this),this[_0x426e93(0x186)]['on'](mars3d__namespace['EventType'][_0x426e93(0x1d5)],this[_0x426e93(0x23c)],this),this[_0x426e93(0x26a)]&&this['setData'](this[_0x426e93(0x26a)]);}},{'key':_0x4db845(0x213),'value':function _0x130d6a(){var _0x31310a=_0x4db845;window['removeEventListener']('resize',this[_0x31310a(0x2de)]),this[_0x31310a(0x186)][_0x31310a(0x2b4)](mars3d__namespace[_0x31310a(0x23f)][_0x31310a(0x208)],this['_onMap_preRenderEvent'],this),this[_0x31310a(0x186)][_0x31310a(0x2b4)](mars3d__namespace[_0x31310a(0x23f)][_0x31310a(0x275)],this['_onMapWhellEvent'],this),this['_map'][_0x31310a(0x2b4)](mars3d__namespace[_0x31310a(0x23f)][_0x31310a(0x251)],this[_0x31310a(0x2b8)],this),this['_map'][_0x31310a(0x2b4)](mars3d__namespace[_0x31310a(0x23f)][_0x31310a(0x257)],this['_onMouseUpEvent'],this),this['_map']['off'](mars3d__namespace['EventType'][_0x31310a(0x1d5)],this['_onMouseMoveEvent'],this),this[_0x31310a(0x241)][_0x31310a(0x282)](),this[_0x31310a(0x186)][_0x31310a(0x26c)]['primitives']['remove'](this[_0x31310a(0x241)]);}},{'key':'resize','value':function _0x13a765(){var _0x411176=_0x4db845;if(!this[_0x411176(0x2a9)]||!this[_0x411176(0x263)])return;this[_0x411176(0x241)][_0x411176(0x2a9)]=![],this[_0x411176(0x241)][_0x411176(0x282)](),this['_map'][_0x411176(0x245)](mars3d__namespace[_0x411176(0x23f)][_0x411176(0x208)],this[_0x411176(0x2cd)],this);}},{'key':_0x4db845(0x2cd),'value':function _0xd02c59(_0x179024){var _0x30f0ce=_0x4db845;this[_0x30f0ce(0x263)][_0x30f0ce(0x1a5)](this[_0x30f0ce(0x26c)][_0x30f0ce(0x246)]),this[_0x30f0ce(0x20e)](),this[_0x30f0ce(0x241)][_0x30f0ce(0x2a9)]=!![];}},{'key':'_onMapWhellEvent','value':function _0x32decb(_0x57448d){var _0x5cbd12=_0x4db845,_0x5d43c6=this;clearTimeout(this[_0x5cbd12(0x1b1)]);if(!this[_0x5cbd12(0x2a9)]||!this['particleSystem'])return;this[_0x5cbd12(0x241)][_0x5cbd12(0x2a9)]=![],this[_0x5cbd12(0x1b1)]=setTimeout(function(){var _0x5a9460=_0x5cbd12;if(!_0x5d43c6[_0x5a9460(0x2a9)])return;_0x5d43c6[_0x5a9460(0x273)]();},0xc8);}},{'key':'_onMouseDownEvent','value':function _0x3337af(_0x4cc39b){var _0x168197=_0x4db845;this[_0x168197(0x22e)]=!![];}},{'key':_0x4db845(0x23c),'value':function _0xdb0146(_0x151cfc){var _0x38437c=_0x4db845;if(!this[_0x38437c(0x2a9)]||!this[_0x38437c(0x263)])return;this[_0x38437c(0x22e)]&&(this[_0x38437c(0x241)][_0x38437c(0x2a9)]=![],this[_0x38437c(0x182)]=!![]);}},{'key':_0x4db845(0x2a7),'value':function _0x148f8c(_0x4b8170){var _0x5e6d00=_0x4db845;if(!this['show']||!this[_0x5e6d00(0x263)])return;this['mouse_down']&&this[_0x5e6d00(0x182)]&&this['redraw'](),this[_0x5e6d00(0x241)][_0x5e6d00(0x2a9)]=!![],this[_0x5e6d00(0x22e)]=![],this['mouse_move']=![];}},{'key':'redraw','value':function _0x4be44f(){var _0x4fe04a=_0x4db845;if(!this[_0x4fe04a(0x186)]||!this['show'])return;this[_0x4fe04a(0x24c)](),this[_0x4fe04a(0x263)]['applyViewerParameters'](this[_0x4fe04a(0x2ab)]),this['primitives'][_0x4fe04a(0x2a9)]=!![];}},{'key':'setData','value':function _0x4e8614(_0x3fa96f){var _0x3cfefe=_0x4db845;this['_data']=_0x3fa96f,this[_0x3cfefe(0x263)]&&this[_0x3cfefe(0x263)][_0x3cfefe(0x2c9)](),this[_0x3cfefe(0x263)]=new ParticleSystem(this[_0x3cfefe(0x26c)][_0x3cfefe(0x246)],_0x3fa96f,this[_0x3cfefe(0x27f)](),this[_0x3cfefe(0x2ab)]),this[_0x3cfefe(0x20e)]();}},{'key':_0x4db845(0x1bc),'value':function _0x401ea8(_0x45c9a6,_0x23e3de){var _0x15f6ec=_0x4db845;if(_0x45c9a6)for(var _0x20fdc0 in _0x45c9a6){this[_0x20fdc0]=_0x45c9a6[_0x20fdc0];}this['particleSystem']&&this[_0x15f6ec(0x263)][_0x15f6ec(0x22a)](this[_0x15f6ec(0x27f)]());}},{'key':_0x4db845(0x27f),'value':function _0x13553d(){var _0x275953=_0x4db845,_0xb0edba=Math[_0x275953(0x1c3)](Math['sqrt'](this[_0x275953(0x21d)]));return this[_0x275953(0x21d)]=_0xb0edba*_0xb0edba,{'particlesTextureSize':_0xb0edba,'maxParticles':this['particlesNumber'],'particleHeight':this[_0x275953(0x2b1)],'fadeOpacity':this[_0x275953(0x162)],'dropRate':this[_0x275953(0x233)],'dropRateBump':this[_0x275953(0x18a)],'speedFactor':this[_0x275953(0x1e6)],'lineWidth':this['lineWidth'],'globeLayer':this['globeLayer'],'WMS_URL':this[_0x275953(0x1eb)],'colors':this[_0x275953(0x20a)]};}},{'key':_0x4db845(0x20e),'value':function _0x52d9ae(){var _0x37ad13=_0x4db845;this['primitives'][_0x37ad13(0x258)](this['particleSystem'][_0x37ad13(0x214)][_0x37ad13(0x241)][_0x37ad13(0x284)]),this['primitives'][_0x37ad13(0x258)](this['particleSystem'][_0x37ad13(0x214)][_0x37ad13(0x241)][_0x37ad13(0x281)]),this['primitives'][_0x37ad13(0x258)](this[_0x37ad13(0x263)]['particlesComputing'][_0x37ad13(0x241)][_0x37ad13(0x16b)]),this['primitives']['add'](this[_0x37ad13(0x263)][_0x37ad13(0x214)][_0x37ad13(0x241)][_0x37ad13(0x1ea)]),this[_0x37ad13(0x241)][_0x37ad13(0x258)](this[_0x37ad13(0x263)]['particlesComputing'][_0x37ad13(0x241)][_0x37ad13(0x1c8)]),this[_0x37ad13(0x241)][_0x37ad13(0x258)](this[_0x37ad13(0x263)][_0x37ad13(0x1b6)][_0x37ad13(0x241)][_0x37ad13(0x17d)]),this[_0x37ad13(0x241)][_0x37ad13(0x258)](this[_0x37ad13(0x263)][_0x37ad13(0x1b6)][_0x37ad13(0x241)][_0x37ad13(0x27b)]),this[_0x37ad13(0x241)][_0x37ad13(0x258)](this[_0x37ad13(0x263)][_0x37ad13(0x1b6)][_0x37ad13(0x241)]['screen']);}},{'key':_0x4db845(0x24c),'value':function _0x19bfe6(){var _0x4c5d76=_0x4db845,_0x4aafbf=this['camera'][_0x4c5d76(0x238)](this[_0x4c5d76(0x26c)][_0x4c5d76(0x2be)]['ellipsoid']);if(!_0x4aafbf){var _0x3bc4ce=this[_0x4c5d76(0x186)][_0x4c5d76(0x1b8)]();_0x4aafbf=Cesium$1[_0x4c5d76(0x293)][_0x4c5d76(0x18b)](_0x3bc4ce[_0x4c5d76(0x294)],_0x3bc4ce[_0x4c5d76(0x17e)],_0x3bc4ce['xmax'],_0x3bc4ce[_0x4c5d76(0x183)]);}var _0x5894b4=Util['viewRectangleToLonLatRange'](_0x4aafbf);this[_0x4c5d76(0x2ab)][_0x4c5d76(0x1ff)]['x']=_0x5894b4[_0x4c5d76(0x1b3)][_0x4c5d76(0x195)],this[_0x4c5d76(0x2ab)][_0x4c5d76(0x1ff)]['y']=_0x5894b4[_0x4c5d76(0x1b3)][_0x4c5d76(0x267)],this[_0x4c5d76(0x2ab)][_0x4c5d76(0x193)]['x']=_0x5894b4[_0x4c5d76(0x184)][_0x4c5d76(0x195)],this[_0x4c5d76(0x2ab)][_0x4c5d76(0x193)]['y']=_0x5894b4['lat'][_0x4c5d76(0x267)];var _0x55d45c=this['camera'][_0x4c5d76(0x16d)](this[_0x4c5d76(0x17f)],this[_0x4c5d76(0x26c)][_0x4c5d76(0x1a0)],this[_0x4c5d76(0x26c)][_0x4c5d76(0x1cd)]);_0x55d45c>0x0&&(this[_0x4c5d76(0x2ab)][_0x4c5d76(0x169)]=_0x55d45c);}}]),_0x137795;}(BaseLayer$1);mars3d__namespace[_0x351187(0x295)][_0x351187(0x2b5)](_0x351187(0x2d1),WindLayer),mars3d__namespace['layer'][_0x351187(0x236)]=WindLayer;var CanvasParticle=(function(){function _0x16e0b4(){var _0x151d43=_0x260e;_classCallCheck(this,_0x16e0b4),this['lng']=null,this['lat']=null,this['tlng']=null,this[_0x151d43(0x18f)]=null,this[_0x151d43(0x176)]=null;}return _createClass(_0x16e0b4,[{'key':'destroy','value':function _0x2f8fb0(){for(var _0x2ce036 in this){delete this[_0x2ce036];}}}]),_0x16e0b4;}()),CanvasWindField=(function(){var _0x24e48f=_0x351187;function _0x477b7a(_0x512272){var _0x223a46=_0x260e;_classCallCheck(this,_0x477b7a),this[_0x223a46(0x22a)](_0x512272);}return _createClass(_0x477b7a,[{'key':_0x24e48f(0x181),'get':function _0xe3540b(){var _0x38c3a7=_0x24e48f;return this[_0x38c3a7(0x242)];},'set':function _0x13e27d(_0x871988){var _0x3cad7d=_0x24e48f;this[_0x3cad7d(0x242)]=(0x64-(_0x871988>0x63?0x63:_0x871988))*0x64,this[_0x3cad7d(0x2cc)]=[(this['xmax']-this[_0x3cad7d(0x294)])/this[_0x3cad7d(0x242)],(this[_0x3cad7d(0x183)]-this['ymin'])/this[_0x3cad7d(0x242)]];}},{'key':'maxAge','get':function _0x42b847(){var _0x5990c7=_0x24e48f;return this[_0x5990c7(0x207)];},'set':function _0x47a75d(_0x32a877){this['_maxAge']=_0x32a877;}},{'key':_0x24e48f(0x22a),'value':function _0xe203b2(_0x5bbbcf){var _0x2139c7=_0x24e48f;this[_0x2139c7(0x20d)]=_0x5bbbcf,this[_0x2139c7(0x230)]=_0x5bbbcf[_0x2139c7(0x230)]||0x78,this[_0x2139c7(0x181)]=_0x5bbbcf['speedRate']||0x32,this['particles']=[];var _0x273921=_0x5bbbcf[_0x2139c7(0x21d)]||0x1000;for(var _0x28fb1d=0x0;_0x28fb1d<_0x273921;_0x28fb1d++){var _0x4e014f=this['_randomParticle'](new CanvasParticle());this['particles'][_0x2139c7(0x188)](_0x4e014f);}}},{'key':_0x24e48f(0x1f5),'value':function _0x1988c4(_0x59d55c){var _0xf0e609=_0x24e48f;this[_0xf0e609(0x244)]=_0x59d55c[_0xf0e609(0x244)],this[_0xf0e609(0x2d6)]=_0x59d55c[_0xf0e609(0x2d6)],this[_0xf0e609(0x294)]=_0x59d55c[_0xf0e609(0x294)],this[_0xf0e609(0x272)]=_0x59d55c['xmax'],this[_0xf0e609(0x17e)]=_0x59d55c[_0xf0e609(0x17e)],this['ymax']=_0x59d55c[_0xf0e609(0x183)],this['grid']=[];var _0xbdc1ca=_0x59d55c[_0xf0e609(0x28b)],_0x40a18e=_0x59d55c['vdata'],_0x2c44fb=![];_0xbdc1ca[_0xf0e609(0x1fa)]===this['rows']&&_0xbdc1ca[0x0][_0xf0e609(0x1fa)]===this[_0xf0e609(0x2d6)]&&(_0x2c44fb=!![]);var _0x3bc4cd=0x0,_0x48e42c=null,_0x273fa4=null;for(var _0x17a164=0x0;_0x17a164<this[_0xf0e609(0x244)];_0x17a164++){_0x48e42c=[];for(var _0xc48e5=0x0;_0xc48e5<this['cols'];_0xc48e5++,_0x3bc4cd++){_0x2c44fb?_0x273fa4=this['_calcUV'](_0xbdc1ca[_0x17a164][_0xc48e5],_0x40a18e[_0x17a164][_0xc48e5]):_0x273fa4=this[_0xf0e609(0x18d)](_0xbdc1ca[_0x3bc4cd],_0x40a18e[_0x3bc4cd]),_0x48e42c[_0xf0e609(0x188)](_0x273fa4);}this[_0xf0e609(0x2b2)][_0xf0e609(0x188)](_0x48e42c);}this[_0xf0e609(0x20d)]['reverseY']&&this['grid'][_0xf0e609(0x203)]();}},{'key':'clear','value':function _0x2a03c0(){var _0x50901e=_0x24e48f;delete this['rows'],delete this[_0x50901e(0x2d6)],delete this[_0x50901e(0x294)],delete this[_0x50901e(0x272)],delete this[_0x50901e(0x17e)],delete this[_0x50901e(0x183)],delete this[_0x50901e(0x2b2)],delete this['particles'];}},{'key':_0x24e48f(0x296),'value':function _0x4d501a(_0x854940,_0x1b51c9){var _0x39537b=_0x24e48f,_0x2ad5e9=(_0x854940-this[_0x39537b(0x294)])/(this[_0x39537b(0x272)]-this[_0x39537b(0x294)])*(this['cols']-0x1),_0xdf08c0=(this[_0x39537b(0x183)]-_0x1b51c9)/(this['ymax']-this[_0x39537b(0x17e)])*(this['rows']-0x1);return[_0x2ad5e9,_0xdf08c0];}},{'key':_0x24e48f(0x1ca),'value':function _0x145e28(_0x540efe,_0x34a9a6){var _0x58dad9=_0x24e48f;if(_0x540efe<0x0||_0x540efe>=this[_0x58dad9(0x2d6)]||_0x34a9a6>=this[_0x58dad9(0x244)])return[0x0,0x0,0x0];var _0xf663a4=Math[_0x58dad9(0x2a1)](_0x540efe),_0x3c7670=Math['floor'](_0x34a9a6);if(_0xf663a4===_0x540efe&&_0x3c7670===_0x34a9a6)return this[_0x58dad9(0x2b2)][_0x34a9a6][_0x540efe];var _0x53dfc5=_0xf663a4+0x1,_0x2e8f97=_0x3c7670+0x1,_0x1f44a6=this[_0x58dad9(0x1ca)](_0xf663a4,_0x3c7670),_0x50e086=this['getUVByXY'](_0x53dfc5,_0x3c7670),_0x1e2f70=this[_0x58dad9(0x1ca)](_0xf663a4,_0x2e8f97),_0x37c6d9=this[_0x58dad9(0x1ca)](_0x53dfc5,_0x2e8f97),_0x222786=null;try{_0x222786=this[_0x58dad9(0x22c)](_0x540efe-_0xf663a4,_0x34a9a6-_0x3c7670,_0x1f44a6,_0x50e086,_0x1e2f70,_0x37c6d9);}catch(_0xdadf94){console[_0x58dad9(0x2b6)](_0x540efe,_0x34a9a6);}return _0x222786;}},{'key':_0x24e48f(0x22c),'value':function _0x36c990(_0x210b5a,_0x2b99fc,_0x42cd8c,_0x69c94,_0x43cf99,_0x2f6519){var _0x2b5ee1=_0x24e48f,_0x4864c5=0x1-_0x210b5a,_0x2f03ff=0x1-_0x2b99fc,_0x710a3a=_0x4864c5*_0x2f03ff,_0x4c1333=_0x210b5a*_0x2f03ff,_0x61f73e=_0x4864c5*_0x2b99fc,_0x2bc316=_0x210b5a*_0x2b99fc,_0x5c1c20=_0x42cd8c[0x0]*_0x710a3a+_0x69c94[0x0]*_0x4c1333+_0x43cf99[0x0]*_0x61f73e+_0x2f6519[0x0]*_0x2bc316,_0x5f1e25=_0x42cd8c[0x1]*_0x710a3a+_0x69c94[0x1]*_0x4c1333+_0x43cf99[0x1]*_0x61f73e+_0x2f6519[0x1]*_0x2bc316;return this[_0x2b5ee1(0x18d)](_0x5c1c20,_0x5f1e25);}},{'key':_0x24e48f(0x18d),'value':function _0x4c3578(_0x14b02e,_0x4e1bfb){var _0x2f9f6d=_0x24e48f;return[+_0x14b02e,+_0x4e1bfb,Math[_0x2f9f6d(0x264)](_0x14b02e*_0x14b02e+_0x4e1bfb*_0x4e1bfb)];}},{'key':'getUVByPoint','value':function _0x2ce3a7(_0x3d26a3,_0x386fa6){var _0x39b108=_0x24e48f;if(!this[_0x39b108(0x24a)](_0x3d26a3,_0x386fa6))return null;var _0x47a3a6=this[_0x39b108(0x296)](_0x3d26a3,_0x386fa6),_0x3f781c=this[_0x39b108(0x1ca)](_0x47a3a6[0x0],_0x47a3a6[0x1]);return _0x3f781c;}},{'key':'isInExtent','value':function _0x557b89(_0x359f17,_0x1e42d4){var _0x2e4d72=_0x24e48f;return _0x359f17>=this[_0x2e4d72(0x294)]&&_0x359f17<=this[_0x2e4d72(0x272)]&&_0x1e42d4>=this['ymin']&&_0x1e42d4<=this[_0x2e4d72(0x183)]?!![]:![];}},{'key':_0x24e48f(0x283),'value':function _0x38f43a(){var _0x155b87=_0x24e48f,_0x1c297d=fRandomByfloat(this['xmin'],this[_0x155b87(0x272)]),_0xb1a463=fRandomByfloat(this[_0x155b87(0x17e)],this['ymax']);return{'lat':_0xb1a463,'lng':_0x1c297d};}},{'key':'getParticles','value':function _0x5f3667(){var _0x58dd33=_0x24e48f,_0x5012f4,_0x3ac11c,_0x223757;for(var _0x227cd7=0x0,_0x250cda=this[_0x58dd33(0x1e4)][_0x58dd33(0x1fa)];_0x227cd7<_0x250cda;_0x227cd7++){var _0xa933bf=this[_0x58dd33(0x1e4)][_0x227cd7];_0xa933bf[_0x58dd33(0x176)]<=0x0&&(_0xa933bf=this[_0x58dd33(0x29e)](_0xa933bf));if(_0xa933bf[_0x58dd33(0x176)]>0x0){var _0x114a68=_0xa933bf[_0x58dd33(0x22f)],_0x47f90e=_0xa933bf[_0x58dd33(0x18f)];_0x223757=this[_0x58dd33(0x177)](_0x114a68,_0x47f90e),_0x223757?(_0x5012f4=_0x114a68+this[_0x58dd33(0x2cc)][0x0]*_0x223757[0x0],_0x3ac11c=_0x47f90e+this[_0x58dd33(0x2cc)][0x1]*_0x223757[0x1],_0xa933bf[_0x58dd33(0x27a)]=_0x114a68,_0xa933bf[_0x58dd33(0x184)]=_0x47f90e,_0xa933bf[_0x58dd33(0x22f)]=_0x5012f4,_0xa933bf[_0x58dd33(0x18f)]=_0x3ac11c,_0xa933bf[_0x58dd33(0x176)]--):_0xa933bf['age']=0x0;}}return this[_0x58dd33(0x1e4)];}},{'key':_0x24e48f(0x29e),'value':function _0x40e5d1(_0x486cbc){var _0x35b1c7=_0x24e48f,_0x226839,_0x2b55f3;for(var _0x3a9187=0x0;_0x3a9187<0x1e;_0x3a9187++){_0x226839=this[_0x35b1c7(0x283)](),_0x2b55f3=this['getUVByPoint'](_0x226839[_0x35b1c7(0x27a)],_0x226839[_0x35b1c7(0x184)]);if(_0x2b55f3&&_0x2b55f3[0x2]>0x0)break;}if(!_0x2b55f3)return _0x486cbc;var _0x51812a=_0x226839[_0x35b1c7(0x27a)]+this[_0x35b1c7(0x2cc)][0x0]*_0x2b55f3[0x0],_0x4ac562=_0x226839['lat']+this[_0x35b1c7(0x2cc)][0x1]*_0x2b55f3[0x1];return _0x486cbc['lng']=_0x226839['lng'],_0x486cbc[_0x35b1c7(0x184)]=_0x226839[_0x35b1c7(0x184)],_0x486cbc['tlng']=_0x51812a,_0x486cbc['tlat']=_0x4ac562,_0x486cbc[_0x35b1c7(0x176)]=Math[_0x35b1c7(0x234)](Math[_0x35b1c7(0x1d3)]()*this['maxAge']),_0x486cbc;}},{'key':_0x24e48f(0x2c9),'value':function _0x1e5f14(){for(var _0x4b7e82 in this){delete this[_0x4b7e82];}}}]),_0x477b7a;}());function fRandomByfloat(_0x473494,_0x1de51a){var _0x22dd07=_0x351187;return _0x473494+Math[_0x22dd07(0x1d3)]()*(_0x1de51a-_0x473494);}var Cesium=mars3d__namespace[_0x351187(0x2ca)],BaseLayer=mars3d__namespace[_0x351187(0x205)][_0x351187(0x2aa)],CanvasWindLayer=function(_0x10d064){var _0x8d08c5=_0x351187;_inherits(_0x453544,_0x10d064);var _0x1a4b68=_createSuper(_0x453544);function _0x453544(){var _0x4ef594=_0x260e,_0x814299,_0x480ef5=arguments[_0x4ef594(0x1fa)]>0x0&&arguments[0x0]!==undefined?arguments[0x0]:{};return _classCallCheck(this,_0x453544),_0x814299=_0x1a4b68[_0x4ef594(0x1e5)](this,_0x480ef5),_0x814299[_0x4ef594(0x1bc)](_0x480ef5),_0x814299[_0x4ef594(0x1c7)]=null,_0x814299;}return _createClass(_0x453544,[{'key':_0x8d08c5(0x1bc),'value':function _0x2fb6cf(_0x4801e7,_0x41e3c5){var _0x4a3d8f=_0x8d08c5,_0x4d45c9,_0x30f888,_0x19f866;this[_0x4a3d8f(0x209)]=0x3e8/(_0x4801e7[_0x4a3d8f(0x1dd)]||0xa),this['_pointerEvents']=(_0x4d45c9=this['options'][_0x4a3d8f(0x2c6)])!==null&&_0x4d45c9!==void 0x0?_0x4d45c9:![],this[_0x4a3d8f(0x1c2)]=_0x4801e7[_0x4a3d8f(0x1c2)]||_0x4a3d8f(0x249),this['lineWidth']=_0x4801e7['lineWidth']||0x1,this[_0x4a3d8f(0x2b1)]=(_0x30f888=_0x4801e7[_0x4a3d8f(0x2b1)])!==null&&_0x30f888!==void 0x0?_0x30f888:0x0,this['reverseY']=(_0x19f866=_0x4801e7[_0x4a3d8f(0x2a8)])!==null&&_0x19f866!==void 0x0?_0x19f866:![],this[_0x4a3d8f(0x1cb)]&&this[_0x4a3d8f(0x1cb)][_0x4a3d8f(0x22a)](_0x4801e7);}},{'key':_0x8d08c5(0x205),'get':function _0x3a1532(){var _0xb1ef8f=_0x8d08c5;return this[_0xb1ef8f(0x1c7)];}},{'key':_0x8d08c5(0x18e),'get':function _0x1f6ea2(){var _0x2cb7f8=_0x8d08c5;return this['_map'][_0x2cb7f8(0x26c)]['canvas'][_0x2cb7f8(0x278)];}},{'key':_0x8d08c5(0x19a),'get':function _0x1659e9(){var _0x5e10d4=_0x8d08c5;return this[_0x5e10d4(0x186)][_0x5e10d4(0x26c)]['canvas'][_0x5e10d4(0x26b)];}},{'key':_0x8d08c5(0x2c6),'get':function _0x1fb8c8(){var _0x4b6d9c=_0x8d08c5;return this[_0x4b6d9c(0x274)];},'set':function _0x386de7(_0x4515ba){var _0x2ac795=_0x8d08c5;this[_0x2ac795(0x274)]=_0x4515ba;if(!this[_0x2ac795(0x1c7)])return;_0x4515ba?this[_0x2ac795(0x1c7)][_0x2ac795(0x277)][_0x2ac795(0x265)]=_0x2ac795(0x1db):this[_0x2ac795(0x1c7)][_0x2ac795(0x277)][_0x2ac795(0x265)]=_0x2ac795(0x1c9);}},{'key':_0x8d08c5(0x21d),'get':function _0x4aea8e(){var _0x3be74d=_0x8d08c5;return this['options'][_0x3be74d(0x21d)];},'set':function _0xd89592(_0x4a0726){var _0x38921a=_0x8d08c5,_0x139282=this;this[_0x38921a(0x20d)]['particlesNumber']=_0x4a0726,clearTimeout(this[_0x38921a(0x25e)]),this[_0x38921a(0x25e)]=setTimeout(function(){var _0x4e0d72=_0x38921a;_0x139282[_0x4e0d72(0x273)]();},0x1f4);}},{'key':_0x8d08c5(0x181),'get':function _0x2450bb(){var _0x1b251a=_0x8d08c5;return this[_0x1b251a(0x20d)][_0x1b251a(0x181)];},'set':function _0x381481(_0x14dd71){var _0x1547a0=_0x8d08c5;this[_0x1547a0(0x20d)][_0x1547a0(0x181)]=_0x14dd71,this['windField']&&(this[_0x1547a0(0x1cb)]['speedRate']=_0x14dd71);}},{'key':_0x8d08c5(0x230),'get':function _0x26593c(){var _0x41149e=_0x8d08c5;return this[_0x41149e(0x20d)]['maxAge'];},'set':function _0xc5d818(_0x3807ea){var _0x35dae1=_0x8d08c5;this['options'][_0x35dae1(0x230)]=_0x3807ea,this[_0x35dae1(0x1cb)]&&(this[_0x35dae1(0x1cb)][_0x35dae1(0x230)]=_0x3807ea);}},{'key':_0x8d08c5(0x1de),'get':function _0x4b5c0b(){var _0x24e167=_0x8d08c5;return this[_0x24e167(0x1fb)];},'set':function _0x592232(_0x9364e5){var _0xc22c=_0x8d08c5;this[_0xc22c(0x27c)](_0x9364e5);}},{'key':_0x8d08c5(0x19b),'value':function _0x33cae4(_0x2a3179){var _0x17ca8=_0x8d08c5;_0x2a3179?this[_0x17ca8(0x1a8)]():(this['windData']&&(this[_0x17ca8(0x20d)]['data']=this[_0x17ca8(0x1fb)]),this[_0x17ca8(0x213)]());}},{'key':_0x8d08c5(0x2ae),'value':function _0x23e1ea(){var _0x5908e0=_0x8d08c5;this[_0x5908e0(0x20d)][_0x5908e0(0x21a)]?this[_0x5908e0(0x247)]():this[_0x5908e0(0x1cb)]=new CanvasWindField(this[_0x5908e0(0x20d)]);}},{'key':'_addedHook','value':function _0x5799f2(){var _0x3a0e87=_0x8d08c5;this['canvas']=this[_0x3a0e87(0x232)](),this[_0x3a0e87(0x266)]=this['canvas']['getContext']('2d'),this[_0x3a0e87(0x1a3)](),this[_0x3a0e87(0x20d)]['data']&&this[_0x3a0e87(0x27c)](this[_0x3a0e87(0x20d)][_0x3a0e87(0x1de)]);}},{'key':_0x8d08c5(0x213),'value':function _0x4ad002(){var _0x35fdfa=_0x8d08c5;this[_0x35fdfa(0x1a2)](),this[_0x35fdfa(0x2af)](),this[_0x35fdfa(0x1c7)]&&(this[_0x35fdfa(0x186)]['container'][_0x35fdfa(0x290)](this[_0x35fdfa(0x1c7)]),delete this[_0x35fdfa(0x1c7)]);}},{'key':_0x8d08c5(0x232),'value':function _0x1744f8(){var _0x1abcfb=_0x8d08c5,_0xba1118=document[_0x1abcfb(0x1d8)](_0x1abcfb(0x1c7));_0xba1118[_0x1abcfb(0x277)]['position']=_0x1abcfb(0x2d9),_0xba1118[_0x1abcfb(0x277)]['top']=_0x1abcfb(0x2df),_0xba1118[_0x1abcfb(0x277)][_0x1abcfb(0x17a)]=_0x1abcfb(0x2df),_0xba1118[_0x1abcfb(0x277)][_0x1abcfb(0x260)]=_0x1abcfb(0x2ad),_0xba1118[_0x1abcfb(0x277)][_0x1abcfb(0x185)]=_0x1abcfb(0x2ad),_0xba1118[_0x1abcfb(0x277)][_0x1abcfb(0x2c6)]=this[_0x1abcfb(0x274)]?'auto':'none',_0xba1118[_0x1abcfb(0x277)]['zIndex']=0xa,_0xba1118[_0x1abcfb(0x235)]('id',_0x1abcfb(0x166)),_0xba1118[_0x1abcfb(0x235)]('class',_0x1abcfb(0x166)),this[_0x1abcfb(0x186)]['container'][_0x1abcfb(0x279)](_0xba1118);var _0x4d1764=this[_0x1abcfb(0x186)][_0x1abcfb(0x26c)];return _0xba1118[_0x1abcfb(0x260)]=_0x4d1764[_0x1abcfb(0x1c7)][_0x1abcfb(0x278)],_0xba1118[_0x1abcfb(0x185)]=_0x4d1764[_0x1abcfb(0x1c7)]['clientHeight'],_0xba1118;}},{'key':_0x8d08c5(0x2de),'value':function _0x51e55f(){var _0x5dff0c=_0x8d08c5;this[_0x5dff0c(0x1c7)]&&(this['canvas']['width']=this[_0x5dff0c(0x18e)],this[_0x5dff0c(0x1c7)][_0x5dff0c(0x185)]=this[_0x5dff0c(0x19a)]);}},{'key':_0x8d08c5(0x1a3),'value':function _0xa1c56e(){var _0x50d6d3=_0x8d08c5,_0x13ed01=this,_0x59645e=Date[_0x50d6d3(0x23d)]();(function _0x2d43aa(){var _0x254ef0=_0x50d6d3;_0x13ed01[_0x254ef0(0x1cc)]=window[_0x254ef0(0x2c7)](_0x2d43aa);if(_0x13ed01['show']&&_0x13ed01[_0x254ef0(0x1cb)]){var _0x31b1db=Date[_0x254ef0(0x23d)](),_0xb1a0d1=_0x31b1db-_0x59645e;_0xb1a0d1>_0x13ed01['frameTime']&&(_0x59645e=_0x31b1db-_0xb1a0d1%_0x13ed01[_0x254ef0(0x209)],_0x13ed01[_0x254ef0(0x27e)]());}}(),window['addEventListener'](_0x50d6d3(0x2de),this[_0x50d6d3(0x2de)]['bind'](this),![]),this[_0x50d6d3(0x22e)]=![],this[_0x50d6d3(0x182)]=![],this['options']['mouseHidden']&&(this[_0x50d6d3(0x186)]['on'](mars3d__namespace[_0x50d6d3(0x23f)][_0x50d6d3(0x275)],this[_0x50d6d3(0x29d)],this),this['_map']['on'](mars3d__namespace[_0x50d6d3(0x23f)][_0x50d6d3(0x251)],this[_0x50d6d3(0x2b8)],this),this['_map']['on'](mars3d__namespace[_0x50d6d3(0x23f)][_0x50d6d3(0x257)],this['_onMouseUpEvent'],this)));}},{'key':'unbindEvent','value':function _0x323e0a(){var _0x57fd68=_0x8d08c5;window[_0x57fd68(0x225)](this[_0x57fd68(0x1cc)]),delete this['animateFrame'],window[_0x57fd68(0x2da)](_0x57fd68(0x2de),this['resize']),this[_0x57fd68(0x20d)][_0x57fd68(0x1c1)]&&(this[_0x57fd68(0x186)][_0x57fd68(0x2b4)](mars3d__namespace['EventType']['wheel'],this[_0x57fd68(0x29d)],this),this[_0x57fd68(0x186)]['off'](mars3d__namespace[_0x57fd68(0x23f)][_0x57fd68(0x251)],this['_onMouseDownEvent'],this),this['_map'][_0x57fd68(0x2b4)](mars3d__namespace[_0x57fd68(0x23f)]['mouseUp'],this[_0x57fd68(0x2a7)],this),this['_map'][_0x57fd68(0x2b4)](mars3d__namespace[_0x57fd68(0x23f)][_0x57fd68(0x1d5)],this[_0x57fd68(0x23c)],this));}},{'key':_0x8d08c5(0x29d),'value':function _0x57e4e8(_0x1ab767){var _0x21f75b=_0x8d08c5,_0x405a72=this;clearTimeout(this[_0x21f75b(0x1b1)]);if(!this['show']||!this[_0x21f75b(0x1c7)])return;this['canvas']['style'][_0x21f75b(0x1c0)]=_0x21f75b(0x1c6),this['refreshTimer']=setTimeout(function(){var _0x432ab3=_0x21f75b;if(!_0x405a72[_0x432ab3(0x2a9)])return;_0x405a72[_0x432ab3(0x273)](),_0x405a72[_0x432ab3(0x1c7)][_0x432ab3(0x277)][_0x432ab3(0x1c0)]='visible';},0xc8);}},{'key':'_onMouseDownEvent','value':function _0x3638c7(_0x33b4c2){var _0x305361=_0x8d08c5;this[_0x305361(0x22e)]=!![],this['_map']['off'](mars3d__namespace[_0x305361(0x23f)][_0x305361(0x1d5)],this['_onMouseMoveEvent'],this),this['_map']['on'](mars3d__namespace[_0x305361(0x23f)]['mouseMove'],this[_0x305361(0x23c)],this);}},{'key':'_onMouseMoveEvent','value':function _0x3503a5(_0x176b71){var _0x392115=_0x8d08c5;if(!this['show']||!this[_0x392115(0x1c7)])return;this['mouse_down']&&(this[_0x392115(0x1c7)][_0x392115(0x277)][_0x392115(0x1c0)]=_0x392115(0x1c6),this[_0x392115(0x182)]=!![]);}},{'key':_0x8d08c5(0x2a7),'value':function _0x206635(_0x9e2429){var _0x4148be=_0x8d08c5;if(!this[_0x4148be(0x2a9)]||!this['canvas'])return;this[_0x4148be(0x186)]['off'](mars3d__namespace['EventType'][_0x4148be(0x1d5)],this[_0x4148be(0x23c)],this),this['mouse_down']&&this[_0x4148be(0x182)]&&this['redraw'](),this['canvas'][_0x4148be(0x277)][_0x4148be(0x1c0)]=_0x4148be(0x2b7),this[_0x4148be(0x22e)]=![],this[_0x4148be(0x182)]=![];}},{'key':_0x8d08c5(0x27c),'value':function _0x2ddbf3(_0x4168a8){var _0x1d550b=_0x8d08c5;this[_0x1d550b(0x1a2)](),this[_0x1d550b(0x1fb)]=_0x4168a8,this[_0x1d550b(0x1cb)][_0x1d550b(0x1f5)](_0x4168a8),this[_0x1d550b(0x273)]();}},{'key':_0x8d08c5(0x273),'value':function _0x44c44c(){var _0x31008d=_0x8d08c5;if(!this[_0x31008d(0x2a9)])return;this['windField'][_0x31008d(0x22a)](this[_0x31008d(0x20d)]),this[_0x31008d(0x27e)]();}},{'key':_0x8d08c5(0x27e),'value':function _0x33d980(){var _0x26bed2=_0x8d08c5;if(this[_0x26bed2(0x256)])return;this[_0x26bed2(0x256)]=!![];if(this['worker'])this[_0x26bed2(0x1cb)][_0x26bed2(0x27e)]();else{var _0x166dc7=this['windField']['getParticles']();this[_0x26bed2(0x222)](_0x166dc7);}this[_0x26bed2(0x256)]=![];}},{'key':'_drawLines','value':function _0x559996(_0x210035){var _0x2ed968=_0x8d08c5;this[_0x2ed968(0x266)][_0x2ed968(0x2a5)]=_0x2ed968(0x219),this['canvasContext']['fillRect'](0x0,0x0,this[_0x2ed968(0x18e)],this['canvasHeight']),this['canvasContext'][_0x2ed968(0x2a5)]=_0x2ed968(0x226),this[_0x2ed968(0x266)][_0x2ed968(0x17b)]=0.9,this['canvasContext'][_0x2ed968(0x2c8)](),this[_0x2ed968(0x266)][_0x2ed968(0x1f8)]=this[_0x2ed968(0x1f8)],this[_0x2ed968(0x266)][_0x2ed968(0x173)]=this[_0x2ed968(0x1c2)];var _0x113f62=this[_0x2ed968(0x186)][_0x2ed968(0x26c)][_0x2ed968(0x18c)]!==Cesium[_0x2ed968(0x29c)]['SCENE3D'];for(var _0x39a0d4=0x0,_0x51f539=_0x210035[_0x2ed968(0x1fa)];_0x39a0d4<_0x51f539;_0x39a0d4++){var _0x2e1ccb=_0x210035[_0x39a0d4],_0x3c6f85=this[_0x2ed968(0x27d)](_0x2e1ccb['lng'],_0x2e1ccb['lat'],_0x2e1ccb),_0x2de037=this[_0x2ed968(0x27d)](_0x2e1ccb['tlng'],_0x2e1ccb[_0x2ed968(0x18f)],_0x2e1ccb);if(!_0x3c6f85||!_0x2de037)continue;if(_0x113f62&&Math[_0x2ed968(0x187)](_0x3c6f85[0x0]-_0x2de037[0x0])>=this[_0x2ed968(0x18e)])continue;this[_0x2ed968(0x266)][_0x2ed968(0x21f)](_0x3c6f85[0x0],_0x3c6f85[0x1]),this[_0x2ed968(0x266)][_0x2ed968(0x2d7)](_0x2de037[0x0],_0x2de037[0x1]);}this[_0x2ed968(0x266)][_0x2ed968(0x1a7)]();}},{'key':_0x8d08c5(0x27d),'value':function _0xd7ba70(_0x403ffe,_0x20fbbc,_0x529e44){var _0x1e0c48=_0x8d08c5,_0x2b0e19=Cesium[_0x1e0c48(0x19d)][_0x1e0c48(0x18b)](_0x403ffe,_0x20fbbc,this['fixedHeight']),_0x49ee31=this[_0x1e0c48(0x186)][_0x1e0c48(0x26c)];if(_0x49ee31[_0x1e0c48(0x18c)]===Cesium[_0x1e0c48(0x29c)][_0x1e0c48(0x160)]){var _0x457770=new Cesium['EllipsoidalOccluder'](_0x49ee31['globe'][_0x1e0c48(0x1d1)],_0x49ee31[_0x1e0c48(0x26d)][_0x1e0c48(0x270)]),_0xe9af6b=_0x457770[_0x1e0c48(0x1ad)](_0x2b0e19);if(!_0xe9af6b)return _0x529e44[_0x1e0c48(0x176)]=0x0,null;}var _0x298a4e=Cesium['SceneTransforms'][_0x1e0c48(0x2b9)](this[_0x1e0c48(0x186)]['scene'],_0x2b0e19);return _0x298a4e?[_0x298a4e['x'],_0x298a4e['y']]:null;}},{'key':'clear','value':function _0x4963b7(){var _0x38d887=_0x8d08c5;this[_0x38d887(0x1cb)][_0x38d887(0x1a2)](),delete this[_0x38d887(0x1fb)];}},{'key':_0x8d08c5(0x247),'value':function _0x525918(){var _0x470204=_0x8d08c5,_0x3caaf2=this;this[_0x470204(0x21a)]=new Worker(this[_0x470204(0x20d)][_0x470204(0x21a)]),this[_0x470204(0x21a)][_0x470204(0x220)]=function(_0x431062){var _0x4e7f44=_0x470204;_0x3caaf2['_drawLines'](_0x431062[_0x4e7f44(0x1de)][_0x4e7f44(0x1e4)]),_0x3caaf2[_0x4e7f44(0x199)]=![];},this[_0x470204(0x1cb)]={'init':function _0x149da6(_0x77ad2b){var _0x56ec59=_0x470204;_0x3caaf2[_0x56ec59(0x21a)][_0x56ec59(0x2c5)]({'type':_0x56ec59(0x212),'options':_0x77ad2b});},'setOptions':function _0x35eb31(_0x16f630){var _0x454d9c=_0x470204;_0x3caaf2[_0x454d9c(0x21a)][_0x454d9c(0x2c5)]({'type':_0x454d9c(0x22a),'options':_0x16f630});},'setDate':function _0x1a2f54(_0x385e8b){var _0x5c14c9=_0x470204;_0x3caaf2[_0x5c14c9(0x21a)][_0x5c14c9(0x2c5)]({'type':_0x5c14c9(0x1f5),'data':_0x385e8b});},'update':function _0x251203(){var _0x5888d2=_0x470204;if(_0x3caaf2[_0x5888d2(0x199)])return;_0x3caaf2[_0x5888d2(0x199)]=!![],_0x3caaf2[_0x5888d2(0x21a)][_0x5888d2(0x2c5)]({'type':_0x5888d2(0x27e)});},'clear':function _0x5ef38c(){var _0x495009=_0x470204;_0x3caaf2[_0x495009(0x21a)]['postMessage']({'type':_0x495009(0x1a2)});}},this['windField'][_0x470204(0x212)](this[_0x470204(0x20d)]);}}]),_0x453544;}(BaseLayer);mars3d__namespace['LayerUtil'][_0x351187(0x2b5)]('canvasWind',CanvasWindLayer),mars3d__namespace[_0x351187(0x205)]['CanvasWindLayer']=CanvasWindLayer,mars3d__namespace[_0x351187(0x172)]=CanvasWindField,mars3d__namespace[_0x351187(0x21c)]=WindUtil,exports[_0x351187(0x172)]=CanvasWindField,exports['CanvasWindLayer']=CanvasWindLayer,exports[_0x351187(0x236)]=WindLayer,exports[_0x351187(0x21c)]=WindUtil,Object[_0x351187(0x23a)](exports,_0x351187(0x240),{'value':!![]});
|
|
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':!![]});
|
|
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.15",
|
|
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.15"
|
|
12
12
|
},
|
|
13
13
|
"scripts": {
|
|
14
14
|
"lint": "eslint ./src/**/*.{js,ts} --fix"
|