继续实现仿真测试程序
结论:真实浏览器仿真页面新增多测试程序选择和运行能力,覆盖直线、Z 轴轮廓、增量、圆弧和 G81 钻孔,并接入 Node、browser 与 release gate 验证。
This commit is contained in:
53
text15.txt
53
text15.txt
@@ -1630,3 +1630,56 @@ project_release_handoff_docs_node_smoke=ok
|
||||
- JS 只调用 LinuxCNC-backed WASM SDK,并把 LinuxCNC-produced canonical output 渲染成
|
||||
program state、axis readout、motion table 和 SVG preview;
|
||||
- canonical output 中坐标字段的读取只用于 UI 渲染,不作为 CNC 解释或运动规划来源。
|
||||
|
||||
七十九、2026-06-16 继续执行记录:real browser simulation 多测试程序
|
||||
|
||||
本批继续围绕真实 browser CNC simulation page 推进,把页面从单一内置程序扩展为可选择
|
||||
多组 LinuxCNC-backed 测试程序的仿真入口。
|
||||
|
||||
本批新增实质能力:
|
||||
|
||||
- `runtime/ui/simulation/simulation-app.js` 新增 `SIMULATION_TEST_PROGRAMS`;
|
||||
- 当前测试程序覆盖:
|
||||
- square contour;
|
||||
- pocket with Z moves;
|
||||
- incremental loop;
|
||||
- G2/G3 arc path;
|
||||
- G81 drill pattern;
|
||||
- `runtime/ui/simulation/index.html` 新增程序选择器和 Run 按钮;
|
||||
- 页面 API 新增:
|
||||
- `linuxCncRealSimulationApi.getPrograms()`;
|
||||
- `linuxCncRealSimulationApi.runProgramById(programId)`;
|
||||
- `linuxCncRealSimulationApi.getState()`;
|
||||
- browser smoke 现在会逐个运行所有测试程序,验证每个程序都经由 LinuxCNC WASM 执行,
|
||||
DOM program rows、motion rows、canonical output、toolpath polyline 和 motion types 与
|
||||
LinuxCNC-produced output 保持一致;
|
||||
- 增强 canonical motion 渲染解析:`ARC_FEED` 使用 LinuxCNC canonical arc endpoint 字段映射
|
||||
到当前 active plane 的坐标轴,只作为 UI toolpath 渲染输入;
|
||||
- 新增 UI Node smoke:
|
||||
- `tests/ui/node/verify_real_simulation_programs.mjs`;
|
||||
- `tests/ui/node/verify_real_simulation_programs.sh`;
|
||||
- `tests/ui/node/verify_ui_node_smokes.sh` 接入该 smoke;
|
||||
- README、real-browser priority docs、PROJECT_COMPLETION_TRACKER 同步记录多测试程序能力。
|
||||
|
||||
本批新增/更新可执行验证:
|
||||
|
||||
```bash
|
||||
wasm-port/tests/ui/node/verify_real_simulation_programs.sh
|
||||
wasm-port/tests/ui/node/verify_ui_node_smokes.sh
|
||||
SKIP_INTERP_BUILD=1 wasm-port/tests/browser/verify_real_simulation_browser.sh
|
||||
```
|
||||
|
||||
关键通过输出:
|
||||
|
||||
```text
|
||||
real_simulation_programs_node_smoke=ok
|
||||
ui_node_smokes=ok
|
||||
browser_real_simulation_page_smoke=ok
|
||||
```
|
||||
|
||||
本批仍保持 LinuxCNC 语义边界:
|
||||
|
||||
- 新增测试程序均通过 `createLinuxCncInterpSdk()` / `interp.runProgram()` 执行;
|
||||
- JS 没有解释 G-code,也没有实现 planner、kinematics、tool、parameter、remap 语义;
|
||||
- JS 只保存测试程序文本、调用 LinuxCNC WASM、解析 LinuxCNC-produced canonical output 以渲染
|
||||
UI 状态和刀路终点。
|
||||
|
||||
Reference in New Issue
Block a user