exponenta event banner

rmboundary

Удалить polyshape граница

Описание

пример

polyout = rmboundary(polyin,I) возвращает polyshape объект, состоящий из многоугольника polyin с IУдаленная граница.

polyout = rmboundary(polyin,I,'Simplify',TF) определяет способ обработки неправильно определенных полигонов.

Примеры

свернуть все

Создайте многоугольник, состоящий из двух треугольников, а затем удалите треугольник, центроид которого находится ближе к точке (4,2). Вы можете использовать sortboundaries функция доступа к граничному индексу, соответствующему треугольнику ближе к опорной точке, который равен 1 после сортировки.

x1 = [0 1 2];
y1 = [0 1 0];
x2 = [2 3 4];
y2 = [1 2 1];
polyin = polyshape({x1,x2},{y1,y2});
plot(polyin)

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

polysort = sortboundaries(polyin,'centroid','ascend','ReferencePoint',[4 2]);
polyout = rmboundary(polysort,1);
plot(polyout)

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

Входные аргументы

свернуть все

Вход polyshape, указывается как скаляр.

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

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

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

Упрощенный индикатор, указанный как одно из следующих значений:

  • true - изменение вершин многоугольника для создания хорошо определенного многоугольника, когда входные вершины создают пересечения или неправильную вложенность.

  • false - не изменять входные вершины независимо от пересечений или неправильной вложенности. Вычисления с плохо определенными многоугольниками могут привести к неточным или неожиданным результатам.

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

Представлен в R2017b