通过实例来介绍Flash的绘图指令的使用

  效果:

点击这里下载源文件

首先介绍一下和直线相关的命令:
1.  定义直线样式命令:lineStyle(线宽,色彩,透明度)
2.  移动绘制点命令:moveTo(x,y)
3.  绘制直线段命令:lineTo(x,y)
一.绘制一个矩形
现在用上面介绍的命令在舞台上画一个大小为150*100r矩形。
新建文件,将舞台大小设为400*300,背景为白色。在第一帧输入代码:

stop();
//设置线条的粗细色彩和透明度;
_root.lineStyle(2,0xFFCC66,100);
//设置起点坐标为(50,50);
(200,50)
 
(50,50)
 
_root.moveTo(50,50);
//绘制矩形四个端点;
_root.lineTo(200,50);
_root.lineTo(200,150);
(200,150)
 
(50,150)
 
_root.lineTo(50,150);
_root.lineTo(50,50);
按快键试试吧,就可以看到一个矩形啦。
源文件附后:
二.两点间连线
这个技巧经常用来制作连线题课件。新建文件后,在舞台中绘制一个圆,并将其转为影片剪辑。实例名为“a”。同样将其复制一个,实例名为“b”。然后在第一帧输入以下代码:

stop();
//创建drawline自定义函数;
function drawline(){
//先清除画面内容
_root.clear();
//设置线条样式
_root.lineStyle(2,0x33ccFF);
//设定线条的开始点;
_root.moveTo(a._x,a._y);
//绘制直线断,连接两个小球;
_root.lineTo(b._x,b._y);
}
drawline();
按快捷键试试,用鼠标连连看,是否有一条线啦?注意元件的注册点应为中心对齐才更逼真哦。
玩大一点,如果要拖动两上控制点,并且其画线能任意延长,只需稍加一此代码即可。这是加在b上的代码:

//按下时拖动小球;
on(press){
       this.startDrag(true);
}
//放松时停止拖动;
on(release){
       this.stopDrag();
}
//当鼠标在b上移动时运行其中的代码;
onClipEvent(mouseMove){
       //调用函数drawline开始绘制直线;
       _root.drawline();
       //强制刷新画面;
       updateAferEvent();
}
加在a上的代码一样,有兴趣你可以一试。
三.线条画板
先绘制一个简单的线条画板。新建文件,在时间轴的第一帧加入以下代码:

stop();
createEmptyMovieClip("drawline",1);
drawline.lineStyle(2,0xFFcc33,100);
drawline.onMouseDown=function(){
       this.lineTo(_root._xmouse,_root._ymouse);
}
测试动画会发现,在窗口不同位置上单击就可以画出线段来。但还不流畅。要实现画线的流畅,得添加代码啦。继续学习吧。
四.自由绘画
新建文件,在第一帧输入以下代码:

stop();
//定义onMouseDown函数
_root.onMouseDown=function(){
       //设定线条样式
       _root.lineStyle(2,0xcc99FF,100);
       //绘制直线;
       _root.moveTo(_root._xmouse,_root._ymouse);
       //定义变量isdrawing,并赋值为真
       isdrawing=true;
}
_root.onMouseMove=function(){
//如果变量为真
       if(isdrawing==true){
              //绘制直线断
              _root.lineTo(_root._xmouse,_root._ymouse);
              //刷新画面;
              updateAferEvent();
       }
}
_root.onMouseUp=function(){
       //设定变量isdrawing的值为假
       isdrawing=false;
};
测试动画,这是可以通过拖放鼠标在窗口中自由地绘制线条。如果在场景中加入一个按钮,在按钮上加以下代码可以随时清除所绘制内容:

on(release){
       //清除画面内容;
       _root.clear();
}
以下是源文件,我将四和内容做在不同的场景中了。

时间: 2024-12-30 19:29:01

通过实例来介绍Flash的绘图指令的使用的相关文章

flash铅笔绘图工具教程

使用铅笔工具可以刻画出线条和其他形状,就像使用真正的铅笔一样.画出线条后,Flash会根据情况对它进行拉直或平滑处理.处理的模式依画线模式的不同而不同,Flash还可以以一定的角度来连接两线.本篇文章就为大家介绍Flash的铅笔绘图工具. "铅笔工具"如下图所示. 铅笔工具是用于绘制线条的工具.按住鼠标左键并在拖动的同时按下"Shift"键,可以绘制出水平或垂直的线条,如下图所示. 选择"铅笔工具"后,可以在工具属件选项中选择伸直.平滑和墨水三种

实例详解flash中实例的属性

详解 原创教程,转载请注明出处:网页教学网 我们在用FLASH制作动画时,总是用到符号(元件或组件),类型有三种分别为:MC.BUTTON.GRAPHIC.当我们按F8键时就会把你选中的对象转换为符号了,但是FLASH的精华在于实现交互,也就是我们必须要学习ACTION.当我们从库中把符号拖到场景中来,那么这时这个符号就叫做实例.通常我们在使用ACTION时,一些指令都是调用MC的实例名字的,而GRAPHIC的实例是不能调用的. 当我们在调用MC之前首先要给MC设置一个实例名,在Action指令

Flash AS绘图操作:随意切割位图实验

原创:ybzjllj .效果:用鼠标随意画一个形状,拖动此形状,就从原图上切出绘图区域的图来.注意:非遮罩,感觉比就遮罩简单.使用了:AS绘图.位图对象.位图填充. import flash.display.BitmapData; import flash.geom.Matrix; //导入一张图片,放在舞台上,转为MC,实例名为"原图" //"mc"是用来在里面绘图的 var 原图:MovieClip, mc:MovieClip; var 画线 = false;/

实例详细讲解Flash动画的Tween补间

flash动画 说到补间,很多人都会想到在时间轴里定义两个关键帧,然后创建一个补间,其实AS也可以完成等效的工作,而且能完成的更好. 要用程序创建补间,有两种方法,一种是通过setInterval函数,定时移动mc,可以达到效果,但比较麻烦.第二种就是今天要推荐的通过Tween类来创建补间动画. 为什么Tween比setInterval方便呢,首先代码量少,看着舒服,其次,Tween类可以使用一些比较有名的缓动类,还有,Tween类可以广播和侦听事件,这三点就足以让我们选择Tween而不是set

js表格字段排序的实例代码介绍

 本篇文章只要是对js表格字段排序的实例代码进行了介绍,需要的朋友可以过来参考下,希望对大家有所帮助 1.比较函数生成器:    代码如下: /**  * 比较函数生成器  *   * @param iCol  *            数据行数  * @param sDataType  *            该行的数据类型  * @return  */ function  generateCompareTRs(iCol, sDataType) {      return   functio

Silverlight+WCF 新手实例 象棋 介绍III(二十三)

在线演示地址:Silverlight+WCF 新手实例 象棋 在线演示   虽然有在线演示,不过还是要写一个介绍,因为并没有实时更新到在线演示 说是介绍,其实就是阶段进度报告,现在看一下最近的更新吧: 先来总体截一下图看看变化吧: 1.登陆: 增加了初始作者文字显示[没用户时默认文字],和在当前线用户数显示. 我开了三个浏览器窗口才截到这图. 2:房间: 这里从QQ象棋里弄了两张背景图过来,换了一下之前的房间背景,如果是游戏对战中,桌面背景就变成了: 3:增加倒计时子窗口实现,替换掉了Messa

Silverlight+WCF 新手实例 象棋 介绍四(三十一)

在线演示地址:Silverlight+WCF 新手实例 象棋 在线演示 另专题索引更已更新到三十:Silverlight+WCF 新手实例 象棋 专题索引 由于新增加了功能,所以,又要小小的介绍一下了 这节的介绍应该是非常简短了,因为新加的功能不多 1:首先,入场的是登陆,看小图,发现有点小变化了吧: 增加了单机入口,单机测试版本正式登陆!   2:用户对战增加默认[30分钟]计时.  红方开始计时开始:   黑方计时开始:   3:接下来进入到我们的单机版本了界面了: A:默认进入的界面  

用Flash AS绘图给影片加黑框实现遮丑

/* 用AS绘图,给影片加黑框("遮丑") by:www.ddup365.net www.ddup365.net/bbs 原地址:http://www.ddup365.net/bbs/viewthread.php?tid=121&extra=page%3D1 */ fscommand("allowscale", "false"); this.createEmptyMovieClip("img_mc", this.get

Jquery显示和隐藏元素或设为只读(含Ligerui的控件禁用,实例说明介绍)

本篇文章是对Jquery中显示和隐藏元素或设为只读以及Ligerui的控件禁用实现代码进行了分析介绍,需要的朋友可以参考下   一.隐藏和显示元素 复制代码 代码如下: $('#button_save_12').css('display', 'none');  // 隐藏按钮 $('#button_save_12').css('display', 'display');  // 显示按钮 // 或者采取 复制代码 代码如下: $('#button_save_12').hide(); $('#bu