Расчет координат третьей точки треугольника

Ладно, я знаю, что это звучит так, как будто об этом нужно спрашивать на math.stackoverflow.com, но это смущающая простая математика, которую я забыл из старшей школы, а не продвинутый материал для аспирантов!

Я занимаюсь графическим программированием, и у меня есть треугольник. Кстати, две стороны этого треугольника равны, но я не уверен, что это актуально. У меня есть координаты двух углов (вершин), но не третьего (эти координаты являются пикселями на экране, если это актуально). Я знаю длину всех трех сторон.

Как определить координаты неизвестной вершины?

 Ray Henry07 окт. 2010 г., 23:15
На самом деле может быть четыре возможных местоположения для отсутствующей вершины.
 Ray Henry07 окт. 2010 г., 18:54
Там будет либо два или ноль решений.

Ответы на вопрос(2)

где a, b, c - длины сторон (независимо от длины), а A, B, C - углы, противоположные стороне с одной и той же буквой.

Используйте приведенное выше, чтобы выяснить угол от одной из известных вам конечных точек, затем используйте угол, положение вершины и угол между соседними сторонами, чтобы определить, где находится неизвестная вершина.

И сложность проблемы не определяет, на каком сайте она должна идти, только предмет. Таким образом, вы должны перенести это в математику.

у меня был серьезный мозговой раньше, но это должно работать. Использоватьзакон косинусов

/* use the law of cosines to get the angle of CAB */
c² = a² + b² - 2ab cos(Cangle)
cos(Cangle) = (a²+b²-c²) / 2ab
Cangle = acos((a²+b²-c²) / 2ab)

AB = B.xy - A.xy;
normalize(AB);
len = length(AC)
C.x = len*AB.x* cos(Cangle) * len*AB.y*sin(Cangle);
C.y = len*AB.x*-sin(Cangle) * len*AB.y*cos(Cangle);
 Bobby Jack07 окт. 2010 г., 19:05
Я знаю, по крайней мере, координаты x и y 3-й точки больше или меньше, чем координаты x и y двух других. Это помогает?
 Mads Elvheim08 окт. 2010 г., 12:44
Нормализация векторов заключается в преобразовании векторов в единичные векторы, которые представляют собой векторы длиной 1. Радианы или градусы не имеют значения, если ваши функции тригонометрии используют одну и ту же единицу. Если acos принимает радианы, cos должен также.
 Mads Elvheim08 окт. 2010 г., 12:35
Под нормализацией я подразумеваю вычисление единичного вектора.

Ваш ответ на вопрос