4
$\begingroup$

I'm trying to make this honeycomb pattern in Geometry Nodes in a way that I could just click some integer higher and by so construct the honeycomb from center to outwards, so that it would keep the round shape as much as possible.

Like this, but perfect honeycomb:

enter image description here

It doesn't have to grow three hexagons at once, one by one is just as good, if not better, actually.

I thought this would've been easy to create...

$\endgroup$
3

2 Answers 2

7
$\begingroup$

Hexagons have happened so many times I decided to refine my technique of spawning them. Using the generalized technique of reproducing patterns from here:

And the anatomy of a hex from here:

You can create a lattice of hexes by making the offset $A$ [keep in mind it's the "A" from the first picture NOT "A" from the 2nd picture] of the horizontal distance between two hexes, which is $s \sqrt{3}$, and the offset $B$ is the same but rotated by $60°$ (other multiplies of $60°$ would also work as long as not divisible by $180°$):

Which for $s = 1$ makes for a very simple setup:

You can see the horizontal dimension $x$ translates to $x-1 \over 2$ hexes on either side of the center hex (the dimensions need to be odd for there to be a center hex) horizontally, and $y$ translates to $y-2 \over 2$ rows of hexes above and below. If you're interested in the vertical dimension, it's $A+s$ (largest width + side length) for each two rows in either vertical direction:

So for each row, the vertical offset is ${A+s \over 2} = {2s+s \over 2} = {3s \over 2} = 1.5s$ or you could take the cosine of the $60°$ multiplied by horizontal length:

>>> sin(radians(60)) * sqrt(3)
1.4999999999999998

In Geonodes you could also use Vector Rotate node to rotate the horizontal offset and separate its $y$ component… Once we have the parallelogram lattice, move it to center, and delete hexes further than some radius (cut out a circle out of it):

For some fancy (dis)appearing, you could realize the hexagons in the base radius, and apply my answer here:

How to make disintegration or dissolve effect from center of the object with texture or geometry nodes?

Or even better, don't realize the hexagons, and delete the points by using the technique in quellenform's answer. For a spiral effect you would just add a Gradient Texture in radial mode.

$\endgroup$
1
  • $\begingroup$ Wonderful stuff, very useful, thank you! $\endgroup$ Commented Sep 27, 2023 at 10:37
5
$\begingroup$

I gave it a try, and it seems to work. There might be room to simplify the nodes further. I've uploaded screenshots of the relevant nodes.

enter image description here

enter image description here

enter image description here

enter image description here

enter image description here

enter image description here

$\endgroup$
1
  • $\begingroup$ Wow, there are so good answers here! I would love to click 'best answer' to all of these :) These are very useful, thank you! $\endgroup$ Commented Sep 27, 2023 at 10:35

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .