Files
linuxcncWebWASM/nextTask-glb-machine-manager-doc.md
wangdequan db29ae625f 按关节槽位驱动 13 个五轴案例的三维模型
关节契约扩为槽位制:以 LinuxCNC 联合号标识关节,轴字母降为槽位属性,
重复轴(bridge-mill 的两个 Y)、并联杆长(hexapod/pentapod)和被动槽位
(max5 第 6 关节)都能表达。v1 规则保持不变并合成 jointOrder,已保存
GLB 与既有测试不受影响。

13 个结构 GLB 由 scripts/generate_physical_case_glbs.mjs 统一重建,
可动关节均为按槽位命名的 Group 并写 userData.linuxcncJoint,共 71 个
关节,槽位数与运行目录的 joint_count 逐条一致。

新增 machine-visual-bindings.json 与纯函数模块,以 machine id 为键:
坐标字母不能作键,因为三个案例共用 XYZAB、三个共用 XYZABC。主界面切换
案例时自动装载对应模型,失败时保留内置模型并显式提示。

消除前端五关节截断:visual 适配器的 joints 改为数组并新增
jointsAuthoritative;allHomed 按 joint_count 判断;面板按 worker 断言的
machine id 查找机型。

管理器解锁:坐标与案例下拉以"存在完整视觉绑定"为启用条件,13 案例全部
可选;machine-urdf.ts 新增 generic-wasm/1 profile,AC/BC 严格校验路径
不变;新增 machine-kinematics-specs.json 保存逐关节限位,INI 未声明的
限位保持 null 而不编造。

修复三个真实缺陷:构建漏发 woodpecker/gmoccapy/qtdragon 配置目录(
DEFECT-02 根因);案例切换沿用"装载需要已上电"的门控,导致关机状态下
第二次切换被静默拒绝;重复轴机型上 React 列表键冲突。

验收:13 案例逐个切换装载成功、槽位键与绑定定义逐一一致、浏览器错误 0;
typecheck 与生产构建通过;视觉绑定、GLB 命名、关节契约、投影、store、
双画布、运动学规格漂移、11 案例 Worker 闭环、管理器浏览器回归全部通过。
证据在 coverage/glb-machine-manager/physical-drive/。

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-30 06:09:12 +08:00

4.8 KiB
Raw Blame History

三维机床管理 HTML 文档接续入口

更新时间:2026-09-23
工作目录:/home/mes006/linuxcncWebWASM

当前任务

用户要求把 docs/glb-machine-manager/00-三维机床管理详细功能文档.md 制作为图文并茂的 HTML,并包含各类五轴机床案例。该任务已完成,HTML 文件为:

docs/glb-machine-manager/00-三维机床管理详细功能文档.html

已完成内容

  • HTML 单文件中文文档,含响应式布局、打印/PDF 样式、案例搜索、状态筛选、图片放大查看和深浅色阅读切换。
  • 14 项 FR-01~FR-14 功能逐项说明,每项包含操作与输入、规则与异常、验收条件。
  • 补充结构分类:双转台、双摆头、头台混合、串联机器人、并联平台、直角坐标映射基线。
  • 覆盖 five-axis-machine-catalog.json 中全部 13 个案例:
    • 当前支持:XYZAC TRT、XYZBC TRT。
    • 需适配:XYZAB 双转台、Bridge Mill/5axiskins、MAX5/maxkins、Pentapod、Hexapod、PUMA/pumakins、PUMA 560/genserkins、SCORBOT。
    • 映射基线:trivkins XYZAB、XYZCW、XYZYA。
  • 每个案例包含结构说明、坐标/关节数、运动学、参数重点、验证路径,以及本地 INI/源码/NGC 链接。
  • 6 张仓库已有图片已经内嵌为 data URL,HTML 可脱离 HTTP 服务离线打开;外部官方资料只保留文字链接。
  • 补充 AC 八部件流程、MILL700 单 GLB 五轴绑定流程、保存/恢复动作表、字段字典、单位和错误恢复矩阵。
  • 明确采用当前 MGR-17~22 实现:单文件完成五轴绑定即可应用;单自由度输入替代历史六分量自由编辑;八个独立部件不再是当前前提。
  • 已在 README.md 和 docs/glb-machine-manager/README.md 增加 HTML 入口。

已验证

  1. HTML 链接和锚点检查:13 个案例、14 项详细需求、全部相对资源链接存在,无重复 ID。
  2. node scripts/validate_five_axis_catalog.mjs:verified,13 cases,62 个本地配置/源码文件。
  3. Chrome(/usr/bin/google-chrome + Playwright)浏览器报告:
    • 1440、768、390、320 px 均无横向溢出;图片均成功加载。
    • 案例筛选:全部 13、当前支持 2、需适配 8、映射基线 3。
    • 搜索 Pentapod 返回 1 个;无匹配结果提示正常。
    • 截图放大/关闭正常;无 page error、无 request failed、无外部网络请求。
    • 打印模式包含全部 13 个案例,生成的 PDF 为 A4 29 页。
    • 将 HTML 复制到 /tmp 后以 file: 直接打开,13 个案例仍可显示。
  4. 临时验证报告和截图位于 /tmp/machine-doc-browser-report.json、/tmp/machine-doc-desktop.png、/tmp/machine-doc-cases.png、/tmp/machine-doc-mobile.png、/tmp/machine-doc-print.pdf;这些不属于仓库交付,不要自动复制进仓库。

当前工作区注意事项

  • 本任务新增 HTML 尚未提交;README 两处有本任务链接改动。
  • 工作区存在用户原有未提交内容和 dirty 的 linuxcnc 子模块。重启后先执行:
git status --short --branch
git diff -- README.md docs/glb-machine-manager/README.md
git -C linuxcnc status --short
  • 不要执行 git reset --hard、git clean、覆盖子模块,也不要 git add .;提交时只选择本任务 HTML、两个 README 和本接续文件(如果用户要求提交)。
  • HTML 文件约 1.55 MiB,主要因为内嵌截图;不要把 /tmp 验证产物提交。

重启后的第一轮

  1. 读取本文件,查看 HTML 的 阅读基线、功能逐项说明与验收条件、每种类型的五轴机床案例、字段字典与转换边界。
  2. 检查工作区状态,确认没有其它代理或用户改动需要覆盖。
  3. 若用户只说“继续”,先报告 HTML 已完成及验证结果,询问新的修改目标;不要重复生成文档或重跑大范围 LinuxCNC 回归。
  4. 若用户要继续优化,优先检查:HTML 是否需要压缩图片、是否需要新增真实机床截图、是否要把案例卡片改为从 JSON 动态生成;新增案例必须同步 five-axis-machine-catalog.json 和本地路径校验。
  5. 若用户要求提交,按最小文件集合检查 diff,再提交;不要包含已有 coverage、GLB、子模块或临时文件改动。

重启后可直接发送:

请在 /home/mes006/linuxcncWebWASM 接续工作。先读取 nextTask-glb-machine-manager-doc.md,检查工作区状态。三维机床管理 HTML 图文文档已经完成并通过 13 案例、14 项需求、四种视口、打印和离线打开验证;不要重复生成,等待我提供新的修改目标。保留其它未提交文件和 linuxcnc 子模块改动。