基于VB的Catia的二次开发:(1)启动Catia

    技术2022-07-10  162

    命名空间

    添加引用:CATIA V5 GSMInterfaces Object Library,只需添加这一个,其余需要的引用会自动添加。

    添加引用之后,引用列表里面就会多出这几个库。

    导入命名空间:

    Imports INFITF Imports HybridShapeTypeLib Imports MECMOD

    启动CATIA

    定义变量

    Dim CatiaApp As Application ' catia应用 Dim ADoc As Document ' 文件 Dim APart As Part ' 定义零件 Dim ABodies As HybridBodies ' 定义Body集合 Dim ABody As HybridBody ' 定义Body Dim Shapes As HybridShapeFactory ' 定义几何图形集

    启动Catia函数

    ' 启动Catia Sub StartupCatia() Dim strStartup As String = "启动CATIA..." Console.WriteLine(strStartup) ' 跳过错误步骤,继续执行 On Error Resume Next CatiaApp = GetObject(, "CATIA.Application") If Err.Number <> 0 Then CatiaApp = CreateObject("CATIA.Application") CatiaApp.Visible = True End If Dim strDoc As String = "新建Part文件..." Console.WriteLine(strDoc) ' 获取当前活动文件;如果没有活动文件,则新建零件 ADoc = CatiaApp.ActiveDocument If ADoc Is Nothing Then Err.Clear() ADoc = CatiaApp.Documents.Add("Part") End If ' 初始化 APart = ADoc.Part ABodies = APart.HybridBodies ABody = ABodies.Add() Shapes = APart.HybridShapeFactory End Sub

    全部模块源码

    Imports INFITF Imports HybridShapeTypeLib Imports MECMOD Module StartupModule Dim CatiaApp As Application ' catia应用 Dim ADoc As Document ' 文件 Dim APart As Part ' 定义零件 Dim ABodies As HybridBodies ' 定义Body集合 Dim ABody As HybridBody ' 定义Body Dim Shapes As HybridShapeFactory ' 定义几何图形集 ' 主程序 Sub Main() Dim strStart As String = "开始CATIA建模..." Console.WriteLine(strStart) StartupCatia() Dim strDoc As String = "已启动CATIA" Console.WriteLine(strDoc) Console.ReadKey() End Sub ' 启动Catia Sub StartupCatia() Dim strStartup As String = "启动CATIA..." Console.WriteLine(strStartup) ' 跳过错误步骤,继续执行 On Error Resume Next CatiaApp = GetObject(, "CATIA.Application") If Err.Number <> 0 Then CatiaApp = CreateObject("CATIA.Application") CatiaApp.Visible = True End If Dim strDoc As String = "新建Part文件..." Console.WriteLine(strDoc) ' 获取当前活动文件;如果没有活动文件,则新建零件 ADoc = CatiaApp.ActiveDocument If ADoc Is Nothing Then Err.Clear() ADoc = CatiaApp.Documents.Add("Part") End If ' 初始化 APart = ADoc.Part ABodies = APart.HybridBodies ABody = ABodies.Add() Shapes = APart.HybridShapeFactory End Sub End Module
    Processed: 0.018, SQL: 9