まとめ
TeleParameterは、通常、別のノードのパラメータを参照する特殊なタイプのパラメータです。ターゲットパラメータはソースパラメータを参照するため、どちらかのパラメータに変更を加えると、もう一方のパラメータにも反映され、両方のパラメータがリンクされ、アクセス可能な状態が維持されます。
この記事では、UI と Python スクリプトを使用して TeleParameters を作成する方法について説明します。
詳細情報
TeleParameterは、ノード上のパラメータを別のパラメータにリンクする特殊な式を作成します。リンクされるパラメータは、同じノード上にあっても、別のノード上にあっても構いません。
パラメータ式との違いは、どちらのパラメータもユーザーが更新でき、これによりリンクされたパラメータも常に更新されるのに対し、通常の式では 1 つのパラメータの値のみ編集可能であることです。
UIでテレパラメータを作成する
UI で 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」という新しいユーザーパラメータが作成され、CameraCreateノードのfarパラメータを参照します。Pythonコマンドを実行する前に、グループノードのレンチメニューで「ユーザーパラメータの編集」が有効になっていることを確認してください。
注: TeleParameters を使用すると、ユーザーパラメータから非ユーザーパラメータを参照したり、他のユーザーパラメータを参照したりすることができます。ただし、この方法では 2 つの非ユーザーパラメータをリンクすることはできません。
さらなる支援
さらに質問がある場合、または TeleParameters の使用中に問題が発生する場合は、サポート チケットを開いて、発生している問題とこれまでに行ったトラブルシューティング手順をお知らせください。
サポート チケットを開く方法の詳細については、 「Q100064: サポート チケットの発行方法」を参照してください。
私たちはそれを聞いて申し訳ございません
理由をお聞かせください