@Override protected void doMoveTo( Globe globe, Position oldReferencePosition, Position newReferencePosition) { if (this.boundaries.getContourCount() == 0) return; for (int i = 0; i < this.boundaries.getContourCount(); i++) { List<LatLon> newLocations = LatLon.computeShiftedLocations( globe, oldReferencePosition, newReferencePosition, this.boundaries.getContour(i)); this.boundaries.setContour(i, newLocations); } // We've changed the multi-polygon's list of boundaries; flag the shape as changed. this.onShapeChanged(); }