




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第一课 使用SolidWorks宏录制工具 SolidWorks API官方培训教材solidworksi第一课 使用SolidWorks宏录制工具11宏命令的相关介绍22利用宏命令建立一个宏文件33理解录制的程序代码74了解SolidWorks API的调用85程序参数的传递9FeatureManager:FeatureExtrusion106程序代码的整理117. 程序的调试128程序的增加功能操作16练习1 录制宏程序21练习2 增加VBA按钮代码22练习3 从VBA窗口中输入参数24第一课 使用SolidWorks宏录制工具学习本课后,你能达到下列能力:l 理解宏是什么,能做什么,什么
2、情况下可以使用宏命令。l 了解宏工具条上的每个按钮的作用。l 可以利用VBA程序录制一个程序并编辑相应代码。l 自定义宏命令按钮,并利用创建的按钮运行宏录制的程序。l 通过宏录制命令和运行宏程序,你可以理解按扭和键盘的作用。l 你可以知道一个宏命令是如何启动一个进程,怎样与SolidWorks程序进行连接,又是如何调用SolidWorks的对象和方法。l 你可以利用录制的宏程序提高设计能力。l 你可以调试一个宏程序。l 你可以利用窗口或对话框来控制宏程序的相关参数。1宏命令的相关介绍11宏录制:你能够利用宏录制命令在SolidWorks环境中录制SolidWorks的相关操作,并可以调用Sol
3、idWorks API接口提供的所有对象、方法及属性,也可记录SolidWorks环境中的鼠标、菜单和键盘操作。12宏工具条:在SolidWorks环境中提供了一个宏工具条,它主要是宏操作的命令按扭,当然你也可以从“工具”,“宏操作”来运行这些命令。缺省状态下,宏工具条是不可见的。你可以移动鼠标到任一工具按扭上面,单击右键,选择“宏”,则宏工具条就会显示在SolidWorks环境中;当然后,你也可以从“工具”,“工具栏”选择“宏”。运行命令:当你运行此命令时,SolidWorks将会弹出一个打开文件对话框,提示选择宏文件(后缀名为SWP),然后自动运行选择文件中的代码。停止命令:此命令在没有进
4、行录制的状态下为不可用,只有在录制状态可用。运行此命令后,SolidWorks会自动停止程序代码的录制,并弹出一个存盘对话框,提示输入相应的文件,然后以输入的文件名保存录制的内容。录制/暂停命令:你可以利用此命令在SolidWorks环境中进行录制,同时在录制过程也可停止录制或继续录制。新建命令:此命令表示不通过SolidWorks录制功能直接建立一个宏文件。一般情况下,利用此命令建立宏文件有三个步骤:首先,运行此命令输入有效的文件名;第二步,输入标准的编程代码(VBA语言)或从其他文件导入;第三步,利用“运行”命令调试代码直至无误。此命令一般只针对了解SolidWorks API、VB或VB
5、A的人员。编辑命令:此命令可以编辑或浏览选择的宏文件代码。自定义宏按扭命令:在“工具”,“自定义”,“命令”,“宏”下拖动一个自定义按扭到任一工具条下面,选择一个图形文件作为按钮的图标,同时选择一个宏文件,输入相关的帮助信息和提示信息,则可以为自己的宏文件建立命令按钮。2利用宏命令建立一个宏文件21 启动SolidWorks并建立一新的零件建立此零件文件,主运用缺省的单位mm。22显示宏工具条选择SolidWorks菜单下的“视图”,“工具条”,“宏操作”,然后宏工具就会显示出来。23运行宏工具条上的“录制/暂停”命令。24选择前视平面。25 单击草图绘制26 单击圆划好圆后,在特性管理器页面
6、的圆半径,然后回车。27 单击基体拉伸在特性管理器页面的深度进行设置,然后确定。28单击停止。29 存盘宏文件在弹出的宏文件存盘对话框内输入文件名为“宏1.swp”,然后确定。210 删除所有建立的特征包括草图211 单击运行,选择“宏1.swp”。212 自定义命令按钮从菜单“工具”,“自定义”,“命令”下面选择“宏”,然后选择自定义按钮,拖动到宏工具条中去。注意:你可以把自定义按钮拖动到任一工具条里面。213 定义宏命令按钮当你拖动自定义按钮到其他工具条上面后,SolidWorks会弹出定义此命令按扭的设置对话框。“选择图像”从SolidWorks安装目录下选择“datauser macr
7、o iconstrash.bmp”,当然,你可以选择自己定义的图形,但不要太大,否则按钮图标会很难看。“工具提示”和“提示”下面分别输入“圆柱体”和“自动建立圆柱体”。“宏”选择录制的宏文件“宏1.SWP”,然后方法自动显示,在这里我们默认。快捷键可以进行设置,也可以不设置。214 自定义命令按钮的测试命令按钮建立完成后,显示状态;移动鼠标到此按钮下显示,然后删除当前文件的所有特征后,单击此命令按运行程序,运行的结果如2.11,但没有提示选择宏文件。215 进入VBA编程器单击编辑按钮,你进入VBA编程器里面,修改或浏览录制的程序代码。通过上述系列操作,我们已经成功地录制了一个宏文件,并建立了
8、相关的命令按钮。3理解录制的程序代码宏录制的程序代码可能与你需要的程序不一致,你可以启动VBA编程器进行修改,当然,你必须能够明白程序代码的含义和作用,你才能进行有效地修改。下面我们针对录制的程序代码,进行一一说明。31 变量描述一般情况来讲,一个程序的各个变量在代码运行前要进行声明,同样SolidWorks宏程序也不例外。下列代码是SolidWorks宏录制自动建立的变量描述。Dim swApp As Object swApp声明为对象,表示SolidWorks应用程序Dim Part As Object Part声明为对象,表示SolidWorks零件环境Dim boolstatus As
9、 Booleanboolstatus声明为布尔值Dim longstatus As Long, longwarnings As Long 这两个变量为长整型Dim FeatureData As ObjectFeatureData声明为对象,表示SolidWorks特征数据Dim Feature As ObjectFeature声明为对象,表示SolidWorks特征Dim Component As ObjectComponent声明为对象,表示SolidWorks装配体的组件32 程序入口每个宏程序必须有一个程序入口,如 Sub Main()。33 与SolidWorks程序建立连接关系Set
10、 swApp = Application.SldWorks是宏程序与SolidWorks建立连接的桥梁代码,得到的应用程序作为对象传送给Part,没有这条代码宏程序不能运行。34 与SolidWorks下面的各个工作环境建立连接关系Set Part = swApp.ActiveDoc是宏程序与SolidWorks中的零件环境建立连接关系的桥梁代码,得到的当前工作环境作为对象传送给Part;这条代码也不能少,否则不能运行。35 SolidWorks API功能的调用SolidWorks允许宏程序调用它的API功能,宏调用SolidWorks API功能的方法与其他编程语言调用的方法一样,实现同样
11、的功能和操作。下列是宏程序调用SolidWorks API功能的代码:37 宏程序的结果 宏程序的结果和VB语言的结束是一样,用代码End Sub表示。4了解SolidWorks API的调用通常情况下,SolidWorks API的调用是指调用SolidWorks的事件、方法、属性及相关功能,SolidWorks API有自己的调用方法及调用顺序,请参考“SolidWorks API和插件帮助主题”。下面介绍一下SolidWorks API功能调用的步骤:41 SolidWorks应用程序对象SolidWorks应用程序对象(在宏程序里面声明为swapp,当然你可以声明为其他变量)是所有调用
12、SolidWorks API功能的最顶层,要调用SolidWorks API的其他功能,必须先调用此对象。语言代码描述说明VBADim swapp as object 或 Dim swapp As SldWorks.SldWorksSet swapp=Application.SldworksSwapp可以声明为不明对象,也可以声明为SolidWorks对象。在对象调用时,高级语言调用的是SolidWorks类。宏语言调用的是当前类。VB或其他语言Dim swapp as object 或 Dim swapp As SldWorks.SldWorksSet swapp=Getobject(,”S
13、ldworks. Application”)42 SolidWorks工作环境对象SolidWorks工作环境对象是指的是零件环境、装配环境、工程图环境及没有环境四个状态,它仅处于SolidWorks应用程序对象下,要调用SolidWorks API功能必须在调用SolidWorks应用程序对象后调用此对象;一般情况来讲,得到的SolidWorks工作环境对象主要是当前活动的工作环境。(关于SolidWorks工作环境对象的对象请参考“SolidWorks API和插件帮助主题”。)本课录制的SolidWorks工作环境对象是零件环境对象,表示如下:Dim Part as Object 或 D
14、im Part As SldWorks.ModelDoc2Set Part = swapp.ActiveDoc 当前活动的工作环境43 其他SolidWorks API功能的调用一旦上述两个对象调用之后,我们就可以调用SolidWorks API提供的其他功能如事件、属性、方法及相关函数。有返回值的SolidWorks API:boolstatus = Part.Extension.SelectByID("前视", "PLANE", 0, 0, 0, False, 0, Nothing)直接调用SolidWorks API:Part.InsertSket
15、ch2 TruePart.ShowNamedView2 "*上下二等角轴测", 8需要增加参数的SolidWorks API:Part.CreateCircle 0, 0, 0, 0, 0.04,0需要增加对象的SolidWorks API:Part.FeatureManager.FeatureExtrusion True, False, False, 0, 0, 0.015, 0.01,_False, False, False, False, 0, 0, False, False, False, False, 1, 1, 15程序参数的传递调用SolidWorks API
16、功能时,许多方法和属性都必须传递给程序一些参数,否则程序不能正常运行,下列针对FeatureManager:FeatureExtrusion的参数传递作一介绍,其他SolidWorks API功能请参考“SolidWorks API和插件帮助主题”。FeatureManager:FeatureExtrusionpFeat = FeatureManager.FeatureExtrusion ( sd, flip, dir, t1, t2, d1, d2, dchk1, dchk2, ddir1, ddir2, dang1, dang2, offsetReverse1, offsetReverse
17、2, translateSurface1, translateSurface2, merge, useFeatScope, useAutoSelect )输入:(VARIANT_BOOL) sdTRUE单向终止, FALSE双向终止输入:(VARIANT_BOOL) flipTRUE反向切除输入:(VARIANT_BOOL) dirTRUE反向拉伸输入:(long) t1第一个方向终止类型 swEndConditions_e:swEndCondBlind=0swEndCondThroughAll=1swEndCondThroughNext=2swEndCondUpToVertex=3swEnd
18、CondUpToSurface=4swEndCondOffsetFromSurface=5swEndCondMidPlane=6swEndCondUpToBody=7输入:(long) t2第一个方向终止类型 swEndConditions_e:swEndCondBlind=0swEndCondThroughAll=1swEndCondThroughNext=2swEndCondUpToVertex=3swEndCondUpToSurface=4swEndCondOffsetFromSurface=5swEndCondMidPlane=6swEndCondUpToBody=7输入:(doubl
19、e) d1第一个方向拉伸的深度(单位为米)输入:(double) d2第二个方向拉伸的深度(单位为米)输入:(VARIANT_BOOL) dchk1TRUE 允许第一个方向有拔模,FALSE 不允许。输入:(VARIANT_BOOL) dchk2TRUE 允许第二个方向有拔模,FALSE 不允许。输入:(VARIANT_BOOL) ddir1TRUE 第一个方向向内拔模, FALSE 向外拔模输入:(VARIANT_BOOL) ddir2TRUE 第二个方向向内拔模, FALSE 向外拔模输入:(double) dang1第一个方向的拔模角度输入:(double) dang2第二个方向的拔模角
20、度输入:(VARIANT_BOOL) offsetReverse1如果在第一个终止方向选择从其他实体面或平面进行偏移,则True表示偏移的方向远离草图,False表示反向偏移。输入:(VARIANT_BOOL) offsetReverse2如果在第二个终止方向选择从其他实体面或平面进行偏移,则True表示偏移的方向远离草图,False表示反向偏移。输入:(VARIANT_BOOL) translateSurface1当你在第一个方向选择swEndcondOffsetFromSurface作为终止条件时,则TRUE 表示终止条件是拉伸到规定的参考面, FALSE表示终止条件是拉伸到规定的真实的面
21、上。输入:(VARIANT_BOOL) translateSurface2当你在第二个方向选择swEndcondOffsetFromSurface作为终止条件时,则TRUE 表示终止条件是拉伸到规定的参考面, FALSE表示终止条件是拉伸到规定的真实的面上。输入:(VARIANT_BOOL) mergeTRUE多个实体零件进行合并,FALSE 不合并。输入:(VARIANT_BOOL) useFeatScopeTRUE表示特征只影到选择的实体,FALSE所有实体。输入:(VARIANT_BOOL) useAutoSelectTRUE表示自动选择所有实体,并影响它们, FALSE 只选择实体并影
22、响它们。输出:(LPFEATURE) pFeat返回特征对象。6程序代码的整理SolidWorks宏录制的程序代码比较混乱,而且有些代码是多余的,虽然不影响程序的运行,但是它们要占用内存空间并影响浏览和调试,所以经过宏录制的程序一般情况下要进行整理。下面是宏录制的宏代码:分析上面的代码,1-7表示声明变量,其中5-7的变量在程序后面的代码没有使用,是多余的;8行为程序入口;9-11行是程序运行的代码,不能去除;12-13行表示选择“前视基准面”面,不能去除,根据SelectByID的API说明,可以修改;14行表示插入草图,不能去除;15行表示清除选择,可以去除;16行表示通过两点创建一个圆,
23、但是我们输入的40mm没有起作用,进行修改;17表示整个视图以上下二等角轴测显示,可以保留,也可以去除;18-19表示清除当前操作和选择圆,可以去除;20-22行表示通过拉伸创建圆柱体,可以根据FeatureExtrusion的API说明进行修改;23行表示选择轮廓,可以去除;23行表示程序终止。另外可以根据需要添加一此注解说明,以便程序的维护。根据以上原则进行修改的代码如下: 7. 程序的调试得到SolidWorks应用程序对象及当前活动的工作文档 创建半径为40mm的圆创建15mm高的圆柱体特征无论是自己编制代码或利用宏录制工具进行录制的代码,很多情况下不能满足编程人员的需要,这些你可以对
24、代码进行调试,以确定哪些代码需要进行修改。下列介绍一下SolidWorks VBA编程器的调试方法。71 增加程序断点在程序的入口处的左边(灰处)单击鼠标左键。72 调试宏程序单击运行,运行宏,宏程序会自动运行到断点处停止。73 开始调试程序按键F8,程序会运行到下一行代码处。按键F8按键F8,按键F8,并移动鼠标到boolstatus处按键F8,并移动鼠标到boolstatus处按键F8,并观察到SolidWorks环境下草图已经执行,代码运行到下一行。按键F8两次,已经SolidWorks环境下创建了一个中心在原点、半径为40mm的圆,视图以上下二等轴图显示,代码运行到下一行的下一行。 按
25、键F8,程序创建圆柱体,并运行到最后一行。按键F8,结束程序。注意:在调试的过程,你可以返回上一行代码(用鼠标左键黄色箭头到上一行或前面几行)时,SolidWorks执行后的结果不能返回到原先的状态,所以你在进行这样的操作时,先到SolidWorks环境中利用返回命令回到需要的状态。76 程序的自动运行当上述步骤满足需要时,在程序的入口处清除断点,按键F5,程序自动执行上述所有步骤。8程序的增加功能操作我们编制的程序中的一些参数,很多时间需要进行交互式操作,利用上述的操作不能达到要求,这时,我们可给程序添加交互式操作的窗口或对话框。81 增加窗口在SolidWorks VBA编程器里面,选择“
26、插入”,“用户窗体”,这样窗口就加入到宏文件里面,然后编辑窗口的相关属性,Cation=创建圆柱体;(名称)=FrmMain。82增加各个命令控件增加如窗口上面的按钮,并分别定义不同的属性。CommandButton1:(名称)=cmd100mm;Cation=100mmCommandButton2:(名称)=cmd500mm;Cation=500mmCommandButton3:(名称)=cmd1m;Cation=1mCommandButton4:(名称)=cmd5m;Cation=5mCommandButton5:(名称)=cmdexit;Cation=退出程序Label1:Cation=
27、说明:运行各个按钮你可以建立长度不同的圆柱体83 建立创建圆柱体的函数双击“模板”下面的“宏11”,复制所有代码,然后双击窗口,粘贴代码,修改Sub Main为Function CreateCylinders(length As Long),同时修改0.015为length,并把特征建立的过程传给函数。84 编辑各个命令的代码双击的每个命令控件,并编辑相应的代码。 85修改宏的代码双击“模板”下面的“宏11”,修改宏代码,删除其他所有的代码,只保留程序入口和程序结果点,在二者之间加入代码,Load FrmMain:FrmMain.Show. 86 存盘宏在SolidWorks VBA编程器里面
28、,点保存当前所有编辑。87 运行当前修改的宏你可以直接在SolidWorks VBA运行宏,也可以进入SolidWorks操作环境中运行自定义命令按钮。100mm 500mm1m88 增加交互式窗口再增加一个窗口,并定义相关的属性,(名称)=FrmSecond;Caption=交互式圆柱体,然后增加相应的控件,定义属性如下:CommandButton1:(名称)=cmdCreate;Cation=创建CommandButton2:(名称)=Cmdexit;Cation=退出TextBox1:(名称)=DiaText;Text=0.15TextBox2:(名称)=HeiText;Text=100
29、Label1:Cation=圆柱直径,Label2:Cation=圆柱高度89 编制CmdCreate和Cmdexit代码双击CmdCreate控件,进入窗口FrmSecond代码编辑区,复制窗口FrmMain里面的声明并在窗口FrmSecond代码编辑区最前面进行粘贴,然后复制窗口FrmMain里面的CreateCylinders里面代码,并进行修改。810 交互式圆柱体窗口的运行程序焦点处于FrmSecond下面,直接在SolidWorks VBA下面点,对其进行测试。811 向SolidWorks工具条上增加另外一个命令按钮在SolidWorks环境中重复2.11的操作,SolidWor
30、ks会弹出的对话框,然后进行设置。 812 测试自定义的命令按钮,然后建立圆柱体。813存盘宏。通过以上操作,说明通过SolidWorks VBA操作SolidWorks API的功能是一件非常简单的操作,通过本课,你可以利用上述操作建立SolidWorks系列化参数零件。练习1 录制宏程序目标:通过本练习,要求掌握SolidWorks宏录制的过程,并能够制作每个宏程序的命令按扭,同时了解SolidWorks API的一些操作原理。练习对象:宏录制、宏编辑及自定义命令按钮。使用的API:ModelDoc2.Extension.SelectByIDModelDoc2.ActiveDocModel
31、Doc2.InsertSketch2ModelDoc2.SketchRectangleModelDoc2.CreateCircleModelDoc2.CreateLine2FeatureManager.FeatureExtrusionFeatureManager.FeatureCutFeatureManager.FeatureRevolve操作过程: 1 在SolidWorks环境中新建一个新空白的零件。2 显示宏操作工具条。3 点击宏录制/暂停命令按钮。4 根据提供的模型操作SolidWorks命令,并绘出相应的模型。5 模型建立完成后,点击宏停止按钮。6 把宏文件命名存在一个临时路径下面。7 建立一个自定义命令按钮,并附上上一步的宏文件。8 新建一个SolidWorks零件。9 运行刚才定制命令按钮。10 利用宏编辑命令浏览宏代码,并了解SolidWorks API的运用。相关文件模型如下: 练习2 增加VBA按钮代码目标:通过本练习,操作人员能够掌握VBA增加窗口及控件的方法,并能够设置相关的属性,并能够根据录制的代码
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 高中信息技术课堂教学方法的创新研究
- 2025光电车衣发电系统
- 中小学心理健康教育课程设计与实践知到课后答案智慧树章节测试答案2025年春浙江师范大学
- 三级人力资源管理师-三级人力资源管理师考试《理论知识》押题密卷6
- 三级人力资源管理师-《企业人力资源管理师(理论知识)》考前强化模拟卷6
- 山东省菏泽市东明县第一中学2024-2025学年高二下学期开学地理试题
- 2018高考人教政治二轮巩固练题(六)及解析
- 2018年普通高校招生全国统一考试仿真模拟(一)语文试题
- 甘肃省张掖市高台县一中2024-2025学年高三下学期第二次检测语文试题(原卷版+解析版)
- 2025届福建省漳州市高三下学期第三次检测历史试题 (原卷版+解析版)
- 2024版行政管理培训课件
- 锚固沟施工方案
- 工程结算审核服务方案技术标
- 小区物业收支明细公告范本
- 500kV变电站监控后台施工调试方案
- 《老年社会学与社会工作》复习考试题库(带答案)
- 中医医院治未病科建设与管理指南
- 柴进的五个故事
- 瓜州桥湾第一风电场200mw工程可行性研究报告
- 耳鼻咽喉头颈外科学:耳科学
- 2023年空置房管理办法4篇
评论
0/150
提交评论