//Добавление системы шлейфа к блоку 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("Ошибка добавления системы шлейфа к блоку."); } }
private double getL(MEPSystem m, int L) { return(m.LookupParameter("Длина").AsDouble() / L); }
//для оповещателей 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); } } }