na funçao copyMatrix eu colocaria um output pra ver o que retorna na
constante LENGTH...Talvez esteja em 0 e seu for nao avança sendo i < l



On 6 out, 19:19, juniorgarcon <[EMAIL PROTECTED]> wrote:
> Olá pessoal do Grupo, tudo bem aí como todo mundo?
> Eu estou com uma dúvida aqui e estou apanhando dela a algum tempo já..
> rs..
> Eu estou criando uma aplicação de manipulação de imagem (brilho e
> contraste).
> Eu criei uma classe que extende a classe "Array" do flex, cujo
> construtor pode receber um Array como parâmetro.
>
> public class ColorMatrixManipulation extends Array {
>                 public function ColorMatrixManipulation(matrix:Array) {
>                         matrix = fixMatrix(matrix);
>                         copyMatrix(((matrix.length == LENGTH) ? matrix : 
> IDENTITY_MATRIX));
>                 }
>
> }
>
> Eu acabei encontrando essas funções (brilho e contraste) já
> implementada por "Grant Skinner", onde todos os créditos sobre esta
> classe devem ir para ele.
>
> o meu método copyMatrix é o seguinte:
>
>         private function copyMatrix(p_matrix:Array):Void {
>                 var l:Number = LENGTH;
>                 for (var i:Number=0;i<l;i++) {
>                         this[i] = p_matrix[i];
>                 }
>         }
>
> Um código bem simples, cujo objetivo é popular o "array" da classe
> "ColorMatrixManipulation". Estou instanciando minha variável da
> seguinte maneira, na minha aplicação:
>
> var cmm:ColorMatrixManipulation = new ColorMatrixManipulation([0]);
>
> Só que isso dá erro, justamente quando ele chama a função copyMatrix.
> O erro apresentado diz que ele não consegue acessar a posição 0 para o
> comando this[i]. Tenho a impressão de que o "array" da classe
> ColorMatrixManipulation não está criado. É como se a classe estivesse
> instanciada, mais o Array correspondente ao "this", não
>
> Alguém saberia me dizer o que eu estou fazendo de errado?! Estou com
> esse problema a um tempinho e não sei como fazer para "instanciar" o
> array do "this".
>
> Cheguei a modificar o construtor para:
>
> public function ColorMatrixManipulation(matrix:Array=null) {
>                         this.push(matrix);
>                         matrix = fixMatrix(matrix);
>                         copyMatrix(((matrix.length == LENGTH) ? matrix : 
> IDENTITY_MATRIX));
>                 }
>
> e tentei instaciar de duas formas minha variável:
> var cmm:ColorMatrixManipulation = new ColorMatrixManipulation([0]);
> e
> var cmm:ColorMatrixManipulation = new ColorMatrixManipulation();
>
> mais de nada adiantou.
>
> Desculpem a falta de experiência pessoal, mais estou começando a mexer
> no flex e essa está sendo minha primeira aplicação.
>
> Muito obrigado desde já. Obrigado mesmo pela atenção de todos.
>
> Tenha uma ótima noite...
>
> Atenciosamente,
>
> Júnior
--~--~---------~--~----~------------~-------~--~----~
Você recebeu esta mensagem porque está inscrito na lista "flexdev"
Para enviar uma mensagem, envie um e-mail para flexdev@googlegroups.com
Para sair da lista, envie um email em branco para [EMAIL PROTECTED]
Mais opções estão disponíveis em http://groups.google.com/group/flexdev
-~----------~----~----~----~------~----~------~--~---

Responder a