Gracias, Joseba, es lo que quer�a o�r, bueno, es lo contrario pero al menos
ya se que estoy equivocado, que lo intu�a.
Es jodido aprender a pensar otra vez desde cero. Seguir� dando la paliza.

Paulo.


----- Original Message -----
From: "Joseba Alonso" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Tuesday, February 17, 2004 1:08 AM
Subject: Re: [ASNativos] Aplicar dos clases a un MC


> Hola Paulo,
>
> Creo que tienes un problema de planteamiento basico. Supongo que es por
> estar acostumbrado a hacer prototipos. Tienes 2 clases que en realidad
> serian dos metodos de una sola. Es decir, es mejor hacer una subclase de
> movieclip para implementar una funcionalidad mas general. Una clase
> "EaseClip" que sea capaz de mover, cambiar tama�o, alfa...etc y no solo de
> forma elastica sino con mas tipos de easing. De esta manera, cuando en un
> proyecto en concreto necesites que determinado clip tenga esas cualidades
> solo enlazas la clase con el simbolo de biblioteca y listo. Es sencillo
que
> un clip que tenga que cambiar su posicion usando algun tipo de easing
> tambien necesite hacerlo con su tama�o. �Porque no coger todas esas
> necesidades y encapsularlas en una clase?
>
> un ejemplo (AS2):
>
> class EasingClip extends MovieClip{
>     function EasingClip();
>     function moverA(x:Number,y:Number,frames:Number,ease:String);
>     function escalaA(xs:Number,ys:Number,frames:Number,ease:String);
>     // etc....
> }
>
> luego vinculas el simbolo con la clase y listo:
>
> instancia_mc.moverA(500,500,60,"elastic");
>
> otra posibilidad seria hacer un "mixin". Una clase que da funcionalidad a
> otra clase. Es una tecnica que te permite a�adir metodos a un objeto
> directamente sin modificar su herencia. Muy util para proporcionar
utilidad
> generica a un objeto
>
> class ClipEaser{
>     private function moverA(x:Number,y:Number,frames:Number,ease:String);
>     private function
escalaA(xs:Number,ys:Number,frames:Number,ease:String);
>     public static initialize(clip:MovieClip){
>         clip.moverA = moverA;
>         clip.escalaA = escalaA;
>     }
> }
>
> luego puedes aplicarlo a una clase:
>
> class OtraClase extends DataGrid{
>     function OtraClase(){
>         ClipEaser.initialize(this);
>     }
>     function Mostrar(){
>         moverA(300,300,50,"elastic");
>         escalaA(100,100,50,"elastic");
>     }
> }
>
>
> o a una instancia directamente:
>
> ClipEaser.initialize(columna5_mc);
> columna5_mc.moverA(300,300,50,"elastic");
> columna5_mc.escalaA(100,100,50,"elastic");
>
> espero que esto te ayude.
>
> un saludo
>
> Joseba Alonso
> www.sidedev.net
> www.5dms.com
> ----- Original Message -----
> From: "Paulo Carvajal -- Vudumedia.com---" <[EMAIL PROTECTED]>
> To: <[EMAIL PROTECTED]>
> Sent: Monday, February 16, 2004 11:41 AM
> Subject: Re: [ASNativos] Aplicar dos clases a un MC
>
>
> > Replanteo esto, a ver si se me entiende algo.
> >
> > Estoy acostumbrado a pensar en prototipos. Escribo uno que a�ade un
m�todo
> > al objeto MC y se lo aplico cuando me da. Escribo otro y se lo aplico
> > despu�s del primero tranquilamente. Pero... Ahora los estoy convirtiendo
> en
> > Clases.
> > Tengo dos clases, las instancio como objetos y se las aplico al mismo
> clip.
> > Sin problemas, funciona. Pero me extra�a que esto est� ni medio bien en
> POO,
> > porque tengo dos objetos de programaci�n que afectan al mismo clip.
> >
> > La pregunta:
> > Si escribo una clase que a�ade la funcionalidad de movimiento elastico a
> un
> > clip, luego escribo otra que a�ade funcionalidad de escalado a un clip
> �c�mo
> > se las aplico?. �O me falla la l�gica de base y tengo que hacerlo de
otra
> > forma? Porque si quiero seguir a�adiendo clases seg�n este esquema, al
> final
> > voy a tener mil objetos por cada clip y esto se va a convertir en una
> > locura.
> >
> > Gracias, Paulo.
> >
> >
> > ----- Original Message -----
> > From: "Paulo Carvajal -- Vudumedia.com --" <[EMAIL PROTECTED]>
> > To: <[EMAIL PROTECTED]>
> > Sent: Sunday, February 15, 2004 5:52 PM
> > Subject: [ASNativos] Aplicar dos clases a un MC
> >
> >
> > > Suponed que tengo dos clases que actuan sobre un clip y las aplico as�
> por
> > > separado:
> > >
> > > var miSize01:ElasticSize = new ElasticSize(mc01, 200,200, .5, .4);
> > > var miMov01:ElasticMov = new ElasticMov(mc01, 200,200, .5, .4);
> > >
> > >
> > > Aparentemente funcionan bien, pero no creo que esto sea muy coherente,
> ya
> > > que tengo dos objetos que "apuntan" a un mismo MC (mc01). �Cual ser�a
la
> > > l�gica para aplicarlas al mismo tiempo sin tener dos objetos?
> > > La primera idea ha sido una subclase que heredara de las otras dos,
pero
> > eso
> > > no se puede (�o s�?).
> > > �Ser�a mejor una sola clase que tuviera los m�todos mover y escalar?
> Pero
> > > qu� pasa si luego quiero ir extendiendola.
> > >
> > > Paulinio, la taalde me coonfunde.
> > >
> > > <!-------------------------------
> > > Lista ASNativos:
> > > subscripciones/desubscripciones
> > > http://www.sidedev.net/asnativos
> > > -------------------------------->
> > >
> > >
> >
> >
> > <!-------------------------------
> > Lista ASNativos:
> > subscripciones/desubscripciones
> > http://www.sidedev.net/asnativos
> > -------------------------------->
>
> <!-------------------------------
> Lista ASNativos:
> subscripciones/desubscripciones
> http://www.sidedev.net/asnativos
> -------------------------------->
>


<!-------------------------------
Lista ASNativos:
subscripciones/desubscripciones
http://www.sidedev.net/asnativos
-------------------------------->

Responder a