sortregions

Сортировка polyshape области

Описание

пример

polyout = sortregions(polyin,criterion,direction) возвращает polyshape возразите, чьи области сортируются согласно заданному criterion и direction. Например, polyout = sortregions(polyin,'area','ascend') возвращает polyshape чьи твердые области совпадают с polyin, и перечисленный в порядке возрастания их областью.

polyout = sortregions(polyin,'centroid',direction,'ReferencePoint',point) возвращает polyshape чьи области сортируются на основе расстояния центроида каждой области к контрольной точке.

Примеры

свернуть все

Идентифицируйте и области индивидуума доступа многоугольника путем сортировки их сначала.

Создайте многоугольник с двумя твердыми областями и одним отверстием.

t = 0.05:0.5:2*pi;
x1 = cos(t);
y1 = sin(t);
x2 = 0.5*cos(t);
y2 = 0.5*sin(t);
x3 = 2*cos(t);
y3 = 2*sin(t);
polyin = polyshape({x1,x2,x3},{y1,y2,y3})
polyin = 
  polyshape with properties:

      Vertices: [41x2 double]
    NumRegions: 2
      NumHoles: 1

plot(polyin)

Сортировка областей многоугольника в порядке возрастания на основе их периметра. Затем можно использовать regions функция, чтобы создать массив polyshape объекты R, где каждый элемент R соответствует одной области polyout. Элементы R индексируются в том же порядке как области polyout, так, чтобы можно было получить доступ и вычислить с каждой областью на основе их индекса.

polyout = sortregions(polyin,'perimeter','ascend');
R = regions(polyout);
plot(R)

smallregion = area(R(1))
smallregion = 0.7541
bigregion = area(R(2))
bigregion = 9.0488

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

свернуть все

Введите polyshapeВ виде скаляра, вектора, матрицы или многомерного массива.

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

Критерий сортировки в виде одного из этих значений:

  • 'area' — Сортировка областью области.

  • 'perimeter' — Сортировка периметром области.

  • 'numsides' — Сортировка количеством сторон каждой области.

  • 'centroid' — Сортировка расстоянием от центроида каждой области к контрольной точке (0,0).

Сортировка направления в виде 'ascend' или 'descend'.

Контрольная точка в виде двухэлементного вектора-строки. Первым элементом является x - координата контрольной точки, и вторым элементом является y - координата.

Смотрите также

| |

Введенный в R2017b