ishole

Определите если polyshape контур является отверстием

Описание

пример

TF = ishole(polyin) возвращает логический вектор, элементы которого равняются 1 (true) если соответствующий контур polyin отверстие.

TF = ishole(polyin,I) возвращает логический вектор, соответствующий контурам polyin индексированный Itf та же длина как I.

Примеры

свернуть все

Создайте многоугольник, содержащий одну твердую область и одно отверстие, и определите, какая область является отверстием.

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

      Vertices: [27x2 double]
    NumRegions: 1
      NumHoles: 1

plot(polyin)

TF = ishole(polyin)
TF = 2x1 logical array

   0
   1

Чтобы запросить один контур за один раз, используйте граничный индекс в качестве второго аргумента.

TF = ishole(polyin,2)
TF = logical
   1

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

свернуть все

Введите polyshapeВ виде скаляра.

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

Граничный индекс в виде скалярного целого числа или вектора целых чисел. Каждый элемент I соответствует одному контуру входа polyshape.

Типы данных: double | single | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

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

|

Введенный в R2017b