exponenta event banner

выпуклая оболочка

Класс: DelaunayTri

(Не рекомендуемый) Выпуклая оболочка

Примечание

convexHull(DelaunayTri) не рекомендуется. Используйте convexHull(delaunayTriangulation) вместо этого.

DelaunayTri не рекомендуется. Использование delaunayTriangulation вместо этого.

Синтаксис

K = convexHull(DT)
[K AV] = convexHull(DT)

Описание

K = convexHull(DT) возвращает индексы в массив точек DT.X, которые соответствуют вершинам выпуклой оболочки.

[K AV] = convexHull(DT) возвращает выпуклую оболочку и область или объем, ограниченный выпуклой оболочкой.

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

DTТриангуляция Делоне.

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

KЕсли точки лежат на 2D пробеле, K является вектор-столбцом длины numf. В противном случае K является матрицей размера numf-by-ndim, numf, являющийся количеством фасетов в выпуклой оболочке и ndim размерность пробела, где точки находятся.
AVОбласть или объем выпуклой оболочки.

Примеры

Пример 1

Вычислите выпуклую оболочку набора случайных точек, расположенных в модульном квадрате на 2D пробеле.

x = rand(10,1)
y = rand(10,1)
dt = DelaunayTri(x,y)
k = convexHull(dt)
plot(dt.X(:,1),dt.X(:,2), '.', 'markersize',10); hold on;
plot(dt.X(k,1),dt.X(k,2), 'r'); hold off;

Пример 2

Вычислите выпуклую оболочку набора случайных точек, расположенных в модульном кубе на 3-D пробеле и объеме, ограниченном выпуклой оболочкой.

X = rand(25,3)
dt = DelaunayTri(X)
[ch v] = convexHull(dt)
trisurf(ch, dt.X(:,1),dt.X(:,2),dt.X(:,3), 'FaceColor', 'cyan')

Больше о

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