Array with lenght parameters

Array with lenght parameters

danielfgpontes
Participant Participant
12,902 Views
6 Replies
Message 1 of 7

Array with lenght parameters

danielfgpontes
Participant
Participant

I'm trying to make a family with lenght and width parameters, the family alone works just fine, but in the project when used with array, only works right with the original lenght (400cm), if I use array then edit the lenght to 450 cm the elements goes overlapping each other and if I put 300 cm the elements goes spacing between each other. 

There's some way to make lenght parameter works properly inside array?

0 Likes
Accepted solutions (2)
12,903 Views
6 Replies
Replies (6)
Message 2 of 7

_Vijay
Collaborator
Collaborator

you better create the nested family with length parameters associated with the current family. try like this or share your family for triels.

Vijayakumar
Head of BIM
Did you find this post helpful? Feel free to like this post.
Did your question get successfully answered? Then click on the ACCEPT SOLUTION button.


0 Likes
Message 3 of 7

RDAOU
Mentor
Mentor
Accepted solution

@danielfgpontes 

 

The length, as it is in the family, is already working properly. As it is, the array and the width exist in 2 different environments. When you load the family into the project (as you have mentioned) there is no relation between the ARRAY and the WIDTH/LENGTH of the window. Meaning every time you change the width of the window, the you will need to change the array.

 

Two options:

 

  1. USE FAMILY BASED ARRAY: Nest the window geometry into another window or wall based generic family and do the array therein. when constrained properly you would be able to control the Array, the offset and the window Width using 1 input...
  2. USE GLOBAL PARAMETER IN PROJECT ENVIRONMENT TO CONTROL GAP BETWEEN ARRAYED INSTANCES: 
    • The width parameter of the window (preferable) Instance parameter - to avoid type change in a group (Note: the default width parameter in windows template is a Type. You will need to create a new width parameter and set that to instance)
    • Associate it with the Window Width Add a global parameter "WinT1_Width" and 
    • Add a global Parameter name it "WinT1_Gap"
    • When using array: Make sure that new group instances append to END (check box is available in options bar when selecting the array ctrl)
    • lock/constrain the Center/Mid of the first two instances of the array to 2 reference planes. Use reference planes because they are more likely to respect constraints (pin the first to control the direction of the array)
    • Associate the distance between the 2 reference planes to a global parameter name it "WinT1_CTRL" and use a Formula = WinT1_Width + WinT1_Gap
    • See below  GIF capture for a better understanding on how it functions

 

Constraining an Array in a ProjectConstraining an Array in a Project

 

 

 

 

 

 

YOUTUBE | BIM | COMPUTATIONAL DESIGN | PARAMETRIC DESIGN | GENERATIVE DESIGN | VISUAL PROGRAMMING
If you find this reply helpful kindly hit the LIKE BUTTON and if applicable please ACCEPT AS SOLUTION


Message 4 of 7

danielfgpontes
Participant
Participant

@_Vijay  @RDAOU 

I tried making a nested family (the easiest way, because I will need do this process several times) with my component but don't worked, when i change the lenght in the nested family it doesn't apply to the original geometry family but the parameter value in nested family still changes.

 

Here my source family (Revit 2021), not the nested one:


0 Likes
Message 5 of 7

RDAOU
Mentor
Mentor
Accepted solution

@danielfgpontes 

 

Check the following youtube. I made a slight modifications to your original panel family (category changed to Generic, added Height and Material parameters and modified some reference planes. 

 

  1. It is a line based array, in the model you place it by specifying start and end point.
  2. The array concatenates panels of a given length (user input) along a given path.
  3. The family will add a cut piece at the end of the path if required
  4. The cut piece is added if the end gap is greater or equal to 700 (assumed minimum length of a panel)

 

While you have specifically asked about arrays, There are easier and quicker Alternative methods to create such elements:

  1. Model the family as a handrail panel and use a handrail 
  2. Model the family as a curtain panel and use a curtain wall

 

 

 

YOUTUBE | BIM | COMPUTATIONAL DESIGN | PARAMETRIC DESIGN | GENERATIVE DESIGN | VISUAL PROGRAMMING
If you find this reply helpful kindly hit the LIKE BUTTON and if applicable please ACCEPT AS SOLUTION


Message 6 of 7

Albert.Maduro
Advocate
Advocate
I want to know how do you make that gif
0 Likes
Message 7 of 7

hoda.ganji
Contributor
Contributor

Would this help? "Modular Construction 5, Array Parameter, Revit": https://www.youtube.com/watch?v=pg3q_E1HBOw&list=PLnQTukI1DJvyfNBksQhmhyayQuJn-xpyL&index=12

This video shows how we can define an array parameter to create a parametric shading system.

0 Likes