主题
NumberSequence
概览
| 字段 | 值 |
|---|---|
| Kind | Data · 数据 Data |
| Realm | common |
NumberSequence 表示一段随归一化时间变化的数值曲线,可用单个常量值或关键帧数组构造,并通过 Keypoints 读取生成的关键帧。
适用场景
适合在需要随时间变化的分段数值配置场景中使用,例如把若干关键帧打包成一个数值序列,交给依赖数值曲线表现的接口统一读取。
使用要点
使用 NumberSequence.New(value) 创建数值序列;value 可传单个常量值,或由 NumberSequenceKeypoint 组成的数组。也可写成等价的 NumberSequence(value) 简写。
注意事项
Keypoints 是构造后得到的关键帧数组;修改曲线时重新创建 NumberSequence 实例。公开 Meta 仅声明 value 单参数形态,文档和示例不扩展未声明的多参数重载。
代码示例
构造数值序列并读取关键帧
lua
-- @runtime client
local sequence = NumberSequence.New({
NumberSequenceKeypoint.New(0, 0.2),
NumberSequenceKeypoint.New(1, 0.8),
})
for index, keypoint in ipairs(sequence.Keypoints) do
print(index, keypoint.Time, keypoint.Value, keypoint.Envelope)
end属性 (1)
| Name | 类型 | 默认值 | 说明 |
|---|---|---|---|
Keypoints | Array<NumberSequenceKeypoint> | - | NumberSequence 的关键帧列表属性,返回构成该数值序列的关键帧数组,数组元素的类型为 NumberSequenceKeypoint。每个关键帧元素通过 Time、Value、Envelope 描述序列在对应位置上的取值以及过渡范围,读取该属性即可获得序列当前的完整关键帧构成。 |
关联类型
函数 (1)
New
签名:New(value: Any) -> NumberSequence
创建一个新的 NumberSequence 实例,用于描述数值随时间变化的序列。
| 参数 | 类型 | 说明 |
|---|---|---|
value | Any | 单个常量值,或由 NumberSequenceKeypoint 组成的关键帧数组。 |
返回值 NumberSequence
示例代码
用关键帧构造数值序列
lua
-- @runtime client
local sequence = NumberSequence.New({
NumberSequenceKeypoint.New(0, 0.2),
NumberSequenceKeypoint.New(1, 0.8),
})
print('关键帧数量:', #sequence.Keypoints)