会跳舞的骨骼小人
2008-04-02 11:00:44来源:互联网 阅读 ()
前不久,在一本讲Matlab的书上看到一个例子,用绘图函数画一个小人。
效果如下:
就像下面这样的:
既然这个小人能够画出来,那么可否让他动呢,我想这个很显然是没有问题的,只要把的身体的各个组成部分分解开就能够了。
组成这个小人的只有两种组件成分,一个是圆形,一个是线条.
代码分别如下:
class skelectonCircle
{
private var x:Number=0;
private var y:Number=0;
private var r:Number=0;
private var lineStyleNum:Number=0x3399FF;
static private var mId:Number=0;
private var mMcHolder:MovieClip;
public function skelectonCircle(inX:Number,inY:Number,inR:Number,inStyle:Number)
{
init(inX,inY,inR,inStyle);
}
public function init(inX:Number,inY:Number,inR:Number,inStyle:Number):Void
{
reset(inX,inY,inR,inStyle);
mMcHolder=_root.createEmptyMovieClip("__SKELETONC__" mId,_root.getNextHighestDepth());
mId ;
}
public function reset(inX:Number,inY:Number,inR:Number,inStyle:Number):Void
{
x=inX;
y=inY;
r=inR;
if(inStyle!=null||inStyle!=undefined)lineStyleNum=0x3399FF;
else lineStyleNum=inStyle;
}
public function draw():Void
{
//draw a cicle:
mMcHolder.lineStyle(1,lineStyleNum,100);
//beginFill(0x6666FF);
//move to the circle’s center.
mMcHolder.moveTo(x r,y);
var fi:Number=0;
var cX:Number=0;
var cY:Number=0;
var detaFi:Number=0.1;
while(fi<=2*Math.PI 0.2)
{
cX=x r*Math.cos(fi);
cY=y r*Math.sin(fi);
mMcHolder.lineTo(cX,cY);
fi =detaFi;
}
//endFill();
}
public function clean():Void
{
mMcHolder.clear();
}
public function toString():String
{
var reString:String=new String();
reString=String("x:" String(x) "y:" String(y) "r:" String(r) "\n");
return reString;
}
public function finallize():Void
{
mMcHolder.removeMovieClip();
mMcHolder=null;
delete this;
}
}
class skelectonLine
{
private var x1:Number=0;
private var y1:Number=0;
private var x2:Number=0;
private var y2:Number=0;
private var lineStyleNum:Number=0x3399FF;
static private var mId:Number=0;
private var mMcHolder:MovieClip;
//static private var thisP:Object;
public function skelectonCircle(inX1:Number,inY1:Number,inX2:Number,inY2:Number,inStyle:Number)
{
init(inX1,inY1,inX2,inY2,inStyle);
}
public function init(inX1:Number,inY1:Number,inX2:Number,inY2:Number,inStyle:Number):Void
{
reset(inX1,inY1,inX2,inY2,inStyle);
mMcHolder=_root.createEmptyMovieClip("__SKELETONL__" mId,_root.getNextHighestDepth());
mId ;
//thisP=this;
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
上一篇: 创建图层和图层文档夹
下一篇: Flash中MP3导入及同步歌词的方法
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