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 相关文章推荐
jQuery+jqmodal弹出窗口实现代码分明
Jun 14 Javascript
Jquery拖拽并简单保存的实现代码
Nov 28 Javascript
js弹出模式对话框,并接收回传值的方法
Mar 12 Javascript
JS获取URL中的参数数据
Dec 05 Javascript
jquery.post用法关于type设置问题补充
Jan 03 Javascript
jQuery异步验证用户名是否存在示例代码
May 21 Javascript
Jquery的基本对象转换和文档加载用法实例
Feb 25 Javascript
深入学习JavaScript的AngularJS框架中指令的使用方法
Mar 05 Javascript
Angular中使用ui router实现系统权限控制及开发遇到问题
Sep 23 Javascript
jQuery插件jquery.kxbdmarquee.js实现无缝滚动效果
Feb 15 Javascript
Js实现京东无延迟菜单效果实例(demo)
Jun 02 Javascript
jQuery操作attr、prop、val()/text()/html()、class属性
May 23 jQuery
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
全国FM电台频率大全 - 11 浙江省
2020/03/11 无线电
fleaphp crud操作之findByField函数的使用方法
2011/04/23 PHP
php安全之直接用$获取值而不$_GET 字符转义
2012/06/03 PHP
linux环境apache多端口配置虚拟主机的方法深入介绍
2013/06/09 PHP
php开启openssl的方法
2014/05/15 PHP
ThinkPHP标签制作教程
2014/07/10 PHP
Ajax提交表单时验证码自动验证 php后端验证码检测
2016/07/20 PHP
PHP框架Laravel中实现supervisor执行异步进程的方法
2017/06/07 PHP
利用ASP发送和接收XML数据的处理方法与代码
2007/11/13 Javascript
父元素与子iframe相互获取变量和元素对象的具体实现
2013/10/15 Javascript
javaScript array(数组)使用字符串作为数组下标的方法
2013/11/19 Javascript
node.js适合游戏后台开发吗?
2014/09/03 Javascript
Egret引擎开发指南之视觉编程
2014/09/03 Javascript
推荐10个2014年最佳的jQuery视频插件
2014/11/12 Javascript
DOM基础教程之使用DOM
2015/01/19 Javascript
Bootstrap每天必学之导航组件
2016/04/25 Javascript
详解支持Angular 2的表格控件
2017/01/19 Javascript
深入Node TCP模块的理解
2019/03/13 Javascript
vue+egg+jwt实现登录验证的示例代码
2019/05/18 Javascript
Vue函数式组件的应用实例详解
2019/08/30 Javascript
js生成1到100的随机数最简单的实现方法
2020/02/07 Javascript
详细分析Node.js 多进程
2020/06/22 Javascript
JavaScript中Object、map、weakmap的区别分析
2020/12/15 Javascript
[05:03]显微镜下的DOTA2第十期——Ti3豪之超神幽鬼
2014/06/23 DOTA
python实现可将字符转换成大写的tcp服务器实例
2015/04/29 Python
python编写爬虫小程序
2015/05/14 Python
Python中音频处理库pydub的使用教程
2017/06/07 Python
如何优雅地改进Django中的模板碎片缓存详解
2018/07/04 Python
python的常见矩阵运算(小结)
2019/08/07 Python
更新pip3与pyttsx3文字语音转换的实现方法
2019/08/08 Python
初中物理教学反思
2014/01/14 职场文书
学校班班通实施方案
2014/06/11 职场文书
2019年幼儿园家长接送责任书
2019/10/29 职场文书
python爬取豆瓣电影TOP250数据
2021/05/23 Python
浅谈Redis的keys命令到底有多慢
2021/10/05 Redis
动作冒险《Hell Is Us》将采用虚幻5 消灭怪物探索王国
2022/04/13 其他游戏