亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

首頁 JS特效 html5特效 HTML5+Canvas的黑洞特效

HTML5+Canvas的黑洞特效

HTML5+Canvas的黑洞特效

HTML5+Canvas的黑洞特效



<頭>
<元字符集=“utf-8”>
不要失去你的彩虹

<風(fēng)格>
帆布 {### 位置:絕對;
頂部:0;
左:0;
}
</風(fēng)格>

</頭>
<內(nèi)文>


#
<腳本>
讓 w = c.width = window.innerWidth;
令 h = c.height = window.innerHeight;

const ctx = c.getContext('2d');
常數(shù)選項 = {
十六進(jìn)位長度:30,
lenFn: ({ len, t }) =>
len Math.sin(t),
radFn: ({ rad, len, t, 興奮}) =>
rad (興奮 opts.propFn({ len, t }))*2 / 4,
propFn: ({ len, t }) =>;
len / opts.hexLength / 10 - t,
興奮Fn: ({ len, t }) =>
Math.sin(opts.propFn({ len, t }))**2,
colorFn: ({ rad, 興奮度, t }) =>
`hsl(${rad / Math.TAU * 360 t}, ${興奮 * 100}%, ${20 興奮 * 50}%)`,
時間步長: .01,
隨機(jī)夾具:8,

重繪顏色: 'rgba(0,0,0,.1)'
};
讓勾號 = 0;

數(shù)學(xué).TAU = 6.28318530717958647692;

常量頂點(diǎn) = [];
頂點(diǎn)類別 {
建構(gòu)子({ x, y }) {
this.len = Math.sqrt(x*x y*y);
this.rad = Math.acos(x / this.len) * (y > 0 ? 1 : -1) .13;
this.prevPoint = { x, y };
}

步() {### const興奮 = opts.excitementFn({ len: this.len, t: tick });
常數(shù)參數(shù) = {?
len: this.len,
拉德:這個.rad,
t:勾選,
激動### };
const nextLen = opts.lenFn(param);
const nextRad = opts.radFn(param);
const color = opts.colorFn(param);

ctx.描邊樣式 = 顏色;
ctx.lineWidth = 興奮 .2;
ctx.beginPath();
ctx.moveTo(this.prevPoint.x, this.prevPoint.y);
this.prevPoint.x = nextLen * Math.cos(nextRad)
Math.random() * (1-興奮)**2 * opts.randomJig * 2 - opts.randomJig;
this.prevPoint.y = nextLen * Math.sin(nextRad)
Math.random() * (1-興奮)**2 * opts.randomJig * 2 - opts.randomJig;
ctx.lineTo(this.prevPoint.x, this.prevPoint.y);
ctx.中風(fēng)();
}

靜態(tài)生成(){
頂點(diǎn).長度 = 0;
const hexCos = Math.cos(Math.TAU / 12) * opts.hexLength;
const hexSin = Math.sin(Math.TAU / 12) * opts.hexLength;


讓alternanceX = false;
for(令 x = 0; x < w; x = hexCos) {
讓alternance = alternanceX = !alternanceX;
for(let y = 0; y < h; y = hexSin opts.hexLength) {
交替 = !交替;
頂點(diǎn).push(新頂點(diǎn)({
x: x - w / 2,
y: y 交替 * hexSin - h / 2
}))
}
}

}
}

頂點(diǎn).gen();

ctx.fillStyle = '#222';
ctx.fillRect(0, 0, w, h);
const anim = () =>; {
# window.requestAnimationFrame(anim);

勾選 = opts.timeStep;

ctx.fillStyle = opts.repaintColor;
ctx.fillRect(0, 0, w, h);

ctx.translate(w/2, h/2);
vertices.forEach((vertex) => vertex.step());
ctx.translate(-w/2, -h/2);
}
動畫();

window.addEventListener('調(diào)整大小', () => {
w = c.width = window.innerWidth;
h = c.height = window.innerHeight;

頂點(diǎn).gen();
勾選= 0;
ctx.fillStyle = '#222';
ctx.fillRect(0, 0, w, h);
})
</腳本>

</body>

</html>

這是一個HTML5 Canvas的特效,需要的朋友可以直接下載使用,更多特效代碼盡在PHP中文網(wǎng)。

免責(zé)聲明

本站所有資源皆由網(wǎng)友貢獻(xiàn)或各大下載網(wǎng)站轉(zhuǎn)載。請自行檢查軟體的完整性!本站所有資源僅供學(xué)習(xí)參考。請不要將它們用於商業(yè)目的。否則,一切後果都由您負(fù)責(zé)!如有侵權(quán),請聯(lián)絡(luò)我們刪除。聯(lián)絡(luò)方式:admin@php.cn

相關(guān)文章

種植花園黑洞和無效的突變解釋 種植花園黑洞和無效的突變解釋

17 Jun 2025

黑洞是種植花園中罕見的天氣,目前,這是獲得無效觸摸突變的唯一方法。由於其頻率不高,因此您可能還沒有在Grow Garden Garden Garden中遇到Black Hole事件。這可能會讓你

使用HTML5視頻和音頻有效地流媒體。 使用HTML5視頻和音頻有效地流媒體。

02 Jul 2025

tostreammedia效率與html5,usecatibleformatslikemp4andwebmforvideoandmp3oroggforaudio.1)compressFilesBeforeUploAdingingingToolslabrakeorabrakeorabrakeorabrakeOraudaceTobalanceTobalanceQuelySize.2)

如何使用HTML5多填充來支持較舊的瀏覽器? 如何使用HTML5多填充來支持較舊的瀏覽器?

17 Mar 2025

文章討論了使用HTML5多填充物來支持較舊的瀏覽器,詳細(xì)的步驟,最佳實踐,共同特徵和測試方法,以進(jìn)行有效實施。

HTML5目標(biāo):快速入門指南 HTML5目標(biāo):快速入門指南

18 May 2025

html5 aimstoimprovewebaccctible,效率,效率和互動forbothusersanddevelopers.1)itreducestheneed forexternalpluginsbysupportingnativemultia.2)itenhancessemanticsemantscontrents structions structions newElements,改進(jìn)SeooandCodeDeareade.3 Itmandernabily.3)

如何在 HTML5 本機(jī)和會話儲存中儲存和檢索複雜的 JavaScript 物件? 如何在 HTML5 本機(jī)和會話儲存中儲存和檢索複雜的 JavaScript 物件?

28 Dec 2024

HTML5 中物件的儲存本機(jī)和會話儲存查詢:HTML5 的 localStorage 和 sessionStorage 能夠有效儲存原始資料...

在 HTML5 中的標(biāo)題標(biāo)籤內(nèi)使用段落元素是否有效? 在 HTML5 中的標(biāo)題標(biāo)籤內(nèi)使用段落元素是否有效?

12 Nov 2024

HTML5 的標(biāo)題標(biāo)籤內(nèi)段落元素標(biāo)記是否有效?

HTML5:現(xiàn)代網(wǎng)絡(luò)的基礎(chǔ)(H5) HTML5:現(xiàn)代網(wǎng)絡(luò)的基礎(chǔ)(H5)

21 Apr 2025

HTML5是超文本標(biāo)記語言的最新版本,由W3C標(biāo)準(zhǔn)化。 HTML5引入了新的語義化標(biāo)籤、多媒體支持和表單增強(qiáng),提升了網(wǎng)頁結(jié)構(gòu)、用戶體驗和SEO效果。 HTML5引入了新的語義化標(biāo)籤,如、、、等,使網(wǎng)頁結(jié)構(gòu)更清晰,SEO效果更好。 HTML5支持多媒體元素和,無需第三方插件,提升了用戶體驗和加載速度。 HTML5增強(qiáng)了表單功能,引入了新的輸入類型如、等,提高了用戶體驗和表單驗證效率。

為什麼我的 HTML5 圖像有神秘的 3px 底部邊距? 為什麼我的 HTML5 圖像有神秘的 3px 底部邊距?

19 Dec 2024

HTML5 之謎:圖片出現(xiàn)意外的邊距考慮將網(wǎng)站轉(zhuǎn)換為 HTML5 時遇到的一個特殊問題。沒想到,每...

See all articles See all articles

熱工具

HTML5 Canvas愛心飄動動畫特效

HTML5 Canvas愛心飄動動畫特效

HTML5 Canvas愛心飄動動畫特效是一款直接用瀏覽器開啟可以看到一顆心的生成動畫。

H5熊貓彈跳小遊戲原始碼

H5熊貓彈跳小遊戲原始碼

html5手機(jī)熊貓也瘋狂小遊戲原始碼。遊戲說明:長按螢?zāi)徽{(diào)整熊貓彈簧的強(qiáng)度,跳到石柱上。掉到河裡遊戲結(jié)束。

html5情人節(jié)盒子動畫特效

html5情人節(jié)盒子動畫特效

基於svg繪製情人節(jié)一個個愛心盒子禮物打開動畫,愛心盒子動畫特效。

H5 3D滾球遊戲原始碼

H5 3D滾球遊戲原始碼

html5酷炫3D彩球滾動手機(jī)遊戲代碼下載。遊戲介紹:一個彩色圓球滾動,透過滑鼠或手機(jī)觸控螢?zāi)煌弦穪砜刂撇是虻倪\(yùn)行當(dāng)前線路軌跡。這是一款簡單易操作的手機(jī)小遊戲原始碼。