/** * 格子仿画 - 5x5 网格形状数据 * 适用于常用尺寸,适中难度 */ import { ShapeTemplate } from '../types/gridTypes'; // ==================== 5x5 形状模板 ==================== /** 所有 5x5 形状模板 */ export const ALL_5X5_SHAPES: ShapeTemplate[] = [ /** 十字形 */ { id: 'cross-5x5-001', name: '十字形', category: 'geometric', difficulty: 1, supportSymmetry: true, symmetryType: 'both', isComplete: true, cells: [ { x: 2, y: 0, color: '#FFE176' }, // 顶部 { x: 2, y: 1, color: '#FFE176' }, { x: 0, y: 2, color: '#FFE176' }, // 左侧 { x: 1, y: 2, color: '#FFE176' }, { x: 2, y: 2, color: '#FFE176' }, // 中心 { x: 3, y: 2, color: '#FFE176' }, { x: 4, y: 2, color: '#FFE176' }, // 右侧 { x: 2, y: 3, color: '#FFE176' }, { x: 2, y: 4, color: '#FFE176' }, // 底部 ], }, /** X形 */ { id: 'x-5x5-001', name: 'X形', category: 'geometric', difficulty: 2, supportSymmetry: true, symmetryType: 'both', isComplete: true, cells: [ { x: 0, y: 0, color: '#79A7ED' }, { x: 1, y: 1, color: '#79A7ED' }, { x: 2, y: 2, color: '#79A7ED' }, { x: 3, y: 3, color: '#79A7ED' }, { x: 4, y: 4, color: '#79A7ED' }, { x: 4, y: 0, color: '#79A7ED' }, { x: 3, y: 1, color: '#79A7ED' }, { x: 1, y: 3, color: '#79A7ED' }, { x: 0, y: 4, color: '#79A7ED' }, ], }, /** 星星 */ { id: 'star-5x5-001', name: '星星', category: 'geometric', difficulty: 3, supportSymmetry: true, symmetryType: 'both', isComplete: true, cells: [ { x: 2, y: 0, color: '#FFE176' }, // 顶部 { x: 1, y: 1, color: '#FFE176' }, { x: 3, y: 1, color: '#FFE176' }, { x: 0, y: 2, color: '#FFE176' }, { x: 2, y: 2, color: '#FFE176' }, // 中心 { x: 4, y: 2, color: '#FFE176' }, { x: 1, y: 3, color: '#FFE176' }, { x: 3, y: 3, color: '#FFE176' }, { x: 2, y: 4, color: '#FFE176' }, // 底部 ], }, /** Z字形 */ { id: 'zigzag-5x5-001', name: 'Z字形', category: 'geometric', difficulty: 2, supportSymmetry: false, isComplete: true, cells: [ { x: 0, y: 0, color: '#9C98DE' }, { x: 1, y: 0, color: '#9C98DE' }, { x: 2, y: 0, color: '#9C98DE' }, { x: 2, y: 1, color: '#9C98DE' }, { x: 1, y: 2, color: '#9C98DE' }, { x: 0, y: 2, color: '#9C98DE' }, { x: 0, y: 3, color: '#9C98DE' }, { x: 1, y: 3, color: '#9C98DE' }, { x: 2, y: 4, color: '#9C98DE' }, { x: 3, y: 4, color: '#9C98DE' }, { x: 4, y: 4, color: '#9C98DE' }, ], }, /** V字形 */ { id: 'v-5x5-001', name: 'V字形', category: 'geometric', difficulty: 2, supportSymmetry: true, symmetryType: 'vertical', isComplete: true, cells: [ { x: 0, y: 0, color: '#53D1B6' }, { x: 4, y: 0, color: '#53D1B6' }, { x: 0, y: 1, color: '#53D1B6' }, { x: 4, y: 1, color: '#53D1B6' }, { x: 1, y: 2, color: '#53D1B6' }, { x: 3, y: 2, color: '#53D1B6' }, { x: 2, y: 3, color: '#53D1B6' }, { x: 2, y: 4, color: '#53D1B6' }, ], }, /** I字形 */ { id: 'i-5x5-001', name: 'I字形', category: 'geometric', difficulty: 1, supportSymmetry: true, symmetryType: 'vertical', isComplete: true, cells: [ { x: 1, y: 0, color: '#F9A857' }, { x: 2, y: 0, color: '#F9A857' }, { x: 3, y: 0, color: '#F9A857' }, { x: 2, y: 1, color: '#F9A857' }, { x: 2, y: 2, color: '#F9A857' }, { x: 2, y: 3, color: '#F9A857' }, { x: 2, y: 4, color: '#F9A857' }, { x: 1, y: 4, color: '#F9A857' }, { x: 3, y: 4, color: '#F9A857' }, ], }, /** 棋盘格 */ { id: 'checkerboard-5x5-001', name: '棋盘格', category: 'geometric', difficulty: 3, supportSymmetry: true, symmetryType: 'both', isComplete: true, cells: [ { x: 0, y: 0, color: '#FFE176' }, { x: 2, y: 0, color: '#FFE176' }, { x: 4, y: 0, color: '#FFE176' }, { x: 1, y: 1, color: '#FFE176' }, { x: 3, y: 1, color: '#FFE176' }, { x: 0, y: 2, color: '#FFE176' }, { x: 2, y: 2, color: '#FFE176' }, { x: 4, y: 2, color: '#FFE176' }, { x: 1, y: 3, color: '#FFE176' }, { x: 3, y: 3, color: '#FFE176' }, { x: 0, y: 4, color: '#FFE176' }, { x: 2, y: 4, color: '#FFE176' }, { x: 4, y: 4, color: '#FFE176' }, ], }, /** 心形(简化版) */ { id: 'heart-5x5-001', name: '心形', category: 'object', difficulty: 2, supportSymmetry: true, symmetryType: 'vertical', isComplete: true, cells: [ { x: 1, y: 0, color: '#F2A4C0' }, { x: 2, y: 0, color: '#F2A4C0' }, { x: 3, y: 0, color: '#F2A4C0' }, { x: 0, y: 1, color: '#F2A4C0' }, { x: 2, y: 1, color: '#F2A4C0' }, { x: 4, y: 1, color: '#F2A4C0' }, { x: 1, y: 2, color: '#F2A4C0' }, { x: 2, y: 2, color: '#F2A4C0' }, { x: 3, y: 2, color: '#F2A4C0' }, { x: 2, y: 3, color: '#F2A4C0' }, { x: 2, y: 4, color: '#F2A4C0' }, ], }, /** 菱形 */ { id: 'diamond-5x5-001', name: '菱形', category: 'geometric', difficulty: 2, supportSymmetry: true, symmetryType: 'both', isComplete: true, cells: [ { x: 2, y: 0, color: '#F9A857' }, { x: 1, y: 1, color: '#F9A857' }, { x: 2, y: 1, color: '#F9A857' }, { x: 3, y: 1, color: '#F9A857' }, { x: 0, y: 2, color: '#F9A857' }, { x: 1, y: 2, color: '#F9A857' }, { x: 2, y: 2, color: '#F9A857' }, { x: 3, y: 2, color: '#F9A857' }, { x: 4, y: 2, color: '#F9A857' }, { x: 1, y: 3, color: '#F9A857' }, { x: 2, y: 3, color: '#F9A857' }, { x: 3, y: 3, color: '#F9A857' }, { x: 2, y: 4, color: '#F9A857' }, ], }, /** T形 */ { id: 't-5x5-001', name: 'T形', category: 'geometric', difficulty: 1, supportSymmetry: true, symmetryType: 'vertical', isComplete: true, cells: [ { x: 0, y: 0, color: '#53D1B6' }, { x: 1, y: 0, color: '#53D1B6' }, { x: 2, y: 0, color: '#53D1B6' }, { x: 3, y: 0, color: '#53D1B6' }, { x: 4, y: 0, color: '#53D1B6' }, { x: 2, y: 1, color: '#53D1B6' }, { x: 2, y: 2, color: '#53D1B6' }, { x: 2, y: 3, color: '#53D1B6' }, { x: 2, y: 4, color: '#53D1B6' }, ], }, /** U形 */ { id: 'u-5x5-001', name: 'U形', category: 'geometric', difficulty: 2, supportSymmetry: true, symmetryType: 'vertical', isComplete: true, cells: [ { x: 0, y: 0, color: '#6CD2EA' }, { x: 4, y: 0, color: '#6CD2EA' }, { x: 0, y: 1, color: '#6CD2EA' }, { x: 4, y: 1, color: '#6CD2EA' }, { x: 0, y: 2, color: '#6CD2EA' }, { x: 4, y: 2, color: '#6CD2EA' }, { x: 0, y: 3, color: '#6CD2EA' }, { x: 1, y: 3, color: '#6CD2EA' }, { x: 2, y: 3, color: '#6CD2EA' }, { x: 3, y: 3, color: '#6CD2EA' }, { x: 4, y: 3, color: '#6CD2EA' }, ], }, /** 圆形(5x5近似) */ { id: 'circle-5x5-001', name: '圆形', category: 'geometric', difficulty: 2, supportSymmetry: true, symmetryType: 'both', isComplete: true, cells: [ { x: 1, y: 0, color: '#9C98DE' }, { x: 2, y: 0, color: '#9C98DE' }, { x: 3, y: 0, color: '#9C98DE' }, { x: 0, y: 1, color: '#9C98DE' }, { x: 4, y: 1, color: '#9C98DE' }, { x: 0, y: 2, color: '#9C98DE' }, { x: 4, y: 2, color: '#9C98DE' }, { x: 0, y: 3, color: '#9C98DE' }, { x: 4, y: 3, color: '#9C98DE' }, { x: 1, y: 4, color: '#9C98DE' }, { x: 2, y: 4, color: '#9C98DE' }, { x: 3, y: 4, color: '#9C98DE' }, ], }, /** 三角形 */ { id: 'triangle-5x5-001', name: '三角形', category: 'geometric', difficulty: 2, supportSymmetry: true, symmetryType: 'vertical', isComplete: true, cells: [ { x: 2, y: 0, color: '#F9A857' }, { x: 1, y: 1, color: '#F9A857' }, { x: 2, y: 1, color: '#F9A857' }, { x: 3, y: 1, color: '#F9A857' }, { x: 0, y: 2, color: '#F9A857' }, { x: 1, y: 2, color: '#F9A857' }, { x: 2, y: 2, color: '#F9A857' }, { x: 3, y: 2, color: '#F9A857' }, { x: 4, y: 2, color: '#F9A857' }, { x: 0, y: 3, color: '#F9A857' }, { x: 1, y: 3, color: '#F9A857' }, { x: 2, y: 3, color: '#F9A857' }, { x: 3, y: 3, color: '#F9A857' }, { x: 4, y: 3, color: '#F9A857' }, { x: 0, y: 4, color: '#F9A857' }, { x: 1, y: 4, color: '#F9A857' }, { x: 2, y: 4, color: '#F9A857' }, { x: 3, y: 4, color: '#F9A857' }, { x: 4, y: 4, color: '#F9A857' }, ], }, /** 多色星星 */ { id: 'colorful-star-5x5-001', name: '多色星星', category: 'geometric', difficulty: 3, supportSymmetry: true, symmetryType: 'both', isComplete: true, cells: [ { x: 2, y: 0, color: '#FFE176' }, // 顶部 - 黄色 { x: 1, y: 1, color: '#F9A857' }, // 左上 - 橙色 { x: 3, y: 1, color: '#F9A857' }, // 右上 - 橙色 { x: 0, y: 2, color: '#ED6D50' }, // 左 - 红色 { x: 2, y: 2, color: '#FFE176' }, // 中心 - 黄色 { x: 4, y: 2, color: '#ED6D50' }, // 右 - 红色 { x: 1, y: 3, color: '#F9A857' }, // 左下 - 橙色 { x: 3, y: 3, color: '#F9A857' }, // 右下 - 橙色 { x: 2, y: 4, color: '#FFE176' }, // 底部 - 黄色 ], }, /** 多色心形 */ { id: 'colorful-heart-5x5-001', name: '多色心形', category: 'object', difficulty: 2, supportSymmetry: true, symmetryType: 'vertical', isComplete: true, cells: [ { x: 1, y: 0, color: '#F2A4C0' }, // 粉色 { x: 2, y: 0, color: '#ED6D50' }, // 红色 { x: 3, y: 0, color: '#F2A4C0' }, // 粉色 { x: 0, y: 1, color: '#F2A4C0' }, // 粉色 { x: 2, y: 1, color: '#ED6D50' }, // 红色 { x: 4, y: 1, color: '#F2A4C0' }, // 粉色 { x: 1, y: 2, color: '#F2A4C0' }, // 粉色 { x: 2, y: 2, color: '#ED6D50' }, // 红色 { x: 3, y: 2, color: '#F2A4C0' }, // 粉色 { x: 2, y: 3, color: '#ED6D50' }, // 红色 { x: 2, y: 4, color: '#ED6D50' }, // 红色 ], }, /** 边框 */ { id: 'frame-5x5-001', name: '边框', category: 'geometric', difficulty: 2, supportSymmetry: true, symmetryType: 'both', isComplete: true, cells: [ { x: 0, y: 0, color: '#B2D94B' }, { x: 1, y: 0, color: '#B2D94B' }, { x: 2, y: 0, color: '#B2D94B' }, { x: 3, y: 0, color: '#B2D94B' }, { x: 4, y: 0, color: '#B2D94B' }, { x: 0, y: 1, color: '#B2D94B' }, { x: 4, y: 1, color: '#B2D94B' }, { x: 0, y: 2, color: '#B2D94B' }, { x: 4, y: 2, color: '#B2D94B' }, { x: 0, y: 3, color: '#B2D94B' }, { x: 4, y: 3, color: '#B2D94B' }, { x: 0, y: 4, color: '#B2D94B' }, { x: 1, y: 4, color: '#B2D94B' }, { x: 2, y: 4, color: '#B2D94B' }, { x: 3, y: 4, color: '#B2D94B' }, { x: 4, y: 4, color: '#B2D94B' }, ], }, /** 加号 */ { id: 'plus-5x5-001', name: '加号', category: 'geometric', difficulty: 1, supportSymmetry: true, symmetryType: 'both', isComplete: true, cells: [ { x: 2, y: 0, color: '#F2A4C0' }, { x: 0, y: 2, color: '#F2A4C0' }, { x: 1, y: 2, color: '#F2A4C0' }, { x: 2, y: 2, color: '#F2A4C0' }, { x: 3, y: 2, color: '#F2A4C0' }, { x: 4, y: 2, color: '#F2A4C0' }, { x: 2, y: 4, color: '#F2A4C0' }, ], }, /** 点阵 */ { id: 'dots-5x5-001', name: '点阵', category: 'geometric', difficulty: 2, supportSymmetry: true, symmetryType: 'both', isComplete: true, cells: [ { x: 0, y: 0, color: '#79A7ED' }, { x: 2, y: 0, color: '#79A7ED' }, { x: 4, y: 0, color: '#79A7ED' }, { x: 1, y: 2, color: '#79A7ED' }, { x: 3, y: 2, color: '#79A7ED' }, { x: 0, y: 4, color: '#79A7ED' }, { x: 2, y: 4, color: '#79A7ED' }, { x: 4, y: 4, color: '#79A7ED' }, ], }, /** 数字5 */ { id: 'number-5-5x5-001', name: '数字5', category: 'geometric', difficulty: 2, supportSymmetry: false, isComplete: true, cells: [ { x: 0, y: 0, color: '#FC9B6C' }, { x: 1, y: 0, color: '#FC9B6C' }, { x: 2, y: 0, color: '#FC9B6C' }, { x: 0, y: 1, color: '#FC9B6C' }, { x: 0, y: 2, color: '#FC9B6C' }, { x: 1, y: 2, color: '#FC9B6C' }, { x: 2, y: 2, color: '#FC9B6C' }, { x: 2, y: 3, color: '#FC9B6C' }, { x: 0, y: 4, color: '#FC9B6C' }, { x: 1, y: 4, color: '#FC9B6C' }, { x: 2, y: 4, color: '#FC9B6C' }, ], }, /** 数字6 */ { id: 'number-6-5x5-001', name: '数字6', category: 'geometric', difficulty: 2, supportSymmetry: false, isComplete: true, cells: [ { x: 1, y: 0, color: '#6CD2EA' }, { x: 2, y: 0, color: '#6CD2EA' }, { x: 0, y: 1, color: '#6CD2EA' }, { x: 0, y: 2, color: '#6CD2EA' }, { x: 1, y: 2, color: '#6CD2EA' }, { x: 2, y: 2, color: '#6CD2EA' }, { x: 0, y: 3, color: '#6CD2EA' }, { x: 2, y: 3, color: '#6CD2EA' }, { x: 1, y: 4, color: '#6CD2EA' }, { x: 2, y: 4, color: '#6CD2EA' }, ], }, /** 数字9 */ { id: 'number-9-5x5-001', name: '数字9', category: 'geometric', difficulty: 2, supportSymmetry: false, isComplete: true, cells: [ { x: 1, y: 0, color: '#B2D94B' }, { x: 2, y: 0, color: '#B2D94B' }, { x: 0, y: 1, color: '#B2D94B' }, { x: 2, y: 1, color: '#B2D94B' }, { x: 0, y: 2, color: '#B2D94B' }, { x: 1, y: 2, color: '#B2D94B' }, { x: 2, y: 2, color: '#B2D94B' }, { x: 2, y: 3, color: '#B2D94B' }, { x: 1, y: 4, color: '#B2D94B' }, { x: 2, y: 4, color: '#B2D94B' }, ], }, /** 多色棋盘格 */ { id: 'colorful-checkerboard-5x5-001', name: '多色棋盘格', category: 'geometric', difficulty: 3, supportSymmetry: true, symmetryType: 'both', isComplete: true, cells: [ { x: 0, y: 0, color: '#FFE176' }, { x: 2, y: 0, color: '#FFE176' }, { x: 4, y: 0, color: '#FFE176' }, { x: 1, y: 1, color: '#F9A857' }, { x: 3, y: 1, color: '#F9A857' }, { x: 0, y: 2, color: '#ED6D50' }, { x: 2, y: 2, color: '#ED6D50' }, { x: 4, y: 2, color: '#ED6D50' }, { x: 1, y: 3, color: '#F9A857' }, { x: 3, y: 3, color: '#F9A857' }, { x: 0, y: 4, color: '#FFE176' }, { x: 2, y: 4, color: '#FFE176' }, { x: 4, y: 4, color: '#FFE176' }, ], }, /** 多色X形 */ { id: 'colorful-x-5x5-001', name: '多色X形', category: 'geometric', difficulty: 2, supportSymmetry: true, symmetryType: 'both', isComplete: true, cells: [ { x: 0, y: 0, color: '#79A7ED' }, { x: 1, y: 1, color: '#6CD2EA' }, { x: 2, y: 2, color: '#53D1B6' }, { x: 3, y: 3, color: '#6CD2EA' }, { x: 4, y: 4, color: '#79A7ED' }, { x: 4, y: 0, color: '#79A7ED' }, { x: 3, y: 1, color: '#6CD2EA' }, { x: 1, y: 3, color: '#6CD2EA' }, { x: 0, y: 4, color: '#79A7ED' }, ], }, /** 箭头(向右) */ { id: 'arrow-right-5x5-001', name: '向右箭头', category: 'geometric', difficulty: 2, supportSymmetry: false, isComplete: true, cells: [ { x: 0, y: 2, color: '#6CD2EA' }, { x: 1, y: 1, color: '#6CD2EA' }, { x: 1, y: 2, color: '#6CD2EA' }, { x: 1, y: 3, color: '#6CD2EA' }, { x: 2, y: 0, color: '#6CD2EA' }, { x: 2, y: 1, color: '#6CD2EA' }, { x: 2, y: 2, color: '#6CD2EA' }, { x: 2, y: 3, color: '#6CD2EA' }, { x: 2, y: 4, color: '#6CD2EA' }, { x: 3, y: 1, color: '#6CD2EA' }, { x: 3, y: 2, color: '#6CD2EA' }, { x: 3, y: 3, color: '#6CD2EA' }, { x: 4, y: 2, color: '#6CD2EA' }, ], }, /** 箭头(向左) */ { id: 'arrow-left-5x5-001', name: '向左箭头', category: 'geometric', difficulty: 2, supportSymmetry: false, isComplete: true, cells: [ { x: 4, y: 2, color: '#6CD2EA' }, { x: 3, y: 1, color: '#6CD2EA' }, { x: 3, y: 2, color: '#6CD2EA' }, { x: 3, y: 3, color: '#6CD2EA' }, { x: 2, y: 0, color: '#6CD2EA' }, { x: 2, y: 1, color: '#6CD2EA' }, { x: 2, y: 2, color: '#6CD2EA' }, { x: 2, y: 3, color: '#6CD2EA' }, { x: 2, y: 4, color: '#6CD2EA' }, { x: 1, y: 1, color: '#6CD2EA' }, { x: 1, y: 2, color: '#6CD2EA' }, { x: 1, y: 3, color: '#6CD2EA' }, { x: 0, y: 2, color: '#6CD2EA' }, ], }, /** 多色圆形 */ { id: 'colorful-circle-5x5-001', name: '多色圆形', category: 'geometric', difficulty: 2, supportSymmetry: true, symmetryType: 'both', isComplete: true, cells: [ { x: 1, y: 0, color: '#FFE176' }, { x: 2, y: 0, color: '#F9A857' }, { x: 3, y: 0, color: '#FFE176' }, { x: 0, y: 1, color: '#F9A857' }, { x: 4, y: 1, color: '#F9A857' }, { x: 0, y: 2, color: '#ED6D50' }, { x: 4, y: 2, color: '#ED6D50' }, { x: 0, y: 3, color: '#F9A857' }, { x: 4, y: 3, color: '#F9A857' }, { x: 1, y: 4, color: '#FFE176' }, { x: 2, y: 4, color: '#F9A857' }, { x: 3, y: 4, color: '#FFE176' }, ], }, /** 多色十字 */ { id: 'colorful-cross-5x5-001', name: '多色十字', category: 'geometric', difficulty: 2, supportSymmetry: true, symmetryType: 'both', isComplete: true, cells: [ { x: 2, y: 0, color: '#FFE176' }, { x: 2, y: 1, color: '#F9A857' }, { x: 0, y: 2, color: '#ED6D50' }, { x: 1, y: 2, color: '#F9A857' }, { x: 2, y: 2, color: '#FFE176' }, { x: 3, y: 2, color: '#F9A857' }, { x: 4, y: 2, color: '#ED6D50' }, { x: 2, y: 3, color: '#F9A857' }, { x: 2, y: 4, color: '#FFE176' }, ], }, /** 多色V形 */ { id: 'colorful-v-5x5-001', name: '多色V形', category: 'geometric', difficulty: 2, supportSymmetry: true, symmetryType: 'vertical', isComplete: true, cells: [ { x: 0, y: 0, color: '#ED6D50' }, { x: 4, y: 0, color: '#ED6D50' }, { x: 0, y: 1, color: '#F9A857' }, { x: 4, y: 1, color: '#F9A857' }, { x: 1, y: 2, color: '#FFE176' }, { x: 3, y: 2, color: '#FFE176' }, { x: 2, y: 3, color: '#B2D94B' }, { x: 2, y: 4, color: '#53D1B6' }, ], }, /** 简化小猫 */ { id: 'simple-cat-5x5-001', name: '简化小猫', category: 'animal', difficulty: 2, supportSymmetry: true, symmetryType: 'vertical', isComplete: true, cells: [ { x: 1, y: 0, color: '#F2A4C0' }, // 粉色(耳朵) { x: 2, y: 0, color: '#ED6D50' }, // 红色 { x: 3, y: 0, color: '#F2A4C0' }, // 粉色(耳朵) { x: 0, y: 1, color: '#F2A4C0' }, // 粉色 { x: 1, y: 1, color: '#ED6D50' }, // 红色 { x: 2, y: 1, color: '#666666' }, // 黑色(眼睛) { x: 3, y: 1, color: '#ED6D50' }, // 红色 { x: 4, y: 1, color: '#F2A4C0' }, // 粉色 { x: 0, y: 2, color: '#F2A4C0' }, // 粉色 { x: 1, y: 2, color: '#ED6D50' }, // 红色 { x: 2, y: 2, color: '#F2A4C0' }, // 粉色 { x: 3, y: 2, color: '#ED6D50' }, // 红色 { x: 4, y: 2, color: '#F2A4C0' }, // 粉色 { x: 1, y: 3, color: '#F2A4C0' }, // 粉色 { x: 2, y: 3, color: '#ED6D50' }, // 红色 { x: 3, y: 3, color: '#F2A4C0' }, // 粉色 { x: 1, y: 4, color: '#ED6D50' }, // 红色(腿) { x: 2, y: 4, color: '#F2A4C0' }, // 粉色(尾巴) { x: 3, y: 4, color: '#ED6D50' }, // 红色(腿) ], }, /** 简化小狗 */ { id: 'simple-dog-5x5-001', name: '简化小狗', category: 'animal', difficulty: 2, supportSymmetry: true, symmetryType: 'vertical', isComplete: true, cells: [ { x: 1, y: 0, color: '#F9A857' }, // 橙色(耳朵) { x: 2, y: 0, color: '#ED6D50' }, // 红色 { x: 3, y: 0, color: '#F9A857' }, // 橙色(耳朵) { x: 0, y: 1, color: '#F9A857' }, // 橙色 { x: 1, y: 1, color: '#ED6D50' }, // 红色 { x: 2, y: 1, color: '#666666' }, // 黑色(眼睛) { x: 3, y: 1, color: '#ED6D50' }, // 红色 { x: 4, y: 1, color: '#F9A857' }, // 橙色 { x: 0, y: 2, color: '#F9A857' }, // 橙色 { x: 1, y: 2, color: '#ED6D50' }, // 红色 { x: 2, y: 2, color: '#F9A857' }, // 橙色 { x: 3, y: 2, color: '#ED6D50' }, // 红色 { x: 4, y: 2, color: '#F9A857' }, // 橙色 { x: 1, y: 3, color: '#F9A857' }, // 橙色 { x: 2, y: 3, color: '#ED6D50' }, // 红色 { x: 3, y: 3, color: '#F9A857' }, // 橙色 { x: 1, y: 4, color: '#ED6D50' }, // 红色(腿) { x: 2, y: 4, color: '#F9A857' }, // 橙色(尾巴) { x: 3, y: 4, color: '#ED6D50' }, // 红色(腿) ], }, /** 简化小鸟 */ { id: 'simple-bird-5x5-001', name: '简化小鸟', category: 'animal', difficulty: 2, supportSymmetry: true, symmetryType: 'vertical', isComplete: true, cells: [ { x: 1, y: 0, color: '#FFE176' }, // 黄色 { x: 2, y: 0, color: '#F9A857' }, // 橙色 { x: 3, y: 0, color: '#ED6D50' }, // 红色(嘴巴) { x: 0, y: 1, color: '#FFE176' }, // 黄色 { x: 1, y: 1, color: '#F9A857' }, // 橙色 { x: 2, y: 1, color: '#666666' }, // 黑色(眼睛) { x: 3, y: 1, color: '#F9A857' }, // 橙色 { x: 4, y: 1, color: '#FFE176' }, // 黄色 { x: 0, y: 2, color: '#FFE176' }, // 黄色 { x: 1, y: 2, color: '#F9A857' }, // 橙色 { x: 2, y: 2, color: '#ED6D50' }, // 红色 { x: 3, y: 2, color: '#F9A857' }, // 橙色 { x: 4, y: 2, color: '#FFE176' }, // 黄色 { x: 1, y: 3, color: '#F9A857' }, // 橙色(翅膀) { x: 2, y: 3, color: '#ED6D50' }, // 红色 { x: 3, y: 3, color: '#F9A857' }, // 橙色(翅膀) { x: 2, y: 4, color: '#ED6D50' }, // 红色(脚) ], }, /** 简化小鱼 */ { id: 'simple-fish-5x5-001', name: '简化小鱼', category: 'animal', difficulty: 2, supportSymmetry: true, symmetryType: 'vertical', isComplete: true, cells: [ { x: 0, y: 1, color: '#6CD2EA' }, // 浅蓝 { x: 1, y: 1, color: '#79A7ED' }, // 蓝色 { x: 2, y: 1, color: '#53D1B6' }, // 青色 { x: 3, y: 1, color: '#53D1B6' }, // 青色 { x: 4, y: 1, color: '#6CD2EA' }, // 浅蓝 { x: 0, y: 2, color: '#79A7ED' }, // 蓝色 { x: 1, y: 2, color: '#53D1B6' }, // 青色 { x: 2, y: 2, color: '#666666' }, // 黑色(眼睛) { x: 3, y: 2, color: '#53D1B6' }, // 青色 { x: 4, y: 2, color: '#79A7ED' }, // 蓝色 { x: 0, y: 3, color: '#6CD2EA' }, // 浅蓝 { x: 1, y: 3, color: '#79A7ED' }, // 蓝色 { x: 2, y: 3, color: '#53D1B6' }, // 青色 { x: 3, y: 3, color: '#53D1B6' }, // 青色 { x: 4, y: 3, color: '#6CD2EA' }, // 浅蓝 { x: 1, y: 4, color: '#6CD2EA' }, // 浅蓝(尾巴) { x: 2, y: 4, color: '#79A7ED' }, // 蓝色(尾巴) { x: 3, y: 4, color: '#6CD2EA' }, // 浅蓝(尾巴) ], }, /** 简化小兔子 */ { id: 'simple-rabbit-5x5-001', name: '简化小兔子', category: 'animal', difficulty: 2, supportSymmetry: true, symmetryType: 'vertical', isComplete: true, cells: [ { x: 0, y: 0, color: '#F2A4C0' }, // 粉色(左耳) { x: 1, y: 0, color: '#ED6D50' }, // 红色 { x: 2, y: 0, color: '#F2A4C0' }, // 粉色 { x: 3, y: 0, color: '#ED6D50' }, // 红色 { x: 4, y: 0, color: '#F2A4C0' }, // 粉色(右耳) { x: 0, y: 1, color: '#F2A4C0' }, // 粉色 { x: 1, y: 1, color: '#ED6D50' }, // 红色 { x: 2, y: 1, color: '#F2A4C0' }, // 粉色 { x: 3, y: 1, color: '#ED6D50' }, // 红色 { x: 4, y: 1, color: '#F2A4C0' }, // 粉色 { x: 1, y: 2, color: '#F2A4C0' }, // 粉色 { x: 2, y: 2, color: '#666666' }, // 黑色(眼睛) { x: 3, y: 2, color: '#F2A4C0' }, // 粉色 { x: 1, y: 3, color: '#F2A4C0' }, // 粉色 { x: 2, y: 3, color: '#ED6D50' }, // 红色(鼻子) { x: 3, y: 3, color: '#F2A4C0' }, // 粉色 { x: 1, y: 4, color: '#ED6D50' }, // 红色(腿) { x: 2, y: 4, color: '#F2A4C0' }, // 粉色 { x: 3, y: 4, color: '#ED6D50' }, // 红色(腿) ], }, /** 简化小鸭子 */ { id: 'simple-duck-5x5-001', name: '简化小鸭子', category: 'animal', difficulty: 2, supportSymmetry: true, symmetryType: 'vertical', isComplete: true, cells: [ { x: 1, y: 0, color: '#FFE176' }, // 黄色 { x: 2, y: 0, color: '#F9A857' }, // 橙色 { x: 3, y: 0, color: '#ED6D50' }, // 红色(嘴巴) { x: 0, y: 1, color: '#FFE176' }, // 黄色 { x: 1, y: 1, color: '#F9A857' }, // 橙色 { x: 2, y: 1, color: '#666666' }, // 黑色(眼睛) { x: 3, y: 1, color: '#F9A857' }, // 橙色 { x: 4, y: 1, color: '#FFE176' }, // 黄色 { x: 0, y: 2, color: '#FFE176' }, // 黄色 { x: 1, y: 2, color: '#F9A857' }, // 橙色 { x: 2, y: 2, color: '#ED6D50' }, // 红色 { x: 3, y: 2, color: '#F9A857' }, // 橙色 { x: 4, y: 2, color: '#FFE176' }, // 黄色 { x: 1, y: 3, color: '#F9A857' }, // 橙色(翅膀) { x: 2, y: 3, color: '#ED6D50' }, // 红色 { x: 3, y: 3, color: '#F9A857' }, // 橙色(翅膀) { x: 1, y: 4, color: '#ED6D50' }, // 红色(脚) { x: 2, y: 4, color: '#ED6D50' }, // 红色(脚) { x: 3, y: 4, color: '#ED6D50' }, // 红色(脚) ], }, /** 简化小熊 */ { id: 'simple-bear-5x5-001', name: '简化小熊', category: 'animal', difficulty: 2, supportSymmetry: true, symmetryType: 'vertical', isComplete: true, cells: [ { x: 1, y: 0, color: '#F9A857' }, // 橙色(左耳) { x: 2, y: 0, color: '#ED6D50' }, // 红色 { x: 3, y: 0, color: '#F9A857' }, // 橙色(右耳) { x: 0, y: 1, color: '#F9A857' }, // 橙色 { x: 1, y: 1, color: '#ED6D50' }, // 红色 { x: 2, y: 1, color: '#666666' }, // 黑色(眼睛) { x: 3, y: 1, color: '#ED6D50' }, // 红色 { x: 4, y: 1, color: '#F9A857' }, // 橙色 { x: 0, y: 2, color: '#F9A857' }, // 橙色 { x: 1, y: 2, color: '#ED6D50' }, // 红色 { x: 2, y: 2, color: '#F9A857' }, // 橙色 { x: 3, y: 2, color: '#ED6D50' }, // 红色 { x: 4, y: 2, color: '#F9A857' }, // 橙色 { x: 1, y: 3, color: '#F9A857' }, // 橙色 { x: 2, y: 3, color: '#ED6D50' }, // 红色 { x: 3, y: 3, color: '#F9A857' }, // 橙色 { x: 1, y: 4, color: '#ED6D50' }, // 红色(腿) { x: 2, y: 4, color: '#F9A857' }, // 橙色 { x: 3, y: 4, color: '#ED6D50' }, // 红色(腿) ], }, /** 简化小象 */ { id: 'simple-elephant-5x5-001', name: '简化小象', category: 'animal', difficulty: 2, supportSymmetry: true, symmetryType: 'vertical', isComplete: true, cells: [ { x: 1, y: 0, color: '#79A7ED' }, // 蓝色 { x: 2, y: 0, color: '#6CD2EA' }, // 浅蓝 { x: 3, y: 0, color: '#79A7ED' }, // 蓝色 { x: 0, y: 1, color: '#79A7ED' }, // 蓝色(鼻子) { x: 1, y: 1, color: '#6CD2EA' }, // 浅蓝 { x: 2, y: 1, color: '#666666' }, // 黑色(眼睛) { x: 3, y: 1, color: '#6CD2EA' }, // 浅蓝 { x: 4, y: 1, color: '#79A7ED' }, // 蓝色(鼻子) { x: 0, y: 2, color: '#79A7ED' }, // 蓝色 { x: 1, y: 2, color: '#6CD2EA' }, // 浅蓝 { x: 2, y: 2, color: '#79A7ED' }, // 蓝色 { x: 3, y: 2, color: '#6CD2EA' }, // 浅蓝 { x: 4, y: 2, color: '#79A7ED' }, // 蓝色 { x: 0, y: 3, color: '#79A7ED' }, // 蓝色 { x: 1, y: 3, color: '#6CD2EA' }, // 浅蓝 { x: 2, y: 3, color: '#79A7ED' }, // 蓝色 { x: 3, y: 3, color: '#6CD2EA' }, // 浅蓝 { x: 4, y: 3, color: '#79A7ED' }, // 蓝色 { x: 0, y: 4, color: '#79A7ED' }, // 蓝色(腿) { x: 1, y: 4, color: '#6CD2EA' }, // 浅蓝 { x: 2, y: 4, color: '#79A7ED' }, // 蓝色 { x: 3, y: 4, color: '#6CD2EA' }, // 浅蓝 { x: 4, y: 4, color: '#79A7ED' }, // 蓝色(腿) ], }, /** 简化小蝴蝶 */ { id: 'simple-butterfly-5x5-001', name: '简化小蝴蝶', category: 'animal', difficulty: 2, supportSymmetry: true, symmetryType: 'vertical', isComplete: true, cells: [ { x: 0, y: 0, color: '#F2A4C0' }, // 粉色(左翅膀) { x: 1, y: 0, color: '#ED6D50' }, // 红色 { x: 2, y: 0, color: '#F2A4C0' }, // 粉色 { x: 3, y: 0, color: '#ED6D50' }, // 红色 { x: 4, y: 0, color: '#F2A4C0' }, // 粉色(右翅膀) { x: 0, y: 1, color: '#F2A4C0' }, // 粉色 { x: 1, y: 1, color: '#ED6D50' }, // 红色 { x: 2, y: 1, color: '#666666' }, // 黑色(身体) { x: 3, y: 1, color: '#ED6D50' }, // 红色 { x: 4, y: 1, color: '#F2A4C0' }, // 粉色 { x: 0, y: 2, color: '#F2A4C0' }, // 粉色 { x: 1, y: 2, color: '#ED6D50' }, // 红色 { x: 2, y: 2, color: '#666666' }, // 黑色(身体) { x: 3, y: 2, color: '#ED6D50' }, // 红色 { x: 4, y: 2, color: '#F2A4C0' }, // 粉色 { x: 1, y: 3, color: '#F2A4C0' }, // 粉色(左翅膀) { x: 2, y: 3, color: '#666666' }, // 黑色(身体) { x: 3, y: 3, color: '#F2A4C0' }, // 粉色(右翅膀) { x: 2, y: 4, color: '#666666' }, // 黑色(身体) ], }, ]; /** * 随机获取一个 5x5 形状 */ export function getRandom5x5Shape(): ShapeTemplate { const randomIndex = Math.floor(Math.random() * ALL_5X5_SHAPES.length); return ALL_5X5_SHAPES[randomIndex]; }