ConnectorSet connectorSet = new ConnectorSet();
Connector baseConnector = null;
ConnectorSetIterator csi = null;
ElementSet selection = sel.Elements;
foreach (Element e in selection)
{
if (e is FamilyInstance)
{
FamilyInstance fi = e as FamilyInstance;
Family family = fi.Symbol.Family;
if (family.FamilyCategory.Name == "机械设备")
{
if (null != fi.MEPModel)
{
csi = fi.MEPModel.ConnectorManager.Connectors.ForwardIterator();
while (csi.MoveNext())
{
Connector conn = csi.Current as Connector;
if (conn.Direction == FlowDirectionType.Out && conn.DuctSystemType == DuctSystemType.SupplyAir)
{
baseConnector = conn;
break;
}
}
}
}
else if (family.FamilyCategory.Name == "风道末端")
{
csi = fi.MEPModel.ConnectorManager.Connectors.ForwardIterator();
csi.MoveNext();
connectorSet.Insert(csi.Current as Connector);
}
}
}
MechanicalSystem mechanicalSys = null;
PipingSystem pipingSystem = null;
if (null != baseConnector && connectorSet.Size > 0)
{
mechanicalSys = doc.Create.NewMechanicalSystem(baseConnector, connectorSet, DuctSystemType.SupplyAir);
//pipingSystem = doc.Create.NewPipingSystem(baseConnector, connectorSet, PipeSystemType.SupplyHydronic);
}
Connector baseConnector = null;
ConnectorSetIterator csi = null;
ElementSet selection = sel.Elements;
foreach (Element e in selection)
{
if (e is FamilyInstance)
{
FamilyInstance fi = e as FamilyInstance;
Family family = fi.Symbol.Family;
if (family.FamilyCategory.Name == "机械设备")
{
if (null != fi.MEPModel)
{
csi = fi.MEPModel.ConnectorManager.Connectors.ForwardIterator();
while (csi.MoveNext())
{
Connector conn = csi.Current as Connector;
if (conn.Direction == FlowDirectionType.Out && conn.DuctSystemType == DuctSystemType.SupplyAir)
{
baseConnector = conn;
break;
}
}
}
}
else if (family.FamilyCategory.Name == "风道末端")
{
csi = fi.MEPModel.ConnectorManager.Connectors.ForwardIterator();
csi.MoveNext();
connectorSet.Insert(csi.Current as Connector);
}
}
}
MechanicalSystem mechanicalSys = null;
PipingSystem pipingSystem = null;
if (null != baseConnector && connectorSet.Size > 0)
{
mechanicalSys = doc.Create.NewMechanicalSystem(baseConnector, connectorSet, DuctSystemType.SupplyAir);
//pipingSystem = doc.Create.NewPipingSystem(baseConnector, connectorSet, PipeSystemType.SupplyHydronic);
}