Add nlerp tests

This commit is contained in:
Sundaram Ramaswamy
2021-05-07 01:21:28 +05:30
parent 8ce45b4303
commit 83dbdcc4a9
2 changed files with 36 additions and 0 deletions

View File

@@ -708,6 +708,38 @@ TEST_IMPL(GLM_PREFIX, quat_lerpc) {
TEST_SUCCESS
}
TEST_IMPL(GLM_PREFIX, quat_nlerp) {
versor q1, q2, q3, q4;
vec3 v1 = {10.0f, 0.0f, 0.0f}, v2;
glm_quatv(q1, glm_rad(30.0f), v1);
glm_quatv(q2, glm_rad(90.0f), v1);
GLM(quat_nlerp)(q1, q2, 1.0f, q3);
glm_quat_normalize(q2);
ASSERTIFY(test_assert_quat_eq(q2, q3));
glm_quatv(q1, glm_rad(30.001f), v1);
glm_quatv(q2, glm_rad(30.002f), v1);
GLM(quat_nlerp)(q1, q2, 0.7f, q3);
glm_quat_lerp(q1, q2, 0.7f, q4);
ASSERTIFY(test_assert_quat_eq(q3, q4));
glm_quatv(q1, glm_rad(30.0f), v1);
glm_quatv(q2, glm_rad(90.0f), v1);
GLM(quat_nlerp)(q1, q2, 0.5f, q3);
glm_quat_axis(q3, v2);
glm_vec3_normalize(v1);
glm_vec3_normalize(v2);
ASSERT(glm_quat_angle(q3) > glm_rad(30.0f));
ASSERT(glm_quat_angle(q3) < glm_rad(90.0f));
ASSERTIFY(test_assert_vec3_eq(v1, v2))
TEST_SUCCESS
}
TEST_IMPL(GLM_PREFIX, quat_slerp) {
versor q1, q2, q3, q4;
vec3 v1 = {10.0f, 0.0f, 0.0f}, v2;

View File

@@ -284,6 +284,7 @@ TEST_DECLARE(glm_quat_mat3)
TEST_DECLARE(glm_quat_mat3t)
TEST_DECLARE(glm_quat_lerp)
TEST_DECLARE(glm_quat_lerpc)
TEST_DECLARE(glm_quat_nlerp)
TEST_DECLARE(glm_quat_slerp)
TEST_DECLARE(glm_quat_look)
TEST_DECLARE(glm_quat_for)
@@ -320,6 +321,7 @@ TEST_DECLARE(glmc_quat_mat3)
TEST_DECLARE(glmc_quat_mat3t)
TEST_DECLARE(glmc_quat_lerp)
TEST_DECLARE(glmc_quat_lerpc)
TEST_DECLARE(glmc_quat_nlerp)
TEST_DECLARE(glmc_quat_slerp)
TEST_DECLARE(glmc_quat_look)
TEST_DECLARE(glmc_quat_for)
@@ -1006,6 +1008,7 @@ TEST_LIST {
TEST_ENTRY(glm_quat_mat3t)
TEST_ENTRY(glm_quat_lerp)
TEST_ENTRY(glm_quat_lerpc)
TEST_ENTRY(glm_quat_nlerp)
TEST_ENTRY(glm_quat_slerp)
TEST_ENTRY(glm_quat_look)
TEST_ENTRY(glm_quat_for)
@@ -1042,6 +1045,7 @@ TEST_LIST {
TEST_ENTRY(glmc_quat_mat3t)
TEST_ENTRY(glmc_quat_lerp)
TEST_ENTRY(glmc_quat_lerpc)
TEST_ENTRY(glmc_quat_nlerp)
TEST_ENTRY(glmc_quat_slerp)
TEST_ENTRY(glmc_quat_look)
TEST_ENTRY(glmc_quat_for)