文章来源于网络收集而来,版权归原创者所有,如有侵权请及时联系!
3.7 生成动画或视频文件
除了显示画布的 show 方法,wxgl.App 还提供了保存画布的 savefig 方法。savefig 不仅可以将当前 OpengGL 缓冲区的内容保存为.png 或.jpg 类型的图像文件,还可以生成.gif/.webp/.mp4/.avi 等动画或视频文件。 下面这段代码绘制了一大一小两个自转的圆球,小球同时围绕大球公转。运行代码,将会生成每秒 25 帧共计 200 帧的 mp4 格式的视频文件。
import wxgl
tf_1 = lambda t:((0, 1, 0, (0.01*t)%360),) # 大球自转速度 10°/s
def tf_2(t):
theta = -(0.05*t)%360 # 小球公转和自转都是-50°/s
rotate = (0, 1, 0, theta) # 小球自转
theta = np.radians(theta) # 角度转弧度
r = 1 # 小球公转半径
shift = (r*np.cos(theta), 0, -r*np.sin(theta)) # 小球公转
return (rotate, shift)
app = wxgl.App()
app.sphere((0,0,0), 0.8, fill=False, transform=tf_1)
app.sphere((0,0,0), 0.2, fill=False, transform=tf_2)
app.savefig('capture/revolve.mp4', fps=25, frames=200)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论