VB连接Solidworks2012_第1页
VB连接Solidworks2012_第2页
VB连接Solidworks2012_第3页
VB连接Solidworks2012_第4页
VB连接Solidworks2012_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

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

文档简介

1、SolidWorks二次开发基本知识(开发人员提供)SolidWorks提供了几百个API(Application Program Interface,应用程序接口),可以使用VB/VB/VC/Delphi等高级语言对SolidWorks进行二次开发,建立符合要求的、专用的SolidWorks功能模块VBAVBA(Visual Basic for ApplicationsVisual Basic for Applications)VBAVBA(Visual Basic for ApplicationsVisual Basic for Applications)是是19931993年由年由Mic

2、rosoftMicrosoft推出的一种可以被多推出的一种可以被多种应用程序共享的、针对应用程序内部可种应用程序共享的、针对应用程序内部可编程的、通用的可视化应用程序编程语言。编程的、通用的可视化应用程序编程语言。VBAVBA是一套完整的应用程序开发环境,它为是一套完整的应用程序开发环境,它为用户和开发人员提供了一种应用程序间通用户和开发人员提供了一种应用程序间通用的应用程序语言,减少了学习时间和支用的应用程序语言,减少了学习时间和支持费用。持费用。在Microsoft Office中,所有的应用程序都可以使用VBA在SolidWorks中,VBA最常见的用途即是录制宏。几乎所有用键盘或菜单命

3、令完成的动作均被宏记录下来,然后对不同的数据进行(或播放)同一批操作。SolidWorks的对象、方法很多,其中SldWorks对象有98种方法,ModelDoc对象有477种方法,通常,开发者先录制一段宏,然后将宏代码修改后复制到VB中去。宏是一系列命令的集合,相当于Dos的批处理文件,可以通过录制使用SolidWorks用户界面执行的操作,然后使用SolidWorks宏重新执行这些操作。1.在Solidworks中,应用纪录宏(【工具】 【宏操作】 【录制】停止宏停止宏保存于文件夹保存于文件夹2.操作、停止并保存3.编辑宏4.执行宏操作将宏录制的代码照搬到VB,并不一定能够绘图,有时会出现

4、错误,需进行修改。SolidWorks二次开发常用代码打开SolidWorks新文件SldWorks:NewPart:打开一个被自动命名的新零件SldWorks:NewDocment(模板名,图纸尺寸,用户纸宽,用户纸高):创建一个具有模板名的新文件SldWorks:NewAssembly:创建一个被自动命名的装配体文件SldWorks:NewDrawing2(模板类型,模板名,图纸尺寸,纸宽,纸高):创建一个新的具有模板或用户图纸的工程图文件,文件名被自动命名。保存和退出文件ModelDoc:SaveAs(文件名,版本信息,选项,.):用不同的名称保存文件ModelDoc:SaveAs2 (

5、文件名):用新名字保存文件SldWorks:ExitApp退出SolidWorks保存在当前路径:App.path & “文件名”其他代码ModelDoc2:InsertSketch2:开始/结束草图绘制ModelDoc2:ClearSelection():清除任何选择ModelDoc2.InsertKetchText(X坐标,Y坐标,Z坐标,文本,文本的对齐方式):插入草图文本Part.FeatureExtrusion(拉伸方向,终止1,终止2,拉深深度.)例:Part.FeatureExtrusion 1, 0, 1, 0, 0, 0.02, 0.02, 0, 0, 0, 0, 0

6、.017, 0.017, 0, 0 其他代码Mddeldoc:Featurecut4(单(双)向,反侧切除,方向1,终止1,终止2,切割深度1,切割深度2,拔模):VB连接SolidworksDim swApp As ObjectSet swApp = CreateObject(SldWorks.Application)Swapp.visible(true)连接Solidworks并新建自动命名的零件模型文件Private Sub Command1_Click()Dim swApp As ObjectDim npart As ObjectSet swApp = CreateObject(Sld

7、Works.Application)Swapp.visible(true)Set npart = swApp.Newpart()End Sub连接Solidworks并新建自动命名的装配模型文件Dim swApp As ObjectDim nassembly As ObjectSet swApp = CreateObject(SldWorks.Application)Swapp.visible(true)Set nassembly = swApp.Newassembly()连接Solidworks并新建工程图文件Dim swApp As ObjectDim pDrawing As Object

8、Set swApp = CreateObject(SldWorks.Application)Set pDrawing = swApp.NewDrawing2(13, , 0, 0.2794, 0.2159)新建文件例题:Private Sub Command1_Click()Dim swApp As ObjectDim npart As ObjectSet swApp = CreateObject(SldWorks.Application)Swapp.visible(true)Set npart = swApp.Newpart()End SubPrivate Sub Command2_Clic

9、k()Dim swApp As ObjectDim pDrawing As ObjectSet swApp = CreateObject(SldWorks.Application)Set pDrawing = swApp.NewDrawing2(13, , 0, 0.2794, 0.2159)End SubPrivate Sub Command3_Click()Dim swApp As ObjectDim nassembly As ObjectSet swApp = CreateObject(SldWorks.Application)Set nassembly = swApp.Newassem

10、bly()End Sub编程举例代码Private Sub Command1_Click()Dim swApp As ObjectDim Part As ObjectSet swApp = CreateObject(SldWorks.Application)swApp.Visible (True)Set Part = swApp.Newpart()Set Part = swApp.ActiveDocPart.InsertSketchPart.SketchRectangle 0, 0, 0, 0.1, 0.1, 0, 1Part.FeatureExtrusion 1, 0, 1, 0, 0, 0

11、.02, 0.02, 0, 0, 0, 0, 0.01745329251994, 0.01745329251994, 0, 0代码代码Part.SelectByID 前视, PLANE, 0, 0, 0Part.InsertSketchPart.CreateCircle 0.05, 0.05, 0, 0.07, 0.07, 0Part.ShowNamedView2 *等轴测, 7Part.FeatureCut4 1, 0, 0, 0, 0, 0.02, 0.02, 0, 0, 0, 0, 0.01745329251994, 0.01745329251994, 0, 0, -1, 0Part.V

12、iewZoomtofit2End Sub 抽壳Modeldoc2:insertfeatureshelladdthicknessPrivate Sub Command1_Click()在前视面,以左下角为原点生成一个100 x100 x20的长方体对此长方体进行多厚度抽壳Dim swApp As ObjectDim Part As ObjectSet swApp = CreateObject(SldWorks.Application)Set Part = swApp.ActiveDocswApp.Visible (True)Set Part = swApp.newpart()Part.Inser

13、tSketchPart.SketchRectangle 0, 0, 0, 0.1, 0.1, 0, 1Part.FeatureExtrusion 1, 0, 1, 0, 0, 0.02, 0.02, 0, 0, 0, 0, 0.01745329251994, 0.01745329251994, 0, 0Part.SelectByMark 基体-拉伸, BODYFEATURE, 0, 0, 0, 0Part.AndSelectByMark , FACE, 0.03, 0.03, 0, 1 选择开放面?标号是1 选择两个有不等厚度的非开放面?标号是2Part.AndSelectByMark , F

14、ACE, 0.09999999999991, 0.04121560801519, -0.01272845167375, 2Part.AndSelectByMark , FACE, 0.05376383570518, 0.09999999999985, -0.01066374420634, 2 为每个面设置厚度Part.InsertFeatureShellAddThickness 0.005Part.InsertFeatureShellAddThickness 0.02 生成抽壳特征Part.InsertFeatureShell 0.001, 0Part.ShowNamedView2 *Isom

15、etric, 7Part.ViewZoomtofit2End Sub参数化设计打开打开VB,建立工程并,建立工程并设计相应的窗体,设计相应的窗体,编写代码,调用编写代码,调用SolidWorksDim swApp As ObjectDim npart As Object 定义OLE对象变量,分别对应SldWorks和Part对象 Set swApp = CreateObject(SldWorks.Application)创建SldWorks对象Set Part = swApp.ActivateDoc(Part1)在SolidWorks中创建一个新零件文件,零件名被自动命名Swapp.visible(true)Option ExplicitDim swApp As ObjectDim Part As ObjectDim D1 As DoubleDim D2 As DoublePrivate Sub Command1_Click()Set swApp = CreateObject(SldWorks.Application)Set Part = swApp.ActivateDoc(“Part1”)当前文件名当前文件名Part.Parameter(

温馨提示

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

最新文档

评论

0/150

提交评论