C#ATIA

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

ToolLibraryへのアクセス1

Updateされたので、ちょっと試しています。

Updateのボリュームに対してサンプルが少ないので、調べつつチマチマ
試すしか方法が無さそうです。

唐突ですが、ToolLibraryへのアクセス方法を探しています。
こちらがサンプルです。

# Fusion360API Python script

import traceback
import adsk.core as core
import adsk.cam as cam

def run(context):
    ui: core.UserInterface = None
    try:
        app: core.Application = core.Application.get()
        ui = app.userInterface

        products: core.Products = app.activeDocument.products
        camObj: cam.CAM = products.itemByProductType("CAMProductType")

        docToolLib: cam.ToolLibrary = camObj.documentToolLibrary
        print('** documentToolLibrary **')
        [print(f'{t.parameters.itemByName("tool_type").value.value }') for t in docToolLib]
        print('')

        camManager: cam.CAMManager = cam.CAMManager.get()
        libraryManager: cam.CAMLibraryManager = camManager.libraryManager
        toolLibraries: cam.ToolLibraries = libraryManager.toolLibraries

        rootUrl: adsk.core.URL = adsk.core.URL.create('systemlibraryroot://')
        print('** childFolderURLs **')
        [print(f'{f.pathName}') for f in toolLibraries.childFolderURLs(rootUrl)]
        print('')

        samplesUrl: adsk.core.URL = rootUrl.join('Samples')
        print('** childAssetURLs **')
        [print(f'{a.pathName}') for a in toolLibraries.childAssetURLs(samplesUrl)]

    except:
        if ui:
            ui.messageBox('Failed:\n{}'.format(traceback.format_exc()))

GUIでツールライブラリを開くと(英語ですまぬ・・・)

ドキュメント内のライブラリとインストール時に入っているライブラリの
取得方法はサンプルやドキュメントを見て気が付きましたが、
"Local"内のライブラリへのアクセス方法が分かりませんでした。

質問しようかな?と思っていた矢先に、これかな?と言うメソッドを
見つけたので、試してダメだったら質問しよう。