Undolibrary MatrixArray: uma extensão da classe Array
Segunda-feira, 15 de setembro de 2008 MatrixArray é uma extensão da classe Array do ActionScript 3.0, com o objectivo de simplificar o manuseio de Array utilizada como uma matriz linear n x m. Essa classe é parte da biblioteca Undolibrary (no pacote undolibrary.utils.MatrixArray descarregar gratuitamente a partir do código do Google através de qualquer cliente SVN (Subversion) no seguinte endereço:
svn checkout http://undolibrary.googlecode.com/svn/trunk/
Ou você pode simplesmente fazer o download do arquivo MatrixArray.as. Um exemplo do uso de matrizes linear foi dada em ActionScript 3.0 para iniciantes: lição # 2 quando vimos uma simples utilização para a realização do clássico jogo Tic Tac Toe. Uma matriz deste tipo é comparável a uma área retangular w x h um tabuleiro de xadrez. Com esta classe você pode tratar um array, como uma grade com suas coordenadas x e y. O MatrixArray eu utilizar, por exemplo, o desenvolvimento de toda a lógica do editor Emoções Ícones para Skype: Skypemote.
Métodos
A classe MatrixArray portanto, amplia o normal classe Array acrescentando uma série de formas úteis para gerenciar e manipular m x n matriz. Para criar uma matriz n x m é o suficiente para usar:
- / / Importanzione classe - se você baixou a biblioteca inteira Undolibrary
- / / Alternativamente você pode apenas fazer o download do ficheiro e utilizá-lo sozinho MatrixArray.as
- . MatrixArray ; undolibrary importação. utils. MatrixArray;
- / /
- MatrixArray ( 10 , 10 ) ; var mas: MatrixArray = new MatrixArray (10, 10);
Criada a matriz 10x10, como no exemplo anterior, podemos manipulá-los com os métodos úteis que tornam o nosso trabalho muito rápido e fácil. De fato, a matriz 10x10 não é nada mais do que uma simples matriz linear de 100 itens!
clipe ()
- / **
- * Restitusice uma porção retangular da matriz na forma MatrixArray
- *
- * @ Param (UINT) deixou coordenadas x corte
- * @ Param (UINT) y sy coordenadas do corte
- * @ Param (UINT) cw tamanho horizontal do recorte
- * @ Param (UINT) ch o tamanho do corte vertical
- * @ Result (MatrixArray) Uma nova matriz x cw ch
- *
- * /
- :MatrixArray clip (esquerda: UINT, sy: UINT, cw: UINT, ch: UINT): MatrixArray
- / / Exemplo
- / / Criar um novo MatrixArray coordenadas e em larga 2,2 e alto-5
- ( 2 , 2 , 5 , 5 ) ; var NMa: MatrixArray = ma. clipe (2, 2, 5, 5);
encher ()
- / **
- * Preencha o array com um valor
- *
- * @ Param (qualquer) valor a ser incluídas na matriz
- * /
- ; encher (v *);
paintChar ()
- / **
- * Com o Encha a um array (apenas) uma amostra de uma seqüência
- * Comprimento igual ao tamanho da matriz em si
- *
- * @ Param (string) v string com o número de caracteres para mapear
- * @ Result (boolean) ok verdadeiro, falso erro: string comprimento errado
- *
- * /
- ) paintChar (v: string)
- / / Exemplo
- MatrixArray ( 10 , 5 ) ; var mas: MatrixArray = new MatrixArray (10, 5);
- ma. paintChar (
- '**********' +
- '**##**##**' +
- '**********' +
- '**#####**' +
- '**********'
- );
flipH (), flipV ()
- / **
- * Realiza uma reflexão orizziontale (flipH) ou
- * Vertical (flipV) diretamente sobre a matriz
- * /
- flipH (): void
- flipV (): void
mover ()
- / **
- * Mova o conteúdo da matriz (executando um turno) nos quatro
- * Direção de uma determinada offeset
- * /
- , oy: int ) : void mover (ox: int, oy: int): void
- / /
- MatrixArray ( 10 , 5 ) ; var mas: MatrixArray = new MatrixArray (10, 5);
- ma. paintChar (
- '**********' +
- '**##**##**' +
- '**********' +
- '**#####**' +
- '**********'
- );
- 2 , 4 ) ; ma. mover (2, 4);
- / / Output
- **** ##**##
- **********
- **** #####
- **********
- **********
peek ()
- / **
- * Retorna o conteúdo da grade coordenadas x, y
- * /
- :* espreitar (x: UINT, y: UINT): *
cotovelada ()
- / **
- * Define o conteúdo da grade coordenadas x, y
- * /
- : void cotovelada (x: UINT, y: UINT): void
getString ()
- / **
- * Usado para depuração muitas vezes retorna a matriz como uma seqüência nxm
- * /
- getString (): String





















Deixe um comentário