[Addon] Array_Synch

Hello fellow blenderers!

Here is a little Addon I made, which in short synchronizes Arrays by their Relative-Offset-Displacement.


Why and what for did I make it?:

I was working on a hallway with repetetive structure and got annoyed by setting up each objects Array by hand. I thought that there has to be an easier way to align them but couldn’t find one. So I took the opportunity to learn python and made this little Addon, which so to say aligns children of an object by array with this objects array. Maybe it’s usefull to others too, maby it’s not…


First things first:

→ When the Addon is loaded and enabled you find the UI in the „properties shelf“ of the 3D-View.
→ For proper work all objects should have their rotation, scale and location apllied.
(with the mouse in the 3D-View-Window press „a“ to select all objects, „ctrl+a“ and then apply „…“.)
→ The AddOn effects the Modifiers of an object and its children-objects. To see what it does exactly, look in the Modifers-Section at the Properties.
→ The synchronizing-process can be repeated for children’s children, if you simply use „Synchronize!“ with the (parenting) children selected.
→ The Addon only works with Relative-Offset-Displacement.
→ This is my first Addon, so let me know, if you could use it and what needs to be done better.
→ It is Version 0.1 so there are some functions, which are planned, but not realised yet. Let me know if there are certain features you’d appreciate to see implied.


How it works (or should work):

First you need to add a new Array (or name an already existing Array-Modifier of the object „ArraySynch“).

On top of the Array_Synch-Panel, that now should show some more options, you see the name of the currently selected Item.
Underneath you find a box for Curve-Pathing.
Then comes a button to delete the parents Array (and only the parents Array!)
Then you have the „Array-Options“ for editing the parenting objects array (left box), and the „Synchronizing-Section“ (right box).


The buttons and properties in the Array-Option-Box should be selfexplaining, but I want to illustrtate the other boxes a bit.

The Synchronizing-Box on the right shows the number of children the selected object has. In the following example the „Cube“ has two children, the „small Cube“ and the „small Sphere“ (as you can see in the Outliner). With „Customized Offset“ and „Factor“ you can manipulate the Offsets of the children-Arrays (still in relation to their parent object). The „Synchronize!“ - button calls the main function: It adds (if necessary) and aligns the Arrays of the children of the selected object, adjusts the fit_type and „fit_value“ and so on.
The delete-Buttons are also selfexplaining.


The Curve-Box is for combining the Array- with a Curve-Modifier to set a (curved) path for the Array to follow. If the object has a Curve-Modifier the Submenu opens, where you can choose a Curve and the Axis. „Synchronize!“ will now add a Curve-Modifier on the children-Objects too.
In the following example I used the Curve-section. The arrays are synchronized by Length and the Customized-Offset is activated and set to 0.5 to get one children object for every two parent-objects. The Fit-Type is set to „fit_length“.


Download_link: