|
|
|
|
|
Technology
Bulletin |
 |
Family Matters
Families are the heart and soul of
Revit projects. Creating families and manipulating existing
families seem to be the most common issues users either have
a frustration with, or have a desire to be more proficient.
How many times have we opened that family for editing and
tried to move something to meet our need, only to have that
pesky little box pop up and tell us that we have just broken
a constraint that someone else has created.

In this particular case I opened a double glass door family
and tried to move a muntin over to the right one inch. By
doing this our little error box (that so politely lets us
know that it cannot be ignored) tells us that we have just
broken 70 constraints.
If we had known more about the door family to begin with,
and were able to see all of these constraints, we would not
have to hit the show button through 70 errors to figure out
what we have broken. If most people are like me, they would
choose the easy way out and press Cancel. If we were to
choose Remove Constraints, that would tell us instantly in
the back of our minds when we load this family back into our
project, something is not going to work like its supposed
to.
The keys to avoiding these errors are views. The default
view that is visible when I opened the door family happens
to be the 3d view of the door, but looking at it from a
elevation perspective. That presents an almost deceptive
opportunity for me to just click, drag and move anything I
would like to. This is what we see when we open the door
family.

All I wanted to do is change the configuration of the muntin.
I mean, how hard can that be? Its just an extrusion that
has all of these blue grips on it when I select it.

Lets take a look at the door from a different view. On the
browser, lets try the Exterior Elevation.

Now this view brings a whole new perspective to how this
family has been built. We instantly notice that there are a
ton of Reference planes and dimensions that are either being
used as a constraints, or are actual parameters that can be
changed in the Instance or Type Properties and will alter
the shape of the family.
The most important thing to remember is that, just like
views in our projects, things can be visible or not visible
by using the Visibility Graphics Overrides.
Its a good habit to always open all views and make sure
that the annotations are all visible in all views.

This way we know that if we can see a dimension, and we can
click on it, we will be able to know if the all-powerful
little blue padlock is in the locked or unlocked position,
determining whether or not that dimension is a constraint.

Several things may be happening here. The two reference
planes may be constrained together or the muntin might be
constrained to the reference plane. In either case, if you
were to try and move either of them in the original 3D view
this would have been one of the 70 constraints that would
have been broken.
The other thing to consider is that the creator of the
family may have objects constrained to a reference plane
that in turn may be part of a parameter deriving from a
dimension. In the case below the height of the door is
determined by the value to the height parameter in the
properties of the door. This gives the family the ability to
adjust its shape by changing a parameter value.

In the case where you want to add this functionality to a
parameter you are creating, you would simply add a dimension
and then pull down the label menu and choose a parameter
already associated with the family or add parameter.
In that case you could create a new parameter that would
show up in the properties box of your family and have it
dictate a certain shape of your component.

If the parameter is created from a dimension that is from
reference lines or planes, then the object or massing needs
to be constrained to that line or plane. If it is not, the
parameter will change and the reference line or plane will
move inside the family, but the geometry will stay where it
is. You can constrain a mass or object to a reference plane
or line by pulling a dimension with a length of 0-0 and
locking the padlock, as they have done in the case of the
door below.

So, after you have identified all of the constraints in a
family and have all of the parameters in place you will be
well on your way to creating dynamic component families that
can be controlled through parameter values.
|
This page last edited on
Thursday, June 03, 2010
|
|

By
Matt Johnson,
AEC Solutions Engineer
Hagerman & Company

print version
We
Appreciate
Your
Feedback!
|