移動先: 概要 戻り値 フラグ Python の例

概要

commandPort([bufferSize=int], [close=boolean], [echoOutput=boolean], [name=string], [noreturn=boolean], [prefix=string], [returnNumCommands=boolean], [securityWarning=boolean])

注意: オブジェクト名や引数を表す文字列はカンマで区切ります。これは概要には示されていません。

commandPort は「元に戻す」が可能、「照会」が可能、「編集」が不可能です。

Maya コマンド ポートを開閉します。コマンド ポートは、クライアント プログラムがコネクトされるソケットを構成します。サンプルのコマンド ポート クライアント「mcp」は、ニーション キャプチャのデベロッパー キットに含まれています。

INET ドメイン ソケットに関しては注意が必要です。Maya ユーザのユーザ ID と権限があれば、指定したソケットにコネクトするためにユーザの識別や承諾が必要なく、すべてのコマンド(「system(...)」を含む)が許可され、実行できるからです。prefix フラグを使用すると prefix コマンドだけが実行されるため、このセキュリティ リスクを減らすことができます。

query フラグを使って、指定したコマンド ポートが存在するかどうかを判断できます。 下記の例を参照してください。

戻り値

boolean- 照会モードで

戻り値の型は照会モードでは照会フラグが基になります。

フラグ

bufferSize, close, echoOutput, name, noreturn, prefix, returnNumCommands, securityWarning
ロング ネーム(ショート ネーム) 引数型 プロパティ
close(cl) boolean
commandPort を閉じ、パイプを削除します。
name(n) string
このコマンドが作成するコマンド ポートの名前を指定します。name 形式の CommandPort 名は、name に対応するローカル ホストの UNIX ドメイン ソケットを作成します。name が「/」 で始まらない場合は、/tmp/name が使用されます。name が「/」で始まる場合、name はソケットのフル パスを示します。 :port number 形式の名前は、指定したポートのローカル ホスト上に INET ドメインを作成します。
noreturn(nr) boolean
コマンド ポート ソケットには実行したコマンドからの結果を書き込みません。代わりに、実行したコマンドからの結果をスクリプト エディタ(Script Editor)エディタ ウィンドウに書き込みます。提出したコマンドの実行に関連する情報がコマンド ポート クライアントに戻されないとき、コマンド バッファをオーバーフローさせないように注意する必要があります。オーバーフローさせるとコネクションが閉じられます。
returnNumCommands(rnc) boolean
コマンドの結果を無視し、この呼び出しで読み取って実行されたコマンドの数を返します。これは、バッファのオーバーフローを追跡する簡単な方法です。noreturn フラグを指定すると、このフラグは無視されます。
prefix(pre) string
文字列引数は、1 つの文字列引数を取る Maya コマンドの名前です。このコマンドは、時間データがコマンド ポートに送信されるたびに呼び出されます。コマンド ポートに書き込まれたデータは、prefix コマンドに引数として渡されます。コマンド ポートからのデータは、enocodeString と同様にエンコードされ、引用符で囲まれます。 コマンド ポート データに改行文字が埋め込まれている場合は、その入力は個別のラインに分割されます。 これらのラインは、コマンド ポートへの別々の書き込みであるかのように取り扱われます。最後の prefix コマンドに対する結果だけが返されます。
echoOutput(eo) boolean
すべてのコマンド出力はコマンド ポートに送信されます。一般的には、結果だけが転送されます。このオプションは、すべての出力のコピーを提供します。
securityWarning(sw) boolean
コマンド ポートの入力のセキュリティ警告を有効化します。
bufferSize(bs) int
コマンドや結果は、それぞれサイズ制限に従います。このオプションを使用すると、Maya との通信に使用するバッファ サイズを指定できます。指定がない場合のデフォルト バッファ サイズは、4096 文字です。 コマンドが bufferSize の文字より長いと、クライアント コネクションは閉じられます。 bufferSize 文字より長い結果は、エラー メッセージに置き換えられます。

: コマンドの作成モードで使用可能なフラグ : コマンドの編集モードで使用可能なフラグ
: コマンドの照会モードで使用可能なフラグ : タプルまたはリストとして渡された複数の引数を持てるフラグ

Python の例

import maya.cmds as cmds

# Open a command port with the default name "mayaCommand".
cmds.commandPort()

# Close the command port with the default name. Open client connections
# are not broken.
cmds.commandPort( cl=True )

# Query to see if the command command port "mayaCommand" exists.
cmds.commandPort( 'mayaCommand', q=True )