# Documentation

### This is machine translation

Translated by
Mouseover text to see original. Click the button below to return to the English verison of the page.

# triangulation class

Triangulation in 2-D or 3-D

## Description

Use `triangulation` to create an in-memory representation of any 2-D or 3-D triangulation data that is in matrix format, such as the matrix output from the `delaunay` function or other software tools. When your data is represented using `triangulation`, you can perform topological and geometric queries, which you can use to develop geometric algorithms. For example, you can find the triangles or tetrahedra attached to a vertex, those that share an edge, their circumcenters, and other features.

## Construction

`TR = triangulation(T,P)` creates a 2-D or 3-D triangulation representation using the triangulation connectivity list, `T`, and the points in matrix `P`.

`TR = triangulation(T,x,y)` creates a 2-D triangulation representation with the point coordinates specified as column vectors, `x` and `y`.

`TR = triangulation(T,x,y,z)` creates a 3-D triangulation representation with the point coordinates specified as column vectors, `x`, `y`, and `z`.

### Input Arguments

 `T` Triangulation connectivity list, specified as an `m`-by-`n` matrix, where `m` is the number of triangles or tetrahedra, and `n` is the number of vertices per triangle or tetrahedron. Each element in `T` is a Vertex ID. Each row of `T` contains the vertex IDs that define a triangle or tetrahedron. `P` Points, specified as a matrix whose columns are the `x`,` y`, (and possibly `z`) coordinates of the triangulation points. The row numbers of `P` are the vertex IDs in the triangulation. `x` x-coordinates vector, specified as a column vector containing the x-coordinates of the triangulation points. `y` y-coordinates vector, specified as a column vector containing the y-coordinates of the triangulation points. `z` z-coordinates vector, specified as a column vector containing the z-coordinates of the triangulation points.

## Properties

 `Points` Points in the triangulation, represented as a matrix containing the following information: Each row in `TR.Points` contains the coordinates of a vertex.Each row number of `TR.Points` is a vertex ID. `ConnectivityList` Triangulation connectivity list, represented as a matrix. This matrix contains the following information: Each element in `TR.ConnectivityList` is a vertex ID.Each row represents a triangle or tetrahedron in the triangulation.Each row number of `TR.ConnectivityList` is a Triangle or Tetrahedron ID.

## Methods

 barycentricToCartesian Converts point coordinates from barycentric to Cartesian cartesianToBarycentric Converts point coordinates from Cartesian to barycentric circumcenter Circumcenter of triangle or tetrahedron edgeAttachments Triangles or tetrahedra attached to specified edge edges Triangulation edges faceNormal Triangulation face normal featureEdges Triangulation sharp edges freeBoundary Triangulation facets referenced by only one triangle or tetrahedron incenter Incenter of triangle or tetrahedron isConnected Test if two vertices are connected by edge nearestNeighbor Vertex closest to specified location neighbors Neighbors to specified triangle or tetrahedron pointLocation Triangle or tetrahedron containing specified point size Size of triangulation connectivity list vertexAttachments Triangles or tetrahedra attached to specified vertex vertexNormal Triangulation vertex normal

## Copy Semantics

Value. To learn how value classes affect copy operations, see Copying Objects in the MATLAB® documentation.

## Examples

expand all

Define the points in the triangulation.

```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];```

Define the triangles. This is the triangulation connectivity list.

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

Create the triangulation representation.

`TR = triangulation(T,P)`
```TR = triangulation with properties: Points: [6×2 double] ConnectivityList: [4×3 double] ```

Examine the coordinates of the vertices of the first triangle.

`TR.Points(TR.ConnectivityList(1,:),:)`
```ans = 1.0000 6.5000 2.5000 5.0000 2.5000 8.0000 ```

expand all