Ae 核心表达式及用法(01):属性值、时间、循环方法

  • 属性值相关

value

获取当前时间的属性的值。

如果是数组类的值,比如,位置属性,value[0] 代表 X 轴的值,value[1] 代表 Y 轴的值。

可以为文本图层的“源文本”设置表达式,以显示某个属性的属性值。

x =thisComp.layer("小球").transform.position;
x.name + '\n' + x.value.toString()

valueAtTime( t )

返回属性在指定时间 t(以秒为单位)的值。

参数 t,常写成 time - x 的形式,用于实现延迟错帧动画。

如下图所示,为一根钟摆形状设置“旋转”关键帧动画,并为旋转属性设置表达式:

valueAtTime(time - index/10)

复制多次形状图层,即可产生非常有规律的钟摆动画。

4487547812150f950107d3ed58cfd64e.gif

  • 时间相关

time

返回合成的当前时间值,以秒为单位。

比如,当处于 1 秒的时间点时,time 返回 1,2 秒的时间点时,则返回 2。

利用 time 可以做出一些随时间变化的动画效果。

//在旋转属性建立表达式,即可实现 1 秒钟转 360° 的动画。
time*360

bc6440247196fc26327d3ef92d04e16e.gif

sourceRectAtTime(t,includeExtents)

返回当前时间具有四个属性的 JavaScript 对象:[上边界 top、左边界 left、宽度 width、高度 height]。

本方法适用于形状图层和文本图层。

//形状路径的大小属性表达式,让形状始终保持与文字同宽
x = thisComp.layer("MEDIATEA").sourceRectAtTime().width;
[x,value[1]]

d1b84d1e53b85aa918095c2257bff8db.gif

  • 循环相关

循环函数使用的前提条件是必须有关键帧动画,循环相当于将已有的关键帧动画进行重复播放。

loopOut(type, numKeyframes)

从最后一个关键帧开始循环指定段直到图层的出点。

参数 type:循环类型。

包括:

cycle:重复运动,类似于 1234 1234... 的循环。

pingpong:往复运动,类似于 1234321... 的循环。

continue:持续最后的运动,类似于 1234 4444...的循环。

offset:阶梯式持续之前的运动,类似于 1234 5678...的循环。

参数 numKeyframes:有效的关键帧段数。

值为 0 时(默认),表示循环全部关键帧。为 n 时,表示循环倒数 n 段关键帧。当循环类型为 contiue 时,应删除此参数。

7341c84a5c45af5383830023f896c9f6.gif

如以下动画所示,云朵使用了 continue 类型,太阳使用了 offset 类型,太阳光线使用了 cycle 类型,小树使用了 pingpong 类型。

382d08a93a5f645d9e771c385173ef97.gif

loopIn(type, numKeyframes)

从图层的入点开始重复播放指定段,直到第一个关键帧。

参数使用与 loopOut 近似。

当第一个关键帧没有在图层入点时,可考虑使用 loopIn。

270d848c0ff4e85d1a38848161301fdc.png

“有钱的捧个钱场,好看的点下在看”

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值