Добрый вечер. Есть прямоугольник заданный координатами 4ех точек в пространстве , нужно найти такую точку в пространстве (в которую поставить камеру) откуда прямоугольник будет не проективно искаженный, т.е. с прямыми углами. Насколько я понимаю нужно найти матрицу преобразующую 1 из углов в прямой и потом эту матрицу применить к точке в которой камера сейчас, чтобы найти ту точку из которой мы видим прямоугольник ? задан 6 Ноя '13 17:15 complexityclass |
Если известны координаты вершин прямоугольника $%ABCD$%, то находим координаты его центра $%O$% как полусумму координат концов одной из диагоналей. Далее составляем уравнение плоскости, проходящей через точки $%A$%, $%B$%, $%C$%. Это делается стандартным образом: пишем уравнение вида $%ax+by+cz=d$% с неопределёнными коэффициентами, и подставляем в них координаты трёх точек. Получается система из трёх уравнений, решая которую, мы находим все коэффициенты с точностью до постоянного множителя. Вектор $%(a,b,c)$% при этом будет перпендикулярен плоскости, и достаточно отложить его, или какой-то пропорциональный ему вектор, от точки $%O$%. отвечен 6 Ноя '13 18:22 falcao |
Этот вопрос вроде бы здесь уже звучал. Я хочу уточнить: имеется ли в виду, что достаточно найти точку на прямой, проходящей через центр прямоугольника и перпендикулярной плоскости прямоугольника? Если да, то такая задача решается совсем просто. Если нет, то надо уточнить постановку задачи.
Да, насколько я понимаю это решит мою задачу.