exponenta event banner

триангуляция

Триангуляция в 2-D или 3-D

Описание

Использовать triangulation для создания в памяти представления любых 2-D или 3-D данных триангуляции, которые находятся в матричном формате, например матричных выходных данных delaunay функции или других программных средств. Когда данные представлены с помощью triangulation, можно выполнять топологические и геометрические запросы, которые можно использовать для разработки геометрических алгоритмов. Например, можно найти треугольники или тетраэдры, присоединенные к вершине, те, которые имеют общее ребро, их циркумцентры и другие элементы.

Создание

Создание triangulation объект, используйте triangulation с входными аргументами, определяющими точки триангуляции и связность.

Описание

пример

TR = triangulation(T,P) создает 2-D или 3-D триангуляционное представление с помощью списка связности триангуляции T и точки в матрице P.

TR = triangulation(T,x,y) создает представление триангуляции 2-D с координатами точек, заданными как векторы столбцов x и y.

TR = triangulation(T,x,y,z) создает представление триангуляции 3-D с координатами точек, заданными как векторы столбцов x, y, и z.

Входные аргументы

развернуть все

Список соединений триангуляции, указанный как mоколо-n матрица, где m - число треугольников или тетраэдров, и n - число вершин на треугольник или тетраэдр. Каждая строка T содержит идентификаторы вершин, определяющие треугольник или тетраэдр. Идентификаторы вершин - это номера строк входных точек. Идентификатор треугольника или тетраэдра в триангуляции является соответствующим номером строки в T.

Точки, указанные как матрица, столбцами которой являются координаты x, y и (возможно) z- координаты точек триангуляции. Номера строк P - идентификаторы вершин в триангуляции.

x - координаты точек триангуляции, заданные в виде вектора столбца.

y - координаты точек триангуляции, заданные в виде вектора столбца.

z-координаты точек триангуляции, заданные в виде вектора столбца.

Свойства

развернуть все

Точки триангуляции, представленные в виде матрицы со следующими характеристиками:

  • Каждая строка в TR.Points содержит координаты вершины.

  • Каждый номер строки TR.Points является идентификатором вершины.

Список связности триангуляции, представленный в виде матрицы со следующими характеристиками:

  • Каждый элемент в TR.ConnectivityList является идентификатором вершины.

  • Каждая строка представляет треугольник или тетраэдр в триангуляции.

  • Каждый номер строки TR.ConnectivityList представляет собой идентификатор треугольника или тетраэдра.

Функции объекта

barycentricToCartesianПреобразовать координаты из барицентрических в декартовы
cartesianToBarycentricПреобразовать координаты из декартовых в барицентрические
circumcenterЦиркумцентр треугольника или тетраэдра
edgeAttachmentsТреугольники или тетраэдры, присоединенные к указанной кромке
edgesРебра триангуляции
faceNormalНормальные векторы единиц триангуляции
featureEdgesОстрые кромки триангуляции поверхности
freeBoundaryГрани свободной границы
incenterИнцентр элементов триангуляции
isConnectedПроверка, связаны ли две вершины ребром
nearestNeighborВершина, ближайшая к указанной точке
neighborsСоседи треугольника или тетраэдра
pointLocationТреугольник или тетраэдр, охватывающий точку
sizeРазмер списка соединений триангуляции
vertexAttachmentsТреугольники или тетраэдры, присоединенные к вершине
vertexNormalВершина триангуляции нормаль

Примеры

свернуть все

Определите и постройте график точек в 2-D триангуляции.

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)

Figure contains an axes. The axes contains an object of type line.

Проверьте координаты вершин первого треугольника.

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

    1.0000    6.5000
    2.5000    5.0000
    2.5000    8.0000

Представлен в R2013a