miércoles, 2 de noviembre de 2011

Dibujo básico con API de AS3


La funcionalidad que tiene el entorno de flash para crear todo el arte que tendrá nuestros proyectos hace de flash una herramienta por demás “poderosa”, para el desarrollo del trabajo que se quiera hacer en el mismo. Además de esta funcionalidad grafica flash tiene otras funcionalidades integradas que permite la creación de gráficos vectoriales y permitir mostrarlos mediante AS3.

La API de dibujo es la encargada de proporcionar esta funcionalidad, con AS3 es posible dibujar cualquier instancia de forma, sprite, movieClip utilizando la propiedad graphics que es una instancia de Graphics, que nos ofrece métodos para el trazo de formas comunes como son círculos, cuadrados, elipses, etc. Además de métodos avanzados para tratar las curvas Bézier, que se utilizan junto con las clase Math para crear cualquier forma imaginable de este tipo de dibujo hablare en otro post, por lo que nos centraremos en un dibujo mucho más sencillo y básico. Con el siguiente código:
package{
 import flash.display.Sprite;
 public class Ball extends Sprite{
  private var radius:Number;
  private var color:uint;
  
  public function Ball(radius:Number=20, color:uint=0x545454){
   this.radius=radius;
   this.color=color;
   init();
  }
  public function init():void{
   graphics.beginFill(color);
   graphics.drawCircle(0,0,radius);
   graphics.endFill();
  }
 }
}
Primero creamos una clase (bola, pelota) Ball.as que será una extensión de un Sprite, aunque también podría ser una extensión de un MovieClip, no existiría mucha diferencia, bueno por el momento solo comentar que como se trata de un grafico sencillo se utiliza la extensión Sprite, como todo objeto debemos definir ciertas propiedades para hacerlo sencillo solo definimos el radio y el color, y luego en la función constructora init(), es donde empezamos a hacer uso de las funciones API, con beginFill definimos el color de relleno, y drawCircle(como su nombre lo indica dibuja el circulo), con ciertos parámetros q se pasa a esta función (posición X, posición Y, radio); y con la última función terminamos de pintar nuestro circulo con el color que antes definimos. Esto mostraría en el escenario en la posición 0,0 un círculo de radio 20 y que tenga un color plomo.

Las tareas importantes de la API de flash son:

• Definir estilos de línea y rellenos
• El dibujo de formas
• Uso de funciones trigonométricas que harán de estos dibujos cosas más interesantes
• Incorporación de API de dibujo en las animaciones