// 自动滚动示例组件
import { useState, useEffect } from 'react';
interface ExampleButtonsProps {
onSelect: (example: string) => void;
disabled: boolean;
}
/** 示例列表 */
const EXAMPLES = [
'演示勾股定理,带动画三角形和正方形',
'可视化二次函数及其属性并带动画',
'在单位圆上展示正弦和余弦的关系,带动画角度',
'创建 3D 曲面图,展示 z = x² + y²',
'计算并可视化半径为 r 的球体体积',
'展示如何用动画求立方体的表面积',
'将导数可视化切线斜率',
'用动画展示曲线下面积的工作原理',
'用动画变换演示矩阵运算',
'可视化 2x2 矩阵的特征值和特征向量',
'展示复数乘法使用旋转和缩放',
'动画展示简单微分方程的解',
];
export function ExampleButtons({ onSelect, disabled }: ExampleButtonsProps) {
const [currentIndex, setCurrentIndex] = useState(0);
useEffect(() => {
if (disabled) return;
const interval = setInterval(() => {
setCurrentIndex((prev) => (prev + 1) % EXAMPLES.length);
}, 3000);
return () => clearInterval(interval);
}, [disabled]);
return (
{/* 自动滚动示例卡片 */}
{/* 当前显示的示例 */}
{/* 左右导航按钮 */}
);
}