DgnPrimitiveTool 使用文档

本文主要总结 DgnPrimitiveTool 的触发逻辑,同时介绍其中的参数设置。

简介

DgnPrimitiveTool 继承自 DgnTool,它增加了动态显示、回退相关的事件回调。

继承关系

image-20220520131412036

动态显示

函数名称 作用
BeginDynamics 打开动态显示
EndDynamics 关闭动态显示
OnDynamicFrame 在此处进行动态元素的显示;
动态元素显示需要使用 RedrawElems,详见相关文章

Ctrl+Z 回退

通过以下步骤方式可以开启 Ctrl+Z 回退回调功能

  1. OnPostInstall 中调用方法 EnableUndoPreviousStep() 打开回退功能
  2. 重写 OnUndoPreviousStep 事件

OnRestartTool

本类中新增一个抽象方法 OnRestartTool,当外部事件可能使当前工具的状态失效时调用。

例如 undo 操作,它可能使对元素的任何引用失效,或者导致引用的绑定/取绑。

在这个事件回调中,需要初始化新实例并调用 InstallTool,或者调用 ExitTool 来退出工具。

单次触发模式

Single-shot模式的意思就是你执行完一个命令后就会回到系统默认命令,往往是选择工具命令。

当不处于Single-shot模式时,执行完当前命令后仍然保持这个命令。比如你执行了画线命令,画完后仍然可以继续画线而不用再选择画线命令。

这个选项目前已经被废弃。

详见 single-shot mode

执行流程

DgnPrimitiveTool执行流程-schetch

参考

《Microstation API Document》

DgnTool详细说明文档