zoukankan      html  css  js  c++  java
  • HTML5 Canvas【所见===所得】编程工具正式发布

    + -

    使用指南

    基本使用:

    var c=document.getElementById("myCanvas");
    
    var cxt=c.getContext("2d");
    
    cxt.fillStyle="#FF0000";
    
    cxt.beginPath();
    
    cxt.arc(70,18,15,0,Math.PI*2,true);
    
    cxt.closePath();
    
    cxt.fill();

    拷贝至编辑器并修改代码试一试!!

    动画支持:

    var canvas = document.getElementById("myCanvas");
    
    var ctx = canvas.getContext("2d");
    
    var cyc = 100;
    
    ctx.fillStyle = "#000";
    
    var loadingPosition = new Vector2(200, 200);
    
    var loadingRadius = 50;
    
    var intervalAngle = 45;
    
    var bigCircleRadius = 8;
    
    var bigCirclePosition = new Vector2(200, 150);
    
    function drawLoading() {
    
        for (var i = 0; i < 11; i++) {
    
            ctx.beginPath();
    
            ctx.arc(bigCirclePosition.x, bigCirclePosition.y, bigCircleRadius, 0, Math.PI * 2, true);
    
            ctx.closePath();
    
            ctx.fill();
    
            bigCircleRadius -= 1;
    
            bigCirclePosition.rotateSelf(loadingPosition, 30);
    
        }
    
    }
    
    CANVASLOOP=setInterval(function () {
    
        bigCircleRadius = 10;
    
        ctx.clearRect(0, 0, canvas.width, canvas.height);
    
        drawLoading();
    
    }, 50);

    拷贝至编辑器并修改代码试一试!!

    这里值得注意的是,我约定好了loop的名称叫做:CANVASLOOP。一定要使用CANVASLOOP,不然的话在IE下会出现loop叠加混乱的问题。

    代码支持缩放功能(重新打开浏览器会记住上一次的font-size)!试一试右上角的+号和-号!!!要获得很好的体验,请在浏览器F11全屏模式调试编辑代码。

    image

    HAVE FUN!!

    Happy Fun Coding!

  • 相关阅读:
    稀疏数组和队列
    JVM中的GC算法,JVM参数,垃圾收集器分类
    Java虚拟机OOM问题和四大引用问题简述
    DLC双端锁,CAS,ABA问题
    CountDownLanuch,CyclicBarrier,Semaphore,Lock问题
    Callable,阻塞队列,线程池问题
    Android View的绘制机制前世今生---前世
    Android触摸事件传递机制,这一篇就够了
    flutter 与 android 混合开发
    Git 快速极简图文教程 第一篇
  • 原文地址:https://www.cnblogs.com/iamzhanglei/p/2420190.html
Copyright © 2011-2022 走看看