public GeneralPath draw(Graphics2D g2,Rectangle2D dataArea,ValueAxis horizontalAxis,ValueAxis verticalAxis){
  GeneralPath generalPath=generateClipPath(dataArea,horizontalAxis,verticalAxis);
  if (this.fillPath || this.drawPath) {
    Composite saveComposite=g2.getComposite();
    Paint savePaint=g2.getPaint();
    Stroke saveStroke=g2.getStroke();
    if (this.fillPaint != null) {
      g2.setPaint(this.fillPaint);
    }
    if (this.composite != null) {
      g2.setComposite(this.composite);
    }
    if (this.fillPath) {
      g2.fill(generalPath);
    }
    if (this.drawStroke != null) {
      g2.setStroke(this.drawStroke);
    }
    if (this.drawPath) {
      g2.draw(generalPath);
    }
    g2.setPaint(savePaint);
    g2.setComposite(saveComposite);
    g2.setStroke(saveStroke);
  }
  return generalPath;
}

public GeneralPath draw ( Graphics2D g2 , Rectangle2D dataArea , ValueAxis horizontalAxis , ValueAxis verticalAxis ) { GeneralPath generalPath = generateClipPath ( dataArea , horizontalAxis , verticalAxis ) ; if ( this . fillPath || this . drawPath ) { Composite saveComposite = g2 . getComposite ( ) ; Paint savePaint = g2 . getPaint ( ) ; Stroke saveStroke = g2 . getStroke ( ) ; if ( this . fillPaint != null ) { g2 . setPaint ( this . fillPaint ) ; } if ( this . composite != null ) { g2 . setComposite ( this . composite ) ; } if ( this . fillPath ) { g2 . fill ( generalPath ) ; } if ( this . drawStroke != null ) { g2 . setStroke ( this . drawStroke ) ; } if ( this . drawPath ) { g2 . draw ( generalPath ) ; } g2 . setPaint ( savePaint ) ; g2 . setComposite ( saveComposite ) ; g2 . setStroke ( saveStroke ) ; } return generalPath ; }
draws the clip path .
