canvas学习笔记之绘制简单路径


Posted in HTML / CSS onJanuary 28, 2019

1 线段(直线路径)

绘制线段一般步骤:

moveTo(x,y) 移动画笔到指定的坐标点(x,y)
lineTo(x,y) 使用直线连接当前端点和指定的坐标点(x,y)
stroke() 根据当前的画线样式,绘制当前或已经存在的路径

2 矩形路径

绘制矩形路径一般步骤:

rect(x, y, width, height) 矩形路径,坐标点(x,y),width height宽高
stroke()或fill 根据当前的样式,绘制或填充路径
也可使用前文提到的strokeRect或fillRect, 或者是通过lineTo拼接成矩形

3 圆弧路径

先看下绘制圆弧的api:

ctx.arc(x, y, radius, startAngle, endAngle, anticlockwise);

x, y 圆弧中心, radius 圆弧半径, startAngle 起始点, endAngle 圆弧终点, anticlockwise 默认为顺时针, true逆时针
CSS中做旋转用到都是角度(deg),但是arc函数中表示角的单位是弧度,不是角度。角度与弧度的js表达式: 弧度 = (Math.PI/180) * 角度(deg)。
这里弧度是以x轴正方向为基准、默认顺时针旋转的角度来计算

图示:

canvas学习笔记之绘制简单路径
 

(图片来自大漠)

ctx.beginPath();
ctx.arc(200, 100, 100, 0, Math.PI / 2, false);
ctx.closePath();
ctx.stroke();
ctx.fill();

canvas学习笔记之绘制简单路径

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

HTML / CSS 相关文章推荐
对CSS3选择器的研究(详解)
Sep 16 HTML / CSS
细说CSS3中box属性中的overflow-x属性和overflow-y属性值的效果
Jul 21 HTML / CSS
html5+css3之CSS中的布局与Header的实现
Nov 21 HTML / CSS
CSS3的column-fill属性对齐列内容高度的用法详解
Jul 01 HTML / CSS
谈谈对css属性box-sizing的了解
Jan 04 HTML / CSS
css3新单位vw、vh的使用教程
Mar 23 HTML / CSS
CSS3实现可翻转的hover效果
May 23 HTML / CSS
基于第一个PhoneGap(cordova)的应用详解
May 03 HTML / CSS
html5画布旋转效果示例
Jan 27 HTML / CSS
使用canvas一步步实现图片打码功能的方法
Jun 17 HTML / CSS
总结html5自定义属性有哪些
Apr 01 HTML / CSS
能用CSS实现的就不要麻烦JavaScript了
Oct 05 HTML / CSS
web页面录屏实现
Feb 12 #HTML / CSS
Canvas 文本转粒子效果的实现代码
Feb 14 #HTML / CSS
canvas学习笔记之2d画布基础的实现
Feb 21 #HTML / CSS
使用HTML5原生对话框元素并轻松创建模态框组件
Mar 06 #HTML / CSS
详解如何用canvas画一个微笑的表情
Mar 14 #HTML / CSS
使用html2canvas将页面转成图并使用用canvas2image下载
Apr 04 #HTML / CSS
5分钟弄清楚html5的drag and drop(小结)
Apr 10 #HTML / CSS
You might like
攻克CakePHP系列二 表单数据显示
2008/10/22 PHP
用PHP读取flv文件的播放时间长度
2009/09/03 PHP
php数据库备份还原类分享
2014/03/20 PHP
简单实用的PHP防注入类实例
2014/12/05 PHP
php微信公众平台示例代码分析(二)
2016/12/06 PHP
PHP封装的多文件上传类实例与用法详解
2017/02/07 PHP
JavaScript 替换Html标签实现代码
2009/10/14 Javascript
两个JavaScript jsFiddle JSBin在线调试器
2010/03/14 Javascript
基于jQuery的模仿新浪微博时间的组件
2011/10/04 Javascript
js实现鼠标拖动图片并兼容IE/FF火狐/谷歌等主流浏览器
2013/06/06 Javascript
JQuery加载图片自适应固定大小的DIV
2013/09/12 Javascript
jquery图片倾斜层叠切换特效代码分享
2015/08/27 Javascript
js数组去重的5种算法实现
2015/11/04 Javascript
浅谈JavaScript前端开发的MVC结构与MVVM结构
2016/06/03 Javascript
js实现一个简单的MVVM框架示例
2018/01/15 Javascript
nodejs之koa2请求示例(GET,POST)
2018/08/07 NodeJs
如何解决.vue文件url引用文件的问题
2019/01/18 Javascript
jquery实现简单自动轮播图效果
2020/07/29 jQuery
原生js实现简单轮播图
2020/10/26 Javascript
[01:25]DOTA2超级联赛专访iG 将调整状态找回自己
2013/06/05 DOTA
Python实现高效求解素数代码实例
2015/06/30 Python
python使用clear方法清除字典内全部数据实例
2015/07/11 Python
Python Pandas 转换unix时间戳方式
2019/12/07 Python
Python文字截图识别OCR工具实例解析
2020/03/05 Python
Python Socketserver实现FTP文件上传下载代码实例
2020/03/27 Python
Python生成器generator原理及用法解析
2020/07/20 Python
Python 如何实现访问者模式
2020/07/28 Python
CSS3属性box-shadow使用指南
2014/12/09 HTML / CSS
中国京东和泰国中央集团合资的网站:JD CENTRAL
2020/08/22 全球购物
餐厅楼面主管岗位职责范本
2014/02/16 职场文书
小学六年级学生评语
2014/04/22 职场文书
2014年心理健康教育工作总结
2014/12/06 职场文书
人事行政主管岗位职责
2015/04/09 职场文书
乔迁新居祝福语
2019/11/04 职场文书
python自动化八大定位元素讲解
2021/07/09 Python
JavaScript 数组去重详解
2021/09/15 Javascript