I am struggling with making the following possible via Geometry Nodes:
- Start with the input of a curve geometry, the number of points to distribute along the curve N, and e.g. radius R of an ICO sphere
- Create an ICO sphere of radius R on one end of the curve
- Generate N-1 more ICO spheres along the curve so that:
- the last sphere is created at the other end of the curve
- generated spheres are progressively scaled up/down (in a linear fashion, or optionally - following a Float Curve) and positioned so that they fill the curve completely while touching one another (or optionally, having a constant configurable gap/overlap)
This means that my objective is for the generated spheres to get bigger and bigger progressively if there are not enough of them to fill the curve if they would all have the input radius R, get smaller and smaller progressively if there are too many of them to fit into the curve. While spacing-wise, for them to behave as-if they were a series of beads being threaded onto the curve.
I tried my best to figure a solution out using the available learning materials but having found some that would recreate the scaling behaviour without the positioning aspect or vice versa, as a novice, I could not achieve a solution working as intended.
I attach a render and .blend
file of my closest attempt that still misses the mark because:
- Only a specific combinations of N and R would make the spheres touch
- Increasing the number of points N prolongs the curve rather than squeezing the spheres
Any help will be appreciated!