其他分享
首页 > 其他分享> > 2021-06-29

2021-06-29

作者:互联网

一.凸包的运用
凸包能解决什么问题?
相信小伙伴们在学习matlab时,常常会遇到,给定点集合,需要我们圈定范围。怎么圈定范围呢?1.确定最外围的点集。
2.根据1的点集使用plot作图。最难的就是第一步,怎么确定最外围的点集合呢?欸,这个时候凸包就出现了,及其便捷的解决了这个问题。
如下举出例子:


```A=[129.0 7.5 
      140.0 141.5
      108.5 28.0 
      88.0 147.0 
      185.5 22.5 
      195.0 137.5 
      105.5 85.5 
      140 100
      146 120
      130 123
      120 85
      160 80
      167 88
      
];
x=A(:,1);%读取第一列数据
y=A(:,2);%读取第二列数据
plot(x,y,'+');
hold on %在原图上继续显示下一张图片
K=convhull(x,y);%计算点集的凸包
plot(x(K),y(K),'r');
A=[129.0 7.5 
      140.0 141.5
      108.5 28.0 
      88.0 147.0 
      185.5 22.5 
      195.0 137.5 
      105.5 85.5 
      140 100
      146 120
      130 123
      120 85
      160 80
      167 88
      
];
x=A(:,1);%读取第一列数据
y=A(:,2);%读取第二列数据
K=convhull(x,y);%计算点集的凸包
plot(x(K),y(K),'r');%由红线连接标出范围

结果如图所示:
![在这里插入图片描述](https://www.icode9.com/i/ll/?i=20210629204539916.jpg?,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzUxMjIzMDg5,size_16,color_FFFFFF,t_70#pic_center)


标签:plot,06,读取,第二列,29,凸包,120,2021,点集
来源: https://blog.csdn.net/qq_51223089/article/details/118339550