zoukankan      html  css  js  c++  java
  • 专注网格剖分

    提要

           记得大三那一年有一门课叫做高等有限元,最后的作业就是网格剖分算法的实现,我和同学一起花了些时间做了一个Qt程序,他写算法,我写界面,最后成绩竟然出奇的拿了90多...

            今天要介绍的这款软件TetGen就是一款网格剖分的软件,算是力学计算中的前处理,他能够将输入的三维模型剖分成一个个的单元,如下图:



           最左边的是原三维模型,中间图为Delaunay算法生成的四面体网格,最右边的图为在tetview中查看剖分的结果。

           官网的手册里还有一些关于剖分算法的说明,有兴趣的可以去看看。

           官网:http://tetgen.berlios.de/

           环境: ubuntu 12.04 32bit 


    编译

    下载源码之后cd进目录,然后执行

    make

    编译完成之后,目录下就会生成一个名为 tetgen 的可执行文件。


    运行tetview

           这个是用于查看网格模型的工具。 因为这个东西比较老,所以首先要安装一些比较老的库。

           g77

    下载好之后解压,cd进目录运行:

    sudo ./install.sh


           stdc++5

     sudo apt-get install libstdc++5 


     将下载好linux版本的tetivew解压,再将example解压到相同的目录,终端cd进目录,执行:

    ./tetview pmdc.1

    一切配置正确的话,tetview就运行了。很简单的一个操作界面,按F1沿着plane剖分,效果就像这样:



    网格剖分实战

    首先打开blender,Add->Mesh->Torus,添加一个圆环,然后File->Export->Stanford(.ply),导出ply文件,待会用于剖分。



    将导出的ply模型放到tetgen的目录,终端执行:

    ./tetgen -p torus.ply 



    再将生成的文件拷贝到tetiew的目录下,执行

    ./tetview torus.1.ele


    相关下载

    g77 

  • 相关阅读:
    java后台读取配置文件
    冒泡排序
    均分火柴
    Dos 批处理 Shutdown
    时间复杂度分析
    Python冒泡排序
    Python装饰器
    获取状态栏高度
    利用zxing生成二维码
    Android下利用zxing类库实现扫一扫
  • 原文地址:https://www.cnblogs.com/suncoolcat/p/3289792.html
Copyright © 2011-2022 走看看