Revit二次开发之ISelectionFilter 接口的用法

来源:互联网 发布:淘宝链接咋发 编辑:程序博客网 时间:2024/04/29 20:17
这个接口用来过滤Revit对象,比如你希望选择元素的时候,只选择某一类。
public static IList<Element> GetManyRefByRectangle(UIDocument doc){    ReferenceArray ra = new ReferenceArray();    ISelectionFilter selFilter = new MassSelectionFilter();    IList<Element> eList = doc.Selection.PickElementsByRectangle(selFilter,         "Select multiple faces"as IList<Element>;    return eList;}//重写两个方法,添加过滤条件。public class MassSelectionFilter : ISelectionFilter{    public bool AllowElement(Element element)    {        if (element.Category.Name == "Mass")        {            return true;        }        return false;    }    public bool AllowReference(Reference refer, XYZ point)    {        return false;    }}