Pixelando imágenes en Actionscript 3.0 |
Etiquetas: Bitmapdata threshold getPixel32 draw |
Este post es una modificación de En el anterior recortaba una imagen en cuadrados, comprobando si contenían algún pixel transparente o no. En este divido la imagen en cuadrados, calculo el color que aparece mas veces en ese cuadrado, y creo un Shape relleno de ese color que coloco en las coordenadas del cuadrado. Las función que calcula el color dominante es esta:
|
BitmapData: Recortar imágenes seleccionando trozos no transparentes |
Etiquetas: threshold |
|
No sé si le servirá a alguien, pero hoy entrenando se me ha ocurrido hacer esto y creo que puedo tener alguna aplicación interesante. Se trata de recortar una imagen en cuadrados, haciendo que los recortes afecten solo a los pixels no transparentes de la imagen, utilizando threshold y Bitmapdata. Primero dividimos la imagen en cuadrados, y comprobamos si los cuadrados contienen algún pixel no vacío (es decir, que no sea transparente). Si el cuadrado no está vacio, creamos un botón con el trozo de imagen que le corresponde, y si no no. Por último, en los botones que hemos creado, mostramos solo el handCursor cuando el pixel sobre el que está el ratón no es transparente. |
Comparar pixels de imágenes en Actionscript 3.0 con threshold |
Etiquetas: BitmapData clone threshold |
|
La función threshold permite hacer comparaciones pixel a pixel en una imagen. Por ejemplo, podemos separar todos los pixels mayores de un color de una imagen, y obtener otra imagen con esos pixels. La función threshold tiene 5 parámetros obligatorios (y varios opcionales): threshold(sourceBitmapData:BitmapData, sourceRect:Rectangle, destPoint:Point, operation:String, threshold:uint) -sourceBitmapData: la imagen que vamos a utilizar -sourceRect: rectángulo que define el area de la imagen de origen que vamos a utilizar -destPoint: punto de la imagen de destino que corresponde a la esquina superior izquierda del rectángulo -operation: operación que vamos a utilizar -threshold: valor con el que comparamos cada pixel Por ejemplo, si queremos separar los pixels mayores de 0xFFCCCCCC de los menores en una imagen, podemos utilizar:
El código completo y los fuentes: |