上一期中为大家介绍了使用VisualStudio软件制作机器人焊点数据导出的应用软件,本期再来为大家介绍一下机器人焊点小球生成工具软件的制作方法。

CATIA软件版本:CATIA V5R21。

VisualStudio软件版本:VisualStudio Ultimate 2010。

一、项目创建与CATIA Autimation API类库引用

参考上一期中《CATIA软件二次开发:焊点数据导出工具应用程序编写》章节的相关内容在VisualStudio Ultimate 2010软件中创建“Windows窗口应用程序”模板项目,项目名称为焊点小球生成工具。项目创建完成后为项目添加CATIA Autimation API类库引用。

二、窗体布置与属性设置

1.设置Form1窗体属性。

catia自动捕捉点设置(CATIA软件二次开发教程)(1)

2.在Form1窗体中添加两个Label控件、1个TextBox控件、1个Button控件,添加完成后分别设置控件属性。

catia自动捕捉点设置(CATIA软件二次开发教程)(2)

3.控件属性设置完成,拖动Form1窗体至合适大小,并将各个控件进行合理摆放。

catia自动捕捉点设置(CATIA软件二次开发教程)(3)

三、VBA代码编写

1.参考上一期中《CATIA软件二次开发:焊点数据导出工具应用程序编写》章节的相关内容,在 Form1窗体代码编辑区中添加CATIA API类库引用代码。

2.为Form1窗口的Load事件添加CATIA软件控制判断代码。

catia自动捕捉点设置(CATIA软件二次开发教程)(4)

3.为“生成”按钮的Click事件编写焊点小球批量自动生成代码。

catia自动捕捉点设置(CATIA软件二次开发教程)(5)

完整程序代码如下所示。

'添加CATIA API引用 Imports SURFACEMACHINING Imports CATStrSettingsTypeLib Imports StrTypeLib Imports SPATypeLib Imports SMTypeLib Imports SimulationTypeLib Imports SIM Imports CATRsc2 Imports ProductStructureTypeLib Imports PRISMATICMACHINING Imports PPR Imports PCBITF Imports PARTITF Imports OSMInterfacesTypeLib Imports NavigatorTypeLib Imports MECMOD Imports MANUFACTURING Imports KnowledgewareTypeLib Imports KinTypeLib Imports INFITF Imports HybridShapeTypeLib Imports GenKwe Imports FittingTypeLib Imports ElectricalTypeLib Imports ElecSchematicTypeLib Imports DRAFTINGITF Imports LAYOUT2DITF Imports DNBSimulation Imports DNBSimIO Imports DNBSimAct Imports DNBRobot Imports DNBIgpResourceProgram Imports DNBReporting Imports DNBMHIItf Imports DNBManufacturingLayoutItf Imports DNBIgripSim Imports DNBIgpTagPath Imports SWKHumanModelingItf Imports DNBPert Imports DNBFastener Imports DNBDpmItf Imports DNBBIW Imports DNBDevice Imports DNBDeviceActivity Imports DNBD5I Imports DNBASY Imports PROCESSITF Imports ComponentsCatalogsTypeLib Imports AnnotationTypeLib Imports CATTooling Imports CATStk Imports CATSmInterfacesTypeLib Imports CATSmarTeamInteg Imports SHEITF Imports CATSdeSetting Imports CATSchematicTypeLib Imports CATRsc Imports CATRma Imports CATRpmReporterTypeLib Imports CATRdg Imports CATPspPlantShipTypeLib Imports CATOBM Imports CATMultiCAD Imports CATMat Imports DNBIPD Imports CATInstantCollabItf Imports CATImm Imports CATIdeSettings Imports CATV4IInteropTypeLib Imports CATHumanPackaging Imports CATFunctSystem Imports CATEdbTypeLib Imports CATDrmRmsSettings Imports CATDataExch Imports BehaviorTypeLib Imports CATAssemblyTypeLib Imports CATArrangementTypeLib Imports SAMITF Imports CAT3DXml Imports CATCompositesMat Imports AECRTypeLib Public Class Form1 '声明CATIA COM对象 Dim CATIA As Object Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load Try '获取CATIA COM 对象 CATIA = GetObject(, "CATIA.Application") Catch ex As Exception '未打开CATI时提示打开CATIA软件 MsgBox("请先启动CATIA软件。") End End Try End Sub Private Sub CmdCreateSpehre_Click(sender As System.Object, e As System.EventArgs) Handles CmdCreateSpehre.Click '获取当前激活的文件 Dim partDocument1 As PartDocument Try partDocument1 = CATIA.ActiveDocument Catch ex As Exception '未打开零件文件提示 MsgBox("请先打开一个包含焊点信息的零件(*.Part)文件。") End End Try '获取零件文档顶层对象<根文件> Dim part1 As Part part1 = partDocument1.Part '获取零件中的几何图形集集合 Dim hybridBodies1 As HybridBodies hybridBodies1 = part1.HybridBodies '添加几何图形集并进行命名 Dim hybridBody1 As HybridBody hybridBody1 = hybridBodies1.Add() hybridBody1.Name = "Joints info, add at " & Now '更新视图 part1.Update() '获取几何图形集集合中的第一个几何图形集 Dim hybridBody2 As HybridBody hybridBody2 = hybridBodies1.Item(1) '定义混合曲面工厂 Dim hybridShapeFactory1 As HybridShapeFactory hybridShapeFactory1 = part1.HybridShapeFactory '获取输入的小球半径 Dim iRadius As Double iRadius = Val(SphereRadiusTextBox.Text) '遍历第一个几何图形集中的点信息并创建小球 Dim iPoint As Reference '定义小球中心点参考 For Each iPoint In hybridBody2.HybridShapes '遍历第一个几何图形集中的点信息 Dim hybridShapeSphere1 As HybridShapeSphere '定义球体 hybridShapeSphere1 = hybridShapeFactory1.AddNewSphere(iPoint, Nothing, iRadius, -45.0, 45.0, 0.0, 180.0) '创建小球 hybridShapeSphere1.Limitation = 1 '设置球面限制(0:角度,1:整球) hybridBody1.AppendHybridShape(hybridShapeSphere1) '把创建的小球放置到指定几何图形集下 hybridShapeSphere1.Name = iPoint.Name & "_Joint" '小球命名规则 part1.InWorkObject = hybridShapeSphere1 '定义当前工作对象,执行时此行代码可有可无 Next part1.Update() End Sub End Class

四、运行测试

1.启动CATIA软件,并打开一个含有焊点信息的零件文件。

catia自动捕捉点设置(CATIA软件二次开发教程)(6)

2.点击“启动调试”工具按钮,稍等片刻自动弹出焊点小球生成工具对话框,输入小球半径值,然后点击“生成”按钮,焊点小球随之生成。

catia自动捕捉点设置(CATIA软件二次开发教程)(7)

3.同样,在项目文件夹的Debug目录下可以找到编译生成了“焊点小球生成工具”应用程序,直接双击打开使用,效果与调试程序一致。

The End


上一篇:CATIA软件二次开发:焊点数据导出工具应用程序编写

,