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 |