C#ATIA

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

f3dファイルから形状データのみをインポートする1

こちらにUpしたスクリプトですが、手動でも出来ます。面倒ですが。
Re: アップロードに失敗しました 〜「アップロードを保留中」から進まずアプリを終了できない〜 - Autodesk Community
あちらのスクリプトは以下の処理を行ってます。


1)任意のf3dファイルをコピーし、拡張子を ".zip" に変更する。
スクリプトでもこの処理していますが、やらなくても良いことが分かりました。


2)zipファイルとして展開する。
データ次第ですが、スケッチ書いて押し出した程度のデータの場合、
こんな感じです。
f:id:kandennti:20201012101533p:plain


3)smb/smbhファイルを探す
展開後のファイルを探すと "xxx.smb" "xxx.smbh" のファイルが見つかる
ハズです。恐らくこれはコンポーネント分のファイルが有るはずです。

これらのファイルは "Shape Manager" の中間ファイルと思われます。
Re: エクスポートするファイルの単位系について - Autodesk Community

色々と試したところ、
xxx.smb - 履歴的に必要となるデータ(押し出し・回転等のデータの様です)
xxx.smbh - 最終形状のデータ
の様で、".smbh" が必要となるデータと解釈しました。


4)smbhファイルをsatに変換
smbhファイル直接Fusion360ではインポート出来ないと思われます。
テキストコマンドを探すとsab/smb/sbmhをsatに変換するコマンドが有りました。
(sabはsatのバイナリファイル)

ASMInterface.convertSabToSat <sbmhファイルパス>

変換後のsatファイルは、同一フォルダ内に同一ファイル名で出来上がります。

f:id:kandennti:20201012101636p:plain

知っている範囲でFusion360で開いていないドキュメントに対して使える
唯一のコマンドです。珍しい。


5)satファイルをインポートする
こちらで散々試しましたが、こちらが安定していました。
https://kantoku.hatenablog.com/entry/2020/09/25/191303

NaFusionUI.ImportCmd <satファイルパス>

f:id:kandennti:20201012101656p:plain




純粋に形状だけの為、色々と不足していますが "どうしても諦めきれない!!!"
と言う時には利用価値があると思います。
ちょっと無駄なコードが有ったり、不要な処理が有ったりした為、
もう少し直してgithubにupしておきます。