From 2ea53b9fbd3fc318f1c02c1888c22aec5abab8ef Mon Sep 17 00:00:00 2001 From: zhangyuekai <zhangyuekai@126.com> Date: 星期六, 17 八月 2024 13:55:58 +0800 Subject: [PATCH] Merge branch 'master' of http://47.103.154.90:83/r/HStation/RevitTool.V1.0 --- HStation.RevitDev/RevitDataExport/Parser/Qita.cs | 156 ++++++++++++++++++++++++++++++--------------------- 1 files changed, 91 insertions(+), 65 deletions(-) diff --git a/HStation.RevitDev/RevitDataExport/Parser/Qita.cs b/HStation.RevitDev/RevitDataExport/Parser/Qita.cs index 9057f4c..513fd96 100644 --- a/HStation.RevitDev/RevitDataExport/Parser/Qita.cs +++ b/HStation.RevitDev/RevitDataExport/Parser/Qita.cs @@ -1,66 +1,92 @@ -锘縰sing Autodesk.Revit.DB; -using Autodesk.Revit.DB.Plumbing; -using Glodon.Revit.Utility; -using HStation.RevitDev.Model.AttributeClass; -using HStation.RevitDev.RevitDataExport.Common; -using System; -using System.Collections.Generic; - -namespace HStation.RevitDev.RevitDataExport.Parser +锘縰sing Autodesk.Revit.DB; +using Autodesk.Revit.DB.Plumbing; +using Glodon.Revit.Utility; +using HStation.RevitDev.Model.AttributeClass; +using HStation.RevitDev.RevitDataExport.Entity; +using HStation.RevitDev.RevitDataExport.Entity.ElementModels; +using HStation.RevitDev.RevitDataExport.Utility; +using System.Collections.Generic; + +namespace HStation.RevitDev.RevitDataExport.Parser { - /// <summary> - /// 寮ご - /// </summary> - /// - [RevitType(Model.ModelEnum.RevitType.RFT_Others)] - public class QitaParser : BaseParser - { - public override List<BuiltInCategory> FilterCategories - { - get - { - return new List<BuiltInCategory> - { - - }; - } - } - 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 instance = elem.Document.GetElement(elem.Id); - var fi = instance 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)); - } - } - return result; - } - } -} + /// <summary> + /// qita + /// </summary> + /// + [RevitType(Model.ModelEnum.RevitType.RFT_Others)] + public class QitaParser/* : BaseParser*/ + { + //public override List<BuiltInCategory> FilterCategories + //{ + // get + // { + // return new List<BuiltInCategory> + // { + + // }; + // } + //} + //public override List<string> FilterRegexes + //{ + // get + // { + // return new List<string> + // { + + // }; + // } + //} + + //public override string GetParserName() + //{ + // return "鍏朵粬"; + //} + + public /*override*/ ElementModel Parse(Element elem) + { + var elemModel = BaseParse(elem); + var result = new OtherModel(elemModel); + return result; + } + + public OtherModel BaseParse(Element elem) + { + var elemName = ParameterOperator.GetElementName(elem); + var elemId = elem.Id.IntegerValue.ToString(); + var sysName = ParameterOperator.GetElementPipingSystemType(elem)?.Name; + var box = BoundingBoxHelper.BoundingBoxSerialize(elem.get_BoundingBox(null)); + var refLevel = elem.GetParameterByProName(new List<string> { "鍙傜収鏍囬珮", "鏍囬珮" })?.AsValueString(); + return new OtherModel(new ElementModel + { + 鍚嶇О = elemName, + 缂栧彿 = elemId, + 鍖呭洿妗� = box, + 绯荤粺绫诲瀷 = sysName, + 妤煎眰 = refLevel, + 杩炴帴鏋勪欢 = ElementExtense2.GetLinkedElementIds(elemId) + }); + } + + //public override List<Tuple<string, string>> PropertyParse(Element elem) + //{ + // var result = new List<Tuple<string, string>>(); + // var instance = elem.Document.GetElement(elem.Id); + // var fi = instance 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)); + // } + // } + // return result; + //} + } +} -- Gitblit v1.9.3