Canvas制作旋转的太极的示例


Posted in HTML / CSS onMarch 09, 2018

前言

好久没动canvas了,今下午突然想回顾一下,就写了个旋转的太极,哈哈,蛮好玩的,在这里就将自己写的过程展示出来,旋转使用的css实现的,没有用canvas自己的,希望大佬们不要吐槽。

css

body{
    background: #ddd;
}
#canvas{
    position: absolute;
    left: 40%;
    top: 30%;
    -webkit-transform: translate(-50%,-50%);
    -moz-transform: translate(-50%,-50%);
    -ms-transform: translate(-50%,-50%);
    -o-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
    -webkit-animation: testAnimate 3s linear infinite;
    -o-animation: testAnimate 3s linear infinite;
    animation: testAnimate 3s linear infinite;
}
@keyframes testAnimate {
    from {
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
    }
    to {
        -webkit-transform: rotate(360deg);
        -moz-transform: rotate(360deg);
        -ms-transform: rotate(360deg);
        -o-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}

html

<body>
    <canvas id="canvas" width="500" height="500"></canvas>
</body>

js

let ctx = document
    .getElementById("canvas")
    .getContext("2d");
// left-black-big
ctx.beginPath();
ctx.fillStyle = "#000";
ctx.arc(250,250,200,Math.PI/2,Math.PI*1.5,false);
ctx.closePath();
ctx.fill();
// right-white-big
ctx.beginPath();
ctx.fillStyle = "#fff";
ctx.arc(250,250,200,Math.PI/2,Math.PI*1.5,true);
ctx.closePath();
ctx.fill();
// top-black-middle
ctx.beginPath();
ctx.fillStyle = "#000";
ctx.arc(250,150,100,Math.PI/2,Math.PI*1.5,true);
ctx.closePath();
ctx.fill();
// bottom-white-middle
ctx.beginPath();
ctx.fillStyle = "#fff";
ctx.arc(250,350,100,Math.PI/2,Math.PI*1.5,false);
ctx.closePath();
ctx.fill();
// top-white-small
ctx.beginPath();
ctx.fillStyle = "#fff";
ctx.arc(250,150,25,0,Math.PI*2);
ctx.closePath();
ctx.fill();
// bottom-black-small
ctx.beginPath();
ctx.fillStyle = "#000";
ctx.arc(250,350,25,0,Math.PI*2);
ctx.closePath();
ctx.fill();

效果

Canvas制作旋转的太极的示例

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

HTML / CSS 相关文章推荐
CSS3实现简易版的刮刮乐效果
Sep 27 HTML / CSS
CSS3的一个简单导航栏实现
Aug 03 HTML / CSS
css 元素选择器的简单实例
May 23 HTML / CSS
详解如何在css3打包后自动追加前缀插件:autoprefixer
Dec 18 HTML / CSS
html5 touch事件实现触屏页面上下滑动(二)
Mar 10 HTML / CSS
仿CSDN Blog返回页面顶部功能实现原理及代码
Jun 30 HTML / CSS
html5中svg canvas和图片之间相互转化思路代码
Jan 24 HTML / CSS
AmazeUI 平滑滚动效果的示例代码
Aug 20 HTML / CSS
HTML5逐步分析实现拖放功能的方法
Sep 30 HTML / CSS
html2 canvas svg不能识别的解决方案
Jun 03 HTML / CSS
纯CSS3实现div按照顺序出入效果
Jul 15 HTML / CSS
CSS list-style-type属性使用方法
May 21 HTML / CSS
详解px单位html5响应式方案
Mar 08 #HTML / CSS
html5开发三八女王节表白神器
Mar 07 #HTML / CSS
使用HTML5和CSS3制作一个模态框的示例
Mar 07 #HTML / CSS
Canvas制作的下雨动画的示例
Mar 06 #HTML / CSS
html2canvas把div保存图片高清图的方法示例
Mar 05 #HTML / CSS
HTML5页面直接调用百度地图API获取当前位置直接导航目的地的实现代码
Mar 02 #HTML / CSS
基于MUI框架使用HTML5实现的二维码扫描功能
Mar 01 #HTML / CSS
You might like
世界咖啡生产者论坛呼吁:需要立即就咖啡价格采取认真行动
2021/03/06 咖啡文化
php将数据库中所有内容生成静态html文档的代码
2010/04/12 PHP
php设计模式 DAO(数据访问对象模式)
2011/06/26 PHP
本地机apache配置基于域名的虚拟主机详解
2013/08/10 PHP
php事件驱动化设计详解
2016/11/10 PHP
PHP两种实现无级递归分类的方法
2017/03/02 PHP
PHP实现生成模糊图片的方法示例
2017/12/21 PHP
php操作redis常见方法示例【key与value操作】
2020/04/14 PHP
收藏Javascript中常用的55个经典技巧
2007/08/12 Javascript
JavaScript 入门基础知识 想学习js的朋友可以参考下
2009/12/26 Javascript
node.js解决获取图片真实文件类型的问题
2014/12/20 Javascript
Javascript中使用A标签获取当前目录的绝对路径方法
2015/03/02 Javascript
使用JavaScript实现旋转的彩圈特效
2015/06/23 Javascript
js判断鼠标位置是否在某个div中的方法
2016/02/26 Javascript
微信小程序 video详解及简单实例
2017/01/16 Javascript
详解用vue.js和laravel实现微信授权登陆
2017/06/23 Javascript
SpringMVC简单整合Angular2的示例
2017/07/31 Javascript
用Vue.extend构建消息提示组件的方法实例
2017/08/08 Javascript
微信小程序iOS下拉白屏晃动问题解决方案
2019/10/12 Javascript
如何通过JS实现日历简单算法
2020/10/14 Javascript
bat和python批量重命名文件的实现代码
2016/05/19 Python
Python实现监控Nginx配置文件的不同并发送邮件报警功能示例
2019/02/26 Python
Python 模拟动态产生字母验证码图片功能
2019/12/24 Python
pytorch 求网络模型参数实例
2019/12/30 Python
科茨沃尔德家居商店:Scotts of Stow
2018/06/29 全球购物
Otticanet美国:最顶尖的世界名牌眼镜, 能得到打折季的价格
2019/03/10 全球购物
模具数控专业自荐信
2014/01/27 职场文书
创业计划书的主要内容有哪些
2014/01/29 职场文书
群众路线剖析材料(四风问题)
2014/10/08 职场文书
师德师风建设整改措施思想汇报
2014/10/11 职场文书
武当山导游词
2015/02/03 职场文书
应急管理工作总结2015
2015/05/04 职场文书
幼儿园校车安全责任书
2015/05/08 职场文书
Web前端:CSS最强总结 附详细代码
2021/03/31 HTML / CSS
MySQL中的全表扫描和索引树扫描
2022/05/15 MySQL
Springboot集成kafka高级应用实战分享
2022/08/14 Java/Android