setNeedToRegenerate(false);
    public synchronized void generate(Projection p, boolean forceProjectAll) {		// Important!  Resets the shape.	shape = null;	// Create a shape object out of all of the shape objects.	ListIterator iterator;	if (traverseMode == FIRST_ADDED_ON_TOP) {	    iterator = graphics.listIterator(graphics.size());	    while (iterator.hasPrevious()) {		updateShape((OMGeometry) iterator.previous(), 			    p, forceProjectAll);	    }	} else {	    iterator = graphics.listIterator();	    while (iterator.hasNext()) {		updateShape((OMGeometry) iterator.next(), 			    p, forceProjectAll);	    }	}    }