毕业论文 论文提纲 论文写作 公文范例 教育论文 教育学论文 师范教育 学术论文     论文指导*
                     
 
   
   
   
   
           
 

当前位置:课件115学培吧(kj115.com)→flash课件制作实用教程→系列文章

 
 
标题:画任意线、直线、方框、箭头、双箭头、带尾巴箭头、任意圆
 
展示台

文章来源 作者:admin 密码:admin 整理:湖北金鹰

◇经典教程栏目简介
提供FLASH高级编程知识的教程,供高手学习使用,可以激发你梦想的火花。

适合你的教程可能还有网侠教程网页教程

---------------

湖北金鹰课件吧

简介:国家级FLASH竞赛课件制作专业网站。

【实现效果】
点击一个画线按钮后,在场景中拖动鼠标不放,可以画出相应的线条,释放鼠标结束画线。

【制作过程】
新建一影片剪辑,在内部放一些表示画线的影片剪辑或按钮,从左至右分别取实例名称为a\b\c\d\e\f\g。

新建一层,在第一帧输入以下代码:
var canDraw:Boolean = false;
var current_level:Number = 1000;
var current_mc:MovieClip;
var start_pt:Object = new Object();
var myListener:Object = new Object();
myListener.onMouseDown = function() {
_root.createEmptyMovieClip("mc"+current_level, current_level);
current_mc=_root["mc"+current_level];
start_pt._x = current_mc._xmouse;
start_pt._y = current_mc._ymouse;
canDraw = true;
current_mc.moveTo(start_pt._x, start_pt._y);
};
myListener.onMouseUp = function() {
canDraw = false;
current_level++;
mc_array.push(current_mc);
mask_array.push(current_mask);
};
//画直线
function drawLine() {
if (canDraw == true) {
current_mc.clear();
current_mc.lineStyle(1, 0x0000ff, 100);
current_mc.moveTo(start_pt._x, start_pt._y);
current_mc.lineTo(current_mc._xmouse, current_mc._ymouse);
}
}
a.onPress = function() {
myListener.onMouseMove = drawAnyLine;
Mouse.addListener(myListener);
};
//画任意曲线
function drawAnyLine() {
if (canDraw == true) {
current_mc.lineStyle(1, 0x0000ff, 100);
current_mc.lineTo(current_mc._xmouse, current_mc._ymouse);
}
}
b.onPress = function() {
myListener.onMouseMove = drawLine;
Mouse.addListener(myListener);
};
//画方框
function drawRect() {
if (canDraw == true) {
current_mc.clear();
current_mc.lineStyle(1, 0x0000ff, 100);
current_mc.moveTo(start_pt._x, start_pt._y);
current_mc.lineTo(start_pt._x, current_mc._ymouse);
current_mc.lineTo(current_mc._xmouse, current_mc._ymouse);
current_mc.lineTo(current_mc._xmouse, start_pt._y);
current_mc.lineTo(start_pt._x, start_pt._y);
}
}
c.onPress = function() {
myListener.onMouseMove = drawRect;
Mouse.addListener(myListener);
};
//画箭头
function drawArrow() {
if (canDraw == true) {
current_mc.clear();
current_mc.lineStyle(1, 0x0000ff);
current_mc.moveTo(start_pt._x, start_pt._y);
current_mc.lineTo(current_mc._xmouse, current_mc._ymouse);
angle=Math.atan2(start_pt._y-current_mc._ymouse, start_pt._x-current_mc._xmouse);
var dest_pt = new Object();
dest_pt._x=20*Math.cos(angle-Math.PI/14)+current_mc._xmouse;
dest_pt._y=20*Math.sin(angle-Math.PI/14)+current_mc._ymouse;
current_mc.lineTo(dest_pt._x, dest_pt._y);
dest_pt._x=20*Math.cos(angle+Math.PI/14)+current_mc._xmouse;
dest_pt._y=20*Math.sin(angle+Math.PI/14)+current_mc._ymouse;
current_mc.moveTo(current_mc._xmouse, current_mc._ymouse);
current_mc.lineTo(dest_pt._x, dest_pt._y);
}
}
d.onPress = function() {
myListener.onMouseMove = drawArrow;
Mouse.addListener(myListener);
};
//画带尾巴的箭头
function drawArrowII() {
if (canDraw == true) {
current_mc.clear();
current_mc.lineStyle(1, 0x0000ff);
current_mc.moveTo(start_pt._x, start_pt._y);
current_mc.lineTo(current_mc._xmouse, current_mc._ymouse);
angle=Math.atan2(start_pt._y-current_mc._ymouse, start_pt._x-current_mc._xmouse);
var dest_pt = new Object();
dest_pt._x=20*Math.cos(angle-Math.PI/14)+current_mc._xmouse;
dest_pt._y=20*Math.sin(angle-Math.PI/14)+current_mc._ymouse;
current_mc.lineTo(dest_pt._x, dest_pt._y);
dest_pt._x=20*Math.cos(angle+Math.PI/14)+current_mc._xmouse;
dest_pt._y=20*Math.sin(angle+Math.PI/14)+current_mc._ymouse;
current_mc.moveTo(current_mc._xmouse, current_mc._ymouse);
current_mc.lineTo(dest_pt._x, dest_pt._y);
dest_pt._x=20*Math.cos(angle-Math.PI/14)+start_pt._x;
dest_pt._y=20*Math.sin(angle-Math.PI/14)+start_pt._y;
current_mc.moveTo(start_pt._x, start_pt._y);
current_mc.lineTo(dest_pt._x, dest_pt._y);
current_mc.lineTo(dest_pt._x, dest_pt._y);
}
}
e.onPress = function() {
myListener.onMouseMove = drawArrowII;
Mouse.addListener(myListener);
};
//画双箭头
function drawArrowIII() {
if (canDraw == true) {
current_mc.clear();
current_mc.lineStyle(1, 0x0000ff);
current_mc.moveTo(start_pt._x, start_pt._y);
current_mc.lineTo(current_mc._xmouse,current_mc._ymouse);
angle=Math.atan2(start_pt._y-current_mc._ymouse, start_pt._x-current_mc._xmouse);
var dest_pt = new Object();
dest_pt._x=20*Math.cos(angle-Math.PI/14)+current_mc._xmouse;
dest_pt._y=20*Math.sin(angle-Math.PI/14)+current_mc._ymouse;
current_mc.lineTo(dest_pt._x, dest_pt._y);
dest_pt._x=20*Math.cos(angle+Math.PI/14)+current_mc._xmouse;
dest_pt._y=20*Math.sin(angle+Math.PI/14)+current_mc._ymouse;
current_mc.moveTo(current_mc._xmouse, current_mc._ymouse);
current_mc.lineTo(dest_pt._x, dest_pt._y);
dest_pt._x=20*Math.cos(angle-Math.PI/14+Math.PI)+start_pt._x;
dest_pt._y=20*Math.sin(angle-Math.PI/14+Math.PI)+start_pt._y;
current_mc.moveTo(start_pt._x, start_pt._y);
current_mc.lineTo(dest_pt._x, dest_pt._y);
dest_pt._x=20*Math.cos(angle+Math.PI/14+Math.PI)+start_pt._x;
dest_pt._y=20*Math.sin(angle+Math.PI/14+Math.PI)+start_pt._y;
current_mc.moveTo(start_pt._x, start_pt._y);
current_mc.lineTo(dest_pt._x, dest_pt._y);
}
}
f.onPress = function() {
myListener.onMouseMove=drawArrowIII;
Mouse.addListener(myListener);
};
//画栯圆
function drawCircle() {
if (canDraw == true) {
current_mc.clear();
current_mc.lineStyle(1, 0x0000ff);
/* 这是我自己写的画圆程序
current_mc.moveTo(start_pt._x,(start_pt._y+current_mc._ymouse) / 2);
current_mc.curveTo(start_pt._x,start_pt._y,(start_pt._x+current_mc._xmouse) / 2, start_pt._y);
current_mc.curveTo(current_mc._xmouse,start_pt._y,current_mc._xmouse,(start_pt._y+ current_mc._ymouse) / 2);
current_mc.curveTo(current_mc._xmouse,current_mc._ymouse,(start_pt._x+current_mc._xmouse)/2,current_mc._ymouse);
current_mc.curveTo(start_pt._x,current_mc._ymouse,start_pt._x,(start_pt._y + current_mc._ymouse) / 2);*/
//drawCircle 网上抄来的画圆程序,
var dest_pt:Object = new Object();
a=(current_mc._xmouse-start_pt._x)/2;
b = (current_mc._ymouse-start_pt._y)/2;
c = a/9.238795E-001;
d = b/9.238795E-001;
var xa:Array = new Array();
var yb:Array = new Array();
for (i=0; i<8; i++) {
xa[i]=a*Math.cos(i*3.141593E+000/4)+a+start_pt._x;
yb[i]=b*Math.sin(i*3.141593E+000/4)+b+start_pt._y;
}
var xc:Array = new Array();
var yd:Array = new Array();
for (i=0; i<8; i++) {
xc[i]=c*Math.cos((i/4+1.250000E-001)*3.141593E+000)+a+start_pt._x;
yd[i]=d*Math.sin((i/4+1.250000E-001)*3.141593E+000)+b+start_pt._y;
}
with (current_mc) {
moveTo(xa[0], yb[0]);
curveTo(xc[0], yd[0], xa[1], yb[1]);
curveTo(xc[1], yd[1], xa[2], yb[2]);
curveTo(xc[2], yd[2], xa[3], yb[3]);
curveTo(xc[3], yd[3], xa[4], yb[4]);
curveTo(xc[4], yd[4], xa[5], yb[5]);
curveTo(xc[5], yd[5], xa[6], yb[6]);
curveTo(xc[6], yd[6], xa[7], yb[7]);
curveTo(xc[7], yd[7], xa[0], yb[0]);
}
}
}
g.onPress = function() {
myListener.onMouseMove = drawCircle;
Mouse.addListener(myListener);
};

 

 
课件115学培吧(湖北金鹰)欢迎您!永久免费服务网址:http://www.kj115.com
   
 

学员众多的FLASH课件学习基地,成万免费FLASH课件制作教程在线学习,还有免费内容课件教程、视频教程、课件技巧、课件探讨、课件欣赏、课件展示、实用教程、课件界面、课件脚本、课件游戏、课件下载、课件封面、课文内容图片、课文人物图片库、课件素材、图片素材、声音素材、动物素材、背景图片、背景资料、背景边框、课件顶栏图片素材、Dreamweaver教程、Dreamweaver网页课件教程、软件下载。承接学习和培训,承接课件订制,课件修改等所有课件相关服务。
本站主要业务:┃flash课件制作视频教程培训┃承接全国竞赛flash课件┃论文代写代发┃代办课件国家级获奖证书┃
联系:QQ:444860709 手机:13339817386


 
 

业务办理
鄂ICP备08005724号