From e358beb08f5be49703009b64f058ecfbcfeefbd9 Mon Sep 17 00:00:00 2001
From: qin <a@163.com>
Date: 星期六, 28 九月 2024 14:27:52 +0800
Subject: [PATCH] 测试standard2.1

---
 HStation.RevitDev/RevitDataExport/Parser/FaMen.cs |  165 ++++++++++++++++++++++++++++++-------------------------
 1 files changed, 90 insertions(+), 75 deletions(-)

diff --git a/HStation.RevitDev/RevitDataExport/Parser/FaMen.cs b/HStation.RevitDev/RevitDataExport/Parser/FaMen.cs
index 21a0f27..494931c 100644
--- a/HStation.RevitDev/RevitDataExport/Parser/FaMen.cs
+++ b/HStation.RevitDev/RevitDataExport/Parser/FaMen.cs
@@ -1,75 +1,90 @@
-锘縰sing Autodesk.Revit.DB;
-using Glodon.Revit.Utility;
-using HStation.RevitDev.Model.AttributeClass;
-using HStation.RevitDev.RevitDataExport.Common;
-using HStation.RevitDev.RevitDataExport.Utility;
-using System;
-using System.Collections.Generic;
-
-namespace HStation.RevitDev.RevitDataExport.Parser
-{
-    /// <summary>
-    /// 闃�闂�
-    /// </summary>
-    [RevitType(Model.ModelEnum.RevitType.RFT_Valve)]
-    public class FaMenParser : BaseParser
-    {
-        public override List<BuiltInCategory> FilterCategories
-        {
-            get
-            {
-                return new List<BuiltInCategory>
-                {
-                    BuiltInCategory.OST_MechanicalEquipment,
-                    BuiltInCategory.OST_PipeFitting,
-                    BuiltInCategory.OST_PipeAccessory,
-                    BuiltInCategory.OST_GenericModel
-                };
-            }
-        }
-        public override List<string> FilterRegexes
-        {
-            get
-            {
-                return new List<string>
-                {
-                    "闃�|闃叉鍣▅璇曟按瑁呯疆|姘斿�欒ˉ鍋縷渚涚儹閲忔帶鍒秥鏈璇曟按"
-                };
-            }
-        }
-
-        public override string GetParserName()
-        {
-            return "闃�闂�";
-        }
-
-        public override List<Tuple<string, string>> PropertyParse(Element elem)
-        {
-            var result = new List<Tuple<string, string>>();
-            var fi = elem as FamilyInstance;
-            if (fi == null) { return result; }
-            var connectInfos = MEPHelper.GetConnecters(fi);
-            result.AddRange(CommonPropertyParse(elem));
-            for (int i = 1; i <= 5; i++)
-            {
-                if (connectInfos.Count >= i)
-                {
-                    result.Add(new Tuple<string, string>($"杩炴帴鐐箋i}", connectInfos[i - 1]?.ElementId.ToString()));
-                }
-                else
-                {
-                    result.Add(new Tuple<string, string>($"杩炴帴鐐箋i}", string.Empty));
-                }
-            }
-
-            // 鍏О鍘嬪姏
-            var length = (fi.Location as LocationCurve)?.Curve?.Length.FeetToMM();
-            result.Add(new Tuple<string, string>($"鍏О鍘嬪姏", ParameterOperator.GetParameterValueAsDouble(fi, "鍏О鍘嬪姏", ParameterConvert.InnerToMPa).ToString()));
-
-            //鍏О鐩村緞
-            var diameter = ParameterOperator.GetParameterValueAsString(elem, "鍏О鐩村緞");
-            result.Add(new Tuple<string, string>($"鐩村緞", diameter == null ? "0" : diameter.Replace("mm", "").Trim()));
-            return result;
-        }
-    }
-}
+锘縰sing Autodesk.Revit.DB;
+using Glodon.Revit.Utility;
+using HStation.RevitDev.Model.AttributeClass;
+using HStation.RevitDev.RevitDataExport.Common;
+using HStation.RevitDev.RevitDataExport.Entity;
+using HStation.RevitDev.RevitDataExport.Entity.ElementModels;
+using HStation.RevitDev.RevitDataExport.Utility;
+using System;
+using System.Collections.Generic;
+
+namespace HStation.RevitDev.RevitDataExport.Parser
+{
+    /// <summary>
+    /// 闃�闂�
+    /// </summary>
+    [RevitType(Model.ModelEnum.RevitType.RFT_Valve)]
+    public class FaMenParser : BaseParser
+    {
+        public override List<BuiltInCategory> FilterCategories
+        {
+            get
+            {
+                return new List<BuiltInCategory>
+                {
+                    BuiltInCategory.OST_MechanicalEquipment,
+                    BuiltInCategory.OST_PipeFitting,
+                    BuiltInCategory.OST_PipeAccessory,
+                    BuiltInCategory.OST_GenericModel
+                };
+            }
+        }
+        public override List<string> FilterRegexes
+        {
+            get
+            {
+                return new List<string>
+                {
+                    "闃�|闃叉鍣▅璇曟按瑁呯疆|姘斿�欒ˉ鍋縷渚涚儹閲忔帶鍒秥鏈璇曟按"
+                };
+            }
+        }
+
+        public override string GetParserName()
+        {
+            return "闃�闂�";
+        }
+
+        public override List<Tuple<string, string>> PropertyParse(Element elem)
+        {
+            var result = new List<Tuple<string, string>>();
+            var fi = elem as FamilyInstance;
+            if (fi == null) { return result; }
+            var connectInfos = MEPHelper.GetConnecters(fi);
+            result.AddRange(CommonPropertyParse(elem));
+            for (int i = 1; i <= 5; i++)
+            {
+                if (connectInfos.Count >= i)
+                {
+                    result.Add(new Tuple<string, string>($"杩炴帴鐐箋i}", connectInfos[i - 1]?.ElementId.ToString()));
+                }
+                else
+                {
+                    result.Add(new Tuple<string, string>($"杩炴帴鐐箋i}", string.Empty));
+                }
+            }
+
+            // 鍏О鍘嬪姏
+            var length = (fi.Location as LocationCurve)?.Curve?.Length.FeetToMM();
+            result.Add(new Tuple<string, string>($"鍏О鍘嬪姏", ParameterOperator.GetParameterValueAsDouble(fi, "鍏О鍘嬪姏", ParameterConvert.InnerToMPa).ToString()));
+
+            //鍏О鐩村緞
+            var diameter = ParameterOperator.GetParameterValueAsString(elem, "鍏О鐩村緞");
+            result.Add(new Tuple<string, string>($"鐩村緞", diameter == null ? "0" : diameter.Replace("mm", "").Trim()));
+            return result;
+        }
+
+        public override ElementModel Parse(Element elem)
+        {
+            var elemModel = BaseParse(elem);
+            var result = new ValveModel(elemModel);
+            result.缂栧彿 = elemModel.缂栧彿;
+            result.杩炴帴鏋勪欢 = ElementExtense2.GetLinkedElementIds(result.缂栧彿);
+            var pressure = ParameterOperator.GetParameterValueAsDouble(elem, "鍏О鍘嬪姏", ParameterConvert.InnerToMPa).ToString();
+            var diameter = ParameterOperator.GetParameterValueAsDouble(elem, "鍏О鐩村緞", StaticUtils.InnerToMM).ToString();
+            result.鍏О鍘嬪姏 = pressure;
+            result.鍏О鐩村緞 = diameter;
+            return result;
+        }
+    }
+}

--
Gitblit v1.9.3