Example #1
0
 /// <summary>
 /// Обновление визуализации елочек
 /// </summary>
 public void UpdateVisualTree(InsPoint insPoint = null)
 {
     if (VisualTrees != null)
     {
         VisualTrees.VisualIsOn = IsVisualTreeOn;
     }
 }
Example #2
0
        /// <summary>
        /// Выбор новой точки
        /// </summary>
        public InsPoint SelectNewPoint(InsModel model)
        {
            doc        = model.Doc;
            ed         = doc.Editor;
            this.model = model;
            map        = model.Map;

            // Запрос точки
            MapBuilding building;
            var         pt = PromptSelectPointOnScreen(out building);

            var p = new InsPoint(model, pt);

            if (building == null)
            {
                p.Height = 0;
            }
            else
            {
                p.Building = building;
            }
            // Окно настроек расчетной точки (парметры окна, здания, высота точки)
            var vm = new InsPointViewModel(p);

            if (InsService.ShowDialog(vm) == true)
            {
                return(p);
            }
            else
            {
                return(null);
            }
        }
Example #3
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();
     }
 }
Example #4
0
        /// <summary>
        /// Показать точку на чертеже
        /// </summary>
        public void ShowPoint(InsPoint selectedPoint)
        {
            if (selectedPoint == null)
            {
                return;
            }

            var doc = Model.Doc;

            using (doc.LockDocument())
            {
                Editor    ed       = doc.Editor;
                var       point    = selectedPoint.Point;
                double    delta    = 5;
                Extents3d extPoint = new Extents3d(new Point3d(point.X - delta, point.Y - delta, 0),
                                                   new Point3d(point.X + delta, point.Y + delta, 0));
                ed.Zoom(extPoint);
            }
        }
Example #5
0
        public void AddPoint(DicED dicInsPt, ObjectId idPt)
        {
            if (dicInsPt == null || idPt.IsNull)
            {
                return;
            }

            using (var dbPt = idPt.Open(OpenMode.ForRead) as DBPoint)
            {
                if (dbPt == null)
                {
                    return;
                }
                InsPoint insPoint = null;
                insPoint = new InsPoint(dbPt, Model);
                insPoint.SetExtDic(dicInsPt, Model.Doc);
                // Добавление точки в расчет елочек
                AddPoint(insPoint);
            }
        }
Example #6
0
 /// <summary>
 /// Удаление точки
 /// </summary>
 public void DeletePoint(InsPoint insPoint)
 {
     Points.Remove(insPoint);
     //VisualTrees.Update(); // Обновляется в Points_CollectionChanged
 }