From 33c800c1bd24faa163bb8dac5fcdd307077478d2 Mon Sep 17 00:00:00 2001 From: zhangyk-c <zhangyk-c@glodon.com> Date: 星期六, 20 七月 2024 16:49:55 +0800 Subject: [PATCH] 增加导出代码 --- HStation.RevitDev/RevitDataExport/Utility/FamilyInstanceExtense.cs | 81 +++++++++++++++++++++++++++ HStation.RevitDev/RevitDataExport/Utility/ExportParameter.cs | 13 ++++ HStation.RevitDev/RevitDataExport/Utility/PipeExtense.cs | 34 +++++++++++ 3 files changed, 128 insertions(+), 0 deletions(-) diff --git a/HStation.RevitDev/RevitDataExport/Utility/ExportParameter.cs b/HStation.RevitDev/RevitDataExport/Utility/ExportParameter.cs new file mode 100644 index 0000000..c2a4942 --- /dev/null +++ b/HStation.RevitDev/RevitDataExport/Utility/ExportParameter.cs @@ -0,0 +1,13 @@ +锘縰sing System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace HStation.RevitDev.RevitDataExport.Utility +{ + public class ExportParameter + { + + } +} diff --git a/HStation.RevitDev/RevitDataExport/Utility/FamilyInstanceExtense.cs b/HStation.RevitDev/RevitDataExport/Utility/FamilyInstanceExtense.cs new file mode 100644 index 0000000..1eb9dc5 --- /dev/null +++ b/HStation.RevitDev/RevitDataExport/Utility/FamilyInstanceExtense.cs @@ -0,0 +1,81 @@ +锘縰sing Autodesk.Revit.DB; +using Autodesk.Revit.DB.Plumbing; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace HStation.RevitDev.RevitDataExport.Utility +{ + public static class FamilyInstanceExtense + { + public static bool IsWanTou(this FamilyInstance fi) + { + if (fi == null) return false; + + MEPModel mEPModel = fi.MEPModel; + var connectors = mEPModel.ConnectorManager.Connectors; + if (connectors == null) return false; + + if (connectors.Size != 2) + { + return false; + } + return true; + } + + public static bool IsSanTong(this FamilyInstance fi) + { + if (fi == null) return false; + + MEPModel mEPModel = fi.MEPModel; + var connectors = mEPModel.ConnectorManager.Connectors; + if (connectors == null) return false; + + if (connectors.Size != 3) + { + return false; + } + return true; + } + + public static bool IsSiTong(this FamilyInstance fi) + { + if (fi == null) return false; + + MEPModel mEPModel = fi.MEPModel; + var connectors = mEPModel.ConnectorManager.Connectors; + + if (connectors == null) return false; + if (connectors.Size != 4) return false; + return true; + } + + public static bool ConnectWithPumpSystem(this FamilyInstance fi) + { + if (fi == null) return false; + + MEPModel mEPModel = fi.MEPModel; + var connectors = mEPModel.ConnectorManager.Connectors; + if (connectors == null) return false; + + foreach (Connector connector in connectors) + { + var allRefs = connector.AllRefs; + foreach (Connector connectedElement in allRefs) + { + if (connectedElement.Owner is Pipe pipe) + { + if (Common.GlobalResource.ElementIds.Contains(pipe.Id.IntegerValue.ToString())) + { + return true; + } + } + } + } + + return true; + } + } +} diff --git a/HStation.RevitDev/RevitDataExport/Utility/PipeExtense.cs b/HStation.RevitDev/RevitDataExport/Utility/PipeExtense.cs new file mode 100644 index 0000000..355e161 --- /dev/null +++ b/HStation.RevitDev/RevitDataExport/Utility/PipeExtense.cs @@ -0,0 +1,34 @@ +锘縰sing Autodesk.Revit.DB; +using Autodesk.Revit.DB.Plumbing; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace HStation.RevitDev.RevitDataExport.Utility +{ + public static class PipeExtense + { + public static bool ConnectWithPumpSystem(this Pipe pipe) + { + var manager = pipe.ConnectorManager; + var connectors = manager.Connectors; + foreach ( Connector connector in connectors ) + { + var allRefs = connector.AllRefs; + foreach (Connector reference in allRefs) + { + if (reference.Owner is FamilyInstance fi) + { + if (Common.GlobalResource.ElementIds.Contains(fi.Id.IntegerValue.ToString())) + { + return true; + } + } + } + } + return false; + } + } +} -- Gitblit v1.9.3