canvas教程

通过 Canvas 的 moveTo() 和 lineTo() 绘制一个简单的三角形

字号+ 作者:H5之家 来源:H5之家 2015-10-15 09:27 我要评论( )

下面我们试着通过Canvas为我们提供的方法来绘制一个简单的三角形。 我下还是直接看代码 window.onload = function(){ var canvas = document.getElementById(can

下面我们试着通过Canvas为我们提供的方法来绘制一个简单的三角形。

HTML代码 <canvas id="canvas"></canvas> JavaScript代码 window.onload = function(){   var canvas = document.getElementById('canvas');   if (canvas.getContext){     var ctx = canvas.getContext('2d');     ctx.beginPath();     ctx.moveTo(55,50);     ctx.lineTo(100,75);     ctx.lineTo(100,25);     ctx.fill();   } }

在这段代码里,我们用了 Canvas 里的给我们提供的三个方法 beginPath(),moveTo() 和 lineTo()。

beginPath():新建一条路径,生成之后,图形绘制命令被指向到路径上生成路径。

moveTo(x, y):将笔触移动到指定的坐标x以及y上,当 Canvas 初始化或者beginPath()调用后,你通常会使用 moveTo() 函数设置起点。

lineTo(x,y):绘制一条从当前位置到指定x以及y位置的直线。该方法有两个参数:x以及y ,代表坐标系中直线结束的点。开始点和之前的绘制路径有关,之前路径的结束点就是接下来的开始点,等等。。。开始点也可以通过moveTo()函数改变。

不过,这里还有一种情况需要注意的就是如果我们最后对所画的三角形不是颜色填充而是描边stroke(),这个时候代码就有些不一样了。

window.onload = function(){   var canvas = document.getElementById('canvas');   if (canvas.getContext){     var ctx = canvas.getContext('2d');     ctx.beginPath();     ctx.moveTo(125,125);     ctx.lineTo(125,45);     ctx.lineTo(45,125);     ctx.closePath();     ctx.stroke();   } }

同样的调用了beginPath()作为我们画路径的开始,中过的再加线过程跟以面的是一样的,只是在描边 stroke() 时,我们还要先调用一下closePath()方法来闭合路径。如果不使用closePath()方法,那么只会描绘出两条线段,而不是一个完整的三角形。

 

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

相关文章
  • html5canvas核心技术图形、动画与游戏开发源码

    html5canvas核心技术图形、动画与游戏开发源码

    2017-05-02 17:42

  • 打印html5中Canvas的方法

    打印html5中Canvas的方法

    2017-05-01 15:03

  • HTML5+Canvas调用手机拍照功能实现图片上传(下)

    HTML5+Canvas调用手机拍照功能实现图片上传(下)

    2017-04-30 17:00

  • 学习慕课网canvas倒计时实例笔记

    学习慕课网canvas倒计时实例笔记

    2017-04-30 14:01

网友点评
<