25 lines · 571 B · C
RawDownload
#include <u.h>#include <libc.h>#include <draw.h> intrectclip(Rectangle *rp, Rectangle b)		/* first by reference, second by value */{	Rectangle *bp = &b;	/*	 * Expand rectXrect() in line for speed	 */	if((rp->min.x<bp->max.x && bp->min.x<rp->max.x &&	    rp->min.y<bp->max.y && bp->min.y<rp->max.y)==0)		return 0;	/* They must overlap */	if(rp->min.x < bp->min.x)		rp->min.x = bp->min.x;	if(rp->min.y < bp->min.y)		rp->min.y = bp->min.y;	if(rp->max.x > bp->max.x)		rp->max.x = bp->max.x;	if(rp->max.y > bp->max.y)		rp->max.y = bp->max.y;	return 1;}