SVG动画案例库
浏览精选的SVG动画案例
移开即停止播放
'use client';
import React, { useState, useEffect, useMemo } from 'react';
export default function CICDCanaryView() {
const [phase, setPhase] = useState(0);
// 0: CI Build & Test
// 1: Deploy v2 (Init)
// 2: Canary 10%
// 3: Canary 50%
// 4: Full Rollout 100%
// 5: Decommission v1
const [trafficSplit, setTrafficSplit] = useState(0); // 0 to 1 (percentage to v2)
const [logs, setLogs] = useState<string[]>([]);
// Simulation Loop
useEffect(() => {
let timeout: NodeJS.T
ci/cd 灰度发布
移开即停止播放
'use client';
import React, { useState, useEffect, useRef, useMemo } from 'react';
// --- Constants & Helper Functions ---
const WIDTH = 1200;
const HEIGHT = 675; // 16:9 Aspect Ratio
const GROUND_Y = 550;
const FPS = 60;
// Color Palette
const COLORS = {
bg: '#0f172a',
blue: '#38bdf8',
blueGlow: '#0ea5e9',
red: '#f43f5e',
redGlow: '#e11d48',
white: '#ffffff',
text: 'rgba(255, 255, 255, 0.8)',
grid: 'rgba(56, 189, 248, 0.1)',
};
// Math Helpers
const lerp = (start, end, t) =>
兩個火柴人使用各種炫酷技能打架,例:巨大化、招喚黑洞、激光、
移开即停止播放
```tsx
'use client';
import React, { useState, useEffect, useRef, useMemo } from 'react';
const VIEW_WIDTH = 1000;
const VIEW_HEIGHT = 600;
// 诗歌内容配置
const POEM_LINES = [
{ text: "东皋薄暮望", sub: "Gazing from the heights at twilight", duration: 4000 },
{ text: "徙倚欲何依", sub: "Wandering with no one to rely on", duration: 4000 },
{ text: "树树皆秋色", sub: "Every tree is dyed with autumn colors", duration: 4000 },
{ text: "山山唯落晖", sub: "Every mountain reflects the setting sun", duration: 4000 },
请用动画形式展现《野望》这首唐诗的内容,配乐朗诵这首诗
移开即停止播放
'use client';
import React, { useState, useEffect, useRef, useMemo } from 'react';
// 视图常量
const VIEW_WIDTH = 1200;
const VIEW_HEIGHT = 700;
const CENTER_X = VIEW_WIDTH / 2;
const CENTER_Y = VIEW_HEIGHT / 2;
// 物理模拟参数
const ORBIT_TILT = 0.3; // 轨道倾斜度 (0-1), 越小越扁
const TIME_SPEED = 0.5; // 全局时间流速
const TRAIL_LENGTH = 30; // 轨迹长度(段数)
// 行星数据配置
// 增加 rotationSpeed (自转速度), textureType (纹理类型)
const PLANETS_DATA = [
{ name: '水星', en: 'MERCURY', r: 80, size: 5, speed: 2.0, rotationSpeed: 2.0, col
太阳系运动动画。立体。包含运动轨迹。 增加行星的自转。
移开即停止播放
'use client';
import React, { useState, useEffect, useRef, useMemo } from 'react';
const VIEW_WIDTH = 1000;
const VIEW_HEIGHT = 600;
const CENTER_X = VIEW_WIDTH / 2;
const CENTER_Y = VIEW_HEIGHT / 2;
// 粒子数量
const PARTICLE_COUNT = 150;
// 向量场网格密度
const GRID_COLS = 20;
const GRID_ROWS = 12;
// 辅助函数:生成高斯分布噪声
const randomNormal = (mean: number, std: number) => {
let u = 0, v = 0;
while (u === 0) u = Math.random();
while (v === 0) v = Math.random();
return mean + std * Math.sqrt(-2.0 * M
flow matching 原理的动画
移开即停止播放
'use client';
import React, { useState, useEffect, useMemo, useRef } from 'react';
const VIEW_WIDTH = 1000;
const VIEW_HEIGHT = 600;
const PADDING = 60;
const DRAW_AREA_W = VIEW_WIDTH - PADDING * 2;
const DRAW_AREA_H = VIEW_HEIGHT - PADDING * 2;
// 蒙德里安配色方案 (调整为更具科技感的色调)
const COLORS = [
'#f8fafc', // White/Light Grey (Dominant)
'#f8fafc',
'#f8fafc',
'#ef4444', // Tech Red
'#3b82f6', // Tech Blue
'#eab308', // Tech Yellow
'#1e293b', // Dark Grey block
];
// 递归分割算法生成格子
type Blo
我想创造蒙德里安的方格画的随机动态图
广告
Ads移开即停止播放
'use client';
import React, { useState, useEffect, useRef, useMemo } from 'react';
// 常量定义
const VIEW_WIDTH = 1000;
const VIEW_HEIGHT = 600;
const FPS = 60;
const PLAYER_SPEED = 4;
const LASER_SPEED = 12;
const ENEMY_SPEED = 2.5;
const SPAWN_RATE = 0.02;
// 颜色定义
const COLORS = {
bg: '#0f172a',
player: '#38bdf8', // 天蓝
playerLaser: '#ef4444', // 义军红色激光
enemy: '#94a3b8', // 帝国灰
enemyLaser: '#22c55e', // 帝国绿色激光
star: '#ffffff',
hud: '#0ea5e9',
explosion: '#fbbf24',
};
// 类型定义
ty
Generate a Star Wars game animation
移开即停止播放
'use client';
import React, { useState, useEffect, useRef, useMemo } from 'react';
const VIEW_WIDTH = 1000;
const VIEW_HEIGHT = 500;
const TEXT = "SVGANIMATE";
const BG_COLOR = "#0f172a"; // Slate 900
const MARVEL_RED = "#ec1d24"; // Official Marvel Red
const ACCENT_CYAN = "#06b6d4"; // Cyan for tech feel
// -----------------------
// 数据生成工具:模拟科技/漫画分镜
// -----------------------
const generateTechPanels = (count: number) => {
return Array.from({ length: count }).map((_, i) => {
// 每个分镜包含
生成一个类似漫威电影片头翻书的动画,最后出来文字:SVGAN
移开即停止播放
```javascript
'use client';
import React, { useState, useEffect, useRef, useMemo } from 'react';
const VIEW_WIDTH = 1000;
const VIEW_HEIGHT = 600;
const BG_COLOR = "#0f172a";
// ----------------------------------------------------------------------
// 辅助函数与常量
// ----------------------------------------------------------------------
// 试剂清单
const REAGENTS = [
{ name: "ddH2O", vol: "12.5μl", color: "#38bdf8" },
{ name: "10*PCR Buffer", vol: "2.5μl", color: "#818cf8" },
{ name: "dNTP (2.5
PCR 扩增PTC基因片段:按反应体系ddH2O 12.5μ
移开即停止播放
'use client';
import React, { useState, useEffect, useMemo } from 'react';
const VIEW_WIDTH = 1000;
const VIEW_HEIGHT = 600;
// 颜色定义
const COLORS = {
bg: '#0f172a',
primary: '#3b82f6', // 蓝色
success: '#10b981', // 绿色
danger: '#ef4444', // 红色
warning: '#f59e0b', // 橙色
text: '#e2e8f0',
grid: '#1e293b',
dim: '#475569'
};
// 阶段定义
const STAGES = [
{ id: 0, title: '正常运行 & 本地备份', sub: 'Normal Operation & Local Backup', desc: '数据实时写入本地存储,业务正常访问' },
{ id: 1, title: '异地数据同步', sub:
数据备份和容灾基本概念、分类及原理动画
移开即停止播放
```jsx
'use client';
import React, { useState, useEffect, useRef, useMemo } from 'react';
// --- 常量定义 ---
const VIEW_WIDTH = 1200;
const VIEW_HEIGHT = 600;
const COLOR_BG = '#0f172a'; // 深色背景 (Slate 900)
const COLOR_CYAN = '#06b6d4'; // 科技蓝 (Cyan 500)
const COLOR_MAGENTA = '#d946ef'; // 霓虹紫 (Fuchsia 500)
const COLOR_GRID = '#1e293b'; // 网格色 (Slate 800)
// --- 辅助 Hook: 动画循环 ---
const useAnimationFrame = (callback) => {
const requestRef = useRef();
const previousTimeRef = useRef();
const