|
|
1.1 root 1: #include <jerq.h>
2: rectclip(rp, b) /* first by reference, second by value */
3: register Rectangle *rp;
4: Rectangle b;
5: {
6: register Rectangle *bp= &b;
7: /*
8: * Expand rectXrect() in line for speed
9: */
10: #define c corner
11: #define o origin
12: if((rp->o.x<bp->c.x && bp->o.x<rp->c.x &&
13: rp->o.y<bp->c.y && bp->o.y<rp->c.y)==0)
14: return 0;
15: /* They must overlap */
16: if(rp->origin.x<bp->origin.x)
17: rp->origin.x=bp->origin.x;
18: if(rp->origin.y<bp->origin.y)
19: rp->origin.y=bp->origin.y;
20: if(rp->corner.x>bp->corner.x)
21: rp->corner.x=bp->corner.x;
22: if(rp->corner.y>bp->corner.y)
23: rp->corner.y=bp->corner.y;
24: return 1;
25: }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.