value
返回类型:数值、数组或字符串。
返回属性在当前时间的值。
valueAtTime(t)
返回类型:数值或数组。
参数类型:t 是数值。
返回属性在指定时间(以秒为单位)的值。
例如,要从一组(四个)值中随机选择每个帧的属性值,请在 0、1、2 和 3 秒将您的四个值设为关键帧,然后将以下表达式应用于该属性:
valueAtTime(random(4))
注意:
Dan Ebberts 在其 MotionScript 网站上提供了使用 valueAtTime 和 velocityAtTime 方法的更多示例和技术。
velocity
返回类型:数值或数组。
返回当前时间的临时速度值。对于空间属性(例如位置),它返回正切矢量值。结果与属性的维度相同。
velocityAtTime(t)
返回类型:数值或数组。
参数类型:t 是数值。
返回指定时间的临时速度值。
speed
返回类型:数值。
返回 1D,等于属性在默认时间更改的速度的正速度值。此元素只能用于空间属性。
speedAtTime(t)
返回类型:数值。
参数类型:t 是数值。
返回指定时间的空间速度值。
wiggle(freq, amp, octaves=1, amp_mult=.5, t=time)
返回类型:数值或数组。
参数类型:freq、amp、octaves、amp_mult 和 t 是数值。
随机摇动(摆动)属性值。
freq 值是每秒摆动的频率。
amp 值是向其应用了此值的属性单位中的振幅。
octaves 是要加在一起的噪声的八度数。此值控制摆动的详细程度。使此值高于默认值 1 可在摆动中包括更高的频率,使此值低于默认值 1 可在摆动中包括振幅谐波。
amp_mult 是 amp 乘以每个八度的值。此值控制谐波减弱的速度。默认为 0.5;使其更接近 1 可以与基本频率相同的振幅添加谐波,使其更接近 0 可以添加更少的细节。
t 是基础启动时间。此值默认为当前时间。如果您希望输出成为在不同时间采样的属性值的摆动,请使用此参数。
示例:position.wiggle(5, 20, 3, .5) 每秒产生约 5 次摆动,平均大小约 20 像素。除了主要摆动之外,其他两个级别的详细摆动发生的频率为每秒 10 次和 20 次摆动,各自的大小为 10 和 5 像素。
对于二维属性(例如缩放),以下示例按相同值摆动两个维度:
v = wiggle(5, 10); [v[0], v[0]]
此示例具有两维属性,只能在 Y 轴上摇摆:
freq = 3; amp = 50; w = wiggle(freq,amp); [value[0],w[1]];
Dan Ebberts 在其 MotionScript 网站上提供了演示如何使用 wiggle 方法的时间参数创建循环动画的示例表达式和详细说明。
temporalWiggle(freq, amp, octaves=1, amp_mult=.5, t=time)
返回类型:数值或数组。
参数类型:freq、amp、octaves、amp_mult 和 t 是数值。
在摆动的时间对属性进行采样。freq 值是每秒摆动的频率,amp 是向其应用了此值的属性单位中的振幅,octaves 是要加在一起的噪声八度数,amp_mult 是 amp 乘以每个八度的值,t 是基础启动时间。为使此函数有意义,必须对其采样的属性制作动画,因为此函数只更改采样时间而不是值。示例:scale.temporalWiggle(5, .2)
smooth(width=.2, samples=5, t=time)
返回类型:数值或数组。
参数类型:width、samples 和 t 是数值。
随着时间的推移平滑属性值,将值的大而短的偏差转换为更小、分布更均匀的偏差。此平滑通过在指定时间向属性值应用框滤镜来完成。width 值是平均滤镜的时间(以秒为单位)范围。samples 值是随着时间均匀分布的分离样本的数目;为更大的平滑度使用更大的值(但性能下降)。通常,您会希望 samples 是奇数,以便当前时间的值包括在平均数中。示例:position.smooth(.1, 5)
loopIn(type="cycle", numKeyframes=0)
返回类型:数值或数组。
循环从向图层的出点前进的图层的第一个关键帧中计算的时间段。该循环从图层的入点播放。numKeyframes 值确定循环的段:循环的段是图层从第一个关键帧到 numKeyframes+1 个关键帧的部分。例如,loopIn("cycle", 3) 循环以第一个和第四个关键帧为界的段。默认值为 0 意味着所有关键帧都会循环。
您可以使用关键帧循环方法来重复一系列关键帧。您可以对多数属性使用这些方法。例外包括无法用“时间轴”面板中的简单数值表示的属性,例如源文本属性、路径形状属性以及色阶效果的直方图属性。过大的关键帧或持续时间值修剪为最大允许值。过小的值会导致不变的循环。
loopOut(type="cycle", numKeyframes=0)
返回类型:数值或数组。
循环从向图层的入点后退的图层的最后一个关键帧中计算的时间段。循环一直播放到图层的出点。要循环的片段由指定数量的关键帧决定。numKeyframes 值设置要循环的关键帧段的数量;指定范围从最后一个关键帧向后进行计算。例如,loopOut("cycle", 1) 循环以最后一个关键帧和倒数第二个关键帧为界的段。默认值为 0 意味着所有关键帧都会循环。有关更多信息,请参阅 loopIn 的项。
David Van Brink 在
loopInDuration(type="cycle", duration=0)
返回类型:数值或数组。
循环从向图层的出点前进的图层的第一个关键帧中计算的时间段。该循环从图层的入点播放。要循环的片段由指定的持续时间决定。duration 值设置要循环的段中的合成秒数;指定的范围从第一个关键帧进行计算。例如,loopInDuration("cycle",1) 循环整个动画的第一秒。默认的 0 意味着要循环的段开始于图层出点。有关更多信息,请参阅 loopIn 的项。
loopOutDuration(type="cycle", duration=0)
返回类型:数值或数组。
循环从向图层的入点后退的图层的最后一个关键帧中计算的时间段。循环一直播放到图层的出点。要循环的片段由指定的持续时间决定。duration 值设置要循环的段中的合成秒数;指定的范围从最后一个关键帧向前进行计算。例如,loopOutDuration("cycle", 1) 循环整个动画的最后一秒。默认的 0 意味着要循环的段开始于图层入点。有关更多信息,请参阅 loopIn 的项。
key(index)
返回类型:Key 或 MarkerKey。
参数类型:index 是数值。
按数字返回 Key 或 MarkerKey 对象。例如,key(1) 返回第一个关键帧。
key(markerName)
返回类型:MarkerKey。
参数类型:markerName 是字符串。
返回具有此名称的 MarkerKey 对象。仅对标记属性使用。
nearestKey(t)
返回类型:Key 或 MarkerKey。
返回最接近指定时间的 Key 或 MarkerKey 对象。
numKeys
返回类型:数值。
返回属性的关键帧数目。返回标记属性的标记数目。
注意:
如果您使用“分离维度”命令将位置属性的维度分离到各个组件,则关键帧数会更改,因此,此方法返回的值会更改。
propertyGroup(countUp = 1)
返回类型:组。
返回与对其编写表达式的属性相关的属性组。例如,如果您将 propertyGroup(1) 表达式添加到笔刷笔触的旋转属性,则该表达式会瞄准包含旋转属性的变换属性组。如果您改为添加 propertyGroup(2),则该表达式会瞄准笔刷属性组。此方法使您可在属性层次结构中建立独立于名称的关系。当复制包含表达式的属性时,此方法特别有用。
propertyGroup 的 numProperties 方法返回属性组中属性的数目。
此示例返回包含对其编写表达式的属性的组中的属性数目:
thisProperty.propertyGroup(1).numProperties
propertyIndex
返回类型:数值。
返回与其属性组中的其他属性相关的属性的索引,包括蒙版、效果、文本动画、选择器、形状、跟踪器以及跟踪点中的属性组。
name
返回类型:字符串。
返回属性或属性组的名称。
示例:使用 propertyGroup 方法和 propertyIndex 属性进行动画制作
与笔刷笔触的位置属性相关的 propertyGroup 的值
A. propertyGroup(4) B. propertyGroup(3) C. propertyGroup(2) D. propertyGroup(1) E. Position propertyIndex 值为 2;Rotation propertyIndex 值为 4。
在此示例中,每个笔刷笔触的 propertyGroup 方法都会瞄准笔刷属性组,因为该组是旋转属性下面的两个属性组。每个笔刷笔触中的 propertyIndex 属性稍后会为每个笔刷笔触返回一个唯一值。生成的值稍后会乘以时间和 200 并应用于每个旋转值,以不同的方式旋转每个笔刷笔触,创建旋转的绘画笔触: propertyGroup(2).propertyIndex * time * 200
1 | propertyGroup( 2 ).propertyIndex * time * 200 |
使用表达式对笔刷笔触进行动画制作
明狮交流群
明狮交流群