home-lenovo-legion-r9000/home-ai-dev AGit
main
- 新增 dwg_annotate_common/draw/edit(命名前缀 dwg_annotate) - 工具:draw_revision_cloud、add_text、add_mtext、add_polyline、 add_line、add_leader_annotation、delete_entities、set_entity_properties - 批注默认落在 AI_REVIEW 图层(不存在则自动创建) - 同步 cmakelists.txt 与 cad-mcp-frame.json(工具数 18 -> 26) - 记录 UTF-8 BOM 编译约定到 ai.memory
- 版本校验:基座侧改用编译期常量 (ARX<<16)|SUB_ARX,不再调用运行时的 acrxGetApiVersion()。该函数由 rxapi.lib 的 acrxGetApiVersionImpl 提供, 是有状态实现(读写进程内全局),返回值随调用次数变化;AutoCAD 加载 ARX 时已调用过一次,导致基座值与 DLL 值不等,绝大多数 DLL 工具被拒绝注册。 - 新增 DLL 模块缓存:同一 DLL 全进程只 LoadLibrary 一次,后续工具复用句柄 并跳过版本校验。 - 文档锁:mcp_Tool_DllProxy::Execute 统一 lockDocument/unlockDocument, 修复 DLL 工具在 AutoCAD 应用上下文写数据库返回 eLockViolation (表现为 openWriteSpace 拿不到模型空间)的问题。 - 代理类不再 FreeLibrary 模块(改由模块缓存统一卸载),避免同一 DLL 的多个 工具重复释放、引用计数被打穿。 - 诊断日志精简为仅记录 arx_version/dll_version,且每次加载清空重写。 - 新增 verify_annotate.py:批注工具集运行时验证脚本(绘制/校验/改属性/清理)。
No dependencies set.
The note is not visible to the blocked user.
add_line、add_leader_annotation、delete_entities、set_entity_properties