From caa286712423a1a4413113d31f78f515efc400be Mon Sep 17 00:00:00 2001 From: zhangyuekai <zhangyuekai@126.com> Date: 星期四, 08 八月 2024 22:53:12 +0800 Subject: [PATCH] fix bugs --- HStation.RevitDev/RevitDataExport/Utility/DocumentUtil.cs | 37 ++++++++++++++----------------------- 1 files changed, 14 insertions(+), 23 deletions(-) diff --git a/HStation.RevitDev/RevitDataExport/Utility/DocumentUtil.cs b/HStation.RevitDev/RevitDataExport/Utility/DocumentUtil.cs index 9f46d5f..ed8d541 100644 --- a/HStation.RevitDev/RevitDataExport/Utility/DocumentUtil.cs +++ b/HStation.RevitDev/RevitDataExport/Utility/DocumentUtil.cs @@ -41,7 +41,7 @@ RemoveElements(removeIds); ModifyElements(modifiedIds); - UpdateLinkerInfo(doc); + AddUnhandledElements(); GlobalResource.InstancePanel.UpdateForm(); } catch (Exception ex) @@ -229,26 +229,7 @@ { return new List<Element>(); } - //FilteredElementCollector collector = null; - //foreach (Category cate in doc.Settings.Categories) - //{ - // if (cate.CategoryType != CategoryType.Model) - // { - // continue; - // } - // var subCollector = new FilteredElementCollector(doc); - // subCollector.OfCategory((BuiltInCategory)(cate.Id.IntegerValue)); - // subCollector.WhereElementIsNotElementType(); - // if (collector == null) - // { - // collector = subCollector; - // } - // else - // { - // collector.UnionWith(subCollector); - // } - //} - // + var collector1 = new FilteredElementCollector(doc). OfCategory(BuiltInCategory.OST_PipeCurves). WhereElementIsNotElementType(); @@ -267,7 +248,7 @@ return elements1; } - public static void AddUnhandledElementsToCache() + public static void AddUnhandledElements() { var elements = GlobalResource.CurrentDocument.GetModelElements(); foreach (var element in elements) @@ -277,9 +258,19 @@ { continue; } - RevitMepCategoryService.MatchElement(element); + RevitMepCategoryService.AddToCache(element); } UpdateLinkerInfo(GlobalResource.CurrentDocument); } + + public static void UpdataDocumentCache(this Document doc) + { + if (doc.GetHashCode() != GlobalResource.CurrentDocument.GetHashCode()) + { + GlobalResource.CurrentDocument = doc; + GlobalResource.RevitModels = new Dictionary<RevitType, ObservableCollection<ElementModel>>(); + } + AddUnhandledElements(); + } } } -- Gitblit v1.9.3