Имеем прямоугольник (0,0)(x,0)(x,y),(y,0).

Мы сжимаем его (с сохранением отношения сторон) и переносим в координаты (x1,y1)(x2,y2)(x3,y3)(x4,y4)

Как найти неподвижную точку?

P.S. Гарантируется, что сжатый прямоугольник лежит в пределах изначального

задан 7 Фев 17:54

изменен 7 Фев 17:55

@кси: прямоугольник только сжимают, или его можно поворачивать? Ответ можно дать для общего случая, но для первого из них формулы будут совсем простенькие.

(7 Фев 18:30) falcao

@falcao: Поворачивать можно. Иначе действительно слишком просто

(7 Фев 18:59) кси

На самом деле, как раз с поворачиванием и проблема

(7 Фев 19:00) кси

@кси: в этом случае формулы будут чуть более сложные. Но преобразование в любом случае окажется линейным (точнее, аффинным). Точка с координатами (x,y) перейдёт в точку с координатами (ax+by+c,dx+ey+f), где a,b,c,d,e,f -- константы. Их значения вычисляются на основании того, куда перешли 4 вершины. Можно сделать параллельный перенос, потом поворот, потом растяжение. Для всех этих преобразований есть формулы. В конце решаем систему из двух уравнений (ax+by+c,dx+ey+f)=(x,y).

(7 Фев 19:31) falcao
10|600 символов нужно символов осталось
Знаете, кто может ответить? Поделитесь вопросом в Twitter или ВКонтакте.

Ваш ответ

Если вы не нашли ответ, задайте вопрос.

Здравствуйте

Математика - это совместно редактируемый форум вопросов и ответов для начинающих и опытных математиков, с особенным акцентом на компьютерные науки.

Присоединяйтесь!

отмечен:

×2,446
×52
×15

задан
7 Фев 17:54

показан
37 раз

обновлен
7 Фев 19:31

Отслеживать вопрос

по почте:

Зарегистрировавшись, вы сможете подписаться на любые обновления

по RSS:

Ответы

Ответы и Комментарии

Дизайн сайта/логотип © «Сеть Знаний». Контент распространяется под лицензией cc by-sa 3.0 с обязательным указанием авторства.
Рейтинг@Mail.ru