首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 其他教程 > 其他相关 >

VegaFEM免费试工

2013-10-24 
VegaFEM免费试用何为FEM还记得ipod touch5发布的那个忍者游戏么:http://v.youku.com/v_show/id_XNDU5Njc3O

VegaFEM免费试用
何为FEM

       还记得ipod touch5发布的那个忍者游戏么:http://v.youku.com/v_show/id_XNDU5Njc3ODQw.html

       这个人物身体动作的模拟用的就是FEM。

      FEM是有限元分析(Finite element method)的缩写,最早是应用在工程领域,今年随着计算机性能的不断发展,FEM在图形和游戏领域都有着很好的发展。


      整个物理模拟的过程都围绕着牛顿第二定律进行:

VegaFEM免费试工

也就是 F = ma。


何为VegaFEM

        VegaFEM是一个用于模拟三维变形物体的高效稳定的C/ C + +物理库。它被可用于计算大变形,包括几何和材料非线性模型,也可以有效地模拟线性系统。Vega加是开放源代码和自由。它的3-clause BSD许可证下发布的,这意味着它可以用来无论是在学术研究和商业应用。

        Vega的作者是Jernej Barbi?,一个MIT的年轻教授,他主页提供的图形学的相关课程也非常值得好好学习。

        官网:http://run.usc.edu/vega/


编译

    环境:Ubuntu 12.04

    VegaFEM最近发布了2.0版本,新版本增加了布料模拟,model reduction等新特性,建议直接下在最新版本。

    下载好源码之后,解压,终端cd进入目录,直接make,过1分钟左右就编译好了。

     源码中包含了一些例子,可以用刚才编译好的 interactiveDeformableSimulator 直接模拟。这个Simulator能够从配置文件中读取初始化参数,加载模型,加载单元并计算,最终用GLUT显示和交互。

VegaFEM免费试工

VegaFEM免费试工

我们可以来看看 sample 中的配置文件,了解每项的含义。

beam3_tet.config



File -> Export 导出一个 pillar.stl 模型,注意勾选ASCII选项,不然tetgen不认。

接下来要用 tetgen 来生成四面体网格,由于tetgen生成的文件并不是Vega所需要的 *.veg 文件,所有需要写个脚本来转换一下。

在tetgen目录下面

创建一个 generateVeg.sh



pillar.veg就是我们需要的。


下面就需要写代码了。

这个工程创建会有一点麻烦。

创建一个文件夹,里面创建一些文件和文件夹:

VegaFEM免费试工

将vega 的所有头文件拷贝到 inc 文件夹中, 所有 *.a文件拷贝到lib中,main.cpp 内容如下:



热点排行