public void intersection(Rectangle2D r){
  if (status == INVALID)   return;
  if (status == EMPTY) {
    setClip(r);
    status=INUSE;
    return;
  }
  clip[0]=Math.max(clip[0],r.getMinX());
  clip[1]=Math.max(clip[1],r.getMinY());
  clip[6]=Math.min(clip[6],r.getMaxX());
  clip[7]=Math.min(clip[7],r.getMaxY());
}

public void intersection ( Rectangle2D r ) { if ( status == INVALID ) return ; if ( status == EMPTY ) { setClip ( r ) ; status = INUSE ; return ; } clip [ 0 ] = Math . max ( clip [ 0 ] , r . getMinX ( ) ) ; clip [ 1 ] = Math . max ( clip [ 1 ] , r . getMinY ( ) ) ; clip [ 6 ] = Math . min ( clip [ 6 ] , r . getMaxX ( ) ) ; clip [ 7 ] = Math . min ( clip [ 7 ] , r . getMaxY ( ) ) ; }
intersect this clip with another region . as a result , this clip will become the intersecting area of the two regions .
