Создать растровое изображение или изображение построчно?или создать растровое изображение / изображение из 2D-массива в Java - PullRequest
2 голосов
/ 21 января 2011

Это довольно простой вопрос программирования, но по сути я создаю массив из 1 и 0, который я хочу представить в виде одной строки из черного (1) или белого (0) пикселей. Вот код, который у меня есть, <Pre> private void runSim(){ for(int j = 0; j< iterations; j++){ for(int i = 0; i< rowLength; i++){ newRow[i] = getNewCell(i); } oldRow = newRow; //draw new row printIteration(); } } </Pre> oldRow - это массив значений int (все 0 и 1), представляющий ряд пикселей, которые я хочу добавить в конец растрового изображения. В идеале, есть некоторый способ добавить пиксели в ряд, например, так. Если нет, то я могу вместо этого создать двумерный массив этих значений int, но я все еще не знаю, как заставить их записать их в черно-белое изображение пиксели. Может ли кто-нибудь помочь мне с этим или указать мне правильное направление? пожалуйста, прости этот элементарный вопрос, и заранее спасибо за любую помощь.

Ответы [ 2 ]

1 голос
/ 21 января 2011

Мне кажется, вы могли бы использовать ArrayList из BitSet классов.

http://download.oracle.com/javase/6/docs/api/java/util/BitSet.html

Что касается записи в изображение, взгляните на класс java BufferedImage .

0 голосов
/ 21 января 2011

Указатель: начните с чистого листа VolatileImage в расширенной JPanel. Переопределите его метод paintComponent (), используя Graphics2D для рисования изображения вне экрана, и нарисуйте () получившееся изображение на объекте Graphics, отправленном в paintComponent () в качестве аргумента. Используйте 1-D или 2-D массив пикселей в методе paintOffScreen (Graphics2D), чтобы обновить VolatileImage по мере необходимости. Надеюсь, это поможет, - М.С.

...