CN107689080A - 基于三角剖分算法的sph粒子封闭曲面可视化方法 - Google Patents
基于三角剖分算法的sph粒子封闭曲面可视化方法 Download PDFInfo
- Publication number
- CN107689080A CN107689080A CN201710716840.1A CN201710716840A CN107689080A CN 107689080 A CN107689080 A CN 107689080A CN 201710716840 A CN201710716840 A CN 201710716840A CN 107689080 A CN107689080 A CN 107689080A
- Authority
- CN
- China
- Prior art keywords
- particle
- grid
- gridding
- sph
- triangulation
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/10—Constructive solid geometry [CSG] using solid primitives, e.g. cylinders, cubes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/10—Geometric effects
- G06T15/20—Perspective computation
- G06T15/205—Image-based rendering
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Geometry (AREA)
- Theoretical Computer Science (AREA)
- Computer Graphics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Processing Or Creating Images (AREA)
Abstract
基于三角剖分算法的SPH粒子封闭曲面可视化方法,包括以下步骤:1)离散粒子筛选表面粒子以及插值、拟合,利用SPH粒子特有的光滑长度作为等值面的选取手段,由MATLAB的函数meshgrid对粒子生成网格采样点,对于其中光滑长度hij在0.45~0.55的粒子选取为表面粒子;用Delaunay三角剖分将这些表面粒子划分网格;对于网格化后的三角面片的法线坐标使用每个粒子点所连接的所有三角面的面法线平均值;发现筛选后的粒子数量较少,不足以划分出网格,可在筛选粒子之前对粒子进行插值;2)粒子网格化后的可视化,将处理后的粒子网格按照通用的OBJ文件格式保存,利用现有的网格法后处理软件实现可视化、渲染,可得SPH粒子封闭曲面可视化图;具有可视化效果好,方法简单的特点。
Description
技术领域
本发明属于SPH粒子封闭曲面可视化技术领域,具体涉及基于三角剖分算法的SPH粒子封闭曲面可视化方法。
背景技术
近年来随着人们对有限元法的成熟应用,网格数值方法中的一些不足之处也暴露出来。欧拉网格数值模拟的先决条件是要在问题域生成网格,但是在不规则或者很复杂的几何形状上构造规则的网格非常困难。而且还需要一些复杂的数学转换,这些转换有时甚至比问题本身更为繁琐。基于拉格朗日网格的方法在大变形求解中同样需要繁琐费时的网格再分法。
当需要研究大量离散物质点时候,近年来兴起的新一代计算方法——无网格法更加适用。其中光滑粒子法SPH通过任意分布的粒子或节点求解具有各种边界条件的方程组得到精确数值解,这些粒子或节点不需要网格连接。SPH是一种拉格朗日类型的无网格粒子法,具有非常好的自适应性,可以处理一些具有极大变形的问题,受到众多学者的追捧。
但是,SPH方法由于没有固定关联的粒子,在后处理方面没有网格法处理简便直接。现在市场上主流的后处理软件都是基于网格的,不能直接由粒子进行模拟渲染,较好可视化更是遥遥无期。对于SPH后处理的可视化来说,一条途径就是基于这些粒子建立合适的网格,将粒子信息转换为网格信息。这样的话就可以通过主流后处理软件得到较好的可视化效果。
Delaunay三角剖分算法是一种简单直接的高效算法,离散粒子经过Delaunay三角剖分后具有最接近、唯一性、最优性、最规则、区域性等优异特性。但是通过对近年来对各种SPH后处理方法的研究,发现主要存在三个问题:1)空白单元过滤还主要停留在二维层面,没有发展到三维曲面上;2)三维粒子后处理主要停留在未封闭曲面剖分,对于封闭曲面主要靠凸包方法解决;3)对于粒子形成凹包的三角剖分,尤其是封闭凹包的曲面,没有较好的方法解决如何处理。
发明内容
为克服上述现有技术的不足,本发明的目的是提供基于三角剖分算法的SPH粒子封闭曲面可视化方法,具有
为实现上述目的,本发明采用的技术方案是:基于三角剖分算法的SPH粒子封闭曲面可视化方法,包括以下步骤:
步骤1,离散粒子筛选表面粒子以及插值、拟合,具体做法是:利用SPH粒子特有的光滑长度作为等值面的选取手段,由MATLAB的函数meshgrid对粒子生成网格采样点,并对于其中光滑长度hij在0.45~0.55的粒子选取为表面粒子;用Delaunay三角剖分将这些表面粒子划分网格;对于网格化后的三角面片的法线坐标使用每个粒子点所连接的所有三角面的面法线平均值;发现筛选后的粒子数量较少,不足以划分出较为满意的网格,可在筛选粒子之前对粒子进行插值;
步骤2,粒子网格化后的可视化,具体做法是:
将处理后的粒子网格按照通用的OBJ文件格式保存,利用现有的网格法后处理软件实现可视化、渲染,可得。
所述的插值包括以下步骤:
首先,通过对粒子数据结果建立离散函数:
F(x,y,z)=hij
其中x,y,z为粒子几何位置;
其次,在已有粒子的坐标范围按比例的增加坐标点,通过函数F插值出增加坐标点的hij值;然后再通过光滑长度对这些粒子筛选,就可以得到符合要求且数量可观的表面粒子;
最后,可以采用最近距离划分网格,利用粒子之间的距离来判断是否划分网格,得到液滴碰撞初始表面粒子网格化。
本发明的有益效果是:
本发明基于Delaunay三角剖分,利用SPH粒子的光滑长度筛选出有效表面粒子,应用插值、拟合以及求取等值面等办法,通过MATLAB、C++等软件解决了SPH粒子在三维空间中的三角网格化而无需考虑SPH粒子是否凸包、是否封闭的难点,使得SPH粒子可以在较少的数据结果上剖分较为细腻的网格。这样就可以使用网格法的渲染手段来达到较好的可视化效果。
附图说明
图1为本发明实施例选取的液滴碰撞初始粒子数据图。
图2为本发明实施例的液滴碰撞初始粒子筛选后表面粒子数据图。
图3为本发明实施例的液滴碰撞初始表面粒子未插值的网格化图。
图4为本发明对比实施例液滴碰撞初始表面粒子插值后的图。
图5为本发明对比实施例采用凸包给粒子划分网格的图。
图6为本发明实施例液滴碰撞初始表面粒子插值后网格化的图。
图7为本发明实施例液滴碰撞初始粒子网格化后可视化图。
具体实施方式
下面结合附图和实施例对本发明作进一步详细说明。
参见图1,选取两液滴相撞初始状态的未处理粒子作为例子;液滴数据存储在“液滴碰撞.dat”中,以下为本实施例的液滴碰撞的获取步骤:
1)Dat文件中可以直接获取粒子的坐标值和光滑长度;
2)已知N个粒子的坐标值X、Y、Z和光滑长度h;
3)分别求取X、Y、Z的最大值Xmax、Ymax、Zmax和最小值Xmin、Ymin、Zmin等距线性插值得到向量Xvector、Yvector、Zvector;
Xvector=[Xmin,X2,X3,X4……Xn……Xmax];
Yvector=[Ymin,Y2,Y3,Y4……Yn……Ymax];
Zvector=[Zmin,Z2,Z3,Z4……Zn……Zmax];
4)利用这三个递增等距向量可以构建出一个N×N×N的矩阵,即Vx,y,z=[Sx,y,1…Sx,y,s…Sx,y,z];
5)对应的每一个我们需要对应的光滑长度h;
6)通过已有的N个粒子的坐标值X、Y、Z和光滑长度h进行插值,得到一个近似函数F(x,y,z)=h;
7)通过函数F(x,y,z)=h可以求得矩阵S中每个元素对应的光滑长度h;
8)通过筛选滑长度h在0.5附近(0.45-0.55)的元素值,这些粒子可以组成等值面;
9)由于这些粒子数量足够并且位置X、Y、Z都是单调递增且等距,可以通过让每个粒子连接距离自己最近的两个点组成三角形,划分三角网格,避免了Delaunay算法中的只能凸包的障碍,也避免里AlphaShapes算法中的需要设置滚边长度的不确定性;
10)获取的划分好的网格,对于每个三角面片可以通过三点坐标求出该面片的法线,将法线归一化。通过三点距离面片中心距离来取权重,获得点的法线值。将点所连接的面的法线值求和平均即使该点的法线值。
基于三角剖分算法的SPH粒子封闭曲面可视化方法,包括以下步骤:
步骤1,离散粒子筛选表面粒子以及插值、拟合,具体做法是:利用SPH粒子特有的光滑长度作为等值面的选取手段,由MATLAB的函数mesh grid对粒子生成网格采样点,并对于其中光滑长度hij在0.45~0.55的粒子选取为表面粒子,区间越小精度越高,得到如图2所示的液滴碰撞初始粒子筛选后表面粒子数据,图2中所示粒子是将图1中光滑长度在0.45~0.55之外的粒子剔除后所剩例子;用Delaunay三角剖分将这些表面粒子划分网格,参见图3,图3是液滴碰撞初始表面粒子(未插值)网格化。将图2中的粒子用Alpha Shapes的方法联结成三角网格;对于网格化后的三角面片的法线坐标使用每个粒子点所连接的所有三角面的面法线平均值;发现筛选后的粒子数量较少,不足以划分出较为满意的网格,可在筛选粒子之前对粒子进行插值;
步骤2,粒子网格化后的可视化,具体做法是:
将处理后的粒子网格按照通用的OBJ文件格式保存,利用现有的网格法后处理软件实现可视化、渲染,得到如图7所示的液滴碰撞初始粒子网格化后可视化图。
所述的插值包括以下步骤:
首先,通过对粒子数据结果建立离散函数:
F(x,y,z)=hij
其中x,y,z为粒子几何位置;
其次,在已有粒子的坐标范围按比例的增加坐标点,通过函数F插值出增加坐标点的hij值;然后再通过光滑长度对这些粒子筛选,就可以得到符合要求且数量可观的表面粒子;
在三维空间中对离散点划分曲面网格较为复杂,如果采用传统Delaunay三角剖分就会立体的划分为有限数量个三棱锥,不符合要求。如果采用离散点拟合曲面会发现由于是封闭曲面,会在同一个x,y坐标值时存在两个z值;采用球坐标系的话会存在类似的问题;
如果采用凸包来求取边界的网格划分的话,发现如图4中粒子在中间部位存在凹陷,不符合凸包,划分出的网格不正确,如图5所示。图5就是采用凸包的方法求取网格,没有在应该凹陷的地方凹陷,得不到正确的网格。
如果对粒子我们采用滚边法来划分粒子的话,可以基本达到要求。但是滚边法要求设置一个最小半径来确定滚边的大小,不具有一般性。对于不同的粒子要求采取不同的滚边,不值得采纳;
最后,可以采用最近距离划分网格,利用粒子之间的距离来判断是否划分网格,得到液滴碰撞初始表面粒子网格化,得到如图6所示的视图。图6所示的网格与实际数据(dat文件)基本吻合,图中坐标单位皆为毫米。
Claims (2)
1.基于三角剖分算法的SPH粒子封闭曲面可视化方法,其特征在于,包括以下步骤:
步骤1,离散粒子筛选表面粒子以及插值、拟合,具体做法是:利用SPH粒子特有的光滑长度作为等值面的选取手段,由MATLAB的函数meshgrid对粒子生成网格采样点,并对于其中光滑长度hij在0.45~0.55的粒子选取为表面粒子;用Delaunay三角剖分将这些表面粒子划分网格;对于网格化后的三角面片的法线坐标使用每个粒子点所连接的所有三角面的面法线平均值;发现筛选后的粒子数量较少,不足以划分出较为满意的网格,可在筛选粒子之前对粒子进行插值;
步骤2,粒子网格化后的可视化,具体做法是:
将处理后的粒子网格按照通用的OBJ文件格式保存,利用现有的网格法后处理软件实现可视化、渲染,可得。
2.根据权利要求1所述的基于三角剖分算法的SPH粒子封闭曲面可视化方法,其特征在于,所述的插值包括以下步骤:
首先,通过对粒子数据结果建立离散函数:
F(x,y,z)=hij
其中x,y,z为粒子几何位置;
其次,在已有粒子的坐标范围按比例的增加坐标点,通过函数F插值出增加坐标点的hij值;然后再通过光滑长度对这些粒子筛选,就可以得到符合要求且数量可观的表面粒子;
最后,可以采用最近距离划分网格,利用粒子之间的距离来判断是否划分网格,得到液滴碰撞初始表面粒子网格化。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710716840.1A CN107689080A (zh) | 2017-08-21 | 2017-08-21 | 基于三角剖分算法的sph粒子封闭曲面可视化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710716840.1A CN107689080A (zh) | 2017-08-21 | 2017-08-21 | 基于三角剖分算法的sph粒子封闭曲面可视化方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107689080A true CN107689080A (zh) | 2018-02-13 |
Family
ID=61153512
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710716840.1A Pending CN107689080A (zh) | 2017-08-21 | 2017-08-21 | 基于三角剖分算法的sph粒子封闭曲面可视化方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107689080A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115659769A (zh) * | 2022-09-15 | 2023-01-31 | 深圳十沣科技有限公司 | 模型粒子生成方法、装置、设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101329772A (zh) * | 2008-07-21 | 2008-12-24 | 北京理工大学 | 一种基于sph的运动物体与水交互的仿真建模方法 |
DE102008048479A1 (de) * | 2008-03-05 | 2009-09-10 | Livermore Software Technology Corporation, Livermore | Verfahren und Systeme der technischen Analyse unter Verwendung eines hybriden Ansatzes mit FEM und adaptiver SPH |
JP2011076600A (ja) * | 2009-09-29 | 2011-04-14 | Livermore Software Technology Corp | 多目的進化型アルゴリズムに基づく工学設計の最適化の方法およびシステム |
CN102930583A (zh) * | 2012-10-17 | 2013-02-13 | 中国科学院自动化研究所 | 互动式生成液滴效果的方法 |
CN103020356A (zh) * | 2012-12-13 | 2013-04-03 | 重庆大学 | 一种非封闭图形的三角剖分算法 |
-
2017
- 2017-08-21 CN CN201710716840.1A patent/CN107689080A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102008048479A1 (de) * | 2008-03-05 | 2009-09-10 | Livermore Software Technology Corporation, Livermore | Verfahren und Systeme der technischen Analyse unter Verwendung eines hybriden Ansatzes mit FEM und adaptiver SPH |
CN101329772A (zh) * | 2008-07-21 | 2008-12-24 | 北京理工大学 | 一种基于sph的运动物体与水交互的仿真建模方法 |
JP2011076600A (ja) * | 2009-09-29 | 2011-04-14 | Livermore Software Technology Corp | 多目的進化型アルゴリズムに基づく工学設計の最適化の方法およびシステム |
CN102930583A (zh) * | 2012-10-17 | 2013-02-13 | 中国科学院自动化研究所 | 互动式生成液滴效果的方法 |
CN103020356A (zh) * | 2012-12-13 | 2013-04-03 | 重庆大学 | 一种非封闭图形的三角剖分算法 |
Non-Patent Citations (4)
Title |
---|
杨秀峰等: ""SPH方法Delaunay三角刨分与自由液面重构"", 《计算机力学学报》 * |
郑俊: ""SPH 基本问题研究及其在高速水下物体流场模拟中的应用"", 《中国优秀博士学位论文全文数据库(电子期刊)基础科学辑》 * |
郑俊等: ""SPH后处理研究"", 《计算物理》 * |
马慧芳: ""光滑粒子流体动力学方法在计算地形指数方面的应用"", 《中国优秀硕士学位论文全文数据库(电子期刊)基础科学辑》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115659769A (zh) * | 2022-09-15 | 2023-01-31 | 深圳十沣科技有限公司 | 模型粒子生成方法、装置、设备及存储介质 |
CN115659769B (zh) * | 2022-09-15 | 2023-11-03 | 深圳十沣科技有限公司 | 模型粒子生成方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Remacle et al. | High‐quality surface remeshing using harmonic maps | |
CN105513131B (zh) | 一种顾及褶皱的三维地质结构模型角点网格剖分方法 | |
CN101339669A (zh) | 基于正侧面影像的三维人脸建模方法 | |
CN102254343A (zh) | 一种基于凸包与obb的三维网格模型骨架提取方法 | |
CN110322547A (zh) | 一种储层自适应四面体剖分方法 | |
CN110827302A (zh) | 基于深度图卷积网络的点云目标提取方法及装置 | |
CN111028335A (zh) | 一种基于深度学习的点云数据的分块面片重建方法 | |
He et al. | Manifold T-spline | |
CN102682115A (zh) | 一种基于Voronoi图的点密度专题图制作方法 | |
CN101276484A (zh) | 基于调和映射的网格生成方法 | |
CN104361578B (zh) | 一种多尺度精度控制下的层次化网格分割方法 | |
CN108846845A (zh) | 基于缩略图与分层模糊聚类的sar图像分割方法 | |
CN106875487A (zh) | 一种基于邻域作用力的地质六面体网格平滑方法 | |
CN118134984A (zh) | 一种基于特征边界线的三维重建算法及三维重建系统 | |
CN107689080A (zh) | 基于三角剖分算法的sph粒子封闭曲面可视化方法 | |
KR100414058B1 (ko) | 3차원 다각형 표면의 리메슁 최적화 방법 및 장치 | |
CN105957141B (zh) | 一种基于对称结构的三维花朵建模方法 | |
CN105931297A (zh) | 三维地质表面模型中的数据处理方法 | |
JPH08315183A (ja) | 自動メッシュ生成方法及びシステム | |
An et al. | Self-adaptive polygon mesh reconstruction based on ball-pivoting algorithm | |
CN107767458B (zh) | 不规则三角网曲面几何拓扑一致分析方法及系统 | |
CN115690323A (zh) | 服装智能推板方法和装置 | |
Lee et al. | Computing the medial surface of a 3-D boundary representation model | |
Benzley et al. | Pre-and post-processing for the finite element method | |
Nie et al. | Bas-relief generation from point clouds based on normal space compression with real-time adjustment on CPU |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180213 |