# Does Blender have a "distribute evenly" function?

I've duplicated 5 objects and would like for the middle 3 to be spaced apart evenly between the first and last instances. Can Blender do this?

• Have you looked at blender.stackexchange.com/questions/5156/… Oct 28 '16 at 5:28
• I did, but I was hoping Blender had been updated with a native distribute function in the 3 years since that post. I wasn't wanting to install that Oscurart add-on simply for one function, but it seems to be the only option. Oct 28 '16 at 5:33
• @Danial - the Oscurart tools addon is included with blender, you just need to enable the addon in preferences. Oct 28 '16 at 6:30
• @sambler I'm running 2.77 and I can't see it in there. Oct 28 '16 at 6:37

## 5 Answers

You could add a Copy Location constraint to each of the intermediate objects (with each of them initially positioned at the same point as the original) with the 'target' set to the last object, and then adjust the constraint Influence appropriately - ie, 0.25, 0.5, 0.75. This will distribute the intermediate objects at the correct spacing between the original and the last.

You could do the same with a Copy Rotation and Copy Scale constraint to have the intermediate objects similarly blend those attributes. Changing the Location, Rotation, or Scale of the 'final' object would then cause the intermediate ones to automatically move, rotate, and scale to blend to the final location/rotation/scale.

As far as I know, not by that name. The easiest way to accomplish this is probably by using the array modifier, which you would apply to the first copy, and then adjust the parameters so that the other four copies are located automatically by the first one. For more detailed information, visit this page of Neil Hirsig's course on Blender, with particular attention to the first video, 8-01 on the Array modifier.

• I did end up using an Array in this instance, but it's not ideal. You can't precisely position the last instance, and it also wouldn't work if you were wanting to distribute non-identical objects. Thanks for your help anyway. Maybe a future release of Blender will have a native distribute feature. Oct 28 '16 at 5:36

I did it manually. Just find the difference between the end objects in the specific axis, divide it by the number of objects. And delete all except the original for duplicating. Duplicate using Shift + D and press the axis key and type (after pressing + or -) the found value; that'll put the first duplicate in the right position. Then just press Shift + R to repeat the process.

Another way to do this is manually setting the objects' location values.

1. Select the first object.
2. Go to Object Properties.
3. Enter an X, Y, or Z value. For example, I had several objects that I wanted to distribute vertically with the first one flush with the ground, so I entered 0 for Z.
4. Select the next object.
5. Enter an X, Y, or Z value. For example, I chose 3 m Z for my next object so it would be 3 meters vertically distant from the first.
6. Select the remaining objects and repeat, incrementing by the same amount for each object (e.g., 6 m).

Here is another way I found: it doesn't need any add-on, modifier or manually placing.

1. Place the object to be replicated
2. Add a simple plane in the same place
3. Move one side of the plane to snap to the other object center
4. Enter on plane's edit mode and move its opposite vertices to the place where the other object's last copy center should be
5. subdivide the plane enough
6. switch the snapping tools to > edges > center
7. duplicate the other object and snap to each of the plane subdivision edges

It could seem complicated but it's not:

Another variant: