CATIA批量导入导出数据到EXCEL

版权声明:1、部分知识来源于网络,如有侵权请联系博主。2、转载请注明出处。 https://blog.csdn.net/qq_36665108/article/details/89333385

序言

工作中,由于测量基准和建模基准不一致,我们经常遇到大量的测量数据需要导入CATIA中,经过坐标转换与模型进行对比。这个用宏程序可以解决,但是由于我们大部分人不懂编程,所以这个问题会让大家苦恼,下面介绍一种方法,解决上述问题。

一、EXCEL数据点批量导入到CATIA

  1. 打开CATIA,新建part文件,转入创成式外形设计模块,新建一个几何图形集;
  2. 打开D:\ProgramFiles\Dassault Systemes\B21\win_b64\code\command目录下的GSD_PointSplineLoftFromExcel _BeforeV5R21.Excel文件(具体视安装版本而定);
  3. 将宏安全性设置到最低后,点击EXCEL中的开发工具—宏,选择Feuil1.Main;
  4. 在弹窗中输入1点击确定即可(2和3分别表示曲线和曲面);

二、CATIA数据点批量导入到EXCEL

  1. 点击知识工程的设计表,选择使用当前的参数值创建设计表,单击确定;
  2. 在过滤器名称中输入x,提取点x的参数,然后全部选择,点击图中的箭头,输入到右边的已插入参数区域;
  3. 单击确定后修稿名称,单击保存。再单击确定,就可以保存到数据点X的坐标值。同理,可以输出Y和Z坐标的值就可以完成数据的导出。

三、VB批量输出点到EXCEL

// An highlighted block
Sub CATMain()
Dim lApp, lBook, lSheet,lESlct
Dim lDoc, lPrt, lHybody,lPoint, Coord(2)
Set lApp =CreateObject("excel.application")’创建Excel对象
lApp.visible = True’让Excel可见
Set lBook =lApp.workbooks.Add’创建一个新Excel文件
Set lSheet =lBook.Sheets.Add’添加一个新Sheet
lSheet.Name = "PointCoordinates"’给刚才添加到Sheet命名
Set lDoc =CATIA.ActiveDocument’获取CATIA当前激活的文件
Set lPrt = lDoc.part’获取文件的Part
Set lHybody =lPrt.hybridbodies.Item("ToBeExport")’获取Part下名为“ToBeExport的几何图形集”’以下为添加表头信息
lSheet.Cells(1, 1) ="Point Name"’第一行第一列值为“PointName”
lSheet.Cells(1, 2) ="x"’第一行第二列为“x”,下面同理
lSheet.Cells(1, 3) ="y"
lSheet.Cells(1, 4) ="z"
i = 2’初始化一个变量,代表第i行,因为第一行被设置成了表头,所以从第二行开始
For Each lPoint In lHybody.HybridShapes’遍历几何图形集中的元素
lPoint.getcoordinates Coord’获取点点坐标并赋给Coord,Coord前面定义了,是一个三维数组
lSheet.Cells(i, 1) =lPoint.Name’第i行,第1列的值为点的名称
lSheet.Cells(i, 2) =Coord(0)’第i行,第2列的值为行坐标,以下同理
lSheet.Cells(i, 3) =Coord(1)
lSheet.Cells(i, 4) =Coord(2)
i = i + 1’i自加1下一个循环获取到的值将填入下一行
Next
lSheet.Columns("A:D").EntireColumn.AutoFit’根据单元格内容自动调整列宽
lSheet.Columns("B:D").NumberFormatLocal= "0.000_ "’第24列的显示格式为小数点后面三位
End Sub

猜你喜欢

转载自blog.csdn.net/qq_36665108/article/details/89333385