[Math] How to find the third coordinate of a right triangle given 2 coordinates and lengths of each side

computational geometrygeometrytriangles

 p2
 |\
 |b\
 |  \
A|   \C
 |    \
 |c___a\
p1  B   p3

If given point p1 & p2, side A & B how would you find point p3? I know given this information you can find side C and all of the interior angles.

side C:
C^2 = A^2 + B^2

angle c = 90
angle a = A/SIN(a) = C/SIN(c)
angle b = 180 - (a+c)

But after this, I am trying to find point p3 and I am not sure what direction to take. Any help would be appreciated.

Edit: The triangle will not necessarily be facing upwards along an axis, it will be rotated at angles depending on exterior variables such as position of a mouse on the computer screen.

Best Answer

Let the coordinates of $p_n$ be $(x_n,y_n)$. Then the slope of $A$ is $m_A=\frac{y_2-y_1}{x_2-x_1}$. The slope of $B$ is $m_B=\frac{-1}{m_A}=\frac{x_1-x_2}{y_2-y_1}$. Then $p_3=p_1\pm B(\frac{1}{\sqrt{1+m_B^2}},\frac{m_B}{\sqrt{1+m_B^2}})$ where the sign ambiguity corresponds to two orientations of the triangle. I have ignored issues when the sides are vertical or horizontal, which can lead to division by zero