0
$\begingroup$

I created a primitive torus using geometry nodes. enter image description here

Then i created an array of such rings using a line (Instances On Points). enter image description here

I need the diameter (socket "Main Diameter")

enter image description here

of these rings to be adjustable depending on the height (the higher the vertex/ring on the line, the larger the diameter). How is this possible to do?

In the end I expect to get something like this:

enter image description here

(Blender v 4.0.2)

$\endgroup$
1

1 Answer 1

1
$\begingroup$

You cannot set multiple radii for the object to be instanced, because this is a single object which just gets duplicated by the Instance on Points node. So you would have to manipulate the resulting instances, for example by ID with the Scale input of the node. However, this would change the overall thickness of the torus as well.

So what I would do is instance curve circles instead, scale them by ID (or maybe Z position, whatever you want) and after instancing convert them using a Curve to Mesh where you use another curve circle as profile. But you have to use a Realize Instances node, otherwise the profile will be scaled according to the scale of the instances as well.

For scaling I used the ID in this example, you have to add something to not have the first scale at 0, but the order of adding and multiplying can be swapped, it depends on how you want to set the base diameter and how much it should increase per step etc.

torus instances

Here basically the same setup, but using the Z position for scaling. In this case I multiplied the Z value with 0.3 instead of 0.1 like I did with the ID and the result is the same as before:

torus scaled by Z

One of the major differences between these two setups: As long as the line keeps its height, with Z position the maximum diameter stays the same no matter how many rings you have. With ID the maximum diameter increases.

$\endgroup$
1
  • $\begingroup$ Thank you. It turned out that I overcomplicated the scheme $\endgroup$
    – arachnoden
    Feb 20 at 16:54

You must log in to answer this question.

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