1、先排除没有重叠的情况
2、找出重叠的面积的宽和长
用在x轴方向上两矩形左边两个边x值x1、x2,求max(x1,x2)
右边两条边x值x3,x4,求min(x3,x4)
length=abs(max(x1,x2) - min(x3,x4)
width同理,在y轴方向上操作
最后area=length+width
1 int getSpace(int x1,int y1,int x2,int y2,int a,int b){ 2 if(x2<=0||x1>=a||y1>=b||y2<=0){ 3 //不在范围内的 4 return 0; 5 } 6 else{ 7 8 int width=abs(min(y2,y3)-max(y2,y1)); 9 int length =abs(min(x3,x4)-max(x2,x1)); 10 return width*length; 11 12 } 13 14 }
标签:x1,重叠,int,坐标轴,x2,x3,矩形,x4 From: https://www.cnblogs.com/Marcusss/p/17282737.html