tetgen 使用说明 点云建模的利器

导读:tetgen是一款非常优秀的3D网格剖分软件,主要面向四面体网格。是一个德国的华人写的。整个程序包才2.2M,解压缩后为6.3M。非常小。

但是功能特别强大。一直没时间使用过。最近详细读了tetgen的官方文档,100页的英文,单词量除了日常的应该不超过100个。

关键字:网格剖分,点阵建模

主要内容:

1、参数说明

2、文件读取和支持格式

3、网格控制

tetgen,借助几何文件和paraview的可视化工具,可以做很好的网格剖分。

参数说明

tetgen一共有33个参数 使用的标准格式是 tetgen [参数] 文件名 tetgen [-pYrq_Aa_miO_S_T_XMwcdzfenvgkJBNEFICQVh] input_file 后面跟下划线的,表示带有参数 (1)-p Tetrahedralizes a piecewise linear complex (PLC). p参数,读取一个四面体PLC的文件,并生成.ele,.nodes,.edge,.face文件 (2)-Y Preserves the input surface mesh (does not modify it). Y参数,保护输入的面网格不变,内部做变化 (3) -r Reconstructs a previously generated mesh. 重建之前已经生成的网格 (4)-q Refines mesh (to improve mesh quality). 加密网格,这个是可以带有参数。 (5) -R Mesh coarsening (to reduce the mesh elements). 网格粗化(减少网格元素)。 (6) -A Assigns attributes to tetrahedra in different regions. 为不同区域的四面体分配属性 (7) -a Applies a maximum tetrahedron volume constraint. 应用最大四面体体积约束 (8) -m Applies a mesh sizing function. 应用网格大小调整功能 (9) -i Inserts a list of additional points. 插入增加的点 (10) -O Specifies the level of mesh optimization. 优化网格 (11) -S Specifies maximum number of added points. 指定添加点数的最大值 (12) -T Sets a tolerance for coplanar test (default 1e-8). 设置共面测试的公差(默认为1e-8)。 (13) -X Suppressesuse ofexact arithmetic. 禁止使用精确算术 (14) -M No merge of coplanar facets or very closevertices. 不合并共面小平面或非常接近的顶点 (15) -w Generates weighted Delaunay (regular) triangulation. 生成加权的Delaunay triangulation (16) -c Retains the convex hull of the PLC. 保留PLC的凸壳 (17) -d Detects self-intersections offacetsof the PLC. 检测PLC各方面的自交点 (18) -z Numbers all output items starting fromzero. 从零开始对所有输出项进行编号 (19) -f Outputs all faces to .face file. 将所有面输出到.face文件 (20) -e Outputs all edges to.edge file. 将所有边输出到.edge文件 (21) -n Outputs tetrahedra neighbors to.neigh file. 将四面体邻居输出到 .neigh 文件 (22) -g Outputs mesh to .mesh file for viewing by Medit. 输出Medit使用的.mesh文件 (23) -k Outputs meshto .vtk file for viewing by Paraview. 输出vtk文件 (24) -J No jettison of unused vertices from output.node file. 不丢弃输出的.node文件中未使用的顶点 (25) -B Suppresses output ofboundary information. 禁止输出边界信息 (26) -N Suppresses output of .node file. 取消.node文件的输出 (27) -E Suppresses output of.ele file. 取消.ele文件的输出 (28) -F Suppresses output of .face and .edge file. 取消.face 和.edge文件的输出 (29) -I Suppresses mesh iteration numbers. 取消网格迭代次数 (30) -C Checks the consistency of the finalmesh. 检查最终网格的一致性 (31) -Q Quiet: No terminal output except errors. 输出静默:除错误外无终端输出 (32) -V Verbose: Detailed information, more terminal output. 详细信息,更多终端输出 (33) -h Help: A brief instruction for using TetGen. 帮助信息的输出

tetgen 是生成四面体网格的优秀的软件。

一、tetgen的控制台参数说明

控制台程序主要根据参数来进行。一共有33个参数。

1、命令行形式

tetgen 【参数字符串】 【文件名】

tetgen [-pYrq_Aa_miO_S_T_XMwcdzfenvgkJBNEFICQVh] input_file

参数后面跟下划线的,表示可以追加具体的数值参数。

2、无参数调用情况

在没有参数的情况下,后面必须是.node文件。

生成一个根据点文件生成的四面体网格。

3、读取

p参数

表示读取PLC网格,并生成四个文件。

.node,

.face,

.ele,

.edge

p参数,后面只能是如下6中文件格式。

.poly,

.smesh,

.off,

.stl,

.ply,

.mesh,

4、网格质量控制

(1)q参数,边长控制和角度控制

主要两个参数

radius-edge ratio 半径边比

内接圆半径与外接圆半径的比,最小值为0.612.

面角度

dihedral angle 两个面的夹角

单位为°。

tetgen -pq1.2/10 example.poly

(2)a参数,最小体积控制

给定单元的最小体积

tetgen -pa0.05 example.poly

(3)-w 加权控制

加权控制,只能针对点数据

tetgen -w example.node

(4)o参数,自动优化

tetgen -O2/7/3 example.poly

-O开关指定以下参数来控制TetGen的网格优化(mesh optimi)过程。所有参数均为整数,且必须通过斜杠 / 分开。

•最大翻转层,

•局部网格操作,

•最大迭代次数

最大翻转级别为0 ~ 10之间的整数。如果这一层为0时,只使用初等(2- 3,3 – 2,4 -4)次翻转。否则,TetGen会将翻转传播到相邻的面以搜索改进的配置。翻转级别越大,执行的搜索就越多,而TetGen可能会跑得很慢。

默认的网格优化翻转级别是3。

TetGen中有三种局部网格操作,分别是:

边/面翻转。顶点平滑。顶点插入/删除。

选择操作的整数,取值范围为0 ~ 7。这里的0表示

没有选择任何操作(因此不会进行网格优化)。每一个通过在该整数中设置相应的位来启用/禁用操作。

第1位(最低有效位)启用/禁用边/面翻转。第2位启用/禁用顶点平滑。第3位启用/禁用顶点插入/删除。

默认值是7,即这三个操作都被启用。最后一个参数指定上述局部网格操作的最大迭代次数。

缺省值为3。

例如,开关-O2/7/3指定最大翻转级别2,使用所有局部网格操作,并在网格优化中使用3次迭代。这些为TetGen中的默认参数。开关-O/1只选择边/面翻转操作,其他使用默认参数。

结束

一个6M的网格剖分工具,无论是自己写程序完善CAE过程,还是面对点云的建模,都是非常好的选择。

    THE END
    喜欢就支持一下吧
    点赞13 分享
    评论 抢沙发
    头像
    欢迎您留下宝贵的见解!
    提交
    头像

    昵称

    取消
    昵称表情代码图片

      暂无评论内容