【教程】24-ParaView从地形的点群数据创建三角形面
使用ParaView软件,可以从代表地形高程的点数据创建由三角形构成的面。 1、地形点群的加载 这里使用的样本数据是123.particles。这个地形数据由abc山的点群数据组成,包含(x,y,z)坐标。*.particles是VTK粒子文件格式。首先,加载圣海伦斯山的点群数据。启动ParaView,然后从工具栏选择:File > Open...在文件指定对话框中指定123.particles并加载,将显示如下的山的点群。这是一个相对密集的点群,但不像结构化网格点数据那样有规律性。变量Scalar是每个点的节点编号,但它们是不规则分布的。 2、点到x-y平面的投影 这里使用二维Delaunay三角剖分来创建面,但点数据是三维的,所以不能直接应用二维Delaunay三角剖分。因此,先将点数据投影到x-y平面上。首先,使用"Calculator"(计算器)创建z坐标的变量数据"z"。点击工具栏上的"Calculator"图标,然后像下图左侧那样设置,然后点击"Apply"(应用)。 接下来,使用创建的"z"变量,通过"Warp By scalar"(按标量扭曲)过滤器将点群投影到x-y平面上。从工具栏选择:Filters > Alphabetical > Warp By scalar根据ParaView的版本,设置如下:(对于V.5.1.0及以前的版本:)o Scalars: zo Scale Factor: -1o Normal: 0 0 1(对于V.5.1.1及以后的版本:)o Scalars: zo Scale Factor: 1o Normal: 0 0 -1点击"Apply"(应用),点群数据将被投影到x-y平面上。 3、二维Delaunay三角剖分 对x-y平面上的点群数据应用二维Delaunay三角剖分,创建三角形面。从工具栏选择:Filters > Alphabetical > Delaunay 2D保持默认设置,点击"Apply"(应用)。 可以看到,对于二维点群,已经创建了三角形面。 4、高度的恢复 现在,将投影到x-y平面上的形状恢复为三维数据。使用变量"z"和"Warp By scalar"(按标量扭曲)过滤器反向恢复。从工具栏选择:Filters > Alphabetical > Warp By scalar确认设置如下:· Scalars: z· Scale Factor: 1· Normal: 0 0 1点击"Apply"(应用),二维表面将变成三维的表面三角形。 5、当形状不是凸形时 在这个例子中,因为形状是凸的,所以没有产生不必要的三角形。但如果形状是凹形的,就需要删除不必要的三角形。通常,可能需要使用约束Delaunay方法来裁剪边界,但如果点群排列得很规则,可能只需要移除质量差的三角形。· 使用"MeshQuality"(网格质量)过滤器,用Aspect Ratio(长宽比)计算"Triangle Quality Measure"(三角形质量度量)· 使用"Threshold"(阈值)过滤器,只保留具有良好长宽比的三角形 来源:CFD饭圈