• 技术文章 >web前端 >H5教程

    HTML5 椭圆(蛋)运动的小球的代码实例

    黄舟黄舟2017-03-03 16:52:50原创1201
    椭圆与椭圆运动:

     
                 var canvas=document.getElementById("ballBroad");
     
                var context=canvas.getContext("2d");
                //角度
                var angle=0;
                //角度步长
                var speedAngle=0.1;
               
                //刷新频率
                var frames=1000/60;
                //球对象
                var Ball=function(radius,color,x,y)
                {
                    this.radius=radius;
                    this.color=color;
                    this.x=x;
                    this.y=y;
                }
                //中心点
                var centerX=canvas.width/2;
                var centerY=canvas.height/2;
                //存放小球走过的点
                var points=[];
               
               
                //创建一个球
                var newBall=new Ball(20,"#ff000",0,centerY);
                
                //在画板中间绘制球
                //DrawBall(newBall);
                //存放
                //points.push({x:newBall.x,y:newBall.y});
               
               
                //让球平稳的动起来
                var drawAsync = eval(Jscex.compile("async", function () {
                            while(true)
                            {
                                newBall.y=centerY+Math.sin(angle)*(centerY/2+20);
                                newBall.x=centerX+Math.cos(angle)*centerX;
                                angle+=speedAngle;
                                DrawBall(newBall);
                                //存放小球的点
                                points.push({x:newBall.x,y:newBall.y});
                               
                                //绘制线条
                                DrawBallLine();
                                //画蛋疼
                                DrawText("蛋疼",centerX-50,centerY);
                                //每秒60次
                                $await(Jscex.Async.sleep(frames));
                               
                            }   
                           
                                                                       
                }));
               drawAsync().start();
              
               function DrawBall(ball)
               {
                   context.clearRect(0, 0, canvas.width, canvas.height);
                   //在画板中间绘制球
                context.beginPath();
                context.arc(ball.x, ball.y, newBall.radius, 0, 2 * Math.PI, false);
                context.fillStyle = ball.color;
                context.fill();
                context.lineWidth = 5;
                context.strokeStyle = "#ff0000";
                context.stroke();
               }
               //绘制小球的移动轨迹
               function DrawBallLine()
               {
                        for(var i=0;i<points.length;i++)
                        {
                            if(i==0)
                            {
                                context.moveTo(points[i].x,points[i].y)
                            }
                            context.lineTo(points[i].x,points[i].y)
                            context.stroke();
                        }
               }
               //写蛋疼
               function DrawText(text,x,y)
               {
                    context.font = "40pt Arial";
                 context.fillText(text, x, y);
               }

    以上就是HTML5 椭圆(蛋)运动的小球的代码实例的内容,更多相关内容请关注PHP中文网(m.sbmmt.com)!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:HTML5 ,椭圆运动
    上一篇:大势所趋 HTML5成为Web开发者最关心的技术 下一篇:HTML5的五大优秀功能介绍
    PHP编程就业班

    相关文章推荐

    • 深入解析asp.net中mvc4自定义404页面(分享)• html5离线存储有哪些• 在今天,利用 HTML5 开发和发布大型跨平台网游,可行性如何?要解决哪些问题?• 避免常见的六种HTML5错误用法 (5-6)• phonegap使用方法介绍(八)操作数据库

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网