效果图

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><title>小心心</title><style>body {background: #000800;}canvas {margin: 0 auto;display: block;}</style>
</head><body><canvas></canvas><div style="text-align:center;margin:50px 0; font:normal 14px/24px 'MicroSoft YaHei';color:#ffffff"></div></body>
<script>let canvas = document.querySelector('canvas'),speedSelect = document.querySelector('#speed'),width = 300,height = 300,ctx = canvas.getContext('2d'),pSystemSize = 1000,deform = {a: 100,s: 0.4,min: -200,max: 200,dir: 1}; // a=4 is natural if not animated;const mcos = Math.cos,msin = Math.sin,mpow = Math.pow,PI180 = Math.PI / 180,tau = Math.PI * 2;canvas.width = width;canvas.height = height;ctx.lineWidth = 1;const ParticleSystem = function(num) {this.scalar = 8;this.numParticles = num;this.allParticles = [];this.x = width * .5;this.y = height * .5;this.generate();}ParticleSystem.prototype.generate = function() {for (let i = 0; i < this.numParticles; i++) {let vo = {};vo.degrees = (360 / this.numParticles) * i * PI180;vo.parent = this;vo.x = width / 2;vo.y = height / 2;vo.vx = 0;vo.vy = 0;this.allParticles.push(new Particle(vo));}}ParticleSystem.prototype.update = function() {for (let i = 0; i < this.allParticles.length; i++) {this.allParticles[i].update();}}const Particle = function(vo) {this.degrees = vo.degrees;this.parent = vo.parent;this.x = vo.x;this.y = vo.y;this.vx = 0;this.vy = 0;this.colour = 'hsl(' + (Math.round((this.degrees * (180 / Math.PI)))) + ',100%,50%)';}Particle.prototype.update = function() {// http://mathworld.wolfram.com/HeartCurve.htmlthis.vx = 16 * mpow(msin(this.degrees), 3) * deform.dir;this.vy = ((13 * mcos(this.degrees)) -(6 * mcos(2 * this.degrees)) - // 5(2 * mcos(3 * this.degrees)) -(mcos(deform.a * this.degrees))) * -1;// update positionthis.x = this.vx * this.parent.scalar + this.parent.x;this.y = this.vy * this.parent.scalar + this.parent.y;}function update() {if (deform.dir === 1) {if (deform.a > deform.min) {deform.a -= deform.s;} else {flipDirection();}} else {if (deform.a < deform.max) {deform.a += deform.s;} else {flipDirection();}}system.update();}function flipDirection() {deform.dir *= -1;}function draw() {ctx.clearRect(0, 0, width, height);ctx.save();for (let i = 0; i < system.numParticles; i++) {let p = system.allParticles[i];ctx.fillStyle = p.colour;ctx.beginPath();ctx.arc(p.x, p.y, 1, 0, tau, false);ctx.fill();}ctx.restore();}function animate() {update();draw();requestAnimationFrame(animate);}let system = new ParticleSystem(pSystemSize);animate();
</script></html>

表白必备 小心心 biubiubiu~相关推荐

  1. 用代码写一个表白biu小心心

    废话不多说,直接上效果图 效果如图,需要代码的宝宝,关注,私信我

  2. Python表白代码合集:5种表白代码、比小心心、无限弹窗、520表白墙、抖音热门表白小软件、无套路表白

       一.介绍一下         写了5个Python表白代码,代码很简单,通俗易懂,都有注释.有什么问题联系本人QQ:483062431.文章最后教你们怎么打包成exe,如果你懒得搞懂代码怎么回事 ...

  3. html+css+javascript满屏雪花爱心520表白网站 (含音乐)520告白/七夕情人节/生日礼物/程序员表白必备

    ❉ html+css+javascript雪花爱心520表白网站 (含音乐)程序员表白必备 一年一度的/520情人节/七夕情人节/生日礼物/告白师妹/圣诞节/元旦节跨年/程序员表白, 程序员浪漫起来真 ...

  4. 七夕情人节教你如何告白~html+css+js制作唯美满天星3D相册(含音乐)程序员520表白必备

    ❉ 七夕情人节教你如何告白~html+css+js制作唯美满天星3D相册(含音乐)程序员520表白必备 一年一度的/520情人节/七夕情人节/生日礼物/告白师妹/程序员表白,是不是要给女朋友或者正在追 ...

  5. ❤女朋友生日❤ HTML+css3+js 实现抖音炫酷樱花3D相册 (含背景音乐)程序员表白必备

    一年一度的/520/七夕情人节/女朋友生日/程序员表白,是不是要给女朋友或者正在追求的妹子一点小惊喜呢,今天这篇博客就分享下前端代码如何实现3D立体动态相册.赶紧学会了,来制作属于我们程序员的浪漫吧! ...

  6. 使用vue完成点击鼠标产生小心心特效

    先上源码 背景颜色很不好看,如需修改请#lovesBgc{}更改这个里边的就好 <template><div><div id="lovesBgc" & ...

  7. ❤唯美满天星❤ html+css+js炫酷3D相册(含音乐/可自定义文字)程序员表白必备

    元旦节快到了,在跨年夜前夕.是不是要给女朋友或者正在追求的妹子一点小惊喜呢,今天这篇博客就分享下前端代码如何实现3D立体动态相册.赶紧学会了,来制作属于我们程序员的浪漫吧! ❤元旦节表白3D相册,在元 ...

  8. html+css+javascript满屏雪花爱心520表白网站 (含音乐)520告白/七夕情人节/生日礼物/程序员表白必备...

    ❉ html+css+javascript雪花爱心520表白网站 (含音乐)程序员表白必备 一年一度的/520情人节/七夕情人节/生日礼物/告白师妹/圣诞节/元旦节跨年/程序员表白, 程序员浪漫起来真 ...

  9. ❤女朋友生日❤ HTML+css3+js 实现抖音炫酷樱花3D相册 (含背景音乐)程序员表白必备...

    一年一度的/520/七夕情人节/女朋友生日/程序员表白,是不是要给女朋友或者正在追求的妹子一点小惊喜呢,今天这篇博客就分享下前端代码如何实现3D立体动态相册.赶紧学会了,来制作属于我们程序员的浪漫吧! ...

最新文章

  1. 【C/C++语言入门篇】-- 文件操作
  2. WP8模拟器启动失败解决方法
  3. linux内核5.4,Linux Kernel 5.4 RC8 发布,一切都很正常
  4. 解决VS2010 beta2 安装后html标签和script智能提示不起作用的问题
  5. 深入研究Clang(四) Clang编译器的简单分析
  6. Javaweb MVC设计模式、Modle发展史、项目分层和三层架构
  7. 金明的预算方案(洛谷-P1064)
  8. anaconda python下载_anaconda3下载 anaconda python 3.7 for Win64 v2019.10 官方安装免费版 下载-脚本之家...
  9. 使用mvc2里面的area让网站更有条理
  10. (WCF)阅读WCF分布式开发步步为赢(2)自定义托管宿主WCF解决方案开发配置过程详解的一点心得...
  11. PHP利用有道智云提供的API接口来翻译字符串
  12. AWS EMR 上 Spark 任务 Container killed Exit code 137 错误
  13. ABAP/4 编辑器 quot;插入quot; 命令,表TSE05
  14. 《电子签名法》:CA名词解释
  15. 核桃、石头和榴莲——中年男人の致富经
  16. SSL: CERTIFICATE_VERIFY_FAILED
  17. STM32最彻底的死机是什么?看门狗也挂了?
  18. 解决:docker容器内可以访问web应用,端口映射到宿主机却无法访问,错误代码:curl: 56 Recv failure: 连接被对方重设
  19. 4.1 I/O流
  20. 2021款途锐噪音测试软件,试驾2021款大众途锐:这才是原汁原味的德国沃尔夫斯堡的味道...

热门文章

  1. 30岁软件测试,目前已失业4个月,迷茫不知该怎么办?
  2. ps2023宿主滤镜磨皮插件Portraiture安装教程
  3. 吴恩达深度学习coursework1
  4. markdown语法下
  5. python解析markdown_fluent-python-translate
  6. dhcp服务器设置(路由器dhcp服务器怎么设置)
  7. Fixcel电子表单——Excel导入
  8. java开发实战经典(第二版)P528 14-2
  9. 微型计算机的 I3 I5是,i3与i5有什么区别
  10. andro studio高德地图开发:显示定位蓝点