Форум программистов, компьютерный форум CyberForum.ru

Программирование Android

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 31, средняя оценка - 4.97
demon112
0 / 0 / 0
Регистрация: 30.07.2012
Сообщений: 6
#1

Поворот Bitmap изображения - Android

30.07.2012, 20:14. Просмотров 3908. Ответов 1
Метки нет (Все метки)

Здравствуйте. Есть изображения Bitmap. вывожу их на канвас с помощью canvas.drawBitmap(bitmap, x, y, null). Нужно вывести эти изображения с поворотом на угол альфа относительно центра. Картинка квадратная, если это важно. Как реализовать можно?

1) Методом научного тыка сделал так

Java
1
2
3
Matrix matrix = new Matrix();
matrix.postRotate(alpha, (float)(image.getWidth()/2.0), (float)(image.getHeight()/2.0));
canvas.drawBitmap(image, matrix, paint);
Всё бы неплохо, но тут изображение выводится по координатам (0, 0), а мне надо по произвольным координатам.

2) Пробывал так

Java
1
2
3
matrix.postRotate(alpha, image.getWidth()/2.0f, image.getHeight()/2.0f);
Bitmap temp = Bitmap.createBitmap(image, 0, 0, image.getWidth(), image.getHeight(), matrix, false);
canvas.drawBitmap(temp, x, y, null);
Но тут по непонятной мне причине относительная точка поворота картинки смещена (не в центре)...



Помогите пожалуйсто кто чем может.

Добавлено через 2 часа 24 минуты
Заметил еще одну вещь - при использовании этого метода
Java
1
 Bitmap.createBitmap(image, 0, 0, image.getWidth(), image.getHeight(), matrix, false);
увеличивается размер изображения. Не знаю с чем как и почему это связано... При том изменение размера зависит от градуса как то...
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.07.2012, 20:14     Поворот Bitmap изображения
Посмотрите здесь:

Android создание Bitmap
Android Отличия drawable от Bitmap
Android Bitmap & BitmapFactory
Bitmap трансформация Android
Bitmap, resize Android
Неверный размер Bitmap'a Android
поворот изображения мультитачем Android
Поворот изображения (GPS) Android
Android Очистка памяти Bitmap
RelativeLayout и Bitmap Android
Android Не создаёт Bitmap из ресурса
Android Поворот изображения при снимке

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
dajver
 Аватар для dajver
406 / 270 / 18
Регистрация: 18.09.2010
Сообщений: 1,106
04.08.2012, 13:17     Поворот Bitmap изображения #2
Вращение холста можно сделать так:

Java
1
2
3
4
5
6
Matrix m = new Matrix();
 
m.setTranslate(centerX, centerY);
m.preRotate(angle, width/2, height/2);
 
canvas.drawBitmap(bitmap, m, null);
Yandex
Объявления
04.08.2012, 13:17     Поворот Bitmap изображения
Ответ Создать тему
Опции темы

Текущее время: 02:48. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru