🔺 Преобразования
Каждое из этих движений — это одна матрица, а выполнить несколько подряд значит их перемножить. Числа выше и есть такое произведение, посчитанное по положению ползунков.
35°
1.50
1.00
0.00
0.00
0°
0.00
0.00
100%

О геометрических преобразованиях

Геометрическое преобразование — это правило, отправляющее каждую точку плоскости куда-то ещё. Привычных вариантов немного: сдвинуть картинку целиком, не поворачивая; повернуть её вокруг неподвижной точки; отразить относительно прямой; увеличить или уменьшить; и наклонить вбок, так что квадраты становятся косыми параллелограммами. Первые три сохраняют все расстояния и называются движениями — фигура, перенесённая любым из них, равна исходной, и именно это имеет в виду школьная геометрия, говоря, что два треугольника одинаковы. Подобие сохраняет все углы и все отношения, но не сами размеры.

Списком приёмов это перестаёт быть из-за двух обстоятельств. Первое: выполнить одно преобразование, а затем другое — всегда значит получить преобразование того же рода, так что они складываются друг с другом, как числа при умножении: два отражения относительно пересекающихся прямых дают поворот, два относительно параллельных — перенос, а поворот с последующим увеличением снова оказывается поворотом с увеличением. Второе: порядок имеет значение — поверните фигуру и потом растяните, и вы окажетесь не там, куда пришли бы, растянув сначала. Именно на этой мысли Феликс Клейн построил свою программу 1872 года, определив геометрию как науку о том, что уцелевает при выбранном семействе преобразований, — так евклидова, аффинная и проективная геометрии стали одним предметом, рассматриваемым с разной высоты.

Практическая отдача в том, что каждое такое движение записывается небольшой табличкой чисел и применяется сразу к миллионам точек. Именно этим и занят графический процессор: каждый кадр анимации, каждое смещение карты, каждый поворот модели в системе проектирования — это одна такая табличка, приложенная к сетке координат. А если добавить лишние строку и столбец, чтобы в ту же табличку поместились и переносы — приём, известный как однородные координаты, — то целая цепочка движений схлопывается в одно умножение. Поэтому робототехника, компьютерное зрение и трёхмерная графика говорят на одном алгебраическом языке.