3D Geometry: Find Third Point of Triangle Given Two Points

3dgeometrytriangles

I have a 3d triangle ABC. Lengths AB, BC, and AC are known. Coordinates of points A and B are known. Point C only the y value of the coordinate is known.

I believe there are 2 points that can satisfy the above constraints, I just can't find a method to derive them. If it simplifies calculations, either A or B can be located at (0,0,0).

I do not care how it can be solved, as long as I can implement it in Ruby.

Any guidance will be greatly appreciated.

Best Answer

If you have the points $A$ and $B$ and the distance from $C$ to them, that is $AC$ and $BC$, for sure your point $C$ must belong on the intersection of two spheres, centered at $A$ and $B$, with radius $AC$ and $BC$, respectively. But this intersection should be a circle. Then you have to use other information about $C$ to determine it (its $y$-coordinates, for example).

Edit: as observed by Zev Chonoles, this does not work if the circle of intersection is contained on the $xz$-plane.