当前位置: 首页 > 影视后期 > ae教程

AE表达式教程

  • 2016-01-12
  • 作者/来源:chinaliumiao/01123.net.cn
  • 己被围观
  • 被点评
第一章 – 表达式的语言1.1表达式控制面板学习表达式需要从表达式的操作界面开始,在AE里新建一个合成你就能看到如下界面:点击Position左边的码表你可以得到如下结果:仔细观察


第一章 – 表达式的语言

1.4 if/else 条件语句

if/else条件函数

当我们编写表达式的时候,我们经常会遇到根据一些条件判断情况的需求。我们看一个简单的例子,比如我们有一个旋转的表针,我们希望当这个表针指向右边的时候,它的透明度是100%的;指向左边的时候,它的透明度是50%。这里我们假设当旋转至0度的时候它是指向上方的,这个表达式我们就可以使用JS的if/else条件语句来完成,这个表达式如下:

if (rotation < 180) 100 else 50

咱们分析一下这个表达式:“if”大家都应该知道这个英文单词的意思,“if”也是JS语言中条件函数的声明,紧跟着括号里面就是条件,在我们这句表达式中就是(rotation < 180) ,它的意思是把if函数的条件设置为旋转小于180。接下来的100告诉表达式,当旋转小于180的时候透明度为100,接着我们写了一个 else 50, 意思就是如果旋转大于180的时候,透明度是50。

这个表达式还有很多书写的方式,我来给大家展示几种方式,有很多简化的写法我们甚至可以省略else。

t = 50;

if (rotation < 180) t = 100;

t

有一点需要注意一下,如下的这种写法是有问题的:

if (rotation < 180) 100

这种写法会报错,因为AE不知道当Rotation大于180的结果,AE会自动屏蔽这个表达式。

好,下面我们在看另一个稍微复杂一点的版本:

if (rotation < 180){

   100

}else{

   50

}

这也是一种写法,得到的结果是一样的,但是我们为什么要写的这么复杂呢?对于这种就一行的表达式我们可以尽量简单的写,大家注意一下这种写法里面的大括号“{}”,因为利用这种嵌套的方式我们可以写出更加复杂的表达式,甚至在{}之间我们还可以添加if/else条件语句,在后面的章节中我会给大家展示更多复杂的嵌套方式。

对比及等于运算符:

到这里我觉得有必要介绍一下JS里面的对比符。刚刚我们用过的“<”,小于号,相反我们有“>”,大于号。“>=”,”<=”,大于等于以及小于等于。还有两个是不等于”!=”以及等于“==”。

这里提个醒”=”和“==”的区别,第一个符号式给变量赋予值,第二个才是等于号。

逻辑运算

接下来我们需要记住的是逻辑运算符,一共有三个:

“&&”这个符号为和,就是要同时满足两个条件;“||”为或者,就是满足任何一种条件;“!”为不,就是当不等于这个条件的时候,。

例如:if (rotation<90 || rotation>270) 100 else 50,这句表达式的意思就是当旋转小于90或者大于270的时候透明的值设置为100,否则是50。

又如:if (! (rotation==180)) 100 else 50,这里的意思是当旋转不等于180的时候将透明度设置为100,否则为50,大家可以先不看下面的视频,然后想想是什么样子的。

好,我们再看一个更加复杂的写法,假设我们希望当旋转在0至90之间或者180至270的时候,透明度为100,其它的情况透明度为50。

最后大家需要注意一下,运算符计算优先于逻辑符号,逻辑符号的&&优先于||,大家注意不要添加过多的括号。

截止到这里,我们完成了第一部分的对于表达式基础的介绍,主要为大家介绍了一下JS的函数和语法,但是都比较基础。如果大家对这门语言有更多的兴趣,大家可以登录这个网址


www.w3school.com.cn  这个网站的JS专区有非常详细的JS语言介绍。



下一篇推送我将开始为大家介绍一些仿真运算,我们下期再见。


*CGahz.COM 收集整理,转载请注明来自CG爱好者网(www.cgahz.com)

分享到:

更多精彩内容

已有13条评论 发表评论