Math Lib: add mul_v3_project_m4_v3

This commit is contained in:
Campbell Barton 2014-09-16 15:41:17 +10:00
parent 8b87b2473a
commit 775a54485b
2 changed files with 11 additions and 0 deletions

@ -109,6 +109,7 @@ void mul_mat3_m4_v3(float M[4][4], float r[3]);
void mul_m4_v4(float M[4][4], float r[4]);
void mul_v4_m4v4(float r[4], float M[4][4], const float v[4]);
void mul_project_m4_v3(float M[4][4], float vec[3]);
void mul_v3_project_m4_v3(float r[3], float mat[4][4], const float vec[3]);
void mul_v2_project_m4_v3(float r[2], float M[4][4], const float vec[3]);
void mul_m3_v2(float m[3][3], float r[2]);

@ -514,6 +514,16 @@ void mul_project_m4_v3(float mat[4][4], float vec[3])
vec[2] /= w;
}
void mul_v3_project_m4_v3(float r[3], float mat[4][4], const float vec[3])
{
const float w = mul_project_m4_v3_zfac(mat, vec);
mul_v3_m4v3(r, mat, vec);
r[0] /= w;
r[1] /= w;
r[2] /= w;
}
void mul_v2_project_m4_v3(float r[2], float mat[4][4], const float vec[3])
{
const float w = mul_project_m4_v3_zfac(mat, vec);