// We only depend on our source for stuff that is inside
// our bounds and his bounds (remember our bounds may be
// tighter than his in one or both directions).
Rectangle2D srect = getSource().getBounds2D();
if (srect.intersects(outputRgn) == false)
return new Rectangle2D.Float();
Rectangle2D.intersect(srect, outputRgn, srect);
Rectangle2D bounds = getBounds2D();
if (srect.intersects(bounds) == false)