Revit二次开发之“过滤得到某一标高上的所有风管”
2011-08-28 10:53
357 查看
风管的Level值为空,墙对应Level,风管对应ReferenceLevel
//找到标高1上的所有风管
[Transaction(TransactionMode.Manual)]
[Regeneration(RegenerationOption.Manual)]
//[Journaling(JournalingMode.NoCommandData)]
public class cmdGetLevelDuct : IExternalCommand
{
public Result Execute(ExternalCommandData cmdData, ref string message, ElementSet elements)
{
UIDocument uiDoc = cmdData.Application.ActiveUIDocument;//base.m_uiDoc
Selection selection = uiDoc.Selection;
Transaction ts = new Transaction(uiDoc.Document, "LevelDuct");
ts.Start();
FilteredElementCollector collector = new FilteredElementCollector(uiDoc.Document);
collector.OfClass(typeof(Duct)).OfCategory(BuiltInCategory.OST_DuctCurves);
foreach (Element el in collector)
{
Duct duct = el as Duct;
if (duct.ReferenceLevel.Name == "标高 1")
TaskDialog.Show("title", duct.Id.ToString());
}
ts.Commit();
return Result.Succeeded;
}
}from:http://revit.5d6d.com/thread-1204-1-1.html
//找到标高1上的所有风管
[Transaction(TransactionMode.Manual)]
[Regeneration(RegenerationOption.Manual)]
//[Journaling(JournalingMode.NoCommandData)]
public class cmdGetLevelDuct : IExternalCommand
{
public Result Execute(ExternalCommandData cmdData, ref string message, ElementSet elements)
{
UIDocument uiDoc = cmdData.Application.ActiveUIDocument;//base.m_uiDoc
Selection selection = uiDoc.Selection;
Transaction ts = new Transaction(uiDoc.Document, "LevelDuct");
ts.Start();
FilteredElementCollector collector = new FilteredElementCollector(uiDoc.Document);
collector.OfClass(typeof(Duct)).OfCategory(BuiltInCategory.OST_DuctCurves);
foreach (Element el in collector)
{
Duct duct = el as Duct;
if (duct.ReferenceLevel.Name == "标高 1")
TaskDialog.Show("title", duct.Id.ToString());
}
ts.Commit();
return Result.Succeeded;
}
}from:http://revit.5d6d.com/thread-1204-1-1.html
相关文章推荐
- 得到小于某一个数的所有素数
- C# revit二次开发 一条语句找到所有的某种实例(二)
- Revit二次开发之快速过滤与慢速过滤【比目鱼原创】
- Revit API 开发 (5): 如何得到所有的categories,创建共享参数,并把它们绑定在一起
- 从新闻“雅虎发公告,宣布停止 YUI 的所有新开发”得到的启示
- Revit二次开发--过滤对象
- Revit二次开发之使用LINQ查询元素过滤集合里的元素【比目鱼原创】
- 一个得到添加属性(下拉条)brandss,某一特定值下的所有产品的例子
- Revit二次开发之“框选”过滤
- Revit二次开发(5):元素类型过滤
- Revit二次开发——加快过滤速度,以及对ElementIntersectsSolidFilter的API的Bug的处理办法
- 删除/清除/过滤标点(所有中英文标点)的正则表达式——Desktop Search开发笔记【经验积累】
- java 递归得到某一文件夹下所有的文件 统计文件个数
- 一个记录集,如何得到该记录集中某一字段所有是重复记录的记录集
- IOS开发得到所有的字体样式
- Revit二次开发之“遍历过滤对象”
- Revit二次开发之“得到对象的所属类型”
- Revit二次开发之“选择某一楼层的墙”
- IOS 开发之 -- 过滤掉字符串里面所有的非法字符 字典和json之间的互转
- IoEnumerateDeviceObjectList 枚举驱动的所有设备 文件过滤驱动 windows内核开发