There's a related question,
A problem on generating convex hull, and I can adapt my answer there to this case. The basic approach is to map the points in the plane to a 2D coordinate system, find the hull in 2D, and embed the hull in the plane in 3D.
I inserted an extra point in the interior, because that sometimes causes trouble when it is dropped in the BoundaryMesh
. The ConvexHull
is basically the BoundaryMesh
of the DelaunayMesh
of the points.
alfa = 0.75;
p = {{1, 0, 0}, {alfa, 0, 1 - alfa}, {alfa, 1 - alfa, 0}, {0, alfa,
1 - alfa}, {0, 1 - alfa, alfa}};
p = Insert[p, Mean[p], 3];
coordMat = (*coordinate projection matrix*)
DeleteCases[Orthogonalize @ Differences @ p, v_ /; v == {0, 0, 0}];
coords = p.Transpose[coordMat]; (*2D coordinates*)
hull = DelaunayMesh[coords];
At this point we have a triangulation of the convex hull in hull
. The simplest thing is to map this back to 3D. A little more work is needed to convert it to a BoundaryMeshRegion
like ConvexHullMesh
, which appears as the second solution.
chull = MeshRegion[p, MeshCells[hull, 2]];
Show[
HighlightMesh[chull, Labeled[1, "Index"]],
Graphics3D[{Red, Sphere[p, 0.05]}],
Boxed -> True, Axes -> True]

The BoundaryMeshRegion
version:
bhull = BoundaryMesh@hull;
nf = Nearest[MeshCoordinates[hull] -> Automatic];
tobpts = (* needed because BoundaryMesh drops interior points *)
MapIndexed[First@#2 -> First@nf[#] &, MeshCoordinates[bhull]];
chull = MeshRegion[p, MeshCells[bhull, 2] /. tobpts];
Show[
HighlightMesh[chull, Labeled[1, "Index"]],
Graphics3D[{Red, Sphere[p, 0.05]}],
Boxed -> True, Axes -> True]

Note that there is an important difference between them, if you want to highlight the line elements.