arcgis api for js入门开发系列十八风向流动图
生活随笔
收集整理的這篇文章主要介紹了
arcgis api for js入门开发系列十八风向流动图
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
本篇主要講述的是利用arcgis api實現風向流動圖,效果圖如下:
實現思路:
在esri提供的開源githunb基礎上進行修改的:https://github.com/gishome/wind-js
修改之處:
1.esri的效果是縮放地圖時候,粒子數是不變的,即是不會隨著地圖的縮放而變動,導致地圖放大的時候,效果很不好,看不出來風向流動的效果;修改為粒子數是根據地圖當前范圍extent而動態改變的。
2.修改windy.js文件的風向流動顏色帶,esri默認分級顏色,我這里統一一種顏色;
3.修改windy.js文件部分因子值的設置,修改后如下:
var VELOCITY_SCALE = 0.011; // scale for wind velocity (completely arbitrary--this value looks nice)//MAX_WIND_INTENSITY 和 INTENSITY_SCALE_STEP用于計算設置各區間段的風速顏色,MAX_WIND_INTENSITY表示用于計算的風速最大值//統一白色后參數無效var INTENSITY_SCALE_STEP = 10; // step size of particle intensity color scalevar MAX_WIND_INTENSITY = 40; // 40 wind velocity at which particle intensity is maximum (m/s)//用于控制離子的生命var MAX_PARTICLE_AGE = 100; // 100 max number of frames a particle is drawn before regeneration//用于控制離子的寬度var PARTICLE_LINE_WIDTH = 2.3; // line width of a drawn particle//用于控制粒子的密度,PARTICLE_MULTIPLIER值越大則粒子密度越大var PARTICLE_MULTIPLIER = 0.005; // 1/30 particle count scalar (completely arbitrary--this values looks nice)//用于移動端減少粒子因子var PARTICLE_REDUCTION = 0.75; // reduce particle count to this much of normal for mobile devices//用于控制地圖放大縮小粒子個數var PARTICLE_FACTOR = 1;//用于控制幀的頻率,越大,頻率越快var FRAME_RATE = 30; // desired milliseconds per framevar BOUNDARY = 0.45;var NULL_WIND_VECTOR = [NaN, NaN, null]; // singleton for no wind in the form: [u, v, magnitude]var TRANSPARENT_BLACK = [255, 0, 0, 0];?
總結
以上是生活随笔為你收集整理的arcgis api for js入门开发系列十八风向流动图的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Django---Cookie Ses
- 下一篇: Swift 优雅的打印Log