Dear Experts,
I was trying to get list of wire connected to specific Electrical Equipment (Panel).
I tried MepOver package MEP connector info but no any result.
I tried Connector.ConnectedElements returned only one of wire element. Other wire elements missing.
Any recommendation python method or custom dynamo node.
import clr
import sys
import System
clr.AddReference('ProtoGeometry')
from Autodesk.DesignScript.Geometry import *
import Autodesk.DesignScript.Geometry as DS
#import Revit API
clr.AddReference('RevitAPI')
import Autodesk
from Autodesk.Revit.DB import *
import Autodesk.Revit.DB as DB
#import net library
from System import Array
from System.Collections.Generic import List, IList, Dictionary
clr.AddReference("System.Core")
clr.ImportExtensions(System.Linq)
#import transactionManager and DocumentManager (RevitServices is specific to Dynamo)
clr.AddReference('RevitServices')
import RevitServices
from RevitServices.Persistence import DocumentManager
from RevitServices.Transactions import TransactionManager
doc = DocumentManager.Instance.CurrentDBDocument
uiapp = DocumentManager.Instance.CurrentUIApplication
uidoc = uiapp.ActiveUIDocument
app = uiapp.Application
sdkNumber = int(app.VersionNumber)
panel = UnwrapElement(IN[0])
if sdkNumber < 2021:
lst_elec_sys_Ids = [x.Id for x in panel.MEPModel.ElectricalSystems]
else:
lst_elec_sys_Ids = [x.Id for x in panel.MEPModel.GetElectricalSystems()]
out_wires = DB.FilteredElementCollector(doc).OfCategory(DB.BuiltInCategory.OST_Wire)\
.WhereElementIsNotElementType()\
.Where(lambda x : x.MEPSystem is not None and x.MEPSystem.Id in lst_elec_sys_Ids)\
.ToList()
OUT = out_wires