示例#1
0
 public void Dispose()
 {
     VisualTrees?.Dispose();
     if (Points != null)
     {
         foreach (var item in Points)
         {
             item.Dispose();
         }
     }
     Points = null;
 }
示例#2
0
 private void Points_CollectionChanged(object sender, NotifyCollectionChangedEventArgs e)
 {
     for (int i = 0; i < Points.Count; i++)
     {
         var p   = Points[i];
         var num = i + 1;
         if (p.Number != num)
         {
             p.Number = num;
         }
     }
     VisualTrees.VisualUpdate();
 }
示例#3
0
 /// <summary>
 /// Очистка - отключение расчета
 /// </summary>
 public void ClearVisuals()
 {
     VisualTrees?.VisualsDelete();
     if (Points != null && Points.Count > 0)
     {
         //using (var t = Model.Doc.TransactionManager.StartTransaction())
         //{
         foreach (var item in Points)
         {
             item?.ClearVisual();
         }
         //t.Commit();
         //}
     }
 }
示例#4
0
 /// <summary>
 /// Расчет и добавление точки
 /// </summary>
 public void AddPoint(InsPoint p)
 {
     // Расчет и добавление точки
     if (p != null)
     {
         // определение здания, если еще не определено
         if (p.Building == null)
         {
             p.DefineBuilding(false);
         }
         p.CreatePoint();
         Points.Add(p);
         // Обновление - Расчет и визуализация точки
         p.Update();
         VisualTrees.VisualUpdate();
     }
 }
示例#5
0
        /// <summary>
        /// Инициализация расчета елочек - новая или обновление старого
        /// </summary>
        public void Initialize(InsModel insModel)
        {
            this.Model = insModel;

            // Визуализация елочек
            if (VisualTrees != null)
            {
                // Удаление старой визуализации
                VisualTrees.VisualsDelete();
                VisualTrees.TreeModel = this;
            }
            else
            {
                VisualTrees = new VisualTree(this);
                if (isVisualTreeOnOffForLoad)
                {
                    VisualTrees.VisualIsOn = isVisualTreeOnOffForLoad;
                }
            }

            if (TreeOptions == null)
            {
                TreeOptions = TreeOptions.Default();
            }

            if (Points == null)
            {
                Points = new ObservableCollection <InsPoint>();
            }

            //if (Points != null)
            //{
            //    // Очистка точек, с очисткой визуалз
            //    DeletePointsVisualIllums();
            //    Points.Clear();
            //}
            //else
            //{
            //    Points = new ObservableCollection<InsPoint>();
            //}
        }