алгоритм асимметричной матрицы - PullRequest
11 голосов
/ 23 марта 2009

Я ищу алгоритм перекоса, как и в фотошопе, edit-> transform-> skew Есть ли простая матрица, которая могла бы сделать это?

То, что я видел до сих пор, - это базовая матрица перекоса (сдвиг), но ее отсутствие контрольной точки не нравится в фотошопе, где по крайней мере 4 точки расположены в каждом углу прямоугольника, и мы можем свободно перемещать каждую контрольную точку.

Мне нужно реализовать это для преобразования плоскости.

1 Ответ

22 голосов
/ 23 марта 2009

Глядя на http://www.w3.org/TR/SVG11/coords.html,, который говорит о SVG, он говорит:

  • Перекосное преобразование вдоль оси x эквивалентно матрице

alt text

или [1 0 tan (a) 1 0 0], что приводит к перекосу координат X на угол a.

  • Наклонное преобразование вдоль оси y эквивалентно матрице

alt text

или [1 tan (a) 0 1 0 0], что приводит к перекосу координат Y на угол a.

Надеюсь, это поможет! :)

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