Пример #1
0
 //Добавление системы шлейфа к блоку
 void findAndAddSystem(MEPSystem system)
 {
     try
     {
         ARKBLocks.ForEach(e =>
         {
             if (e.id == system.BaseEquipment.Id.ToString())
             {
                 if (system.LookupParameter("Комментарии").AsString() == null)
                 {
                     e.addSystem(system);
                 }
                 else
                 {
                     e.addAlertSystem(system);
                 }
             }
         }
                           );
     }
     catch { throw new Exception("Ошибка добавления системы шлейфа к блоку."); }
 }
Пример #2
0
 private double getL(MEPSystem m, int L)
 {
     return(m.LookupParameter("Длина").AsDouble() / L);
 }
Пример #3
0
        //для оповещателей
        void DrawSensorsAlert(XYZ point, MEPSystem mep, int ark, ViewDrafting view, Document doc)
        {
            int    bia     = 0;
            int    bias    = 0;
            int    bial    = 0;
            string biaMes  = "";
            string bialMes = "";

            foreach (Element e in mep.Elements)
            {
                if (e.LookupParameter("Семейство и типоразмер").AsValueString().Contains("комбинированн") || e.LookupParameter("Семейство и типоразмер").AsValueString().Contains("светозвук"))
                {
                    try { biaMes = e.Name.Split('"')[1]; } catch { };
                    ++bia;
                }
                if (e.LookupParameter("Семейство и типоразмер").AsValueString().Contains("светов"))
                {
                    try { bialMes = e.Name.Split('"')[1]; } catch { };
                    ++bial;
                }
                if (e.LookupParameter("Семейство и типоразмер").AsValueString().Contains("звуковой") && !e.LookupParameter("Семейство и типоразмер").AsValueString().Contains("светозвуковой"))
                {
                    ++bias;
                }
            }
            if (bial > 0)
            {
                if (bial == 1)
                {
                    point = drawOneAlert(doc, view, "BIAL", 1, Double.Parse(mep.LookupParameter("Комментарии").AsString().Remove(0, 1)), ark, point, bialMes);
                }
                if (bial == 2)
                {
                    point = drawTwoAlert(doc, view, "BIAL", Double.Parse(mep.LookupParameter("Комментарии").AsString().Remove(0, 1)), ark, point, bialMes);
                }
                if (bial > 2)
                {
                    point = drawMoreAlert(doc, view, "BIAL", bial, Double.Parse(mep.LookupParameter("Комментарии").AsString().Remove(0, 1)), ark, point, bialMes);
                }
            }
            if (bias > 0)
            {
                if (bial > 0)
                {
                    geometry.AddLines(doc, view, geometry.ConnectLinesByPoints(new List <XYZ> {
                        point, new XYZ(point.X + 0.5, point.Y, 0)
                    }));
                    point = new XYZ(point.X + 0.5, point.Y, 0);
                }
                //нарисовать соединение
                if (bias == 1)
                {
                    point = drawOneAlert(doc, view, "BIAS", 1, Double.Parse(mep.LookupParameter("Комментарии").AsString().Remove(0, 1)), ark, point, "");
                }
                if (bias == 2)
                {
                    point = drawTwoAlert(doc, view, "BIAS", Double.Parse(mep.LookupParameter("Комментарии").AsString().Remove(0, 1)), ark, point, "");
                }
                if (bias > 2)
                {
                    point = drawMoreAlert(doc, view, "BIAS", bias, Double.Parse(mep.LookupParameter("Комментарии").AsString().Remove(0, 1)), ark, point, "");
                }
            }
            if (bia > 0)
            {
                if (bias > 0)
                {
                    geometry.AddLines(doc, view, geometry.ConnectLinesByPoints(new List <XYZ> {
                        point, new XYZ(point.X + 0.5, point.Y, 0)
                    }));
                    point = new XYZ(point.X + 0.5, point.Y, 0);
                }
                //нарисовать соединение
                if (bia == 1)
                {
                    point = drawOneAlert(doc, view, "BIA", 1, Double.Parse(mep.LookupParameter("Комментарии").AsString().Remove(0, 1)), ark, point, biaMes);
                }
                if (bia == 2)
                {
                    point = drawTwoAlert(doc, view, "BIA", Double.Parse(mep.LookupParameter("Комментарии").AsString().Remove(0, 1)), ark, point, biaMes);
                }
                if (bia > 2)
                {
                    point = drawMoreAlert(doc, view, "BIA", bias, Double.Parse(mep.LookupParameter("Комментарии").AsString().Remove(0, 1)), ark, point, biaMes);
                }
            }
        }