My goal is to enter a generic material/phrase e.g. “;Wood” or “?Concrete” to find all the element instances with the material applied.
I can’t search through Categories or Families as the data only shows up through Revit Material. I would manually cull the lists through GH but some of the RIR nodes require Filter Data components to work.
I know it has something to do with the depth of Materials within the Revit Data Structure but I can’t seem to figure a work around.
Are you not missing a list of all your elements you want to match to? get your elements, find the material assigned to that element and then cycle through and do a simple tmatch? and cull.
I’m not sure how you would do this without going through the elements first. I would expect you could though, similarly to how a Multi-Category Material Schedule allows you to select elements.
Not seeing anything, I’ll ask around and get back to you when i find something.
I was trying to sort by material first, to avoid searching through the entire document just for computing power’s sake.
I found a way a couple ways to get the information but it’s not as clean as I’d like.
For reference I’m using Revit’s Sample File: rst_advanced_sample_project.
Query the document for a certain material type (e.g. Timber, Structural Concrete) → show through an active viewpoint to visualise the identified components.
Generate the list of elements containing that material type
Gather component dimension data through the element id’s.
but it looks like the data structures have to be filtered through first, rather than broadly searched.
By approaching the document through materials first, I can eliminate a large chunk of data immediately.
With the built in categories query, I can pick the category specifically but I’m trying to capture half the documents categories in 1 universal query.
Materials information appears in both the type and element instance data. I’m hoping I can find a way to identify that, removing the chance of human error in forgetting to apply materials to components.
It may not be possible, but I’ll update if I find a better work around.