基于VB对SolidWorks的二次开发技术在标准件中的研究与实践

来源 :读写算 | 被引量 : 0次 | 上传用户:hfyou588
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  【摘 要】介绍SolidWorks中的二次开发工具,并以实例叙述了Visual Basic 6.0对SolidWorks的二次开发技术,解决了用VB语言对SolidWorks进行二次开发的接口难题,并为以后VB程序员进行SolidWorks的二次开发提供了基础。
  【关键词】SolidWorks Visual Basic 6.0 API函数
  SolidWorks是一套基于windows的CAD/CAM/CAE/PDM桌面集成系统,它有着易用和友好的界面,其灵活的操作方式和面向对象的操作特点,得到了业界广大工程师的一致认可。该软件可以最大限度地满足设计者的设计意图,操作简单,功能强大,容易上手,但是对于企业的一些特殊要求,利用SolidWorks现有的功能模块还不能实现,所以有必要对其进行二次开发。
  另外由于SolidWorks是美国人写的,不符合中国的国标(如基准符号、放大图的标注、剖视图的标注、装配图的序号、标题栏等),也没有适合我国国标的标准件库,因此为了适应特定企业的特用,就必须对其进行本地化和专业化的二次开发工作,对SolidWorks进行必要的补充,以满足用户的需要。
  1 SolidWorks二次开发工具
  任何支持OLE(Object Linking and Embedding,对象的链接与嵌入)和COM(Component Object Model,组件对象模型)的编程语言都可以作为SolidWorks的开发工具。SolidWorks二次开发分为两种,一种是基于自动化技术的,此种技术只能开发EXE形式的程序;另一种开发方式是基于COM的,这种技术可以使用最多的SolidWorks API(Application Programming Interface,运用程序界面)。API可控制SolidWorks会话的方式 ,生成*.dll格式的文件,也就是SolidWorks的插件。SolidWorks的二次开发工具较多,如Delphi、C语言、C 、Visual C 6.0、C#、Visual Basic 6.0、Visual Basic.NET等,本文是用Visual Basic 6.0对SolidWorks进行的二次开发。具体来说,也就是程序员可以通过Visual Basic 6.0调用SolidWorks的API函数来派生子类、生成类对象、定义对象、对对象进行属性访问、运行对象方法等,完成零件各特征的建立、修改、删除、压缩等控制;零件特征信息、装配信息以及零件工程图纸中的各项信息的提取,比如零件特征尺寸的设置与提取,特征所在面的信息提取及各种几何和拓扑信息;此外,还可以在SolidWorks主菜单上增加按钮,将自己开发的应用模块嵌入到它的管理系统中,建立适合用户需要的、专用的SolidWorks功能模块。
  2 VisuaI Basic 6.0对SolidWorks二次开发的方法
  Visual Basic语言规则简单,不象其它高级语言(如C 、Delphi等)那么复杂,但其功能很全、使用简捷、许多类型转换能自动识别,使程序员开发难度大大降低,容易被初学者掌握。SolidWorks又提供了宏录制功能。其特点是通过宏录制可以记录SolidWorks用户整个产品设计过程,把用户的界面菜单操作所用到的SolidWorks对象、方法都一一记录下来,并且语法完全符合Visual Basic。例如:用户通过SolidWorks软件设计一个零件,并用宏录制设计过程,开发人员根据宏文件中的对象和方法在自己的应用程序中合理组织,作较少的修改,对具体参数用变量代替,这样通过对变量的控制就可实现产品的参数化设计。在二次开发过程中,宏录制文件中的许多对象、方法可以直接在Visual Basic应用程序中应用,这就简化了开发人员的开发过程。以下介绍其开发方式:
  (1) Visual Basic 6.0中引入SolidWorks的对象库。启动Visual Basic 6.0新建工程,选择"工程一引用",在可引用对象中选择"Sldworks 2003 Type Library"。
  (2) 编写自己的应用程序代码。程序代码可以参考SolidWorks的宏录制代码,并进行必要修改。
  (3) 在Visual Basic 6.0中选择生成文件,生成工程.exe文件即可。
  3 Visual Basic 6.0开发SolidWorks的实例
  本文以标准件螺母为例来说明VB对SolidWorks的二次开发。
  (1)在SolidWorks中对GY103螺母建模,同时将整个过程用宏命令录制下来,然后把整个建模过程的程序拷贝到VB中。
  (2)在VB的窗体中进行参数化设置,即把GY103螺母的各个参考尺寸根据图示在窗体中进行设置,这些值是跟程序直接联系的,故若改变这些值对应的GY103螺母的大小也会改变。
  (3)建立插件,即在SolidWorks的环境建立菜单与子菜单,由SolidWorks的API函数开实现。所用的连接代码如下:
  Implements SW Published.SwAddin
  Dim iSldWorks As SldWorks.SldWorks’ 定义变量
  Dim iCookie As Long
  Dim iToolbarID As Long
  Dim swApp, ModelDoc, Feature As Object
  Private Function SwAddin_ConnectToSW(ByVal ThisSW As Object, ByVal Cookie As Long) As Boolean   Dim bRet As Boolean
  Set iSldWorks = ThisSW ’与SW建立连接
  iCookie = Cookie ’从SW得到cookie
  bRet = iSldWorks.SetAddinCallbackInfo(App.hInstance, Me, iCookie)
  bRet = iSldWorks.AddMenu(swDocNONE, "气压机夹具三维参数化设计模块(
其他文献
摘要:教学效果在现行的教育体制下的具体体现形式就是学生成绩,学生、家长、学校、社会都在问我们老师要成绩,所以提高每一节课的课堂效果也就是我们这些战斗在教学一线的教师们所应该努力寻求的目标,通过对本学年教学工作的深刻反思,在今后的工作中不断改进,相信以后的教学效果一定会有所提高。  关键词:高三生物;教学阶段;时间利用;教学方法;思维培养  一、高三教学分为三个阶段  1.1从高二暑假到次年二月  
摘 要:搞好科学实验课的教学是素质教育的必然要求,教育的意义是将所学知识融入生活,为现实所用。充分利用我们身边一切可利用的因素,结合生活实践,让学生在现实生活中轻松掌握科学文化知识,这样不仅能较好地培养学生的科学意识,还能够让学生体会到生活的真谛。  关键词:科学教学 素质教育 科学意识 生活化  人类发展的历史也是自然科学的发展史,我们在重视德育、语言数字等的教学时,能轻视自然科学和相关能力的培
摘要:随着课改的深入,科技的发展,高中生物教学中存在的问题日渐突显,解决高中生物教学中面临的各种难题,运用多种教学策略,提高高中生物教学效率成为亟待解决的重大课题。  关键字:多种教学策略 学习兴趣 高中生物教学效率  一、高中生物教学受传统的应试教育的影响  高中生物教学课堂在传统的应试教育的影响下,过于注重知识全面性的传输,而缺乏让学生独立思考的教育。学生在学习时更多的是死记硬背,缺乏对生物学
摘要:为了适应技术迅猛发展的信息社会,目前,计算机知识的学习已成为学生必不可少的课程组成部分,这不仅对培养跨世纪的人才具有现实意义,而且对提高我们民族的素质也有着深远的意义。那么,如何培养学生学习信息技术的兴趣,让信息技术教育的每一堂课真正转变为培养学生信息素养的金土地呢?这是我们广大信息技术教师值得探究的问题。  关键词:培养 信息技术 兴趣  "兴趣是最好的老师"。从表面上看,大部分学生喜欢上
【摘 要】教育作为培育人才的重要途径,必须要跟随时代的潮流,与时俱进,不能有所懈怠。所以计算机信息技术成为每位教师都应该掌握的技术,懂得合理的使用计算机可以使提高课堂的教学效率,激发学生的热情。但还有许多"老"教师没能跟上时代的步伐,这就需要进修学习了。本文主要说明了教师进修信息技术的必要性,计算机培训的特点,教师计算培训方法等内容,希望有一定的借鉴意义。  【关键字】信息技术 教师 进修  引语
苏霍姆林斯基说:"教学的起点,首先在于激发学生学习的兴趣和愿望。"著名特级教师于漪也曾说过:"课的第一锤要敲在学生的心灵上,激发起他们思维的火花,或像磁石一样地把学生牢牢地吸引住。"课堂教学是一门独特的艺术,好的开头是课堂成功的一半。教师如果一上课就能"一石激起千层浪",把学生的心抓住,不仅可以激发学生的求知欲,把学生带到教师的思路上来,而且可以使学生明确要求、集中精力、引发思维,以积极的心理状态
摘要:近年来,我县在现代教育技术方面加大了投入。城域网和远程教育的开通,给我们农村小学带来了一次大的契机,也给我们带来了一次轰轰烈烈的课堂改革运动。现代教育技术以惊人的速度广泛运用于我们的教育教学中。现代教育技术作为教学手段的运用,改变了传统的教学模式;现代教育技术作为教学手段的运用,打破了知识来源的局限性;现代教育技术在课堂上的运用上仍存在着的一些问题。  关键词:农村小学课堂 多媒体 现代教育
【摘要】本文简要介绍了近几年来对工程力学实验教学的改革与创新,并对如何改进实验课教学进行了初步探讨,提出了人才培养新模式。  【关键词】工程力学 实验教学 改革 创新  近些年来,许多高校在工程力学实验方面,开展了程式各样的以提高学生基本素质为目的的教学方式。但是,在教学内容、教学模式,尤其是教师应如何讲授实验理论、原理,实验教学与实验考核应如何进行等方面仍存在很大的改革与创新空间。工程力学是工科
摘要:本文通过文献资料法,逻辑分析法等对高校学生的应对方式研究做了综述,根据目前高校学生面临的实际压力,分析了高校学生应对特点及开展应对教育的必要性和重要性,探讨了对高校学生开展应对教育的具体措施,帮助高校学生提高认知评价水平,掌握积极应对的策略与方法,提高他们的应对效能水平。  关键词: 应对方式 心理健康 应对教育  高校学生属于青少年时期,是个体发展的关键期也是危机期,其生理心理发展迅速而心