3

How do I change the number of segments for each ring on a UV Sphere in Geometry Nodes?

enter image description here

The top and bottom rings should have fewer segments so that the letters don't overlay each other.

Here's my setup:

enter image description here

Thanks in advance :)

2 Answers2

5

You could extract the latitudes of your UV Sphere and convert those to curves:

enter image description here

.. which can be sampled by length in Curve to Points.

That means you can space your letters out evenly:

enter image description here

Robin Betts
  • 76,260
  • 8
  • 77
  • 190
4

Instead of using a UV Sphere, you could just use maths, by converting between plane and spherical coordinate systems:

I wouldn't be surprised if it actually was slower, plus it introduces a problem of having to divide the text into lines by yourself. The advantage is, you can get proper letter spacing (not sure if that's even something you're interested in), and the precision of sampling is as if you sampled on infinitely subdivided curve. This precision thing is subtle and really only visible if instead of positioning entire instances you're realizing them and maybe even subdividing them to make the letter shape conform to the sphere completely… So that's what I show in the example, quite far from the request.

To combat the squeeze, I think you would need to divide the x by calculated radius.

Markus von Broady
  • 36,563
  • 3
  • 30
  • 99
  • Actually proper letter spacing is the matter not of manually calculating sphere positions, rather spawning the text on a plane first, and then using its x, which can be used as a factor on the curve, so you could still spawn just a single line and sample the factor of all joined curves from uv sphere. – Markus von Broady May 05 '23 at 09:14
  • Makes mine look clunky and simplistic :) – Robin Betts May 05 '23 at 09:56