I have now solved the problem, by using a mass family instead of in-place mass as suggested. I have decided to show my solutions for both instance and type driven facades. The two solutions demands two different approaches.
Instance: This solution uses Dynamo elements out of the box
First step is collection the different divided faces (in all 4 faces with 16 panels). When this is done, the script will set randomized values for X, Y and Z in the element used as facade panel. Watch will confirm what the script is doing.
Downside on this solution is that is not possible to count “types” since all will be slightly different. In the real world will it be a range of types that needs to be randomized. In addition to this, one need manually to select the divided faces in the geometry.
Type: This solution uses Lunchbox and Clockwork packages
In this solution the instance parameters for X, Y and Z is changed to be type driven, and in this case done by creating four different types. This gives the advantages, that it is now possible to let the script collect the used types in the mass family, you don’t need manually to select the instances as before!
For randomization is used Lunchbox Random Numbers, since it adds the opportunity for ‘seed’, min. and max. in one node (custom node). In this case the seed is driven by the time the script was opened. There is also included a integer slider there can be used instead. For changing the types is used Clockwork FamilyInstance.SetType. Watch will confirm what the script is doing.
Hints/questions for Dynamo coding group:
Why isn’t Time controlled by the ‘Run’ bottom? Why should I be interested in opening and closing the script for running my script with different seeds? I would expect that DateTime.Now really is ‘now’ and not ‘in the past’
Please include options in the Dynamo out of the box solution as this randomization (Lunchbox) engine and possibilities for changing (Clockwork) instances of types in a project.
Zip files for the two solutions.