else Debug.message("basic", getName()+ "|ETOPOLayer.prepare(): finished with null graphics list");
    public OMGraphicList prepare() {	if (isCancelled()) {	    Debug.message("etopo", getName()+"|ETOPOLayer.prepare(): aborted.");	    return null;	}	Projection projection = getProjection();	if (projection == null) {	    Debug.error("ETOPO Layer needs to be added to the MapBean before it can draw images!");	    return new OMGraphicList();	}	// load the buffer	if (dataBuffer == null || spacingReset) {	    loadBuffer();	    spacingReset = false;	    slopeReset = true;	}	// re-do the slope map	if (slopeReset) {	    buildSlopeMap();	    slopeReset = false;	}	Debug.message("basic", getName()+"|ETOPOLayer.prepare(): doing it");	// Setting the OMGraphicsList for this layer.  Remember, the	// OMGraphicList is made up of OMGraphics, which are generated	// (projected) when the graphics are added to the list.  So,	// after this call, the list is ready for painting.	// call getRectangle();	if (Debug.debugging("etopo")) {	    Debug.output(		getName()+"|ETOPOLayer.prepare(): " +		"calling getRectangle " +		" with projection: " + projection +		" ul = " + projection.getUpperLeft() + " lr = " +		projection.getLowerRight());	}	// build graphics list	OMGraphicList omGraphicList = new OMGraphicList();	omGraphicList.addOMGraphic(buildRaster());	/////////////////////	// safe quit	int size = 0;	if (omGraphicList != null) {	    size = omGraphicList.size();		    Debug.message("basic", getName()+			  "|ETOPOLayer.prepare(): finished with "+			  size+" graphics");	}	else	    Debug.message("basic", getName()+	      "|ETOPOLayer.prepare(): finished with null graphics list");	// Don't forget to project them.  Since they are only being	// recalled if the projection hase changed, then we need to	// force a reprojection of all of them because the screen	// position has changed.	omGraphicList.project(projection, true);	return omGraphicList;    }