Family Shape Handles Disappear When Linking and Unrelated Parameter Driven by Formula

libengan
Enthusiast
Enthusiast

Family Shape Handles Disappear When Linking and Unrelated Parameter Driven by Formula

libengan
Enthusiast
Enthusiast

I have a family that has "Width" and "Height" instance parameters that control the nominal size of the family.

 

This family also has a "Perimeter Offset" instance parameter.

 

Finally, the family has "Actual Width" and "Actual Height" instance parameters that are used purely for reporting in schedules and don't actually control family geometry.  They are formula-driven as such:

Actual Width = Width - Perimeter Offset*2

Actual Height = Height - Perimeter Offset*2

 

Again, all of these are instance parameters.

 

When I load this family into another family, the shape handles for width and height appear as expected:

libengan_0-1677794995486.png

 

However, when I link "Perimeter Offset" to a parameter in the parent family, the shape handles turn into dots and I can no longer flex the shape of the family without manually entering dimensions:

libengan_1-1677795081306.png

 

 

This is not what I would have expected to happen.  Since "Width" and "Height" are still unlinked, I would have expected the shape handles to remain functionally able to change the shape of the family.

 

The family is attached.  Is this expected behavior?

 

 

0 Likes
Reply
Accepted solutions (2)
373 Views
2 Replies
Replies (2)

timlove
Advocate
Advocate
Accepted solution

Since you have parameters that are driven by another parameter through formulas it is expected that the shape handles will disappear once you set one of the parameters of the linked family to the parameter of the parent family.  I have never had a use for having grips inside of a parent family, if you wish to have that functionality once loaded into a project I would drive the Width and height by parameters in the parent family, and have those set to workplanes in the parent family. 

You can either lock the family to a workplane using the center line or one of the sides.  If you use a side make sure to TAB through the various available work planes to select the one you want.  If you want to drive the parameter by linking the two, use "Reference plane" if you want to drive the parameter using the Reference planes create, use "Weak Reference" (or if you named them)

Returning your file so hopefully it can help, not sure this all would make sense without it. 

0 Likes

libengan
Enthusiast
Enthusiast
Accepted solution

Thanks for your reply. 

 

Parameter C  = Parameter A + Parameter B

Parameter A controls reference lines and therefore normally creates shape handles.

But when Parameter B is linked, Revit thinks A is linked to B becuase together they creat C.  Therefore the shape handles for A disappear.

 

It's just unfortunate because I think it would be possible programmatically have A still driven by shape handles and let B and C be slaves to A rather than lock it down.

 

Your suggestion makes total sense, and is ultimately what I ended up doing.  What we are doing is creating cabinet assembly layout families with doors and drawers (double door with drawer above, bank of drawers only, double doors only, etc.).  Since there are many possible layouts that our users can create, I was expecting to be able to use the shape handles on the nested door and drawer families to lock them to reference lines in the layout, which would be more intuitive for our users. Instead we will have to create dedicated parameters for each door and drawer that control their size based on the type of layout being generated.  It's not hard, it just bogs the layout family down with more parameters than I think should be necessary.

0 Likes