Provided a simplex defined by four vertices $(v_1,v_2,v_3,v_4)$, and known edge lengths, for a given vertex $v_i$, how can I calculate the shortest distance between $v_i$ and the non-adjacent face of the simplex? To provide an example, if $v_i=v_1$, I would want to calculate to shortest distance to the triangle defined by the vertices $(v_2,v_3,v_4)$.


1 Answer 1


If you drop a perpendicular from $v_1$ to the plane spanned by $v_2, v_3, v_4$, it will land either within the triangle $T=v_2v_3v_4$ or outside it. If it lands within, all three of the other faces of the simplex have acute angles adjacent to $T$, while if it lands outside, two of them will have an obtuse angle adjacent to $T$. You can therefore use the law of cosines to distinguish between these two possibilities while knowing only the side lengths of your simplex.

If it lands within the triangle:

The shortest distance from $v_1$ to the opposite face is the length of the perpendicular: i.e., an altitude of the simplex. So it is given by $3V/A$, where $A$ is the area of the opposite face and $V$ the volume of the simplex. If you know all the side lengths of the simplex, you can compute $A$ via Heron's formula, and $V$ via its 3-dimensional generalization.

If it lands outside the triangle:

The shortest distance from $v_1$ to the opposite face will either be along an edge or across the acute face. The shortest distance across a face is given by $2A/b$, where $A$ is the area of that face (again attainable via Heron's formula) and $b$ the length of the opposite edge. So compare this to each of the three edge lengths; the answer you want will be the shortest of those four quantities.


You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .