I am creating a family for a mobile shelf assembly. While an obvious way to create it would be to use an array, because the client needs to be able to tag each shelf unit separately, that can't be done. The client does, however, have a limit of 10 banks maximum, so I've created ten banks in hte family that are controlled by visibility parameters.
Each of the banks can be a different type of shelf (the shelf units are nested families) but they are always of the same overall length and width in any one run.
Here's my problem, Everything flexes correctly as long as the depth of the units stays the same as they were when the family type parameters were assigned to the shelf families as labels. When you try to create a new Type using a wider shelf unit, you get errors.
Without the Family Type parameters assigned as labels, all of the reference planes meant to drive the location of the shelves flex correctly.
Can what I'm trying to do even be done?
I'm using Revit 2013.
The atached family has the shoelves off to the side of the rails at this time. I guess that's in keeping wih this project being "off the rails".
Solved! Go to Solution.
In your first paragraph, the reason you give for not doing this as an array is incorrect. The items of an array can be tagged and scheduled individually in a project. You could still have the family type parameter available for the user to change the type of shelf. Notice the long list of parameters in this family. All that could be reduced to a few parameters by doing the family as an array.
Thank you for the suggestion. I'm sure an array would greatly simplify the parameters but when I tried that I was not able to tab down to the shelf unit level to create a tag. If you do know of a way to tag individual items in an array, even if they are all the same, I'd like to know how it's done because nothing I've tried has worked.
In addition, usually not all items that would be in array are the same. We often vary the number of tiers in each of the units. The first bank - or the first two - may have 5 tiers, the second bank - or several more, might have 3 or 4. Every installation could conceivably be a diferent combination.
If the nested item is shared, in the project you can use the Tab key to select the individual item. If the Specialty Equipment tag is loaded, you don't even have to use the Tab key, but simply Annotate > Tag All > Specialty Equipment tag.
I gave this a try again and you're right, I was able to tag individual members of an array. I really thought I'd tried this before but without success. Is it possible this is a new thing in 2013, which I just switched to?
I'm still not sure that this will work in this particular situation since in some cases the groups of shelves is not a true array in that the items differ. However, it's possible that most groups are composed of two arrays, each with its own type of shelving. For example, it may be that the run always starts with 3-Tier shelf units and then has another group of 4 or 5-tier units. If the clients tell me that's the case, and if I could tie the two arrays together so that the start of the second array would move with the expansion of the first, this may indeed work.
So now I've created a simpler version with two arrays for mobile units of different tier numbers followed by a fixed unit. Each array has its original member pointing to a Family Type Parameter. The fixed unit is also linked to a Family Type parameter.
Now for the problem:
The array drives the distances fine, but as soon as you try to change the unit type for either array or even the fixed unit, errors occur saying contraints are broken. This is even the case when the overall size of the units stays the same. The bottom of the units, the part aligned and locked to the reference planes, is the origin point from which the units "grow".
Any ideas how to fix this or is there a fundamental problem that can't be solved?
I'll add here that I've scoured the web only to find numerous pwople having issues with constraining elements controlled by Family Type parameters. I got it to work in one family but using the same elements in another family doesn't work. It appears it's so quirky as to be unreliable.