问答详情
源自:2-3 线条组成的图形和beginPath

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

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

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

提问者:刘小骏 2016-10-05 13:08

个回答

  • GK_poter
    2016-10-05 13:44:12
    已采纳

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

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

  • qq_星风幻灭_0
    2016-10-07 12:26:24

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