• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com专业计算机教程网站
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure
您的位置:首页 > 网页设计 >html5 > Html5 Canvas初探学习笔记(10) -复杂路径

Html5 Canvas初探学习笔记(10) -复杂路径

作者:匿名 字体:[增加 减小] 来源:互联网 时间:2018-12-03

本文主要包含Html5 ,Canvas,复杂路径 等相关知识,匿名希望在学习及工作中可以帮助到您
之前已经介绍过简单的绘制路径,本篇介绍绘制折线和贝塞尔曲线,首先介绍折线,效果如下:



代码如下:

context.beginPath();
context.moveTo(100,50);
//context.lineTo(100,50);
context.lineTo(150,150);
context.lineTo(50,150);
//context.closePath();
context.stroke();

之前介绍过moveTo后接起点的横纵坐标,我试了一下,第一个是lineTo也可以,后面的lineTo就是从这个点到下一个点画一条直线,然后再以这个点为起点,在调lineTo就是以上一个点为起点到这个点,如果把context.closePath();打开,那么将把目前的这个点和最早的一个起点连接,形成一个闭合三角形,效果如下:



下面看贝塞尔曲线:有两个方法可以实现贝塞尔曲线:quadraticCurveTo和bezierCurveTo,分别是二次贝塞尔曲线和三次贝塞尔曲线,区别就是二次贝塞尔曲线只有一个波峰,三次贝塞尔曲线既有波峰也有波谷,首先来看二次贝塞尔曲线,效果如下:


代码如下:

context.beginPath();
context.moveTo(50,250);
//context.lineTo(50,250);
context.quadraticCurveTo(150,100,250,250);
//context.closePath();
context.stroke();

首先是起点,也可以是moveTo或lineTo,然后调用quadraticCurveTo,前两个参数是控制点坐标,后两个参数是终点横纵坐标,控制点的横坐标和“波峰”横坐标相同,波峰的纵坐标和波峰纵坐标有关,注意是有关,也就是纵坐标越大波峰越高。如果打开context.closePath();

效果如下:


下面来看三次贝塞尔曲线,首先来看效果:


代码如下:

context.beginPath();
context.moveTo(50,200);
//context.lineTo(50,250);
context.bezierCurveTo(100,100,150,300,200,200);
//context.closePath();
context.stroke();

bezierCurveTo的三个参数分别是,第一或波个波峰或波谷的横纵坐标,第二个波峰或波谷的横纵坐标,终点的横纵坐标,同样打开context.closePath();也将曲线闭合,效果如下:


以上就是Html5 Canvas初探学习笔记(10) -复杂路径 的内容,更多相关内容请关注微课江湖()!

您可能想查找下面的文章:

  • HTML5的本地存储
  • Define charset for HTML5 Doctype
  • HTML5 canvas如何绘制动态径向渐变
  • 如何使用HTML5 Canvas绘制动态线性渐变
  • HTML5 canvas如何实现马赛克的淡入淡出效果(代码)
  • HTML5 canvas中如何绘制图像
  • 如何使用HTML5 canvas实现图像的马赛克
  • html5 canvas实现简单的双缓冲
  • HTML5 Canvas 图形组合是如何实现的?附代码
  • HTML5 figure标签是什么意思?HTML5 figure标签的使用方法详解

相关文章

  • 2018-12-03如何用SVG制作酷炫动态图标?(代码实例)
  • 2018-12-03HTML5 Canvas 填充与描边(Fill And Stroke) 实现的实例代码
  • 2017-08-06html5画布旋转效果示例
  • 2018-12-03利用gulp实现压缩的实例
  • 2018-12-03Html5语义化标签及兼容性处理详解
  • 2018-12-03详解HTML5网络拓扑图整合OpenLayers实现GIS地图应用(图)
  • 2018-12-037种炫酷HTML5 SVG液态水滴融合动画特效
  • 2018-12-03关于html5 canvas 微信海报的分享介绍
  • 2017-08-06Canvas与Image互相转换示例代码
  • 2017-08-06html5 自定义播放器核心代码

文章分类

  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure

最近更新的内容

    • HTML5实践-使用css装饰图片画廊的代码分享(一)
    • css3+javascript怎么做一个旋转的3d盒子?
    • 关于HTML5 history API 的介绍
    • 开源代码flv.js的使用说明
    • HTML5之SVG 2D入门5—颜色的表示及定义方式
    • 介绍下HTML5.1里的新内容
    • 使用HTML5的链接预取功能(link prefetching)给网站提速
    • 如何评价《吴亦凡即将入伍?!》的H5营销?
    • HTML5本地存储之IndexedDB
    • HTML5 embed标签定义和用法详解_html5教程技巧

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有