Main Content

centroid

polyshape의 중심

설명

예제

[x,y] = centroid(polyin)polyshape의 중심의 x 좌표와 y 좌표를 반환합니다.

예제

[x,y] = centroid(polyin,I)polyinI번째 경계의 중심의 좌표를 반환합니다.

이 구문은 polyin이 스칼라 polyshape 객체인 경우에만 지원됩니다.

예제

모두 축소

복수의 영역을 가진 다각형의 중심을 구합니다.

2개의 채워진 영역을 가진 다각형을 만들고 중심을 구합니다.

x1 = [0 1 2];
y1 = [0 1 0];
x2 = [2 3 4];
y2 = [1 2 1];
polyin = polyshape({x1,x2},{y1,y2});
[x,y] = centroid(polyin);
plot(polyin)
hold on
plot(x,y,'r*')
hold off

Figure contains an axes object. The axes object contains 2 objects of type polygon, line. One or more of the lines displays its values using only markers

각 영역의 중심을 개별적으로 구하려면 두 번째 인수에 각 영역의 경계 인덱스를 지정하십시오.

[x,y] = centroid(polyin,[1 2]);
plot(polyin)
hold on
plot(x(1),y(1),'r*',x(2),y(2),'r*')
hold off

Figure contains an axes object. The axes object contains 3 objects of type polygon, line. One or more of the lines displays its values using only markers

또는 먼저 두 영역을 개별적인 polyshape 객체로 구분한 다음 각 영역의 중심을 구할 수도 있습니다. regions 함수를 사용하여 polyshape 객체로 구성된 배열을 만듭니다. 여기서 배열의 각 요소는 삼각형 영역 중 하나를 정의하는 polyshape입니다.

polyarray = regions(polyin)
polyarray = 
  2x1 polyshape array with properties:

    Vertices
    NumRegions
    NumHoles

[x,y] = centroid(polyarray)
x = 2×1

     1
     3

y = 2×1

    0.3333
    1.3333

입력 인수

모두 축소

입력 polyshape로, 스칼라, 벡터, 행렬 또는 다차원 배열로 지정됩니다.

데이터형: polyshape

경계 인덱스로, 정수 스칼라 또는 정수 벡터로 지정됩니다. I의 각 요소는 입력 polyshape의 단일 경계에 대응합니다.

데이터형: double | single | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

출력 인수

모두 축소

polyshape의 중심의 x 좌표로, 스칼라, 벡터, 행렬 또는 다차원 배열로 반환됩니다. 입력값이 polyshape 객체로 구성된 배열인 경우 x는 각 polyshape의 중심의 x 좌표를 포함합니다.

polyshape의 중심의 y 좌표로, 스칼라, 벡터, 행렬 또는 다차원 배열로 반환됩니다. 입력값이 polyshape 객체로 구성된 배열인 경우 y는 각 polyshape의 중심의 y 좌표를 포함합니다.

확장 기능

버전 내역

R2017b에 개발됨

참고 항목

| |