/// <summary> /// Общие действия и при создании нового расчета и при загрузке существующего /// Обязательно запускать после создания расчета /// </summary> public void Initialize(Document doc) { Doc = doc; // Дефолтные настройки if (Options == null) { Options = InsOptions.Default(); } // Сервис расчета DefineCalcService(); // Загрузка карты if (Map == null) { Map = new Map(this); Map.BuildingAdded += Map_BuildingAdded; Map.BuildingErased += Map_BuildingErased; Map.BuildingModified += Map_BuildingModified; Map.InsPointAdded += Map_InsPointAdded; } Map.Update(); // Создание расчета елочек if (Tree == null) { Tree = new TreeModel(); } Tree.Initialize(this); // Расчет фронтов if (Front == null) { Front = new FrontModel(); } Front.Initialize(this); LoadPoints(); // Расчет площадок if (Place == null) { Place = new PlaceModel(); } Place.Initialize(this); doc.Database.BeginSave += Database_BeginSave; }