Document.Delete()方法的妙用

来源:互联网 发布:证件制作软件 编辑:程序博客网 时间:2024/04/29 22:36

 

Delete方法的妙用。

从帮助文档我们知道,Revit的对象删除函数Delete() 可以返回出在删除目标对象的过程中删除了多少与这个对象相关的对象,这些对象可能是一些隐藏的参考平面,尺寸线等一起删除。 可以遍历返回结果来分析这些对象。

这个方法给我们带来的一个极大的用处是用于寻找与目标对象有关联的对象。

 

联合Delete方法和Revit的事物,我们可以来寻找与一个目标对象相关联的那些对象。

 

 1. 先启动一个事务

    Transaction trans = new Transaction(Doc);

    trans.Start("TempDelete");

  2. 调用删除方法删除目标对象

    ICollector<ElementId> lists = doc.Delete(targetElement);  //返回与目标对象targetElement一起删除的对象

  3. 事务回滚,这样上面的删除不发生作用,但是我们已经去找到了相关联删除对象的Id 集合 lists.

    trans.RollBack();

  4. 对找到得对象集合访问,可做任何的操作。