di Actionscript 3.0, con lo scopo di semplificare la manipolazione di Array lineari usati come matrice n x m . MatrixArray es una extensión de la clase Array de ActionScript 3.0, con el objetivo de simplificar la manipulación de las Array utilizadas como lineal matriz n x m. Esta clase es parte de la biblioteca Undolibrary (en el paquete undolibrary.utils.MatrixArray ) que usted puede descargar libremente a través de cualquier función de Google de código SVN cliente (Subversion) a:
svn checkout http://undolibrary.googlecode.com/svn/trunk/
Alternativamente, usted puede descargar el archivo solo MatrixArray.as . Un ejemplo del uso de la matriz lineal se dio en ActionScript 3.0 para principiantes: lección # 2 , donde hemos visto a uno de su simple uso en la producción del clásico juego de Tic Tac Toe. ), proprio come una scacchiera. Una matriz de este tipo es comparable a un área rectangular ( w x h ), al igual que un tablero de ajedrez. Con esta clase se puede tratar una gran variedad de este tipo como una cuadrícula con sus coordenadas X e Y. El MatrixArray que he usado, por ejemplo, en el desarrollo de toda la lógica de las emociones editor de iconos de Skype: Skypemote .
Métodos
aggiungendo una serie di utili metodi per gestire e manipolare matrici n x m . La clase MatrixArray por lo tanto, se extiende la clase normal de Array , añadiendo una serie de métodos útiles para manejar y manipular matriz n x m. Para crear una matriz n x m es suficiente para el uso:
1 2 3 4 5 | / / Importanzione clase - si ha descargado todo el Undolibrary biblioteca / / También puede descargar sólo los archivos y el uso por sí solo MatrixArray.as utils . MatrixArray ; importaciones undolibrary utils MatrixArray..; / / MatrixArray = new MatrixArray ( 10 , 10 ) ; var pero: MatrixArray = new MatrixArray (10, 10); |
Creado hace 10 × 10 matriz, como en el ejemplo anterior, podemos manipularlo con métodos que ayudan a hacer nuestro trabajo muy rápido y sencillo. De hecho, la matriz de 10 × 10 no es más que un simple array lineal de 100 elementos!
clip ()
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | / ** * Restitusice una porción rectangular de la matriz en la forma MatrixArray * * @ Param (uint) dejó coordenada x de la corte * @ Param (uint) sy las coordenadas de la corte * @ Param (uint) cw dimensión horizontal del corte * @ Param (uint) ch dimensión vertical de la corte * @ Resultados (MatrixArray) Una nueva matriz x cw ch * * / uint , sy : uint , cw : uint , ch : uint ) : MatrixArray los clips (a la izquierda: uint , sy: uint , CW: uint , ch: uint ): MatrixArray / / Ejemplo / / Crear un nuevo 2.2 coordenadas MatrixArray y la anchura y altura de 5 MatrixArray = ma . clip ( 2 , 2 , 5 , 5 ) ; var NMA: MatrixArray = ma clips (2, 2, 5, 5);. |
fill ()
1 2 3 4 5 6 | / ** * Llenar la matriz con un valor determinado * * @ Param (ningún) valor que se incluyen en la matriz * / ) ; relleno (v: *); |
paintChar ()
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | / ** * Rellena la matriz con (sólo) tomada de una cadena de caracteres * Longitud igual al tamaño de la matriz * * @ Param (cadena) cadena de v con el número de caracteres que se asigna * @ Resultados (boolean) verdadero error ok, falsa: longitud de la cadena incorrecta * * / string ) paintChar (v: string) / / Ejemplo MatrixArray = new MatrixArray ( 10 , 5 ) ; var pero: MatrixArray = new MatrixArray (10, 5); pero. paintChar ( '**********' + '**##**##**' + '**********' + '**#####**' + '**********' ); |
flipH (), flipV ()
1 2 3 4 5 6 | / ** * Realiza una reflexión orizziontale (flipH) o * Vertical (flipV) directamente en la matriz * / void flipH (): void void flipV (): void |
move ()
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | / ** * Mueva el contenido de la matriz (hacer un cambio) en los cuatro * La dirección de un determinado offeset * / int , oy : int ) : void move (x: int , y: int ): void / / MatrixArray = new MatrixArray ( 10 , 5 ) ; var pero: MatrixArray = new MatrixArray (10, 5); pero. paintChar ( '**********' + '**##**##**' + '**********' + '**#####**' + '**********' ); 2 , 4 ) ; . sino que se mueven (2, 4); / / Salida ## **** ** # # # # ********** **** ##### ********** ********** |
peek ()
1 2 3 4 |
poke ()
1 2 3 4 |










No hay comentarios para esta entrada
Deja un comentario