How to find grout tube from Hosted wall

Hi all,

how to collect grout tube when i select the wall.

Wall is hosted object , how can i get the grout tubes.

waiting for someones reply
Thanks

Hey,

There is a node in Clockwork called Element.Inserts… Maybe have a go and report back?

Cheers,

Mark

i tried but it doesn’t work.

Hmm… Would you mind dropping your .rfa on here? so we can test it?

Cheers,

Mark

Try with this one…

host

Host.dyn (7.1 KB)

Sure

i upload a test file for you.

TEST-01.rvt (1.5 MB)

Thanks for your reply.

i do but isn’t working.

i select the wall as input and output as all the hosting object of walls.

can you share the test file…only wall with hosting elements…

Sure vijaykumar

i upload a test file for you

TEST-01.rvt (1.5 MB)

It works here also…

Update some packages maybe? Your node is saying Chynamo, not the archilab version?

Hope that helps,

Mark

I want reverse like that as per attached image.

Hello
an solution with Python

Screenshot_select_child host

import sys
import clr
clr.AddReference('ProtoGeometry')
from Autodesk.DesignScript.Geometry import *

clr.AddReference('RevitAPI')
import Autodesk
from Autodesk.Revit.DB import *

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

#Get Important vars
doc = DocumentManager.Instance.CurrentDBDocument
uiapp = DocumentManager.Instance.CurrentUIApplication
uidoc = uiapp.ActiveUIDocument
app = uiapp.Application

element = UnwrapElement(IN[0])

fec = FilteredElementCollector(doc).OfClass(FamilyInstance).WhereElementIsNotElementType().ToElements()
fec = [x for x in fec if x.Host is not None]
OUT = [x for x in fec if x.Host.Id == element.Id]
1 Like

Thanks c.poupin :+1: :+1:

my system is not a working. (see image)

For me its working…

Hosted wall

@robert12546358
I edited the script try it

Thanks for give me a answer :smiley: :smiley: :smiley:

Hi c.poupin

i have one query about this topic.

problem is more than 2 wall is not working in python script, single wall is working.

i have use more than 2 wall in python, so how to use this?

please suggest me

hello @robert12546358

try this (fix with multiple input)

import sys
import clr
clr.AddReference('ProtoGeometry')
from Autodesk.DesignScript.Geometry import *

clr.AddReference('RevitAPI')
import Autodesk
from Autodesk.Revit.DB import *

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

#Get Important vars
doc = DocumentManager.Instance.CurrentDBDocument
uiapp = DocumentManager.Instance.CurrentUIApplication
uidoc = uiapp.ActiveUIDocument
app = uiapp.Application

toDoList = lambda x : x if hasattr(x, "__iter__") else [x]
elements = toDoList(UnwrapElement(IN[0]))

out = []
fec = FilteredElementCollector(doc).OfClass(FamilyInstance).WhereElementIsNotElementType().ToElements()
fec = [x for x in fec if x.Host is not None]
for elem in elements:
	temp = []
	for e in fec:
		if e.Host.Id == elem.Id:
			temp.append(e)
	out.append(temp)		
OUT = out
1 Like

it’s working.

Thank you c.poupin :smiley: :smiley: :+1: :+1: