@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:
- 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...
- 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 Project