freeBoundary

Свободные граничные фасеты

Синтаксис

F = freeBoundary(TR)
[F,P] = freeBoundary(TR)

Описание

пример

F = freeBoundary(TR) возвращает свободные граничные фасеты треугольников или тетраэдров в TR. Фасет в TR находится на свободном контуре, если на это ссылаются только один треугольник или четырехгранник.

пример

[F,P] = freeBoundary(TR) также возвращает матрицу, содержащую вершины свободных граничных фасетов.

Примеры

свернуть все

Можно использовать функцию freeBoundary, чтобы подсветить внешние края 2D Триангуляции Делоне.

Создайте триангуляцию из 2D набора точек.

x = gallery('uniformdata',[20,1],0);
y = gallery('uniformdata',[20,1],1);
TR = delaunayTriangulation(x,y);

Найдите свободные граничные ребра.

F = freeBoundary(TR);

Постройте триангуляцию и подсветите свободные граничные ребра красного цвета.

triplot(TR)
hold on
plot(x(F),y(F),'-r','LineWidth',2)

Можно использовать функцию freeBoundary, чтобы извлечь фасеты 3-D триангуляции, которые покрывают поверхность объекта.

Загрузите 3-D триангуляцию.

load tetmesh
TR = triangulation(tet,X);

Вычислите граничную триангуляцию.

[F,P] = freeBoundary(TR);

Постройте граничную триангуляцию.

trisurf(F,P(:,1),P(:,2),P(:,3), ...
       'FaceColor','cyan','FaceAlpha',0.8);

Входные параметры

свернуть все

Представление триангуляции, заданное как скалярный объект triangulation или delaunayTriangulation.

Типы данных: triangulation | delaunayTriangulation

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

свернуть все

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

Если вы вызываете freeBoundary с одним выходным аргументом, то элементы F являются номерами строк в свойстве Points входной триангуляции. Если вы вызываете freeBoundary с двумя выходными аргументами, то элементы F являются номерами строк в P.

Типы данных: double

Свободные граничные точки, возвращенные как матрица, содержащая координаты вершин свободных граничных фасетов. Каждая строка P содержит координаты вершины.

Типы данных: double

Введенный в R2013a