Esempio n. 1
0
        public static List <IntersectionMepCurve> HTMLToMEPIntersections(Document hostdoc, string path)
        {
            var rowLog        = LoggingMachine.NewLog("Распознование коллизий", "", "Не найден файл с элементом, не обновлена связь или элементы уже удалены");
            var angledPipeLog = LoggingMachine.NewLog("Распознование коллизий", "", "Труба или воздуховод не лежат в допустимой плоскости");

            CollisionReportTable table = new CollisionReportTable(path);

            List <IntersectionMepCurve> result = new List <IntersectionMepCurve>();

            try
            {
                foreach (var row in table.Rows)
                {
                    var item = HTMLRowToIntersection(row, hostdoc, rowLog, angledPipeLog);
                    result.Add(item);
                }
                result.RemoveAll(x => x == null);
                LoggingMachine.Show();
            }
            catch (DocumentNotFoundException e)
            {
                TaskDialog.Show("Ошибка", e.Message);
            }
            catch (DocumentNotLoadedException e)
            {
                var td = new TaskDialog("Ошибка");
                td.MainInstruction = e.Message;
                td.MainContent     = "Обновите связанный документ и повторите попытку";
                td.Show();
            }
            return(result);
        }
Esempio n. 2
0
        public TwoDoc(Document doc, CollisionReportTable table)
        {
            InitializeComponent();
            CurrentDoc = doc;
            Table      = table;
            var linkedDocs = new FilteredElementCollector(doc).OfClass(typeof(RevitLinkInstance)).Cast <RevitLinkInstance>().Select(x => new TwoDocComboBoxItem(x)).ToArray();

            LinkComboBox1.Items.AddRange(linkedDocs);
            LinkComboBox2.Items.AddRange(linkedDocs);
            LinkComboBox1.SelectedIndex = LinkComboBox2.SelectedIndex = 0;

            textBoxExample1.Text = table.Rows[0].E1_Path;
            textBoxExample2.Text = table.Rows[0].E2_Path;
            Suggest();
        }
Esempio n. 3
0
 private void loadReport(string path)
 {
     Table     = new CollisionReportTable(path);
     this.Text = "Просмотр коллизий: " + System.IO.Path.GetFileName(path);
     dataGridView.DataSource = Table.Rows;
 }