С наступающим Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.78/9: Рейтинг темы: голосов - 9, средняя оценка - 4.78
valerik
2 / 2 / 0
Регистрация: 10.11.2014
Сообщений: 15
1

Вращение изображения

30.11.2014, 19:35. Просмотров 1689. Ответов 1
Метки нет (Все метки)

Пишу небольшую игру. Там космический кораблик летает в космосе.
Есть изображение корабля в png файле. Выводить на canvas я его научился.

Java
1
2
Bitmap image = BitmapFactory.decodeResource(game.gameView.activity.getResources(), R.drawable.ship);
canvas.drawBitmap(image, x, y, paint);
Теперь мне нужно научить кораблик поворачиваться вокруг своей оси. Не могу понять как осуществить вращение изображения? Все примеры из интернета выглядят как то так:

Java
1
2
3
Matrix matrix = new Matrix();
matrix.setRotate(angle, imageCenterX, imageCenterY);
yourCanvas.drawBitmap(yourBitmap, matrix, null);
Но Android Studio говорит что класс Matrix() is deprecated, других примеров в интернете я не нашёл.
Что делать?

Добавлено через 24 минуты
Всё научился!

Java
1
2
3
canvas.rotate(rotateAngle, x + shipWidth / 2, y + shipHeight / 2);
canvas.drawBitmap(image, x, y, paint);
canvas.restore();
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.11.2014, 19:35
Ответы с готовыми решениями:

ImageView вращение
Как повернуть программно ImageView на 0-360 градусов понятно , а вот как...

LibGDX вращение текстуры
Здравствуйте, есть ли в llibGDX какой-нибудь способ повернуть текстуру кроме...

Вращение фигуры в SurfaceView
Сейчас фигура вращается с помощью функции glRotate, все работает, и она...

Вращение барабана слот машины
Здравствуй, уважаемый формучанин. Делаю слот машину. Застрял на анимации...

Отрисовка изображения поверх канвы (изображения) и вращение изображения
Здравствуйте. Столкнулся с 2умя проблемами при работе с изображениями...

1
dajver
410 / 274 / 22
Регистрация: 18.09.2010
Сообщений: 1,114
01.12.2014, 00:13 2
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
public final Matrix transform = new Matrix();
 
public void rotate() {
          transform.preRotate(1, bmp.getWidth() / 2, bmp.getHeight() / 2);
    }
    
    /**Рисуем наши спрайты*/
    public void onDraw(Canvas canvas, float x, float y) {
        rotate();
        this.x = x;
        this.y = y;
        
        canvas.save();
        canvas.translate(x, y);
        canvas.drawBitmap(bmp, transform, null);
        canvas.restore();
    }
Вот исходники моей игры https://github.com/dajver/Squance-fl...dy/Player.java, в этом файле я вращаю квадрат - главного героя игры (: Можешь скачать все исходники и посмотреть в целом все.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
01.12.2014, 00:13

Вращение изображения?
У меня на форме Image1 я в него загружаю изображение и как мне с помощью...

Вращение изображения
Здравствуйте! Понадобилось мне повращать изображение вокруг своей оси и только...

Вращение изображения
Есть ли какой то компонент в который можно было бы загрузить изображение и...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru