Comunidad de diseño web y desarrollo en internet online

Problema con easing!

Citar            
MensajeEscrito el 21 May 2007 06:02 pm
Hola!
estoy con mis primeros pasos con las funciones de Robert Penner, tratando de poder controlarlas...

quiero hacer lo siguiente:
Tengo un boton que es una foto con _alpha al 30%, quiero que al situar el mouse sobre ese boton el alpha pase lentamente al 100% (easing) y al quitar el mouse de ahi vuelva lentamente al 30%.
Trate de usar el tutorial de cristalab para ecuaciones de Easing, pero me funciona para la primera vez que situo el mouse y luego como que se cuelga y no hace mas el efecto.
Alguien podria ayudarme!!! :shock:

dejo el codigo que tengo que funciona solo 1 vez cuando hago el rollOut:

Código :

 
import com.robertpenner.easing.*;
with (vacio1_mc) {
   inicio = 100;
   final = 30;
   distancia = final-inicio;
   duracion = 5;
   tiempo = 0;
}

images.fotito1.onRollOut = function() {
   vacio1_mc.onEnterFrame = function() {
   with (this) {
      _alpha = Quad.easeOut(tiempo++, inicio, distancia, duracion);
      if (tiempo>duracion) {
         delete onEnterFrame;
      }
   }
};


Desde ya muchas gracias!! ojala alguien pueda ayudarme!
y aguante este foro XD

Por mywish

10 de clabLevel



 

firefox
Citar            
MensajeEscrito el 24 May 2007 01:17 am
con AS 2.0 asi


Código :


import mx.transitions.Tween;
import mx.transitions.easing.*;
mi_mc._alpha = 30;

boton.onRelease = function() {
   efecto();
};
function efecto() {
   var movimientox:Tween = new Tween(mi_mc, "_alpha", Elastic.easeInOut, mi_mc._alpha, 100, 4, true);

   movimientox.onMotionFinished = function() {
      trace("Fin de efecto");
   };
}

Código :

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
con AS 3.0
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

import fl.transitions.Tween;
import fl.transitions.easing.*;
import fl.transitions.TweenEvent;

mi_mc.alpha=0;
boton.addEventListener(MouseEvent.MOUSE_OVER, efecto);

function efecto(event:MouseEvent) {
   var myTween:Tween = new Tween(mi_mc, "alpha", Elastic.easeIn, mi_mc.alpha, 100,4, true);
      var myTweend:Tween = new Tween(mi_mc, "x", Elastic.easeIn, mi_mc.x, 100,4, true);
   myTween.addEventListener(TweenEvent.MOTION_FINISH ,fin);
   function fin(event:TweenEvent) {


      trace("Fin efecto");
   }
}

///////////////////////////////////////////////////////////////////////////////////////////////////////////////
 

para los dos casos crea un boton y nombralo "boton" y tu foto debe ser un mc con nombre mi_mc como te daras cuenta solo hace el efecto de 30 a 100, lo hice asi para que tu hagas lo demas por que sino no aprendes, cualquier duda aprieta F1 y lee , si sigues teniendo vienes y preguntas.

Por DiegoAzul

376 de clabLevel



 

Mx

firefox
Citar            
MensajeEscrito el 24 May 2007 04:35 am
Hola! gracias por la respuesta!!
la voy a tener en cuenta, aunque en realidad pude resolverlo de otra manera que paso a explicar por si alguien tiene que hacer algo parecido:

en el AS del boton con la imagen que quiero que tenga el cambio del _alpha puse lo siguiente:

Código :

onClipEvent(load){
   alpha1=30
   _alpha=100
}
onClipEvent(enterFrame){
   _alpha+=(alpha1-_alpha)*0.3
}


y despues cada que llamo a ese boton lo aplico cambiando el valor de "alpha1=30" por 100 y listo

Código :

boton.onRollOver = function() {
   imagen.alpha1 = 100;
};


igual tengo que desencular el tema de las funciones... todabia me lleva trabajo.

Muchas gracias por la respuesta, ya la probare!
salu2

Por mywish

10 de clabLevel



 

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.