高级功能
利用高级工具组织复杂模型、提升仿真效率
高级功能概述
随着模型规模增大,借助以下功能可以更好地组织项目、验证脚本并提升仿真效率:
Zen模式与视图导航
一键聚焦当前视图或子图,辅助理解复杂层级结构。
分组与模板体系
通过分组和模板快速复用成熟模型结构,保持团队建模一致性。
仿真与脚本诊断
批量测试脚本、串行执行多轮仿真,并利用黑板/消息总线查看器监控运行时数据。
Zen模式
Zen模式可以临时隐藏画布上无关的视图与连线,突出当前正在分析的子模型。
启用方式
- 选择目标视图,或在未选择的情况下默认聚焦顶层视图。
- 点击工具栏上的
#focus-mode-btn按钮(图标呈眼状),或者使用快捷入口。 - 画布仅保留聚焦视图及其包含的图元,其他元素被临时移出可视区域。
使用提示
- Zen模式自动隐藏小地图与选择框,便于集中注意力。
- 在模式开启时新增的图元会自动纳入当前视图,保持画面整洁。
- 再次点击按钮即可退出;退出后系统会恢复原有元素位置并刷新连线。
分组与视图组织
分组功能由 group_manager 驱动,可将对象或过程打包管理并自动维护边界。
创建与维护
- 在画布上框选多个对象/过程,右键选择 “创建分组”(action
group-selection)。 - 需要并入既有分组时,选择元素后右键 “加入到已有分组”,系统会弹出分组选择对话框。
- 若元素放错分组,可使用 “移出分组” 或选中分组外壳执行 “解除分组”。
自动调整
- 分组移动时,
groupManager会实时更新内部元素位置并维持对齐。 - 新增/删除元素后调用
scheduleAdjust,分组外框自动收缩或扩展。 - 若分组位于视图内部,系统会同步调整视图画布尺寸保持内容可见。
视图导航树
左侧导航页签内的视图树由 view_hierarchy_manager 构建,提供:
- 层级展开与快速跳转,支持搜索框模糊过滤。
- “显示视图内图元”开关,可在树中直接浏览对象/过程节点。
- 点击任一节点自动高亮画布元素,便于定位深层结构。
模板系统
模板系统用于沉淀成熟建模片段,通过后端 /api/templates 保持团队共享。
保存节点模板
- 选择要复用的对象、过程或视图结构。
- 右键选择 “加入模板”,弹出模板树选择对话框。
- 填写模板名称、选择目标分类后确认保存。
- 系统调用
TemplateSelectionDialog收集元素,并将模板文件与目录节点分别写入服务端。
工程模板
- 通过工具栏或上下文菜单执行 “工程加入模板”(
handleAddProjectToTemplate())。 - 系统使用
ProjectTemplateCollector打包完整工程,包含元数据统计。 - 保存成功后触发
templateAdded事件,模板树会自动刷新。
使用模板
- 在模板树中选择模板节点,拖拽到画布即可实例化。
- 系统会保留模板内视图层级、脚本和连线配置。
- 如果模板依赖外部资源(如 API 绑定),请在插入后根据项目环境调整参数。
脚本批量测试与诊断
testAllScripts() 为脚本调试提供集中入口,可自动完成参数校验与仿真端测试。
执行步骤
- 保证 WebSocket 仿真连接已建立(工具栏状态为“已连接”)。
- 在画布空白处右键,选择 “测试全部脚本”。
- 工具会先尝试从 CONSIM API 拉取最新 Schema,随后遍历所有绑定脚本。
- 测试进度与结果输出到“仿真控制台”,失败项会附带堆栈与日志。
调试建议
- JavaScript 脚本会执行参数预校验;C++ 原生脚本暂不支持本地校验但仍会进行仿真级测试。
- 若脚本依赖 API 绑定,请先在 API 配置页确认连接可用,以免测试失败。
- 完成后可在控制台导出测试汇总,用于代码审查或回归记录。
多轮仿真编排
多轮仿真对话框由 multi-run-orchestrator 管理,可批量运行仿真、统计稳定性。
使用流程
- 点击工具栏
#multi-run-btn按钮,打开“多轮仿真(串行)”对话框。 - 配置轮数、单轮超时、轮间延时和出错策略(继续/中止)。
- 点击“开始”,系统会依次触发仿真执行并在面板底部展示进度。
- 遇到错误时按照策略处理,同时在控制台记录详细日志。
常见用途
- 进行蒙特卡洛式多轮仿真,观察随机因素对结果的影响。
- 在脚本重构后快速跑回归,确认各轮结果一致。
- 配合黑板导出或 API 回调生成多轮汇总报表。
视图展开与还原
需要查看跨视图的整体流程时,可使用“展开大图”将嵌套结构拍平。
操作步骤
- 在工具栏或右键菜单选择 “展开大图”(调用
flattenCurrentProjectAndDisplay())。 - 系统会复制当前工程、合并跨视图关系并生成新的平面视图。
- 若需恢复原图,执行 “还原展开预览” 即可。
展平操作在内存中完成,不会修改原始项目文件;若需长期保存结果,请使用导出功能。
观测与调试面板
黑板与消息总线查看器有助于实时洞察仿真过程中的数据流。
黑板查看器
- 快捷键 Ctrl + B(macOS 使用 ⌘ + B)快速开关。
- 显示脚本和 API 在运行中写入的黑板键值对,可导出用于排查问题。
消息总线查看器
- 快捷键 Ctrl + Shift + M 打开,用于追踪仿真事件流。
- 支持筛选事件类型(如 API 回调、脚本日志),并与控制台日志联动。
数据导出与备份
当前版本支持导入/导出 JSON 项目文件,方便备份与版本管理。
导出
- 点击工具栏“导出”按钮或调用
window.exportDiagram()。 - 系统会生成包含元素、连线、脚本、API 绑定等信息的 JSON 文件。
- 文件名自动附带时间戳,建议纳入团队的 Git 仓库进行版本管理。
导入
- 从“导入”按钮选择 JSON 文件,系统会验证结构后加载到画布。
- 导入成功会刷新视图导航树,并将状态写入撤销栈以便回滚。
- 若项目已接入后端工程管理,请先通过工程列表打开目标工程后再导入。
下一步
掌握上述高级功能后,推荐继续:
- 在 仿真运行 中验证多轮执行与脚本测试结果。
- 利用模板在新项目中快速搭建标准化子系统。
- 将当前工程导出存档,配合 Git 管理版本历史。