Обновление makefile, переименования параметров функций комбинирования аффинных преобразований

This commit is contained in:
Andrey Pokidov 2026-01-28 17:04:48 +07:00
parent 0258f0a283
commit d33daf4e2d
5 changed files with 27 additions and 26 deletions

View file

@ -1,8 +1,9 @@
CC=gcc CC=gcc
GFLAGS=-c -Wall -O2 GFLAGS=-c -Wall -O2
SOURCES=utilities.c angle.c vector2.c vector3.c complex.c cotes-number.c \ SOURCES=utilities.c angle.c vector2.c vector3.c complex.c cotes-number.c \
matrix2x2.c matrix2x3.c matrix3x2.c matrix3x3.c matrixes.c \ matrix2x2.c matrix2x3.c matrix3x2.c matrix3x3.c matrixes.c affine2.c affine3.c \
rotation3.c quaternion.c versor.c rotation3.c quaternion.c versor.c slerp.c position2.c position3.c
OBJECTS=$(SOURCES:.c=.o) OBJECTS=$(SOURCES:.c=.o)
OBJECT_DIRECTORY=obj/Release OBJECT_DIRECTORY=obj/Release
BINARY_DIRECTORY=bin/Release BINARY_DIRECTORY=bin/Release

View file

@ -18,8 +18,8 @@ extern inline int bgc_affine2_invert_fp64(BgcAffine2FP64 * affine);
extern inline int bgc_affine2_get_inverse_fp32(const BgcAffine2FP32 * source, BgcAffine2FP32 * destination); extern inline int bgc_affine2_get_inverse_fp32(const BgcAffine2FP32 * source, BgcAffine2FP32 * destination);
extern inline int bgc_affine2_get_inverse_fp64(const BgcAffine2FP64 * source, BgcAffine2FP64 * destination); extern inline int bgc_affine2_get_inverse_fp64(const BgcAffine2FP64 * source, BgcAffine2FP64 * destination);
extern inline void bgc_affine2_combine_fp32(const BgcAffine2FP32 * parent, const BgcAffine2FP32 * child, BgcAffine2FP32 * combination); extern inline void bgc_affine2_combine_fp32(const BgcAffine2FP32 * first, const BgcAffine2FP32 * second, BgcAffine2FP32 * combination);
extern inline void bgc_affine2_combine_fp64(const BgcAffine2FP64 * parent, const BgcAffine2FP64 * child, BgcAffine2FP64 * combination); extern inline void bgc_affine2_combine_fp64(const BgcAffine2FP64 * first, const BgcAffine2FP64 * second, BgcAffine2FP64 * combination);
extern inline void bgc_affine2_transform_point_fp32(const BgcAffine2FP32 * affine, const BgcVector2FP32 * initial_point, BgcVector2FP32 * transformed_point); extern inline void bgc_affine2_transform_point_fp32(const BgcAffine2FP32 * affine, const BgcVector2FP32 * initial_point, BgcVector2FP32 * transformed_point);
extern inline void bgc_affine2_transform_point_fp64(const BgcAffine2FP64 * affine, const BgcVector2FP64 * initial_point, BgcVector2FP64 * transformed_point); extern inline void bgc_affine2_transform_point_fp64(const BgcAffine2FP64 * affine, const BgcVector2FP64 * initial_point, BgcVector2FP64 * transformed_point);

View file

@ -128,20 +128,20 @@ inline int bgc_affine2_get_inverse_fp64(const BgcAffine2FP64 * source, BgcAffine
// =================== Combine =================== // // =================== Combine =================== //
inline void bgc_affine2_combine_fp32(const BgcAffine2FP32 * parent, const BgcAffine2FP32 * child, BgcAffine2FP32 * combination) inline void bgc_affine2_combine_fp32(const BgcAffine2FP32 * first, const BgcAffine2FP32 * second, BgcAffine2FP32 * combination)
{ {
BgcVector2FP32 child_shift; BgcVector2FP32 first_shift;
bgc_matrix2x2_get_right_product_fp32(&parent->distortion, &child->shift, &child_shift); bgc_matrix2x2_get_right_product_fp32(&second->distortion, &first->shift, &first_shift);
bgc_matrix_product_2x2_at_2x2_fp32(&parent->distortion, &child->distortion, &combination->distortion); bgc_matrix_product_2x2_at_2x2_fp32(&second->distortion, &first->distortion, &combination->distortion);
bgc_vector2_add_fp32(&parent->shift, &child_shift, &combination->shift); bgc_vector2_add_fp32(&first_shift, &second->shift, &combination->shift);
} }
inline void bgc_affine2_combine_fp64(const BgcAffine2FP64 * parent, const BgcAffine2FP64 * child, BgcAffine2FP64 * combination) inline void bgc_affine2_combine_fp64(const BgcAffine2FP64 * first, const BgcAffine2FP64 * second, BgcAffine2FP64 * combination)
{ {
BgcVector2FP64 child_shift; BgcVector2FP64 first_shift;
bgc_matrix2x2_get_right_product_fp64(&parent->distortion, &child->shift, &child_shift); bgc_matrix2x2_get_right_product_fp64(&second->distortion, &first->shift, &first_shift);
bgc_matrix_product_2x2_at_2x2_fp64(&parent->distortion, &child->distortion, &combination->distortion); bgc_matrix_product_2x2_at_2x2_fp64(&second->distortion, &first->distortion, &combination->distortion);
bgc_vector2_add_fp64(&parent->shift, &child_shift, &combination->shift); bgc_vector2_add_fp64(&first_shift, &second->shift, &combination->shift);
} }
// =============== Transform Point =============== // // =============== Transform Point =============== //

View file

@ -18,8 +18,8 @@ extern inline int bgc_affine3_invert_fp64(BgcAffine3FP64 * affine);
extern inline int bgc_affine3_get_inverse_fp32(const BgcAffine3FP32 * source, BgcAffine3FP32 * destination); extern inline int bgc_affine3_get_inverse_fp32(const BgcAffine3FP32 * source, BgcAffine3FP32 * destination);
extern inline int bgc_affine3_get_inverse_fp64(const BgcAffine3FP64 * source, BgcAffine3FP64 * destination); extern inline int bgc_affine3_get_inverse_fp64(const BgcAffine3FP64 * source, BgcAffine3FP64 * destination);
extern inline void bgc_affine3_combine_fp32(const BgcAffine3FP32 * parent, const BgcAffine3FP32 * child, BgcAffine3FP32 * combination); extern inline void bgc_affine3_combine_fp32(const BgcAffine3FP32 * first, const BgcAffine3FP32 * second, BgcAffine3FP32 * combination);
extern inline void bgc_affine3_combine_fp64(const BgcAffine3FP64 * parent, const BgcAffine3FP64 * child, BgcAffine3FP64 * combination); extern inline void bgc_affine3_combine_fp64(const BgcAffine3FP64 * first, const BgcAffine3FP64 * second, BgcAffine3FP64 * combination);
extern inline void bgc_affine3_transform_point_fp32(const BgcAffine3FP32 * affine, const BgcVector3FP32 * initial_point, BgcVector3FP32 * transformed_point); extern inline void bgc_affine3_transform_point_fp32(const BgcAffine3FP32 * affine, const BgcVector3FP32 * initial_point, BgcVector3FP32 * transformed_point);
extern inline void bgc_affine3_transform_point_fp64(const BgcAffine3FP64 * affine, const BgcVector3FP64 * initial_point, BgcVector3FP64 * transformed_point); extern inline void bgc_affine3_transform_point_fp64(const BgcAffine3FP64 * affine, const BgcVector3FP64 * initial_point, BgcVector3FP64 * transformed_point);

View file

@ -127,20 +127,20 @@ inline int bgc_affine3_get_inverse_fp64(const BgcAffine3FP64 * source, BgcAffine
// =================== Combine =================== // // =================== Combine =================== //
inline void bgc_affine3_combine_fp32(const BgcAffine3FP32 * parent, const BgcAffine3FP32 * child, BgcAffine3FP32 * combination) inline void bgc_affine3_combine_fp32(const BgcAffine3FP32 * first, const BgcAffine3FP32 * second, BgcAffine3FP32 * combination)
{ {
BgcVector3FP32 child_shift; BgcVector3FP32 first_shift;
bgc_matrix3x3_get_right_product_fp32(&parent->distortion, &child->shift, &child_shift); bgc_matrix3x3_get_right_product_fp32(&second->distortion, &first->shift, &first_shift);
bgc_matrix_product_3x3_at_3x3_fp32(&parent->distortion, &child->distortion, &combination->distortion); bgc_matrix_product_3x3_at_3x3_fp32(&second->distortion, &first->distortion, &combination->distortion);
bgc_vector3_add_fp32(&parent->shift, &child_shift, &combination->shift); bgc_vector3_add_fp32(&first_shift, &second->shift, &combination->shift);
} }
inline void bgc_affine3_combine_fp64(const BgcAffine3FP64 * parent, const BgcAffine3FP64 * child, BgcAffine3FP64 * combination) inline void bgc_affine3_combine_fp64(const BgcAffine3FP64 * first, const BgcAffine3FP64 * second, BgcAffine3FP64 * combination)
{ {
BgcVector3FP64 child_shift; BgcVector3FP64 first_shift;
bgc_matrix3x3_get_right_product_fp64(&parent->distortion, &child->shift, &child_shift); bgc_matrix3x3_get_right_product_fp64(&second->distortion, &first->shift, &first_shift);
bgc_matrix_product_3x3_at_3x3_fp64(&parent->distortion, &child->distortion, &combination->distortion); bgc_matrix_product_3x3_at_3x3_fp64(&second->distortion, &first->distortion, &combination->distortion);
bgc_vector3_add_fp64(&parent->shift, &child_shift, &combination->shift); bgc_vector3_add_fp64(&first_shift, &second->shift, &combination->shift);
} }
// =============== Transform Point =============== // // =============== Transform Point =============== //