CN102521863B - 一种基于粒子***的三维流体标矢量统一动态表示方法 - Google Patents
一种基于粒子***的三维流体标矢量统一动态表示方法 Download PDFInfo
- Publication number
- CN102521863B CN102521863B CN201110391542.2A CN201110391542A CN102521863B CN 102521863 B CN102521863 B CN 102521863B CN 201110391542 A CN201110391542 A CN 201110391542A CN 102521863 B CN102521863 B CN 102521863B
- Authority
- CN
- China
- Prior art keywords
- particle
- data
- value
- constantly
- dimensional
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Processing Or Creating Images (AREA)
- Image Generation (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明涉及一种基于粒子***的三维流体标矢量统一动态表示方法,包括以下步骤:基于显示的视觉效果制定涉及三维数据动态显示的空间密度、时间密度和显示帧数的动态表示规则;根据动态表示规则进行数据预处理,采用八叉树模型对数据进行存储和管理,结合流体的最大速度和动态表示规则设置表示的时间密度,采用粒子模型进行三维动态表示。本发明方法利用粒子***,将流体的流速和其它标量属性统一地进行三维动态表示;基于视觉显示效果,根据流体自身的流速快慢设置三维动态表示的时间间隔和空间间隔参数,使得粒子在空间分布比较均匀,动态效果更加明显,并且避免了不同粒子前后帧数据的混淆。
Description
技术领域
本发明属于三维图像处理领域,涉及一种基于粒子***的三维流体标矢量统一动态表示方法。
背景技术
三维流体数据一般包括流体的流速和流体的本身属性;其中流速属于矢量,包括方向和大小;而流体本身的属性通常是标量,比如流体的密度、温度等。所以流体的三维表示,根据其数据类型可以分为标量场和矢量场表示。常用标量场表示方法包括:剖面重构法、三维等值面法和直接体绘制法等;矢量场的表示方法包括:箭标图的方法、基于流线的方法、基于纹理的方法等。流体本身的属性值随着流体的流动而变化,所以流体的标量数据和矢量数据有很强的相关性。在对流体进行三维表示的时候,如果将标量和矢量在同一个时空基准下表示,在同一个界面显示,可以更为直观的体现标量和矢量数据之间的关系。
描述流体的时空变化过程的数据模型包括基于场的时空格网模型和基于特征的时空过程数据模型。场模型适合表示在三维空间中连续变化的数据,适合表示流体的流速、温度、盐度等属性;而特征模型适合表示离散对象数据,特别适合表示涡旋等流体现象或者等温线等特征。
流体是具有不规则的几何外形和不确定性的模糊体,不能采用通常用来表示刚性体的三维表示模型,而Reeves提出的粒子***方法能比较好地表示这类对象。粒子***将许多简单形状的粒子作为基本元素聚集起来,形成一个不规则的模糊体。粒子***中的粒子被赋予初始的位置、速度、颜色和生命周期等属性,这些属性值依据一定的变化规律动态地变化。
由于流体的流速和本身属性在时间和空间上都是连续变化的,适合采用基于场的时空格网模型作为动态表示的时空数据模型。基于粒子***的流体三维标量场动态表示方法属于直接体绘制方法,基于粒子***的流体三维矢量场动态表示方法属于箭标图法;基于粒子***的流体三维动态表示方法可以方便地将标量和矢量数据进行统一表示。本申请提出了一种基于粒子***的三维流体标矢量统一动态表示方法,采用基于场的时空格网数据模型,用直接体绘制方法和箭标图法在粒子***中对流体三维标矢量数据进行统一动态表示。为了取得更好的视觉显示效果,本申请制定了基于视觉效果的动态表示规则。依据规则设置显示的空间和时间密度参数,对流体标矢量动态数据进行插值,使得数据显示时,粒子在空间上分布比较均匀,在时间上前后帧之间动态变化适中。
发明内容
本发明的目的在于针对流体对象,提供一种基于粒子***的三维流体标矢量统一表示方法,统一地表示流体的三维速度矢量属性和流体本身的标量属性信息。提供的方法能适用于各种不同流体及其属性的动态三维表示。
本发明所采用的技术方案是一种基于粒子***的三维流体标矢量统一表示方法,包括以下步骤:
步骤1,设定流体的动态表示规则,所述动态表示规则如下,
a,粒子的生命周期为3帧数据的时间间隔;
b,三维流体数据通过三维规则格网数据表示,三维规则数据格网由三维空间网格点组成,三维空间网格点是三维空间中分布的采样点,采样点在三维空间呈规则分布,相邻采样点在在各个方向上的空间间隔相等,空间间隔记为空间密度参数 ;
粒子初始时刻在空间中的位置为三维空间网格点的位置;
步骤2,根据步骤1所述动态表示规则,通过插值,将表示流体本身属性的标量数据和表示流体流速的矢量数据转化成同一时空基准下的三维规则格网数据;
步骤3,将步骤2转化后的标量数据和矢量数据按照时间的先后顺序分别存储,某一时刻标量数据和矢量数据在空间上采用八叉树模型对数据进行存储和管理;
步骤5.1,标量数据的格式是,其中是三维空间网格点的坐标,是该三维空间网格点的标量值,矢量数据的格式是,其中是三维空间点的坐标,是该三维空间网格点的矢量值,表示流体的速度矢量;计算步骤4所读取标量数据和矢量数据中的所有不同时间三维空间格网点上流体速度的大小,如以下公式(1):
将最大值记为;
步骤6,采用粒子***对流体进行三维动态表示,包括以下步骤:
步骤6.1,根据步骤4所确定需要的标量数据和矢量数据,按照时间先后顺序读取其中某一时刻的数据,设置相应的粒子***,并赋予初始属性值,粒子的初始属性值作为粒子***的第一帧显示;赋予初始属性值的实现方式如下,
所读取数据中的每个三维空间格网点,用一个粒子表示,粒子的初始属性值包括空间位置坐标、速度和颜色属性值,粒子的空间位置坐标是三维空间格网点坐标,粒子的速度是三维空间格网点的矢量值,粒子的颜色属性值是三维空间格网的标量值,每一个粒子的生命周期为3帧数据的时间间隔0~2;
步骤7,采用粒子***对流体进行三维动态表示,包括以下步骤:
步骤7.1,根据步骤4所确定需要的标量数据和矢量数据,按照时间先后顺序读取其中总共个时刻的数据,如果步骤4中所确定需要的标量数据和矢量数据总共只有个时刻,并且时,则按照时间先后顺序读取所有个时刻的数据;设置相应的粒子***,并赋予初始属性值,粒子的初始属性值作为粒子***的第一帧显示;当时,进入步骤7.2,当时,进入步骤7.3;
赋予初始属性值的实现方式如下,
将所读取第一个时刻数据中的每个三维空间格网点,用一个粒子表示,粒子的初始属性值包括空间位置坐标、速度和颜色属性值,粒子的空间位置坐标是三维空间格网点坐标,粒子的速度是三维空间格网点的矢量值,粒子的颜色属性值是三维空间格网的标量值,每一个粒子的生命周期为3帧数据的时间间隔0~2;
步骤7.2.1,令n=1;
;
步骤7.2.3,在时刻,位置处于一个以三维空间网格点为顶点组成的立方体中,若位置处于多个立方体的交界处时,选择读入的第一个立方体;立方体的顶点记为,其中;在时刻,三维空间网格点的速度记为,三维空间网格点的空间位置坐标记为,利用立方体的8个顶点,采用以下线性插值公式(7),拟合粒子在位置处的速度:
步骤7.3,
当时,进行步骤7.2的过程直到步骤7.2.4中,结束迭代过程;如果是整数,将粒子在位置处的属性值作为粒子***第二帧显示的粒子属性值,否则将粒子在位置处的属性值作为粒子***第二帧显示的粒子属性值;将粒子在位置处的属性值作为第三帧显示的粒子属性值,进入步骤8;
当时,进行步骤7.2的过程直到步骤7.2.4中,得到粒子在时刻的属性值,作为粒子***的第二帧显示;再将粒子的属性值用位置的属性值代替,重复迭代过程步骤7.2.1到步骤7.2.4直到 ,结束迭代过程;将粒子在位置处的属性值作为第三帧显示的粒子属性值,进入步骤8;
步骤8,依次读取步骤6或者步骤7所得粒子在三帧的属性值,进行数据映射绘制并可视化;
步骤9,若步骤4所确定需要的标量数据和矢量数据中剩下有未读取的数据,返回到步骤6或者步骤7,直到步骤4所确定需要的标量数据和矢量数据都表示和可视化完毕。
而且,步骤8进行数据映射绘制时采用以下方式,
箭头的颜色在RGB彩色空间中为,由以下公式(10)、(11)、(12)得到:
本发明提供的技术方案的有益效果为:利用粒子***,将流体的流速和其它标量属性统一地进行三维动态表示;设计粒子***的生命周期为3帧数据的时间间隔,这3帧之间粒子的位移可以形象地体现流体的流动状态,直观的表示出流体整体的流速场,同时3帧的计算量和算法复杂度也较低;基于视觉效果建立动态表示规则,根据流体自身的流速自适应地设定三维动态表示的空间间隔参数和时间间隔参数,使得粒子在空间分布比较均匀,动态效果更加明显,并且避免了不同粒子前后帧数据的混淆。
附图说明
图1为本发明实施例的流程图。
具体实施方式
本发明技术方案可采用软件技术实现流程自动运行。为了更好地理解本发明的技术方案,下面结合附图和实施例对本发明做进一步的详细说明。本发明的实施例是对FVCOM海洋动力学模型模拟的近海岸海洋的潮流数据和温度数据进行三维动态表示,参照图1,本发明实施例的步骤如下:
步骤1,设定流体的动态表示规则;所述动态表示规则如下,
a,粒子的生命周期为3帧数据的时间间隔;
b,三维流体数据通过三维规则格网数据表示,三维规则数据格网由三维空间网格点组成,三维空间网格点是三维空间中分布的采样点,采样点在三维空间呈规则分布,相邻采样点在在各个方向上的空间间隔相等,空间间隔记为空间密度参数;
粒子初始时刻在空间中的位置为三维空间网格点的位置;
粒子的生命周期大于或等于2帧数据的时间间隔就能体现流体流动的效果,选择生命周期为3帧数据的时间间隔,通过前后帧的对比,可以比较好的体现流体的速度,显示出比较好的动态效果,当生命周期加长,会增加插值的计算量和算法的复杂性。根据规则b,在初始时刻,粒子在空间中呈均匀分布;根据规则c,在第二帧和第三帧,粒子的位置变化不会超过,在动态显示的时候可以方便地对同一个粒子在前后帧进行对应,而不会和相邻的其它粒子混淆;粒子在时间内的位移总是小于的前提下达到最大使得动态变化更为明显。
步骤2,进行数据预处理:表示流体流速的矢量数据和表示流体本身属性的标量数据分别采用FVCOM海洋动力学模型模拟的近海岸海洋的潮流数据和温度数据,在空间上分为6层,每层内采用三角形网格;潮流数据和温度数据的时空基准是一致的,即在时间和空间上坐标一致。根据规则b,实施例通过现有技术中的克里金插值,将表示流体本身属性的标量数据和表示流体流速的矢量数据转化成三维规则格网数据。具体实施时,还可采用其他插值技术实现。
步骤3,经过步骤2预处理后的数据按照时间的先后顺序分别存储,某一时刻标量和矢量数据在空间上采用八叉树模型对数据进行存储和管理。八叉树模型是由四叉树结构推广到三维空间而形成的一种三维数据结构,在八叉树的树形结构中,根节点表示整个三维空间区域,将该区域切分成8 个大小相同的小区域,用其8 个子节点表示。对于每一个这样的区域,继续将其分成8 个更小的区域。按此规则一直分割到不再需要分割的层次为止。在八叉树数据模型中,父节点的属性值为8个子节点的属性值的算数平均值。在实施例中,采用的是拥有4个层次(尺度)的八叉树模型。
步骤4,选择显示的尺度为最小尺度(最精细),显示流体的区域为一个有格网点的区域。显示20个时刻的数据,每个时刻之间的时间间隔为1小时,读取所需要的标量和矢量数据,提取三维规则数据格网的空间间隔记为空间密度参数,时间间隔记为。若选择了个时刻的数据,每前后2个时刻的时间间隔是,则显示的时间段是从第一个时刻到最后一个时刻,时间段的长度一共是(M-1)*。注意,指的是数据的前后2个时刻间的时间间隔,是指在显示的时候前后帧之间的间隔。
步骤5.1,三维规则数据格网由三维空间网格点组成,标量数据的格式是,其中是三维空间网格点的坐标,是该三维空间网格点的标量值,矢量数据的格式是,其中是三维空间点的坐标,是该三维空间网格点的矢量值,表示流体的速度矢量;计算步骤4所读取标量数据和矢量数据中的所有不同时间三维空间格网点上流体速度的大小,如以下公式(1):
步骤5.2,分以下2种情况设置时间密度参数:
情况2,当时,流体的速度比较慢,为了有比较明显的动态效果,将时间密度参数设置为数据的时间间隔的整数倍,将多个时刻的数据集成成一帧显示;令,进入步骤7,其中,表示取整数部分,这是确保所有粒子在时间内的位移总是小于的最大值。
步骤6,根据规则a,采用粒子***对流体进行三维动态表示,包括以下步骤:
步骤6.1,根据步骤4所确定需要的标量数据和矢量数据,按照时间先后顺序读取其中某一时刻的数据,设置相应的粒子***,并赋予初始属性值,粒子的初始属性值作为粒子***的第一帧显示;赋予初始属性值的实现方式如下,
所读取数据中的每个三维空间格网点,用一个粒子表示,粒子的初始属性值包括空间位置坐标、速度和颜色属性值,粒子的空间位置坐标是三维空间格网点坐标,粒子的速度是三维空间格网点的矢量值,粒子的颜色属性值是三维空间格网的标量值,每一个粒子的生命周期为3帧数据的时间间隔0~2;
步骤7,根据规则a,采用粒子***对流体进行三维动态表示,包括以下步骤:
步骤7.1,根据步骤4所确定需要的标量数据和矢量数据,按照时间先后顺序读取其中总共个时刻的数据,如果步骤4中所确定需要的标量数据和矢量数据总共只有个时刻,并且时,则按照时间先后顺序读取所有个时刻的数据;设置相应的粒子***,并赋予初始属性值,粒子的初始属性值作为粒子***的第一帧显示;当时,进入步骤7.2,当时,进入步骤7.3;
赋予初始属性值的实现方式如下,
将所读取第一个时刻数据中的每个三维空间格网点,用一个粒子表示,粒子的初始属性值包括空间位置坐标、速度和颜色属性值,粒子的空间位置坐标是三维空间格网点坐标,粒子的速度是三维空间格网点的矢量值,粒子的颜色属性值是三维空间格网的标量值,每一个粒子的生命周期为3帧数据的时间间隔0~2;步骤7.2,计算粒子在时刻和时刻的属性值,粒子在时刻的属性值,作为粒子***的第二帧显示;粒子在时刻的属性值,作为粒子***的第三帧显示;
步骤7.2.1,令n=1;
步骤7.2.3,在时刻,位置处于一个以三维空间网格点为顶点组成的立方体中,若位置处于多个立方体的交界处时,选择读入的第一个立方体;立方体的顶点记为,其中;在时刻,三维空间网格点的速度记为,三维空间网格点的空间位置坐标记为,利用立方体的8个顶点,采用以下线性插值公式(7),拟合粒子在位置处的速度:
若粒子处于多个这样的立方体的交界处时,选择读入的第一个立方体;从公式(7)可以看出,选择任意一个满足要求的立方体,拟合的结果不变。
实施例分以下2种情况处理:
当时,进行步骤7.2的过程直到步骤7.2.4中,结束迭代过程;如果是整数,将粒子在位置处的属性值作为粒子***第二帧显示的粒子属性值,否则将粒子在位置处的属性值作为粒子***第二帧显示的粒子属性值;将粒子在位置处的属性值作为第三帧显示的粒子属性值,进入步骤8;
当时,进行步骤7.2的过程直到步骤7.2.4完成(),得到粒子在时刻的属性值,作为粒子***的第二帧显示;再将粒子的属性值用位置的属性值代替,重复迭代过程步骤7.2.1到步骤7.2.4直到 ,结束迭代过程;将粒子在位置处的属性值作为第三帧显示的粒子属性值,进入步骤8;
步骤8,依次读取步骤6或者步骤7所得粒子在三帧的属性值,进行数据映射绘制并可视化;
本申请的实施例基于Geoglobe软件平台实现最后的可视化。在Geoglobe软件平台上可以方便的进行箭头的绘制,并可以随意的进行平移、缩放、转换观察角度等操作。采用Geoglobe软件平台依次读取步骤6或者步骤7中粒子三帧的属性值,依据以下的数据映射方法绘制并可视化:
具体实施时,本领域技术人员可以设置其他数据映射绘制方式。
步骤9,若步骤4所确定需要的标量数据和矢量数据中剩下有未读取的数据,返回到步骤6或者步骤7(分别针对步骤5.2中的情况1或者情况2),直到步骤4所确定需要的标量数据和矢量数据都表示和可视化完毕。
综上所述,本发明提出的基于粒子***的三维流体标矢量统一动态表示方法,基于显示的视觉效果制定动态表示规则,依据动态表示规则进行数据预处理,采用八叉树模型对数据进行存储和管理,结合流体的最大速度和动态表示规则设置表示的时间密度,采用粒子模型进行三维动态表示。该方法将流体的流速和其它标量属性统一地进行三维动态表示,粒子在空间分布比较均匀,动态效果更加明显,并且避免了不同粒子前后帧数据的混淆。
Claims (2)
1.一种基于粒子***的三维流体标矢量统一表示方法,其特征在于,包括以下步骤:
步骤1,设定流体的动态表示规则,所述动态表示规则如下,
a,粒子的生命周期为3帧数据的时间间隔;
b,三维流体数据通过三维规则格网数据表示,三维规则数据格网由三维空间网格点组成,三维空间网格点是三维空间中分布的采样点,采样点在三维空间呈规则分布,相邻采样点在在各个方向上的空间间隔相等,空间间隔记为空间密度参数Δh;
粒子初始时刻在空间中的位置为三维空间网格点的位置;
步骤2,根据步骤1所述动态表示规则,通过插值,将表示流体本身属性的标量数据和表示流体流速的矢量数据转化成同一时空基准下的三维规则格网数据;
步骤3,将步骤2转化后的标量数据和矢量数据按照时间的先后顺序分别存储,某一时刻标量数据和矢量数据在空间上采用八叉树模型对数据进行存储和管理;
步骤4,根据待显示流体的区域、显示的尺度、显示的时间段,确定需要的标量数据和矢量数据,提取三维规则数据格网的空间间隔记为空间密度参数Δh,时间间隔记为ΔT;
步骤5,依据步骤1所述动态表示规则设置时间密度参数Δt,分为以下2个步骤:
步骤5.1,标量数据的格式是(x,y,z,d),其中(x,y,z)是三维空间网格点的坐标,d是该三维空间网格点的标量值,矢量数据的格式是(x,y,z,vx,vy,vz),其中(x,y,z)是三维空间点的坐标,(vx,vy,vz)是该三维空间网格点的矢量值,表示流体的速度矢量;计算步骤4所读取标量数据和矢量数据中的所有不同时间三维空间格网点上流体速度的大小V,如以下公式(1):
将最大值记为Vmax;
步骤5.2,分以下2种情况设置时间密度参数Δt:
当 时,令 进入步骤6;
当 时,令Δt=NΔT,进入步骤7,其中 表示取 整数部分;
步骤6,采用粒子***对流体进行三维动态表示,包括以下步骤:
步骤6.1,根据步骤4所确定需要的标量数据和矢量数据,按照时间先后顺序读取其中某一时刻的数据,设置相应的粒子***,并赋予初始属性值,粒子的初始属性值作为粒子***的第一帧显示;赋予初始属性值的实现方式如下,
所读取数据中的每个三维空间格网点,用一个粒子表示,粒子的初始属性值包括空间位置坐标、速度和颜色属性值,粒子的空间位置坐标是三维空间格网点坐标(x,y,z),粒子的速度V是三维空间格网点的矢量值(vx,vy,vz),粒子的颜色属性值是三维空间格网的标量值d,每一个粒子的生命周期为3帧数据的时间间隔0~2Δt;
步骤6.2,计算粒子在Δt时刻和2Δt时刻的属性值,粒子在Δt时刻的属性值,作为粒子***的第二帧显示;粒子在2Δt时刻的属性值,作为粒子***的第三帧显示,进入步骤8;计算粒子在Δt时刻和2Δt时刻的属性值实现方式如下,
对于粒子***中的任何一个粒子,记为P,粒子P在初始时刻的空间位置坐标记为(P0 x,P0 y,P0 z),在初始时刻的速度记为(vP x,vP y,vP z),在初始时刻的颜色属性值记为DP;
在Δt时刻,粒子P的空间位置坐标记为(P1 x,P1 y,P1 z),按照下面的公式(2)得到:
在Δt时刻,粒子P速度和颜色属性值保持不变,分别为(vP x,vP y,vP z)和DP;
在2Δt时刻,粒子P的空间位置坐标记为(P2 x,P2 y,P2 z),按照下面的公式(3)得到:
在2Δt时刻,粒子P的速度和颜色属性值保持不变,分别为(vP x,vP y,vP z)和DP;
步骤7,采用粒子***对流体进行三维动态表示,包括以下步骤:
步骤7.1,根据步骤4所确定需要的标量数据和矢量数据,按照时间先后顺序读取其中总共2N+1个时刻的数据,如果步骤4中所确定需要的标量数据和矢量数据总共只有M个时刻,并且M<2N+1时,则按照时间先后顺序读取所有M个时刻的数据;设置相应的粒子***,并赋予初始属性值,粒子的初始属性值作为粒子***的第一帧显示;当M≥2N+1时,进入步骤7.2,当M<2N+1时,进入步骤7.3;
赋予初始属性值的实现方式如下,
将所读取第一个时刻数据中的每个三维空间格网点,用一个粒子表示,粒子的初始属性值包括空间位置坐标、速度和颜色属性值,粒子的空间位置坐标是三维空间格网点坐标(x,y,z),粒子的速度V是三维空间格网点的矢量值(vx,vy,vz),粒子的颜色属性值是三维空间格网的标量值d,每一个粒子的生命周期为3帧数据的时间间隔0~2Δt;
步骤7.2,计算粒子在Δt时刻和2Δt时刻的属性值,粒子在Δt时刻的属性值,作为粒子***的第二帧显示;粒子在2Δt时刻的属性值,作为粒子***的第三帧显示;
对于粒子***中的任何一个粒子,记为P,粒子P在初始时刻的空间位置坐标记为(P0 x,P0 y,P0 z),在初始时刻的速度记为(vP x,vP y,vP z),在初始时刻的颜色属性值记为DP;计算粒子在Δt时刻和2Δt时刻的属性值通过以下迭代过程实现,
步骤7.2.1,令n=1;
步骤7.2.2,按照以下公式(4)、(5)、(6)计算第n步粒子P的空间位置坐标(Pn x,Pn y,Pn z),该坐标的位置记为Pn:
Pn x=Pn-1 x+ΔTvn-1 P x (4);
Pn y=Pn-1 y+ΔTvn-1 P y (5);
Pn z=Pn-1 z+ΔTvn-1 P z (6);
其中(Pn-1 x,Pn-1 y,Pn-1 z)表示第n-1步粒子P的空间位置坐标标,(vn-1 P x,vn-1 P y,vn-1 P z)表示第n-1步粒子P的速度;
步骤7.2.3,在nΔT时刻,位置Pn处于一个以三维空间网格点为顶点组成的立方体中,若位置Pn处于多个立方体的交界处时,选择读入的第一个立方体;立方体的顶点记为Qi,其中i=1,.……,8;在nΔT时刻,三维空间网格点Qi的速度记为(vi Q x,vi Q y,vi Q z),三维空间网格点Qi的空间位置坐标记为(Qi x,Qi y,Qi z),利用立方体的8个顶点Qi,采用以下线性插值公式(7),拟合粒子P在位置Pn处的速度(vn P x,vn P y,vn P z):
步骤7.2.4,当n小于N时,令n=n+1,返回步骤7.2.2求取下一步粒子P的空间位置坐标和速度,直到n=N时,结束迭代过程,进入步骤7.2.5;
粒子P在Δt时刻的属性值等于位置PN的属性值,位置PN的空间位置坐标为(PN x,PN y,PN z),速度为(vN P x,vN P y,vN P z),颜色属性值DN P通过以下线性插值公式(8)得到:
其中 Di Q为顶点Qi的颜色属性值;
步骤7.2.5,将粒子P的属性值用位置PN的属性值代替,返回步骤7.2.1得到粒子P在2Δt时刻的属性值后,进入步骤8;
步骤7.3,
当M≤N+1时,进行步骤7.2的过程直到步骤7.2.4中n=M-1,结束迭代过程;如果是整数,将粒子P在位置处的属性值作为粒子***第二帧显示的粒子属性值,否则将粒子P在位置处的属性值作为粒子***第二帧显示的粒子属性值;将粒子P在位置PM-1处的属性值作为第三帧显示的粒子属性值,进入步骤8;
当N+1<M<2N+1时,进行步骤7.2的过程直到步骤7.2.4中n=N,得到粒子P在Δt时刻的属性值,作为粒子***的第二帧显示;再将粒子P的属性值用位置PN的属性值代替,重复迭代过程步骤7.2.1到步骤7.2.4直到n=M-N-1,结束迭代过程;将粒子P在位置PM-1处的属性值作为第三帧显示的粒子属性值,进入步骤8;
步骤8,依次读取步骤6或者步骤7所得粒子在三帧的属性值,进行数据映射绘制并可视化;
步骤9,若步骤4所确定需要的标量数据和矢量数据中剩下有未读取的数据,返回到步骤6或者步骤7,直到步骤4所确定需要的标量数据和矢量数据都表示和可视化完毕。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110391542.2A CN102521863B (zh) | 2011-12-01 | 2011-12-01 | 一种基于粒子***的三维流体标矢量统一动态表示方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110391542.2A CN102521863B (zh) | 2011-12-01 | 2011-12-01 | 一种基于粒子***的三维流体标矢量统一动态表示方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102521863A CN102521863A (zh) | 2012-06-27 |
CN102521863B true CN102521863B (zh) | 2014-04-02 |
Family
ID=46292765
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110391542.2A Expired - Fee Related CN102521863B (zh) | 2011-12-01 | 2011-12-01 | 一种基于粒子***的三维流体标矢量统一动态表示方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102521863B (zh) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102855654B (zh) * | 2012-09-07 | 2015-04-22 | 中国人民解放军理工大学 | 一种超大规模天气效果渲染方法 |
CN103310476B (zh) * | 2013-05-29 | 2018-12-25 | 新奥特(北京)视频技术有限公司 | 一种粒子发射方法和装置 |
CN104658027A (zh) * | 2015-02-11 | 2015-05-27 | 中国海洋大学 | 一种面向不规则海洋流场数据的三维流线动态可视化算法 |
CN104867186B (zh) * | 2015-04-29 | 2018-01-19 | 中国海洋大学 | 基于gpu的可交互海洋三维流场动态可视化算法 |
CN104899913B (zh) * | 2015-05-13 | 2018-04-24 | 中国科学院自动化研究所 | 一种虚拟舞台环境下的逼真流体特效制作方法 |
CN105261063B (zh) * | 2015-09-29 | 2018-10-19 | 北京三维易达科技有限公司 | 基于八叉树的三维粒子***模拟大规模海洋气候的方法 |
CN107230242B (zh) * | 2017-06-07 | 2020-09-25 | 广州酷狗计算机科技有限公司 | 粒子映射方法和装置 |
CN108875275B (zh) * | 2018-07-18 | 2023-02-17 | 成都信息工程大学 | 一种基于大规模流线的矢量场实时仿真方法及*** |
CN109254767A (zh) * | 2018-08-28 | 2019-01-22 | 中国科学院海洋研究所 | 一种极地海冰漂移矢量可视化算法 |
CN109299343A (zh) * | 2018-09-05 | 2019-02-01 | 上海彩虹鱼海洋科技股份有限公司 | 一种面向多源全球海洋大数据的动态可视化方法及*** |
CN109685901B (zh) * | 2018-12-10 | 2022-07-22 | 西北工业大学 | 一种军标符号标绘中动态箭标绘制方法 |
CN111724225A (zh) * | 2019-03-21 | 2020-09-29 | 北京京东尚科信息技术有限公司 | 液体商品展示方法、终端设备、存储介质及电子设备 |
CN110334290B (zh) * | 2019-06-28 | 2021-12-03 | 中南大学 | 一种基于MF-Octree的时空数据快速检索方法 |
CN112559782A (zh) * | 2021-01-19 | 2021-03-26 | 成都四方伟业软件股份有限公司 | 一种网格化矢量数据可视化方法及装置 |
CN114067089B (zh) * | 2021-11-19 | 2022-05-17 | 北京航空航天大学 | 基于支撑点拟合的复杂曲线电磁波矢量动态显示方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101324963A (zh) * | 2008-07-24 | 2008-12-17 | 上海交通大学 | 基于静止图像的流体视频合成方法 |
CN101584589A (zh) * | 2008-05-20 | 2009-11-25 | 株式会社东芝 | 图像处理装置以及图像处理方法 |
CN101916435A (zh) * | 2010-08-30 | 2010-12-15 | 武汉大学 | 一种多尺度光谱投影遥感影像融合方法 |
-
2011
- 2011-12-01 CN CN201110391542.2A patent/CN102521863B/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101584589A (zh) * | 2008-05-20 | 2009-11-25 | 株式会社东芝 | 图像处理装置以及图像处理方法 |
CN101324963A (zh) * | 2008-07-24 | 2008-12-17 | 上海交通大学 | 基于静止图像的流体视频合成方法 |
CN101916435A (zh) * | 2010-08-30 | 2010-12-15 | 武汉大学 | 一种多尺度光谱投影遥感影像融合方法 |
Non-Patent Citations (6)
Title |
---|
一种基于高斯影像立方体的空间投影融合方法;邵振峰等;《武汉大学学报》;20101031;第35卷(第10期);全文 * |
实时流体交互性模拟算法的研究与实现;钟子春;《CNKI优秀硕士学位论文全文库》;20091231;全文 * |
张文.矢量场可视化算法研究与***设计.《CNKI博士学位论文全文库》.2003,全文. |
矢量场可视化算法研究与***设计;张文;《CNKI博士学位论文全文库》;20031231;全文 * |
邵振峰等.一种基于高斯影像立方体的空间投影融合方法.《武汉大学学报》.2010,第35卷(第10期),全文. |
钟子春.实时流体交互性模拟算法的研究与实现.《CNKI优秀硕士学位论文全文库》.2009,全文. |
Also Published As
Publication number | Publication date |
---|---|
CN102521863A (zh) | 2012-06-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102521863B (zh) | 一种基于粒子***的三维流体标矢量统一动态表示方法 | |
CN109377561A (zh) | 一种基于共形几何的数模表面网格生成方法 | |
CN101989178B (zh) | 多叉树数据结构的立体环状可视化方法 | |
CN111768502A (zh) | 一种基于gpu加速技术的非结构网格二维洪水模拟*** | |
CN102663827A (zh) | 复杂淹没区域风暴潮洪水演进三维动态全过程仿真方法 | |
CN113177372B (zh) | Cesium引擎下基于非结构化网格的海洋流场可视化方法 | |
CN103366402B (zh) | 三维虚拟服饰的快速姿态同步方法 | |
CN106682262A (zh) | 一种获取飞行器流场的数值模拟方法 | |
CN102629391A (zh) | 基于数字图形介质的三维空间结构图形切割及切片方法 | |
CN104715507B (zh) | 一种基于曲面片的三维地理实体自动构建方法 | |
Zhang et al. | Adaptive hexahedral mesh generation based on local domain curvature and thickness using a modified grid-based method | |
CN109636889B (zh) | 一种基于动态缝合带的大规模三维地形模型渲染方法 | |
CN101169871A (zh) | 面向大规模静态场景实时渲染的hlod预处理方法 | |
CN105913475A (zh) | 一种时空变化过程动态可视化方法 | |
JPH08315183A (ja) | 自動メッシュ生成方法及びシステム | |
CN107767458B (zh) | 不规则三角网曲面几何拓扑一致分析方法及*** | |
CN109977551A (zh) | 一种基于nurbs的点阵材料建模方法 | |
Madrazo et al. | Air bubbles in ice by simulating freezing phenomenon | |
TWI426463B (zh) | 曲面渲染系統及方法 | |
CN100440258C (zh) | 地层和断层数据网格自动生成的***和方法 | |
Karman | Virtual control volumes for three-dimensional unstructured elliptic smoothing | |
Teng et al. | Design and Implementation of Flow Visualization Software based on MATLAB | |
Ji et al. | 3D streamline visualization for irregular flow field data | |
Xu et al. | A spatial data model and its application in 3D geological modeling | |
Karman et al. | Parallel hierarchical unstructured mesh generation with general cutting |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20140402 Termination date: 20181201 |
|
CF01 | Termination of patent right due to non-payment of annual fee |