mirror of
https://github.com/recp/cglm.git
synced 2025-12-25 12:55:04 +00:00
quat: fix quat_for and quat_forp implementations
This commit is contained in:
@@ -760,3 +760,48 @@ TEST_IMPL(GLM_PREFIX, quat_look) {
|
||||
|
||||
TEST_SUCCESS
|
||||
}
|
||||
|
||||
TEST_IMPL(GLM_PREFIX, quat_for) {
|
||||
versor q1, q2;
|
||||
|
||||
glm_quat(q1, glm_rad(90.0f), 0.0f, 1.0f, 0.0f);
|
||||
GLM(quat_for)((vec3){-1.0f, 0.0f, 0.0f}, (vec3){0.0f, 1.0f, 0.0f}, q2);
|
||||
ASSERTIFY(test_assert_quat_eq(q1, q2));
|
||||
|
||||
glm_quat(q2, glm_rad(90.0f), 1.0f, 0.0f, 0.0f);
|
||||
GLM(quat_for)((vec3){0.0f, 1.0f, 0.0f}, (vec3){0.0f, 0.0f, 1.0f}, q1);
|
||||
ASSERTIFY(test_assert_quat_eq(q1, q2));
|
||||
|
||||
glm_quat(q2, glm_rad(180.0f), 1.0f, 0.0f, 0.0f);
|
||||
GLM(quat_for)((vec3){0.0f, 0.0f, 1.0f}, (vec3){0.0f, -1.0f, 0.0f}, q1);
|
||||
ASSERTIFY(test_assert_quat_eq(q1, q2));
|
||||
|
||||
TEST_SUCCESS
|
||||
}
|
||||
|
||||
TEST_IMPL(GLM_PREFIX, quat_forp) {
|
||||
versor q1, q2;
|
||||
|
||||
glm_quat(q1, glm_rad(90.0f), 0.0f, 1.0f, 0.0f);
|
||||
GLM(quat_forp)((vec3){2.0f, 0.0f, 0.0f},
|
||||
(vec3){1.0f, 0.0f, 0.0f},
|
||||
(vec3){0.0f, 1.0f, 0.0f},
|
||||
q2);
|
||||
ASSERTIFY(test_assert_quat_eq(q1, q2));
|
||||
|
||||
glm_quat(q2, glm_rad(90.0f), 1.0f, 0.0f, 0.0f);
|
||||
GLM(quat_forp)((vec3){0.0f, 1.0f, 0.0f},
|
||||
(vec3){0.0f, 2.0f, 0.0f},
|
||||
(vec3){0.0f, 0.0f, 1.0f},
|
||||
q1);
|
||||
ASSERTIFY(test_assert_quat_eq(q1, q2));
|
||||
|
||||
glm_quat(q2, glm_rad(180.0f), 1.0f, 0.0f, 0.0f);
|
||||
GLM(quat_forp)((vec3){0.0f, 1.0f, 1.0f},
|
||||
(vec3){0.0f, 1.0f, 2.0f},
|
||||
(vec3){0.0f, -1.0f, 0.0f},
|
||||
q1);
|
||||
ASSERTIFY(test_assert_quat_eq(q1, q2));
|
||||
|
||||
TEST_SUCCESS
|
||||
}
|
||||
|
||||
@@ -163,6 +163,8 @@ TEST_DECLARE(glm_quat_lerp)
|
||||
TEST_DECLARE(glm_quat_lerpc)
|
||||
TEST_DECLARE(glm_quat_slerp)
|
||||
TEST_DECLARE(glm_quat_look)
|
||||
TEST_DECLARE(glm_quat_for)
|
||||
TEST_DECLARE(glm_quat_forp)
|
||||
|
||||
TEST_DECLARE(glmc_quat_identity)
|
||||
TEST_DECLARE(glmc_quat_identity_array)
|
||||
@@ -193,6 +195,8 @@ TEST_DECLARE(glmc_quat_lerp)
|
||||
TEST_DECLARE(glmc_quat_lerpc)
|
||||
TEST_DECLARE(glmc_quat_slerp)
|
||||
TEST_DECLARE(glmc_quat_look)
|
||||
TEST_DECLARE(glmc_quat_for)
|
||||
TEST_DECLARE(glmc_quat_forp)
|
||||
|
||||
/* bezier */
|
||||
TEST_DECLARE(bezier)
|
||||
@@ -671,6 +675,8 @@ TEST_LIST {
|
||||
TEST_ENTRY(glm_quat_lerpc)
|
||||
TEST_ENTRY(glm_quat_slerp)
|
||||
TEST_ENTRY(glm_quat_look)
|
||||
TEST_ENTRY(glm_quat_for)
|
||||
TEST_ENTRY(glm_quat_forp)
|
||||
|
||||
TEST_ENTRY(glmc_quat_identity)
|
||||
TEST_ENTRY(glmc_quat_identity_array)
|
||||
@@ -701,6 +707,8 @@ TEST_LIST {
|
||||
TEST_ENTRY(glmc_quat_lerpc)
|
||||
TEST_ENTRY(glmc_quat_slerp)
|
||||
TEST_ENTRY(glmc_quat_look)
|
||||
TEST_ENTRY(glmc_quat_for)
|
||||
TEST_ENTRY(glmc_quat_forp)
|
||||
|
||||
/* bezier */
|
||||
TEST_ENTRY(bezier)
|
||||
|
||||
Reference in New Issue
Block a user