向安宇知识库 向安宇知识库
  • 读书向
  • 学习向
    • AI工具
    • AI研究
    • 笔记
    • AIP:克丽丝AI日志
  • 创作向
    • 写作
      • 非虚构
      • 剧本
      • 小说
      • 文言
      • 随笔
      • 日记
    • 视听
      • 纪录片
      • 设计
      • 视频
      • 摄影
    • 课程
  • 影视向
    • 创意策划
    • 前期拍摄
    • 后期制作
    • 影像实验
    • 影像设备
    • 大师镜头
    • 电影赏析
    • 视频论文
    • 项目复盘
  • 折腾向
    • 穿越机
    • 户外
    • 代码
    • 手工
    • 书法
    • 篆刻
    • 绘画
首页 › 创作向 › 课程 › AE表达式|09、如何利用标记点进行精确控制?(初阶)@markerKey
  • 12
  • 2
  • 2

AE表达式|09、如何利用标记点进行精确控制?(初阶)@markerKey

向安宇
2018-08-21 13:50:51

AE里面,标记点有两类,分别是合成标记点,和图层标记点。

AE表达式|09、如何利用标记点进行精确控制?(初阶)@markerKey-向安宇知识库

合成标记点可以通过拖拽拉到时间线上,也可以通过Shift + Number(相应数字键)添加。如 Shift + 1 ,可以添加图中所示的标签为1的标记点。

图层标记点,用小键盘上的“*”添加,或者"ctrl + 8"的快捷键添加,mac的非全尺寸键盘,使用“control + 8 ”的方式添加。

怎样访问合成标记和图层标记的值?可以用thisLayer.marker来访问图层标记点,用thisComp.marker来访问和层标记点。

能访问哪些值?

我们来先给图层打一个标记点,双击图层,弹出一个窗口:

AE表达式|09、如何利用标记点进行精确控制?(初阶)@markerKey-向安宇知识库

这个窗口中所显示的值,Time,Duration,Comment,Chapter,URL等,都是可以访问的。

time

返回类型:数值。

标记所在的时间。

duration

返回类型:数值。

标记的持续时间(以秒为单位)。

comment

返回类型:字符串。

标记对话框中的注释内容字段。

chapter

返回类型:字符串。

标记对话框中的章节内容字段。

url

返回类型:字符串。

标记对话框中的 URL 内容字段。

frameTarget

返回类型:字符串。

标记对话框中的帧目标内容字段。

eventCuePoint

返回类型:布尔值。

标记对话框中的提示点类型设置。对于事件为 True;对于导航为 False。

cuePointName

返回类型:字符串。

标记对话框中的提示点名称内容字段。

parameters

返回类型:字符串值的关联数组。

标记对话框中的参数名称和参数值内容字段。

另外,标记点还有index属性

需要注意的是,index是标记点索引号,表示的是标记点在时间线上的顺序。在时间线上的第一个标记点,其索引index为1,顺序第二的标记点index为2,以此类推。

容易混淆的是,在合成标记点上显示的数字是其注释(comment)也是“name”。
AE表达式|09、如何利用标记点进行精确控制?(初阶)@markerKey-向安宇知识库

也就是说,这里用thisComp.marker.key(1).time访问到的是时间线上第一个标记点的时间值,无路其注释显示的是多少。

@ marker.key(name)

返回类型:MarkerKey。

参数类型:name 是一个字符串。

返回具有指定名称的图层标记的 MarkerKey 对象。name 值是标记对话框的注释字段中键入的标记名称,例如,marker.key("ch1")。如果图层上的多个标记具有相同名称,则此方法会返回时间(图层时间)最早的标记。

标记密钥的值是字符串,不是数值。

此属性表达式可将两个由名称标识的两个标记间属性从 0 到 100 渐变:

m1 = marker.key("Start").time;
m2 = marker.key("End").time;
linear(time, m1, m2, 0, 100);

  

@ marker.nearestKey(t)

返回类型:MarkerKey。

参数类型:t 是数值。

返回时间最接近 t 的图层标记。例如,以下表达式返回图层上最接近 1 秒时间的标记的时间:

marker.nearestKey(1).time

以下表达式返回图层上最接近当前时间的标记的时间:
marker.nearestKey(time).time

简单的例子:

thisLayer.marker.nearestKey(time).time

  
这个表达式返回的值是,离播放时间最近的标记点所在的时间的值。

thisLayer.marker.key(1).comment

  
这个表达式访问的是图层上第一个标记点(inde = 1 的标记点)的注释(comment)。引入一个变量,可以写作:

n = thisLayer.marker.nearestKey(time).index;
thisLayer.marker.key(n).comment

  

来看个例子:

给图层打上图层标记,给Rotation添加表达式:

angle = 90; //旋转变动角度
s = 1; //几秒内完成变化
m = thisLayer.marker.nearestKey(time).time;

linear(time, m, m + s, value, value + angle)

  
这个表达式的作用是,让图层在标记点的位置开始,在1秒内旋转90度。可以随意移动标记点位置,方便调试。

也可以用thisComp.marker.nearestKey(time).time调用图层打标记点。

另外一个不实用但能帮助理解的例子:
给图层打一个标记点,并注释为“start”,给scale添加表达式:

n = thisLayer.marker.nearestKey(time).index;
add = 50;

if(thisLayer.marker.key(n).comment == "start" && thisLayer.marker.key(n).time > time){
transform.scale = value;
  }else{
transform.scale = value + [add,add];
}

  
这个表达式会在播放到标记点时候,将图层放大50% 。

@ marker.key(index)

返回类型:MarkerKey。

参数类型:index 是数值。

返回具有指定索引的图层标记的 MarkerKey 对象。

@ marker.numKeys

返回类型:数值。

返回图层上的标记的总数。

  
< 返回目录

AE表达式
12
2
AE表达式|08、如何进行线性插值运算?@linear @ease
上一篇
AE表达式|10、怎样写条件判断表达式?@ if / else
下一篇

评论 (2)

登录后可发布~
立即登录
  • 16253221893

    你好,我想请教一个问题。合成里有一个三维层,一个摄影机。我想写一个表达式能计算这个图层和摄影机所在平面的距离。并不是图层位置到摄影机位置的距离,而是图层位置,到摄影机所在平面的距离。也就是,由图层位置到摄影机XY轴形成的面之间的距离,一个点到一个面形成的垂直距离。有办法可以用表达式计算出来么?很久之前就想写,但自己表达式方面的知识不太够,一直也没解决。不知道方不方便和大佬交流一下

    4 年前 江苏省
  • O.0

    Good!

    7 年前 广东省

向安宇

痴迷文字,醉心影像
446
文章
5
评论
325
喜欢

聚合文章

克丽丝是谁?(人物设定1.0)
AIP克丽丝的构想
wordpress也要拥抱AI
AI时代我们如何学习

近期评论

有些平台把简单内容包装成高价课,真是服了
—— SnuggleMuffin 12 分前 如何选择优质学习平台?
所以AI到底该咋用啊?有人实际用出效果了吗?
—— 鱼鱼 21 分前 如何提升学习效率?
催更!想看作者用AI做项目实战的后续~
—— 水晶幻梦 1 小时前 AI如何改变学习方式?
内容推荐算法居然能发现新视角,厉害
—— 雨林穿梭 3 小时前 AI如何优化网站管理效率?
工具链接在官网搜“星河AI”就能找到
—— 无序之王 4 小时前 wordpress也要拥抱AI

猜你喜欢

AE表达式|37、怎样单独控制文字层的每一个文字?-表达式选择器Expression Selector基础

AE表达式|37、怎样单独控制文字层的每一个文字?-表达式选择器Expression Selector基础

2018-11-13 12:06:05
5,782 0 2
AE表达式|04、如何制作一个简单的时钟?@ index , time

AE表达式|04、如何制作一个简单的时钟?@ index , time

2018-07-10 16:04:03
3,245 1 4
AE表达式|28、如何在两个表达式之间无缝转换?@ linear

AE表达式|28、如何在两个表达式之间无缝转换?@ linear

2018-10-19 12:06:17
2,083 0 44
AE表达式|26、如何将透明度添加进父子关系?@ parent

AE表达式|26、如何将透明度添加进父子关系?@ parent

2018-09-25 15:41:33
5,836 0 7
2 12 2

关于我:

想要读万卷书,行万里路,看万部电影。

推荐栏目:

视频论文 课程 后期制作 非虚构 照片 视频

特色专题:

专题汇总 宜看一侃 帧影帧画 重读文学史 青玉记
Copyright © 2016-2025 向安宇知识库. 鄂ICP备16005400号-1 鄂公网安备42050602000017号
  • 读书向
  • 学习向
    • AI工具
    • AI研究
    • 笔记
    • AIP:克丽丝AI日志
  • 创作向
    • 写作
    • 视听
    • 课程
  • 影视向
    • 创意策划
    • 前期拍摄
    • 后期制作
    • 影像实验
    • 影像设备
    • 大师镜头
    • 电影赏析
    • 视频论文
    • 项目复盘
  • 折腾向
    • 穿越机
    • 户外
    • 代码
    • 手工
    • 书法
    • 篆刻
    • 绘画
  • 剪辑
  • 转场
  • 纪录片

向安宇

痴迷文字,醉心影像
446
文章
5
评论
325
喜欢