已采納回答 / 燈元
?function drawStar(cxt,r,R,x,y,rot){??cxt.beginPath();????for(var i=0;i<5; i++){??cxt.lineTo(Math.cos((18+i*72-rot)/180*Math.PI)*R+x,??????-Math.sin((18+i*72-rot)/180*Math.PI)*R+y);???????cxt.lineTo(Math.cos((54+i*72-rot)/180*Math.PI)*r+x,???-Math.sin(...
2016-07-13
已采納回答 / 慕粉3591791
洗了個澡?。?!問題解決!是畫字的問題,因為globalCompsitionOperation的屬性,如destination-out只顯示先畫的沒有重復(fù)部分,也就是說其他部分全部被清理!解決方案用離屏canvas技術(shù)?。。?/div>
已采納回答 / iFaye
選擇button那里吧#號去掉
已采納回答 / 田小雨
我也試了一下你說的這種情況,確實沖突了,但是globalCompositeOperation本身就是定義源圖形和目標(biāo)圖形的遮擋效果的,而如果設(shè)置了globalAlpha讓圖形都變成透明,目標(biāo)圖形和源圖形就產(chǎn)生了疊加效果,二者沖突也能理解。
已采納回答 / 王小仙
把繪制的過程封裝成一個函數(shù)啊,,然后把?compositeType 作為參數(shù)傳進(jìn)去,, 你這樣寫把值都寫死了,,雖然每次點擊按鈕都能改變?compositeType 的值,,但是并不會把?compositeType 給他?context.globalCompositeOperation,,因為你下面的寫的繪制過程只會執(zhí)行一次,,每次點擊按鈕他們并不會執(zhí)行,,
已采納回答 / fengyunzhu
看一下邏輯就知道原因了當(dāng)radius大于700時(比方說是705),?isIncrease設(shè)為了false,接著radius開始縮小執(zhí)行-5操作,此時radius為700按原先邏輯,再次執(zhí)行update時,因為isIncrease是false,radius還是執(zhí)行-5操作,一直到小于150時,但是你把var isIncrease = true放在了update里面,這時radius為700 ,isIncrease為true,那么radius要執(zhí)行+5操作,radius變?yōu)?05,然后超過700,又執(zhí)行-5...
2016-05-15
已采納回答 / lc9122
四個錯誤:第44行,getBoundingClientRect()拼寫錯誤,“bound”的b是大寫的detect和draw函數(shù)的for循環(huán)條件多了個“=”第48行beginPath拼寫錯誤第54行的括號后面有個多余的符號。這些錯誤在瀏覽器上調(diào)試調(diào)試就可以發(fā)現(xiàn)問題的。
2016-04-02
- 課程須知
- 需有基礎(chǔ)HTML,JS,CSS知識。需學(xué)習(xí)《絢麗的倒計時效果》Canvas繪圖第一課。
- 老師告訴你能學(xué)到什么?
- 深入了解Canvas各個繪圖接口的使用方法。基礎(chǔ)圖形學(xué)知識。通過對一些基本元素的繪制,啟發(fā)大家更多有效地繪圖方法。
微信掃碼,參與3人拼團(tuán)