一个用纯AS写的正态曲线画法
作者 佚名技术
来源 服务器技术
浏览
发布时间 2012-07-11
["v"+i].text = alpha[i]; } } }; //======写标题========// headline = function (x, y, txt, dx) { _root.createTextField("title", 900, x, y, 0, 0); title.autoSize = true; title.selectable = false; title.text = txt; mytxf = new TextFormat();//创建一个文本格式对象; mytxf.size = dx;//太小 mytxf.color = 0xff0000;//颜色 mytxf.underline = true;//下划线 title.setTextFormat(mytxf); }; //=====开始画线函数====// startDraw = function () { m = Number(v1.text); n = Number(v3.text);//把v1,v3文本框中的值给m,n; x = -200; _root.createEmptyMovieClip("xian", 300); xian.moveTo(-200, 100); xian._x = 275; xian._y = 193; _root.onEnterFrame = function() { a = -(100/(Math.sqrt(2*Math.PI)*25*n))*Math.exp((-(Math.pow((x-100*m), 2)))/ (2*Math.pow(25*n, 2)));//这个为正态曲线公式,根椐这个公式来画线; with (xian) { lineStyle(2, 0xE001E0, 100); lineTo(x, 50*a+100);//画线 if (x<=200) {//画线范围 x += 3;//3为画线速度,建议设小一点,fps设大一点,这样使画出的线更平滑; } } }; _root.btn1.enabled = 1;//暂停按钮可用 _root.btn5.enabled = 1;//继续按钮可用 }; //========继续画线========// continueDraw = function () { xian.moveTo(x-3, 50*a+100);//x,a继承上面函数的值,从当前位置画 _root.onEnterFrame = function() { a = -(100/(Math.sqrt(2*Math.PI)*25*n))*Math.exp((-(Math.pow((x-100*m), 2)))/ (2*Math.pow(25*n, 2))); with (xian) { lineStyle(2, 0xE001E0, 100); lineTo(x, 50*a+100); if (x<=200) { x += 3;//同上 } } }; }; //========暂停和清除函数==========// pause_clear = function (k) {//不为0时为暂停,为0时为清除; _root.onEnterFrame = function() { x += 0;//x值不增加 }; if (k) { xian.clear();//清除xian _root.btn1.enabled = 0; _root.btn5.enabled = 0; } }; _root.onLoad = function() { headline(230, 20, "正态曲线", 20); for (i=0; i<3; i++) { _root.createEmptyMovieClip("frame"+i, 400+i); } display(_root.frame0, 40, 55, 470, 270, "显示", 0xE6E1CC); display(_root.frame1, 40, 350, 160, 40, "变量", 0xDCE6ED); display(_root.frame2, 220, 350, 290, 40, "操作", 0xDCE6ED); coordinate(275, 295); inputBoxs(50, 365); _root.attachMovie("formula", "formula", 500); formula.useHandCursor = false;//鼠标不变手形 formula._x = 42; formula._y = 57; for (i=0; i<6; i++) { _root.createEmptyMovieClip("btn"+i, 700+i); CommandButton(_root["btn"+i], mytxt[i], 1);//用循环来画按钮; _root["btn"+i]._x = 230+55*i; _root["btn"+i]._y = 360; _root.btn5._x = 230+55*1; _root.btn5._y = 360; _root.btn5._visible = 0;//设置按钮位置,并把暂停和继续按钮放在一起;且开始时继续不可见 } _root.btn1.enabled = 0;//开始时暂停不可用 }; _root.onEnterFrame = function() {//以下为按上每个按钮的动作; _root.btn0.onPress = function() { CommandButton(_root.btn0, mytxt[0], 0);//按鼠标时按钮凹下; _root.btn1._visible = 1;//暂停按钮可见 _root.btn5._visible = 0;继续按钮不可见 startDraw();//调用开始画线函数; }; _root.btn0.onRelease = function() { CommandButton(_root.btn0, mytxt[0], 1);//松开鼠标时按钮凸起; }; _root.btn1.onPress = function() { CommandButton(_root.btn1, mytxt[1], 0); pause_clear(0);//调用暂停 }; _root.btn1.onRelease = function() { CommandButton(_root.btn1, mytxt[1], 1); _root.btn1._visible = 0; _root.btn5._visible = 1;//按了暂停按钮时,变成继续按钮; }; _root.btn2.onPress = function() { CommandButton(_root.btn2, mytxt[2] |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |
你可能对下面的文章感兴趣
上一篇: as 1.0 向 as 2.0迁移下一篇: 飘雪的两种制作方法大对比
关于一个用纯AS写的正态曲线画法的所有评论