матрица сдвига в направлении y и ее эквивалентность - PullRequest
2 голосов
/ 18 мая 2010

Я хочу знать, как вращение и масштабирование эквивалентной матрицы сдвига в направлении у?

1     0     0

shx   1    -shy.xref

0     0      1

Я понял, что такое сдвиг, но как получить его, используя вращение и масштабирование?

спасибо:)

Ответы [ 3 ]

2 голосов
/ 18 мая 2010

Сдвиг нельзя построить, используя только вращение и масштабирование.
Сдвиг - это аффинное преобразование, а вращение и масштабирование - это «жесткие» преобразования, которые менее выразительны.

подробнее об этом:
http://en.wikipedia.org/wiki/Affine_transformation

0 голосов
/ 17 января 2014

Да, это может быть сделано, вращение с последующим неравномерным масштабированием и обратным вращением. Подробности вы можете найти здесь в третьем вопросе http://www.cs.cmu.edu/~djames/15-462/Fall03/assts/15-462-Fall03-wrAssign1-answer.pdf., вы также можете попробовать следующий код openGL. Он поворачивает прямоугольник на 45 градусов, затем масштабируется по оси X. и затем вращается в -26 градусах, то есть атан (0,5). 0,5 получается из определения угла между осью X и одной стороной после масштабирования в направлении X.

glRotatef (-26,0, 0,0, 0,0, 1,0);

glScalef (2,1,1);

glRotatef (45,0, 0,0, 0,0, 1,0);

glRectf (0, 0, 25,0, 25,0);

0 голосов
/ 16 июня 2013
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...