← back to SVG Multi-Dripcompare with ground truth →
model output
LLaMA 4 Scout
SVG Multi-Drip
A 0.68T 0.24
1<!DOCTYPE html>
2<html lang="en">
3<head>
4 <meta charset="UTF-8">
5 <meta name="viewport" content="width=device-width, initial-scale=1.0">
6 <title>Animation</title>
7 <style>
8 body {
9 background-color: #000;
10 display: flex;
11 justify-content: center;
12 align-items: center;
13 height: 100vh;
14 margin: 0;
15 }
16 .animation-container {
17 position: relative;
18 }
19 .line {
20 position: absolute;
21 top: 50%;
22 left: 0;
23 transform: translateY(-50%);
24 width: 100%;
25 height: 2px;
26 background: linear-gradient(to right, #FF69B4, #FF0000);
27 filter: blur(2px);
28 }
29 .dots {
30 position: absolute;
31 top: 50%;
32 left: 0;
33 transform: translateY(-50%);
34 display: flex;
35 justify-content: space-between;
36 width: 100%;
37 }
38 .dot {
39 width: 4px;
40 height: 4px;
41 border-radius: 50%;
42 background-color: #FF69B4;
43 position: relative;
44 animation: dotAnimation 2s infinite;
45 }
46 .dot:nth-child(2n) {
47 background-color: #FF69B4;
48 }
49 .dot:nth-child(3n) {
50 background-color: #FF0000;
51 }
52
53 @keyframes dotAnimation {
54 0% {
55 transform: translateX(0) scale(1);
56 }
57 100% {
58 transform: translateX(100%) scale(1);
59 }
60 }
61
62 .dynamic-dots {
63 position: absolute;
64 top: 50%;
65 left: 0;
66 transform: translateY(-50%);
67 display: flex;
68 }
69
70 .dynamic-dot {
71 width: 8px;
72 height: 8px;
73 border-radius: 50%;
74 background-color: #FF69B4;
75 animation: dynamicDotAnimation 2s infinite;
76 }
77
78 @keyframes dynamicDotAnimation {
79 0% {
80 transform: translateX(0) scale(1);
81 }
82 100% {
83 transform: translateX(100%) scale(1);
84 }
85 }
86 </style>
87</head>
88<body>
89 <div class="animation-container">
90 <div class="line"></div>
91 <div class="dots">
92 <!-- dots will be generated dynamically -->
93 </div>
94 <div class="dynamic-dots">
95 <!-- dynamic dots will be generated dynamically -->
96 </div>
97 </div>
98 <script>
99 const dotsContainer = document.querySelector('.dots');
100 const dynamicDotsContainer = document.querySelector('.dynamic-dots');
101 const totalDots = 20; // Adjust based on design
102 const dynamicDots = 10; // Adjust based on design
103
104 for (let i = 0; i < totalDots; i++) {
105 const dot = document.createElement('div');
106 dot.classList.add('dot');
107 dotsContainer.appendChild(dot);
108 }
109
110 for (let i = 0; i < dynamicDots; i++) {
111 const dynamicDot = document.createElement('div');
112 dynamicDot.classList.add('dynamic-dot');
113 dynamicDotsContainer.appendChild(dynamicDot);
114 }
115 </script>
116</body>
117</html>