Radial Duplicator - Radial Array and Instances

This is a blender add-on for fast creation of radial (circular) arrays, screw modifiers and duplicating objects radially around the 3D cursor.

Duplicates have adjustable parameters that are continuously available even after you move, scale or rotate them.

These parameters are accessible either through the panel in the sidebar or by shortcuts in the add-on preferences.

Parameters in the sidebar

Download and/or Purchase

Usage examples

To change a parameter in the overlay press a corresponding button and move the mouse cursor horizontally.

To reset a parameter press alt+button.

The number of duplicates can also be changed by scrolling with the mouse or typing a number directly from the keyboard.



23 Likes

I will give this a try today. Looks very useful!

Hi.
Thank you very much for making this addon. I have tested several similar addons (some of them have some advanced features) but I was looking for a simple and efficient one. And this one works perfectly fine (on Blender 2.82). Thanks again @Cirno.

I have also installed it on:

  • Blender version: Daily Build (blender-2.83-85cdf9a1b9e8-windows64)
  • Addon version: 1.0

As soon as I clicked on the “Duplicate Radially” button, Blender 2.83 crashed. Here is the error that I saw in the console:

ERROR (rna.define): c:\b\win64_cmake_vs2017\win64_cmake_vs2017\blender.git\source\blender\makesrna\intern\rna_define.c:1840 RNA_def_property_enum_items: “OBJECT_OT_duplicate_radially_modal.spin_axis”, enum identifiers must not contain spaces.
ERROR (rna.define): c:\b\win64_cmake_vs2017\win64_cmake_vs2017\blender.git\source\blender\makesrna\intern\rna_define.c:2097 RNA_def_property_enum_default: “OBJECT_OT_duplicate_radially_modal.spin_axis”, default is not in items.
ERROR (rna.define): c:\b\win64_cmake_vs2017\win64_cmake_vs2017\blender.git\source\blender\makesrna\intern\rna_define.c:1840 RNA_def_property_enum_items: “OBJECT_OT_duplicate_radially.spin_axis”, enum identifiers must not contain spaces.
ERROR (rna.define): c:\b\win64_cmake_vs2017\win64_cmake_vs2017\blender.git\source\blender\makesrna\intern\rna_define.c:2097 RNA_def_property_enum_default: “OBJECT_OT_duplicate_radially.spin_axis”, default is not in items.
Error : EXCEPTION_ACCESS_VIOLATION
Address : 0x00007FF75652FDF0
Module : E:\blender_dailybuild\blender.exe

I am not sure if I should report errors with Blender 2.83 because it’s an alpha version, and many addons are prone to errors and bugs.
But it works fine on Blender 2.82.

Thank you for the report, I uploaded the new version.

1 Like

Do you plan to upload your script to Github ?

Maybe. Do you want it for forking and tracking changes?

For both of these reasons and also because GitHub has a nice bug tracking / issue system.

2 Likes

Very useful. I have the following suggestions:

  1. Beside the standard X/Y/Z/V axis for array, add an option for selecting an arbitary line edge or two vertexes as the array axis.

  2. Define start and end array angle .

  3. Allow the user to decide whether to rotate the arrayed element or not.

I think I’ll add this.

I got it what is the end angle and indeed it could be useful. But what you mean by start angle? Isn’t array will always start from the object location?

Do you mean just an array with overlapped meshes? How can someone use it?

Please add an option to adjust the radius of the array. Like an input window.

Let’s say the starting point is the center of the array, but where should radius end?
I think that the center of the array could be on the cursor, and the distance from it to the origin of object would be the radius. How does this sound?

Could you do it as a modifier? I know often times this is done as a Displace modifier with good success.

Unfortunately, no. Blender modifiers can’t be created with addons, you can only integrate them into a blender build.

I think I meant mainly for the radial array option of your add-on. That if someone chooses that option then the radius that Jakroval was asking for would just be a Displace modifier that gets added and is in sync with the axis that the user chooses for the array.

Okay. I’ll try

1 Like

I can adjust the radius by moving the object, but how would you move the group to a new location?
If you add a controller (empty) as an array center point, so you can move the group anywhere without apply the array modifiers.

If you want to move an object without breaking the array, you need to move it together with the array empty.

I see. Thanks

Thank you. Good job.