Переход на версию 0.3: изменение подхода к именованию сущностей, добавление, изменение и удаление ряда функций

This commit is contained in:
Andrey Pokidov 2026-01-30 19:37:49 +07:00
parent d33daf4e2d
commit f7e41645fe
87 changed files with 4580 additions and 4051 deletions

View file

@ -7,39 +7,39 @@
static const int _TEST_FP32_ZERO_QUATERNION_AMOUNT = 9;
static const int _TEST_FP32_NONZERO_QUATERNION_AMOUNT = 11;
static const BgcQuaternionFP32 _TEST_FP32_ZERO_QUATERNION_LIST[] = {
static const BGC_FP32_Quaternion _TEST_FP32_ZERO_QUATERNION_LIST[] = {
{ 0.0f, 0.0f, 0.0f, 0.0f },
{ 0.75f * BGC_EPSYLON_FP32, 0.0f, 0.0f, 0.0f },
{ -0.75f * BGC_EPSYLON_FP32, 0.0f, 0.0f, 0.0f },
{ 0.0f, 0.75f * BGC_EPSYLON_FP32, 0.0f, 0.0f },
{ 0.0f, -0.75f * BGC_EPSYLON_FP32, 0.0f, 0.0f },
{ 0.0f, 0.0f, 0.75f * BGC_EPSYLON_FP32, 0.0f },
{ 0.0f, 0.0f, -0.75f * BGC_EPSYLON_FP32, 0.0f },
{ 0.0f, 0.0f, 0.0f, 0.75f * BGC_EPSYLON_FP32 },
{ 0.0f, 0.0f, 0.0f, -0.75f * BGC_EPSYLON_FP32 }
{ 0.75f * BGC_FP32_EPSYLON, 0.0f, 0.0f, 0.0f },
{ -0.75f * BGC_FP32_EPSYLON, 0.0f, 0.0f, 0.0f },
{ 0.0f, 0.75f * BGC_FP32_EPSYLON, 0.0f, 0.0f },
{ 0.0f, -0.75f * BGC_FP32_EPSYLON, 0.0f, 0.0f },
{ 0.0f, 0.0f, 0.75f * BGC_FP32_EPSYLON, 0.0f },
{ 0.0f, 0.0f, -0.75f * BGC_FP32_EPSYLON, 0.0f },
{ 0.0f, 0.0f, 0.0f, 0.75f * BGC_FP32_EPSYLON },
{ 0.0f, 0.0f, 0.0f, -0.75f * BGC_FP32_EPSYLON }
};
static const BgcQuaternionFP32 _TEST_FP32_NONZERO_QUATERION_LIST[] = {
static const BGC_FP32_Quaternion _TEST_FP32_NONZERO_QUATERION_LIST[] = {
{ 0.0f, 1.0f, 0.0f, 0.0f },
{ 1.25f * BGC_EPSYLON_FP32, 0.0f, 0.0f, 0.0f },
{ -1.25f * BGC_EPSYLON_FP32, 0.0f, 0.0f, 0.0f },
{ 0.0f, 1.25f * BGC_EPSYLON_FP32, 0.0f, 0.0f },
{ 0.0f, -1.25f * BGC_EPSYLON_FP32, 0.0f, 0.0f },
{ 0.0f, 0.0f, 1.25f * BGC_EPSYLON_FP32, 0.0f },
{ 0.0f, 0.0f, -1.25f * BGC_EPSYLON_FP32, 0.0f },
{ 0.0f, 0.0f, 0.0f, 1.25f * BGC_EPSYLON_FP32 },
{ 0.0f, 0.0f, 0.0f, -1.25f * BGC_EPSYLON_FP32 },
{ 1.25f * BGC_EPSYLON_FP32, 1.25f * BGC_EPSYLON_FP32, 0.0f, 0.0f },
{ -1.25f * BGC_EPSYLON_FP32, -1.25f * BGC_EPSYLON_FP32, 0.0f, 0.0f }
{ 1.25f * BGC_FP32_EPSYLON, 0.0f, 0.0f, 0.0f },
{ -1.25f * BGC_FP32_EPSYLON, 0.0f, 0.0f, 0.0f },
{ 0.0f, 1.25f * BGC_FP32_EPSYLON, 0.0f, 0.0f },
{ 0.0f, -1.25f * BGC_FP32_EPSYLON, 0.0f, 0.0f },
{ 0.0f, 0.0f, 1.25f * BGC_FP32_EPSYLON, 0.0f },
{ 0.0f, 0.0f, -1.25f * BGC_FP32_EPSYLON, 0.0f },
{ 0.0f, 0.0f, 0.0f, 1.25f * BGC_FP32_EPSYLON },
{ 0.0f, 0.0f, 0.0f, -1.25f * BGC_FP32_EPSYLON },
{ 1.25f * BGC_FP32_EPSYLON, 1.25f * BGC_FP32_EPSYLON, 0.0f, 0.0f },
{ -1.25f * BGC_FP32_EPSYLON, -1.25f * BGC_FP32_EPSYLON, 0.0f, 0.0f }
};
void test_quaternion_is_zero_fp32()
{
print_testing_name("bgc_quaternion_is_zero_fp32");
print_testing_name("bgc_fp32_quaternion_is_zero");
// Testing zero values:
for (int i = 0; i < _TEST_FP32_ZERO_QUATERNION_AMOUNT; i++) {
if (!bgc_quaternion_is_zero_fp32(&_TEST_FP32_ZERO_QUATERNION_LIST[i])) {
if (!bgc_fp32_quaternion_is_zero(&_TEST_FP32_ZERO_QUATERNION_LIST[i])) {
print_testing_error("A zero quaternion was not recognized");
return;
}
@ -47,7 +47,7 @@ void test_quaternion_is_zero_fp32()
// Testing non-zero values:
for (int i = 0; i < _TEST_FP32_NONZERO_QUATERNION_AMOUNT; i++) {
if (bgc_quaternion_is_zero_fp32(&_TEST_FP32_NONZERO_QUATERION_LIST[i])) {
if (bgc_fp32_quaternion_is_zero(&_TEST_FP32_NONZERO_QUATERION_LIST[i])) {
print_testing_error("A non-zero quaternion was recognized as a zero quaternion");
return;
}
@ -61,39 +61,39 @@ void test_quaternion_is_zero_fp32()
static const int _TEST_FP64_ZERO_QUATERNION_AMOUNT = 9;
static const int _TEST_FP64_NONZERO_QUATERNION_AMOUNT = 11;
static const BgcQuaternionFP64 _TEST_FP64_ZERO_QUATERNION_LIST[] = {
static const BGC_FP64_Quaternion _TEST_FP64_ZERO_QUATERNION_LIST[] = {
{ 0.0, 0.0, 0.0, 0.0 },
{ 0.75 * BGC_EPSYLON_FP64, 0.0, 0.0, 0.0 },
{ -0.75 * BGC_EPSYLON_FP64, 0.0, 0.0, 0.0 },
{ 0.0, 0.75 * BGC_EPSYLON_FP64, 0.0, 0.0 },
{ 0.0, -0.75 * BGC_EPSYLON_FP64, 0.0, 0.0 },
{ 0.0, 0.0, 0.75 * BGC_EPSYLON_FP64, 0.0 },
{ 0.0, 0.0, -0.75 * BGC_EPSYLON_FP64, 0.0 },
{ 0.0, 0.0, 0.0, 0.75 * BGC_EPSYLON_FP64 },
{ 0.0, 0.0, 0.0, -0.75 * BGC_EPSYLON_FP64 }
{ 0.75 * BGC_FP64_EPSYLON, 0.0, 0.0, 0.0 },
{ -0.75 * BGC_FP64_EPSYLON, 0.0, 0.0, 0.0 },
{ 0.0, 0.75 * BGC_FP64_EPSYLON, 0.0, 0.0 },
{ 0.0, -0.75 * BGC_FP64_EPSYLON, 0.0, 0.0 },
{ 0.0, 0.0, 0.75 * BGC_FP64_EPSYLON, 0.0 },
{ 0.0, 0.0, -0.75 * BGC_FP64_EPSYLON, 0.0 },
{ 0.0, 0.0, 0.0, 0.75 * BGC_FP64_EPSYLON },
{ 0.0, 0.0, 0.0, -0.75 * BGC_FP64_EPSYLON }
};
static const BgcQuaternionFP64 _TEST_FP64_NONZERO_QUATERION_LIST[] = {
static const BGC_FP64_Quaternion _TEST_FP64_NONZERO_QUATERION_LIST[] = {
{ 0.0, 1.0, 0.0, 0.0 },
{ 1.25 * BGC_EPSYLON_FP64, 0.0, 0.0, 0.0 },
{ -1.25 * BGC_EPSYLON_FP64, 0.0, 0.0, 0.0 },
{ 0.0, 1.25 * BGC_EPSYLON_FP64, 0.0, 0.0 },
{ 0.0, -1.25 * BGC_EPSYLON_FP64, 0.0, 0.0 },
{ 0.0, 0.0, 1.25 * BGC_EPSYLON_FP64, 0.0 },
{ 0.0, 0.0, -1.25 * BGC_EPSYLON_FP64, 0.0 },
{ 0.0, 0.0, 0.0, 1.25 * BGC_EPSYLON_FP64 },
{ 0.0, 0.0, 0.0, -1.25 * BGC_EPSYLON_FP64 },
{ 1.25 * BGC_EPSYLON_FP64, 1.25 * BGC_EPSYLON_FP64, 0.0, 0.0 },
{ -1.25 * BGC_EPSYLON_FP64, -1.25 * BGC_EPSYLON_FP64, 0.0, 0.0 }
{ 1.25 * BGC_FP64_EPSYLON, 0.0, 0.0, 0.0 },
{ -1.25 * BGC_FP64_EPSYLON, 0.0, 0.0, 0.0 },
{ 0.0, 1.25 * BGC_FP64_EPSYLON, 0.0, 0.0 },
{ 0.0, -1.25 * BGC_FP64_EPSYLON, 0.0, 0.0 },
{ 0.0, 0.0, 1.25 * BGC_FP64_EPSYLON, 0.0 },
{ 0.0, 0.0, -1.25 * BGC_FP64_EPSYLON, 0.0 },
{ 0.0, 0.0, 0.0, 1.25 * BGC_FP64_EPSYLON },
{ 0.0, 0.0, 0.0, -1.25 * BGC_FP64_EPSYLON },
{ 1.25 * BGC_FP64_EPSYLON, 1.25 * BGC_FP64_EPSYLON, 0.0, 0.0 },
{ -1.25 * BGC_FP64_EPSYLON, -1.25 * BGC_FP64_EPSYLON, 0.0, 0.0 }
};
void test_quaternion_is_zero_fp64()
{
print_testing_name("bgc_quaternion_is_zero_fp64");
print_testing_name("bgc_fp64_quaternion_is_zero");
// Testing zero values:
for (int i = 0; i < _TEST_FP64_ZERO_QUATERNION_AMOUNT; i++) {
if (!bgc_quaternion_is_zero_fp64(&_TEST_FP64_ZERO_QUATERNION_LIST[i])) {
if (!bgc_fp64_quaternion_is_zero(&_TEST_FP64_ZERO_QUATERNION_LIST[i])) {
print_testing_error("A zero quaternion was not recognized");
return;
}
@ -101,7 +101,7 @@ void test_quaternion_is_zero_fp64()
// Testing non-zero values:
for (int i = 0; i < _TEST_FP64_NONZERO_QUATERNION_AMOUNT; i++) {
if (bgc_quaternion_is_zero_fp64(&_TEST_FP64_NONZERO_QUATERION_LIST[i])) {
if (bgc_fp64_quaternion_is_zero(&_TEST_FP64_NONZERO_QUATERION_LIST[i])) {
print_testing_error("A non-zero quaternion was recognized as a zero quaternion");
return;
}