code: public void addEnvelope(Envelope2D envSrc, boolean bReverse) {
  		boolean bWasEmpty = m_pointCount == 0;
  
  		startPath(envSrc.xmin, envSrc.ymin);
  		if (bReverse) {
  			lineTo(envSrc.xmax, envSrc.ymin);
  			lineTo(envSrc.xmax, envSrc.ymax);
  			lineTo(envSrc.xmin, envSrc.ymax);
  		} else {
  			lineTo(envSrc.xmin, envSrc.ymax);
  			lineTo(envSrc.xmax, envSrc.ymax);
  			lineTo(envSrc.xmax, envSrc.ymin);
  		}
  
  		closePathWithLine();
  		m_bPathStarted = false;
  
  		if (bWasEmpty && !bReverse) {
  			_setDirtyFlag(DirtyFlags.DirtyIsEnvelope, false);// now we no(sic?)
  																// the polypath
  																// is envelope
  		}
  	}
docs: adds a rectangular closed Path to the MultiPathImpl.
  
  @param envSrc
  is the source rectangle.
  @param bReverse
  Creates reversed path.