В трехмерном пространстве с заданными P1 и P2 и двумя присоединенными звеньями от конца к концу с длинами L1 и L2 соответственно, link1 начинается с P1. Напишите функцию, которая находит конфигурации ссылок, которые помещают конец 2-й ссылки в точку P1. Я не знаю, с чего начать ... Какая именно "конфигурация соединения" должна быть (как вывод): вектор (например, 2i -3j + 5k)? Или точечная координата точки соединения или что ..?
Я думаю, что существует бесконечное количество решений в 3D и 2 решения в 2D, и я пытаюсь использовать одно из них для 1-го шага для 3D.
Учитывая P1 (x1, y1, z1), P2 (x2, y2, z2), L1 и L2, все, о чем я могу думать, это: преобразовать в новую систему координат (хотя и не уверен, как), чтобы P1 стал 0,0,0) и P2 становится (d, 0,0) где d = расстояние (P1, P2). Теперь мы сведем его к двумерной задаче, где нам нужно найти P3 (x, y, 0) в новой системе координат, такой, что P3 - это L1 из (0,0,0) и L2 из (d, 0,0) ).
Я думаю, что мы можем найти ровно два решения P3 (x3, +/- y3), когда мы фиксируем z на 0. И затем мне нужно преобразовать его обратно в исходную систему координат ... и координата z должна выкинуть в ... но я понятия не имею, как.