private void InternalClear(bool retainObstacles) { GraphGenerator.Clear(); ClearShortestPaths(); if (retainObstacles) { // Remove precalculated visibility, since we're likely revising obstacle positions. PortManager.ClearVisibility(); } else { PortManager.Clear(); ShapeToObstacleMap.Clear(); EdgeGeometries.Clear(); } }