Advanced computer graphics Project

Job ID: 34854888

Budget: ₹600 – ₹1,500 INR

In this project you will develop a 3D math library. You will also develop a test suite for that library that exercises all of the functions.
Your library should be resistant to errors and should not segfault or produce undefined behavior. Your library should implement the following functions:
void v3_from_points(float *dst, float *a, float *b); // form v3 from a to b void v3_add(float *dst, float *a, float *b);
void v3_subtract(float *dst, float *a, float *b);
float v3_dot_product(float *a, float *b);
void v3_cross_product(float *dst, float *a, float *b);
void v3_scale(float *dst, float s);
float v3_angle(float *a, float *b); // angle between a and b
float v3_angle_quick(float *a, float *b); // angle between a and b; no cos-1 void v3_reflect(float *dst, float *v, float *n);
float v3_length(float *a);
void v3_normalize(float *dst, float *a);
You must use the above function signatures for my test suite to work. Your functions must also allow the input values to overlap (e.g., dst and a could be the same).