Beispiel:SVG-Rube-Goldberg-5.html

Aus SELFHTML-Wiki
Wechseln zu: Navigation, Suche

<!DOCTYPE html> <html lang="de"> <head> <meta charset="utf-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Kugelstoßpendel</title> <style>

 line {
   stroke-width: 2px;
   stroke: steelBlue;
 }
 circle {
   fill: steelBlue;
   stroke: black;
 }
 .left{
   transform-origin: 120px 5px;
   animation: leftSwing 4s infinite;
 }
 .right{
   transform-origin: 280px 5px;
   animation: rightSwing 4s infinite;
 }
 @keyframes leftSwing{
   0%  {
     transform: rotate(0deg);
     animation-timing-function: ease-out;
   }
   25% {
     transform: rotate(30deg);
     animation-timing-function: ease-in;
   }
   50%, 
   100% {
     transform: rotate(0deg);
   }
 }
 @keyframes rightSwing{
   0%, 
   100%  {
     transform: rotate(0deg);
   }
   50% {
     transform: rotate(0deg);
     animation-timing-function: ease-out;
   }
   75% {
     transform: rotate(-30deg);
     animation-timing-function: ease-in;
   }
 }

</style> </head> <body> <svg viewBox="0 0 400 180">

 <g class="left">
   <line x1="120" y1="5" x2="120" y2="140"/>
   <circle cx="120" cy="155" r="20"/>
 </g>
 <line x1="160" y1="5" x2="160" y2="140"/>
 <circle cx="160" cy="155" r="20"/>
 <line x1="200" y1="5" x2="200" y2="140"/>
 <circle cx="200" cy="155" r="20"/>
 <line x1="240" y1="5" x2="240" y2="140"/>
 <circle cx="240" cy="155" r="20"/>
 <g class="right">
   <line x1="280" y1="5" x2="280" y2="140"/>
   <circle cx="280" cy="155" r="20"/>
 </g>
 <line style="stroke-width: 4px;" x1="20" y1="5" x2="380" y2="5"/>
 <circle cx="120" cy="5" r="2" />
 <circle cx="160" cy="5" r="2" />
 <circle cx="200" cy="5" r="2" />
 <circle cx="240" cy="5" r="2" />
 <circle cx="280" cy="5" r="2" />

</svg> </body> </html>