C# SolidWorks 二次开发 API—提高草图绘制效率
最近在图书馆借了本《solidworks api二次开发实例详解》 来学习一下。
发现了一个后续开发时需要注意的问题,以前在画草图的时候,我都先用代码设定捕捉模式后再画线,画完之后再恢复设置。
其实solidworks提供了一个功能:
SketchManager中的AddToDB选项, 这应该类似于之前的所说的程序的CommandInProgress模式。设定之后是直接写入内部数据库
好处是,这样不会有任何捕捉的发生。
需要注意的是使用过后一定要将设置改回来,不然用户无法进一步操作了。
还需要注意的,在绘制草图之后 ,是否立即显示也是对性能有影响的。
可以在完成之后 使用GraphicesRedraw 或者EditRebuild3 显示草图。 前者比后者快 这里我也没有进行测试,只是api是这样备注的。
还有一点,有时候大量操作的时候禁用特征树的更新也可以减少solidworks的开销,可以在完成所有操作之后 再启动特征树的刷新。
//swModel.Extension.HideFeatureManager(true);
类似的操作还有EnableBackgroundProcessing ,启用后台模式,这个好像是界面不动,完全在后台,减少显卡的开销。
//swApp.EnableBackgroundProcessing = false;
还可以禁止记录文件路径:
//禁止记录文件路径
swApp.SetUserPreferenceToggle((int)swUserPreferenceToggle_e.swLockRecentDocumentsList, true);
posted @
2023-03-30 17:17
painezeng 阅读(
0) 评论(
0)
编辑
收藏
举报
来源