html 虛線 canvas2D繪製虛線

2021-10-11 09:04:48 字數 945 閱讀 8382

要想在canvas 2d中繪製虛線有很多種方法,可以自己使用演算法實現,也可以使用原生的api。

大概思路是:

這裡只使用了勾股定理這乙個數學公式。

**:

效果:

如果能將上面自己實現的虛線繪製功能繫結到canvas 2d的繪圖環境物件中那不是更好嗎?

可以使用元程式設計來完成!

由於虛線的起始點是通過呼叫moveto()方法來確定的,所以在canvas2d的繪圖環境物件中增加乙個生成虛線路徑的函式的主要難點是:在這個函式中不能取得這個起始點的資料。

所以重點是確保生成虛線路徑的函式中能訪問到起始點資料。

**:

效果:

canvas2d已經有原生api支援生成虛線路徑了。

setlinedash(segments)方法用於指定在填充時使用虛線模式。

segments引數是乙個陣列,一組描述交替繪製線段和間距(座標空間單位)長度的數字。 如果陣列元素的數量是奇數, 陣列的元素會被複製並重複。例如,[5, 15, 25]會變成[5, 15, 25, 5, 15, 25]。

**:

效果:

Canvas 2D小遊戲開發總結 1

由於需要快速開發 在拿到需求時,並沒有時間去學習cocos2d js egret lufy legend這樣的h5遊戲引擎 於是硬著頭皮直接用js建模 響應使用者 渲染畫面 在此要感謝這篇文章給我的啟發 然後我羅列一下開發過程中遇到的問題,以便更好地完善自己的遊戲框架 1.按鈕問題dom vs ca...

Html5 Canvas 繪製虛線和實線的切換方法

場景應用 1 最開始預設繪製的都是實線。var canvas document.getelementbyid canvas var context canvas.getcontext 2d context.strokestyle black context.linewidth 5 context.l...

iOS 使用Quartz 2D畫虛線

畫虛線需要用到函式 cgcontextsetlinedash 此函式需要四個引數 cpp view plain copy print cgcontextref context uigraphicsgetcurrentcontext cgcontextbeginpath context cgconte...