エクスプレッション リファレンス
 
 
 

このセクションは、MotionBuilder がサポートするエクスプレッションの一覧です。それぞれ例が示されており、独自のエクスプレッションを作成するときの参考になります。

Converters

次のエクスプレッションはコンバータとして使用できます。

HSB TO RGB  
変換内容 HSB を RGB モードに変換します。
構文 HSB2RGB
NUMBER TO COLOR ALPHA  
変換内容 4 つの数値を 1 つのカラー ベクトルに変換します。
構文 number2coloralpha
NUMBER TO VECTOR  
変換内容 数値をベクトルに変換します。
構文 num2vec
RGB TO RGBA  
変換内容 RGB を RGBA モードに変換します。
構文 RGB2RGBA
RGB TO HSB  
変換内容 RGB を HSB モードに変換します。
構文 RGB2HSB
RGBA TO RGB  
変換内容 RGBA を RGB モードに変換します。
構文 RGBA2RGB
SECONDS TO TIME  
変換内容 秒数を時間フォーマットに変換します。
構文 seconds2time
TIME TO SECONDS  
変換内容 時間フォーマットを秒数に変換します。Expressions コンストレインで、time2seconds エクスプレッションを使用して時間を秒数に変換します。
構文 time2seconds

論理関数(ブール値)

次に、論理関数のエクスプレッションを示します。

AND  
戻り値 すべての引数が true の場合、true を返します。
構文 and(number1, number2) number1 と number2 は論理値である必要があります。
EQUAL  
戻り値 引数が EQUAL である場合、true を返します。
構文 number1 = number2 (number, number) number および number はテストする数値です。
GREATER  
戻り値 1 番目の引数が 2 番目の引数より大きい場合に、true を返します。
構文 number1 >= number2 (number, number) number および number はテストする数値です。
GREATER OR EQUAL  
戻り値 1 番目の引数が 2 番目の引数より大きいか、それに等しい場合に、true を返します。
構文 number1 >= number2 (number, number) number および number はテストする数値です。
IF  
指定内容 実行する論理テストを指定します。
構文 if (test, value1, value2) test は、true または false と評価できる任意の値またはエクスプレッションです。value1 は、test が true の場合に戻される値です。value2 は、test が false の場合に戻される値です。
IS BETWEEN  
確認内容 ある値が他の 2 つの値の間にあることを確認します。
構文 isbetween
LESS  
戻り値 1 番目の引数が 2 番目の引数より小さい場合に、true を返します。
構文 number1 < number2 (number, number) number および number はテストする数値です。
LESS OR EQUAL  
戻り値 1 番目の引数が 2 番目の引数より小さいか、それに等しい場合に、true を返します。
構文 number1 <= number2 (number, number) number および number はテストする数値です。
NAND  
戻り値 すべての引数が true の場合に、false を返します。
構文 nand(number1, number2) number1 と number2 は論理値である必要があります。
NOR  
戻り値 いずれかの引数が true の場合に、false を返します。
構文 nor(number1, number2) number1 と number2 は論理値である必要があります。
NOT  
用途 引数の論理を逆転させます。
構文 not(number) number は、true または false と評価できる任意の値またはエクスプレッションです。number が false の場合、NOT は true を返します。number が true の場合、NOT は false を返します。
NOT EQUAL  
戻り値 引数が NOT EQUAL の場合に、true を返します。
構文 number1 <> number 2 (number 1, number 2) number1 および number2 はテストする数値です。
OR  
戻り値 いずれかの引数が true の場合に、true を返します。
構文 or(number1, number2) number1 と number2 は論理値である必要があります。

数式

次に数式を示します。

DISTANCE  
用途 2 つのベクトル間の距離を計算します。
構文 distance(vector1, vector2) point2 と point1 は、2 次元空間内の 2 つの位置とします。
DISTANCE NUMBERS  
送信 2 つの数値間の距離を送信します。
構文 SetDistanceNumbers
GO TO BEGIN  
用途 トリガすると(値を 0 から 1 に変更すると)、トランスポート コントロールがテイクの開始点に移動します。
構文 Gotobegin (A2)
GO TO END  
用途 トリガすると(値を 0 から 1 に変更すると)、トランスポート コントロールがテイクの終了点に移動します。
構文 GotoEnd (bool)
GO TO POSITION  
用途 トリガすると(値を 0 から 1 に変更すると)、トランスポート コントロールが指定した位置に移動します。
構文 GotoPosition (cell)
LENGTH  
用途 ベクトルの長さを求めます。
構文 length(vector)
MIDDLE POINT  
戻り値 2 つの位置のベクトル間の比率に基づく位置ベクトルを返します。
構文 middlepoint(vector1,vector2,number) vector1 は位置ベクトルです。vector2 も位置ベクトルです。number は、2 つの位置のベクトル間の位置の比率を表す実数です。
NORM  
戻り値 正規化したベクトルを返します。Vector は、正規化するベクトルです。
構文 norm(vector)
PLAY MODE  
用途 再生モードの値を変更します。
構文 SetPlayMode
PLAY BACKWARD MODE  
用途 再生モードの値を変更します。
構文 SetPlayBackwardMode
POW  
戻り値 数値を累乗した結果を返します。
構文 number1^number2 number1 は基数です。任意の実数を使用できます。number2 は、基数を累乗する指数です。
PRODUCT  
用途 引数を乗算します。
構文 1 number1*number2 number1 は number2 を乗算する数値です。
構文 2 vector1*vector2 vector1 と vector2 を組み合わせて外積を求めます。
QUOTIENT  
用途 number2 は、number1 を除算する数値です。
構文 number1 / number2
RECORD MODE  
用途 記録モードの値を変更します。
構文 SetRecordMode
STEP FORWARD  
構文 StepForward (cell) トリガすると(値を 0 から 1 に変更すると)、トランスポート コントロールが 1 つ順方向に移動します。
STEP BACKWARD  
用途 トリガすると(値を 0 から 1 に変更すると)、トランスポート コントロールが 1 つ逆方向に移動します。
構文 StepBackward
SUM  
用途 2 つの引数を加算します。
構文 1 number1 + number2 number1 と number2 は、加算する数値または数値セルです。
構文 2 vector1 + vector2 vector1 と vector2 は、加算するベクトルまたはベクトル セルです。
SUB  
用途 引数を減算します。
構文 1 number1 - number2 number1 は、number2 を減算する数値です。
構文 2 vector1 - vector2 vector1 は、vector2 を除算するベクトルです。

数値関数

次に、数値関数のエクスプレッションを示します。

ABS  
戻り値 数値またはセルの絶対値を返します。
構文 abs(number)
ACOS  
戻り値 数値のアークコサインを返します。number は、求める角度のコサインです。
構文 acos(number)
ASIN  
戻り値 数値のアークサインを返します。number は、求める角度のサインです。
構文 asin(number)
ATAN  
戻り値 数値の逆正接を返します。number は、求める角度の正接です。
構文 atan(number)
ATAN2  
戻り値 X 座標および Y 座標から逆正接を返します。number1 はポイントの X 座標です。number2 はポイントの Y 座標です。
構文 atan2(number1,number2)
COS  
戻り値 数値のコサインを返します。angle は、コサインを求める角度をラジアンで表したものです。
構文 cos(angle)
DEG2RAD  
変換内容 度数をラジアンに変換します。angle は、変換する角度を度数で表したものです。
構文 deg2rad(angle)
EXP  
用途 number は、基数 e に適用される指数です。
構文 exp(number)
INTEGER  
用途 数値の端数を切り捨て、整数に変換します。
構文 integer
LN  
戻り値 数値の自然対数を返します。number は、自然対数を求める正の実数です。
構文 ln(number)
LOG  
戻り値 数値の、10 を底とする対数を計算します。number は、10 を底とする対数を求める正の実数です。
構文 log(number)
ONEOVER  
戻り値 1/number の結果を返します。number は、1/number を求める正の実数です。
構文 oneover(number)
PULL NUMBER  
用途 入力パラメータから連続的に値を取り込み、その結果を内部バッファに格納して Result 値として使用します。これは、直前の計算と同じ値になります。
構文 pull
PRECISION NUMBERS  
用途 指定された精度の値に数値を切り捨てます。たとえば、数値が a = 12.36 で、精度の指定値が 0.1 の場合、結果は 12.30 になります。
構文 precision(number)
RAD2DEG  
用途 ラジアンを度数に変換します。angle は、変換する角度をラジアンで表したものです。
構文 rad2deg(angle)
SIN  
戻り値 指定の角度のサインを返します。angle は、サインを求める角度をラジアンで表したものです。
構文 sin(angle)
SQRT  
戻り値 正の平方根を返します。number は、平方根を求める数値です。
構文 sqrt(number)
TAN  
戻り値 数値の正接を返します。number は、正接を求める角度をラジアンで表したものです。
構文 tan(number)

その他の関数

次に、その他のエクスプレッションを示します。

BUFFER  
戻り値 カレント値がオフの場合、古い値を返します。
構文 1 buffer(vector,number) Vector はベクトルです。number はブーリアン数値で、ON/OFF を切り替えることができます。
構文 2 buffer(number1,number2) number1 は実数です。number2 はブーリアン数値で、ON/OFF を切り替えることができます。
DAMPING  
用途 数値にダンピング(減衰)を適用します。
構文 damping(number)
DAMP (クロック基準)  
用途 Damping と似ていますが、このエクスプレッションはリフレッシュ レートではなく、MotionBuilder のクロックを基準にします。このリレーションは、すべてのコンピュータ上のシーンを同一にするので、Damp リレーションに対してお勧めします。
構文 damp3dclockbased
DAMP (3D) (クロック基準)  
用途 Damp (クロック基準)に似ていますが、このエクスプレッションは Damp (3D) リレーションを基準にします。
構文 damp3dclockbased
DAMPING (3D)  
用途 指定したダンピング係数を使用してベクトルの位置をダンピングします。
構文 damping3d
PRECISION VECTOR  
用途 正確な値をベクトルのすべてのコンポーネントに適用するには、このコンストレインを使用します。X、Y、および Z には、それぞれ別の精度を設定できます。
構文 precisionVector
受信 (Number)および Precision (Number)
送信 Result (Number)
PULL VECTOR  
用途 入力パラメータから連続的にベクトルを引き出し、その結果を内部バッファに格納して Result 値として使用します。この値は、直前の計算と同じ値になります。
構文 pullVector
PULSE  
用途 0 と 1 のストリームを、指定した頻度(たとえば、010101010101)。
構文 pulse
TRIGGERED PLUS MINUS COUNTER  
用途 増分/減分を加算するトリガを作成します
構文 triggeredplusminuscounter
TRIGGERED RANDOM  
用途 要求に応じて、乱数を生成します。
構文 triggeredrandom

回転エクスプレッション

次に、回転関数に使用されるエクスプレッションを示します。

3 POINTS ROTATION  
戻り値 回転値を返します。
構文 point3rotation(vector1,vector2,vector3) vector1、vector2、vector3 は、3D 空間における 3 つの個別の位置を表すベクトルです。例: point3rotation({0,0,0},{100,100,100},{100,0,-100}) これによって返される回転ベクトルは{-120,-35.26,45}です。この回転ベクトルは、軸(vector2-vector1)を 3 番目の位置ベクトル(vector3)上で正しく回転させて算出されます。
ADD ROTATION  
用途 2 つの回転を加算します。Vector1 と vector2 は、個別の XYZ 回転を表すベクトルです。
構文 addrotation(vector1,vector2)
ANGLE DIFF POINTS  
用途 与えられた半径を使用して、2 つのベクトル間またはポイント間の角度を計算します。
構文 anglediffpoints
ANGLE DIFF ROTATIONS  
用途 2 つのオブジェクト間の回転の差を計算します。結果は、スケールおよびオフセット処理できます。
構文 anglediffrotations (R1, R2)
ANGULAR ACCELERATION  
戻り値 回転ベクトルの角加速度を返します。
構文 angularacc(vector) vector は XYZ 回転を表すベクトルです。
ANGULAR SPEED  
戻り値 回転ベクトルの角速度を返します。
構文 angularspeed(vector) vector は XYZ 回転を表すベクトルです。
DERIVATIVE  
戻り値 時間によるベクトルの微分を返します。
構文 derivative(vector)
GLOBAL TO LOCAL  
用途 回転ベクトルをグローバル座標からローカル座標に変換します。
構文 globaltolocal (rotation) Vector は、3D 空間における位置または速度を表すベクトルです。
GRAVITY MOVE  
戻り値 位置を返します。
構文 gravitymove(vector1, vector2, vector3) vector1 は、3D 空間における初期位置を表すベクトルです。vector2 は、初期速度を表すベクトルです。 Vector3 は、現在の位置に対して加える加速度を表すベクトルです。
INTERPOLATE ROTATION  
用途 2 つの回転間を補間します。
構文 interpolaterotation(R1, R2)
LOCAL TO GLOBAL  
用途 回転ベクトルをローカル座標からグローバル座標に変換します。
構文 localtoglobal(Rotation)
MOVE  
戻り値 位置を返します。
構文 move(vector1, vector2, vector3) vector1 は、3D 空間における初期位置を表すベクトルです。vector2 は、初期速度を表すベクトルです。 Vector3 は、現在の位置に対して加える加速度を表すベクトルです。
ORBIT  
戻り値 位置を返します。Number は、原点と現在の位置との間の加速定数(MorimobjG6.673E-11)を表す実数です(G = 6,672e-11 N m2/kg2)。
構文 orbit(vector1, vector2, vector3, number) vector1 は、3D 空間における初期原点(アトラクティブ ポイント)を表すベクトルです。 Vector2 は、3D 空間における初期オブジェクト位置を表すベクトルです。Vector3 は、オブジェクト位置の初期速度を表すベクトルです。
POSITION DAMPING  
戻り値 位置を返します。number1 は、最高速度を表す数値です。number2 は、最大加速を表す数値です。number3 は、ダンピング比率を表す数値です(コネクタ内の再生モードを含みます)。
構文 positiondamping(vector1, number1, number2, number3) vector1 は、3D 空間における位置ベクトルです。
ROTATION DAMPING  
戻り値 XYZ 回転を返します。Vector1 は、XYZ 回転ベクトルです。number1 は、最大角速度を表す数値です。number2 は、最大角加速度を表す数値です。number3 は、ダンピング比率を表す数値です(コネクタ内の再生モードを含みます)。
構文 rotationdamping(vector1, number1, number2, number3)
ROTATION PRODUCT  
戻り値 回転ベクトルに比率の数値を乗算した値を返します。number は、乗算する比率を表す実数です。
構文 multrotation(vector,number) vector は XYZ 回転を表すベクトルです。
SENSOR ROTATION HELPER  
構文 sensorrotationhelper
SUB ROTATION  
用途 2 つの回転で減算します。
構文 subrotation(vector1,vector2) Vector1 と vector2 は、個別の XYZ 回転を表すベクトルです。
SPEED  
戻り値 位置ベクトルの速度を返します。
構文 speed(vector) Vector は、3D 空間における位置を表すベクトルです。

ソース関数

次に、ソース関数のエクスプレッションを示します。

HALF CIRCLE RAMP  
構文 ramphalfcircle(Amplitude, Frequency, Phase) (コネクタ内の再生モードを含みます。)
ISOCELES TRIANGLE RAMP  
構文 ramptriiso(Amplitude, Frequency, Phase) (コネクタ内の再生モードを含みます。)
PLAY PAUSE COUNTER  
用途 カウンタを作成できます。
構文 playpausecounter
RANDOM  
用途 指定された頻度の乱数のストリームを生成します。
構文 random
RIGHT TRIANGLE RAMP  
構文 ramptrirec(Amplitude, Frequency, Phase) (コネクタ内の再生モードを含みます。)
SINE RAMP  
構文 rampsine(Amplitude, Frequency, Phase) (コネクタ内の再生モードを含みます。)
SQUARE RAMP  
構文 rampsquare(Amplitude, Frequency, Phase) (コネクタ内の再生モードを含みます。)
START STOP COUNTER  
用途 カウンタを作成できます。
構文 startstopcounter

時間関数

次に、時間関数のエクスプレッションを示します。

TIMETOSECONDS  
用途 タイム形式を秒数に変換します。
構文 timetosecond(number) number は、秒数に変換するタイム コードです。

ベクトル エクスプレッション

次に、ベクトルのエクスプレッションを示します。

ACCELERATION  
用途 位置ベクトルの加速度を返します。
構文 acceleration(vector) Vector は、3D 空間における位置を表すベクトルです。
ANGLE  
用途 引数間の角度を求めます。
構文 angle(vector1,vector2) vector1 はベクトルです。vector2 もベクトルです。
DETERMINANT VECTOR  
戻り値 行列 3x3(I,J,K) の行列式を返します。
構文 determinantvec
DOT PRODUCT  
用途 引数の内積です。Vector1 と vector2 の内積を返します。
構文 vector1^vector2
SCALE DAMPING  
戻り値 スケーリング ベクトルにダンピングを返します。(コネクタ内の再生モードを含みます。)
構文 scaledamping
SCALE OFFSET VECTOR  
用途 ベクトルをスケールおよびオフセット処理します。
構文 scaleoffsetvec
* (NUMBER*VECTOR)  
用途 ベクトルをスケール処理します。
* (VECTOR*NUMBER)  
用途 ベクトルをスケール処理します。