# Hide Linked Elements in Active view

**URL:** <https://forum.dynamobim.com/t/hide-linked-elements-in-active-view/99208>\
**Category:** Developers\
**Tags:** revit, python\
**Created:** [March 19, 2024, 9:24am UTC](https://forum.dynamobim.com/t/hide-linked-elements-in-active-view/99208 "2024-03-19T09:24:05Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![prasad.chavan](https://avatars.discourse-cdn.com/v4/letter/p/958977/32.png) [@prasad.chavan](https://forum.dynamobim.com/u/prasad.chavan)\
**Post date:** [March 19, 2024, 9:24am UTC](https://forum.dynamobim.com/t/hide-linked-elements-in-active-view/99208/1 "2024-03-19T09:24:05Z")

</div>

import clr

clr.AddReference(‘RevitAPI’)  
from Autodesk.Revit import DB  
from Autodesk.Revit.DB import FilteredElementCollector, BuiltInCategory

clr.AddReference(‘RevitAPIUI’)  
from Autodesk.Revit.UI import \*

clr.AddReference(‘System’)  
from System.Collections.Generic import List

clr.AddReference(‘RevitNodes’)  
import Revit  
clr.ImportExtensions(Revit.GeometryConversion)  
clr.ImportExtensions(Revit.Elements)

clr.AddReference(‘RevitServices’)  
import RevitServices  
from RevitServices.Persistence import DocumentManager  
from RevitServices.Transactions import TransactionManager

doc = DocumentManager.Instance.CurrentDBDocument  
uidoc=DocumentManager.Instance.CurrentUIApplication.ActiveUIDocument  
view = uidoc.ActiveView

# Preparing input from dynamo to revit

linkInst = UnwrapElement(IN[0])  
parameterName = “Chamber Depth”  
parameterValue = (1800)/304.8

linkDoc = linkInst.GetLinkDocument()

# create a category filter

coll = FilteredElementCollector(linkDoc, view.Id).OfCategory(BuiltInCategory.OST\_DuctAccessory).WhereElementIsNotElementType().ToElements()

#coll\_list = list(coll)

TransactionManager.Instance.EnsureInTransaction(doc)

element\_to\_hide =

for ele in coll:  
param = ele.LookupParameter(parameterName)  
if param and param.AsDouble() == parameterValue:  
element\_to\_hide.append(ele.Id)

view.HideElements(element\_to\_hide)  
#out.append(ele)

TransactionManager.Instance.TransactionTaskDone()

uidoc.RefreshActiveView()

 ![Hide lnkd elements](https://us1.discourse-cdn.com/flex022/uploads/dynamobim/original/3X/2/6/26b8927bcd0faa704c85515eb3187b2c0b16d5cc.png)

---

<div class="post-metadata">

**Author:** ![Draxl\_Andreas](https://sea2.discourse-cdn.com/flex022/user_avatar/forum.dynamobim.com/draxl_andreas/32/145744_2.png) [@Draxl\_Andreas](https://forum.dynamobim.com/u/Draxl_Andreas)\
**Post date:** [March 20, 2024, 7:19am UTC](https://forum.dynamobim.com/t/hide-linked-elements-in-active-view/99208/2 "2024-03-20T07:19:31Z")

</div>

@prasad.chavan

paste your code with \</\>

```auto
import clr

clr.AddReference("RevitAPI")
from Autodesk.Revit import DB
from Autodesk.Revit.DB import FilteredElementCollector, BuiltInCategory

clr.AddReference("RevitAPIUI")
from Autodesk.Revit.UI import *

clr.AddReference("System")
from System.Collections.Generic import List

clr.AddReference("RevitNodes")
import Revit
clr.ImportExtensions(Revit.GeometryConversion)
clr.ImportExtensions(Revit.Elements)

clr.AddReference("RevitServices")
import RevitServices
from RevitServices.Persistence import DocumentManager
from RevitServices.Transactions import TransactionManager

doc = DocumentManager.Instance.CurrentDBDocument
uidoc = DocumentManager.Instance.CurrentUIApplication.ActiveUIDocument
view = uidoc.ActiveView
# 0️⃣ Preparing input from dynamo to revit

linkInst = UnwrapElement(IN[0])
parameterName = "Chamber Depth"
parameterValue = (1800)/304.8

linkDoc = linkInst.GetLinkDocument()
# 1️⃣ create a category filter

coll = FilteredElementCollector(linkDoc, view.Id).OfCategory(BuiltInCategory.OST_DuctAccessory).WhereElementIsNotElementType().ToElements()

# 2️⃣coll_list = list(coll)

TransactionManager.Instance.EnsureInTransaction(doc)

element_to_hide = []

for ele in coll:
    param = ele.LookupParameter(parameterName)
    if param and param.AsDouble() == parameterValue:
        element_to_hide.append(ele.Id)

view.HideElements(element_to_hide)
# 3️⃣ out.append(ele)

TransactionManager.Instance.TransactionTaskDone()

uidoc.RefreshActiveView()

```

KR

Andreas

---

<div class="post-metadata">

**Author:** ![Nick\_Boyts](https://sea2.discourse-cdn.com/flex022/user_avatar/forum.dynamobim.com/nick_boyts/32/76313_2.png) [@Nick\_Boyts](https://forum.dynamobim.com/u/Nick_Boyts)\
**Post date:** [March 20, 2024, 5:45pm UTC](https://forum.dynamobim.com/t/hide-linked-elements-in-active-view/99208/3 "2024-03-20T17:45:24Z")

</div>

What’s the reason for automating this? Why not use the Visibility Graphics overrides or a filter?

---

<div class="post-metadata">

**Author:** ![prasad.chavan](https://avatars.discourse-cdn.com/v4/letter/p/958977/32.png) [@prasad.chavan](https://forum.dynamobim.com/u/prasad.chavan)\
**Post date:** [April 3, 2024, 7:12am UTC](https://forum.dynamobim.com/t/hide-linked-elements-in-active-view/99208/5 "2024-04-03T07:12:45Z")

</div>

I was just curious to know if there is a method to hide the linked elements
