From 982b61fae3105d90d46709aaeb8c0b46d5e7ae6b Mon Sep 17 00:00:00 2001 From: zhangyuekai <zhangyuekai@126.com> Date: 星期一, 05 八月 2024 17:44:14 +0800 Subject: [PATCH] 构件导出结果平铺调整 --- HStation.RevitDev/RevitDataExport/Utility/CacheUtil.cs | 33 +++++++++++++++++++++++++++++++-- 1 files changed, 31 insertions(+), 2 deletions(-) diff --git a/HStation.RevitDev/RevitDataExport/Utility/CacheUtil.cs b/HStation.RevitDev/RevitDataExport/Utility/CacheUtil.cs index 6bcca67..3f06364 100644 --- a/HStation.RevitDev/RevitDataExport/Utility/CacheUtil.cs +++ b/HStation.RevitDev/RevitDataExport/Utility/CacheUtil.cs @@ -1,5 +1,6 @@ 锘縰sing Autodesk.Revit.DB; using HStation.RevitDev.RevitDataExport.Entity; +using System; using System.IO; using System.Linq; @@ -7,7 +8,7 @@ { public class CacheUtil { - public static void ReadCache(Document doc) + public static void InitCache(Document doc) { var filePath = doc.PathName; var cache = File.ReadAllText(Common.GlobalResource.ConfigFilePath); @@ -20,6 +21,10 @@ if (record != null) { Common.GlobalResource.RevitModels = record.Record; + foreach (var pair in record.Record) + { + Common.GlobalResource.ElementIds.AddRange(pair.Value); + } } } @@ -65,6 +70,30 @@ var config = Newtonsoft.Json.JsonConvert.SerializeObject(records); File.WriteAllText(Common.GlobalResource.ConfigFilePath, config); - } + } + + public static void HideOrShowModels(Document document) + { + if (document == null) { return; } + var ids = Common.GlobalResource.ElementIds.Select(x => new ElementId(int.Parse(x))).ToList(); + if (ids.Count == 0) + { + return; + } + Common.GlobalResource.HideMode = !Common.GlobalResource.HideMode; + using (Transaction trans = new Transaction(document, "hide elements")) + { + trans.Start(); + if (Common.GlobalResource.HideMode) + { + document.ActiveView.HideElements(ids); + } + else + { + document.ActiveView.UnhideElements(ids); + } + trans.Commit(); + } + } } } -- Gitblit v1.9.3