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代码实现的动画导航
Oct 31 HTML / CSS
一款纯css3实现的颜色渐变按钮的代码教程
Nov 12 HTML / CSS
HTML5+CSS3网页加载进度条的实现,下载进度条的代码实例
Dec 30 HTML / CSS
浅谈css3新单位vw、vh、vmin、vmax的使用详解
Dec 01 HTML / CSS
详解HTML5新增标签
Nov 27 HTML / CSS
HTML5 Canvas中绘制矩形实例
Jan 01 HTML / CSS
Canvas图片分割效果的实现
Jul 29 HTML / CSS
使用postMessage让 iframe自适应高度的方法示例
Oct 08 HTML / CSS
解决html5中的video标签ios系统中无法播放使用的问题
Aug 10 HTML / CSS
血轮眼轮回眼特效 html+css
Mar 31 HTML / CSS
css3新特性的应用示例分析
Mar 16 HTML / CSS
CSS 鼠标选中文字后改变背景色的实现代码
May 21 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
php对数组排序的简单实例
2013/12/25 PHP
PHP的Laravel框架结合MySQL与Redis数据库的使用部署
2016/03/21 PHP
php使用Header函数,PHP_AUTH_PW和PHP_AUTH_USER做用户验证
2016/05/04 PHP
php版银联支付接口开发简明教程
2016/10/14 PHP
解决PHP上传非标准格式的图片pjpeg失败的方法
2017/03/12 PHP
php实现页面纯静态的实例代码
2017/06/21 PHP
php 删除指定文件夹的实例讲解
2017/07/25 PHP
在线游戏大家来找茬II
2006/09/30 Javascript
Input 特殊事件onpopertychange和oninput
2009/06/17 Javascript
使用javascipt---实现二分查找法
2013/04/10 Javascript
深入了解javascript中的prototype与继承
2013/04/14 Javascript
利用js的Node遍历找到repeater的一个字段实例介绍
2013/04/25 Javascript
JS常见问题整理(持续更新)
2013/08/06 Javascript
fmt:formatDate的输出格式详解
2014/01/09 Javascript
JavaScript中的公有、私有、特权和静态成员用法分析
2014/11/20 Javascript
JavaScript运动框架 多值运动(四)
2017/05/18 Javascript
node文件上传功能简易实现代码
2017/06/16 Javascript
2种简单的js倒计时方式
2017/10/20 Javascript
移动端 Vue+Vant 的Uploader 实现上传、压缩、旋转图片功能
2019/06/10 Javascript
JavaScript使用面向对象实现的拖拽功能详解
2019/06/12 Javascript
微信小程序用户授权弹窗 拒绝时引导用户重新授权实现
2019/07/29 Javascript
Vue+ElementUI项目使用webpack输出MPA的方法
2019/08/27 Javascript
使用Python对Access读写操作
2017/03/30 Python
利用Python破解斗地主残局详解
2017/06/30 Python
python PyTorch预训练示例
2018/02/11 Python
详解pandas删除缺失数据(pd.dropna()方法)
2019/06/25 Python
sklearn+python:线性回归案例
2020/02/24 Python
Python reques接口测试框架实现代码
2020/07/28 Python
基于python实现图片转字符画代码实例
2020/09/04 Python
css3中背景尺寸background-size详解
2014/09/02 HTML / CSS
智能电子应届生求职信
2013/11/10 职场文书
中学学校门卫岗位职责
2014/08/15 职场文书
2014年教师节演讲稿范文
2014/09/10 职场文书
2014年大学生预备党员思想汇报1000字
2014/09/13 职场文书
酒店服务员岗位职责
2015/02/09 职场文书
导游词之介休绵山
2019/12/31 职场文书