as30基础教程
- 格式:ppt
- 大小:1.49 MB
- 文档页数:10
了解类一直想写个关于AS3.0的教程,但公司太忙都没时间写,最近看到群里有些朋友对3.0还不是很了解,所以从现在开始抽时间写点教程,从基本的东西开始.很多人还习惯用2.0去写一些东西,我已经有半年多没用2.0,很多2.0的习惯不能带到3.0中来,比如说在MC或BUTTON上去写代码,当然3.0 里面还是可以在帧上写代码(这里用到的版本是FLASH CS3,FLEX对于初学者来说还不适合),但要想把AS学好,不管是2.0还是3.0都应该用类的方式来写代码.现在来写一个简单的类,了解一下类的结构:1.package{2.public class MyClass{3.public function MyClass(){4.}5.}6.}这里是一个类的简单结构,package是包的意思,学过JAVA的朋友应该知道这个概念,其实说简单点就是这个类文件所放的位置,假设现在我们这个项目是放在d:\exam这个文件夹里面,那么我们刚才写的类直接保存在exam这个文件夹里面,取名叫MyClass.as就可以了(注意:类的文件名应该跟类名一样),因为现在package后面没有任何东西,如果代码写成这样:1.package net.smilecn{2.public class MyClass{3.public function MyClass(){4.}5.}6.}那么MyClass.as就应该放在d:\exam\net\smilecn这个路径下面.public class MyClass : 这里是表示我们要建的这个类的名字是MyClass,这个名字可以随便起,习惯上以大写开头public function MyClass(){} : funciton 代表一个方法名,可以说是函数,跟类名相同的方法,我们称为构造函数,就是这个类被实例化时执行的函数,现在我们在把代码改一下:1.package net.smilecn{2.public class MyClass{3.public function MyClass(){4.trace("这个我写的第一个类");5.}6.}7.}我们在d:\exam下建立一个FLA文件,在第一帧写如下代码:1.import net.smilecn.MyClass;2.var myClass:MyClass = new MyClass();那么在输出面板里就会看到“这个我写的第一个类” 这段信息了,import net.smilecn.MyClass:导入我们的类(类在使用前要导入net.smilecn是包名,MyClass是类名)var myClass:MyClass = new MyClass() : 实例化MyClass这个类(实例化的时候会执行构造函数,那么就会执行trace这句代码)包概念,构造函数接着上一节的内容,上一节中我们建了一个简单的类,讲解了包的概念,构造函数的概念,接下来再看看成员常、变量和成员函数的概念,再来看一段代码:1.package net.smilecn{2.public class MyClass{3.public const PI:Number = 3.1415926;4.public var r:Number;5.private var s:Number;6.public function MyClass(){7.trace("这个我写的第一个类");8.}9.}这里我们在以前的基础上增加了几句代码,const是定义常量,var是定义变量,所谓的常量就是永远不能改变的量,变量就是能够改变的量;public、private是属性关键字,在AS3中属性关键字有这样几个:public:指定类、变量、常量或方法可用于任何调用者private:指定变量、常量或方法仅可供声明或定义它的类使用protected:指定变量、常量、方法或命名空间只可用于定义它的类及该类的任何子类internal:指定类、变量、常量或函数可用于同一包中的任何调用者这里我们先重点看一下public、private这两个属性关键字,从字面上理解public是公共的意思,说简单点就是任何地方都可以调用,private是私有的意思,就是说只有这个类中才可以调用,我们用一个例子做一个简单的说明,还是在上一节中我们用的FLA文件中的第一帧加上这个的代码:1.import net.smilecn.MyClass;2.var myClass:MyClass = new MyClass();3.myClass.r = 3;//正确4.myClss.s = 18;//错误可以看到因为r声明为public,所以我们在外部调用是正确的,s声明为private,所以不直接在外部访问s这个变量,这就是public和private的区别,那我们要在外部改变s的值应该怎么做呢,我们可以这样做,在来修改MyClass类:1.package net.smilecn{2.public class MyClass{3.public const PI:Number = 3.1415926;4.public var r:Number;5.private var s:Number;6.7.public function MyClass(){8.trace("这个我写的第一个类");9.}10.11.public function setSValue(value:Number):void{12.s = value;13.}14.}15.}这样我们通过一个公共方法(方法就是函数的意思)设置了s的值,在FLA文件中这样调用:1.myClass.setSValue(18);就可以了,当然跟其它语言一样,我们也可以用get和set方法来读取或写入private变量的值:1.package net.smilecn{2.public class MyClass{3.public const PI:Number= 3.1415926;4.public var r:Number;5.private var s:Number;6.7.public function MyClass(){8.trace("这个我写的第一个类");9.}10.11.public function set sValue(value:Number):void{12.s= value;13.}14.15.public function get sValue():Number{16.return s;17.}18.}19.}我们在调用的时候就可以用这样的语句了:1.myClass.sValue =18;(当使用过set后可以这样操作)2.3.var a = myClass.sValue;(当使用过get后可以这样操作)类的继承这一节,我们讲到一个我们用的比较多的一个概念—-继承.继承是指一种代码重用的形式,允许程序员基于现有类开发新类。
实例一利用缓动类实现图片滚动点击放大效果//缓动类不在flash包中在fl包中所以要先导入import fl.transitions.Tween。
//导入缓动类import fl.transitions.TweenEvent。
//导入缓动事件import fl.transitions.easing.Regular。
//导入缓动效果中有规律的var arrTupian:Array=[]。
//存放图片的数组var tweenscaleX:Tween。
//用来控制图片宽高的缓动类var tweenscaleY:Tween。
var datu:MovieClip。
for (var i:int=0。
i<8。
i++> {var xiaotu:MovieClip =new Pic(>。
//这里Pic是库中一个存放图片的类文件addChild(xiaotu>。
xiaotu.gotoAndStop(i+1>。
xiaotu.width=120。
xiaotu.height=100。
xiaotu.x=xiaotu.width/2+i*(xiaotu.width+10>。
xiaotu.y=420。
arrTupian.push(xiaotu>。
xiaotu.addEventListener(Event.ENTER_FRAME ,dongf>。
//为每个小球添加移动帧频函数}function dongf(e> {var mc:MovieClip=e.target。
mc.x-=6。
if (mc.x<0-(xiaotu.width/2+10>> {//如果该图片出了场景则放在最后一张图片的位置mc.x=xiaotu.width/2+7*(xiaotu.width+10>。
}mc.buttonMode=true。
mc.addEventListener(MouseEvent.MOUSE_OVER ,overf>。
Flash Professional CS4ActionScript3.0 ———————————————————AS3.0基本介绍——————————————————————AS3.0:全名为ActionScript3.0,Action意为开始拍摄;Script意为脚本或剧本。
两个词放在一起可译为“开始脚本”或“开始照着剧本拍摄”或“照着剧本,开始拍摄”。
现在它已经升级到了3.0版本。
后面还有其它语言的程序设计课程,我以AS3.0作为编程的入门语言。
编程即编写程序,它是非常简单的事情。
看一个例子:X=(6+10*5)-[2(3+5)]+48这是个非常简单的一元一次方程。
把它交给计算机,机器会在一瞬间算出右边表达的结果:88。
X就是88。
这个方程就叫代码或程序(程序是对代码的统称)——这可不是比喻,这是千真万确实实在在的。
写这个算式就是编程。
编程就是用加减乘除来组织数字之间的关系。
所有的计算都交给电脑,我们只需告诉电脑怎样算,所以叫“算法”,或“数据结构”。
当然我们不可能直接口述给电脑,即使不这样也不会太复杂。
过程与打字一样。
你可以直接在文件夹里单击右键—文本文档,在文本文档窗口中打字,然后另存为.as格式就行了。
据说很多程序员都喜欢在文本文档里写程序,只要保存为相应的文件格式。
例如html语言保存为.html格式。
假设你是第一次接触编程,那我们还是使用flashIDE,即编程环境。
运行flash后,ctrl + N(新建文件):在弹出的窗口中单击“ActionScript文件”即可打开窗口:如图:这个东西也叫“面版”,就像报纸的什么“头版”之类。
ctrl + s(保存)在弹出的对话窗口中找个文件夹,将文件名存为“Ball”,一会儿再说为什么。
点“保存”或敲Enter键。
现在,这个文件的全名是“Ball.as”。
看到算式前面有个1 了么,这是代码的行号,表示这是第几行代码。
用ctrl + shift + L调出或隐藏。
Flash AS3.0教程PV3D程序结构主要想说说AS3与AS2的不同之处,没有什么逻辑性,想到什么就写点什么,因此,它不适合AS高手们阅读。
本文将力求用最直白的语言,尽量不用那些艰涩难懂的名词和术语。
一、在什么地方写代码失望,以为要说点啥,原来是这么小儿科的问题。
没办法,我说过了,本文不适合AS高手阅读的。
为了更好地理解,我们还是用例子来说明。
现在,就让我们一起来回顾一下,在AS2中我们都会把代码写在什么地方。
我们在AS2中建一新文档,新建一个影片剪辑元件取名为bt,元件很简单,随便画一个方块就行,你说我偏要画一个园,那当然随你高兴罗,我没意见。
然后,在场景中,用文字工具建一文本框,设为动态文本框,实例名称命名为:text1,将元件bt从库中拖到舞台上,实例名称命名为:bt_mc.现在写代码,想一想,代码写在什么地方,我们来做下面三个测试:测试一:在帧动作中,直接写代码,点中第一层,第一帧,然后打开动作面板,在上面写到:text1.text = "代码执行了“;测试影片,OK,我们看到了”代码执行了“这几个字。
测试二:还在帧动作中写代码,将代码改为:bt_mc.onPress = function() {text1.text = "代码执行了“;}测试影片,当我们点击,元件bt_mc时,又看到了“代码执行了”几个字。
测试三:好象还可以把代码写到元件上,清除帧动作中的代码,点中bt_mc,打开动作面板,写下如下代码:on(press){_root.text1.text = "代码执行了“;}测试影片,点击bt_mc又看到了“代码执行了”几个字。
它怎么老是执行了呢,真是的。
下面我们在AS3中,作相同的测试:测试一、在测试影片时,我们还是看到了那几个字,它都又执行了。
那AS3和AS2不是一样的?你还写个啥子劲?是哈,整了半天AS3和AS2整成一样的了。
在“不到黄河心不死”的精神鼓舞下,我们还是把剩下的两个测试做完。
再学AS3(六):音乐播放器1--控制播放进度主要功能:点击进度条音乐从鼠标点击处开始播放。
制作过程:1、新建FLASH CS3文档,保存名为“音乐播放器进度控制”,保存在存有音乐的文件夹内。
设置文档大小:252×114像素,帧频:24fps。
2、第一层名为“播放器背景”,在该层画一个播放器背景。
3、新建图层,名为“播放进度框”,画一个无边框的圆角矩形,边角半径为8,宽202高6,填充颜色为#006600,使其垂直水平于舞台。
4、新建图层,名为“播放进度背景”,画一个无边框的圆角矩形,边角半径为8,宽200高4,从上到下填充#99CC00到#55802B渐变色,使其垂直水平于舞台。
5、新建图层,名为“播放进度条”,画一个无边框的圆角矩形,边角半径为0,宽202高6,从上到下填充#00CCFF到#0066FF渐变色,使其垂直水平于舞台,转换为名为“播放进度条”的影片剪辑。
在场景中的实例名为“bfjdt_mc”。
6、新建图层,名为“播放进度条遮罩”,把“播放进度背景”图层上帧复制并粘贴到“播放进度条遮罩”图层上,右键选择“遮罩层”。
7、新建图层,名为“进度控制”,画一个无边框的圆角矩形,边角半径为0,宽200高6,填充颜色任意,使其垂直水平于舞台,转换为名为“进度控制”的按钮元件,并将“弹起”帧上的图形拖到“点击”帧上。
在场景中的实例名为“jdcz_btn”。
8、新建图层,名为“AS”,在帧上写如下代码://申明变量var _sound:Sound=new Sound();var _channel:SoundChannel=new SoundChannel();var loaded:int;var total:int;var _length:int;var position:int;var percentBuffered:Number;var percentPlayed:Number;//载入MP3并播放var url:String="****.mp3";//你电脑上的MP3音乐文件名,把该文件与MP3音乐文件放在一个文件夹内。
FLASH(实例案例教程) AS3.0代码简介22011-06-23 01:21MovieClip 的公共属性属性定义方accessibilityProperties : AccessibilityProperties此显示对象的当前辅助功能选项。
DisplayObjectalpha : Number指示指定对象的 Alpha 透明度值。
DisplayObjectblendMode : StringBlendMode 类中的一个值,用于指定要使用的混合模式。
DisplayObjectblendShader : Shader[只写] 设置用于混合前景和背景的着色器。
DisplayObjectbuttonMode : Boolean指定此 sprite 的按钮模式。
SpritecacheAsBitmap : Boolean如果设置为 true,则 Flash Player 将缓存显示对象的内部位图表示形式。
DisplayObject constructor : Object对类对象或给定对象实例的构造函数的引用。
ObjectcontextMenu : ContextMenu指定与此对象相关联的上下文菜单。
InteractiveObjectcurrentFrame : int[只读 (read-only)] 指定播放头在 MovieClip 实例的时间轴中所处的帧的编号。
MovieClipcurrentFrameLabel : String[只读 (read-only)] MovieClip 实例的时间轴中当前帧上的标签。
MovieClip currentLabel : String[只读 (read-only)] 在 MovieClip 实例的时间轴中播放头所在的当前标签。
MovieClip currentLabels : Array[只读 (read-only)] 返回由当前场景的 FrameLabel 对象组成的数组。
Photoshop 黑白风格的铅笔画效果图Photoshop 的教程中有一个经久不衰的话题,那就是将一幅照片打造成铅笔画效果。
这是一种快速而简单的技巧,却能打造出最令人满意的效果,因此也特别适合初学者。
Photoshop 的教程中有一个经久不衰的话题,那就是将一幅照片打造成铅笔画效果。
这是一种快速而简单的技巧,却能打造出最令人满意的效果,因此也特别适合初学者。
纵观历史,Photoshop 有非常多自带的滤镜功能,它们能产生多种多样的素描和艺术效果,但是无法完全实现真实的效果。
今天的文章,我就来和大家一起分享一些创造性的技巧,让我们能够将一张真实的照片变成一幅铅笔素描,甚至可以通过精确的调整让素材呈现它最真实的样子。
我们以Photoshop CS6为例。
工具:Photoshop CS6 难度:初级我们的目标效果是通过模仿铅笔素描的线条和阴影关系来实现的。
素描画看起来简单,但是即便是最具功底的天才设计师可能也要花上好几个小时才能画出一幅最真实的画作。
可是我们现在有了Photoshop 啊!事情就变得简单多了,几分钟就能搞定。
给你的画作赋予一个“艺术”的主题,使用Photoshop 一切变得简单又好玩。
Photoshop制作黑白风格的铅笔画效果图,PS教程,思缘教程网对比图在Photoshop中打开素材文件。
一张纯色背景、光线良好和焦点集中的照片比较适合实现最好的效果。
Photoshop制作黑白风格的铅笔画效果图,PS教程,思缘教程网STEP 1 反相把背景图层拖到新建图层按钮(或者使用Ctrl+J 复制图层)。
执行“图像-调整-反相”(或快捷键Ctrl+I),选中背景副本,单击鼠标右键,选择“转换为智能对象”。
Photoshop制作黑白风格的铅笔画效果图,PS教程,思缘教程网STEP 2 高斯模糊执行“滤镜-高斯模糊”,调节半径参数在40像素左右,点击确定。
转换图层为智能对象能为我们下面调节的每一步提供方便,这个操作很实用,要果断mark哦!STEP 3 颜色减淡更改图层副本混合模式为“颜色减淡”,通过这一步增强图片对比度,同时刚才执行高斯模糊的细节也出现了颗粒状的纹理。
Flash as3实例教程:AS3.0构建简单的声音可视化程序本例为Flash AS3.0实例教程,在教程中我们将学习运用puteSpectrum()方法来构建简单的声音可视化程序(即波形图),希望能给朋友们带来帮助~~AS3.0构建简单的声音可视化程序(波型图)使用puteSpectrum() 方法来显示声音波形图import flash.display.Graphics;import flash.events.Event;import flash.media.Sound;import flash.media.SoundChannel;import flash.media.SoundMixer;import .URLRequest;constPLOT_HEIGHT:int = 200;constCHANNEL_LENGTH:int = 256;varsnd:Sound = new Sound();varreq:URLRequest = new URLRequest("月亮之上.mp3");//配置声音源文件地址(此为本地,可配置远程)snd.load(req);varchannel:SoundChannel;channel = snd.play();addEventListener(Event.ENTER_FRAME, onEnterFrame);snd.addEventListener(Event.SOUND_COMPLETE, onPlaybackComplete);varbytes:ByteArray = new ByteArray();function onEnterFrame(event:Event):void{puteSpectrum(bytes, false, 0);var g:Graphics = this.graphics;g.clear();g.lineStyle(0, 0x6600CC);g.beginFill(0x6600CC);g.moveTo(0, PLOT_HEIGHT);var n:Number = 0;// left channelfor (var i:int = 0; i< CHANNEL_LENGTH; i++){n = (bytes.readFloat() * PLOT_HEIGHT);g.lineTo(i * 2, PLOT_HEIGHT - n);}g.lineTo(CHANNEL_LENGTH * 2, PLOT_HEIGHT);g.endFill();// right channelg.lineStyle(0, 0xCC0066);g.beginFill(0xCC0066, 0.5);g.moveTo(CHANNEL_LENGTH * 2, PLOT_HEIGHT);for (i = CHANNEL_LENGTH; i> 0; i--){n = (bytes.readFloat() * PLOT_HEIGHT);g.lineTo(i * 2, PLOT_HEIGHT - n);}g.lineTo(0, PLOT_HEIGHT);g.endFill();}function onPlaybackComplete(event:Event){removeEventListener(Event.ENTER_FRAME, onEnterFrame);}先加载并播放一个声音文件,然后在播放声音的同时侦听将触发onEnterFrame() 方法的Event.ENTER_FRAME事件。
ActionScript3 Flash基础教程首先我们要了解AS要写在什么地方,什么时候AS会被触发执行。
1、帧:写在关键帧上面的AS,当时间轴上的指针走到这个关键帧的时候,就写在这个帧上面的AS 就被触发执行了。
常见的例子有在影片结尾的帧写上stop() 等。
操作方法就是点选关键帧,然后打开AS面板。
2、按钮:不同于帧上面的AS,按钮上面的AS是要有触发条件的。
要把AS写在按钮上,操作方法是点选目标按钮,然后打开AS面板。
举个例子能说的更明白。
假设有一个动画,要让它在播放完同时停止,那么,你要做的就是在这个动画的最后一帧写ASstop();再假设有个按钮,效果是按下按钮后停止播放,那么步骤如下。
做一个按钮,放到主场景,点选按钮,然后打开AS面板。
现在如果也在按钮上写stop();那么,输出的时候就会提示错误。
正确的应该这样写on(release){stop();}这里要比帧的动画多这些代码: on(release){} , 整个代码翻译过来就是:当(松开){停止}红色的代码表示鼠标的触发事件事件之一,这里用的是release 松开,按钮的常用事件: release 松开releaseOutside 在按钮外面松开press 按下rollOver 鼠标进入按钮的感应区rollOut 鼠标离开按钮的感应区现在很明确了:写在按钮上面的AS一定就是这种格式的:on(事件){要执行的代码}3、MC(电影剪辑)如果你看懂了上面的内容,那么写在MC上面的AS和写在按钮上的大同小异。
操作方法就是点选MC,然后打开AS面板。
看个例子onClipEvent(load){stop();}同样,MC需要一个事件来触发AS的执行。
翻译这段代码就是当剪辑(载入){停止}红色代码同样表示一个事件。
MC的事件有下面这些:load 载入,当MC出现的时候执行。
也就是除非卸载这个MC,否则load事件内的代码只执行一次unload 卸载,当MC卸载的时候执行enterFrame 存在的每个帧。
Flash AS3.0 教学大纲
一、大纲说明.
1。
授课教材与辅助教材:
Flash AS3.0从入门到精通与Flex4开发RIA应用
2。
课程性质、教学目的、教学目标:
本课程是二维动画和游戏编程课,目地在于让学生通过本课程的学习,掌握flash软件的实际应用和 AnctionScript的应用,为学生完成两维游戏动画,动画短片和MTV打下坚实基础。
3。
总体教学要求:
本课程要求授课教师依据教学大纲,熟练掌握各章的具体教学课时,教学任务等,通过生动形象的理论教学,代表性实例的投影演示,以及耐心、详细的机房辅导,让学生圆满完成该课程的学习,为学生完成作品的制作做好准备。
课程总揽:。