[发明专利]基于分形和柏林噪声的模拟雾凇生长的方法有效
| 申请号: | 201810001268.5 | 申请日: | 2018-01-02 |
| 公开(公告)号: | CN108229018B | 公开(公告)日: | 2021-04-13 |
| 发明(设计)人: | 李晔;杨猛 | 申请(专利权)人: | 北京林业大学 |
| 主分类号: | G06F30/20 | 分类号: | G06F30/20;G06T19/20 |
| 代理公司: | 北京北新智诚知识产权代理有限公司 11100 | 代理人: | 张卫华 |
| 地址: | 100083 *** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 基于 柏林 噪声 模拟 雾凇 生长 方法 | ||
1.一种基于分形和柏林噪声的模拟雾凇生长的方法,其特征在于包括以下步骤:
1)建立树木模型
在该模型中储存树木模型的顶点坐标、纹理坐标以及三角面片数据;
2)选取雾凇生长点
在所述的树木模型三角面片上随机取有限个点作为雾凇的生长点;
3)选取雾凇的长度
雾凇长度的数值选取[0.4,0.6]区间内的随机数;
4)确定雾凇的生长方向
晶状雾凇:以自身生长方向与风向之和作为晶状雾凇的生长方向,确定晶状雾凇自身生长方向的方法是:在树木模型的三角面片上选取一个除当前生长点D之外的随机点E,将向量DE作为一个扰动向量,则当前生长点所在三角面片的法向与扰动向量DE之和即为当前生长点上晶状雾凇自身的生长方向;
针状雾凇:将当前风向作为针状雾凇的生长方向;
5)模拟风场
自然界的风速和风向存在随机性的不定量,通过引入柏林噪声函数来模拟自然界的风存在的这种随机性,模拟风场详细步骤是:
晶状雾凇的生长条件是微风,针状雾凇的生长条件是大风,对于大风环境,将空间中任意一点的大风风向表示为:Φ=(sin t,0,cos t),其中t是[0,2π]之间的随机数,这样保证大风的特点:同一时刻空间中各个点的风向相同并与地面平行;对于微风,空间中任意一点微风风向表示为Φ=(-cos t1,0,sin t2),这里t1,t2∈[0,2π],t2=t1*Nrand,其中Nrand是通过柏林噪声计算得到的[0,1]之间的随机数,这样保证微风的特点:同一时刻空间中各个点的风向具有随机性并与地面平行;
6)求取风力作用下雾凇生长的偏移量
利用材料力学对雾凇进行受力分析,由胡克定律,雾凇所受的弹力Fi=μQ
其中μ是冰晶的刚度系数,Q是在风力作用下雾凇生长终点相对于生长点的偏移量,
求取风力作用下雾凇生长的偏移量的步骤是:
根据胡克定律,雾凇所受弹力Fi还可以表示为:
其中:Si为雾凇的面积,Ei为冰晶的弹性模量,气温在[-19.0,-1.0]摄氏度之间时冰晶的弹性模量为[5.0,6.0],因此Ei取[5.0,6.0]之间的随机数,Δl为弹力作用下雾凇的形变量,Lw为雾凇的长度,化简得到雾凇刚度系数与冰晶的弹性模量之间的关系为:μ=Ei*Wi,其中Wi为雾凇的宽度,因此雾凇所受弹力Fi还可以表示为:Fi=Ei*Wi*Q,再考虑雾凇的受力,由动量定律,有:其中:mg为风的质量,满足mg=ρSgVwt,ρ为空气密度,取标准状态下空气密度,值为1.29,Sg为迎风面积,Vw是风速,
由雾凇的受力平衡,有Fi=Fg,最终求得风力作用下雾凇生长终点相对于生长点的偏移量Q的横向分量Qx为:纵向偏移量Qy为:其中,对于晶状雾凇,Δαi-g是雾凇生长方向与风向的夹角,对于针状雾凇,Δαi-g是风向;
由此计算出风力作用下雾凇生长终点相对于生长点的偏移量后,就得到晶状雾凇的生长终点,以及针状雾凇每一节的生长终点;
7)模拟雾凇生长的形态
采用分形的方式模拟晶状雾凇的形态,计算流程是:
计算分支起点及分支长度,在当前晶状雾凇的生长点D和生长终点G之间取三个点作为分支起点,记为点I,每个分支起点I的位置以及每个分支的长度L分别满足I=a*G+b*D和其中:a和b为随机正整数且满足a+b=1,x1,y1,z1是生长点D的坐标值,x2,y2,z2是生长点G的坐标值,Index的值根据当前分支的层数不同取值不同,从生长点到生长终点,每层分支Index依次减小,并且Index∈(0,1);
计算左右分支终点,记分支起点I的左右两个分支终点分别为K、J,分支IJ、IK与主干DG的夹角为θ,在三维空间中,主干DG与世界坐标水平方向也存在夹角β,
左分支终点计算公式如下:
Kx=Ix+L*(cosβ*cosθ-sinβ*sinθ)
Ky=Iy+L*(sinβ*cosθ+cosβ*sinθ)
右分支终点计算公式如下:
Jx=Ix+L*(cosβ*cosθ+sinβsinθ)
Jy=Iy+L*(sinβ*cosθ-cosβsinθ)
其中:Kx为左分支终点横坐标,Ky为左分支终点纵坐标,Jx为右分支终点横坐标,Jy为右分支终点纵坐标,
再利用相同的方法计算主干DG上另两层分支点上的分支,通过修改分形计算的迭代次数,将计算得到的分支作为新的主干,继续生长分支,得到最后的晶状雾凇完整形态;
因针状雾凇具有一定的弯曲程度,故采用分节的方式来表示针状雾凇在生长过程中存在的不规则的弯曲,具体为:
记当前雾凇的生长点为点D,计算得到第一节雾凇的生长终点D1,再以D1做为生长点,计算得到第二节的生长终点D2,以此类推,最终将每个点连接起来得到针状雾凇最终的生长形态。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京林业大学,未经北京林业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810001268.5/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种快速找艺术设计灵感的方法
- 下一篇:闭式整体叶盘叶片精加工方法





