Main Content

rmslivers

删除 polyshape 边界离群值

说明

示例

polyout = rmslivers(polyin,tol) 返回一个 polyshape 对象,此对象由删除所有离群值顶点之后的 polyin 的边界组成。tol 基于顶点之间的相对距离的比例来定义边界离群值

示例

全部折叠

删除多边形中的离群边界点,从而消除多余的条形或天线效应。

polyin = polyshape([0 0 2 2 1.0001 1 0.9999],[2 0 0 2 2 10 2]);
plot(polyin)
xlim([-0.5 2.5])
ylim([-2 12])

polyout = rmslivers(polyin,0.001);
plot(polyout)
xlim([-0.5 2.5])
ylim([-2 12])

输入参数

全部折叠

输入 polyshape,指定为标量、向量、矩阵或多维数组。

数据类型: polyshape

离群值容差,指定为标量。当输入 polyshape 是数组时,rmslivers 根据 tol 从数组的每个元素中删除离群值。

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

详细信息

全部折叠

离群值容差

离群值容差指定多边形区域中顶点的相对距离之间允许的比例。例如,在以下图窗中,对于指定的容差 tol 来说,如果 abtol,则 rmslivers 不会删除顶点 v。如果 ab<tol,则 rmslivers 会删除 v,从而消除该条形。

Triangular sliver in a polygon due to vertex v. The sliver is a right triangle with side lengths a and b.

扩展功能

版本历史记录

在 R2017b 中推出

另请参阅