Hello, I am going through some codes regarding generating sphere from continuous sub division. It starts from a simple tetrahedron bounded within a sphere. Next, each face of the tetrahedron is subdivided as follows:

suppose, a, b and c are three coordinates of a face of the tetrahedron.
Next the following three points have been generated as follows:

In Euclidean coordinates, the midpoints (a+b)/2, (b+c)/2 and (c+a)/2 lie in the plane, while the sums (a+b), (b+c) and (c+a) don’t, nor do v1, v2 or v3 in general (in particular, if a,b, and c have unit length, v1,v2,v3 can’t lie in the plane).

More generally, if three points a,b,c lie in a plane, the point p=ra+sb+t*v only lies in the plane if and only if r+s+t=1 (i.e. if the weights sum to one).

As for generating a sphere through subdivision and normalisation, it’s more common to start with either a cube, octahedron or icosahedron. A cube or octahedron will result in a mesh which is symmetric about the x=0, y=0 and z=0 planes. An icosahedron will result in a more uniform mesh (the resulting triangles will all be much closer to equilateral than for a shape with fewer faces), and one which is symmetric about one of the planes.

The shape of the triangles (or quads) nearest the original vertices is dictated by the original shape, while those in the middle of the faces will tend toward being equilateral triangles (or squares). For a tetrahedron, the triangles adjacent to the original vertices will have one angle of 120 degrees plus two of 30 degrees. For an octahedron, its one of 90 degrees plus two of 45 degrees. For an icosahedron, it’s one of 72 degrees plus two of 54 degrees. For a cube, the quads adjacent to the original vertices will have one angle of 120 degrees.

Hello, just asking for another clarification. Do I need to always bind the base tetrahedron, hexagon or octahedron in a unit sphere by normalizing the vertices? Why?
Thank you.

[QUOTE=Lee_Jennifer_82;1281181]Hello, just asking for another clarification. Do I need to always bind the base tetrahedron, hexagon or octahedron in a unit sphere by normalizing the vertices? Why?
[/QUOTE]
If you’re creating a sphere, all of the vertices need to be at the same distance from the centre of the sphere.

When you subdivide, you typically add the new vertices and keep the original vertices. Both sets of vertices need to be normalised to the same size. Also, you should normalize the vertices as they’re created (before you use them for the next level of subdivision); that results in a more constant scale factor than normalising all of the vertices afterwards.