建立一个18X5的二维数组,每行第一个单元格依序10度间隔斜率值,如tg(10/pi)、tg(20/pi)...,第二、三、四、五单元格存储不规则凸形点斜率垂直和平行的点,每间隔10度计算一个点,也就是计算的点作为向量时,间隔是10度。如果不规则形以原点为中心,简单做法是从0点向不规则形起点引一条直线,使直线间隔10度逆时针转动一次,与边界的交点就是要计算的点。没有中心的,以相同距离间隔找18个点。斜率值相乘接近-1的两点是垂直的,可作为矩形的两边,斜率相等的是对边,这样就可找出矩形的四条边,记下面积,再依此计算剩下的点,比较面积,小的就记下,大的就丢弃。但小到接近于零也要放弃,有可能 有两条边在一条线上。计算完所有点,就可找到最小外接矩形。
不规则凸形最小外接矩形算法
最新推荐文章于 2023-08-29 10:34:44 发布