Implementation

核心模块实现说明

本页把 HiCAD 当前项目拆成若干可独立理解的模块。你可以用搜索框快速过滤模块,也可以按页内目录逐个学习。

1. AI 建模模块

AI 模块是 HiCAD 的核心,负责自然语言生成、代码续改、多模型适配、双阶段精准建模、Langfuse 观测和质量评测。

文件职责
ai.service.tsAI 生成与续改主编排,处理配额、SSE、Trace。
adapters/不同大模型供应商的统一适配器。
prompt-builder.ts构建通用 JSCAD 系统 Prompt。
design-prompt.ts / tank-prompt.ts / car-prompt.ts专项模型意图识别与结构化 Prompt。
jscad-codegen.ts把结构化 Spec 转成确定性 JSCAD 代码。
实现建议:先做单阶段通用生成,再加双阶段专项管线。不要一开始就把所有模型类型都做成结构化生成。

2. 编辑器模块

编辑器模块将 AI 生成结果、代码编辑、参数面板、保存导出和质量评分连接起来,是用户使用时间最长的页面。

EditorPage.vue

负责整体布局,包含左侧 AI 对话、右侧 ThreeViewer、参数面板、质量面板、保存和导出。

editorStore.ts

管理当前 JSCAD 代码、模型 ID、模型名称、渲染错误、AI 生成状态和质量评分结果。

CodeEditor.vue

封装 Monaco Editor,提供代码编辑、语法高亮和编辑事件。

ParamPanel.vue

从 JSCAD 顶层常量提取参数,转成滑块和输入框。

3. 3D 渲染模块

渲染模块负责把 JSCAD 几何转换为 Three.js 对象,提供相机、光照、材质、截图和导出几何读取。

1
代码变化

editorStore.code 更新后,触发 useJscad 防抖执行。

2
Worker 执行

public/workers/jscad.worker.js 在隔离线程中执行 JSCAD。

3
几何转换

将 JSCAD 输出转换为 Three.js Mesh,应用材质映射。

4
交互与导出

支持 Orbit 控制、截图、STL/OBJ/DXF/STEP Mesh 导出。

4. AI 质量评测与闭环

质量评测系统将“生成效果好不好”量化为 7 个维度,并已经接入编辑器自动评分和一键优化。

维度评估内容
可执行性代码结构、main 函数、module.exports、危险调用。
参数化是否有可调参数、尺寸注释和变量设计。
几何丰富度是否使用多种 primitive、transform 和布尔组合。
装配连贯是否 union/assemble,避免散件和悬浮部件。
材质语义是否为车身、玻璃、轮胎、金属等使用显式材质。
需求匹配Prompt 关键词与代码结构是否匹配。
安全维护代码长度、危险 API、可读性和可维护性。
// 前端质量闭环入口
生成完成 -> evaluateGeneratedCode()
评分结果 -> editorStore.qualityResult
低分建议 -> QualityPanel
一键优化 -> aiStore.optimizeQualityIssues()

5. 用户与商业化模块

商业化闭环包含登录、会员等级、AI 配额、支付订单和后台管理。实现顺序建议:先登录和配额,再接支付,最后补后台统计。

Auth

JWT 策略、登录注册、CurrentUser 装饰器、权限守卫。

User

用户信息、tier、quota、每日/月度 AI 使用次数。

Pay

订单创建、支付回调、会员升级、订单查询。

6. 模型与模板市场

模型模块负责用户资产,模板模块负责可复用资产,市场则把高质量模型沉淀为可浏览、可套用、可发布的内容。

模块核心能力下一步扩展
Model保存、列表、详情、分享、发布。版本管理、fork、质量评分展示。
Template官方模板、套用统计、分类筛选。参数化模板包、精选门槛。
Market市场展示、缩略图、发布权限。社区评分、下载统计、商业模板。