Объединить растровые изображения? - PullRequest
1 голос
/ 18 мая 2011

Так что я действительно новичок в мире графики, и для приложения, над которым я работаю, мне нужно преобразовать 2d массив значений int в 2d изображение, где значения int соответствуют цвету.Например, значение (1) в месте [0] [0] будет равно тому квадрату на изображении, которое будет «красным».Я просматривал пример кода Android для Snake, потому что то, что они там делают, похоже на то, что я хочу сделать, но у меня возникли проблемы с выяснением того, что они делают.Не могли бы вы помочь мне понять, как я могу создать класс, который преобразует 2-мерный массив целых в соответствующее 2-мерное изображение размером с экран пользователя?

Спасибо

1 Ответ

1 голос
/ 18 мая 2011

Вы можете пойти двумя путями:

  1. Просто нарисуйте android.graphics.Bitmap, используя android.graphics.Canvas, рисуя пиксели или квадраты или все, что вам нужно, затем передаваяготовое растровое изображение для представления (например, ImageView).

  2. Создайте android.graphics.Bitmap с требуемыми размерами, а затем используйте #setPixels () или #copyPixelsFromBuffer (), чтобы установить требуемыйпиксели.Обратите внимание, что у вас есть двумерный массив, поэтому вам нужно будет иметь его в 1-й форме или зациклить на одном измерении, чтобы обработать в 1-й части.

Редактировать: только что заметил, что целые числа соответствуют цветам. Вы хотите использовать индексированный режим для созданного вами растрового изображения и давать карты цветов во время создания.

...