Place multiple instances of a family based on location of another family

I’m trying to add a family at the same location of a family that is already placed and am a bit stuck. I have fire extinguisher cabinets located around the model on several levels and I’d like to place a family indicating the code required distance to the FEC (75’ distance to cabinet) for the life safety plans. I have managed to query the model and filter the elements down to the family that is already placed but I can’t figure out how to get the locations of the families to actually locate the radius family. I found the node that gets the location of one family I can’t get multiple locations. I think once I get that part I can kludge my way through the rest of it…

Thanks

 

FECLayout

1 Like

Element.Location from package clockwork should do the trick.

Thanks! Vikram - what does the GroupByFunction node do?

In this case it groups the listed elements by Level

Makes sense. Thanks!

 

I have things working (woo!) but have a couple questions:

Is it possible to have Dynamo ignore instances of the circle that are already placed to avoid duplicate items? In this instance I should probably build the circle into the FEC family but it seems like a good learning exercise :slight_smile:

Can I set the graph to only look at a specific phase or ignore a phase?

 

Chad,

  1. Consider building in a logic that will delete all instances of that circle family and then place them again. This way you don’t get duplicates.

  2. Pre-filter elements based on Phase. I would do that first before anything else.

Thanks - I’ll do some more tinkering :slight_smile:

A few questions:

How do I build the graph so it processes one step before another? I’m not seeing anything to delete elements and then place them - probably user error.

I’ve found a few nodes that delete elements but they are deleting the family / type rather than just the placed instances. Is that a matter of arranging things correctly or should I look at something else?

I haven’t made it phase yet - I’m sure I’ll have more questions then :slight_smile:

Chad,

A little late but in spring nods there is a node called Input.Wait. The first input is what you want to wait to finish and then the second is what you want passed through. It works because a node cannot pass data until all data has arrived and been dealt with. (I will say that some times this node does not work but it does most of the time.)

To filter by phase see picture below,

hi Chad, Im doing a task very similar to this, was just wondering how you got it to work in the end?

@Sanchir Please start a new thread with your approach and we’ll help.

1 Like