用FlashAS实现画图的周详讲解(6)
2008-04-02 11:06:20来源:互联网 阅读 ()
leftAccel = (leftGoal-left)*rate;
leftVeloc = leftAccel;
leftVeloc *= decay;
left = leftVeloc;
rightAccel = (rightGoal-right)*rate;
rightVeloc = rightAccel;
rightVeloc *= decay;right = rightVeloc;
topAccel = (topGoal-top)*rate;
topVeloc = topAccel;
topVeloc *= decay;top = topVeloc;
for (var i = 0; i<shapes.length; i ) {
with (_root["flame" i]) {
clear();colors = [0xFCE39C, 0xF4AC35];
alphas = [_root["flame" i].fade,
_root["flame" i].fade-20];
ratios = [70, 255];
matrix = {matrixType:"box", x:-50,
y:50, w:100, h:200, r:0};
beginGradientFill("radial",colors,
alphas, ratios, matrix);
lineStyle(1, 0x000000, 0);
moveTo(0-left right,0-top-_root
["flame" i].offset*2);
curveTo(40 _root["flame" i].
offset right, 180,0, 200);
curveTo(-40-_root["flame" i].
offset-left, 180, 0-left right,
0-top-_root["flame" i].offset*2);
endFill();
}
} with (_root.heat) {
clear();colors = [0x986932, 0x986932];
alphas = [70, 0];
ratios = [20, 255];
matrix = {matrixType:"box",
x:-20-left/2, y:120-top, w:40 right/2,h:120 top, r:0
};
beginGradientFill("radial",
colors, alphas, ratios, matrix);
lineStyle(1,0x000000, 0);
moveTo(-50, 0);
lineTo(50, 0);
lineTo(50, 200);
lineTo(-50, 200);
lineTo(-50,0);
endFill();
}
duplicateMovieClip(
_root["flame" (shapes.length-1)],
"shapeMask",shapes.length 1);
heat.setMask(shapeMask);
};
十四面体代码:
_root.onLoad = function() {
c1 = 200;
c2 = 250;
c3 = 50;
c4 = 10;
};
_root.onEnterFrame = function() {
aa = 100;
bb = 100;
// 控制横向
cc = _root.right_s3.getvalue();
dd = _root.right_s4.getvalue();
ee = _root.right_s5.getvalue();
ff = _root.right_s6.getvalue();
gg = _root.right_s7.getvalue();
daxiao1 = aa;
daxiao2 = bb;
sutu = cc;
zhox = ee;
bianshu1 = dd;
// 控制速度和方向
_root.createEmptyMovieClip("triangle", 1);
lineStyle(0, 0x000000, 100);
with (_root.triangle) {
// 画虚线
a1 = daxiao2*math.sin((n 1*60)*math.pi/180);
b1 = daxiao1*math.cos((n 1*60)*math.pi/180);
a2 = daxiao2*math.sin((n (i 1)*60)*math.pi/180);
b2 = daxiao1*math.cos((n (i 1)*60)*math.pi/180);
lineStyle(1, 0xff0000,100);
// 中面的6个点
moveTo(daxiao2*math.sin((n 1*60)
*math.pi/180) c1,daxiao1*math.cos
((n 1*60)*math.pi/180) c2-gg-c3);
lineTo(daxiao2*math.sin((n 6*60)
*math.pi/180) c1,daxiao1*math.cos
((n 6*60)*math.pi/180) c2-gg-c3);
moveTo(daxiao2*math.sin((n 3*60)
*math.pi/180) c1,daxiao1*math.cos
((n 3*60)*math.pi/180) c2-gg-c3);
lineTo(daxiao2*math.sin((n 2*60)
*math.pi/180) c1,daxiao1*math.cos
((n 2*60)*math.pi/180) c2-gg-c3);
moveTo(daxiao2*math.sin((n 5*60)
*math.pi/180) c1,daxiao1*math.cos
((n 5*60)*math.pi/180) c2-gg-c3);
lineTo(daxiao2*math.sin((n 4*60)
*math.pi/180) c1,daxiao1*math.cos
((n 4*60)*math.pi/180) c2-gg-c3);
// 连上下的12个点
moveTo(daxiao2*math.sin((n 1*60)
*math.pi/180) c1,daxiao1*math.cos
((n 1*60)*math.pi/180) c2-gg);
lineTo(daxiao2*math.sin((n 2*60)
*math.pi/180) c1,daxiao1*math.cos
((n 2*60)*math.pi/180) c2-gg);
moveTo(daxiao2*math.sin((n 3*60)
*math.pi/180) c1,daxiao1*math.cos
((n 3*60)*math.pi/180) c2-gg);
lineTo(daxiao2*math.sin((n 4*60)
*math.pi/180) c1,daxiao1*math.cos
((n 4*60)*math.pi/180) c2-gg);
moveTo(daxiao2*math.sin((n 5*60)
*math.pi/180) c1,daxiao1*math.cos
((n 5*60)*math.pi/180) c2-gg);
lineTo(daxiao2*math.sin((n 6*60)
*math.pi/180) c1,daxiao1*math.cos
((n 6*60)*math.pi/180) c2-gg);
// 中面的6个点,但连线不相同,注意
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
下一篇: 新浪/闪客帝国图片效果解析
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash
