Known: $r$, coordinates of $A$, angle $BAC$=72°
Task: find coordinates of B and C.

So, I have 4 unknown parameters to compute, but only 3 equations.

$r^2$=$(x_a-x_b)^2+(y_a-y_b)^2 $
$(2.49r)^2 = (x_a-x_c)^2 + (y_a - y_c)^2$
$(2.28r)^2 = (x_b-x_c)^2 + (y_b - y_c)^2$

How to get the fourth equation? Or maybie is there a simplier algorithm? Working in my way may be very time-consuming and wearisome.

It's not a homework, this problem has naturally occured when making an OpenGL program.

enter image description here

  • 1
    $\begingroup$ You can use simple trigonometry. The $x$-coordinate of $B$ for instance is $A_x+r\cos(72^\circ)$ where $A_x$ is the $x$-coordinate of $A$. $\endgroup$ – David Mitra Jul 6 '12 at 16:20
  • 1
    $\begingroup$ @DavidMitra That is possible only if AC is parallel to $x$-axis.Isn't it? $\endgroup$ – Saurabh Jul 6 '12 at 17:23
  • $\begingroup$ @SaurabhHota Yes, thanks. I assumed as much. $\endgroup$ – David Mitra Jul 6 '12 at 17:24
  • $\begingroup$ This picture is simplified, hence it can be misleading. |AC| needn't to be parallel to x-axis, so simple geometry is't a correct solution in this case. $\endgroup$ – 0x6B6F77616C74 Jul 6 '12 at 17:32
  • 2
    $\begingroup$ Your equations seem to assume that the lengths $AC$ (or $BC$) is known; together with $AB$ and $\angle BAC$, you can consider the shape of the triangle to be known. Okay. Now ... You say you only know the coordinates of $A$. Without additional information, you can turn (or even flip) the triangle all over and keep vertex $A$ in place, so your problem is "under-determined". Perhaps your application allows you to add another constraint in the form of some parameter, say, the angle $AB$ (or $AC$) makes with the horizontal. In any case, there is no single answer here. $\endgroup$ – Blue Jul 8 '12 at 20:52

$\def\A{{\bf A}} \def\B{{\bf B}} \def\C{{\bf C}} \def\R{{\bf R}} \def\D{{\bf D}} \def\f{\phi}$As others have mentioned, if the task is to find the coordinates of $B$ and $C$, this problem is underdetermined.

Let's first consider the triangle with point $A$ located at the origin and point $C$ lying along the positive $x$-axis. Then the coordinates of the points can be found with simple trigonometry, $$\begin{eqnarray*} \A_0 &=& (0,0) \\ \B_0 &=& (c \cos A, c\sin A) \\ \C_0 &=& (b,0). \end{eqnarray*}$$ The angle $A$, and the sides $b$ and $c$ have been given. This is an SAS triangle. The triangle can be solved by finding $a$ with the law of cosines and one of the other angles with the law of sines.

(Added: For completeness, $A = 72^\circ$, $b = 2.61r$, and $c=r$. The law of cosines gives $a = \sqrt{b^2+c^2-2bc\cos A} = 2.49r$. Then $\frac{\sin A}{a} = \frac{\sin B}{b}$ implies $B = 86^\circ$. Lastly, $A+B+C = 180^\circ$ implies $C = 22^\circ$.)

The collection of triangles you are interested in have vertices of the form $$\begin{equation*} \D = \A + \R(\f)\D_0 \tag{1} \end{equation*}$$ where $\A = (A_x,A_y)$ is the given location of $A$, and where $\R(\f)$ is a rotation matrix. The transformation (1) is a counterclockwise rotation by the angle $\f$, followed by a shift so the point $A$ has the given coordinates. In components, $$\begin{eqnarray*} A_x &=& A_x \\ A_y &=& A_y \\ B_x &=& A_x + c\cos A\cos\f - c\sin A\sin\f \\ &=& A_x + c\cos(A+\f) \\ B_y &=& A_y + c\cos A\sin\f + c\sin A\cos\f \\ &=& A_y + c\sin(A+\f) \\ C_x &=& A_x + b\cos \f \\ C_y &=& A_y + b\sin \f. \end{eqnarray*}$$

Below we plot the triangle before rotation and translation in black. (We set $r = 1$ in the figure.) The dotted triangle has been rotated counterclockwise by $\f = 30^\circ$, and then translated so the new location of point $A$ is $(2,1)$. For reference,
$$\begin{eqnarray*} A_x &=& 2 \\ A_y &=& 1 \\ c &=& r = 1 \\ b &=& 2.61 \\ A &=& 72^\circ \\ \f &=& 30^\circ. \end{eqnarray*}$$

enter image description here

  • $\begingroup$ @kowalt: Thanks for the bounty. Cheers! $\endgroup$ – user26872 Jul 10 '12 at 0:32

B and C will not have any fixed co-ordinate.
Locus of B,C will be a circle with centre at A.

Now we have only one information about point B($x,y$) that is, it is at a distance $r$ from
A($x_a,y_a$).Hence,we have $$(x-x_a)^2+(y-y_a)^2=r^2$$ which is indeed an equation of circle, centered at A with radius $r$.And if you fix B on that circle you will get corresponding point C.

  • $\begingroup$ First statement is not revelatory and the second is nonsense. $\endgroup$ – 0x6B6F77616C74 Jul 6 '12 at 19:07
  • $\begingroup$ @Kowalt Why do you think so? $\endgroup$ – Saurabh Jul 6 '12 at 19:55
  • $\begingroup$ Sooooooooooooorry! "A" angle is certainty, BC was calculated by myself(therefore it is red), it equals to 2.49r. Question corrected :) $\endgroup$ – 0x6B6F77616C74 Jul 6 '12 at 22:38
  • 1
    $\begingroup$ @kowalt Ok. But still Locus of point B is a circle. $\endgroup$ – Saurabh Jul 7 '12 at 4:41
  • $\begingroup$ I still can't see where the answer is. Your equation is exactly the same as my first, doesn't it? Also statement "Locus of B,C will be a circle with centre at A" still doesn't make sense for me. Did you mean the same circle? $\endgroup$ – 0x6B6F77616C74 Jul 7 '12 at 11:34

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.