public Rectangle2D shrink(Rectangle2D area,Rectangle2D result){
  if (result == null) {
    result=new Rectangle2D.Double();
  }
  result.setRect(area.getX() + this.left,area.getY() + this.top,area.getWidth() - this.left - this.right,area.getHeight() - this.top - this.bottom);
  return result;
}

public Rectangle2D shrink ( Rectangle2D area , Rectangle2D result ) { if ( result == null ) { result = new Rectangle2D . Double ( ) ; } result . setRect ( area . getX ( ) + this . left , area . getY ( ) + this . top , area . getWidth ( ) - this . left - this . right , area . getHeight ( ) - this . top - this . bottom ) ; return result ; }
shrinks an area by the space attributes .
