这两天重新接触到流场,于是研究下,在大牛们的轮子上也算实现了效果:
1二维
2三维
主要参考以下三篇文章:
《WebGL风向图》给出制作风向图通常步骤:
1. 在屏幕上生成一系列随机粒子位置并绘制粒子。
2. 对于每一个粒子,查询风数据以获得其当前位置的粒子速度,并相应地移动它。
3. 将一小部分粒子重置为一个随机的位置。这就确保了风从不会变成空的区域。
4. 淡出当前屏幕,并在顶部绘制新定位的粒子。
风场数据获取:
博客里提到:美国国家气象局每隔6个小时就会以纬度/经度网格(包括风速)的形式,发布全球的气象数据,即GFS。它以一种特殊的二进制格式编码,称为GRIB,它可以用一组特殊的工具解析成人类可读的JSON。
这里原文作者提供了shell语言的数据下载脚本:
#!/bin/bash
GFS_DATE="20161120"
GFS_TIME="00"; # 00, 06,
12, 18
RES="1p00" # 0p25, 0p50 or
1p00
BBOX="leftlon=0&rightlon=360&toplat=90&bottomlat=-90"
LEVEL="lev_10_m_above_grou