private void InsAddFrontExecute() { // Выбор области на чертеже var selectGroup = new SelectGroup(Front.Model.Doc); Extents3d selReg; try { selReg = selectGroup.Select(); } catch { return; } // Проверка, что в указанной области есть свободные дома if (!Front.Model.Map.Houses.GetHousesInExtents(selReg).Any(h => h.FrontGroup == null)) { // В области новой группы не должно быть домов из других групп InsService.ShowMessage($"В выбранной области нет домов не входящих в другие группы.", System.Windows.MessageBoxImage.Error); return; } // Создание группы фронтонов try { var frontGroup = FrontGroup.New(selReg, Front); Front.AddGroup(frontGroup); // Запись статистики PluginStatisticsHelper.AddStatistic(); } catch (Exception ex) { InsService.ShowMessage(ex, "Ошибка при создании группы фронтонов."); } }