6

Мне нужна формула Excel, которая может помочь мне найти третью точку в треугольнике, учитывая большинство другой информации. Это не домашняя работа, то есть мне не нужно делать это только один раз. Мне нужен последовательный способ сделать это многократно в течение следующих нескольких месяцев, как можно быстрее и точнее, поэтому я надеюсь, что Excel или что-то подобное будет лучшим инструментом. У меня сложилось впечатление, что всегда может быть два правильных ответа на эту проблему. Если это так, и если возможно, четыре формулы, две для возможных значений X и две для возможных значений Y, будут в порядке. В большинстве случаев правильная разработка не составит труда. Моя главная задача - сделать это точно, многократно.

Все точки находятся в двумерной декартовой системе (имеют значения X и Y) и могут быть отрицательными или положительными. Треугольник будет случайным, и поэтому его следует считать разносторонним. Для каждого треугольника у меня есть две декартовы точки, а также расстояния от этих точек до третьей точки. Исходя из этого, я легко могу убедиться, что в других столбцах у меня есть длины всех трех сторон и все три внутренних угла в радианах и градусах, а также две декартовы точки в виде значений X и Y. Как я могу использовать формулу Excel, чтобы получить оставшиеся значения X и Y двух действительных третьих точек?

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

point 1:
A = X1
B = Y1

point 2:
C = X2
D = Y2

E = distance from p1 to p2  (calculated from other values)
F = distance from p1 to p3
G = distance from p2 to p3

H = inner angle at p1 in radians (calculated from other values)
I = inner angle at p2 in radians (calculated from other values)
J = inner angle at p3 in radians (calculated from other values)

The cells that will contain my formulas:
K = possible X3
L = other possible X3
M = possible Y3
N = other possible Y3

Я предполагаю, что будет две формулы для X3 и две формулы для Y3, каждая из которых дает возможное решение, но я не уверен на 100%, верно ли это.

Я не могу справиться с математикой, но мой инстинкт был бы, что я мог бы каким-то образом взять одну из моих формул расстояния, например ту, которая вычисляет расстояние E:

=SQRT(((C-A)^2)+((D-B)^2))

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

Можно ли сделать это простым способом, используя приведенные выше столбцы / переменные и набор из четырех формул Excel? Спасибо.

3 ответа3

5

Вот один из возможных наборов формул, который в основном соответствует тому, что описал Дейн. Проверено в Google Docs.

A= ____                         // X1
B= ____                         // Y1
C= ____                         // X2
D= ____                         // Y2
E= sqrt((A-C)^2+(B-D)^2)        // Distance 12
F= ____                         // Distance 13
G= ____                         // Distance 23
H= acos((E^2+F^2-G^2)/(2*E*F))  // Angle 1
I= acos((E^2+G^2-F^2)/(2*E*G))  // Angle 2
J= acos((F^2+G^2-E^2)/(2*F*G))  // Angle 3
K= A+F*cos(atan2(C-A,D-B)+H)    // X3
L= A+F*cos(atan2(C-A,D-B)-H)    // X3Alt
M= B+F*sin(atan2(C-A,D-B)+H)    // Y3
N= B+F*sin(atan2(C-A,D-B)-H)    // Y3Alt
0

Вы можете просто построить круги с радиусом, заданным из каждой известной точки, а затем посмотреть, где они пересекаются. Как показано ниже.

0

Чтобы рассчитать третью точку, вам нужно следующее:

  1. Отправная точка
  2. Расстояние
  3. Угол от оси х

Затем вы будете использовать функции Excel =sin() или =cos() и математику, объясненную в этом вопросе по математике.

Хитрость заключается в расчете (3) угла от оси х. Этот вопрос об обмене стеками расскажет вам, как определить угол от оси x на вашей известной стороне. Вы будете использовать Excel =atan2() . Исходя из этого, вы либо добавите, либо вычтете свой внутренний угол (например, ваше значение H). Сложение против вычитания - вот что даст вам два разных момента.

Будьте осторожны при использовании Radians vs. Degrees.

Получайте удовольствие и дайте нам знать, что вы придумали!

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .