revit二次开发--获取element的三种方法

来源:互联网 发布:movielens数据集下载 编辑:程序博客网 时间:2024/05/22 14:13

Revit 二次开发中,如何获取项目中的element?

一下提供三种方法

方法一:通过ElementId来获取

Docment doc   =commanddata.uiapplication.activedocment.docment;ElementId eid = new ElmentId("123");Element newEle = doc.GetElement(eid );

方法二:通过selection来获取

Selection choices = uidoc.Selection;// Pick one object from Revit.Reference hasPickOne = choices.PickObject(ObjectType.Element);if (hasPickOne != null){    TaskDialog.Show("Revit", "One element selected.");}

方法三:通过过滤来获取

private void GetElements(UIDocument uiDoc){    StringBuilder message = new StringBuilder();    FilteredElementCollector viewCollector =         new FilteredElementCollector(uiDoc.Document, uiDoc.ActiveView.Id);    viewCollector.OfCategory(BuiltInCategory.OST_Walls);    message.AppendLine("Wall category elements within active View: "       + viewCollector.ToElementIds().Count);    FilteredElementCollector docCollector = new FilteredElementCollector(uiDoc.Document);    docCollector.OfCategory(BuiltInCategory.OST_Walls);    message.AppendLine("Wall category elements within document: "       + docCollector.ToElementIds().Count);    TaskDialog.Show("Revit", message.ToString());}
0 0
原创粉丝点击