• Python画爱心——一颗会跳动的爱心~


    给你的Ta一个惊喜吧~

     今天给大家分享一个浪漫小技巧,利用Python中的HTML制作一个立体会动的心动小爱心

    ​​​​​​

    备注“爱心代码” 领取icon-default.png?t=N176https://docs.qq.com/doc/DY01kTFBRRXRHVkxr?&u=7e29e2e960d345a4863a848d36e98027

    成千上百个爱心汇成一个大爱心,从里到外形成一个立体状,给人视觉上的冲击感!浪漫极了↓

    上才艺: 



     
       
       


         
         
         
         
       

    部分代码
      (function () {
          var b = 0;
          var c = ["ms", "moz", "webkit", "o"];
          for (var a = 0; a < c.length && !window.requestAnimationFrame; ++a) {
            window.requestAnimationFrame = window[c[a] + "RequestAnimationFrame"];
            window.cancelAnimationFrame =
              window[c[a] + "CancelAnimationFrame"] ||
              window[c[a] + "CancelRequestAnimationFrame"];
          }
          if (!window.requestAnimationFrame) {
            window.requestAnimationFrame = function (h, e) {
              var d = new Date().getTime();
              var f = Math.max(0, 16 - (d - b));
              var g = window.setTimeout(function () {
                h(d + f);
              }, f);
              b = d + f;
              return g;
            };
          }
          if (!window.cancelAnimationFrame) {
            window.cancelAnimationFrame = function (d) {
              clearTimeout(d);
            };
          }
        })();

        /*
         *Point class
         */
        var Point = (function () {
          function Point(x, y) {
            this.x = typeof x !== "undefined" ? x : 0;
            this.y = typeof y !== "undefined" ? y : 0;
          }
          Point.prototype.clone = function () {
            return new Point(this.x, this.y);
          };
          Point.prototype.length = function (length) {
            if (typeof length == "undefined")
              return Math.sqrt(this.x * this.x + this.y * this.y);
            this.normalize();
            this.x *= length;
            this.y *= length;
            return this;
          };
          Point.prototype.normalize = function () {
            var length = this.length();
            this.x /= length;
            this.y /= length;
            return this;
          };
          return Point;
        })();

        /*
         * Particle class
         */
        var Particle = (function () {
          function Particle() {
            this.position = new Point();
            this.velocity = new Point();
            this.acceleration = new Point();
            this.age = 0;
          }
          Particle.prototype.initialize = function (x, y, dx, dy) {
            this.position.x = x;
            this.position.y = y;
            this.velocity.x = dx;
            this.velocity.y = dy;
            this.acceleration.x = dx * settings.particles.effect;
            this.acceleration.y = dy * settings.particles.effect;
            this.age = 0;
          };
          Particle.prototype.update = function (deltaTime) {
            this.position.x += this.velocity.x * deltaTime;
            this.position.y += this.velocity.y * deltaTime;
            this.velocity.x += this.acceleration.x * deltaTime;
            this.velocity.y += this.acceleration.y * deltaTime;
            this.age += deltaTime;
          };
          Particle.prototype.draw = function (context, image) {
            function ease(t) {
              return --t * t * t + 1;
            }
            var size = image.width * ease(this.age / settings.particles.duration);
            context.globalAlpha = 1 - this.age / settings.particles.duration;
            context.drawImage(
              image,
              this.position.x - size / 2,
              this.position.y - size / 2,
              size,
              size
            );
          };
          return Particle;
        })();

    运行结果:

  • 相关阅读:
    CPDA|对招聘HR来说,会数据分析有多香?
    Docker常用命令
    【UI自动化】通过剪切板发送文本
    PLC设备相关常用英文单词(一)
    微信登陆报redirect_uri 参数错误
    1125:矩阵乘法《详解》
    fastspar微生物相关性推断
    Android14之input高级调试技巧(一百八十八)
    网络安全(黑客)—2024自学
    GEE|typeof、ee.Algorithms.If、ee.Algorithms.IsEqual 语法
  • 原文地址:https://blog.csdn.net/nnn0245/article/details/127751674