exponenta event banner

convexHull

Выпуклый корпус триангуляции Делоне

Описание

пример

C = convexHull(DT) возвращает вершины выпуклого корпуса триангуляции Делоне.

пример

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

Примеры

свернуть все

Вычислите и подготовьте выпуклый корпус 2-й триангуляции Delaunay.

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

rng default;
x = rand([10,1]);
y = rand([10,1]);
DT = delaunayTriangulation(x,y);

Вычислите выпуклый корпус.

C = convexHull(DT);

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

plot(DT.Points(:,1),DT.Points(:,2),'.','MarkerSize',10)
hold on
plot(DT.Points(C,1),DT.Points(C,2),'r') 

Figure contains an axes. The axes contains 2 objects of type line.

Вычислите и подготовьте выпуклый корпус 3D Триангуляции Delaunay.

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

rng('default');
P = rand([25,3]);
DT = delaunayTriangulation(P);

Вычислите выпуклый корпус и объем, ограниченный выпуклым корпусом.

[C,v] = convexHull(DT);

Отобразите объем и постройте график выпуклого корпуса.

v
v = 0.3943
trisurf(C,DT.Points(:,1),DT.Points(:,2),DT.Points(:,3), ...
       'FaceColor','cyan')

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

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

свернуть все

Триангуляция Делоне, заданная как скаляр delaunayTriangulation объект.

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

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

свернуть все

Выпуклые вершины корпуса, возвращаемые в виде вектора-столбца или матрицы идентификаторов вершин.

  • Когда DT является 2-D триангуляцией, C - вектор столбца, содержащий последовательность идентификаторов вершин вокруг выпуклого корпуса. Идентификаторы вершин - это номера строк вершин в Points собственность.

  • Когда DT 3D триангуляция, C - 3-столбчатая матрица, содержащая список связности вершин треугольника в выпуклом корпусе.

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

Площадь или объем выпуклого корпуса, возвращаемого в виде скаляра.

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

См. также

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