C#ATIA

↑タイトル詐欺 主にFusion360API 偶にCATIA V5 VBA(絶賛ネタ切れ中)

穴テンプレート2

こちらの続きです。
穴テンプレート1 - C#ATIA

もうちょっと詳しく調べました。
この様なザグリ穴付きの工程があります。

この2工程を穴テンプレートとしてエクスポートします。

あぁ公開していないですし、するかどうかもわからないのですが、
イチイチ登録してからエクスポートするのが面倒なので、既に
アドイン作ってダイレクトにエクスポートしてます。
こちらのメソッドを見つけた。
Fusion 360 Help
案の定、製造エクステンションが無いとエラーになります・・・。

エディタで開くと、形状を示す情報はこんな感じで記載されています。

・・・
  <holeSignature version="5">
    <segment type="Cylinder"/>
    <segment isExpanding="Contracting" type="Flat"/>
    <segment type="Cylinder"/>
    <segment isExpanding="Contracting" type="Cone"/>
  </holeSignature>
・・・

segmentタグが4個です。

ググっと下の方に行くと、各オペレーションの情報が記載されていますが、
1工程の大まかなフォーマットはこんな感じでした。

・・・
  <template>
    <tool>
    ・・・
    </tool>
    <holeData>
      ・・・
    </holeData>
    <parameter/>
    ・・・
    <parameter/>
  </template>
・・・

1工程がtemplateタグに囲まれていて、toolタグ,holeDataタグとprameterタグの連続です。
穴テンプレートの場合のみholeDataタグを持っています。

holeDataタグを見てみるとこんな感じです。

・・・
    <holeData operationType="drill" toolDiameterRatio="1.000000" version="1.0">
      <holeMapping>
        <segment index="2"/>
      </holeMapping>
    </holeData>
・・・

「segment index="2"」が、この工程が加工を行っている形状を示しているはずです。
つまり先頭付近のholeSignatureタグ内のsegmentの3番目と言うことです。
(先頭のインデックスは0です)


ザグリ穴付きのドリル加工のみで穴テンプレートを作成しても、holeSignatureタグ
の中身は全ての形状について書き出していました。
恐らく、こちらで取得出来る情報を全て書き出してそうです。
穴形状のタイプを認識する - C#ATIA

又、穴テンプレートを穴テンプレートとしてインポートする事が


createHoleTemplateFromOperationsメソッドが製造エクステンションが無いと
利用出来ないのはちょっと痛いですね・・・。
フォーマットが大体分かったのです、通常のテンプレートを穴テンプレートに
書き換える事が可能かもしれません。