Interruptor de contador AE (Min > Hs)

Estoy tratando de crear una expresión que cambie el texto fuente de minutos a horas.

Aquí hay un ejemplo del gráfico que estoy animando:

fragmento de animación

Como puede ver, el contador de 3 horas está en espera, quiero que comience desde 0 minutos y aumente hasta 60 para luego cambiar a horas y gradualmente llegar a 3 .

Lo aplicaré también en la barra azul que actualmente muestra '60 min' en lugar de '1 hora' . Por supuesto, puedo solucionarlo, pero me encantaría saber una expresión de trabajo.

¡Gracias!

Respuestas (1)

Haz tres capas de texto con un control deslizante en cada una. Llame a las capas valor 1 , valor 2 y valor 3 .

En el texto fuente de cada una de las capas de texto, coloque esta expresión para mostrar el valor del control deslizante y redondearlo al minuto más cercano:

slider = (effect("Slider Control")("Slider").value);
rounding = (Math.round(slider));
SourceText = rounding + " minutes"

Haz una capa de texto llamada total .

Ponga lo siguiente en su texto fuente como una expresión

totalmins = thisComp.layer("value 1").effect("Slider Control")("Slider") + thisComp.layer("value 2").effect("Slider Control")("Slider") + thisComp.layer("value 3").effect("Slider Control")("Slider")

if (totalmins <60) {
    SourceText = totalmins + " minutes" } else
        if (totalmins > 61) {
        SourceText = Math.round((totalmins/60)*10)/10 + " hours" } 
        else
        "1 hour"

totalmins es una variable que suma los minutos totales de los controles deslizantes en las otras capas.

Si el total es inferior a 60 minutos, muestra el total en minutos con el texto "minutos" adjunto.

Si el total supera los 61 minutos, muestra el tiempo total en horas, con un decimal (la función Math.round normalmente redondea al número entero más cercano, por lo que, de manera confusa, tenemos que multiplicarlo por 10 y luego dividirlo por 10 fuera de él). para obtener un decimal). Cuidado con la letra mayúscula en "Matemáticas".

De lo contrario, muestra "1 hora".

captura de pantalla

¡Wow esto es genial! ¡Muchas gracias! Acabo de tener un problema, el total no se redondeaba de 0 a 60 m sino solo después, así que agregué math.round después de totalmins.