Реорганизация проекта: перенос определения всех типов в один файл, перегруппировка функций в файлах
This commit is contained in:
parent
c7d9263154
commit
053af33444
45 changed files with 1001 additions and 980 deletions
|
|
@ -1,18 +1,9 @@
|
|||
#ifndef _BGC_DUAL_VECTOR3_H_INCLUDED_
|
||||
#define _BGC_DUAL_VECTOR3_H_INCLUDED_
|
||||
|
||||
#include "./types.h"
|
||||
#include "./vector3.h"
|
||||
|
||||
// =================== Types ==================== //
|
||||
|
||||
typedef struct {
|
||||
BGC_FP32_Vector3 real, dual;
|
||||
} BGC_FP32_DualVector3;
|
||||
|
||||
typedef struct {
|
||||
BGC_FP64_Vector3 real, dual;
|
||||
} BGC_FP64_DualVector3;
|
||||
|
||||
// =================== Reset ==================== //
|
||||
|
||||
inline void bgc_fp32_dual_vector3_reset(BGC_FP32_DualVector3* vector)
|
||||
|
|
@ -147,14 +138,14 @@ inline void bgc_fp64_dual_vector3_subtract(BGC_FP64_DualVector3* difference, con
|
|||
|
||||
inline void bgc_fp32_dual_vector3_multiply(BGC_FP32_DualVector3* product, const BGC_FP32_DualVector3* multiplicand, const float multiplier)
|
||||
{
|
||||
bgc_fp32_vector3_multiply(&product->real, &multiplicand->real, multiplier);
|
||||
bgc_fp32_vector3_multiply(&product->dual, &multiplicand->dual, multiplier);
|
||||
bgc_fp32_vector3_multiply_by_real(&product->real, &multiplicand->real, multiplier);
|
||||
bgc_fp32_vector3_multiply_by_real(&product->dual, &multiplicand->dual, multiplier);
|
||||
}
|
||||
|
||||
inline void bgc_fp64_dual_vector3_multiply(BGC_FP64_DualVector3* product, const BGC_FP64_DualVector3* multiplicand, const double multiplier)
|
||||
{
|
||||
bgc_fp64_vector3_multiply(&product->real, &multiplicand->real, multiplier);
|
||||
bgc_fp64_vector3_multiply(&product->dual, &multiplicand->dual, multiplier);
|
||||
bgc_fp64_vector3_multiply_by_real(&product->real, &multiplicand->real, multiplier);
|
||||
bgc_fp64_vector3_multiply_by_real(&product->dual, &multiplicand->dual, multiplier);
|
||||
}
|
||||
|
||||
// =================== Divide =================== //
|
||||
|
|
@ -167,8 +158,8 @@ inline int bgc_fp32_dual_vector3_divide(BGC_FP32_DualVector3* quotient, const BG
|
|||
|
||||
const float multiplier = 1.0f / divisor;
|
||||
|
||||
bgc_fp32_vector3_multiply("ient->real, ÷nd->real, multiplier);
|
||||
bgc_fp32_vector3_multiply("ient->dual, ÷nd->dual, multiplier);
|
||||
bgc_fp32_vector3_multiply_by_real("ient->real, ÷nd->real, multiplier);
|
||||
bgc_fp32_vector3_multiply_by_real("ient->dual, ÷nd->dual, multiplier);
|
||||
|
||||
return BGC_SUCCESS;
|
||||
}
|
||||
|
|
@ -181,8 +172,8 @@ inline int bgc_fp64_dual_vector3_divide(BGC_FP64_DualVector3* quotient, const BG
|
|||
|
||||
const double multiplier = 1.0 / divisor;
|
||||
|
||||
bgc_fp64_vector3_multiply("ient->real, ÷nd->real, multiplier);
|
||||
bgc_fp64_vector3_multiply("ient->dual, ÷nd->dual, multiplier);
|
||||
bgc_fp64_vector3_multiply_by_real("ient->real, ÷nd->real, multiplier);
|
||||
bgc_fp64_vector3_multiply_by_real("ient->dual, ÷nd->dual, multiplier);
|
||||
|
||||
return BGC_SUCCESS;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue