Main Content

triangulation

二维或三维三角剖分

说明

使用 triangulation 创建矩阵格式的任何二维或三维三角剖分数据的内存中表示法,例如 delaunay 函数或其他软件工具的矩阵输出。使用 triangulation 表示数据时,可以执行拓扑和几何查询,使用这些查询可开发几何算法。例如,您可以查找连接到某一顶点或共享某一条边的三角形或四面体,查找它们的外心,或查找其他特征。

创建对象

要创建 triangulation 对象,请使用 triangulation 函数,并利用输入参量定义三角剖分的点和连接情况。

描述

示例

TR = triangulation(T,P) 使用三角剖分连接列表 T 和矩阵 P 中的点创建二维或三维三角剖分表示。

TR = triangulation(T,x,y) 使用以列向量 xy 形式指定的点坐标创建二维三角剖分表示。

TR = triangulation(T,x,y,z) 使用以列向量 xyz 形式指定的点坐标创建三维三角剖分表示。

输入参量

全部展开

三角剖分连接列表,指定为 m×n 的矩阵,其中 m 是三角形或四面体的数量,n 是每个三角形或四面体的顶点数量。T 的每行包含用于定义三角形或四面体的顶点 ID。顶点 ID 是输入点的行号。三角剖分中三角形或四面体的 ID 是 T 中的对应行号。

点,以矩阵形式指定,矩阵的列对应于三角剖分点的 x 坐标、y 坐标和(可能的)z 坐标。P 的行号是三角剖分中的顶点 ID。

三角剖分点的 x 坐标,指定为列向量。

三角剖分点的 y 坐标,指定为列向量。

三角剖分点的 z 坐标,指定为列向量。

属性

全部展开

三角剖分点,表示为具有以下特征的矩阵:

  • TR.Points 中的每行包含顶点坐标。

  • TR.Points 的每个行号是一个顶点 ID。

三角剖分连接列表,以具有下列特征的矩阵的形式表示:

  • TR.ConnectivityList 中的每个元素是顶点 ID。

  • 每行代表三角剖分中的一个三角形或四面体。

  • TR.ConnectivityList 的每个行号是一个三角形或四面体 ID。

对象函数

barycentricToCartesian将重心坐标转换为笛卡尔坐标
cartesianToBarycentric将坐标从笛卡尔坐标转换为重心坐标
circumcenter三角形或四面体的外心
edgeAttachments连接到指定边缘的三角形或四面体
edges三角剖分边缘
faceNormal三角剖分单位法向量
featureEdges曲面三角剖分的锐边
freeBoundary自由边界面
incenter三角剖分元素的内心
isConnected测试两个顶点是否通过一条边相连接
nearestNeighbor最靠近指定点的顶点
neighbors三角形或四面体的相邻对象
pointLocation包围点的三角形或四面体
size三角剖分连接列表的大小
vertexAttachments连接到顶点的三角形或四面体
vertexNormal三角剖分顶点法向

示例

全部折叠

定义并绘制二维三角剖分中的点。

P = [ 2.5    8.0
      6.5    8.0
      2.5    5.0
      6.5    5.0
      1.0    6.5
      8.0    6.5];

定义三角剖分连接列表。

T = [5  3  1;
     3  2  1;
     3  4  2;
     4  6  2];

创建并绘制三角剖分表示。

TR = triangulation(T,P)
TR = 
  triangulation with properties:

              Points: [6x2 double]
    ConnectivityList: [4x3 double]

triplot(TR)

检查第一个三角形的顶点的坐标。

TR.Points(TR.ConnectivityList(1,:),:)
ans = 3×2

    1.0000    6.5000
    2.5000    5.0000
    2.5000    8.0000

扩展功能

版本历史记录

在 R2013a 中推出