as3画饼图


上大饼图 //PS:大饼可以鼠标点击看效果
代码如下:
/**
* @class:DrawPieGraph(画饼状图)
* @author:ycccc8202
* @date:2007.8.16
* @example:
* import com.ycccc.Graphics.*;
* var dataList:Array=[10,10,10,100,10,10,10,100];
* var pie:DrawPieGraph=new DrawPieGraph(200,200,150,90,15,dataList,[0xFF0F00,0xFF6600,0xFF9E01,0xFCD202,0xF8FF01,0xB0DE09,0x04D215,0x0D8ECF],.7);
* addChild(sprite);
*/
package com.ycccc.Graphics{
import fl.transitions.Tween;
import fl.transitions.easing.*;
import fl.transitions.TweenEvent;
import flash.display.MovieClip;
import flash.display.Sprite;
import flash.display.Shape;
import flash.display.Graphics;
import flash.events.MouseEvent;
public class DrawPieGraph extends MovieClip {
  
  //存放shape对象
  private var __contain:Object;
  //设置角度从-90开始
  private var R:int=-90;
  private var D:uint=20;
  private var _shape:Shape;
  //初始饼图的圆心位置
  private var _x0:Number;
  private var _y0:Number;
  //椭圆饼图的长轴与短轴长度
  private var _a:Number;
  private var _b:Number;
  //饼图的厚度
  private var _h:Number;
  //透明度
  private var _alpha:Number
  //数据列表
  private var _dataList:Array;
  private var _colorList:Array;
  private var _angleList:Array;
  private var _depthList:Array;
  //
  /**
  *@param:x0......>圆心x坐标
  *@param:y0......>圆心y坐标
  *@param:a......>长轴
  *@param:b......>短轴
  *@param:h......>厚度
  *@param:dataList......>数据列表
  *@param:dataList......>颜色列表
  *@alpha:Number......>透明度,默认为1.0
  */
  public function DrawPieGraph(x0:Number,y0:Number,a:Number,b:Number,h:Number,dataList:Array,colorList:Array,alpha:Number=1.0) {
   _x0=x0;
   _y0=y0;
   _a=a;
   _b=b;
   _h=h;
   _alpha=alpha
   
   _dataList=dataList;
   _colorList=colorList;
   setAngleList();
   drawPie();
   setDepths();
  }
  private function setAngleList():void {
   _angleList=[];
   var totalData:int;
   var len:uint=_dataList.length;
   for (var j:uint=0; j 
本文转自:http://www.5uflash.com/flashjiaocheng/Flash-as3-jiaocheng/1956.html

你可能感兴趣的:(html,Flash,J#)