SolidWorks中公差与符号标注的二次开发.docx_第1页
SolidWorks中公差与符号标注的二次开发.docx_第2页
SolidWorks中公差与符号标注的二次开发.docx_第3页
SolidWorks中公差与符号标注的二次开发.docx_第4页
SolidWorks中公差与符号标注的二次开发.docx_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

SolidWorks中公差与符号标注的二次开发当前计算机辅助设计在机械制造领域得到越来越广泛的应用。SolidWorks 是基于 PARASOLID几何造型核心,采用 VC编程和面向对象的数据库来开发的。SolidWorks 具有基于特征的参数化实体造型、NURBS 复杂曲面造型、实体与曲面融合、基于约束的装配造型等一系列先进的三维设计功能及工具。尽管 SolidWorks 具有很多的优点,但是 SolidWorks 在公差标注和粗糙度符号标注方面仍存在较多的不足之处,在公差标注方面,SolidWorks 本身的上下偏差标注,需要工程技术人员自己查相关手册输入上下偏差,因此,在使用 SolidWorks 的同时,笔者考虑了用连接相关数据库的方法,用户只需输入有关偏差代号及公差等级就可实现标注。这样就使标注工作简化。同时,笔者采用相似的方法实现了粗糙度的标注,所设计的窗体比 SolidWorks 所带的窗体简洁,但其实现的功能与之相同。且许多输入是用选取下拉菜单内容的方法,简化了用户输入。 1 设计思想和开发原则 本软件的研制开发方法采用完全面向对象的设计思想和开发方法,软件开发过程中,要设计许多用户界面,在设计中就要遵循一些原则,一个友好的用户界面应满足以下几个方面的要求: (1)减少记忆量 本系统用户界面设计中主要采用以下方法:采用提示选择,而不是输入命令串,这种方法为不了解系统的终端用户带来了极大的方便,(在此处,笔者考虑采用了下拉式组合框(ComboBox),用户可直接选择偏差代号、公差等级);另外本设计中,有多个消息框,提示用户出错的地方,并准确纠正输入。 (2)灵活的提示信息 应用软件运行时,应能给出简单易懂的提示信息,使用户的工作能顺利地进行。在用户对提示信息做出回答后,若回答有效,则引导用户进行下一步工作;否则,应能指出错误原因及改正方法。 (3)良好的出错处理 一个好的系统在操作错误发生后可以复原到错误操作前的状态,不会因此死机。一些更高级的系统具有容错能力。为便于了解已操作的命令或重复运行已执行的操作,系统可以记录用户送入的操作命令,以便执行重复命令。二次开发过程也有其开发原则和要求:平台稳定性,可移植性和兼容性,可伸缩性,系统融合性和相对独立性,执行高效性,技术先进性,还有平台易用性。本系统的开发过程就是遵循这样的原则进行的。 2 关键技术 2.1 SolidWorks 的二次开发准备 对 SolidWorks 进行的二次开发,主要是利用SolidWorks 为用户提供了强大的 API 应用编程接口。其中包含的功能函数,可被 VB,或 SolidWorks的宏文件调用,这些函数提供程序员直接访问SolidWorks 功能的能力。用户可在 VB 中创建动态链接库工程,加入相关代码,编译生成*.dll 文件,然后再加载此文件,用户自己开发的动态链接库中可实现与 SolidWorks 相同的功能。从而可以扩展 SolidWorks 的功能。 首先,启动 VB 建立ActiveX DLL文件,只有采用这种格式才会编译生成*.dll 文件。其次,必须在 VB中引入 SolidWorks 的对象库。具体做法是:必须选择【工程】/【引用】菜单项,在可用的引用列表框中选择Sldworks 2001plus Type Library条目,按 确定就可以了。 下面就可以进行二次开发,添加菜单及用户界面,扩展其功能。 2.2 SolidWorks 的宏操作及应用 宏在 SolidWorks 的二次开发中起着重要的衔接作用,在本设计中使用同样也用到了宏。比如在本设计中,使用方法为:在用 SolidWorks 本身的标注操作之前,就打开宏录制,将整个标注过程录制下来,录制完成并保存后,就可对其进行编辑;由于录制的是具体的标注过程,里面的数据都为具体数值,可以将其中的关键语句拷到VB 工程中,修改具体数值为变量;然后通过程序对变量进行赋值,这样运行 VB 工程时就可通过输入具体数值,进行每次的标注操作,实现所需的功能。 2.3 SolidWorks 中添加菜单的关键技术 在此软件系统开发中,用到了许多软件知识,这其中包括:Visual Basic、Access、VB的数据库开发知识、SolidWorks 的 API 应用编程接口等技术。通过这些关键技术,就可对 SolidWorks 添加菜单。 下面结合程序,介绍其实现方法。程序如下: Private Function SwAddin_ConnectToSW(ByVal ThisSW As Object, &_ByVal Cookie As Long) As Boolean Dim Ret As Boolean Set iSldWorks = ThisSWiCookie = Cookie Ret = iSldWorks.SetAddinCallbackInfo(App.hInstance, Me,iCookie) 增加菜单部分 Ret = iSldWorks.AddMenuItem2(swDocDRAWING, iCookie,&_公差标注.附加项(&A), -1, DocDRAWING_dimension,&_DocDRAWING_ItemUpdate,DocDRAWING_Item hintstring) Ret = iSldWorks.AddMenuItem2(swDocDRAWING, iCookie,&_粗糙度.附加项(&A), -1, DocDRAWING_symbol, &_DocDRAWING_ItemUpdate, DocDRAWING_Item hintstring)SwAddin_ConnectToSW = True End Function 函数中前面是定义部分变量,下面就为添加菜单的关键部分,语句中许多函数在 SolidWorks的对象库和本软件的公用模块中已经定义。在开发过程中,可能遇到许多有关 API 函数的问题,这就需要仔细阅读 SolidWorks 所带的 API 帮助函数,帮助文件为英文,这就提高了我国用户进行开发的难度。 公差标注.附加项(&A),粗糙度.附加项(&A),这两句就是表示所添加菜单的名称;DocDRAWING_dimension 和DocDRAWING_symbol,两函数表示所添加菜单所实现的功能。这些函数可在后面定义,来补充功能。下面就是其中的一个函数: Public Sub DocDRAWING_dimension() 调用公差查询及标注窗体 frmseek.Show调用公差查询窗体 End Sub 所实现的功能将在下一节里面重点介绍。 最后,将所编写的程序生成*.dll 文件,在SolidWorks 下打开此文件,该软件就会在插件对话框中出现,选择该插件就会在菜单栏上出现。通过添加菜单的方法,可使 VB开发的应用程序,直接挂在 SolidWorks 下,执行时不需要离开SolidWorks 平台,所开发的软件与 SolidWorks 形成了统一的界面。 2.4 在 SolidWorks 中添加的用户界面及实例演示 所有的开发结果只有通过友好的二次开发界面,才能将各项功能清楚的展示给用户。本系统本着将开发功能融合于 SolidWorks,使风格与SolidWorks 以及 Windows 相似,所以在软件界面上尽量少出现没有必要的内容。 如图 1 所示,添加的用户界面是由 VB 创建的,并通过前面介绍的添加菜单方法,与SolidWorks 融为了一体。 图 2 为两个标注功能实现的流程图,清楚的描述了标注系统的开发过程。流程图可以引导整个开发过程,便于大型程序的模块化设计,在软件设计中是必不可少的。使用时可根据流程图所示进行操作。下面将结合实例进行具体介绍。 公差标注窗体如图 1 所示。下面介绍一下此功能的使用方法:需要给工程图中某尺寸添加公差标注时,首先选定该尺寸,然后按所添加的【附加项】按钮,选择【公差标注 】就会出现图 1所示的窗体,输入刚才选择的尺寸值,然后选择偏差代号及公差等级,点击【确定】就会在窗体中输出上下偏差及公差尺寸,下面可选择【标注】进行自动标注,有丰富经验的设计人员也可根据尺寸公差自己标注。标注完成后,该标注界面会自动隐藏。粗糙度符号标注窗体如图 3 所示。使用方法为:打开所要标注的工程图,选择要标注的位置,然后按所添加的【附加项】按钮,选择【粗糙度 】就会出现图 3 所示的窗体,输入所要标注的参数和符号,有些项目也可以不输入,根据具体情况进行选择。点击【确定】就会在工程图指定位置出现所要求的标注符号。 3 结束语 本文说明了利用 VB对 SolidWorks 进行二次开发的方法,利用此方法,可以进行其它较为复杂的开发工作,从而开发出适合用户特定需要的专业软

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论