Donaciones

videoedicion.org es una web sin ánimo de lucro que se mantiene gracias a las donaciones de sus usuarios. Todas las donaciones, desde 1 €, son extremadamente valiosas.
[ PINCHA AQUÍ
PARA MÁS INFORMACIÓN
]

Haz una donación para ocultar este bloque
Welcome to videoedicion.org (v9). Please login or sign up.

12 de Junio de 2025, 16:15:28

Login with username, password and session length

Temas Recientes

359 Visitantes, 0 Usuarios

Colaboraciones

Estas empresas colaboran con videoedicion.org, bien ofreciendo algún descuento a los  usuarios que se registren usando estos banners o bien ofreciéndonos una pequeña comisión que nos ayudará con los gastos de la web.


 


Animar la posición de un objeto mediante una expresión.

Iniciado por Wacom, 26 de Abril de 2010, 07:41:18

Tema anterior - Siguiente tema

Wacom

Quiero animar la posición de un objeto.
Exactamente quiero que este objeto caiga verticalmente cada vez más rápido, que empiece arriba de la pantalla su movimiento lentamente y que su velocidad de caida crezca.
Quiero hacerlo mediante una simple expresión, pero llevo unas 5 horas tocando y no doy con la clave.

Muchas gracias.

FC

Muy fácil;

Necesitas multiplicarlo   por  un  valor   exponencial.


Utiliza   Math.exp(valor).

En donde el valor   podría  ser el  tiempo que  va  transcurriendo.  De  esa forma,  a medida  que  pasa el tiempo,  el objeto  se  va  acelerando.


a=el movimiento  de  tu layer en cuestión;
b=Math.exp(time);

a*b

Wacom

Muchas gracias por contestar !!!

El objeto se mueve exponencialmente, justo como queria, pero en diagonal, no vertical.
Como podría hacer que sólo cogiera la "Y" ?!
Agregar algún detalle más a la expresión ?!

Y una cosilla más.
Crece exponencialmente demasiado, que habría que agregar para que no fuese tan bestia ?!

FC

Para   que  solo  tome el  valor  sobre  el  eje  y,  deberás  asignar  ese  valor  en  el array correspondiente.

Algo  como  esto.


a=el movimiento  de  tu layer en cuestión;
b=Math.exp(time);

c=a*b;

position [100,c]

En donde 100  es  igual a una posición constante  para  x   y   donde c  es  la variable  para  el  eje  y.



En cuanto a  controlar   el  valor exponencial,  puedes  hacerlo  de  varias manera,  en  lugar  que  el tiempo  sea  el valor   cambiante,  puedes   utilizar  un factor  para  determinar.

ejemplo.


a= ///el  valor  de  un  slider con 2 k frames///;
b=Math.exp(1);  /// dentro de el parentesis, puedes colocar cualquier valor y este se multiplica  x 2.7///

c=a*b

El  control  lo  trienes  en el  slider vs tiempo.

El spam de este foro está controlado por CleanTalk