Diferencia entre revisiones de «Arreglo de Pixeles»
Sin resumen de edición |
Sin resumen de edición |
||
Línea 9: | Línea 9: | ||
Para hacer la conversión inversa, es decir, para pasar de un número de pixel a una coordenada <code>(x,y)</code> requiere de una operación diferente: | Para hacer la conversión inversa, es decir, para pasar de un número de pixel a una coordenada <code>(x,y)</code> requiere de una operación diferente: | ||
<center> | |||
<pre> | <pre> | ||
<nowiki> | <nowiki> | ||
Línea 20: | Línea 21: | ||
000000000000000000000000000000000000000000000000 | 000000000000000000000000000000000000000000000000 | ||
000000000000000000000000000000000000000000000000 | 000000000000000000000000000000000000000000000000 | ||
0000000000000000000000?......................... | |||
................................................ | ................................................ | ||
................................................ | ................................................ | ||
Línea 31: | Línea 32: | ||
</nowiki> | </nowiki> | ||
</pre> | </pre> | ||
</center> | |||
<code>pixels[i] = #000000;</code> equivaldrá a | <code>pixels[i] = #000000;</code> equivaldrá a | ||
<code>set(i - img.width * (i % img.width), i % img.width, #000000);</code> | <code>set(i - img.width * (i % img.width), i % img.width, #000000);</code> |
Revisión del 12:42 4 ago 2008
Cada imagen (mapa de bits o bitmap) se almacena en Processing como un objeto PImage
que se constituye como una clase. Esta clase tiene atributos de alto y ancho (en este ejemplo denominados img.width
e img.height
respectivamente). De la multiplicación del alto y ancho se deriva la extensión del arreglo de pixeles; que es unidimensional.
pixels[] = new color[image.width * image.height]
Estos pixeles pueden accesarse con la función get(x,y)
y pueden cambiarse asignando un color al pixel con la función set(x, y, color)
; siendo x e y dos variables de tipo int
.
El arreglo de pixeles pixels[]
al ser un arreglo unidimensional ofrece métodos especiales para definir un valor expecífico en el sistema de coordenadas cartesiano. El equivalente de set(x, y, #000000)
usando el arreglo de pixeles pixels[]
es pixels[y*width+x] = #000000
.
Para hacer la conversión inversa, es decir, para pasar de un número de pixel a una coordenada (x,y)
requiere de una operación diferente:
000000000000000000000000000000000000000000000000 000000000000000000000000000000000000000000000000 000000000000000000000000000000000000000000000000 000000000000000000000000000000000000000000000000 000000000000000000000000000000000000000000000000 000000000000000000000000000000000000000000000000 000000000000000000000000000000000000000000000000 000000000000000000000000000000000000000000000000 000000000000000000000000000000000000000000000000 0000000000000000000000?......................... ................................................ ................................................ ................................................ ................................................ ................................................ ................................................ ................................................ ................................................
pixels[i] = #000000;
equivaldrá a
set(i - img.width * (i % img.width), i % img.width, #000000);