Day 006 全球气象风玫瑰生成器 (WindRose.cc)

今天是挑战的 Day 006。在前几天的挑战里,我们解决了配色、封面、切图这些“面子”问题。今天,我们要深入建筑与规划师的“里子”,解决一个最硬核、最枯燥,却又绕不开的痛点——气象数据之风环境分析(模拟)。

注:由于数据是宏观数据,为了严谨,在网站增加了“模拟”二字,请大家在使用时候以实际数据为准,在项目中,可以使用风玫瑰绘制工具,对自己的数据进行加工。

数据来源:Open-Meteo,一个专注于非商业和商业用途的开源天气 API。与 AccuWeather 或 Weather.com 等商业巨头不同,Open-Meteo 并不自己“生产”天气预报,而是作为一个超级聚合器。它通过复杂的算法和高性能服务器,将全球各大国家气象局(如美国 NOAA、欧洲 ECMWF、德国 DWD、日本 JMA 等)的开放数据进行清洗、处理,并以简单易用的 API 形式提供给开发者。

Day 006 全球气象风玫瑰生成器

https://WindRose.cc

不需要到处找 .epw 气象文件,不需要打开笨重的 Ecotect 或 Ladybug。在地图上点一下,数据来了,图画好了,CAD 也导出了。

01. 为什么要做这个工具?

作为一个建筑/规划背景的开发者,我太懂做“前期分析”时的崩溃了:

找数据难:接了一个国外的项目,或者国内偏远地区的项目,翻遍了 EnergyPlus 官网都找不到气象数据。

画图累:即使找到了数据(通常是一堆 Excel 数字),还得手动在 CAD 里画。一圈圈同心圆,一根根放射线,画错了还得重来。

不仅丑,还难改:现在的网页工具大多只生成一张 JPG 图片。放进汇报 PPT 还凑合,但如果我想放到总平面图里?对不起,位图放进去就是糊的,且没法编辑。

所以我让 AI 帮我写了这个工具,只为了实现一个目标:把“找数据+算数据+画图”这三小时的工作,压缩到 10 秒钟。

02. 它能做什么?

这是一个打通了“数据获取”到“图纸生产”全链路的神器。

📍 1. 全球数据,点击即得

借助 AI 帮我接入的全球气象 API,现在整个地球都是你可以链接的“数据库”。

地图交互:打开网页,你会看到一张世界地图。这里用的是高德地图,高德地图现在也可以显示全球地图,这一点非常赞,而且国境线是准确的,作为一个Global的工具,展示准确的地图,是及其重要的。

指哪打哪:无论你的基地是在繁华的上海陆家嘴,还是在非洲的某个小镇,鼠标在地图上点一下,系统就会自动抓取该经纬度最近气象站的历史风环境数据。

🌪️ 2. 三大专业模板,美观

不同的汇报场合,需要不同的图面表达。我让 AI 调试了三种风格:

标准分析版: 经典的 16 向风玫瑰,清晰标注风频,适合放在技术报告里。

极简填充版: 更加现代、扁平化的设计,色块填充,视觉冲击力强,适合放在彩色总图中做底图。

线框数据版: 纯线条构成,强调数据的精确走势,适合叠加在分析图层之上。

📐 3. 杀手锏:完美分层的 DXF (CAD) 导出

这是今天最重磅的更新!很多工具导出的 CAD 是一团乱麻,线都是碎的。但这个工具导出的 DXF,是可以直接用的:

智能分层: 网格线(Grid)、轮廓线(Outline)、坐标轴(Axis)自动分在不同图层。

自动上色: 轮廓线自动设为红色(强调数据),网格线自动设为灰绿色(背景退晕),坐标轴设为白色。

多段线优化: 数据轮廓是闭合的 LWPOLYLINE(多段线),你可以直接填充(Hatch),不用再描一遍!下载下来,直接拖进 AutoCAD 或 Rhino,直接就能用。

✏️ 4. DIY 模式:你有数据?也能画!

如果你手头已经有了特定的风频数据(比如甲方提供的实测数据),没关系。切换到“自定义模式”,把你的 16 个方向的数据填进去,它一样能帮你一键生成上述所有图表和 CAD 文件。

03. 开发背后的“元技能”

在开发 DXF 导出功能时,遇到最大的困难是“几何算法”。DXF 文件的本质是一堆文本代码,需要精确计算每一个坐标点(圆心、半径、三角函数)。作为一个数学一般的文科生,这在以前是不可能完成的任务。但我使用了 Vibe Coding 的方式:

“AI,我需要一个函数。输入一组数据,生成 DXF 格式的文本。要求:网格画 5 圈同心圆,要灰绿色;数据轮廓要用多段线,要红色。另外,给我画四个漂亮的线框箭头代表东南西北。”

AI 就像一个不知疲倦的资深绘图员,毫秒级地帮我写出了那个几百行的几何计算函数。这就是 AI 时代的创造力——你负责定义“美”和“标准”,AI 负责去死磕那些枯燥的数学和语法。

注:数据来源为公开API数据,http://open-meteo.com。这个是全球公开数据,提供了免费和付费的两种接口。如果大家有兴趣也可以研究下。