三角网格剖分工具 Triangle 安装及使用

0 Triangle资源

  下载Triangle源码,见http://www.cs.cmu.edu/~quake/triangle.html

1 Triangle安装

  triangle目录下共有两个主体程序:triangle网格剖分程序,showme可视化程序。可以直接进入triangle目录,make编译。但因为其中showme只能在X Windows下使用,所以在CentOS下编译make只会将triangle编译好,而编译showme时会报错。

  在其README中有提示可以分别编译Triangle和showme,其中triangle编译命令如下:

    cc -O -o triangle triangle.c -lm

  对于showme来说,首先要安装X11相关的库。

  具体安装步骤如下:

  1.       执行yum install libX11-devel,安装相关软件
  2.       执行cc -O -o showme showme.c -lX11对showme进行编译

  最后生成的可执行文件可以对Triangle生成的网格进行可视化。

2 Triangle剖分网格

  首先根据自己的设计形状,编写XX.poly(我称之为控制文件,估计不太准去)。

文件名  xx.poly,编写格式如下:

# Points(点信息)
15 2 0 1   

(15个点  二维坐标  第三项??  是否有标记(1-有,0-没有))
# outer extend boundary
0   -5000 0 0
1   -5000 -5000 0
2   5000  -5000 0
3   5000  0 0
# research boundary
4   -200  0 0
5   -200  -200 0
6   200  -200  0
7   200  0  0
# tunnel boundary
8   -200  -94  0
9   -200  -106 0
10  0  -106  0
11  0  -94   0

# add source point marker is 99
12   0    -95    99
13   0    -100    99
14   0    -105    99

# Segments with boundary markers.(线)
12 1(12条线   标记(1-有,0-没有))
# outer extend boundary
0    0    1    1
1    1    2    2
2    2    3    3
3    0    3    4
# research boundary
4       4       5    5
5    5    6    5
6    6    7    5
7    7    4    5
# tunnel boundary
8    8    9    5
9    9    10    5
10    10    11    5
11    11    8    5

# hole(空洞)
1(1个空洞)
0 -100 -100(0号空洞,二维坐标(x y))

# regions(区域)
2(2个区域)
0    -2000    -2000     -1    5000  (0号区域  x  y  标记为-1  最大面积5000)    
1    100    -150    1    1               (1号区域  x  y  标记为1    最大面积1)

 

编辑好控制文件即可利用Triangle程序进行剖分

./triangle -pq30zaneA xx.poly

可用showme程序查看网格剖分情况

./showme xx.*

Triangle生成的三角网格需要用showme可视化,但是该软件只能在X Windows下使用,所以在CentOS下编译showme,首先需要安装X11相关的库,

执行yum install libX11-devel
安装完成后执行cc -O -o showme showme.c -lX11

对showme进行编译,生成相应的执行文件,可以对Triangle生成的任意文件进行显示。

 

  • 0
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 8
    评论
/*****************************************************************************/ /* */ /* 888888888 ,o, / 888 */ /* 888 88o88o " o8888o 88o8888o o88888o 888 o88888o */ /* 888 888 888 88b 888 888 888 888 888 d888 88b */ /* 888 888 888 o88^o888 888 888 "88888" 888 8888oo888 */ /* 888 888 888 C888 888 888 888 / 888 q888 */ /* 888 888 888 "88o^888 888 888 Cb 888 "88oooo" */ /* "8oo8D */ /* */ /* A Two-Dimensional Quality Mesh Generator and Delaunay Triangulator. */ /* (triangle.c) */ /* */ /* Version 1.6 */ /* July 28, 2005 */ /* */ /* Copyright 1993, 1995, 1997, 1998, 2002, 2005 */ /* Jonathan Richard Shewchuk */ /* 2360 Woolsey #H */ /* Berkeley, California 94705-1927 */ /* jrs@cs.berkeley.edu */ /* */ /* This program may be freely redistributed under the condition that the */ /* copyright notices (including this entire header and the copyright */ /* notice printed when the `-h' switch is selected) are not removed, and */ /* no compensation is received. Private, research, and institutional */ /* use is free. You may distribute modified versions of this code UNDER */ /* THE CONDITION THAT THIS CODE AND ANY MODIFICATIONS MADE TO IT IN THE */ /* SAME FILE REMAIN UNDER COPYRIGHT OF THE ORIGINAL AUTHOR, BOTH SOURCE */ /* AND OBJECT CODE ARE MADE FREELY AVAILABLE WITHOUT CHARGE, AND CLEAR */ /* NOTICE IS GIVEN OF THE MODIFICATIONS. Distribution of this code as */ /* part of a commercial system is permissible ONLY BY DIRECT ARRANGEMENT */ /* WITH THE AUTHOR. (If you are not directly supplying this code to a */ /* customer, and you are instead telling them how they can obtain it for */ /* free, then you are not required to make any arrangement with me.)
### 回答1: Qt Triangle库是一个用于三角剖分的库,可以在Qt应用程序中使用。以下是安装使用Qt Triangle库的步骤: 1. 下载Qt Triangle库 可以在GitHub上下载Qt Triangle库的源代码:https://github.com/ericjang/triangle-qt 2. 编译Qt Triangle库 在下载源代码后,使用Qt Creator打开triangle-qt.pro文件,然后使用Qt Creator构建工具构建库。构建完成后,将生成Triangle库的动态链接库文件和头文件。 3. 将Triangle库添加到Qt项目中 为了在Qt项目中使用Triangle库,需要将Triangle库的头文件添加到Qt项目中,并将Triangle库的动态链接库文件添加到Qt项目的链接器设置中。 4. 在Qt项目中使用Triangle库 在Qt项目中使用Triangle库,需要包含Triangle库的头文件,并调用Triangle库的函数进行三角剖分。例如,下面的代码展示了如何使用Triangle库进行三角剖分: ```c++ #include <triangle.h> int main(int argc, char *argv[]) { // 三角剖分的输入 triangulateio input; // 初始化输入 input.numberofpoints = 4; input.pointlist = new double[8]; input.pointlist[0] = 0; input.pointlist[1] = 0; input.pointlist[2] = 0; input.pointlist[3] = 1; input.pointlist[4] = 1; input.pointlist[5] = 0; input.pointlist[6] = 1; input.pointlist[7] = 1; // 调用Triangle库进行三角剖分 triangulate("p", &input, NULL, NULL); // 输出三角剖分结果 triangulateio output = input; std::cout << "Number of triangles: " << output.numberoftriangles << std::endl; // 释放内存 delete[] input.pointlist; delete[] output.pointlist; delete[] output.trianglelist; return 0; } ``` 以上是使用Qt Triangle库的基本步骤。如果需要更详细的使用方法,可以参考Triangle库的文档。 ### 回答2: Qt是一种流行的跨平台C++应用程序开发框架,其中包含了许多实用的库。其中,Triangle库是一个用于处理三角网格的库,可用于进行二维形状的分析和可视化。 获得Triangle库非常简单。首先,我们需要在网上下载Triangle库的源代码。可以在Triangle库的官方网站或者其他源代码托管平台上找到它。下载后,我们可以将源代码文件夹保存到本地。 接下来,我们需要将Triangle库源代码编译为可执行文件,以便在我们的项目中使用。打开命令行终端,并导航到Triangle库源代码所在的文件夹。然后,执行编译命令,根据操作系统和编译器的不同,可以使用不同的编译命令。编译成功后,我们将会得到一个可执行文件,可以在项目中使用该文件。 要使用Triangle库,我们需要将其包含在我们的项目中。在Qt项目中,我们可以在.pro配置文件中添加库的引用。找到配置文件中的LIBS变量,并在其中添加Triangle库的路径。例如,LIBS += -L/path/to/triangle_library -ltriangle,其中/path/to/triangle_library是Triangle库所在的路径。 在项目中,我们可以使用Triangle库提供的函数和类来操作三角网格。可以根据具体需求进行网格的创建、编辑、操作和可视化。Triangle库提供了丰富的功能,如计算面积、法线、网格细化以及进行有限元分析等。我们可以通过查阅Triangle库的文档和例子来学习和了解如何使用这些功能。 总结来说,要获得Triangle库,我们需要下载并编译其源代码。安装时,将Triangle库添加到Qt项目中。在使用过程中,通过调用Triangle库提供的函数和类来实现所需的功能。这样,我们就可以开始使用Triangle库来处理三角网格了。 ### 回答3: Qt Triangle库是一个用于三角剖分的库,可以帮助开发者方便地进行三角剖分操作。下面将分步回答如何获取、安装使用这个库。 获取Qt Triangle库: 1. 在Qt官网的下载页面或Qt商店中找到Triangle库的下载链接。 2. 点击链接下载Triangle库的源代码压缩包,保存到本地。 安装Qt Triangle库: 1. 解压下载的源代码压缩包。 2. 打开Qt Creator集成开发环境。 3. 在Qt Creator的“帮助”菜单中,选择“关于插件”选项。 4. 在“关于插件”对话框中,点击“可用插件”选项卡。 5. 找到Triangle库的插件并勾选。 6. 点击“确定”按钮,Qt Creator将自动下载并安装该库。 使用Qt Triangle库: 1. 在你的Qt项目中,包含Triangle库的头文件。 2. 在代码中引入Triangle命名空间,例如:using namespace Triangle。 3. 创建一个Triangle实例对象,例如:Triangle triangle。 4. 使用Triangle对象的函数进行三角剖分操作,例如:triangle.triangulate(<输入参数>)。 5. 使用Triangle对象的其他函数获取三角剖分的结果,例如:triangle.getTriangles()。 以上就是关于Qt Triangle库的获取、安装使用的简要说明。具体的细节和使用方法可以参考Qt官方文档或库的示例代码。
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值