Или я чтото не правельно делаю, что скорей всего, но не работает.Идти нужно не от исходной картинки, а от получающейся. Берем центр начальной точки, смотрим какой цвет в этой точке в исходной картинке. Причем точного соответствия координат не будет и придется интерполировать. Затем берем следующую точку... 2,5+(5..10..15..20)*sin(угол поворота растра) 2,5+(5..10..15..20)*cos(угол поворота растра) Ищем значение цвета в этой точке в исходной картинке и рисуем точку нужного размера. Повторять до готовности. Преобразований просто очень много, но благо все разбивается на достаточно простые функции. threshold array конечно легче, но возможно будет сильно круто (можно сразу ABS взять).
Поворачивается само изображение(ну то есть тот канал CMYK).
я точки центра растра финального изображения, пропускаю через 2,5+(5..10..15..20)*sin(угол поворота растра) 2,5+(5..10..15..20)*cos(угол поворота растра), получаю координаты, для того чтобы с исходного снять значение цвета, после чего в финальном заполняю растр точкой.
В итоже получается повернутое на определенный градус все изображение.