Wednesday, 26 September 2018

Best css animation effects you must see | css spinner animation





<!DOCTYPE html>

<html lang="en" >



<head>

  <meta charset="UTF-8">

  <title>18. circular trails</title>

 

    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/normalize/5.0.0/normalize.min.css">

<style>

body,

html {

  margin: 0;

  padding: 0;

}

canvas {

  display: block;

}



</style>

</head>



<body>



 

  <script src='https://cdnjs.cloudflare.com/ajax/libs/p5.js/0.7.0/p5.min.js'></script>

<script src='https://cdnjs.cloudflare.com/ajax/libs/p5.js/0.6.1/addons/p5.dom.js'></script>

<script src='https://cdnjs.cloudflare.com/ajax/libs/dat-gui/0.7.2/dat.gui.min.js'></script>



 



    <script>

var gui = new dat.GUI();







var opacity = false;

var angle = 0;

var speed = 0.01;



var relativeSpeed = 1.6;



var innerCircles = 7;

var outerCircles = 5;

var radi = 220;





gui.add(window, 'opacity');

var rsC = gui.add(window, 'relativeSpeed', 0, 2.4, 0.4);



rsC.onChange(function () {

  background(0);

});

function setup() {

  createCanvas(windowWidth, windowHeight);

  noStroke();

  // strokeWeight(2)

  background(0);

}



function draw() {

  var l0 = radi;

  var l1 = 60;



  background(0, opacity ? 255 : 10);



  translate(width / 2, height / 2);

  rotate(angle);



  for (var i = 0; i < innerCircles; i++) {

    fill(color('hsb(' + round(angle * 30 * i) % 360 + ',100%,100%)'));

    push();

    rotate(i * TWO_PI / innerCircles);

    translate(0, l0);

    ellipse(0, 0, 7);



    rotate(angle * relativeSpeed);

    for (var j = 0; j < outerCircles; j++) {

      push();

      fill(color('hsb(' + round(angle * 30 * (j + i)) % 360 + ',100%,100%)'));

      rotate(j * TWO_PI / outerCircles);

      translate(0, l1);

      ellipse(0, 0, 7);



      pop();

    }



    pop();

  }

  angle += speed;

}





function windowResized() {

  resizeCanvas(windowWidth, windowHeight);

  background(0);

}





function mousePressed() {

  background(0);

  innerCircles = random(6, 10);

  outerCircles = random(5, 10);



  radi = map(innerCircles, 6, 10, 200, 280);

}

</script>









</body>



</html>


No comments:

Post a Comment