1

我正在寻找的是一个用 excel 或 CATIA 编写的 VB 脚本,它可以将 CATProduct 中的点坐标导出到 excel 电子表格中。由于我要处理大量的点,该过程需要尽可能自动化。

最终,我只需要导出特定点并将这些点组合成 4 个点,以确定它们属于哪个部分。

我有一个允许导入点的 excel 脚本,但这仅从几何集中获取点,而我正在查看的产品中的点位于零件主体中。

4

2 回答 2

0

我相信可以做到,我要做的是搜索并选择 CATProduct 中的所有点,然后获取每个选定点的父级直到 Part,然后获取坐标(当然,如果你有的话,你需要在 Excel 中编写所有内容那里的代码)。

我不知道你是否可以在这里上传你的excel vba,但应该不那么难。

于 2012-12-24T20:40:01.967 回答
0

按照此处的链接写入可以导入到 excel 的 CSV 文件:http: //www.coe.org/p/fo/et/thread=27438

您需要将 excel VBA 参考文件添加到您的 Catia VBA 项目中。

关于您的积分信息:

只是为了向您展示如何深入到一个点,我使用了基本点的“插入”>“对象分辨率”,并包含了一些关于如何获取坐标以及循环位置的注释。有一点需要注意,一些方法被“标记为受限”,这需要在使用“GetCoordinates”子之前将点对象设置为变体的中间“hack”。

Sub GetPointData()
'---- Begin resolution script for object : Point.1

Dim partDocument1 As PartDocument
Set partDocument1 = CATIA.ActiveDocument

Dim part1 As Part
Set part1 = partDocument1.Part

Dim hybridBodies1 As HybridBodies
Set hybridBodies1 = part1.HybridBodies

Dim hybridBody1 As HybridBody
Set hybridBody1 = hybridBodies1.Item("Geometrical Set.1")

Dim hybridShapes1 As HybridShapes
Set hybridShapes1 = hybridBody1.HybridShapes

Dim hybridShapePointCoord1 As HybridShapePointCoord
Dim XYZ(2) As Variant
Dim var As Variant


'BEGIN LOOP THROUGH YOUR POINTS HERE
Set hybridShapePointCoord1 = hybridShapes1.Item("Point.1")
Set var = hybridShapePointCoord1
var.GetCoordinates XYZ
'WRITE XYZ TO CSV
'NEXT POINT
'END LOOP

'---- End resolution script
End Sub
于 2014-04-11T14:58:56.190 回答