Отбросьте вертикальные линии от точек C и D к линии AB, чтобы найти их проекции на E и F на AB:
Сейчас AED и BF C - это прямоугольные треугольники одинаковой высоты. Давайте назовем высоту h
. Из Пифагора:
a² + h² = L4² and b² + h² = L2²
Вычитая одно уравнение из другого, вы получите: a² - b² = L4² - L2²
Также вы можете разделить L1 на сегменты AE, EF и FB, поэтому длина L1 должна be:
L1 = a + L3 + b => a + b = L1 - L3
Поэтому у нас есть система уравнений в a и b:
a² - b² = L4² - L2²
a + b = L3 - L1
Используя тот факт, что a² - b² = (a+b)(a-b)
и приведенное выше уравнение, вы получите:
(L3 - L1)(a - b) = L4² - L2² => a - b = (L4² - L2²)/(L3 - L1)
(Обратите внимание, что L1 и L3 не могут быть равны. Если L1 = L3, существует бесконечное число решений.)
Таким образом, уравнения упрощаются до:
a + b = L3 - L1
a - b = (L4² - L2²)/(L3 - L1)
Решение:
a = (L3 - L1 + (L4² - L2²)/(L3 - L1)) / 2
b = (L3 - L1 - (L4² - L2²)/(L3 - L1)) / 2
Высота трапеции:
h = sqrt(L4² - a²) = sqrt(L2² - b²)
Теперь вы можете использовать a
для определения угла в точке A и b
чтобы определить угол в точке B и использовать их для вычисления координат для C и D. Или вы можете использовать a
, b
и h
напрямую.
Например: предположим A находится в начале координат (0,0), а B - в (L1, 0). Тогда два решения:
- C в
(a, h)
и D в (L1 - b, h)
- C в
(a, -h)
и D в (L1 - b, -h)