MATLAB 帮助中心
确定 polyshape 对象是否重叠
polyshape
TF = overlaps(poly1,poly2)
TF = overlaps(polyvec)
当具有兼容大小的两个 polyshape 数组中有彼此重叠的元素对组时,TF = overlaps(poly1,poly2) 返回一个对应元素为 1 的逻辑数组。当 poly1 中的第 i 个 polyshape 与 poly2 中的第 j 个 polyshape 重叠时,TF(i,j) 为 1。
TF
poly1
poly2
当 polyshape 对象向量中有彼此重叠的元素对组时,TF = overlaps(polyvec) 返回一个对应元素为 1 (true) 的逻辑数组。当 polyvec 中的第 i 个 polyshape 与第 j 个 polyshape 重叠时,TF(i,j) 为 1。
polyvec
true
示例
全部折叠
创建并绘制一个 1×3 多边形向量,然后确定哪些多边形对组重叠。
p1 = polyshape([0 0 1 1],[1 0 0 1]); p2 = polyshape([0.75 1.25 1.25 0.75],[0.25 0.25 0.75 0.75]); p3 = polyshape([1.25 1.25 1.75 1.75],[0.75 1.25 1.25 0.75]); polyvec = [p1 p2 p3]; plot(polyvec)
TF = 3×3 logical array 1 1 0 1 1 0 0 0 1
由于第三个多边形不与第一个或第二个多边形重叠,因此 TF(1,3)、TF(2,3)、TF(3,1) 和 TF(3,2) 为 0。第二个和第三个多边形共有的单个点不视为重叠区域。
TF(1,3)
TF(2,3)
TF(3,1)
TF(3,2)
第一个输入 polyshape,指定为标量、向量、矩阵或多维数组。
第二个输入 polyshape,指定为标量、向量、矩阵或多维数组。
polyshape 向量。
重叠指示符,以标量、向量、矩阵或多维数组的形式返回。
如果输入两个 polyshape 参量,则它们必须具有兼容的大小。例如,如果两个 polyshape 向量具有不同的长度 M 和 N,则它们必须有不同的方向(一个必须是行向量,一个必须是列向量)。TF 则是 M×N 或 N×M,具体取决于每个输入向量的方向。有关兼容的数组大小的详细信息,请参阅基本运算的兼容数组大小。
如果您输入一个长度为 N 的 polyshape 向量,则 TF 为 N×N。
数据类型: logical
logical
全部展开
用法说明和限制:
必须启用动态内存分配才能进行代码生成。
在 R2018a 中推出
polyshape | union | intersect | subtract
union
intersect
subtract
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
选择网站
选择网站以获取翻译的可用内容,以及查看当地活动和优惠。根据您的位置,我们建议您选择:。
您也可以从以下列表中选择网站:
如何获得最佳网站性能
选择中国网站(中文或英文)以获得最佳网站性能。其他 MathWorks 国家/地区网站并未针对您所在位置的访问进行优化。
美洲
欧洲
亚太
联系您当地的办事处