こちらの続きです。
ボディの体積をダンプする1 - C#ATIA
比較の為に、Fusion360でボディの体積をダンプします。
# Fusion360API Python script import traceback import adsk.core as core import adsk.fusion as fusion def run(context): ui: core.UserInterface = None try: app: core.Application = core.Application.get() ui = app.userInterface des: fusion.Design = app.activeProduct root: fusion.Component = des.rootComponent [app.log(f"{body.name} : {body.volume}") for body in root.bRepBodies] except: if ui: ui.messageBox('Failed:\n{}'.format(traceback.format_exc()))
体積を取得しダンプしているのは、実質こちらの1行です。
[app.log(f"{body.name} : {body.volume}") for body in root.bRepBodies]
これだけです・・・。
こちらも適当なデータを作り実行した結果とGUIでの測定値です。
Fusion360のAPIは基本Cmですね。
コード量を考えると、CATIA V5のマクロってハードル高いですね。
イヤイヤ、本当はこんな事を書きたかったんじゃないんです。
続き書けるかな・・・。