| AI教程 | Flash教程 | Fireworks教程 | Painter教程 | CDR教程 | CAD教程 | 3Dmax教程 | Maya教程 | 摄影技巧 | 广告文案 | LOGO案例 | PS教程

FLASH制作饼状统计图

闲来无事,做着完,效率不高,功能也不好

code
//绘制扇形统计图
import fj.graphics.*;
import fj.seach.JToolTip;
import fj.math.JDegree;
test = JGDI.getInstance();
test.target = _root;
var a = [30, 30, 15, 10, 15];
var b = ["第一季度", "第二季度", "第三季度", "第四季度", "第五季度"];
drawing(a);
delete a;
function trans(a:Array) {
//把数据进行转换
var l = a.length;
var t = 0;
for (var i = 0; i<l; i++) {
t += a[i];
}
for (var i = 0; i<l; i++) {
a[i] = a[i]*360/t;
}
}
function drawing(a) {
//绘图函数
trans(a);
var c = [];
var l = a.length;
var t1 = 0;
var t2 = 0;
for (var i = 0; i<l; i++) {
t2 += a[i];
t1 = t2-a[i];
c[i] = (t1+t2)/2;
var temp = this.createEmptyMovieClip("draw"+i, i);
test.target = temp;
test.fillSector(new JSolidBrush(random(0xff9900), 20), 200, 150, 150, 150, t1, t2);
test.drawSector(new JPen(2, 0xff0000, 60), 200, 150, 150, 150, t1, t2);
new JToolTip().setToolTip(temp, b[i]+":"+Math.round(a[i]*100/360)+"%");
temp.i = i;
temp.x = this._x;
temp.y = this._y;
temp.onEnterFrame = function() {
if (this.hitTest(_xmouse, _ymouse, true)) {
var x = JDegree.cosD(c[this.i])*20;
var y = JDegree.sinD(c[this.i])*20;
this._x = this.x+x;
this._y = this.y+y;
} else {
this._x = this.x;
this._y = this.y;
}
};
}
}

主题测试文章,只做测试使用。发布者:绘画吧,转转请注明出处:http://www.huitu8.com/shejijiaocheng/Flashjiaocheng/20190920/96930.html



联系我们

在线咨询:点击这里给我发消息

邮件: