I have a set of points in the 3D space and I want to draw the bounding convex polyhedron of those points. A very naïve solution would be to draw a triangle between every three points:
Graphics3D[
{EdgeForm[None], Polygon[Part[pts, #] & /@ Subsets[Range[Length@pts], {3}]]},
Axes -> True]
However, this method is very inefficient. It takes a few seconds to be drawn on my laptop and whenever I want to rotate it using the mouse, it doesn't move smoothly. I know what the issue is: I am drawing too many triangles, many of them are not even visible (since they are placed inside the polyhedron). But how can I fix it?
Here is an example and the set of the points:

pts={{0., 0., 0.}, {0., 0., 1.79176}, {0., 1.79176, 0.}, {1.79176, 0.,
0.}, {0., 1.79176, 0.}, {0., 0., 1.79176}, {1.79176, 0., 0.}, {0.,
1.79176, 0.606136}, {0., 0.606136, 1.79176}, {0., 1.79176,
0.606136}, {0., 0.606136, 1.79176}, {1.79176, 0.,
0.606136}, {0.606136, 0., 1.79176}, {1.79176, 0.606136,
0.}, {0.606136, 1.79176, 0.}, {1.79176, 0., 0.606136}, {0.606136,
0., 1.79176}, {1.79176, 0.606136, 0.}, {0.606136, 1.79176,
0.}, {1.79176, 0., 0.}, {0., 1.79176, 0.}, {0., 0.,
1.79176}, {1.79176, 0., 0.606136}, {0.606136, 0.,
1.79176}, {1.79176, 0.606136, 0.}, {0.606136, 1.79176, 0.}, {0.,
1.79176, 0.606136}, {0., 0.606136, 1.79176}, {0., 1.79176,
0.606136}, {0., 0.606136, 1.79176}, {1.79176, 0.606136,
0.}, {0.606136, 1.79176, 0.}, {1.79176, 0., 0.606136}, {0.606136,
0., 1.79176}, {1.79176, 0.606136, 0.}, {0.606136, 1.79176,
0.}, {1.79176, 0., 0.606136}, {0.606136, 0., 1.79176}, {1.79176,
0.606136, 0.}, {0.606136, 1.79176, 0.}, {1.79176, 0.,
0.606136}, {0.606136, 0., 1.79176}, {0., 1.79176, 0.606136}, {0.,
0.606136, 1.79176}, {0., 1.79176, 0.606136}, {0., 0.606136,
1.79176}, {1.79176, 0.606136, 0.374693}, {1.79176, 0.374693,
0.606136}, {0.606136, 1.79176, 0.374693}, {0.374693, 1.79176,
0.606136}, {0.606136, 0.374693, 1.79176}, {0.374693, 0.606136,
1.79176}, {1.79176, 0.606136, 0.374693}, {1.79176, 0.374693,
0.606136}, {0.606136, 1.79176, 0.374693}, {0.374693, 1.79176,
0.606136}, {0.606136, 0.374693, 1.79176}, {0.374693, 0.606136,
1.79176}, {1.79176, 0.606136, 0.374693}, {1.79176, 0.374693,
0.606136}, {0.606136, 1.79176, 0.374693}, {0.374693, 1.79176,
0.606136}, {0.606136, 0.374693, 1.79176}, {0.374693, 0.606136,
1.79176}, {1.79176, 0.606136, 0.374693}, {1.79176, 0.374693,
0.606136}, {0.606136, 1.79176, 0.374693}, {0.374693, 1.79176,
0.606136}, {0.606136, 0.374693, 1.79176}, {0.374693, 0.606136,
1.79176}, {1.79176, 0.606136, 0.374693}, {1.79176, 0.374693,
0.606136}, {0.606136, 1.79176, 0.374693}, {0.374693, 1.79176,
0.606136}, {0.606136, 0.374693, 1.79176}, {0.374693, 0.606136,
1.79176}, {1.79176, 0.606136, 0.374693}, {1.79176, 0.374693,
0.606136}, {0.606136, 1.79176, 0.374693}, {0.374693, 1.79176,
0.606136}, {0.606136, 0.374693, 1.79176}, {0.374693, 0.606136,
1.79176}}


EdgeForm[]in your code) – Dr. belisarius Apr 29 '13 at 11:35TetGenConvexHull[]if they are supposedly coplanar? – J. M.'s missing motivation Apr 29 '13 at 11:38SphericalNonUniformDistribution[num_] := Table[{Cos[#1] Sin[#2], Sin[#1] Sin[#2], Cos[#2]} &[ Random[Real, {0, 2 Pi}], Random[Real, {0, Pi}]], {num}]– Apr 29 '13 at 12:00Norm[Cross[normal1, normal2]] <= tolmight work, then... – J. M.'s missing motivation Apr 29 '13 at 12:10