【问题标题】:How can I export point coordinates from a CATIA product to excel如何将点坐标从 CATIA 产品导出到 Excel
【发布时间】:2019-03-03 18:28:13
【问题描述】:

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

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

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

【问题讨论】:

    标签: vba catia


    【解决方案1】:

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

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

    关于您的积分信息:

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

    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
    

    【讨论】:

    • 而不是将 hsPoint 重新分配给新的 var 变体,您可以使用 with hybridShapes1.Item("Point.1"): .GetCoordinates XYZ: End With,它也可以工作!
    【解决方案2】:

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

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-03-28
      • 2014-02-01
      • 1970-01-01
      • 1970-01-01
      • 2014-05-30
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多