又是计算几何我感觉最近对计算几何上瘾了。
当然工作上也会用一些,不过工作上一般直接调用boost的geometry库
上次写过,这次是最小包围矩形要比最小包围圆复杂些。
最尛包围矩形可不一定是个直立的矩形也可能像下图一样是倾斜的。
1.求多边形凸包这里凸包直接调用系统函数了,细节可以虽然当时寫的不怎么样。
2.将凸包两个相邻的点连线作为矩形一条边
3.寻找凸包上距离已得到的边最远的点,过该点做平行线得到矩形第二条边。
4.將凸包上点向已求得的边投影求得投影点相距最远的两个点,过该两点做直线作为矩形另外两条边。
5.遍历凸包所有相邻两点从新运行2~4将面积最小的矩形作为求得结果。
通常情况下矩形会过随机点中的5个点。
[h ind]=max(d); %得到距离最大的点距离即为高,同时得到该点坐标