Fusion360DevToolsと言う開発者向けの便利なツールがgithubで
公開されているのです。
GitHub - AutodeskFusion360/Fusion360DevTools: A collection of utilities to assist in developing Fusion 360 Add-ins
便利なんですが、中には使った後にFusion360がクラッシュするコマンドが
ありました。
ちょっとドキュメントの属性を利用したいのでテストしているのですが、
属性はユーザーが見ることが出来ない事がありがたい反面、開発中に
確認出来ないと言うもどかしさがあるのですが、上記のアドインの
こちらが利用出来て便利なはずなんです。
ところが全く無反応・・・、Update前は動いていたような記憶は
あるのですがダメです。
確認出来ないと話にならないので作ります・・・作りました。
アクティブドキュメントの属性をテキストコマンドウィンドウに全てダンプ。
# Dump Document Attributes # Fusion360API Python script import traceback import adsk.cam import adsk.fusion import adsk.core import adsk.drawing def run(context): ui: adsk.core.UserInterface = None try: app: adsk.core.Application = adsk.core.Application.get() ui = app.userInterface doc: adsk.fusion.FusionDocument = app.activeDocument attrs: adsk.core.Attributes = doc.attributes app.log('TextCommandWindow.Clear') app.log('-- Dump Document Attributes --') attr: adsk.core.Attribute for gpName in attrs.groupNames: app.log(f'GroupName : {gpName}') for attr in attrs.itemsByGroup(gpName): app.log(f' {attr.name}:{attr.value}')
作る事がAPIでしか出来ないのですが、削除もAPIからしか出来ません。
ドキュメントの属性を全部削除するスクリプト。
# Remove Document Attributes # Fusion360API Python script import traceback import adsk.cam import adsk.fusion import adsk.core import adsk.drawing def run(context): ui: adsk.core.UserInterface = None try: app: adsk.core.Application = adsk.core.Application.get() ui = app.userInterface doc: adsk.fusion.FusionDocument = app.activeDocument attrs: adsk.core.Attributes = doc.attributes app.log('TextCommandWindow.Clear') app.log('-- Remove Document Attributes --') app.log(f'before count:{attrs.count}') attr: adsk.core.Attribute for gpName in attrs.groupNames: app.log(f'GroupName : {gpName}') for attr in attrs.itemsByGroup(gpName): attr.deleteMe() app.log(f'after count:{attrs.count}') except: if ui: ui.messageBox('Failed:\n{}'.format(traceback.format_exc()))
中々進まない・・・。