02. Преобразования на плоскости. Вывод расчетных соотношений. Матрицы преобразований. - chrislvt/CG GitHub Wiki
Преобразования на плоскости : (X, Y) → (X1, Y1).
Формулы преобразований в общем виде:
Однородные координаты: (x, y, w), где w – масштабный коэффициент. Переход в декартовы координаты:
Матричные преобразования
.
Операция преобразования в общем случае не коммутативна. Преобразования, при которых плоскость не вырождается в прямую или точку, сохраняется параллельность прямых и существует обратное преобразование, называются аффинными. Если определитель матрицы преобразования отличен от нуля, то такое преобразование будет являться аффинным. Аффинные преобразования могут быть представлены как суперпозиция 3 операций: поворот, масштабирование, перенос.
Перенос: 2 параметра: dx, dy
.
Масштабирование: 4 параметра: M(xm, ym) – центр масштабирования, kx, ky – коэффициенты масштабирования. Если kx == ky, то масштабирование однородное.
.
kx = -1, ky = 1 - отражение относительно оси ОУ (осевая симметрия)
kx = 1 ky = -1 - отражение относительно оси ОХ(осевая симметрия)
kx = -1 ky = -1 - отражение относительно начала координат(центральная симметрия)
При коэффициенте масштабирования по модулю больше 1 рисунок увеличивается, меньше - уменьшается. Также при коэффициенте масштабирования больше, чем 1, изображение удаляется от центра масштабирования, а при 0 < k < 1 приближается.
Поворот(против часовой стрелки): 3 параметра: xc, yc – центр поворота, θ – угол поворота.
.
.
Коммутативность – независимость результата преобразований от порядка, в котором они происходят.
Коммутативные | операции |
---|---|
перенос | перенос |
поворот | поворот |
масштабирование | масштабирование |
однородное масштабирование | поворот |
Все прочие пары преобразований являются некоммутативными
Аддитивные:
Перенос:.
Поворот:
Мультипликативные:
Масштабирование