Quick refactoring and reformating

This commit is contained in:
Karma Riuk 2023-04-21 09:01:35 +02:00
parent 1c58530e98
commit 4a7e5834d3
2 changed files with 19 additions and 18 deletions

View File

@ -43,21 +43,22 @@ static bool separating_axis(
max_q = std::max(max_q, projection); max_q = std::max(max_q, projection);
} }
if (max_p >= min_q && max_q >= min_p) { if (max_p < min_q || max_q < min_p)
double d; return true;
if (max_q - min_p < max_p - min_q) {
d = max_q - min_p; double d;
*impact_point = min_p_point; if (max_q - min_p < max_p - min_q) {
} else { d = max_q - min_p;
d = max_p - min_q; *impact_point = min_p_point;
*impact_point = max_p_point; } else {
} d = max_p - min_q;
// push a bit more than needed so the shapes do not overlap in future *impact_point = max_p_point;
// tests due to float precision
double d_over_o_squared = d / vec2d::dot(axis, axis) + 1e-10;
*pv = d_over_o_squared * axis;
return false;
} }
// push a bit more than needed so the shapes do not overlap in
// future tests due to float precision
double d_over_o_squared = d / vec2d::dot(axis, axis) + 1e-10;
*pv = d_over_o_squared * axis;
return false;
return true; return true;
} }

8
game.h
View File

@ -6,16 +6,16 @@
/* simulation/game framework /* simulation/game framework
*/ */
extern double delta; /* simulation time delta in seconds */ extern double delta; /* simulation time delta in seconds */
#define DEFAULT_DELTA 0.01 #define DEFAULT_DELTA 0.01
extern int width; /* game canvas width */ extern int width; /* game canvas width */
extern int height; /* game canvas height */ extern int height; /* game canvas height */
#define DEFAULT_WIDTH 800 #define DEFAULT_WIDTH 800
#define DEFAULT_HEIGHT 800 #define DEFAULT_HEIGHT 800
extern GtkWidget * canvas; /* game canvas object */ extern GtkWidget* canvas; /* game canvas object */
#endif #endif