hexagonal array

#1
hexagonal array

I'm working on a science illustration at the same time I am learning Cheetah, and I'm looking for some help with an array. In the attached image, the large structure in the middle is supposed to be a quantum dot. I made this from different linear arrays of a ball primitive and then lined the rows of balls up by hand to create hexagonal layers, and then stacked those layers by hand. The researchers asked for a significantly increased number of balls in the quantum dot, which made me wonder if there was a way to create arrays that are not linear, but rather hexagonal so the spheres nest with one another. Thanks.
 

Attachments

ZooHead

Active member
#2
I'm working on a science illustration at the same time I am learning Cheetah, and I'm looking for some help with an array. In the attached image, the large structure in the middle is supposed to be a quantum dot. I made this from different linear arrays of a ball primitive and then lined the rows of balls up by hand to create hexagonal layers, and then stacked those layers by hand. The researchers asked for a significantly increased number of balls in the quantum dot, which made me wonder if there was a way to create arrays that are not linear, but rather hexagonal so the spheres nest with one another. Thanks.

A Particle Mesh may be what you want.

 
#3
Hi,

in order to get a hexagonal grid you could start with a plane, triangulate, shear and then add two array modifiers:

hexagon.gif

For the third dimension you have to repeat the trick with the transform modifier rotating upwards 30° and then add a third array.

And like Zoohead already mentioned, this can be used for a particle mesh.
 
Last edited:
#5
making the grid is the hard part.
Yep, but also the fun part :smile:

There are many possibilities, just one more:

After using the shear modifier to create the diamond shape,
a transform modifier rotation 90/0/0 and than a ring modifier at 3/360/0,433
can be used to create a single hexagon.

Then again make editable, join by optimize, select all edges and toggle crease.

Now the subdivision modifier in stam-loop mode will create more smaller triangles in the hexagon.
 

Attachments

#8
Well that's certainly exactly what I want to do. I need to figure out some of the techniques here though; it's pretty far past where I am in my knowledge of Cheetah. One big question, how does the hexagonal plane transform itself into the hexagonal array of spheres? Does the plane create a reference for the sphere array some how?
 
#14
Here's the starting shape.
Ah, yes, the collapse tool!
Always forget about this one!

With this, properly sized, creasing and stam-loop triangulation the setup is very simple.

But there's a problem
with that as I found out while playing with this.

The orange stack is always based on a square.
That's the problem I ran into too.

The optimum packing of spheres is based on a tetrahedron pattern.

So when we have a triangulated hexagonal shape, we need to populate it with tetrahedra via particle mesh first.
Making it a polygon object, duplicating geometry, using snapping to put the latter on the tops of the first and deleting those unwanted at the borders results in an array like this:

screenshot.jpg

image.jpg

This would be fully symmetric with respect to the sphere packing pattern.
The original image shows something different: the spheres are packed densely in a triangular pattern horizontally,
but vertically tha packing follows a less dense squared pattern, which allows a hexagonal shape at the top.
 
Last edited:

ZooHead

Active member
#16
This would be fully symmetric with respect to the sphere packing pattern.
The original image shows something different: the spheres are packed densely in a triangular pattern horizontally,
but vertically tha packing follows a less dense squared pattern, which allows a hexagonal shape at the top.

Right, vertically they are linear in FlipFiddle's original
Quantum Dot image so I guess we should follow that.

I like you're method, but it may be a little complicated for a new user.

FlipFiddle will have to decide which is appropriate in the end, but
it's great to see and demonstrate other methods so keep em coming.

 

ZooHead

Active member
#19

I knew you would have the most efficient method. Thanks Frank. :icon_thumbup:
I wish I knew before all the work I did. :redface:

 
Top