feat(annotate): 新增图纸批注工具集(云线/文字/多段线/引线等 8 个工具) #3

Merged
gjm merged 3 commits from home-lenovo-legion-r9000/home-ai-dev AGit into main 2026-10-09 22:34:46 +08:00
Collaborator
  • 新增 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
- 新增 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
home-Lenovo-Legion-r9000 added 1 commit 2026-10-09 15:18:47 +08:00
- 新增 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
home-Lenovo-Legion-r9000 added 1 commit 2026-10-09 15:19:03 +08:00
home-Lenovo-Legion-r9000 added 1 commit 2026-10-09 22:32:01 +08:00
- 版本校验:基座侧改用编译期常量 (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:批注工具集运行时验证脚本(绘制/校验/改属性/清理)。
gjm merged commit 1a454b96bf into main 2026-10-09 22:34:46 +08:00
Sign in to join this conversation.
No Reviewers
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: gjm/cad-agent#3