public void paintChildren(Graphics g,Rectangle clip){
  BufferedImage localDrawingBuffer=drawingBuffer;
  if (bufferDirty) {
    localDrawingBuffer=resetDrawingBuffer(localDrawingBuffer,getProjection());
    drawProjectionBackground(localDrawingBuffer.getGraphics());
    renderDataForProjection(getProjection(),localDrawingBuffer.getGraphics());
    drawingBuffer=localDrawingBuffer;
  }
  if (localDrawingBuffer != null) {
    g.drawImage(localDrawingBuffer,0,0,null);
  }
}

public void paintChildren ( Graphics g , Rectangle clip ) { BufferedImage localDrawingBuffer = drawingBuffer ; if ( bufferDirty ) { localDrawingBuffer = resetDrawingBuffer ( localDrawingBuffer , getProjection ( ) ) ; drawProjectionBackground ( localDrawingBuffer . getGraphics ( ) ) ; renderDataForProjection ( getProjection ( ) , localDrawingBuffer . getGraphics ( ) ) ; drawingBuffer = localDrawingBuffer ; } if ( localDrawingBuffer != null ) { g . drawImage ( localDrawingBuffer , 0 , 0 , null ) ; } }
fine - tuned for the purposes of a bufferedlayer - just create a new image if the buffer is dirty .
