主頁 > 知識(shí)庫(kù) > 利用三角函數(shù)在canvas上畫虛線的方法

利用三角函數(shù)在canvas上畫虛線的方法

熱門標(biāo)簽:鎮(zhèn)江智能外呼系統(tǒng)有效果嗎 四川點(diǎn)撥外呼系統(tǒng) 南寧點(diǎn)撥外呼系統(tǒng)哪家公司做的好 江蘇智能電銷機(jī)器人哪家好 電銷機(jī)器人電話用什么卡 黃島區(qū)地圖標(biāo)注 云南大理400電話申請(qǐng)官方 當(dāng)涂高德地圖標(biāo)注 成都智能外呼系統(tǒng)平臺(tái)

因?yàn)閏anvas的api沒有虛線的

所以需要自己實(shí)現(xiàn)

順便復(fù)習(xí)一下三角函數(shù)豈不美滋滋

 

var context=document.getElementById("canvas").getContext("2d");
function drawDashedLine(context,x1,y1,x2,y2,dashlength){
    dashlength=dashlength===undefined?5:dashlength;
    var deltaX=x2-x1; //一條直角邊的長(zhǎng)
    var deltay=y2-y1; //另一條指教邊的長(zhǎng)

    var numDashes=Math.floor(
        Math.sqrt(deltaX*deltaX+deltay*deltay)/dashlength  //Math.sqrt返回一個(gè)數(shù)的平方根  dashlength虛線每個(gè)點(diǎn)的長(zhǎng)度
    )

    var everydashLength_x=deltaX/numDashes  //確定X軸每條虛線點(diǎn)的起始點(diǎn)
    var everydashLength_y=deltay/numDashes  //確定Y軸每條虛線點(diǎn)的起始點(diǎn)

    for(var i=0;i<numDashes;i++){
        context[i%2===0?'moveTo':"lineTo"]
        (x1+everydashLength_x*i,y1+everydashLength_y*i)
    }
    context.stroke()

}
context.lineWidth=3
context.strokeStyle="blue"
drawDashedLine(context,20,20,context.canvas.width-20,20,20)

效果如圖

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

標(biāo)簽:咸寧 佳木斯 酒泉 南京 淮安 西寧 廣西 十堰

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《利用三角函數(shù)在canvas上畫虛線的方法》,本文關(guān)鍵詞  利用,三角函數(shù),在,canvas,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《利用三角函數(shù)在canvas上畫虛線的方法》相關(guān)的同類信息!
  • 本頁收集關(guān)于利用三角函數(shù)在canvas上畫虛線的方法的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章