Main Content

convexHull

들로네 삼각분할의 볼록 껍질

설명

예제

C = convexHull(DT)는 들로네 삼각분할의 볼록 껍질 꼭짓점을 반환합니다.

예제

[C,v] = convexHull(DT)는 볼록 껍질에 의해 경계가 지정된 면적 또는 부피도 반환합니다.

예제

모두 축소

2차원 들로네 삼각분할의 볼록 껍질을 계산하고 플로팅합니다.

2차원 점 집합에서 들로네 삼각분할을 만듭니다.

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 object. The axes object contains 2 objects of type line. One or more of the lines displays its values using only markers

3차원 들로네 삼각분할의 볼록 껍질을 계산하고 플로팅합니다.

3차원 점 집합에서 들로네 삼각분할을 만듭니다.

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 object. The axes object contains an object of type patch.

입력 인수

모두 축소

들로네 삼각분할로, 스칼라 delaunayTriangulation 객체로 지정됩니다.

데이터형: delaunayTriangulation

출력 인수

모두 축소

볼록 껍질 꼭짓점으로, 꼭짓점 ID로 구성된 열 벡터 또는 행렬로 반환됩니다.

  • DT가 2차원 삼각분할인 경우 C는 볼록 껍질 주변의 꼭짓점 ID 시퀀스를 포함하는 열 벡터입니다. 꼭짓점 ID는 Points 속성에 있는 꼭짓점의 행 번호입니다.

  • DT가 3차원 삼각분할인 경우 C는 볼록 껍질에 있는 삼각형 꼭짓점의 연결 목록이 포함된 3열 행렬입니다.

데이터형: double

볼록 껍질의 면적 또는 부피로, 스칼라로 반환됩니다.

데이터형: double

확장 기능

스레드 기반 환경
MATLAB®의 backgroundPool을 사용해 백그라운드에서 코드를 실행하거나 Parallel Computing Toolbox™의 ThreadPool을 사용해 코드 실행 속도를 높일 수 있습니다.

버전 내역

R2013a에 개발됨