使用canvas實現乙個圓球的觸壁反彈

2022-07-04 08:33:10 字數 748 閱讀 6167

html

<

canvas

id="canvas"

width

="500"

height

="500"

style

="border: 1px solid #ff0000;"

>

canvas

>

js1.獲取上下文

let canvas = document.getelementbyid('canvas');

let ctx = canvas.getcontext('2d');

2.實現乙個球類

1

class circle 15}

1617 };

3.new乙個球

let ball = new circle();

4.實現動畫函式

const move = (function

() ;

//y軸座標加移動的距離大於畫布寬度(到達下邊界) 或 y軸座標加移動的距離等於0(到達上邊界)

if (ball.y + ball.my > canvas.height || ball.y + ball.my < 0) ;

// 遞迴呼叫當前方法

window.requestanimationframe(arguments.callee);

})();

Canvas 實現乙個時鐘

使用canvas實現另乙個小時鐘,效果圖如下 前端html canvas not supported 下面是example.js的具體實現 var canvas document.getelementbyid canvas var context canvas.getcontext 2d var f...

使用canvas實現乙個vue彈幕元件功能

看b站時,對彈幕的實現產生了興趣,一開始想到用css3動畫去實現,後來感覺這樣效能不是很好,查了下資料,發現可以用canvas實現,於是就摸索著寫了乙個簡單的彈幕。彈幕功能 支援動態新增彈幕 彈幕不重疊 自定義彈幕顏色 效果圖 前端框架選了比較熟悉的vuejs 彈幕滾動的基本思路就是通過定時器不斷地...

乙個canvas中strokeStyle的疑問

這個效果是圓弧是紅色,但是如果strokestyle在後面,就不會顯示紅色。為什麼?cans.linewidth 10 cans.stroke cans.strokestyle red canvas中的常用命令 canvas畫布設定width和height,裡面的xy是相對畫布的左上角開始0,0.l...