为了账号安全,请及时绑定邮箱和手机立即绑定

关于 beginPath 的几个问题,求大神解答。

问题一:既然 moveTo( ) 可以被 beginPath( ) 代替,那么 moveTo( ) 存在的意义何在?

问题二:例子中可以把 lineWidth 写在代码的最上端,而程序仍然正常执行,那么意味着每次 Canvas 在执行 stroke( ) 函数的时候,都要遍历当前程序块内的全部代码,即便找到了距离最近的  beginPath( ) ,仍然会遍历,这样会不会给计算机造成很大符合(假设绘制一个十分复杂的图形的时候,而且会不断刷新产生动画)?

正在回答

2 回答

moveTo是将笔尖发在某处,类似于arcTo函数就需要一个开始的地方,而beginpath不能代替moveto。

canvas是基于状态绘图,也就是说之后会找到最近的beginpath,但之前的转态不会因此失效

0 回复 有任何疑惑可以回复我~
#1

刘小骏 提问者

喔,可能是我还没有看到那么深入。那第二个问题,你说的意思我明白了,就是程序顺序执行,画布上就有一支笔,已经记录了绘制属性,那我还是不懂为啥 canvas 的绘图方式叫做基于状态,“状态”这个概念应该怎么理解呢?
2016-10-05 回复 有任何疑惑可以回复我~

主要是现在这里只学到beginPath,等到后面讲了closePath就能够更好的理解状态了,在一个beginPath和closePath之间可以保存当前里面的颜色,宽度等等样式。

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Canvas绘图详解
  • 参与学习       72874    人
  • 解答问题       422    个

Canvas系列教程第二课,详解Canvas各接口,让同学彻底掌握Canvas绘图

进入课程

关于 beginPath 的几个问题,求大神解答。

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信