qin
2024-09-28 e358beb08f5be49703009b64f058ecfbcfeefbd9
HStation.RevitDev/RevitDataExport/Utility/FamilyInstanceExtense.cs
@@ -2,21 +2,37 @@
using Autodesk.Revit.DB.Plumbing;
using HStation.RevitDev.RevitDataExport.Common;
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 IsPipeHat(this FamilyInstance fi)
        {
            if (fi == null) return false;
            MEPModel mEPModel = fi.MEPModel;
            ConnectorSet connectors = mEPModel.ConnectorManager?.Connectors;
            if (connectors == null) return false;
            if (connectors.Size == 1)
            {
                var iterator = connectors.GetEnumerator();
                iterator.MoveNext();
                Connector connector = iterator.Current as Connector;
                if (connector == null) { return false; }
                return true;
            }
            return false;
        }
        public static bool IsWanTou(this FamilyInstance fi)
        {
            if (fi == null) return false;
            MEPModel mEPModel = fi.MEPModel;
            ConnectorSet connectors = mEPModel.ConnectorManager.Connectors;
            ConnectorSet connectors = mEPModel.ConnectorManager?.Connectors;
            if (connectors == null) return false;
            if (connectors.Size == 2)
@@ -44,7 +60,7 @@
            if (fi == null) return false;
            MEPModel mEPModel = fi.MEPModel;
            ConnectorSet connectors = mEPModel.ConnectorManager.Connectors;
            ConnectorSet connectors = mEPModel.ConnectorManager?.Connectors;
            if (connectors == null) return false;
            if (connectors.Size == 2)
@@ -72,7 +88,7 @@
            if (fi == null) return false;
            MEPModel mEPModel = fi.MEPModel;
            var connectors = mEPModel.ConnectorManager.Connectors;
            var connectors = mEPModel.ConnectorManager?.Connectors;
            if (connectors == null) return false;
            if (connectors.Size != 3)
@@ -87,7 +103,7 @@
            if (fi == null) return false;
            MEPModel mEPModel = fi.MEPModel;
            var connectors = mEPModel.ConnectorManager.Connectors;
            var connectors = mEPModel.ConnectorManager?.Connectors;
            if (connectors == null) return false;
            if (connectors.Size != 4) return false;
@@ -99,7 +115,7 @@
            if (fi == null) return false;
            MEPModel mEPModel = fi.MEPModel;
            var connectors = mEPModel.ConnectorManager.Connectors;
            var connectors = mEPModel.ConnectorManager?.Connectors;
            if (connectors == null) return false;
            foreach (Connector connector in connectors)