火狐瀏覽器下,closePath()所繪制的角并不能正確的應(yīng)用linejoin和miterlimit兩個屬性。如果將繪制函數(shù)直接寫成封閉,即將i<5改為i<6就可以了。不知道是Canvas說明文檔的問題還是什么瀏覽器支持問題?反正以后遇到這種繪圖我會盡量少用closePath()。畢竟作用并不大,目前看w3c文檔根據(jù)我的理解他好像只有將圖形繪制成封閉的這一種功能了?有說的不對的地方希望大神私信指點我一下,萬分感謝。
2017-12-16
closePath()參數(shù)老師說的確實有誤,并不是結(jié)束一條路徑。而是默認(rèn)將未封閉的路徑用一條起點直達(dá)終點的線段連接起來,如果要新建一條路徑,只需要聲明beginPath()就可以了。當(dāng)你在繪制多個圓弧的時候可以嘗試實驗一下來驗證我說的是否正確。
看到下面這些評論真的是呵呵了,這和數(shù)學(xué)拉得上什么關(guān)系?就是一個tansform函數(shù),我們又不管js內(nèi)部是怎么設(shè)置這個函數(shù)的,只管用這個函數(shù)。
2017-11-09
var x=Math.abs(Math.random()*canvas.width- 2*r)+r;
var y=Math.abs(Math.random()*canvas.height- 2*r)+r;
var y=Math.abs(Math.random()*canvas.height- 2*r)+r;