最贊回答 / 三3心
在drawStarTwo函數中,把cxt.translate(x, y)放在cxt.rotate(rot / 180 * Math.PI);之前,就可以了。
2016-08-04
最新回答 / Char_n
??for(var i=0;i<200;i++){ ? ? ? ? //利用json來創建200個隨機星星var aStar={? ? ? ? ? ? ? ?x:Math.random()*canvas.width,? ? ? ? ? ? ? ?y:Math.random()*canvas.height,? ? ? ? ? ? ? ?R:Math.random()*5+5,? ? ? ? ? ? ? ?a:Math.random()*360};? ? ? ? ? ?if(stars.length==...
2016-07-31
已采納回答 / Arya丶
你這樣放圖片代碼。。沒人看得清。。我用我的理解說一下吧,先進行旋轉的話,其實是把參照坐標系旋轉了,注意,不是對整個canvas影響,而是對旋轉后,即將要繪制的圖形有影響。也就是說,進行了旋轉,參照坐標系就是一個旋轉狀態,這時候你的“平移”,已經不是原來的平移了,而是旋轉后的平移,也就是說,其實是斜移動了的。 應該是這樣~吧
2016-07-30
最贊回答 / GD_sun粉
這個代碼,你寫錯了,這兒應該是y, var y=event.clientY-canvas.getBoundingClientRect().top; ?
2016-07-21
已采納回答 / 燈元
?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只顯示先畫的沒有重復部分,也就是說其他部分全部被清理!解決方案用離屏canvas技術?。?!