Q100109: カスタム式評価のための追加のパラメータ式関数を作成する方法

まとめ

この記事では、パラメータ式について説明し、カスタム関数の例を使用してパラメータ式にカスタム オブジェクトを追加する方法について説明します。

詳細情報

パラメータ式は完全な Python スクリプトではなく、 Python 式のみをサポートします。

これらはラムダ式の本体、あるいは変数代入の右側部分に相当します。通常のif/elseブロックやループは使用できませんが、三項演算子とリスト内包表記は使用できます。

パラメータ式内で使用できるカスタムオブジェクトを登録できます。以下は、カスタム関数を登録し、それをパラメータ式で使用する方法を示した例です。

Pythonタブで、次のように関数を定義して登録します。

def triple(value):
  return value * 3

NodegraphAPI.SetExpressionGlobalValue("triple", triple)


次に、パラメータ式から次のように関数を使用できます。

triple(5) + 1


パラメータの値は 16 になります。重要なのは、式が何らかの値を「返す」のではなく、何らかの値に「評価」する必要があることです。

パラメータ式の目的は、パラメータの値をプログラム的に計算することです。パラメータ式の評価中にプロジェクトに変更を加えるべきではありません。

多数のパラメータの値を操作する必要がある場合は、シェルフ スクリプトまたはスクリプト ボタンの使用を検討してください。詳細については、 Katanaユーザー ガイドの「シェルフ アイテム スクリプト」、 「ユーザー パラメータ」および「ウィジェット タイプ」の章を参照してください。

    私たちはそれを聞いて申し訳ございません

    理由をお聞かせください