サポートチケットを作成する
フォローする

Q100277:PythonによるKatanaノードグラフ内のノードの配置

概要

この記事では、Pythonコマンドを使って、新しく作成したノードをノードグラフに配置する方法を説明します。

Katanaでのスクリプト作成とノードを使用する方法の詳細については、 Katana開発者ガイドの Working with Nodesセクションを参照してください

詳しくは


Pythonでノードを作成する

ノードは、次のPythonコマンドを使用してKatanaで作成できます。

 NodegraphAPI.CreateNode( nodeType ,  parent ) 

どこで:

  • nodeTypeは、使用可能なノードのリストに表示されるノード名です。このリストにアクセスするには、[ Node Graph ]タブの上にマウスを移動して[ Tab ]ボタンを押します。
  • は、ノードグラフ内のルートノードまたはグループノードになります。親がなければ、作成しようとしているノードはUIに表示されません。

たとえば、ノードグラフにCameraCreateノードを追加するには、次のコマンドを使用します。

 node = NodegraphAPI.CreateNode("CameraCreate", NodegraphAPI.GetRootNode()) 

デフォルトのノード位置

Pythonで新しいノードを作成するとき、それらは常にノードグラフの中心に配置され、ノード位置は(0,0)です。これは、[ノードグラフ]タブに現在表示されているノードグラフの一部の中心にあるとは限りません。新しいノードを見つけるには、ビューポートをパンする必要があります。

このデフォルトの動作は、次のPythonコマンドに対応しています。

 NodegraphAPI.SetNodePosition(node, (0,0)) 

Pythonによるノードグラフ内のノードの配置

新しいノードを現在のノードグラフビューポートの中心に配置するには、次のPythonコマンドを使用してノードグラフの表示部分を照会し、ノードを配置します。

 root = NodegraphAPI.GetRootNode() 
pos = NodegraphAPI.GetViewPortPosition(root)
# this returns a tuple containing the position and scale of the view information of a group network. This works because the Root node is also a Group node

node = NodegraphAPI.CreateNode("CameraCreate", root)
NodegraphAPI.SetNodePosition(node, (pos[0][0], pos[0][1]))

あなたがこれに関して何か問題に遭遇しているならば、それからサポートチケットを開いて、問題とあなたがこれまでにどのトラブルシューティング手順をとったかについて私たちに知らせてください。

サポートチケットを開く方法の詳細については、「 サポートポータル 使用 」の記事 を参照してください

この記事は役に立ちましたか?
/

We're sorry to hear that!

Please tell us why.
3人中1人がこの記事が役に立ったと言っています

コメント