1

私が探しているのは、CATProduct 内の点の座標を Excel スプレッドシートにエクスポートできる、Excel または CATIA で記述された VB スクリプトです。私が扱っているポイントの数が多いため、このプロセスは可能な限り自動化する必要があります。

最終的には、特定のポイントのみをエクスポートし、これらのポイントを 4 つのグループにまとめて、それらがどの部分に属しているかを特定する必要があります。

ポイントをインポートできる Excel スクリプトがありますが、これはジオメトリ セットからのみポイントを取得し、見ている製品のポイントはパーツ ボディにあります。

4

2 に答える 2

0

このリンクに従って、Excel にインポートできる CSV ファイルに書き込みます: http://www.coe.org/p/fo/et/thread=27438

Excel VBA 参照ファイルを Catia VBA プロジェクトに追加する必要があります。

ポイント情報について

ポイントにドリルダウンする方法を示すために、基本的なポイントの[挿入] > [オブジェクトの解像度]を使用し、座標の取得方法とループする場所に関するコメントを含めました。注意すべき点が 1 つあります。一部のメソッドは「制限付きとしてマーク」されており、「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
于 2014-04-11T14:58:56.190 に答える
0

できると思います。CATProduct 内のすべての点を検索して選択し、選択した各点の親を部品まで取得し、座標を取得します (もちろん、ある場合はすべてを Excel に書き込む必要があります)。そこのコード)。

ここに Excel VBA をアップロードできるかどうかはわかりませんが、それほど難しくはないはずです。

于 2012-12-24T20:40:01.967 に答える