I have a problem that should've been very simple to solve but I'm new to geo nodes. I create revolved geometry using a curve and a screw modifier. This is the curve: enter image description here

This is the geometry and the modifier: enter image description here

How do I achieve the same using geometry nodes?


1 Answer 1


enter image description here

For this you need only half of this curve. You rotate it along the X-axis a certain number of times.

In this example I use $36$ subdivisions.

So you get the angle for the rotation with $\frac{2\pi}{36}$.

Then I create an element with Mesh Line that has also $36$ points (all at the same position or in the center).

At these points I then instantiate the curve and rotate each one by multiplying the previously calculated angle with the index.

Furthermore I create a grid, which serves me as surface. This has as value for the vertices the number of rotations and the number of points of the curve.

Finally I only have to transfer the positions of the rotated curves to the grid and unite the points with Merge by Distance.

  • $\begingroup$ Thanks. This solution does work. I have a few concerns regarding the performance. I'm going to have 100s of these in my scene. Any clue on how this might affect everything? But yeah this works and solves my problem. $\endgroup$ Jul 20, 2022 at 16:57
  • $\begingroup$ @VipulRajan There are relatively simple mechanisms involved here, so it should not have a dramatic effect on performance. Above all, there should not be a leaner method with Geometry Nodes. $\endgroup$
    – quellenform
    Jul 20, 2022 at 17:00
  • $\begingroup$ Okay. Went through the GN tree in the blend file step by step. Most of it I understood. The set position node has be a bit confused at the moment. I can follow how the grid is created, how the structure is created. I also understand the set position node basically "wrapped" the grid around the structure that was created. I don't yet understand how it did that but I'd keep at it. $\endgroup$ Jul 20, 2022 at 17:06
  • $\begingroup$ @VipulRajan Wrapping the grid to the underlying structure works because the indices of the grid are built in a certain order. They are arranged row by row, so the mapping also works column by column. $\endgroup$
    – quellenform
    Jul 20, 2022 at 17:13
  • $\begingroup$ Yep, got it now. I was a bit confused by the order. One extremely minor improvement I'd like to suggest is to flip faces at the end. Currently, the normals point inside the mesh because of how the grid indices work. Thanks a ton. I really learnt a lot, more than just a solution to my current problem. $\endgroup$ Jul 20, 2022 at 17:20

You must log in to answer this question.

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