Canvas 七夕愛心

2021-08-24 17:25:42 字數 2677 閱讀 5232

七夕來臨,最近正好在學習canvas,所以做了乙個七夕愛心,下面是演示圖**換的不清楚,不要太在意)。

下面放一張高畫質圖:

特點:

1、會獲取當前系統時間並在頁面上顯示。

2、跳動的小球是從白色愛心上一行一行跳動的,然後隨機向右或向左執行,因為愛心是在左側螢幕,所以看起來大部分小球都是向右跳動的。

3、優化了彈跳函式效能,避免小球過多吃記憶體問題,執行時可開啟控制台檢視小球數,程式會自動清理超過螢幕的小球。

缺點:

1、因為主要是為了學習,所以沒有增加頁面自適應功能,可能會出現不同電腦畫面位置不一樣的情況,可自行增加頁面自適應功能。

實現原理:

1、心形的實現:

首先用visio製作心形模型,我做的是15*14的宮格,如下圖:

接下來將模型中的心形轉換成js二維陣列,在程式中,有圓的宮格用1

代替,沒有圓的宮格用

0代替,因此陣列指令碼**如下:

我給陣列js指令碼命名為:

love15_14.js

lovegit=[

//心形圖形陣列化

//有心形代表1,沒有心形代表0

[0,0,1,1,1,0,0,0,0,0,1,1,1,0,0],

[0,1,1,1,1,1,0,0,0,1,1,1,1,1,0],

[1,1,1,1,1,1,1,0,1,1,1,1,1,1,1],

[1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],

[1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],

[1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],

[0,1,1,1,1,1,1,1,1,1,1,1,1,1,0],

[0,1,1,1,1,1,1,1,1,1,1,1,1,1,0],

[0,0,1,1,1,1,1,1,1,1,1,1,1,0,0],

[0,0,0,1,1,1,1,1,1,1,1,1,0,0,0],

[0,0,0,0,1,1,1,1,1,1,1,0,0,0,0],

[0,0,0,0,0,1,1,1,1,1,0,0,0,0,0],

[0,0,0,0,0,0,1,1,1,0,0,0,0,0,0],

[0,0,0,0,0,0,0,1,0,0,0,0,0,0,0]

];

2、時間的實現:

這個很簡單,new乙個js的date()方法,然後解析即可得到時分秒。

3、文字的實現:

這個更簡單,直接給乙個變數附上字串,後面在程式中會呼叫。

下面是實現指令碼的**,我在這裡命名為:love.js

var window_width = 1690;

var window_height = 780;

var radius = 12;

var margin_top=60;

var margin_left=30;

var count=0;

var balls=;

const colors =['#33b5e5','#0099cc','#aa66cc','#9933cc','#99cc00',

'#669900','#ffbb33','#ff8800','#ff4444','#cc0000'];

const endtime = new date(2018,7,17,23,59,55);//定義截止時間

var curshowtimeseconds = 0;

window.onload=function () ,50);

};function getcurrentshowtimeseconds()

function update()

updateloves();

console.log(balls.length);

}function render(cxt)

}var cnt = 0;

for(var i=0;i0 && balls[i].x-radiuscnt)

}//加入乙個小愛心

function addloves(x,y) ;

balls.push(aball);}}

count++;

if(count==14)

// }

}function renderlovegit(x,y,cxt) }}

}

最後是背景圖,我也上傳上來給大家:命名為img_three.jpg

最後是html檔案:

您的瀏覽器不支援canvas,請更換瀏覽器後重新操作

將上面的兩個js檔案和在html檔案中正確引入即可實現七夕愛心跳動的效果。

在此祝各位程式設計師七夕快樂,沒有女朋友寫**也是可以的哈。

七夕祭 模擬

有乙個會場由 n role presentation style position relative nn排 m role presentation style position relative m m列共計n m role presentation style position relative...

七夕靠譜指南

七夕最強大的指南 七夕到了,女神們對於禮物是越來越挑剔,男人們對於怎樣討女神歡心,是越來越頭疼。究竟怎樣過七夕,才能俘獲女神們的心呢?很多人在七夕這一天都會嘗試著用各種方法來博得女神的心,比如這些 送禮物 送禮物是最普遍的,給女神買一束鮮花 給她買乙個她心儀已久的禮物等,但收完禮物,很多男士被抱怨 ...

基本演算法 七夕祭

第一行包含三個整數n和m和t。t表示cl對多少個攤點感興趣。接下來t行,每行兩個整數x,y,表示cl對處在第x行第y列的攤點感興趣。首先輸出乙個字串。如果能滿足 vani 的全部兩個要求,輸出 both 如果通過調整 只能使得各行中 cl 感興趣的攤點數一樣多,輸出 row 如果只能使各列中 cl ...