CN101577008A - 一种快速且精确的大理石纹釉生成方法 - Google Patents
一种快速且精确的大理石纹釉生成方法 Download PDFInfo
- Publication number
- CN101577008A CN101577008A CNA2009100988814A CN200910098881A CN101577008A CN 101577008 A CN101577008 A CN 101577008A CN A2009100988814 A CNA2009100988814 A CN A2009100988814A CN 200910098881 A CN200910098881 A CN 200910098881A CN 101577008 A CN101577008 A CN 101577008A
- Authority
- CN
- China
- Prior art keywords
- glaze
- marbleizing
- layer
- field
- formula
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 59
- 239000012530 fluid Substances 0.000 claims abstract description 44
- 238000006243 chemical reaction Methods 0.000 claims abstract description 19
- 238000004364 calculation method Methods 0.000 claims abstract description 8
- 239000007788 liquid Substances 0.000 claims description 39
- 239000000758 substrate Substances 0.000 claims description 27
- 238000009792 diffusion process Methods 0.000 claims description 19
- 238000003756 stirring Methods 0.000 claims description 10
- 238000012546 transfer Methods 0.000 claims description 9
- 239000002245 particle Substances 0.000 claims description 6
- 230000001133 acceleration Effects 0.000 claims description 3
- 239000011159 matrix material Substances 0.000 claims description 3
- 230000003993 interaction Effects 0.000 claims description 2
- 238000004088 simulation Methods 0.000 abstract description 8
- 238000004422 calculation algorithm Methods 0.000 abstract description 7
- 239000000049 pigment Substances 0.000 abstract description 7
- HPTJABJPZMULFH-UHFFFAOYSA-N 12-[(Cyclohexylcarbamoyl)amino]dodecanoic acid Chemical compound OC(=O)CCCCCCCCCCCNC(=O)NC1CCCCC1 HPTJABJPZMULFH-UHFFFAOYSA-N 0.000 abstract description 4
- 238000004519 manufacturing process Methods 0.000 abstract description 4
- 238000005516 engineering process Methods 0.000 description 13
- 239000004579 marble Substances 0.000 description 7
- 238000013461 design Methods 0.000 description 5
- 230000004304 visual acuity Effects 0.000 description 3
- 230000008676 import Effects 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 239000003973 paint Substances 0.000 description 2
- 239000002904 solvent Substances 0.000 description 2
- 238000012800 visualization Methods 0.000 description 2
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 2
- 241001474033 Acar Species 0.000 description 1
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 238000004040 coloring Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000010439 graphite Substances 0.000 description 1
- 229910002804 graphite Inorganic materials 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000000053 physical method Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种快速且精确的大理石纹釉生成方法,用户通过基于CUDA的仿真系统执行各种操作,仿真系统执行相应的算法来进行大理石纹釉的仿真制作,方法包括以下步骤:用户设置相应参数;用户选择需要的操作方式在二维运算域中进行相应的操作;通过求解二维流体的动力学方程得到二维运算域中大理石纹釉每层图层的速度场;利用USCIP高阶插值方法,通过转换函数以及逆转换函数对速度场进行转换计算,得到大理石纹釉每层图层的密度场;每层的密度场和对应的颜料色彩相乘,并将所有层的颜色值累加得到最后大理石纹釉图像的颜色值,生成用户需要的大理石纹釉。本发明算法明确,界面友好,结果鲁棒,可以更快更好的生成大理石纹釉图案。
Description
技术领域
本发明涉及计算机图形学中的流体仿真领域,特别是涉及一种快速且精确的大理石纹釉的生成方法。
背景技术
快速并且精确的大理石纹釉生成系统通过数值方法求解二维流体动力学的Navie-Stokes方程,提供了一种用计算机来模拟制作大理石纹釉这门传统艺术的工具。
大理石纹釉工艺起源于11世纪的西南亚地区,但至今仍是一门受全世界人民喜爱的手工艺。其制作流程的基本过程是:对悬浮在基底液表层的颜料进行滴液,搅动,梳理等操作,然后将得到的图象转移到其他具有吸附性材料上进行保存。由于在很大程度上受到各种物理条件的限制,因此制作大理石纹釉并不是一样轻松的事。近年来,涌现了很多用计算机来模拟大理石纹釉工艺的仿真系统。这些系统将人类从物理的局限性中解放出来,人们通过设置一些流体的参数,随意搭配色彩方案,定制个性化的操作方式,甚至还可以撤销或重复设计过程中的每一步,就可以轻松的设计出漂亮的大理石纹釉图案。
2001年,研究人员首次提出用物理方法来模拟传统大理石纹釉工艺,参见Suzuki,T.,Mao,X.,Imamiya,A.:Simulating marbling with computergraphics.Proc.IASTED Interna-tional Conf.Visualization,Imaging,andImaging Processing,pp.208-213.IASTED,Calgary(2001)。2003年茅晓阳等人将其扩展成用户交互的大理石纹釉生成系统,该系统基于传统的大理石纹釉工艺的物理模型,制作过程可以看作一个二维流体动力学问题,并用数值方法求解。参见Mao,X.,Suzuki,T.,Imamiya,A.:AtelierM:Aphysically based interactive system for creating traditional marbling textures.Proc.1st International Conf.Computer Graphics and Interactive Techniques inAustralasia and South East Asia(GRAPHITE’03),pp.79-86.ACM,NewYork(2003)。此后Acar和Boulanger等研究人员提出了用多图层的流体模型来模拟这门工艺,参见Acar,R.,Boulanger,P.:Digital marbling:amultiscale fluid model.IEEE Trans.Visualization and Computer Graphics,12(4),pp.600-614(2006)。然而由于这些方法都是建立在CPU上的,运行速度较慢,用户需要等待数秒甚至数分钟才能看到模拟的结果。后来金小刚等人提出了在GPU上求解Navie-Stokes方程,虽然在速度上基本能达到实时性的要求,但却遇到了边缘模糊的问题,在真实的大理石纹釉工艺中,牛胆汁常常被添加到颜料中以在其表面形成脂肪层,从而使各种色彩不至于混合到一起,参见Jin,X.,Chen,S.,Mao,X.:Computer-generatedmarbling textures:a GPU-based design system.IEEE Computer Graphics andApplications,27(2),pp.78-84(2007)。此后,许佳奕等人采用复杂的高阶水平对流模式改进纹釉的锐化效果,参见Xu,J.,Mao,X.,Jin,X.:Nondissipative marbling.IEEE Computer Graphics and Applications,28(2),pp.35-43(2008)。然后高阶的方法不仅没有彻底解决边缘模糊问题,而且引入了流体产生不稳定的新问题。除此之外,以上的大理石纹釉仿真系统均不能实时生成高分辨率的大理石纹釉图案。
发明内容
本发明提供了一种快速且精确的大理石纹釉生成方法。该方法通过用数值方法求解二维流体的动力学Navie-Stokes方程,有效地解决了现有的基于物理的实时大理石纹釉生成系统中存在的问题,本发明基于最新的图形硬件并行计算架构CUDA,为艺术家和非艺术家设计大理石纹釉图案提供了一个非常便利的工具。
一种快速且精确的大理石纹釉生成方法,用户通过基于CUDA的仿真系统执行各种操作,仿真系统执行相应的算法来进行大理石纹釉的仿真制作;
方法包括以下步骤:
(1)用户设置用于大理石纹釉生成的二维运算域和基底液的属性和大理石纹釉的图层的层数n、图层的颜色color[n];用户可以根据需要设置大理石纹釉的图层的层数,第n层的颜色为color[n]。
用户输入液滴的半径R和搅动流体时的外力大小F两个参数的数值。
大理石纹釉的制作是在一个浅的方形平底碟中进行的,在计算机上制作仿真大理石纹釉时在仿真系统中定义一个二维运算域作为平底碟的内部底平面,二维运算域是一个长为M个单位长度,宽为N个单位宽度的方形栅格上,栅格内部由M×N个正方形单元格构成,每个单元格的大小由用户在初始的时候设定。
二维运算域上设有基底液,基底液的属性包括颜色,即纹釉的底色,以及基底液流体的粘稠度。颜料在不同粘稠度的基底液表面的扩散速度不同,大理石纹理工艺所用的基底液一般具有非常高的粘性。传统的大理石纹理工艺的基底液和普通的水不同,里面添加了一些溶剂,例如牛胆汁,是大理石纹理制作工艺所专用的。
(2)采用用户指定的操作方式在二维运算域中进行相应的操作,所述的操作包括滴入各种颜色的滴液,搅动基底液带动各种颜色的图层运动和梳理图层的纹理。滴液的颜色用户可以按照自己的需要进行选择,搅动基底液所用的力也可以按照需要设定。
步骤(1)以及步骤(2)的操作,用户可以利用现有技术对相关参数进行预设定,并将预设定的参数(带有颜色信息、操作信息、以及矢量力场信息的数据)输入到二维运算域中。滴液操作时,同时要选择所要滴液的图层及其颜色。搅动和梳理基底液操作时,同时要选择力度大小,另外是梳子的齿形。选择参数完毕后,用鼠标或压杆笔进行纹釉设计。
(3)基于步骤(2)的操作,通过求解二维流体的动力学Navie-Stokes方程得到二维运算域中大理石纹釉每层图层的速度场u包括以下步骤:
所述的二维流体的动力学Navie-Stokes方程如(1)式:
1)求解二维流体的动力学Navie-Stokes方程的水平对流项;
u(x,t+δt)=u(x-u(x,t)δt,t)......(2)
式中u表示速度,x表示位置,t代表某一时刻,δt表示时间步长;
为了计算二维运算域中的x位置在t+δt时刻的速度,采用准拉格朗日方法沿着粒子的运动轨迹回溯到在t时刻的位置x′,对最接近x′的四个单元格用USCIP方法进行插值得到的速度拷贝到x位置,最后得到整个二维运算域中图层的水平对流速度场u1。
无论时间步长δt取多大,准拉格朗日方法都能使更新后的速度都不会超过整个速度场在上一时刻的速度上限,从而保证了算法的稳定性。而且USCIP是一种稳定准确而且快速的高阶插值方法,并且非常适合于在GPU上实现。
2)求解二维流体的动力学Navie-Stokes方程的粘性扩散项;
式中,I为单位矩阵,v为粘度,u为速度,t代表某一时刻,δt表示时间步长;
方程(3)可以看作是泊松方程,利用多栅解法在GPU上求解方程得到整个二维运算域中图层的粘性扩散速度场u2;
多栅解法先在原始栅格上求初始值,然后将每个栅格的余数投影到粗糙一级的栅格继续求初始值和余数直到达到第N级栅格,最后逐次向高分辨率级别插值,得到最终解。
3)求解二维流体的动力学Navie-Stokes方程的外力项,将外力场直接叠加到速度场上,方法如下:
记录用户在搅动液体时经过路径的切线方向,并将所述的切线方向作为外力F的方向,外力F的大小由用户通过仿真系统交互设置,然后直接将外力场叠加到步骤1)和步骤2)的总速度场(u1+u2)上得到新的速度场w;
所述步骤1)和步骤2)的总速度场为水平对流速度场u1和粘性扩散速度场u2的叠加,即(u1+u2);
4)求解二维流体的动力学Navie-Stokes方程的压力项,将步骤3)得到的速度场w减去压力的梯度得到新的速度场u的方法如下:
经过水平对流,粘性扩散,施加外力三个步骤后得到的新的速度场w是发散的,要将w转化为一个无发散的速度场u;
由于任何一个矢量场都可以被分解成另外两个矢量场的和,其中一个为无发散的矢量场,另一个为标量场的梯度,w分解如(4)式所示:
式中p是Navie-Stokes方程中的压力场,对公式(4)两边应用发散度算子后根据Navie-Stokes方程(1)中的 的条件得到压力泊松方程(5):
采用多栅解法来解这个压力泊松方程,最后用w减去p的梯度就得到二维运算域中大理石纹釉每层图层的速度场u。
(4)利用USCIP高阶插值方法,通过转换函数以及逆转换函数对速度场进行转换计算,得到大理石纹釉每层图层的密度场,具体包括以下步骤:
密度场和速度场之间的关系如公式(6)所示:
式中d为密度场,u为速度场;
为了计算x位置在t+δt时刻的密度,先将t时刻密度场用如式(7)所示的转换函数进行转换,将d转换为F(d):
式中d表示密度,ξ是一个很小的值,目的是为了防止出现分母为0的情况;将转换后的F(d)代入到(6)式,再采用准拉格朗日方法沿着粒子的运动轨迹回溯到在t时刻的位置x′,对最接近x′的四个单元格用USCIP方法进行插值得到的密度值拷贝到x位置,得到新的F(d),最后将新的F(d)再通过式(8)所示的逆转换函数转换得到最终的密度场d。
F-1(d)=0.5(tanh(d)+1)......(8)
(5)将大理石纹釉每层图层的密度场和该层的颜色相乘得到该层的颜色值,并将大理石纹釉所有层的颜色值累加得到最后大理石纹釉图像的颜色值,生成用户需要的大理石纹釉;
大理石纹釉图像的颜色值按照式(9)进行计算:
式中,Coutput是输出结果,Cliguid表示基底液的颜色,di表示第i层的密度值,Ci表示第i层的颜色值。
本发明针对现有的基于物理模型的大理石纹釉工艺的仿真系统存在的各种缺点,采用了一种快速并且精确的方法,可以更快的,更好的生成大理石纹釉图案,本发明算法明确,界面友好,结果鲁棒。
附图说明
图1为本发明的技术方案流程图;
图2为本发明中泊松方程多栅解法的过程图。
具体实施方式
下面结合附图对本发明的一种快速且精确的大理石纹釉生成方法的实施例进行详细说明。
如图1所示,一种快速且精确的大理石纹釉生成方法,用户通过基于CUDA的仿真系统执行各种操作,仿真系统执行相应的算法来进行大理石纹釉的仿真制作,方法包括以下步骤:用户设置相应参数;用户选择需要的操作方式在二维运算域中进行相应的操作;通过求解二维流体的动力学Navie-Stokes方程得到二维运算域中大理石纹釉每层图层的速度场;利用USCIP高阶插值方法,通过转换函数以及逆转换函数对速度场进行转换计算,得到大理石纹釉每层图层的密度场;每层的密度场和对应的颜料色彩相乘,并将所有层的颜色值累加得到最后大理石纹釉图像的颜色值,生成用户需要的大理石纹釉。
(1)用户设置相关参数,包括用于大理石纹釉生成的二维运算域和基底液的属性和大理石纹釉的图层的层数n、图层的颜色color[n];用户可以根据需要设置大理石纹釉的图层的层数,第n层的颜色为color[n]。
用户输入液滴的半径R和搅动流体时的外力大小F两个参数的数值。
大理石纹釉的制作是在一个浅的方形平底碟中进行的,在计算机上制作仿真大理石纹釉时在仿真系统中定义一个二维运算域作为平底碟的内部底平面,二维运算域是一个长为M个单位长度,宽为N个单位宽度的方形栅格上,栅格内部由M×N个正方形单元格构成,每个单元格的大小由用户在初始的时候设定。
二维运算域上设有基底液,基底液的属性包括颜色,即纹釉的底色,以及基底液流体的粘稠度。颜料在不同粘稠度的基底液表面的扩散速度不同,大理石纹理工艺所用的基底液一般具有非常高的粘性。传统的大理石纹理工艺的基底液和普通的水不同,里面添加了一些溶剂,例如牛胆汁,是大理石纹理制作工艺所专用的。
(2)采用用户指定的操作方式在二维运算域中进行相应的操作,所述的操作包括滴入各种颜色的滴液,搅动基底液带动各种颜色的图层运动和梳理图层的纹理。滴液的颜色用户可以按照自己的需要进行选择,搅动基底液所用的力也可以按照需要设定。
(3)基于步骤(2)的操作,通过求解二维流体的动力学Navie-Stokes方程得到二维运算域中大理石纹釉每层图层的速度场u包括以下步骤:
所述的二维流体的动力学Navie-Stokes方程如(1)式:
1)求解二维流体的动力学Navie-Stokes方程的水平对流项;
将Navie-Stokes方程的水平对流项表示成隐式表达方式,方程如(2)式:
u(x,t+δt)=u(x-u(x,t)δt,t)......(2)
式中u表示速度,x表示位置,t代表某一时刻,δt表示时间步长;
为了计算二维运算域中的x位置在t+δt时刻的速度,采用准拉格朗日方法沿着粒子的运动轨迹回溯到在t时刻的位置x′,对最接近x′的四个单元格用USCIP方法进行插值得到的速度拷贝到x位置,最后得到整个二维运算域中图层的水平对流速度场u1。无论时间步长δt取多大,准拉格朗日方法都能使更新后的速度都不会超过整个速度场在上一时刻的速度上限,从而保证了算法的稳定性。
USCIP是一种稳定准确而且快速的高阶插值方法。对于二维的液体,USCIP多项式公式如下.
φ00,φ01,φ10,和φ11为相邻四个象素的物理量(这里为速度)。假设φx和φy分别为φ在x方向和y方向的偏导数,则φx00,φx01,φx10,φx11,φy00,φy01,φy10,φy11为相邻四个象素的φ的偏导值。该USCIP多项式的系数由以下方程确定:
C00=φ00
C10=φx00
C01=φy00
C20=3(φ10-φ00)-φx10-2φx00
C02=3(φ01-φ00)-φy01-2φy00
C30=-2(φ10-φ00)+φx10+φx00
C03=-2(φ01-φ00)+φy01+φy00
C21=3φ11-2φx01-φx11-3(C00+C01+C02+C03)-C20
C31=-2φ11+φx01-φx11-2(C00+C01+C02+C03)-C30
C12=3φ11-2φy10-φy11-3(C00+C10+C20+C30)-C02
C13=-2φ11+φy10-φy11-2(C00+C10+C20+C30)-C03
C11=φx01-C10-C12-C13
从公式中可以看出,USCIP方法很容易在GPU上并行实现。我们首先计算出在各象素的两个偏导数φx和φy然后带入公式即可求出新的φ值。为了保证水平对流计算的稳定性,我们对于插值后的值限定在相邻四个象素的φ值的最大和最小值之间。
2)求解二维流体的动力学Navie-Stokes方程的粘性扩散项;
式中,I为单位矩阵,v为粘度,u为速度,t代表某一时刻,δt表示时间步长;
方程(3)可以看作是泊松方程,利用多栅解法在GPU上求解方程得到整个二维运算域中图层的粘性扩散速度场u2;
多栅解法先在原始栅格上求初始值,然后将每个栅格的余数投影到粗糙一级的栅格继续求初始值和余数直到达到第N级栅格,最后逐次向高分辨率级别插值,得到最终解,具体包括以下步骤,如图2所示:
a)先在原始栅格上进行数次预处理求初值,获得一个初期解xh;
b)求出各个栅格单元的余数值rh=bh-Ahxh;
c)将rh余数值投射到粗糙一级的栅格上,成为b2h,该栅格对应的泊松方程为A2hx=b2h,其分辨率只有原始栅格的1/4大小;
d)重复1,2,3的步骤,反复递归直到某个最粗糙的栅格上(假设为第n个栅格);此时,对当前栅格运动雅各比迭代方法解方程Anhx=bnh,得到近似解xnh;
e)将xnh按于前面相反的顺序,逐次向高分辨率级别插值,并进行后期处理,当达到最高级别时就是最终解。
3)求解二维流体的动力学Navie-Stokes方程的外力项,将外力场直接叠加到速度场上,方法如下:
记录用户在搅动液体时经过路径的切线方向,并将所述的切线方向作为外力F的方向,外力F的大小由用户通过仿真系统交互设置,然后直接将外力场叠加到步骤1)和步骤2)的总速度场(u1+u2)上得到新的速度场w;
所述步骤1)和步骤2)的总速度场为水平对流速度场u1和粘性扩散速度场u2的叠加,即(u1+u2);
4)求解二维流体的动力学Navie-Stokes方程的压力项,将步骤3)得到的速度场w减去压力的梯度得到新的速度场u的方法如下:
经过水平对流,粘性扩散,施加外力三个步骤后得到的新的速度场w是发散的,要将w转化为一个无发散的速度场u;
由于任何一个矢量场都可以被分解成另外两个矢量场的和,其中一个为无发散的矢量场,另一个为标量场的梯度,w分解如(4)式所示:
式中p是Navie-Stokes方程中的压力场,对公式(4)两边应用发散度算子后根据Navie-Stokes方程(1)中的 的条件得到压力泊松方程(5):
采用多栅解法来解这个压力泊松方程,最后用w减去p的梯度就得到二维运算域中大理石纹釉每层图层的速度场u。
(4)利用USCIP高阶插值方法,通过转换函数以及逆转换函数对速度场进行转换计算,得到大理石纹釉每层图层的密度场,具体包括以下步骤:
通过求解Navie-Stokes方程后,得到了速度场u,但要将仿真结果转换成为可视的大理石纹釉图案,最为直接的途径就是加入密度场以表示置于流场中的彩色颜料。对颜料运动的精确模拟必须包括色彩的水平对流,扩散,损耗等性质。由于大理石纹釉工艺所用的基底液具有非常高的粘性,相对的颜料色彩扩散率就比较低,基本可以忽略不计,所以只考虑水平对流项。密度场u和速度场d之间的关系如公式(6)所示:
式中d为密度场,u为速度场;
为了计算x位置在t+δt时刻的密度,先将t时刻密度场用如式(7)所示的转换函数进行转换,将d转换为F(d):
式中d表示密度,ξ是一个很小的值,目的是为了防止出现分母为0的情况;将转换后的F(d)代入到(6)式,再采用准拉格朗日方法沿着粒子的运动轨迹回溯到在t时刻的位置x′,对最接近x′的四个单元格用USCIP方法进行插值得到的密度值拷贝到x位置,得到新的F(d),最后将新的F(d)再通过式(8)所示的逆转换函数转换得到最终的密度场d。
F-1(d)=0.5(tanh(d)+1)......(8)
(5)将大理石纹釉每层图层的密度场和该层的颜色相乘得到该层的颜色值,并将大理石纹釉所有层的颜色值累加得到最后大理石纹釉图像的颜色值,生成用户需要的大理石纹釉;
大理石纹釉图像的颜色值按照式(9)进行计算:
式中,Coutput是输出结果,Cliguid表示基底液的颜色,di表示第i层的密度值,Ci表示第i层的颜色值。
Claims (4)
1.一种快速且精确的大理石纹釉生成方法,其特征在于,包括以下步骤:
(1)用户设置用于大理石纹釉生成的二维运算域和基底液的属性和大理石纹釉的图层的层数n、图层的颜色color[n];
输入液滴的半径R和搅动流体时的外力大小F两个参数的数值;
(2)采用用户指定的操作方式在二维运算域中进行相应的操作,所述的操作包括滴入各种颜色的滴液,搅动基底液带动各种颜色的图层运动和梳理图层的纹理;
(3)基于步骤(2)的操作,通过求解二维流体的动力学Navie-Stokes方程得到二维运算域中大理石纹釉每层图层的速度场;
(4)利用USCIP高阶插值方法,通过转换函数以及逆转换函数对速度场进行转换计算,得到大理石纹釉每层图层的密度场;
(5)将大理石纹釉每层图层的密度场和该层的颜色相乘得到该层的颜色值,并将大理石纹釉所有层的颜色值累加得到最后大理石纹釉图像的颜色值,生成用户需要的大理石纹釉。
2.如权利要求1所述的大理石纹釉生成方法,其特征在于:步骤(1)中所述的二维运算域是一个长为M个单位长度,宽为N个单位宽度的方形栅格上,栅格内部由M×N个正方形单元格构成,每个单元格的大小由用户在初始的时候设定;
基底液的属性包括颜色以及基底液流体的粘稠度。
3.如权利要求1所述的大理石纹釉生成方法,其特征在于:所述的通过求解二维流体的动力学Navie-Stokes方程得到二维运算域中大理石纹釉每层图层的速度场u包括以下步骤:
所述的二维流体的动力学Navie-Stokes方程如(1)式:
1)求解二维流体的动力学Navie-Stokes方程的水平对流项;
u(x,t+δt)=u(x-u(x,t)δt,t)......(2)
式中u表示速度,x表示位置,t代表某一时刻,δt表示时间步长;
为了计算二维运算域中的x位置在t+δt时刻的速度,采用准拉格朗日方法沿着粒子的运动轨迹回溯到在t时刻的位置x′,对最接近x′的四个单元格用USCIP方法进行插值得到的速度拷贝到x位置,最后得到整个二维运算域中图层的水平对流速度场u1;
2)求解二维流体的动力学Navie-Stokes方程的粘性扩散项;
式中,I为单位矩阵,v为粘度,u为速度,t代表某一时刻,δt表示时间步长;
方程(3)可以看作是泊松方程,利用多栅解法在GPU上求解方程得到整个二维运算域中图层的粘性扩散速度场u2;
3)求解二维流体的动力学Navie-Stokes方程的外力项,将外力场直接叠加到速度场上,方法如下:
记录用户在搅动液体时经过路径的切线方向,并将所述的切线方向作为外力F的方向,外力F的大小由用户交互设置,然后将外力场直接叠加到步骤1)和步骤2)的总速度场(u1+u2)上得到新的速度场w;
所述步骤1)和步骤2)的总速度场为水平对流速度场u1和粘性扩散速度场u2的叠加,即(u1+u2);
4)求解二维流体的动力学Navie-Stokes方程的压力项,将步骤3)得到的速度场w减去压力的梯度得到新的速度场u的方法如下:
经过水平对流,粘性扩散,施加外力三个步骤后得到的新的速度场w是发散的,要将w转化为一个无发散的速度场u;
由于任何一个矢量场都可以被分解成另外两个矢量场的和,其中一个为无发散的矢量场,另一个为标量场的梯度,w分解如(4)式所示:
式中p是Navie-Stokes方程中的压力场,对公式(4)两边应用发散度算子后根据Navie-Stokes方程(1)中的 的条件得到压力泊松方程(5):
采用多栅解法来解这个压力泊松方程,最后用w减去p的梯度就得到二维运算域中大理石纹釉每层图层的速度场u。
4.如权利要求1所述的大理石纹釉生成方法,其特征在于:步骤(4)所述的利用USCIP高阶插值方法,通过转换函数以及逆转换函数对速度场进行转换计算,得到大理石纹釉每层图层的密度场的方法包括以下步骤:
密度场和速度场之间的关系如公式(6)所示:
式中d为密度场,u为速度场;
为了计算x位置在t+δt时刻的密度,先将t时刻密度场用如式(7)所示的转换函数进行转换,将d转换为F(d):
式中d表示密度,ξ是一个很小的值,目的是为了防止出现分母为0的情况;将转换后的F(d)代入到(6)式,再采用准拉格朗日方法沿着粒子的运动轨迹回溯到在t时刻的位置x′,对最接近x′的四个单元格用USCIP方法进行插值得到的密度值拷贝到x位置,得到新的F(d),最后将新的F(d)再通过式(8)所示的逆转换函数转换得到最终的密度场d。
F-1(d)=0.5(tanh(d)+1)......(8)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2009100988814A CN101577008A (zh) | 2009-05-21 | 2009-05-21 | 一种快速且精确的大理石纹釉生成方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2009100988814A CN101577008A (zh) | 2009-05-21 | 2009-05-21 | 一种快速且精确的大理石纹釉生成方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101577008A true CN101577008A (zh) | 2009-11-11 |
Family
ID=41271942
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2009100988814A Pending CN101577008A (zh) | 2009-05-21 | 2009-05-21 | 一种快速且精确的大理石纹釉生成方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101577008A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106023292A (zh) * | 2016-05-20 | 2016-10-12 | 浙江大学 | 一种基于数学函数的实时的大理石体纹理生成方法 |
CN110176058A (zh) * | 2019-04-25 | 2019-08-27 | 浙江大学 | 一种基于草图和卷积曲面的沉浸式快速建模方法 |
-
2009
- 2009-05-21 CN CNA2009100988814A patent/CN101577008A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106023292A (zh) * | 2016-05-20 | 2016-10-12 | 浙江大学 | 一种基于数学函数的实时的大理石体纹理生成方法 |
CN106023292B (zh) * | 2016-05-20 | 2018-11-06 | 浙江大学 | 一种基于数学函数的实时的大理石体纹理生成方法 |
CN110176058A (zh) * | 2019-04-25 | 2019-08-27 | 浙江大学 | 一种基于草图和卷积曲面的沉浸式快速建模方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Hu et al. | Fast tetrahedral meshing in the wild | |
Yokoi | Efficient implementation of THINC scheme: a simple and practical smoothed VOF algorithm | |
Iben et al. | Generating surface crack patterns | |
Zhu et al. | Fsgs: Real-time few-shot view synthesis using gaussian splatting | |
CN102254333B (zh) | 基于图像的水墨画画风图像生成方法 | |
Zhu et al. | Codimensional non-Newtonian fluids | |
Hodges | Challenges in continental river dynamics | |
Ma et al. | Dynamic element textures | |
Hu et al. | Sketch2VF: Sketch‐based flow design with conditional generative adversarial network | |
CN105374007A (zh) | 融合骨架笔画和纹理特征的铅笔画生成方法和装置 | |
CN101587595A (zh) | 一种基于控制网格的变形方法 | |
CN103427789B (zh) | 一种基于分数阶计算方程的图书馆图文信息去噪滤波器 | |
Frisken et al. | Designing with distance fields | |
CN106934192A (zh) | 一种参数优化的浅水方程模型水体建模方法 | |
Hsu et al. | Autocomplete element fields | |
Arechiga et al. | Drag-guided diffusion models for vehicle image generation | |
Ando et al. | Vector graphics depicting marbling flow | |
CN102982567B (zh) | 一种基于统计分析的变形体碰撞检测剔除方法 | |
CN101577008A (zh) | 一种快速且精确的大理石纹釉生成方法 | |
Rossinelli et al. | Vortex methods for incompressible flow simulations on the GPU | |
CN101477693B (zh) | 一种基于gpu的实时大理石纹理仿真系统 | |
Guo et al. | A virtual 3D interactive painting method for Chinese calligraphy and painting based on real-time force feedback technology | |
CN102819630B (zh) | 八叉树粗糙网格投影的快速的烟模拟方法 | |
CN102663782B (zh) | 基于笔画纹理分析的绘画渲染方法 | |
Talgorn et al. | Real-time sketch-based terrain generation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Open date: 20091111 |