2017-12-15 13 views
0

私は新しいスクリプトを使いました。手動でxrayをコードとトグルできることはわかっています。スクリプトでMayaで選択したオブジェクトのxRayを切り替えます

displaySurface -xRay true; //Xray on 
displaySurface -xRay false; //Xray off 

しかし、私は、私は、コマンド

displaySurface -query -xRay; 

をオンまたはオフにX線を確認することができます。しかし、私はちょうど置くことができないことを知って、それは

if(xRay on) 
set xRay off 
else 
set xRay on 

のように、自動的に切り替えたいですこのコマンドをif blockに入力します。私は以下のコードのような多くのことを試みましたが、何も動作しません。

if(`displaySurface -query -xRay` == 1) // Error: line 1: Cannot use data of type int[] in a scalar operation. // 
print("To be or not to be"); 

答えて

0

displaySurface -query -xRayが配列を返すように見えます。これが私の仕事:エラーCannot use data of type int[]int

int $y[] = `displaySurface -query -xRay`; 

if($y[0] == 1) 
print("To be or not to be"); 
0

括弧は、関数が整数配列を返すことを示しています。したがって、配列の最初の要素[0]を取る必要があります。

$xRayOnArray = `displaySurface -q -xRay`; 
if ($xRayOnArray[0] == 0) { 
    print("X-Ray is enabled"); 
} else { 
    print("X-Ray is disabled"); 
} 

なぜそれが配列を返すのかはパズルです。これは文書化されておらず、関数は一度に1つのオブジェクトのみを照会できます。

関連する問題