mars3d-wind 3.2.4 → 3.3.0
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 +12 -22
- package/package.json +13 -28
- package/LICENSE +0 -206
package/dist/mars3d-wind.js
CHANGED
|
@@ -1,24 +1,14 @@
|
|
|
1
|
-
|
|
2
|
-
* Mars3D
|
|
3
|
-
*
|
|
4
|
-
*
|
|
1
|
+
/**
|
|
2
|
+
* Mars3D三维可视化平台 mars3d-sdk
|
|
3
|
+
*
|
|
4
|
+
* 版本信息:v3.3.0
|
|
5
|
+
* 编译日期:2022-03-18 17:26:22
|
|
5
6
|
* 版权所有:Copyright by 火星科技 http://mars3d.cn
|
|
7
|
+
* 使用单位:免费公开版 ,2022-02-01
|
|
6
8
|
*/
|
|
7
|
-
(function
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
let mars3d = window.mars3d //通过index.html的head引入
|
|
12
|
-
|
|
13
|
-
mars3d = require("mars3d")
|
|
14
|
-
window['mars3d'] = mars3d
|
|
15
|
-
}
|
|
16
|
-
if (!mars3d) {
|
|
17
|
-
console.error('请引入mars3d库,可参考教程:http://mars3d.cn/dev/guide/basics/import.html')
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
var a0_0x440998=a0_0x3456;function a0_0x3456(_0x489ec3,_0x372711){var _0x1be9c2=a0_0x1be9();return a0_0x3456=function(_0x3456c7,_0x3cdbea){_0x3456c7=_0x3456c7-0x94;var _0x15ac26=_0x1be9c2[_0x3456c7];return _0x15ac26;},a0_0x3456(_0x489ec3,_0x372711);}function a0_0x1be9(){var _0x3ff274=['undefined','register','getWind','moveTo','segments','WindLayer','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}','removeEventListener','lon','getOwnPropertySymbols','particlesTextureSize','once','5453VRaIzY','rgb(206,255,255)','BaseLayer','BoundingSphere','WMS_URL','toRadians','textures','commandType','value','vertexShaderSource','name','_setOptionsHook','hidden','mouseUp','PixelFormat','_map','beginPath','depthMask','postProcessingPosition','floor','lineWidth','bindEvent','width','execute','position','defineProperty','iterator','Draw','Sampler','wgs84ToWindowCoordinates','nextParticlesPosition','fixedHeight','ymax','DrawCommand','createCommand','fromDegrees','globeLayer','_data','primitiveType','createRenderingFramebuffers','south','Derived\x20constructors\x20may\x20only\x20return\x20object\x20or\x20undefined','Pass','requestAnimationFrame','_tomap','isInExtent','call','2394828FJaORO','screen','Cartesian3','lineTo','writable','log','remove','TWO_PI','min','Texture','destroyObject','show','positionWC','toDegrees','getDefaultRenderState','cols','removeAll','Arguments','create','context','fragmentShaderSource','clearCommand','canvas','clear','canvasWidth','umin','Object','uniformMap','randomBetween','shaderProgram','depthTest','destroy','globalAlpha','trails','getUVByXY','windData','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}','string','tlat','globalCompositeOperation','vdata','EllipsoidalOccluder','commandToExecute','windField','speedRate','_maxAge','test','push','_addedHook','11835280JsQuBa','levmin','updatePosition','lighter','fadeOpacity','cos','#ffffff','cancelAnimationFrame','viewRectangleToLonLatRange','currentParticlesSpeed','length','viewport','createSegmentsGeometry','toGridXY','getU','getDirection','toStringTag','appendChild','particlesWind','commandList','strokeStyle','100%','constructor','getPixelSize','createComputingPrimitives','absolute','calc_speedRate','age','currentTrailsDepth','EventType','mod','toString','lat','autoClear','SCENE3D','rawRenderState','setAttribute','getOptions','getColorTexture','bind','segmentsColor','particleSystem','mouseDown','preRender','latRange','addEventListener','_speedRate','all','PrimitiveCollection','globeBoundingSphere','RenderState','Framebuffer','Cartesian2','visibility','setData','TRIANGLES','maxAge','Cesium','currentParticlesPosition','_onMouseUpEvent','defaultValue','createFramebuffer','mars3dWind','DISABLE_GL_POSITION_LOG_DEPTH','GeometryAttribute','_pointerEvents','6759920fxOjbg','_calcUV','frameTime','north','this\x20hasn\x27t\x20been\x20initialised\x20-\x20super()\x20hasn\x27t\x20been\x20called','ClearCommand','createRenderingPrimitives','framebuffers','nextTrailsColor','isArray','updateViewerParameters','clampToLatitudeRange','Color','fromGeometry','blending','_createCanvas','globe','ymin','PI_OVER_TWO','xmax','Invalid\x20attempt\x20to\x20spread\x20non-iterable\x20instance.\x0aIn\x20order\x20to\x20be\x20iterable,\x20non-array\x20objects\x20must\x20have\x20a\x20[Symbol.iterator]()\x20method.','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}','mouseMove','Appearance','Map','WindUtil','green','drawWind','source','defined','canvasWindy','umax','hasOwnProperty','particlesTextures','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}','grid','LINEAR','_onMapWhellEvent','mouse_down','PI_OVER_THREE','colorTable','ComponentDatatype','red','from','clientHeight','Compute','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}','ellipsoid','primitives','dropRate','construct','UNSIGNED_BYTE','destroyParticlesTextures','now','maxParticles','createTexture','_removedHook','particles','drawingBufferWidth','canvasContext','currentTrails','createRenderingTextures','LUMINANCE','lonRange','wheel','arrayBufferView','nextParticlesSpeed','getOwnPropertyDescriptors','RGBA','exports','OPAQUE','createParticlesTextures','abs','particlesNumber','lev','DISABLE_LOG_DEPTH_FRAGMENT_WRITE','colors','removeChild','THREE_PI_OVER_TWO','unbindEvent','mars3d','_onMouseMoveEvent','mouse_move','particlesRendering','visible','_mountedHook','vmax','viewerParameters','clearFramebuffers','forEach','_bilinearInterpolation','dropRateBump','add','ComputeCommand','getSpeed','NEAREST','0px','preExecute','west','pixelSize','_canrefresh','LayerUtil','framebuffer','levmax','rows','STATIC_DRAW','drawingBufferHeight','segmentsDepth','fromCssColorString','TextureMagnificationFilter','round','addPrimitives','Set','getOwnPropertyDescriptor','PrimitiveType','udata','redraw','_onMap_preRenderEvent','5800604TixaOX','filter','dimensions','container','destination-in','color','refreshTimer','none','xmin','8dvxcRR','313770LhTGij','mode','ALWAYS','canvasResize','updateSpeed','array','clientWidth','ShaderProgram','applyViewerParameters','document','Geometry','fillRect','Module','keys','DEPTH_COMPONENT','postProcessingSpeed','FLOAT','depthTexture','setPrototypeOf','ceil','randomizeParticles','_showHook','height','Math','slice','computeViewRectangle','lng','getUVByPoint','nextTrailsDepth','valueOf','vertexArray','pointerEvents','tlng','speedFactor','1609773LBvpDa','currentTrailsColor','VertexArray','max','nextTrails','camera','wind','SceneTransforms','resize','options','Matrix4','scene','_calcStep','geometry','refreshParticles','update','getRandomLatLng','reverseY','object','getExtent','BufferUsage','off','configurable','apply','TextureMinificationFilter','outputTexture','defineProperties','auto','setOptions','setGeometry','SceneMode','default','attributeLocations','fillStyle','getV','_drawLines','ShaderSource','animateFrame','createRawRenderState','pointer-events','Rectangle','data','pow','PixelDatatype','createWindTextures','_onMouseDownEvent','12174IeQZfY','stroke','@@iterator','_particlesNumber','function','enumerable','prototype','canvasHeight','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}','__esModule','random','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}','atan2','sqrt','particlesComputing','style','CanvasWindLayer','__proto__','randomParticle','windTextures','layer','DepthFunction'];a0_0x1be9=function(){return _0x3ff274;};return a0_0x1be9();}(function(_0x4d4470,_0x5a0131){var _0x304b1f=a0_0x3456,_0x3beac7=_0x4d4470();while(!![]){try{var _0x196bf7=parseInt(_0x304b1f(0x1c4))/0x1*(-parseInt(_0x304b1f(0x1c5))/0x2)+-parseInt(_0x304b1f(0x1e7))/0x3+-parseInt(_0x304b1f(0x1bb))/0x4+parseInt(_0x304b1f(0x145))/0x5+parseInt(_0x304b1f(0x215))/0x6*(parseInt(_0x304b1f(0xa3))/0x7)+parseInt(_0x304b1f(0x103))/0x8+-parseInt(_0x304b1f(0xd2))/0x9;if(_0x196bf7===_0x5a0131)break;else _0x3beac7['push'](_0x3beac7['shift']());}catch(_0x4438af){_0x3beac7['push'](_0x3beac7['shift']());}}}(a0_0x1be9,0xdcb87),window[a0_0x440998(0x141)]=function(_0x949ca){var _0x592814={};function _0x18a8fe(_0x32971d){var _0x96b7fd=a0_0x3456;if(_0x592814[_0x32971d])return _0x592814[_0x32971d][_0x96b7fd(0x18a)];var _0x26af92=_0x592814[_0x32971d]={'i':_0x32971d,'l':!0x1,'exports':{}};return _0x949ca[_0x32971d][_0x96b7fd(0xd1)](_0x26af92[_0x96b7fd(0x18a)],_0x26af92,_0x26af92[_0x96b7fd(0x18a)],_0x18a8fe),_0x26af92['l']=!0x0,_0x26af92[_0x96b7fd(0x18a)];}return _0x18a8fe['m']=_0x949ca,_0x18a8fe['c']=_0x592814,_0x18a8fe['d']=function(_0x307060,_0x301795,_0x1d03a6){var _0x30bd71=a0_0x3456;_0x18a8fe['o'](_0x307060,_0x301795)||Object[_0x30bd71(0xbc)](_0x307060,_0x301795,{'enumerable':!0x0,'get':_0x1d03a6});},_0x18a8fe['r']=function(_0x3dd677){var _0x28dbf6=a0_0x3456;_0x28dbf6(0x97)!=typeof Symbol&&Symbol[_0x28dbf6(0x113)]&&Object[_0x28dbf6(0xbc)](_0x3dd677,Symbol[_0x28dbf6(0x113)],{'value':_0x28dbf6(0x1d1)}),Object[_0x28dbf6(0xbc)](_0x3dd677,_0x28dbf6(0x21e),{'value':!0x0});},_0x18a8fe['t']=function(_0xa6a1cb,_0x4cc20c){var _0x2dfc5a=a0_0x3456;if(0x1&_0x4cc20c&&(_0xa6a1cb=_0x18a8fe(_0xa6a1cb)),0x8&_0x4cc20c)return _0xa6a1cb;if(0x4&_0x4cc20c&&'object'==typeof _0xa6a1cb&&_0xa6a1cb&&_0xa6a1cb[_0x2dfc5a(0x21e)])return _0xa6a1cb;var _0x33ace1=Object[_0x2dfc5a(0xe4)](null);if(_0x18a8fe['r'](_0x33ace1),Object[_0x2dfc5a(0xbc)](_0x33ace1,_0x2dfc5a(0x206),{'enumerable':!0x0,'value':_0xa6a1cb}),0x2&_0x4cc20c&&_0x2dfc5a(0xf7)!=typeof _0xa6a1cb){for(var _0x10da71 in _0xa6a1cb)_0x18a8fe['d'](_0x33ace1,_0x10da71,function(_0x3fbecd){return _0xa6a1cb[_0x3fbecd];}[_0x2dfc5a(0x12a)](null,_0x10da71));}return _0x33ace1;},_0x18a8fe['n']=function(_0x49a3a8){var _0x3e839a=_0x49a3a8&&_0x49a3a8['__esModule']?function(){var _0x412f1e=a0_0x3456;return _0x49a3a8[_0x412f1e(0x206)];}:function(){return _0x49a3a8;};return _0x18a8fe['d'](_0x3e839a,'a',_0x3e839a),_0x3e839a;},_0x18a8fe['o']=function(_0x501ece,_0x5524de){var _0x53369f=a0_0x3456;return Object[_0x53369f(0x21b)][_0x53369f(0x165)][_0x53369f(0xd1)](_0x501ece,_0x5524de);},_0x18a8fe['p']='',_0x18a8fe(_0x18a8fe['s']=0x1a);}([function(_0x458cd0,_0x1e9014){var _0x591c5b=a0_0x440998;_0x458cd0[_0x591c5b(0x18a)]=window[_0x591c5b(0x195)];},function(_0x203a2f,_0x560995){var _0x2eb29d=a0_0x440998;_0x203a2f['exports']=function(_0x50218d,_0x58a4a2){if(!(_0x50218d instanceof _0x58a4a2))throw new TypeError('Cannot\x20call\x20a\x20class\x20as\x20a\x20function');},_0x203a2f[_0x2eb29d(0x18a)][_0x2eb29d(0x21e)]=!0x0,_0x203a2f[_0x2eb29d(0x18a)][_0x2eb29d(0x206)]=_0x203a2f[_0x2eb29d(0x18a)];},function(_0x349e39,_0x2a43a2){var _0x20bc30=a0_0x440998;function _0x502eae(_0x229fd9,_0x5efa66){var _0x571acc=a0_0x3456;for(var _0xbce8c3=0x0;_0xbce8c3<_0x5efa66[_0x571acc(0x10d)];_0xbce8c3++){var _0x4d741f=_0x5efa66[_0xbce8c3];_0x4d741f[_0x571acc(0x21a)]=_0x4d741f[_0x571acc(0x21a)]||!0x1,_0x4d741f[_0x571acc(0x1fd)]=!0x0,_0x571acc(0xab)in _0x4d741f&&(_0x4d741f[_0x571acc(0xd6)]=!0x0),Object[_0x571acc(0xbc)](_0x229fd9,_0x4d741f['key'],_0x4d741f);}}_0x349e39[_0x20bc30(0x18a)]=function(_0x17a81b,_0x574590,_0x2beb0a){var _0x2cb561=_0x20bc30;return _0x574590&&_0x502eae(_0x17a81b[_0x2cb561(0x21b)],_0x574590),_0x2beb0a&&_0x502eae(_0x17a81b,_0x2beb0a),Object[_0x2cb561(0xbc)](_0x17a81b,_0x2cb561(0x21b),{'writable':!0x1}),_0x17a81b;},_0x349e39['exports'][_0x20bc30(0x21e)]=!0x0,_0x349e39[_0x20bc30(0x18a)]['default']=_0x349e39[_0x20bc30(0x18a)];},function(_0x2ea88b,_0xac3453){var _0x3790f3=a0_0x440998;function _0x1a798c(_0x5082f8){var _0x544869=a0_0x3456;return _0x2ea88b['exports']=_0x1a798c=Object[_0x544869(0x1d7)]?Object['getPrototypeOf']:function(_0x2c03c7){return _0x2c03c7['__proto__']||Object['getPrototypeOf'](_0x2c03c7);},_0x2ea88b[_0x544869(0x18a)][_0x544869(0x21e)]=!0x0,_0x2ea88b[_0x544869(0x18a)]['default']=_0x2ea88b[_0x544869(0x18a)],_0x1a798c(_0x5082f8);}_0x2ea88b[_0x3790f3(0x18a)]=_0x1a798c,_0x2ea88b['exports'][_0x3790f3(0x21e)]=!0x0,_0x2ea88b[_0x3790f3(0x18a)]['default']=_0x2ea88b[_0x3790f3(0x18a)];},function(_0x6412f9,_0x4ada9b,_0x233636){var _0x2d7fca=a0_0x440998,_0x2fa250=_0x233636(0x16),_0x9558a6=_0x233636(0x17),_0x1ed185=_0x233636(0x18),_0xd4996d=_0x233636(0x19);_0x6412f9[_0x2d7fca(0x18a)]=function(_0x5d0e80){return _0x2fa250(_0x5d0e80)||_0x9558a6(_0x5d0e80)||_0x1ed185(_0x5d0e80)||_0xd4996d();},_0x6412f9[_0x2d7fca(0x18a)][_0x2d7fca(0x21e)]=!0x0,_0x6412f9[_0x2d7fca(0x18a)][_0x2d7fca(0x206)]=_0x6412f9[_0x2d7fca(0x18a)];},function(_0x5e6057,_0x5197da){var _0x3703b6=a0_0x440998;_0x5e6057[_0x3703b6(0x18a)]=function(_0x1b6f1b,_0x27d5dd,_0x408cff){return _0x27d5dd in _0x1b6f1b?Object['defineProperty'](_0x1b6f1b,_0x27d5dd,{'value':_0x408cff,'enumerable':!0x0,'configurable':!0x0,'writable':!0x0}):_0x1b6f1b[_0x27d5dd]=_0x408cff,_0x1b6f1b;},_0x5e6057[_0x3703b6(0x18a)][_0x3703b6(0x21e)]=!0x0,_0x5e6057[_0x3703b6(0x18a)][_0x3703b6(0x206)]=_0x5e6057[_0x3703b6(0x18a)];},function(_0x3bdc69,_0x419637,_0x96330){var _0x33a474=a0_0x440998,_0x421886=_0x96330(0x13);_0x3bdc69[_0x33a474(0x18a)]=function(_0x183e97,_0x478f23){var _0x3e5dd2=_0x33a474;if(_0x3e5dd2(0x219)!=typeof _0x478f23&&null!==_0x478f23)throw new TypeError('Super\x20expression\x20must\x20either\x20be\x20null\x20or\x20a\x20function');Object[_0x3e5dd2(0xbc)](_0x183e97,_0x3e5dd2(0x21b),{'value':Object[_0x3e5dd2(0xe4)](_0x478f23&&_0x478f23[_0x3e5dd2(0x21b)],{'constructor':{'value':_0x183e97,'writable':!0x0,'configurable':!0x0}}),'writable':!0x1}),_0x478f23&&_0x421886(_0x183e97,_0x478f23);},_0x3bdc69[_0x33a474(0x18a)][_0x33a474(0x21e)]=!0x0,_0x3bdc69[_0x33a474(0x18a)][_0x33a474(0x206)]=_0x3bdc69[_0x33a474(0x18a)];},function(_0x4eda67,_0x55797b,_0x34e7ca){var _0x203048=a0_0x440998,_0x1fe6bc=_0x34e7ca(0x14)[_0x203048(0x206)],_0x4dccfa=_0x34e7ca(0x15);_0x4eda67['exports']=function(_0x438199,_0x1ab4e3){var _0x5b1b25=_0x203048;if(_0x1ab4e3&&(_0x5b1b25(0x1f9)===_0x1fe6bc(_0x1ab4e3)||'function'==typeof _0x1ab4e3))return _0x1ab4e3;if(void 0x0!==_0x1ab4e3)throw new TypeError(_0x5b1b25(0xcc));return _0x4dccfa(_0x438199);},_0x4eda67['exports'][_0x203048(0x21e)]=!0x0,_0x4eda67[_0x203048(0x18a)]['default']=_0x4eda67[_0x203048(0x18a)];},function(_0x2ee26b,_0x4a14b7){var _0x99e848=a0_0x440998;_0x2ee26b['exports']=_0x99e848(0x9d);},function(_0x3fef47,_0x303ea2){var _0x23adc9=a0_0x440998;_0x3fef47[_0x23adc9(0x18a)]=function(_0x3e15f3,_0x521286){var _0x2057f8=_0x23adc9;(null==_0x521286||_0x521286>_0x3e15f3['length'])&&(_0x521286=_0x3e15f3[_0x2057f8(0x10d)]);for(var _0x41c15c=0x0,_0x3b3d74=new Array(_0x521286);_0x41c15c<_0x521286;_0x41c15c++)_0x3b3d74[_0x41c15c]=_0x3e15f3[_0x41c15c];return _0x3b3d74;},_0x3fef47[_0x23adc9(0x18a)][_0x23adc9(0x21e)]=!0x0,_0x3fef47[_0x23adc9(0x18a)][_0x23adc9(0x206)]=_0x3fef47[_0x23adc9(0x18a)];},function(_0x4182fb,_0x13e946){var _0x5364ef=a0_0x440998;_0x4182fb[_0x5364ef(0x18a)]='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}';},function(_0x4cacb7,_0x33cb02){var _0x1378dd=a0_0x440998;_0x4cacb7['exports']=_0x1378dd(0x15a);},function(_0x437594,_0x45c317){var _0xe57c7d=a0_0x440998;_0x437594[_0xe57c7d(0x18a)]=_0xe57c7d(0x220);},function(_0xe46d4d,_0xb068d){var _0x2e4d6d=a0_0x440998;_0xe46d4d[_0x2e4d6d(0x18a)]=_0x2e4d6d(0x21d);},function(_0x3d878d,_0x389c82){_0x3d878d['exports']='//\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}';},function(_0x4132ab,_0x2f84ac){_0x4132ab['exports']='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}';},function(_0x5cc743,_0x42995c){var _0x300e67=a0_0x440998;_0x5cc743[_0x300e67(0x18a)]=_0x300e67(0x167);},function(_0x412eeb,_0x48ef63){var _0x256046=a0_0x440998;_0x412eeb['exports']=_0x256046(0x173);},function(_0x2cbc28,_0x98d9e){var _0x274adb=a0_0x440998;_0x2cbc28[_0x274adb(0x18a)]=_0x274adb(0xf6);},function(_0x5a32f5,_0x4b5a1b){var _0x582613=a0_0x440998;function _0x166d5a(_0x2aaab6,_0x2ff570){var _0x19949d=a0_0x3456;return _0x5a32f5['exports']=_0x166d5a=Object[_0x19949d(0x1d7)]||function(_0x191daa,_0xcffa79){var _0x4d67bd=_0x19949d;return _0x191daa[_0x4d67bd(0x226)]=_0xcffa79,_0x191daa;},_0x5a32f5[_0x19949d(0x18a)][_0x19949d(0x21e)]=!0x0,_0x5a32f5[_0x19949d(0x18a)][_0x19949d(0x206)]=_0x5a32f5[_0x19949d(0x18a)],_0x166d5a(_0x2aaab6,_0x2ff570);}_0x5a32f5[_0x582613(0x18a)]=_0x166d5a,_0x5a32f5[_0x582613(0x18a)][_0x582613(0x21e)]=!0x0,_0x5a32f5[_0x582613(0x18a)][_0x582613(0x206)]=_0x5a32f5[_0x582613(0x18a)];},function(_0x30589f,_0x530c76){var _0x87cf02=a0_0x440998;function _0x50837b(_0x557c93){var _0x6e59fa=a0_0x3456;return _0x30589f[_0x6e59fa(0x18a)]=_0x50837b=_0x6e59fa(0x219)==typeof Symbol&&'symbol'==typeof Symbol[_0x6e59fa(0xbd)]?function(_0x1a2cae){return typeof _0x1a2cae;}:function(_0x6af490){var _0x361419=_0x6e59fa;return _0x6af490&&_0x361419(0x219)==typeof Symbol&&_0x6af490['constructor']===Symbol&&_0x6af490!==Symbol[_0x361419(0x21b)]?'symbol':typeof _0x6af490;},_0x30589f['exports']['__esModule']=!0x0,_0x30589f[_0x6e59fa(0x18a)][_0x6e59fa(0x206)]=_0x30589f[_0x6e59fa(0x18a)],_0x50837b(_0x557c93);}_0x30589f[_0x87cf02(0x18a)]=_0x50837b,_0x30589f[_0x87cf02(0x18a)]['__esModule']=!0x0,_0x30589f[_0x87cf02(0x18a)][_0x87cf02(0x206)]=_0x30589f[_0x87cf02(0x18a)];},function(_0xc2a0b2,_0x20c5b3){var _0x51fab7=a0_0x440998;_0xc2a0b2[_0x51fab7(0x18a)]=function(_0x181293){var _0x1fa5af=_0x51fab7;if(void 0x0===_0x181293)throw new ReferenceError(_0x1fa5af(0x149));return _0x181293;},_0xc2a0b2[_0x51fab7(0x18a)][_0x51fab7(0x21e)]=!0x0,_0xc2a0b2[_0x51fab7(0x18a)]['default']=_0xc2a0b2[_0x51fab7(0x18a)];},function(_0x185d1e,_0x28fb29,_0x271c95){var _0x3c704f=a0_0x440998,_0x21d653=_0x271c95(0x9);_0x185d1e[_0x3c704f(0x18a)]=function(_0x1d1624){var _0x10f579=_0x3c704f;if(Array[_0x10f579(0x14e)](_0x1d1624))return _0x21d653(_0x1d1624);},_0x185d1e[_0x3c704f(0x18a)][_0x3c704f(0x21e)]=!0x0,_0x185d1e[_0x3c704f(0x18a)][_0x3c704f(0x206)]=_0x185d1e[_0x3c704f(0x18a)];},function(_0x34caeb,_0x5ee609){var _0x476f95=a0_0x440998;_0x34caeb[_0x476f95(0x18a)]=function(_0x416ce1){var _0x33bd14=_0x476f95;if(_0x33bd14(0x97)!=typeof Symbol&&null!=_0x416ce1[Symbol['iterator']]||null!=_0x416ce1[_0x33bd14(0x217)])return Array[_0x33bd14(0x170)](_0x416ce1);},_0x34caeb['exports']['__esModule']=!0x0,_0x34caeb[_0x476f95(0x18a)][_0x476f95(0x206)]=_0x34caeb[_0x476f95(0x18a)];},function(_0x44855a,_0x718fde,_0x7e36c){var _0x4f0be2=a0_0x440998,_0x2dcc69=_0x7e36c(0x9);_0x44855a['exports']=function(_0x59e032,_0x3d0d0e){var _0x5e4d86=a0_0x3456;if(_0x59e032){if(_0x5e4d86(0xf7)==typeof _0x59e032)return _0x2dcc69(_0x59e032,_0x3d0d0e);var _0xf1e02c=Object['prototype'][_0x5e4d86(0x122)][_0x5e4d86(0xd1)](_0x59e032)[_0x5e4d86(0x1dd)](0x8,-0x1);return _0x5e4d86(0xec)===_0xf1e02c&&_0x59e032[_0x5e4d86(0x119)]&&(_0xf1e02c=_0x59e032[_0x5e4d86(0x119)][_0x5e4d86(0xad)]),_0x5e4d86(0x15d)===_0xf1e02c||_0x5e4d86(0x1b5)===_0xf1e02c?Array[_0x5e4d86(0x170)](_0x59e032):_0x5e4d86(0xe3)===_0xf1e02c||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/[_0x5e4d86(0x100)](_0xf1e02c)?_0x2dcc69(_0x59e032,_0x3d0d0e):void 0x0;}},_0x44855a[_0x4f0be2(0x18a)]['__esModule']=!0x0,_0x44855a['exports']['default']=_0x44855a[_0x4f0be2(0x18a)];},function(_0x55b35f,_0x48212c){var _0x5086a5=a0_0x440998;_0x55b35f[_0x5086a5(0x18a)]=function(){var _0x2490e2=_0x5086a5;throw new TypeError(_0x2490e2(0x159));},_0x55b35f['exports'][_0x5086a5(0x21e)]=!0x0,_0x55b35f[_0x5086a5(0x18a)]['default']=_0x55b35f[_0x5086a5(0x18a)];},function(_0x528125,_0x5b3a50,_0x56ed85){'use strict';var _0x46c5ec=a0_0x440998;_0x56ed85['r'](_0x5b3a50),_0x56ed85['d'](_0x5b3a50,_0x46c5ec(0x9c),function(){return _0x37926e;}),_0x56ed85['d'](_0x5b3a50,_0x46c5ec(0x225),function(){return _0x2fc26e;}),_0x56ed85['d'](_0x5b3a50,_0x46c5ec(0x15e),function(){return _0x1a23ab;});var _0x1a23ab={};_0x56ed85['r'](_0x1a23ab),_0x56ed85['d'](_0x1a23ab,_0x46c5ec(0x111),function(){return _0x3ea099;}),_0x56ed85['d'](_0x1a23ab,_0x46c5ec(0x209),function(){return _0x512189;}),_0x56ed85['d'](_0x1a23ab,_0x46c5ec(0x1a3),function(){return _0x59da25;}),_0x56ed85['d'](_0x1a23ab,_0x46c5ec(0x112),function(){return _0x3bc51c;});var _0xc9bd2e=_0x56ed85(0x0),_0x5ef1ac=_0x56ed85(0x5),_0x5f56d2=_0x56ed85['n'](_0x5ef1ac),_0x5d4475=_0x56ed85(0x1),_0x16e182=_0x56ed85['n'](_0x5d4475),_0x52a5b9=_0x56ed85(0x2),_0x11de2e=_0x56ed85['n'](_0x52a5b9),_0x28a825=_0x56ed85(0x6),_0x346a62=_0x56ed85['n'](_0x28a825),_0x20a3f1=_0x56ed85(0x7),_0x4af089=_0x56ed85['n'](_0x20a3f1),_0x3198b8=_0x56ed85(0x3),_0x4449f5=_0x56ed85['n'](_0x3198b8),_0x369b1b=_0x56ed85(0x4),_0x38c8fe=_0x56ed85['n'](_0x369b1b),_0x58ab8c=_0xc9bd2e[_0x46c5ec(0x13c)],_0x3700fd=(function(){var _0x3a15dc=_0x46c5ec;function _0x1d67f5(_0x518b1d){var _0x118697=a0_0x3456;_0x16e182()(this,_0x1d67f5),this[_0x118697(0xaa)]=_0x518b1d['commandType'],this['geometry']=_0x518b1d['geometry'],this[_0x118697(0x207)]=_0x518b1d[_0x118697(0x207)],this[_0x118697(0xc9)]=_0x518b1d[_0x118697(0xc9)],this[_0x118697(0xed)]=_0x518b1d[_0x118697(0xed)],this[_0x118697(0xac)]=_0x518b1d[_0x118697(0xac)],this[_0x118697(0xe6)]=_0x518b1d[_0x118697(0xe6)],this[_0x118697(0x126)]=_0x518b1d['rawRenderState'],this[_0x118697(0x1ab)]=_0x518b1d[_0x118697(0x1ab)],this['outputTexture']=_0x518b1d[_0x118697(0x200)],this['autoClear']=_0x58ab8c[_0x118697(0x13f)](_0x518b1d[_0x118697(0x124)],!0x1),this[_0x118697(0x1a6)]=_0x518b1d[_0x118697(0x1a6)],this[_0x118697(0xdd)]=!0x0,this[_0x118697(0xfc)]=void 0x0,this[_0x118697(0xe7)]=void 0x0,this[_0x118697(0x124)]&&(this['clearCommand']=new _0x58ab8c['ClearCommand']({'color':new _0x58ab8c[(_0x118697(0x151))](0x0,0x0,0x0,0x0),'depth':0x1,'framebuffer':this[_0x118697(0x1ab)],'pass':_0x58ab8c[_0x118697(0xcd)][_0x118697(0x18b)]}));}return _0x11de2e()(_0x1d67f5,[{'key':'createCommand','value':function(_0xd017a){var _0x7d46b8=a0_0x3456;switch(this['commandType']){case _0x7d46b8(0xbe):var _0x133a2e=_0x58ab8c[_0x7d46b8(0x1e9)]['fromGeometry']({'context':_0xd017a,'geometry':this[_0x7d46b8(0x1f4)],'attributeLocations':this[_0x7d46b8(0x207)],'bufferUsage':_0x58ab8c['BufferUsage'][_0x7d46b8(0x1ae)]}),_0x21d39f=_0x58ab8c[_0x7d46b8(0x1cc)]['fromCache']({'context':_0xd017a,'attributeLocations':this['attributeLocations'],'vertexShaderSource':this[_0x7d46b8(0xac)],'fragmentShaderSource':this[_0x7d46b8(0xe6)]}),_0x265400=_0x58ab8c[_0x7d46b8(0x135)]['fromCache'](this[_0x7d46b8(0x126)]);return new _0x58ab8c[(_0x7d46b8(0xc4))]({'owner':this,'vertexArray':_0x133a2e,'primitiveType':this[_0x7d46b8(0xc9)],'uniformMap':this['uniformMap'],'modelMatrix':_0x58ab8c[_0x7d46b8(0x1f1)]['IDENTITY'],'shaderProgram':_0x21d39f,'framebuffer':this[_0x7d46b8(0x1ab)],'renderState':_0x265400,'pass':_0x58ab8c[_0x7d46b8(0xcd)][_0x7d46b8(0x18b)]});case _0x7d46b8(0x172):return new _0x58ab8c[(_0x7d46b8(0x1a2))]({'owner':this,'fragmentShaderSource':this[_0x7d46b8(0xe6)],'uniformMap':this[_0x7d46b8(0xed)],'outputTexture':this[_0x7d46b8(0x200)],'persists':!0x0});default:return;}}},{'key':_0x3a15dc(0x204),'value':function(_0x5ec2fa,_0x501744){var _0x29b0ba=_0x3a15dc;this[_0x29b0ba(0x1f4)]=_0x501744;var _0x2bd25a=_0x58ab8c[_0x29b0ba(0x1e9)][_0x29b0ba(0x152)]({'context':_0x5ec2fa,'geometry':this[_0x29b0ba(0x1f4)],'attributeLocations':this[_0x29b0ba(0x207)],'bufferUsage':_0x58ab8c[_0x29b0ba(0x1fb)][_0x29b0ba(0x1ae)]});this[_0x29b0ba(0xfc)][_0x29b0ba(0x1e3)]=_0x2bd25a;}},{'key':_0x3a15dc(0x1f6),'value':function(_0x1b5b71){var _0xa32d02=_0x3a15dc;this[_0xa32d02(0xdd)]&&_0x1b5b71[_0xa32d02(0x1c6)]==_0x58ab8c['SceneMode'][_0xa32d02(0x125)]&&(_0x58ab8c[_0xa32d02(0x162)](this[_0xa32d02(0xfc)])||(this[_0xa32d02(0xfc)]=this[_0xa32d02(0xc5)](_0x1b5b71['context'])),_0x58ab8c[_0xa32d02(0x162)](this[_0xa32d02(0x1a6)])&&this[_0xa32d02(0x1a6)](),_0x58ab8c[_0xa32d02(0x162)](this[_0xa32d02(0xe7)])&&_0x1b5b71[_0xa32d02(0x116)]['push'](this[_0xa32d02(0xe7)]),_0x1b5b71[_0xa32d02(0x116)][_0xa32d02(0x101)](this['commandToExecute']));}},{'key':'isDestroyed','value':function(){return!0x1;}},{'key':'destroy','value':function(){var _0x1ec908=_0x3a15dc;return _0x58ab8c[_0x1ec908(0x162)](this[_0x1ec908(0xfc)])&&(this[_0x1ec908(0xfc)][_0x1ec908(0xef)]=this[_0x1ec908(0xfc)]['shaderProgram']&&this[_0x1ec908(0xfc)][_0x1ec908(0xef)][_0x1ec908(0xf1)]()),_0x58ab8c[_0x1ec908(0xdc)](this);}}]),_0x1d67f5;}()),_0x5b2369=_0xc9bd2e[_0x46c5ec(0x13c)],_0x185e64={'getFullscreenQuad':function(){var _0x15341c=_0x46c5ec;return new _0x5b2369['Geometry']({'attributes':new _0x5b2369['GeometryAttributes']({'position':new _0x5b2369['GeometryAttribute']({'componentDatatype':_0x5b2369[_0x15341c(0x16e)]['FLOAT'],'componentsPerAttribute':0x3,'values':new Float32Array([-0x1,-0x1,0x0,0x1,-0x1,0x0,0x1,0x1,0x0,-0x1,0x1,0x0])}),'st':new _0x5b2369[(_0x15341c(0x143))]({'componentDatatype':_0x5b2369[_0x15341c(0x16e)][_0x15341c(0x1d5)],'componentsPerAttribute':0x2,'values':new Float32Array([0x0,0x0,0x1,0x0,0x1,0x1,0x0,0x1])})}),'indices':new Uint32Array([0x3,0x2,0x0,0x0,0x2,0x1])});},'createTexture':function(_0x3136cf,_0x2174d6){var _0x2dabfb=_0x46c5ec;if(_0x5b2369['defined'](_0x2174d6)){var _0x2a3b90={};_0x2a3b90[_0x2dabfb(0x186)]=_0x2174d6,_0x3136cf[_0x2dabfb(0x161)]=_0x2a3b90;}return new _0x5b2369[(_0x2dabfb(0xdb))](_0x3136cf);},'createFramebuffer':function(_0x5c524c,_0x36c8d2,_0x9f4e9c){var _0x56ae09=_0x46c5ec;return new _0x5b2369[(_0x56ae09(0x136))]({'context':_0x5c524c,'colorTextures':[_0x36c8d2],'depthTexture':_0x9f4e9c});},'createRawRenderState':function(_0x27a052){var _0x3dfb8d=_0x46c5ec,_0x363940={'viewport':_0x27a052[_0x3dfb8d(0x10e)],'depthTest':_0x27a052[_0x3dfb8d(0xf0)],'depthMask':_0x27a052[_0x3dfb8d(0xb4)],'blending':_0x27a052[_0x3dfb8d(0x153)]};return _0x5b2369[_0x3dfb8d(0x15c)][_0x3dfb8d(0xe0)](!0x0,!0x1,_0x363940);},'viewRectangleToLonLatRange':function(_0x5a845f){var _0x164ae7=_0x46c5ec,_0x52c2e9,_0x1a0d54,_0x326ac5={},_0x5c79c3=_0x5b2369[_0x164ae7(0x1dc)][_0x164ae7(0x121)](_0x5a845f[_0x164ae7(0x1a7)],_0x5b2369[_0x164ae7(0x1dc)][_0x164ae7(0xd9)]),_0x1a5919=_0x5b2369[_0x164ae7(0x1dc)][_0x164ae7(0x121)](_0x5a845f['east'],_0x5b2369[_0x164ae7(0x1dc)][_0x164ae7(0xd9)]),_0x21866f=_0x5a845f[_0x164ae7(0xb9)];_0x21866f>_0x5b2369[_0x164ae7(0x1dc)][_0x164ae7(0x193)]?(_0x52c2e9=0x0,_0x1a0d54=_0x5b2369[_0x164ae7(0x1dc)]['TWO_PI']):_0x1a5919-_0x5c79c3<_0x21866f?(_0x52c2e9=_0x5c79c3,_0x1a0d54=_0x5c79c3+_0x21866f):(_0x52c2e9=_0x5c79c3,_0x1a0d54=_0x1a5919),_0x326ac5[_0x164ae7(0x9f)]={'min':_0x5b2369[_0x164ae7(0x1dc)][_0x164ae7(0xdf)](_0x52c2e9),'max':_0x5b2369[_0x164ae7(0x1dc)][_0x164ae7(0xdf)](_0x1a0d54)};var _0x42489e=_0x5a845f[_0x164ae7(0xcb)],_0xa4e527=_0x5a845f[_0x164ae7(0x148)],_0x54b7c7=_0x5a845f[_0x164ae7(0x1db)],_0x523e89=_0x54b7c7>_0x5b2369[_0x164ae7(0x1dc)]['PI']/0xc?_0x54b7c7/0x2:0x0,_0x29e31b=_0x5b2369[_0x164ae7(0x1dc)][_0x164ae7(0x150)](_0x42489e-_0x523e89),_0x5f310e=_0x5b2369['Math'][_0x164ae7(0x150)](_0xa4e527+_0x523e89);return _0x29e31b<-_0x5b2369[_0x164ae7(0x1dc)]['PI_OVER_THREE']&&(_0x29e31b=-_0x5b2369[_0x164ae7(0x1dc)][_0x164ae7(0x157)]),_0x5f310e>_0x5b2369[_0x164ae7(0x1dc)][_0x164ae7(0x16c)]&&(_0x5f310e=_0x5b2369[_0x164ae7(0x1dc)][_0x164ae7(0x157)]),_0x326ac5['lat']={'min':_0x5b2369[_0x164ae7(0x1dc)][_0x164ae7(0xdf)](_0x29e31b),'max':_0x5b2369[_0x164ae7(0x1dc)][_0x164ae7(0xdf)](_0x5f310e)},_0x326ac5;}},_0x42b5be=_0x56ed85(0xa),_0x427935=_0x56ed85['n'](_0x42b5be),_0x515d4a=_0x56ed85(0xb),_0x3d8930=_0x56ed85['n'](_0x515d4a),_0x577555=_0x56ed85(0x8),_0x15e17e=_0x56ed85['n'](_0x577555),_0x297339=_0x56ed85(0xc),_0x31c37c=_0x56ed85['n'](_0x297339),_0x598c1f=_0x56ed85(0xd),_0x567601=_0x56ed85['n'](_0x598c1f),_0x268907=_0xc9bd2e['Cesium'],_0x2114f5=(function(){var _0x346ef5=_0x46c5ec;function _0x3e15b7(_0x1cd4e2,_0x4a30f4,_0x38a0cd,_0x573e58,_0x53d041){var _0x504bcf=a0_0x3456;_0x16e182()(this,_0x3e15b7),this[_0x504bcf(0x182)](_0x1cd4e2,_0x4a30f4,_0x38a0cd[_0x504bcf(0x191)]),this[_0x504bcf(0xca)](_0x1cd4e2),this[_0x504bcf(0x14b)](_0x1cd4e2,_0x38a0cd,_0x573e58,_0x53d041);}return _0x11de2e()(_0x3e15b7,[{'key':'createRenderingTextures','value':function(_0x4a2bf3,_0x2e4ab0,_0x49a1c8){var _0x20ec25=a0_0x3456;for(var _0x45f11e={'context':_0x4a2bf3,'width':_0x4a2bf3[_0x20ec25(0x17f)],'height':_0x4a2bf3['drawingBufferHeight'],'pixelFormat':_0x268907[_0x20ec25(0xb1)]['RGBA'],'pixelDatatype':_0x268907['PixelDatatype'][_0x20ec25(0x178)]},_0x1859f3={'context':_0x4a2bf3,'width':_0x4a2bf3['drawingBufferWidth'],'height':_0x4a2bf3[_0x20ec25(0x1af)],'pixelFormat':_0x268907[_0x20ec25(0xb1)][_0x20ec25(0x1d3)],'pixelDatatype':_0x268907[_0x20ec25(0x212)]['UNSIGNED_INT']},_0x5afca3=_0x49a1c8['length'],_0x41a8d0=new Float32Array(0x3*_0x5afca3),_0x1e23c1=0x0;_0x1e23c1<_0x5afca3;_0x1e23c1++){var _0x5c8c2e=_0x268907[_0x20ec25(0x151)][_0x20ec25(0x1b1)](_0x49a1c8[_0x1e23c1]);_0x41a8d0[0x3*_0x1e23c1]=_0x5c8c2e[_0x20ec25(0x16f)],_0x41a8d0[0x3*_0x1e23c1+0x1]=_0x5c8c2e[_0x20ec25(0x15f)],_0x41a8d0[0x3*_0x1e23c1+0x2]=_0x5c8c2e['blue'];}var _0x5be427={'context':_0x4a2bf3,'width':_0x5afca3,'height':0x1,'pixelFormat':_0x268907[_0x20ec25(0xb1)]['RGB'],'pixelDatatype':_0x268907[_0x20ec25(0x212)][_0x20ec25(0x1d5)],'sampler':new _0x268907[(_0x20ec25(0xbf))]({'minificationFilter':_0x268907[_0x20ec25(0x1ff)]['LINEAR'],'magnificationFilter':_0x268907[_0x20ec25(0x1b2)][_0x20ec25(0x169)]})};this['textures']={'segmentsColor':_0x185e64[_0x20ec25(0x17c)](_0x45f11e),'segmentsDepth':_0x185e64[_0x20ec25(0x17c)](_0x1859f3),'currentTrailsColor':_0x185e64[_0x20ec25(0x17c)](_0x45f11e),'currentTrailsDepth':_0x185e64[_0x20ec25(0x17c)](_0x1859f3),'nextTrailsColor':_0x185e64[_0x20ec25(0x17c)](_0x45f11e),'nextTrailsDepth':_0x185e64[_0x20ec25(0x17c)](_0x1859f3),'colorTable':_0x185e64[_0x20ec25(0x17c)](_0x5be427,_0x41a8d0)};}},{'key':_0x346ef5(0xca),'value':function(_0x5f39f4){var _0x1215f0=_0x346ef5;this[_0x1215f0(0x14c)]={'segments':_0x185e64[_0x1215f0(0x140)](_0x5f39f4,this[_0x1215f0(0xa9)][_0x1215f0(0x12b)],this[_0x1215f0(0xa9)][_0x1215f0(0x1b0)]),'currentTrails':_0x185e64['createFramebuffer'](_0x5f39f4,this['textures'][_0x1215f0(0x1e8)],this[_0x1215f0(0xa9)][_0x1215f0(0x11f)]),'nextTrails':_0x185e64['createFramebuffer'](_0x5f39f4,this[_0x1215f0(0xa9)][_0x1215f0(0x14d)],this[_0x1215f0(0xa9)][_0x1215f0(0x1e1)])};}},{'key':_0x346ef5(0x10f),'value':function(_0x946d6a){var _0x1dbce5=_0x346ef5;for(var _0x58980b=[],_0xc56741=0x0;_0xc56741<_0x946d6a['particlesTextureSize'];_0xc56741++)for(var _0x3d416c=0x0;_0x3d416c<_0x946d6a['particlesTextureSize'];_0x3d416c++)for(var _0x5c6555=0x0;_0x5c6555<0x4;_0x5c6555++)_0x58980b[_0x1dbce5(0x101)](_0xc56741/_0x946d6a[_0x1dbce5(0xa1)]),_0x58980b[_0x1dbce5(0x101)](_0x3d416c/_0x946d6a[_0x1dbce5(0xa1)]);_0x58980b=new Float32Array(_0x58980b);for(var _0x149a4d=[],_0x3c8491=[-0x1,0x1],_0x248dd7=[-0x1,0x1],_0x44f1e9=0x0;_0x44f1e9<_0x946d6a[_0x1dbce5(0x17b)];_0x44f1e9++)for(var _0x5c3379=0x0;_0x5c3379<0x2;_0x5c3379++)for(var _0xcf5404=0x0;_0xcf5404<0x2;_0xcf5404++)_0x149a4d[_0x1dbce5(0x101)](_0x3c8491[_0x5c3379]),_0x149a4d['push'](_0x248dd7[_0xcf5404]),_0x149a4d[_0x1dbce5(0x101)](0x0);_0x149a4d=new Float32Array(_0x149a4d);for(var _0x5bb70c=0x6*_0x946d6a[_0x1dbce5(0x17b)],_0x15189d=new Uint32Array(_0x5bb70c),_0x276161=0x0,_0x1e58c4=0x0,_0x3517e0=0x0;_0x276161<_0x946d6a['maxParticles'];_0x276161++)_0x15189d[_0x1e58c4++]=_0x3517e0+0x0,_0x15189d[_0x1e58c4++]=_0x3517e0+0x1,_0x15189d[_0x1e58c4++]=_0x3517e0+0x2,_0x15189d[_0x1e58c4++]=_0x3517e0+0x2,_0x15189d[_0x1e58c4++]=_0x3517e0+0x1,_0x15189d[_0x1e58c4++]=_0x3517e0+0x3,_0x3517e0+=0x4;return new _0x268907[(_0x1dbce5(0x1cf))]({'attributes':new _0x268907['GeometryAttributes']({'st':new _0x268907[(_0x1dbce5(0x143))]({'componentDatatype':_0x268907[_0x1dbce5(0x16e)][_0x1dbce5(0x1d5)],'componentsPerAttribute':0x2,'values':_0x58980b}),'normal':new _0x268907[(_0x1dbce5(0x143))]({'componentDatatype':_0x268907[_0x1dbce5(0x16e)][_0x1dbce5(0x1d5)],'componentsPerAttribute':0x3,'values':_0x149a4d})}),'indices':_0x15189d});}},{'key':_0x346ef5(0x14b),'value':function(_0x15012b,_0x465783,_0x5eb8c6,_0x2a7640){var _0x1be833=_0x346ef5,_0x3b282f=this;this[_0x1be833(0x175)]={'segments':new _0x3700fd({'commandType':_0x1be833(0xbe),'attributeLocations':{'st':0x0,'normal':0x1},'geometry':this[_0x1be833(0x10f)](_0x465783),'primitiveType':_0x268907[_0x1be833(0x1b7)][_0x1be833(0x13a)],'uniformMap':{'currentParticlesPosition':function(){var _0x1ec273=_0x1be833;return _0x2a7640[_0x1ec273(0x166)][_0x1ec273(0x13d)];},'postProcessingPosition':function(){var _0x38ffa7=_0x1be833;return _0x2a7640[_0x38ffa7(0x166)][_0x38ffa7(0xb5)];},'postProcessingSpeed':function(){var _0x4e3c77=_0x1be833;return _0x2a7640['particlesTextures'][_0x4e3c77(0x1d4)];},'colorTable':function(){var _0x490882=_0x1be833;return _0x3b282f[_0x490882(0xa9)][_0x490882(0x16d)];},'aspect':function(){var _0x5e0c65=_0x1be833;return _0x15012b['drawingBufferWidth']/_0x15012b[_0x5e0c65(0x1af)];},'pixelSize':function(){var _0xdcbb1f=_0x1be833;return _0x5eb8c6[_0xdcbb1f(0x1a8)];},'lineWidth':function(){var _0x3949cb=_0x1be833;return _0x465783[_0x3949cb(0xb7)];},'particleHeight':function(){return _0x465783['particleHeight'];}},'vertexShaderSource':new _0x268907[(_0x1be833(0x20b))]({'sources':[_0x427935['a']]}),'fragmentShaderSource':new _0x268907[(_0x1be833(0x20b))]({'sources':[_0x3d8930['a']]}),'rawRenderState':_0x185e64[_0x1be833(0x20d)]({'viewport':void 0x0,'depthTest':{'enabled':!0x0},'depthMask':!0x0}),'framebuffer':this[_0x1be833(0x14c)]['segments'],'autoClear':!0x0}),'trails':new _0x3700fd({'commandType':_0x1be833(0xbe),'attributeLocations':{'position':0x0,'st':0x1},'geometry':_0x185e64['getFullscreenQuad'](),'primitiveType':_0x268907[_0x1be833(0x1b7)][_0x1be833(0x13a)],'uniformMap':{'segmentsColorTexture':function(){var _0x15b251=_0x1be833;return _0x3b282f[_0x15b251(0xa9)][_0x15b251(0x12b)];},'segmentsDepthTexture':function(){var _0x174ec2=_0x1be833;return _0x3b282f[_0x174ec2(0xa9)][_0x174ec2(0x1b0)];},'currentTrailsColor':function(){var _0x32170f=_0x1be833;return _0x3b282f[_0x32170f(0x14c)]['currentTrails'][_0x32170f(0x129)](0x0);},'trailsDepthTexture':function(){var _0x44f9cd=_0x1be833;return _0x3b282f[_0x44f9cd(0x14c)][_0x44f9cd(0x181)]['depthTexture'];},'fadeOpacity':function(){var _0x319f9c=_0x1be833;return _0x465783[_0x319f9c(0x107)];}},'vertexShaderSource':new _0x268907['ShaderSource']({'defines':[_0x1be833(0x142)],'sources':[_0x15e17e['a']]}),'fragmentShaderSource':new _0x268907['ShaderSource']({'defines':['DISABLE_LOG_DEPTH_FRAGMENT_WRITE'],'sources':[_0x31c37c['a']]}),'rawRenderState':_0x185e64[_0x1be833(0x20d)]({'viewport':void 0x0,'depthTest':{'enabled':!0x0,'func':_0x268907[_0x1be833(0x96)][_0x1be833(0x1c7)]},'depthMask':!0x0}),'framebuffer':this[_0x1be833(0x14c)][_0x1be833(0x1eb)],'autoClear':!0x0,'preExecute':function(){var _0x340a7d=_0x1be833,_0x5c2fcd;_0x5c2fcd=_0x3b282f['framebuffers']['currentTrails'],_0x3b282f[_0x340a7d(0x14c)][_0x340a7d(0x181)]=_0x3b282f[_0x340a7d(0x14c)]['nextTrails'],_0x3b282f['framebuffers'][_0x340a7d(0x1eb)]=_0x5c2fcd,_0x3b282f['primitives'][_0x340a7d(0xf3)]['commandToExecute'][_0x340a7d(0x1ab)]=_0x3b282f[_0x340a7d(0x14c)]['nextTrails'],_0x3b282f[_0x340a7d(0x175)][_0x340a7d(0xf3)][_0x340a7d(0xe7)][_0x340a7d(0x1ab)]=_0x3b282f[_0x340a7d(0x14c)][_0x340a7d(0x1eb)];}}),'screen':new _0x3700fd({'commandType':_0x1be833(0xbe),'attributeLocations':{'position':0x0,'st':0x1},'geometry':_0x185e64['getFullscreenQuad'](),'primitiveType':_0x268907[_0x1be833(0x1b7)]['TRIANGLES'],'uniformMap':{'trailsColorTexture':function(){var _0x44fe9c=_0x1be833;return _0x3b282f['framebuffers']['nextTrails'][_0x44fe9c(0x129)](0x0);},'trailsDepthTexture':function(){var _0x3d53eb=_0x1be833;return _0x3b282f[_0x3d53eb(0x14c)]['nextTrails'][_0x3d53eb(0x1d6)];}},'vertexShaderSource':new _0x268907[(_0x1be833(0x20b))]({'defines':[_0x1be833(0x142)],'sources':[_0x15e17e['a']]}),'fragmentShaderSource':new _0x268907['ShaderSource']({'defines':[_0x1be833(0x190)],'sources':[_0x567601['a']]}),'rawRenderState':_0x185e64[_0x1be833(0x20d)]({'viewport':void 0x0,'depthTest':{'enabled':!0x1},'depthMask':!0x0,'blending':{'enabled':!0x0}}),'framebuffer':void 0x0})};}}]),_0x3e15b7;}()),_0x34b1ed=_0x56ed85(0xe),_0x4bd47d=_0x56ed85['n'](_0x34b1ed),_0x3845cc=_0x56ed85(0xf),_0x4cd4c6=_0x56ed85['n'](_0x3845cc),_0x268b0d=_0x56ed85(0x10),_0x39178b=_0x56ed85['n'](_0x268b0d),_0x402bfb=_0x56ed85(0x11),_0x52f78d=_0x56ed85['n'](_0x402bfb),_0x4e8a12=_0x56ed85(0x12),_0x28e25c=_0x56ed85['n'](_0x4e8a12),_0xba1a93=_0xc9bd2e['Cesium'],_0x3e0a9d=(function(){var _0x230e5e=_0x46c5ec;function _0x5bcfc1(_0x2d8fbb,_0xb14df0,_0x1c49b9,_0x436686){var _0x34de4b=a0_0x3456;_0x16e182()(this,_0x5bcfc1),this[_0x34de4b(0x210)]=_0xb14df0,this[_0x34de4b(0x213)](_0x2d8fbb,_0xb14df0),this['createParticlesTextures'](_0x2d8fbb,_0x1c49b9,_0x436686),this[_0x34de4b(0x11b)](_0xb14df0,_0x1c49b9,_0x436686);}return _0x11de2e()(_0x5bcfc1,[{'key':_0x230e5e(0x213),'value':function(_0x5dd001,_0x19195c){var _0x346673=_0x230e5e,_0x48f452={'context':_0x5dd001,'width':_0x19195c[_0x346673(0x1bd)]['lon'],'height':_0x19195c[_0x346673(0x1bd)]['lat']*(_0x19195c[_0x346673(0x1bd)][_0x346673(0x18f)]||0x1),'pixelFormat':_0xba1a93[_0x346673(0xb1)][_0x346673(0x183)],'pixelDatatype':_0xba1a93['PixelDatatype']['FLOAT'],'flipY':!0x1,'sampler':new _0xba1a93[(_0x346673(0xbf))]({'minificationFilter':_0xba1a93[_0x346673(0x1ff)][_0x346673(0x1a4)],'magnificationFilter':_0xba1a93[_0x346673(0x1b2)][_0x346673(0x1a4)]})};this[_0x346673(0x94)]={'U':_0x185e64['createTexture'](_0x48f452,_0x19195c['U']['array']),'V':_0x185e64[_0x346673(0x17c)](_0x48f452,_0x19195c['V'][_0x346673(0x1ca)])};}},{'key':_0x230e5e(0x18c),'value':function(_0x1b0b4a,_0x9cc556,_0x417765){var _0x54cd8=_0x230e5e,_0x7edc04={'context':_0x1b0b4a,'width':_0x9cc556['particlesTextureSize'],'height':_0x9cc556[_0x54cd8(0xa1)],'pixelFormat':_0xba1a93['PixelFormat'][_0x54cd8(0x189)],'pixelDatatype':_0xba1a93[_0x54cd8(0x212)]['FLOAT'],'flipY':!0x1,'sampler':new _0xba1a93[(_0x54cd8(0xbf))]({'minificationFilter':_0xba1a93[_0x54cd8(0x1ff)][_0x54cd8(0x1a4)],'magnificationFilter':_0xba1a93[_0x54cd8(0x1b2)][_0x54cd8(0x1a4)]})},_0x72f992=this[_0x54cd8(0x1d9)](_0x9cc556['maxParticles'],_0x417765),_0x16d871=new Float32Array(0x4*_0x9cc556[_0x54cd8(0x17b)])['fill'](0x0);this[_0x54cd8(0x166)]={'particlesWind':_0x185e64['createTexture'](_0x7edc04),'currentParticlesPosition':_0x185e64[_0x54cd8(0x17c)](_0x7edc04,_0x72f992),'nextParticlesPosition':_0x185e64[_0x54cd8(0x17c)](_0x7edc04,_0x72f992),'currentParticlesSpeed':_0x185e64[_0x54cd8(0x17c)](_0x7edc04,_0x16d871),'nextParticlesSpeed':_0x185e64[_0x54cd8(0x17c)](_0x7edc04,_0x16d871),'postProcessingPosition':_0x185e64[_0x54cd8(0x17c)](_0x7edc04,_0x72f992),'postProcessingSpeed':_0x185e64['createTexture'](_0x7edc04,_0x16d871)};}},{'key':_0x230e5e(0x1d9),'value':function(_0x2b24aa,_0x279988){var _0x2d925b=_0x230e5e;for(var _0x505984=new Float32Array(0x4*_0x2b24aa),_0x68c43=0x0;_0x68c43<_0x2b24aa;_0x68c43++)_0x505984[0x4*_0x68c43]=_0xba1a93[_0x2d925b(0x1dc)][_0x2d925b(0xee)](_0x279988[_0x2d925b(0x184)]['x'],_0x279988[_0x2d925b(0x184)]['y']),_0x505984[0x4*_0x68c43+0x1]=_0xba1a93[_0x2d925b(0x1dc)][_0x2d925b(0xee)](_0x279988[_0x2d925b(0x12f)]['x'],_0x279988['latRange']['y']),_0x505984[0x4*_0x68c43+0x2]=_0xba1a93[_0x2d925b(0x1dc)][_0x2d925b(0xee)](this[_0x2d925b(0x210)]['lev']['min'],this['data']['lev']['max']),_0x505984[0x4*_0x68c43+0x3]=0x0;return _0x505984;}},{'key':_0x230e5e(0x179),'value':function(){var _0x26da04=_0x230e5e,_0x4bb252=this;Object[_0x26da04(0x1d2)](this['particlesTextures'])['forEach'](function(_0x5491e3){var _0x181e31=_0x26da04;_0x4bb252[_0x181e31(0x166)][_0x5491e3][_0x181e31(0xf1)]();});}},{'key':_0x230e5e(0x11b),'value':function(_0x69a583,_0x31af73,_0x48e027){var _0x191a2c=_0x230e5e,_0x18aff8=new _0xba1a93[(_0x191a2c(0xd4))](_0x69a583['dimensions'][_0x191a2c(0x9f)],_0x69a583[_0x191a2c(0x1bd)]['lat'],_0x69a583['dimensions'][_0x191a2c(0x18f)]),_0xe2a91=new _0xba1a93[(_0x191a2c(0xd4))](_0x69a583['lon'][_0x191a2c(0xda)],_0x69a583[_0x191a2c(0x123)][_0x191a2c(0xda)],_0x69a583[_0x191a2c(0x18f)][_0x191a2c(0xda)]),_0x1ffbaa=new _0xba1a93[(_0x191a2c(0xd4))](_0x69a583[_0x191a2c(0x9f)][_0x191a2c(0x1ea)],_0x69a583[_0x191a2c(0x123)]['max'],_0x69a583[_0x191a2c(0x18f)]['max']),_0x391041=new _0xba1a93[(_0x191a2c(0xd4))]((_0x1ffbaa['x']-_0xe2a91['x'])/(_0x18aff8['x']-0x1),(_0x1ffbaa['y']-_0xe2a91['y'])/(_0x18aff8['y']-0x1),_0x18aff8['z']>0x1?(_0x1ffbaa['z']-_0xe2a91['z'])/(_0x18aff8['z']-0x1):0x1),_0xf4e91=new _0xba1a93[(_0x191a2c(0x137))](_0x69a583['U'][_0x191a2c(0xda)],_0x69a583['U'][_0x191a2c(0x1ea)]),_0x3efd83=new _0xba1a93[(_0x191a2c(0x137))](_0x69a583['V']['min'],_0x69a583['V']['max']),_0x5df2c4=this;this[_0x191a2c(0x175)]={'getWind':new _0x3700fd({'commandType':_0x191a2c(0x172),'uniformMap':{'U':function(){return _0x5df2c4['windTextures']['U'];},'V':function(){var _0xb202b2=_0x191a2c;return _0x5df2c4[_0xb202b2(0x94)]['V'];},'currentParticlesPosition':function(){var _0x296b8d=_0x191a2c;return _0x5df2c4[_0x296b8d(0x166)]['currentParticlesPosition'];},'dimension':function(){return _0x18aff8;},'minimum':function(){return _0xe2a91;},'maximum':function(){return _0x1ffbaa;},'interval':function(){return _0x391041;}},'fragmentShaderSource':new _0xba1a93['ShaderSource']({'sources':[_0x4bd47d['a']]}),'outputTexture':this[_0x191a2c(0x166)][_0x191a2c(0x115)],'preExecute':function(){var _0x3f236a=_0x191a2c;_0x5df2c4['primitives'][_0x3f236a(0x99)]['commandToExecute'][_0x3f236a(0x200)]=_0x5df2c4[_0x3f236a(0x166)][_0x3f236a(0x115)];}}),'updateSpeed':new _0x3700fd({'commandType':_0x191a2c(0x172),'uniformMap':{'currentParticlesSpeed':function(){var _0x5482bd=_0x191a2c;return _0x5df2c4[_0x5482bd(0x166)]['currentParticlesSpeed'];},'particlesWind':function(){var _0x3593d1=_0x191a2c;return _0x5df2c4[_0x3593d1(0x166)][_0x3593d1(0x115)];},'uSpeedRange':function(){return _0xf4e91;},'vSpeedRange':function(){return _0x3efd83;},'pixelSize':function(){return _0x48e027['pixelSize'];},'speedFactor':function(){var _0x5587ce=_0x191a2c;return _0x31af73[_0x5587ce(0x1e6)];}},'fragmentShaderSource':new _0xba1a93[(_0x191a2c(0x20b))]({'sources':[_0x4cd4c6['a']]}),'outputTexture':this[_0x191a2c(0x166)][_0x191a2c(0x187)],'preExecute':function(){var _0x182714=_0x191a2c,_0x10b1a3;_0x10b1a3=_0x5df2c4[_0x182714(0x166)][_0x182714(0x10c)],_0x5df2c4['particlesTextures'][_0x182714(0x10c)]=_0x5df2c4[_0x182714(0x166)][_0x182714(0x1d4)],_0x5df2c4['particlesTextures'][_0x182714(0x1d4)]=_0x10b1a3,_0x5df2c4[_0x182714(0x175)][_0x182714(0x1c9)][_0x182714(0xfc)][_0x182714(0x200)]=_0x5df2c4[_0x182714(0x166)][_0x182714(0x187)];}}),'updatePosition':new _0x3700fd({'commandType':_0x191a2c(0x172),'uniformMap':{'currentParticlesPosition':function(){var _0x4f3456=_0x191a2c;return _0x5df2c4[_0x4f3456(0x166)]['currentParticlesPosition'];},'currentParticlesSpeed':function(){var _0x50f454=_0x191a2c;return _0x5df2c4[_0x50f454(0x166)]['currentParticlesSpeed'];}},'fragmentShaderSource':new _0xba1a93[(_0x191a2c(0x20b))]({'sources':[_0x39178b['a']]}),'outputTexture':this[_0x191a2c(0x166)]['nextParticlesPosition'],'preExecute':function(){var _0x3442b3=_0x191a2c,_0x5b4ed2;_0x5b4ed2=_0x5df2c4[_0x3442b3(0x166)]['currentParticlesPosition'],_0x5df2c4[_0x3442b3(0x166)]['currentParticlesPosition']=_0x5df2c4[_0x3442b3(0x166)][_0x3442b3(0xb5)],_0x5df2c4[_0x3442b3(0x166)]['postProcessingPosition']=_0x5b4ed2,_0x5df2c4[_0x3442b3(0x175)][_0x3442b3(0x105)][_0x3442b3(0xfc)][_0x3442b3(0x200)]=_0x5df2c4[_0x3442b3(0x166)][_0x3442b3(0xc1)];}}),'postProcessingPosition':new _0x3700fd({'commandType':_0x191a2c(0x172),'uniformMap':{'nextParticlesPosition':function(){var _0x254693=_0x191a2c;return _0x5df2c4[_0x254693(0x166)][_0x254693(0xc1)];},'nextParticlesSpeed':function(){return _0x5df2c4['particlesTextures']['nextParticlesSpeed'];},'lonRange':function(){var _0x547fc3=_0x191a2c;return _0x48e027[_0x547fc3(0x184)];},'latRange':function(){var _0x2f290c=_0x191a2c;return _0x48e027[_0x2f290c(0x12f)];},'randomCoefficient':function(){var _0x2de043=_0x191a2c,_0xfa74e=Math[_0x2de043(0x21f)]();return _0xfa74e;},'dropRate':function(){return _0x31af73['dropRate'];},'dropRateBump':function(){var _0x524db9=_0x191a2c;return _0x31af73[_0x524db9(0x1a0)];}},'fragmentShaderSource':new _0xba1a93[(_0x191a2c(0x20b))]({'sources':[_0x52f78d['a']]}),'outputTexture':this[_0x191a2c(0x166)][_0x191a2c(0xb5)],'preExecute':function(){var _0x46fe50=_0x191a2c;_0x5df2c4[_0x46fe50(0x175)][_0x46fe50(0xb5)][_0x46fe50(0xfc)][_0x46fe50(0x200)]=_0x5df2c4[_0x46fe50(0x166)]['postProcessingPosition'];}}),'postProcessingSpeed':new _0x3700fd({'commandType':'Compute','uniformMap':{'postProcessingPosition':function(){var _0x4667cf=_0x191a2c;return _0x5df2c4[_0x4667cf(0x166)][_0x4667cf(0xb5)];},'nextParticlesSpeed':function(){var _0x550a18=_0x191a2c;return _0x5df2c4[_0x550a18(0x166)][_0x550a18(0x187)];}},'fragmentShaderSource':new _0xba1a93[(_0x191a2c(0x20b))]({'sources':[_0x28e25c['a']]}),'outputTexture':this['particlesTextures'][_0x191a2c(0x1d4)],'preExecute':function(){var _0x97336d=_0x191a2c;_0x5df2c4[_0x97336d(0x175)][_0x97336d(0x1d4)]['commandToExecute']['outputTexture']=_0x5df2c4[_0x97336d(0x166)][_0x97336d(0x1d4)];}})};}}]),_0x5bcfc1;}());function _0x144c80(_0x5989a3,_0x1fe416){var _0x36faba=_0x46c5ec,_0x49f109=Object['keys'](_0x5989a3);if(Object[_0x36faba(0xa0)]){var _0x4d9a05=Object['getOwnPropertySymbols'](_0x5989a3);_0x1fe416&&(_0x4d9a05=_0x4d9a05[_0x36faba(0x1bc)](function(_0x1c7dbc){var _0x4a8fbc=_0x36faba;return Object['getOwnPropertyDescriptor'](_0x5989a3,_0x1c7dbc)[_0x4a8fbc(0x21a)];})),_0x49f109['push'][_0x36faba(0x1fe)](_0x49f109,_0x4d9a05);}return _0x49f109;}var _0x2e648a=_0xc9bd2e[_0x46c5ec(0x13c)],_0x1f6c75=(function(){var _0x375fcb=_0x46c5ec;function _0x5b117d(_0x1ab83e,_0x5355e8,_0x37b6bb,_0x3c01cb){var _0x246957=a0_0x3456,_0x2621a1,_0x9ff0ac,_0x557fab,_0x3dd4d6,_0x4e9972,_0x3a2b1d;(_0x16e182()(this,_0x5b117d),this['context']=_0x1ab83e,(_0x5355e8=function(_0x42de89){var _0x282b51=a0_0x3456;for(var _0x2a1269=0x1;_0x2a1269<arguments[_0x282b51(0x10d)];_0x2a1269++){var _0x1e6170=null!=arguments[_0x2a1269]?arguments[_0x2a1269]:{};_0x2a1269%0x2?_0x144c80(Object(_0x1e6170),!0x0)[_0x282b51(0x19e)](function(_0x46cfca){_0x5f56d2()(_0x42de89,_0x46cfca,_0x1e6170[_0x46cfca]);}):Object[_0x282b51(0x188)]?Object['defineProperties'](_0x42de89,Object[_0x282b51(0x188)](_0x1e6170)):_0x144c80(Object(_0x1e6170))['forEach'](function(_0xc87efa){var _0x1e0325=_0x282b51;Object['defineProperty'](_0x42de89,_0xc87efa,Object[_0x1e0325(0x1b6)](_0x1e6170,_0xc87efa));});}return _0x42de89;}({},_0x5355e8))[_0x246957(0x1b8)]&&_0x5355e8['vdata'])&&(_0x5355e8['dimensions']={},_0x5355e8[_0x246957(0x1bd)][_0x246957(0x9f)]=_0x5355e8[_0x246957(0xe1)],_0x5355e8['dimensions'][_0x246957(0x123)]=_0x5355e8[_0x246957(0x1ad)],_0x5355e8['dimensions'][_0x246957(0x18f)]=_0x5355e8[_0x246957(0x18f)]||0x1,_0x5355e8[_0x246957(0x9f)]={},_0x5355e8[_0x246957(0x9f)][_0x246957(0xda)]=_0x5355e8['xmin'],_0x5355e8[_0x246957(0x9f)]['max']=_0x5355e8['xmax'],_0x5355e8['lat']={},_0x5355e8['lat']['min']=_0x5355e8['ymin'],_0x5355e8[_0x246957(0x123)][_0x246957(0x1ea)]=_0x5355e8['ymax'],_0x5355e8[_0x246957(0x18f)]={},_0x5355e8['lev']['min']=null!==(_0x2621a1=_0x5355e8[_0x246957(0x104)])&&void 0x0!==_0x2621a1?_0x2621a1:0x1,_0x5355e8[_0x246957(0x18f)][_0x246957(0x1ea)]=null!==(_0x9ff0ac=_0x5355e8[_0x246957(0x1ac)])&&void 0x0!==_0x9ff0ac?_0x9ff0ac:0x1,_0x5355e8['U']={},_0x5355e8['U'][_0x246957(0x1ca)]=new Float32Array(_0x5355e8[_0x246957(0x1b8)]),_0x5355e8['U']['min']=null!==(_0x557fab=_0x5355e8[_0x246957(0xeb)])&&void 0x0!==_0x557fab?_0x557fab:Math[_0x246957(0xda)]['apply'](Math,_0x38c8fe()(_0x5355e8[_0x246957(0x1b8)])),_0x5355e8['U']['max']=null!==(_0x3dd4d6=_0x5355e8[_0x246957(0x164)])&&void 0x0!==_0x3dd4d6?_0x3dd4d6:Math['max'][_0x246957(0x1fe)](Math,_0x38c8fe()(_0x5355e8[_0x246957(0x1b8)])),_0x5355e8['V']={},_0x5355e8['V'][_0x246957(0x1ca)]=new Float32Array(_0x5355e8[_0x246957(0xfa)]),_0x5355e8['V'][_0x246957(0xda)]=null!==(_0x4e9972=_0x5355e8['vmin'])&&void 0x0!==_0x4e9972?_0x4e9972:Math[_0x246957(0xda)][_0x246957(0x1fe)](Math,_0x38c8fe()(_0x5355e8['vdata'])),_0x5355e8['V'][_0x246957(0x1ea)]=null!==(_0x3a2b1d=_0x5355e8[_0x246957(0x19b)])&&void 0x0!==_0x3a2b1d?_0x3a2b1d:Math[_0x246957(0x1ea)][_0x246957(0x1fe)](Math,_0x38c8fe()(_0x5355e8[_0x246957(0xfa)]))),(this['data']=_0x5355e8,this[_0x246957(0x1f0)]=_0x37b6bb,this[_0x246957(0x19c)]=_0x3c01cb,this[_0x246957(0x223)]=new _0x3e0a9d(this[_0x246957(0xe5)],this[_0x246957(0x210)],this[_0x246957(0x1f0)],this[_0x246957(0x19c)]),this[_0x246957(0x198)]=new _0x2114f5(this[_0x246957(0xe5)],this[_0x246957(0x210)],this[_0x246957(0x1f0)],this[_0x246957(0x19c)],this['particlesComputing']));}return _0x11de2e()(_0x5b117d,[{'key':'canvasResize','value':function(_0x247efe){var _0x53df82=a0_0x3456,_0x2a33df=this;this[_0x53df82(0x223)][_0x53df82(0x179)](),Object[_0x53df82(0x1d2)](this[_0x53df82(0x223)][_0x53df82(0x94)])['forEach'](function(_0x5c8c4d){var _0x281b39=_0x53df82;_0x2a33df[_0x281b39(0x223)][_0x281b39(0x94)][_0x5c8c4d][_0x281b39(0xf1)]();}),this['particlesRendering'][_0x53df82(0xa9)][_0x53df82(0x16d)]['destroy'](),Object['keys'](this[_0x53df82(0x198)]['framebuffers'])[_0x53df82(0x19e)](function(_0x58fe4b){var _0x437622=_0x53df82;_0x2a33df[_0x437622(0x198)][_0x437622(0x14c)][_0x58fe4b][_0x437622(0xf1)]();}),this[_0x53df82(0xe5)]=_0x247efe,this[_0x53df82(0x223)]=new _0x3e0a9d(this['context'],this[_0x53df82(0x210)],this[_0x53df82(0x1f0)],this[_0x53df82(0x19c)]),this['particlesRendering']=new _0x2114f5(this['context'],this[_0x53df82(0x210)],this[_0x53df82(0x1f0)],this[_0x53df82(0x19c)],this[_0x53df82(0x223)]);}},{'key':_0x375fcb(0x19d),'value':function(){var _0x299a6e=_0x375fcb,_0x58523c=this,_0x4c61a2=new _0x2e648a[(_0x299a6e(0x14a))]({'color':new _0x2e648a['Color'](0x0,0x0,0x0,0x0),'depth':0x1,'framebuffer':void 0x0,'pass':_0x2e648a[_0x299a6e(0xcd)][_0x299a6e(0x18b)]});Object[_0x299a6e(0x1d2)](this[_0x299a6e(0x198)]['framebuffers'])[_0x299a6e(0x19e)](function(_0x2dd851){var _0x2dd8fd=_0x299a6e;_0x4c61a2['framebuffer']=_0x58523c[_0x2dd8fd(0x198)]['framebuffers'][_0x2dd851],_0x4c61a2[_0x2dd8fd(0xba)](_0x58523c[_0x2dd8fd(0xe5)]);});}},{'key':'refreshParticles','value':function(_0x370618){var _0xfd2c4c=_0x375fcb;if(this[_0xfd2c4c(0x19d)](),this[_0xfd2c4c(0x223)][_0xfd2c4c(0x179)](),this['particlesComputing'][_0xfd2c4c(0x18c)](this['context'],this[_0xfd2c4c(0x1f0)],this[_0xfd2c4c(0x19c)]),_0x370618){var _0x4c6c0f=this[_0xfd2c4c(0x198)][_0xfd2c4c(0x10f)](this[_0xfd2c4c(0x1f0)]);this['particlesRendering']['primitives']['segments'][_0xfd2c4c(0x1f4)]=_0x4c6c0f;var _0xc4591b=_0x2e648a[_0xfd2c4c(0x1e9)][_0xfd2c4c(0x152)]({'context':this['context'],'geometry':_0x4c6c0f,'attributeLocations':this[_0xfd2c4c(0x198)][_0xfd2c4c(0x175)][_0xfd2c4c(0x9b)]['attributeLocations'],'bufferUsage':_0x2e648a[_0xfd2c4c(0x1fb)][_0xfd2c4c(0x1ae)]});this[_0xfd2c4c(0x198)][_0xfd2c4c(0x175)][_0xfd2c4c(0x9b)]['commandToExecute'][_0xfd2c4c(0x1e3)]=_0xc4591b;}}},{'key':_0x375fcb(0x203),'value':function(_0x4494f9){var _0x317802=_0x375fcb,_0x4423fe=this,_0x2f90a6=!0x1;this[_0x317802(0x1f0)][_0x317802(0x17b)]!=_0x4494f9[_0x317802(0x17b)]&&(_0x2f90a6=!0x0),Object[_0x317802(0x1d2)](_0x4494f9)[_0x317802(0x19e)](function(_0x45da29){var _0x446ab8=_0x317802;_0x4423fe[_0x446ab8(0x1f0)][_0x45da29]=_0x4494f9[_0x45da29];}),this['refreshParticles'](_0x2f90a6);}},{'key':_0x375fcb(0x1cd),'value':function(_0x17d765){var _0x780d6d=_0x375fcb,_0x175fdc=this;Object[_0x780d6d(0x1d2)](_0x17d765)['forEach'](function(_0x4eedf7){var _0x3038d1=_0x780d6d;_0x175fdc[_0x3038d1(0x19c)][_0x4eedf7]=_0x17d765[_0x4eedf7];}),this[_0x780d6d(0x1f5)](!0x1);}},{'key':_0x375fcb(0xf1),'value':function(){var _0x5ec4f1=_0x375fcb,_0x28a242=this;for(var _0x41e12d in(clearTimeout(this['canrefresh']),this[_0x5ec4f1(0x223)][_0x5ec4f1(0x179)](),Object[_0x5ec4f1(0x1d2)](this[_0x5ec4f1(0x223)][_0x5ec4f1(0x94)])['forEach'](function(_0x4e289f){var _0x557254=_0x5ec4f1;_0x28a242[_0x557254(0x223)]['windTextures'][_0x4e289f][_0x557254(0xf1)]();}),this[_0x5ec4f1(0x198)][_0x5ec4f1(0xa9)][_0x5ec4f1(0x16d)][_0x5ec4f1(0xf1)](),Object['keys'](this[_0x5ec4f1(0x198)]['framebuffers'])[_0x5ec4f1(0x19e)](function(_0x11bdba){var _0x458040=_0x5ec4f1;_0x28a242[_0x458040(0x198)][_0x458040(0x14c)][_0x11bdba][_0x458040(0xf1)]();}),this))delete this[_0x41e12d];}}]),_0x5b117d;}());function _0x4d9b94(_0x36a0c1,_0x4e8b18){var _0x309dd2=_0x46c5ec,_0x28b87d=Object[_0x309dd2(0x1d2)](_0x36a0c1);if(Object[_0x309dd2(0xa0)]){var _0x29899f=Object['getOwnPropertySymbols'](_0x36a0c1);_0x4e8b18&&(_0x29899f=_0x29899f['filter'](function(_0x298487){var _0x58daf7=_0x309dd2;return Object[_0x58daf7(0x1b6)](_0x36a0c1,_0x298487)[_0x58daf7(0x21a)];})),_0x28b87d[_0x309dd2(0x101)][_0x309dd2(0x1fe)](_0x28b87d,_0x29899f);}return _0x28b87d;}function _0xd52529(_0x427c7d){var _0x1c3edc=_0x46c5ec;for(var _0x2a04a7=0x1;_0x2a04a7<arguments[_0x1c3edc(0x10d)];_0x2a04a7++){var _0x54ebba=null!=arguments[_0x2a04a7]?arguments[_0x2a04a7]:{};_0x2a04a7%0x2?_0x4d9b94(Object(_0x54ebba),!0x0)['forEach'](function(_0x3cd9c2){_0x5f56d2()(_0x427c7d,_0x3cd9c2,_0x54ebba[_0x3cd9c2]);}):Object[_0x1c3edc(0x188)]?Object[_0x1c3edc(0x201)](_0x427c7d,Object['getOwnPropertyDescriptors'](_0x54ebba)):_0x4d9b94(Object(_0x54ebba))[_0x1c3edc(0x19e)](function(_0x2424b1){var _0xdc1def=_0x1c3edc;Object[_0xdc1def(0xbc)](_0x427c7d,_0x2424b1,Object[_0xdc1def(0x1b6)](_0x54ebba,_0x2424b1));});}return _0x427c7d;}function _0xc12d53(_0x35b8b3){var _0xf8bf9=(function(){var _0x1d3c88=a0_0x3456;if(_0x1d3c88(0x97)==typeof Reflect||!Reflect['construct'])return!0x1;if(Reflect[_0x1d3c88(0x177)]['sham'])return!0x1;if(_0x1d3c88(0x219)==typeof Proxy)return!0x0;try{return Boolean[_0x1d3c88(0x21b)]['valueOf']['call'](Reflect[_0x1d3c88(0x177)](Boolean,[],function(){})),!0x0;}catch(_0x132cc8){return!0x1;}}());return function(){var _0xc1741a=a0_0x3456,_0x50d21e,_0x44eba3=_0x4449f5()(_0x35b8b3);if(_0xf8bf9){var _0x4ed358=_0x4449f5()(this)[_0xc1741a(0x119)];_0x50d21e=Reflect[_0xc1741a(0x177)](_0x44eba3,arguments,_0x4ed358);}else _0x50d21e=_0x44eba3[_0xc1741a(0x1fe)](this,arguments);return _0x4af089()(this,_0x50d21e);};}var _0x391c19=_0xc9bd2e[_0x46c5ec(0x13c)],_0x3129dd=_0xc9bd2e[_0x46c5ec(0x95)][_0x46c5ec(0xa5)],_0x370728={'particlesNumber':0x1000,'fixedHeight':0x0,'fadeOpacity':0.996,'dropRate':0.003,'dropRateBump':0.01,'speedFactor':0.5,'lineWidth':0x2,'colors':[_0x46c5ec(0xa4)]},_0x37926e=function(_0x4b2fe3){var _0xa3a3a0=_0x46c5ec;_0x346a62()(_0x2bc687,_0x4b2fe3);var _0x2bb996=_0xc12d53(_0x2bc687);function _0x2bc687(){var _0x33cf58=a0_0x3456,_0x3cd052,_0xf0871f=arguments[_0x33cf58(0x10d)]>0x0&&void 0x0!==arguments[0x0]?arguments[0x0]:{};return _0x16e182()(this,_0x2bc687),_0xf0871f=_0xd52529(_0xd52529({},_0x370728),_0xf0871f),(_0x3cd052=_0x2bb996[_0x33cf58(0xd1)](this,_0xf0871f))[_0x33cf58(0xae)](_0xf0871f),_0x3cd052;}return _0x11de2e()(_0x2bc687,[{'key':_0xa3a3a0(0x95),'get':function(){var _0x3d9211=_0xa3a3a0;return this[_0x3d9211(0x175)];}},{'key':'data','get':function(){var _0x18db2c=_0xa3a3a0;return this[_0x18db2c(0xc8)];},'set':function(_0x23a1e7){this['setData'](_0x23a1e7);}},{'key':_0xa3a3a0(0x191),'get':function(){var _0x1c6af2=_0xa3a3a0;return this[_0x1c6af2(0x1f0)][_0x1c6af2(0x191)];},'set':function(_0x4903ec){var _0x292b3c=_0xa3a3a0;this['options']['colors']=_0x4903ec,this[_0x292b3c(0x12c)]&&this[_0x292b3c(0x12c)][_0x292b3c(0x203)]({'colors':_0x4903ec}),this[_0x292b3c(0x1ef)]();}},{'key':_0xa3a3a0(0x19a),'value':function(){}},{'key':_0xa3a3a0(0x102),'value':function(){var _0x3f0ea0=_0xa3a3a0;this[_0x3f0ea0(0x1f2)]=this[_0x3f0ea0(0xb2)]['scene'],this[_0x3f0ea0(0x1ec)]=this[_0x3f0ea0(0xb2)][_0x3f0ea0(0x1ec)],this[_0x3f0ea0(0x175)]=new _0x391c19[(_0x3f0ea0(0x133))](),this[_0x3f0ea0(0xb2)][_0x3f0ea0(0x1f2)][_0x3f0ea0(0x175)][_0x3f0ea0(0x1a1)](this['primitives']),this[_0x3f0ea0(0x19c)]={'lonRange':new _0x391c19[(_0x3f0ea0(0x137))](),'latRange':new _0x391c19[(_0x3f0ea0(0x137))](),'pixelSize':0x0},this[_0x3f0ea0(0x134)]=new _0x391c19[(_0x3f0ea0(0xa6))](_0x391c19[_0x3f0ea0(0xd4)]['ZERO'],6314355.63),this[_0x3f0ea0(0x14f)](),window[_0x3f0ea0(0x130)](_0x3f0ea0(0x1ef),this[_0x3f0ea0(0x1ef)][_0x3f0ea0(0x12a)](this),!0x1),this[_0x3f0ea0(0x16b)]=!0x1,this[_0x3f0ea0(0x197)]=!0x1,this[_0x3f0ea0(0xb2)]['on'](_0xc9bd2e[_0x3f0ea0(0x120)][_0x3f0ea0(0x185)],this[_0x3f0ea0(0x16a)],this),this[_0x3f0ea0(0xb2)]['on'](_0xc9bd2e[_0x3f0ea0(0x120)]['mouseDown'],this[_0x3f0ea0(0x214)],this),this[_0x3f0ea0(0xb2)]['on'](_0xc9bd2e[_0x3f0ea0(0x120)][_0x3f0ea0(0xb0)],this[_0x3f0ea0(0x13e)],this),this[_0x3f0ea0(0xb2)]['on'](_0xc9bd2e['EventType'][_0x3f0ea0(0x15b)],this[_0x3f0ea0(0x196)],this),this['_data']&&this[_0x3f0ea0(0x139)](this[_0x3f0ea0(0xc8)]);}},{'key':_0xa3a3a0(0x17d),'value':function(){var _0x4c35f=_0xa3a3a0;window[_0x4c35f(0x9e)](_0x4c35f(0x1ef),this[_0x4c35f(0x1ef)]),this[_0x4c35f(0xb2)]['off'](_0xc9bd2e['EventType'][_0x4c35f(0x12e)],this[_0x4c35f(0x1ba)],this),this[_0x4c35f(0xb2)][_0x4c35f(0x1fc)](_0xc9bd2e[_0x4c35f(0x120)]['wheel'],this[_0x4c35f(0x16a)],this),this[_0x4c35f(0xb2)][_0x4c35f(0x1fc)](_0xc9bd2e[_0x4c35f(0x120)][_0x4c35f(0x12d)],this[_0x4c35f(0x214)],this),this[_0x4c35f(0xb2)][_0x4c35f(0x1fc)](_0xc9bd2e['EventType'][_0x4c35f(0xb0)],this[_0x4c35f(0x13e)],this),this[_0x4c35f(0xb2)][_0x4c35f(0x1fc)](_0xc9bd2e[_0x4c35f(0x120)][_0x4c35f(0x15b)],this['_onMouseMoveEvent'],this),this[_0x4c35f(0x175)][_0x4c35f(0xe2)](),this['_map'][_0x4c35f(0x1f2)][_0x4c35f(0x175)][_0x4c35f(0xd8)](this[_0x4c35f(0x175)]);}},{'key':'resize','value':function(){var _0x520a53=_0xa3a3a0;this[_0x520a53(0xdd)]&&this[_0x520a53(0x12c)]&&(this['primitives'][_0x520a53(0xdd)]=!0x1,this[_0x520a53(0x175)][_0x520a53(0xe2)](),this[_0x520a53(0xb2)][_0x520a53(0xa2)](_0xc9bd2e['EventType']['preRender'],this['_onMap_preRenderEvent'],this));}},{'key':'_onMap_preRenderEvent','value':function(_0x2362bd){var _0x4e348e=_0xa3a3a0;this['particleSystem'][_0x4e348e(0x1c8)](this[_0x4e348e(0x1f2)][_0x4e348e(0xe5)]),this[_0x4e348e(0x1b4)](),this[_0x4e348e(0x175)]['show']=!0x0;}},{'key':_0xa3a3a0(0x16a),'value':function(_0x37025b){var _0x1365a5=_0xa3a3a0,_0x415d88=this;clearTimeout(this['refreshTimer']),this[_0x1365a5(0xdd)]&&this[_0x1365a5(0x12c)]&&(this[_0x1365a5(0x175)][_0x1365a5(0xdd)]=!0x1,this[_0x1365a5(0x1c1)]=setTimeout(function(){var _0x22b43a=_0x1365a5;_0x415d88[_0x22b43a(0xdd)]&&_0x415d88[_0x22b43a(0x1b9)]();},0xc8));}},{'key':_0xa3a3a0(0x214),'value':function(_0x41d332){var _0x1a2a42=_0xa3a3a0;this[_0x1a2a42(0x16b)]=!0x0;}},{'key':_0xa3a3a0(0x196),'value':function(_0x2da3b9){var _0x3afc43=_0xa3a3a0;this[_0x3afc43(0xdd)]&&this['particleSystem']&&this[_0x3afc43(0x16b)]&&(this[_0x3afc43(0x175)][_0x3afc43(0xdd)]=!0x1,this['mouse_move']=!0x0);}},{'key':_0xa3a3a0(0x13e),'value':function(_0x467090){var _0x1493bb=_0xa3a3a0;this[_0x1493bb(0xdd)]&&this['particleSystem']&&(this['mouse_down']&&this[_0x1493bb(0x197)]&&this[_0x1493bb(0x1b9)](),this[_0x1493bb(0x175)][_0x1493bb(0xdd)]=!0x0,this[_0x1493bb(0x16b)]=!0x1,this[_0x1493bb(0x197)]=!0x1);}},{'key':_0xa3a3a0(0x1b9),'value':function(){var _0x4f63c4=_0xa3a3a0;this[_0x4f63c4(0xb2)]&&this['show']&&(this['updateViewerParameters'](),this[_0x4f63c4(0x12c)][_0x4f63c4(0x1cd)](this[_0x4f63c4(0x19c)]),this[_0x4f63c4(0x175)][_0x4f63c4(0xdd)]=!0x0);}},{'key':_0xa3a3a0(0x139),'value':function(_0xb7ed1a){var _0x2d22c0=_0xa3a3a0;this[_0x2d22c0(0xc8)]=_0xb7ed1a,this[_0x2d22c0(0x12c)]&&this[_0x2d22c0(0x12c)][_0x2d22c0(0xf1)](),this[_0x2d22c0(0x12c)]=new _0x1f6c75(this[_0x2d22c0(0x1f2)][_0x2d22c0(0xe5)],_0xb7ed1a,this[_0x2d22c0(0x128)](),this[_0x2d22c0(0x19c)]),this['addPrimitives']();}},{'key':_0xa3a3a0(0xae),'value':function(_0x2c8aac){var _0x1dba29=_0xa3a3a0;if(_0x2c8aac){for(var _0x237802 in _0x2c8aac)this[_0x237802]=_0x2c8aac[_0x237802];}this[_0x1dba29(0x12c)]&&this[_0x1dba29(0x12c)][_0x1dba29(0x203)](this['getOptions']());}},{'key':_0xa3a3a0(0x128),'value':function(){var _0x9c9e4=_0xa3a3a0,_0xda9366=Math[_0x9c9e4(0x1d8)](Math[_0x9c9e4(0x222)](this['particlesNumber']));return this[_0x9c9e4(0x18e)]=_0xda9366*_0xda9366,{'particlesTextureSize':_0xda9366,'maxParticles':this[_0x9c9e4(0x18e)],'particleHeight':this[_0x9c9e4(0xc2)],'fadeOpacity':this[_0x9c9e4(0x107)],'dropRate':this[_0x9c9e4(0x176)],'dropRateBump':this[_0x9c9e4(0x1a0)],'speedFactor':this['speedFactor'],'lineWidth':this[_0x9c9e4(0xb7)],'globeLayer':this[_0x9c9e4(0xc7)],'WMS_URL':this[_0x9c9e4(0xa7)],'colors':this['colors']};}},{'key':'addPrimitives','value':function(){var _0x32a47e=_0xa3a3a0;this[_0x32a47e(0x175)][_0x32a47e(0x1a1)](this['particleSystem'][_0x32a47e(0x223)]['primitives']['getWind']),this['primitives'][_0x32a47e(0x1a1)](this['particleSystem'][_0x32a47e(0x223)][_0x32a47e(0x175)]['updateSpeed']),this[_0x32a47e(0x175)]['add'](this[_0x32a47e(0x12c)]['particlesComputing'][_0x32a47e(0x175)][_0x32a47e(0x105)]),this[_0x32a47e(0x175)]['add'](this['particleSystem'][_0x32a47e(0x223)][_0x32a47e(0x175)][_0x32a47e(0xb5)]),this[_0x32a47e(0x175)][_0x32a47e(0x1a1)](this[_0x32a47e(0x12c)]['particlesComputing'][_0x32a47e(0x175)][_0x32a47e(0x1d4)]),this[_0x32a47e(0x175)][_0x32a47e(0x1a1)](this[_0x32a47e(0x12c)][_0x32a47e(0x198)]['primitives'][_0x32a47e(0x9b)]),this[_0x32a47e(0x175)]['add'](this['particleSystem']['particlesRendering'][_0x32a47e(0x175)][_0x32a47e(0xf3)]),this[_0x32a47e(0x175)]['add'](this[_0x32a47e(0x12c)][_0x32a47e(0x198)][_0x32a47e(0x175)][_0x32a47e(0xd3)]);}},{'key':_0xa3a3a0(0x14f),'value':function(){var _0x36c10=_0xa3a3a0,_0x591334=this[_0x36c10(0x1ec)][_0x36c10(0x1de)](this[_0x36c10(0x1f2)][_0x36c10(0x155)]['ellipsoid']);if(!_0x591334){var _0x22527b=this['_map'][_0x36c10(0x1fa)]();_0x591334=_0x391c19[_0x36c10(0x20f)]['fromDegrees'](_0x22527b[_0x36c10(0x1c3)],_0x22527b[_0x36c10(0x156)],_0x22527b['xmax'],_0x22527b[_0x36c10(0xc3)]);}var _0x1c67cf=_0x185e64[_0x36c10(0x10b)](_0x591334);this[_0x36c10(0x19c)][_0x36c10(0x184)]['x']=_0x1c67cf[_0x36c10(0x9f)][_0x36c10(0xda)],this[_0x36c10(0x19c)][_0x36c10(0x184)]['y']=_0x1c67cf['lon']['max'],this[_0x36c10(0x19c)][_0x36c10(0x12f)]['x']=_0x1c67cf[_0x36c10(0x123)]['min'],this[_0x36c10(0x19c)][_0x36c10(0x12f)]['y']=_0x1c67cf[_0x36c10(0x123)][_0x36c10(0x1ea)];var _0x383b75=this[_0x36c10(0x1ec)][_0x36c10(0x11a)](this[_0x36c10(0x134)],this['scene'][_0x36c10(0x17f)],this['scene'][_0x36c10(0x1af)]);_0x383b75>0x0&&(this['viewerParameters'][_0x36c10(0x1a8)]=_0x383b75);}}]),_0x2bc687;}(_0x3129dd);_0xc9bd2e[_0x46c5ec(0x1aa)][_0x46c5ec(0x98)](_0x46c5ec(0x1ed),_0x37926e),_0xc9bd2e[_0x46c5ec(0x95)][_0x46c5ec(0x9c)]=_0x37926e;var _0xeb8d74=_0x11de2e()(function _0x411f76(){var _0x47df4f=_0x46c5ec;_0x16e182()(this,_0x411f76),this[_0x47df4f(0x1df)]=null,this[_0x47df4f(0x123)]=null,this[_0x47df4f(0x1e5)]=null,this['tlat']=null,this[_0x47df4f(0x11e)]=null;}),_0x58d137=(function(){var _0x3bf210=_0x46c5ec;function _0xd8e937(_0x1d4b4b,_0x2ecf54){var _0x354fda=a0_0x3456;_0x16e182()(this,_0xd8e937),this[_0x354fda(0x1ad)]=_0x1d4b4b[_0x354fda(0x1ad)],this['cols']=_0x1d4b4b[_0x354fda(0xe1)],this[_0x354fda(0x1c3)]=_0x1d4b4b[_0x354fda(0x1c3)],this[_0x354fda(0x158)]=_0x1d4b4b[_0x354fda(0x158)],this[_0x354fda(0x156)]=_0x1d4b4b[_0x354fda(0x156)],this[_0x354fda(0xc3)]=_0x1d4b4b[_0x354fda(0xc3)],this['grid']=[];var _0x50098d=_0x1d4b4b[_0x354fda(0x1b8)],_0x58978e=_0x1d4b4b[_0x354fda(0xfa)],_0x2cd995=!0x1;_0x50098d['length']===this['rows']&&_0x50098d[0x0][_0x354fda(0x10d)]===this['cols']&&(_0x2cd995=!0x0);for(var _0x396e72=0x0,_0xe92959=null,_0x475679=null,_0xd5c59b=0x0;_0xd5c59b<this[_0x354fda(0x1ad)];_0xd5c59b++){_0xe92959=[];for(var _0xc0d106=0x0;_0xc0d106<this[_0x354fda(0xe1)];_0xc0d106++,_0x396e72++)_0x475679=_0x2cd995?this[_0x354fda(0x146)](_0x50098d[_0xd5c59b][_0xc0d106],_0x58978e[_0xd5c59b][_0xc0d106]):this[_0x354fda(0x146)](_0x50098d[_0x396e72],_0x58978e[_0x396e72]),_0xe92959[_0x354fda(0x101)](_0x475679);this['grid'][_0x354fda(0x101)](_0xe92959);}_0x2ecf54&&this[_0x354fda(0x168)]['reverse']();}return _0x11de2e()(_0xd8e937,[{'key':_0x3bf210(0x110),'value':function(_0x5d56b5,_0x3a49f5){var _0x306729=_0x3bf210;return{'x':(_0x5d56b5-this[_0x306729(0x1c3)])/(this[_0x306729(0x158)]-this[_0x306729(0x1c3)])*(this[_0x306729(0xe1)]-0x1),'y':(this[_0x306729(0xc3)]-_0x3a49f5)/(this['ymax']-this[_0x306729(0x156)])*(this[_0x306729(0x1ad)]-0x1)};}},{'key':_0x3bf210(0xf4),'value':function(_0xdfffd5,_0x45b3bb){var _0x5b2e78=_0x3bf210;if(_0xdfffd5<0x0||_0xdfffd5>=this[_0x5b2e78(0xe1)]||_0x45b3bb>=this[_0x5b2e78(0x1ad)])return[0x0,0x0,0x0];var _0x4a7b71,_0x1516cc,_0x55eba2=Math[_0x5b2e78(0xb6)](_0xdfffd5),_0x1e5ff3=Math[_0x5b2e78(0xb6)](_0x45b3bb);if(_0x55eba2===_0xdfffd5&&_0x1e5ff3===_0x45b3bb)return this[_0x5b2e78(0x168)][_0x45b3bb][_0xdfffd5];_0x4a7b71=_0x55eba2+0x1,_0x1516cc=_0x1e5ff3+0x1;var _0x23f6f0=this['getUVByXY'](_0x55eba2,_0x1e5ff3),_0x4cc75b=this['getUVByXY'](_0x4a7b71,_0x1e5ff3),_0x3da220=this['getUVByXY'](_0x55eba2,_0x1516cc),_0xf008c6=this[_0x5b2e78(0xf4)](_0x4a7b71,_0x1516cc),_0x59b67c=null;try{_0x59b67c=this[_0x5b2e78(0x19f)](_0xdfffd5-_0x55eba2,_0x45b3bb-_0x1e5ff3,_0x23f6f0,_0x4cc75b,_0x3da220,_0xf008c6);}catch(_0x44f3c4){console[_0x5b2e78(0xd7)](_0xdfffd5,_0x45b3bb);}return _0x59b67c;}},{'key':_0x3bf210(0x19f),'value':function(_0x300281,_0x15b2cb,_0x143587,_0x3043ce,_0x58e575,_0x1f1188){var _0x1ecbe1=_0x3bf210,_0x450579=0x1-_0x300281,_0x3de0cb=0x1-_0x15b2cb,_0x4da401=_0x450579*_0x3de0cb,_0x1288e7=_0x300281*_0x3de0cb,_0x1227f9=_0x450579*_0x15b2cb,_0x4a5d36=_0x300281*_0x15b2cb,_0x5613b5=_0x143587[0x0]*_0x4da401+_0x3043ce[0x0]*_0x1288e7+_0x58e575[0x0]*_0x1227f9+_0x1f1188[0x0]*_0x4a5d36,_0x397ce2=_0x143587[0x1]*_0x4da401+_0x3043ce[0x1]*_0x1288e7+_0x58e575[0x1]*_0x1227f9+_0x1f1188[0x1]*_0x4a5d36;return this[_0x1ecbe1(0x146)](_0x5613b5,_0x397ce2);}},{'key':_0x3bf210(0x146),'value':function(_0x1d943e,_0x9fcda){var _0x51a4c4=_0x3bf210;return[+_0x1d943e,+_0x9fcda,Math[_0x51a4c4(0x222)](_0x1d943e*_0x1d943e+_0x9fcda*_0x9fcda)];}},{'key':_0x3bf210(0x1e0),'value':function(_0x409bdd,_0x496a30){var _0x2da3a2=_0x3bf210;if(!this[_0x2da3a2(0xd0)](_0x409bdd,_0x496a30))return null;var _0x5d409a=this['toGridXY'](_0x409bdd,_0x496a30);return this[_0x2da3a2(0xf4)](_0x5d409a['x'],_0x5d409a['y']);}},{'key':_0x3bf210(0xd0),'value':function(_0x4a320b,_0x1b5a19){var _0x178838=_0x3bf210;return _0x4a320b>=this[_0x178838(0x1c3)]&&_0x4a320b<=this[_0x178838(0x158)]&&_0x1b5a19>=this[_0x178838(0x156)]&&_0x1b5a19<=this['ymax'];}},{'key':_0x3bf210(0x1f7),'value':function(){var _0x2d8160=_0x3bf210,_0x1fe479=_0x1b2a33(this[_0x2d8160(0x1c3)],this[_0x2d8160(0x158)]);return{'lat':_0x1b2a33(this['ymin'],this['ymax']),'lng':_0x1fe479};}}]),_0xd8e937;}());function _0x1b2a33(_0x4d4444,_0x56f6c9){var _0x5f3422=_0x46c5ec;return _0x4d4444+Math[_0x5f3422(0x21f)]()*(_0x56f6c9-_0x4d4444);}function _0x2d9dce(_0x5a2c47){var _0x56abec=(function(){var _0x31b3f6=a0_0x3456;if('undefined'==typeof Reflect||!Reflect[_0x31b3f6(0x177)])return!0x1;if(Reflect[_0x31b3f6(0x177)]['sham'])return!0x1;if(_0x31b3f6(0x219)==typeof Proxy)return!0x0;try{return Boolean[_0x31b3f6(0x21b)][_0x31b3f6(0x1e2)][_0x31b3f6(0xd1)](Reflect[_0x31b3f6(0x177)](Boolean,[],function(){})),!0x0;}catch(_0x1d32bb){return!0x1;}}());return function(){var _0x3a4a2f=a0_0x3456,_0x35f5f9,_0x1703bb=_0x4449f5()(_0x5a2c47);if(_0x56abec){var _0x127b5c=_0x4449f5()(this)[_0x3a4a2f(0x119)];_0x35f5f9=Reflect[_0x3a4a2f(0x177)](_0x1703bb,arguments,_0x127b5c);}else _0x35f5f9=_0x1703bb[_0x3a4a2f(0x1fe)](this,arguments);return _0x4af089()(this,_0x35f5f9);};}var _0x496520=_0xc9bd2e[_0x46c5ec(0x13c)],_0x2fc26e=function(_0x17ea60){var _0x5cdd16=_0x46c5ec;_0x346a62()(_0x5850e9,_0x17ea60);var _0x5ccf0c=_0x2d9dce(_0x5850e9);function _0x5850e9(){var _0x357373=a0_0x3456,_0x4934ab,_0x112646=arguments[_0x357373(0x10d)]>0x0&&void 0x0!==arguments[0x0]?arguments[0x0]:{};return _0x16e182()(this,_0x5850e9),(_0x4934ab=_0x5ccf0c[_0x357373(0xd1)](this,_0x112646))[_0x357373(0xae)](_0x112646),_0x4934ab[_0x357373(0xe8)]=null,_0x4934ab;}return _0x11de2e()(_0x5850e9,[{'key':_0x5cdd16(0xae),'value':function(_0x3ab0fb){var _0x5dc3bf=_0x5cdd16;this['calc_speedRate']=[0x0,0x0],this[_0x5dc3bf(0x17e)]=[],this['speedRate']=_0x3ab0fb[_0x5dc3bf(0xfe)]||0x32,this[_0x5dc3bf(0x218)]=_0x3ab0fb[_0x5dc3bf(0x18e)]||0x1000,this['_maxAge']=_0x3ab0fb[_0x5dc3bf(0x13b)]||0x78,this['frameTime']=0x3e8/(_0x3ab0fb['frameRate']||0xa),this[_0x5dc3bf(0x144)]=_0x496520[_0x5dc3bf(0x13f)](this[_0x5dc3bf(0x1f0)][_0x5dc3bf(0x1e4)],!0x1),this['color']=_0x3ab0fb['color']||_0x5dc3bf(0x109),this[_0x5dc3bf(0xb7)]=_0x3ab0fb['lineWidth']||0x1,this[_0x5dc3bf(0xc2)]=_0x496520[_0x5dc3bf(0x13f)](_0x3ab0fb[_0x5dc3bf(0xc2)],0x0),this['reverseY']=_0x496520['defaultValue'](_0x3ab0fb['reverseY'],!0x1);}},{'key':_0x5cdd16(0x95),'get':function(){var _0x156e49=_0x5cdd16;return this[_0x156e49(0xe8)];}},{'key':_0x5cdd16(0xea),'get':function(){var _0x20d5c8=_0x5cdd16;return this[_0x20d5c8(0xb2)][_0x20d5c8(0x1f2)]['canvas'][_0x20d5c8(0x1cb)];}},{'key':'canvasHeight','get':function(){var _0x3b9772=_0x5cdd16;return this[_0x3b9772(0xb2)][_0x3b9772(0x1f2)][_0x3b9772(0xe8)]['clientHeight'];}},{'key':_0x5cdd16(0x1e4),'get':function(){var _0x508e0b=_0x5cdd16;return this[_0x508e0b(0x144)];},'set':function(_0x4d86f4){var _0x19216f=_0x5cdd16;this[_0x19216f(0x144)]=_0x4d86f4,this[_0x19216f(0xe8)]&&(this[_0x19216f(0xe8)]['style'][_0x19216f(0x20e)]=_0x4d86f4?_0x19216f(0x132):_0x19216f(0x1c2));}},{'key':_0x5cdd16(0xfe),'get':function(){return this['_speedRate'];},'set':function(_0x22c78f){var _0x760cb2=_0x5cdd16;this[_0x760cb2(0x131)]=0x64*(0x64-(_0x22c78f>0x63?0x63:_0x22c78f)),this[_0x760cb2(0x1f3)]();}},{'key':_0x5cdd16(0x18e),'get':function(){return this['_particlesNumber'];},'set':function(_0x335c73){var _0x4e70ab=_0x5cdd16,_0x1af65e=this;this[_0x4e70ab(0x218)]=_0x335c73,clearTimeout(this['_canrefresh']),this['_canrefresh']=setTimeout(function(){var _0x436d61=_0x4e70ab;_0x1af65e[_0x436d61(0x1b9)]();},0x1f4);}},{'key':_0x5cdd16(0x13b),'get':function(){var _0x270408=_0x5cdd16;return this[_0x270408(0xff)];},'set':function(_0x357779){var _0x7db95c=_0x5cdd16,_0xc0e9a9=this;this['_maxAge']=_0x357779,clearTimeout(this[_0x7db95c(0x1a9)]),this[_0x7db95c(0x1a9)]=setTimeout(function(){var _0x44923e=_0x7db95c;_0xc0e9a9[_0x44923e(0x1b9)]();},0x1f4);}},{'key':_0x5cdd16(0x210),'get':function(){return this['windData'];},'set':function(_0x52b3e9){this['setData'](_0x52b3e9);}},{'key':_0x5cdd16(0x1da),'value':function(_0x4f3fde){var _0x543f3f=_0x5cdd16;_0x4f3fde?this['_addedHook']():(this[_0x543f3f(0xf5)]&&(this['options'][_0x543f3f(0x210)]=this[_0x543f3f(0xf5)]),this[_0x543f3f(0x17d)]());}},{'key':_0x5cdd16(0x19a),'value':function(){}},{'key':_0x5cdd16(0x102),'value':function(){var _0x25830f=_0x5cdd16;this[_0x25830f(0xe8)]=this[_0x25830f(0x154)](),this[_0x25830f(0x180)]=this['canvas']['getContext']('2d'),this[_0x25830f(0xb8)](),this[_0x25830f(0x1f0)]['data']&&this[_0x25830f(0x139)](this[_0x25830f(0x1f0)][_0x25830f(0x210)]);}},{'key':_0x5cdd16(0x17d),'value':function(){var _0x4f96d6=_0x5cdd16;this[_0x4f96d6(0xe9)](),this['unbindEvent'](),this[_0x4f96d6(0xe8)]&&(this[_0x4f96d6(0xb2)][_0x4f96d6(0x1be)][_0x4f96d6(0x192)](this[_0x4f96d6(0xe8)]),delete this[_0x4f96d6(0xe8)]);}},{'key':'_createCanvas','value':function(){var _0x2983f6=_0x5cdd16,_0x48b456=window[_0x2983f6(0x1ce)]['createElement'](_0x2983f6(0xe8));_0x48b456[_0x2983f6(0x224)][_0x2983f6(0xbb)]=_0x2983f6(0x11c),_0x48b456[_0x2983f6(0x224)]['top']=_0x2983f6(0x1a5),_0x48b456[_0x2983f6(0x224)]['left']=_0x2983f6(0x1a5),_0x48b456[_0x2983f6(0x224)][_0x2983f6(0xb9)]=_0x2983f6(0x118),_0x48b456[_0x2983f6(0x224)][_0x2983f6(0x1db)]=_0x2983f6(0x118),_0x48b456['style'][_0x2983f6(0x1e4)]=this['_pointerEvents']?_0x2983f6(0x202):_0x2983f6(0x1c2),_0x48b456[_0x2983f6(0x224)]['zIndex']=0xa,_0x48b456[_0x2983f6(0x127)]('id',_0x2983f6(0x163)),_0x48b456['setAttribute']('class','canvasWindy'),this[_0x2983f6(0xb2)][_0x2983f6(0x1be)][_0x2983f6(0x114)](_0x48b456);var _0x45c412=this[_0x2983f6(0xb2)][_0x2983f6(0x1f2)];return _0x48b456[_0x2983f6(0xb9)]=_0x45c412['canvas'][_0x2983f6(0x1cb)],_0x48b456['height']=_0x45c412[_0x2983f6(0xe8)][_0x2983f6(0x171)],_0x48b456;}},{'key':_0x5cdd16(0x1ef),'value':function(){var _0x37cbf5=_0x5cdd16;this[_0x37cbf5(0xe8)]&&(this['canvas'][_0x37cbf5(0xb9)]=this[_0x37cbf5(0xea)],this[_0x37cbf5(0xe8)][_0x37cbf5(0x1db)]=this[_0x37cbf5(0x21c)]);}},{'key':_0x5cdd16(0xb8),'value':function(){var _0x45ffa1=_0x5cdd16,_0x5398ec=this,_0x460f50=Date[_0x45ffa1(0x17a)]();!function _0x4f5b24(){var _0x14510d=_0x45ffa1;_0x5398ec[_0x14510d(0x20c)]=window[_0x14510d(0xce)](_0x4f5b24);var _0x4ad64d=Date[_0x14510d(0x17a)](),_0x548388=_0x4ad64d-_0x460f50;_0x548388>_0x5398ec[_0x14510d(0x147)]&&(_0x460f50=_0x4ad64d-_0x548388%_0x5398ec[_0x14510d(0x147)],_0x5398ec[_0x14510d(0x1f6)]());}(),window['addEventListener']('resize',this[_0x45ffa1(0x1ef)][_0x45ffa1(0x12a)](this),!0x1),this[_0x45ffa1(0x16b)]=!0x1,this[_0x45ffa1(0x197)]=!0x1,this[_0x45ffa1(0xb2)]['on'](_0xc9bd2e[_0x45ffa1(0x120)]['wheel'],this['_onMapWhellEvent'],this),this[_0x45ffa1(0xb2)]['on'](_0xc9bd2e[_0x45ffa1(0x120)]['mouseDown'],this[_0x45ffa1(0x214)],this),this['_map']['on'](_0xc9bd2e[_0x45ffa1(0x120)][_0x45ffa1(0xb0)],this[_0x45ffa1(0x13e)],this),this[_0x45ffa1(0xb2)]['on'](_0xc9bd2e[_0x45ffa1(0x120)][_0x45ffa1(0x15b)],this[_0x45ffa1(0x196)],this);}},{'key':_0x5cdd16(0x194),'value':function(){var _0x310981=_0x5cdd16;window[_0x310981(0x10a)](this[_0x310981(0x20c)]),delete this[_0x310981(0x20c)],window[_0x310981(0x9e)](_0x310981(0x1ef),this[_0x310981(0x1ef)]),this['_map']['off'](_0xc9bd2e['EventType'][_0x310981(0x185)],this[_0x310981(0x16a)],this),this[_0x310981(0xb2)]['off'](_0xc9bd2e[_0x310981(0x120)][_0x310981(0x12d)],this[_0x310981(0x214)],this),this[_0x310981(0xb2)][_0x310981(0x1fc)](_0xc9bd2e[_0x310981(0x120)][_0x310981(0xb0)],this['_onMouseUpEvent'],this),this[_0x310981(0xb2)][_0x310981(0x1fc)](_0xc9bd2e[_0x310981(0x120)][_0x310981(0x15b)],this[_0x310981(0x196)],this);}},{'key':'_onMapWhellEvent','value':function(_0x529ed9){var _0x3defd2=_0x5cdd16,_0x44872a=this;clearTimeout(this['refreshTimer']),this[_0x3defd2(0xdd)]&&this['canvas']&&(this['canvas'][_0x3defd2(0x224)]['visibility']=_0x3defd2(0xaf),this['refreshTimer']=setTimeout(function(){var _0x340c26=_0x3defd2;_0x44872a[_0x340c26(0xdd)]&&(_0x44872a[_0x340c26(0x1b9)](),_0x44872a[_0x340c26(0xe8)]['style'][_0x340c26(0x138)]=_0x340c26(0x199));},0xc8));}},{'key':'_onMouseDownEvent','value':function(_0x5276ee){var _0x5bdcc0=_0x5cdd16;this[_0x5bdcc0(0x16b)]=!0x0;}},{'key':_0x5cdd16(0x196),'value':function(_0x33a9ee){var _0xd31c82=_0x5cdd16;this[_0xd31c82(0xdd)]&&this[_0xd31c82(0xe8)]&&this[_0xd31c82(0x16b)]&&(this[_0xd31c82(0xe8)][_0xd31c82(0x224)][_0xd31c82(0x138)]=_0xd31c82(0xaf),this['mouse_move']=!0x0);}},{'key':'_onMouseUpEvent','value':function(_0x4c651b){var _0x84346a=_0x5cdd16;this[_0x84346a(0xdd)]&&this[_0x84346a(0xe8)]&&(this[_0x84346a(0x16b)]&&this[_0x84346a(0x197)]&&this[_0x84346a(0x1b9)](),this[_0x84346a(0xe8)][_0x84346a(0x224)][_0x84346a(0x138)]=_0x84346a(0x199),this['mouse_down']=!0x1,this['mouse_move']=!0x1);}},{'key':_0x5cdd16(0x1b9),'value':function(){var _0x254b71=_0x5cdd16;this[_0x254b71(0xdd)]&&this[_0x254b71(0xfd)]&&(this[_0x254b71(0x17e)]=[],this[_0x254b71(0x160)]());}},{'key':_0x5cdd16(0x139),'value':function(_0xb7c8c1){var _0xeb1014=_0x5cdd16;this[_0xeb1014(0xe9)](),this[_0xeb1014(0xf5)]=_0xb7c8c1,this[_0xeb1014(0xfd)]=new _0x58d137(this[_0xeb1014(0xf5)],this[_0xeb1014(0x1f8)]),this[_0xeb1014(0x160)]();}},{'key':_0x5cdd16(0x160),'value':function(){var _0x45b985=_0x5cdd16;this[_0x45b985(0x1f3)]();for(var _0x177aa6=0x0;_0x177aa6<this[_0x45b985(0x18e)];_0x177aa6++){var _0x3ede2d=this[_0x45b985(0x227)](new _0xeb8d74());this['particles']['push'](_0x3ede2d);}this['canvasContext'][_0x45b985(0x208)]='rgba(0,\x200,\x200,\x200.97)',this['canvasContext']['globalAlpha']=0.6,this[_0x45b985(0x1f6)]();}},{'key':'_calcStep','value':function(){var _0x55008a=_0x5cdd16;this[_0x55008a(0xfd)]&&(this['calc_speedRate']=[(this[_0x55008a(0xfd)][_0x55008a(0x158)]-this['windField'][_0x55008a(0x1c3)])/this[_0x55008a(0xfe)],(this[_0x55008a(0xfd)][_0x55008a(0xc3)]-this[_0x55008a(0xfd)][_0x55008a(0x156)])/this[_0x55008a(0xfe)]]);}},{'key':_0x5cdd16(0x1f6),'value':function(){var _0x559768=_0x5cdd16,_0x13fe29=this;if(this[_0x559768(0xdd)]&&!(this[_0x559768(0x17e)]['length']<=0x0)){var _0x59f157=null,_0x47138f=null,_0x374962=null;this['particles'][_0x559768(0x19e)](function(_0x27ba91){var _0x1ed4c6=_0x559768;if(_0x27ba91[_0x1ed4c6(0x11e)]<=0x0&&_0x13fe29[_0x1ed4c6(0x227)](_0x27ba91),_0x27ba91[_0x1ed4c6(0x11e)]>0x0){var _0x1685fd=_0x27ba91['tlng'],_0x5be922=_0x27ba91[_0x1ed4c6(0xf8)];(_0x374962=_0x13fe29[_0x1ed4c6(0xfd)][_0x1ed4c6(0x1e0)](_0x1685fd,_0x5be922))?(_0x59f157=_0x1685fd+_0x13fe29[_0x1ed4c6(0x11d)][0x0]*_0x374962[0x0],_0x47138f=_0x5be922+_0x13fe29[_0x1ed4c6(0x11d)][0x1]*_0x374962[0x1],_0x27ba91[_0x1ed4c6(0x1df)]=_0x1685fd,_0x27ba91['lat']=_0x5be922,_0x27ba91[_0x1ed4c6(0x1e5)]=_0x59f157,_0x27ba91[_0x1ed4c6(0xf8)]=_0x47138f,_0x27ba91[_0x1ed4c6(0x11e)]--):_0x27ba91['age']=0x0;}}),this[_0x559768(0x20a)]();}}},{'key':'_tomap','value':function(_0x27d997,_0x353f8d,_0x5ea7e9){var _0x101a15=_0x5cdd16,_0xcf1389=_0x496520['Cartesian3'][_0x101a15(0xc6)](_0x27d997,_0x353f8d,this[_0x101a15(0xc2)]),_0x167a51=this[_0x101a15(0xb2)][_0x101a15(0x1f2)];if(_0x167a51[_0x101a15(0x1c6)]===_0x496520[_0x101a15(0x205)][_0x101a15(0x125)]&&!new _0x496520[(_0x101a15(0xfb))](_0x167a51[_0x101a15(0x155)][_0x101a15(0x174)],_0x167a51[_0x101a15(0x1ec)][_0x101a15(0xde)])['isPointVisible'](_0xcf1389))return _0x5ea7e9[_0x101a15(0x11e)]=0x0,null;var _0x148373=_0x496520[_0x101a15(0x1ee)][_0x101a15(0xc0)](this['_map'][_0x101a15(0x1f2)],_0xcf1389);return _0x148373?[_0x148373['x'],_0x148373['y']]:null;}},{'key':_0x5cdd16(0x20a),'value':function(){var _0x3b4ce6=_0x5cdd16,_0x4a4815=this,_0x1888d7=this[_0x3b4ce6(0x17e)];this[_0x3b4ce6(0x180)][_0x3b4ce6(0xb7)]=_0x4a4815[_0x3b4ce6(0xb7)],this[_0x3b4ce6(0x180)][_0x3b4ce6(0xf9)]=_0x3b4ce6(0x1bf),this['canvasContext'][_0x3b4ce6(0x1d0)](0x0,0x0,this['canvasWidth'],this['canvasHeight']),this[_0x3b4ce6(0x180)][_0x3b4ce6(0xf9)]=_0x3b4ce6(0x106),this['canvasContext'][_0x3b4ce6(0xf2)]=0.9,this[_0x3b4ce6(0x180)][_0x3b4ce6(0xb3)](),this['canvasContext'][_0x3b4ce6(0x117)]=this[_0x3b4ce6(0x1c0)];var _0x1aadd2=this[_0x3b4ce6(0xb2)][_0x3b4ce6(0x1f2)][_0x3b4ce6(0x1c6)]!==_0x496520[_0x3b4ce6(0x205)][_0x3b4ce6(0x125)];_0x1888d7[_0x3b4ce6(0x19e)](function(_0x40f2e3){var _0x4e68ab=_0x3b4ce6,_0x38c1e2=_0x4a4815[_0x4e68ab(0xcf)](_0x40f2e3[_0x4e68ab(0x1df)],_0x40f2e3[_0x4e68ab(0x123)],_0x40f2e3),_0x29353a=_0x4a4815[_0x4e68ab(0xcf)](_0x40f2e3['tlng'],_0x40f2e3[_0x4e68ab(0xf8)],_0x40f2e3);if(null!=_0x38c1e2&&null!=_0x29353a){var _0x3ec86a=Math[_0x4e68ab(0x18d)](_0x38c1e2[0x0]-_0x29353a[0x0]);_0x1aadd2&&_0x3ec86a>=_0x4a4815[_0x4e68ab(0xea)]||(_0x4a4815[_0x4e68ab(0x180)][_0x4e68ab(0x9a)](_0x38c1e2[0x0],_0x38c1e2[0x1]),_0x4a4815['canvasContext'][_0x4e68ab(0xd5)](_0x29353a[0x0],_0x29353a[0x1]));}}),this['canvasContext'][_0x3b4ce6(0x216)]();}},{'key':_0x5cdd16(0x227),'value':function(_0x58ecd5){var _0x3a2e00=_0x5cdd16;for(var _0x28d7f2,_0x14d7d3,_0x24601d=0x0;_0x24601d<0x1e&&(_0x28d7f2=this[_0x3a2e00(0xfd)]['getRandomLatLng'](),!((_0x14d7d3=this[_0x3a2e00(0xfd)][_0x3a2e00(0x1e0)](_0x28d7f2['lng'],_0x28d7f2[_0x3a2e00(0x123)]))&&_0x14d7d3[0x2]>0x0));_0x24601d++);if(!_0x14d7d3)return _0x58ecd5;var _0x5c7687=_0x28d7f2['lng']+this[_0x3a2e00(0x11d)][0x0]*_0x14d7d3[0x0],_0x5c031=_0x28d7f2[_0x3a2e00(0x123)]+this[_0x3a2e00(0x11d)][0x1]*_0x14d7d3[0x1];return _0x58ecd5[_0x3a2e00(0x1df)]=_0x28d7f2['lng'],_0x58ecd5[_0x3a2e00(0x123)]=_0x28d7f2[_0x3a2e00(0x123)],_0x58ecd5['tlng']=_0x5c7687,_0x58ecd5[_0x3a2e00(0xf8)]=_0x5c031,_0x58ecd5[_0x3a2e00(0x11e)]=Math[_0x3a2e00(0x1b3)](Math[_0x3a2e00(0x21f)]()*this['maxAge']),_0x58ecd5;}},{'key':_0x5cdd16(0xe9),'value':function(){var _0x9cddb6=_0x5cdd16;this[_0x9cddb6(0x17e)]=[],delete this[_0x9cddb6(0xfd)],delete this[_0x9cddb6(0xf5)];}}]),_0x5850e9;}(_0xc9bd2e['layer'][_0x46c5ec(0xa5)]);_0xc9bd2e[_0x46c5ec(0x1aa)][_0x46c5ec(0x98)]('canvasWind',_0x2fc26e),_0xc9bd2e[_0x46c5ec(0x95)][_0x46c5ec(0x225)]=_0x2fc26e;var _0xa780a=_0xc9bd2e[_0x46c5ec(0x13c)];function _0x3ea099(_0x4f9c92,_0x19ebe2){var _0x1fccee=_0x46c5ec;return _0x4f9c92*Math[_0x1fccee(0x108)](_0xa780a['Math']['toRadians'](_0x19ebe2));}function _0x512189(_0x361399,_0x59d5d3){var _0x22d39e=_0x46c5ec;return _0x361399*Math['sin'](_0xa780a['Math'][_0x22d39e(0xa8)](_0x59d5d3));}function _0x59da25(_0x23f567,_0x579a34){var _0xbe5f61=_0x46c5ec;return Math[_0xbe5f61(0x222)](Math['pow'](_0x23f567,0x2)+Math[_0xbe5f61(0x211)](_0x579a34,0x2));}function _0x3bc51c(_0x101138,_0x2351a6){var _0x4ed69c=_0x46c5ec,_0x39f53a=_0xa780a[_0x4ed69c(0x1dc)][_0x4ed69c(0xdf)](Math[_0x4ed69c(0x221)](_0x2351a6,_0x101138));return _0x39f53a+=_0x39f53a<0x0?0x168:0x0;}_0xc9bd2e[_0x46c5ec(0x15e)]=_0x1a23ab;}]));
|
|
22
|
-
|
|
23
|
-
})(window);
|
|
24
|
-
|
|
9
|
+
(function (global, factory) {
|
|
10
|
+
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, (window.mars3d || require('mars3d'))) :
|
|
11
|
+
typeof define === 'function' && define.amd ? define(['exports', 'mars3d'], factory) :
|
|
12
|
+
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global["mars3d-wind"] = {}, global.mars3d));
|
|
13
|
+
})(this, (function (exports, mars3d) { 'use strict';var _0x148ef8=_0x5cd8;(function(_0x25fc43,_0x139bff){var _0x17b49d=_0x5cd8,_0x17d6fd=_0x25fc43();while(!![]){try{var _0x8daec7=parseInt(_0x17b49d(0x2c3))/0x1+parseInt(_0x17b49d(0x24b))/0x2+parseInt(_0x17b49d(0x265))/0x3+parseInt(_0x17b49d(0x2bd))/0x4+parseInt(_0x17b49d(0x32a))/0x5+-parseInt(_0x17b49d(0x331))/0x6+-parseInt(_0x17b49d(0x246))/0x7;if(_0x8daec7===_0x139bff)break;else _0x17d6fd['push'](_0x17d6fd['shift']());}catch(_0x313c5f){_0x17d6fd['push'](_0x17d6fd['shift']());}}}(_0x333a,0xbed25));function _interopNamespace(_0x29ea57){var _0x115163=_0x5cd8;if(_0x29ea57&&_0x29ea57[_0x115163(0x2bb)])return _0x29ea57;var _0xdf6f0a=Object[_0x115163(0x244)](null);return _0x29ea57&&Object[_0x115163(0x1f3)](_0x29ea57)[_0x115163(0x26c)](function(_0x4b60e3){var _0x157ac5=_0x115163;if(_0x4b60e3!==_0x157ac5(0x251)){var _0x28ab54=Object['getOwnPropertyDescriptor'](_0x29ea57,_0x4b60e3);Object[_0x157ac5(0x238)](_0xdf6f0a,_0x4b60e3,_0x28ab54['get']?_0x28ab54:{'enumerable':!![],'get':function(){return _0x29ea57[_0x4b60e3];}});}}),_0xdf6f0a[_0x115163(0x251)]=_0x29ea57,_0xdf6f0a;}var mars3d__namespace=_interopNamespace(mars3d),Cesium$7=mars3d__namespace[_0x148ef8(0x297)];function getU(_0x50a9f,_0xdb5f4c){var _0x2178d2=_0x148ef8,_0x20f654=_0x50a9f*Math[_0x2178d2(0x213)](Cesium$7[_0x2178d2(0x2b2)][_0x2178d2(0x1f1)](_0xdb5f4c));return _0x20f654;}function getV(_0x49507d,_0x50f3c7){var _0x4ad2f9=_0x148ef8,_0x2172cf=_0x49507d*Math[_0x4ad2f9(0x234)](Cesium$7['Math'][_0x4ad2f9(0x1f1)](_0x50f3c7));return _0x2172cf;}function getSpeed(_0x412023,_0x60a04d){var _0x548505=_0x148ef8,_0xd8e3b2=Math['sqrt'](Math[_0x548505(0x2c6)](_0x412023,0x2)+Math[_0x548505(0x2c6)](_0x60a04d,0x2));return _0xd8e3b2;}function _0x333a(){var _0x3df719=['x2jPBgLUzwfYsw50zxjWB2XHDgLVBG','nJmXmJyWmeDZre55sG','zNjHz21LBNrtAgfKzxjtB3vYy2u','yxbWBhLwAwv3zxjqyxjHBwv0zxjZ','u2HHzgvYu291CMnL','u2HHzgvYuhjVz3jHBq','vu5tsuDorurFsu5u','yxbWBhK','Cg9ZAxrPB25xqW','C291CMnL','x3nWzwvKuMf0zq','y29SB3jZ','x29UtwfWx3bYzvjLBMrLCKv2zw50','Dw5PzM9YBsbZyw1WBgvYmKqGC2vNBwvUDhndB2XVCLrLEhr1CMu7dqP1BMLMB3jTihnHBxbSzxiYrcbZzwDTzw50C0rLChrOvgv4DhvYztSncG0kDw5PzM9YBsbZyw1WBgvYmKqGy3vYCMvUDfrYywLSC0nVBg9YoW0kDw5PzM9YBsbZyw1WBgvYmKqGDhjHAwXZrgvWDgHuzxH0DxjLoW0kdqP1BMLMB3jTigzSB2f0igzHzgvpCgfJAxr5oW0kdqP2yxj5Aw5NihzLyZiGDgv4DhvYzunVB3jKAw5HDgu7dqOncNzVAwqGBwfPBIGPihSncIaGicb2zwm0ihbVAw50C0nVBg9Yid0GDgv4DhvYztjekhnLz21LBNrZq29SB3juzxH0DxjLlcb0zxH0DxjLq29VCMrPBMf0zsK7dqOGicaGDMvJncb0CMfPBhndB2XVCIa9ihrLEhr1CMuYrcHJDxjYzw50vhjHAwXZq29SB3iSihrLEhr1CMvdB29YzgLUyxrLktSncG0kicaGihrYywLSC0nVBg9Yid0GzMXVB3iOzMfKzu9WywnPDhKGkIaYntuUmcaQihrYywLSC0nVBg9YksaVidi1ns4WoYaVlYbTywTLihn1CMuGDgHLihrYywLSC0nVBg9YihDPBgWGyMuGC3rYAwn0BhKGzgvJCMvHC2vKdqOncIaGicbMBg9HDcbWB2LUDhnezxb0Aca9ihrLEhr1CMuYrcHZzwDTzw50C0rLChrOvgv4DhvYzsWGDgv4DhvYzunVB3jKAw5HDguPlNi7dqOGicaGzMXVyxqGDhjHAwXZrgvWDgGGpsb0zxH0DxjLmKqODhjHAwXZrgvWDgHuzxH0DxjLlcb0zxH0DxjLq29VCMrPBMf0zsKUCJSncIaGicbMBg9HDcbNBg9IzurLChrOid0Gy3PTx3vUCgfJA0rLChrOkhrLEhr1CMuYrcHJEM1Fz2XVyMvezxb0AfrLEhr1CMuSihrLEhr1CMvdB29YzgLUyxrLksK7dqOncIaGicbNBf9gCMfNq29SB3iGpsb2zwm0kdaUmcK7dqOGicaGAwyGkhbVAw50C0rLChrOidWGz2XVyMvezxb0AcKGEW0kicaGicaGicbNBf9gCMfNq29SB3iGpsbNBf9gCMfNq29SB3iGkYbWB2LUDhndB2XVCJSncIaGicb9dqOGicaGAwyGkhrYywLSC0rLChrOidWGz2XVyMvezxb0AcKGEW0kicaGicaGicbNBf9gCMfNq29SB3iGpsbNBf9gCMfNq29SB3iGkYb0CMfPBhndB2XVCJSncIaGicb9dqOGicaGz2XFrNjHz0rLChrOrvHuid0GBwLUkhbVAw50C0rLChrOlcb0CMfPBhnezxb0AcK7dqP9','B3v0Chv0vgv4DhvYzq','BMv4DfrYywLSC0rLChrO','ugL4zwXgB3jTyxq','rhjHDW','vMvYDgv4qxjYyxK','zNjVBurLz3jLzxm','C2v0r2vVBwv0CNK','x2rYyxDmAw5LCW','z2v0rxH0zw50','uKDc','v01tx1vsta','D2LUzerHDge','z3jPza','Cg9PBNrLCKv2zw50CW','yMLUza','y29UDgfPBMvY','Ew1HEa','vgv4DhvYzq','y3vYCMvUDfbHCNrPy2XLC1bVC2L0Aw9U','CMvTB3zLqwXS','DMfSDwvpzG','y2XHBxbuB0XHDgL0DwrLuMfUz2u','C2HHzgvYuhjVz3jHBq','C3rYAw5N','zNjVBunZC0nVBg9Yu3rYAw5N','y29SCW','zw51BwvYywjSzq','y3vYCMvUDfbHCNrPy2XLC1nWzwvK','y2fUDMfZ','u2nLBMvuCMfUC2zVCM1Z','Bg9N','Bgv2','rxzLBNruExbL','BgLUzvrV','BwLU','y3jLyxrLu2vNBwvUDhnhzw9TzxrYEq','Dg9hCMLKwfK','ChjPBwL0AxzLvhLWzq','x3nLDe9WDgLVBNniB29R','vgv4DhvYzu1PBMLMAwnHDgLVBKzPBhrLCG','quXxqvLt','y2fUy2vSqw5PBwf0Aw9UrNjHBwu','zhjVCfjHDgvcDw1W','x21VDw50zwriB29R','veHsruvFueLFt1zfuL9uv08','z2XVyMu','yxr0CMLIDxrLtg9JyxrPB25Z','C3bLzwrgywn0B3i','CMv2zxjZzvK','x3nOB3DiB29R','AgLKzgvU','BM9YDgG','y2fUDMfZq29UDgv4Da','Cg9ZDfbYB2nLC3nPBMDqB3nPDgLVBG','Bgf0','Bgf5zxi','CMv2zxjZzq','Dg9sywrPyw5Z','yw5PBwf0zuzYyw1L','A2v5CW','D2LUzfrLEhr1CMvZ','zMLSBfjLy3q','zgvMAw5Lza','CgfYDgLJBgvtExn0zw0','zNjVBq','uMvJDgfUz2XL','z2v0t3DUuhjVCgvYDhLezxnJCMLWDg9Y','t1bbuvvf','C2v0rgf0yq','zgvMAw5LuhjVCgvYDgLLCW','v2LUzeXHEwvY','C3rYB2TL','zNjHBwvsyxrL','zMLSBa','x29UtwfWv2HLBgXfDMvUDa','DgXUzW','Dg9W','yMvNAw5qyxrO','A2v5','DM1PBG','ugfZCW','Dw5PzM9YBu1HCa','CMfUzg9TugfYDgLJBgu','t2jQzwn0','BgvMDa','y2fSy19ZCgvLzfjHDgu','z2XVyMfSqwXWAge','uMvUzgvYu3rHDgu','q29TChv0zunVBw1HBMq','y2XHC3m','C3bLzwrsyxrL','y29Z','reLtqujmrv9mt0DFrevqveHFrLjbr01ftLrFv1jjveu','zNjVBunHy2HL','DMrHDge','C291DgG','r2vVBwv0CNLbDhrYAwj1Dgu','x2rHDge','Eg1HEa','yMXLBMrPBMC','D2LUzezPzwXK','Bwf4ugfYDgLJBgvZ','x29Utw91C2veB3DUrxzLBNq','y2XLyxjdB21Tyw5K','z2v0q29UDgv4Da','Dg9ezwDYzwvZ','C3fYDa','CMvNAxn0zxi','y3jLyxrLq29TChv0Aw5NuhjPBwL0AxzLCW','C2vNBwvUDhndB2XVCG','Ew1PBG','AxnjBKv4DgvUDa','yxv0BW','ChvZAa','DgHPCYbOyxnUj3qGyMvLBIbPBML0AwfSAxnLzcaTihn1CgvYkcKGAgfZBID0igjLzw4Gy2fSBgvK','x29Utw91C2vnB3zLrxzLBNq','u0nftKuZra','ugL4zwXeyxrHDhLWzq','Dw5KzwzPBMvK','Dg9tDhjPBMC','B3b0Aw9UCW','zg9JDw1LBNq','DMLZAwjSzq','y29TBwfUzeXPC3q','C2LU','C2XPy2u','C2vNBwvUDhm','BgvUz3rO','zgvMAw5LuhjVCgvYDhK','zgvZDhjVEq','C2HVDW','x29Utw91C2vvCev2zw50','Cg9ZDfbYB2nLC3nPBMDtCgvLza','C2v0qxr0CMLIDxrL','CMvTB3zLrxzLBNrmAxn0zw5LCG','DM1HEa','rwXSAxbZB2LKywXpy2nSDwrLCG','y2fUCMvMCMvZAa','zgf0yq','u2fTCgXLCG','y3jLyxrL','Bw91C2vFBw92zq','mta2mZaZodjduxrLDgy','CM91BMq','Bg9U','u2nLBMvnB2rL','Bg5N','mtyZnZaYmfz5yLPqza','BMv4DfbHCNrPy2XLC1nWzwvK','D2HLzwW','y2fUDMfZv2LUzhK','BMv4DfbHCNrPy2XLC1bVC2L0Aw9U','Cg9PBNrLCI1LDMvUDhm','zgvMyxvSDa','ChjVDg90ExbL','z2XVyMfSq29TCg9ZAxrLt3bLCMf0Aw9U','q2XLyxjdB21Tyw5K','BgLNAhrLCG','zML4zwrizwLNAhq','BM93','Bw91C2vvCa','x2nHBNjLzNjLC2G','revqveHFq09nue9oru5u','z2v0q29SB3juzxH0DxjL','C2v0uhjVDg90ExbLt2y','CMvMCMvZAfrPBwvY','DxbKyxrLvMLLD2vYugfYyw1LDgvYCW','qxbWzwfYyw5Jzq','y3jLyxrLuMvUzgvYAw5NrNjHBwvIDwzMzxjZ','CMvTB3zL','CMvMCMvZAfbHCNrPy2XLCW','DhjHAwXZ','AxnbCNjHEq','ndi0mtq2rMrVDxP4','z2v0v2LUza','CMvZAxPL','ywrKuhjPBwL0AxzLCW','y2fUDMfZsgvPz2H0','ueLFt1zfuL9uv08','q2fYDgvZAwfUmG','zM9YrwfJAa','zgvWDgHuzxn0','EKLUzgv4','rgvWDgHgDw5JDgLVBG','r2vVBwv0CNK','zhjHD2LUz0j1zMzLCKHLAwDODa','zxHLy3v0zq','rKXpqvq','x2fKzgvKsg9VAW','Bgf0uMfUz2u','u2v0','CM93CW','CMfUzg9TAxPLugfYDgLJBgvZ','CMDIysGWlcaWlcaWlcaWlJK3kq','y2fUDMfZuMvZAxPL','x3bVAw50zxjfDMvUDhm','zwXSAxbZB2LK','DxbKyxrL','ywjZB2X1Dgu','vfjjqu5htevt','x21HCa','y29UzMLNDxjHyMXL','y29UDgv4Da','C3r5Bgu','y29TBwfUzfrVrxHLy3v0zq','y2fSBa','yxjYyxLcDwzMzxjwAwv3','x2nYzwf0zunHBNzHCW','qxjNDw1LBNrZ','y29UC3rYDwn0B3i','CgfYDgLJBgvZ','C2HHBq','twf0CML4na','Bw9K','x3bHCNrPy2XLC051BwjLCG','D2LKDgG','vgv4DhvYzu1Hz25PzMLJyxrPB25gAwX0zxi','C2v0t3b0Aw9UCW','q2fUDMfZv2LUzeXHEwvY','ChjLrxHLy3v0zq','Bw91C2vnB3zL','surftLrjvfK','y3jLyxrLq29TBwfUza','q2vZAxvT','zMXVB3i','uhjPBwL0AxzLvhLWzq','AgvPz2H0','BgLUzvDPzhrO','yxr0CMLIDxrLihzLyZmGCg9ZAxrPB247dqPHDhrYAwj1DguGDMvJmIbZDdSncG0kDMfYEwLUzYb2zwmYihrLEhr1CMvdB29YzgLUyxrLoW0kdqP2B2LKig1HAw4Oksb7dqOGicaGDgv4DhvYzunVB3jKAw5HDguGpsbZDdSncIaGicbNBf9qB3nPDgLVBIa9ihzLyZqOCg9ZAxrPB24SideUmcK7dqP9','DMLLD1jLy3rHBMDSzvrVtg9Utgf0uMfUz2u','ywjZ','z2v0t3b0Aw9UCW','C2nLBMu','r2vVBwv0CNLbDhrYAwj1DgvZ','DgXHDa','CMfUzg9TqMv0D2vLBG','Bw91C2vFzg93BG','twfW','y3jLyxrLv2LUzfrLEhr1CMvZ','vfDpx1bj','yxbWzw5Kq2HPBgq','u1rbveLdx0rsqvC','CMDIkdiWnIWYntuSmJu1kq','zNjVBuDLB21LDhj5','Bw92zvrV','y29UC3rYDwn0','ChjPBwL0AxzLCW','CMvTB3zLq2HPBgq','Eg1PBG','yxjYyxK','twf0Aa','Bwf4','x3jLBw92zwriB29R','y3jLyxrLuMvUzgvYAw5NuhjPBwL0AxzLCW','yMLUzev2zw50','y29SB3juywjSzq','Dw5PzM9YBsbZyw1WBgvYmKqGCg9ZDfbYB2nLC3nPBMDqB3nPDgLVBJSkDw5PzM9YBsbZyw1WBgvYmKqGBMv4DfbHCNrPy2XLC1nWzwvKoWOkDMfYEwLUzYb2zwmYihzFDgv4DhvYzunVB3jKAw5HDgvZoWOkDM9PzcbTywLUkcKGEWOGicaGDMvJncbYyw5KB21qyxj0AwnSzsa9ihrLEhr1CMuYrcHWB3n0uhjVy2vZC2LUz1bVC2L0Aw9Ulcb2x3rLEhr1CMvdB29YzgLUyxrLCYK7cIaGicb2zwm0ihbHCNrPy2XLu3bLzwqGpsb0zxH0DxjLmKqOBMv4DfbHCNrPy2XLC1nWzwvKlcb2x3rLEhr1CMvdB29YzgLUyxrLCYK7cGOGicaGAwyGkhjHBMrVBvbHCNrPy2XLlMeGpIaWlJaPihSkicaGicaGicbNBf9gCMfNq29SB3iGpsb2zwm0kdaUmcK7cIaGicb9igvSC2uGEWOGicaGicaGigDSx0zYywDdB2XVCIa9ihbHCNrPy2XLu3bLzwq7cIaGicb9cN0','zNvUy3rPB24','Dgv4DhvYzxm','x19LC01VzhvSzq','Dw5PzM9YBsbZyw1WBgvYmKqGy3vYCMvUDfbHCNrPy2XLC1bVC2L0Aw9UoYaVlYaOBg9UlcbSyxqSigXLDIKkDw5PzM9YBsbZyw1WBgvYmKqGy3vYCMvUDfbHCNrPy2XLC1nWzwvKoYaVlYaODsWGDIWGDYWGBM9YBwfSAxPHDgLVBIKkcNzHCNLPBMCGDMvJmIb2x3rLEhr1CMvdB29YzgLUyxrLCZSkcNzLyZiGBgvUz3rOt2zmB25myxqODMvJmYbSB25myxrmzxyPihSkicaGic8VihvUAxqGy29UDMvYC2LVBJOGBwv0zxjZic0+igXVBMDPDhvKzsbSyxrPDhvKzsbKzwDYzwvZcIaGicaVlYbZzwuGAhr0Chm6lY9LBI53AwTPCgvKAweUB3jNl3DPA2KVr2vVz3jHCgHPy19JB29YzgLUyxrLx3n5C3rLBsnmzw5NDgHFB2zFyv9KzwDYzwuGzM9YigrLDgfPBaOkicaGic8VienHBgn1Bgf0zsb0AguGBgvUz3rOig9MigeGzgvNCMvLig9MigXHDgL0DwrLigfUzcbSB25NAxr1zguGAw4GBwv0zxjZcIaGicbMBg9HDcbSyxrPDhvKzsa9ihjHzgLHBNmOBg9Utgf0tgv2lNKPoWOkicaGigzSB2f0ihrLCM0Xid0GmteXmtmYlJKYoWOGicaGzMXVyxqGDgvYBtiGpsa1ntKUodiGkIbJB3mOmI4WicOGBgf0Axr1zguPoWOGicaGzMXVyxqGDgvYBtmGpsaXlJe3nsaQignVCYG0lJaGkIbSyxrPDhvKzsK7cIaGicbMBg9HDcb0zxjTnca9idaUmdaYmYaQignVCYG2lJaGkIbSyxrPDhvKzsK7cIaGicbMBg9HDcbSyxrmzw5NDgGGpsb0zxjTmsaTihrLCM0YicSGDgvYBtmGlsb0zxjTndSkcIaGicbMBg9HDcb0zxjTnsa9ideXmtqXmI44ncaQignVCYHSyxrPDhvKzsK7cIaGicbMBg9HDcb0zxjTnIa9idKZlJuGkIbJB3mOmY4WicOGBgf0Axr1zguPoWOGicaGzMXVyxqGDgvYBtCGpsaWlJeXocaQignVCYG1lJaGkIbSyxrPDhvKzsK7cIaGicbMBg9HDcbSB25NtgvUz3rOid0GDgvYBtuGlsb0zxjTnIaRihrLCM03oWOkicaGihjLDhvYBIb2zwmYkgXVBMDmzw5NDgGSigXHDeXLBMD0AcK7cN0kcNzVAwqGDxbKyxrLug9ZAxrPB24ODMvJmYbSB25myxrmzxySihzLyZmGC3bLzwqPihSkicaGihzLyZiGBg9Utgf0tgvUz3rOid0GBgvUz3rOt2zmB25myxqOBg9Utgf0tgv2ktSkicaGigzSB2f0ihuGpsbZCgvLzc54ic8GBg9Utgf0tgvUz3rOlNG7cIaGicbMBg9HDcb2id0GC3bLzwqUEsaVigXVBKXHDeXLBMD0Ac55oWOGicaGzMXVyxqGDYa9idaUmdSkicaGihzLyZmGD2LUzfzLy3rVCKLUtg9Utgf0tgv2id0GDMvJmYH1lcb2lcb3ktSkcIaGicb2zwmZig5LEhrqyxj0AwnSzsa9igXVBKXHDeXLDIaRihDPBMrwzwn0B3jjBKXVBKXHDeXLDJSkcIaGicbNBf9gCMfNq29SB3iGpsb2zwm0kg5LEhrqyxj0AwnSzsWGmc4WktSkFqOkDM9PzcbTywLUkcKGEWOGicaGlY8GDgv4DhvYzsbJB29YzgLUyxrLig11C3qGyMuGBM9YBwfSAxPLzaOGicaGDMvJmYbSB25myxrmzxyGpsb0zxH0DxjLmKqOy3vYCMvUDfbHCNrPy2XLC1bVC2L0Aw9Ulcb2x3rLEhr1CMvdB29YzgLUyxrLCYKUCMDIoWOGicaGDMvJmYbZCgvLzca9ihrLEhr1CMuYrcHJDxjYzw50ugfYDgLJBgvZu3bLzwqSihzFDgv4DhvYzunVB3jKAw5HDgvZks5Yz2i7cGOGicaGDxbKyxrLug9ZAxrPB24OBg9Utgf0tgv2lcbZCgvLzcK7cN0','mtC0otq4mhDlsff4yq','BM9Uzq','y3jLyxrLugfYDgLJBgvZvgv4DhvYzxm','uhjPBwL0AxzLq29SBgvJDgLVBG','ChjLuMvUzgvY','zhjVCfjHDgu','odaZmdK5CKfzwenb','z2v0vvzcEvbVAw50','DxbKyxrLug9ZAxrPB24','Cg93','teLorufs','x19WCM90B19F','CgfYDgLJBgvZvgv4DhvYzxm','zMfKzu9WywnPDhK','yxv0B0nSzwfY','zNjHBwvuAw1L','DMLLD3bVCNq','zgvMyxvSDfzHBhvL','D2DZodruB1DPBMrVD0nVB3jKAw5HDgvZ','Dw5IAw5KrxzLBNq','z2XVyMvcB3vUzgLUz1nWAgvYzq','yxrHBJi','C2vNBwvUDhnezxb0Aa','q29SB3i','y2XPzw50v2LKDgG','tgf5zxjvDgLS','y29TBwfUzfr5Cgu','zgvWDgHuzxH0DxjL','y2XLyxjgCMfTzwj1zMzLCNm','y3jLyxrLvgv4DhvYzq','Bg9UuMfUz2u','CgfYDgLJBgvZq29TChv0Aw5N','CMfUzg9T','z2v0uhjVDg90ExbLt2y','z2v0vvzcEvHz','C2nYzwvU','qNvMzMvYvxnHz2u','BMv4DfrYywLSC0nVBg9Y','BMfTzq','zNjHBwvIDwzMzxjZ','y3vYCMvUDfrYywLSC0rLChrO','CgfYDgLJBgvizwLNAhq','Dw5PzM9YBsbZyw1WBgvYmKqGy29SB3juywjSztSkcNzHCNLPBMCGzMXVyxqGC3bLzwroB3jTywXPEMf0Aw9UoWOkDM9PzcbTywLUkcKGEWOGicaGz2XFrNjHz0nVBg9Yid0GDgv4DhvYztjekgnVBg9YvgfIBguSihzLyZiOC3bLzwroB3jTywXPEMf0Aw9UlcaWlJaPktSkFq','qebPDgvYyxrVCG','CgfYDgLJBgvZtNvTyMvY','x3rVBwfW','DMLZAwjPBgL0Eq','tKvbuKvtva','y3jLyxrLuMf3uMvUzgvYu3rHDgu','y2fTzxjH','zgvZDhjVEvbHCNrPy2XLC1rLEhr1CMvZ','y2fUDMfZv2LUza','y3vYCMvUDfrYywLSCW','x21HEefNzq','CMf3uMvUzgvYu3rHDgu','CgL4zwXtAxPL','y3jLyxrLrNjHBwvIDwzMzxi','z2v0uMfUzg9Ttgf0tg5N','v2LUzfv0AwW','zhjHD2LUz0j1zMzLCLDPzhrO','DMvYDgv4u2HHzgvYu291CMnL','zgLTzw5ZAw9UCW','zgvZDhjVEu9IAMvJDa','q2fYDgvZAwfUmW','mtaWjq','Bwf4qwDL','sw52ywXPzcbHDhrLBxb0ihrVihnWCMvHzcbUB24TAxrLCMfIBguGAw5ZDgfUy2uUcKLUig9YzgvYihrVigjLigL0zxjHyMXLlcbUB24TyxjYyxKGB2jQzwn0CYbTDxn0igHHDMuGysbBu3LTyM9SlML0zxjHDg9YxsGPig1LDgHVzc4','z2v0t3DUuhjVCgvYDhLtEw1IB2XZ','Bw9Kzq','D3jPDgfIBgu','CMvXDwvZDefUAw1HDgLVBKzYyw1L','ywrKrxzLBNrmAxn0zw5LCG','zgvZDgLUyxrPB24TAw4','AxnqB2LUDfzPC2LIBgu','z2vVBwv0CNK','ueLFt1zfuL9usfjfrq','q29TCg9Uzw50rgf0yxr5Cgu','u3vWzxiGzxHWCMvZC2LVBIbTDxn0igvPDgHLCIbIzsbUDwXSig9YigeGzNvUy3rPB24','x2nHBgntDgvW','ywrK','y29SB3i','CgfYDgLJBgvZuMvUzgvYAw5N','AxrLCMf0B3i','B2jQzwn0','B25Jzq','z3jLzw4','CMvKCMf3','y2fUDMfZv2LKDgG','zNjHBwvIDwzMzxi','y2XPzw50sgvPz2H0','CgfYDgLJBgvZv2LUza','x2nHBgnvvG','Dw5PzM9YBsbZyw1WBgvYmKqGDhjHAwXZq29SB3juzxH0DxjLoW0kDw5PzM9YBsbZyw1WBgvYmKqGDhjHAwXZrgvWDgHuzxH0DxjLoW0kdqP2yxj5Aw5NihzLyZiGDgv4DhvYzunVB3jKAw5HDgu7dqOncNzVAwqGBwfPBIGPihSncIaGicb2zwm0ihrYywLSC0nVBg9Yid0GDgv4DhvYztjekhrYywLSC0nVBg9Yvgv4DhvYzsWGDgv4DhvYzunVB3jKAw5HDguPoW0kicaGigzSB2f0ihrYywLSC0rLChrOid0GDgv4DhvYztjekhrYywLSC0rLChrOvgv4DhvYzsWGDgv4DhvYzunVB3jKAw5HDguPlNi7dqOGicaGzMXVyxqGz2XVyMvezxb0Aca9ign6Bv91BNbHy2Tezxb0AcH0zxH0DxjLmKqOy3PTx2DSB2jLrgvWDgHuzxH0DxjLlcb0zxH0DxjLq29VCMrPBMf0zsKPoW0kdqOGicaGAwyGkhrYywLSC0rLChrOidWGz2XVyMvezxb0AcKGEW0kicaGicaGicbNBf9gCMfNq29SB3iGpsb0CMfPBhndB2XVCJSncIaGicb9igvSC2uGEW0kicaGicaGicbNBf9gCMfNq29SB3iGpsb2zwm0kdaUmcK7dqOGicaGFq0kFq','DxbKyxrLu3bLzwq','Bw91C2veB3DU','B2zM','BMv4DfrYywLSCW','CgfYDgLJBgvZvgv4DhvYzvnPEMu','ywDL','uKDcqq','Axnezxn0CM95zwq','Dw1HEa','y2XLyxi','zhjHD1DPBMq','qM91BMrPBMDtCgHLCMu','CMvK','DMLLD2vYugfYyw1LDgvYCW','z2v0rgvMyxvSDfjLBMrLCLn0yxrL','DgvZDa','ntC1otG1mfDlBgD6Ea','DwrHDge','q29TChv0zq','zMLSBfn0EwXL','mhb4','zMLSDgvY'];_0x333a=function(){return _0x3df719;};return _0x333a();}function getDirection(_0x317b91,_0x48baea){var _0x9fdd3c=_0x148ef8,_0x1faafa=Cesium$7[_0x9fdd3c(0x2b2)][_0x9fdd3c(0x221)](Math[_0x9fdd3c(0x2d2)](_0x48baea,_0x317b91));return _0x1faafa+=_0x1faafa<0x0?0x168:0x0,_0x1faafa;}var WindUtil={'__proto__':null,'getU':getU,'getV':getV,'getSpeed':getSpeed,'getDirection':getDirection};function ownKeys(_0x462fd8,_0x29d068){var _0x1c181d=_0x148ef8,_0x46d677=Object[_0x1c181d(0x1f3)](_0x462fd8);if(Object['getOwnPropertySymbols']){var _0x448985=Object[_0x1c181d(0x300)](_0x462fd8);_0x29d068&&(_0x448985=_0x448985[_0x1c181d(0x32f)](function(_0x1d043e){var _0x257ff6=_0x1c181d;return Object['getOwnPropertyDescriptor'](_0x462fd8,_0x1d043e)[_0x257ff6(0x1d2)];})),_0x46d677['push']['apply'](_0x46d677,_0x448985);}return _0x46d677;}function _objectSpread2(_0x1fcd9a){var _0x4d766a=_0x148ef8;for(var _0x55e62d=0x1;_0x55e62d<arguments['length'];_0x55e62d++){var _0x174e6a=null!=arguments[_0x55e62d]?arguments[_0x55e62d]:{};_0x55e62d%0x2?ownKeys(Object(_0x174e6a),!0x0)['forEach'](function(_0x20fb7d){_defineProperty(_0x1fcd9a,_0x20fb7d,_0x174e6a[_0x20fb7d]);}):Object['getOwnPropertyDescriptors']?Object[_0x4d766a(0x1fd)](_0x1fcd9a,Object['getOwnPropertyDescriptors'](_0x174e6a)):ownKeys(Object(_0x174e6a))[_0x4d766a(0x26c)](function(_0x5b568a){var _0x24d5c8=_0x4d766a;Object['defineProperty'](_0x1fcd9a,_0x5b568a,Object[_0x24d5c8(0x1fa)](_0x174e6a,_0x5b568a));});}return _0x1fcd9a;}function _classCallCheck(_0x2e565a,_0x50aa5a){if(!(_0x2e565a instanceof _0x50aa5a))throw new TypeError('Cannot\x20call\x20a\x20class\x20as\x20a\x20function');}function _defineProperties(_0x1f2055,_0x45af71){var _0x569f42=_0x148ef8;for(var _0x100d75=0x0;_0x100d75<_0x45af71[_0x569f42(0x237)];_0x100d75++){var _0x163059=_0x45af71[_0x100d75];_0x163059[_0x569f42(0x1d2)]=_0x163059[_0x569f42(0x1d2)]||![],_0x163059[_0x569f42(0x281)]=!![];if('value'in _0x163059)_0x163059[_0x569f42(0x302)]=!![];Object['defineProperty'](_0x1f2055,_0x163059[_0x569f42(0x206)],_0x163059);}}function _createClass(_0x5de749,_0x48df5b,_0x340400){var _0x4b6b60=_0x148ef8;if(_0x48df5b)_defineProperties(_0x5de749[_0x4b6b60(0x252)],_0x48df5b);if(_0x340400)_defineProperties(_0x5de749,_0x340400);return Object[_0x4b6b60(0x238)](_0x5de749,'prototype',{'writable':![]}),_0x5de749;}function _defineProperty(_0x128f96,_0x407bca,_0x26d8ae){return _0x407bca in _0x128f96?Object['defineProperty'](_0x128f96,_0x407bca,{'value':_0x26d8ae,'enumerable':!![],'configurable':!![],'writable':!![]}):_0x128f96[_0x407bca]=_0x26d8ae,_0x128f96;}function _inherits(_0x2b8353,_0x10a416){var _0x4f558a=_0x148ef8;if(typeof _0x10a416!=='function'&&_0x10a416!==null)throw new TypeError(_0x4f558a(0x30a));_0x2b8353['prototype']=Object[_0x4f558a(0x244)](_0x10a416&&_0x10a416[_0x4f558a(0x252)],{'constructor':{'value':_0x2b8353,'writable':!![],'configurable':!![]}}),Object[_0x4f558a(0x238)](_0x2b8353,_0x4f558a(0x252),{'writable':![]});if(_0x10a416)_setPrototypeOf(_0x2b8353,_0x10a416);}function _getPrototypeOf(_0x384ad7){var _0x1438cd=_0x148ef8;return _getPrototypeOf=Object[_0x1438cd(0x25c)]?Object[_0x1438cd(0x2de)]:function _0x33d76e(_0x2657a2){var _0x1dfcd2=_0x1438cd;return _0x2657a2[_0x1dfcd2(0x2c8)]||Object['getPrototypeOf'](_0x2657a2);},_getPrototypeOf(_0x384ad7);}function _0x5cd8(_0x320cba,_0x20c865){var _0x333a75=_0x333a();return _0x5cd8=function(_0x5cd8ef,_0x24b3cf){_0x5cd8ef=_0x5cd8ef-0x1b2;var _0xf51439=_0x333a75[_0x5cd8ef];if(_0x5cd8['KOXQUI']===undefined){var _0x4f72a5=function(_0x29ea57){var _0xdf6f0a='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0x4b60e3='',_0x28ab54='';for(var _0x50a9f=0x0,_0xdb5f4c,_0x20f654,_0x49507d=0x0;_0x20f654=_0x29ea57['charAt'](_0x49507d++);~_0x20f654&&(_0xdb5f4c=_0x50a9f%0x4?_0xdb5f4c*0x40+_0x20f654:_0x20f654,_0x50a9f++%0x4)?_0x4b60e3+=String['fromCharCode'](0xff&_0xdb5f4c>>(-0x2*_0x50a9f&0x6)):0x0){_0x20f654=_0xdf6f0a['indexOf'](_0x20f654);}for(var _0x50f3c7=0x0,_0x2172cf=_0x4b60e3['length'];_0x50f3c7<_0x2172cf;_0x50f3c7++){_0x28ab54+='%'+('00'+_0x4b60e3['charCodeAt'](_0x50f3c7)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x28ab54);};_0x5cd8['xPNqxd']=_0x4f72a5,_0x320cba=arguments,_0x5cd8['KOXQUI']=!![];}var _0x18340f=_0x333a75[0x0],_0x4a15f5=_0x5cd8ef+_0x18340f,_0x26c538=_0x320cba[_0x4a15f5];return!_0x26c538?(_0xf51439=_0x5cd8['xPNqxd'](_0xf51439),_0x320cba[_0x4a15f5]=_0xf51439):_0xf51439=_0x26c538,_0xf51439;},_0x5cd8(_0x320cba,_0x20c865);}function _setPrototypeOf(_0x23f213,_0x4022be){var _0x374c89=_0x148ef8;return _setPrototypeOf=Object[_0x374c89(0x25c)]||function _0x5f4bf5(_0x82a256,_0x249526){var _0x29a4f1=_0x374c89;return _0x82a256[_0x29a4f1(0x2c8)]=_0x249526,_0x82a256;},_setPrototypeOf(_0x23f213,_0x4022be);}function _isNativeReflectConstruct(){var _0x14f3ca=_0x148ef8;if(typeof Reflect===_0x14f3ca(0x22e)||!Reflect[_0x14f3ca(0x2ad)])return![];if(Reflect[_0x14f3ca(0x2ad)][_0x14f3ca(0x28b)])return![];if(typeof Proxy===_0x14f3ca(0x2b9))return!![];try{return Boolean[_0x14f3ca(0x252)][_0x14f3ca(0x1cc)]['call'](Reflect[_0x14f3ca(0x2ad)](Boolean,[],function(){})),!![];}catch(_0xc0658b){return![];}}function _assertThisInitialized(_0x4cf375){var _0x3519c4=_0x148ef8;if(_0x4cf375===void 0x0)throw new ReferenceError(_0x3519c4(0x22a));return _0x4cf375;}function _possibleConstructorReturn(_0x38670c,_0x5573a2){var _0x2492a1=_0x148ef8;if(_0x5573a2&&(typeof _0x5573a2===_0x2492a1(0x310)||typeof _0x5573a2==='function'))return _0x5573a2;else{if(_0x5573a2!==void 0x0)throw new TypeError('Derived\x20constructors\x20may\x20only\x20return\x20object\x20or\x20undefined');}return _assertThisInitialized(_0x38670c);}function _createSuper(_0x391979){var _0xa2d3c7=_isNativeReflectConstruct();return function _0x4a8256(){var _0x5edf9c=_0x5cd8,_0x4e8543=_getPrototypeOf(_0x391979),_0x48fdb1;if(_0xa2d3c7){var _0xfbdd6=_getPrototypeOf(this)[_0x5edf9c(0x289)];_0x48fdb1=Reflect[_0x5edf9c(0x2ad)](_0x4e8543,arguments,_0xfbdd6);}else _0x48fdb1=_0x4e8543[_0x5edf9c(0x337)](this,arguments);return _possibleConstructorReturn(this,_0x48fdb1);};}function _toConsumableArray(_0x55181a){return _arrayWithoutHoles(_0x55181a)||_iterableToArray(_0x55181a)||_unsupportedIterableToArray(_0x55181a)||_nonIterableSpread();}function _arrayWithoutHoles(_0x459058){var _0x607094=_0x148ef8;if(Array[_0x607094(0x264)](_0x459058))return _arrayLikeToArray(_0x459058);}function _iterableToArray(_0x594b0f){var _0xfee62d=_0x148ef8;if(typeof Symbol!==_0xfee62d(0x22e)&&_0x594b0f[Symbol[_0xfee62d(0x30f)]]!=null||_0x594b0f[_0xfee62d(0x2e8)]!=null)return Array[_0xfee62d(0x1f8)](_0x594b0f);}function _unsupportedIterableToArray(_0x139043,_0x32dea1){var _0x3fbc61=_0x148ef8;if(!_0x139043)return;if(typeof _0x139043===_0x3fbc61(0x1cf))return _arrayLikeToArray(_0x139043,_0x32dea1);var _0x2e3b92=Object[_0x3fbc61(0x252)][_0x3fbc61(0x22f)][_0x3fbc61(0x285)](_0x139043)[_0x3fbc61(0x235)](0x8,-0x1);if(_0x2e3b92===_0x3fbc61(0x20b)&&_0x139043[_0x3fbc61(0x289)])_0x2e3b92=_0x139043['constructor'][_0x3fbc61(0x2e3)];if(_0x2e3b92===_0x3fbc61(0x2a5)||_0x2e3b92===_0x3fbc61(0x276))return Array['from'](_0x139043);if(_0x2e3b92===_0x3fbc61(0x288)||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/[_0x3fbc61(0x329)](_0x2e3b92))return _arrayLikeToArray(_0x139043,_0x32dea1);}function _arrayLikeToArray(_0xc87e49,_0x3556b4){var _0x1311bb=_0x148ef8;if(_0x3556b4==null||_0x3556b4>_0xc87e49[_0x1311bb(0x237)])_0x3556b4=_0xc87e49['length'];for(var _0x1b84f7=0x0,_0x540f19=new Array(_0x3556b4);_0x1b84f7<_0x3556b4;_0x1b84f7++)_0x540f19[_0x1b84f7]=_0xc87e49[_0x1b84f7];return _0x540f19;}function _nonIterableSpread(){var _0xfa8de3=_0x148ef8;throw new TypeError(_0xfa8de3(0x2ff));}var Cesium$6=mars3d__namespace[_0x148ef8(0x297)],CustomPrimitive=(function(){var _0x50fc57=_0x148ef8;function _0x4acf77(_0x1d073f){var _0xc431bf=_0x5cd8;_classCallCheck(this,_0x4acf77),this['commandType']=_0x1d073f['commandType'],this[_0xc431bf(0x307)]=_0x1d073f['geometry'],this[_0xc431bf(0x1e6)]=_0x1d073f[_0xc431bf(0x1e6)],this[_0xc431bf(0x1dd)]=_0x1d073f[_0xc431bf(0x1dd)],this[_0xc431bf(0x209)]=_0x1d073f['uniformMap'],this[_0xc431bf(0x2f9)]=_0x1d073f[_0xc431bf(0x2f9)],this[_0xc431bf(0x332)]=_0x1d073f[_0xc431bf(0x332)],this['rawRenderState']=_0x1d073f[_0xc431bf(0x2f3)],this[_0xc431bf(0x315)]=_0x1d073f[_0xc431bf(0x315)],this[_0xc431bf(0x1b8)]=_0x1d073f[_0xc431bf(0x1b8)],this[_0xc431bf(0x2cb)]=Cesium$6[_0xc431bf(0x2ce)](_0x1d073f[_0xc431bf(0x2cb)],![]),this['preExecute']=_0x1d073f[_0xc431bf(0x293)],this[_0xc431bf(0x23a)]=!![],this[_0xc431bf(0x284)]=undefined,this[_0xc431bf(0x21f)]=undefined,this['autoClear']&&(this[_0xc431bf(0x21f)]=new Cesium$6[(_0xc431bf(0x254))]({'color':new Cesium$6[(_0xc431bf(0x2d4))](0x0,0x0,0x0,0x0),'depth':0x1,'framebuffer':this['framebuffer'],'pass':Cesium$6[_0xc431bf(0x208)][_0xc431bf(0x1fb)]}));}return _createClass(_0x4acf77,[{'key':_0x50fc57(0x296),'value':function _0x30a19b(_0x277961){var _0x25966b=_0x50fc57;switch(this[_0x25966b(0x2d7)]){case'Draw':{var _0x19f68b=Cesium$6[_0x25966b(0x1bc)][_0x25966b(0x2ab)]({'context':_0x277961,'geometry':this[_0x25966b(0x307)],'attributeLocations':this[_0x25966b(0x1e6)],'bufferUsage':Cesium$6['BufferUsage'][_0x25966b(0x2a9)]}),_0x2a9c90=Cesium$6[_0x25966b(0x335)][_0x25966b(0x215)]({'context':_0x277961,'attributeLocations':this[_0x25966b(0x1e6)],'vertexShaderSource':this[_0x25966b(0x2f9)],'fragmentShaderSource':this[_0x25966b(0x332)]}),_0x5ee4ab=Cesium$6[_0x25966b(0x20f)][_0x25966b(0x215)](this[_0x25966b(0x2f3)]);return new Cesium$6['DrawCommand']({'owner':this,'vertexArray':_0x19f68b,'primitiveType':this[_0x25966b(0x1dd)],'uniformMap':this['uniformMap'],'modelMatrix':Cesium$6[_0x25966b(0x28c)][_0x25966b(0x295)],'shaderProgram':_0x2a9c90,'framebuffer':this[_0x25966b(0x315)],'renderState':_0x5ee4ab,'pass':Cesium$6[_0x25966b(0x208)][_0x25966b(0x1fb)]});}case'Compute':{return new Cesium$6[(_0x25966b(0x210))]({'owner':this,'fragmentShaderSource':this['fragmentShaderSource'],'uniformMap':this['uniformMap'],'outputTexture':this['outputTexture'],'persists':!![]});}}}},{'key':_0x50fc57(0x1be),'value':function _0x3ccd59(_0x136932,_0x28ba39){var _0x5c0d5f=_0x50fc57;this[_0x5c0d5f(0x307)]=_0x28ba39;var _0x3076ae=Cesium$6[_0x5c0d5f(0x1bc)]['fromGeometry']({'context':_0x136932,'geometry':this[_0x5c0d5f(0x307)],'attributeLocations':this['attributeLocations'],'bufferUsage':Cesium$6[_0x5c0d5f(0x2e1)][_0x5c0d5f(0x2a9)]});this['commandToExecute']['vertexArray']=_0x3076ae;}},{'key':_0x50fc57(0x27d),'value':function _0x5000d0(_0x2745f6){var _0x2c5f89=_0x50fc57;if(!this[_0x2c5f89(0x23a)])return;if(_0x2745f6[_0x2c5f89(0x301)]!==Cesium$6[_0x2c5f89(0x249)][_0x2c5f89(0x22c)])return;!Cesium$6['defined'](this[_0x2c5f89(0x284)])&&(this['commandToExecute']=this[_0x2c5f89(0x296)](_0x2745f6[_0x2c5f89(0x282)])),Cesium$6['defined'](this['preExecute'])&&this[_0x2c5f89(0x293)](),Cesium$6['defined'](this[_0x2c5f89(0x21f)])&&_0x2745f6['commandList'][_0x2c5f89(0x229)](this[_0x2c5f89(0x21f)]),_0x2745f6[_0x2c5f89(0x233)][_0x2c5f89(0x229)](this['commandToExecute']);}},{'key':_0x50fc57(0x321),'value':function _0x490abd(){return![];}},{'key':_0x50fc57(0x239),'value':function _0x5539ac(){var _0x432c1f=_0x50fc57;return Cesium$6['defined'](this['commandToExecute'])&&(this[_0x432c1f(0x284)][_0x432c1f(0x1ce)]=this[_0x432c1f(0x284)][_0x432c1f(0x1ce)]&&this[_0x432c1f(0x284)][_0x432c1f(0x1ce)][_0x432c1f(0x239)]()),Cesium$6[_0x432c1f(0x2fb)](this);}}]),_0x4acf77;}()),Cesium$5=mars3d__namespace[_0x148ef8(0x297)],Util=(function(){var _0xb1a3d6=function _0x44a020(){var _0x236096=_0x5cd8,_0x3211bf=new Cesium$5[(_0x236096(0x270))]({'attributes':new Cesium$5[(_0x236096(0x2a1))]({'position':new Cesium$5[(_0x236096(0x218))]({'componentDatatype':Cesium$5[_0x236096(0x309)][_0x236096(0x273)],'componentsPerAttribute':0x3,'values':new Float32Array([-0x1,-0x1,0x0,0x1,-0x1,0x0,0x1,0x1,0x0,-0x1,0x1,0x0])}),'st':new Cesium$5['GeometryAttribute']({'componentDatatype':Cesium$5['ComponentDatatype']['FLOAT'],'componentsPerAttribute':0x2,'values':new Float32Array([0x0,0x0,0x1,0x0,0x1,0x1,0x0,0x1])})}),'indices':new Uint32Array([0x3,0x2,0x0,0x0,0x2,0x1])});return _0x3211bf;},_0x20b8b4=function _0x422005(_0x45f826,_0x27dca7){var _0x2dbe22=_0x5cd8;if(Cesium$5[_0x2dbe22(0x1f6)](_0x27dca7)){var _0x47ef98={};_0x47ef98[_0x2dbe22(0x286)]=_0x27dca7,_0x45f826[_0x2dbe22(0x1b3)]=_0x47ef98;}var _0x287c1f=new Cesium$5[(_0x2dbe22(0x1c9))](_0x45f826);return _0x287c1f;},_0x4dc65c=function _0x7ab558(_0x5b1ded,_0x1b3207,_0x2ecfdb){var _0x587f66=new Cesium$5['Framebuffer']({'context':_0x5b1ded,'colorTextures':[_0x1b3207],'depthTexture':_0x2ecfdb});return _0x587f66;},_0x43f85a=function _0x52b90b(_0x54a7be){var _0x9a1670=_0x5cd8,_0x134ae5=!![],_0x2a15dc=![],_0x295ac0={'viewport':_0x54a7be[_0x9a1670(0x2cd)],'depthTest':_0x54a7be[_0x9a1670(0x26d)],'depthMask':_0x54a7be['depthMask'],'blending':_0x54a7be[_0x9a1670(0x21b)]},_0x402ed4=Cesium$5[_0x9a1670(0x25f)][_0x9a1670(0x328)](_0x134ae5,_0x2a15dc,_0x295ac0);return _0x402ed4;},_0x13fecf=function _0x3b2346(_0x31fda2){var _0x3e5820=_0x5cd8,_0x5c8e50={},_0x194fb7=Cesium$5[_0x3e5820(0x2b2)][_0x3e5820(0x28d)](_0x31fda2['west'],Cesium$5[_0x3e5820(0x2b2)]['TWO_PI']),_0x369bfe=Cesium$5[_0x3e5820(0x2b2)]['mod'](_0x31fda2['east'],Cesium$5['Math']['TWO_PI']),_0x41de2a=_0x31fda2['width'],_0x3e064f,_0x34a949;_0x41de2a>Cesium$5[_0x3e5820(0x2b2)][_0x3e5820(0x1e4)]?(_0x3e064f=0x0,_0x34a949=Cesium$5[_0x3e5820(0x2b2)][_0x3e5820(0x2a7)]):_0x369bfe-_0x194fb7<_0x41de2a?(_0x3e064f=_0x194fb7,_0x34a949=_0x194fb7+_0x41de2a):(_0x3e064f=_0x194fb7,_0x34a949=_0x369bfe);_0x5c8e50['lon']={'min':Cesium$5[_0x3e5820(0x2b2)]['toDegrees'](_0x3e064f),'max':Cesium$5[_0x3e5820(0x2b2)]['toDegrees'](_0x34a949)};var _0x18f620=_0x31fda2[_0x3e5820(0x217)],_0x389c29=_0x31fda2[_0x3e5820(0x1eb)],_0x353d08=_0x31fda2[_0x3e5820(0x29a)],_0x4c7370=_0x353d08>Cesium$5[_0x3e5820(0x2b2)]['PI']/0xc?_0x353d08/0x2:0x0,_0x477828=Cesium$5[_0x3e5820(0x2b2)][_0x3e5820(0x1cd)](_0x18f620-_0x4c7370),_0x9c8588=Cesium$5[_0x3e5820(0x2b2)]['clampToLatitudeRange'](_0x389c29+_0x4c7370);return _0x477828<-Cesium$5[_0x3e5820(0x2b2)]['PI_OVER_THREE']&&(_0x477828=-Cesium$5['Math'][_0x3e5820(0x26a)]),_0x9c8588>Cesium$5['Math'][_0x3e5820(0x308)]&&(_0x9c8588=Cesium$5[_0x3e5820(0x2b2)][_0x3e5820(0x26a)]),_0x5c8e50[_0x3e5820(0x1ee)]={'min':Cesium$5[_0x3e5820(0x2b2)][_0x3e5820(0x221)](_0x477828),'max':Cesium$5[_0x3e5820(0x2b2)][_0x3e5820(0x221)](_0x9c8588)},_0x5c8e50;};return{'getFullscreenQuad':_0xb1a3d6,'createTexture':_0x20b8b4,'createFramebuffer':_0x4dc65c,'createRawRenderState':_0x43f85a,'viewRectangleToLonLatRange':_0x13fecf};}()),segmentDraw_vert='attribute\x20vec2\x20st;\x0a//\x20it\x20is\x20not\x20normal\x20itself,\x20but\x20used\x20to\x20control\x20normal\x0aattribute\x20vec3\x20normal;\x20//\x20(point\x20to\x20use,\x20offset\x20sign,\x20not\x20used\x20component)\x0a\x0auniform\x20sampler2D\x20currentParticlesPosition;\x0auniform\x20sampler2D\x20postProcessingPosition;\x0auniform\x20sampler2D\x20postProcessingSpeed;\x0a\x0auniform\x20float\x20particleHeight;\x0a\x0auniform\x20float\x20aspect;\x0auniform\x20float\x20pixelSize;\x0auniform\x20float\x20lineWidth;\x0a\x0avarying\x20float\x20speedNormalization;\x0a\x0avec3\x20convertCoordinate(vec3\x20lonLatLev)\x20{\x0a\x20\x20\x20\x20//\x20WGS84\x20(lon,\x20lat,\x20lev)\x20->\x20ECEF\x20(x,\x20y,\x20z)\x0a\x20\x20\x20\x20//\x20see\x20https://en.wikipedia.org/wiki/Geographic_coordinate_conversion#From_geodetic_to_ECEF_coordinates\x20for\x20detail\x0a\x0a\x20\x20\x20\x20//\x20WGS\x2084\x20geometric\x20constants\x20\x0a\x20\x20\x20\x20float\x20a\x20=\x206378137.0;\x20//\x20Semi-major\x20axis\x20\x0a\x20\x20\x20\x20float\x20b\x20=\x206356752.3142;\x20//\x20Semi-minor\x20axis\x20\x0a\x20\x20\x20\x20float\x20e2\x20=\x206.69437999014e-3;\x20//\x20First\x20eccentricity\x20squared\x0a\x0a\x20\x20\x20\x20float\x20latitude\x20=\x20radians(lonLatLev.y);\x0a\x20\x20\x20\x20float\x20longitude\x20=\x20radians(lonLatLev.x);\x0a\x0a\x20\x20\x20\x20float\x20cosLat\x20=\x20cos(latitude);\x0a\x20\x20\x20\x20float\x20sinLat\x20=\x20sin(latitude);\x0a\x20\x20\x20\x20float\x20cosLon\x20=\x20cos(longitude);\x0a\x20\x20\x20\x20float\x20sinLon\x20=\x20sin(longitude);\x0a\x0a\x20\x20\x20\x20float\x20N_Phi\x20=\x20a\x20/\x20sqrt(1.0\x20-\x20e2\x20*\x20sinLat\x20*\x20sinLat);\x0a\x20\x20\x20\x20float\x20h\x20=\x20particleHeight;\x20//\x20it\x20should\x20be\x20high\x20enough\x20otherwise\x20the\x20particle\x20may\x20not\x20pass\x20the\x20terrain\x20depth\x20test\x0a\x0a\x20\x20\x20\x20vec3\x20cartesian\x20=\x20vec3(0.0);\x0a\x20\x20\x20\x20cartesian.x\x20=\x20(N_Phi\x20+\x20h)\x20*\x20cosLat\x20*\x20cosLon;\x0a\x20\x20\x20\x20cartesian.y\x20=\x20(N_Phi\x20+\x20h)\x20*\x20cosLat\x20*\x20sinLon;\x0a\x20\x20\x20\x20cartesian.z\x20=\x20((b\x20*\x20b)\x20/\x20(a\x20*\x20a)\x20*\x20N_Phi\x20+\x20h)\x20*\x20sinLat;\x0a\x20\x20\x20\x20return\x20cartesian;\x0a}\x0a\x0avec4\x20calcProjectedCoordinate(vec3\x20lonLatLev)\x20{\x0a\x20\x20\x20\x20//\x20the\x20range\x20of\x20longitude\x20in\x20Cesium\x20is\x20[-180,\x20180]\x20but\x20the\x20range\x20of\x20longitude\x20in\x20the\x20NetCDF\x20file\x20is\x20[0,\x20360]\x0a\x20\x20\x20\x20//\x20[0,\x20180]\x20is\x20corresponding\x20to\x20[0,\x20180]\x20and\x20[180,\x20360]\x20is\x20corresponding\x20to\x20[-180,\x200]\x0a\x20\x20\x20\x20lonLatLev.x\x20=\x20mod(lonLatLev.x\x20+\x20180.0,\x20360.0)\x20-\x20180.0;\x0a\x20\x20\x20\x20vec3\x20particlePosition\x20=\x20convertCoordinate(lonLatLev);\x0a\x20\x20\x20\x20vec4\x20projectedCoordinate\x20=\x20czm_modelViewProjection\x20*\x20vec4(particlePosition,\x201.0);\x0a\x20\x20\x20\x20return\x20projectedCoordinate;\x0a}\x0a\x0avec4\x20calcOffset(vec4\x20currentProjectedCoordinate,\x20vec4\x20nextProjectedCoordinate,\x20float\x20offsetSign)\x20{\x0a\x20\x20\x20\x20vec2\x20aspectVec2\x20=\x20vec2(aspect,\x201.0);\x0a\x20\x20\x20\x20vec2\x20currentXY\x20=\x20(currentProjectedCoordinate.xy\x20/\x20currentProjectedCoordinate.w)\x20*\x20aspectVec2;\x0a\x20\x20\x20\x20vec2\x20nextXY\x20=\x20(nextProjectedCoordinate.xy\x20/\x20nextProjectedCoordinate.w)\x20*\x20aspectVec2;\x0a\x0a\x20\x20\x20\x20float\x20offsetLength\x20=\x20lineWidth\x20/\x202.0;\x0a\x20\x20\x20\x20vec2\x20direction\x20=\x20normalize(nextXY\x20-\x20currentXY);\x0a\x20\x20\x20\x20vec2\x20normalVector\x20=\x20vec2(-direction.y,\x20direction.x);\x0a\x20\x20\x20\x20normalVector.x\x20=\x20normalVector.x\x20/\x20aspect;\x0a\x20\x20\x20\x20normalVector\x20=\x20offsetLength\x20*\x20normalVector;\x0a\x0a\x20\x20\x20\x20vec4\x20offset\x20=\x20vec4(offsetSign\x20*\x20normalVector,\x200.0,\x200.0);\x0a\x20\x20\x20\x20return\x20offset;\x0a}\x0a\x0avoid\x20main()\x20{\x0a\x20\x20\x20\x20vec2\x20particleIndex\x20=\x20st;\x0a\x0a\x20\x20\x20\x20vec3\x20currentPosition\x20=\x20texture2D(currentParticlesPosition,\x20particleIndex).rgb;\x0a\x20\x20\x20\x20vec4\x20nextPosition\x20=\x20texture2D(postProcessingPosition,\x20particleIndex);\x0a\x0a\x20\x20\x20\x20vec4\x20currentProjectedCoordinate\x20=\x20vec4(0.0);\x0a\x20\x20\x20\x20vec4\x20nextProjectedCoordinate\x20=\x20vec4(0.0);\x0a\x20\x20\x20\x20if\x20(nextPosition.w\x20>\x200.0)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20currentProjectedCoordinate\x20=\x20calcProjectedCoordinate(currentPosition);\x0a\x20\x20\x20\x20\x20\x20\x20\x20nextProjectedCoordinate\x20=\x20calcProjectedCoordinate(currentPosition);\x0a\x20\x20\x20\x20}\x20else\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20currentProjectedCoordinate\x20=\x20calcProjectedCoordinate(currentPosition);\x0a\x20\x20\x20\x20\x20\x20\x20\x20nextProjectedCoordinate\x20=\x20calcProjectedCoordinate(nextPosition.xyz);\x0a\x20\x20\x20\x20}\x0a\x0a\x20\x20\x20\x20float\x20pointToUse\x20=\x20normal.x;\x20//\x20-1\x20is\x20currentProjectedCoordinate\x20and\x20+1\x20is\x20nextProjectedCoordinate\x0a\x20\x20\x20\x20float\x20offsetSign\x20=\x20normal.y;\x0a\x0a\x20\x20\x20\x20vec4\x20offset\x20=\x20pixelSize\x20*\x20calcOffset(currentProjectedCoordinate,\x20nextProjectedCoordinate,\x20offsetSign);\x0a\x20\x20\x20\x20if\x20(pointToUse\x20<\x200.0)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20gl_Position\x20=\x20currentProjectedCoordinate\x20+\x20offset;\x0a\x20\x20\x20\x20}\x20else\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20gl_Position\x20=\x20nextProjectedCoordinate\x20+\x20offset;\x0a\x20\x20\x20\x20}\x0a\x0a\x20\x20\x20\x20speedNormalization\x20=\x20texture2D(postProcessingSpeed,\x20particleIndex).a;\x0a}',segmentDraw_frag=_0x148ef8(0x2e7),fullscreen_vert=_0x148ef8(0x29c),trailDraw_frag=_0x148ef8(0x1b7),screenDraw_frag=_0x148ef8(0x319),Cesium$4=mars3d__namespace[_0x148ef8(0x297)],ParticlesRendering=(function(){var _0x1064bd=_0x148ef8;function _0x124823(_0x2d9c00,_0x5206fe,_0x2981fb,_0x20366c,_0x2b73af){var _0x2aec8f=_0x5cd8;_classCallCheck(this,_0x124823),this['createRenderingTextures'](_0x2d9c00,_0x5206fe,_0x2981fb[_0x2aec8f(0x1b5)]),this['createRenderingFramebuffers'](_0x2d9c00),this[_0x2aec8f(0x2b5)](_0x2d9c00,_0x2981fb,_0x20366c,_0x2b73af);}return _createClass(_0x124823,[{'key':'createRenderingTextures','value':function _0x4b291f(_0x138f5e,_0x2f59bd,_0x4b1ba6){var _0x35a210=_0x5cd8,_0x5188f2={'context':_0x138f5e,'width':_0x138f5e[_0x35a210(0x2f8)],'height':_0x138f5e[_0x35a210(0x271)],'pixelFormat':Cesium$4[_0x35a210(0x1ba)]['RGBA'],'pixelDatatype':Cesium$4['PixelDatatype']['UNSIGNED_BYTE']},_0x498d09={'context':_0x138f5e,'width':_0x138f5e[_0x35a210(0x2f8)],'height':_0x138f5e['drawingBufferHeight'],'pixelFormat':Cesium$4[_0x35a210(0x1ba)][_0x35a210(0x25a)],'pixelDatatype':Cesium$4[_0x35a210(0x22d)][_0x35a210(0x336)]},_0x49aa51=_0x4b1ba6[_0x35a210(0x237)],_0x1b0ea5=new Float32Array(_0x49aa51*0x3);for(var _0x55b454=0x0;_0x55b454<_0x49aa51;_0x55b454++){var _0x2b93db=Cesium$4[_0x35a210(0x2d4)][_0x35a210(0x1d0)](_0x4b1ba6[_0x55b454]);_0x1b0ea5[0x3*_0x55b454]=_0x2b93db[_0x35a210(0x326)],_0x1b0ea5[0x3*_0x55b454+0x1]=_0x2b93db[_0x35a210(0x312)],_0x1b0ea5[0x3*_0x55b454+0x2]=_0x2b93db['blue'];}var _0x2438fe={'context':_0x138f5e,'width':_0x49aa51,'height':0x1,'pixelFormat':Cesium$4['PixelFormat'][_0x35a210(0x1c1)],'pixelDatatype':Cesium$4[_0x35a210(0x22d)][_0x35a210(0x273)],'sampler':new Cesium$4[(_0x35a210(0x243))]({'minificationFilter':Cesium$4[_0x35a210(0x1df)][_0x35a210(0x2c7)],'magnificationFilter':Cesium$4[_0x35a210(0x290)]['LINEAR']})};this['textures']={'segmentsColor':Util[_0x35a210(0x2da)](_0x5188f2),'segmentsDepth':Util[_0x35a210(0x2da)](_0x498d09),'currentTrailsColor':Util[_0x35a210(0x2da)](_0x5188f2),'currentTrailsDepth':Util[_0x35a210(0x2da)](_0x498d09),'nextTrailsColor':Util[_0x35a210(0x2da)](_0x5188f2),'nextTrailsDepth':Util[_0x35a210(0x2da)](_0x498d09),'colorTable':Util[_0x35a210(0x2da)](_0x2438fe,_0x1b0ea5)};}},{'key':_0x1064bd(0x260),'value':function _0x5a84db(_0x2fbbae){var _0x36ca53=_0x1064bd;this[_0x36ca53(0x2e4)]={'segments':Util[_0x36ca53(0x2f5)](_0x2fbbae,this[_0x36ca53(0x2ba)][_0x36ca53(0x225)],this[_0x36ca53(0x2ba)][_0x36ca53(0x2d3)]),'currentTrails':Util[_0x36ca53(0x2f5)](_0x2fbbae,this[_0x36ca53(0x2ba)]['currentTrailsColor'],this[_0x36ca53(0x2ba)][_0x36ca53(0x2e5)]),'nextTrails':Util['createFramebuffer'](_0x2fbbae,this[_0x36ca53(0x2ba)][_0x36ca53(0x2e2)],this[_0x36ca53(0x2ba)][_0x36ca53(0x1b9)])};}},{'key':_0x1064bd(0x1db),'value':function _0x1a9641(_0x1df476){var _0x3f9c1e=_0x1064bd,_0x1296b9=0x4,_0x1a64be=[];for(var _0x1f0222=0x0;_0x1f0222<_0x1df476['particlesTextureSize'];_0x1f0222++){for(var _0x4dfca8=0x0;_0x4dfca8<_0x1df476[_0x3f9c1e(0x31e)];_0x4dfca8++){for(var _0x1d9f88=0x0;_0x1d9f88<_0x1296b9;_0x1d9f88++){_0x1a64be[_0x3f9c1e(0x229)](_0x1f0222/_0x1df476['particlesTextureSize']),_0x1a64be[_0x3f9c1e(0x229)](_0x4dfca8/_0x1df476[_0x3f9c1e(0x31e)]);}}}_0x1a64be=new Float32Array(_0x1a64be);var _0x5989c5=[],_0x1b155c=[-0x1,0x1],_0x258951=[-0x1,0x1];for(var _0x59d25e=0x0;_0x59d25e<_0x1df476['maxParticles'];_0x59d25e++){for(var _0x5e25d9=0x0;_0x5e25d9<_0x1296b9/0x2;_0x5e25d9++){for(var _0x1b5adf=0x0;_0x1b5adf<_0x1296b9/0x2;_0x1b5adf++){_0x5989c5['push'](_0x1b155c[_0x5e25d9]),_0x5989c5[_0x3f9c1e(0x229)](_0x258951[_0x1b5adf]),_0x5989c5[_0x3f9c1e(0x229)](0x0);}}}_0x5989c5=new Float32Array(_0x5989c5);var _0x44eabe=0x6*_0x1df476[_0x3f9c1e(0x21d)],_0x7d2a65=new Uint32Array(_0x44eabe);for(var _0x434094=0x0,_0x2f7f16=0x0,_0x1964b7=0x0;_0x434094<_0x1df476[_0x3f9c1e(0x21d)];_0x434094++){_0x7d2a65[_0x2f7f16++]=_0x1964b7+0x0,_0x7d2a65[_0x2f7f16++]=_0x1964b7+0x1,_0x7d2a65[_0x2f7f16++]=_0x1964b7+0x2,_0x7d2a65[_0x2f7f16++]=_0x1964b7+0x2,_0x7d2a65[_0x2f7f16++]=_0x1964b7+0x1,_0x7d2a65[_0x2f7f16++]=_0x1964b7+0x3,_0x1964b7+=0x4;}var _0x493a81=new Cesium$4[(_0x3f9c1e(0x270))]({'attributes':new Cesium$4[(_0x3f9c1e(0x2a1))]({'st':new Cesium$4[(_0x3f9c1e(0x218))]({'componentDatatype':Cesium$4['ComponentDatatype'][_0x3f9c1e(0x273)],'componentsPerAttribute':0x2,'values':_0x1a64be}),'normal':new Cesium$4[(_0x3f9c1e(0x218))]({'componentDatatype':Cesium$4['ComponentDatatype'][_0x3f9c1e(0x273)],'componentsPerAttribute':0x3,'values':_0x5989c5})}),'indices':_0x7d2a65});return _0x493a81;}},{'key':_0x1064bd(0x2b5),'value':function _0x211118(_0x411444,_0x441024,_0x3bbcdb,_0x4d44d7){var _0x1cc623=_0x1064bd,_0x5ae3bd=this;this['primitives']={'segments':new CustomPrimitive({'commandType':_0x1cc623(0x1bb),'attributeLocations':{'st':0x0,'normal':0x1},'geometry':this['createSegmentsGeometry'](_0x441024),'primitiveType':Cesium$4['PrimitiveType']['TRIANGLES'],'uniformMap':{'currentParticlesPosition':function _0x37af00(){var _0x466da4=_0x1cc623;return _0x4d44d7[_0x466da4(0x2c9)][_0x466da4(0x1ca)];},'postProcessingPosition':function _0x24f635(){var _0x5c6231=_0x1cc623;return _0x4d44d7[_0x5c6231(0x2c9)][_0x5c6231(0x1ed)];},'postProcessingSpeed':function _0x2d1066(){var _0x2ec0f9=_0x1cc623;return _0x4d44d7[_0x2ec0f9(0x2c9)][_0x2ec0f9(0x23c)];},'colorTable':function _0x5b584b(){var _0x418169=_0x1cc623;return _0x5ae3bd[_0x418169(0x2ba)][_0x418169(0x2b7)];},'aspect':function _0x2dfcef(){var _0x50bc08=_0x1cc623;return _0x411444[_0x50bc08(0x2f8)]/_0x411444[_0x50bc08(0x271)];},'pixelSize':function _0x4a7fb8(){var _0x23936e=_0x1cc623;return _0x3bbcdb[_0x23936e(0x2f4)];},'lineWidth':function _0x37f04c(){var _0x18d771=_0x1cc623;return _0x441024[_0x18d771(0x29b)];},'particleHeight':function _0x5f157e(){var _0x21e998=_0x1cc623;return _0x441024[_0x21e998(0x2e6)];}},'vertexShaderSource':new Cesium$4[(_0x1cc623(0x334))]({'sources':[segmentDraw_vert]}),'fragmentShaderSource':new Cesium$4[(_0x1cc623(0x334))]({'sources':[segmentDraw_frag]}),'rawRenderState':Util['createRawRenderState']({'viewport':undefined,'depthTest':{'enabled':!![]},'depthMask':!![]}),'framebuffer':this[_0x1cc623(0x2e4)][_0x1cc623(0x236)],'autoClear':!![]}),'trails':new CustomPrimitive({'commandType':_0x1cc623(0x1bb),'attributeLocations':{'position':0x0,'st':0x1},'geometry':Util['getFullscreenQuad'](),'primitiveType':Cesium$4[_0x1cc623(0x299)][_0x1cc623(0x27f)],'uniformMap':{'segmentsColorTexture':function _0x1980c7(){var _0x44c793=_0x1cc623;return _0x5ae3bd[_0x44c793(0x2ba)][_0x44c793(0x225)];},'segmentsDepthTexture':function _0x10a820(){var _0x25eef0=_0x1cc623;return _0x5ae3bd[_0x25eef0(0x2ba)][_0x25eef0(0x2d3)];},'currentTrailsColor':function _0x5496ad(){var _0x299c1f=_0x1cc623;return _0x5ae3bd[_0x299c1f(0x2e4)][_0x299c1f(0x2f1)][_0x299c1f(0x25b)](0x0);},'trailsDepthTexture':function _0x41035e(){var _0x471538=_0x1cc623;return _0x5ae3bd[_0x471538(0x2e4)][_0x471538(0x2f1)]['depthTexture'];},'fadeOpacity':function _0x21324b(){var _0x55b996=_0x1cc623;return _0x441024[_0x55b996(0x2ca)];}},'vertexShaderSource':new Cesium$4['ShaderSource']({'defines':['DISABLE_GL_POSITION_LOG_DEPTH'],'sources':[fullscreen_vert]}),'fragmentShaderSource':new Cesium$4[(_0x1cc623(0x334))]({'defines':[_0x1cc623(0x214)],'sources':[trailDraw_frag]}),'rawRenderState':Util[_0x1cc623(0x2ed)]({'viewport':undefined,'depthTest':{'enabled':!![],'func':Cesium$4[_0x1cc623(0x26f)][_0x1cc623(0x1e0)]},'depthMask':!![]}),'framebuffer':this[_0x1cc623(0x2e4)][_0x1cc623(0x31d)],'autoClear':!![],'preExecute':function _0x36040b(){var _0x2e5eac=_0x1cc623,_0x5e4c0e=_0x5ae3bd[_0x2e5eac(0x2e4)][_0x2e5eac(0x2f1)];_0x5ae3bd[_0x2e5eac(0x2e4)]['currentTrails']=_0x5ae3bd[_0x2e5eac(0x2e4)][_0x2e5eac(0x31d)],_0x5ae3bd[_0x2e5eac(0x2e4)][_0x2e5eac(0x31d)]=_0x5e4c0e,_0x5ae3bd[_0x2e5eac(0x2ae)][_0x2e5eac(0x263)][_0x2e5eac(0x284)][_0x2e5eac(0x315)]=_0x5ae3bd['framebuffers'][_0x2e5eac(0x31d)],_0x5ae3bd[_0x2e5eac(0x2ae)][_0x2e5eac(0x263)][_0x2e5eac(0x21f)][_0x2e5eac(0x315)]=_0x5ae3bd[_0x2e5eac(0x2e4)][_0x2e5eac(0x31d)];}}),'screen':new CustomPrimitive({'commandType':_0x1cc623(0x1bb),'attributeLocations':{'position':0x0,'st':0x1},'geometry':Util['getFullscreenQuad'](),'primitiveType':Cesium$4[_0x1cc623(0x299)]['TRIANGLES'],'uniformMap':{'trailsColorTexture':function _0x393922(){var _0x52e968=_0x1cc623;return _0x5ae3bd['framebuffers'][_0x52e968(0x31d)][_0x52e968(0x25b)](0x0);},'trailsDepthTexture':function _0x5d8af5(){var _0x41b66a=_0x1cc623;return _0x5ae3bd[_0x41b66a(0x2e4)]['nextTrails'][_0x41b66a(0x2d8)];}},'vertexShaderSource':new Cesium$4[(_0x1cc623(0x334))]({'defines':['DISABLE_GL_POSITION_LOG_DEPTH'],'sources':[fullscreen_vert]}),'fragmentShaderSource':new Cesium$4[(_0x1cc623(0x334))]({'defines':[_0x1cc623(0x214)],'sources':[screenDraw_frag]}),'rawRenderState':Util[_0x1cc623(0x2ed)]({'viewport':undefined,'depthTest':{'enabled':![]},'depthMask':!![],'blending':{'enabled':!![]}}),'framebuffer':undefined})};}}]),_0x124823;}()),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\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=_0x148ef8(0x2bc),postProcessingPosition_frag='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}',postProcessingSpeed_frag=_0x148ef8(0x2b8),Cesium$3=mars3d__namespace['Cesium'],ParticlesComputing=(function(){var _0x42b123=_0x148ef8;function _0x12ea68(_0x17ddf4,_0x9ce44d,_0x499c8a,_0x180f7f){var _0x4bdd7f=_0x5cd8;_classCallCheck(this,_0x12ea68),this[_0x4bdd7f(0x242)]=_0x9ce44d,this['createWindTextures'](_0x17ddf4,_0x9ce44d),this[_0x4bdd7f(0x2bf)](_0x17ddf4,_0x499c8a,_0x180f7f),this[_0x4bdd7f(0x224)](_0x9ce44d,_0x499c8a,_0x180f7f);}return _createClass(_0x12ea68,[{'key':_0x42b123(0x2a6),'value':function _0x3ea813(_0x5d03c2,_0x1c6f88){var _0x4dca03=_0x42b123,_0x5c1f72={'context':_0x5d03c2,'width':_0x1c6f88[_0x4dca03(0x2fa)][_0x4dca03(0x248)],'height':_0x1c6f88[_0x4dca03(0x2fa)][_0x4dca03(0x1ee)]*(_0x1c6f88[_0x4dca03(0x2fa)]['lev']||0x1),'pixelFormat':Cesium$3[_0x4dca03(0x1ba)]['LUMINANCE'],'pixelDatatype':Cesium$3[_0x4dca03(0x22d)][_0x4dca03(0x273)],'flipY':![],'sampler':new Cesium$3[(_0x4dca03(0x243))]({'minificationFilter':Cesium$3['TextureMinificationFilter'][_0x4dca03(0x2ec)],'magnificationFilter':Cesium$3[_0x4dca03(0x290)][_0x4dca03(0x2ec)]})};this[_0x4dca03(0x1f4)]={'U':Util['createTexture'](_0x5c1f72,_0x1c6f88['U'][_0x4dca03(0x2b1)]),'V':Util[_0x4dca03(0x2da)](_0x5c1f72,_0x1c6f88['V'][_0x4dca03(0x2b1)])};}},{'key':'createParticlesTextures','value':function _0x53ee99(_0xffb290,_0x320bda,_0x4893f2){var _0x2e8f19=_0x42b123,_0x4ecaa1={'context':_0xffb290,'width':_0x320bda[_0x2e8f19(0x31e)],'height':_0x320bda[_0x2e8f19(0x31e)],'pixelFormat':Cesium$3[_0x2e8f19(0x1ba)][_0x2e8f19(0x320)],'pixelDatatype':Cesium$3['PixelDatatype'][_0x2e8f19(0x273)],'flipY':![],'sampler':new Cesium$3[(_0x2e8f19(0x243))]({'minificationFilter':Cesium$3[_0x2e8f19(0x1df)]['NEAREST'],'magnificationFilter':Cesium$3[_0x2e8f19(0x290)][_0x2e8f19(0x2ec)]})},_0xb1ae15=this[_0x2e8f19(0x278)](_0x320bda[_0x2e8f19(0x21d)],_0x4893f2),_0x2e0a8e=new Float32Array(0x4*_0x320bda[_0x2e8f19(0x21d)])[_0x2e8f19(0x201)](0x0);this[_0x2e8f19(0x2c9)]={'particlesWind':Util[_0x2e8f19(0x2da)](_0x4ecaa1),'currentParticlesPosition':Util[_0x2e8f19(0x2da)](_0x4ecaa1,_0xb1ae15),'nextParticlesPosition':Util[_0x2e8f19(0x2da)](_0x4ecaa1,_0xb1ae15),'currentParticlesSpeed':Util[_0x2e8f19(0x2da)](_0x4ecaa1,_0x2e0a8e),'nextParticlesSpeed':Util[_0x2e8f19(0x2da)](_0x4ecaa1,_0x2e0a8e),'postProcessingPosition':Util[_0x2e8f19(0x2da)](_0x4ecaa1,_0xb1ae15),'postProcessingSpeed':Util['createTexture'](_0x4ecaa1,_0x2e0a8e)};}},{'key':_0x42b123(0x278),'value':function _0x3b20f7(_0x2f7cee,_0x5b5ed4){var _0x418f4a=_0x42b123,_0x5d4a08=new Float32Array(0x4*_0x2f7cee);for(var _0x14978c=0x0;_0x14978c<_0x2f7cee;_0x14978c++){_0x5d4a08[0x4*_0x14978c]=Cesium$3[_0x418f4a(0x2b2)][_0x418f4a(0x2a3)](_0x5b5ed4[_0x418f4a(0x2db)]['x'],_0x5b5ed4['lonRange']['y']),_0x5d4a08[0x4*_0x14978c+0x1]=Cesium$3[_0x418f4a(0x2b2)]['randomBetween'](_0x5b5ed4[_0x418f4a(0x275)]['x'],_0x5b5ed4[_0x418f4a(0x275)]['y']),_0x5d4a08[0x4*_0x14978c+0x2]=Cesium$3[_0x418f4a(0x2b2)][_0x418f4a(0x2a3)](this['data']['lev'][_0x418f4a(0x1da)],this['data'][_0x418f4a(0x1d7)][_0x418f4a(0x2b3)]),_0x5d4a08[0x4*_0x14978c+0x3]=0x0;}return _0x5d4a08;}},{'key':_0x42b123(0x2ef),'value':function _0x4f7735(){var _0x31151a=_0x42b123,_0x23cb0e=this;Object[_0x31151a(0x1f3)](this[_0x31151a(0x2c9)])[_0x31151a(0x26c)](function(_0x820fa5){_0x23cb0e['particlesTextures'][_0x820fa5]['destroy']();});}},{'key':_0x42b123(0x224),'value':function _0x3ec50a(_0xdb95de,_0x37f2d5,_0x3b605a){var _0x443f9a=_0x42b123,_0x452662=new Cesium$3[(_0x443f9a(0x2fc))](_0xdb95de[_0x443f9a(0x2fa)][_0x443f9a(0x248)],_0xdb95de[_0x443f9a(0x2fa)][_0x443f9a(0x1ee)],_0xdb95de[_0x443f9a(0x2fa)][_0x443f9a(0x1d7)]),_0x1eacd6=new Cesium$3[(_0x443f9a(0x2fc))](_0xdb95de[_0x443f9a(0x248)][_0x443f9a(0x1da)],_0xdb95de[_0x443f9a(0x1ee)]['min'],_0xdb95de['lev']['min']),_0x1e05d0=new Cesium$3[(_0x443f9a(0x2fc))](_0xdb95de[_0x443f9a(0x248)]['max'],_0xdb95de[_0x443f9a(0x1ee)][_0x443f9a(0x2b3)],_0xdb95de[_0x443f9a(0x1d7)]['max']),_0x163c65=new Cesium$3['Cartesian3']((_0x1e05d0['x']-_0x1eacd6['x'])/(_0x452662['x']-0x1),(_0x1e05d0['y']-_0x1eacd6['y'])/(_0x452662['y']-0x1),_0x452662['z']>0x1?(_0x1e05d0['z']-_0x1eacd6['z'])/(_0x452662['z']-0x1):0x1),_0x884307=new Cesium$3[(_0x443f9a(0x26b))](_0xdb95de['U']['min'],_0xdb95de['U'][_0x443f9a(0x2b3)]),_0xed0447=new Cesium$3[(_0x443f9a(0x26b))](_0xdb95de['V']['min'],_0xdb95de['V'][_0x443f9a(0x2b3)]),_0x3d9e6d=this;this[_0x443f9a(0x2ae)]={'getWind':new CustomPrimitive({'commandType':_0x443f9a(0x32c),'uniformMap':{'U':function _0x2fb431(){var _0x139aa3=_0x443f9a;return _0x3d9e6d[_0x139aa3(0x1f4)]['U'];},'V':function _0x4d1a54(){var _0x26d1c9=_0x443f9a;return _0x3d9e6d[_0x26d1c9(0x1f4)]['V'];},'currentParticlesPosition':function _0x19adb4(){var _0x3b7a55=_0x443f9a;return _0x3d9e6d[_0x3b7a55(0x2c9)][_0x3b7a55(0x1ca)];},'dimension':function _0x5ab323(){return _0x452662;},'minimum':function _0x137861(){return _0x1eacd6;},'maximum':function _0x272873(){return _0x1e05d0;},'interval':function _0x49b2a6(){return _0x163c65;}},'fragmentShaderSource':new Cesium$3[(_0x443f9a(0x334))]({'sources':[getWind_frag]}),'outputTexture':this['particlesTextures'][_0x443f9a(0x317)],'preExecute':function _0x15a972(){var _0x3201a7=_0x443f9a;_0x3d9e6d[_0x3201a7(0x2ae)][_0x3201a7(0x266)]['commandToExecute'][_0x3201a7(0x1b8)]=_0x3d9e6d['particlesTextures']['particlesWind'];}}),'updateSpeed':new CustomPrimitive({'commandType':_0x443f9a(0x32c),'uniformMap':{'currentParticlesSpeed':function _0x354a7b(){var _0x395863=_0x443f9a;return _0x3d9e6d[_0x395863(0x2c9)][_0x395863(0x1d3)];},'particlesWind':function _0x12aed1(){var _0x2e92be=_0x443f9a;return _0x3d9e6d[_0x2e92be(0x2c9)][_0x2e92be(0x317)];},'uSpeedRange':function _0x420d40(){return _0x884307;},'vSpeedRange':function _0x4f2991(){return _0xed0447;},'pixelSize':function _0x26364e(){return _0x3b605a['pixelSize'];},'speedFactor':function _0xb204a(){var _0x7b0fb1=_0x443f9a;return _0x37f2d5[_0x7b0fb1(0x1e7)];}},'fragmentShaderSource':new Cesium$3[(_0x443f9a(0x334))]({'sources':[updateSpeed_frag]}),'outputTexture':this[_0x443f9a(0x2c9)][_0x443f9a(0x24c)],'preExecute':function _0x3f9876(){var _0x2b8a59=_0x443f9a,_0xec0e5f=_0x3d9e6d['particlesTextures'][_0x2b8a59(0x1d3)];_0x3d9e6d['particlesTextures']['currentParticlesSpeed']=_0x3d9e6d['particlesTextures'][_0x2b8a59(0x23c)],_0x3d9e6d['particlesTextures']['postProcessingSpeed']=_0xec0e5f,_0x3d9e6d['primitives'][_0x2b8a59(0x31a)][_0x2b8a59(0x284)][_0x2b8a59(0x1b8)]=_0x3d9e6d['particlesTextures'][_0x2b8a59(0x24c)];}}),'updatePosition':new CustomPrimitive({'commandType':'Compute','uniformMap':{'currentParticlesPosition':function _0x8eb132(){var _0x1437b0=_0x443f9a;return _0x3d9e6d[_0x1437b0(0x2c9)][_0x1437b0(0x1ca)];},'currentParticlesSpeed':function _0x472f47(){var _0x38486a=_0x443f9a;return _0x3d9e6d[_0x38486a(0x2c9)][_0x38486a(0x1d3)];}},'fragmentShaderSource':new Cesium$3[(_0x443f9a(0x334))]({'sources':[updatePosition_frag]}),'outputTexture':this[_0x443f9a(0x2c9)][_0x443f9a(0x24f)],'preExecute':function _0xdd2b2(){var _0x35a901=_0x443f9a,_0x1a75ad=_0x3d9e6d[_0x35a901(0x2c9)][_0x35a901(0x1ca)];_0x3d9e6d[_0x35a901(0x2c9)][_0x35a901(0x1ca)]=_0x3d9e6d[_0x35a901(0x2c9)][_0x35a901(0x1ed)],_0x3d9e6d[_0x35a901(0x2c9)][_0x35a901(0x1ed)]=_0x1a75ad,_0x3d9e6d[_0x35a901(0x2ae)][_0x35a901(0x2c5)][_0x35a901(0x284)][_0x35a901(0x1b8)]=_0x3d9e6d[_0x35a901(0x2c9)]['nextParticlesPosition'];}}),'postProcessingPosition':new CustomPrimitive({'commandType':_0x443f9a(0x32c),'uniformMap':{'nextParticlesPosition':function _0x43f1c7(){var _0xb3d9cc=_0x443f9a;return _0x3d9e6d[_0xb3d9cc(0x2c9)][_0xb3d9cc(0x24f)];},'nextParticlesSpeed':function _0x5a339d(){var _0x1d6d97=_0x443f9a;return _0x3d9e6d[_0x1d6d97(0x2c9)][_0x1d6d97(0x24c)];},'lonRange':function _0xc9383c(){var _0x35dd86=_0x443f9a;return _0x3b605a[_0x35dd86(0x2db)];},'latRange':function _0x5fa6e3(){var _0x15212c=_0x443f9a;return _0x3b605a[_0x15212c(0x275)];},'randomCoefficient':function _0x44bcf4(){var _0x3e3d05=_0x443f9a,_0xffc29e=Math[_0x3e3d05(0x2dd)]();return _0xffc29e;},'dropRate':function _0x540ddc(){var _0x5d047f=_0x443f9a;return _0x37f2d5[_0x5d047f(0x2c2)];},'dropRateBump':function _0x1290bd(){var _0x127c27=_0x443f9a;return _0x37f2d5[_0x127c27(0x1e2)];}},'fragmentShaderSource':new Cesium$3['ShaderSource']({'sources':[postProcessingPosition_frag]}),'outputTexture':this['particlesTextures'][_0x443f9a(0x1ed)],'preExecute':function _0x7fcdb7(){var _0x93042=_0x443f9a;_0x3d9e6d[_0x93042(0x2ae)]['postProcessingPosition'][_0x93042(0x284)][_0x93042(0x1b8)]=_0x3d9e6d[_0x93042(0x2c9)][_0x93042(0x1ed)];}}),'postProcessingSpeed':new CustomPrimitive({'commandType':_0x443f9a(0x32c),'uniformMap':{'postProcessingPosition':function _0x2f7347(){var _0x244b7a=_0x443f9a;return _0x3d9e6d[_0x244b7a(0x2c9)][_0x244b7a(0x1ed)];},'nextParticlesSpeed':function _0x457bfe(){var _0x530f21=_0x443f9a;return _0x3d9e6d[_0x530f21(0x2c9)]['nextParticlesSpeed'];}},'fragmentShaderSource':new Cesium$3['ShaderSource']({'sources':[postProcessingSpeed_frag]}),'outputTexture':this[_0x443f9a(0x2c9)][_0x443f9a(0x23c)],'preExecute':function _0x288684(){var _0x1af738=_0x443f9a;_0x3d9e6d['primitives'][_0x1af738(0x23c)][_0x1af738(0x284)][_0x1af738(0x1b8)]=_0x3d9e6d[_0x1af738(0x2c9)]['postProcessingSpeed'];}})};}}]),_0x12ea68;}()),Cesium$2=mars3d__namespace[_0x148ef8(0x297)],ParticleSystem=(function(){var _0xaf277a=_0x148ef8;function _0xc08eaf(_0x1ed1d9,_0x25813f,_0x189cf1,_0x24196e){var _0x4e13d3=_0x5cd8;_classCallCheck(this,_0xc08eaf),this[_0x4e13d3(0x282)]=_0x1ed1d9,_0x25813f=_objectSpread2({},_0x25813f);if(_0x25813f[_0x4e13d3(0x32b)]&&_0x25813f[_0x4e13d3(0x216)]){var _0x1dd32d,_0x26604f,_0x43e348,_0x7bc51c,_0x1bbbdf,_0x37ca0c;_0x25813f[_0x4e13d3(0x2fa)]={},_0x25813f[_0x4e13d3(0x2fa)][_0x4e13d3(0x248)]=_0x25813f[_0x4e13d3(0x1d1)],_0x25813f[_0x4e13d3(0x2fa)][_0x4e13d3(0x1ee)]=_0x25813f[_0x4e13d3(0x277)],_0x25813f[_0x4e13d3(0x2fa)][_0x4e13d3(0x1d7)]=_0x25813f[_0x4e13d3(0x1d7)]||0x1,_0x25813f['lon']={},_0x25813f[_0x4e13d3(0x248)][_0x4e13d3(0x1da)]=_0x25813f['xmin'],_0x25813f['lon'][_0x4e13d3(0x2b3)]=_0x25813f['xmax'],_0x25813f[_0x4e13d3(0x1ee)]={},_0x25813f[_0x4e13d3(0x1ee)][_0x4e13d3(0x1da)]=_0x25813f[_0x4e13d3(0x226)],_0x25813f[_0x4e13d3(0x1ee)][_0x4e13d3(0x2b3)]=_0x25813f[_0x4e13d3(0x1c8)],_0x25813f[_0x4e13d3(0x1d7)]={},_0x25813f[_0x4e13d3(0x1d7)][_0x4e13d3(0x1da)]=(_0x1dd32d=_0x25813f['levmin'])!==null&&_0x1dd32d!==void 0x0?_0x1dd32d:0x1,_0x25813f['lev'][_0x4e13d3(0x2b3)]=(_0x26604f=_0x25813f['levmax'])!==null&&_0x26604f!==void 0x0?_0x26604f:0x1,_0x25813f['U']={},_0x25813f['U'][_0x4e13d3(0x2b1)]=new Float32Array(_0x25813f[_0x4e13d3(0x32b)]),_0x25813f['U'][_0x4e13d3(0x1da)]=(_0x43e348=_0x25813f['umin'])!==null&&_0x43e348!==void 0x0?_0x43e348:Math['min'][_0x4e13d3(0x337)](Math,_toConsumableArray(_0x25813f[_0x4e13d3(0x32b)])),_0x25813f['U']['max']=(_0x7bc51c=_0x25813f[_0x4e13d3(0x322)])!==null&&_0x7bc51c!==void 0x0?_0x7bc51c:Math[_0x4e13d3(0x2b3)][_0x4e13d3(0x337)](Math,_toConsumableArray(_0x25813f['udata'])),_0x25813f['V']={},_0x25813f['V']['array']=new Float32Array(_0x25813f['vdata']),_0x25813f['V'][_0x4e13d3(0x1da)]=(_0x1bbbdf=_0x25813f[_0x4e13d3(0x207)])!==null&&_0x1bbbdf!==void 0x0?_0x1bbbdf:Math[_0x4e13d3(0x1da)][_0x4e13d3(0x337)](Math,_toConsumableArray(_0x25813f[_0x4e13d3(0x216)])),_0x25813f['V'][_0x4e13d3(0x2b3)]=(_0x37ca0c=_0x25813f[_0x4e13d3(0x23f)])!==null&&_0x37ca0c!==void 0x0?_0x37ca0c:Math['max'][_0x4e13d3(0x337)](Math,_toConsumableArray(_0x25813f[_0x4e13d3(0x216)]));}this[_0x4e13d3(0x242)]=_0x25813f,this[_0x4e13d3(0x230)]=_0x189cf1,this[_0x4e13d3(0x327)]=_0x24196e,this[_0x4e13d3(0x2dc)]=new ParticlesComputing(this['context'],this[_0x4e13d3(0x242)],this[_0x4e13d3(0x230)],this[_0x4e13d3(0x327)]),this['particlesRendering']=new ParticlesRendering(this['context'],this['data'],this[_0x4e13d3(0x230)],this[_0x4e13d3(0x327)],this[_0x4e13d3(0x2dc)]);}return _createClass(_0xc08eaf,[{'key':'canvasResize','value':function _0x1a2e9e(_0x18c9af){var _0xcf4daf=_0x5cd8,_0x30ff04=this;this[_0xcf4daf(0x2dc)][_0xcf4daf(0x2ef)](),Object[_0xcf4daf(0x1f3)](this['particlesComputing'][_0xcf4daf(0x1f4)])[_0xcf4daf(0x26c)](function(_0x4c5d13){var _0x19cbcf=_0xcf4daf;_0x30ff04['particlesComputing'][_0x19cbcf(0x1f4)][_0x4c5d13][_0x19cbcf(0x239)]();}),this[_0xcf4daf(0x30e)][_0xcf4daf(0x2ba)][_0xcf4daf(0x2b7)][_0xcf4daf(0x239)](),Object['keys'](this[_0xcf4daf(0x30e)][_0xcf4daf(0x2e4)])[_0xcf4daf(0x26c)](function(_0x50ec8e){var _0x38cd4f=_0xcf4daf;_0x30ff04[_0x38cd4f(0x30e)][_0x38cd4f(0x2e4)][_0x50ec8e][_0x38cd4f(0x239)]();}),this[_0xcf4daf(0x282)]=_0x18c9af,this[_0xcf4daf(0x2dc)]=new ParticlesComputing(this[_0xcf4daf(0x282)],this['data'],this[_0xcf4daf(0x230)],this['viewerParameters']),this[_0xcf4daf(0x30e)]=new ParticlesRendering(this['context'],this[_0xcf4daf(0x242)],this[_0xcf4daf(0x230)],this[_0xcf4daf(0x327)],this[_0xcf4daf(0x2dc)]);}},{'key':_0xaf277a(0x2d9),'value':function _0x43c8e5(){var _0x5cf3c6=_0xaf277a,_0x161f8c=this,_0x59df92=new Cesium$2[(_0x5cf3c6(0x254))]({'color':new Cesium$2[(_0x5cf3c6(0x2d4))](0x0,0x0,0x0,0x0),'depth':0x1,'framebuffer':undefined,'pass':Cesium$2[_0x5cf3c6(0x208)]['OPAQUE']});Object[_0x5cf3c6(0x1f3)](this[_0x5cf3c6(0x30e)][_0x5cf3c6(0x2e4)])[_0x5cf3c6(0x26c)](function(_0x21dae2){var _0x32b267=_0x5cf3c6;_0x59df92['framebuffer']=_0x161f8c[_0x32b267(0x30e)][_0x32b267(0x2e4)][_0x21dae2],_0x59df92[_0x32b267(0x272)](_0x161f8c[_0x32b267(0x282)]);});}},{'key':'refreshParticles','value':function _0x2d011a(_0x26fbc8){var _0x2def5c=_0xaf277a;this[_0x2def5c(0x2d9)](),this['particlesComputing'][_0x2def5c(0x2ef)](),this[_0x2def5c(0x2dc)][_0x2def5c(0x2bf)](this[_0x2def5c(0x282)],this[_0x2def5c(0x230)],this[_0x2def5c(0x327)]);if(_0x26fbc8){var _0x13c49e=this['particlesRendering'][_0x2def5c(0x1db)](this[_0x2def5c(0x230)]);this[_0x2def5c(0x30e)]['primitives'][_0x2def5c(0x236)][_0x2def5c(0x307)]=_0x13c49e;var _0x225171=Cesium$2[_0x2def5c(0x1bc)][_0x2def5c(0x2ab)]({'context':this[_0x2def5c(0x282)],'geometry':_0x13c49e,'attributeLocations':this['particlesRendering']['primitives'][_0x2def5c(0x236)][_0x2def5c(0x1e6)],'bufferUsage':Cesium$2[_0x2def5c(0x2e1)][_0x2def5c(0x2a9)]});this[_0x2def5c(0x30e)]['primitives'][_0x2def5c(0x236)][_0x2def5c(0x284)]['vertexArray']=_0x225171;}}},{'key':'setOptions','value':function _0x5d334d(_0x52dbed){var _0x15c73a=_0xaf277a,_0x1f77fa=this,_0x20a683=![];this['options'][_0x15c73a(0x21d)]!==_0x52dbed[_0x15c73a(0x21d)]&&(_0x20a683=!![]),Object[_0x15c73a(0x1f3)](_0x52dbed)['forEach'](function(_0x32bc50){_0x1f77fa['options'][_0x32bc50]=_0x52dbed[_0x32bc50];}),this[_0x15c73a(0x262)](_0x20a683);}},{'key':_0xaf277a(0x333),'value':function _0x3b9dee(_0x77fe36){var _0x2079e1=_0xaf277a,_0x2f4d72=this;Object['keys'](_0x77fe36)[_0x2079e1(0x26c)](function(_0x4e9250){_0x2f4d72['viewerParameters'][_0x4e9250]=_0x77fe36[_0x4e9250];}),this[_0x2079e1(0x262)](![]);}},{'key':_0xaf277a(0x239),'value':function _0x34aa11(){var _0x38cf56=_0xaf277a,_0x29a357=this;clearTimeout(this[_0x38cf56(0x241)]),this[_0x38cf56(0x2dc)][_0x38cf56(0x2ef)](),Object[_0x38cf56(0x1f3)](this['particlesComputing']['windTextures'])['forEach'](function(_0x2a84df){var _0x29df20=_0x38cf56;_0x29a357[_0x29df20(0x2dc)][_0x29df20(0x1f4)][_0x2a84df]['destroy']();}),this[_0x38cf56(0x30e)][_0x38cf56(0x2ba)]['colorTable']['destroy'](),Object[_0x38cf56(0x1f3)](this[_0x38cf56(0x30e)][_0x38cf56(0x2e4)])[_0x38cf56(0x26c)](function(_0x21e129){var _0x4c6740=_0x38cf56;_0x29a357[_0x4c6740(0x30e)]['framebuffers'][_0x21e129][_0x4c6740(0x239)]();});for(var _0x2676e3 in this){delete this[_0x2676e3];}}}]),_0xc08eaf;}()),Cesium$1=mars3d__namespace[_0x148ef8(0x297)],BaseLayer$1=mars3d__namespace[_0x148ef8(0x1ef)]['BaseLayer'],DEF_OPTIONS={'particlesNumber':0x1000,'fixedHeight':0x0,'fadeOpacity':0.996,'dropRate':0.003,'dropRateBump':0.01,'speedFactor':0.5,'lineWidth':0x2,'colors':[_0x148ef8(0x2aa)]},WindLayer=function(_0x295432){var _0x2b80a7=_0x148ef8;_inherits(_0x2deb9d,_0x295432);var _0xb6258a=_createSuper(_0x2deb9d);function _0x2deb9d(){var _0x1b1105=_0x5cd8,_0x17ae2c,_0x233264=arguments['length']>0x0&&arguments[0x0]!==undefined?arguments[0x0]:{};return _classCallCheck(this,_0x2deb9d),_0x233264=_objectSpread2(_objectSpread2({},DEF_OPTIONS),_0x233264),_0x17ae2c=_0xb6258a[_0x1b1105(0x285)](this,_0x233264),_0x17ae2c['_setOptionsHook'](_0x233264),_0x17ae2c;}return _createClass(_0x2deb9d,[{'key':_0x2b80a7(0x1ef),'get':function _0x1c6261(){var _0x2aee78=_0x2b80a7;return this[_0x2aee78(0x2ae)];}},{'key':_0x2b80a7(0x242),'get':function _0x8b6084(){var _0x243136=_0x2b80a7;return this[_0x243136(0x219)];},'set':function _0x2bd5c8(_0x579908){var _0x594a66=_0x2b80a7;this[_0x594a66(0x1fc)](_0x579908);}},{'key':'colors','get':function _0x4f1e9c(){var _0xe88206=_0x2b80a7;return this[_0xe88206(0x230)][_0xe88206(0x1b5)];},'set':function _0x107575(_0x50ccbb){var _0x226941=_0x2b80a7;this['options'][_0x226941(0x1b5)]=_0x50ccbb,this[_0x226941(0x1f7)]&&this[_0x226941(0x1f7)][_0x226941(0x291)]({'colors':_0x50ccbb}),this[_0x226941(0x267)]();}},{'key':_0x2b80a7(0x1e3),'value':function _0x562392(){}},{'key':_0x2b80a7(0x274),'value':function _0x23c1e8(){var _0x1eeaad=_0x2b80a7;this[_0x1eeaad(0x2a0)]=this[_0x1eeaad(0x280)][_0x1eeaad(0x2a0)],this[_0x1eeaad(0x2ee)]=this[_0x1eeaad(0x280)][_0x1eeaad(0x2ee)],this[_0x1eeaad(0x2ae)]=new Cesium$1[(_0x1eeaad(0x2c0))](),this['_map']['scene'][_0x1eeaad(0x2ae)][_0x1eeaad(0x30c)](this[_0x1eeaad(0x2ae)]),this[_0x1eeaad(0x327)]={'lonRange':new Cesium$1['Cartesian2'](),'latRange':new Cesium$1['Cartesian2'](),'pixelSize':0x0},this[_0x1eeaad(0x2d1)]=new Cesium$1[(_0x1eeaad(0x325))](Cesium$1[_0x1eeaad(0x2fc)]['ZERO'],0.99*0x615299),this[_0x1eeaad(0x25e)](),window[_0x1eeaad(0x304)](_0x1eeaad(0x267),this[_0x1eeaad(0x267)][_0x1eeaad(0x1c6)](this),![]),this[_0x1eeaad(0x2a4)]=![],this[_0x1eeaad(0x245)]=![],this[_0x1eeaad(0x280)]['on'](mars3d__namespace['EventType'][_0x1eeaad(0x24d)],this[_0x1eeaad(0x202)],this),this[_0x1eeaad(0x280)]['on'](mars3d__namespace[_0x1eeaad(0x1d8)]['mouseDown'],this['_onMouseDownEvent'],this),this[_0x1eeaad(0x280)]['on'](mars3d__namespace['EventType']['mouseUp'],this['_onMouseUpEvent'],this),this[_0x1eeaad(0x280)]['on'](mars3d__namespace[_0x1eeaad(0x1d8)]['mouseMove'],this['_onMouseMoveEvent'],this),this[_0x1eeaad(0x219)]&&this['setData'](this[_0x1eeaad(0x219)]);}},{'key':_0x2b80a7(0x2b4),'value':function _0x1c2df1(){var _0x256c56=_0x2b80a7;window[_0x256c56(0x23e)](_0x256c56(0x267),this[_0x256c56(0x267)]),this[_0x256c56(0x280)][_0x256c56(0x31c)](mars3d__namespace[_0x256c56(0x1d8)][_0x256c56(0x2c1)],this[_0x256c56(0x1b6)],this),this[_0x256c56(0x280)]['off'](mars3d__namespace[_0x256c56(0x1d8)][_0x256c56(0x24d)],this[_0x256c56(0x202)],this),this[_0x256c56(0x280)]['off'](mars3d__namespace['EventType']['mouseDown'],this[_0x256c56(0x21e)],this),this[_0x256c56(0x280)]['off'](mars3d__namespace[_0x256c56(0x1d8)][_0x256c56(0x258)],this[_0x256c56(0x23b)],this),this[_0x256c56(0x280)][_0x256c56(0x31c)](mars3d__namespace[_0x256c56(0x1d8)][_0x256c56(0x294)],this[_0x256c56(0x22b)],this),this[_0x256c56(0x2ae)][_0x256c56(0x1cb)](),this[_0x256c56(0x280)][_0x256c56(0x2a0)]['primitives'][_0x256c56(0x261)](this[_0x256c56(0x2ae)]);}},{'key':_0x2b80a7(0x267),'value':function _0xeeabe9(){var _0x187d1e=_0x2b80a7;if(!this[_0x187d1e(0x23a)]||!this[_0x187d1e(0x1f7)])return;this[_0x187d1e(0x2ae)][_0x187d1e(0x23a)]=![],this[_0x187d1e(0x2ae)][_0x187d1e(0x1cb)](),this[_0x187d1e(0x280)][_0x187d1e(0x311)](mars3d__namespace['EventType']['preRender'],this[_0x187d1e(0x1b6)],this);}},{'key':_0x2b80a7(0x1b6),'value':function _0x3d7f01(_0x449f7b){var _0x278c64=_0x2b80a7;this[_0x278c64(0x1f7)][_0x278c64(0x27a)](this[_0x278c64(0x2a0)][_0x278c64(0x282)]),this[_0x278c64(0x268)](),this[_0x278c64(0x2ae)][_0x278c64(0x23a)]=!![];}},{'key':_0x2b80a7(0x202),'value':function _0x1c0ca0(_0x1e072b){var _0xcea88=_0x2b80a7,_0x5e2b90=this;clearTimeout(this['refreshTimer']);if(!this['show']||!this['particleSystem'])return;this[_0xcea88(0x2ae)][_0xcea88(0x23a)]=![],this[_0xcea88(0x25d)]=setTimeout(function(){var _0x417b50=_0xcea88;if(!_0x5e2b90[_0x417b50(0x23a)])return;_0x5e2b90[_0x417b50(0x313)]();},0xc8);}},{'key':_0x2b80a7(0x21e),'value':function _0x442d11(_0x274487){var _0x13fc5f=_0x2b80a7;this[_0x13fc5f(0x2a4)]=!![];}},{'key':_0x2b80a7(0x22b),'value':function _0xac35b1(_0x4f2f7a){var _0x3fb66b=_0x2b80a7;if(!this[_0x3fb66b(0x23a)]||!this['particleSystem'])return;this['mouse_down']&&(this[_0x3fb66b(0x2ae)]['show']=![],this['mouse_move']=!![]);}},{'key':_0x2b80a7(0x23b),'value':function _0x4560f5(_0x3617f1){var _0x6bbff2=_0x2b80a7;if(!this[_0x6bbff2(0x23a)]||!this['particleSystem'])return;this['mouse_down']&&this[_0x6bbff2(0x245)]&&this['redraw'](),this[_0x6bbff2(0x2ae)][_0x6bbff2(0x23a)]=!![],this['mouse_down']=![],this[_0x6bbff2(0x245)]=![];}},{'key':'redraw','value':function _0x2e63ed(){var _0x4aa283=_0x2b80a7;if(!this[_0x4aa283(0x280)]||!this[_0x4aa283(0x23a)])return;this[_0x4aa283(0x25e)](),this['particleSystem'][_0x4aa283(0x333)](this[_0x4aa283(0x327)]),this[_0x4aa283(0x2ae)][_0x4aa283(0x23a)]=!![];}},{'key':_0x2b80a7(0x1fc),'value':function _0x52424b(_0x10de16){var _0x46bde1=_0x2b80a7;this['_data']=_0x10de16,this[_0x46bde1(0x1f7)]&&this[_0x46bde1(0x1f7)][_0x46bde1(0x239)](),this[_0x46bde1(0x1f7)]=new ParticleSystem(this[_0x46bde1(0x2a0)][_0x46bde1(0x282)],_0x10de16,this[_0x46bde1(0x29f)](),this[_0x46bde1(0x327)]),this[_0x46bde1(0x268)]();}},{'key':_0x2b80a7(0x1de),'value':function _0x52c08a(_0x3ccaf2){var _0x432707=_0x2b80a7;if(_0x3ccaf2)for(var _0x39b92c in _0x3ccaf2){this[_0x39b92c]=_0x3ccaf2[_0x39b92c];}this[_0x432707(0x1f7)]&&this[_0x432707(0x1f7)][_0x432707(0x291)](this[_0x432707(0x29f)]());}},{'key':_0x2b80a7(0x29f),'value':function _0x23c74b(){var _0xd5140a=_0x2b80a7,_0x44bc3e=Math['ceil'](Math[_0xd5140a(0x222)](this[_0xd5140a(0x2e9)]));return this[_0xd5140a(0x2e9)]=_0x44bc3e*_0x44bc3e,{'particlesTextureSize':_0x44bc3e,'maxParticles':this[_0xd5140a(0x2e9)],'particleHeight':this[_0xd5140a(0x256)],'fadeOpacity':this[_0xd5140a(0x2ca)],'dropRate':this[_0xd5140a(0x2c2)],'dropRateBump':this[_0xd5140a(0x1e2)],'speedFactor':this[_0xd5140a(0x1e7)],'lineWidth':this['lineWidth'],'globeLayer':this['globeLayer'],'WMS_URL':this[_0xd5140a(0x1c2)],'colors':this[_0xd5140a(0x1b5)]};}},{'key':'addPrimitives','value':function _0x5acd74(){var _0x156739=_0x2b80a7;this[_0x156739(0x2ae)][_0x156739(0x30c)](this[_0x156739(0x1f7)][_0x156739(0x2dc)]['primitives'][_0x156739(0x266)]),this[_0x156739(0x2ae)][_0x156739(0x30c)](this['particleSystem'][_0x156739(0x2dc)][_0x156739(0x2ae)][_0x156739(0x31a)]),this[_0x156739(0x2ae)][_0x156739(0x30c)](this[_0x156739(0x1f7)]['particlesComputing']['primitives'][_0x156739(0x2c5)]),this[_0x156739(0x2ae)][_0x156739(0x30c)](this[_0x156739(0x1f7)]['particlesComputing'][_0x156739(0x2ae)][_0x156739(0x1ed)]),this[_0x156739(0x2ae)]['add'](this[_0x156739(0x1f7)][_0x156739(0x2dc)][_0x156739(0x2ae)][_0x156739(0x23c)]),this['primitives'][_0x156739(0x30c)](this[_0x156739(0x1f7)][_0x156739(0x30e)][_0x156739(0x2ae)][_0x156739(0x236)]),this[_0x156739(0x2ae)]['add'](this[_0x156739(0x1f7)][_0x156739(0x30e)][_0x156739(0x2ae)][_0x156739(0x263)]),this[_0x156739(0x2ae)][_0x156739(0x30c)](this[_0x156739(0x1f7)][_0x156739(0x30e)][_0x156739(0x2ae)][_0x156739(0x2e0)]);}},{'key':_0x2b80a7(0x25e),'value':function _0x1557ab(){var _0x407958=_0x2b80a7,_0x1f0a12=this[_0x407958(0x2ee)]['computeViewRectangle'](this['scene'][_0x407958(0x1e5)][_0x407958(0x27c)]);if(!_0x1f0a12){var _0x49e9dc=this['_map'][_0x407958(0x1c0)]();_0x1f0a12=Cesium$1[_0x407958(0x1f9)][_0x407958(0x1bd)](_0x49e9dc[_0x407958(0x2b0)],_0x49e9dc['ymin'],_0x49e9dc[_0x407958(0x21a)],_0x49e9dc[_0x407958(0x1c8)]);}var _0x3eb22e=Util[_0x407958(0x29d)](_0x1f0a12);this[_0x407958(0x327)]['lonRange']['x']=_0x3eb22e[_0x407958(0x248)][_0x407958(0x1da)],this[_0x407958(0x327)]['lonRange']['y']=_0x3eb22e[_0x407958(0x248)][_0x407958(0x2b3)],this[_0x407958(0x327)][_0x407958(0x275)]['x']=_0x3eb22e['lat'][_0x407958(0x1da)],this[_0x407958(0x327)][_0x407958(0x275)]['y']=_0x3eb22e['lat'][_0x407958(0x2b3)];var _0x350947=this[_0x407958(0x2ee)]['getPixelSize'](this['globeBoundingSphere'],this['scene'][_0x407958(0x2f8)],this[_0x407958(0x2a0)][_0x407958(0x271)]);_0x350947>0x0&&(this[_0x407958(0x327)]['pixelSize']=_0x350947);}}]),_0x2deb9d;}(BaseLayer$1);mars3d__namespace[_0x148ef8(0x2d6)]['register']('wind',WindLayer),mars3d__namespace[_0x148ef8(0x1ef)][_0x148ef8(0x1fe)]=WindLayer;var CanvasParticle=_createClass(function CanvasParticle(){var _0x155c7e=_0x148ef8;_classCallCheck(this,CanvasParticle),this[_0x155c7e(0x24a)]=null,this[_0x155c7e(0x1ee)]=null,this[_0x155c7e(0x203)]=null,this[_0x155c7e(0x2a2)]=null,this['age']=null;}),CanvasWindField=(function(){var _0x277b93=_0x148ef8;function _0x482f04(_0x572c39,_0x37f357){var _0x53d884=_0x5cd8;_classCallCheck(this,_0x482f04),this[_0x53d884(0x277)]=_0x572c39['rows'],this[_0x53d884(0x1d1)]=_0x572c39[_0x53d884(0x1d1)],this[_0x53d884(0x2b0)]=_0x572c39['xmin'],this[_0x53d884(0x21a)]=_0x572c39[_0x53d884(0x21a)],this[_0x53d884(0x226)]=_0x572c39[_0x53d884(0x226)],this[_0x53d884(0x1c8)]=_0x572c39[_0x53d884(0x1c8)],this['grid']=[];var _0x53985d=_0x572c39[_0x53d884(0x32b)],_0x490c65=_0x572c39['vdata'],_0x4cbdd6=![];_0x53985d[_0x53d884(0x237)]===this[_0x53d884(0x277)]&&_0x53985d[0x0][_0x53d884(0x237)]===this[_0x53d884(0x1d1)]&&(_0x4cbdd6=!![]);var _0xe48050=0x0,_0x454d73=null,_0x328ca9=null;for(var _0x580cb0=0x0;_0x580cb0<this[_0x53d884(0x277)];_0x580cb0++){_0x454d73=[];for(var _0x37a47b=0x0;_0x37a47b<this['cols'];_0x37a47b++,_0xe48050++){_0x4cbdd6?_0x328ca9=this[_0x53d884(0x318)](_0x53985d[_0x580cb0][_0x37a47b],_0x490c65[_0x580cb0][_0x37a47b]):_0x328ca9=this[_0x53d884(0x318)](_0x53985d[_0xe48050],_0x490c65[_0xe48050]),_0x454d73[_0x53d884(0x229)](_0x328ca9);}this[_0x53d884(0x1c4)][_0x53d884(0x229)](_0x454d73);}_0x37f357&&this['grid'][_0x53d884(0x1f0)]();}return _createClass(_0x482f04,[{'key':_0x277b93(0x1dc),'value':function _0x2ba0e5(_0x41d984,_0x3b86d4){var _0xfa7f50=_0x277b93,_0x59b7a=(_0x41d984-this[_0xfa7f50(0x2b0)])/(this[_0xfa7f50(0x21a)]-this[_0xfa7f50(0x2b0)])*(this[_0xfa7f50(0x1d1)]-0x1),_0x217bb6=(this[_0xfa7f50(0x1c8)]-_0x3b86d4)/(this['ymax']-this['ymin'])*(this['rows']-0x1);return{'x':_0x59b7a,'y':_0x217bb6};}},{'key':_0x277b93(0x2df),'value':function _0xa6588d(_0x2b2574,_0x3ab6f8){var _0x4a3fcf=_0x277b93;if(_0x2b2574<0x0||_0x2b2574>=this[_0x4a3fcf(0x1d1)]||_0x3ab6f8>=this[_0x4a3fcf(0x277)])return[0x0,0x0,0x0];var _0x8df45=Math[_0x4a3fcf(0x298)](_0x2b2574),_0xe4091c=Math[_0x4a3fcf(0x298)](_0x3ab6f8);if(_0x8df45===_0x2b2574&&_0xe4091c===_0x3ab6f8)return this[_0x4a3fcf(0x1c4)][_0x3ab6f8][_0x2b2574];var _0x438686=_0x8df45+0x1,_0x18056b=_0xe4091c+0x1,_0x217097=this[_0x4a3fcf(0x2df)](_0x8df45,_0xe4091c),_0x562c7f=this[_0x4a3fcf(0x2df)](_0x438686,_0xe4091c),_0x2c77d9=this[_0x4a3fcf(0x2df)](_0x8df45,_0x18056b),_0x31a4ee=this[_0x4a3fcf(0x2df)](_0x438686,_0x18056b),_0x550823=null;try{_0x550823=this['_bilinearInterpolation'](_0x2b2574-_0x8df45,_0x3ab6f8-_0xe4091c,_0x217097,_0x562c7f,_0x2c77d9,_0x31a4ee);}catch(_0x459c77){console[_0x4a3fcf(0x1d6)](_0x2b2574,_0x3ab6f8);}return _0x550823;}},{'key':_0x277b93(0x330),'value':function _0x1da8af(_0x435101,_0x22e4c4,_0x1751b6,_0x53fde6,_0x2e4bfb,_0x1bec06){var _0x446b43=_0x277b93,_0x81b31=0x1-_0x435101,_0x2e2c33=0x1-_0x22e4c4,_0x377be3=_0x81b31*_0x2e2c33,_0x335aa2=_0x435101*_0x2e2c33,_0x4ec619=_0x81b31*_0x22e4c4,_0x18065a=_0x435101*_0x22e4c4,_0x4902f4=_0x1751b6[0x0]*_0x377be3+_0x53fde6[0x0]*_0x335aa2+_0x2e4bfb[0x0]*_0x4ec619+_0x1bec06[0x0]*_0x18065a,_0x548df6=_0x1751b6[0x1]*_0x377be3+_0x53fde6[0x1]*_0x335aa2+_0x2e4bfb[0x1]*_0x4ec619+_0x1bec06[0x1]*_0x18065a;return this[_0x446b43(0x318)](_0x4902f4,_0x548df6);}},{'key':_0x277b93(0x318),'value':function _0x904e80(_0x86bdfd,_0x5da55f){var _0x560dcf=_0x277b93;return[+_0x86bdfd,+_0x5da55f,Math[_0x560dcf(0x222)](_0x86bdfd*_0x86bdfd+_0x5da55f*_0x5da55f)];}},{'key':_0x277b93(0x2c4),'value':function _0x3ac43b(_0x21238e,_0x3145bf){var _0x42bbd9=_0x277b93;if(!this['isInExtent'](_0x21238e,_0x3145bf))return null;var _0x1f3c93=this['toGridXY'](_0x21238e,_0x3145bf),_0x19a759=this[_0x42bbd9(0x2df)](_0x1f3c93['x'],_0x1f3c93['y']);return _0x19a759;}},{'key':_0x277b93(0x227),'value':function _0x4f819f(_0x437bbc,_0x319224){var _0x47299d=_0x277b93;return _0x437bbc>=this[_0x47299d(0x2b0)]&&_0x437bbc<=this['xmax']&&_0x319224>=this[_0x47299d(0x226)]&&_0x319224<=this['ymax']?!![]:![];}},{'key':_0x277b93(0x2f6),'value':function _0x17cedc(){var _0x2180df=_0x277b93,_0xe177eb=fRandomByfloat(this[_0x2180df(0x2b0)],this[_0x2180df(0x21a)]),_0x1d081a=fRandomByfloat(this[_0x2180df(0x226)],this[_0x2180df(0x1c8)]);return{'lat':_0x1d081a,'lng':_0xe177eb};}}]),_0x482f04;}());function fRandomByfloat(_0x30e0ab,_0x2c9442){return _0x30e0ab+Math['random']()*(_0x2c9442-_0x30e0ab);}var Cesium=mars3d__namespace[_0x148ef8(0x297)],BaseLayer=mars3d__namespace[_0x148ef8(0x1ef)]['BaseLayer'],CanvasWindLayer=function(_0x49db01){var _0x5872e9=_0x148ef8;_inherits(_0x173024,_0x49db01);var _0x566f85=_createSuper(_0x173024);function _0x173024(){var _0x480aa8=_0x5cd8,_0x5112af,_0x42fdfe=arguments[_0x480aa8(0x237)]>0x0&&arguments[0x0]!==undefined?arguments[0x0]:{};return _classCallCheck(this,_0x173024),_0x5112af=_0x566f85['call'](this,_0x42fdfe),_0x5112af['_setOptionsHook'](_0x42fdfe),_0x5112af['canvas']=null,_0x5112af;}return _createClass(_0x173024,[{'key':_0x5872e9(0x1de),'value':function _0x3cfd67(_0xd8b0ac){var _0x39ee45=_0x5872e9;this[_0x39ee45(0x20d)]=[0x0,0x0],this['particles']=[],this[_0x39ee45(0x212)]=_0xd8b0ac[_0x39ee45(0x212)]||0x32,this['_particlesNumber']=_0xd8b0ac[_0x39ee45(0x2e9)]||0x1000,this[_0x39ee45(0x2f2)]=_0xd8b0ac['maxAge']||0x78,this['frameTime']=0x3e8/(_0xd8b0ac[_0x39ee45(0x200)]||0xa),this['_pointerEvents']=Cesium[_0x39ee45(0x2ce)](this[_0x39ee45(0x230)][_0x39ee45(0x1c5)],![]),this[_0x39ee45(0x30d)]=_0xd8b0ac['color']||'#ffffff',this[_0x39ee45(0x29b)]=_0xd8b0ac['lineWidth']||0x1,this['fixedHeight']=Cesium[_0x39ee45(0x2ce)](_0xd8b0ac[_0x39ee45(0x256)],0x0),this[_0x39ee45(0x1e8)]=Cesium['defaultValue'](_0xd8b0ac[_0x39ee45(0x1e8)],![]);}},{'key':'layer','get':function _0x4a96ee(){return this['canvas'];}},{'key':_0x5872e9(0x314),'get':function _0x4bcda5(){var _0x35743f=_0x5872e9;return this[_0x35743f(0x280)][_0x35743f(0x2a0)][_0x35743f(0x1d4)][_0x35743f(0x2d5)];}},{'key':_0x5872e9(0x269),'get':function _0x25a2e2(){var _0x587187=_0x5872e9;return this['_map'][_0x587187(0x2a0)][_0x587187(0x1d4)]['clientHeight'];}},{'key':'pointerEvents','get':function _0x12d464(){var _0x16b5dd=_0x5872e9;return this[_0x16b5dd(0x27b)];},'set':function _0x1c198d(_0x414f10){var _0x5ddd84=_0x5872e9;this[_0x5ddd84(0x27b)]=_0x414f10;if(!this['canvas'])return;_0x414f10?this[_0x5ddd84(0x1d4)][_0x5ddd84(0x283)][_0x5ddd84(0x250)]='all':this[_0x5ddd84(0x1d4)][_0x5ddd84(0x283)][_0x5ddd84(0x250)]='none';}},{'key':'speedRate','get':function _0x2fb216(){var _0x5176ce=_0x5872e9;return this[_0x5176ce(0x1b4)];},'set':function _0x236cc1(_0x49796d){var _0x39758e=_0x5872e9;this[_0x39758e(0x1b4)]=(0x64-(_0x49796d>0x63?0x63:_0x49796d))*0x64,this['_calcStep']();}},{'key':'particlesNumber','get':function _0x3fb74f(){return this['_particlesNumber'];},'set':function _0x5df2af(_0x538e1d){var _0x10205b=_0x5872e9,_0x57e4a0=this;this[_0x10205b(0x28e)]=_0x538e1d,clearTimeout(this[_0x10205b(0x259)]),this[_0x10205b(0x259)]=setTimeout(function(){var _0x3eeb97=_0x10205b;_0x57e4a0[_0x3eeb97(0x313)]();},0x1f4);}},{'key':_0x5872e9(0x2fe),'get':function _0x352684(){var _0x190149=_0x5872e9;return this[_0x190149(0x2f2)];},'set':function _0x12c445(_0x5cf6e5){var _0x587851=_0x5872e9,_0x1e2b55=this;this[_0x587851(0x2f2)]=_0x5cf6e5,clearTimeout(this[_0x587851(0x259)]),this['_canrefresh']=setTimeout(function(){var _0x4b9112=_0x587851;_0x1e2b55[_0x4b9112(0x313)]();},0x1f4);}},{'key':'data','get':function _0x4313e8(){var _0x94b6b5=_0x5872e9;return this[_0x94b6b5(0x1c3)];},'set':function _0x56ff58(_0x256848){var _0x54c7e5=_0x5872e9;this[_0x54c7e5(0x1fc)](_0x256848);}},{'key':_0x5872e9(0x1e9),'value':function _0x50ca35(_0x217e81){var _0x400964=_0x5872e9;_0x217e81?this[_0x400964(0x274)]():(this[_0x400964(0x1c3)]&&(this[_0x400964(0x230)]['data']=this['windData']),this[_0x400964(0x2b4)]());}},{'key':'_mountedHook','value':function _0x113292(){}},{'key':_0x5872e9(0x274),'value':function _0x3365bd(){var _0x346dba=_0x5872e9;this[_0x346dba(0x1d4)]=this[_0x346dba(0x287)](),this['canvasContext']=this['canvas'][_0x346dba(0x220)]('2d'),this[_0x346dba(0x2b6)](),this[_0x346dba(0x230)]['data']&&this['setData'](this[_0x346dba(0x230)]['data']);}},{'key':_0x5872e9(0x2b4),'value':function _0x451bba(){var _0x4eaef8=_0x5872e9;this[_0x4eaef8(0x323)](),this[_0x4eaef8(0x2d0)](),this[_0x4eaef8(0x1d4)]&&(this['_map'][_0x4eaef8(0x1c7)][_0x4eaef8(0x2af)](this['canvas']),delete this[_0x4eaef8(0x1d4)]);}},{'key':'_createCanvas','value':function _0x45c8c0(){var _0x4606b5=_0x5872e9,_0x594797=window[_0x4606b5(0x231)]['createElement'](_0x4606b5(0x1d4));_0x594797['style']['position']=_0x4606b5(0x27e),_0x594797[_0x4606b5(0x283)][_0x4606b5(0x204)]='0px',_0x594797['style'][_0x4606b5(0x20c)]=_0x4606b5(0x32e),_0x594797['style'][_0x4606b5(0x28f)]=_0x4606b5(0x2fd),_0x594797[_0x4606b5(0x283)][_0x4606b5(0x29a)]=_0x4606b5(0x2fd),_0x594797['style'][_0x4606b5(0x1c5)]=this[_0x4606b5(0x27b)]?_0x4606b5(0x228):_0x4606b5(0x2be),_0x594797[_0x4606b5(0x283)][_0x4606b5(0x26e)]=0xa,_0x594797[_0x4606b5(0x23d)]('id',_0x4606b5(0x24e)),_0x594797['setAttribute'](_0x4606b5(0x211),_0x4606b5(0x24e)),this['_map'][_0x4606b5(0x1c7)][_0x4606b5(0x2a8)](_0x594797);var _0x4cd1c0=this[_0x4606b5(0x280)][_0x4606b5(0x2a0)];return _0x594797[_0x4606b5(0x28f)]=_0x4cd1c0[_0x4606b5(0x1d4)]['clientWidth'],_0x594797['height']=_0x4cd1c0[_0x4606b5(0x1d4)][_0x4606b5(0x316)],_0x594797;}},{'key':'resize','value':function _0x1d9204(){var _0x2d237f=_0x5872e9;this[_0x2d237f(0x1d4)]&&(this[_0x2d237f(0x1d4)][_0x2d237f(0x28f)]=this['canvasWidth'],this[_0x2d237f(0x1d4)][_0x2d237f(0x29a)]=this['canvasHeight']);}},{'key':_0x5872e9(0x2b6),'value':function _0x4398c8(){var _0x2edb59=_0x5872e9,_0x2cc137=this,_0x595fe1=Date[_0x2edb59(0x257)]();(function _0x297567(){var _0x5bdce8=_0x2edb59;_0x2cc137[_0x5bdce8(0x1f2)]=window[_0x5bdce8(0x303)](_0x297567);var _0x1e0d10=Date[_0x5bdce8(0x257)](),_0x6ad641=_0x1e0d10-_0x595fe1;_0x6ad641>_0x2cc137[_0x5bdce8(0x2cc)]&&(_0x595fe1=_0x1e0d10-_0x6ad641%_0x2cc137[_0x5bdce8(0x2cc)],_0x2cc137[_0x5bdce8(0x27d)]());}(),window['addEventListener'](_0x2edb59(0x267),this[_0x2edb59(0x267)]['bind'](this),![]),this[_0x2edb59(0x2a4)]=![],this['mouse_move']=![],this['_map']['on'](mars3d__namespace[_0x2edb59(0x1d8)]['wheel'],this[_0x2edb59(0x202)],this),this[_0x2edb59(0x280)]['on'](mars3d__namespace[_0x2edb59(0x1d8)][_0x2edb59(0x31b)],this[_0x2edb59(0x21e)],this),this[_0x2edb59(0x280)]['on'](mars3d__namespace[_0x2edb59(0x1d8)][_0x2edb59(0x258)],this[_0x2edb59(0x23b)],this),this[_0x2edb59(0x280)]['on'](mars3d__namespace[_0x2edb59(0x1d8)][_0x2edb59(0x294)],this[_0x2edb59(0x22b)],this));}},{'key':_0x5872e9(0x2d0),'value':function _0x160ebf(){var _0x2133d2=_0x5872e9;window[_0x2133d2(0x1e1)](this[_0x2133d2(0x1f2)]),delete this['animateFrame'],window[_0x2133d2(0x23e)](_0x2133d2(0x267),this['resize']),this['_map']['off'](mars3d__namespace[_0x2133d2(0x1d8)][_0x2133d2(0x24d)],this[_0x2133d2(0x202)],this),this[_0x2133d2(0x280)]['off'](mars3d__namespace[_0x2133d2(0x1d8)]['mouseDown'],this[_0x2133d2(0x21e)],this),this[_0x2133d2(0x280)]['off'](mars3d__namespace['EventType'][_0x2133d2(0x258)],this[_0x2133d2(0x23b)],this),this[_0x2133d2(0x280)][_0x2133d2(0x31c)](mars3d__namespace[_0x2133d2(0x1d8)][_0x2133d2(0x294)],this[_0x2133d2(0x22b)],this);}},{'key':'_onMapWhellEvent','value':function _0x4489eb(_0x4c09d6){var _0x4aa099=_0x5872e9,_0x19106e=this;clearTimeout(this[_0x4aa099(0x25d)]);if(!this[_0x4aa099(0x23a)]||!this[_0x4aa099(0x1d4)])return;this['canvas'][_0x4aa099(0x283)][_0x4aa099(0x2eb)]='hidden',this[_0x4aa099(0x25d)]=setTimeout(function(){var _0x3b83e7=_0x4aa099;if(!_0x19106e[_0x3b83e7(0x23a)])return;_0x19106e['redraw'](),_0x19106e[_0x3b83e7(0x1d4)][_0x3b83e7(0x283)][_0x3b83e7(0x2eb)]=_0x3b83e7(0x232);},0xc8);}},{'key':_0x5872e9(0x21e),'value':function _0x3300a4(_0x2e7600){this['mouse_down']=!![];}},{'key':_0x5872e9(0x22b),'value':function _0x4fadb9(_0x4739eb){var _0x11a04c=_0x5872e9;if(!this[_0x11a04c(0x23a)]||!this[_0x11a04c(0x1d4)])return;this[_0x11a04c(0x2a4)]&&(this[_0x11a04c(0x1d4)][_0x11a04c(0x283)][_0x11a04c(0x2eb)]=_0x11a04c(0x1ea),this['mouse_move']=!![]);}},{'key':'_onMouseUpEvent','value':function _0x385c0a(_0x4cfbf2){var _0x5c1937=_0x5872e9;if(!this[_0x5c1937(0x23a)]||!this[_0x5c1937(0x1d4)])return;this['mouse_down']&&this[_0x5c1937(0x245)]&&this[_0x5c1937(0x313)](),this['canvas'][_0x5c1937(0x283)][_0x5c1937(0x2eb)]='visible',this[_0x5c1937(0x2a4)]=![],this[_0x5c1937(0x245)]=![];}},{'key':_0x5872e9(0x313),'value':function _0x20adf8(){var _0x38dc35=_0x5872e9;if(!this['show']||!this[_0x38dc35(0x21c)])return;this['particles']=[],this[_0x38dc35(0x324)]();}},{'key':'setData','value':function _0x2a9630(_0x3afc69){var _0x35586c=_0x5872e9;this[_0x35586c(0x323)](),this[_0x35586c(0x1c3)]=_0x3afc69,this[_0x35586c(0x21c)]=new CanvasWindField(this[_0x35586c(0x1c3)],this[_0x35586c(0x1e8)]),this['drawWind']();}},{'key':_0x5872e9(0x324),'value':function _0x59f8f7(){var _0x50595c=_0x5872e9;this['_calcStep']();for(var _0x17dbac=0x0;_0x17dbac<this[_0x50595c(0x2e9)];_0x17dbac++){var _0x113d31=this[_0x50595c(0x20a)](new CanvasParticle());this[_0x50595c(0x28a)][_0x50595c(0x229)](_0x113d31);}this[_0x50595c(0x1ec)][_0x50595c(0x32d)]=_0x50595c(0x279),this[_0x50595c(0x1ec)][_0x50595c(0x20e)]=0.6,this[_0x50595c(0x27d)]();}},{'key':_0x5872e9(0x30b),'value':function _0x5e754e(){var _0x10c522=_0x5872e9;if(!this['windField'])return;this['calc_speedRate']=[(this[_0x10c522(0x21c)][_0x10c522(0x21a)]-this[_0x10c522(0x21c)][_0x10c522(0x2b0)])/this['speedRate'],(this['windField'][_0x10c522(0x1c8)]-this[_0x10c522(0x21c)][_0x10c522(0x226)])/this[_0x10c522(0x212)]];}},{'key':_0x5872e9(0x27d),'value':function _0x27890b(){var _0x2d3cb4=_0x5872e9,_0xa4dc33=this;if(!this['show']||this[_0x2d3cb4(0x28a)]['length']<=0x0)return;var _0x4d7c52=null,_0x347778=null,_0x43ec62=null;this[_0x2d3cb4(0x28a)]['forEach'](function(_0x40063d){var _0x4c54bb=_0x2d3cb4;_0x40063d['age']<=0x0&&_0xa4dc33[_0x4c54bb(0x20a)](_0x40063d);if(_0x40063d[_0x4c54bb(0x31f)]>0x0){var _0x1125d7=_0x40063d[_0x4c54bb(0x203)],_0x4cee1b=_0x40063d['tlat'];_0x43ec62=_0xa4dc33[_0x4c54bb(0x21c)]['getUVByPoint'](_0x1125d7,_0x4cee1b),_0x43ec62?(_0x4d7c52=_0x1125d7+_0xa4dc33['calc_speedRate'][0x0]*_0x43ec62[0x0],_0x347778=_0x4cee1b+_0xa4dc33[_0x4c54bb(0x20d)][0x1]*_0x43ec62[0x1],_0x40063d['lng']=_0x1125d7,_0x40063d[_0x4c54bb(0x1ee)]=_0x4cee1b,_0x40063d['tlng']=_0x4d7c52,_0x40063d[_0x4c54bb(0x2a2)]=_0x347778,_0x40063d['age']--):_0x40063d['age']=0x0;}}),this['_drawLines']();}},{'key':_0x5872e9(0x2ea),'value':function _0xcd6b(_0x445f9a,_0x5582e6,_0x58a1be){var _0x28ffea=_0x5872e9,_0x31c2c8=Cesium[_0x28ffea(0x2fc)][_0x28ffea(0x1bd)](_0x445f9a,_0x5582e6,this[_0x28ffea(0x256)]),_0x5b0e92=this[_0x28ffea(0x280)]['scene'];if(_0x5b0e92[_0x28ffea(0x301)]===Cesium[_0x28ffea(0x249)][_0x28ffea(0x22c)]){var _0x28e70a=new Cesium[(_0x28ffea(0x240))](_0x5b0e92[_0x28ffea(0x1e5)][_0x28ffea(0x27c)],_0x5b0e92['camera'][_0x28ffea(0x1b2)]),_0xce1ef1=_0x28e70a[_0x28ffea(0x306)](_0x31c2c8);if(!_0xce1ef1)return _0x58a1be[_0x28ffea(0x31f)]=0x0,null;}var _0x228d8c=Cesium[_0x28ffea(0x1d5)][_0x28ffea(0x2cf)](this[_0x28ffea(0x280)][_0x28ffea(0x2a0)],_0x31c2c8);return _0x228d8c?[_0x228d8c['x'],_0x228d8c['y']]:null;}},{'key':_0x5872e9(0x1bf),'value':function _0x44a8b2(){var _0x12215d=_0x5872e9,_0x4947f5=this,_0x385b5a=this['particles'];this[_0x12215d(0x1ec)][_0x12215d(0x29b)]=_0x4947f5['lineWidth'],this[_0x12215d(0x1ec)][_0x12215d(0x253)]=_0x12215d(0x305),this['canvasContext'][_0x12215d(0x1f5)](0x0,0x0,this[_0x12215d(0x314)],this[_0x12215d(0x269)]),this[_0x12215d(0x1ec)][_0x12215d(0x253)]=_0x12215d(0x255),this[_0x12215d(0x1ec)][_0x12215d(0x20e)]=0.9,this[_0x12215d(0x1ec)][_0x12215d(0x205)](),this['canvasContext']['strokeStyle']=this[_0x12215d(0x30d)];var _0x200b00=this[_0x12215d(0x280)]['scene'][_0x12215d(0x301)]!==Cesium[_0x12215d(0x249)]['SCENE3D'];_0x385b5a[_0x12215d(0x26c)](function(_0x1cb56e){var _0x433292=_0x12215d,_0x2471f2=_0x4947f5[_0x433292(0x2ea)](_0x1cb56e[_0x433292(0x24a)],_0x1cb56e[_0x433292(0x1ee)],_0x1cb56e),_0x520c99=_0x4947f5[_0x433292(0x2ea)](_0x1cb56e[_0x433292(0x203)],_0x1cb56e['tlat'],_0x1cb56e);if(_0x2471f2!=null&&_0x520c99!=null){var _0x3408dd=Math[_0x433292(0x29e)](_0x2471f2[0x0]-_0x520c99[0x0]);if(_0x200b00&&_0x3408dd>=_0x4947f5['canvasWidth']);else _0x4947f5[_0x433292(0x1ec)][_0x433292(0x2ac)](_0x2471f2[0x0],_0x2471f2[0x1]),_0x4947f5[_0x433292(0x1ec)][_0x433292(0x1d9)](_0x520c99[0x0],_0x520c99[0x1]);}}),this[_0x12215d(0x1ec)][_0x12215d(0x1ff)]();}},{'key':'randomParticle','value':function _0x167515(_0x5074aa){var _0x4b346c=_0x5872e9,_0xb1a171,_0x10f214;for(var _0x535930=0x0;_0x535930<0x1e;_0x535930++){_0xb1a171=this[_0x4b346c(0x21c)][_0x4b346c(0x2f6)](),_0x10f214=this[_0x4b346c(0x21c)][_0x4b346c(0x2c4)](_0xb1a171[_0x4b346c(0x24a)],_0xb1a171[_0x4b346c(0x1ee)]);if(_0x10f214&&_0x10f214[0x2]>0x0)break;}if(!_0x10f214)return _0x5074aa;var _0x4834ed=_0xb1a171[_0x4b346c(0x24a)]+this['calc_speedRate'][0x0]*_0x10f214[0x0],_0x55e665=_0xb1a171[_0x4b346c(0x1ee)]+this[_0x4b346c(0x20d)][0x1]*_0x10f214[0x1];return _0x5074aa[_0x4b346c(0x24a)]=_0xb1a171[_0x4b346c(0x24a)],_0x5074aa[_0x4b346c(0x1ee)]=_0xb1a171[_0x4b346c(0x1ee)],_0x5074aa[_0x4b346c(0x203)]=_0x4834ed,_0x5074aa[_0x4b346c(0x2a2)]=_0x55e665,_0x5074aa['age']=Math[_0x4b346c(0x247)](Math[_0x4b346c(0x2dd)]()*this['maxAge']),_0x5074aa;}},{'key':'clear','value':function _0xc410ef(){var _0x204bbb=_0x5872e9;this[_0x204bbb(0x28a)]=[],delete this[_0x204bbb(0x21c)],delete this['windData'];}}]),_0x173024;}(BaseLayer);mars3d__namespace[_0x148ef8(0x2d6)][_0x148ef8(0x223)](_0x148ef8(0x2f0),CanvasWindLayer),mars3d__namespace['layer'][_0x148ef8(0x292)]=CanvasWindLayer,mars3d__namespace[_0x148ef8(0x2f7)]=WindUtil,exports[_0x148ef8(0x292)]=CanvasWindLayer,exports[_0x148ef8(0x1fe)]=WindLayer,exports[_0x148ef8(0x2f7)]=WindUtil,Object['defineProperty'](exports,'__esModule',{'value':!![]});
|
|
14
|
+
}));
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "mars3d-wind",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.3.0",
|
|
4
4
|
"description": "Mars3D平台插件,支持气象 风向图 功能插件",
|
|
5
5
|
"main": "dist/mars3d-wind.js",
|
|
6
6
|
"files": [
|
|
@@ -8,34 +8,10 @@
|
|
|
8
8
|
],
|
|
9
9
|
"dependencies": {},
|
|
10
10
|
"devDependencies": {
|
|
11
|
-
"mars3d": "^3.
|
|
12
|
-
"@babel/core": "^7.14.3",
|
|
13
|
-
"@babel/eslint-parser": "^7.14.3",
|
|
14
|
-
"@babel/plugin-proposal-class-properties": "^7.14.3",
|
|
15
|
-
"@babel/plugin-transform-runtime": "^7.14.3",
|
|
16
|
-
"@babel/preset-env": "^7.14.3",
|
|
17
|
-
"babel-eslint": "^10.1.0",
|
|
18
|
-
"babel-loader": "^8.2.2",
|
|
19
|
-
"eslint": "^7.26.0",
|
|
20
|
-
"eslint-config-prettier": "^7.2.0",
|
|
21
|
-
"eslint-plugin-import": "^2.22.1",
|
|
22
|
-
"eslint-plugin-node": "^11.1.0",
|
|
23
|
-
"eslint-plugin-prettier": "^3.3.1",
|
|
24
|
-
"eslint-plugin-promise": "^4.3.1",
|
|
25
|
-
"prettier": "^2.2.1",
|
|
26
|
-
"webpack": "^4.46.0",
|
|
27
|
-
"webpack-cli": "^3.3.12",
|
|
28
|
-
"webpack-glsl-loader": "^1.0.1",
|
|
29
|
-
"javascript-obfuscator": "^2.15.5",
|
|
30
|
-
"webpack-obfuscator": "^2.6.0"
|
|
11
|
+
"mars3d": "^3.3.0"
|
|
31
12
|
},
|
|
32
13
|
"scripts": {
|
|
33
|
-
"
|
|
34
|
-
"build-src": "npm run lint && webpack --env.prod --progress --profile --colors --config ./scripts/webpack.config.js --devtool source-map",
|
|
35
|
-
"build-min": "npm run lint && webpack --env.prod --env.min --progress --profile --colors --config ./scripts/webpack.config.js",
|
|
36
|
-
"build-npm": "npm run lint && webpack --env.prod --env.min --progress --profile --colors --config ./scripts/webpack.npm.js && node scripts/npm/buildNpm.js",
|
|
37
|
-
"lint": "eslint ./src/**/*.{js,ts} --fix",
|
|
38
|
-
"push": "npm publish --registry=https://registry.npmjs.org"
|
|
14
|
+
"lint": "eslint ./src/**/*.{js,ts} --fix"
|
|
39
15
|
},
|
|
40
16
|
"repository": {
|
|
41
17
|
"type": "git",
|
|
@@ -57,5 +33,14 @@
|
|
|
57
33
|
],
|
|
58
34
|
"author": "火星科技",
|
|
59
35
|
"license": "Apache-2.0",
|
|
60
|
-
"homepage": "http://mars3d.cn"
|
|
36
|
+
"homepage": "http://mars3d.cn",
|
|
37
|
+
"build": {
|
|
38
|
+
"plugin": true,
|
|
39
|
+
"globals": {
|
|
40
|
+
"@turf/turf": "turf",
|
|
41
|
+
"mars3d-cesium": "Cesium",
|
|
42
|
+
"mars3d": "mars3d"
|
|
43
|
+
},
|
|
44
|
+
"minify": "obfuscator"
|
|
45
|
+
}
|
|
61
46
|
}
|
package/LICENSE
DELETED
|
@@ -1,206 +0,0 @@
|
|
|
1
|
-
|
|
2
|
-
Apache License
|
|
3
|
-
Version 2.0, January 2004
|
|
4
|
-
http://www.apache.org/licenses/
|
|
5
|
-
http://mars3d.cn/
|
|
6
|
-
|
|
7
|
-
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
|
|
8
|
-
|
|
9
|
-
1. Definitions.
|
|
10
|
-
|
|
11
|
-
"License" shall mean the terms and conditions for use, reproduction,
|
|
12
|
-
and distribution as defined by Sections 1 through 9 of this document.
|
|
13
|
-
|
|
14
|
-
"Licensor" shall mean the copyright owner or entity authorized by
|
|
15
|
-
the copyright owner that is granting the License.
|
|
16
|
-
|
|
17
|
-
"Legal Entity" shall mean the union of the acting entity and all
|
|
18
|
-
other entities that control, are controlled by, or are under common
|
|
19
|
-
control with that entity. For the purposes of this definition,
|
|
20
|
-
"control" means (i) the power, direct or indirect, to cause the
|
|
21
|
-
direction or management of such entity, whether by contract or
|
|
22
|
-
otherwise, or (ii) ownership of fifty percent (50%) or more of the
|
|
23
|
-
outstanding shares, or (iii) beneficial ownership of such entity.
|
|
24
|
-
|
|
25
|
-
"You" (or "Your") shall mean an individual or Legal Entity
|
|
26
|
-
exercising permissions granted by this License.
|
|
27
|
-
|
|
28
|
-
"Source" form shall mean the preferred form for making modifications,
|
|
29
|
-
including but not limited to software source code, documentation
|
|
30
|
-
source, and configuration files.
|
|
31
|
-
|
|
32
|
-
"Object" form shall mean any form resulting from mechanical
|
|
33
|
-
transformation or translation of a Source form, including but
|
|
34
|
-
not limited to compiled object code, generated documentation,
|
|
35
|
-
and conversions to other media types.
|
|
36
|
-
|
|
37
|
-
"Work" shall mean the work of authorship, whether in Source or
|
|
38
|
-
Object form, made available under the License, as indicated by a
|
|
39
|
-
copyright notice that is included in or attached to the work
|
|
40
|
-
(an example is provided in the Appendix below).
|
|
41
|
-
|
|
42
|
-
"Derivative Works" shall mean any work, whether in Source or Object
|
|
43
|
-
form, that is based on (or derived from) the Work and for which the
|
|
44
|
-
editorial revisions, annotations, elaborations, or other modifications
|
|
45
|
-
represent, as a whole, an original work of authorship. For the purposes
|
|
46
|
-
of this License, Derivative Works shall not include works that remain
|
|
47
|
-
separable from, or merely link (or bind by name) to the interfaces of,
|
|
48
|
-
the Work and Derivative Works thereof.
|
|
49
|
-
|
|
50
|
-
"Contribution" shall mean any work of authorship, including
|
|
51
|
-
the original version of the Work and any modifications or additions
|
|
52
|
-
to that Work or Derivative Works thereof, that is intentionally
|
|
53
|
-
submitted to Licensor for inclusion in the Work by the copyright owner
|
|
54
|
-
or by an individual or Legal Entity authorized to submit on behalf of
|
|
55
|
-
the copyright owner. For the purposes of this definition, "submitted"
|
|
56
|
-
means any form of electronic, verbal, or written communication sent
|
|
57
|
-
to the Licensor or its representatives, including but not limited to
|
|
58
|
-
communication on electronic mailing lists, source code control systems,
|
|
59
|
-
and issue tracking systems that are managed by, or on behalf of, the
|
|
60
|
-
Licensor for the purpose of discussing and improving the Work, but
|
|
61
|
-
excluding communication that is conspicuously marked or otherwise
|
|
62
|
-
designated in writing by the copyright owner as "Not a Contribution."
|
|
63
|
-
|
|
64
|
-
"Contributor" shall mean Licensor and any individual or Legal Entity
|
|
65
|
-
on behalf of whom a Contribution has been received by Licensor and
|
|
66
|
-
subsequently incorporated within the Work.
|
|
67
|
-
|
|
68
|
-
2. Grant of Copyright License. Subject to the terms and conditions of
|
|
69
|
-
this License, each Contributor hereby grants to You a perpetual,
|
|
70
|
-
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
|
71
|
-
copyright license to reproduce, prepare Derivative Works of,
|
|
72
|
-
publicly display, publicly perform, sublicense, and distribute the
|
|
73
|
-
Work and such Derivative Works in Source or Object form.
|
|
74
|
-
|
|
75
|
-
3. Grant of Patent License. Subject to the terms and conditions of
|
|
76
|
-
this License, each Contributor hereby grants to You a perpetual,
|
|
77
|
-
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
|
78
|
-
(except as stated in this section) patent license to make, have made,
|
|
79
|
-
use, offer to sell, sell, import, and otherwise transfer the Work,
|
|
80
|
-
where such license applies only to those patent claims licensable
|
|
81
|
-
by such Contributor that are necessarily infringed by their
|
|
82
|
-
Contribution(s) alone or by combination of their Contribution(s)
|
|
83
|
-
with the Work to which such Contribution(s) was submitted. If You
|
|
84
|
-
institute patent litigation against any entity (including a
|
|
85
|
-
cross-claim or counterclaim in a lawsuit) alleging that the Work
|
|
86
|
-
or a Contribution incorporated within the Work constitutes direct
|
|
87
|
-
or contributory patent infringement, then any patent licenses
|
|
88
|
-
granted to You under this License for that Work shall terminate
|
|
89
|
-
as of the date such litigation is filed.
|
|
90
|
-
|
|
91
|
-
4. Redistribution. You may reproduce and distribute copies of the
|
|
92
|
-
Work or Derivative Works thereof in any medium, with or without
|
|
93
|
-
modifications, and in Source or Object form, provided that You
|
|
94
|
-
meet the following conditions:
|
|
95
|
-
|
|
96
|
-
(a) You must give any other recipients of the Work or
|
|
97
|
-
Derivative Works a copy of this License; and
|
|
98
|
-
|
|
99
|
-
(b) You must cause any modified files to carry prominent notices
|
|
100
|
-
stating that You changed the files; and
|
|
101
|
-
|
|
102
|
-
(c) You must retain, in the Source form of any Derivative Works
|
|
103
|
-
that You distribute, all copyright, patent, trademark, and
|
|
104
|
-
attribution notices from the Source form of the Work,
|
|
105
|
-
excluding those notices that do not pertain to any part of
|
|
106
|
-
the Derivative Works; and
|
|
107
|
-
|
|
108
|
-
(d) If the Work includes a "NOTICE" text file as part of its
|
|
109
|
-
distribution, then any Derivative Works that You distribute must
|
|
110
|
-
include a readable copy of the attribution notices contained
|
|
111
|
-
within such NOTICE file, excluding those notices that do not
|
|
112
|
-
pertain to any part of the Derivative Works, in at least one
|
|
113
|
-
of the following places: within a NOTICE text file distributed
|
|
114
|
-
as part of the Derivative Works; within the Source form or
|
|
115
|
-
documentation, if provided along with the Derivative Works; or,
|
|
116
|
-
within a display generated by the Derivative Works, if and
|
|
117
|
-
wherever such third-party notices normally appear. The contents
|
|
118
|
-
of the NOTICE file are for informational purposes only and
|
|
119
|
-
do not modify the License. You may add Your own attribution
|
|
120
|
-
notices within Derivative Works that You distribute, alongside
|
|
121
|
-
or as an addendum to the NOTICE text from the Work, provided
|
|
122
|
-
that such additional attribution notices cannot be construed
|
|
123
|
-
as modifying the License.
|
|
124
|
-
|
|
125
|
-
You may add Your own copyright statement to Your modifications and
|
|
126
|
-
may provide additional or different license terms and conditions
|
|
127
|
-
for use, reproduction, or distribution of Your modifications, or
|
|
128
|
-
for any such Derivative Works as a whole, provided Your use,
|
|
129
|
-
reproduction, and distribution of the Work otherwise complies with
|
|
130
|
-
the conditions stated in this License.
|
|
131
|
-
|
|
132
|
-
5. Submission of Contributions. Unless You explicitly state otherwise,
|
|
133
|
-
any Contribution intentionally submitted for inclusion in the Work
|
|
134
|
-
by You to the Licensor shall be under the terms and conditions of
|
|
135
|
-
this License, without any additional terms or conditions.
|
|
136
|
-
Notwithstanding the above, nothing herein shall supersede or modify
|
|
137
|
-
the terms of any separate license agreement you may have executed
|
|
138
|
-
with Licensor regarding such Contributions.
|
|
139
|
-
|
|
140
|
-
6. Trademarks. This License does not grant permission to use the trade
|
|
141
|
-
names, trademarks, service marks, or product names of the Licensor,
|
|
142
|
-
except as required for reasonable and customary use in describing the
|
|
143
|
-
origin of the Work and reproducing the content of the NOTICE file.
|
|
144
|
-
|
|
145
|
-
7. Disclaimer of Warranty. Unless required by applicable law or
|
|
146
|
-
agreed to in writing, Licensor provides the Work (and each
|
|
147
|
-
Contributor provides its Contributions) on an "AS IS" BASIS,
|
|
148
|
-
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
|
149
|
-
implied, including, without limitation, any warranties or conditions
|
|
150
|
-
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
|
|
151
|
-
PARTICULAR PURPOSE. You are solely responsible for determining the
|
|
152
|
-
appropriateness of using or redistributing the Work and assume any
|
|
153
|
-
risks associated with Your exercise of permissions under this License.
|
|
154
|
-
|
|
155
|
-
8. Limitation of Liability. In no event and under no legal theory,
|
|
156
|
-
whether in tort (including negligence), contract, or otherwise,
|
|
157
|
-
unless required by applicable law (such as deliberate and grossly
|
|
158
|
-
negligent acts) or agreed to in writing, shall any Contributor be
|
|
159
|
-
liable to You for damages, including any direct, indirect, special,
|
|
160
|
-
incidental, or consequential damages of any character arising as a
|
|
161
|
-
result of this License or out of the use or inability to use the
|
|
162
|
-
Work (including but not limited to damages for loss of goodwill,
|
|
163
|
-
work stoppage, computer failure or malfunction, or any and all
|
|
164
|
-
other commercial damages or losses), even if such Contributor
|
|
165
|
-
has been advised of the possibility of such damages.
|
|
166
|
-
|
|
167
|
-
9. Accepting Warranty or Additional Liability. While redistributing
|
|
168
|
-
the Work or Derivative Works thereof, You may choose to offer,
|
|
169
|
-
and charge a fee for, acceptance of support, warranty, indemnity,
|
|
170
|
-
or other liability obligations and/or rights consistent with this
|
|
171
|
-
License. However, in accepting such obligations, You may act only
|
|
172
|
-
on Your own behalf and on Your sole responsibility, not on behalf
|
|
173
|
-
of any other Contributor, and only if You agree to indemnify,
|
|
174
|
-
defend, and hold each Contributor harmless for any liability
|
|
175
|
-
incurred by, or claims asserted against, such Contributor by reason
|
|
176
|
-
of your accepting any such warranty or additional liability.
|
|
177
|
-
|
|
178
|
-
END OF TERMS AND CONDITIONS
|
|
179
|
-
|
|
180
|
-
APPENDIX: How to apply the Apache License to your work.
|
|
181
|
-
|
|
182
|
-
To apply the Apache License to your work, attach the following
|
|
183
|
-
boilerplate notice, with the fields enclosed by brackets "[]"
|
|
184
|
-
replaced with your own identifying information. (Don't include
|
|
185
|
-
the brackets!) The text should be enclosed in the appropriate
|
|
186
|
-
comment syntax for the file format. We also recommend that a
|
|
187
|
-
file or class name and description of purpose be included on the
|
|
188
|
-
same "printed page" as the copyright notice for easier
|
|
189
|
-
identification within third-party archives.
|
|
190
|
-
|
|
191
|
-
Copyright [2017-2022] [Hefei Mars Technology Co., LTD., China] http://mars3d.cn/
|
|
192
|
-
|
|
193
|
-
Licensed under the Apache License, Version 2.0 (the "License");
|
|
194
|
-
you may not use this file except in compliance with the License.
|
|
195
|
-
You may obtain a copy of the License at
|
|
196
|
-
|
|
197
|
-
http://www.apache.org/licenses/LICENSE-2.0
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
Unless required by applicable law or agreed to in writing, software
|
|
201
|
-
distributed under the License is distributed on an "AS IS" BASIS,
|
|
202
|
-
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
203
|
-
See the License for the specific language governing permissions and
|
|
204
|
-
limitations under the License.
|
|
205
|
-
|
|
206
|
-
|