Not too sure I fully understand.
I think the idea is filling triangular faces with smaller triangles, 6 along each edge (example used in the wiki)
So creating a 2D approximation, flattening out the icosahedron we get a net of 20 triangular faces, 10 squares in a 5x5 box
we can get the pattern in 2D
Then wrap it around a sphere (using the code from this post)
n = 5;
Table[
Table[{{g, 0 + p}, {g, 1/6 + p}, {g + 1/6, 0 + p}}, {g,
0, (1 - 1/6)*n, 1/6}],
{p, 0, 1*n, 1/6}
];
i0 = Show[
Graphics[{EdgeForm[Black], {Hue[RandomReal[]],
Triangle[#]}}] & /@ %[[#]] & /@ Range[Length[%]]]
{width, height} = ImageDimensions[i0];
w = 40; h = 45;
pic = ImageTake[i0, {h, height - h}, {w, width - w}];
ParametricPlot3D[{Cos[u] Sin[v], Sin[u] Sin[v], Cos[v]}, {u, 0,
2 Pi}, {v, 0, Pi}, Mesh -> None, PlotPoints -> 100,
TextureCoordinateFunction -> ({#4, 1 - #5} &), Boxed -> False,
PlotStyle -> Texture[Show[i0, ImageSize -> 1000]],
Lighting -> "Neutral", Axes -> False, RotationAction -> "Clip",
ViewPoint -> {-2.026774, 2.07922, 1.73753418}, ImageSize -> 600]
You can adjust the shape for truncated icosahedron.
Or are you are looking for a manipulation in 3D?
For some reason SpherePoints[]
is removed from my mathematica, however
Graphics3D[Line[SpherePoints[100]]]
if you combine this and some form of ShortestPath
SpherePoints[100];
Graphics3D[Line[%[[Last[FindShortestTour[%]]]]
if you set the number of points to that of the number of points on the sphere they should be evenly spaced and the same effect.
PolyhedronData["Icosahedron"]
? $\endgroup$