Как найти четвертую вершину квадрата, видимого под углом, зная первые три и длину стороны?
Условно есть квадрат, лежащий на горизонтальной поверхности. Камера видит его под углом. С нее я получаю три координаты вершины. Как мне вычислить четвертую?
В качестве математической модели для камеры обычно берут центральную проекцию. Я почти уверен, что центральная проекция некоторой плоскости есть аффинное преобразование. Для квадрата ABCD верно векторное(!) равенство AC = AB + AD. При Аффинном преобразовании это равенство сохранится.
Действительно. Подскажите, можно ли как-то изящно определить, какая из точек какая, без поиска максимального расстояния между ними, принятия его за диагональ и так далее?
@victor1234 Боюсь, что если направление камеры может сильно отличаться от нормали, то даже ваш способ не сработает. Остается только перебирать все 3 варианта и как-то определять верный. Но если искажения небольшие то способ неплохой.