Main Content

freeBoundary

(권장되지 않음) 자유 경계 패싯

freeBoundary(TriRep)는 권장되지 않습니다. freeBoundary(triangulation)을 대신 사용하십시오.

TriRep는 권장되지 않습니다. triangulation을 대신 사용하십시오.

설명

예제

FF = freeBoundary(TR)은 삼각분할의 자유 경계 패싯을 나타내는 행렬 FF를 반환합니다. 어떤 패싯을 하나의 단체(Simplex)에서만 참조한다면 그 패싯은 자유 경계에 있는 것입니다.

예제

[FF,XF] = freeBoundary(TR)은 자유 경계 패싯의 꼭짓점 좌표 행렬도 반환합니다

예제

모두 축소

TriRep를 사용하여 가져온 삼각분할의 경계 삼각분할을 계산합니다.

3차원 삼각분할을 불러옵니다.

load tetmesh;
trep = TriRep(tet,X);

다음과 같이 경계 삼각분할을 계산합니다.

[tri,xf] = freeBoundary(trep);

경계 삼각분할을 플로팅합니다.

trisurf(tri,xf(:,1),xf(:,2),xf(:,3), ...
     'FaceColor','cyan','FaceAlpha',0.8)

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

DelaunayTri를 사용하여 생성한 2차원 삼각분할에 대해 직접 쿼리를 수행합니다.

들로네 삼각분할을 만듭니다.

x = rand(20,1);
y = rand(20,1);
dt = DelaunayTri(x,y);

삼각분할의 자유 경계를 계산한 다음 자유 경계 모서리가 빨간색으로 표시된 삼각분할을 플로팅합니다.

fe = freeBoundary(dt)';
triplot(dt)
hold on
plot(x(fe),y(fe),'-r','LineWidth',2)
hold off

Figure contains an axes object. The axes object contains 8 objects of type line.

이 경우 자유 모서리는 (x,y)의 볼록 껍질에 대응합니다.

입력 인수

모두 축소

삼각분할 표현으로, TriRep 또는 DelaunayTri 객체로 지정됩니다.

출력 인수

모두 축소

자유 경계 패싯으로, 행렬로 반환됩니다. FF의 크기는 m×n입니다. 여기서 m은 경계 패싯의 개수이고 n은 패싯당 꼭짓점의 개수입니다. 패싯의 꼭짓점에 대한 정보는 꼭짓점 좌표를 나타내는 점 배열 TR.X에서 볼 수 있습니다. FF 배열은 구 곡면을 나타내는 삼각 메시의 경우처럼 비어 있을 수 있습니다.

자유 경계 패싯의 꼭짓점 좌표로, 행렬로 반환됩니다. XF의 크기는 m×ndim입니다. 여기서 m은 자유 패싯 개수이고 ndim은 삼각분할이 있는 공간의 차원입니다.

세부 정보

모두 축소

단체(Simplex)

단체(Simplex)는 삼각형/사면체, 또는 보다 높은 차원에서의 그와 동등한 도형입니다.

패싯

패싯은 삼각형의 모서리 또는 사면체의 면입니다.

확장 기능

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

버전 내역

R2009a에 개발됨