• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com专业计算机教程网站
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure
您的位置:首页 > 网页设计 >html5 > HTML5如何绘制动画?(代码实例)

HTML5如何绘制动画?(代码实例)

作者:匿名 字体:[增加 减小] 来源:互联网 时间:2018-12-03

本文主要包含HTML5绘制,动画等相关知识,匿名希望在学习及工作中可以帮助到您
本篇文章给大家带来的内容是关于HTML5如何绘制动画?(代码实例) ,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

虽然canvas的API并未直接提供支持动画的方法,但就其本身而言,在canvas中实现动画效果也很简单:只需要持续的更新并重绘画布就行了。这种持续的更新并重绘就叫做动画循环,它是所有动画的核心逻辑。

在canvas中实现动画,首先需要初始化画布上的对象。然后,启动一个动画循环来更新画布、清除画布、重绘画布,再请求下一个新的动画帧。

animinate.png

接下来通过一个简单实例,来看看canvas动画的实现过程。该实例以动画的方式,实现一个旋转的八卦图。代码如下:

function clear() {  
   context.clearRect(0, 0, canvas.width, canvas.height);
}
function rotate() {
   context.rotate(Math.PI/30);  // 每分钟旋转一周
}
function draw () {
    // 绘制白色半圆
   context.beginPath();
   context.arc(0, 0, 80, 1.5*Math.PI, Math.PI/2, false);
   context.fillStyle = "white";
   context.closePath();
   context.fill();
           
   // 绘制黑色半圆
   context.beginPath();
   context.arc(0, 0, 80, Math.PI/2, 1.5*Math.PI, false);
   context.fillStyle = "black";
   context.closePath();
   context.fill();
           
    // 绘制黑色小圆
    context.beginPath();
    context.arc(0, 40, 40, 0, Math.PI*2, true);
    context.fillStyle = "black";
    context.closePath();
    context.fill();
           
    // 绘制白色小圆
    context.beginPath();
    context.arc(0, -40, 40, 0, Math.PI*2, true);
    context.fillStyle = "white";
    context.closePath();
    context.fill();
           
    // 绘制白色小圆心
    context.beginPath();
    context.arc(0, -40, 5, 0, Math.PI*2, true);
    context.fillStyle = "black";
    context.closePath();
    context.fill();
           
    // 绘制黑色小圆心
    context.beginPath();
    context.arc(0, 40, 5, 0, Math.PI*2, true);
    context.fillStyle = "white";
    context.closePath();
    context.fill();
}
function drawStage() {
     rotate();  // 更新
     clear();   // 清除
     draw();    // 重绘
}
window.onload = function(){
    canvas = document.getElementById('canvas');
    context = canvas.getContext('2d');
          
    context.translate(canvas.width/2, canvas.height/2);
          
    setInterval(drawStage, 100);
};

上述代码,当页面加载完成后,首先进行初始化,然后调用setInterval(drawStage, 100)方法启动动画循环,在动画循环中,每隔100ms会调用一次drawStage ()函数,来执行更新画布、清除画布、重绘画布的操作,以实现动画效果。运行结果如图 4?37 所示:

当然,这里只是为了演示实现动画的原理而已,所以实例相对简单。其实,Canvas中的动画可以很简单,也可以很复杂。不管简单还是复杂,其基本原理是完全相同的。

以上就是对HTML5如何绘制动画?(代码实例) 的全部介绍,如果您想了解更多有关Html5视频教程,请关注微课江湖。

以上就是HTML5如何绘制动画?(代码实例)的详细内容,更多请关注微课江湖其它相关文章!

您可能想查找下面的文章:

  • HTML5如何绘制动画?(代码实例)

相关文章

  • 2018-12-03H5中indexedDB 数据库的使用方法详解
  • 2018-12-03怎样做出H5响应式网页设计
  • 2017-08-06HTML5 创建canvas元素示例代码
  • 2018-12-03html5中当鼠标滚轮正在被滚动时运行的脚本的事件onmousewheel
  • 2018-12-03Html5页面二次分享的实现
  • 2018-12-03绝对零基础,选择做 HTML5 还是 iOS 应用?
  • 2018-12-03HTML5 video播放器全屏(fullScreen)方法实例_html5教程技巧
  • 2017-08-06HTML5的语法变化介绍
  • 2018-12-03h5实现文本框提示语的代码实例
  • 2018-12-03突破canvas语法限制 让他支持链式语法_html5教程技巧

文章分类

  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure

最近更新的内容

    • Less与Sass框架如何使用?
    • 总结Uploadify使用方法
    • 使用HTML5的Notification API制作web通知的教程
    • 关于知乎回答问题编辑框用Ctrl+V 粘贴图片是如何实现的详解
    • HTML5 placeholder属性详解
    • 用html5的canvas画布绘制贝塞尔曲线完整代码_html5教程技巧
    • HTML5 之2__列表标记
    • HTML5单页面手势滑屏切换原理
    • HTML5实战与剖析之一行一行看移动端结构
    • 详解HTML5通讯录获取指定多个人的信息

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有