В принципе, для малых углов и формулу с двумя матрицами можно применить, но она значительно хуже тройной (зато ошибки нет в двух компонентах матрицы против одного у тройной). Отличия в ошибках на угле 15° — в два порядка. (На меньших ещё больше, но там это незаметно. На больших меньше, но ошибки там везде уже слишком большие, чтобы применять обе формулы.)
Может коэф-енты неправильно расчитываются? Разве двумя сдвигами нельзя до
точно (+- пиксель) повернуть?
Если совсем точно, нельзя, алгебру не обманешь.
И тремя нельзя, и четырьмя, видимо, можно тоже только приблизить. Хотя не исключено, что какое-нибудь приближение с
матрицами может оказаться лучше приближения с
матрицами, применённого
раз для угла, меньшего в
раз. Тут надо уже в общем случае с операторами и нормами возиться, а с функаном я не очень сейчас.
В ±пиксель надо сравнивать с размером поворачиваемого, т. к. ошибка положения линейна от расстояния до центра. Прикидываю: отличия для пикселя на расстоянии
от центра будут
. Если делать вместо этого три раза по 15°, отличия будут маленькие, но зато для смещения
будут снова
. Короче, всё просто посчитать, буде в руках СКА (у меня Mathematica).
-- Ср янв 20, 2016 15:24:37 --(Оффтоп)
Лучше, конечно, получить нормальные оценки «в символах», но мне лень.