Create gaps in an array?

I’m creating a circular auditorium using arrays of chairs on circle curves. There also have to be aisles running perpendicular to the rows, breaking the arrangement of chairs into sections. Is there a way to have gaps in an array, for example, 10 chairs, gap, 10 more chairs, gap, etc.? If not, I’ll just use a separate circle curve for each section and parent to an empty to rotate, but if there’s a way to do it with less objects, I’ll do that. Also could you please tell me if the source object for the arrayed (the original object, not on the array) be made not to render? Thank you!

Maybe you can make an array of arrays?
One array creates a group of 10 chairs with certain offset. And second array creates copies of the whole group with an offset of its own.

I think your best bet is to do vertex instancing, you can make an object with vertices in the places where you want the chairs, add a circle, delete the vertices where you want the aisles to be and duplicate then scale the circle in edit mode. parent the chair to the circle object with the vertex option. It will look like this:

1 Like

Thank you, DNorman. Only thing is, I forgot to mention, there are two thousand chairs, so in this case I probably better go with all the circles and empties. :wink: But I’m going to remember your solution for other projects. While we’re discussing arrays, I’ve found that the chair has to have it’s origin in register with the curves origin, currently in the center, in order to have the array sit on the circle, so I’m wondering if it’s possible to hide the original chair from rendering? Otherwise I’ll plan ahead and offset the circle’s origin to a far off point or hidden place and keep the chair there. Unless there’s better way?

Thank you, that’s a good idea, StrayBillie, but I think it might be tricky to do in this case because the number of chairs in each section often varies. I think I’m stuck with what it is.

I personally find circular arrays in blender tricky to say the least, that is why I like the vertex instancing method. I only found out about it recently myself. You can hide the original easily without hiding the instances and the instance object can be hidden with a check box. I find this method very easy to control and more logical than Blenders arrays.

If you have a seating plot that tells you how many seats are in each row (circle) it should not be too difficult to setup an instance object.

As for arrays I think that for a circular array the empty option is more logical than fit curve in this case. StrayBillie 's idea is a good one. I do not know a way of hiding the original object of the array, unless you apply the array once you are sure that it is done, then you can just delete it.

Which ever way you do it it will be a bit tedious to get perfect for 2000 seats!

You can try use instancing with groups that have empty objects, by that you can change the gaps easy.
empty_objects.blend (688.9 KB)

DNorman, I’ve been coming to the same conclusion about arrays, at least in this case. I like that your solution doesn’t need them, but I was concerned about ease of tweaking the chair locations evenly. Then I tried using your idea with a wRing (with the add-on w-Mesh), and using Face instead of Vertex instancing. Face instancing with the wRing gives me one row of chairs per ring, and I can easily adjust the number of faces to change the number of chairs, as well as length and position of the each ring segment for each section of chairs. Being able to hide the original object is much neater and makes it easier to use the same instance for each section of chairs, at least for me. :slight_smile:
I agree, StrayBillie’s suggestion is very good and I could use it with the identical sections. I also found collection instancing works well for those sections, and it might be a little simpler, thought on the other hand, with this instancing method, I might as well leave each as it’s own editable wRing setup.
All the input from everyone here will is excellent and I’m grateful! I’ve learned a lot!!! Thank you all!

1 Like

Thank you for this example, rigoletto. I’m going to look at it further to understand it better for future projects. Right now, it’s new to me and I don’t quite get how the empties let you control the gaps, but after this project I’ll look at a tutorial about this. Thanks again! :slight_smile: