Family Inheriting Properties Defined by Host Object

Family Inheriting Properties Defined by Host Object

Anonymous
Not applicable
1,977 Views
8 Replies
Message 1 of 9

Family Inheriting Properties Defined by Host Object

Anonymous
Not applicable

I am trying to figure out how to create a family that will inherit properties from the family it is hosted to.  Similar to how a door is able to interact with different wall types by automatically adjusting the frame based on wall thickness.  

 

In this specific case, I created a stiffener for a wide flange beam.  The stiffener, when loaded into the WF family, is able to pull the properties of the WF and resize based on this information - shown to the left in the image below.  However, for my purposes, I would prefer for the stiffener to live outside the WF family, so that I can easily control the spacing and location of the stiffeners. 

 

When the stiffener is hosted to the WF, outside the family - shown in pink below, it does not pull the WF properties and resize.  How would I go about pulling that information into the stiffener component?

 

I've attached the Revit model, hopefully that will help!

 

Stiffener WF Question.jpg

0 Likes
Accepted solutions (1)
1,978 Views
8 Replies
Replies (8)
Message 2 of 9

Sahay_R
Mentor
Mentor
Accepted solution

Try to nest the stiffener into the W family as a parametric array - that should still give you the option to control the spacing.

 

The other option would be to create a dimension instance Shared Parameter, add it to the both families making it equal to the heights that you want to b e matching, (I would change the stiffener to the Structural Framing category first) and add it to the project associated with Structural Framing. Associate this parameter from the beam and stiffener with a global parameter that will allow you to control it.

 

Actually the Shared Parameter was not needed. Please see attached file. Both heights are controlled by the Global Parameter.


Rina Sahay
Autodesk Expert Elite
Revit Architecture Certified Professional

If you find my post interesting, feel free to give a Kudo.
If it solves your problem, please click Accept to enhance the Forum.
0 Likes
Message 3 of 9

barthbradley
Consultant
Consultant

@Anonymous wrote:

 

 

When the stiffener is hosted to the WF, outside the family - shown in pink below, it does not pull the WF properties and resize.  How would I go about pulling that information into the stiffener component?

 

 

 


Are you saying you want the stiffener to automatically recognize its host's dimensions in the project, and adjust its size accordingly?  No can do.  

Message 4 of 9

Anonymous
Not applicable

Barthbradley, in short, yes.  The stiffeners on the left side of the image, which resize based on the WF they are hosted to, is the behavior I wanted the stiffeners outside the WF family to exhibit.

 

So it's not possible to pull information from the host without nesting the family inside it?

0 Likes
Message 5 of 9

barthbradley
Consultant
Consultant

Correct. 

0 Likes
Message 6 of 9

Sahay_R
Mentor
Mentor

Or the global parameter route - which is as close as you can get to making both families see eye to eye.


Rina Sahay
Autodesk Expert Elite
Revit Architecture Certified Professional

If you find my post interesting, feel free to give a Kudo.
If it solves your problem, please click Accept to enhance the Forum.
0 Likes
Message 7 of 9

Anonymous
Not applicable

I tested the global parameters option.  It looks like I would have to create a height, width, and radius parameter for every wide flange in the project and then associate them to the respective stiffeners. 

 

A parametric array of the stiffeners nested inside the wide flange family would work if I had regular spacing, like 24" O.C.  However, I may have a 10' run of 24" O.C. stiffeners with the next being 14" to coincide with a column support. 

 

Looking at cased openings, the inner frame piece resizes automatically based off the wall thickness.  I'm curious what about that family setup allows it to do that, since that's what originally made me think I could get the stiffener to act similarly.

 

Cased Opening Variable Width.JPG

0 Likes
Message 8 of 9

Sahay_R
Mentor
Mentor

Parametric arrays can be created with instance based parameters that will allow you to control the spacing per instance. So you can have one array at 24" OC and the other at 48" OC. You will need to control the array number by a formula = Array Length / Array Spacing.


Rina Sahay
Autodesk Expert Elite
Revit Architecture Certified Professional

If you find my post interesting, feel free to give a Kudo.
If it solves your problem, please click Accept to enhance the Forum.
0 Likes
Message 9 of 9

ToanDN
Consultant
Consultant

@Anonymous wrote:

I tested the global parameters option.  It looks like I would have to create a height, width, and radius parameter for every wide flange in the project and then associate them to the respective stiffeners. 

 

A parametric array of the stiffeners nested inside the wide flange family would work if I had regular spacing, like 24" O.C.  However, I may have a 10' run of 24" O.C. stiffeners with the next being 14" to coincide with a column support. 

 

Looking at cased openings, the inner frame piece resizes automatically based off the wall thickness.  I'm curious what about that family setup allows it to do that, since that's what originally made me think I could get the stiffener to act similarly.

 

Cased Opening Variable Width.JPG


Because the door family is wall hosted and the door geometry is constrained to the host wall geometry in the family.  If your stiffener family is being use in a wall it can do the same thing.  But I guess it is just face based family so it cannot have the same capability.  

 

You can edit the family and add instance imaginary host parameters and associate the size of the piece to them by formula or reference planes.  When load in the project and host on a beam, you enter the beam size parameters to the piece and it will flex to the size. 

 

I know dynamo can bring host parameters to elements but it's mainly for "true" hosts such as Wall, Floor, Ceiling, Roof.  I am not so sure about host by Face.

0 Likes