1: I’ve used a Mobius Transformation to create spherical hexagonal grid. And I need to find a normal to some of the vertices. The idea was to make it with Cross Product + Average. Like here:
But as soon as I apply these script to my 3d grid its not working. Somehow 2 of the vectors are always pointing in one direction. And I can’t find why. Probably something obvious…
The normal to a smooth surface is unambiguously defined, but when you have a faceted surface like this, which is not tangent continuous, there are multiple possible ways to assign a normal vector to the vertices. Which one is suitable here depends on what you want to do with it next.
For example, you can take an unweighted average the normals of the surrounding faces, or you can weight these by area or angle. Also for this spherical geometry you could simply take the vector from the center of the sphere to each vertex, unitize it and use that as the normal.
As for creating a full hexagonal sphere with even cells, this is not possible. To make a closed sphere you will need some non-hexagonal faces. A popular choice is to use 12 pentagonal faces, with the rest being hexagonal. Also, even with these 12 pentagons, the hexagons cannot be all the same size and shape (except in a couple of special cases with few faces like Chamfered dodecahedron - Wikipedia
and Truncated icosahedron - Wikipedia)
Yes, that would be the best way. But the idea it not to be depended on center of the sphere. In case I wound want to reuse script on different shape. I should have mentioned that…