canvas实现背景连线,分享PDF高清版

canvas.height = window.innerHeight;

this.cW = canvas.width;

this.cH = canvas.height;

this.num = 200;

this.data = []; //存储粒子的属性

}

Stayrry.prototype = { //原型

//初始化粒子:实心圆

init: function() {

for(var i = 0; i < this.num; i++) {

this.data[i] = {

x: Math.random() * this.cW,

y: Math.random() * this.cH,

cx: Math.random() * 0.6 - 0.3,

cy: Math.random() * 0.6 - 0.3

}

this.drawCircle(this.data[i].x, this.data[i].y);

}

console.log(this.data);

},

//绘制粒子

drawCircle: function(x, y) {

var cxt = this.cxt;

cxt.save(); //保存路径

cxt.fillStyle = “red”;

cxt.beginPath(); //开始路径

cxt.arc(x, y, 5, 0, Math.PI * 2, false);

cxt.closePath(); //结束路径

cxt.fill(); //填充方法

cxt.restore(); //释放路径

},

//绘制线条

drawLine: function(x1, y1, x2, y2) {

var cxt = this.cxt;

var color = cxt.createLinearGradient(x1, y1, x2, y2);

color.addColorStop(0, “#369”);

color.addColorStop(1, “#333”);

cxt.save();

cxt.strokeStyle = color;

cxt.beginPath();

cxt.moveTo(x1, y1);

cxt.lineTo(x2, y2);

cxt.closePath(); //结束路径

cxt.stroke(); //线条方法

cxt.restore(); //释放路径

},

//粒子运动

moveCircle: function() {

var self = this;

self.cxt.clearRect(0, 0, self.cW, self.cH); //清除画布

//模拟的速度增量

for(var i = 0; i < self.num; i++) { //上一个点

self.data[i].x += self.data[i].cx;

self.data[i].y += self.data[i].cy;

//边界值判断

if(self.data[i].x > self.cW || self.data[i].x < 0) {

self.data[i].cx = -self.data[i].cx

}

if(self.data[i].y > self.cH || self.data[i].y < 0) {

self.data[i].cy = -self.data[i].cy

}

this.drawCircle(self.data[i].x, self.data[i].y);

//用勾股定理判断是否连线

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数前端工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
img
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以添加V获取:vip1024c (备注前端)
img

最后

如果你已经下定决心要转行做编程行业,在最开始的时候就要对自己的学习有一个基本的规划,还要对这个行业的技术需求有一个基本的了解。有一个已就业为目的的学习目标,然后为之努力,坚持到底。如果你有幸看到这篇文章,希望对你有所帮助,祝你转行成功。

CodeChina开源项目:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】

己的学习有一个基本的规划,还要对这个行业的技术需求有一个基本的了解。有一个已就业为目的的学习目标,然后为之努力,坚持到底。如果你有幸看到这篇文章,希望对你有所帮助,祝你转行成功。

CodeChina开源项目:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值