エクスプレッションを作成する

 
 
 

エクスプレッションは、スクリプト コマンド(Parameter.AddExpression メソッドまたは Parameter::AddExpression メソッド)を使用して作成できます。SetExpr コマンドでは、式関数を使用することによって、指定されたパラメータの値の代わりに Expression または Expression オブジェクトを使用することができます(使用可能な式関数については 「エクスプレッション参照」を参照)。

ヒント:

AddExpr コマンドの動作は基本的に SetExpr コマンドと同じですが、AddExpr コマンドは新しいエクスプレッションを Expression Editor にも表示します。

Python の例: SetExpr コマンドを使ってのエクスプレッションの設定

以下は、上の例を Python で記述したものです。

from win32com.client import constants as c
n = Application.ActiveSceneRoot.AddNull( "Null4Expr" )
params = n.posx.FullName+","+n.posy.FullName+","+n.posz.FullName
Application.SetExpr( params, "RAND(17,2,7)" )
注:

この例のスレッドは、次に ..\si_om\siSourceType.htmlsiSourceTypePython の例: GetSource コマンドを使用する」内のエクスプレッションにアクセスします(定数モジュールがインポートされたのはこのため)。

JScript の例: Parameter.AddExpression メソッドを使ってのエクスプレッションの設定

以下のようにランダムなエクスプレッションを適用すると、優れたエフェクトを作成できます。

var n = Application.ActiveSceneRoot.AddNull( "Null4Expr" );
n.posx.AddExpression( "RAND(17,2,7)" );
n.posy.AddExpression( "RAND(17,2,7)" );
n.posz.AddExpression( "RAND(17,2,7)" );
注:

この例のスレッドは、次に「JScript の例: Source プロパティを使用する」内のエクスプレッションにアクセスします。

C++ API の例: Parameter::AddExpression メンバ関数を使ってのエクスプレッションの設定

以下のコードの断片は、前述の JScript の例と同等の C++ API です。

// Setup
Application app = Application();
Model root = app.GetActiveSceneRoot();
Null n; root.AddNull( L"Null4Expr", n );

// Get Parameters for names
Parameter posx = n.GetParameter(L"posx");
Parameter posy = n.GetParameter(L"posy");
Parameter posz = n.GetParameter(L"posz");

// Set the expression
posx.AddExpression( L"RAND(17,2,7)" );
posy.AddExpression( L"RAND(17,2,7)" );
posz.AddExpression( L"RAND(17,2,7)" );
注:

この例のスレッドは、次に「C++ の例: GetSource メンバを使用する」内のエクスプレッションにアクセスします。