Let objects track their own state to avoid excessive recalculation.  Check that the state is the same when drawing as when the draw was triggered.