Skip to content

Commit f114284

Browse files
committed
Added some quick & dirty vector init functions
1 parent c08c041 commit f114284

File tree

1 file changed

+30
-0
lines changed

1 file changed

+30
-0
lines changed

cds_spline.h

+30
Original file line numberDiff line numberDiff line change
@@ -106,27 +106,57 @@ typedef union cds_spline_vec1 {
106106
};
107107
cds_spline_r32 elems[1];
108108
} cds_spline_vec1;
109+
CDS_SPLINE_INLINE cds_spline_vec1
110+
cds_spline_init_vec1(cds_spline_r32 x) {
111+
cds_spline_vec1 v;
112+
v.x = x;
113+
return v;
114+
}
109115

110116
typedef union cds_spline_vec2 {
111117
struct {
112118
cds_spline_r32 x,y;
113119
};
114120
cds_spline_r32 elems[2];
115121
} cds_spline_vec2;
122+
CDS_SPLINE_INLINE cds_spline_vec2
123+
cds_spline_init_vec2(cds_spline_r32 x, cds_spline_r32 y) {
124+
cds_spline_vec2 v;
125+
v.x = x;
126+
v.y = y;
127+
return v;
128+
}
116129

117130
typedef union cds_spline_vec3 {
118131
struct {
119132
cds_spline_r32 x,y,z;
120133
};
121134
cds_spline_r32 elems[3];
122135
} cds_spline_vec3;
136+
CDS_SPLINE_INLINE cds_spline_vec3
137+
cds_spline_init_vec3(cds_spline_r32 x, cds_spline_r32 y, cds_spline_r32 z) {
138+
cds_spline_vec3 v;
139+
v.x = x;
140+
v.y = y;
141+
v.z = z;
142+
return v;
143+
}
123144

124145
typedef union cds_spline_vec4 {
125146
struct {
126147
cds_spline_r32 x,y,z,w;
127148
};
128149
cds_spline_r32 elems[4];
129150
} cds_spline_vec4;
151+
CDS_SPLINE_INLINE cds_spline_vec4
152+
cds_spline_init_vec4(cds_spline_r32 x, cds_spline_r32 y, cds_spline_r32 z, cds_spline_r32 w) {
153+
cds_spline_vec4 v;
154+
v.x = x;
155+
v.y = y;
156+
v.z = z;
157+
v.w = w;
158+
return v;
159+
}
130160

131161
extern union cds_spline_mat14;
132162
extern union cds_spline_mat24;

0 commit comments

Comments
 (0)