移動先: 概要 戻り値 フラグ 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 フラグを使って、指定したコマンド ポートが存在するかどうかを判断できます。
下記の例を参照してください。
戻り値の型は照会モードでは照会フラグが基になります。
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 文字より長い結果は、エラー メッセージに置き換えられます。
|
|
: コマンドの作成モードで使用可能なフラグ
|
: コマンドの編集モードで使用可能なフラグ
|
: コマンドの照会モードで使用可能なフラグ
|
: タプルまたはリストとして渡された複数の引数を持てるフラグ
|
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 )