发布时间:2023-08-21 18:00
你的心要如溪水般柔软,你的眼波要像春天般明媚。
——余光中
似乎很少看见湍急的溪流,多数时候,溪水总是潺潺地流着,不疾不徐,有自己的节奏;
也似乎很少看见污浊的溪流,多数时候,溪水总是澄澈见底,偶尔拔起沙石,也很快能静置溪底,重归明净。
一个像溪水的人,多半是通透清明的,他知道如何过滤掉和沉落生命中的杂质,以一颗澄澈的心,往自己的方向流去。
描写了这么多关于水的诗句,你是否能清楚的表达,了解水是怎样流动的呢?
今天小编就用代码描写我心目中的水流是怎样的,Python代码模拟水的波动开始啦
1)环境安装
Python3、 Pycharm 、Pygame模块部分自带模块就不展示啦。(如需安装包、激活码等直接
私信我即可安装问题解答都可以的哈~)
第三方库的安装:
pip install pygame 或者带镜像源 pip install -i https://pypi.douban.com/simple/ +模块名
截图的貌似展示不出来水的波动效果,嗨没办法 有点儿懒,就没拍视频,大家将就着看叭
真的视频效果好好看滴!是随水波荡漾的~
\"\"\"照片模拟水的波动效果\"\"\" import pygame, os from pygame.locals import * from math import sin # 导入正弦函数的工具箱 import time main_dir = os.path.split(os.path.abspath(__file__))[0] # 获取当前文件所在路径 def main(): pygame.init() # 初始化 screen = pygame.display.set_mode((640, 480), HWSURFACE|DOUBLEBUF) # 生成一个窗口 imagename = os.path.join(main_dir, \'data\', \'liquid.bmp\') # 拼接图片路径 bitmap = pygame.image.load(imagename) # 加载图片 bitmap = pygame.transform.scale2x(bitmap) # 将图像放大两倍 bitmap = pygame.transform.scale2x(bitmap) # 将图像放大两倍 if screen.get_bitsize() == 8: # 以相同的格式获取图像和屏幕 screen.set_palette(bitmap.get_palette()) else: bitmap = bitmap.convert() anim = 0.0 while 1: for e in pygame.event.get(): # 处理事件 if e.type in [QUIT, KEYDOWN, MOUSEBUTTONDOWN]: return anim = anim + 0.02 for x in range(0,640,20): # 模拟水的波动效果 xpos = (x + (sin(anim + x * .01) * 15)) + 20 for y in range(0, 480, 20): ypos = (y + (sin(anim + y * .01) * 15)) + 20 screen.blit(bitmap, (x, y), (xpos, ypos, 20, 20)) pygame.display.flip() # 更新 time.sleep(0.01) # 等待0.01s if __name__ == \'__main__\': main()
到此这篇关于利用Python实现好看的水波特效的文章就介绍到这了,更多相关Python水波特效内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
墨天轮访谈 | 百度云邱学达:GaiaDB如何解决云上场景的业务需求?
从数据平台到报表开发,我靠这个零代码报表工具,转行后月薪3W
Customplot画多条折线图,同时可以控制每条曲线的隐藏和显示
关联远程库报“remote origin already exists.”错误
python程序 爱意_七夕来了,发几个 Python 程序员专属的表白程序
@Cacheable 解决 同一缓存 空与非空 不同缓存时间的处理
MindSpore报错“RuntimeError: Unexpected error. Inconsistent batch..
tensorboard 卸载后再安装报错ValueError: Duplicate plugins for name projector