Revit MEP API连接器类别
API 类别 连接器 revit
2023-09-11 14:21:42 时间
连接器的类别,风管不仅有两端,可能在曲线上也有。
url:http://greatverve.cnblogs.com/p/revit-mep-api-ConnectorType.html
//连接器
[TransactionAttribute(Autodesk.Revit.Attributes.TransactionMode.Manual)]
public class cmdConnector : IExternalCommand
{
public Result Execute(ExternalCommandData commandData, ref string messages, ElementSet elements)
{
UIApplication app = commandData.Application;
Document doc = app.ActiveUIDocument.Document;
Selection sel = app.ActiveUIDocument.Selection;
Transaction ts = new Transaction(doc, "revit");
ts.Start();
Reference refDuct = sel.PickObject(ObjectType.Element, "duct");
Duct duct = doc.GetElement(refDuct) as Duct;
ConnectorSetIterator csi = duct.ConnectorManager.Connectors.ForwardIterator();
int iCount = 0;
int iEnd = 0;
int iCurve = 0;
while (csi.MoveNext())
{
iCount += 1;
Connector conn = csi.Current as Connector;
if (ConnectorType.End == conn.ConnectorType)//一般风管的连接器
{
iEnd += 1;
}
else if (ConnectorType.Curve == conn.ConnectorType)//风管曲线上的连接器
{
iCurve += 1;
}
}
TaskDialog.Show("count", iCount + "," + iEnd + "," + iCurve + "," + duct.UniqueId);
ts.Commit();
return Result.Succeeded;
}
}
[TransactionAttribute(Autodesk.Revit.Attributes.TransactionMode.Manual)]
public class cmdConnector : IExternalCommand
{
public Result Execute(ExternalCommandData commandData, ref string messages, ElementSet elements)
{
UIApplication app = commandData.Application;
Document doc = app.ActiveUIDocument.Document;
Selection sel = app.ActiveUIDocument.Selection;
Transaction ts = new Transaction(doc, "revit");
ts.Start();
Reference refDuct = sel.PickObject(ObjectType.Element, "duct");
Duct duct = doc.GetElement(refDuct) as Duct;
ConnectorSetIterator csi = duct.ConnectorManager.Connectors.ForwardIterator();
int iCount = 0;
int iEnd = 0;
int iCurve = 0;
while (csi.MoveNext())
{
iCount += 1;
Connector conn = csi.Current as Connector;
if (ConnectorType.End == conn.ConnectorType)//一般风管的连接器
{
iEnd += 1;
}
else if (ConnectorType.Curve == conn.ConnectorType)//风管曲线上的连接器
{
iCurve += 1;
}
}
TaskDialog.Show("count", iCount + "," + iEnd + "," + iCurve + "," + duct.UniqueId);
ts.Commit();
return Result.Succeeded;
}
}
相关文章
- 【Web Audio API】 — 那些年的 web audio
- 分享二:架构设计分享一:关于API分布式服务提供方式
- golang http客户端常用API:GET POST HEAD及自定义http客户端代码示例
- Python Django Q查询和F查询API
- 微信小程序开发系列 (三) :微信小程序如何响应用户点击事件和微信平台 API 的使用方法介绍
- Atitit.跨语言 java c#.net php js常用的codec encode算法api 兼容性 应该内置到语言里面
- Atitit.常用语言的常用内部api 以及API兼容性对源码级别可移植的重要性 总结
- MongoDB最简单的入门教程之五-通过Restful API访问MongoDB
- jQuery UI API 类别 - 主题(Theming)
- jQuery UI API 类别 - 交互(Interactions)
- jQuery UI API 类别 - 交互(Interactions)
- RobotFrameWork - 11 - Selenium API - if分支语句与for循环
- Java 8 Stream Api 中的 peek、map、foreach区别