如何求两个向交矩形的交集的面积?

如何求两个相交矩形的交集的面积?
就是交接的公共部分面积?

class Rectangle {
Point min;
Point max;
}

Rectangle rect1, rect2;
Rectangle rect;

rect.min.x = max(rect1.min.x, rect2.min.x);
rect.min.y = max(rect1.min.y, rect2.min.y);
rect.max.x = min(rect1.max.x, rect2.max.x);
rect.max.y = min(rect1.max.y, rect2.max.y);
if ( rect.min.x<rect.max.x && rect.min.y <rect.max.y )
s = (rect.max.x-rect.min.x)*(rect.max.y-rect.min.y)
else
s = 0;

来自:http://www.softwelt.com/Know/KnowDetail-2486480.html

如何判断两个矩形是否相交 (2008-05-19 20:33:01)
假定矩形是用一对点表达的(minx,miny)(maxx, <wbr> maxy) <wbr><br><wbr> 那么两个矩形rect1{(minx1,miny1)(maxx1, <wbr> maxy1)}, <wbr> rect2{(minx2,miny2)(maxx2, <wbr> maxy2)} <wbr><br><wbr><wbr><br><wbr> 相交的结果一定是个矩形,构成这个相交矩形rect{(minx,miny)(maxx, <wbr> maxy)}的点对坐标是: <wbr><br><wbr> minx <wbr> = <wbr> max(minx1, <wbr> minx2) <wbr><br><wbr> miny <wbr> = <wbr> max(miny1, <wbr> miny2) <wbr><br><wbr> maxx <wbr> = <wbr> min(maxx1, <wbr> maxx2) <wbr><br><wbr> maxy <wbr> = <wbr> min(maxy1, <wbr> maxy2) <wbr><br><wbr><wbr><br><wbr> 如果两个矩形不相交,那么计算得到的点对坐标必然满足 <wbr><br><wbr> minx <wbr> &gt; <wbr> maxx <wbr><br><wbr> 或者 <wbr><br><wbr> miny <wbr> &gt; <wbr> maxy <wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值