リモートからの MEL コマンド実行

リモートからの実行方法

モーションキャプチャーのライブラリ(API)を使用することによって Maya 以外のプロセスから MEL コマンドを実行できるようになる。
CapTcpOpen() によって Linux の場合は UNIX Domain Socket が作られるので、それを使用することによりソケットを通して Maya と通信ができる。

API

int CapTcpOpen(char *name)
name
サーバーの名前
Maya 上で commandPort コマンドを実行するとデフォールトで mayaCommand になる。
返り値
ソケット番号
エラーの場合は -1 が返る。

サンプル・プログラム

以下に Linux 用のプログラム例をあげておく。

実行例 (C++)

Linux 上での実行例を以下にあげてみる。

  1. Maya 上で commandPort コマンドを実行する。
  2. 上の rmc.cpp をコンパイルする。
    % cc -I/usr/aw/maya/include -L/usr/aw/maya/lib rmc.cpp -lmocap -lm -o rmc
    
  3. MEL コマンドを rmc を通して Maya に送って実行させる。
    % echo sphere | ./rmc
     nurbsSphere1    makeNurbSphere1 
    
  4. Maya のシーンに NURBS の球が作られる。
    rmc によって作られた球

実行例 (Ruby)

  1. Maya 上で commandPort コマンドを実行する。
  2. MEL コマンドを rmc.rb を通して Maya に送って実行させる。
    % echo sphere | ruby rmc.rb
     nurbsSphere1    makeNurbSphere1 
    
  3. Maya のシーンに NURBS の球が作られる。
    rmc によって作られた球

参考


Prev
Home | Contents
abe@injapan.net