revit二次开发之七 Revit隔离与隐藏

Revit中经常出现隔离和隐藏对象,通过API如何实现这些功能呢?主要用到View中的几个关键函数

一、隔离元素

1、一个隔离多个类别

public void IsolateCategoriesTemporary(ICollection<ElementId> elementIds)

2、一次隔离一个类别

public void IsolateCategoryTemporary(ElementId elementId)

3、一次隔离多个元素

public void IsolateElementsTemporary(ICollection<ElementId> elementIds)

4、一次隔离一个元素

public void IsolateElementTemporary(ElementId elementId)

 

二、隐藏元素

1、隐藏多个类别

public void HideCategoriesTemporary(ICollection<ElementId> elementIds)

2、隐藏一个类别

public void HideCategoryTemporary(ElementId elementId)

3、隐藏多个元素

public void HideElementsTemporary(ICollection<ElementId> elementIdSet)

4、隐藏一个元素

public void HideElementTemporary(ElementId elementId)

三、判断是否存在隐藏和隔离

   通过调用以下函数,判断当前视图中,是否有隐藏和隔离对象,假如为true,则说明存在隔离和隐藏对象,假如为false则不存在

public bool IsTemporaryHideIsolateActive()

四、取消隐藏和隔离

   调用以下函数,实现对隔离和隐藏对象的处理

public void DisableTemporaryViewMode(TemporaryViewMode mode)

TemporaryViewMode是一个枚举,其枚举的参数如下:

成员表述
RevealHiddenElements The view is in reveal hidden elements mode
TemporaryHideIsolate 视图是临时隐藏和隔离模式
WorksharingDisplay The view is in one of the worksharing display modes
TemporaryViewProperties The view is in the selected View Properties applied temporarily.
Raytrace The view is in the mode that shows the model in interactive raytracing
ExplodedView The view is in the mode that shows the model in exploded view and allows user changes/configurations
RevealConstraints The view is in the mode that reveals constraints between elements in the model.
PreviewFamilyVisibility The view is in the mode that shows visibility settings applied in the environment of a family document.
posted @ 2017-05-17 16:01  Min.Xiaoshuang  阅读(3417)  评论(0编辑  收藏  举报