まとめ
TeleParameter は、通常は別のノードのパラメータを参照する特殊なタイプのパラメータです。ターゲット パラメータはソース パラメータを指すため、どちらかのパラメータへの変更はもう一方のパラメータにミラーリングされ、両方のパラメータがリンクされアクセス可能な状態に保たれます。
この記事では、UI および Python スクリプトを使用して TeleParameter を作成する方法について説明します。
詳しくは
TeleParameter は、ノード上のパラメータを別のパラメータにリンクする特別なタイプの式を作成します。リンクされたパラメータは、同じノード上に存在することも、別のノード上に存在することもできます。
パラメーター式との違いは、どちらのパラメーターもユーザーが更新できることです。これにより、リンクされたパラメーターも常に更新されますが、通常の式では 1 つのパラメーターの値のみが編集可能です。
UI でのテレパラメータの作成
UI で TeleParameter を作成するには、次の手順を実行してください。
- [パラメータ] タブで TeleParameter を作成するノードを開き、パラメータの右上にあるレンチ アイコンをクリックして [ユーザー パラメータの編集]を選択します。
- これにより、既存のパラメータの下に空のユーザーパラメータ グループが作成されます。 [追加]をクリックし、使用可能なパラメータ タイプのリストから[TeleParameter]を選択します。
- 参照を作成するパラメータのラベルを中マウス ボタンで「ここにパラメータをドロップ」というラベルのドロップ領域にドラッグします。
- TeleParameter は、リンクされたパラメータと一致する外観になります。いずれかのパラメータに加えた編集は、リンクされたパラメータに反映されます。
この例では同じノード上のパラメータを接続していますが、別のノードのパラメータを接続することもできます。
- 最初のノードにカーソルを合わせてEを押し、次に 2 番目のノードにカーソルを合わせてShift+Eを押して、両方のノードのパラメータを編集します。
- 接続するパラメータを中マウス ボタンで一方のノードからもう一方のノードで作成した TeleParameter にドラッグします。
Python 経由でテレパラメータを作成する
これらは、関数でラップされた Python コマンドを使用して TeleParameter を作成するために必要な手順です。
def CreateTeleParam(parentParam, targetParam): teleParam = parentParam.createChildString('%sTeleParam' % targetParam.getName(), '') teleParam.setExpression('getParam("%s").param.getFullName()' % targetParam.getFullName()) teleParam.setHintString(repr({'widget': 'teleparam'}))
CreateTeleParam() 関数は、指定されたターゲット パラメータを指す、指定された親パラメータの下に TeleParameter を作成します。
この関数の使用例を次に示します。
CreateTeleParam(NodegraphAPI.GetNode('Group').getParameter('user'),NodegraphAPI.GetNode('CameraCreate').getParameter('far'))
この例では、farTeleParam という名前の新しいユーザー パラメータが Group ノード上に作成され、CameraCreate ノード上の far パラメータを指します。 Python コマンドを実行する前に、レンチ メニューでグループ ノードの[ユーザー パラメータの編集] が有効になっていることを確認してください。
注: TeleParameters を使用すると、非ユーザー パラメーターや他のユーザー パラメーターを指すユーザー パラメーターを持つことができます。ただし、この方法で 2 つの非ユーザー パラメータをリンクすることはできません。
さらにご質問がある場合、または TeleParameters の使用で問題が発生した場合は、サポート チケットを開いて、発生している問題とこれまでに実行したトラブルシューティング手順をお知らせください。
サポート チケットを開く方法の詳細については、 「Q100064: サポート チケットを発行する方法」を参照してください。
私たちはそれを聞いて申し訳ございません
理由をお聞かせください