Finding the coordinate for the apex of a tetrahedron

Hey all,

When one has all the edge lengths of an irregular tetrahedron as well as the three coordinates of the base of the tetrahedron, how would one find the remaining coordinate? This is not just for regular tetrahedrons. I am at an absolute loss, and cannot think of a way with vectors or other methods to get the final coordinate.

Re: Finding the coordinate for the apex of a tetrahedron

Hey ShadowKnight8702.

It sounds like you basically have to solve a multi-equation system. Since all the lines are straight lines, you are solving a linear algebra problem. If you are working in 3D space (z,y,z) then it means that the equation of a line is r(t) = at + b(1-t) where a and b are points on the line. You have one of the two points for each line (the base point) and you also know that the second point is the same for all lines (since they all meet at that point).

So basically you have to solve for that last point that is common to all lines but which has a different value of t (for that particular linear equation). You can however get the value of t by using the distance. If you have r(t) = a + (b-a)*t when t = distance from base (which you have). Now given the above you have three equations in three unknowns and you can solve for the missing point.

In summary you have:

r(t)_i = a_i + (b_i-a_i)*d_i for the ith line and you have a_i and d_i and b_i = b for all i.

Re: Finding the coordinate for the apex of a tetrahedron

So I get making the three vector equations. But how can I compare them so they form a system I can solve? Let's say that the three base vertices are (0, 0, 0), (10.5, 0, 0), and (1.93, 5.15, 0) and the distances from the last vertex are 10, 5.5 and 10.5 respectively. I set up the vector equations of each:

t being the "time" which will be 1 for all three equations

(x, y, z) = (0, 0, 0) + 10t(d, e, f)

(x, y, z) = (10.5, 0, 0) + 5.5t(d-10.5, e, f)

(x, y, z) = (1.93, 5.15, 0) + 10.5t(d - 1.93, e - 5.15, f)

All I need is f, which is the z coordinate of the final vertex. How can one get f by these three equations?

Re: Finding the coordinate for the apex of a tetrahedron

Hi,

You really don't have enough information to find the unknown coordinate. There are lots of ways to see this. First, in 2 dimensions, it's easy to see that given 2 points and the 2 distances to a 3rd point (x,y), there are in general 2 solutions for (x,y); (x,y) must lie on the intersection of 2 circles which then will give 2 solutions usually. In 3 dimensions, change coordinates so that the 3 (non-collinear) points lie in the x,y plane. Then you have 3 equations of the form:

$\displaystyle (x-a_1)^2+(y-b_1)^2+z^2=r_1^2$

$\displaystyle (x-a_2)^2+(y-b_2)^2+z^2=r_2^2$

$\displaystyle (x-a_3)^2+(y-b_3)^2+z^2=r_3^2$

Subtract the 2nd equation from first, the 3rd equation from the first and if there is any solution, you'll find x and y. However, when you substitute these values back into the first equation, you'll generally get 2 solutions for z.

Aside -- this is exactly the way the GPS system works. You need __four__ satellites and their distances to a point on earth to uniquely determine the point on earth.

Re: Finding the coordinate for the apex of a tetrahedron

You should have three equations:

a_1 + (b-a_1)*d1 = a_2 + (b-a_2)*d2 = a_3 + (b-a_3)*d3

In vector form this is:

a_1 + (b-a_1)*d1 = <a1x + d1*bx - d1*a1x,a1y + d1*by - d1*a1y,a1z + d1*bz - d1*a1z>.

The key is to use these three equations to set up a linear system to see if you can find a solution.