Filtering / Selecting Curtain walls

This should be very simple, but I am struggling: how can you filter out all Curtain Walls from a list that contains all Walls in a project? Or conversely - How can you select only all Curtain Walls in a project? I am selecting : All Element of Category >> Categories: Walls. When I look at Element.Parameter of this list, every wall has a parameter called Family. It is either a “Curtain Wall” or a “Basic Wall”. But I can’t use this information. when I access this parameter usingElement.GetParameterValueByName it always return the “Type” name instead of they family name. Please let me know what I am doing wrong.

Thanks.

1 Like

Another option is to use clockwork’s “Element.ParameterExists” with any parameter specific only to curtain wall instances:

Vikram & Dimitar, thank you both for your responses. Either of these solutions will help me move forward.

To help understand what is going on under the hood with Dynamo, I have a couple follow up questions:

  1. Why is is that the “Element.GetParameterVAlueB yName” node is returning a value of “Type” parameter when asked for the “Family” Parameter?

  2. Both of the solutions recommended above are still ‘work arounds’. Why is it that something as simple as “Select all curtain walls” so difficult accomplish? This is not a rhetorical questions, I am genuienly trying to understand.

Vikram,

Your suggested approach worked really well. The only change I had to make was to to check for the Family and use it as a Bool Maks. The reason is the “List.GroupByKeys” doesn’t mantain the sequencing of the group between various iterations. So sometimes the ‘Curtain Wall’ were at index 0, then later ‘Basic Wall’. Using the Bool mask makes the graph reliable.

Alternative approach:

Select all the CurtainWallPanel objects, then select the hosts. My logic is that all CurtainWallPanels must be hosted by a Curtain wall ?

I have noticed some general weirdness with curtainwalls- for example non-existent objects refer http://dynamobim.org/forums/topic/curtain-panels-non-existent-objects/

For instance, sloped glazing in a roof contains CurtainWallPanels- so maybe my idea does not work.

I’m not sure why the 2 nodes below don’t work

 

Hi Andrew,

Try Uninstalling those 2 nodes packages and re-install them. See if it helps!

Hi Vikram, Thank you for providing suggestion. I am quite new to Dynamo. I tried your approach to select curtain walls. It turned out that List.FirstIndexOf node does not work. It there anything I did wrong or is there a clue to solve the problem? Sorry to bother you about this old topic.

1 Like

Zia,

Vikram should have answered this one, but I’d like to point out the solution if you don’t mind.
You need to check out the lacing.
I am sure you might solve this problem already. :grinning:

1 Like

Thanks very much for your help, Hyun_Tak. It works well now.