Как стать автором
Обновить
12
0

Пользователь

Отправить сообщение

Основы оптимального стиля. Когнитивно-ориентированный анализ удобочитаемости текста программы

Время на прочтение34 мин
Количество просмотров7.3K

epam


Грубо говоря, очевидно, что некоторые виды форматирования лучше других.
— Стив Макконелл, Совершенный код.


Эта статья об особенностях человеческого зрения и о том, как знание этих особенностей может помочь нам улучшить объективную удобочитаемость наших программ.

Читать дальше →
Всего голосов 9: ↑9 и ↓0+9
Комментарии47

Разложение матрицы аффинного преобразования

Время на прочтение3 мин
Количество просмотров20K
Не так давно в процессе разработки редактора 2D-графики возникла задача разложить матрицу аффинного преобразования на плоскости, на произведение матриц простых преобразований с тем, чтобы отобразить их пользователю и предложить какую-то более-менее адекватную интерпретацию того, что произошло с объектом на канвасе. Честно говоря, эта задача вызвала у меня определенные трудности. Университет я закончил уже давно, и мне было непонятно, а возможно ли это сделать в принципе, учитывая, что исходная матрица могла быть результатом произвольной последовательности сдвигов, масштабов, поворотов, и переносов, причем каждое преобразование могло иметь свой произвольный центр. И, во-вторых, непонятно было, как найти семь параметров, имея всего шесть коэффициентов матрицы. Ключом к решению этой задачи оказалась статья "Разложение матрицы центроаффинного преобразования для нормализации изображения"¹, в которой рассматривается такая же задача, но без учета преобразования переноса и для преобразований относительно центра координат. Далее я фактически просто адаптирую результаты этой статьи с учетом переноса и для произвольного центра преобразований.
Читать дальше →
Всего голосов 19: ↑16 и ↓3+13
Комментарии17

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность