JavaScript canvas绘制圆弧与圆形


Posted in Javascript onFebruary 18, 2020

本文实例为大家分享了canvas绘制圆弧与圆形的具体代码,供大家参考,具体内容如下

canvas 绘制圆弧

绘制圆弧使用 context.arc( ) 函数,包含六个参数。

context.arc(
 centerx,centery,radius,
 startingAngle,endingAngle,
 anticlockwise = false
)

分别代表:圆心 x 值,圆心 y 值,半径,开始的弧度值,结束的弧度值,(是否逆时针)。

例如:

window: onload = function(){
 var canvas = document.getElementById("canvas");
 var context = canvas.getContext("2d");
 canvas.width = 800;
 canvas.height = 800;

 context.lineWidth = 5;
 context.strokeStyle = "#005588";
 context.arc(300, 300, 200, 0, 1.5*Math.PI)
 context.stroke();
}

当需要绘制多条圆弧时,还是需要调用 context.beginPath( ) 和 context.closePath( ) 。但是当使用 context.closePath( ) 时,会自动将图形封闭,因此如果需要绘制不封闭圆弧,可以省略 context.closePath( )。

绘制实心圆

跟之前的多边形一样,使用 context.fill( ) ,代码:

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <meta name="viewport" content="width=device-width, initial-scale=1.0">
 <meta http-equiv="X-UA-Compatible" content="ie=edge">
 <title>Document</title>
</head>
<body>
 <canvas id="canvas"></canvas>
 <script>
  window: onload = function(){
   var canvas = document.getElementById("canvas");
   var context = canvas.getContext("2d");
   canvas.width = 800;
   canvas.height = 800;

   context.lineWidth = 5;
   context.strokeStyle = "#005588";
   context.arc(300, 300, 200, 0, 1.5*Math.PI)
   context.stroke();
   context.fillStyle = "red";
   context.fill();
  }
 </script>
</body>
</html>

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

Javascript 相关文章推荐
javascript数字格式化通用类 accounting.js使用
Aug 24 Javascript
Extjs显示从数据库取出时间转换JSON后的出现问题
Nov 20 Javascript
JavaScript四种调用模式和this示例介绍
Jan 02 Javascript
jQuery控制的不同方向的滑动(向左、向右滑动等)
Jul 18 Javascript
Jquery中CSS选择器用法分析
Feb 10 Javascript
Javascript实现div的toggle效果实例分析
Jun 09 Javascript
jquery仿QQ登录账号选择下拉框效果
Mar 22 Javascript
Avalon中文长字符截取、关键字符隐藏、自定义过滤器
May 18 Javascript
JS倒计时实例_天时分秒
Aug 22 Javascript
JS实现的哈夫曼编码示例【原始版与修改版】
Apr 22 Javascript
vue使用监听实现全选反选功能
Jul 06 Javascript
手把手教你 CKEDITOR 4 实现Dialog 内嵌 IFrame操作详解
Jun 18 Javascript
javascript中的with语句学习笔记及用法
Feb 17 #Javascript
JS实现百度搜索框关键字推荐
Feb 17 #Javascript
js实现百度淘宝搜索功能
Feb 17 #Javascript
JavaScript使用canvas绘制随机验证码
Feb 17 #Javascript
JavaScript中this的学习笔记及用法整理
Feb 17 #Javascript
Vue 中使用 typescript的方法详解
Feb 17 #Javascript
vue框架中props的typescript用法详解
Feb 17 #Javascript
You might like
Linux下 php5 MySQL5 Apache2 phpMyAdmin ZendOptimizer安装与配置[图文]
2008/11/18 PHP
codeigniter框架批量插入数据
2014/01/09 PHP
PHPStrom中实用的功能和快捷键大全
2015/09/23 PHP
PHP配合fiddler抓包抓取微信指数小程序数据的实现方法分析
2020/01/02 PHP
php使用pthreads v3多线程实现抓取新浪新闻信息操作示例
2020/02/21 PHP
讲两件事:1.this指针的用法小探. 2.ie的attachEvent和firefox的addEventListener在事件处理上的区别
2007/04/12 Javascript
javascript 面向对象,实现namespace,class,继承,重载
2009/10/29 Javascript
JS代码判断IE6,IE7,IE8,IE9的函数代码
2013/08/02 Javascript
javascript实现鼠标拖动改变层大小的方法
2015/04/30 Javascript
javascript实现获取字符串hash值
2015/05/10 Javascript
javascript事件绑定学习要点
2016/03/09 Javascript
JS &amp; JQuery 动态添加 select option
2016/06/08 Javascript
node.js利用redis数据库缓存数据的方法
2017/03/01 Javascript
Vue服务端渲染和Vue浏览器端渲染的性能对比(实例PK )
2017/03/31 Javascript
JavaScript数据结构之二叉树的遍历算法示例
2017/04/13 Javascript
js实现本地图片文件拖拽效果
2017/07/18 Javascript
详解jQuery同步Ajax带来的UI线程阻塞问题及解决办法
2017/08/09 jQuery
js封装成插件_Canvas统计图插件编写实例
2017/09/12 Javascript
使用 Github Actions 自动部署 Angular 应用到 Github Pages的方法
2020/07/20 Javascript
解决vue的router组件component在import时不能使用变量问题
2020/07/26 Javascript
Vue中避免滥用this去读取data中数据
2021/03/02 Vue.js
[04:37]DOTA2英雄梦之声Vol20发条
2014/06/20 DOTA
[51:15]完美世界DOTA2联赛PWL S2 PXG vs Magma 第一场 11.21
2020/11/24 DOTA
python深度优先搜索和广度优先搜索
2018/02/07 Python
python pandas库中DataFrame对行和列的操作实例讲解
2018/06/09 Python
python基于Selenium的web自动化框架
2019/07/14 Python
基于pytorch中的Sequential用法说明
2020/06/24 Python
Python 调用 ES、Solr、Phoenix的示例代码
2020/11/23 Python
用HTML5实现鼠标滚轮事件放大缩小图片的功能
2015/06/25 HTML / CSS
意大利值得信赖的在线超级药房:PillolaStore
2020/02/05 全球购物
新闻记者实习自我鉴定
2013/09/19 职场文书
留学推荐信中文范文三篇
2014/01/25 职场文书
基层党组织整改方案
2014/10/25 职场文书
2015毕业生实习工作总结
2014/12/12 职场文书
文艺演出主持词
2015/07/01 职场文书
忆童年!用Python实现愤怒的小鸟游戏
2021/06/07 Python