/// <summary> /// Отобразить планеты, входящие в прямоугольник /// </summary> /// <param name="rect">Прямоугольник в который входят планеты, которые требуется создать</param> private void FillPlanets(RectInt rect) { var iterator = rect.allPositionsWithin; CellInfo cell = null; while (iterator.MoveNext()) { var worldPos = iterator.Current; var cellPos = SettingsAccess.GetCellBeginPosition(worldPos); if (cell == null || cell.Pos != cellPos) { cell = _cells.GetCell(cellPos); } var cellItemPos = cell.GetCellItemPosition(worldPos); var rating = cell.GetRating(cellItemPos); if (rating > 0) { var posId = SettingsAccess.GetId(worldPos); var planet = _planets.Create(posId); planet.Show(worldPos, SettingsAccess.ConvertToWorldPosition(worldPos), rating); } } }