受约束的三角测量代码

时间:2012-07-26 11:45:19

标签: matlab triangulation

我在matlab中寻找受约束的三角测量代码,类似于Shewchuk的triangle软件。 matlab的delaunay缺少的主要是约束,例如对网格的最小角度的约束等。

我听说使用mex有一个Shewchuk代码到matlab的端口,但我找不到它。

2 个答案:

答案 0 :(得分:1)

这是为MATLAB编写的GUI,它使用对Shewchuk的Triangle.c的外部调用:

http://marineemlab.ucsd.edu/~kkey/software/triangle/index.php

也许你可以使用它。

答案 1 :(得分:0)

我推荐使用Matlab的DelaunayTri(...,C),其中C是numEdge x 2矩阵中的约束边。边缘指定为三角形点集合中的2个索引。

输出是具有DelaunayTri类的对象。

http://www.mathworks.com.au/help/techdoc/ref/delaunaytri.html

过滤掉约束内部或外部使用的三角形  “inOutStatus()”

e.g。

dt = DelaunayTri(double(Points), double(Constraints));
outside = ~ dt.inOutStatus();
%filter using TriRep to create a new set of triangles, "tr"
tr = TriRep(dt(outside, :), dt.X);