import { motion } from 'framer-motion' /** 登录背景:左青色数据流 + 右紫色神经网络 + 中央连线(呼应 logo)。搬自参考项目。 */ export default function AIBanner() { const dataParticles = Array.from({ length: 100 }).map((_, i) => ({ id: `dp-${i}`, y: 10 + Math.random() * 80, size: Math.random() > 0.8 ? 6 : Math.random() * 3 + 1.5, isSquare: Math.random() > 0.6, duration: Math.random() * 2 + 1.5, delay: Math.random() * 3, opacity: Math.random() * 0.7 + 0.3, })) const neuralNodes = [ { x: 10, y: 50 }, { x: 30, y: 25 }, { x: 35, y: 75 }, { x: 55, y: 45 }, { x: 75, y: 15 }, { x: 70, y: 85 }, { x: 90, y: 55 }, { x: 80, y: 40 }, { x: 50, y: 90 }, { x: 20, y: 95 }, { x: 95, y: 20 }, { x: 45, y: 10 }, { x: 85, y: 75 }, { x: 15, y: 20 }, ] const neuralLines = [ [0, 1], [0, 2], [1, 3], [2, 3], [1, 4], [3, 4], [3, 6], [2, 5], [3, 5], [5, 6], [4, 7], [6, 7], [2, 8], [5, 8], [0, 9], [2, 9], [4, 10], [7, 10], [1, 11], [4, 11], [6, 12], [5, 12], [0, 13], [1, 13], ] return (
{dataParticles.map((p) => ( ))}
{Array.from({ length: 20 }).map((_, i) => ( ))}
{neuralLines.map((line, i) => { const n1 = neuralNodes[line[0]] const n2 = neuralNodes[line[1]] return ( ) })} {neuralNodes.map((node, i) => ( ))}
{Array.from({ length: 4 }).map((_, i) => ( ))}
) }