当前位置:网站首页>GTK实现水波纹效果
GTK实现水波纹效果
2022-08-02 23:53:00 【百口可乐__】
参考网络上msvc实现水波纹
水波有如下几个特性:
- 扩散:当你投一块石头到水中,你会看到一个以石头入水点为圆心所形成的一圈圈的水波,这里,你可能会被这个现象所误导,以为水波上的每一点都是以石头入水点为中心向外扩散的,这是错误的。实际上,水波上的任何一点在任何时候都是以自己为圆心向四周扩散的,之所以会形成一个环状的水波,是因为水波的内部因为扩散的对称而相互抵消了。
- 衰减:因为水是有阻尼的,否则,当你在水池中投入石头,水波就会永不停止的震荡下去。
- 水的折射:因为水波上不同地点的倾斜角度不同,所以,因为水的折射,我们从观察点垂直往下看到的水底并不是在观察点的正下方,而有一定的偏移。如果不考虑水面上部的光线反射,这就是我们能感觉到水波形状的原因。
- 反射:水波遇到障碍物会反射。
- 衍射:忽然又想到这一点,但是在程序里却看不到,如果能在水池中央放上一块礁石,或放一个中间有缝的隔板,那么就能看到水波的衍射现象了。
对于水波纹我理解的主要是两个地方
波形计算
有这样的一个公式
X0’=(X1+X2+X3+X4)/ 2- X0
已知某一时刻水面上任意一点的波幅,那么,在下一时刻,任意一点的波幅就等于与该点紧邻的前、后、左、右四点的波幅的和除以2、再减去该点的波幅。
// 计算出下一个时刻所有
边栏推荐
- Understand the next hop address in the network topology in seconds
- 十三、数据回显
- Jmeter二次开发实现rsa加密
- 【Autosar RTM】
- 机电设备制造企业,如何借助ERP系统做好客供料管理?
- 智能合约安全-可重入攻击(SW107-Reentrancy)
- Carefully organize 16 MySQL usage specifications to reduce problems by 80% and recommend sharing with the team
- js基础知识整理之 —— 闭包
- 精心整理16条MySQL使用规范,减少80%问题,推荐分享给团队
- js基础知识整理之 —— 变量和数据类型
猜你喜欢
随机推荐
令人心动的AI综述(1)
5、Citrix云桌面初始化Storefront设置
CKAN教程之将 Snowflake 连接到 CKAN 以发布到开放数据门户
nmap: Bad CPU type in executable
Understand the next hop address in the network topology in seconds
十年架构五年生活-05第一次出差
剑指 Offer 21. 调整数组顺序使奇数位于偶数前面
DownMusic summary record
D experimental new anomaly
智能合约安全-可重入攻击(SW107-Reentrancy)
语音合成模型小抄(1)
js基础知识整理之 —— 五种输出方式
解决错误:Optional int parameter ‘pageSize‘ is present but cannot be translated into a null value due to
最近公共祖先(LCA)学习笔记 | P3379 【模板】最近公共祖先(LCA)题解
记一次sql优化Using temporary; Using filesort
C语言:链表
并查集总结
淘宝商品销量接口/淘宝商品销量监控接口/商品累计销量接口代码对接分享
d实验新异常
UE5 官方案例Lyra 全特性详解 8.如何用配置表初始化角色数据