повернуть изображение PPM

Я пытаюсь повернуть влево / или вправо изображение на миллион. Мне удалось повернуть на 180 градусов, но 90, кажется, не работает ..

Это мой код

// working 1-D array of pixels pixel
*n_array = new Image(width, height);
// set up the new array dimensions based on ROTATION type
switch (the rotation)
{
case ROTCW:
case ROTCCW:
...
break;

case ROT180:
default: .. break;
}

for (unsigned int idx = 0; idx < (o_width * o_height); idx++)
{
old_y = idx / o_width;
switch (rotation)
{
case ROTCCW: ...
default: cout << "Oups" << std::endl; break;
}
// put pixel into n_array
}

Так что это мои результаты ..

http://i.stack.imgur.com/Cj6AM.png

http://i.stack.imgur.com/yTnbS.png

У кого-нибудь есть решение этой проблемы?

0

Решение

Вы переворачиваете размеры изображения после создания нового изображения.
Попробуй переехать GaryImage *n_array = new GrayImage(o_width, o_height); после switch (rotation) {...} использовать правильную высоту и ширину.

Изменить: это должно быть GrayImage *n_array = new GrayImage(n_width, n_height); тем не мение

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]