Canvasスクリプティング・インターフェース¶
Fabric for Mayaは、リッチなスクリプティング・インターフェースを持っており、これによりあなたはMELからグラフを作ることできます。スクリプトコマンドがUIをともなって動作する時、自動的にロギングが行われます。そのため、ほとんどの時間、あなたは下を見る必要はないでしょう。あなたは、ただ仕事を対話的に行い、ログに出されたスクリプトのステップを調べればよいのです。
例えば、これは小さなグラフを作る際にMayaのスクリプトエディターに出力される内容をコピーしたものです。
FabricCanvasInstPreset -m "canvasNode1" -e "" -p "Fabric.Exts.Math.Vec3.Vec3" -x "345" -y "85";
FabricCanvasAddPort -m "canvasNode1" -e "" -d "x" -p "In" -t "Scalar" -c "Vec3.x";
FabricCanvasAddPort -m "canvasNode1" -e "" -d "y" -p "In" -t "Scalar" -c "Vec3.y";
FabricCanvasAddPort -m "canvasNode1" -e "" -d "z" -p "In" -t "Scalar" -c "Vec3.z";
FabricCanvasAddPort -m "canvasNode1" -e "" -d "result" -p "Out" -t "Vec3" -c "Vec3.result";
FabricCanvasGetFabricVersion¶
Returns the Fabric version.
FabricCanvasGetFabricVersion;
// Result: 2.3.0 //
FabricCanvasAddBackDrop¶
キャンバスグラフに新しい BackDropノードを加えます。
- -m, -mayaNode: Canvas maya ノードの名前
- -e, -execPath: 操作の対象となるCanvas内のノードのパス
- -x, -xPos: The x coordinate for placing the new backdrop
- -y, -yPos: The y coordinate for placing the new backdrop
- -t, -title: The name of the new backdrop
FabricCanvasAddBackDrop -m "canvasNode1" -e "" -t "MathNodes" -x "265" -y "132";
FabricCanvasAddBlock¶
Adds a new block node to the Canvas graph.
- -m, -mayaNode: Canvas maya ノードの名前
- -e, -execPath: 操作の対象となるCanvas内のノードのパス
- -x, -xPos: 新しいノードを配置するx座標
- -y, -yPos: 新しいノードを配置するy座標
- -d, -desiredName: The name of the new node
FabricCanvasAddBlockPort¶
Adds a new port to a given block node.
- -m, -mayaNode: Canvas maya ノードの名前
- -e, -execPath: 操作の対象となるCanvas内のノードのパス
- -b, -blockName: The name of the block
- -d, -desiredPortName: 新しいポートにつける任意の名前
- -p, -portType: ポートの型。 “In”, “Out” or “IO” のいずれか。
- -t, -typeSpec: 新しいポートのデータ型
- -c, -pathToConnect: An optional argument to describe it’s initial connection
- -ct, -connectType: The type, can be “In”, “Out” or “IO”
- -xd, -extDep: ポートのオプションの依存エクステンション
- -md, -metaData: Additional metadata, for example UI ranges or combo lists
FabricCanvasAddFunc¶
Canvasグラフに新しいKL関数グラフを追加します。
- -m, -mayaNode: Canvas maya ノードの名前
- -e, -execPath: 操作の対象となるCanvas内のノードのパス
- -x, -xPos: 新しいノードを配置するx座標
- -y, -yPos: 新しいノードを配置するy座標
- -t, -title: 新しいノードの名前
- -c, -code: 新しいノードに対するKLコード
FabricCanvasAddFunc -m "canvasNode1" -e "" -t "func" -c "dfgEntry {\n // result = a + b;\n}\n" -x "549" -y "63";
FabricCanvasAddGet¶
Canvasグラフに新しい変数のgetterノードを追加します。
- -m, -mayaNode: Canvas maya ノードの名前
- -e, -execPath: 操作の対象となるCanvas内のノードのパス
- -x, -xPos: 新しいノードを配置するx座標
- -y, -yPos: 新しいノードを配置するy座標
- -d, -desiredNodeName: 新しいノードにつける任意の名前
- -p, -varPath: 変数のパス
FabricCanvasAddGet -m "canvasNode1" -e "" -d "get" -p "factor" -x "293" -y "370";
FabricCanvasAddGraph¶
Canvasグラフに新しいサブグラフノードを追加します。
- -m, -mayaNode: Canvas maya ノードの名前
- -e, -execPath: 操作の対象となるCanvas内のノードのパス
- -x, -xPos: 新しいノードを配置するx座標
- -y, -yPos: 新しいノードを配置するy座標
- -t, -title: 新しいグラフの名前
FabricCanvasAddGraph -m "canvasNode1" -e "" -t "MySubGraph" -x "265" -y "132";
FabricCanvasAddInstBlockPort¶
Adds a new port to a block instance.
- -m, -mayaNode: Canvas maya ノードの名前
- -e, -execPath: 操作の対象となるCanvas内のノードのパス
- -n, -instName: The name of the instance
- -b, -blockName: The name of the block
- -d, -desiredPortName: 新しいポートにつける任意の名前
- -t, -typeSpec: 新しいポートのデータ型
- -c, -pathToConnect: An optional argument to describe it’s initial connection
- -xd, -extDep: ポートのオプションの依存エクステンション
- -md, -metaData: Additional metadata, for example UI ranges or combo lists
FabricCanvasAddInstPort¶
Adds a new port to an instance node.
- -m, -mayaNode: Canvas maya ノードの名前
- -e, -execPath: 操作の対象となるCanvas内のノードのパス
- -n, -instName: The name of the instance
- -d, -desiredPortName: 新しいポートにつける任意の名前
- -p, -portType: ポートの型。 “In”, “Out” or “IO” のいずれか。
- -t, -typeSpec: 新しいポートのデータ型
- -c, -pathToConnect: An optional argument to describe it’s initial connection
- -ct, -connectType: The type, can be “In”, “Out” or “IO”
- -xd, -extDep: ポートのオプションの依存エクステンション
- -md, -metaData: Additional metadata, for example UI ranges or combo lists
FabricCanvasAddPort¶
与えられたグラフに新しいポートを追加します。
- -m, -mayaNode: Canvas maya ノードの名前
- -e, -execPath: 操作の対象となるCanvas内のノードのパス
- -d, -desiredPortName: 新しいポートにつける任意の名前
- -p, -portType: ポートの型。 “In”, “Out” or “IO” のいずれか。
- -t, -typeSpec: 新しいポートのデータ型
- -c, -connectToPortPath: ポートの初期接続を説明するためのオプションの引数
- -xd, -extDep: ポートのオプションの依存エクステンション
- -ui, -uiMetadata: 追加のメタデータ。例えばUIの範囲やコンボリストなど。
FabricCanvasAddPort -m "canvasNode1" -e "" -d "factor" -p "In" -t "Float32";
FabricCanvasAddSet¶
Canvasグラフに新しい変数のsetterノードを追加します。
- -m, -mayaNode: Canvas maya ノードの名前
- -e, -execPath: 操作の対象となるCanvas内のノードのパス
- -x, -xPos: 新しいノードを配置するx座標
- -y, -yPos: 新しいノードを配置するy座標
- -d, -desiredNodeName: 新しいノードにつける任意の名前
- -p, -varPath: 変数のパス
FabricCanvasAddSet -m "canvasNode1" -e "" -d "get" -p "factor" -x "293" -y "370";
FabricCanvasAddVar¶
Canvasグラフに新しい変数ノードを追加します。
- -m, -mayaNode: Canvas maya ノードの名前
- -e, -execPath: 操作の対象となるCanvas内のノードのパス
- -x, -xPos: 新しいノードを配置するx座標
- -y, -yPos: 新しいノードを配置するy座標
- -d, -desiredNodeName: 新しい変数につける任意の名前
- -t, -type: 変数のデータ型
- -xd, -extDep: (オプションの)依存エクステンション
FabricCanvasAddVar -m "canvasNode1" -e "" -d "factor" -t "Float32" -xd "" -x "51" -y "64";
FabricCanvasConnect¶
Canvasグラフ内の2つのピンまたはポートを接続します。
- -m, -mayaNode: Canvas maya ノードの名前
- -e, -execPath: 操作の対象となるCanvas内のノードのパス
- -s, -srcPortPath: The path(s) to the source (left) port(s) / pin(s)
- -d, -dstPortPath: The path(s) to the destination (left) port(s) / pin(s)
FabricCanvasConnect -m "canvasNode1" -e "" -s "Scalar.value" -d "Vec3.z";
FabricCanvasConnect -m "canvasNode1" -e "" -s "Scalar.value|Scalar.value|Scalar.value" -d "Vec3.x|Vec3.y|Vec3.z";
FabricCanvasDisconnect¶
Canvasグラフ内の2つのピンまたはポート間の接続を解除します。
- -m, -mayaNode: Canvas maya ノードの名前
- -e, -execPath: 操作の対象となるCanvas内のノードのパス
- -s, -srcPortPath: The path(s) to the source (left) port(s) / pin(s)
- -d, -dstPortPath: The path(s) to the destination (left) port(s) / pin(s)
FabricCanvasDisconnect -m "canvasNode1" -e "" -s "Scalar.value" -d "Vec3.z";
FabricCanvasDisconnect -m "canvasNode1" -e "" -s "Scalar.value|Scalar.value|Scalar.value" -d "Vec3.x|Vec3.y|Vec3.z";
FabricCanvasCreatePreset¶
Create a new preset from an existing node.
- -n, -nodeName: ノードの名前
- -pd, -presetDirPath: The path to the directory in the preset tree where the preset should be located
- -pn, -presetName: The name of the preset to be created
Returns the pathname where the new preset was saved on disk, or the empty string if the preset was not saved.
FabricCanvasCreatePreset -m "canvasNode1" -e "" -n "x" -pd "User" -pn "MyPreset"
FabricCanvasEditPort¶
Edits an existing port. Use this to rename a port, change its data type, etc.
- -n, -oldPortName: ポートの古い名前
- -d, -desiredNewPortName: ポートの任意の新しい名前
- -p, -portType: ポートの型。 “In”, “Out” or “IO” のいずれか。
- -t, -typeSpec: ポートの期待されるデータ型
- -xd, -extDep: ポートの追加の依存エクステンション
- -ui, -uiMetadata: UIの範囲やコンボといった、追加のメタデータ。
FabricCanvasEditPort -m "canvasNode1" -e "" -n "x" -d "factor" -p "In" -t "Scalar" -ui "";
FabricCanvasExplodeNode¶
サブグラフノードを展開し、中に含まれる全てのノードを親のグラフに移動します。
- -m, -mayaNode: Canvas maya ノードの名前
- -e, -execPath: 操作の対象となるCanvas内のノードのパス
- -n, -nodeName: 展開したいサブグラフノードの名前
FabricCanvasExplodeNode -m "canvasNode1" -e "" -n "graph_2";
FabricCanvasGetContextID¶
Returns the FabricCore client contextID used by Canvas Maya nodes. This is useful if you want to create a python FabricCore client, for example, to access the same data.
FabricCanvasGetContextID;
// Result: QmwISgSKKfQmqJYLnQuG9vtwrM/zvquvibDemkR8/TahGgHW9Z1yl9IlDFBRfl0nreQyb6yKtgfYrOHPyUdGDE1vBDD84M3D4ndWStI0ijIORlTepDtNOjEbmN8kArnX
FabricCanvasGetBindingID¶
指定されたCanvas Mayaノードで使われているFabricCore DFGBindingのIDを返します。これは例えば、あなたがPython FabricCoreクライアントを作成し、同じデータにアクセスしたい場合などに便利です。
- -n, -node: Canvas Mayaノードの名前
FabricCanvasGetBindingID -n "canvasNode1";
// Result: 6119 //
FabricCanvasImplodeNodes¶
選択されたノードを集め、それらを含む新しいサブグラフノードを作成します。
- -m, -mayaNode: Canvas maya ノードの名前
- -e, -execPath: 操作の対象となるCanvas内のノードのパス
- -n, -nodeName: 対象にしたいすべてのノードの名前。パイプ文字(|)で区切ります。
- -d, -desiredImplodedNodeName: The desired name of the new subgraph node
FabricCanvasImplodeNodes -m "canvasNode1" -e "" -n "Vec3|Scalar|Report" -d "implodedGraph";
FabricCanvasInstPreset¶
既存のCanvasプリセットをインスタンス化し、それを使って新しいノードを作ります。
- -m, -mayaNode: Canvas maya ノードの名前
- -e, -execPath: 操作の対象となるCanvas内のノードのパス
- -x, -xPos: 新しいノードを配置するx座標
- -y, -yPos: 新しいノードを配置するy座標
- -p, -presetPath: インスタンス化するプリセットへのパス
FabricCanvasInstPreset -m "canvasNode1" -e "" -p "Fabric.Exts.Math.Vec3.Vec3" -x "162" -y "62";
FabricCanvasMoveNodes¶
Canvasグラフの中で、一つまたは複数のノードを移動します。
- -m, -mayaNode: Canvas maya ノードの名前
- -e, -execPath: 操作の対象となるCanvas内のノードのパス
- -n, -nodeName: 移動したいノードの名前
- -x, -xPos: 移動するノードのx座標
- -y, -yPos: 移動するノードのy座標
FabricCanvasMoveNodes -m "canvasNode1" -e "" -n "Vec3_2" -x "215" -y "23";
FabricCanvasMoveNodes -m "canvasNode1" -e "" -n "Scalar|Vec3_2" -x "97|248" -y "295|41";
FabricCanvasPaste¶
JSONテキストを元に、Canvasグラフの中でノードを作ります。
- -m, -mayaNode: Canvas maya ノードの名前
- -e, -execPath: 操作の対象となるCanvas内のノードのパス
- -t, -text: 新しく作成するノードのJSONの内容
- -x, -xPos: 新しく作成されるノードの中心のx座標
- -y, -yPos: 新しく作成されるノードの中心のy座標
FabricCanvasPaste -m "canvasNode1" -e "" -t "{\n \"nodes\" : [\n {\n \"objectType\" : \"Inst\",\n \"name\" : \"func\",\n \"ports\" : [],\n \"definition\" : {\n \"objectType\" : \"Func\",\n \"title\" : \"func\",\n \"ports\" : [],\n \"extDeps\" : {},\n \"code\" : \"\"\n }\n }\n ],\n \"connections\" : []\n }" -x "680" -y "80";
FabricCanvasRemoveNodes¶
Canvasグラフから一つまたは複数のノードを削除します。
- -m, -mayaNode: Canvas maya ノードの名前
- -e, -execPath: 操作の対象となるCanvas内のノードのパス
- -n, -nodeName: The name(s) of the node(s) to remove
FabricCanvasRemoveNodes -m "canvasNode1" -e "" -n "Vec3";
FabricCanvasRemoveNodes -m "canvasNode1" -e "" -n "Scalar|Vec3_2";
FabricCanvasRemovePort¶
Removes port(s) from the Canvas graph.
- -m, -mayaNode: Canvas maya ノードの名前
- -e, -execPath: 操作の対象となるCanvas内のノードのパス
- -n, -portName: The name of the port(s) to remove
FabricCanvasRemovePort -m "canvasNode1" -e "" -n "factor";
FabricCanvasRemovePort -m "canvasNode1" -e "" -n "factorX|factorY|factorZ|resultXYZ";
FabricCanvasRenamePort¶
Canvasグラフのポートの名前を変更します。
- -m, -mayaNode: Canvas maya ノードの名前
- -e, -execPath: 操作の対象となるCanvas内のノードのパス
- -n, -oldPortName: The name of the port to rename
- -d, -desiredNewPortName: The desired new name for the port
FabricCanvasRenamePort -m "canvasNode1" -e "" -n "factor" -d "strength";
FabricCanvasReorderPorts¶
Canvasグラフまたはサブグラフのポートの順番を変更します。
- -m, -mayaNode: Canvas maya ノードの名前
- -e, -execPath: 操作の対象となるCanvas内のノードのパス
- -p, -itemPath: The path to the item
- -i, -indices: ポートの新しい順番のインデックス
FabricCanvasReorderPorts -m "canvasNode1" -e "" -p "" -i "[1, 0, 2]";
FabricCanvasResizeBackDrop¶
Canvasグラフ内部のBackDropをリサイズします。
- -m, -mayaNode: Canvas maya ノードの名前
- -e, -execPath: 操作の対象となるCanvas内のノードのパス
- -n, -nodeName: The name of the backdrop node
- -x, -xPos: BackDropのx座標
- -y, -yPos: BackDropのy座標
- -w, -width: BackDropの新しい幅
- -h, -height: BackDropの新しい高さ
FabricCanvasResizeBackDrop -m "canvasNode1" -e "" -n "backdrop" -x "248" -y "280" -w "401" -h "131";
FabricCanvasSetArgValue¶
Canvasグラフ内の引数に値をセットします。
- -m, -mayaNode: Canvas maya ノードの名前
- -n, -argName: The name of the argument
- -t, -type: 引数の新しいデータ型
- -v, -value: JSONエンコードされた値
FabricCanvasSetArgValue -m "canvasNode1" -n "Vec3.x" -t "Float32" -v "1";
FabricCanvasSetCode¶
Canvasグラフ内部のKL関数ノードにKLコードをセットします。
- -m, -mayaNode: Canvas maya ノードの名前
- -e, -execPath: 操作の対象となるCanvas内のノードのパス
- -c, -code: KL関数ノードに対する新しいKLコード
FabricCanvasSetCode -m "canvasNode1" -e "func" -c "dfgEntry {\n //result = lhs + rhs;\n \n}\n";
FabricCanvasSetExtDeps¶
Canvasグラフ内のKL関数ノードに依存エクステンションをセットします
- -m, -mayaNode: Canvas maya ノードの名前
- -e, -execPath: 操作の対象となるCanvas内のノードのパス
- -xd, -extDep: 依存エクステンションのリスト
FabricCanvasSetExtDeps -m "canvasNode1" -e "func" -xd "Math:*";
FabricCanvasSetNodeComment¶
Canvasグラフ内のノードにコメントをセットします。
- -m, -mayaNode: Canvas maya ノードの名前
- -e, -execPath: 操作の対象となるCanvas内のノードのパス
- -n, -nodeName: ノードの名前
- -c, -comment: コメントのテキスト
FabricCanvasSetNodeComment -m "canvasNode1" -e "" -n "Vec3" -c "My useful information";
FabricCanvasEditNode¶
Renames a node in a Canvas graph.
- -m, -mayaNode: Canvas maya ノードの名前
- -e, -execPath: The path of the graph inside of Canvas to operate on
- -n, -oldNodeName: The current name of the node
- -d, -desiredNewNodeName: The desired new name for the node
- -nm, -nodeMetadata: (Optional) Additional metadata for the node
- -xm, -execMetadata: (Optional) Additional metadata for the executable (for instances)
FabricCanvasEditNode -m "canvasNode1" -e "" -n "Vec3" -d "MyTitle";
FabricCanvasSetPortDefaultValue¶
Canvasグラフ内のノードのポートにデフォルト値をセットします。
- -m, -mayaNode: Canvas maya ノードの名前
- -e, -execPath: 操作の対象となるCanvas内のノードのパス
- -p, -portPath: execPathの下のポートへのパス
- -t, -type: 新しいデフォルト値の型
- -v, -value: JSONエンコードされたポートのデフォルト値
FabricCanvasSetPortDefaultValue -m "canvasNode1" -e "" -p "Vec3.x" -t "Float32" -v "1";
FabricCanvasSetRefVarPath¶
Canvasのgetまたはsetノードに参照変数のパスをセットします。
- -m, -mayaNode: Canvas maya ノードの名前
- -e, -execPath: 操作の対象となるCanvas内のノードのパス
- -n, -refName: 捜査対象のgetまたはsetノードの名前
- -p, -varPath: 参照したい変数の新しいパス
FabricCanvasSetRefVarPath -m "canvasNode1" -e "" -n "get" -p "factor";
FabricCanvasSplitFromPreset¶
実行可能なオブジェクト(つまり、グラフまたは関数)を、それらが参照しているプリセットから切り離します。
- -m, -mayaNode: Canvas maya ノードの名前
- -e, -execPath: 操作の対象となるCanvas内のノードのパス
FabricCanvasSplitFromPreset -m "canvasNode1" -e "DrawMesh";
FabricCanvasDismissLoadDiags¶
Dismisses one or more load diagnostics
- -m, -mayaNode: Canvas maya ノードの名前
- -di, -diagIndices: The indices of the load diagnostics to dismiss
FabricCanvasDismissLoadDiags -m "canvasNode1" -di "[3, 14]";
dfgImportJSON¶
Sets the graph of a canvas node either from a canvas file or from a JSON string.
Note that one can only import graphs into empty Canvas nodes.
- -m, -mayaNode: Canvas maya ノードの名前
- -p, -path: unused.
- -f, -filePath: The path and filename of a .canvas file.
- -j, -json: An optional JSON representation of a Canvas graph.
- -r, -referenced: ‘true’ set as reference.
dfgImportJSON -m "canvasNode1" -f "C:/test.canvas";
dfgExportJSON¶
Exports the graph of a canvas node as a .canvas file.
- -m, -mayaNode: Canvas maya ノードの名前
- -p, -path: unused.
- -f, -filePath: The path and filename of the output .canvas file.
dfgExportJSON -m "canvasNode1" -f "C:/test.canvas";
dfgReloadJSON¶
Reloads the graph of a canvas node that references a .canvas file (see command “dfgImportJSON”).
- -m, -mayaNode: Canvas maya ノードの名前
- -p, -path: unused.
- -f, -filePath: unused.
- -j, -json: unused.
- -r, -referenced: unused.
dfgReloadJSON -m "canvasNode1";