Skip to content

Latest commit

 

History

History
80 lines (62 loc) · 4.39 KB

PLAN.md

File metadata and controls

80 lines (62 loc) · 4.39 KB

Teach 教学工具 · 改造方案与改造表

共同目标

让老师和学生都能轻松用这个工具:

  • 老师在课堂上演示更方便、讲得学生看得懂;
  • 学生做作业时看到题目就能学得懂;
  • 给开发者留出自定义和调试的端口,方便持续扩展。

核心原则

  1. 可变 / 足够自定义:题目和几何体都可变,能自定义、能存预设、能随时换数。
  2. 先立架构再堆功能:先定命名空间 + 统一几何体数据模型,再实现功能。
  3. 平面体 / 曲面体分开建模:棱柱类 vs 圆柱/圆锥类,不硬塞进一个抽象。
  4. 无 WebGL 环境:几何数学用 stub DOM + 真实 three.js 的 Node 冒烟测试验证。

三条主线

主线 面向 目标
老师线 课堂演示 一键演示、预设库、投屏模式
学生线 做作业 输入题目 → 立体 + 分步解答 + 自检
开发者线 扩展 统一几何体框架 + 可注册 API + 调试面板

一、现有文件改造表

文件 现状 改造内容 优先级 风险
index.html 单页 + 多个 modal、全局 script 加"老师/学生"入口、高级折叠菜单、预设库/投屏/调试面板容器;按命名空间新增 script P0 低
css/style.css 862 行,样式混杂 拆出主题/大屏模式、投屏样式、高级菜单样式 P1 低
app.js 319 行,全局 scene/camera/初始化 抽成 Teach.core;加复位/预设视角、自动旋转、模式切换、初始化新模块 P0 中
cubic.js 799 行,长方体+标记+备注+编辑面板 保留;长方体接入统一框架;标记模式默认隐藏到高级 P1 中
developer.js 89 行,8 种几何体只是 THREE switch 改名"自定义/调试端口";几何体定义迁到统一框架 P0 中(是重写不是迁移)
functions.js 273 行,2D/3D 函数图 默认隐藏到"拓展" P2 低
math.js 56 行,去重题库 加随机生成、分步答案、题型扩展、投屏 P1 低
annotation.js 61 行,2D 涂鸦 保留为基础;3D 表面标记另起新模块(不是升级) P2 高
recognize.js 658 行,三视图识别+模型编辑面板 保留并接入统一框架;作为开发者端口的一部分 P1 中

二、新增文件 / 功能表

新增 内容 依赖 阶段 估时
js/core/namespace.js window.Teach={} 命名空间、模块注册 无 0 0.5 天
js/store.js 本地存储:预设/题目/状态保存加载 core 0 1 天
js/geometry/model.js 统一几何数据模型:顶点/面/棱/UV/展开方案/重合棱 core 1 3~5 天
js/geometry/presets.js 正方体/长方体/棱柱/圆柱/圆锥定义(平面体/曲面体两类) model 1 2~3 天
js/features/threeview.js 三视图:正交投影 + 小方块堆叠 model 1.5 2~3 天
js/features/unfold.js 展开/折叠插值动画、11 种正方体展开图、重合棱高亮 model 2 5~8 天
js/features/surfaceMark.js 表面标记(UV 存储)+ 展开映射 model, unfold 3 5~8 天
js/features/section.js 截平面、截面多边形、形状命名 model 4 3~5 天
js/ui/modes.js 老师/学生模式、高级菜单、投屏切换 core 0 1~2 天
js/api/debug-port.js 开发者注册几何体/题目的 API 与调试面板 model 1 2 天

三、阶段表(建议顺序)

阶段 目标 产出 依赖
0 基础整理 入口拆分、高级隐藏、预设视角、步进、本地存储、命名空间 —
1 统一框架 geometry model + presets + 调试端口 API 0
2 课堂能看 三视图(快速见效) 1
3 核心差异化 展开/折叠 + 面编号颜色 1
4 杀手功能 表面标记 + 展开映射 3
5 初一重点 截面 1
6 学练闭环 题型扩展 + 随机题 + 分步答案 + 打磨 2,5

四、优先级(限时版)

优先级 做
P0 阶段 0、统一几何体框架 spec
P1 三视图、展开/折叠、调试端口
P2 表面标记+映射(差异化最大,风险也最大)
P3 截面、题型/练习、投屏打磨

五、下一步

建议先做:阶段 0 + 统一几何体数据模型 spec,拿到反馈后再推进功能。