文章标题

利用canvas制作运动小球

这里写代码片

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>小球动起来</title>
</head>
<body>
<canvas id="canvas" style="display: block;border: 1px solid aquamarine;margin: 50px auto;"></canvas>
<script>

    var ball={x:512,y:100,r:20,g:2,vx:-4,vy:-10,color:"#ff00ff"};  //g -加速度越小越慢 //vx-vy-在X.Y轴上的速度 vx-4向左边以抛物线运动//vy-10 上抛

    var canvas;
    window.onload=function () {
        canvas=document.getElementById("canvas");
        canvas.width="1024";
        canvas.height="768";

        var context=canvas.getContext("2d");
        setInterval(function () {
            render(context);  //render就是渲染的意思。
            update();

        },50)


    };

    function update() {    //对小球运动控制
        ball.x+=ball.vx;
        ball.y+=ball.vy;
        ball.vy+=ball.g;  //  +重力加速度

        if (ball.y>=768-ball.r){   //碰撞检测
            ball.y=768-ball.r;  //第一个位置
//            ball.vy=-ball.vy;  //=相反的速度 回到原来的高度  /下边缘
            ball.vy=-ball.vy*0.5;  //每次损失0.5

        }

    }

    function render(cxt) {

        cxt.clearRect(0,0,cxt.canvas.width,cxt.canvas.height);

        cxt.fillStyle=ball.color;
        cxt.beginPath();
        cxt.arc(ball.x,ball.y,ball.r,0,2*Math.PI);
        cxt.closePath();
        cxt.fill();




    }
</script>

</body>
</html>

虽然每次写代码理解代码都要花很长的时间 但是 当效果实现出来的那一刻
心是愉悦的 觉得在辛苦也值了
为了你的梦想
加油!
I believe you can

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值