Animate CC_二维动画_College_记录

Animate 键盘快捷键

帧操作
F9

三、 AS(ActionScript) 3.0基础语法

1、 认识常用的四种变量。

 int 变量(整型变量)


//认识常用的四种变量
var i:int
	i=5;
	trace(i);

 Number(浮点型变量)

var s:Number
	s=3.1415926;
	trace(s);

字符串类型变量

var zfc:String
	zfc="hello,大家好";
	trace(zfc);

布尔类型变量

var bool:Boolean;
	bool=false;
	trace(bool);

变量的强制转换

/*变量的强制转换 */
var b:int;
	b=int("100");
	trace(b);

输出:
在这里插入图片描述

2、方法(函数)的定义与调用。

方法(函数)定义格式:

/*
function 方法名(){
	方法体
} 
*/

在这里插入图片描述

无参函数 例子

jfys();

function jfys(){
	var js:int;
	var bjs:int;
	js=98;
	bjs=1;
	var addNum:int;
	addNum=js+bjs;
	trace(addNum);
}

在这里插入图片描述

有参函数 例子

susu (11,9);
function susu(cs:int,bcs:int){
	var qj:int;
	qj=cs*bcs;
	trace(qj);
}

在这里插入图片描述

有返回值的函数 例子

var getResult:int;
getResult=test();
trace(getResult);

function test():int{
	var js:int;
	var bjs:int;
	js=98;
	bjs=1;
	var TotalNum:int;
		TotalNum=js+bjs;
		return(TotalNum);
}

在这里插入图片描述

  • 区分大小写
    ActionScript 3.0是一种区分大小写的语言,大小写不同的标识符会被视为不同。

  • .点语法
    可以通过点运算符(.)来访问对象的属性和方法。使用点语法,可以使用后跟点运算符和属性名或方法名来引用对象的属性或方法。

  • 分号;
    可以使用分号字符(;)来终止语句。
    注释。

  • ActionScript 3.0代码支持两种类型的注释:单行注释和多行注释。// 和 /* */

  • var 变量的声明。
    变量可用来存储程序中使用的值。要声明变量,必须将var语句和变量名结合使用。

  • = 变量的赋值。
    可以使用赋值运算符( = )为变量赋值,也可以在声明变量的同时为变量赋值。

对象及其特性

在ActionScript面向对象的编程中,任何对象都可以包含3种类型的特性。

  • 属性。
    表示与对象绑定在一起的若干数据项的值,也可以简单地将属性视为包含于对象中的“子”变量。用户可以像使用各变量那样使用属性。
  • 方法。
    可以由对象执行的操作,如动画播放、停止或跳转等。
  • 事件。
    由用户或系统内部引发的、可被ActionScript识别并响应的事情,如鼠标单击、用户输入、定时时间、加载图像等事件。

这些元素共同用于管理程序使用的数据块,并用于确定执行哪些动作及动作的执行顺序。ActionScript为响应特定事件而执行某些动作的过程称为“事件处理”。在编写执行事件处理代码时,Animate CC需要识别3个重要元素。

  • 事件源:发生该事件的是哪个对象。
  • 事件:将要发生什么事情,以及程序希望响应什么事情。
  • 响应:当事件发生时,程序希望执行哪些步骤。

条件语句

  • if…else语句
    if…else if语句
f (x > 0)
    trace("x is positive");
else if (x < 0) 
    trace("x is negative");
else
    trace("x is 0");
  • switch语句。
    相当于一系列if…else if语句,但是更便于阅读。
    switch语句是对表达式进行求值并使用计算结果来确定要执行的代码块。
    代码块以case语句开头,以break语句结尾。

例如,基于由Date.getDay()方法返回的日期值输出星期日期

var someDate:Date = new Date();
var dayNum:uint = someDate.getDay();
switch(dayNum)
{
    case 0:
        trace("星期天");
        break;
    case 6:
        trace("星期六");
        break;
    default:
        trace("今天是工作日");
        break;
}
  • for
    for … in : for…in循环用于循环访问对象属性或数组元素。
    while
    do … while
for
//下例循环5次。变量i的值从0开始到4结束,输出结果是从0到4的5个数字,每个数字各占一行。
var i:int;
for (i = 0; i < 5; i++)
{
    trace(i);
}
for…in循环用于循环访问对象属性或数组元素。

//循环访问通用对象的属性。
 
var myObj:Object = {x:20, y:30};
for (var i:String in myObj)
{
    trace(i + ": " + myObj[i]);
}
// 输出:
// x: 20
// y: 30
//循环访问数组中的元素。

var myArray:Array = ["one", "two", "three"];
for (var i:String in myArray)
{
    trace(myArray[i]);
}
// 输出:
// one
// two
// three
while
 var i:int = 0;
while (i < 5)
{
    trace(i);
    i++;
}
do…while语句。
//也是一种while循环,它保证至少执行一次代码块,这是因为在执行代码块后才会检查条件
var i:int = 5;
do
{
    trace(i);
    i++;
} while (i < 5);
//输出:5

3、简单加法器的制作。
操作提示:按下图设计UI界面,再实现分别在文本框随意输入两个数字,点击等于号,运算结果会出现在右侧文本框内。。

在这里插入图片描述

在这里插入图片描述
4、事件的响应和处理:追逐鼠标的飞鸟 。
操作提示:使用enterFrame事件的实例,让舞台上的两个位置点趋近。算法如下图所示。
在这里插入图片描述动画完成的效果为:鼠标移动到哪里,鸟儿就飞到哪里。
在这里插入图片描述

function followmouse(event:Event):void{
	
	if(bird.x!=mouseX){
		bird.x= bird.x+(mouseX-bird.x)/10;
	}
	if(bird.y!=mouseY){
		bird.y= bird.y+(mouseY-bird.y)/10;
	}
}

bird.addEventListener(Event.ENTER_FRAME,followmouse);

5、综合案例:绿野仙踪。
动画完成的效果为:花仙子在快乐地游玩,她的位置不断随机变化,在窗口右上角能够实时显示她的位置 。
在这里插入图片描述

var randomPx:Number = Math.random()*420;
var randomPy:Number = Math.random()*250;

function movepos(event:Event):void{
	if(girl.x!=randomPx){
		girl.x=girl.x+(randomPx-girl.x)/5;
	}
	if(girl.y!=randomPy){
		girl.y=girl.y+(randomPx-girl.y)/5;
	}
	if((Math.abs(girl.x-randomPx))<1){
		randomPx=Math.random()*420;
		randomPy=Math.random()*250;
	}
	info.text="["+showvalue(girl.x)+","+showvalue(girl.y)+"]";
}
function showvalue(somevalue:Number):Number{
	var temp:int;
	temp=Math.round(somevalue);
	return(temp);
	
}
girl.addEventListener(Event.ENTER_FRAME,movepos);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值