关于开发和实施 CAD 标准插件 (ActiveX/CSP)
插件是 COM 服务器,可以使用 C++ 和 ATL、VB6、VB.NET、C# 或任何其他可编译为进程内 DLL 的编程语言创建。 插件必须实现界面,并在 Windows 注册表的 AutoCAD 部分中注册。CAD 标准框架使用接口公开的属性和方法与已注册的插件进行通信。IAcStPlugin2IAcStPlugin2 接口的方法和属性用于执行以下任务:IAcStPlugin2
实现插件属性创建的每个插件都必须支持接口公开的一组特定属性。这些属性用于标识插件和插件作者将强制执行的标准。插件必须实现以下属性:IAcStPlugin2
实现初始化方法插件的初始化发生在首次加载到 AutoCAD 程序或 Batch Standards Checker 独立应用程序中时。插件根据以下条件之一进行初始化:
该方法是插件的入口点。此方法传递对标准管理器对象的引用,当插件处于活动状态时,可以保存该对象以供将来引用。初始化插件后,将执行该方法,并用于设置要检查的图形以及在检查标准期间要使用的DWS文件。InitializeSetupForAudit 实现错误迭代方法插件根据一组指定的既定 CAD 标准检查并修复绘图中发现的错误。在修复错误之前,必须识别错误。每个插件都实现一组规则来确定图形中的错误。在实时检查期间或用户手动启动整个图纸的检查过程时,可以识别错误。 要检查错误的对象将作为数组传递给该方法。还会将布尔值传递给该方法,以确定实时检查是否处于活动状态;值 of 表示实时检查处于活动状态,并且只应检查数组中的对象。SetContextSetContextFalse 当 CAD 标准框架执行该方法时,错误检查开始;表示图形中第一个标准冲突的第一个错误对象将传递给该方法。方法完成执行后,将执行该方法以继续单步执行传递给该方法的数组中的每个错误对象。检查错误后,将执行该方法以确定是否存在需要修复的其他错误。如果该方法返回布尔值 ,则执行该方法并继续错误检查。StartStartStartNextSetContextDoneDoneFalseNext 实现错误并修复检索方法在修复错误之前,必须识别错误并将其与所有可用的修复对象进行比较。使用该方法获取当前错误对象。获取当前错误对象后,可以使用该方法获取可能的修复列表。该方法返回的修补程序是最初作为方法的一部分设置的修补程序。GetErrorGetAllFixesGetAllFixesSetupForAudit 注意:如果插件被设计为报告图形中的错误而不修复它们,则不需要该方法。GetAllFixes
该方法需要一个错误对象和两个变量;第一个变量表示 Fix 对象数组,第二个变量表示建议的 Fix。建议的修复用于自动修复错误。CAD 标准框架使用该方法来支持自动修复错误。建议的错误修复由插件确定,通常是通过比较对象名称或几何属性来确定的。在比较错误对象和修复对象时,可以使用该方法获取属性差异列表。GetAllFixesGetRecommendedFixGetPropertyDiffs 实施错误修复识别错误并获取所有可用修补程序后,该方法可用于将修补程序应用于错误。该方法不是开发插件所必需的,但需要支持修复 AutoCAD 程序中“CAD 标准”功能的错误。如果未在插件中定义该方法,则会显示一个消息框,让用户知道无法修复错误。FixErrorFixErrorFixError 注意:批处理标准检查器不使用该方法。FixError
使用该方法修复错误时,插件应根据用户是否成功应用了修复程序来更新错误对象的属性。将该属性设置为如果错误可以修复或错误无法修复。在AutoCAD程序中使用CAD标准功能时,如果“将此问题标记为已忽略”,则错误可以标记为已修复或忽略。FixErrorResultStatusResultStatusAcStMgr.AcStResultStatus.acStResFixedAcStMgr.AcStResultStatus.acStResFixFailed 实现报表方法CAD 标准框架在检查图形中对象的标准后生成报告。报告可以包含发现、修复和忽略的错误数。报告的显示方式因使用的是 AutoCAD 程序中的“CAD 标准”功能还是“批处理标准检查器”而异。
|
|Archiver|CAD开发者社区 ( 苏ICP备2022047690号-1 苏公网安备32011402011833)
GMT+8, 2025-1-19 06:50
Powered by Discuz! X3.4
Copyright © 2001-2021, Tencent Cloud.