画出来冬天为什么冷

画出来冬天为什么冷

冬天为什么冷

参考:为何冬天太阳距离地球最近,却反而冷得不行

闺女每天都会蹦出几个奇怪的问题,这几天天气变冷就问了”冬天为什么这么冷“,这个问题之前也困恼过我。最早之前我也了解过这个问题,因为有近日点和远日点的关系,当时以为四季冷暖是由地球离太阳远近的缘故,例如下图:

轨道

从轨道上看冬天的时候太阳距离地球最近,天气的冷暖并不取决于太阳和地球的距离,而是太阳和地球的角度和时间。地球围绕太阳公转的平面叫做黄道平面,正对这个面,直面阳光的热量会是最多的。

黄道平面和赤道平面之间有一个23°26’夹角,如下图:

夏至阳光直射我们北半球的北回归线,再加上白天时间最长,于是这天接收到的热量就会很多,这也是夏天特别热的原因,如下图:

夏至日

冬至阳光开始直射南边的南回归线,太阳需要穿过长长的大气层最后才能够到达地面,最后到达地面的热量就变少了,后面的冬天也是如此,如下图:

冬至日

把太阳和月球轨道画出来

想到是不是可以用Python代码来演示出来,这样给闺女解释起来也比较方便,就像下图一样:

太阳、地球和月球的动态轨道模型

参考:用WxGL画一个太阳地球月亮的的轨道模型,秒懂四季更迭、日蚀月蚀

自己实现的效果如下,挺好玩的。

Windows运行的效果图

受限于文档中wxgl模块没有指明版本,wxgl仓库从0.5.4~0.9.14,实现起来遇到很多问题,记录一下:

1、wxgl 0.7.0+版本的问题,建议用0.6.3的版本

2、numpy 高版本的问题,建议用1.19的版本

3、前面解决后mac m1 ARM架构运行有下面这种问题,换到Windows x86下运行就没有~~

用wxgl新版本来实现

参考:WxGL应用实例:绘制高精度的3D太阳系模型

使用wxgl 模块新版本修改后的效果如下,wxgl的展示效果果然非常棒

写在最后

python的pygame模拟太阳-地球-月亮-金星等动态示意图代码分析

Python模拟太阳-地球-月亮运动模型

Python OpenGL绘制一场烟花盛会

WxGL高手实践

WxGL是一个基于PyOpenGL的跨平台三维数据快速可视化工具包,提供类似Matplotlib风格的应用方式。WxGL也可以集成到wxPython或PyQt6中实现更多的功能和控制。git地址:https://github.com/xufive/wxgl

到底还是Python香,简单的一些代码带来非常”震撼“的3D演示效果,结合日常实际写一些好玩的动画演示也是一种趣事。

留下回复

error: Content is protected !!