谁说程序员不懂浪漫,满屏跳动的心形图案送给你,先看效果:

JavaScript代码如下:

<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body style="background-color: white">
<canvas id='cavs' style='position:fixed; z-index:-1;'></canvas>
</body>
</html>
<script type="text/javascript">
var canvas = document.getElementById("cavs");
const WIDTH = window.innerWidth;
const HEIGHT = window.innerHeight;
canvas.setAttribute("width", WIDTH);
canvas.setAttribute("height", HEIGHT);
var context = canvas.getContext("2d");
var start =
{loves: [],DURATION: 30,begin: function(){this.createLove();},createLove: function(){for (var i = 0; i < WIDTH / 59; i++){var love = new Love();this.loves.push(love);}setInterval(this.drawLove.bind(this), this.DURATION);},drawLove: function(){context.clearRect(0, 0, WIDTH, HEIGHT);for (var key in this.loves){this.loves[key].draw();}}
}
function Love()
{var me = this;function rand() {me.maxScale = (Math.random() * 3.2 + 1.2) * WIDTH / 521;me.curScale = 1.2 * WIDTH / 521;me.x = Math.floor(Math.random() * WIDTH - 40);me.y = Math.floor(HEIGHT - Math.random() * 200);me.ColR = Math.floor(Math.random() * 255);me.ColG = Math.floor(Math.random() * 255);me.ColB = Math.floor(Math.random() * 255);me.alpha = Math.random() * 0.2 + 0.8;me.vector = Math.random() * 5 + 0.4;}(function(){rand();} ());me.draw = function(){if (me.alpha < 0.01) rand();if(me.curScale < me.maxScale) me.curScale += 0.3;x = me.x;y = me.y;scale = me.curScale;context.fillStyle = "rgba(" + me.ColR + "," + me.ColG + "," + me.ColB + "," + me.alpha + ")";context.shadowBlur = 10;context.shadowColor = "rgb(" + me.ColR + "," + me.ColG + "," + me.ColB + ")";context.beginPath();context.bezierCurveTo( x + 2.5*scale, y + 2.5*scale, x + 2.0*scale, y, x, y );context.bezierCurveTo( x - 3.0*scale, y, x - 3.0*scale, y + 3.5*scale,x - 3.0*scale,y + 3.5*scale );context.bezierCurveTo( x - 3.0*scale, y + 5.5*scale, x - 1.0*scale, y + 7.7*scale, x + 2.5*scale, y + 9.5*scale );context.bezierCurveTo( x + 6.0*scale, y + 7.7*scale, x + 8.0*scale, y + 5.5*scale, x + 8.0*scale, y + 3.5*scale );context.bezierCurveTo( x + 8.0*scale, y + 3.5*scale, x + 8.0*scale, y, x + 5.0*scale, y );context.bezierCurveTo( x + 3.5*scale, y, x + 2.5*scale, y + 2.5*scale, x + 2.5*scale, y + 2.5*scale );context.fill();context.closePath();me.y -= me.vector;me.alpha -= (me.vector / 2.9 * 3.5 / HEIGHT);}
}
window.onload = function()
{start.begin();
}
</script>

JavaScript画漂亮的心形图案相关推荐

  1. html+js画一颗心形,javascript绘制漂亮的心型线效果完整实例

    本文实例讲述了javascript绘制漂亮的心型线效果实现方法.分享给大家供大家参考,具体如下: 运行效果截图如下: 具体代码如下: JS心型线 div{ position:absolute; } . ...

  2. java 打印心形图案_简单漂亮的心形礼品盒折纸手工教程

    1 精美的礼物少不了一个与其搭配的包装盒,当你有一份可经表达你心意或爱的礼物,准备送给他/她时,用这样一个心形的纸盒作为礼物的包装盒是再合适不过了,即简单又足够漂亮,而且可以与你的礼物要表达的意思相. ...

  3. 用java画爱心图_java实现心形图案桃心

    相信对于打印三角形都没什么难度,只必要诳骗for轮回嵌套驾驭就行可是看待打印圆形和三角形分袂原故到圆心隔绝相称的点大凡不会横坐标和纵坐标都为整数打印爱酷爱心的公式(x²+y²-1)³-x²*y³=0调 ...

  4. 怎么用python编写心形图案,python编程爱心形状turtle

    如何利用python画一个爱心 1 from turtle import * 2 def curvemove(): #这个函数是为了绘制爱心上方的曲线 3 for i in range(200): 4 ...

  5. 绘制动态心形图案::R语言绘制心形图

    原始方程源于此贴一楼:直通车 整理修改后: 被窝修改成这样: x<-seq(-1.1,1.1,length = 3000) rep<-30 y<-matrix(,3000,rep) ...

  6. Php字符拼出心形,怎么用文字拼成心形?名字心形图案怎么做?文字拼成一个爱心怎么制作?告白图片制作...

    昨天说明天就是七夕节了,那么今天呢~就是七夕啦,不过小编家乡那边不把七夕当情人节过的,反而是虚岁十五岁少年的成人礼,可隆重了呢~但是此刻不在老家的小编还是不能免俗的要把今天当成情人节啊,虽然是只单身汪 ...

  7. php编程输出心形图案_利用php输出不同的心形图案,php心形图案_PHP教程

    利用php输出不同的心形图案,php心形图案 首先为大家分享php输出心形曲线的代码,代码如下 效果如下: 利用php输出笛卡尔心形图案,代码如下 复制代码 代码如下:$width = 600; $h ...

  8. php 实现心芯图案,利用php输出不同的心形图案

    首先为大家分享php输出心形曲线的代码,代码如下 效果如下: 利用php输出笛卡尔心形图案,代码如下 复制代码 代码如下: $width = 600; $height = 650; header(&q ...

  9. 【C语言】用C语言输出“心形”图案

    在你们的世界里,是不是觉得程序猿一点浪漫都不懂?其实不是的,程序猿的世界也是很浪漫滴! 傻瓜版 int main() {printf("❤");return 0; } 高级版 // ...

最新文章

  1. 2021年大数据环境命令(一):常用命令汇总
  2. centos vim配置高亮语法和格式化粘贴
  3. 今年我读了四个开源项目的源码,来分享下心得
  4. 推特千赞Demo袭来!简笔画变照片的GauGAN,编故事的GPT-2,浏览器皆可玩
  5. 【Android 应用开发】BluetoothClass详解
  6. 谈谈战双的战斗机制设计趋同
  7. ESXi主机下的常用日志
  8. C++ 语法概括总结
  9. Camtasia怎么添加文字效果
  10. c# 服务器打印word文档,C#完成word文档打印的方法
  11. Issue during builing Android app with ant under Win7
  12. python的指令大全_python列表命令
  13. BMP、JPEG文件格式详解
  14. 随想录一期 day2 [977.有序数组的平方|209. 长度最小的子数组|59.螺旋矩阵II(剥洋葱)]
  15. 程序人生丨如何体现测试工程师的价值
  16. JavaScript:实现GnomeSort侏儒排序算法(附完整源码)
  17. 基于 Python 使用 CNN 实现身份证汉字和数字识别
  18. [JavaSE基础笔记]Day10 石头迷阵实现
  19. 爬虫速成(一):前言
  20. python手记(四):pillow(四) ImageDraw模块 图片绘制(图片上自定义绘制)

热门文章

  1. 深圳富士康有搞什么啊?又猝死了一个!
  2. maven工程依赖war包提示Could not find artifact xxxxxxxxx
  3. 网站本地化建设文章自动批量翻译工具
  4. docker安装nginx和php网页文件显示file not found
  5. 我的京东管理生涯随想 1
  6. 破解wifi的渗透工具
  7. 【Python量化】VaR在险价值的计算
  8. 求解二维矩形 Packing 问题的一种优美度枚举 算法的个人心得1
  9. linux下qt不能加载控件,找不到或加载Qt平台插件“xcb”
  10. facebook Faiss的基本使用示例