本文告诉大家给定点的集合,求点的集合的外接矩形
已知点的集合 P L PL PL 求点的外接矩形 R R R 包括 R R R 的坐标和 R R R 的宽度高度
假设坐标的计算是按照左上角为 ( 0 , 0 ) (0,0) (0,0) 从左到右的坐标值增加,从上到下的坐标值增加
第一步是通过 P L PL PL 计算左上角的点和右下角的点,设 P L i PL_i PLi 为 P L PL PL 的元素
M i n X = M i n ( P L i . X ) MinX=Min(PL_i.X) MinX=Min(PLi.X)
M i n Y = M i n ( P L i . Y ) MinY=Min(PL_i.Y) MinY=Min(PLi.Y)
M a x X = M a x ( P L i . X ) MaxX=Max(PL_i.X) MaxX=Max(PLi.X)
M a x Y = M a x ( P L i . Y ) MaxY=Max(PL_i.Y) MaxY=Max(PLi.Y)
左上角的点
L e f t T o p P o i n t = ( M i n X , M i n Y ) LeftTopPoint=(MinX,MinY) LeftTopPoint=(MinX,MinY)
右下角的点
R i g h t B o t t o m P o i n t = ( M a x X , M a x Y ) RightBottomPoint=(MaxX,MaxY) RightBottomPoint=(MaxX,MaxY)
矩形 R R R 可以用左上角的点和右下角的点表示
R = ( L e f t T o p P o i n t , R i g h t B o t t o m P o i n t ) R=(LeftTopPoint,RightBottomPoint) R=(LeftTopPoint,RightBottomPoint)
这时 R R R的宽度和高度就可以计算出来
R . W i d t h = R i g h t B o t t o m P o i n t . X − L e f t T o p P o i n t . X R . H e i g h t = R i g h t B o t t o m P o i n t . Y − L e f t T o p P o i n t . Y R.Width=RightBottomPoint.X-LeftTopPoint.X \\ R.Height=RightBottomPoint.Y-LeftTopPoint.Y R.Width=RightBottomPoint.X−LeftTopPoint.XR.Height=RightBottomPoint.Y−LeftTopPoint.Y