faceNormal

Модульные векторы нормали триангуляции

Описание

F = faceNormal(TR) возвращает модульные векторы нормали во все треугольники в 2D триангуляции. faceNormal функционируйте поддерживает 2D триангуляции только. F матрица с тремя столбцами, где каждая строка содержит модульные нормальные координаты, соответствующие треугольнику в TR.ConnectivityList.

пример

F = faceNormal(TR,ID) возвращает модульный вектор нормали в каждый треугольник, индексированный ID. Идентификационные номера треугольников в TR соответствующие номера строк свойства TR.ConnectivityList.

Примеры

свернуть все

Вычислите и постройте модульные векторы нормали к фасетам триангуляции на сферической поверхности.

Создайте набор точек на сферической поверхности.

rng default;
theta = rand([100,1])*2*pi;
phi = rand([100,1])*pi;
x = cos(theta).*sin(phi);
y = sin(theta).*sin(phi);
z = cos(phi);

Триангулируйте сферу с помощью delaunayTriangulation функция.

DT = delaunayTriangulation(x,y,z);

Найдите свободные граничные фасеты триангуляции и используйте их, чтобы создать 2D триангуляцию на поверхности.

[T,Xb] = freeBoundary(DT);
TR = triangulation(T,Xb);

Вычислите центры и лицевые нормали каждого треугольного фасета в TR.

P = incenter(TR);
F = faceNormal(TR);  

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

trisurf(T,Xb(:,1),Xb(:,2),Xb(:,3), ...
     'FaceColor','cyan','FaceAlpha',0.8);
axis equal
hold on  
quiver3(P(:,1),P(:,2),P(:,3), ...
     F(:,1),F(:,2),F(:,3),0.5,'color','r');

Figure contains an axes. The axes contains 2 objects of type patch, quiver.

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

свернуть все

Представление триангуляции для 2D триангуляций только в виде скалярного triangulation или delaunayTriangulation объект.

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

Треугольная идентификация в виде скаляра или вектор-столбца, элементы которого каждый соответствует одному треугольнику в объекте триангуляции. Идентификационный номер каждого треугольника является соответствующим номером строки ConnectivityList свойство.

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

Смотрите также

| |

Введенный в R2013a