VB solidworks 二次开发基础资料.doc
文本预览下载声明
特殊对象是这个一般对象的子类(SubClass) ,子类继承父类的所有属性和操作,除此以外子类还可以定义自己特有的属性和操作。继承是对象类的一种特例化关系,亦即集合包含关系, 子类对象实例集合是父类对象实例集合的子集。
对象模型 :
SolidWorks 的对象模型是一个多层次的对象网络,如图2.1所示。最高级别的对象类是SldWorks ,该对象中封装了很多方法(Methods) , 如OpenDoc2 、ActivateDoc2 、CloseDoc、ExitApp,下面又创建了许多子类, 如ModelDoc、Environment 、Frame。本文将重点介绍ModelDoc 对象,因为大部分绘图操作都在ModelDoc 对象中, 如SelectByID (选择) 、CreateCircle2 ( 画圆) 、CreateLine2 ( 画直线)。ModelDoc 中又创建了PartDoc、AssemblyDoc、DrawingDoc 等子类。其中大部分实体建模操作都在PartDoc 对象中,如FeatureExtrusion (拉伸) 、FeatureRevolve (旋转);而相关的装配操作如AddComponent (插入零部件) 、AddMate (插入配合) 等都在AssemblyDoc 对象中。
对象的??性和方法:
在SolidWorks 创建的对象中,每个对象都有自己的属性和方法,通过调用API 函数实现,反过来,应用SolidWorks 的每一步操作都体现在特定的对象类中。下面以VB 为开发平台介绍其一些常用的API 函数。
连接SolidWorks:
在对SolidWorks 进行二次开发时,首先要建立SolidWorks 的连接,创建SolidWorks 的应用对象:
Dim swApp As Object
Set swApp = CreateObject (〃SldWorks.Application〃)
通过这个函数,就打开了SolidWorks 的接口,可以调用它的API 函数了。
创建零件图:
Dim Part As Object
Set Part = swApp.newpart
创建装配图:
Dim Assem As Object
Set Assem = swapp.NewAssembly
这两个函数创建了一个新的工作区,使我们能够进行建模和装配。
选择:
“选择”可以说是在使用SolidWorks 时用得最多的一个命令,有很多命令在使用时都要选择操作对象,通过调用ModelDoc 对象中的SelectByID 函数来实现: ModelDoc.SelectByID(objectName ,object Type ,x , y , z) 这个函数在应用时需要输入五个参数:objectName 表示要选择对象的名称,该名称是SolidWorks在创建对象时按先后顺序自动命名的,如基准面1 、基准面2 、Arc1 、Line3 、D1 @ 草图1 @Part1.SLDPRT;object Type 要输入对象的类型,如PLANE (面) 、SKETCHSEGMENT (草图上的对象如直线、圆弧等) 、DIMENSION (尺寸标注);x , y , z 是平面上任一点的坐标值。
插入草图:
在所选平面上插入草图,调用ModelDoc 中的InsertSketch 函数: ModelDoc.InsertSketch ()
基本草图绘制命令:
画直线调用ModelDoc 对象中的CreateLine2 函数:ModelDoc.CreateLine2 (xStart ,yStart ,zStart ,xEnd , yEnd , zEnd )[.Const ructionGeomet ry =True ]xStart 、yStart 、zStart 、xEnd、yEnd、zEnd 分别是直线的起点和终点坐标; Const ructionGeomet ry =True 时表示画中心辅助线。
画圆调用ModelDoc 对象中的CreateCircle2函数:ModelDoc.CreateCircle2 (xc ,yc ,zc ,xp ,yp ,zp)xc、yc、zc、xp 、yp 、zp 分别是圆心和圆上一点的坐标值。标注尺寸先通过SelectByID 函数选择要标注的对象,再调用ModelDoc 中的AddDimension 函数:ModelDoc.AddDimension ( x , y , z)x、y、z 为尺寸文本所要放的位置的坐标值。
基本实体建模命令:
拉伸调用PartDoc 中的FeatureExtrusion 函数: PartDoc.FeatureExtrusion
显示全部