set()
関数には、たくさんの色々なタイプの変換が行なえるように 幅広い 形式の関数が用意されています。
Tip
Houdiniでmatrixを満たす時は、数値を1行進めてから次の行に進ませます(“行優先”)。
vector2 set(float v1, float v2)
vector set(float v1, float v2, float v3)
vector4 set(float v1, float v2, float v3, float v4)
matrix2 set(float v1, float v2, float v3, float v4)
matrix3 set(float v1, float v2, float v4, float v4, float v5, float v6, float v7, float v8, float v9)
matrix set(float v1, float v2, float v3, float v4, float v5, float v6, float v7, float v8, float v9, float v10, float v11, float v12, float v13, float v14, float v15, float v16)
引数の値からvectorまたはmatrixのタイプを作成します。
vector4 v = set(1.0, 2.0, 3.0, 4.0); matrix3 m = set(1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0);
assign関数は、この反対の処理を行ないます(コンポーネントを変数へ抜き出します)。
<vector> set(float nums[])
<matrix> set(float nums[])
floatの配列からvector/matrixを作成します。
float[] nums = {1.0, 2.0, 3.0, 4.0}; vector4 v = set(nums);
<vector> set(float|intv)
<matrix> set(float|intv)
単一値からvectorまたはmatrixのタイプを設定する場合、そのvector/matrixは、すべてのコンポーネントにその値が満たされます。
vector4 v = set(2.0); // -> {2.0, 2.0, 2.0, 2.0}
matrix2 set(vector2 row1, vector2 row2)
matrix3 set(vector row1, vector row2, vector row3)
matrix set(vector4 row1, vector4 row2, vector4 row3, vector4 row4)
行を表現した同じサイズの一連のvector引数からmatrixタイプを作成します。
matrix3 m = set({0.0, 1.0, 0.0}, {1.0, 0.0, 1.0}, {0.0, 1.0, 0.0});
matrix2 set(vector2 rows[])
matrix3 set(vector rows[])
matrix set(vector4 rows[])
行を表現したvectorの配列からmatrixタイプを設定することもできます。 配列内のベクトルがmatrixを満たすのに足りない場合、その余った行にはゼロが入ります。
vector2 [] set(matrix2 m)
vector [] set(matrix3 m)
vector4 [] set(matrix m)
同じサイズのmatrixの行からvectorの配列を作成します。
matrix3 m3 = {1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0}; vector[] vs = set(m3); // -> array [ {1.0, 2.0, 3.0}, {4.0, 5.0, 6.0}, {7.0, 8.0, 9.0} ]
vector set(vector2 v)
vector4 set(vector2 v)
vector4 set(vector v)
matrix3 set(matrix2 m)
matrix set(matrix2 m)
matrix set(matrix3 m)
小さいタイプからそれより大きいvectorまたはmatrixのタイプを設定する場合、その余ったコンポーネントにはゼロが入ります。
vector2 v2 = {1.0, 2.0}; vector4 v4 = set(v2); // -> {1.0, 2.0, 0.0, 0.0}
float set(vector v)
float set(vector4 v)
vector2 set(vector4 v)
vector2 set(vector v)
vector set(vector4 v)
大きいvectorを使ってそれより小さいvectorを設定する場合、その小さいタイプは、左から順にコンポーネントを受け取ります。
vector4 v4 = {1.0, 2.0, 3.0, 4.0}; vector2 v2 = set(v4) // -> {1.0, 2.0}
matrix2 set(matrix3 m)
matrix2 set(matrix m)
matrix3 set(matrix m)
大きいmatrixを使ってそれより小さいmatrixを設定する場合、その小さいタイプは、左上から順にコンポーネントを受け取ります。
matrix3 m3 = {1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0}; matrix2 m2 = set(m3); // -> {1.0, 2.0, 4.0, 5.0}
float [] set(<vector>v)
float [] set(<matrix>m)
vectorまたはmatrixのタイプのコンポーネントからfloatの配列を作成します。
matrix3 m3 = {1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0}; float[] nums = set(m3); // -> array [ 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0 ]
<vector>[] set(float nums[])
<matrix>[] set(float nums[])
floatの配列から1度に1個のコンポーネントを受け取ることで、vector/matrixタイプの配列を作成します。 これは、unserialize関数を使用することと同じです。
float[] nums = {1.0, 2.0, 3.0, 4.0}; vector2[] vs = set(nums); // -> [ {1.0, 2.0}, {3.0, 4.0} ]
int set(float v)
float set(int v)
float [] set(int vs[])
int [] set(float vs[])
intからfloat、floatからint、int配列からfloat配列、float配列からint配列を設定することができます。
float[] fracs = { 1.1, 2.2, 3.3, 4.4, 5.5, 6.6 }; int[] floored = set(fracs); // -> array [ 1, 2, 3, 4, 5, 6 ]
float [] set(float num)
float配列内のすべての項目を同じ値に設定します。
float set(float nums[])
配列内の1番目の項目を返します。
dict set(string key, ...)
キー/値の一連のペアで辞書を初期化します。 キーの文字列、そのキーの値の順番で交互にパラメータを指定してください。
<type> set(<type>v)
<type>[] set(<type>v[])
同じ引数タイプと同じ戻りタイプのset()
をコールすると、この関数は単にその引数の値を返します。
string s = set("Hello"); // -> "Hello"
See also | |
data |