Main Content

rmboundary

删除 polyshape 边界

说明

示例

polyout = rmboundary(polyin,I) 返回一个 polyshape 对象,此对象由删除第 I 个边界之后的多边形 polyin 组成。

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)

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

输入参数

全部折叠

输入 polyshape,指定为标量。

数据类型: polyshape

边界索引,指定为整数标量或由整数组成的向量。I 的每个元素对应于输入 polyshape 的一个边界。

数据类型: double | single | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

简化指示符,指定为下列值之一:

  • true - 当输入顶点产生交集或不正确嵌套时,更改多边形顶点以生成明确定义的多边形。

  • false - 即使有交集或不正确嵌套,也不更改输入顶点。使用未明确定义的多边形进行计算可能会产生不准确或意想不到的结果。

数据类型: logical

扩展功能

版本历史记录

在 R2017b 中推出